diff --git a/404.html b/404.html index ca7f2ae24..54f5b95e6 100644 --- a/404.html +++ b/404.html @@ -5,7 +5,7 @@ Page Not Found | OpenSign™ - + diff --git a/assets/js/489b8a4d.3da02971.js b/assets/js/489b8a4d.154a7568.js similarity index 85% rename from assets/js/489b8a4d.3da02971.js rename to assets/js/489b8a4d.154a7568.js index 90bccbac1..8e1c94988 100644 --- a/assets/js/489b8a4d.3da02971.js +++ b/assets/js/489b8a4d.154a7568.js @@ -1 +1 @@ -"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[8781],{44907:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>l,default:()=>x,frontMatter:()=>c,metadata:()=>d,toc:()=>h});var s=t(85893),i=t(11151),o=t(22004),r=t.n(o);const c={title:"Localhost Setup with Docker"},l=void 0,d={id:"self-host/docker/run-locally",title:"Localhost Setup with Docker",description:"Steps to run OpenSign\u2122 with docker in macos/linux:",source:"@site/docs/self-host/docker/run-locally.md",sourceDirName:"self-host/docker",slug:"/self-host/docker/run-locally",permalink:"/docs/self-host/docker/run-locally",draft:!1,unlisted:!1,editUrl:"https://github.com/opensignlabs/opensign/tree/feat-docs/docs/docs/self-host/docker/run-locally.md",tags:[],version:"current",frontMatter:{title:"Localhost Setup with Docker"},sidebar:"selfhostSidebar",previous:{title:"Docker",permalink:"/docs/category/docker"},next:{title:"Cloud Storage",permalink:"/docs/category/cloud-storage"}},a={},h=[{value:"Steps to run OpenSign\u2122 with docker in macos/linux:",id:"steps-to-run-opensign-with-docker-in-macoslinux",level:2},{value:"Steps to run OpenSign\u2122 with docker in windows:",id:"steps-to-run-opensign-with-docker-in-windows",level:2},{value:"Information About ENV variables which are used to setup OpenSign\u2122 with Docker on Localhost",id:"information-about-env-variables-which-are-used-to-setup-opensign-with-docker-on-localhost",level:2}];function p(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"steps-to-run-opensign-with-docker-in-macoslinux",children:"Steps to run OpenSign\u2122 with docker in macos/linux:"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsx)(n.li,{children:"Firstly, install Docker and ensure it is running before proceeding to the next steps."}),"\n",(0,s.jsx)(n.li,{children:"Now, open the terminal and type the following command:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"git clone https://github.com/OpenSignLabs/OpenSign.git\n"})}),"\n",(0,s.jsx)(n.p,{children:"and Hit Enter to clone the OpenSign project locally."}),"\n",(0,s.jsxs)(n.ol,{start:"3",children:["\n",(0,s.jsx)(n.li,{children:"Then, navigate to the project directory with the command:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"cd OpenSign\n"})}),"\n",(0,s.jsx)(n.p,{children:"Hit Enter to access the OpenSign project in the terminal."}),"\n",(0,s.jsxs)(n.ol,{start:"4",children:["\n",(0,s.jsx)(n.li,{children:"Execute the following command to build the container image:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"make build\n"})}),"\n",(0,s.jsx)(n.p,{children:"This will initiate the process of creating the container image. It may take some time to complete."}),"\n",(0,s.jsxs)(n.ol,{start:"5",children:["\n",(0,s.jsx)(n.li,{children:"For subsequent runs, open Docker and start the OpenSign container by clicking on the play button in the actions panel."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.em,{children:"Note: If you wish to incorporate our latest features into your Docker container, delete the existing OpenSign container and follow the steps again."})}),"\n",(0,s.jsx)(n.h2,{id:"steps-to-run-opensign-with-docker-in-windows",children:"Steps to run OpenSign\u2122 with docker in windows:"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsx)(n.li,{children:"Set up WSL 2 on Windows by referring to the video provided."}),"\n"]}),"\n",(0,s.jsx)("div",{children:(0,s.jsx)(r(),{playing:!0,controls:!0,url:"https://youtu.be/1kFFwknneD8?si=FKriXPwFqZPLUagI"})}),"\n",(0,s.jsxs)(n.ol,{start:"2",children:["\n",(0,s.jsx)(n.li,{children:"Install Docker Desktop on Windows and launch Docker Desktop."}),"\n",(0,s.jsx)(n.li,{children:'Enable WSL in Docker Desktop by navigating to Settings > Resources > WSL Integration. Check the box and click on "Apply & Restart." Minimize Docker Desktop.'}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.img,{src:"https://legadratw3d.ams3.cdn.digitaloceanspaces.com/Screenshot%202024-02-23%20201448.png",alt:"docker"})}),"\n",(0,s.jsxs)(n.ol,{start:"4",children:["\n",(0,s.jsx)(n.li,{children:'Navigate to your desired location in Windows. Open PowerShell in that folder by holding Shift and right-clicking the mouse, then select "Open PowerShell window here."'}),"\n",(0,s.jsx)(n.li,{children:"In the PowerShell window, type the following command:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"git clone https://github.com/OpenSignLabs/OpenSign.git\n"})}),"\n",(0,s.jsx)(n.p,{children:"and Hit Enter to clone the OpenSign project locally."}),"\n",(0,s.jsxs)(n.ol,{start:"6",children:["\n",(0,s.jsxs)(n.li,{children:["Open the OpenSign folder with Visual Studio Code. Go to ",(0,s.jsx)(n.code,{children:"apps > mongo > mongo-init.sh"}),". Change the file type from CRLF to LF, save the file, and close Visual Studio Code."]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.img,{src:"https://legadratw3d.ams3.cdn.digitaloceanspaces.com/Screenshot%202024-02-23%20175944.png",alt:"docker"})}),"\n",(0,s.jsxs)(n.ol,{start:"7",children:["\n",(0,s.jsx)(n.li,{children:"Open the Ubuntu/WSL terminal and use the command to navigate to the folder where you cloned the OpenSign project, e.g., cd mnt/c/testing/docker/OpenSign."}),"\n",(0,s.jsx)(n.li,{children:"Execute the following command to build the container image:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"make build\n"})}),"\n",(0,s.jsx)(n.p,{children:"This will initiate the process of creating the container image. It may take some time to complete."}),"\n",(0,s.jsxs)(n.ol,{start:"9",children:["\n",(0,s.jsx)(n.li,{children:"Refer below video for more specific details."}),"\n",(0,s.jsx)(n.li,{children:"For subsequent runs, open Docker and start the OpenSign container by clicking on the play button in the actions panel."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.em,{children:"Note: If you wish to incorporate our latest features into your Docker container, delete the existing OpenSign container and follow the steps again."})}),"\n",(0,s.jsx)("div",{children:(0,s.jsx)(r(),{playing:!0,controls:!0,url:"https://www.youtube.com/watch?v=GY_OP697EiU"})}),"\n",(0,s.jsx)(n.h2,{id:"information-about-env-variables-which-are-used-to-setup-opensign-with-docker-on-localhost",children:"Information About ENV variables which are used to setup OpenSign\u2122 with Docker on Localhost"}),"\n",(0,s.jsx)(n.p,{children:"To set up OpenSign\u2122 locally using Docker, the following prerequisites are required:"}),"\n",(0,s.jsx)(n.p,{children:"Environment Varaibles:"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Environment Varibale"}),(0,s.jsx)(n.th,{children:"Value"}),(0,s.jsx)(n.th,{children:"Description"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"CI"}),(0,s.jsx)(n.td,{children:"false"}),(0,s.jsx)(n.td,{children:"Set CI to false while running the app locally"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PUBLIC_URL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"http://localhost:3000",children:"http://localhost:3000"})}),(0,s.jsx)(n.td,{children:"Set it to the URL form where the app home page will be accessed"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"GENERATE_SOURCEMAP"}),(0,s.jsx)(n.td,{children:"false"}),(0,s.jsx)(n.td,{children:"Set it to true if you want to generate the Sourcemap for debugging"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"REACT_APP_SERVERURL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"http://localhost:8080/app",children:"http://localhost:8080/app"})}),(0,s.jsx)(n.td,{children:"Set it to the URL from where APIs will be accessible, for local development it should be localhost:8080/app (use your local port number instead)"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"REACT_APP_APPID"}),(0,s.jsx)(n.td,{children:"opensignstgn"}),(0,s.jsx)(n.td,{children:"A 12 character long random app identifier. The value of this should be same as APP_ID which is a variable used by backend API."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"APP_ID"}),(0,s.jsx)(n.td,{children:"opensignstgn"}),(0,s.jsx)(n.td,{children:"A 12 character long random app identifier. The value of this should be same as REACT_APP_APPID which is a variable used by Frontend React App."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"appName"}),(0,s.jsx)(n.td,{children:"open_sign_server"}),(0,s.jsx)(n.td,{children:"Name of the app. It will be visible in the verification emails sent out."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MASTER_KEY"}),(0,s.jsx)(n.td,{children:"XnAadwKxxByMr"}),(0,s.jsx)(n.td,{children:"A 12 character long random secret key that allows access to all the data. It is used in Parse dashboard config to view all the data in the database."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MONGODB_URI"}),(0,s.jsx)(n.td,{children:"mongodb://host.docker.internal:27017/OpenSignDB"}),(0,s.jsx)(n.td,{children:"Mongodb URI to connect to"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PARSE_MOUNT"}),(0,s.jsx)(n.td,{children:"/app"}),(0,s.jsx)(n.td,{children:"Path on which APIs should be mounted. Do not change this. This variable shall be removed & value hardcoded in the source code in coming versions."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"SERVER_URL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"http://localhost:8080/app",children:"http://localhost:8080/app"})}),(0,s.jsx)(n.td,{children:"Set it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:8080/app (use your local port number instead)"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_SPACE"}),(0,s.jsx)(n.td,{children:"DOSPACENAME"}),(0,s.jsx)(n.td,{children:"Digital ocean space name or AWS S3 bucket name for uploading documents"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_ENDPOINT"}),(0,s.jsx)(n.td,{children:"ams3.digitaloceanspaces.com"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces endpoint or AWS S3 endpoint for uploading documents"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_BASEURL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"https://DOSPACENAME.ams3.digitaloceanspaces.com",children:"https://DOSPACENAME.ams3.digitaloceanspaces.com"})}),(0,s.jsx)(n.td,{children:"Digital ocean baseurl or AWS S3 base URL"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_ACCESS_KEY_ID"}),(0,s.jsx)(n.td,{children:"YOUR_S3_ACCESS_ID"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_SECRET_ACCESS_KEY"}),(0,s.jsx)(n.td,{children:"YOUR_S3_ACCESS_KEY"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces secret access key or AWS s3 secret access key for uploading the docs"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_REGION"}),(0,s.jsx)(n.td,{children:"YOUR_S3_REGION"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces region or AWS s3 region"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"USE_LOCAL"}),(0,s.jsx)(n.td,{children:"FALSE"}),(0,s.jsx)(n.td,{children:"To use local file storage to save file"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MAILGUN_API_KEY"}),(0,s.jsx)(n.td,{children:"YOUR_MAILGUNAPI_KEY"}),(0,s.jsx)(n.td,{children:"Mailgun API Key"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MAILGUN_DOMAIN"}),(0,s.jsx)(n.td,{children:"YOUR_MAILGUNAPI_DOMAIN"}),(0,s.jsx)(n.td,{children:"Mailgun API Domain"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MAILGUN_SENDER"}),(0,s.jsx)(n.td,{children:"-"}),(0,s.jsx)(n.td,{children:"Mailgun Sender Mail ID"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PFX_BASE64"}),(0,s.jsx)(n.td,{children:"-"}),(0,s.jsx)(n.td,{children:"Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PASS_PHRASE"}),(0,s.jsx)(n.td,{children:"opensign"}),(0,s.jsx)(n.td,{children:"Pass phrase of PFX or p12 document signing certificate file."})]})]})]}),"\n",(0,s.jsx)(n.h1,{id:"steps-to-generate-self-sign-certificate",children:"Steps to Generate Self Sign Certificate"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"# execute below command and use passphrase 'opensign'\nopenssl genrsa -des3 -out ./cert/local_dev.key 2048\nopenssl req -key ./cert/local_dev.key -new -x509 -days 365 -out ./cert/local_dev.crt\nopenssl pkcs12 -inkey ./cert/local_dev.key -in ./cert/local_dev.crt -export -out ./cert/local_dev.pfx\nopenssl base64 -in ./cert/local_dev.pfx -out ./cert/base64_pfx\n"})}),"\n",(0,s.jsx)(n.h1,{id:"cors-configuration",children:"CORS Configuration"}),"\n",(0,s.jsxs)(n.p,{children:["As document storage is delegated to S3-compatible services that reside in a different host than the OpenSign one, document operations (loading, storing, deleting) are subject to ",(0,s.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Cross-origin_resource_sharing",children:"Cross-Origin Resource Sharing"})," restriction policies; as a consequence, OpenSign app may fail with (browser console) errors like the following:"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"Access to fetch at 'https://foo.nyc3.digitaloceanspaces.com/exported_file_4627_0000-00-00T00%3A45%3A43.344Z.pdf'\nfrom origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header\nis present on the requested resource. If an opaque response serves your needs, set the request's mode to\n'no-cors' to fetch the resource with CORS disabled.\n"})}),"\n",(0,s.jsx)(n.p,{children:"In order to address this, your document storage system must be instructed to accept requests from other hosts; below the relevant documentation links:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://docs.digitalocean.com/products/spaces/how-to/configure-cors/",children:"How to Configure CORS on DigitalOcean Spaces"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html",children:"Configuring cross-origin resource sharing on AWS S3"})}),"\n"]})]})}function x(e={}){const{wrapper:n}={...(0,i.a)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkOpenSign_Docs=self.webpackChunkOpenSign_Docs||[]).push([[8781],{44907:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>c,default:()=>x,frontMatter:()=>l,metadata:()=>d,toc:()=>h});var s=t(85893),i=t(11151),o=t(22004),r=t.n(o);const l={title:"Localhost Setup with Docker"},c=void 0,d={id:"self-host/docker/run-locally",title:"Localhost Setup with Docker",description:"Steps to run OpenSign\u2122 with docker in macos/linux:",source:"@site/docs/self-host/docker/run-locally.md",sourceDirName:"self-host/docker",slug:"/self-host/docker/run-locally",permalink:"/docs/self-host/docker/run-locally",draft:!1,unlisted:!1,editUrl:"https://github.com/opensignlabs/opensign/tree/feat-docs/docs/docs/self-host/docker/run-locally.md",tags:[],version:"current",frontMatter:{title:"Localhost Setup with Docker"},sidebar:"selfhostSidebar",previous:{title:"Docker",permalink:"/docs/category/docker"},next:{title:"Cloud Storage",permalink:"/docs/category/cloud-storage"}},a={},h=[{value:"Steps to run OpenSign\u2122 with docker in macos/linux:",id:"steps-to-run-opensign-with-docker-in-macoslinux",level:2},{value:"Steps to run OpenSign\u2122 with docker in windows:",id:"steps-to-run-opensign-with-docker-in-windows",level:2},{value:"Information About ENV variables which are used to setup OpenSign\u2122 with Docker on Localhost",id:"information-about-env-variables-which-are-used-to-setup-opensign-with-docker-on-localhost",level:2}];function p(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,i.a)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h2,{id:"steps-to-run-opensign-with-docker-in-macoslinux",children:"Steps to run OpenSign\u2122 with docker in macos/linux:"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsx)(n.li,{children:"Firstly, install Docker and ensure it is running before proceeding to the next steps."}),"\n",(0,s.jsx)(n.li,{children:"Now, open the terminal and type the following command:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"git clone https://github.com/OpenSignLabs/OpenSign.git\n"})}),"\n",(0,s.jsx)(n.p,{children:"and Hit Enter to clone the OpenSign project locally."}),"\n",(0,s.jsxs)(n.ol,{start:"3",children:["\n",(0,s.jsx)(n.li,{children:"Then, navigate to the project directory with the command:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"cd OpenSign\n"})}),"\n",(0,s.jsx)(n.p,{children:"Hit Enter to access the OpenSign project in the terminal."}),"\n",(0,s.jsxs)(n.ol,{start:"4",children:["\n",(0,s.jsx)(n.li,{children:"Execute the following command to build the container image:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"make build\n"})}),"\n",(0,s.jsx)(n.p,{children:"This will initiate the process of creating the container image. It may take some time to complete."}),"\n",(0,s.jsxs)(n.ol,{start:"5",children:["\n",(0,s.jsx)(n.li,{children:"For subsequent runs, open Docker and start the OpenSign container by clicking on the play button in the actions panel."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.em,{children:"Note: If you wish to incorporate our latest features into your Docker container, delete the existing OpenSign container and follow the steps again."})}),"\n",(0,s.jsx)(n.h2,{id:"steps-to-run-opensign-with-docker-in-windows",children:"Steps to run OpenSign\u2122 with docker in windows:"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsx)(n.li,{children:"Set up WSL 2 on Windows by referring to the video provided."}),"\n"]}),"\n",(0,s.jsx)("div",{children:(0,s.jsx)(r(),{playing:!0,controls:!0,url:"https://youtu.be/1kFFwknneD8?si=FKriXPwFqZPLUagI"})}),"\n",(0,s.jsxs)(n.ol,{start:"2",children:["\n",(0,s.jsx)(n.li,{children:"Install Docker Desktop on Windows and launch Docker Desktop."}),"\n",(0,s.jsx)(n.li,{children:'Enable WSL in Docker Desktop by navigating to Settings > Resources > WSL Integration. Check the box and click on "Apply & Restart." Minimize Docker Desktop.'}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.img,{src:"https://legadratw3d.ams3.cdn.digitaloceanspaces.com/Screenshot%202024-02-23%20201448.png",alt:"docker"})}),"\n",(0,s.jsxs)(n.ol,{start:"4",children:["\n",(0,s.jsx)(n.li,{children:'Navigate to your desired location in Windows. Open PowerShell in that folder by holding Shift and right-clicking the mouse, then select "Open PowerShell window here."'}),"\n",(0,s.jsx)(n.li,{children:"In the PowerShell window, type the following command:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"git clone https://github.com/OpenSignLabs/OpenSign.git\n"})}),"\n",(0,s.jsx)(n.p,{children:"and Hit Enter to clone the OpenSign project locally."}),"\n",(0,s.jsxs)(n.ol,{start:"6",children:["\n",(0,s.jsxs)(n.li,{children:["Open the OpenSign folder with Visual Studio Code. Go to ",(0,s.jsx)(n.code,{children:"apps > mongo > mongo-init.sh"}),". Change the file type from CRLF to LF, save the file, and close Visual Studio Code."]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.img,{src:"https://legadratw3d.ams3.cdn.digitaloceanspaces.com/Screenshot%202024-02-23%20175944.png",alt:"docker"})}),"\n",(0,s.jsxs)(n.ol,{start:"7",children:["\n",(0,s.jsx)(n.li,{children:"Open the Ubuntu/WSL terminal and use the command to navigate to the folder where you cloned the OpenSign project, e.g., cd mnt/c/testing/docker/OpenSign."}),"\n",(0,s.jsx)(n.li,{children:"Execute the following command to build the container image:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"make build\n"})}),"\n",(0,s.jsx)(n.p,{children:"This will initiate the process of creating the container image. It may take some time to complete."}),"\n",(0,s.jsxs)(n.ol,{start:"9",children:["\n",(0,s.jsx)(n.li,{children:"Refer below video for more specific details."}),"\n",(0,s.jsx)(n.li,{children:"For subsequent runs, open Docker and start the OpenSign container by clicking on the play button in the actions panel."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.em,{children:"Note: If you wish to incorporate our latest features into your Docker container, delete the existing OpenSign container and follow the steps again."})}),"\n",(0,s.jsx)("div",{children:(0,s.jsx)(r(),{playing:!0,controls:!0,url:"https://www.youtube.com/watch?v=GY_OP697EiU"})}),"\n",(0,s.jsx)(n.h2,{id:"information-about-env-variables-which-are-used-to-setup-opensign-with-docker-on-localhost",children:"Information About ENV variables which are used to setup OpenSign\u2122 with Docker on Localhost"}),"\n",(0,s.jsx)(n.p,{children:"To set up OpenSign\u2122 locally using Docker, the following prerequisites are required:"}),"\n",(0,s.jsx)(n.p,{children:"Environment Varaibles:"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"Environment Varibale"}),(0,s.jsx)(n.th,{children:"Value"}),(0,s.jsx)(n.th,{children:"Description"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"CI"}),(0,s.jsx)(n.td,{children:"false"}),(0,s.jsx)(n.td,{children:"Set CI to false while running the app locally"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PUBLIC_URL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"http://localhost:3000",children:"http://localhost:3000"})}),(0,s.jsx)(n.td,{children:"Set it to the URL form where the app home page will be accessed"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"GENERATE_SOURCEMAP"}),(0,s.jsx)(n.td,{children:"false"}),(0,s.jsx)(n.td,{children:"Set it to true if you want to generate the Sourcemap for debugging"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"REACT_APP_SERVERURL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"http://localhost:8080/app",children:"http://localhost:8080/app"})}),(0,s.jsx)(n.td,{children:"Set it to the URL from where APIs will be accessible, for local development it should be localhost:8080/app (use your local port number instead)"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"REACT_APP_APPID"}),(0,s.jsx)(n.td,{children:"opensignstgn"}),(0,s.jsx)(n.td,{children:"A 12 character long random app identifier. The value of this should be same as APP_ID which is a variable used by backend API."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"APP_ID"}),(0,s.jsx)(n.td,{children:"opensignstgn"}),(0,s.jsx)(n.td,{children:"A 12 character long random app identifier. The value of this should be same as REACT_APP_APPID which is a variable used by Frontend React App."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"appName"}),(0,s.jsx)(n.td,{children:"open_sign_server"}),(0,s.jsx)(n.td,{children:"Name of the app. It will be visible in the verification emails sent out."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MASTER_KEY"}),(0,s.jsx)(n.td,{children:"XnAadwKxxByMr"}),(0,s.jsx)(n.td,{children:"A 12 character long random secret key that allows access to all the data. It is used in Parse dashboard config to view all the data in the database."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MONGODB_URI"}),(0,s.jsx)(n.td,{children:"mongodb://host.docker.internal:27017/OpenSignDB"}),(0,s.jsx)(n.td,{children:"Mongodb URI to connect to"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PARSE_MOUNT"}),(0,s.jsx)(n.td,{children:"/app"}),(0,s.jsx)(n.td,{children:"Path on which APIs should be mounted. Do not change this. This variable shall be removed & value hardcoded in the source code in coming versions."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"SERVER_URL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"http://localhost:8080/app",children:"http://localhost:8080/app"})}),(0,s.jsx)(n.td,{children:"Set it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:8080/app (use your local port number instead)"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_SPACE"}),(0,s.jsx)(n.td,{children:"DOSPACENAME"}),(0,s.jsx)(n.td,{children:"Digital ocean space name or AWS S3 bucket name for uploading documents"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_ENDPOINT"}),(0,s.jsx)(n.td,{children:"ams3.digitaloceanspaces.com"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces endpoint or AWS S3 endpoint for uploading documents"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_BASEURL"}),(0,s.jsx)(n.td,{children:(0,s.jsx)(n.a,{href:"https://DOSPACENAME.ams3.digitaloceanspaces.com",children:"https://DOSPACENAME.ams3.digitaloceanspaces.com"})}),(0,s.jsx)(n.td,{children:"Digital ocean baseurl or AWS S3 base URL"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_ACCESS_KEY_ID"}),(0,s.jsx)(n.td,{children:"YOUR_S3_ACCESS_ID"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_SECRET_ACCESS_KEY"}),(0,s.jsx)(n.td,{children:"YOUR_S3_ACCESS_KEY"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces secret access key or AWS s3 secret access key for uploading the docs"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"DO_REGION"}),(0,s.jsx)(n.td,{children:"YOUR_S3_REGION"}),(0,s.jsx)(n.td,{children:"Digital ocean spaces region or AWS s3 region"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"USE_LOCAL"}),(0,s.jsx)(n.td,{children:"FALSE"}),(0,s.jsx)(n.td,{children:"To use local file storage to save file"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MAILGUN_API_KEY"}),(0,s.jsx)(n.td,{children:"YOUR_MAILGUNAPI_KEY"}),(0,s.jsx)(n.td,{children:"Mailgun API Key"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MAILGUN_DOMAIN"}),(0,s.jsx)(n.td,{children:"YOUR_MAILGUNAPI_DOMAIN"}),(0,s.jsx)(n.td,{children:"Mailgun API Domain"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"MAILGUN_SENDER"}),(0,s.jsx)(n.td,{children:"-"}),(0,s.jsx)(n.td,{children:"Mailgun Sender Mail ID"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PFX_BASE64"}),(0,s.jsx)(n.td,{children:"-"}),(0,s.jsx)(n.td,{children:"Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase."})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"PASS_PHRASE"}),(0,s.jsx)(n.td,{children:"opensign"}),(0,s.jsx)(n.td,{children:"Pass phrase of PFX or p12 document signing certificate file."})]})]})]}),"\n",(0,s.jsx)(n.h1,{id:"steps-to-generate-self-sign-certificate",children:"Steps to Generate Self Sign Certificate"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"# execute below command and use passphrase 'opensign'\nopenssl genrsa -des3 -out ./local_dev.key 2048\nopenssl req -key ./local_dev.key -new -x509 -days 365 -out ./local_dev.crt\nopenssl pkcs12 -inkey ./local_dev.key -in ./cert/local_dev.crt -export -out ./local_dev.pfx\nopenssl base64 -in ./local_dev.pfx -out ./base64_pfx\n"})}),"\n",(0,s.jsx)(n.h1,{id:"cors-configuration",children:"CORS Configuration"}),"\n",(0,s.jsxs)(n.p,{children:["As document storage is delegated to S3-compatible services that reside in a different host than the OpenSign one, document operations (loading, storing, deleting) are subject to ",(0,s.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Cross-origin_resource_sharing",children:"Cross-Origin Resource Sharing"})," restriction policies; as a consequence, OpenSign app may fail with (browser console) errors like the following:"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"Access to fetch at 'https://foo.nyc3.digitaloceanspaces.com/exported_file_4627_0000-00-00T00%3A45%3A43.344Z.pdf'\nfrom origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header\nis present on the requested resource. If an opaque response serves your needs, set the request's mode to\n'no-cors' to fetch the resource with CORS disabled.\n"})}),"\n",(0,s.jsx)(n.p,{children:"In order to address this, your document storage system must be instructed to accept requests from other hosts; below the relevant documentation links:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://docs.digitalocean.com/products/spaces/how-to/configure-cors/",children:"How to Configure CORS on DigitalOcean Spaces"})}),"\n",(0,s.jsx)(n.li,{children:(0,s.jsx)(n.a,{href:"https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html",children:"Configuring cross-origin resource sharing on AWS S3"})}),"\n"]})]})}function x(e={}){const{wrapper:n}={...(0,i.a)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.d0db62ed.js b/assets/js/runtime~main.90f93170.js similarity index 99% rename from assets/js/runtime~main.d0db62ed.js rename to assets/js/runtime~main.90f93170.js index 19cefffe3..9043f7a9c 100644 --- a/assets/js/runtime~main.d0db62ed.js +++ b/assets/js/runtime~main.90f93170.js @@ -1 +1 @@ -(()=>{"use strict";var e,a,c,d,r,b={},f={};function t(e){var a=f[e];if(void 0!==a)return a.exports;var c=f[e]={id:e,loaded:!1,exports:{}};return b[e].call(c.exports,c,c.exports,t),c.loaded=!0,c.exports}t.m=b,t.c=f,e=[],t.O=(a,c,d,r)=>{if(!c){var b=1/0;for(n=0;n=r)&&Object.keys(t.O).every((e=>t.O[e](c[o])))?c.splice(o--,1):(f=!1,r0&&e[n-1][2]>r;n--)e[n]=e[n-1];e[n]=[c,d,r]},t.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return t.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var r=Object.create(null);t.r(r);var b={};a=a||[null,c({}),c([]),c(c)];for(var f=2&d&&e;"object"==typeof f&&!~a.indexOf(f);f=c(f))Object.getOwnPropertyNames(f).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,t.d(r,b),r},t.d=(e,a)=>{for(var c in a)t.o(a,c)&&!t.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},t.f={},t.e=e=>Promise.all(Object.keys(t.f).reduce(((a,c)=>(t.f[c](e,a),a)),[])),t.u=e=>"assets/js/"+({53:"935f2afb",110:"66406991",230:"d91ad230",261:"reactPlayerKaltura",273:"fa40969b",339:"4f7a2d40",420:"e2c87691",453:"30a24c52",533:"b2b675dd",762:"d8b805fb",823:"c7b98810",841:"c5e4dae0",853:"277a78f5",948:"8717b14a",1332:"f0ff4a36",1477:"b2f554cd",1512:"e9e778b7",1520:"770b40a9",1531:"bbdfc22d",1633:"031793e1",1713:"a7023ddc",1773:"ef5d5d5d",1893:"4c5e977b",1914:"d9f32620",2087:"bfe4b778",2121:"reactPlayerFacebook",2241:"2ace9d1d",2245:"a2bc1463",2267:"59362658",2362:"e273c56f",2403:"38c56221",2535:"814f3328",2546:"reactPlayerStreamable",2832:"1f73ca32",2865:"3e02da86",3085:"1f391b9e",3089:"a6aa9e1f",3101:"64ee8796",3137:"1a2f05d3",3156:"11b7b3d8",3205:"a80da1cf",3514:"73664a40",3608:"9e4087bc",3743:"reactPlayerVimeo",4013:"01a85c17",4195:"c4f5d8e4",4277:"14716de7",4368:"a94703ab",4439:"reactPlayerYouTube",4478:"d1393a72",4651:"05632a52",4667:"reactPlayerMixcloud",4772:"b0378e01",4918:"1f7895dc",4955:"e226bb09",4985:"b839bf37",5377:"ce589067",5507:"8320e026",5858:"046910c8",5900:"38e3d9c8",6011:"reactPlayerFilePlayer",6033:"28b19cd2",6103:"ccc49370",6113:"13fdae3b",6125:"reactPlayerSoundCloud",6177:"611db08b",6216:"reactPlayerTwitch",6344:"984cf7cf",6543:"17e5210b",6759:"c9fa5aa5",6938:"608ae6a4",7100:"2c416566",7178:"096bfee4",7414:"393be207",7475:"500027af",7596:"reactPlayerDailyMotion",7664:"reactPlayerPreview",7894:"a88a3db3",7971:"8a725248",8055:"reactPlayerWistia",8087:"e4f5c862",8106:"377084eb",8141:"98da7451",8163:"5a2de241",8468:"52d5c0f9",8474:"9640838e",8489:"7b076186",8518:"a7bd4aaa",8610:"6875c492",8636:"f4f34a3a",8766:"70853c19",8781:"489b8a4d",8784:"83cab870",8866:"eb56c656",8878:"cf03142d",8888:"reactPlayerVidyard",8892:"38ec836e",9003:"925b3f96",9010:"06b6ef6a",9035:"4c9e35b1",9588:"5c04ee3b",9642:"7661071f",9661:"5e95c892",9671:"0e384e19",9697:"2c586be5",9700:"e16015ca",9817:"14eb3368",9914:"0c0943c7"}[e]||e)+"."+{53:"b319ac64",110:"ab20026d",230:"3cc5e6e9",261:"4b30f79b",273:"142abd15",339:"965bda1f",420:"c9c1a330",453:"61f3e45f",533:"2d5f5b1d",762:"0be52068",823:"81840a08",841:"b9d70538",853:"6965f6a9",948:"b2da1fd1",1332:"bdf7e411",1477:"b31b2642",1512:"7ddd2ec3",1520:"cfe051cf",1531:"298e9aa8",1633:"d8366831",1713:"fefd4794",1772:"c222a62c",1773:"d5cdc9ed",1893:"59606182",1914:"eb382def",2087:"9ac115fd",2121:"c8df990c",2241:"e6e648f1",2245:"e95152b3",2267:"a4846e2b",2362:"ebdb1814",2403:"98102502",2529:"2079a565",2535:"f3b6b0ab",2546:"665b04f4",2832:"450477a3",2865:"89ed6402",3085:"e5c5d651",3089:"84b5c675",3101:"47959e32",3137:"071bc9df",3156:"41df5616",3205:"af75d475",3514:"b2437ac4",3608:"0e768bf1",3743:"2ede10ee",4013:"e5e25f55",4148:"aa6a1681",4195:"1659087e",4277:"5fe62968",4311:"86f3bfc6",4368:"7d12b1da",4439:"6a6454f7",4478:"ed78b777",4651:"804248b0",4667:"c24bbf43",4682:"18721add",4772:"ab8f1dec",4918:"15f115ce",4955:"8f728b1e",4985:"c2841a57",5377:"4f515bc1",5507:"36c41078",5858:"86987606",5900:"395b3964",6011:"6de743c9",6033:"8efd80de",6103:"ebc8482f",6113:"8e8c149c",6125:"9555c68b",6177:"e7798f11",6216:"0d890761",6344:"394ac727",6543:"7f67a86f",6759:"c81d0e01",6938:"d44251bf",7100:"dfa7c53a",7178:"9a58922d",7414:"8d31e6a7",7475:"0b8bf361",7596:"95bca972",7664:"7fd4bae6",7894:"f9046360",7971:"8323da14",8055:"27482879",8087:"fd9041fd",8106:"015e4a9a",8140:"901b2f91",8141:"6478079e",8163:"7d7e666b",8468:"4f2bfead",8474:"f58804a4",8475:"d27b3009",8489:"40a02a7c",8518:"aaa08e5a",8531:"1f1a82a7",8610:"d85035d6",8636:"c590d949",8766:"d6b7d755",8781:"3da02971",8784:"c7f9aad2",8866:"381cdff2",8878:"50c3bf68",8888:"f7352a9d",8892:"7315f43d",9003:"1e8e0783",9010:"f4802a87",9035:"37598b09",9588:"3b8abbdf",9642:"223fec4f",9661:"33228fcd",9671:"8f2ee486",9697:"5e09231a",9700:"ad032cc8",9817:"424c677a",9914:"83d53850"}[e]+".js",t.miniCssF=e=>{},t.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),t.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},r="OpenSign-Docs:",t.l=(e,a,c,b)=>{if(d[e])d[e].push(a);else{var f,o;if(void 0!==c)for(var l=document.getElementsByTagName("script"),n=0;n{f.onerror=f.onload=null,clearTimeout(s);var r=d[e];if(delete d[e],f.parentNode&&f.parentNode.removeChild(f),r&&r.forEach((e=>e(c))),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=u.bind(null,f.onerror),f.onload=u.bind(null,f.onload),o&&document.head.appendChild(f)}},t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),t.p="/",t.gca=function(e){return e={59362658:"2267",66406991:"110","935f2afb":"53",d91ad230:"230",reactPlayerKaltura:"261",fa40969b:"273","4f7a2d40":"339",e2c87691:"420","30a24c52":"453",b2b675dd:"533",d8b805fb:"762",c7b98810:"823",c5e4dae0:"841","277a78f5":"853","8717b14a":"948",f0ff4a36:"1332",b2f554cd:"1477",e9e778b7:"1512","770b40a9":"1520",bbdfc22d:"1531","031793e1":"1633",a7023ddc:"1713",ef5d5d5d:"1773","4c5e977b":"1893",d9f32620:"1914",bfe4b778:"2087",reactPlayerFacebook:"2121","2ace9d1d":"2241",a2bc1463:"2245",e273c56f:"2362","38c56221":"2403","814f3328":"2535",reactPlayerStreamable:"2546","1f73ca32":"2832","3e02da86":"2865","1f391b9e":"3085",a6aa9e1f:"3089","64ee8796":"3101","1a2f05d3":"3137","11b7b3d8":"3156",a80da1cf:"3205","73664a40":"3514","9e4087bc":"3608",reactPlayerVimeo:"3743","01a85c17":"4013",c4f5d8e4:"4195","14716de7":"4277",a94703ab:"4368",reactPlayerYouTube:"4439",d1393a72:"4478","05632a52":"4651",reactPlayerMixcloud:"4667",b0378e01:"4772","1f7895dc":"4918",e226bb09:"4955",b839bf37:"4985",ce589067:"5377","8320e026":"5507","046910c8":"5858","38e3d9c8":"5900",reactPlayerFilePlayer:"6011","28b19cd2":"6033",ccc49370:"6103","13fdae3b":"6113",reactPlayerSoundCloud:"6125","611db08b":"6177",reactPlayerTwitch:"6216","984cf7cf":"6344","17e5210b":"6543",c9fa5aa5:"6759","608ae6a4":"6938","2c416566":"7100","096bfee4":"7178","393be207":"7414","500027af":"7475",reactPlayerDailyMotion:"7596",reactPlayerPreview:"7664",a88a3db3:"7894","8a725248":"7971",reactPlayerWistia:"8055",e4f5c862:"8087","377084eb":"8106","98da7451":"8141","5a2de241":"8163","52d5c0f9":"8468","9640838e":"8474","7b076186":"8489",a7bd4aaa:"8518","6875c492":"8610",f4f34a3a:"8636","70853c19":"8766","489b8a4d":"8781","83cab870":"8784",eb56c656:"8866",cf03142d:"8878",reactPlayerVidyard:"8888","38ec836e":"8892","925b3f96":"9003","06b6ef6a":"9010","4c9e35b1":"9035","5c04ee3b":"9588","7661071f":"9642","5e95c892":"9661","0e384e19":"9671","2c586be5":"9697",e16015ca:"9700","14eb3368":"9817","0c0943c7":"9914"}[e]||e,t.p+t.u(e)},(()=>{var e={1303:0,532:0};t.f.j=(a,c)=>{var d=t.o(e,a)?e[a]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var r=new Promise(((c,r)=>d=e[a]=[c,r]));c.push(d[2]=r);var b=t.p+t.u(a),f=new Error;t.l(b,(c=>{if(t.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var r=c&&("load"===c.type?"missing":c.type),b=c&&c.target&&c.target.src;f.message="Loading chunk "+a+" failed.\n("+r+": "+b+")",f.name="ChunkLoadError",f.type=r,f.request=b,d[1](f)}}),"chunk-"+a,a)}},t.O.j=a=>0===e[a];var a=(a,c)=>{var d,r,b=c[0],f=c[1],o=c[2],l=0;if(b.some((a=>0!==e[a]))){for(d in f)t.o(f,d)&&(t.m[d]=f[d]);if(o)var n=o(t)}for(a&&a(c);l{"use strict";var e,a,c,d,r,b={},f={};function t(e){var a=f[e];if(void 0!==a)return a.exports;var c=f[e]={id:e,loaded:!1,exports:{}};return b[e].call(c.exports,c,c.exports,t),c.loaded=!0,c.exports}t.m=b,t.c=f,e=[],t.O=(a,c,d,r)=>{if(!c){var b=1/0;for(n=0;n=r)&&Object.keys(t.O).every((e=>t.O[e](c[o])))?c.splice(o--,1):(f=!1,r0&&e[n-1][2]>r;n--)e[n]=e[n-1];e[n]=[c,d,r]},t.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return t.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,t.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var r=Object.create(null);t.r(r);var b={};a=a||[null,c({}),c([]),c(c)];for(var f=2&d&&e;"object"==typeof f&&!~a.indexOf(f);f=c(f))Object.getOwnPropertyNames(f).forEach((a=>b[a]=()=>e[a]));return b.default=()=>e,t.d(r,b),r},t.d=(e,a)=>{for(var c in a)t.o(a,c)&&!t.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},t.f={},t.e=e=>Promise.all(Object.keys(t.f).reduce(((a,c)=>(t.f[c](e,a),a)),[])),t.u=e=>"assets/js/"+({53:"935f2afb",110:"66406991",230:"d91ad230",261:"reactPlayerKaltura",273:"fa40969b",339:"4f7a2d40",420:"e2c87691",453:"30a24c52",533:"b2b675dd",762:"d8b805fb",823:"c7b98810",841:"c5e4dae0",853:"277a78f5",948:"8717b14a",1332:"f0ff4a36",1477:"b2f554cd",1512:"e9e778b7",1520:"770b40a9",1531:"bbdfc22d",1633:"031793e1",1713:"a7023ddc",1773:"ef5d5d5d",1893:"4c5e977b",1914:"d9f32620",2087:"bfe4b778",2121:"reactPlayerFacebook",2241:"2ace9d1d",2245:"a2bc1463",2267:"59362658",2362:"e273c56f",2403:"38c56221",2535:"814f3328",2546:"reactPlayerStreamable",2832:"1f73ca32",2865:"3e02da86",3085:"1f391b9e",3089:"a6aa9e1f",3101:"64ee8796",3137:"1a2f05d3",3156:"11b7b3d8",3205:"a80da1cf",3514:"73664a40",3608:"9e4087bc",3743:"reactPlayerVimeo",4013:"01a85c17",4195:"c4f5d8e4",4277:"14716de7",4368:"a94703ab",4439:"reactPlayerYouTube",4478:"d1393a72",4651:"05632a52",4667:"reactPlayerMixcloud",4772:"b0378e01",4918:"1f7895dc",4955:"e226bb09",4985:"b839bf37",5377:"ce589067",5507:"8320e026",5858:"046910c8",5900:"38e3d9c8",6011:"reactPlayerFilePlayer",6033:"28b19cd2",6103:"ccc49370",6113:"13fdae3b",6125:"reactPlayerSoundCloud",6177:"611db08b",6216:"reactPlayerTwitch",6344:"984cf7cf",6543:"17e5210b",6759:"c9fa5aa5",6938:"608ae6a4",7100:"2c416566",7178:"096bfee4",7414:"393be207",7475:"500027af",7596:"reactPlayerDailyMotion",7664:"reactPlayerPreview",7894:"a88a3db3",7971:"8a725248",8055:"reactPlayerWistia",8087:"e4f5c862",8106:"377084eb",8141:"98da7451",8163:"5a2de241",8468:"52d5c0f9",8474:"9640838e",8489:"7b076186",8518:"a7bd4aaa",8610:"6875c492",8636:"f4f34a3a",8766:"70853c19",8781:"489b8a4d",8784:"83cab870",8866:"eb56c656",8878:"cf03142d",8888:"reactPlayerVidyard",8892:"38ec836e",9003:"925b3f96",9010:"06b6ef6a",9035:"4c9e35b1",9588:"5c04ee3b",9642:"7661071f",9661:"5e95c892",9671:"0e384e19",9697:"2c586be5",9700:"e16015ca",9817:"14eb3368",9914:"0c0943c7"}[e]||e)+"."+{53:"b319ac64",110:"ab20026d",230:"3cc5e6e9",261:"4b30f79b",273:"142abd15",339:"965bda1f",420:"c9c1a330",453:"61f3e45f",533:"2d5f5b1d",762:"0be52068",823:"81840a08",841:"b9d70538",853:"6965f6a9",948:"b2da1fd1",1332:"bdf7e411",1477:"b31b2642",1512:"7ddd2ec3",1520:"cfe051cf",1531:"298e9aa8",1633:"d8366831",1713:"fefd4794",1772:"c222a62c",1773:"d5cdc9ed",1893:"59606182",1914:"eb382def",2087:"9ac115fd",2121:"c8df990c",2241:"e6e648f1",2245:"e95152b3",2267:"a4846e2b",2362:"ebdb1814",2403:"98102502",2529:"2079a565",2535:"f3b6b0ab",2546:"665b04f4",2832:"450477a3",2865:"89ed6402",3085:"e5c5d651",3089:"84b5c675",3101:"47959e32",3137:"071bc9df",3156:"41df5616",3205:"af75d475",3514:"b2437ac4",3608:"0e768bf1",3743:"2ede10ee",4013:"e5e25f55",4148:"aa6a1681",4195:"1659087e",4277:"5fe62968",4311:"86f3bfc6",4368:"7d12b1da",4439:"6a6454f7",4478:"ed78b777",4651:"804248b0",4667:"c24bbf43",4682:"18721add",4772:"ab8f1dec",4918:"15f115ce",4955:"8f728b1e",4985:"c2841a57",5377:"4f515bc1",5507:"36c41078",5858:"86987606",5900:"395b3964",6011:"6de743c9",6033:"8efd80de",6103:"ebc8482f",6113:"8e8c149c",6125:"9555c68b",6177:"e7798f11",6216:"0d890761",6344:"394ac727",6543:"7f67a86f",6759:"c81d0e01",6938:"d44251bf",7100:"dfa7c53a",7178:"9a58922d",7414:"8d31e6a7",7475:"0b8bf361",7596:"95bca972",7664:"7fd4bae6",7894:"f9046360",7971:"8323da14",8055:"27482879",8087:"fd9041fd",8106:"015e4a9a",8140:"901b2f91",8141:"6478079e",8163:"7d7e666b",8468:"4f2bfead",8474:"f58804a4",8475:"d27b3009",8489:"40a02a7c",8518:"aaa08e5a",8531:"1f1a82a7",8610:"d85035d6",8636:"c590d949",8766:"d6b7d755",8781:"154a7568",8784:"c7f9aad2",8866:"381cdff2",8878:"50c3bf68",8888:"f7352a9d",8892:"7315f43d",9003:"1e8e0783",9010:"f4802a87",9035:"37598b09",9588:"3b8abbdf",9642:"223fec4f",9661:"33228fcd",9671:"8f2ee486",9697:"5e09231a",9700:"ad032cc8",9817:"424c677a",9914:"83d53850"}[e]+".js",t.miniCssF=e=>{},t.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),t.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},r="OpenSign-Docs:",t.l=(e,a,c,b)=>{if(d[e])d[e].push(a);else{var f,o;if(void 0!==c)for(var l=document.getElementsByTagName("script"),n=0;n{f.onerror=f.onload=null,clearTimeout(s);var r=d[e];if(delete d[e],f.parentNode&&f.parentNode.removeChild(f),r&&r.forEach((e=>e(c))),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=u.bind(null,f.onerror),f.onload=u.bind(null,f.onload),o&&document.head.appendChild(f)}},t.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),t.p="/",t.gca=function(e){return e={59362658:"2267",66406991:"110","935f2afb":"53",d91ad230:"230",reactPlayerKaltura:"261",fa40969b:"273","4f7a2d40":"339",e2c87691:"420","30a24c52":"453",b2b675dd:"533",d8b805fb:"762",c7b98810:"823",c5e4dae0:"841","277a78f5":"853","8717b14a":"948",f0ff4a36:"1332",b2f554cd:"1477",e9e778b7:"1512","770b40a9":"1520",bbdfc22d:"1531","031793e1":"1633",a7023ddc:"1713",ef5d5d5d:"1773","4c5e977b":"1893",d9f32620:"1914",bfe4b778:"2087",reactPlayerFacebook:"2121","2ace9d1d":"2241",a2bc1463:"2245",e273c56f:"2362","38c56221":"2403","814f3328":"2535",reactPlayerStreamable:"2546","1f73ca32":"2832","3e02da86":"2865","1f391b9e":"3085",a6aa9e1f:"3089","64ee8796":"3101","1a2f05d3":"3137","11b7b3d8":"3156",a80da1cf:"3205","73664a40":"3514","9e4087bc":"3608",reactPlayerVimeo:"3743","01a85c17":"4013",c4f5d8e4:"4195","14716de7":"4277",a94703ab:"4368",reactPlayerYouTube:"4439",d1393a72:"4478","05632a52":"4651",reactPlayerMixcloud:"4667",b0378e01:"4772","1f7895dc":"4918",e226bb09:"4955",b839bf37:"4985",ce589067:"5377","8320e026":"5507","046910c8":"5858","38e3d9c8":"5900",reactPlayerFilePlayer:"6011","28b19cd2":"6033",ccc49370:"6103","13fdae3b":"6113",reactPlayerSoundCloud:"6125","611db08b":"6177",reactPlayerTwitch:"6216","984cf7cf":"6344","17e5210b":"6543",c9fa5aa5:"6759","608ae6a4":"6938","2c416566":"7100","096bfee4":"7178","393be207":"7414","500027af":"7475",reactPlayerDailyMotion:"7596",reactPlayerPreview:"7664",a88a3db3:"7894","8a725248":"7971",reactPlayerWistia:"8055",e4f5c862:"8087","377084eb":"8106","98da7451":"8141","5a2de241":"8163","52d5c0f9":"8468","9640838e":"8474","7b076186":"8489",a7bd4aaa:"8518","6875c492":"8610",f4f34a3a:"8636","70853c19":"8766","489b8a4d":"8781","83cab870":"8784",eb56c656:"8866",cf03142d:"8878",reactPlayerVidyard:"8888","38ec836e":"8892","925b3f96":"9003","06b6ef6a":"9010","4c9e35b1":"9035","5c04ee3b":"9588","7661071f":"9642","5e95c892":"9661","0e384e19":"9671","2c586be5":"9697",e16015ca:"9700","14eb3368":"9817","0c0943c7":"9914"}[e]||e,t.p+t.u(e)},(()=>{var e={1303:0,532:0};t.f.j=(a,c)=>{var d=t.o(e,a)?e[a]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(1303|532)$/.test(a))e[a]=0;else{var r=new Promise(((c,r)=>d=e[a]=[c,r]));c.push(d[2]=r);var b=t.p+t.u(a),f=new Error;t.l(b,(c=>{if(t.o(e,a)&&(0!==(d=e[a])&&(e[a]=void 0),d)){var r=c&&("load"===c.type?"missing":c.type),b=c&&c.target&&c.target.src;f.message="Loading chunk "+a+" failed.\n("+r+": "+b+")",f.name="ChunkLoadError",f.type=r,f.request=b,d[1](f)}}),"chunk-"+a,a)}},t.O.j=a=>0===e[a];var a=(a,c)=>{var d,r,b=c[0],f=c[1],o=c[2],l=0;if(b.some((a=>0!==e[a]))){for(d in f)t.o(f,d)&&(t.m[d]=f[d]);if(o)var n=o(t)}for(a&&a(c);l Archive | OpenSign™ - + diff --git a/blog/first-blog-post/index.html b/blog/first-blog-post/index.html index b9f98b1a3..4d5ff336f 100644 --- a/blog/first-blog-post/index.html +++ b/blog/first-blog-post/index.html @@ -5,7 +5,7 @@ First Blog Post | OpenSign™ - + diff --git a/blog/index.html b/blog/index.html index d0a248ec5..0b7ac45af 100644 --- a/blog/index.html +++ b/blog/index.html @@ -5,7 +5,7 @@ Blog | OpenSign™ - + diff --git a/blog/long-blog-post/index.html b/blog/long-blog-post/index.html index 12e55cc98..7d38f991a 100644 --- a/blog/long-blog-post/index.html +++ b/blog/long-blog-post/index.html @@ -5,7 +5,7 @@ Long Blog Post | OpenSign™ - + diff --git a/blog/mdx-blog-post/index.html b/blog/mdx-blog-post/index.html index 4f1c2b462..b377fdb40 100644 --- a/blog/mdx-blog-post/index.html +++ b/blog/mdx-blog-post/index.html @@ -5,7 +5,7 @@ MDX Blog Post | OpenSign™ - + diff --git a/blog/tags/docusaurus/index.html b/blog/tags/docusaurus/index.html index 2d73855d1..ed1925ecb 100644 --- a/blog/tags/docusaurus/index.html +++ b/blog/tags/docusaurus/index.html @@ -5,7 +5,7 @@ 4 posts tagged with "docusaurus" | OpenSign™ - + diff --git a/blog/tags/facebook/index.html b/blog/tags/facebook/index.html index f59322575..5c3239074 100644 --- a/blog/tags/facebook/index.html +++ b/blog/tags/facebook/index.html @@ -5,7 +5,7 @@ One post tagged with "facebook" | OpenSign™ - + diff --git a/blog/tags/hello/index.html b/blog/tags/hello/index.html index 381c917f0..651539041 100644 --- a/blog/tags/hello/index.html +++ b/blog/tags/hello/index.html @@ -5,7 +5,7 @@ 2 posts tagged with "hello" | OpenSign™ - + diff --git a/blog/tags/hola/index.html b/blog/tags/hola/index.html index efed12cce..ea323ae34 100644 --- a/blog/tags/hola/index.html +++ b/blog/tags/hola/index.html @@ -5,7 +5,7 @@ One post tagged with "hola" | OpenSign™ - + diff --git a/blog/tags/index.html b/blog/tags/index.html index e32f1dae3..0c602bdb2 100644 --- a/blog/tags/index.html +++ b/blog/tags/index.html @@ -5,7 +5,7 @@ Tags | OpenSign™ - + diff --git a/blog/welcome/index.html b/blog/welcome/index.html index edbdc37e3..1b6f1747a 100644 --- a/blog/welcome/index.html +++ b/blog/welcome/index.html @@ -5,7 +5,7 @@ Welcome | OpenSign™ - + diff --git a/docs/API-docs/contactlist/index.html b/docs/API-docs/contactlist/index.html index b47c57fad..045a631da 100644 --- a/docs/API-docs/contactlist/index.html +++ b/docs/API-docs/contactlist/index.html @@ -5,7 +5,7 @@ Get Contact list | OpenSign™ - + diff --git a/docs/API-docs/createcontact/index.html b/docs/API-docs/createcontact/index.html index bc8526247..c17b888d6 100644 --- a/docs/API-docs/createcontact/index.html +++ b/docs/API-docs/createcontact/index.html @@ -5,7 +5,7 @@ Create Contact | OpenSign™ - + diff --git a/docs/API-docs/createdocument/index.html b/docs/API-docs/createdocument/index.html index f365ce333..994780fa1 100644 --- a/docs/API-docs/createdocument/index.html +++ b/docs/API-docs/createdocument/index.html @@ -5,7 +5,7 @@ Create Document | OpenSign™ - + diff --git a/docs/API-docs/createdocumentwithtemplateid/index.html b/docs/API-docs/createdocumentwithtemplateid/index.html index 3fd626d7b..50591cce4 100644 --- a/docs/API-docs/createdocumentwithtemplateid/index.html +++ b/docs/API-docs/createdocumentwithtemplateid/index.html @@ -5,7 +5,7 @@ Create Document from Template | OpenSign™ - + diff --git a/docs/API-docs/createtemplate/index.html b/docs/API-docs/createtemplate/index.html index 513f395b3..5ceb131e8 100644 --- a/docs/API-docs/createtemplate/index.html +++ b/docs/API-docs/createtemplate/index.html @@ -5,7 +5,7 @@ Create Template | OpenSign™ - + diff --git a/docs/API-docs/delete-template/index.html b/docs/API-docs/delete-template/index.html index da46bca62..3a9cef24b 100644 --- a/docs/API-docs/delete-template/index.html +++ b/docs/API-docs/delete-template/index.html @@ -5,7 +5,7 @@ Delete Template | OpenSign™ - + diff --git a/docs/API-docs/delete-webhook/index.html b/docs/API-docs/delete-webhook/index.html index 91688585f..c02817dad 100644 --- a/docs/API-docs/delete-webhook/index.html +++ b/docs/API-docs/delete-webhook/index.html @@ -5,7 +5,7 @@ Delete Webhook | OpenSign™ - + diff --git a/docs/API-docs/deletecontact/index.html b/docs/API-docs/deletecontact/index.html index 8f4d06e5e..2cca35cfd 100644 --- a/docs/API-docs/deletecontact/index.html +++ b/docs/API-docs/deletecontact/index.html @@ -5,7 +5,7 @@ Delete Contact | OpenSign™ - + diff --git a/docs/API-docs/deletedocument/index.html b/docs/API-docs/deletedocument/index.html index 1319c973a..da0219a56 100644 --- a/docs/API-docs/deletedocument/index.html +++ b/docs/API-docs/deletedocument/index.html @@ -5,7 +5,7 @@ Delete Document | OpenSign™ - + diff --git a/docs/API-docs/draftedocument/index.html b/docs/API-docs/draftedocument/index.html index 3cd3a5277..2a4410d0a 100644 --- a/docs/API-docs/draftedocument/index.html +++ b/docs/API-docs/draftedocument/index.html @@ -5,7 +5,7 @@ Draft Document | OpenSign™ - + diff --git a/docs/API-docs/get-template/index.html b/docs/API-docs/get-template/index.html index 61f2b0518..fd6db5949 100644 --- a/docs/API-docs/get-template/index.html +++ b/docs/API-docs/get-template/index.html @@ -5,7 +5,7 @@ Get Template | OpenSign™ - + diff --git a/docs/API-docs/get-user/index.html b/docs/API-docs/get-user/index.html index ce72b5503..5618d76a3 100644 --- a/docs/API-docs/get-user/index.html +++ b/docs/API-docs/get-user/index.html @@ -5,7 +5,7 @@ Get your account details | OpenSign™ - + diff --git a/docs/API-docs/get-webhook/index.html b/docs/API-docs/get-webhook/index.html index e3b8c80f4..1e0656ea6 100644 --- a/docs/API-docs/get-webhook/index.html +++ b/docs/API-docs/get-webhook/index.html @@ -5,7 +5,7 @@ Get Webhook | OpenSign™ - + diff --git a/docs/API-docs/getcontact/index.html b/docs/API-docs/getcontact/index.html index da9d9b0ba..a7bc83c63 100644 --- a/docs/API-docs/getcontact/index.html +++ b/docs/API-docs/getcontact/index.html @@ -5,7 +5,7 @@ Get Contact | OpenSign™ - + diff --git a/docs/API-docs/getdocument/index.html b/docs/API-docs/getdocument/index.html index 0a415c4ee..41d9423c7 100644 --- a/docs/API-docs/getdocument/index.html +++ b/docs/API-docs/getdocument/index.html @@ -5,7 +5,7 @@ Get Document | OpenSign™ - + diff --git a/docs/API-docs/getdocumentlist/index.html b/docs/API-docs/getdocumentlist/index.html index b3c05b858..e681d8353 100644 --- a/docs/API-docs/getdocumentlist/index.html +++ b/docs/API-docs/getdocumentlist/index.html @@ -5,7 +5,7 @@ Get Document list from status | OpenSign™ - + diff --git a/docs/API-docs/gettemplatelist/index.html b/docs/API-docs/gettemplatelist/index.html index a747a23f6..9a72e2ca3 100644 --- a/docs/API-docs/gettemplatelist/index.html +++ b/docs/API-docs/gettemplatelist/index.html @@ -5,7 +5,7 @@ Get Template list | OpenSign™ - + diff --git a/docs/API-docs/intro/index.html b/docs/API-docs/intro/index.html index 726031007..4532efb66 100644 --- a/docs/API-docs/intro/index.html +++ b/docs/API-docs/intro/index.html @@ -5,7 +5,7 @@ Overview | OpenSign™ - + diff --git a/docs/API-docs/opensign-api-v-1/index.html b/docs/API-docs/opensign-api-v-1/index.html index 29aee0af6..3cfd5a27d 100644 --- a/docs/API-docs/opensign-api-v-1/index.html +++ b/docs/API-docs/opensign-api-v-1/index.html @@ -5,7 +5,7 @@ OpenSign API v1 | OpenSign™ - + diff --git a/docs/API-docs/save-update-webhook/index.html b/docs/API-docs/save-update-webhook/index.html index 4716f3552..14d068fbb 100644 --- a/docs/API-docs/save-update-webhook/index.html +++ b/docs/API-docs/save-update-webhook/index.html @@ -5,7 +5,7 @@ Save or Update Webhook | OpenSign™ - + diff --git a/docs/API-docs/update-document/index.html b/docs/API-docs/update-document/index.html index 84f8f7a7d..4702620f7 100644 --- a/docs/API-docs/update-document/index.html +++ b/docs/API-docs/update-document/index.html @@ -5,7 +5,7 @@ Update Document | OpenSign™ - + diff --git a/docs/API-docs/update-template/index.html b/docs/API-docs/update-template/index.html index 605ebbe47..aa37860e4 100644 --- a/docs/API-docs/update-template/index.html +++ b/docs/API-docs/update-template/index.html @@ -5,7 +5,7 @@ Update Template | OpenSign™ - + diff --git a/docs/category/cloud-storage/index.html b/docs/category/cloud-storage/index.html index 2ba555f0d..cfc0b6ff0 100644 --- a/docs/category/cloud-storage/index.html +++ b/docs/category/cloud-storage/index.html @@ -5,7 +5,7 @@ Cloud Storage | OpenSign™ - + diff --git a/docs/category/create-new-opensign-document/index.html b/docs/category/create-new-opensign-document/index.html index d80049a1e..10b0397b5 100644 --- a/docs/category/create-new-opensign-document/index.html +++ b/docs/category/create-new-opensign-document/index.html @@ -5,7 +5,7 @@ Create New OpenSign Document | OpenSign™ - + diff --git a/docs/category/docker/index.html b/docs/category/docker/index.html index 28652a913..2bb70b581 100644 --- a/docs/category/docker/index.html +++ b/docs/category/docker/index.html @@ -5,7 +5,7 @@ Docker | OpenSign™ - + diff --git a/docs/category/manage-docs-using-opensign-drive/index.html b/docs/category/manage-docs-using-opensign-drive/index.html index f863b9b6c..1bc2bf033 100644 --- a/docs/category/manage-docs-using-opensign-drive/index.html +++ b/docs/category/manage-docs-using-opensign-drive/index.html @@ -5,7 +5,7 @@ Manage Docs using OpenSign™ Drive | OpenSign™ - + diff --git a/docs/category/reports/index.html b/docs/category/reports/index.html index 960b3bd5e..681adf491 100644 --- a/docs/category/reports/index.html +++ b/docs/category/reports/index.html @@ -5,7 +5,7 @@ Reports | OpenSign™ - + diff --git a/docs/category/settings/index.html b/docs/category/settings/index.html index 1cc739a1b..b843e5ab4 100644 --- a/docs/category/settings/index.html +++ b/docs/category/settings/index.html @@ -5,7 +5,7 @@ Settings | OpenSign™ - + diff --git a/docs/category/templates/index.html b/docs/category/templates/index.html index c51514232..4fd5d208c 100644 --- a/docs/category/templates/index.html +++ b/docs/category/templates/index.html @@ -5,7 +5,7 @@ Templates | OpenSign™ - + diff --git a/docs/contribute/CODE_OF_CONDUCT/index.html b/docs/contribute/CODE_OF_CONDUCT/index.html index 0281e88cc..57f8d93e2 100644 --- a/docs/contribute/CODE_OF_CONDUCT/index.html +++ b/docs/contribute/CODE_OF_CONDUCT/index.html @@ -5,7 +5,7 @@ Code of conduct | OpenSign™ - + diff --git a/docs/contribute/COMMUNITY/index.html b/docs/contribute/COMMUNITY/index.html index 3d3314e7f..c9156de62 100644 --- a/docs/contribute/COMMUNITY/index.html +++ b/docs/contribute/COMMUNITY/index.html @@ -5,7 +5,7 @@ Community at OpenSign™ | OpenSign™ - + diff --git a/docs/contribute/INSTALLATION/index.html b/docs/contribute/INSTALLATION/index.html index ca0a111df..122e9b2d6 100644 --- a/docs/contribute/INSTALLATION/index.html +++ b/docs/contribute/INSTALLATION/index.html @@ -5,7 +5,7 @@ Installation instructions | OpenSign™ - + diff --git a/docs/contribute/REPORTING_GUIDELINES/index.html b/docs/contribute/REPORTING_GUIDELINES/index.html index 9ed0b07dc..53112a2a1 100644 --- a/docs/contribute/REPORTING_GUIDELINES/index.html +++ b/docs/contribute/REPORTING_GUIDELINES/index.html @@ -5,7 +5,7 @@ OpenSign™ Reporting Guidelines | OpenSign™ - + diff --git a/docs/contribute/intro/index.html b/docs/contribute/intro/index.html index 6aa52d89a..fb31d4f77 100644 --- a/docs/contribute/intro/index.html +++ b/docs/contribute/intro/index.html @@ -5,7 +5,7 @@ Contributing to OpenSign | OpenSign™ - + diff --git a/docs/help/New-Document/request-signatures/index.html b/docs/help/New-Document/request-signatures/index.html index 666b02423..b1e7f2308 100644 --- a/docs/help/New-Document/request-signatures/index.html +++ b/docs/help/New-Document/request-signatures/index.html @@ -5,7 +5,7 @@ Request signatures | OpenSign™ - + diff --git a/docs/help/New-Document/sign-yourself/index.html b/docs/help/New-Document/sign-yourself/index.html index 50417d879..98a4b0bfe 100644 --- a/docs/help/New-Document/sign-yourself/index.html +++ b/docs/help/New-Document/sign-yourself/index.html @@ -5,7 +5,7 @@ Sign yourself | OpenSign™ - + diff --git a/docs/help/OpenSign™ Drive/create-document/index.html b/docs/help/OpenSign™ Drive/create-document/index.html index 8cbdf2b7d..a29a8430b 100644 --- a/docs/help/OpenSign™ Drive/create-document/index.html +++ b/docs/help/OpenSign™ Drive/create-document/index.html @@ -5,7 +5,7 @@ Create Docs & Folders | OpenSign™ - + diff --git a/docs/help/OpenSign™ Drive/list-grid-view/index.html b/docs/help/OpenSign™ Drive/list-grid-view/index.html index 8ce4236c2..d1598e0bd 100644 --- a/docs/help/OpenSign™ Drive/list-grid-view/index.html +++ b/docs/help/OpenSign™ Drive/list-grid-view/index.html @@ -5,7 +5,7 @@ Grid vs List view | OpenSign™ - + diff --git a/docs/help/OpenSign™ Drive/organize-documents/index.html b/docs/help/OpenSign™ Drive/organize-documents/index.html index b6b2f0e7e..cee215413 100644 --- a/docs/help/OpenSign™ Drive/organize-documents/index.html +++ b/docs/help/OpenSign™ Drive/organize-documents/index.html @@ -5,7 +5,7 @@ OpenSign™ Drive Interface Documentation | OpenSign™ - + diff --git a/docs/help/OpenSign™ Drive/rename-document/index.html b/docs/help/OpenSign™ Drive/rename-document/index.html index 63a4e6160..ea2825ead 100644 --- a/docs/help/OpenSign™ Drive/rename-document/index.html +++ b/docs/help/OpenSign™ Drive/rename-document/index.html @@ -5,7 +5,7 @@ Rename documents from OpenSign™ Drive | OpenSign™ - + diff --git a/docs/help/Reports/completed/index.html b/docs/help/Reports/completed/index.html index 489b4d78c..3534f80d2 100644 --- a/docs/help/Reports/completed/index.html +++ b/docs/help/Reports/completed/index.html @@ -5,7 +5,7 @@ Completed | OpenSign™ - + diff --git a/docs/help/Reports/declined/index.html b/docs/help/Reports/declined/index.html index b51df65d6..ee09ee4e1 100644 --- a/docs/help/Reports/declined/index.html +++ b/docs/help/Reports/declined/index.html @@ -5,7 +5,7 @@ Declined | OpenSign™ - + diff --git a/docs/help/Reports/drafts/index.html b/docs/help/Reports/drafts/index.html index 27597a9b2..62679a672 100644 --- a/docs/help/Reports/drafts/index.html +++ b/docs/help/Reports/drafts/index.html @@ -5,7 +5,7 @@ Drafts | OpenSign™ - + diff --git a/docs/help/Reports/expired/index.html b/docs/help/Reports/expired/index.html index 1b476ba03..018025e52 100644 --- a/docs/help/Reports/expired/index.html +++ b/docs/help/Reports/expired/index.html @@ -5,7 +5,7 @@ Expired | OpenSign™ - + diff --git a/docs/help/Reports/in-progress/index.html b/docs/help/Reports/in-progress/index.html index 70a82cfda..4f07e4560 100644 --- a/docs/help/Reports/in-progress/index.html +++ b/docs/help/Reports/in-progress/index.html @@ -5,7 +5,7 @@ In Progress | OpenSign™ - + diff --git a/docs/help/Reports/need-your-sign/index.html b/docs/help/Reports/need-your-sign/index.html index 225426470..02ba69ff7 100644 --- a/docs/help/Reports/need-your-sign/index.html +++ b/docs/help/Reports/need-your-sign/index.html @@ -5,7 +5,7 @@ Need your sign | OpenSign™ - + diff --git a/docs/help/Settings/manage-users/index.html b/docs/help/Settings/manage-users/index.html index 712db1a2a..5317bb163 100644 --- a/docs/help/Settings/manage-users/index.html +++ b/docs/help/Settings/manage-users/index.html @@ -5,7 +5,7 @@ Manage users | OpenSign™ - + diff --git a/docs/help/Settings/my-signature/index.html b/docs/help/Settings/my-signature/index.html index 9f2b65fe6..89eca8032 100644 --- a/docs/help/Settings/my-signature/index.html +++ b/docs/help/Settings/my-signature/index.html @@ -5,7 +5,7 @@ My Signature | OpenSign™ - + diff --git a/docs/help/Settings/profile/index.html b/docs/help/Settings/profile/index.html index 9a33ab9de..fdd570cd4 100644 --- a/docs/help/Settings/profile/index.html +++ b/docs/help/Settings/profile/index.html @@ -5,7 +5,7 @@ Profile | OpenSign™ - + diff --git a/docs/help/Templates/create-template/index.html b/docs/help/Templates/create-template/index.html index f100c0bc7..8da2259d6 100644 --- a/docs/help/Templates/create-template/index.html +++ b/docs/help/Templates/create-template/index.html @@ -5,7 +5,7 @@ Create Templates | OpenSign™ - + diff --git a/docs/help/Templates/quick-send/index.html b/docs/help/Templates/quick-send/index.html index 9c481e4a9..94a5f12db 100644 --- a/docs/help/Templates/quick-send/index.html +++ b/docs/help/Templates/quick-send/index.html @@ -5,7 +5,7 @@ Quickly Send template to a signer | OpenSign™ - + diff --git a/docs/help/Templates/use-template/index.html b/docs/help/Templates/use-template/index.html index 6f138ced0..5c878a331 100644 --- a/docs/help/Templates/use-template/index.html +++ b/docs/help/Templates/use-template/index.html @@ -5,7 +5,7 @@ Use template to create documents | OpenSign™ - + diff --git a/docs/help/intro/index.html b/docs/help/intro/index.html index d7d3e8470..6a0ec4655 100644 --- a/docs/help/intro/index.html +++ b/docs/help/intro/index.html @@ -5,7 +5,7 @@ Intro | OpenSign™ - + diff --git a/docs/intro/index.html b/docs/intro/index.html index bd3da46e3..ef8b8cb9c 100644 --- a/docs/intro/index.html +++ b/docs/intro/index.html @@ -5,7 +5,7 @@ Tutorial Intro | OpenSign™ - + diff --git a/docs/self-host/One-click-Install/DigitalOcean/index.html b/docs/self-host/One-click-Install/DigitalOcean/index.html index 06cbeef01..9179ed459 100644 --- a/docs/self-host/One-click-Install/DigitalOcean/index.html +++ b/docs/self-host/One-click-Install/DigitalOcean/index.html @@ -5,7 +5,7 @@ Digital Ocean | OpenSign™ - + diff --git a/docs/self-host/cloud-storage/s3/index.html b/docs/self-host/cloud-storage/s3/index.html index 9031f1e22..b53d9e71b 100644 --- a/docs/self-host/cloud-storage/s3/index.html +++ b/docs/self-host/cloud-storage/s3/index.html @@ -5,7 +5,7 @@ AWS S3 | OpenSign™ - + diff --git a/docs/self-host/docker/run-locally/index.html b/docs/self-host/docker/run-locally/index.html index c8ac28b0c..b16711798 100644 --- a/docs/self-host/docker/run-locally/index.html +++ b/docs/self-host/docker/run-locally/index.html @@ -5,7 +5,7 @@ Localhost Setup with Docker | OpenSign™ - + @@ -67,7 +67,7 @@

