{"_id":"@castletech/pwa-module-product-type","name":"@castletech/pwa-module-product-type","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@castletech/pwa-module-product-type","version":"0.1.0","description":"Product type Extension for PWA Studio.","main":"./index.js","scripts":{"clean":" "},"peerDependencies":{"@magento/peregrine":"~11.0.0","@magento/pwa-buildpack":"~10.0.0","@magento/venia-ui":"~8.0.0"},"pwa-studio":{"targets":{"intercept":"./intercept","declare":"./declare"}},"gitHead":"bb604412e5b1336fd8a02a15ee342d9bc21fec16","_id":"@castletech/pwa-module-product-type@0.1.0","_nodeVersion":"12.22.12","_npmVersion":"6.14.16","dist":{"integrity":"sha512-x/tAIez0YA30Fs9EGChvVPhIOZsevU4+VAYXjyjyW7doJdTyQJ9PiHGRFVSiU6TeNTBFEYop0xILD6yNwX12aw==","shasum":"11dc95703c29fc1271ee045d6c8ef2c8da0eea61","tarball":"https://registry.npmjs.org/@castletech/pwa-module-product-type/-/pwa-module-product-type-0.1.0.tgz","fileCount":13,"unpackedSize":383058,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8AW+bh49b1l9+hMgPLDWO923t3t0aKQOUC6Vn3JGECAIhAJJ5K4C98UkyLsqemAY2o48zvYCkZ84qKcxACuQxozy8"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjacguACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmowaxAAlKN1KaUiyIaSu28VGB7sWfdfZCrRPXX64ip2qTF6Pyp6qX1m\r\n6QRktKwFH4EVRWYxpXJq5/nSo7FaZVek6xb7pYBVBGHIqe7xytNl8NbnFz8r\r\nI86DFFmozjwPVuZTt8SYdmzIS+1lUuc9ZO+KsmjvWC1BIZLqYVcuWcQPGt++\r\n06cA47ze5erLat9dQAbb7NFhXQiFg+B89/mpMhZ9FgIrSXBXxD8uG7Iz+hQT\r\nCvi8TMAQjo2FWlpbk94gcX+cHgC3q/3Fo8ck5dw7UR3q91YIq7tNSCOs3wTB\r\n0ctpNpfqE3PobBUHlAkL+rAFUt4chMXONsJPGlsEP8H25kptxEIpw7DNoWTm\r\n4x5YsqWtPSX6/ZSAkYPG5DsFhckNg+CdRgUSgJgnuv9d5Tm0HMLKJgMWsLoe\r\nGGIjfBxU6kI0gGvDeEq+URniAnhQxPSIhUYGHgD6ZctfX/FTi+4glQ+cdHea\r\nJ9d1Hlrqra4wVepHuH7lMqjQwv8ya17+LXsYefXwfLJktKx/a93wcCAINpJZ\r\nT+L+84gGkpP+5w3klJcvFqQL4dtS3aC7HZ3CThq9F0tTxXHAyYPsd/2FIfD2\r\nxfzD1tg960r2/Rxqm57l2ySDFBcmh/F4LnE//rkhFU4IttGCFeFfl6mQxUBn\r\nMT43twdqqs0dpaGZ+KXHN5H7TyHun8Pf/UE=\r\n=JXjv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"wesleyalmd","email":"wesleyalmd@gmail.com"},"directories":{},"maintainers":[{"name":"wesleyalmd","email":"wesleyalmd@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pwa-module-product-type_0.1.0_1667876910223_0.8834510125792099"},"_hasShrinkwrap":false}},"time":{"created":"2022-11-08T03:08:30.170Z","0.1.0":"2022-11-08T03:08:30.407Z","modified":"2022-11-08T03:08:30.532Z"},"maintainers":[{"name":"wesleyalmd","email":"wesleyalmd@gmail.com"}],"description":"Product type Extension for PWA Studio.","readme":"## PWA Studio Product Type Extension\n\n![Preview](https://raw.githubusercontent.com/castlebr/pwa-module-product-type/master/docs/preview.jpg 'Preview')\n\nCreate new product types in your pwa-studio using extensibility targetables api.\n\nCompatibility: pwa-studio `v11`, `v12`\n\n#### 1. Installation\n\n```\nyarn add @castletech/pwa-module-product-type\n```\n\n#### 2. Active module in your local-intercept\n\n```\nconst {\n  wrapProductTypeModule,\n} = require(\"@castletech/pwa-module-product-type/targets\");\nwrapProductTypeModule({\n  targets\n});\n```\n\n#### 3. Create new pwa-studio module\n\nCreate a new [pwa-studio scaffolding](https://github.com/larsroettig/create-pwa-studio-extension) module and connect the targetable `productType` api of the `pwa-module-product-type` module.\n\nExemple:\n\n```\ntargets.of('@castletech/pwa-module-product-type').productType.tap(types =>\n  types.add({\n    condition: \"product.__typename === 'BundleProduct'\",\n    componentName: 'ProductBundle',\n    componentPath: '@castletech/pwa-module-product-bundle/lib/components/ProductBundle'\n  })\n);\n```\n\n| prop          | description                                    |\n| ------------- | ---------------------------------------------- |\n| condition     | It can be a product attr, such as \\_\\_typename |\n| componentName | Name of the component to be imported           |\n| componentPath | Path of the component to be imported           |\n\n#### 4. Run project\n\n```\nyarn watch\n```\n","readmeFilename":"readme.md"}