@shopify/shop-minis-cli 0.0.172 → 0.0.174
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 +0 -211
- 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,79 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'node:module';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
4
|
-
import fs from 'fs-extra';
|
|
5
|
-
const { applyPatch: patchPackageApplyPatch } = createRequire(import.meta.url)('patch-package/dist/applyPatches');
|
|
6
|
-
const { getPackageDetailsFromPatchFilename } = createRequire(import.meta.url)('patch-package/dist/PackageDetails');
|
|
7
|
-
// We use an empty file to know if a patch was already applied or not. i.e.
|
|
8
|
-
// if node_modules/react-native/.patched-by-minis-cli exists, we assume that a patch was already applied
|
|
9
|
-
// if node_modules/react-native/.patched-by-minis-cli does not exist, we assume that a patch is not applied yet
|
|
10
|
-
const PATCHED_MARK_FILE = '.patched-by-minis-cli';
|
|
11
|
-
const nodeModulesPath = path.join(process.cwd(), 'node_modules');
|
|
12
|
-
const minisSdkPatchesDirectoryPath = path.join(nodeModulesPath, '@shopify', 'shop-minis-sdk', 'patches');
|
|
13
|
-
const patchesDirectoryPath = fs.existsSync(minisSdkPatchesDirectoryPath)
|
|
14
|
-
? minisSdkPatchesDirectoryPath
|
|
15
|
-
: path.join(nodeModulesPath, '@shopify', 'shop-minis-runtime', 'patches');
|
|
16
|
-
function getPatchFiles() {
|
|
17
|
-
try {
|
|
18
|
-
return fs.readdirSync(patchesDirectoryPath);
|
|
19
|
-
}
|
|
20
|
-
catch (err) {
|
|
21
|
-
// older versions of shop-minis-runtime (< 0.0.5) do not have the patches folder.
|
|
22
|
-
outputDebug('Patches folder does not exist. Please update @shopify/shop-minis-runtime to ^0.0.5');
|
|
23
|
-
return [];
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Applies patches to Minis dependencies (only if they have not been applied yet)
|
|
28
|
-
* @returns a list with the names of the patches that were applied
|
|
29
|
-
*/
|
|
30
|
-
export function maybeApplyPatches() {
|
|
31
|
-
const appliedPatches = [];
|
|
32
|
-
outputDebug('Applying dependency patches...');
|
|
33
|
-
const patches = getPatchFiles();
|
|
34
|
-
for (const patch of patches) {
|
|
35
|
-
if (isPatchApplied(patch)) {
|
|
36
|
-
outputDebug(`${patch} is already applied`);
|
|
37
|
-
continue;
|
|
38
|
-
}
|
|
39
|
-
outputDebug(`Applying patch ${patch}`);
|
|
40
|
-
const applied = applyPatch(patch);
|
|
41
|
-
if (applied) {
|
|
42
|
-
markPatchAsApplied(patch);
|
|
43
|
-
outputDebug(`Patch ${patch} applied`);
|
|
44
|
-
appliedPatches.push(patch);
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
outputDebug(`Failed to apply patch ${patch}`);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return appliedPatches;
|
|
51
|
-
}
|
|
52
|
-
function isPatchApplied(patch) {
|
|
53
|
-
const dependencyName = getDependencyNameForPatch(patch);
|
|
54
|
-
return fs.existsSync(path.join(nodeModulesPath, dependencyName, PATCHED_MARK_FILE));
|
|
55
|
-
}
|
|
56
|
-
function applyPatch(patch) {
|
|
57
|
-
const patchFilePath = path.join(patchesDirectoryPath, patch);
|
|
58
|
-
return patchPackageApplyPatch({
|
|
59
|
-
patchFilePath,
|
|
60
|
-
reverse: false,
|
|
61
|
-
patchDir: patchesDirectoryPath,
|
|
62
|
-
packageDetails: getPackageDetailsFromPatchFilename(patch),
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
function markPatchAsApplied(patch) {
|
|
66
|
-
const dependencyName = getDependencyNameForPatch(patch);
|
|
67
|
-
fs.createFileSync(path.join(nodeModulesPath, dependencyName, PATCHED_MARK_FILE));
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Given a patch file name, returns the name of the actual dependency that's being patched.
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* getDependencyNameForPatch('react-native+0.68.5.patch')
|
|
74
|
-
* // returns 'react-native'
|
|
75
|
-
*/
|
|
76
|
-
function getDependencyNameForPatch(patch) {
|
|
77
|
-
return patch.split('+')[0];
|
|
78
|
-
}
|
|
79
|
-
//# sourceMappingURL=patch-package.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"patch-package.js","sourceRoot":"","sources":["../../src/utils/patch-package.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAA;AACzC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,MAAM,UAAU,CAAA;AAEzB,MAAM,EAAC,UAAU,EAAE,sBAAsB,EAAC,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CACzE,iCAAiC,CAClC,CAAA;AACD,MAAM,EAAC,kCAAkC,EAAC,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CACzE,mCAAmC,CACpC,CAAA;AAED,2EAA2E;AAC3E,wGAAwG;AACxG,+GAA+G;AAC/G,MAAM,iBAAiB,GAAG,uBAAuB,CAAA;AAEjD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAA;AAEhE,MAAM,4BAA4B,GAAG,IAAI,CAAC,IAAI,CAC5C,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,SAAS,CACV,CAAA;AAED,MAAM,oBAAoB,GAAG,EAAE,CAAC,UAAU,CAAC,4BAA4B,CAAC;IACtE,CAAC,CAAC,4BAA4B;IAC9B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAA;AAE3E,SAAS,aAAa;IACpB,IAAI;QACF,OAAO,EAAE,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAA;KAC5C;IAAC,OAAO,GAAG,EAAE;QACZ,iFAAiF;QACjF,WAAW,CACT,oFAAoF,CACrF,CAAA;QACD,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,cAAc,GAAG,EAAE,CAAA;IACzB,WAAW,CAAC,gCAAgC,CAAC,CAAA;IAE7C,MAAM,OAAO,GAAG,aAAa,EAAE,CAAA;IAC/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;QAC3B,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;YACzB,WAAW,CAAC,GAAG,KAAK,qBAAqB,CAAC,CAAA;YAC1C,SAAQ;SACT;QAED,WAAW,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAA;QACtC,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;QAEjC,IAAI,OAAO,EAAE;YACX,kBAAkB,CAAC,KAAK,CAAC,CAAA;YACzB,WAAW,CAAC,SAAS,KAAK,UAAU,CAAC,CAAA;YACrC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;SAC3B;aAAM;YACL,WAAW,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAA;SAC9C;KACF;IACD,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,MAAM,cAAc,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAA;IACvD,OAAO,EAAE,CAAC,UAAU,CAClB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAC9D,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAA;IAC5D,OAAO,sBAAsB,CAAC;QAC5B,aAAa;QACb,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,oBAAoB;QAC9B,cAAc,EAAE,kCAAkC,CAAC,KAAK,CAAC;KAC1D,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,cAAc,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAA;IACvD,EAAE,CAAC,cAAc,CACf,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAC9D,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,yBAAyB,CAAC,KAAa;IAC9C,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5B,CAAC"}
|
package/build/utils/semver.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function validateUpgradeBetweenVersions(fromVersion: string, toVersion: string): void;
|
package/build/utils/semver.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { lte, coerce as coerceVersionToSemver } from 'semver';
|
|
2
|
-
import { AbortError } from '@shopify/cli-kit/node/error';
|
|
3
|
-
export function validateUpgradeBetweenVersions(fromVersion, toVersion) {
|
|
4
|
-
const fromVersionSemver = coerceVersionToSemver(fromVersion);
|
|
5
|
-
const toVersionSemver = coerceVersionToSemver(toVersion);
|
|
6
|
-
if (!fromVersionSemver || !toVersionSemver) {
|
|
7
|
-
const versionWithError = fromVersionSemver ? toVersion : fromVersion;
|
|
8
|
-
throw new AbortError('The provided version is not a valid semver string', undefined, [
|
|
9
|
-
[
|
|
10
|
-
`The specified value was "${versionWithError}"`,
|
|
11
|
-
`Read more about semantic versioning in https://semver.org/`,
|
|
12
|
-
],
|
|
13
|
-
]);
|
|
14
|
-
}
|
|
15
|
-
if (lte(toVersionSemver, fromVersionSemver)) {
|
|
16
|
-
throw new AbortError('The provided target version must be bigger than the base version', undefined, [[`Target version is "${toVersion}"`, `Base version is "${fromVersion}"`]]);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=semver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"semver.js","sourceRoot":"","sources":["../../src/utils/semver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,IAAI,qBAAqB,EAAC,MAAM,QAAQ,CAAA;AAC3D,OAAO,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAA;AAEtD,MAAM,UAAU,8BAA8B,CAC5C,WAAmB,EACnB,SAAiB;IAEjB,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAA;IAC5D,MAAM,eAAe,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAA;IAExD,IAAI,CAAC,iBAAiB,IAAI,CAAC,eAAe,EAAE;QAC1C,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAA;QACpE,MAAM,IAAI,UAAU,CAClB,mDAAmD,EACnD,SAAS,EACT;YACE;gBACE,4BAA4B,gBAAgB,GAAG;gBAC/C,4DAA4D;aAC7D;SACF,CACF,CAAA;KACF;IAED,IAAI,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,EAAE;QAC3C,MAAM,IAAI,UAAU,CAClB,kEAAkE,EAClE,SAAS,EACT,CAAC,CAAC,sBAAsB,SAAS,GAAG,EAAE,oBAAoB,WAAW,GAAG,CAAC,CAAC,CAC3E,CAAA;KACF;AACH,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { getMiniManifest } from './minis-manifest.js';
|
|
2
|
-
export const LEGACY_STANDALONE_HANDLES = [
|
|
3
|
-
'color-analyst',
|
|
4
|
-
'dreamboard',
|
|
5
|
-
'place',
|
|
6
|
-
'test-mini',
|
|
7
|
-
];
|
|
8
|
-
export const isStandaloneMini = () => {
|
|
9
|
-
const manifest = getMiniManifest();
|
|
10
|
-
if (LEGACY_STANDALONE_HANDLES.includes(manifest.handle)) {
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
13
|
-
return (manifest?.features ?? []).includes('STANDALONE');
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=standalone.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"standalone.js","sourceRoot":"","sources":["../../src/utils/standalone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAA;AAEnD,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,eAAe;IACf,YAAY;IACZ,OAAO;IACP,WAAW;CACZ,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAA;IAElC,IAAI,yBAAyB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QACvD,OAAO,KAAK,CAAA;KACb;IAED,OAAO,CAAC,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;AAC1D,CAAC,CAAA"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import {execSync} from 'node:child_process'
|
|
2
|
-
|
|
3
|
-
import {Command} from 'commander'
|
|
4
|
-
|
|
5
|
-
import {TEMPLATE_VALUES} from '../src/templates-index.js'
|
|
6
|
-
|
|
7
|
-
const program = new Command()
|
|
8
|
-
.name('test-create-mini-legacy')
|
|
9
|
-
.description('Creates a legacy mini and checks that it is valid')
|
|
10
|
-
.argument('<template name>', 'Name of the template to use')
|
|
11
|
-
.action(async (templateName: string) => {
|
|
12
|
-
if (!TEMPLATE_VALUES.includes(templateName)) {
|
|
13
|
-
console.log(
|
|
14
|
-
`\n${templateName} is not a valid template name. Please use one of ${TEMPLATE_VALUES.join(
|
|
15
|
-
', '
|
|
16
|
-
)}\n`
|
|
17
|
-
)
|
|
18
|
-
process.exit(1)
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
// build the CLI
|
|
22
|
-
execSync('yarn build:cli', {stdio: 'inherit'})
|
|
23
|
-
|
|
24
|
-
// set up folder structure
|
|
25
|
-
execSync('mkdir -p ../minis/', {stdio: 'inherit'})
|
|
26
|
-
execSync('rm -rf ../minis/test-template', {stdio: 'inherit'}) // just in case this wasn't deleted before
|
|
27
|
-
|
|
28
|
-
// build mini
|
|
29
|
-
execSync(
|
|
30
|
-
`yarn shop-minis create test-template --legacy --template ${templateName} --extension-target shop.store.block.render --extension-type=default-card --output-dir ../minis/`,
|
|
31
|
-
{stdio: 'inherit'}
|
|
32
|
-
)
|
|
33
|
-
|
|
34
|
-
// print package.json
|
|
35
|
-
execSync(`cat ../minis/test-template/package.json`, {stdio: 'inherit'})
|
|
36
|
-
|
|
37
|
-
// run eslint
|
|
38
|
-
try {
|
|
39
|
-
execSync('cd ../minis/test-template && yarn lint', {stdio: 'inherit'})
|
|
40
|
-
} catch {
|
|
41
|
-
console.log(`\n ⚠️ eslint failed. To reproduce run:
|
|
42
|
-
$ cd ../minis/test-template
|
|
43
|
-
$ yarn lint
|
|
44
|
-
`)
|
|
45
|
-
process.exit(1)
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
// run typescript checks
|
|
49
|
-
try {
|
|
50
|
-
execSync('cd ../minis/test-template && yarn tsc', {stdio: 'inherit'})
|
|
51
|
-
} catch {
|
|
52
|
-
console.log(`\n ⚠️ typescript failed. To reproduce run:
|
|
53
|
-
$ cd ../minis/test-template
|
|
54
|
-
$ yarn tsc
|
|
55
|
-
`)
|
|
56
|
-
process.exit(1)
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// clean up
|
|
60
|
-
execSync('rm -rf ../minis/test-template', {stdio: 'inherit'})
|
|
61
|
-
})
|
|
62
|
-
|
|
63
|
-
program.parse()
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import {execSync} from 'node:child_process'
|
|
2
|
-
import {readdir} from 'node:fs/promises'
|
|
3
|
-
import path from 'node:path'
|
|
4
|
-
|
|
5
|
-
import {Command} from 'commander'
|
|
6
|
-
|
|
7
|
-
const __dirname = path.resolve()
|
|
8
|
-
|
|
9
|
-
const program = new Command()
|
|
10
|
-
.name('test-create-mini-standalone')
|
|
11
|
-
.description('Creates a standalone mini and checks that it is valid')
|
|
12
|
-
.argument('<example-name>', 'Name of the example to use')
|
|
13
|
-
.action(async (exampleName: string) => {
|
|
14
|
-
const examples = await readdir(
|
|
15
|
-
path.join(
|
|
16
|
-
__dirname,
|
|
17
|
-
'src',
|
|
18
|
-
'commands',
|
|
19
|
-
'create-mini',
|
|
20
|
-
'standalone',
|
|
21
|
-
'examples'
|
|
22
|
-
)
|
|
23
|
-
)
|
|
24
|
-
|
|
25
|
-
if (!examples.includes(exampleName)) {
|
|
26
|
-
console.log(
|
|
27
|
-
`\n${exampleName} is not a valid example name. Please use one of ${examples.join(
|
|
28
|
-
', '
|
|
29
|
-
)}\n`
|
|
30
|
-
)
|
|
31
|
-
process.exit(1)
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
// build the CLI
|
|
35
|
-
execSync('yarn build:cli', {stdio: 'inherit'})
|
|
36
|
-
|
|
37
|
-
// set up folder structure
|
|
38
|
-
execSync('mkdir -p ../minis/', {stdio: 'inherit'})
|
|
39
|
-
execSync('rm -rf ../minis/test-standalone', {stdio: 'inherit'}) // just in case this wasn't deleted before
|
|
40
|
-
|
|
41
|
-
// build mini
|
|
42
|
-
execSync(
|
|
43
|
-
`yarn shop-minis create test-standalone --example ${exampleName} --output-dir ../minis/`,
|
|
44
|
-
{
|
|
45
|
-
stdio: 'inherit',
|
|
46
|
-
}
|
|
47
|
-
)
|
|
48
|
-
|
|
49
|
-
// print package.json
|
|
50
|
-
execSync(`cat ../minis/test-standalone/package.json`, {stdio: 'inherit'})
|
|
51
|
-
|
|
52
|
-
// run eslint
|
|
53
|
-
try {
|
|
54
|
-
execSync('cd ../minis/test-standalone && yarn lint', {stdio: 'inherit'})
|
|
55
|
-
} catch {
|
|
56
|
-
console.log(`\n ⚠️ eslint failed. To reproduce run:
|
|
57
|
-
$ cd ../minis/test-standalone
|
|
58
|
-
$ yarn lint
|
|
59
|
-
`)
|
|
60
|
-
process.exit(1)
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// run typescript checks
|
|
64
|
-
try {
|
|
65
|
-
execSync('cd ../minis/test-standalone && yarn tsc', {
|
|
66
|
-
stdio: 'inherit',
|
|
67
|
-
})
|
|
68
|
-
} catch {
|
|
69
|
-
console.log(`\n ⚠️ typescript failed. To reproduce run:
|
|
70
|
-
$ cd ../minis/test-standalone
|
|
71
|
-
$ yarn tsc
|
|
72
|
-
`)
|
|
73
|
-
process.exit(1)
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
// clean up
|
|
77
|
-
execSync('rm -rf ../minis/test-standalone', {stdio: 'inherit'})
|
|
78
|
-
})
|
|
79
|
-
|
|
80
|
-
program.parse()
|
package/shipit.snapshot.yml
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
dependencies:
|
|
2
|
-
override:
|
|
3
|
-
- yarn install --no-progress --ignore-engines --frozen-lockfile
|
|
4
|
-
|
|
5
|
-
deploy:
|
|
6
|
-
override:
|
|
7
|
-
- yarn build
|
|
8
|
-
- generate-local-npmrc "@shopify:registry=https://registry.npmjs.org/"
|
|
9
|
-
- yarn publish --tag snapshot --new-version 0.0.0-snapshot.$(date +%Y%m%d%H%M%S) --no-git-tag-version --access public --verbose
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import {StatusBar} from 'react-native'
|
|
2
|
-
import {
|
|
3
|
-
Box,
|
|
4
|
-
Text,
|
|
5
|
-
SafeAreaView,
|
|
6
|
-
useMinisParams,
|
|
7
|
-
} from '@shopify/shop-minis-platform-sdk'
|
|
8
|
-
|
|
9
|
-
export function App() {
|
|
10
|
-
const {extensionData} = useMinisParams()
|
|
11
|
-
return (
|
|
12
|
-
<Box flex={1} backgroundColor="backgrounds-regular">
|
|
13
|
-
<StatusBar barStyle="dark-content" />
|
|
14
|
-
<SafeAreaView style={{flex: 1, justifyContent: 'center'}}>
|
|
15
|
-
<Text textAlign="center">Fill in the blank</Text>
|
|
16
|
-
{extensionData ? (
|
|
17
|
-
<Text textAlign="center">
|
|
18
|
-
Data from the extension: {JSON.stringify(extensionData)}
|
|
19
|
-
</Text>
|
|
20
|
-
) : null}
|
|
21
|
-
</SafeAreaView>
|
|
22
|
-
</Box>
|
|
23
|
-
)
|
|
24
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
*.graphql.d.ts
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require('@shopify/shop-minis-runtime/graphqlrc')
|
|
@@ -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-runtime/babel-preset'],
|
|
5
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "__MINI_APP_NAME_KEBAB_CASE__",
|
|
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-platform-sdk": "__SHOP_MINIS_SDK_VERSION__",
|
|
12
|
-
"@shopify/shop-minis-runtime": "__SHOP_MINIS_RUNTIME_VERSION__",
|
|
13
|
-
"@shopify/shop-minis-ui-extensions": "__SHOP_MINIS_UI_EXTENSIONS_VERSION__"
|
|
14
|
-
},
|
|
15
|
-
"devDependencies": {
|
|
16
|
-
"@shopify/shop-minis-cli": "__SHOP_MINIS_CLI_VERSION__",
|
|
17
|
-
"@types/jest": "__PACKAGE_VERSION_TYPES_JEST__",
|
|
18
|
-
"babel-jest": "__PACKAGE_VERSION_BABEL_JEST__",
|
|
19
|
-
"eslint": "__PACKAGE_VERSION_ESLINT__",
|
|
20
|
-
"jest": "__PACKAGE_VERSION_JEST__",
|
|
21
|
-
"prettier": "__PACKAGE_VERSION_PRETTIER__"
|
|
22
|
-
},
|
|
23
|
-
"jest": {
|
|
24
|
-
"preset": "react-native"
|
|
25
|
-
},
|
|
26
|
-
"overrides": {
|
|
27
|
-
"graphql": "15.8.0",
|
|
28
|
-
"react": "18.2.0",
|
|
29
|
-
"react-native": "__REACT_NATIVE_VERSION__"
|
|
30
|
-
},
|
|
31
|
-
"resolutions": {
|
|
32
|
-
"@apollo/federation": "0.38.1",
|
|
33
|
-
"graphql": "15.8.0"
|
|
34
|
-
}
|
|
35
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"baseUrl": ".",
|
|
4
|
-
"paths": {
|
|
5
|
-
"*": [
|
|
6
|
-
"*",
|
|
7
|
-
"*.ios",
|
|
8
|
-
"*.android",
|
|
9
|
-
"./node_modules/@shopify/shop-minis-runtime/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,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,131 +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
|
-
ProductCard,
|
|
10
|
-
useProductSearch,
|
|
11
|
-
useTheme,
|
|
12
|
-
Button,
|
|
13
|
-
TextField,
|
|
14
|
-
Divider,
|
|
15
|
-
Shelf,
|
|
16
|
-
} from '@shopify/shop-minis-sdk'
|
|
17
|
-
|
|
18
|
-
import {RootStackParamList} from '../types/screens'
|
|
19
|
-
|
|
20
|
-
export function HomeScreen() {
|
|
21
|
-
const theme = useTheme()
|
|
22
|
-
const navigation =
|
|
23
|
-
useNavigation<NativeStackNavigationProp<RootStackParamList>>()
|
|
24
|
-
const [searchQuery, setSearchQuery] = useState('Skateboard')
|
|
25
|
-
|
|
26
|
-
const {products, loading} = useProductSearch({
|
|
27
|
-
query: searchQuery,
|
|
28
|
-
first: 4,
|
|
29
|
-
filters: {
|
|
30
|
-
minimumRating: 4,
|
|
31
|
-
price: {
|
|
32
|
-
min: 100,
|
|
33
|
-
max: 250,
|
|
34
|
-
},
|
|
35
|
-
},
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
return (
|
|
39
|
-
<SafeAreaView
|
|
40
|
-
style={{flex: 1, backgroundColor: theme.colors['backgrounds-regular']}}
|
|
41
|
-
>
|
|
42
|
-
<ScrollView>
|
|
43
|
-
<Box
|
|
44
|
-
flex={1}
|
|
45
|
-
paddingHorizontal="gutter"
|
|
46
|
-
marginBottom="s"
|
|
47
|
-
backgroundColor="backgrounds-regular"
|
|
48
|
-
>
|
|
49
|
-
<Text variant="heroBold" marginBottom="s" marginTop="xs">
|
|
50
|
-
Welcome to Shop Minis
|
|
51
|
-
</Text>
|
|
52
|
-
<Text variant="subtitle" marginBottom="s">
|
|
53
|
-
Build powerful mobile commerce experiences with our SDK
|
|
54
|
-
</Text>
|
|
55
|
-
<Text variant="subtitle">Let's explore the key features.</Text>
|
|
56
|
-
<Divider marginVertical="s" />
|
|
57
|
-
|
|
58
|
-
<Text marginBottom="s">
|
|
59
|
-
Search for products using the{' '}
|
|
60
|
-
<Text color="text-brand">useProductSearch</Text> hook. This hook
|
|
61
|
-
provides real-time product search with filtering capabilities.
|
|
62
|
-
</Text>
|
|
63
|
-
<Box>
|
|
64
|
-
<TextField
|
|
65
|
-
placeholder="Skateboard"
|
|
66
|
-
value={searchQuery}
|
|
67
|
-
onChangeText={setSearchQuery}
|
|
68
|
-
/>
|
|
69
|
-
</Box>
|
|
70
|
-
|
|
71
|
-
<Divider marginVertical="s" />
|
|
72
|
-
|
|
73
|
-
<Box>
|
|
74
|
-
<Text marginBottom="s">
|
|
75
|
-
Display product collections using the{' '}
|
|
76
|
-
<Text color="text-brand">ProductCard</Text> and{' '}
|
|
77
|
-
<Text color="text-brand">Shelf</Text> components. These components
|
|
78
|
-
handle layout, touch interactions, and product display
|
|
79
|
-
automatically.
|
|
80
|
-
</Text>
|
|
81
|
-
{loading ? (
|
|
82
|
-
<Text>Loading products...</Text>
|
|
83
|
-
) : products && products.length > 0 ? (
|
|
84
|
-
<Box height={200}>
|
|
85
|
-
<Shelf
|
|
86
|
-
data={products}
|
|
87
|
-
renderItem={({item}) => (
|
|
88
|
-
<Box key={item.id} width={150}>
|
|
89
|
-
<ProductCard product={item} />
|
|
90
|
-
</Box>
|
|
91
|
-
)}
|
|
92
|
-
/>
|
|
93
|
-
</Box>
|
|
94
|
-
) : (
|
|
95
|
-
<Text>No products found</Text>
|
|
96
|
-
)}
|
|
97
|
-
</Box>
|
|
98
|
-
|
|
99
|
-
<Divider marginVertical="s" />
|
|
100
|
-
|
|
101
|
-
<Text variant="subtitle" marginBottom="s">
|
|
102
|
-
Check our docs to learn more about the powerful product hooks:
|
|
103
|
-
</Text>
|
|
104
|
-
|
|
105
|
-
<Text color="text-brand">
|
|
106
|
-
- useRecommendedProducts:
|
|
107
|
-
<Text> Get personalized product recommendations</Text>
|
|
108
|
-
</Text>
|
|
109
|
-
<Text color="text-brand">
|
|
110
|
-
- useSavedProducts:<Text> Access user's saved products</Text>
|
|
111
|
-
</Text>
|
|
112
|
-
<Text color="text-brand">
|
|
113
|
-
- useRecentProducts:<Text> Display recently viewed products</Text>
|
|
114
|
-
</Text>
|
|
115
|
-
<Divider marginVertical="s" />
|
|
116
|
-
<Text marginBottom="s">
|
|
117
|
-
Ready for more? Let's explore native capabilities in the
|
|
118
|
-
screen.
|
|
119
|
-
</Text>
|
|
120
|
-
<Button
|
|
121
|
-
text="Next"
|
|
122
|
-
size="l"
|
|
123
|
-
onPress={() => {
|
|
124
|
-
navigation.navigate('GettingStarted.NativeFeatures')
|
|
125
|
-
}}
|
|
126
|
-
/>
|
|
127
|
-
</Box>
|
|
128
|
-
</ScrollView>
|
|
129
|
-
</SafeAreaView>
|
|
130
|
-
)
|
|
131
|
-
}
|