@shopify/shop-minis-cli 0.0.171 → 0.0.173
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README_INTERNAL.md +153 -0
- package/build/commands/app/index.js +1 -2
- package/build/commands/app/index.js.map +1 -1
- package/build/commands/cancel-submission/cancel-submission.js +2 -2
- package/build/commands/cancel-submission/cancel-submission.js.map +1 -1
- package/build/commands/cancel-submission/index.js +1 -1
- package/build/commands/cancel-submission/index.js.map +1 -1
- package/build/commands/check-submission/index.js +13 -6
- package/build/commands/check-submission/index.js.map +1 -1
- package/build/commands/codemod/index.js +0 -9
- package/build/commands/codemod/index.js.map +1 -1
- package/build/commands/codemod/releases/index.js +2 -72
- package/build/commands/codemod/releases/index.js.map +1 -1
- package/build/commands/config.d.ts +2 -2
- package/build/commands/config.js +3 -2
- package/build/commands/config.js.map +1 -1
- package/build/commands/create/examples/default/.cursorrules +25 -0
- package/{templates/__template_common/gitignore → build/commands/create/examples/default/_gitignore} +0 -1
- package/build/commands/create/examples/default/index.html +15 -0
- package/build/commands/create/examples/default/package.json +18 -0
- package/build/commands/create/examples/default/src/App.tsx +25 -0
- package/build/commands/create/examples/default/src/icon.png +0 -0
- package/build/commands/create/examples/default/src/index.css +1 -0
- package/build/commands/create/examples/default/src/main.tsx +14 -0
- package/build/commands/create/examples/default/src/manifest.json +6 -0
- package/build/commands/{create-mini/standalone/examples/with-getting-started → create/examples/default}/tsconfig.json +6 -14
- package/build/commands/create/examples/default/vite.config.mjs +11 -0
- package/build/commands/{create-mini/standalone → create}/index.js +6 -26
- package/build/commands/create/index.js.map +1 -0
- package/build/commands/{create-mini → create}/utils/examples.d.ts +1 -1
- package/build/commands/{create-mini → create}/utils/examples.js +13 -9
- package/build/commands/create/utils/examples.js.map +1 -0
- package/build/commands/create/utils/index.js.map +1 -0
- package/build/commands/dev/index.d.ts +0 -11
- package/build/commands/dev/index.js +32 -58
- package/build/commands/dev/index.js.map +1 -1
- package/build/commands/dev/types.d.ts +46 -0
- package/build/commands/dev/{utils/types.js → types.js} +5 -0
- package/build/commands/dev/types.js.map +1 -0
- package/build/commands/dev/utils/binaries.d.ts +1 -1
- package/build/commands/dev/utils/build-type.d.ts +1 -1
- package/build/commands/dev/utils/build-type.js +1 -1
- package/build/commands/dev/utils/build-type.js.map +1 -1
- package/build/commands/dev/utils/deeplink.d.ts +3 -15
- package/build/commands/dev/utils/deeplink.js +12 -59
- package/build/commands/dev/utils/deeplink.js.map +1 -1
- package/build/commands/dev/utils/interactive-terminal.d.ts +6 -5
- package/build/commands/dev/utils/interactive-terminal.js +25 -65
- package/build/commands/dev/utils/interactive-terminal.js.map +1 -1
- package/build/commands/dev/utils/network.d.ts +1 -2
- package/build/commands/dev/utils/network.js.map +1 -1
- package/build/commands/dev/utils/platform.d.ts +1 -4
- package/build/commands/dev/utils/platform.js +1 -5
- package/build/commands/dev/utils/platform.js.map +1 -1
- package/build/commands/dev/utils/start-app/config.d.ts +1 -2
- package/build/commands/dev/utils/start-app/config.js +1 -1
- package/build/commands/dev/utils/start-app/config.js.map +1 -1
- package/build/commands/dev/utils/start-app/start-app-with-options.d.ts +1 -1
- package/build/commands/dev/utils/start-app/start-app-with-options.js +5 -3
- package/build/commands/dev/utils/start-app/start-app-with-options.js.map +1 -1
- package/build/commands/dev/utils/start-app/start-app.d.ts +1 -1
- package/build/commands/dev/utils/start-app/start-app.js.map +1 -1
- package/build/commands/dev/utils/version.d.ts +1 -2
- package/build/commands/dev/utils/version.js +3 -2
- package/build/commands/dev/utils/version.js.map +1 -1
- package/build/commands/dev/utils/web-server.d.ts +1 -0
- package/build/commands/dev/utils/web-server.js +16 -0
- package/build/commands/dev/utils/web-server.js.map +1 -0
- package/build/commands/doctor/index.js +10 -3
- package/build/commands/doctor/index.js.map +1 -1
- package/build/commands/features/index.js +2 -2
- package/build/commands/features/index.js.map +1 -1
- package/build/commands/info/index.js +3 -11
- package/build/commands/info/index.js.map +1 -1
- package/build/commands/install/index.d.ts +2 -0
- package/build/commands/install/index.js +65 -0
- package/build/commands/install/index.js.map +1 -0
- package/build/commands/setup/index.js +9 -1
- package/build/commands/setup/index.js.map +1 -1
- package/build/commands/submit/config.js +1 -1
- package/build/commands/submit/errors.js +24 -2
- package/build/commands/submit/errors.js.map +1 -1
- package/build/commands/submit/index.js +18 -2
- package/build/commands/submit/index.js.map +1 -1
- package/build/commands/submit/submit.d.ts +2 -2
- package/build/commands/submit/submit.js +63 -53
- package/build/commands/submit/submit.js.map +1 -1
- package/build/commands/submit/tasks.d.ts +2 -1
- package/build/commands/submit/tasks.js +5 -4
- package/build/commands/submit/tasks.js.map +1 -1
- package/build/commands/submit/types.d.ts +5 -0
- package/build/commands/submit/utils/assert-core-dependencies-version.d.ts +1 -3
- package/build/commands/submit/utils/assert-core-dependencies-version.js +6 -85
- package/build/commands/submit/utils/assert-core-dependencies-version.js.map +1 -1
- package/build/commands/sync-user-metafield-definitions/index.js +7 -5
- package/build/commands/sync-user-metafield-definitions/index.js.map +1 -1
- package/build/commands/upgrade/index.d.ts +0 -1
- package/build/commands/upgrade/index.js +20 -56
- package/build/commands/upgrade/index.js.map +1 -1
- package/build/constants/dev-panel.d.ts +3 -0
- package/build/constants/dev-panel.js +4 -0
- package/build/constants/dev-panel.js.map +1 -0
- package/build/data/create-submission.d.ts +2 -1
- package/build/data/create-submission.js +13 -4
- package/build/data/create-submission.js.map +1 -1
- package/build/data/get-submissions.d.ts +3 -2
- package/build/data/get-submissions.js +3 -1
- package/build/data/get-submissions.js.map +1 -1
- package/build/data/types/autogenerated/shop-minis-admin-api/gql.d.ts +3 -2
- package/build/data/types/autogenerated/shop-minis-admin-api/gql.js +1 -1
- package/build/data/types/autogenerated/shop-minis-admin-api/gql.js.map +1 -1
- package/build/data/types/autogenerated/shop-minis-admin-api/graphql.d.ts +11 -3
- package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js +21 -1
- package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js.map +1 -1
- package/build/index.d.ts +1 -1
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/program.js +5 -7
- package/build/program.js.map +1 -1
- package/build/schemas/manifest.schema.json +9 -210
- package/build/utils/allowed-dependencies.d.ts +5 -0
- package/build/utils/allowed-dependencies.js +21 -0
- package/build/utils/allowed-dependencies.js.map +1 -0
- package/build/utils/dependencies.d.ts +7 -0
- package/build/utils/dependencies.js +275 -0
- package/build/utils/dependencies.js.map +1 -0
- package/build/utils/minis-manifest.js +0 -7
- package/build/utils/minis-manifest.js.map +1 -1
- package/build/utils/package-manager.d.ts +25 -13
- package/build/utils/package-manager.js +56 -36
- package/build/utils/package-manager.js.map +1 -1
- package/package.json +7 -15
- package/build/commands/codemod/releases/v0-0-100.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-100.js +0 -50
- package/build/commands/codemod/releases/v0-0-100.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-103.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-103.js +0 -43
- package/build/commands/codemod/releases/v0-0-103.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-105.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-105.js +0 -59
- package/build/commands/codemod/releases/v0-0-105.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-106.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-106.js +0 -32
- package/build/commands/codemod/releases/v0-0-106.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-114.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-114.js +0 -48
- package/build/commands/codemod/releases/v0-0-114.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-115.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-115.js +0 -50
- package/build/commands/codemod/releases/v0-0-115.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-121.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-121.js +0 -74
- package/build/commands/codemod/releases/v0-0-121.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-123.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-123.js +0 -33
- package/build/commands/codemod/releases/v0-0-123.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-125.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-125.js +0 -37
- package/build/commands/codemod/releases/v0-0-125.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-130.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-130.js +0 -26
- package/build/commands/codemod/releases/v0-0-130.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-139.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-139.js +0 -26
- package/build/commands/codemod/releases/v0-0-139.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-163.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-163.js +0 -26
- package/build/commands/codemod/releases/v0-0-163.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-42/index.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-42/index.js +0 -46
- package/build/commands/codemod/releases/v0-0-42/index.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-42/reset-files.d.ts +0 -7
- package/build/commands/codemod/releases/v0-0-42/reset-files.js +0 -83
- package/build/commands/codemod/releases/v0-0-42/reset-files.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-43.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-43.js +0 -32
- package/build/commands/codemod/releases/v0-0-43.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-44.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-44.js +0 -214
- package/build/commands/codemod/releases/v0-0-44.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-45.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-45.js +0 -23
- package/build/commands/codemod/releases/v0-0-45.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-50.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-50.js +0 -34
- package/build/commands/codemod/releases/v0-0-50.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-54.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-54.js +0 -70
- package/build/commands/codemod/releases/v0-0-54.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-56.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-56.js +0 -48
- package/build/commands/codemod/releases/v0-0-56.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-57.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-57.js +0 -41
- package/build/commands/codemod/releases/v0-0-57.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-58.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-58.js +0 -68
- package/build/commands/codemod/releases/v0-0-58.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-61.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-61.js +0 -30
- package/build/commands/codemod/releases/v0-0-61.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-63.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-63.js +0 -42
- package/build/commands/codemod/releases/v0-0-63.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-64.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-64.js +0 -47
- package/build/commands/codemod/releases/v0-0-64.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-75.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-75.js +0 -30
- package/build/commands/codemod/releases/v0-0-75.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-76.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-76.js +0 -32
- package/build/commands/codemod/releases/v0-0-76.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-77.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-77.js +0 -39
- package/build/commands/codemod/releases/v0-0-77.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-79.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-79.js +0 -35
- package/build/commands/codemod/releases/v0-0-79.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-84.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-84.js +0 -41
- package/build/commands/codemod/releases/v0-0-84.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-85.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-85.js +0 -60
- package/build/commands/codemod/releases/v0-0-85.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-89.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-89.js +0 -60
- package/build/commands/codemod/releases/v0-0-89.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-91/index.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-91/index.js +0 -38
- package/build/commands/codemod/releases/v0-0-91/index.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-91/replace-dev-wrapper.d.ts +0 -5
- package/build/commands/codemod/releases/v0-0-91/replace-dev-wrapper.js +0 -45
- package/build/commands/codemod/releases/v0-0-91/replace-dev-wrapper.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-91/replace-safe-area-imports.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-91/replace-safe-area-imports.js +0 -97
- package/build/commands/codemod/releases/v0-0-91/replace-safe-area-imports.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-92.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-92.js +0 -38
- package/build/commands/codemod/releases/v0-0-92.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/blank/App-after.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-93/blank/App-after.js +0 -15
- package/build/commands/codemod/releases/v0-0-93/blank/App-after.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/blank/App-before.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-93/blank/App-before.js +0 -13
- package/build/commands/codemod/releases/v0-0-93/blank/App-before.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/index.d.ts +0 -6
- package/build/commands/codemod/releases/v0-0-93/index.js +0 -7
- package/build/commands/codemod/releases/v0-0-93/index.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.js +0 -53
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.js +0 -43
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.js +0 -49
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.js +0 -42
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-93.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-93.js +0 -48
- package/build/commands/codemod/releases/v0-0-93.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-97/index.d.ts +0 -3
- package/build/commands/codemod/releases/v0-0-97/index.js +0 -20
- package/build/commands/codemod/releases/v0-0-97/index.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-97/migrate-to-new-theme.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-97/migrate-to-new-theme.js +0 -47
- package/build/commands/codemod/releases/v0-0-97/migrate-to-new-theme.js.map +0 -1
- package/build/commands/codemod/releases/v0-0-97/remove-theme-from-config.d.ts +0 -1
- package/build/commands/codemod/releases/v0-0-97/remove-theme-from-config.js +0 -105
- package/build/commands/codemod/releases/v0-0-97/remove-theme-from-config.js.map +0 -1
- package/build/commands/create-extension/constants.d.ts +0 -44
- package/build/commands/create-extension/constants.js +0 -111
- package/build/commands/create-extension/constants.js.map +0 -1
- package/build/commands/create-extension/index.js +0 -71
- package/build/commands/create-extension/index.js.map +0 -1
- package/build/commands/create-extension/types.d.ts +0 -13
- package/build/commands/create-extension/types.js +0 -8
- package/build/commands/create-extension/types.js.map +0 -1
- package/build/commands/create-extension/utils/add-target-to-config.d.ts +0 -2
- package/build/commands/create-extension/utils/add-target-to-config.js +0 -48
- package/build/commands/create-extension/utils/add-target-to-config.js.map +0 -1
- package/build/commands/create-extension/utils/create-extension-files.d.ts +0 -11
- package/build/commands/create-extension/utils/create-extension-files.js +0 -96
- package/build/commands/create-extension/utils/create-extension-files.js.map +0 -1
- package/build/commands/create-extension/utils/create-from-template.d.ts +0 -3
- package/build/commands/create-extension/utils/create-from-template.js +0 -47
- package/build/commands/create-extension/utils/create-from-template.js.map +0 -1
- package/build/commands/create-extension/utils/format-extension-files.d.ts +0 -1
- package/build/commands/create-extension/utils/format-extension-files.js +0 -22
- package/build/commands/create-extension/utils/format-extension-files.js.map +0 -1
- package/build/commands/create-mini/index.d.ts +0 -2
- package/build/commands/create-mini/index.js +0 -11
- package/build/commands/create-mini/index.js.map +0 -1
- package/build/commands/create-mini/legacy/index.d.ts +0 -2
- package/build/commands/create-mini/legacy/index.js +0 -176
- package/build/commands/create-mini/legacy/index.js.map +0 -1
- package/build/commands/create-mini/legacy/utils/template-app.d.ts +0 -2
- package/build/commands/create-mini/legacy/utils/template-app.js +0 -84
- package/build/commands/create-mini/legacy/utils/template-app.js.map +0 -1
- package/build/commands/create-mini/standalone/examples/with-camera-access/.eslintignore +0 -1
- package/build/commands/create-mini/standalone/examples/with-camera-access/.eslintrc.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-camera-access/.graphqlrc.js +0 -1
- package/build/commands/create-mini/standalone/examples/with-camera-access/.prettierrc.json +0 -8
- package/build/commands/create-mini/standalone/examples/with-camera-access/README.md +0 -30
- package/build/commands/create-mini/standalone/examples/with-camera-access/assets.d.ts +0 -14
- package/build/commands/create-mini/standalone/examples/with-camera-access/babel.config.js +0 -5
- package/build/commands/create-mini/standalone/examples/with-camera-access/index.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-camera-access/metro.config.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-camera-access/package.json +0 -33
- package/build/commands/create-mini/standalone/examples/with-camera-access/src/App.tsx +0 -152
- package/build/commands/create-mini/standalone/examples/with-camera-access/src/index.tsx +0 -9
- package/build/commands/create-mini/standalone/examples/with-camera-access/src/manifest.json +0 -5
- package/build/commands/create-mini/standalone/examples/with-camera-access/tsconfig.json +0 -41
- package/build/commands/create-mini/standalone/examples/with-fal-ai/.eslintignore +0 -1
- package/build/commands/create-mini/standalone/examples/with-fal-ai/.eslintrc.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-fal-ai/.graphqlrc.js +0 -1
- package/build/commands/create-mini/standalone/examples/with-fal-ai/.prettierrc.json +0 -8
- package/build/commands/create-mini/standalone/examples/with-fal-ai/README.md +0 -46
- package/build/commands/create-mini/standalone/examples/with-fal-ai/assets.d.ts +0 -14
- package/build/commands/create-mini/standalone/examples/with-fal-ai/babel.config.js +0 -5
- package/build/commands/create-mini/standalone/examples/with-fal-ai/index.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-fal-ai/metro.config.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-fal-ai/package.json +0 -33
- package/build/commands/create-mini/standalone/examples/with-fal-ai/src/App.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-fal-ai/src/index.tsx +0 -9
- package/build/commands/create-mini/standalone/examples/with-fal-ai/src/manifest.json +0 -21
- package/build/commands/create-mini/standalone/examples/with-fal-ai/src/screens/HomeScreen.tsx +0 -142
- package/build/commands/create-mini/standalone/examples/with-fal-ai/tsconfig.json +0 -41
- package/build/commands/create-mini/standalone/examples/with-getting-started/.eslintignore +0 -1
- package/build/commands/create-mini/standalone/examples/with-getting-started/.eslintrc.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-getting-started/.graphqlrc.js +0 -1
- package/build/commands/create-mini/standalone/examples/with-getting-started/.prettierrc.json +0 -8
- package/build/commands/create-mini/standalone/examples/with-getting-started/README.md +0 -18
- package/build/commands/create-mini/standalone/examples/with-getting-started/assets.d.ts +0 -14
- package/build/commands/create-mini/standalone/examples/with-getting-started/babel.config.js +0 -5
- package/build/commands/create-mini/standalone/examples/with-getting-started/index.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-getting-started/metro.config.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-getting-started/package.json +0 -33
- package/build/commands/create-mini/standalone/examples/with-getting-started/src/App.tsx +0 -23
- package/build/commands/create-mini/standalone/examples/with-getting-started/src/index.tsx +0 -9
- package/build/commands/create-mini/standalone/examples/with-getting-started/src/manifest.json +0 -5
- package/build/commands/create-mini/standalone/examples/with-getting-started/src/screens/HomeScreen.tsx +0 -133
- package/build/commands/create-mini/standalone/examples/with-getting-started/src/screens/NativeFeaturesScreen.tsx +0 -138
- package/build/commands/create-mini/standalone/examples/with-getting-started/src/types/screens.ts +0 -5
- package/build/commands/create-mini/standalone/examples/with-search/.eslintignore +0 -1
- package/build/commands/create-mini/standalone/examples/with-search/.eslintrc.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-search/.graphqlrc.js +0 -1
- package/build/commands/create-mini/standalone/examples/with-search/.prettierrc.json +0 -8
- package/build/commands/create-mini/standalone/examples/with-search/README.md +0 -25
- package/build/commands/create-mini/standalone/examples/with-search/assets.d.ts +0 -14
- package/build/commands/create-mini/standalone/examples/with-search/babel.config.js +0 -5
- package/build/commands/create-mini/standalone/examples/with-search/index.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-search/metro.config.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-search/package.json +0 -33
- package/build/commands/create-mini/standalone/examples/with-search/src/App.tsx +0 -23
- package/build/commands/create-mini/standalone/examples/with-search/src/components/HeaderAction.tsx +0 -32
- package/build/commands/create-mini/standalone/examples/with-search/src/components/ShopCard.tsx +0 -92
- package/build/commands/create-mini/standalone/examples/with-search/src/index.tsx +0 -9
- package/build/commands/create-mini/standalone/examples/with-search/src/manifest.json +0 -7
- package/build/commands/create-mini/standalone/examples/with-search/src/screens/MerchantSearchScreen.tsx +0 -126
- package/build/commands/create-mini/standalone/examples/with-search/src/screens/ProductSearchScreen.tsx +0 -115
- package/build/commands/create-mini/standalone/examples/with-search/src/types/screens.ts +0 -6
- package/build/commands/create-mini/standalone/examples/with-search/tsconfig.json +0 -41
- package/build/commands/create-mini/standalone/examples/with-user-data/.eslintignore +0 -1
- package/build/commands/create-mini/standalone/examples/with-user-data/.eslintrc.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-user-data/.graphqlrc.js +0 -1
- package/build/commands/create-mini/standalone/examples/with-user-data/.prettierrc.json +0 -8
- package/build/commands/create-mini/standalone/examples/with-user-data/README.md +0 -26
- package/build/commands/create-mini/standalone/examples/with-user-data/assets.d.ts +0 -14
- package/build/commands/create-mini/standalone/examples/with-user-data/babel.config.js +0 -5
- package/build/commands/create-mini/standalone/examples/with-user-data/index.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-user-data/metro.config.js +0 -3
- package/build/commands/create-mini/standalone/examples/with-user-data/package.json +0 -33
- package/build/commands/create-mini/standalone/examples/with-user-data/src/App.tsx +0 -5
- package/build/commands/create-mini/standalone/examples/with-user-data/src/components/ProductSection.tsx +0 -39
- package/build/commands/create-mini/standalone/examples/with-user-data/src/components/SectionStyles.ts +0 -9
- package/build/commands/create-mini/standalone/examples/with-user-data/src/components/ShopCard.tsx +0 -42
- package/build/commands/create-mini/standalone/examples/with-user-data/src/components/ShopSection.tsx +0 -40
- package/build/commands/create-mini/standalone/examples/with-user-data/src/index.tsx +0 -9
- package/build/commands/create-mini/standalone/examples/with-user-data/src/manifest.json +0 -10
- package/build/commands/create-mini/standalone/examples/with-user-data/src/screens/HomeScreen.tsx +0 -67
- package/build/commands/create-mini/standalone/examples/with-user-data/tsconfig.json +0 -41
- package/build/commands/create-mini/standalone/index.d.ts +0 -2
- package/build/commands/create-mini/standalone/index.js.map +0 -1
- package/build/commands/create-mini/utils/examples.js.map +0 -1
- package/build/commands/create-mini/utils/index.js.map +0 -1
- package/build/commands/dev/utils/app-screens.d.ts +0 -9
- package/build/commands/dev/utils/app-screens.js +0 -170
- package/build/commands/dev/utils/app-screens.js.map +0 -1
- package/build/commands/dev/utils/metro/metro-config.d.ts +0 -2
- package/build/commands/dev/utils/metro/metro-config.js +0 -29
- package/build/commands/dev/utils/metro/metro-config.js.map +0 -1
- package/build/commands/dev/utils/metro/metro-minis-module-resolver.d.ts +0 -6
- package/build/commands/dev/utils/metro/metro-minis-module-resolver.js +0 -11
- package/build/commands/dev/utils/metro/metro-minis-module-resolver.js.map +0 -1
- package/build/commands/dev/utils/metro/metro-reporter.d.ts +0 -21
- package/build/commands/dev/utils/metro/metro-reporter.js +0 -46
- package/build/commands/dev/utils/metro/metro-reporter.js.map +0 -1
- package/build/commands/dev/utils/metro/metro-server-middleware.d.ts +0 -10
- package/build/commands/dev/utils/metro/metro-server-middleware.js +0 -74
- package/build/commands/dev/utils/metro/metro-server-middleware.js.map +0 -1
- package/build/commands/dev/utils/metro/metro-server.d.ts +0 -6
- package/build/commands/dev/utils/metro/metro-server.js +0 -26
- package/build/commands/dev/utils/metro/metro-server.js.map +0 -1
- package/build/commands/dev/utils/start-app/types.d.ts +0 -14
- package/build/commands/dev/utils/start-app/types.js +0 -2
- package/build/commands/dev/utils/start-app/types.js.map +0 -1
- package/build/commands/dev/utils/types.d.ts +0 -24
- package/build/commands/dev/utils/types.js.map +0 -1
- package/build/commands/doctor/utils/diagnose-dependencies.d.ts +0 -8
- package/build/commands/doctor/utils/diagnose-dependencies.js +0 -190
- package/build/commands/doctor/utils/diagnose-dependencies.js.map +0 -1
- package/build/commands/generate-graphql-types/index.d.ts +0 -6
- package/build/commands/generate-graphql-types/index.js +0 -36
- package/build/commands/generate-graphql-types/index.js.map +0 -1
- package/build/commands/generate-graphql-types/utils/generate-graphql-types.d.ts +0 -2
- package/build/commands/generate-graphql-types/utils/generate-graphql-types.js +0 -67
- package/build/commands/generate-graphql-types/utils/generate-graphql-types.js.map +0 -1
- package/build/commands/generate-graphql-types/utils/get-graphql-config.d.ts +0 -1
- package/build/commands/generate-graphql-types/utils/get-graphql-config.js +0 -39
- package/build/commands/generate-graphql-types/utils/get-graphql-config.js.map +0 -1
- package/build/commands/generate-graphql-types/utils/get-graphql-config.spec.d.ts +0 -1
- package/build/commands/generate-graphql-types/utils/get-graphql-config.spec.js +0 -62
- package/build/commands/generate-graphql-types/utils/get-graphql-config.spec.js.map +0 -1
- package/build/commands/generate-graphql-types/utils/require.d.ts +0 -2
- package/build/commands/generate-graphql-types/utils/require.js +0 -3
- package/build/commands/generate-graphql-types/utils/require.js.map +0 -1
- package/build/commands/submit/utils/request-entry-point-params.d.ts +0 -1
- package/build/commands/submit/utils/request-entry-point-params.js +0 -43
- package/build/commands/submit/utils/request-entry-point-params.js.map +0 -1
- package/build/commands/upgrade/utils/clear-metro-cache.d.ts +0 -1
- package/build/commands/upgrade/utils/clear-metro-cache.js +0 -12
- package/build/commands/upgrade/utils/clear-metro-cache.js.map +0 -1
- package/build/commands/upgrade/utils/cli.d.ts +0 -1
- package/build/commands/upgrade/utils/cli.js +0 -15
- package/build/commands/upgrade/utils/cli.js.map +0 -1
- package/build/constants/extensions.d.ts +0 -21
- package/build/constants/extensions.js +0 -25
- package/build/constants/extensions.js.map +0 -1
- package/build/constants/templates.d.ts +0 -7
- package/build/constants/templates.js +0 -8
- package/build/constants/templates.js.map +0 -1
- package/build/templates-index.d.ts +0 -6
- package/build/templates-index.js +0 -24
- package/build/templates-index.js.map +0 -1
- package/build/utils/development-params.d.ts +0 -13
- package/build/utils/development-params.js +0 -44
- package/build/utils/development-params.js.map +0 -1
- package/build/utils/extensions.d.ts +0 -13
- package/build/utils/extensions.js +0 -87
- package/build/utils/extensions.js.map +0 -1
- package/build/utils/patch-package.d.ts +0 -5
- package/build/utils/patch-package.js +0 -79
- package/build/utils/patch-package.js.map +0 -1
- package/build/utils/semver.d.ts +0 -1
- package/build/utils/semver.js +0 -19
- package/build/utils/semver.js.map +0 -1
- package/build/utils/standalone.d.ts +0 -2
- package/build/utils/standalone.js +0 -15
- package/build/utils/standalone.js.map +0 -1
- package/scripts/test-create-mini-legacy.ts +0 -63
- package/scripts/test-create-mini-standalone.ts +0 -80
- package/shipit.snapshot.yml +0 -9
- package/templates/__template_blank/src/App.tsx +0 -24
- package/templates/__template_blank/src/index.tsx +0 -9
- package/templates/__template_common/.eslintignore +0 -1
- package/templates/__template_common/.eslintrc.js +0 -3
- package/templates/__template_common/.graphqlrc.js +0 -1
- package/templates/__template_common/.prettierrc.json +0 -8
- package/templates/__template_common/assets.d.ts +0 -14
- package/templates/__template_common/babel.config.js +0 -5
- package/templates/__template_common/index.tsx +0 -5
- package/templates/__template_common/metro.config.js +0 -5
- package/templates/__template_common/package.json +0 -35
- package/templates/__template_common/src/manifest.json +0 -6
- package/templates/__template_common/tsconfig.json +0 -41
- package/templates/__template_getting_started/src/App.tsx +0 -23
- package/templates/__template_getting_started/src/index.tsx +0 -9
- package/templates/__template_getting_started/src/manifest.json +0 -7
- package/templates/__template_getting_started/src/screens/HomeScreen.tsx +0 -131
- package/templates/__template_getting_started/src/screens/NativeFeaturesScreen.tsx +0 -137
- package/templates/__template_getting_started/src/types/screens.ts +0 -5
- package/templates/__template_shoppable_posts/src/App.tsx +0 -42
- package/templates/__template_shoppable_posts/src/index.tsx +0 -9
- package/templates/__template_shoppable_videos/src/App.tsx +0 -39
- package/templates/__template_shoppable_videos/src/index.tsx +0 -9
- package/templates/extensions/components/__template_blank/render.tsx +0 -18
- package/templates/extensions/components/__template_bundle-collection/render.tsx +0 -31
- package/templates/extensions/components/__template_bundle-collection/seed.ts +0 -26
- package/templates/extensions/components/__template_bundle-selector/render.tsx +0 -51
- package/templates/extensions/components/__template_bundle-selector/seed.ts +0 -72
- package/templates/extensions/components/__template_default-card/render.tsx +0 -24
- package/templates/extensions/components/__template_default-card/seed.ts +0 -10
- package/templates/extensions/components/__template_image-collection/render.tsx +0 -17
- package/templates/extensions/components/__template_image-collection/seed.ts +0 -70
- package/templates/extensions/components/__template_link/render.tsx +0 -17
- package/templates/extensions/components/__template_link/seed.ts +0 -5
- package/templates/extensions/components/__template_product-offer-card/render.tsx +0 -17
- package/templates/extensions/components/__template_product-offer-card/seed.ts +0 -44
- package/templates/extensions/components/__template_survey-single-response/render.tsx +0 -26
- package/templates/extensions/components/__template_survey-single-response/seed.ts +0 -22
- package/templates/extensions/components/__template_video-collection/render.tsx +0 -17
- package/templates/extensions/components/__template_video-collection/seed.ts +0 -37
- package/templates/extensions/queries/__template_order-confirmation-page/input.graphql +0 -5
- package/templates/extensions/queries/__template_order-confirmation-page/input.graphql.d.ts +0 -24
- package/templates/extensions/queries/__template_order-management-page/input.graphql +0 -5
- package/templates/extensions/queries/__template_order-management-page/input.graphql.d.ts +0 -24
- package/templates/extensions/queries/__template_product-page/input.graphql +0 -9
- package/templates/extensions/queries/__template_product-page/input.graphql.d.ts +0 -36
- package/templates/extensions/queries/__template_store-page/input.graphql +0 -5
- package/templates/extensions/queries/__template_store-page/input.graphql.d.ts +0 -24
- /package/build/commands/{create-extension → create}/index.d.ts +0 -0
- /package/build/commands/{create-mini → create}/utils/index.d.ts +0 -0
- /package/build/commands/{create-mini → create}/utils/index.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require('@shopify/shop-minis-sdk/graphqlrc')
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
# Product AI Image Generator Mini
|
|
2
|
-
|
|
3
|
-
A Shop Mini that generates AI-powered product images based on your recently viewed products. Using FAL AI's image generation capabilities, this mini creates realistic studio-quality product images from product titles, descriptions, and shop information.
|
|
4
|
-
|
|
5
|
-
## Features
|
|
6
|
-
|
|
7
|
-
- Automatically detects your most recently viewed product
|
|
8
|
-
- Generates AI-powered product images using FAL AI
|
|
9
|
-
- Displays original product information alongside generated images
|
|
10
|
-
- Simple one-click image generation
|
|
11
|
-
|
|
12
|
-
## Setup
|
|
13
|
-
|
|
14
|
-
1. Clone this repository
|
|
15
|
-
2. Install dependencies:
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
npm install
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
3. Setup your mini and login with your partners account:
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
npx shop-minis setup
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
4. Set up your FAL AI API key:
|
|
28
|
-
|
|
29
|
-
- Sign up for a FAL AI account at [FAL AI](https://fal.ai)
|
|
30
|
-
- Get your API key from the dashboard
|
|
31
|
-
- Run `npx shop-minis secrets set fal_ai_key <your-api-key-here>`
|
|
32
|
-
- Run `npx shop-minis proxies apply`
|
|
33
|
-
|
|
34
|
-
5. Run the development server:
|
|
35
|
-
```bash
|
|
36
|
-
npm start
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
## Development
|
|
40
|
-
|
|
41
|
-
This mini is built using:
|
|
42
|
-
|
|
43
|
-
- React Native
|
|
44
|
-
- TypeScript
|
|
45
|
-
- Shop Minis SDK
|
|
46
|
-
- FAL AI API
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
declare module '*.svg' {
|
|
2
|
-
const content: import('react').FC<import('react-native-svg').SvgProps>
|
|
3
|
-
export default content
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
declare module '*.png' {
|
|
7
|
-
const content: import('react-native').ImageRequireSource
|
|
8
|
-
export default content
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
declare module '*.jpg' {
|
|
12
|
-
const content: import('react-native').ImageRequireSource
|
|
13
|
-
export default content
|
|
14
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
// Changes to babel config are not supported by the mini platform.
|
|
3
|
-
// Custom configuration can introduce unexpected behaviour in your mini and could be a cause of rejection during the submission process.
|
|
4
|
-
presets: ['@shopify/shop-minis-sdk/babel-preset'],
|
|
5
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "with-fal-ai",
|
|
3
|
-
"version": "0.0.1",
|
|
4
|
-
"private": true,
|
|
5
|
-
"scripts": {
|
|
6
|
-
"start": "shop-minis dev",
|
|
7
|
-
"test": "jest",
|
|
8
|
-
"lint": "eslint ."
|
|
9
|
-
},
|
|
10
|
-
"dependencies": {
|
|
11
|
-
"@shopify/shop-minis-sdk": "0.0.16"
|
|
12
|
-
},
|
|
13
|
-
"devDependencies": {
|
|
14
|
-
"@shopify/shop-minis-cli": "0.0.161",
|
|
15
|
-
"@types/jest": "^29.2.6",
|
|
16
|
-
"babel-jest": "^26.6.3",
|
|
17
|
-
"eslint": "^8.32.0",
|
|
18
|
-
"jest": "^29.3.1",
|
|
19
|
-
"prettier": "^2.8.2"
|
|
20
|
-
},
|
|
21
|
-
"jest": {
|
|
22
|
-
"preset": "react-native"
|
|
23
|
-
},
|
|
24
|
-
"overrides": {
|
|
25
|
-
"graphql": "15.8.0",
|
|
26
|
-
"react": "18.2.0",
|
|
27
|
-
"react-native": "0.73.2"
|
|
28
|
-
},
|
|
29
|
-
"resolutions": {
|
|
30
|
-
"@apollo/federation": "0.38.1",
|
|
31
|
-
"graphql": "15.8.0"
|
|
32
|
-
}
|
|
33
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "with-fal-ai",
|
|
3
|
-
"features": ["FULL_BLEED_VIEWER", "STANDALONE"],
|
|
4
|
-
"trusted_domains": ["v3.fal.media"],
|
|
5
|
-
"proxies": [
|
|
6
|
-
{
|
|
7
|
-
"target_url_pattern": "https://queue.fal.run/fal-ai/flux/schnell*",
|
|
8
|
-
"allowed_methods": ["POST"],
|
|
9
|
-
"appended_headers": ["Authorization: Key {{ secrets.fal_ai_key }}"],
|
|
10
|
-
"user_rate_limit_requests": 10,
|
|
11
|
-
"user_rate_limit_interval": 3600
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"target_url_pattern": "https://queue.fal.run/fal-ai/flux/requests*",
|
|
15
|
-
"allowed_methods": ["GET"],
|
|
16
|
-
"appended_headers": ["Authorization: Key {{ secrets.fal_ai_key }}"],
|
|
17
|
-
"user_rate_limit_requests": 50,
|
|
18
|
-
"user_rate_limit_interval": 300
|
|
19
|
-
}
|
|
20
|
-
]
|
|
21
|
-
}
|
package/build/commands/create-mini/standalone/examples/with-fal-ai/src/screens/HomeScreen.tsx
DELETED
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import {useState} from 'react'
|
|
2
|
-
import {ScrollView, View, Text, Button, StyleSheet} from 'react-native'
|
|
3
|
-
import {
|
|
4
|
-
SafeAreaView,
|
|
5
|
-
ProductCard,
|
|
6
|
-
useRecentProducts,
|
|
7
|
-
Product,
|
|
8
|
-
Image,
|
|
9
|
-
useFalAi,
|
|
10
|
-
} from '@shopify/shop-minis-sdk'
|
|
11
|
-
|
|
12
|
-
function generatePrompt(product: Product): string {
|
|
13
|
-
return `
|
|
14
|
-
A realistic Product image photo in a studio setting of a product named ${product.title} from the store: ${product.shop.name}
|
|
15
|
-
`
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
function EmptyState() {
|
|
19
|
-
return (
|
|
20
|
-
<Text>
|
|
21
|
-
No recently viewed products found. Close the Mini and visit any product.
|
|
22
|
-
</Text>
|
|
23
|
-
)
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
function ProductSection({
|
|
27
|
-
product,
|
|
28
|
-
isLoading,
|
|
29
|
-
onGenerateImage,
|
|
30
|
-
}: {
|
|
31
|
-
product: Product
|
|
32
|
-
isLoading: boolean
|
|
33
|
-
onGenerateImage: () => void
|
|
34
|
-
}) {
|
|
35
|
-
return (
|
|
36
|
-
<>
|
|
37
|
-
<Text style={styles.title}>Generate an AI image from this product</Text>
|
|
38
|
-
<Text>
|
|
39
|
-
Based on the product title, shop and description, this mini generates a
|
|
40
|
-
realistic image of the product.
|
|
41
|
-
</Text>
|
|
42
|
-
<View style={styles.productContainer}>
|
|
43
|
-
<ProductCard product={product} />
|
|
44
|
-
</View>
|
|
45
|
-
<Button
|
|
46
|
-
disabled={isLoading}
|
|
47
|
-
onPress={onGenerateImage}
|
|
48
|
-
title={isLoading ? 'Loading...' : 'Generate an AI image'}
|
|
49
|
-
/>
|
|
50
|
-
</>
|
|
51
|
-
)
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export function HomeScreen() {
|
|
55
|
-
const {products} = useRecentProducts({first: 1})
|
|
56
|
-
const fal = useFalAi()
|
|
57
|
-
const [imageUrl, setImageUrl] = useState('')
|
|
58
|
-
const [isLoading, setIsLoading] = useState(false)
|
|
59
|
-
|
|
60
|
-
const generateImage = async () => {
|
|
61
|
-
const product = products?.[0]
|
|
62
|
-
if (!product) return
|
|
63
|
-
|
|
64
|
-
setIsLoading(true)
|
|
65
|
-
setImageUrl('')
|
|
66
|
-
|
|
67
|
-
try {
|
|
68
|
-
const prompt = generatePrompt(product)
|
|
69
|
-
const response = await fal.subscribe('fal-ai/flux/schnell', {
|
|
70
|
-
input: {
|
|
71
|
-
prompt,
|
|
72
|
-
},
|
|
73
|
-
mode: 'polling',
|
|
74
|
-
pollInterval: 1000,
|
|
75
|
-
})
|
|
76
|
-
|
|
77
|
-
if (response.data.images?.[0]?.url) {
|
|
78
|
-
setImageUrl(response.data.images[0].url)
|
|
79
|
-
}
|
|
80
|
-
} catch (error) {
|
|
81
|
-
console.error('Failed to generateImage:', error)
|
|
82
|
-
} finally {
|
|
83
|
-
setIsLoading(false)
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
return (
|
|
88
|
-
<SafeAreaView>
|
|
89
|
-
<ScrollView>
|
|
90
|
-
<View style={styles.container}>
|
|
91
|
-
<View style={styles.main}>
|
|
92
|
-
{(() => {
|
|
93
|
-
if (products === undefined) return null
|
|
94
|
-
if (products.length === 0) return <EmptyState />
|
|
95
|
-
return (
|
|
96
|
-
<ProductSection
|
|
97
|
-
product={products[0]}
|
|
98
|
-
isLoading={isLoading}
|
|
99
|
-
onGenerateImage={generateImage}
|
|
100
|
-
/>
|
|
101
|
-
)
|
|
102
|
-
})()}
|
|
103
|
-
|
|
104
|
-
{imageUrl ? (
|
|
105
|
-
<Image source={{uri: imageUrl}} style={styles.generatedImage} />
|
|
106
|
-
) : null}
|
|
107
|
-
</View>
|
|
108
|
-
</View>
|
|
109
|
-
</ScrollView>
|
|
110
|
-
</SafeAreaView>
|
|
111
|
-
)
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
const styles = StyleSheet.create({
|
|
115
|
-
container: {
|
|
116
|
-
flex: 1,
|
|
117
|
-
alignItems: 'stretch',
|
|
118
|
-
justifyContent: 'center',
|
|
119
|
-
marginHorizontal: 'auto',
|
|
120
|
-
},
|
|
121
|
-
main: {
|
|
122
|
-
gap: 8,
|
|
123
|
-
justifyContent: 'center',
|
|
124
|
-
alignItems: 'stretch',
|
|
125
|
-
paddingHorizontal: 24,
|
|
126
|
-
},
|
|
127
|
-
title: {
|
|
128
|
-
marginVertical: 10,
|
|
129
|
-
fontSize: 24,
|
|
130
|
-
fontWeight: 'bold',
|
|
131
|
-
},
|
|
132
|
-
productContainer: {
|
|
133
|
-
marginHorizontal: 50,
|
|
134
|
-
},
|
|
135
|
-
generatedImage: {
|
|
136
|
-
width: '100%',
|
|
137
|
-
height: 300,
|
|
138
|
-
marginTop: 12,
|
|
139
|
-
marginBottom: 20,
|
|
140
|
-
borderRadius: 8,
|
|
141
|
-
},
|
|
142
|
-
})
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"baseUrl": ".",
|
|
4
|
-
"paths": {
|
|
5
|
-
"*": [
|
|
6
|
-
"*",
|
|
7
|
-
"*.ios",
|
|
8
|
-
"*.android",
|
|
9
|
-
"./node_modules/@shopify/shop-minis-sdk/node_modules/*"
|
|
10
|
-
]
|
|
11
|
-
},
|
|
12
|
-
"allowJs": true,
|
|
13
|
-
"resolveJsonModule": true,
|
|
14
|
-
"allowSyntheticDefaultImports": true,
|
|
15
|
-
"esModuleInterop": true,
|
|
16
|
-
"isolatedModules": false,
|
|
17
|
-
"jsx": "preserve",
|
|
18
|
-
"lib": ["es2019"],
|
|
19
|
-
"noUnusedParameters": true,
|
|
20
|
-
"noUnusedLocals": true,
|
|
21
|
-
"moduleResolution": "node",
|
|
22
|
-
"noEmit": true,
|
|
23
|
-
"incremental": true,
|
|
24
|
-
"strict": true,
|
|
25
|
-
"target": "esnext",
|
|
26
|
-
"skipLibCheck": true,
|
|
27
|
-
"noImplicitReturns": false,
|
|
28
|
-
"noFallthroughCasesInSwitch": true,
|
|
29
|
-
"allowUnreachableCode": false,
|
|
30
|
-
"allowUnusedLabels": false,
|
|
31
|
-
"noImplicitAny": true,
|
|
32
|
-
"strictNullChecks": true,
|
|
33
|
-
"strictFunctionTypes": true,
|
|
34
|
-
"strictBindCallApply": true,
|
|
35
|
-
"strictPropertyInitialization": true,
|
|
36
|
-
"noImplicitThis": true,
|
|
37
|
-
"alwaysStrict": true,
|
|
38
|
-
"useUnknownInCatchVariables": false
|
|
39
|
-
},
|
|
40
|
-
"exclude": ["node_modules"]
|
|
41
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
*.graphql.d.ts
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require('@shopify/shop-minis-sdk/graphqlrc')
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# Getting Started Mini
|
|
2
|
-
|
|
3
|
-
A Shop Mini that demonstrates the basics of how to get started with Shop Minis.
|
|
4
|
-
|
|
5
|
-
## Setup
|
|
6
|
-
|
|
7
|
-
1. Run the development server:
|
|
8
|
-
```bash
|
|
9
|
-
npm start
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
## Development
|
|
13
|
-
|
|
14
|
-
This mini is built using:
|
|
15
|
-
|
|
16
|
-
- React Native
|
|
17
|
-
- TypeScript
|
|
18
|
-
- Shop Minis SDK
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
declare module '*.svg' {
|
|
2
|
-
const content: import('react').FC<import('react-native-svg').SvgProps>
|
|
3
|
-
export default content
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
declare module '*.png' {
|
|
7
|
-
const content: import('react-native').ImageRequireSource
|
|
8
|
-
export default content
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
declare module '*.jpg' {
|
|
12
|
-
const content: import('react-native').ImageRequireSource
|
|
13
|
-
export default content
|
|
14
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
module.exports = {
|
|
2
|
-
// Changes to babel config are not supported by the mini platform.
|
|
3
|
-
// Custom configuration can introduce unexpected behaviour in your mini and could be a cause of rejection during the submission process.
|
|
4
|
-
presets: ['@shopify/shop-minis-sdk/babel-preset'],
|
|
5
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "with-getting-started",
|
|
3
|
-
"version": "0.0.1",
|
|
4
|
-
"private": true,
|
|
5
|
-
"scripts": {
|
|
6
|
-
"start": "shop-minis dev",
|
|
7
|
-
"test": "jest",
|
|
8
|
-
"lint": "eslint ."
|
|
9
|
-
},
|
|
10
|
-
"dependencies": {
|
|
11
|
-
"@shopify/shop-minis-sdk": "0.0.16"
|
|
12
|
-
},
|
|
13
|
-
"devDependencies": {
|
|
14
|
-
"@shopify/shop-minis-cli": "0.0.161",
|
|
15
|
-
"@types/jest": "^29.2.6",
|
|
16
|
-
"babel-jest": "^26.6.3",
|
|
17
|
-
"eslint": "^8.32.0",
|
|
18
|
-
"jest": "^29.3.1",
|
|
19
|
-
"prettier": "^2.8.2"
|
|
20
|
-
},
|
|
21
|
-
"jest": {
|
|
22
|
-
"preset": "react-native"
|
|
23
|
-
},
|
|
24
|
-
"overrides": {
|
|
25
|
-
"graphql": "15.8.0",
|
|
26
|
-
"react": "18.2.0",
|
|
27
|
-
"react-native": "0.73.2"
|
|
28
|
-
},
|
|
29
|
-
"resolutions": {
|
|
30
|
-
"@apollo/federation": "0.38.1",
|
|
31
|
-
"graphql": "15.8.0"
|
|
32
|
-
}
|
|
33
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import {createNativeStackNavigator} from '@react-navigation/native-stack'
|
|
2
|
-
|
|
3
|
-
import {HomeScreen} from './screens/HomeScreen'
|
|
4
|
-
import {NativeFeaturesScreen} from './screens/NativeFeaturesScreen'
|
|
5
|
-
|
|
6
|
-
const Stack = createNativeStackNavigator()
|
|
7
|
-
|
|
8
|
-
export function App() {
|
|
9
|
-
return (
|
|
10
|
-
<Stack.Navigator>
|
|
11
|
-
<Stack.Screen
|
|
12
|
-
name="GettingStarted.Home"
|
|
13
|
-
component={HomeScreen}
|
|
14
|
-
options={{headerShown: false}}
|
|
15
|
-
/>
|
|
16
|
-
<Stack.Screen
|
|
17
|
-
name="GettingStarted.NativeFeatures"
|
|
18
|
-
component={NativeFeaturesScreen}
|
|
19
|
-
options={{headerShown: false}}
|
|
20
|
-
/>
|
|
21
|
-
</Stack.Navigator>
|
|
22
|
-
)
|
|
23
|
-
}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
import {useState} from 'react'
|
|
2
|
-
import {ScrollView} from 'react-native'
|
|
3
|
-
import {useNavigation} from '@react-navigation/native'
|
|
4
|
-
import {NativeStackNavigationProp} from '@react-navigation/native-stack'
|
|
5
|
-
import {
|
|
6
|
-
Box,
|
|
7
|
-
SafeAreaView,
|
|
8
|
-
Text,
|
|
9
|
-
TouchableProduct,
|
|
10
|
-
ProductCard,
|
|
11
|
-
useProductSearch,
|
|
12
|
-
useTheme,
|
|
13
|
-
Button,
|
|
14
|
-
TextField,
|
|
15
|
-
RadioButton,
|
|
16
|
-
Divider,
|
|
17
|
-
} from '@shopify/shop-minis-sdk'
|
|
18
|
-
|
|
19
|
-
import {RootStackParamList} from '../types/screens'
|
|
20
|
-
|
|
21
|
-
export function HomeScreen() {
|
|
22
|
-
const theme = useTheme()
|
|
23
|
-
const navigation =
|
|
24
|
-
useNavigation<NativeStackNavigationProp<RootStackParamList>>()
|
|
25
|
-
|
|
26
|
-
const {products} = useProductSearch({
|
|
27
|
-
query: 'skateboard',
|
|
28
|
-
first: 4,
|
|
29
|
-
filters: {
|
|
30
|
-
minimumRating: 4,
|
|
31
|
-
price: {
|
|
32
|
-
min: 150,
|
|
33
|
-
max: 250,
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
const radioButtonOptions = ['Option A', 'Option B', 'Option C']
|
|
39
|
-
|
|
40
|
-
const [selectedOption, setSelectedOption] = useState(radioButtonOptions[0])
|
|
41
|
-
const [textFieldValue, setTextFieldValue] = useState('')
|
|
42
|
-
|
|
43
|
-
return (
|
|
44
|
-
<SafeAreaView
|
|
45
|
-
style={{flex: 1, backgroundColor: theme.colors['backgrounds-regular']}}
|
|
46
|
-
>
|
|
47
|
-
<ScrollView>
|
|
48
|
-
<Box
|
|
49
|
-
flex={1}
|
|
50
|
-
paddingHorizontal="gutter"
|
|
51
|
-
marginBottom="s"
|
|
52
|
-
backgroundColor="backgrounds-regular"
|
|
53
|
-
>
|
|
54
|
-
<Text variant="heroBold" marginBottom="s" marginTop="xs">
|
|
55
|
-
Hello, World!
|
|
56
|
-
</Text>
|
|
57
|
-
<Text variant="subtitle" marginBottom="s">
|
|
58
|
-
You just created a Shop Mini! Nice.
|
|
59
|
-
</Text>
|
|
60
|
-
<Text variant="subtitle">Let's explore what a Mini can do.</Text>
|
|
61
|
-
<Divider marginVertical="s" />
|
|
62
|
-
{products ? (
|
|
63
|
-
<>
|
|
64
|
-
<Text marginBottom="s">
|
|
65
|
-
First up: Product Cards (Since we're all about shopping,
|
|
66
|
-
right?)
|
|
67
|
-
</Text>
|
|
68
|
-
<Box flexDirection="row">
|
|
69
|
-
{products.slice(0, 2).map(product => (
|
|
70
|
-
<Box key={product.id} flex={1}>
|
|
71
|
-
<TouchableProduct product={product}>
|
|
72
|
-
<ProductCard product={product} />
|
|
73
|
-
</TouchableProduct>
|
|
74
|
-
</Box>
|
|
75
|
-
))}
|
|
76
|
-
</Box>
|
|
77
|
-
<Box flexDirection="row">
|
|
78
|
-
{products.slice(2, 4).map(product => (
|
|
79
|
-
<Box key={product.id} flex={1} padding="xs">
|
|
80
|
-
<TouchableProduct product={product}>
|
|
81
|
-
<ProductCard product={product} />
|
|
82
|
-
</TouchableProduct>
|
|
83
|
-
</Box>
|
|
84
|
-
))}
|
|
85
|
-
</Box>
|
|
86
|
-
</>
|
|
87
|
-
) : null}
|
|
88
|
-
<Divider marginVertical="s" />
|
|
89
|
-
|
|
90
|
-
<Text marginBottom="s">
|
|
91
|
-
You can add interactions to your Mini with inputs.
|
|
92
|
-
</Text>
|
|
93
|
-
<Box>
|
|
94
|
-
<TextField
|
|
95
|
-
placeholder="I love Minis because..."
|
|
96
|
-
value={textFieldValue}
|
|
97
|
-
onChangeText={setTextFieldValue}
|
|
98
|
-
/>
|
|
99
|
-
{textFieldValue ? (
|
|
100
|
-
<Text marginTop="xs">I love Minis because {textFieldValue}</Text>
|
|
101
|
-
) : null}
|
|
102
|
-
</Box>
|
|
103
|
-
<Divider marginVertical="s" />
|
|
104
|
-
|
|
105
|
-
<Text>Radio buttons</Text>
|
|
106
|
-
{radioButtonOptions.map(option => (
|
|
107
|
-
<Box key={option} marginVertical="xs">
|
|
108
|
-
<RadioButton
|
|
109
|
-
variant="tertiary"
|
|
110
|
-
text={option}
|
|
111
|
-
active={selectedOption === option}
|
|
112
|
-
onPress={() => setSelectedOption(option)}
|
|
113
|
-
/>
|
|
114
|
-
</Box>
|
|
115
|
-
))}
|
|
116
|
-
<Divider marginVertical="s" />
|
|
117
|
-
|
|
118
|
-
<Text marginBottom="s">
|
|
119
|
-
Ready for more? Let's explore native capabilities in the
|
|
120
|
-
screen.
|
|
121
|
-
</Text>
|
|
122
|
-
<Button
|
|
123
|
-
text="Next"
|
|
124
|
-
size="l"
|
|
125
|
-
onPress={() => {
|
|
126
|
-
navigation.navigate('GettingStarted.NativeFeatures')
|
|
127
|
-
}}
|
|
128
|
-
/>
|
|
129
|
-
</Box>
|
|
130
|
-
</ScrollView>
|
|
131
|
-
</SafeAreaView>
|
|
132
|
-
)
|
|
133
|
-
}
|