{"_id":"@damosfera/portal","_rev":"2-7fadf5e6ce3e01e4dea47e2bbc43f647","name":"@damosfera/portal","dist-tags":{"latest":"1.12.9-dmsfr.1"},"versions":{"1.13.0-rc.0":{"name":"@damosfera/portal","version":"1.13.0-rc.0","license":"MIT","repository":{"type":"git","url":"git://github.com/TryGhost/Portal.git"},"author":{"name":"Ghost Foundation"},"unpkg":"umd/portal.min.js","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"dependencies":{"@sentry/react":"6.14.1","@sentry/tracing":"6.14.1","@testing-library/jest-dom":"5.15.0","@testing-library/react":"12.1.2","@testing-library/user-event":"13.5.0","react":"17.0.2","react-dom":"17.0.2","react-scripts":"4.0.3"},"scripts":{"start":"BROWSER=none react-scripts start","start:combined":"BROWSER=none node ./scripts/start-combined.js","start:dev":"node ./scripts/start-mode.js","dev":"node ./scripts/dev-mode.js","build":"npm run build:combined","build:original":"react-scripts build","build:combined":"node ./scripts/build-combined.js","build:bundle":"webpack --config webpack.config.js","test":"react-scripts test","test:ci":"yarn test --watchAll=false --coverage","eject":"react-scripts eject","lint":"eslint src --ext .js --cache","preship":"yarn lint","ship":"STATUS=$(git status --porcelain); echo $STATUS; if [ -z \"$STATUS\" ]; then yarn publish && git push ${GHOST_UPSTREAM:-upstream} main --follow-tags; fi","release_rc":"STATUS=$(git status --porcelain); echo $STATUS; if [ -z \"$STATUS\" ]; then yarn version --prerelease --preid=rc && yarn publish && git push ${GHOST_UPSTREAM:-origin} main --follow-tags; fi","posttest":"yarn lint","analyze":"source-map-explorer 'umd/*.js'","prepublishOnly":"yarn build"},"eslintConfig":{"extends":["react-app","plugin:ghost/browser"],"plugins":["ghost"]},"browserslist":{"production":[">0.2%","not dead","not op_mini all"],"development":["last 1 chrome version","last 1 firefox version","last 1 safari version"]},"jest":{"coverageReporters":["cobertura","text-summary","html"]},"devDependencies":{"chalk":"4.1.2","chokidar":"3.5.2","copy-webpack-plugin":"6.4.1","eslint-plugin-ghost":"2.7.0","minimist":"1.2.5","ora":"5.4.1","rewire":"5.0.0","serve-handler":"6.1.3","source-map-explorer":"2.5.2","string-replace-loader":"^3.0.3","webpack-cli":"3.3.12"},"description":"[![CI Status](https://github.com/TryGhost/portal/workflows/Test/badge.svg?branch=main)](https://github.com/TryGhost/portal/actions) [![npm version](https://badge.fury.io/js/%40tryghost%2Fportal.svg)](https://badge.fury.io/js/%40tryghost%2Fportal)","licenseText":"MIT License\n\nCopyright (c) 2013-2021 Ghost Foundation\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@damosfera/portal@1.13.0-rc.0","dist":{"shasum":"ff0747473ec05a02b1176308576a65483a228a67","integrity":"sha512-LzOMXuhV6PVzG5ix1Ne1tdxBR3eRI9ohMbwk/NGA8aZjSFg40vpybufGNC8iRgFLJt7z2XWwuYd+r9WEq02i3A==","tarball":"https://registry.npmjs.org/@damosfera/portal/-/portal-1.13.0-rc.0.tgz","fileCount":9,"unpackedSize":1808444,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhthjjCRA9TVsSAnZWagAAtjkP/3u91sL2MBofRXNUy2e6\nnkvmXPPm0X9ePff5z9O96QpdnyB5RhTDARO2Lb5VPxWLHw72wNHKQT2AE2Ds\ngClTr3YgyMpKuVe/tBAOrDctu5tJzPGkYcMBHOGOhwea4biXM0yBGubj+wUI\nCpZ23XSIWg+zB1K4LwXzETng96Ti0IAp0ySjtA8kU21qcsSInvEF0wjzWY0d\n21okx+yZy7xGpVY3jQHGiX86Ooadhl5LEQnTIQC0fAkWBOVuEfrkdVsRcn+3\nI1xajTw5eTSGWGFv1Hla8gfy4iQKKtpBeS0aaPGhs8xeSQP29j0MsZCQY3U+\n+Ham7t2gYefrcmhPK8QeCU470iehMMFIfgIUPNWtuXszCZ3AxHyCK+2mgTpf\n7kbt3+Qo7ZWK7Ofg0CzBWSwiQ/E9eRGfx8+MOrKC2sXRk0H81GgsejP/8e0S\nlxLSmw5HssIeMtOG5t8YInJVvRjsM6z0Qb6t4J+66guFKzushS55R81ryIbc\nkhHKUgAiH08I6Ma4kHB45zdf4QeYLsklHs6w3xJZ33OVheKG7Kamd78u562f\n46lfre0FcCHuW0ujyX5LQU/lD+JRazqCPMRX5UcABFm+hvB/W4Ww9L2STD2y\nsCmk4FFTk4dlK0XYFCyI1su0QBB7HFzOLsPVyNA7nhYyNUowP8u/r3BQdDXN\n753v\r\n=00GG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIESxmIs3LmSNxvm9bO0/cw1GonOoipaHUdEPHarFzAUPAiB0vhBYx+x0V5LJNxgEwovGZjNE50dekYFRBwQ9GLdguQ=="}]},"_npmUser":{"name":"jan-swiecki","email":"jan.swiecki@gmail.com"},"directories":{},"maintainers":[{"name":"jan-swiecki","email":"jan.swiecki@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/portal_1.13.0-rc.0_1639323875442_0.49647894732718467"},"_hasShrinkwrap":false},"1.12.9-dmsfr.1":{"name":"@damosfera/portal","version":"1.12.9-dmsfr.1","license":"MIT","repository":{"type":"git","url":"git://github.com/TryGhost/Portal.git"},"author":{"name":"Ghost Foundation"},"unpkg":"umd/portal.min.js","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"dependencies":{"@sentry/react":"6.15.0","@sentry/tracing":"6.15.0","@testing-library/jest-dom":"5.15.1","@testing-library/react":"12.1.2","@testing-library/user-event":"13.5.0","react":"17.0.2","react-dom":"17.0.2","react-scripts":"4.0.3"},"scripts":{"start":"BROWSER=none react-scripts start","start:combined":"BROWSER=none node ./scripts/start-combined.js","start:dev":"node ./scripts/start-mode.js","dev":"node ./scripts/dev-mode.js","build":"npm run build:combined","build:original":"react-scripts build","build:combined":"node ./scripts/build-combined.js","build:bundle":"webpack --config webpack.config.js","test":"react-scripts test","test:ci":"yarn test --watchAll=false --coverage","eject":"react-scripts eject","lint":"eslint src --ext .js --cache","preship":"yarn lint","ship":"STATUS=$(git status --porcelain); echo $STATUS; if [ -z \"$STATUS\" ]; then yarn publish && git push ${GHOST_UPSTREAM:-upstream} main --follow-tags; fi","posttest":"yarn lint","analyze":"source-map-explorer 'umd/*.js'","prepublishOnly":"yarn build"},"eslintConfig":{"extends":["react-app","plugin:ghost/browser"],"plugins":["ghost"]},"browserslist":{"production":[">0.2%","not dead","not op_mini all"],"development":["last 1 chrome version","last 1 firefox version","last 1 safari version"]},"jest":{"coverageReporters":["cobertura","text-summary","html"]},"devDependencies":{"chalk":"4.1.2","chokidar":"3.5.2","copy-webpack-plugin":"6.4.1","eslint-plugin-ghost":"2.9.0","minimist":"1.2.5","ora":"5.4.1","rewire":"5.0.0","serve-handler":"6.1.3","source-map-explorer":"2.5.2","string-replace-loader":"^3.0.3","webpack-cli":"3.3.12"},"description":"[![CI Status](https://github.com/TryGhost/portal/workflows/Test/badge.svg?branch=main)](https://github.com/TryGhost/portal/actions) [![npm version](https://badge.fury.io/js/%40tryghost%2Fportal.svg)](https://badge.fury.io/js/%40tryghost%2Fportal)","licenseText":"MIT License\n\nCopyright (c) 2013-2021 Ghost Foundation\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"@damosfera/portal@1.12.9-dmsfr.1","dist":{"shasum":"cfdc786578322e2f11cc3c8afe83a3a56915c071","integrity":"sha512-dVosQ2bAkyFnm4F7nHSu226qS08NKlbGA1SmfHr6z7Aa2fet7hGea6QrVLD4Ao85u7KP7qOr8J3cMGtRVtZC4g==","tarball":"https://registry.npmjs.org/@damosfera/portal/-/portal-1.12.9-dmsfr.1.tgz","fileCount":9,"unpackedSize":1808915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1EMlCRA9TVsSAnZWagAA6wUP/1UnIWkNggX9b2O0St1L\nYNeLEAaHpU8qMnWrrE/2S5x/+0NvCBlENJ7EobC1ZqgFTrKXv/Eikd3DvVPh\nndYQnddmUcPf0em4Mx8dKxL2cUyaHeRiSwinBGpUeDEop/cZNQm/n6590WW8\ng/Gq2peMIrA0+mSyhjTGTc5G9qxWrpZO0KwgJl8BafW0S3cz3Cp9lndKfQd6\nlxV1etpOBrmvVUkLpPVryUkazEDLb/94ZbeC2x7E7fhwcYftU18WzEkYqo2U\nIwLAnG4WdorPyjIT/X8QMmpywQm1mgrkat4QV0WKOvURpAwgA+qkXkPRykRP\nwh8KQkyaj9pS+Lk5CMhy6fGHki+ISgWxn9g9OA0qKuz1e9e1P3INLH1OYW4I\nrM8HUlMBG82pxeDpDF6ShX1FpWXsFfDBEvNgDbwnX0rnfs+xNVQDslckDVwf\nfC+SJJ6FX3RElIoKEf83MCHb1RaDECC+RHc7Ui2EV0gPjI7NTk8tBlsaktFc\nITr0B64dFsYWqjUJCNRNIX8RhQZhSWNVXgr7OgHFbP/DEKLsh7FGLBiIVyNj\n9X/dLDNwDZl3BOtSA8RxTUWDMFDkaSL/tA1mDfDiZCUEsZj3Xaq45BHz6BZ9\nUUNub4Z/ExkrJxH1A/H5XgEBeG46rE3YIPFQO3aZxipJTprslNp+1WVTqDrj\nQCba\r\n=InWe\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEa5fYSlaDA0paD8EHZfFfvB6JNA7c7VifaIz1lfYnbwAiBE2GOtsEG8m8C+aHqXiTF+j855Sga4BAhUTRKECtvthw=="}]},"_npmUser":{"name":"jan-swiecki","email":"jan.swiecki@gmail.com"},"directories":{},"maintainers":[{"name":"jan-swiecki","email":"jan.swiecki@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/portal_1.12.9-dmsfr.1_1641300773477_0.7076314392484317"},"_hasShrinkwrap":false}},"time":{"created":"2021-12-12T15:44:35.389Z","1.13.0-rc.0":"2021-12-12T15:44:35.637Z","modified":"2022-04-05T02:39:13.808Z","1.12.9-dmsfr.1":"2022-01-04T12:52:53.743Z"},"maintainers":[{"name":"jan-swiecki","email":"jan.swiecki@gmail.com"}],"description":"[![CI Status](https://github.com/TryGhost/portal/workflows/Test/badge.svg?branch=main)](https://github.com/TryGhost/portal/actions) [![npm version](https://badge.fury.io/js/%40tryghost%2Fportal.svg)](https://badge.fury.io/js/%40tryghost%2Fportal)","repository":{"type":"git","url":"git://github.com/TryGhost/Portal.git"},"author":{"name":"Ghost Foundation"},"license":"MIT","readme":"# Portal\n\n[![CI Status](https://github.com/TryGhost/portal/workflows/Test/badge.svg?branch=main)](https://github.com/TryGhost/portal/actions)\n[![npm version](https://badge.fury.io/js/%40tryghost%2Fportal.svg)](https://badge.fury.io/js/%40tryghost%2Fportal)\n\n[Drop-in script](https://ghost.org/help/setting-up-portal/) to make the bulk of Ghost membership features work on any theme.\n\n## Usage\n\nGhost automatically injects Portal script on all sites running Ghost 4 or higher.\n\nAlternatively, Portal can be enabled on non-ghost pages directly by inserting the below script on the page.\n\n```html\n<script defer src=\"https://unpkg.com/@tryghost/portal@latest/umd/portal.min.js\" data-ghost=\"https://mymemberssite.com\"></script>\n```\n\nThe `data-ghost` attribute expects the URL for your Ghost site, which is the only input Portal needs to work with your site's membership data via Ghost APIs.\n\n### Custom trigger button\n\nBy default, the script adds a default floating trigger button on the bottom right of your page which is used to trigger the popup on screen.\n\nIts possible to add custom trigger button of your own by adding data attribute `data-portal` to any HTML tag on page, and also specify a specfic [page](https://github.com/TryGhost/Portal/blob/main/src/pages.js#L13-L22) to open from it by using it as `data-portal=signup`.\n\nThe script also adds custom class names to this element for open and close state of popup - `gh-portal-open` and `gh-portal-close`, allowing devs to update its UI based on popup state.\n\nRefer the [docs](https://ghost.org/help/setup-members/#customize-portal-settings) to read about ways in which Portal can be customized for your site.\n\n## Basic Setup\n\n1. Clone this repository:\n\n```shell\ngit@github.com:TryGhost/portal.git\n```\n\n2. Change into the new directory and install the dependencies:\n\n```shell\ncd portal\nyarn\n```\n\n## For local development\n\nThis section is mostly relevant for core team only for active Portal development. Always use the unpkg link for testing/using latest released portal script.\n\n- Run `yarn start:dev` to start Portal in development mode\n- Open [http://localhost:3000](http://localhost:3000) to view it in the browser.\n- To use the local Portal script in a local Ghost site\n  - Update `config.local.json` in Ghost repo to add \"portal\" config pointing to local dev server url as instructed on terminal.\n  - By default, this uses port `5368` for loading local Portal script on Ghost site. It's also possible to specify a custom port when running the script using - `--port=xxxx`.\n\n## Available Scripts\n\nIn the project directory, you can also run:\n\n### `yarn start`\n\nRuns the app in the development mode.<br />\nOpen [http://localhost:3000](http://localhost:3000) to view it in the browser.\n\nThe page will reload if you make edits.<br />\nYou will also see any lint errors in the console.\n\n### `yarn build`\n\nCreates the production single minified bundle for external use in `umd/portal.min.js`.  <br />\n\n### `yarn test`\n\nLaunches the test runner in the interactive watch mode.<br />\nSee the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.\n\n\n## Publish\n\nRun `yarn ship` to publish new version of script.\n\n`yarn ship` is an alias for `npm publish`\n\n- Builds the script with latest code using `yarn build` (prePublish)\n- Publishes package on npm as `@tryghost/portal` and creates an unpkg link for script at https://unpkg.com/@tryghost/portal@VERSION\n\n(Core team only)\n\n## Learn More\n\nThis project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).\nYou can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).\n\n# Copyright & License\n\nCopyright (c) 2013-2021 Ghost Foundation - Released under the [MIT license](LICENSE).\n","readmeFilename":"README.md"}