@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,42 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import envinfo from 'envinfo';
|
|
3
|
+
import { wrapWithLoadingIndicator } from '../../utils/wrap-with-loading-indicator.js';
|
|
4
|
+
import { getPackageVersion } from '../../utils/package-manager.js';
|
|
5
|
+
export const command = new Command()
|
|
6
|
+
.name('info')
|
|
7
|
+
.description('Get relevant version info about OS, toolchain and libraries')
|
|
8
|
+
.option('--verbose', 'print debugging messages')
|
|
9
|
+
.action(async () => {
|
|
10
|
+
const infoPromise = envinfo.run({
|
|
11
|
+
System: ['OS', 'CPU', 'Memory', 'Shell'],
|
|
12
|
+
Binaries: ['Node', 'Yarn', 'npm', 'Watchman'],
|
|
13
|
+
IDEs: ['Xcode', 'Android Studio'],
|
|
14
|
+
Managers: ['CocoaPods'],
|
|
15
|
+
Languages: ['Java'],
|
|
16
|
+
SDKs: ['iOS SDK', 'Android SDK'],
|
|
17
|
+
});
|
|
18
|
+
// we can not use envinfo to fetch these because some of these packages are not direct dependencies of each mini
|
|
19
|
+
// some are transient dependencies via @shopify/shop-minis-runtime
|
|
20
|
+
const packageVersionPromises = [
|
|
21
|
+
getPackageVersion('@shopify/shop-minis-cli'),
|
|
22
|
+
getPackageVersion('@shopify/shop-minis-platform-sdk'),
|
|
23
|
+
getPackageVersion('@shopify/shop-minis-runtime'),
|
|
24
|
+
getPackageVersion('react'),
|
|
25
|
+
getPackageVersion('react-native'),
|
|
26
|
+
];
|
|
27
|
+
const [info, cliVersion, sdkVersion, runtimeVersion, reactVersion, reactNativeVersion,] = await wrapWithLoadingIndicator(Promise.all([infoPromise, ...packageVersionPromises]), {
|
|
28
|
+
loadingMessage: 'Fetching system information...',
|
|
29
|
+
successMessage: 'System information loaded',
|
|
30
|
+
});
|
|
31
|
+
console.log(`${info} Packages:`);
|
|
32
|
+
console.log(` @shopify/shop-minis-cli: ${cliVersion}`);
|
|
33
|
+
console.log(` @shopify/shop-minis-platform-sdk: ${sdkVersion}`);
|
|
34
|
+
console.log(` @shopify/shop-minis-runtime: ${runtimeVersion}`);
|
|
35
|
+
console.log(` react: ${reactVersion}`);
|
|
36
|
+
console.log(` react-native: ${reactNativeVersion}`);
|
|
37
|
+
console.log(''); // empty line at the end
|
|
38
|
+
});
|
|
39
|
+
export async function loadCommand(parentProgram) {
|
|
40
|
+
parentProgram.addCommand(command);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/info/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,EAAC,wBAAwB,EAAC,MAAM,4CAA4C,CAAA;AACnF,OAAO,EAAC,iBAAiB,EAAC,MAAM,gCAAgC,CAAA;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;KACjC,IAAI,CAAC,MAAM,CAAC;KACZ,WAAW,CAAC,6DAA6D,CAAC;KAC1E,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;QAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC;QACxC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC;QAC7C,IAAI,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC;QACjC,QAAQ,EAAE,CAAC,WAAW,CAAC;QACvB,SAAS,EAAE,CAAC,MAAM,CAAC;QACnB,IAAI,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;KACjC,CAAC,CAAA;IAEF,gHAAgH;IAChH,kEAAkE;IAClE,MAAM,sBAAsB,GAAG;QAC7B,iBAAiB,CAAC,yBAAyB,CAAC;QAC5C,iBAAiB,CAAC,kCAAkC,CAAC;QACrD,iBAAiB,CAAC,6BAA6B,CAAC;QAChD,iBAAiB,CAAC,OAAO,CAAC;QAC1B,iBAAiB,CAAC,cAAc,CAAC;KACzB,CAAA;IAEV,MAAM,CACJ,IAAI,EACJ,UAAU,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,kBAAkB,EACnB,GAAG,MAAM,wBAAwB,CAChC,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,sBAAsB,CAAC,CAAC,EACrD;QACE,cAAc,EAAE,gCAAgC;QAChD,cAAc,EAAE,2BAA2B;KAC5C,CACF,CAAA;IAED,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,aAAa,CAAC,CAAA;IACjC,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAA;IACzD,OAAO,CAAC,GAAG,CAAC,yCAAyC,UAAU,EAAE,CAAC,CAAA;IAClE,OAAO,CAAC,GAAG,CAAC,oCAAoC,cAAc,EAAE,CAAC,CAAA;IACjE,OAAO,CAAC,GAAG,CAAC,cAAc,YAAY,EAAE,CAAC,CAAA;IACzC,OAAO,CAAC,GAAG,CAAC,qBAAqB,kBAAkB,EAAE,CAAC,CAAA;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA,CAAC,wBAAwB;AAC1C,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,aAAsB;IACtD,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import fs from 'node:fs';
|
|
3
|
+
import { Command } from 'commander';
|
|
4
|
+
import prompts from 'prompts';
|
|
5
|
+
import { wrapWithLoadingIndicator } from '../../utils/wrap-with-loading-indicator.js';
|
|
6
|
+
import { fetchMini } from '../../data/mini.js';
|
|
7
|
+
import { SHOP_MINIS_ADMIN_API_KEY } from '../config.js';
|
|
8
|
+
import { acceptInvitation } from '../../data/accept-invitation.js';
|
|
9
|
+
import { getMiniBasePath } from '../../utils/path.js';
|
|
10
|
+
function onCancel() {
|
|
11
|
+
console.log('\nCancelled setting up a new Shop Mini\n');
|
|
12
|
+
process.exit(0);
|
|
13
|
+
}
|
|
14
|
+
export function loadCommand(parentProgram) {
|
|
15
|
+
const command = new Command()
|
|
16
|
+
.name('setup')
|
|
17
|
+
.description('Set up a new Shop Mini')
|
|
18
|
+
.action(async () => {
|
|
19
|
+
const { confirmInvitationEmail } = await prompts.prompt({
|
|
20
|
+
type: 'confirm',
|
|
21
|
+
name: 'confirmInvitationEmail',
|
|
22
|
+
message: 'To begin the setup process, please confirm that you have received an invitation email from the Shop Minis team. If you have not, please apply to join the early access program at https://shop.app/minis/apply/.',
|
|
23
|
+
}, { onCancel });
|
|
24
|
+
if (!confirmInvitationEmail) {
|
|
25
|
+
onCancel();
|
|
26
|
+
}
|
|
27
|
+
if (SHOP_MINIS_ADMIN_API_KEY) {
|
|
28
|
+
const { confirmOverwrite } = await prompts.prompt({
|
|
29
|
+
type: 'confirm',
|
|
30
|
+
name: 'confirmOverwrite',
|
|
31
|
+
message: 'This command will overwrite your exiting Shop Minis Admin API Key. If you have an existing .env file, it will be backed up as .env.bak. Do you want to continue?',
|
|
32
|
+
}, { onCancel });
|
|
33
|
+
if (!confirmOverwrite) {
|
|
34
|
+
onCancel();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const response = await prompts.prompt({
|
|
38
|
+
type: 'text',
|
|
39
|
+
name: 'invitationCode',
|
|
40
|
+
message: `Provide the invitation code from the welcome email:`,
|
|
41
|
+
}, { onCancel });
|
|
42
|
+
const token = await wrapWithLoadingIndicator(acceptInvitation({ code: response.invitationCode }), {
|
|
43
|
+
loadingMessage: 'Fetching API key...',
|
|
44
|
+
successMessage: 'API key fetched',
|
|
45
|
+
});
|
|
46
|
+
const envFilePath = path.join(process.cwd(), '.env');
|
|
47
|
+
if (fs.existsSync(envFilePath)) {
|
|
48
|
+
fs.copyFileSync(envFilePath, `${envFilePath}.bak`);
|
|
49
|
+
}
|
|
50
|
+
fs.writeFileSync(envFilePath, `SHOP_MINIS_API_KEY=${token}\n`, {
|
|
51
|
+
encoding: 'utf-8',
|
|
52
|
+
});
|
|
53
|
+
try {
|
|
54
|
+
const miniInfo = await fetchMini({
|
|
55
|
+
Authorization: `Bearer ${token}`,
|
|
56
|
+
});
|
|
57
|
+
if (miniInfo) {
|
|
58
|
+
const manifestJsonPath = path.join(getMiniBasePath(), 'src/manifest.json');
|
|
59
|
+
const manifestJsonString = fs.readFileSync(manifestJsonPath, {
|
|
60
|
+
encoding: 'utf-8',
|
|
61
|
+
});
|
|
62
|
+
const manifestJson = JSON.parse(manifestJsonString) || {};
|
|
63
|
+
manifestJson.handle = miniInfo.handle;
|
|
64
|
+
fs.writeFileSync(manifestJsonPath, `${JSON.stringify(manifestJson, null, 2)}\n`, {
|
|
65
|
+
encoding: 'utf-8',
|
|
66
|
+
});
|
|
67
|
+
console.log('Your Shop Mini has been set up.');
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
if (error?.response?.status === 401) {
|
|
72
|
+
console.error('Invalid invitation code.');
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
console.error('An error occurred.');
|
|
76
|
+
console.error(error);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
parentProgram.addCommand(command);
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/setup/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,MAAM,SAAS,CAAA;AAExB,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,OAAO,MAAM,SAAS,CAAA;AAE7B,OAAO,EAAC,wBAAwB,EAAC,MAAM,4CAA4C,CAAA;AACnF,OAAO,EAAC,SAAS,EAAC,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAC,wBAAwB,EAAC,MAAM,cAAc,CAAA;AACrD,OAAO,EAAC,gBAAgB,EAAC,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAC,eAAe,EAAC,MAAM,qBAAqB,CAAA;AAEnD,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;IACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,aAAsB;IAChD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;SAC1B,IAAI,CAAC,OAAO,CAAC;SACb,WAAW,CAAC,wBAAwB,CAAC;SACrC,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,EAAC,sBAAsB,EAAC,GAAG,MAAM,OAAO,CAAC,MAAM,CACnD;YACE,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EACL,kNAAkN;SACrN,EACD,EAAC,QAAQ,EAAC,CACX,CAAA;QAED,IAAI,CAAC,sBAAsB,EAAE;YAC3B,QAAQ,EAAE,CAAA;SACX;QAED,IAAI,wBAAwB,EAAE;YAC5B,MAAM,EAAC,gBAAgB,EAAC,GAAG,MAAM,OAAO,CAAC,MAAM,CAC7C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EACL,kKAAkK;aACrK,EACD,EAAC,QAAQ,EAAC,CACX,CAAA;YAED,IAAI,CAAC,gBAAgB,EAAE;gBACrB,QAAQ,EAAE,CAAA;aACX;SACF;QAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CACnC;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,qDAAqD;SAC/D,EACD,EAAC,QAAQ,EAAC,CACX,CAAA;QAED,MAAM,KAAK,GAAG,MAAM,wBAAwB,CAC1C,gBAAgB,CAAC,EAAC,IAAI,EAAE,QAAQ,CAAC,cAAc,EAAC,CAAC,EACjD;YACE,cAAc,EAAE,qBAAqB;YACrC,cAAc,EAAE,iBAAiB;SAClC,CACF,CAAA;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAA;QACpD,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;YAC9B,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,GAAG,WAAW,MAAM,CAAC,CAAA;SACnD;QAED,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,sBAAsB,KAAK,IAAI,EAAE;YAC7D,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAA;QAEF,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC;gBAC/B,aAAa,EAAE,UAAU,KAAK,EAAE;aACjC,CAAC,CAAA;YAEF,IAAI,QAAQ,EAAE;gBACZ,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAChC,eAAe,EAAE,EACjB,mBAAmB,CACpB,CAAA;gBACD,MAAM,kBAAkB,GAAG,EAAE,CAAC,YAAY,CAAC,gBAAgB,EAAE;oBAC3D,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAA;gBACF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA;gBACzD,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;gBAErC,EAAE,CAAC,aAAa,CACd,gBAAgB,EAChB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAC5C;oBACE,QAAQ,EAAE,OAAO;iBAClB,CACF,CAAA;gBAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAA;aAC/C;SACF;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE;gBACnC,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;aAC1C;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;gBACnC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;aACrB;SACF;IACH,CAAC,CAAC,CAAA;IAEJ,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const SUBMISSION_PATHS: {
|
|
2
|
+
SUBMISSION_CACHE_DIR: string;
|
|
3
|
+
};
|
|
4
|
+
export declare const SUBMISSION_VALIDATION: {
|
|
5
|
+
SUBMISSION_DESCRIPTION_MAX_LENGTH: number;
|
|
6
|
+
SUBMISSION_FILE_SIZE_MAX_BYTES: number;
|
|
7
|
+
};
|
|
8
|
+
export declare const generateSubmissionArchiveFilename: () => string;
|
|
9
|
+
export declare const getSubmissionArchivePath: (filename: string) => string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { PATHS } from '../config.js';
|
|
3
|
+
import { getMiniManifest } from '../../utils/minis-manifest.js';
|
|
4
|
+
export const SUBMISSION_PATHS = {
|
|
5
|
+
SUBMISSION_CACHE_DIR: path.resolve(PATHS.CACHE_DIR, 'submissions'),
|
|
6
|
+
};
|
|
7
|
+
export const SUBMISSION_VALIDATION = {
|
|
8
|
+
SUBMISSION_DESCRIPTION_MAX_LENGTH: 2056,
|
|
9
|
+
SUBMISSION_FILE_SIZE_MAX_BYTES: 1000000,
|
|
10
|
+
};
|
|
11
|
+
export const generateSubmissionArchiveFilename = () => {
|
|
12
|
+
const miniHandle = getMiniManifest().handle;
|
|
13
|
+
return `${miniHandle}-${String(Date.now())}.tar.gz`;
|
|
14
|
+
};
|
|
15
|
+
export const getSubmissionArchivePath = (filename) => {
|
|
16
|
+
return path.join(SUBMISSION_PATHS.SUBMISSION_CACHE_DIR, filename);
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/commands/submit/config.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAC,KAAK,EAAC,MAAM,cAAc,CAAA;AAClC,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAA;AAE7D,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,aAAa,CAAC;CACnE,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,iCAAiC,EAAE,IAAI;IACvC,8BAA8B,EAAE,OAAO;CACxC,CAAA;AAED,MAAM,CAAC,MAAM,iCAAiC,GAAG,GAAG,EAAE;IACpD,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC,MAAM,CAAA;IAE3C,OAAO,GAAG,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAA;AACrD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAE,EAAE;IAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAA;AACnE,CAAC,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AbortError } from '@shopify/cli-kit/node/error';
|
|
2
|
+
import { CreateSubmissionMutation, CreateUploadMutation, SubmissionsQuery } from '../../data/types/autogenerated/shop-minis-admin-api/graphql.js';
|
|
3
|
+
import { CreateUploadParameters } from '../../data/create-upload.js';
|
|
4
|
+
type UnwrapArray<T> = T extends Array<infer R> ? R : never;
|
|
5
|
+
interface UserErrorShape {
|
|
6
|
+
code: string;
|
|
7
|
+
message: string;
|
|
8
|
+
field?: Array<string> | null;
|
|
9
|
+
}
|
|
10
|
+
interface WrapErrorOptions {
|
|
11
|
+
separator?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const wrapError: (error: any, message: string, userOptions?: WrapErrorOptions) => Error;
|
|
14
|
+
export declare const userErrorToErrorMessage: ({ code, message, field, }: UserErrorShape) => string;
|
|
15
|
+
export declare const handleCreateUploadErrors: (params: CreateUploadParameters, userErrors?: CreateUploadMutation['submissionUploadCreate']['userErrors']) => void;
|
|
16
|
+
export declare const generateExistingPendingSubmissionError: (pendingSubmission: UnwrapArray<SubmissionsQuery['submissions']['nodes']> | null) => Promise<AbortError>;
|
|
17
|
+
export declare const handleCreateSubmissionErrors: (userErrors?: CreateSubmissionMutation['submissionCreate']['userErrors']) => Promise<void>;
|
|
18
|
+
export declare const handleUploadFileErrors: (error: any) => never;
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { AbortError } from '@shopify/cli-kit/node/error';
|
|
2
|
+
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
3
|
+
import { getRunBinCommand } from '../../utils/package-manager.js';
|
|
4
|
+
import { getPendingSubmission } from '../../data/get-submissions.js';
|
|
5
|
+
const wrapErrorDefaultOptions = {
|
|
6
|
+
separator: ': ',
|
|
7
|
+
};
|
|
8
|
+
// Prefix an error with a nice message without loosing the stack
|
|
9
|
+
export const wrapError = (error, message, userOptions = {}) => {
|
|
10
|
+
const options = {
|
|
11
|
+
...wrapErrorDefaultOptions,
|
|
12
|
+
...userOptions,
|
|
13
|
+
};
|
|
14
|
+
const err = new Error(`${message}${options.separator}${error?.message ?? 'Unknown error'}`);
|
|
15
|
+
if (error && error?.stack) {
|
|
16
|
+
err.stack = error?.stack;
|
|
17
|
+
}
|
|
18
|
+
return err;
|
|
19
|
+
};
|
|
20
|
+
export const userErrorToErrorMessage = ({ code, message, field, }) => {
|
|
21
|
+
if (!field || field.length === 0)
|
|
22
|
+
return `${message}. (${code})`;
|
|
23
|
+
return `${message}. (${code} for fields ${field.join(', ')})`;
|
|
24
|
+
};
|
|
25
|
+
export const handleCreateUploadErrors = (params, userErrors) => {
|
|
26
|
+
if (!userErrors || userErrors.length === 0)
|
|
27
|
+
return;
|
|
28
|
+
const errorMessages = userErrors.map(userError => {
|
|
29
|
+
switch (userError.code) {
|
|
30
|
+
case 'INVALID_CHECKSUM':
|
|
31
|
+
return `Invalid checksum for uploaded archive: ${params.checksum}`;
|
|
32
|
+
case 'INVALID_FILE_SIZE':
|
|
33
|
+
return `Invalid file size for uploaded archive: ${params.fileSize}`;
|
|
34
|
+
case 'INVALID_MIME_TYPE':
|
|
35
|
+
return `Invalid mime type for uploaded archive: ${params.mimeType}`;
|
|
36
|
+
default:
|
|
37
|
+
return userErrorToErrorMessage(userError);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
throw new AbortError('There was a problem creating your upload', errorMessages);
|
|
41
|
+
};
|
|
42
|
+
export const generateExistingPendingSubmissionError = async (pendingSubmission) => {
|
|
43
|
+
outputDebug(`Existing pending submission found ${pendingSubmission ? JSON.stringify(pendingSubmission) : ''}`);
|
|
44
|
+
const errorMessage = pendingSubmission
|
|
45
|
+
? `The previous submission (reference: ${pendingSubmission.reference}) was submitted at ${pendingSubmission.submittedAt}.\n\n` +
|
|
46
|
+
`Status of ${pendingSubmission.reference}: ${pendingSubmission.status}`
|
|
47
|
+
: undefined;
|
|
48
|
+
return new AbortError('Already a submission under review', errorMessage, [
|
|
49
|
+
[
|
|
50
|
+
'Cancel previous submission. Run',
|
|
51
|
+
{
|
|
52
|
+
command: await getRunBinCommand('shop-minis cancel-submission'),
|
|
53
|
+
},
|
|
54
|
+
'to cancel',
|
|
55
|
+
],
|
|
56
|
+
[
|
|
57
|
+
'Cancel this submission. Do nothing else and wait for previous submission to be reviewed.',
|
|
58
|
+
],
|
|
59
|
+
]);
|
|
60
|
+
};
|
|
61
|
+
export const handleCreateSubmissionErrors = async (userErrors) => {
|
|
62
|
+
if (!userErrors || userErrors.length === 0)
|
|
63
|
+
return;
|
|
64
|
+
for (const userError of userErrors) {
|
|
65
|
+
if (userError.code === 'ALREADY_PENDING_SUBMISSION') {
|
|
66
|
+
const pendingSubmission = await getPendingSubmission();
|
|
67
|
+
throw await generateExistingPendingSubmissionError(pendingSubmission);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
const errorMessages = userErrors.map(userError => {
|
|
71
|
+
switch (userError.code) {
|
|
72
|
+
case 'FILE_NOT_FOUND':
|
|
73
|
+
return `Your uploaded package could not be found`;
|
|
74
|
+
case 'UPLOAD_NOT_FOUND':
|
|
75
|
+
return `Your upload could not be found`;
|
|
76
|
+
default:
|
|
77
|
+
return userErrorToErrorMessage(userError);
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
throw new AbortError('There was a problem creating your submission', errorMessages);
|
|
81
|
+
};
|
|
82
|
+
export const handleUploadFileErrors = (error) => {
|
|
83
|
+
throw wrapError(error, 'There was a problem with your upload\n\n', {
|
|
84
|
+
separator: '',
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/commands/submit/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { readFileSync } from 'node:fs';
|
|
2
|
+
import { fetch } from '@shopify/cli-kit/node/http';
|
|
3
|
+
export const uploadFile = async ({ url, headers, filepath, }) => {
|
|
4
|
+
const response = await fetch(url, {
|
|
5
|
+
method: 'PUT',
|
|
6
|
+
headers,
|
|
7
|
+
body: readFileSync(filepath),
|
|
8
|
+
});
|
|
9
|
+
if (!response.ok) {
|
|
10
|
+
if (response.status === 404) {
|
|
11
|
+
throw new Error('Resource not found');
|
|
12
|
+
}
|
|
13
|
+
else if (response.status === 500) {
|
|
14
|
+
throw new Error('Internal server error');
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
throw new Error(`PUT request failed with status: ${response.status}`);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=gcs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gcs.js","sourceRoot":"","sources":["../../../src/commands/submit/gcs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,SAAS,CAAA;AAEpC,OAAO,EAAC,KAAK,EAAC,MAAM,4BAA4B,CAAA;AAQhD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,EAC/B,GAAG,EACH,OAAO,EACP,QAAQ,GACa,EAAE,EAAE;IACzB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO;QACP,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;QAChB,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;SACtC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;SACzC;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,mCAAmC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;SACtE;KACF;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
3
|
+
import { getMiniManifest } from '../../utils/minis-manifest.js';
|
|
4
|
+
import { codeBuildChecks, completeConfig, doSubmit, preSubmitChecks, } from './submit.js';
|
|
5
|
+
export function loadCommand(parentProgram) {
|
|
6
|
+
const command = new Command()
|
|
7
|
+
.name('submit')
|
|
8
|
+
.description('submit your mini app')
|
|
9
|
+
.option('--description [description]', 'submission description - describes the change')
|
|
10
|
+
.option('--verbose', 'print debugging messages') // compatible with cli-kit
|
|
11
|
+
.action(async (args) => {
|
|
12
|
+
const miniName = getMiniManifest().name;
|
|
13
|
+
outputDebug(`Submit args ${JSON.stringify(args)}`);
|
|
14
|
+
outputDebug(`Submitting mini "${miniName}" at ${process.cwd()}`);
|
|
15
|
+
const continueWithSubmission = await codeBuildChecks();
|
|
16
|
+
if (!continueWithSubmission) {
|
|
17
|
+
process.exit(0);
|
|
18
|
+
}
|
|
19
|
+
await preSubmitChecks();
|
|
20
|
+
const config = await completeConfig(args);
|
|
21
|
+
await doSubmit(config);
|
|
22
|
+
});
|
|
23
|
+
parentProgram.addCommand(command);
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/submit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAA;AACjC,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAExD,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAA;AAE7D,OAAO,EACL,eAAe,EACf,cAAc,EACd,QAAQ,EACR,eAAe,GAChB,MAAM,aAAa,CAAA;AAGpB,MAAM,UAAU,WAAW,CAAC,aAAsB;IAChD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE;SAC1B,IAAI,CAAC,QAAQ,CAAC;SACd,WAAW,CAAC,sBAAsB,CAAC;SACnC,MAAM,CACL,6BAA6B,EAC7B,+CAA+C,CAChD;SACA,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,0BAA0B;SAC1E,MAAM,CAAC,KAAK,EAAE,IAAuB,EAAE,EAAE;QACxC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC,IAAI,CAAA;QAEvC,WAAW,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClD,WAAW,CAAC,oBAAoB,QAAQ,QAAQ,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAEhE,MAAM,sBAAsB,GAAG,MAAM,eAAe,EAAE,CAAA;QACtD,IAAI,CAAC,sBAAsB,EAAE;YAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SAChB;QAED,MAAM,eAAe,EAAE,CAAA;QACvB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC,CAAC,CAAA;IAEJ,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;AACnC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { SubmitCommandArgs, SubmitConfig } from './types.js';
|
|
2
|
+
export declare const codeBuildChecks: () => Promise<boolean>;
|
|
3
|
+
export declare const preSubmitChecks: () => Promise<void>;
|
|
4
|
+
export declare const completeConfig: (args: SubmitCommandArgs) => Promise<SubmitConfig>;
|
|
5
|
+
export declare const doSubmit: (config: SubmitConfig) => Promise<void>;
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import { renderSuccess, renderTasks, renderConfirmationPrompt, } from '@shopify/cli-kit/node/ui';
|
|
2
|
+
import { AbortError, handler as handleError } from '@shopify/cli-kit/node/error';
|
|
3
|
+
import { outputDebug } from '@shopify/cli-kit/node/output';
|
|
4
|
+
import editor from '@inquirer/editor';
|
|
5
|
+
import { getRunBinCommand } from '../../utils/package-manager.js';
|
|
6
|
+
import { assertNetworkAndAuth } from '../../utils/common-tasks.js';
|
|
7
|
+
import { execAsync } from '../../utils/exec-async-child-process.js';
|
|
8
|
+
import { getMiniManifest } from '../../utils/minis-manifest.js';
|
|
9
|
+
import { validateDescription } from './validation.js';
|
|
10
|
+
import { assertManifestValid, assertNoPendingSubmissions, createStagedUpload, createSubmission, packageShopMini, uploadSubmission, } from './tasks.js';
|
|
11
|
+
import { generateSubmissionArchiveFilename, getSubmissionArchivePath, } from './config.js';
|
|
12
|
+
import { assertCoreDependenciesVersion } from './utils/assert-core-dependencies-version.js';
|
|
13
|
+
import { requestEntryPointParams } from './utils/request-entry-point-params.js';
|
|
14
|
+
export const codeBuildChecks = async () => {
|
|
15
|
+
const tscCommand = await getRunBinCommand('tsc');
|
|
16
|
+
const lintCommand = await getRunBinCommand('eslint .');
|
|
17
|
+
try {
|
|
18
|
+
await execAsync({
|
|
19
|
+
cmd: tscCommand,
|
|
20
|
+
loadingMessage: 'Running typescript checks',
|
|
21
|
+
errorMessage: 'Typescript checks failed',
|
|
22
|
+
successMessage: 'Typescript OK!',
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
const continueWithSubmission = await renderConfirmationPrompt({
|
|
27
|
+
message: 'The code you are about to submit seems to have typescript errors, this might be a reason for rejection. Do you want to continue with the submission?',
|
|
28
|
+
});
|
|
29
|
+
if (!continueWithSubmission) {
|
|
30
|
+
console.log(`Run "${tscCommand}" to see the errors.`);
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
try {
|
|
35
|
+
await execAsync({
|
|
36
|
+
cmd: lintCommand,
|
|
37
|
+
loadingMessage: 'Running lint checks',
|
|
38
|
+
errorMessage: 'Lint checks failed',
|
|
39
|
+
successMessage: 'Lint OK!',
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
const continueWithSubmission = await renderConfirmationPrompt({
|
|
44
|
+
message: 'The code you are about to submit seems to have lint errors, this might be a reason for rejection. Do you want to continue with the submission?',
|
|
45
|
+
});
|
|
46
|
+
if (!continueWithSubmission) {
|
|
47
|
+
console.log(`Run "${lintCommand}" to see the errors.`);
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return true;
|
|
52
|
+
};
|
|
53
|
+
export const preSubmitChecks = async () => {
|
|
54
|
+
const tasks = [
|
|
55
|
+
// We run this task first to ensure auth and network are working.
|
|
56
|
+
// This makes sense because the dependency check needs a network
|
|
57
|
+
{
|
|
58
|
+
title: `Authenticating using Shop Minis Admin API key`,
|
|
59
|
+
task: async () => {
|
|
60
|
+
await assertNetworkAndAuth();
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
title: `Checking if dependencies are up to date`,
|
|
65
|
+
task: async () => {
|
|
66
|
+
await assertCoreDependenciesVersion();
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
title: `Checking if there are other submissions`,
|
|
71
|
+
task: async () => {
|
|
72
|
+
await assertNoPendingSubmissions();
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
title: `Verifying your manifest file`,
|
|
77
|
+
task: async () => {
|
|
78
|
+
await assertManifestValid();
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
];
|
|
82
|
+
try {
|
|
83
|
+
await renderTasks(tasks);
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
// Always output the error first
|
|
87
|
+
handleError(error);
|
|
88
|
+
// If the error doesn't have next steps follow-up with some generic ones
|
|
89
|
+
if (!error || !error?.nextSteps) {
|
|
90
|
+
handleError(new AbortError(`Pre-submission checks failed`, 'Try again and if the issue continues, contact us.', ['Try to run `submit` again', "Contact Shop if you're having issues"]));
|
|
91
|
+
}
|
|
92
|
+
process.exit(1);
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
export const completeConfig = async (args) => {
|
|
96
|
+
let { description } = args;
|
|
97
|
+
if (!description || validateDescription(description) !== true) {
|
|
98
|
+
description = await editor({
|
|
99
|
+
message: 'Describe the change being submitted for review',
|
|
100
|
+
validate: validateDescription,
|
|
101
|
+
default: description,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
if (getMiniManifest().entry_points?.length >= 1) {
|
|
105
|
+
const entryPointParams = await requestEntryPointParams();
|
|
106
|
+
description += `\n\n## Entry point params \n\n${entryPointParams}`;
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
description,
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
export const doSubmit = async (config) => {
|
|
113
|
+
outputDebug(`Submit config ${JSON.stringify(config)}`);
|
|
114
|
+
const submitTasksData = {
|
|
115
|
+
outputArchiveFilename: null,
|
|
116
|
+
outputArchivePath: null,
|
|
117
|
+
stagedUpload: null,
|
|
118
|
+
submission: null,
|
|
119
|
+
};
|
|
120
|
+
const tasks = [
|
|
121
|
+
{
|
|
122
|
+
title: `Packaging Shop Mini for submission`,
|
|
123
|
+
task: async () => {
|
|
124
|
+
const inputDirectory = process.cwd();
|
|
125
|
+
const matchFilePattern = `**/*`;
|
|
126
|
+
submitTasksData.outputArchiveFilename =
|
|
127
|
+
generateSubmissionArchiveFilename();
|
|
128
|
+
submitTasksData.outputArchivePath = getSubmissionArchivePath(submitTasksData.outputArchiveFilename);
|
|
129
|
+
await packageShopMini({
|
|
130
|
+
inputDirectory,
|
|
131
|
+
outputArchivePath: submitTasksData.outputArchivePath,
|
|
132
|
+
matchFilePattern,
|
|
133
|
+
ignore: [
|
|
134
|
+
'**/*.(spec|test).*',
|
|
135
|
+
'**/__tests__/**/*',
|
|
136
|
+
'node_modules/**',
|
|
137
|
+
'.minis-cache/**',
|
|
138
|
+
'.git/**',
|
|
139
|
+
'.env',
|
|
140
|
+
],
|
|
141
|
+
});
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
title: 'Preparing to upload submission',
|
|
146
|
+
task: async () => {
|
|
147
|
+
if (!submitTasksData.outputArchivePath ||
|
|
148
|
+
!submitTasksData.outputArchiveFilename) {
|
|
149
|
+
throw new Error('Expected data for upload submission not found');
|
|
150
|
+
}
|
|
151
|
+
// eslint-disable-next-line require-atomic-updates
|
|
152
|
+
submitTasksData.stagedUpload = await createStagedUpload({
|
|
153
|
+
outputArchiveFilename: submitTasksData.outputArchiveFilename,
|
|
154
|
+
outputArchivePath: submitTasksData.outputArchivePath,
|
|
155
|
+
});
|
|
156
|
+
},
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
title: 'Uploading submission',
|
|
160
|
+
task: async () => {
|
|
161
|
+
if (!submitTasksData.outputArchivePath ||
|
|
162
|
+
!submitTasksData.stagedUpload) {
|
|
163
|
+
throw new Error('Expected data for submission not found');
|
|
164
|
+
}
|
|
165
|
+
await uploadSubmission({
|
|
166
|
+
url: submitTasksData.stagedUpload.url,
|
|
167
|
+
headers: JSON.parse(submitTasksData.stagedUpload.headers),
|
|
168
|
+
outputArchivePath: submitTasksData.outputArchivePath,
|
|
169
|
+
});
|
|
170
|
+
},
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
title: 'Finalizing submission',
|
|
174
|
+
task: async () => {
|
|
175
|
+
if (!submitTasksData.stagedUpload) {
|
|
176
|
+
throw new Error('Expected data for finalizing submission not found');
|
|
177
|
+
}
|
|
178
|
+
// eslint-disable-next-line require-atomic-updates
|
|
179
|
+
submitTasksData.submission = await createSubmission({
|
|
180
|
+
description: config.description,
|
|
181
|
+
stagedUploadId: submitTasksData.stagedUpload.id,
|
|
182
|
+
});
|
|
183
|
+
},
|
|
184
|
+
},
|
|
185
|
+
];
|
|
186
|
+
try {
|
|
187
|
+
await renderTasks(tasks);
|
|
188
|
+
renderSuccess({
|
|
189
|
+
headline: 'Shop Mini submitted for review',
|
|
190
|
+
body: [
|
|
191
|
+
'Thank you for your submission. Your Shop Mini has been added to the review queue. Your submission reference is:',
|
|
192
|
+
{
|
|
193
|
+
bold: submitTasksData.submission?.reference ?? 'unknown',
|
|
194
|
+
},
|
|
195
|
+
],
|
|
196
|
+
nextSteps: [
|
|
197
|
+
[
|
|
198
|
+
'Keep your eyes on your email for communication regarding your submission',
|
|
199
|
+
],
|
|
200
|
+
[
|
|
201
|
+
'To check the status of your submission at any point, run',
|
|
202
|
+
{
|
|
203
|
+
command: await getRunBinCommand('shop-minis check-submission'),
|
|
204
|
+
},
|
|
205
|
+
],
|
|
206
|
+
[
|
|
207
|
+
'To cancel your submission at any point, run',
|
|
208
|
+
{
|
|
209
|
+
command: await getRunBinCommand('shop-minis cancel-submission'),
|
|
210
|
+
},
|
|
211
|
+
],
|
|
212
|
+
],
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
catch (error) {
|
|
216
|
+
// Always output the error first
|
|
217
|
+
handleError(error);
|
|
218
|
+
// If the error doesn't have next steps follow-up with some generic ones
|
|
219
|
+
if (!error || !error?.nextSteps) {
|
|
220
|
+
handleError(new AbortError(`Submission failed`, 'Try again and if the issue continues, contact us.', ['Try to run `submit` again', "Contact Shop if you're having issues"]));
|
|
221
|
+
}
|
|
222
|
+
process.exit(1);
|
|
223
|
+
}
|
|
224
|
+
};
|
|
225
|
+
//# sourceMappingURL=submit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../src/commands/submit/submit.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,WAAW,EACX,wBAAwB,GAEzB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAC,UAAU,EAAE,OAAO,IAAI,WAAW,EAAC,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AACxD,OAAO,MAAM,MAAM,kBAAkB,CAAA;AAErC,OAAO,EAAC,gBAAgB,EAAC,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAC,oBAAoB,EAAC,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAC,SAAS,EAAC,MAAM,yCAAyC,CAAA;AACjE,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAA;AAG7D,OAAO,EAAC,mBAAmB,EAAC,MAAM,iBAAiB,CAAA;AACnD,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,iCAAiC,EACjC,wBAAwB,GACzB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAC,6BAA6B,EAAC,MAAM,6CAA6C,CAAA;AACzF,OAAO,EAAC,uBAAuB,EAAC,MAAM,uCAAuC,CAAA;AAE7E,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACxC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAA;IAEtD,IAAI;QACF,MAAM,SAAS,CAAC;YACd,GAAG,EAAE,UAAU;YACf,cAAc,EAAE,2BAA2B;YAC3C,YAAY,EAAE,0BAA0B;YACxC,cAAc,EAAE,gBAAgB;SACjC,CAAC,CAAA;KACH;IAAC,MAAM;QACN,MAAM,sBAAsB,GAAG,MAAM,wBAAwB,CAAC;YAC5D,OAAO,EACL,sJAAsJ;SACzJ,CAAC,CAAA;QACF,IAAI,CAAC,sBAAsB,EAAE;YAC3B,OAAO,CAAC,GAAG,CAAC,QAAQ,UAAU,sBAAsB,CAAC,CAAA;YACrD,OAAO,KAAK,CAAA;SACb;KACF;IAED,IAAI;QACF,MAAM,SAAS,CAAC;YACd,GAAG,EAAE,WAAW;YAChB,cAAc,EAAE,qBAAqB;YACrC,YAAY,EAAE,oBAAoB;YAClC,cAAc,EAAE,UAAU;SAC3B,CAAC,CAAA;KACH;IAAC,MAAM;QACN,MAAM,sBAAsB,GAAG,MAAM,wBAAwB,CAAC;YAC5D,OAAO,EACL,gJAAgJ;SACnJ,CAAC,CAAA;QACF,IAAI,CAAC,sBAAsB,EAAE;YAC3B,OAAO,CAAC,GAAG,CAAC,QAAQ,WAAW,sBAAsB,CAAC,CAAA;YACtD,OAAO,KAAK,CAAA;SACb;KACF;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACxC,MAAM,KAAK,GAAoB;QAC7B,iEAAiE;QACjE,gEAAgE;QAChE;YACE,KAAK,EAAE,+CAA+C;YACtD,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,oBAAoB,EAAE,CAAA;YAC9B,CAAC;SACF;QACD;YACE,KAAK,EAAE,yCAAyC;YAChD,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,6BAA6B,EAAE,CAAA;YACvC,CAAC;SACF;QACD;YACE,KAAK,EAAE,yCAAyC;YAChD,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,0BAA0B,EAAE,CAAA;YACpC,CAAC;SACF;QACD;YACE,KAAK,EAAE,8BAA8B;YACrC,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,mBAAmB,EAAE,CAAA;YAC7B,CAAC;SACF;KACF,CAAA;IAED,IAAI;QACF,MAAM,WAAW,CAAC,KAAK,CAAC,CAAA;KACzB;IAAC,OAAO,KAAU,EAAE;QACnB,gCAAgC;QAChC,WAAW,CAAC,KAAK,CAAC,CAAA;QAElB,wEAAwE;QACxE,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE;YAC/B,WAAW,CACT,IAAI,UAAU,CACZ,8BAA8B,EAC9B,mDAAmD,EACnD,CAAC,2BAA2B,EAAE,sCAAsC,CAAC,CACtE,CACF,CAAA;SACF;QAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,IAAuB,EACA,EAAE;IACzB,IAAI,EAAC,WAAW,EAAC,GAAG,IAAI,CAAA;IAExB,IAAI,CAAC,WAAW,IAAI,mBAAmB,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;QAC7D,WAAW,GAAG,MAAM,MAAM,CAAC;YACzB,OAAO,EAAE,gDAAgD;YACzD,QAAQ,EAAE,mBAAmB;YAC7B,OAAO,EAAE,WAAW;SACrB,CAAC,CAAA;KACH;IAED,IAAI,eAAe,EAAE,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,EAAE;QAC/C,MAAM,gBAAgB,GAAG,MAAM,uBAAuB,EAAE,CAAA;QAExD,WAAW,IAAI,iCAAiC,gBAAgB,EAAE,CAAA;KACnE;IAED,OAAO;QACL,WAAW;KACZ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,MAAoB,EAAE,EAAE;IACrD,WAAW,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IAEtD,MAAM,eAAe,GAAoB;QACvC,qBAAqB,EAAE,IAAI;QAC3B,iBAAiB,EAAE,IAAI;QACvB,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;KACjB,CAAA;IAED,MAAM,KAAK,GAAoB;QAC7B;YACE,KAAK,EAAE,oCAAoC;YAC3C,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;gBACpC,MAAM,gBAAgB,GAAG,MAAM,CAAA;gBAC/B,eAAe,CAAC,qBAAqB;oBACnC,iCAAiC,EAAE,CAAA;gBACrC,eAAe,CAAC,iBAAiB,GAAG,wBAAwB,CAC1D,eAAe,CAAC,qBAAqB,CACtC,CAAA;gBAED,MAAM,eAAe,CAAC;oBACpB,cAAc;oBACd,iBAAiB,EAAE,eAAe,CAAC,iBAAiB;oBACpD,gBAAgB;oBAChB,MAAM,EAAE;wBACN,oBAAoB;wBACpB,mBAAmB;wBACnB,iBAAiB;wBACjB,iBAAiB;wBACjB,SAAS;wBACT,MAAM;qBACP;iBACF,CAAC,CAAA;YACJ,CAAC;SACF;QACD;YACE,KAAK,EAAE,gCAAgC;YACvC,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,IACE,CAAC,eAAe,CAAC,iBAAiB;oBAClC,CAAC,eAAe,CAAC,qBAAqB,EACtC;oBACA,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;iBACjE;gBAED,kDAAkD;gBAClD,eAAe,CAAC,YAAY,GAAG,MAAM,kBAAkB,CAAC;oBACtD,qBAAqB,EAAE,eAAe,CAAC,qBAAqB;oBAC5D,iBAAiB,EAAE,eAAe,CAAC,iBAAiB;iBACrD,CAAC,CAAA;YACJ,CAAC;SACF;QACD;YACE,KAAK,EAAE,sBAAsB;YAC7B,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,IACE,CAAC,eAAe,CAAC,iBAAiB;oBAClC,CAAC,eAAe,CAAC,YAAY,EAC7B;oBACA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;iBAC1D;gBAED,MAAM,gBAAgB,CAAC;oBACrB,GAAG,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG;oBACrC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC;oBACzD,iBAAiB,EAAE,eAAe,CAAC,iBAAiB;iBACrD,CAAC,CAAA;YACJ,CAAC;SACF;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;oBACjC,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;iBACrE;gBAED,kDAAkD;gBAClD,eAAe,CAAC,UAAU,GAAG,MAAM,gBAAgB,CAAC;oBAClD,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,cAAc,EAAE,eAAe,CAAC,YAAY,CAAC,EAAE;iBAChD,CAAC,CAAA;YACJ,CAAC;SACF;KACF,CAAA;IAED,IAAI;QACF,MAAM,WAAW,CAAC,KAAK,CAAC,CAAA;QAExB,aAAa,CAAC;YACZ,QAAQ,EAAE,gCAAgC;YAC1C,IAAI,EAAE;gBACJ,iHAAiH;gBACjH;oBACE,IAAI,EAAE,eAAe,CAAC,UAAU,EAAE,SAAS,IAAI,SAAS;iBACzD;aACF;YACD,SAAS,EAAE;gBACT;oBACE,0EAA0E;iBAC3E;gBACD;oBACE,0DAA0D;oBAC1D;wBACE,OAAO,EAAE,MAAM,gBAAgB,CAAC,6BAA6B,CAAC;qBAC/D;iBACF;gBACD;oBACE,6CAA6C;oBAC7C;wBACE,OAAO,EAAE,MAAM,gBAAgB,CAAC,8BAA8B,CAAC;qBAChE;iBACF;aACF;SACF,CAAC,CAAA;KACH;IAAC,OAAO,KAAU,EAAE;QACnB,gCAAgC;QAChC,WAAW,CAAC,KAAK,CAAC,CAAA;QAElB,wEAAwE;QACxE,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE;YAC/B,WAAW,CACT,IAAI,UAAU,CACZ,mBAAmB,EACnB,mDAAmD,EACnD,CAAC,2BAA2B,EAAE,sCAAsC,CAAC,CACtE,CACF,CAAA;SACF;QAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export declare function assertNoPendingSubmissions(): Promise<void>;
|
|
2
|
+
export declare function assertManifestValid(): void;
|
|
3
|
+
interface PackageShopMiniParams {
|
|
4
|
+
inputDirectory: string;
|
|
5
|
+
outputArchivePath: string;
|
|
6
|
+
matchFilePattern: string;
|
|
7
|
+
ignore: string[];
|
|
8
|
+
}
|
|
9
|
+
export declare const packageShopMini: ({ inputDirectory, outputArchivePath, matchFilePattern, ignore, }: PackageShopMiniParams) => Promise<void>;
|
|
10
|
+
interface CreateStagedUploadParams {
|
|
11
|
+
outputArchiveFilename: string;
|
|
12
|
+
outputArchivePath: string;
|
|
13
|
+
}
|
|
14
|
+
export declare const createStagedUpload: ({ outputArchiveFilename, outputArchivePath, }: CreateStagedUploadParams) => Promise<{
|
|
15
|
+
__typename?: "StagedUpload" | undefined;
|
|
16
|
+
url: any;
|
|
17
|
+
headers: string;
|
|
18
|
+
id: string;
|
|
19
|
+
} | null | undefined>;
|
|
20
|
+
interface UploadSubmissionParams {
|
|
21
|
+
url: string;
|
|
22
|
+
headers: Record<string, string>;
|
|
23
|
+
outputArchivePath: string;
|
|
24
|
+
}
|
|
25
|
+
export declare const uploadSubmission: ({ url, headers, outputArchivePath, }: UploadSubmissionParams) => Promise<void>;
|
|
26
|
+
interface CreateSubmissionParams {
|
|
27
|
+
description: string;
|
|
28
|
+
stagedUploadId: string;
|
|
29
|
+
}
|
|
30
|
+
export declare const createSubmission: ({ description, stagedUploadId, }: CreateSubmissionParams) => Promise<{
|
|
31
|
+
__typename?: "Submission" | undefined;
|
|
32
|
+
reference: string;
|
|
33
|
+
description: string;
|
|
34
|
+
status: import("../../data/types/autogenerated/shop-minis-admin-api/graphql.js").SubmissionStatus;
|
|
35
|
+
submittedAt: any;
|
|
36
|
+
} | null | undefined>;
|
|
37
|
+
export {};
|