@shopify/shop-minis-cli 0.0.0-snapshot.20240712123821
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/.eslintrc.cjs +78 -0
- package/LICENSE +21 -0
- package/README.md +8 -0
- package/README_INTERNAL.md +115 -0
- package/build/commands/cancel-submission/cancel-submission.d.ts +1 -0
- package/build/commands/cancel-submission/cancel-submission.js +57 -0
- package/build/commands/cancel-submission/cancel-submission.js.map +1 -0
- package/build/commands/cancel-submission/index.d.ts +2 -0
- package/build/commands/cancel-submission/index.js +18 -0
- package/build/commands/cancel-submission/index.js.map +1 -0
- package/build/commands/cancel-submission/types.d.ts +3 -0
- package/build/commands/cancel-submission/types.js +2 -0
- package/build/commands/cancel-submission/types.js.map +1 -0
- package/build/commands/check-submission/index.d.ts +2 -0
- package/build/commands/check-submission/index.js +55 -0
- package/build/commands/check-submission/index.js.map +1 -0
- package/build/commands/check-submission/types.d.ts +3 -0
- package/build/commands/check-submission/types.js +2 -0
- package/build/commands/check-submission/types.js.map +1 -0
- package/build/commands/codemod/index.d.ts +3 -0
- package/build/commands/codemod/index.js +47 -0
- package/build/commands/codemod/index.js.map +1 -0
- package/build/commands/codemod/releases/index.d.ts +7 -0
- package/build/commands/codemod/releases/index.js +89 -0
- package/build/commands/codemod/releases/index.js.map +1 -0
- package/build/commands/codemod/releases/types.d.ts +9 -0
- package/build/commands/codemod/releases/types.js +2 -0
- package/build/commands/codemod/releases/types.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-100.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-100.js +50 -0
- package/build/commands/codemod/releases/v0-0-100.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-103.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-103.js +43 -0
- package/build/commands/codemod/releases/v0-0-103.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-105.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-105.js +59 -0
- package/build/commands/codemod/releases/v0-0-105.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-106.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-106.js +32 -0
- package/build/commands/codemod/releases/v0-0-106.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-114.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-114.js +48 -0
- package/build/commands/codemod/releases/v0-0-114.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-115.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-115.js +50 -0
- package/build/commands/codemod/releases/v0-0-115.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-121.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-121.js +74 -0
- package/build/commands/codemod/releases/v0-0-121.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-42/index.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-42/index.js +46 -0
- package/build/commands/codemod/releases/v0-0-42/index.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-42/reset-files.d.ts +7 -0
- package/build/commands/codemod/releases/v0-0-42/reset-files.js +83 -0
- package/build/commands/codemod/releases/v0-0-42/reset-files.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-43.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-43.js +32 -0
- package/build/commands/codemod/releases/v0-0-43.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-44.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-44.js +214 -0
- package/build/commands/codemod/releases/v0-0-44.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-45.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-45.js +23 -0
- package/build/commands/codemod/releases/v0-0-45.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-50.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-50.js +34 -0
- package/build/commands/codemod/releases/v0-0-50.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-54.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-54.js +70 -0
- package/build/commands/codemod/releases/v0-0-54.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-56.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-56.js +48 -0
- package/build/commands/codemod/releases/v0-0-56.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-57.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-57.js +41 -0
- package/build/commands/codemod/releases/v0-0-57.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-58.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-58.js +68 -0
- package/build/commands/codemod/releases/v0-0-58.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-61.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-61.js +30 -0
- package/build/commands/codemod/releases/v0-0-61.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-63.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-63.js +42 -0
- package/build/commands/codemod/releases/v0-0-63.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-64.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-64.js +47 -0
- package/build/commands/codemod/releases/v0-0-64.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-75.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-75.js +30 -0
- package/build/commands/codemod/releases/v0-0-75.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-76.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-76.js +32 -0
- package/build/commands/codemod/releases/v0-0-76.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-77.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-77.js +39 -0
- package/build/commands/codemod/releases/v0-0-77.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-79.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-79.js +35 -0
- package/build/commands/codemod/releases/v0-0-79.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-84.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-84.js +41 -0
- package/build/commands/codemod/releases/v0-0-84.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-85.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-85.js +60 -0
- package/build/commands/codemod/releases/v0-0-85.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-89.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-89.js +60 -0
- package/build/commands/codemod/releases/v0-0-89.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-91/index.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-91/index.js +38 -0
- package/build/commands/codemod/releases/v0-0-91/index.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-91/replace-dev-wrapper.d.ts +5 -0
- package/build/commands/codemod/releases/v0-0-91/replace-dev-wrapper.js +45 -0
- package/build/commands/codemod/releases/v0-0-91/replace-dev-wrapper.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-91/replace-safe-area-imports.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-91/replace-safe-area-imports.js +97 -0
- package/build/commands/codemod/releases/v0-0-91/replace-safe-area-imports.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-92.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-92.js +38 -0
- package/build/commands/codemod/releases/v0-0-92.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/blank/App-after.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-93/blank/App-after.js +15 -0
- package/build/commands/codemod/releases/v0-0-93/blank/App-after.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/blank/App-before.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-93/blank/App-before.js +13 -0
- package/build/commands/codemod/releases/v0-0-93/blank/App-before.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/index.d.ts +6 -0
- package/build/commands/codemod/releases/v0-0-93/index.js +7 -0
- package/build/commands/codemod/releases/v0-0-93/index.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.js +53 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.js +43 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.js +49 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.js +42 -0
- package/build/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-93.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-93.js +48 -0
- package/build/commands/codemod/releases/v0-0-93.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-97/index.d.ts +3 -0
- package/build/commands/codemod/releases/v0-0-97/index.js +20 -0
- package/build/commands/codemod/releases/v0-0-97/index.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-97/migrate-to-new-theme.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-97/migrate-to-new-theme.js +47 -0
- package/build/commands/codemod/releases/v0-0-97/migrate-to-new-theme.js.map +1 -0
- package/build/commands/codemod/releases/v0-0-97/remove-theme-from-config.d.ts +1 -0
- package/build/commands/codemod/releases/v0-0-97/remove-theme-from-config.js +105 -0
- package/build/commands/codemod/releases/v0-0-97/remove-theme-from-config.js.map +1 -0
- package/build/commands/config.d.ts +14 -0
- package/build/commands/config.js +42 -0
- package/build/commands/config.js.map +1 -0
- package/build/commands/create-extension/constants.d.ts +24 -0
- package/build/commands/create-extension/constants.js +68 -0
- package/build/commands/create-extension/constants.js.map +1 -0
- package/build/commands/create-extension/index.d.ts +2 -0
- package/build/commands/create-extension/index.js +122 -0
- package/build/commands/create-extension/index.js.map +1 -0
- package/build/commands/create-extension/types.d.ts +11 -0
- package/build/commands/create-extension/types.js +7 -0
- package/build/commands/create-extension/types.js.map +1 -0
- package/build/commands/create-extension/utils/add-target-to-config.d.ts +2 -0
- package/build/commands/create-extension/utils/add-target-to-config.js +56 -0
- package/build/commands/create-extension/utils/add-target-to-config.js.map +1 -0
- package/build/commands/create-extension/utils/create-from-template.d.ts +3 -0
- package/build/commands/create-extension/utils/create-from-template.js +46 -0
- package/build/commands/create-extension/utils/create-from-template.js.map +1 -0
- package/build/commands/create-mini/index.d.ts +2 -0
- package/build/commands/create-mini/index.js +137 -0
- package/build/commands/create-mini/index.js.map +1 -0
- package/build/commands/create-mini/utils/template-app.d.ts +1 -0
- package/build/commands/create-mini/utils/template-app.js +47 -0
- package/build/commands/create-mini/utils/template-app.js.map +1 -0
- package/build/commands/dev/index.d.ts +12 -0
- package/build/commands/dev/index.js +75 -0
- package/build/commands/dev/index.js.map +1 -0
- package/build/commands/dev/utils/android.d.ts +18 -0
- package/build/commands/dev/utils/android.js +153 -0
- package/build/commands/dev/utils/android.js.map +1 -0
- package/build/commands/dev/utils/binaries.d.ts +5 -0
- package/build/commands/dev/utils/binaries.js +17 -0
- package/build/commands/dev/utils/binaries.js.map +1 -0
- package/build/commands/dev/utils/build-type.d.ts +2 -0
- package/build/commands/dev/utils/build-type.js +14 -0
- package/build/commands/dev/utils/build-type.js.map +1 -0
- package/build/commands/dev/utils/deeplink.d.ts +14 -0
- package/build/commands/dev/utils/deeplink.js +58 -0
- package/build/commands/dev/utils/deeplink.js.map +1 -0
- package/build/commands/dev/utils/interactive-terminal.d.ts +25 -0
- package/build/commands/dev/utils/interactive-terminal.js +210 -0
- package/build/commands/dev/utils/interactive-terminal.js.map +1 -0
- package/build/commands/dev/utils/metro/metro-config.d.ts +2 -0
- package/build/commands/dev/utils/metro/metro-config.js +27 -0
- package/build/commands/dev/utils/metro/metro-config.js.map +1 -0
- package/build/commands/dev/utils/metro/metro-minis-module-resolver.d.ts +6 -0
- package/build/commands/dev/utils/metro/metro-minis-module-resolver.js +11 -0
- package/build/commands/dev/utils/metro/metro-minis-module-resolver.js.map +1 -0
- package/build/commands/dev/utils/metro/metro-reporter.d.ts +13 -0
- package/build/commands/dev/utils/metro/metro-reporter.js +27 -0
- package/build/commands/dev/utils/metro/metro-reporter.js.map +1 -0
- package/build/commands/dev/utils/metro/metro-server-middleware.d.ts +10 -0
- package/build/commands/dev/utils/metro/metro-server-middleware.js +74 -0
- package/build/commands/dev/utils/metro/metro-server-middleware.js.map +1 -0
- package/build/commands/dev/utils/metro/metro-server.d.ts +6 -0
- package/build/commands/dev/utils/metro/metro-server.js +26 -0
- package/build/commands/dev/utils/metro/metro-server.js.map +1 -0
- package/build/commands/dev/utils/network.d.ts +20 -0
- package/build/commands/dev/utils/network.js +129 -0
- package/build/commands/dev/utils/network.js.map +1 -0
- package/build/commands/dev/utils/platform.d.ts +18 -0
- package/build/commands/dev/utils/platform.js +41 -0
- package/build/commands/dev/utils/platform.js.map +1 -0
- package/build/commands/dev/utils/prompt-binary-upgrade.d.ts +1 -0
- package/build/commands/dev/utils/prompt-binary-upgrade.js +12 -0
- package/build/commands/dev/utils/prompt-binary-upgrade.js.map +1 -0
- package/build/commands/dev/utils/qr-code.d.ts +1 -0
- package/build/commands/dev/utils/qr-code.js +5 -0
- package/build/commands/dev/utils/qr-code.js.map +1 -0
- package/build/commands/dev/utils/react-native-version.d.ts +4 -0
- package/build/commands/dev/utils/react-native-version.js +23 -0
- package/build/commands/dev/utils/react-native-version.js.map +1 -0
- package/build/commands/dev/utils/simulator.d.ts +22 -0
- package/build/commands/dev/utils/simulator.js +95 -0
- package/build/commands/dev/utils/simulator.js.map +1 -0
- package/build/commands/dev/utils/start-app/config.d.ts +5 -0
- package/build/commands/dev/utils/start-app/config.js +25 -0
- package/build/commands/dev/utils/start-app/config.js.map +1 -0
- package/build/commands/dev/utils/start-app/start-app-with-options.d.ts +2 -0
- package/build/commands/dev/utils/start-app/start-app-with-options.js +94 -0
- package/build/commands/dev/utils/start-app/start-app-with-options.js.map +1 -0
- package/build/commands/dev/utils/start-app/start-app.d.ts +2 -0
- package/build/commands/dev/utils/start-app/start-app.js +10 -0
- package/build/commands/dev/utils/start-app/start-app.js.map +1 -0
- package/build/commands/dev/utils/start-app/types.d.ts +20 -0
- package/build/commands/dev/utils/start-app/types.js +2 -0
- package/build/commands/dev/utils/start-app/types.js.map +1 -0
- package/build/commands/dev/utils/types.d.ts +24 -0
- package/build/commands/dev/utils/types.js +7 -0
- package/build/commands/dev/utils/types.js.map +1 -0
- package/build/commands/dev/utils/version.d.ts +64 -0
- package/build/commands/dev/utils/version.js +101 -0
- package/build/commands/dev/utils/version.js.map +1 -0
- package/build/commands/dev/utils/with-retries.d.ts +4 -0
- package/build/commands/dev/utils/with-retries.js +24 -0
- package/build/commands/dev/utils/with-retries.js.map +1 -0
- package/build/commands/doctor/index.d.ts +6 -0
- package/build/commands/doctor/index.js +21 -0
- package/build/commands/doctor/index.js.map +1 -0
- package/build/commands/doctor/utils/diagnose-dependencies.d.ts +7 -0
- package/build/commands/doctor/utils/diagnose-dependencies.js +113 -0
- package/build/commands/doctor/utils/diagnose-dependencies.js.map +1 -0
- package/build/commands/features/index.d.ts +6 -0
- package/build/commands/features/index.js +135 -0
- package/build/commands/features/index.js.map +1 -0
- package/build/commands/generate-graphql-types/index.d.ts +6 -0
- package/build/commands/generate-graphql-types/index.js +33 -0
- package/build/commands/generate-graphql-types/index.js.map +1 -0
- package/build/commands/generate-graphql-types/utils/generate-graphql-types.d.ts +2 -0
- package/build/commands/generate-graphql-types/utils/generate-graphql-types.js +101 -0
- package/build/commands/generate-graphql-types/utils/generate-graphql-types.js.map +1 -0
- package/build/commands/info/index.d.ts +3 -0
- package/build/commands/info/index.js +42 -0
- package/build/commands/info/index.js.map +1 -0
- package/build/commands/setup/index.d.ts +2 -0
- package/build/commands/setup/index.js +82 -0
- package/build/commands/setup/index.js.map +1 -0
- package/build/commands/submit/config.d.ts +9 -0
- package/build/commands/submit/config.js +18 -0
- package/build/commands/submit/config.js.map +1 -0
- package/build/commands/submit/errors.d.ts +19 -0
- package/build/commands/submit/errors.js +87 -0
- package/build/commands/submit/errors.js.map +1 -0
- package/build/commands/submit/gcs.d.ts +6 -0
- package/build/commands/submit/gcs.js +21 -0
- package/build/commands/submit/gcs.js.map +1 -0
- package/build/commands/submit/index.d.ts +2 -0
- package/build/commands/submit/index.js +25 -0
- package/build/commands/submit/index.js.map +1 -0
- package/build/commands/submit/submit.d.ts +5 -0
- package/build/commands/submit/submit.js +225 -0
- package/build/commands/submit/submit.js.map +1 -0
- package/build/commands/submit/tasks.d.ts +37 -0
- package/build/commands/submit/tasks.js +91 -0
- package/build/commands/submit/tasks.js.map +1 -0
- package/build/commands/submit/types.d.ts +14 -0
- package/build/commands/submit/types.js +2 -0
- package/build/commands/submit/types.js.map +1 -0
- package/build/commands/submit/utils/assert-core-dependencies-version.d.ts +1 -0
- package/build/commands/submit/utils/assert-core-dependencies-version.js +58 -0
- package/build/commands/submit/utils/assert-core-dependencies-version.js.map +1 -0
- package/build/commands/submit/utils/request-entry-point-params.d.ts +1 -0
- package/build/commands/submit/utils/request-entry-point-params.js +41 -0
- package/build/commands/submit/utils/request-entry-point-params.js.map +1 -0
- package/build/commands/submit/validation.d.ts +1 -0
- package/build/commands/submit/validation.js +11 -0
- package/build/commands/submit/validation.js.map +1 -0
- package/build/commands/upgrade/index.d.ts +13 -0
- package/build/commands/upgrade/index.js +65 -0
- package/build/commands/upgrade/index.js.map +1 -0
- package/build/commands/upgrade/utils/clear-metro-cache.d.ts +1 -0
- package/build/commands/upgrade/utils/clear-metro-cache.js +12 -0
- package/build/commands/upgrade/utils/clear-metro-cache.js.map +1 -0
- package/build/commands/upgrade/utils/cli.d.ts +1 -0
- package/build/commands/upgrade/utils/cli.js +15 -0
- package/build/commands/upgrade/utils/cli.js.map +1 -0
- package/build/commands/validate-manifest/index.d.ts +3 -0
- package/build/commands/validate-manifest/index.js +29 -0
- package/build/commands/validate-manifest/index.js.map +1 -0
- package/build/constants/extensions.d.ts +26 -0
- package/build/constants/extensions.js +31 -0
- package/build/constants/extensions.js.map +1 -0
- package/build/data/accept-invitation.d.ts +4 -0
- package/build/data/accept-invitation.js +16 -0
- package/build/data/accept-invitation.js.map +1 -0
- package/build/data/cancel-submission.d.ts +22 -0
- package/build/data/cancel-submission.js +26 -0
- package/build/data/cancel-submission.js.map +1 -0
- package/build/data/create-submission.d.ts +20 -0
- package/build/data/create-submission.js +27 -0
- package/build/data/create-submission.js.map +1 -0
- package/build/data/create-upload.d.ts +21 -0
- package/build/data/create-upload.js +40 -0
- package/build/data/create-upload.js.map +1 -0
- package/build/data/get-submissions.d.ts +27 -0
- package/build/data/get-submissions.js +33 -0
- package/build/data/get-submissions.js.map +1 -0
- package/build/data/gql-client.d.ts +8 -0
- package/build/data/gql-client.js +9 -0
- package/build/data/gql-client.js.map +1 -0
- package/build/data/mini.d.ts +5 -0
- package/build/data/mini.js +14 -0
- package/build/data/mini.js.map +1 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/fragment-masking.d.ts +13 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/fragment-masking.js +7 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/fragment-masking.js.map +1 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/gql.d.ts +75 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/gql.js +24 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/gql.js.map +1 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/graphql.d.ts +1745 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js +1072 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js.map +1 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/index.d.ts +2 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/index.js +3 -0
- package/build/data/types/autogenerated/shop-minis-admin-api/index.js.map +1 -0
- package/build/dev-panel/asset-manifest.json +13 -0
- package/build/dev-panel/checkmark.svg +3 -0
- package/build/dev-panel/chevron.svg +3 -0
- package/build/dev-panel/copy.svg +4 -0
- package/build/dev-panel/get-started.svg +3 -0
- package/build/dev-panel/how-to.svg +3 -0
- package/build/dev-panel/index.html +1 -0
- package/build/dev-panel/references.svg +3 -0
- package/build/dev-panel/robots.txt +3 -0
- package/build/dev-panel/static/css/main.7f1ee407.css +2 -0
- package/build/dev-panel/static/css/main.7f1ee407.css.map +1 -0
- package/build/dev-panel/static/js/main.6625699c.js +3 -0
- package/build/dev-panel/static/js/main.6625699c.js.LICENSE.txt +41 -0
- package/build/dev-panel/static/js/main.6625699c.js.map +1 -0
- package/build/dev-panel/topics.svg +3 -0
- package/build/index.d.ts +2 -0
- package/build/index.js +47 -0
- package/build/index.js.map +1 -0
- package/build/schemas/manifest.schema.json +214 -0
- package/build/templates-index.d.ts +6 -0
- package/build/templates-index.js +19 -0
- package/build/templates-index.js.map +1 -0
- package/build/utils/archive.d.ts +30 -0
- package/build/utils/archive.js +38 -0
- package/build/utils/archive.js.map +1 -0
- package/build/utils/codemod.d.ts +86 -0
- package/build/utils/codemod.js +161 -0
- package/build/utils/codemod.js.map +1 -0
- package/build/utils/common-tasks.d.ts +1 -0
- package/build/utils/common-tasks.js +49 -0
- package/build/utils/common-tasks.js.map +1 -0
- package/build/utils/development-params.d.ts +13 -0
- package/build/utils/development-params.js +44 -0
- package/build/utils/development-params.js.map +1 -0
- package/build/utils/exec-async-child-process.d.ts +18 -0
- package/build/utils/exec-async-child-process.js +41 -0
- package/build/utils/exec-async-child-process.js.map +1 -0
- package/build/utils/extensions.d.ts +13 -0
- package/build/utils/extensions.js +87 -0
- package/build/utils/extensions.js.map +1 -0
- package/build/utils/file.d.ts +1 -0
- package/build/utils/file.js +7 -0
- package/build/utils/file.js.map +1 -0
- package/build/utils/minis-manifest.d.ts +8 -0
- package/build/utils/minis-manifest.js +67 -0
- package/build/utils/minis-manifest.js.map +1 -0
- package/build/utils/package-manager.d.ts +42 -0
- package/build/utils/package-manager.js +107 -0
- package/build/utils/package-manager.js.map +1 -0
- package/build/utils/patch-package.d.ts +5 -0
- package/build/utils/patch-package.js +76 -0
- package/build/utils/patch-package.js.map +1 -0
- package/build/utils/path.d.ts +1 -0
- package/build/utils/path.js +8 -0
- package/build/utils/path.js.map +1 -0
- package/build/utils/replace-strings-in-template.d.ts +1 -0
- package/build/utils/replace-strings-in-template.js +15 -0
- package/build/utils/replace-strings-in-template.js.map +1 -0
- package/build/utils/semver.d.ts +1 -0
- package/build/utils/semver.js +19 -0
- package/build/utils/semver.js.map +1 -0
- package/build/utils/wrap-with-loading-indicator.d.ts +9 -0
- package/build/utils/wrap-with-loading-indicator.js +16 -0
- package/build/utils/wrap-with-loading-indicator.js.map +1 -0
- package/package.json +102 -0
- package/scripts/graphql-codegen.ts +23 -0
- package/scripts/test-template.ts +66 -0
- package/shipit.snapshot.yml +9 -0
- package/templates/__template_blank/src/App.tsx +24 -0
- package/templates/__template_blank/src/index.tsx +9 -0
- package/templates/__template_common/.eslintignore +1 -0
- package/templates/__template_common/.eslintrc.js +3 -0
- package/templates/__template_common/.graphqlrc.js +1 -0
- package/templates/__template_common/.prettierrc.json +8 -0
- package/templates/__template_common/assets.d.ts +14 -0
- package/templates/__template_common/babel.config.js +5 -0
- package/templates/__template_common/gitignore +5 -0
- package/templates/__template_common/index.tsx +7 -0
- package/templates/__template_common/metro.config.js +5 -0
- package/templates/__template_common/package.json +38 -0
- package/templates/__template_common/src/manifest.json +6 -0
- package/templates/__template_common/tsconfig.json +41 -0
- package/templates/__template_shoppable_posts/src/App.tsx +37 -0
- package/templates/__template_shoppable_posts/src/index.tsx +9 -0
- package/templates/__template_shoppable_videos/src/App.tsx +34 -0
- package/templates/__template_shoppable_videos/src/index.tsx +9 -0
- package/templates/extensions/components/__template_blank/render.tsx +11 -0
- package/templates/extensions/components/__template_bundle-collection/render.tsx +31 -0
- package/templates/extensions/components/__template_bundle-collection/seed.ts +26 -0
- package/templates/extensions/components/__template_bundle-selector/render.tsx +51 -0
- package/templates/extensions/components/__template_bundle-selector/seed.ts +72 -0
- package/templates/extensions/components/__template_default-card/render.tsx +24 -0
- package/templates/extensions/components/__template_default-card/seed.ts +10 -0
- package/templates/extensions/components/__template_image-collection/render.tsx +17 -0
- package/templates/extensions/components/__template_image-collection/seed.ts +70 -0
- package/templates/extensions/components/__template_link/render.tsx +17 -0
- package/templates/extensions/components/__template_link/seed.ts +5 -0
- package/templates/extensions/components/__template_product-offer-card/render.tsx +17 -0
- package/templates/extensions/components/__template_product-offer-card/seed.ts +44 -0
- package/templates/extensions/components/__template_video-collection/render.tsx +17 -0
- package/templates/extensions/components/__template_video-collection/seed.ts +37 -0
- package/templates/extensions/queries/__template_product-page/input.graphql +6 -0
- package/templates/extensions/queries/__template_product-page/input.graphql.d.ts +26 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import jscodeshift from 'jscodeshift';
|
|
4
|
+
import { glob } from '@shopify/cli-kit/node/fs';
|
|
5
|
+
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
6
|
+
import { execAsync } from '../../../../utils/exec-async-child-process.js';
|
|
7
|
+
import { getRunBinCommand } from '../../../../utils/package-manager.js';
|
|
8
|
+
const isImportSpecifier = (specifier) => Boolean(specifier && specifier.type === 'ImportSpecifier');
|
|
9
|
+
const isSafeAreaViewImportSpecifier = (specifier) => Boolean(isImportSpecifier(specifier) && specifier.imported.name === 'SafeAreaView');
|
|
10
|
+
const replaceImports = (fileContents) => {
|
|
11
|
+
const j = jscodeshift.withParser('tsx');
|
|
12
|
+
const root = j(fileContents);
|
|
13
|
+
let foundImportToReplace = false;
|
|
14
|
+
// Find and remove SafeAreaView from 'react-native' and 'react-native-safe-area-context' imports
|
|
15
|
+
root
|
|
16
|
+
.find(j.ImportDeclaration)
|
|
17
|
+
.filter(result => result.node.source.value === 'react-native' ||
|
|
18
|
+
result.node.source.value === 'react-native-safe-area-context')
|
|
19
|
+
.forEach(result => {
|
|
20
|
+
if (!result.node.specifiers?.some(isSafeAreaViewImportSpecifier))
|
|
21
|
+
return;
|
|
22
|
+
foundImportToReplace = true;
|
|
23
|
+
const newSpecifiers = result.node.specifiers?.filter(specifier => !isSafeAreaViewImportSpecifier(specifier)) || [];
|
|
24
|
+
if (newSpecifiers.length === 0) {
|
|
25
|
+
j(result).remove();
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
result.node.specifiers = newSpecifiers;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
// We can bail out early if there wasn't anything to replace
|
|
32
|
+
if (!foundImportToReplace)
|
|
33
|
+
return fileContents;
|
|
34
|
+
// Find or create import declaration for '@shopify/shop-minis-platform-sdk'
|
|
35
|
+
const sdkImport = root
|
|
36
|
+
.find(j.ImportDeclaration)
|
|
37
|
+
.filter(result => result.node.source.value === '@shopify/shop-minis-platform-sdk');
|
|
38
|
+
if (sdkImport.size() === 0) {
|
|
39
|
+
// If there are no imports from '@shopify/shop-minis-platform-sdk', add one
|
|
40
|
+
const importDeclaration = j.importDeclaration([j.importSpecifier(j.identifier('SafeAreaView'))], j.literal('@shopify/shop-minis-platform-sdk'));
|
|
41
|
+
root.get().node.program.body.unshift(importDeclaration);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
sdkImport.forEach(result => {
|
|
45
|
+
if (!result.node.specifiers) {
|
|
46
|
+
result.node.specifiers = [];
|
|
47
|
+
}
|
|
48
|
+
const hasSafeAreaView = result.node.specifiers.some(isSafeAreaViewImportSpecifier);
|
|
49
|
+
if (!hasSafeAreaView) {
|
|
50
|
+
result.node.specifiers.push(j.importSpecifier(j.identifier('SafeAreaView')));
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
// jscodeshift doesn't respect the existing style so try to match it, we will also run prettier so it
|
|
55
|
+
// doesn't matter too much
|
|
56
|
+
return root.toSource({
|
|
57
|
+
quote: 'single',
|
|
58
|
+
objectCurlySpacing: false,
|
|
59
|
+
trailingComma: true,
|
|
60
|
+
reuseWhitespace: true,
|
|
61
|
+
});
|
|
62
|
+
};
|
|
63
|
+
export async function replaceAllSafeAreaImports() {
|
|
64
|
+
const files = await glob('**/*.(js|jsx|ts|tsx)', {
|
|
65
|
+
cwd: path.join(process.cwd(), 'src'),
|
|
66
|
+
absolute: true,
|
|
67
|
+
dot: true,
|
|
68
|
+
followSymbolicLinks: false,
|
|
69
|
+
});
|
|
70
|
+
outputDebug(`Scanning ${files.length} files for SafeAreaView`);
|
|
71
|
+
for (const file of files) {
|
|
72
|
+
try {
|
|
73
|
+
const data = await readFile(file, 'utf8');
|
|
74
|
+
if (!data || !data.includes('SafeAreaView')) {
|
|
75
|
+
outputDebug(`- No SafeAreaView found in ${file}`);
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
outputDebug(`- SafeAreaView potentially found in ${file}`);
|
|
79
|
+
const result = replaceImports(data);
|
|
80
|
+
if (result === data) {
|
|
81
|
+
outputDebug(`- No changes to ${file}`);
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
outputDebug(`- Saving changes to ${file}`);
|
|
85
|
+
await writeFile(file, result, 'utf8');
|
|
86
|
+
const prettierCmd = await getRunBinCommand(`prettier -w ${file}`);
|
|
87
|
+
outputDebug(`- Running ${prettierCmd}`);
|
|
88
|
+
await execAsync({
|
|
89
|
+
cmd: prettierCmd,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
catch (err) {
|
|
93
|
+
throw new Error(`Failed to update ${file}: ${err}`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=replace-safe-area-imports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replace-safe-area-imports.js","sourceRoot":"","sources":["../../../../../src/commands/codemod/releases/v0-0-91/replace-safe-area-imports.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { SemVer } from 'semver';
|
|
4
|
+
/**
|
|
5
|
+
* Move development config of the Mini from index.tsx in the rootpath to shop-minis-runtime
|
|
6
|
+
*
|
|
7
|
+
* Diff: https://github.com/Shopify/shop-minis-cli/compare/v0.0.91...v0.0.92
|
|
8
|
+
*/
|
|
9
|
+
async function applyUpgrade() {
|
|
10
|
+
const indexTsxPath = path.join(process.cwd(), 'index.tsx');
|
|
11
|
+
try {
|
|
12
|
+
fs.writeFileSync(indexTsxPath,
|
|
13
|
+
// for internal codemod we want sandbox to be true so that it matches the value used in starting templates
|
|
14
|
+
// for real partners, we want to set sandbox to false because we assume they are already using their API_KEY
|
|
15
|
+
getIndexFileContent(process.env.INTERNAL_CODEMODS ? 'true' : 'false'), {
|
|
16
|
+
encoding: 'utf-8',
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
// If index.tsx doesn't exist or is unreadable for some reason, we don't need to do anything
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
const getIndexFileContent = (enableApiSandbox) => `import {renderDevelopmentMini} from '@shopify/shop-minis-runtime/src/utils/renderDevelopmentMini'
|
|
24
|
+
|
|
25
|
+
import MiniApp from './src'
|
|
26
|
+
|
|
27
|
+
renderDevelopmentMini(MiniApp.Root, {enableApiSandbox: ${enableApiSandbox}})
|
|
28
|
+
`;
|
|
29
|
+
const releaseNotes = [
|
|
30
|
+
'Move development config of the Mini from index.tsx in the rootpath to shop-minis-runtime',
|
|
31
|
+
];
|
|
32
|
+
const exports = {
|
|
33
|
+
releaseNotes,
|
|
34
|
+
applyUpgrade,
|
|
35
|
+
version: new SemVer('0.0.92'),
|
|
36
|
+
};
|
|
37
|
+
export default exports;
|
|
38
|
+
//# sourceMappingURL=v0-0-92.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v0-0-92.js","sourceRoot":"","sources":["../../../../src/commands/codemod/releases/v0-0-92.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,MAAM,EAAC,MAAM,QAAQ,CAAA;AAI7B;;;;GAIG;AACH,KAAK,UAAU,YAAY;IACzB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAA;IAE1D,IAAI;QACF,EAAE,CAAC,aAAa,CACd,YAAY;QACZ,0GAA0G;QAC1G,4GAA4G;QAC5G,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EACrE;YACE,QAAQ,EAAE,OAAO;SAClB,CACF,CAAA;KACF;IAAC,OAAO,KAAK,EAAE;QACd,4FAA4F;KAC7F;AACH,CAAC;AAED,MAAM,mBAAmB,GAAG,CAC1B,gBAAkC,EAClC,EAAE,CAAC;;;;yDAIoD,gBAAgB;CACxE,CAAA;AAED,MAAM,YAAY,GAAa;IAC7B,0FAA0F;CAC3F,CAAA;AAED,MAAM,OAAO,GAA8B;IACzC,YAAY;IACZ,YAAY;IACZ,OAAO,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC;CAC9B,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const blankAppTsxAfter = "import {StatusBar} from 'react-native'\nimport {Box, Text, SafeAreaView} from '@shopify/shop-minis-platform-sdk'\n\nexport function App() {\n return (\n <Box flex={1} backgroundColor=\"backgrounds-regular\">\n <StatusBar barStyle=\"dark-content\" />\n <SafeAreaView style={{flex: 1, justifyContent: 'center'}}>\n <Text textAlign=\"center\">Fill in the blank</Text>\n </SafeAreaView>\n </Box>\n )\n}\n";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const blankAppTsxAfter = `import {StatusBar} from 'react-native'
|
|
2
|
+
import {Box, Text, SafeAreaView} from '@shopify/shop-minis-platform-sdk'
|
|
3
|
+
|
|
4
|
+
export function App() {
|
|
5
|
+
return (
|
|
6
|
+
<Box flex={1} backgroundColor="backgrounds-regular">
|
|
7
|
+
<StatusBar barStyle="dark-content" />
|
|
8
|
+
<SafeAreaView style={{flex: 1, justifyContent: 'center'}}>
|
|
9
|
+
<Text textAlign="center">Fill in the blank</Text>
|
|
10
|
+
</SafeAreaView>
|
|
11
|
+
</Box>
|
|
12
|
+
)
|
|
13
|
+
}
|
|
14
|
+
`;
|
|
15
|
+
//# sourceMappingURL=App-after.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App-after.js","sourceRoot":"","sources":["../../../../../../src/commands/codemod/releases/v0-0-93/blank/App-after.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;CAa/B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const blankAppTsxBefore = "import {Box, Text, SafeAreaView} from '@shopify/shop-minis-platform-sdk'\n\nexport function App() {\n return (\n <SafeAreaView style={{flex: 1}}>\n <Box flex={1} padding=\"m\" backgroundColor=\"backgrounds-regular\">\n <Text textAlign=\"center\">Fill in the blank</Text>\n </Box>\n </SafeAreaView>\n )\n}\n";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export const blankAppTsxBefore = `import {Box, Text, SafeAreaView} from '@shopify/shop-minis-platform-sdk'
|
|
2
|
+
|
|
3
|
+
export function App() {
|
|
4
|
+
return (
|
|
5
|
+
<SafeAreaView style={{flex: 1}}>
|
|
6
|
+
<Box flex={1} padding="m" backgroundColor="backgrounds-regular">
|
|
7
|
+
<Text textAlign="center">Fill in the blank</Text>
|
|
8
|
+
</Box>
|
|
9
|
+
</SafeAreaView>
|
|
10
|
+
)
|
|
11
|
+
}
|
|
12
|
+
`;
|
|
13
|
+
//# sourceMappingURL=App-before.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App-before.js","sourceRoot":"","sources":["../../../../../../src/commands/codemod/releases/v0-0-93/blank/App-before.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;CAWhC,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './blank/App-before.js';
|
|
2
|
+
export * from './blank/App-after.js';
|
|
3
|
+
export * from './shoppable-posts/App-before.js';
|
|
4
|
+
export * from './shoppable-posts/App-after.js';
|
|
5
|
+
export * from './shoppable-videos/App-before.js';
|
|
6
|
+
export * from './shoppable-videos/App-after.js';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './blank/App-before.js';
|
|
2
|
+
export * from './blank/App-after.js';
|
|
3
|
+
export * from './shoppable-posts/App-before.js';
|
|
4
|
+
export * from './shoppable-posts/App-after.js';
|
|
5
|
+
export * from './shoppable-videos/App-before.js';
|
|
6
|
+
export * from './shoppable-videos/App-after.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/codemod/releases/v0-0-93/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kCAAkC,CAAA;AAChD,cAAc,iCAAiC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const shoppablePostsAppTsxAfter = "import {useMemo} from 'react'\nimport {StatusBar} from 'react-native'\nimport {\n ImageCollectionV2EntryPointItem,\n ShoppablePosts,\n useMinisParams,\n imageCollectionV2EntrypointFixture,\n MINIS_SANDBOX_SHOP_GID,\n SafeAreaView,\n Box,\n} from '@shopify/shop-minis-platform-sdk'\n\nexport function App() {\n const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()\n\n // Fixtures provided in the SDK will get you started without entrypoints.\n // Remove them once you have you have your test store setup with your own entrypoints.\n const entryPoint = _entryPoint || imageCollectionV2EntrypointFixture\n const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID\n\n const shoppablePosts = useMemo(() => {\n const collectionItems =\n entryPoint?.type === 'IMAGE_COLLECTION_V2'\n ? entryPoint.collectionItems\n : []\n return mapEntryPointCollectionItemsToShoppablePosts(collectionItems)\n }, [entryPoint])\n\n return (\n <Box backgroundColor=\"backgrounds-regular\" flex={1}>\n <StatusBar barStyle=\"dark-content\" />\n <SafeAreaView style={{flex: 1}}>\n <ShoppablePosts items={shoppablePosts} shopId={shopGID} />\n </SafeAreaView>\n </Box>\n )\n}\n\nfunction mapEntryPointCollectionItemsToShoppablePosts(\n collectionItems: ImageCollectionV2EntryPointItem[]\n) {\n return collectionItems.map(item => ({\n externalId: item.externalId,\n image: {url: item.image.url},\n description: item.description,\n postedAt: item.displayDate,\n relatedProductsIds: item.relatedProducts.map(\n relatedProduct => relatedProduct.productId\n ),\n }))\n}\n";
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export const shoppablePostsAppTsxAfter = `import {useMemo} from 'react'
|
|
2
|
+
import {StatusBar} from 'react-native'
|
|
3
|
+
import {
|
|
4
|
+
ImageCollectionV2EntryPointItem,
|
|
5
|
+
ShoppablePosts,
|
|
6
|
+
useMinisParams,
|
|
7
|
+
imageCollectionV2EntrypointFixture,
|
|
8
|
+
MINIS_SANDBOX_SHOP_GID,
|
|
9
|
+
SafeAreaView,
|
|
10
|
+
Box,
|
|
11
|
+
} from '@shopify/shop-minis-platform-sdk'
|
|
12
|
+
|
|
13
|
+
export function App() {
|
|
14
|
+
const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()
|
|
15
|
+
|
|
16
|
+
// Fixtures provided in the SDK will get you started without entrypoints.
|
|
17
|
+
// Remove them once you have you have your test store setup with your own entrypoints.
|
|
18
|
+
const entryPoint = _entryPoint || imageCollectionV2EntrypointFixture
|
|
19
|
+
const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID
|
|
20
|
+
|
|
21
|
+
const shoppablePosts = useMemo(() => {
|
|
22
|
+
const collectionItems =
|
|
23
|
+
entryPoint?.type === 'IMAGE_COLLECTION_V2'
|
|
24
|
+
? entryPoint.collectionItems
|
|
25
|
+
: []
|
|
26
|
+
return mapEntryPointCollectionItemsToShoppablePosts(collectionItems)
|
|
27
|
+
}, [entryPoint])
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
<Box backgroundColor="backgrounds-regular" flex={1}>
|
|
31
|
+
<StatusBar barStyle="dark-content" />
|
|
32
|
+
<SafeAreaView style={{flex: 1}}>
|
|
33
|
+
<ShoppablePosts items={shoppablePosts} shopId={shopGID} />
|
|
34
|
+
</SafeAreaView>
|
|
35
|
+
</Box>
|
|
36
|
+
)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function mapEntryPointCollectionItemsToShoppablePosts(
|
|
40
|
+
collectionItems: ImageCollectionV2EntryPointItem[]
|
|
41
|
+
) {
|
|
42
|
+
return collectionItems.map(item => ({
|
|
43
|
+
externalId: item.externalId,
|
|
44
|
+
image: {url: item.image.url},
|
|
45
|
+
description: item.description,
|
|
46
|
+
postedAt: item.displayDate,
|
|
47
|
+
relatedProductsIds: item.relatedProducts.map(
|
|
48
|
+
relatedProduct => relatedProduct.productId
|
|
49
|
+
),
|
|
50
|
+
}))
|
|
51
|
+
}
|
|
52
|
+
`;
|
|
53
|
+
//# sourceMappingURL=App-after.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App-after.js","sourceRoot":"","sources":["../../../../../../src/commands/codemod/releases/v0-0-93/shoppable-posts/App-after.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDxC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const shoppablePostsAppTsxBefore = "import {\n ImageCollectionV2EntryPointItem,\n ShoppablePosts,\n useMinisParams,\n imageCollectionV2EntrypointFixture,\n MINIS_SANDBOX_SHOP_GID,\n} from '@shopify/shop-minis-platform-sdk'\nimport {useMemo} from 'react'\n\nexport function App() {\n const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()\n\n // Fixtures provided in the SDK will get you started without entrypoints.\n // Remove them once you have you have your test store setup with your own entrypoints.\n const entryPoint = _entryPoint || imageCollectionV2EntrypointFixture\n const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID\n\n const shoppablePosts = useMemo(() => {\n const collectionItems =\n entryPoint?.type === 'IMAGE_COLLECTION_V2'\n ? entryPoint.collectionItems\n : []\n return mapEntryPointCollectionItemsToShoppablePosts(collectionItems)\n }, [entryPoint])\n\n return <ShoppablePosts items={shoppablePosts} shopId={shopGID} />\n}\n\nfunction mapEntryPointCollectionItemsToShoppablePosts(\n collectionItems: ImageCollectionV2EntryPointItem[]\n) {\n return collectionItems.map(item => ({\n externalId: item.externalId,\n image: {url: item.image.url},\n description: item.description,\n postedAt: item.displayDate,\n relatedProductsIds: item.relatedProducts.map(\n relatedProduct => relatedProduct.productId\n ),\n }))\n}\n";
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export const shoppablePostsAppTsxBefore = `import {
|
|
2
|
+
ImageCollectionV2EntryPointItem,
|
|
3
|
+
ShoppablePosts,
|
|
4
|
+
useMinisParams,
|
|
5
|
+
imageCollectionV2EntrypointFixture,
|
|
6
|
+
MINIS_SANDBOX_SHOP_GID,
|
|
7
|
+
} from '@shopify/shop-minis-platform-sdk'
|
|
8
|
+
import {useMemo} from 'react'
|
|
9
|
+
|
|
10
|
+
export function App() {
|
|
11
|
+
const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()
|
|
12
|
+
|
|
13
|
+
// Fixtures provided in the SDK will get you started without entrypoints.
|
|
14
|
+
// Remove them once you have you have your test store setup with your own entrypoints.
|
|
15
|
+
const entryPoint = _entryPoint || imageCollectionV2EntrypointFixture
|
|
16
|
+
const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID
|
|
17
|
+
|
|
18
|
+
const shoppablePosts = useMemo(() => {
|
|
19
|
+
const collectionItems =
|
|
20
|
+
entryPoint?.type === 'IMAGE_COLLECTION_V2'
|
|
21
|
+
? entryPoint.collectionItems
|
|
22
|
+
: []
|
|
23
|
+
return mapEntryPointCollectionItemsToShoppablePosts(collectionItems)
|
|
24
|
+
}, [entryPoint])
|
|
25
|
+
|
|
26
|
+
return <ShoppablePosts items={shoppablePosts} shopId={shopGID} />
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function mapEntryPointCollectionItemsToShoppablePosts(
|
|
30
|
+
collectionItems: ImageCollectionV2EntryPointItem[]
|
|
31
|
+
) {
|
|
32
|
+
return collectionItems.map(item => ({
|
|
33
|
+
externalId: item.externalId,
|
|
34
|
+
image: {url: item.image.url},
|
|
35
|
+
description: item.description,
|
|
36
|
+
postedAt: item.displayDate,
|
|
37
|
+
relatedProductsIds: item.relatedProducts.map(
|
|
38
|
+
relatedProduct => relatedProduct.productId
|
|
39
|
+
),
|
|
40
|
+
}))
|
|
41
|
+
}
|
|
42
|
+
`;
|
|
43
|
+
//# sourceMappingURL=App-before.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App-before.js","sourceRoot":"","sources":["../../../../../../src/commands/codemod/releases/v0-0-93/shoppable-posts/App-before.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCzC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const shoppableVideosAppTsxAfter = "import {useMemo} from 'react'\nimport {StatusBar} from 'react-native'\nimport {\n ShoppableVideos,\n VideoCollectionV2EntryPointItem,\n useMinisParams,\n videoCollectionV2EntrypointFixture,\n MINIS_SANDBOX_SHOP_GID,\n Box,\n} from '@shopify/shop-minis-platform-sdk'\n\nexport function App() {\n const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()\n\n // Fixtures provided in the SDK will get you started without entrypoints.\n // Remove them once you have you have your test store setup with your own entrypoints.\n const entryPoint = _entryPoint || videoCollectionV2EntrypointFixture\n const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID\n\n const shoppableVideos = useMemo(() => {\n const collectionItems =\n entryPoint?.type === 'VIDEO_COLLECTION_V2'\n ? entryPoint.collectionItems\n : []\n return mapEntryPointCollectionItemsToShoppableVideos(collectionItems)\n }, [entryPoint])\n\n return (\n <Box backgroundColor=\"foregrounds-contrasting-inverted\" flex={1}>\n <StatusBar barStyle=\"light-content\" />\n <ShoppableVideos items={shoppableVideos} shopId={shopGID} />\n </Box>\n )\n}\n\nfunction mapEntryPointCollectionItemsToShoppableVideos(\n collectionItems: VideoCollectionV2EntryPointItem[]\n) {\n return collectionItems.map(item => ({\n externalId: item.externalId,\n videoUrl: item.video.embeddedUrl,\n fallbackImageUrl: item.fallbackImage.url,\n relatedProductsIds: item.relatedProducts.map(\n relatedProduct => relatedProduct.productId\n ),\n }))\n}\n";
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export const shoppableVideosAppTsxAfter = `import {useMemo} from 'react'
|
|
2
|
+
import {StatusBar} from 'react-native'
|
|
3
|
+
import {
|
|
4
|
+
ShoppableVideos,
|
|
5
|
+
VideoCollectionV2EntryPointItem,
|
|
6
|
+
useMinisParams,
|
|
7
|
+
videoCollectionV2EntrypointFixture,
|
|
8
|
+
MINIS_SANDBOX_SHOP_GID,
|
|
9
|
+
Box,
|
|
10
|
+
} from '@shopify/shop-minis-platform-sdk'
|
|
11
|
+
|
|
12
|
+
export function App() {
|
|
13
|
+
const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()
|
|
14
|
+
|
|
15
|
+
// Fixtures provided in the SDK will get you started without entrypoints.
|
|
16
|
+
// Remove them once you have you have your test store setup with your own entrypoints.
|
|
17
|
+
const entryPoint = _entryPoint || videoCollectionV2EntrypointFixture
|
|
18
|
+
const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID
|
|
19
|
+
|
|
20
|
+
const shoppableVideos = useMemo(() => {
|
|
21
|
+
const collectionItems =
|
|
22
|
+
entryPoint?.type === 'VIDEO_COLLECTION_V2'
|
|
23
|
+
? entryPoint.collectionItems
|
|
24
|
+
: []
|
|
25
|
+
return mapEntryPointCollectionItemsToShoppableVideos(collectionItems)
|
|
26
|
+
}, [entryPoint])
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<Box backgroundColor="foregrounds-contrasting-inverted" flex={1}>
|
|
30
|
+
<StatusBar barStyle="light-content" />
|
|
31
|
+
<ShoppableVideos items={shoppableVideos} shopId={shopGID} />
|
|
32
|
+
</Box>
|
|
33
|
+
)
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
function mapEntryPointCollectionItemsToShoppableVideos(
|
|
37
|
+
collectionItems: VideoCollectionV2EntryPointItem[]
|
|
38
|
+
) {
|
|
39
|
+
return collectionItems.map(item => ({
|
|
40
|
+
externalId: item.externalId,
|
|
41
|
+
videoUrl: item.video.embeddedUrl,
|
|
42
|
+
fallbackImageUrl: item.fallbackImage.url,
|
|
43
|
+
relatedProductsIds: item.relatedProducts.map(
|
|
44
|
+
relatedProduct => relatedProduct.productId
|
|
45
|
+
),
|
|
46
|
+
}))
|
|
47
|
+
}
|
|
48
|
+
`;
|
|
49
|
+
//# sourceMappingURL=App-after.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App-after.js","sourceRoot":"","sources":["../../../../../../src/commands/codemod/releases/v0-0-93/shoppable-videos/App-after.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CzC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const shoppableVideosAppTsxBefore = "import {\n ShoppableVideos,\n VideoCollectionV2EntryPointItem,\n useMinisParams,\n videoCollectionV2EntrypointFixture,\n MINIS_SANDBOX_SHOP_GID,\n} from '@shopify/shop-minis-platform-sdk'\nimport {useMemo} from 'react'\n\nexport function App() {\n const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()\n\n // Fixtures provided in the SDK will get you started without entrypoints.\n // Remove them once you have you have your test store setup with your own entrypoints.\n const entryPoint = _entryPoint || videoCollectionV2EntrypointFixture\n const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID\n\n const shoppableVideos = useMemo(() => {\n const collectionItems =\n entryPoint?.type === 'VIDEO_COLLECTION_V2'\n ? entryPoint.collectionItems\n : []\n return mapEntryPointCollectionItemsToShoppableVideos(collectionItems)\n }, [entryPoint])\n\n return <ShoppableVideos items={shoppableVideos} shopId={shopGID} />\n}\n\nfunction mapEntryPointCollectionItemsToShoppableVideos(\n collectionItems: VideoCollectionV2EntryPointItem[]\n) {\n return collectionItems.map(item => ({\n externalId: item.externalId,\n videoUrl: item.video.embeddedUrl,\n fallbackImageUrl: item.fallbackImage.url,\n relatedProductsIds: item.relatedProducts.map(\n relatedProduct => relatedProduct.productId\n ),\n }))\n}\n";
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export const shoppableVideosAppTsxBefore = `import {
|
|
2
|
+
ShoppableVideos,
|
|
3
|
+
VideoCollectionV2EntryPointItem,
|
|
4
|
+
useMinisParams,
|
|
5
|
+
videoCollectionV2EntrypointFixture,
|
|
6
|
+
MINIS_SANDBOX_SHOP_GID,
|
|
7
|
+
} from '@shopify/shop-minis-platform-sdk'
|
|
8
|
+
import {useMemo} from 'react'
|
|
9
|
+
|
|
10
|
+
export function App() {
|
|
11
|
+
const {entryPointParams, entryPoint: _entryPoint} = useMinisParams()
|
|
12
|
+
|
|
13
|
+
// Fixtures provided in the SDK will get you started without entrypoints.
|
|
14
|
+
// Remove them once you have you have your test store setup with your own entrypoints.
|
|
15
|
+
const entryPoint = _entryPoint || videoCollectionV2EntrypointFixture
|
|
16
|
+
const shopGID = entryPointParams?.shopGID || MINIS_SANDBOX_SHOP_GID
|
|
17
|
+
|
|
18
|
+
const shoppableVideos = useMemo(() => {
|
|
19
|
+
const collectionItems =
|
|
20
|
+
entryPoint?.type === 'VIDEO_COLLECTION_V2'
|
|
21
|
+
? entryPoint.collectionItems
|
|
22
|
+
: []
|
|
23
|
+
return mapEntryPointCollectionItemsToShoppableVideos(collectionItems)
|
|
24
|
+
}, [entryPoint])
|
|
25
|
+
|
|
26
|
+
return <ShoppableVideos items={shoppableVideos} shopId={shopGID} />
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function mapEntryPointCollectionItemsToShoppableVideos(
|
|
30
|
+
collectionItems: VideoCollectionV2EntryPointItem[]
|
|
31
|
+
) {
|
|
32
|
+
return collectionItems.map(item => ({
|
|
33
|
+
externalId: item.externalId,
|
|
34
|
+
videoUrl: item.video.embeddedUrl,
|
|
35
|
+
fallbackImageUrl: item.fallbackImage.url,
|
|
36
|
+
relatedProductsIds: item.relatedProducts.map(
|
|
37
|
+
relatedProduct => relatedProduct.productId
|
|
38
|
+
),
|
|
39
|
+
}))
|
|
40
|
+
}
|
|
41
|
+
`;
|
|
42
|
+
//# sourceMappingURL=App-before.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App-before.js","sourceRoot":"","sources":["../../../../../../src/commands/codemod/releases/v0-0-93/shoppable-videos/App-before.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC1C,CAAA"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { SemVer } from 'semver';
|
|
4
|
+
import { blankAppTsxBefore, blankAppTsxAfter, shoppablePostsAppTsxBefore, shoppablePostsAppTsxAfter, shoppableVideosAppTsxBefore, shoppableVideosAppTsxAfter, } from './v0-0-93/index.js';
|
|
5
|
+
/**
|
|
6
|
+
* Update the templates to use SafeAreaView correctly
|
|
7
|
+
*
|
|
8
|
+
* Diff: https://github.com/Shopify/shop-minis-cli/compare/v0.0.92...v0.0.93
|
|
9
|
+
*/
|
|
10
|
+
async function applyUpgrade() {
|
|
11
|
+
const existingAppTsxPath = path.join(process.cwd(), 'src', 'App.tsx');
|
|
12
|
+
let existingAppTsxContent = null;
|
|
13
|
+
let newAppTsxContent = null;
|
|
14
|
+
try {
|
|
15
|
+
existingAppTsxContent = await readFile(existingAppTsxPath, {
|
|
16
|
+
encoding: 'utf-8',
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
// If the App.tsx file doesn't exist or is unreadable for some reason, we don't need to do anything
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
// Only apply the upgrade if the App.tsx file is still one of the old templates
|
|
24
|
+
if (existingAppTsxContent === blankAppTsxBefore) {
|
|
25
|
+
newAppTsxContent = blankAppTsxAfter;
|
|
26
|
+
}
|
|
27
|
+
else if (existingAppTsxContent === shoppablePostsAppTsxBefore) {
|
|
28
|
+
newAppTsxContent = shoppablePostsAppTsxAfter;
|
|
29
|
+
}
|
|
30
|
+
else if (existingAppTsxContent === shoppableVideosAppTsxBefore) {
|
|
31
|
+
newAppTsxContent = shoppableVideosAppTsxAfter;
|
|
32
|
+
}
|
|
33
|
+
if (newAppTsxContent) {
|
|
34
|
+
await writeFile(existingAppTsxPath, newAppTsxContent, {
|
|
35
|
+
encoding: 'utf-8',
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const releaseNotes = [
|
|
40
|
+
'Ensure the templates use SafeAreaView correctly',
|
|
41
|
+
];
|
|
42
|
+
const exports = {
|
|
43
|
+
releaseNotes,
|
|
44
|
+
applyUpgrade,
|
|
45
|
+
version: new SemVer('0.0.93'),
|
|
46
|
+
};
|
|
47
|
+
export default exports;
|
|
48
|
+
//# sourceMappingURL=v0-0-93.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v0-0-93.js","sourceRoot":"","sources":["../../../../src/commands/codemod/releases/v0-0-93.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAA;AACpD,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,MAAM,EAAC,MAAM,QAAQ,CAAA;AAG7B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,oBAAoB,CAAA;AAE3B;;;;GAIG;AACH,KAAK,UAAU,YAAY;IACzB,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IACrE,IAAI,qBAAqB,GAAG,IAAI,CAAA;IAChC,IAAI,gBAAgB,GAAG,IAAI,CAAA;IAE3B,IAAI;QACF,qBAAqB,GAAG,MAAM,QAAQ,CAAC,kBAAkB,EAAE;YACzD,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAA;KACH;IAAC,OAAO,KAAK,EAAE;QACd,mGAAmG;QACnG,OAAM;KACP;IAED,+EAA+E;IAC/E,IAAI,qBAAqB,KAAK,iBAAiB,EAAE;QAC/C,gBAAgB,GAAG,gBAAgB,CAAA;KACpC;SAAM,IAAI,qBAAqB,KAAK,0BAA0B,EAAE;QAC/D,gBAAgB,GAAG,yBAAyB,CAAA;KAC7C;SAAM,IAAI,qBAAqB,KAAK,2BAA2B,EAAE;QAChE,gBAAgB,GAAG,0BAA0B,CAAA;KAC9C;IAED,IAAI,gBAAgB,EAAE;QACpB,MAAM,SAAS,CAAC,kBAAkB,EAAE,gBAAgB,EAAE;YACpD,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAA;KACH;AACH,CAAC;AAED,MAAM,YAAY,GAAa;IAC7B,iDAAiD;CAClD,CAAA;AAED,MAAM,OAAO,GAA8B;IACzC,YAAY;IACZ,YAAY;IACZ,OAAO,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC;CAC9B,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SemVer } from 'semver';
|
|
2
|
+
import { migrateToNewTheme } from './migrate-to-new-theme.js';
|
|
3
|
+
import { removeThemeFromConfig } from './remove-theme-from-config.js';
|
|
4
|
+
/**
|
|
5
|
+
* Update partner code to use the new theme
|
|
6
|
+
*
|
|
7
|
+
* Diff: https://github.com/Shopify/shop-minis-cli/compare/v0.0.96...v0.0.97
|
|
8
|
+
*/
|
|
9
|
+
async function applyUpgrade() {
|
|
10
|
+
await removeThemeFromConfig();
|
|
11
|
+
await migrateToNewTheme();
|
|
12
|
+
}
|
|
13
|
+
const releaseNotes = ['Migrate to the new theme used in Shop'];
|
|
14
|
+
const exports = {
|
|
15
|
+
releaseNotes,
|
|
16
|
+
applyUpgrade,
|
|
17
|
+
version: new SemVer('0.0.97'),
|
|
18
|
+
};
|
|
19
|
+
export default exports;
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/codemod/releases/v0-0-97/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,QAAQ,CAAA;AAI7B,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAA;AAEnE;;;;GAIG;AACH,KAAK,UAAU,YAAY;IACzB,MAAM,qBAAqB,EAAE,CAAA;IAC7B,MAAM,iBAAiB,EAAE,CAAA;AAC3B,CAAC;AAED,MAAM,YAAY,GAAa,CAAC,uCAAuC,CAAC,CAAA;AAExE,MAAM,OAAO,GAA8B;IACzC,YAAY;IACZ,YAAY;IACZ,OAAO,EAAE,IAAI,MAAM,CAAC,QAAQ,CAAC;CAC9B,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function migrateToNewTheme(): Promise<void>;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { glob } from '@shopify/cli-kit/node/fs';
|
|
4
|
+
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
5
|
+
const upgradeFileToNewTheme = (fileContents) => {
|
|
6
|
+
const result = fileContents
|
|
7
|
+
.replace(/(\s+)borderRadius=\{16\}/g, '$1borderRadius="l"')
|
|
8
|
+
.replace(/(\s+)p="(.+)"/g, '$1padding="$2"')
|
|
9
|
+
.replace(/(\s+)pt="(.+)"/g, '$1paddingTop="$2"')
|
|
10
|
+
.replace(/(\s+)pb="(.+)"/g, '$1paddingBottom="$2"')
|
|
11
|
+
.replace(/(\s+)px="(.+)"/g, '$1paddingHorizontal="$2"')
|
|
12
|
+
.replace(/(\s+)py="(.+)"/g, '$1paddingVertical="$2"')
|
|
13
|
+
.replace(/(\s+)mt="(.+)"/g, '$1marginTop="$2"')
|
|
14
|
+
.replace(/(\s+)mb="(.+)"/g, '$1marginBottom="$2"')
|
|
15
|
+
.replace(/(\s+)mx="(.+)"/g, '$1marginHorizontal="$2"')
|
|
16
|
+
.replace(/(\s+)my="(.+)"/g, '$1marginVertical="$2"')
|
|
17
|
+
// This could be smarter but it doesn't need to be
|
|
18
|
+
.replace(/<Box backgroundColor="backgrounds-overlay-secondary" flex=\{1\}>/g, "<Box flex={1} style={{ backgroundColor: 'rgba(203, 203, 202, 0.5)' }}>")
|
|
19
|
+
.replace(/(\s+)color="foregrounds-regular-inverse"/g, '$1color="foregrounds-contrasting"');
|
|
20
|
+
return result;
|
|
21
|
+
};
|
|
22
|
+
export async function migrateToNewTheme() {
|
|
23
|
+
const files = await glob('**/*.(tsx)', {
|
|
24
|
+
cwd: path.join(process.cwd(), 'src'),
|
|
25
|
+
absolute: true,
|
|
26
|
+
dot: true,
|
|
27
|
+
followSymbolicLinks: false,
|
|
28
|
+
});
|
|
29
|
+
outputDebug(`Scanning ${files.length} files for theme changes`);
|
|
30
|
+
for (const file of files) {
|
|
31
|
+
try {
|
|
32
|
+
const data = await readFile(file, 'utf8');
|
|
33
|
+
outputDebug(`- Processing ${file}`);
|
|
34
|
+
const result = upgradeFileToNewTheme(data);
|
|
35
|
+
if (result === data) {
|
|
36
|
+
outputDebug(`- No changes to ${file}`);
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
outputDebug(`- Saving changes to ${file}`);
|
|
40
|
+
await writeFile(file, result, 'utf8');
|
|
41
|
+
}
|
|
42
|
+
catch (err) {
|
|
43
|
+
throw new Error(`Failed to update ${file}: ${err}`);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=migrate-to-new-theme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrate-to-new-theme.js","sourceRoot":"","sources":["../../../../../src/commands/codemod/releases/v0-0-97/migrate-to-new-theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAA;AACpD,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,IAAI,EAAC,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,MAAM,qBAAqB,GAAG,CAAC,YAAoB,EAAE,EAAE;IACrD,MAAM,MAAM,GAAG,YAAY;SACxB,OAAO,CAAC,2BAA2B,EAAE,oBAAoB,CAAC;SAC1D,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;SAC3C,OAAO,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;SAC/C,OAAO,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;SAClD,OAAO,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;SACtD,OAAO,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;SACpD,OAAO,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;SAC9C,OAAO,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;SACjD,OAAO,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;SACrD,OAAO,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;QACpD,kDAAkD;SACjD,OAAO,CACN,mEAAmE,EACnE,wEAAwE,CACzE;SACA,OAAO,CACN,2CAA2C,EAC3C,mCAAmC,CACpC,CAAA;IAEH,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,KAAK,GAAa,MAAM,IAAI,CAAC,YAAY,EAAE;QAC/C,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC;QACpC,QAAQ,EAAE,IAAI;QACd,GAAG,EAAE,IAAI;QACT,mBAAmB,EAAE,KAAK;KAC3B,CAAC,CAAA;IAEF,WAAW,CAAC,YAAY,KAAK,CAAC,MAAM,0BAA0B,CAAC,CAAA;IAE/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI;YACF,MAAM,IAAI,GAAW,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YAEjD,WAAW,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAA;YAEnC,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAA;YAE1C,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,WAAW,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAA;gBACtC,SAAQ;aACT;YAED,WAAW,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;YAE1C,MAAM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;SACtC;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,KAAK,GAAG,EAAE,CAAC,CAAA;SACpD;KACF;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function removeThemeFromConfig(): Promise<void>;
|