{"_id":"@cartona/deploy-capacitor","_rev":"17-92ee669c2b38a5a18c335286365fa626","name":"@cartona/deploy-capacitor","dist-tags":{"latest":"0.0.12"},"versions":{"0.0.1":{"name":"@cartona/deploy-capacitor","version":"0.0.1","keywords":["capacitor","plugin","native"],"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","_id":"@cartona/deploy-capacitor@0.0.1","maintainers":[{"name":"ramikhafagi96","email":"rami.developer96@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"},{"name":"m_abdelfattah","email":"accounts@abdel-fattah.net"}],"homepage":"https://github.com/cartona/deploy-cap#readme","bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"dist":{"shasum":"f67eb24abe183c3dff30db3fc41adf09133b48be","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.1.tgz","fileCount":29,"integrity":"sha512-+aZnp2dHFKprY7XFlD/gYPqkkSg4Gs0vM1J/Xl4B98YywDfqmMD5pDH0U7BlH3xMNb1taQq5HWDQex5A/GRfFw==","signatures":[{"sig":"MEUCIQD9liEMGqCqAXU2rY4G9DyvC9r6055EUTRgfKObYQRgFgIgRvenCpRIHqzJgNWAanbpgVGcEr9DuHVMPuvc9MOpfsQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":58131},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd .."},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"prettier":"@ionic/prettier-config","capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/cartona/deploy-cap.git","type":"git"},"_npmVersion":"8.19.3","description":"Live updates for Ionic apps","directories":{},"_nodeVersion":"19.1.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.11.0","rimraf":"^3.0.2","rollup":"^2.32.0","prettier":"~2.3.0","swiftlint":"^1.0.1","typescript":"~4.1.5","@capacitor/ios":"^5.0.0","@capacitor/core":"^5.0.0","@capacitor/docgen":"^0.0.18","@capacitor/android":"^5.0.0","@ionic/eslint-config":"^0.3.0","prettier-plugin-java":"~1.0.2","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2"},"peerDependencies":{"@capacitor/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/deploy-capacitor_0.0.1_1691307134653_0.3104534190078405","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@cartona/deploy-capacitor","version":"0.0.3","keywords":["capacitor","plugin","native"],"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","_id":"@cartona/deploy-capacitor@0.0.3","maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"homepage":"https://github.com/cartona/deploy-cap#readme","bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"dist":{"shasum":"9bac274d5fe0e29144193c777b91e5bba83fc7c4","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.3.tgz","fileCount":32,"integrity":"sha512-wuKkByMMeOpWSERQl8PgZvg37IHTHEYX65dmBaXiL3gXf5M6CfAXdkoofIltLGl+7hYMRBVVYICQ8taf1vocLQ==","signatures":[{"sig":"MEYCIQDgpc6dg2FePjFueW4GwEk+LQ5n81JDvCUIchaXqje1DwIhAIN1lCz5063Fs+WIk43LBIecoVs4l0KHjuYUyY+shyfl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93643},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd .."},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"prettier":"@ionic/prettier-config","capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/cartona/deploy-cap.git","type":"git"},"_npmVersion":"10.2.3","description":"Live updates for Ionic apps","directories":{},"_nodeVersion":"20.10.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.11.0","rimraf":"^3.0.2","rollup":"^2.32.0","prettier":"~2.3.0","swiftlint":"^1.0.1","typescript":"~4.1.5","@capacitor/ios":"^5.0.0","@capacitor/core":"^5.0.0","@capacitor/docgen":"^0.0.18","@capacitor/android":"^5.0.0","@ionic/eslint-config":"^0.3.0","prettier-plugin-java":"~1.0.2","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2"},"peerDependencies":{"@capacitor/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/deploy-capacitor_0.0.3_1712943281581_0.0644376159469624","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"@cartona/deploy-capacitor","version":"0.0.4","keywords":["capacitor","plugin","native"],"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","_id":"@cartona/deploy-capacitor@0.0.4","maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"homepage":"https://github.com/cartona/deploy-cap#readme","bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"dist":{"shasum":"06a6d9adfa915d6575a9ef15ab04418c4b0efbf8","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.4.tgz","fileCount":32,"integrity":"sha512-RaYEYrasC+RKLeq6/ZeR2+ZT8rbB8+P2AlJbFNZeP+p6FN6aSgjHFbfFDhB7oAhmyemyxdP6Y9iUPzLpQmWcUQ==","signatures":[{"sig":"MEQCICWmbW/J8PlXTxfh7ndtlF5pfSx2LuyV0hHt8TAmRGQzAiBvuvS7Sof8XfQbxSuz63XPURsHfd0KBxyprFRkKAU2Eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93643},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd .."},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"prettier":"@ionic/prettier-config","capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/cartona/deploy-cap.git","type":"git"},"_npmVersion":"10.2.3","description":"Live updates for Ionic apps","directories":{},"_nodeVersion":"20.10.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.11.0","rimraf":"^3.0.2","rollup":"^2.32.0","prettier":"~2.3.0","swiftlint":"^1.0.1","typescript":"~4.1.5","@capacitor/ios":"^5.0.0","@capacitor/core":"^5.0.0","@capacitor/docgen":"^0.0.18","@capacitor/android":"^5.0.0","@ionic/eslint-config":"^0.3.0","prettier-plugin-java":"~1.0.2","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2"},"peerDependencies":{"@capacitor/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/deploy-capacitor_0.0.4_1712944634858_0.6658499674054439","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"@cartona/deploy-capacitor","version":"0.0.5","keywords":["capacitor","plugin","native"],"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","_id":"@cartona/deploy-capacitor@0.0.5","maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"homepage":"https://github.com/cartona/deploy-cap#readme","bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"dist":{"shasum":"a2f7001a633a73601cd500d355dd88b29b40980e","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.5.tgz","fileCount":32,"integrity":"sha512-7wRMp9GnXp2G8iB0GjPTayNnrS+dQy+KLax3QLKyiochNMQumYDHqTJYgOi6m5daGWNnpjy6tQnn/w8l1ro/fA==","signatures":[{"sig":"MEYCIQD+Sm2E+qHlQ9Hxtrny20wNvUB3wJdM8/c7SDgTBuHSCAIhAM2zjx9L/+SrqD0kCwYimWsSoHYR5TKrz18gi6tgu0sW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99416},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd .."},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"prettier":"@ionic/prettier-config","capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/cartona/deploy-cap.git","type":"git"},"_npmVersion":"10.2.3","description":"Live updates for Ionic apps","directories":{},"_nodeVersion":"20.10.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.11.0","rimraf":"^3.0.2","rollup":"^2.32.0","prettier":"~2.3.0","swiftlint":"^1.0.1","typescript":"~4.1.5","@capacitor/ios":"^5.0.0","@capacitor/core":"^5.0.0","@capacitor/docgen":"^0.0.18","@capacitor/android":"^5.0.0","@ionic/eslint-config":"^0.3.0","prettier-plugin-java":"~1.0.2","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2"},"peerDependencies":{"@capacitor/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/deploy-capacitor_0.0.5_1717438513986_0.5660266696283791","host":"s3://npm-registry-packages"}},"0.0.8":{"name":"@cartona/deploy-capacitor","version":"0.0.8","keywords":["capacitor","plugin","native"],"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","_id":"@cartona/deploy-capacitor@0.0.8","maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"homepage":"https://github.com/cartona/deploy-cap#readme","bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"dist":{"shasum":"2880b5ca0c9820f4a5a607cca727e966753076f7","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.8.tgz","fileCount":32,"integrity":"sha512-5Jiq3bFJ04nNJUXbJnSCdleGRnabf5O2vsqDVY77M6LL4X0ddopf/GUPSUAI9mi11c0Sd4DOl8HNm4rvZKXlaA==","signatures":[{"sig":"MEYCIQDoXD5DWLDFWDJlhcocSmG1g4LlJKE7+V3vDfoDIgTvEgIhAJqEFyunz39rQSq9Uc4cmLvRHXAi6wlzmOGvy6hEYvcJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99853},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd .."},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"prettier":"@ionic/prettier-config","capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/cartona/deploy-cap.git","type":"git"},"_npmVersion":"10.2.3","description":"Live updates for Ionic apps","directories":{},"_nodeVersion":"20.10.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.11.0","rimraf":"^3.0.2","rollup":"^2.32.0","prettier":"~2.3.0","swiftlint":"^1.0.1","typescript":"~4.1.5","@capacitor/ios":"^5.0.0","@capacitor/core":"^5.0.0","@capacitor/docgen":"^0.0.18","@capacitor/android":"^5.0.0","@ionic/eslint-config":"^0.3.0","prettier-plugin-java":"~1.0.2","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2"},"peerDependencies":{"@capacitor/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/deploy-capacitor_0.0.8_1717453608852_0.6566574997284793","host":"s3://npm-registry-packages"}},"0.0.10":{"name":"@cartona/deploy-capacitor","version":"0.0.10","keywords":["capacitor","plugin","native"],"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","_id":"@cartona/deploy-capacitor@0.0.10","maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"homepage":"https://github.com/cartona/deploy-cap#readme","bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"dist":{"shasum":"30c3a6a685aa2bd2c114851990abff4c01837bc3","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.10.tgz","fileCount":32,"integrity":"sha512-nJbd03Au2p67b9oq2mrSjo7XdeyDeMRr9WUR+0WEiGo4GdZaMFoSmTuVZxvqpTbkErb4YwbxxNCuDATI+crQvg==","signatures":[{"sig":"MEQCIE5ki6I9fsnzu5acvgRMGZU4u9GA0cs4iU/LDbReePZxAiBGDUzZyyxVeqG2RhIkgqSaWKS0Iteznc3HxxwXbOYjhw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100547},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd .."},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"prettier":"@ionic/prettier-config","capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"swiftlint":"@ionic/swiftlint-config","repository":{"url":"git+https://github.com/cartona/deploy-cap.git","type":"git"},"_npmVersion":"10.2.3","description":"Live updates for Ionic apps","directories":{},"_nodeVersion":"20.10.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.11.0","rimraf":"^3.0.2","rollup":"^2.32.0","prettier":"~2.3.0","swiftlint":"^1.0.1","typescript":"~4.1.5","@capacitor/ios":"^5.0.0","@capacitor/core":"^5.0.0","@capacitor/docgen":"^0.0.18","@capacitor/android":"^5.0.0","@ionic/eslint-config":"^0.3.0","prettier-plugin-java":"~1.0.2","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2"},"peerDependencies":{"@capacitor/core":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/deploy-capacitor_0.0.10_1718649580902_0.24918580465083928","host":"s3://npm-registry-packages"}},"0.0.12":{"name":"@cartona/deploy-capacitor","version":"0.0.12","description":"Live updates for Ionic apps","main":"dist/plugin.cjs.js","module":"dist/esm/index.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","repository":{"type":"git","url":"git+https://github.com/cartona/deploy-cap.git"},"bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"keywords":["capacitor","plugin","native"],"scripts":{"verify":"npm run verify:ios && npm run verify:android && npm run verify:web","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:android":"cd android && ./gradlew clean build test && cd ..","verify:web":"npm run build","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","eslint":"eslint . --ext ts","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","docgen":"docgen --api DeployClientPlugin --output-readme README.md --output-json dist/docs.json","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.js","clean":"rimraf ./dist","watch":"tsc --watch","prepublishOnly":"npm run build"},"devDependencies":{"@capacitor/android":"^6.0.0","@capacitor/core":"^6.1.2","@capacitor/docgen":"^0.0.18","@capacitor/ios":"^6.0.0","@ionic/eslint-config":"^0.3.0","@ionic/prettier-config":"^1.0.1","@ionic/swiftlint-config":"^1.1.2","eslint":"^7.11.0","prettier":"~2.3.0","prettier-plugin-java":"~1.0.2","rimraf":"^3.0.2","rollup":"^2.32.0","swiftlint":"^1.0.1","typescript":"~4.1.5"},"peerDependencies":{"@capacitor/core":"^6.0.0"},"prettier":"@ionic/prettier-config","swiftlint":"@ionic/swiftlint-config","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"_id":"@cartona/deploy-capacitor@0.0.12","gitHead":"cdbf520dbbcd806224b78744bb319b2766bc7cfa","homepage":"https://github.com/cartona/deploy-cap#readme","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-lXQKcqy1EWYcuOLkiuBJtVBK/DT7m1E4ZL5MsS04W6vOwQ5UnwEp8Wvx08VPuvMg7cN4eyyj7grPYJ0WcK4Siw==","shasum":"f9db25a9bb8cf4c57479f09289cededa00499c87","tarball":"https://registry.npmjs.org/@cartona/deploy-capacitor/-/deploy-capacitor-0.0.12.tgz","fileCount":32,"unpackedSize":100664,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCs6fJXkLJD+13X5HzFA5w8hhxSQMu8PtzoizYeQRjZ9QIgespjQtFdROLv0FV6v7nAfhAdMVxbmPWwb8mkJZIjVks="}]},"_npmUser":{"name":"samatawy","email":"sam.atawy@gmail.com"},"directories":{},"maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/deploy-capacitor_0.0.12_1727958414855_0.9103501656842503"},"_hasShrinkwrap":false}},"time":{"created":"2023-08-06T07:32:14.582Z","modified":"2024-10-03T12:26:55.304Z","0.0.1":"2023-08-06T07:32:14.828Z","0.0.3":"2024-04-12T17:34:41.722Z","0.0.4":"2024-04-12T17:57:15.084Z","0.0.5":"2024-06-03T18:15:14.176Z","0.0.6":"2024-06-03T18:54:02.211Z","0.0.7":"2024-06-03T19:00:46.487Z","0.0.8":"2024-06-03T22:26:49.011Z","0.0.9":"2024-06-17T18:25:24.909Z","0.0.10":"2024-06-17T18:39:41.082Z","0.0.11":"2024-10-03T12:22:49.287Z","0.0.12":"2024-10-03T12:26:55.013Z"},"bugs":{"url":"https://github.com/cartona/deploy-cap/issues"},"author":{"name":"Dr Sameh S El-Atawy"},"license":"UNLICENSED","homepage":"https://github.com/cartona/deploy-cap#readme","keywords":["capacitor","plugin","native"],"repository":{"type":"git","url":"git+https://github.com/cartona/deploy-cap.git"},"description":"Live updates for Ionic apps","maintainers":[{"name":"mazenaboelanin","email":"mazenaboelanin@gmail.com"},{"name":"hamdy.khalil","email":"hamdy.khalil@cartona.com"},{"name":"samatawy","email":"sam.atawy@gmail.com"}],"readme":"# @cartona/capacitor-deploy\n\nLive updates for Ionic apps. Inspired by ideas from Microsoft's CodePush and Cap-go/capacitor-updater.\n\nCurrently supported in both Android and iOS. \n\nNot yet tested for use in Production environments.\n\n## Install\n\n```bash\nnpm install @cartona/deploy-capacitor\nnpx cap sync\n```\n\n## Example\n\nThe DeployClient class allows control of every step of the update process.\n\nYou can check, download, and install updates in one step (e.g. at startup) or split it over phases (e.g. on application state change).\n\n```typescript\nimport { DeployClient, AppBuild, DeployConfig } from '@cartona/deploy-capacitor';\n...\n\nasync checkUpdates() {\n\n    // Prepare global configuration\n\n    let config: DeployConfig = {\n        server_url: 'https://deploy-api.cartona.space',\n        appcode: '<application identifier used to upload and rollout>',\n        native_build: '<native app version number can be obtained by a Capacitor plugin>'\n    }\n\n    // MUST call startup() with application start\n\n    await DeployClient.startup(config);\n\n    // Check if any updates are available for this app on this device\n    // You may show your Splash screen if this method returns a pending build\n    // Then remove the Splash screen once the install is successful\n\n    const found = await DeployClient.checkLatest();\n\n    if (found) {\n        // If a build needs to be installed, download it\n        // If this is not the first update, a delta build will be fetched\n        // You should call this on startup or only if the app status is active\n\n        const local = await DeployClient.download(found);\n\n        if (local) {\n            // If the download is successful, install the bundle\n            // This automatically restarts the web view\n            // You may call this on startup or when the app status becomes inactive\n\n            const ok = await DeployClient.install(local);\n\n            if (ok) {\n                console.log('Installed update!! ');\n            } else {\n                console.log('Failed to install update ');\n            }\n        }\n    }\n}\n```\n\n## API\n\n<docgen-index>\n\n* [`startup(...)`](#startup)\n* [`getDeployConfig()`](#getdeployconfig)\n* [`checkLatest()`](#checklatest)\n* [`download(...)`](#download)\n* [`install(...)`](#install)\n* [`reload()`](#reload)\n* [`confirmInstall(...)`](#confirminstall)\n* [`rollback(...)`](#rollback)\n* [Interfaces](#interfaces)\n\n</docgen-index>\n\n<docgen-api>\n<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->\n\n### startup(...)\n\n```typescript\nstartup(config: DeployConfig) => Promise<void>\n```\n\nInitialize the client and load the latest installed build.\n\nThis MUST be called IMMEDIATELY on application startup.\n\n| Param        | Type                                                  | Description                     |\n| ------------ | ----------------------------------------------------- | ------------------------------- |\n| **`config`** | <code><a href=\"#deployconfig\">DeployConfig</a></code> | the global configuration to use |\n\n--------------------\n\n\n### getDeployConfig()\n\n```typescript\ngetDeployConfig() => Promise<DeployConfig>\n```\n\nFetch the current configuration of DeployClient\n\nincluding the read-only `device_id` and `current_build` values\n\n**Returns:** <code>Promise&lt;<a href=\"#deployconfig\">DeployConfig</a>&gt;</code>\n\n--------------------\n\n\n### checkLatest()\n\n```typescript\ncheckLatest() => Promise<AppBuild | null>\n```\n\nRequest the latest build available for download, if any.\n\n**Returns:** <code>Promise&lt;<a href=\"#appbuild\">AppBuild</a> | null&gt;</code>\n\n--------------------\n\n\n### download(...)\n\n```typescript\ndownload(latest: AppBuild) => Promise<AppBuild>\n```\n\nDownload a build from the deploy-api server.\n\n| Param        | Type                                          | Description           |\n| ------------ | --------------------------------------------- | --------------------- |\n| **`latest`** | <code><a href=\"#appbuild\">AppBuild</a></code> | the build to download |\n\n**Returns:** <code>Promise&lt;<a href=\"#appbuild\">AppBuild</a>&gt;</code>\n\n--------------------\n\n\n### install(...)\n\n```typescript\ninstall(latest: AppBuild) => Promise<DeployResult>\n```\n\nInstall a downloaded build and apply immediately.\n\nThis forces an immediate reload of the web view.\n\n| Param        | Type                                          | Description          |\n| ------------ | --------------------------------------------- | -------------------- |\n| **`latest`** | <code><a href=\"#appbuild\">AppBuild</a></code> | the build to install |\n\n**Returns:** <code>Promise&lt;<a href=\"#deployresult\">DeployResult</a>&gt;</code>\n\n--------------------\n\n\n### reload()\n\n```typescript\nreload() => Promise<DeployResult>\n```\n\nReload the web view using the latest installed bundle.\n\nYou normally don't call this function. This is automatically called after an install.\n\n**Returns:** <code>Promise&lt;<a href=\"#deployresult\">DeployResult</a>&gt;</code>\n\n--------------------\n\n\n### confirmInstall(...)\n\n```typescript\nconfirmInstall(latest: AppBuild) => Promise<DeployResult>\n```\n\nRegister the current build on the deploy-api server.\n\nYou normally don't call this function. This is automatically called after a successful reload.\n\n| Param        | Type                                          | Description          |\n| ------------ | --------------------------------------------- | -------------------- |\n| **`latest`** | <code><a href=\"#appbuild\">AppBuild</a></code> | the build to confirm |\n\n**Returns:** <code>Promise&lt;<a href=\"#deployresult\">DeployResult</a>&gt;</code>\n\n--------------------\n\n\n### rollback(...)\n\n```typescript\nrollback(latest: AppBuild) => Promise<DeployResult>\n```\n\nReturn to the prior build (i.e. UNDO an install). \n\nYou normally don't call this function. This is automatically called after a failed reload.\n\n| Param        | Type                                          | Description       |\n| ------------ | --------------------------------------------- | ----------------- |\n| **`latest`** | <code><a href=\"#appbuild\">AppBuild</a></code> | the build to undo |\n\n**Returns:** <code>Promise&lt;<a href=\"#deployresult\">DeployResult</a>&gt;</code>\n\n--------------------\n\n\n### Interfaces\n\n\n#### DeployConfig\n\nGlobal configuration for all methods. \n\nThis MUST be provided at the first method call.\n\n| Prop                | Type                | Description                                                              |\n| ------------------- | ------------------- | ------------------------------------------------------------------------ |\n| **`server_url`**    | <code>string</code> | Base url for Cartona deploy-api server &lt;protocol&gt;://&lt;domain&gt; |\n| **`appcode`**       | <code>string</code> | Application identifier (used to upload and rollout builds)               |\n| **`username`**      | <code>string</code> | Optional user name                                                       |\n| **`device_id`**     | <code>string</code> | Device identifier (set automatically)                                    |\n| **`current_build`** | <code>number</code> | Installed build number (set automatically)                               |\n| **`native_build`**  | <code>string</code> | Native app version number (set manually or by using Capacitor plugin)    |\n\n\n#### AppBuild\n\nApplication version (Build) metadata.\n\nThis is fetched whenever a new build is available for download.\n\n| Prop               | Type                | Description                                                |\n| ------------------ | ------------------- | ---------------------------------------------------------- |\n| **`id`**           | <code>string</code> | Unique build identifier                                    |\n| **`appcode`**      | <code>string</code> | Application identifier (used to upload and rollout builds) |\n| **`build`**        | <code>number</code> | Build number                                               |\n| **`download_url`** | <code>string</code> | Url used to download the build bundle                      |\n| **`local_path`**   | <code>string</code> | Local path used to save the build bundle                   |\n\n\n#### DeployResult\n\nResult of plugin calls\n\n| Prop        | Type                 | Description                                                 |\n| ----------- | -------------------- | ----------------------------------------------------------- |\n| **`ok`**    | <code>boolean</code> | Holds true if the operation was successful, otherwise false |\n| **`error`** | <code>string</code>  | Optional error message if the operation was not successful  |\n\n</docgen-api>\n","readmeFilename":"README.md"}