{"_id":"@awesome-cordova-library/camera","_rev":"2-f60ffc7ba9b6f3c3f2816c7621851339","name":"@awesome-cordova-library/camera","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@awesome-cordova-library/camera","version":"1.0.0","description":"This plugin defines a global navigator.camera object, which provides an API for taking pictures and for choosing images from the system's image library.","main":"lib/index.js","types":"lib/index.d.ts","keywords":["cordova","capacitor","ionic","javascript","mobile","camera","cordova-camera","pwa"],"publishConfig":{"access":"public"},"author":{"name":"Jordan AZOULAY","email":"jazoulay@joazco.com","url":"https://github.com/joazco"},"license":"SEE LICENSE IN LICENSE","repository":{"type":"git","url":"git://github.com/joazco/awesome-cordova-library.git"},"bugs":{"url":"https://github.com/joazco/awesome-cordova-library/issues"},"homepage":"https://github.com/joazco/awesome-cordova-library","devDependencies":{"@types/jest":"^27.5.1","@types/react":"~17.0.21","jest":"^28.1.0","prettier":"^2.6.2","ts-jest":"^28.0.3","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.7.2"},"scripts":{"build":"rm -rf lib/ && tsc","build-yalc":"npm run build; yalc publish --push --private","test":"jest --config jestconfig.json","format":"prettier --write \"src/**/*.ts\"","lint":"tslint -p tsconfig.json","prepublish":"npm run format; npm run lint; npm test; npm run build"},"directories":{"lib":"lib"},"dependencies":{},"gitHead":"ebcc8bb38b2f3dc62fd548d7d6be627b2273da83","_id":"@awesome-cordova-library/camera@1.0.0","_nodeVersion":"16.18.0","_npmVersion":"8.5.2","dist":{"integrity":"sha512-88tDZyJWLhQZluIAloFdN6fgu7LqUIodjUPzNLnCrD51MBa8A9p7TK8hsyRyHZy5qXbnw3pw5dGjte5KwN2jrQ==","shasum":"8ec2adffa6e170c42c6f6bd0587e5ebd73fbbc47","tarball":"https://registry.npmjs.org/@awesome-cordova-library/camera/-/camera-1.0.0.tgz","fileCount":9,"unpackedSize":16287,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA0SV4qQ6TP1bO+V9ZKbjw1eE6L7D5+w6VLEZyhjjLE4AiEAhX3OOtePSIiA/35KmoZzC8JDJbto8M5k1/O3oW82xFI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUA0MACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqjIg/8DHgl5ht2LNfDfnnm8UzkzVXH6YuwJgwm3gsVSK0tHZY6oyQN\r\n9BuY2MmKjjLqax7DDI1aq7lchnZBZOO6Ul1fg+F9eHhXqjxl8z/rt9ay0BzA\r\nKZ/huFPVRLKy+0I+k1oV+97czNaE8JzK6YdXb5c+W0PSTdy55CA5P/GYI1/l\r\n6z+WtF0eZ37CJXIVSkgyM9ss0Z8FY54m5SUyN1H13maCzYYUpzrrMoawKB4Z\r\n1okDmB1HzyGFM6Tyr+wSOkDvMixr02RjJw3BP/z1AzyiQH8D+X0rtxkphJVU\r\ncPWlLTxPC0L4wkUayo3cBFsFsora4KdOTgNC7jbnssVuOYMAqu0nn6mS2CzY\r\n/cxUUlYYxSozV+3eiF4fHInk5QIHRdgBn1xO9g4z9Q9dOMxQsGTIhreiXHMo\r\nf6dKMPU8zfFZqFh0aEVy4+VKPRYGH7QBz55US7vHZGUACZRkUbFaRYycz+eK\r\nq6DMAfS4XRCRdOucnwpA9SM28P1W5sv++dtCmml1tOc02lsdZ1vaD4lmyNpp\r\nahBSH9d+kTzwrBmAiUUtx0ci4VOb/0payHmkHNPOF53aUBXqOvfuVGNwozFC\r\nbF/2ofetXdXEPQ72bnSzX4PcNPhkKJpNeS9xveykKd0g/pnZ6j6VtTh+ITcy\r\ng71LPGNPpvD1VVkwDMC57UB5tFahAkgqvlo=\r\n=vDRg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"joazco","email":"jazoulay@joazco.com"},"maintainers":[{"name":"joazco","email":"jazoulay@joazco.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/camera_1.0.0_1666190603935_0.40267257489966024"},"_hasShrinkwrap":false},"1.0.1":{"name":"@awesome-cordova-library/camera","version":"1.0.1","description":"This plugin defines a global navigator.camera object, which provides an API for taking pictures and for choosing images from the system's image library.","main":"lib/index.js","types":"lib/index.d.ts","keywords":["cordova","capacitor","ionic","javascript","mobile","camera","cordova-camera","pwa"],"publishConfig":{"access":"public"},"author":{"name":"Jordan AZOULAY","email":"jazoulay@joazco.com","url":"https://github.com/joazco"},"license":"SEE LICENSE IN LICENSE","repository":{"type":"git","url":"git://github.com/joazco/awesome-cordova-library.git"},"bugs":{"url":"https://github.com/joazco/awesome-cordova-library/issues"},"homepage":"https://github.com/joazco/awesome-cordova-library","devDependencies":{"@types/jest":"^27.5.1","@types/react":"~17.0.21","jest":"^28.1.0","prettier":"^2.6.2","ts-jest":"^28.0.3","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.7.2"},"scripts":{"build":"rm -rf lib/ && tsc","build-yalc":"npm run build; yalc publish --push --private","test":"jest --config jestconfig.json","format":"prettier --write \"src/**/*.ts\"","lint":"tslint -p tsconfig.json","prepublish":"npm run format; npm run lint; npm test; npm run build"},"directories":{"lib":"lib"},"dependencies":{},"gitHead":"73229dc03082e2f4697277aa6ce521674045e31a","_id":"@awesome-cordova-library/camera@1.0.1","_nodeVersion":"16.18.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-rVc4vdjc+Ssuyuu0ABXMHFA7Afa4ApDnnMhbumNHHqEI42/ianCycnbRQjPkryY0+zX/zWFkO1pLmIZDiybfmg==","shasum":"9b2d69930a1b319e01ba0ead87eba270d1322107","tarball":"https://registry.npmjs.org/@awesome-cordova-library/camera/-/camera-1.0.1.tgz","fileCount":9,"unpackedSize":16280,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFVyR+bdBYgweN/Pk3tcVTZ6TgOc4+zlgoxHymrds8lOAiEAro6kqOrzdzZNQVvaF3YdJiKUAv0kAl2C/k5j0VKbSGA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZ++qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqd0w//TG9hKl2PGNZHjMpaUXDvYIKPECSZHAZzZhwWlcl+EZUkdeFG\r\n4djiiqWq2RlNhUxeP+6YR4MbUKwg0xNdFyr6kn4UL8wGC//pNkfYX+2VacGX\r\nMbmT0leIc3uF6Cip0elNpsc8GMIYWDt7RQW5UswzUhnSm1x7XYsbPomQTTfh\r\niUnFdZ4kuE2P58exqqwdkQQAMOLe5p8mINA65pxQn7qElPPam1xgjhUr12Fs\r\na3qqfsOXR2ftcCJY8SnhQ570cthHeB22zdrcwHvttzwbRJjwDLtzkHWOV8U/\r\nkxwVZvAD1qFhzrSflIz6zTUGvZmGHhyCkBrRTT/mKsUtbBZC4Kg4BBdb7Rph\r\n72q7ZxEFwvtAwMmjA6T9aJ3x8Opnf6APrsLNEYYOsjMnSN72amErXOHBIGk0\r\nAaE0JjRdDeel83DTMQ5kkeiPQkTUASdtjJjPA0DOZ4WDLJ9i7kYr+2B/j9fN\r\nNChsdJknHSxlz/FAHWnzIYkN0JhGSKvW1S4kRZKlk46lBCj6vD2eqNV07HEo\r\n1sVsEVe0q7JemyDt6PbJFRsv7Ne3oWI/HUV1Q3QtjJ09CruLI47BUxfJ6RoR\r\nHyi2FHd5/zO6Ov1AB8JZ+LSwf3y4vOikRmXaE8QYsltUfqKzH9b/4RVDbPr+\r\n5b5JkJ4kYMsOwiaeHXI4bKImfo0AxSxuLew=\r\n=5PeE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"joazco","email":"jazoulay@joazco.com"},"maintainers":[{"name":"joazco","email":"jazoulay@joazco.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/camera_1.0.1_1667755946649_0.5879623544996404"},"_hasShrinkwrap":false},"1.0.2":{"name":"@awesome-cordova-library/camera","version":"1.0.2","description":"This plugin defines a global navigator.camera object, which provides an API for taking pictures and for choosing images from the system's image library.","main":"lib/index.js","types":"lib/index.d.ts","keywords":["cordova","capacitor","ionic","javascript","mobile","camera","cordova-camera","pwa"],"publishConfig":{"access":"public"},"author":{"name":"Jordan AZOULAY","email":"jazoulay@joazco.com","url":"https://github.com/joazco"},"license":"SEE LICENSE IN LICENSE","repository":{"type":"git","url":"git://github.com/joazco/awesome-cordova-library.git"},"bugs":{"url":"https://github.com/joazco/awesome-cordova-library/issues"},"homepage":"https://github.com/joazco/awesome-cordova-library","devDependencies":{"@types/jest":"^27.5.1","@types/react":"~17.0.21","jest":"^28.1.0","prettier":"^2.6.2","ts-jest":"^28.0.3","tslint":"^6.1.3","tslint-config-prettier":"^1.18.0","typescript":"^4.7.2"},"scripts":{"build":"rm -rf lib/ && tsc","build-yalc":"npm run build; yalc publish --push --private","test":"jest --config jestconfig.json","format":"prettier --write \"src/**/*.ts\"","lint":"tslint -p tsconfig.json","prepublish":"npm run format; npm run lint; npm test; npm run build"},"directories":{"lib":"lib"},"dependencies":{},"gitHead":"2a2b9cf007a870056251632315547e6a651d26a0","_id":"@awesome-cordova-library/camera@1.0.2","_nodeVersion":"16.20.0","_npmVersion":"8.19.4","dist":{"integrity":"sha512-zjQlhh7L3/C6YT2LYtNnphfkN13gglKyRrIWs+y0N/GI3PVtb3ewetTq4tfKZeFe/a1dQN9vbOkZOfjiN4Y5Ew==","shasum":"185fcd9bb161dc7190da5e6d0b34a398562dc253","tarball":"https://registry.npmjs.org/@awesome-cordova-library/camera/-/camera-1.0.2.tgz","fileCount":9,"unpackedSize":16602,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHbhkC2nnlQJwjeML4UyOwAI8O6iQF7VheC1Nt6iQx6EAiEAyibMcOChfJyMyRFPhXQmCLuVAUyiScwUmfRzdyikQ40="}]},"_npmUser":{"name":"joazco","email":"jazoulay@joazco.com"},"maintainers":[{"name":"joazco","email":"jazoulay@joazco.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/camera_1.0.2_1694498403646_0.01644188473842001"},"_hasShrinkwrap":false}},"time":{"created":"2022-10-19T14:43:23.897Z","1.0.0":"2022-10-19T14:43:24.110Z","modified":"2023-09-12T06:00:04.167Z","1.0.1":"2022-11-06T17:32:26.851Z","1.0.2":"2023-09-12T06:00:03.917Z"},"maintainers":[{"name":"joazco","email":"jazoulay@joazco.com"}],"description":"This plugin defines a global navigator.camera object, which provides an API for taking pictures and for choosing images from the system's image library.","homepage":"https://github.com/joazco/awesome-cordova-library","keywords":["cordova","capacitor","ionic","javascript","mobile","camera","cordova-camera","pwa"],"repository":{"type":"git","url":"git://github.com/joazco/awesome-cordova-library.git"},"author":{"name":"Jordan AZOULAY","email":"jazoulay@joazco.com","url":"https://github.com/joazco"},"bugs":{"url":"https://github.com/joazco/awesome-cordova-library/issues"},"license":"SEE LICENSE IN LICENSE","readme":"---\nid: plugin-camera\ntitle: Camera\ntags:\n  - cordova\n  - capacitor\n  - ionic\n  - javascript\n  - typescript\n  - plugin\n  - mobile\n  - camera\n---\n\n# Camera\n\nThis plugin defines a global navigator.camera object, which provides an API for taking pictures and for choosing images from the system's image library.\n\n[Online documentation](https://awesomecordovalibrary.com)\n\n[Cordova documentation](https://cordova.apache.org/docs/en/11.x/reference/cordova-plugin-camera/index.html#module_CameraPopoverHandle)\n\n## Installation\n\n### Cordova\n\n```sh\ncordova plugin add cordova-plugin-camera\nnpm install @awesome-cordova-library/camera\n```\n\n### Capacitor / Ionic\n\n```bash\nnpm install cordova-plugin-camera\nnpm install @awesome-cordova-library/camera\nnpx cap sync\n```\n\n## Vanilla\n\n### Declaration\n\n```typescript\nclass Camera {\n  /**\n   * Takes a photo using the camera, or retrieves a photo from the device's image gallery. The image is passed to the success callback as a Base64-encoded String, or as the URI for the image file.\n   * @param cameraSuccess {(imageData: string) => void}\n   * @param cameraError {(message: string) => void}\n   * @param cameraOptions {Partial<CameraOptions>|undefined}\n   */\n  static getPicture(\n    cameraSuccess: (imageData: string) => void,\n    cameraError: (message: string) => void,\n    cameraOptions?: Partial<CameraOptions>\n  ): void;\n  /**\n   * Removes intermediate image files that are kept in temporary storage after calling camera.getPicture. Applies only when the value of Camera.sourceType equals Camera.PictureSourceType.CAMERA and the Camera.destinationType equals Camera.DestinationType.FILE_URI.\n   * @param onSuccess {() => void}\n   * @param onFail {() => void}\n   */\n  static cleanup(onSuccess: () => void, onFail: () => void): void;\n}\n```\n\n### Usages\n\n```typescript\nimport Camera, { DestinationType } from \"@awesome-cordova-library/camera\";\n\nCamera.getPicture(\n  (imageData) => console.log(imageData),\n  (messageError) => console.log(messageError),\n  { destinationType: DestinationType.DATA_URL }\n);\n```\n\n## React\n\n### Declaration\n\n```typescript\nconst useCamera: () => {\n  getPicture: (\n    cameraSuccess: (imageData: string) => void,\n    cameraError: (message: string) => void,\n    cameraOptions?: Partial<CameraOptions>\n  ) => void;\n  cleanup: (onSuccess: () => void, onFail: () => void) => void;\n};\n```\n\n### Usages\n\n```typescript\nimport { useEffect, useState, useCallback } from \"react\";\nimport useCamera from \"@awesome-cordova-library/camera/lib/react\";\nimport { DestinationType } from \"@awesome-cordova-library/camera\";\n\nfunction App() {\n  const [srcImage, setSrcImage] = useState<string | undefined>();\n  const { getPicture } = useCamera();\n\n  const takePicture = useCallback(() => {\n    getPicture(\n      (imageData) => setSrcImage(imageData),\n      () => {\n        alert(\"Error to take picture\");\n      },\n      {\n        destinationType: DestinationType.DATA_URL,\n      }\n    );\n  }, [getPicture]);\n\n  return (\n    <div>\n      <button fluid primary onClick={takePicture}>\n        Get Picture\n      </button>\n      {srcImage && <img src={`data:image/jpeg;base64,${srcImage}`} alt=\"\" />}\n    </div>\n  );\n}\n```\n","readmeFilename":"README.md"}