Environment Varaibles:

Environment VaribaleValueDescription
CIfalseSet CI to false while running the app locally
PUBLIC_URLhttp://localhost:3000Set it to the URL form where the app home page will be accessed
GENERATE_SOURCEMAPfalseSet it to true if you want to generate the Sourcemap for debugging
REACT_APP_SERVERURLhttp://localhost:8080/appSet it to the URL from where APIs will be accessible, for local development it should be localhost:8080/app (use your local port number instead)
REACT_APP_APPIDopensignstgnA 12 character long random app identifier. The value of this should be same as APP_ID which is a variable used by backend API.
APP_IDopensignstgnA 12 character long random app identifier. The value of this should be same as REACT_APP_APPID which is a variable used by Frontend React App.
appNameopen_sign_serverName of the app. It will be visible in the verification emails sent out.
MASTER_KEYXnAadwKxxByMrA 12 character long random secret key that allows access to all the data. It is used in Parse dashboard config to view all the data in the database.
MONGODB_URImongodb://host.docker.internal:27017/OpenSignDBMongodb URI to connect to
PARSE_MOUNT/appPath on which APIs should be mounted. Do not change this. This variable shall be removed & value hardcoded in the source code in coming versions.
SERVER_URLhttp://localhost:8080/appSet it to the URL from where APIs will be accessible to the NodeJS functions, for local development it should be localhost:8080/app (use your local port number instead)
DO_SPACEDOSPACENAMEDigital ocean space name or AWS S3 bucket name for uploading documents
DO_ENDPOINTams3.digitaloceanspaces.comDigital ocean spaces endpoint or AWS S3 endpoint for uploading documents
DO_BASEURLhttps://DOSPACENAME.ams3.digitaloceanspaces.comDigital ocean baseurl or AWS S3 base URL
DO_ACCESS_KEY_IDYOUR_S3_ACCESS_IDDigital ocean spaces access key ID or AWS s3 Access key ID for uploading the docs
DO_SECRET_ACCESS_KEYYOUR_S3_ACCESS_KEYDigital ocean spaces secret access key or AWS s3 secret access key for uploading the docs
DO_REGIONYOUR_S3_REGIONDigital ocean spaces region or AWS s3 region
USE_LOCALFALSETo use local file storage to save file
MAILGUN_API_KEYYOUR_MAILGUNAPI_KEYMailgun API Key
MAILGUN_DOMAINYOUR_MAILGUNAPI_DOMAINMailgun API Domain
MAILGUN_SENDER-Mailgun Sender Mail ID
PFX_BASE64-Base64 encoded PFX or p12 document signing certificate file. You can generate base64 encoded self sign certificate using the passphrase.
PASS_PHRASEopensignPass phrase of PFX or p12 document signing certificate file.

Steps to Generate Self Sign Certificate

-
# execute below command and use passphrase 'opensign'
openssl genrsa -des3 -out ./cert/local_dev.key 2048
openssl req -key ./cert/local_dev.key -new -x509 -days 365 -out ./cert/local_dev.crt
openssl pkcs12 -inkey ./cert/local_dev.key -in ./cert/local_dev.crt -export -out ./cert/local_dev.pfx
openssl base64 -in ./cert/local_dev.pfx -out ./cert/base64_pfx
+
# execute below command and use passphrase 'opensign'
openssl genrsa -des3 -out ./local_dev.key 2048
openssl req -key ./local_dev.key -new -x509 -days 365 -out ./local_dev.crt
openssl pkcs12 -inkey ./local_dev.key -in ./cert/local_dev.crt -export -out ./local_dev.pfx
openssl base64 -in ./local_dev.pfx -out ./base64_pfx

CORS Configuration

As document storage is delegated to S3-compatible services that reside in a different host than the OpenSign one, document operations (loading, storing, deleting) are subject to Cross-Origin Resource Sharing restriction policies; as a consequence, OpenSign app may fail with (browser console) errors like the following:

Access to fetch at 'https://foo.nyc3.digitaloceanspaces.com/exported_file_4627_0000-00-00T00%3A45%3A43.344Z.pdf'
from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header
is present on the requested resource. If an opaque response serves your needs, set the request's mode to
'no-cors' to fetch the resource with CORS disabled.
diff --git a/docs/self-host/intro/index.html b/docs/self-host/intro/index.html index 42c2da3cd..60427a58f 100644 --- a/docs/self-host/intro/index.html +++ b/docs/self-host/intro/index.html @@ -5,7 +5,7 @@ Self-Hosting OpenSign | OpenSign™ - + diff --git a/index.html b/index.html index d780cc75a..393c2bb7f 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ Hello from OpenSign™ | OpenSign™ - + diff --git a/markdown-page/index.html b/markdown-page/index.html index d4665e549..b562b980b 100644 --- a/markdown-page/index.html +++ b/markdown-page/index.html @@ -5,7 +5,7 @@ Markdown page example | OpenSign™ - +