shoplazza-cli 1.1.2 → 2.0.0
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/CHANGELOG.md +21 -0
- package/LICENSE +21 -0
- package/README.md +206 -332
- package/README.zh.md +318 -0
- package/package.json +24 -70
- package/scripts/install.js +144 -0
- package/scripts/jsbuild/dev/index.js +123 -0
- package/scripts/jsbuild/index.js +77 -0
- package/{lib/checkout/build → scripts/jsbuild}/plugin/vite-plugin-add-extension-id.js +4 -2
- package/scripts/jsbuild/vite.config.js +35 -0
- package/scripts/run.js +29 -0
- package/.editorconfig +0 -28
- package/.prettierrc +0 -9
- package/bin/shoplazza +0 -137
- package/fixtures/assets/blog.scss +0 -74
- package/fixtures/assets/cart_modal.scss +0 -450
- package/fixtures/assets/collection_detail.js +0 -234
- package/fixtures/assets/collection_detail.scss +0 -345
- package/fixtures/assets/collection_list.scss +0 -11
- package/fixtures/assets/collection_slider.scss +0 -169
- package/fixtures/assets/feature_columns.scss +0 -26
- package/fixtures/assets/feature_product.scss +0 -109
- package/fixtures/assets/footer.js +0 -58
- package/fixtures/assets/footer.scss +0 -337
- package/fixtures/assets/four_images.scss +0 -29
- package/fixtures/assets/gallery.scss +0 -55
- package/fixtures/assets/header.js +0 -178
- package/fixtures/assets/header.scss +0 -929
- package/fixtures/assets/image_text.scss +0 -72
- package/fixtures/assets/logo_bar.scss +0 -11
- package/fixtures/assets/newsletter.scss +0 -90
- package/fixtures/assets/not_found.scss +0 -39
- package/fixtures/assets/page_detail.scss +0 -16
- package/fixtures/assets/pagination.scss +0 -150
- package/fixtures/assets/postcss.config.js +0 -6
- package/fixtures/assets/product_description.scss +0 -88
- package/fixtures/assets/product_detail.js +0 -634
- package/fixtures/assets/product_detail.scss +0 -1106
- package/fixtures/assets/relative_product.scss +0 -45
- package/fixtures/assets/reviews.scss +0 -70
- package/fixtures/assets/rich_text.scss +0 -71
- package/fixtures/assets/search.js +0 -87
- package/fixtures/assets/search.scss +0 -67
- package/fixtures/assets/slide.scss +0 -51
- package/fixtures/assets/slider.scss +0 -141
- package/fixtures/assets/test.scss +0 -1
- package/fixtures/assets/theme.css +0 -976
- package/fixtures/assets/theme.scss +0 -1100
- package/fixtures/assets/three_images.scss +0 -20
- package/fixtures/assets/tools.scss +0 -23
- package/fixtures/assets/two_images.scss +0 -24
- package/fixtures/assets/video.scss +0 -45
- package/fixtures/assets/video_text.scss +0 -63
- package/fixtures/config/settings_data.json +0 -107
- package/fixtures/config/settings_schema.json +0 -690
- package/fixtures/layout/theme.liquid +0 -76
- package/fixtures/locales/ar-SA.json +0 -212
- package/fixtures/locales/de-DE.json +0 -290
- package/fixtures/locales/en-US.json +0 -290
- package/fixtures/locales/es-ES.json +0 -290
- package/fixtures/locales/fr-FR.json +0 -290
- package/fixtures/locales/id-ID.json +0 -212
- package/fixtures/locales/it-IT.json +0 -212
- package/fixtures/locales/ja-JP.json +0 -289
- package/fixtures/locales/ko-KR.json +0 -290
- package/fixtures/locales/nl-NL.json +0 -290
- package/fixtures/locales/pl-PL.json +0 -290
- package/fixtures/locales/pt-PT.json +0 -212
- package/fixtures/locales/ru-RU.json +0 -212
- package/fixtures/locales/th-TH.json +0 -212
- package/fixtures/locales/zh-CN.json +0 -290
- package/fixtures/locales/zh-TW.json +0 -290
- package/fixtures/sections/apps.liquid +0 -47
- package/fixtures/sections/blog.liquid +0 -137
- package/fixtures/sections/collection_desc.liquid +0 -34
- package/fixtures/sections/collection_detail.liquid +0 -436
- package/fixtures/sections/collection_image.liquid +0 -104
- package/fixtures/sections/collection_list.liquid +0 -161
- package/fixtures/sections/collection_name.liquid +0 -34
- package/fixtures/sections/collection_slider.liquid +0 -330
- package/fixtures/sections/feature_columns.liquid +0 -275
- package/fixtures/sections/feature_product.liquid +0 -227
- package/fixtures/sections/footer.liquid +0 -488
- package/fixtures/sections/four_images.liquid +0 -160
- package/fixtures/sections/gallery.liquid +0 -258
- package/fixtures/sections/header.liquid +0 -1157
- package/fixtures/sections/html.liquid +0 -40
- package/fixtures/sections/image_text.liquid +0 -350
- package/fixtures/sections/instagram_plus.liquid +0 -393
- package/fixtures/sections/logo_bar.liquid +0 -183
- package/fixtures/sections/newsletter.liquid +0 -225
- package/fixtures/sections/not_found.liquid +0 -39
- package/fixtures/sections/overlay_image.liquid +0 -648
- package/fixtures/sections/page_detail.liquid +0 -39
- package/fixtures/sections/photo_collection.liquid +0 -433
- package/fixtures/sections/product_description.liquid +0 -208
- package/fixtures/sections/product_detail.liquid +0 -611
- package/fixtures/sections/products.liquid +0 -216
- package/fixtures/sections/relative_product.liquid +0 -121
- package/fixtures/sections/reviews.liquid +0 -115
- package/fixtures/sections/rich_text.liquid +0 -157
- package/fixtures/sections/search.liquid +0 -163
- package/fixtures/sections/slide.liquid +0 -719
- package/fixtures/sections/three_images.liquid +0 -157
- package/fixtures/sections/two_images.liquid +0 -125
- package/fixtures/sections/video.liquid +0 -95
- package/fixtures/sections/video_text.liquid +0 -128
- package/fixtures/snippets/bgset.liquid +0 -21
- package/fixtures/snippets/card_title.liquid +0 -8
- package/fixtures/snippets/cart_modal.liquid +0 -74
- package/fixtures/snippets/collection.liquid +0 -77
- package/fixtures/snippets/collection_filter_modal.liquid +0 -56
- package/fixtures/snippets/default_image_4.liquid +0 -14
- package/fixtures/snippets/default_image_6.liquid +0 -18
- package/fixtures/snippets/default_image_8.liquid +0 -23
- package/fixtures/snippets/four_images_item.liquid +0 -8
- package/fixtures/snippets/header_ads.liquid +0 -95
- package/fixtures/snippets/hero_image.liquid +0 -94
- package/fixtures/snippets/icon_video_play_large.liquid +0 -1
- package/fixtures/snippets/icon_video_play_medium.liquid +0 -4
- package/fixtures/snippets/icon_video_play_small.liquid +0 -4
- package/fixtures/snippets/lazyimg.liquid +0 -22
- package/fixtures/snippets/lazyimg_art.liquid +0 -36
- package/fixtures/snippets/lazysizes.liquid +0 -41
- package/fixtures/snippets/link.liquid +0 -2
- package/fixtures/snippets/pagination.liquid +0 -48
- package/fixtures/snippets/product.liquid +0 -126
- package/fixtures/snippets/product_art_tpl.liquid +0 -152
- package/fixtures/snippets/product_info_body.liquid +0 -337
- package/fixtures/snippets/product_info_tpl.liquid +0 -423
- package/fixtures/snippets/product_label.liquid +0 -46
- package/fixtures/snippets/settings.liquid +0 -295
- package/fixtures/snippets/social-meta-tags.liquid +0 -106
- package/fixtures/snippets/video_html.liquid +0 -11
- package/fixtures/snippets/video_source.liquid +0 -98
- package/fixtures/snippets/video_thumb_icon.liquid +0 -2
- package/fixtures/templates/404.liquid +0 -1
- package/fixtures/templates/collection.liquid +0 -92
- package/fixtures/templates/index.liquid +0 -206
- package/fixtures/templates/page.liquid +0 -1
- package/fixtures/templates/product.liquid +0 -99
- package/fixtures/templates/search.liquid +0 -1
- package/jest.config.js +0 -192
- package/lib/__tests__/log.test.js +0 -15
- package/lib/__tests__/utils.test.js +0 -69
- package/lib/app/api/cli.js +0 -225
- package/lib/app/api/openapi.js +0 -121
- package/lib/app/api/partnerOpenapi.js +0 -104
- package/lib/app/bin/index.js +0 -20
- package/lib/app/bin/javy/javy-arm-linux-v5.0.1 +0 -0
- package/lib/app/bin/javy/javy-arm-macos-v5.0.1 +0 -0
- package/lib/app/bin/javy/javy-x86_64-linux-v5.0.1 +0 -0
- package/lib/app/bin/javy/javy-x86_64-macos-v5.0.1 +0 -0
- package/lib/app/bin/javy/javy-x86_64-windows-v5.0.1 +0 -0
- package/lib/app/commands/config/actions/link.js +0 -189
- package/lib/app/commands/config/actions/use.js +0 -40
- package/lib/app/commands/config/index.js +0 -25
- package/lib/app/commands/config/link.js +0 -11
- package/lib/app/commands/config/use.js +0 -11
- package/lib/app/commands/deploy/actions/deploy.js +0 -196
- package/lib/app/commands/deploy/index.js +0 -11
- package/lib/app/commands/dev/actions/dev.js +0 -206
- package/lib/app/commands/dev/index.js +0 -11
- package/lib/app/commands/generate/actions/extension.js +0 -97
- package/lib/app/commands/generate/actions/generateCheckout.js +0 -58
- package/lib/app/commands/generate/actions/generateFunction.js +0 -56
- package/lib/app/commands/generate/actions/generateTheme.js +0 -128
- package/lib/app/commands/generate/extension.js +0 -11
- package/lib/app/commands/generate/index.js +0 -22
- package/lib/app/commands/index.js +0 -82
- package/lib/app/commands/info/actions/info.js +0 -168
- package/lib/app/commands/info/index.js +0 -11
- package/lib/app/commands/init/actions/init.js +0 -176
- package/lib/app/commands/init/index.js +0 -14
- package/lib/app/commands/versions/actions/list.js +0 -210
- package/lib/app/commands/versions/index.js +0 -22
- package/lib/app/commands/versions/list.js +0 -14
- package/lib/app/constant/code.js +0 -7
- package/lib/app/constant/color.js +0 -18
- package/lib/app/constant/extension.js +0 -16
- package/lib/app/constant/host.js +0 -23
- package/lib/app/constant/sso.js +0 -7
- package/lib/app/index.js +0 -8
- package/lib/app/services/auth/config.js +0 -33
- package/lib/app/services/auth/index.js +0 -9
- package/lib/app/services/auth/oauth-server.js +0 -70
- package/lib/app/services/auth/partner-token.js +0 -45
- package/lib/app/services/auth/sso-token.js +0 -69
- package/lib/app/services/auth/store-token.js +0 -100
- package/lib/app/services/auth/url-builder.js +0 -23
- package/lib/app/services/config/index.js +0 -41
- package/lib/app/services/devServer/app.js +0 -76
- package/lib/app/services/devServer/index.js +0 -103
- package/lib/app/services/devServer/middleware/hmacValidatorMiddleWare.js +0 -20
- package/lib/app/services/devServer/middleware/index.js +0 -5
- package/lib/app/services/devServer/tunnel/index.js +0 -43
- package/lib/app/services/devServer/tunnel/providers/cloudflare.js +0 -364
- package/lib/app/services/devServer/tunnel/providers/ngrok.js +0 -70
- package/lib/app/services/devServer/utils/index.js +0 -5
- package/lib/app/services/devServer/utils/secureCompare.js +0 -5
- package/lib/app/services/devServer/views/app.ejs +0 -133
- package/lib/app/services/extension-build/buildCheckout.js +0 -47
- package/lib/app/services/extension-build/buildFunction.js +0 -57
- package/lib/app/services/extension-build/buildTheme.js +0 -100
- package/lib/app/services/extension-build/index.js +0 -23
- package/lib/app/services/extension-build/plugins/vite-plugin-add-extension-id.js +0 -26
- package/lib/app/services/extension-diff/index.js +0 -132
- package/lib/app/services/extension-upsert/index.js +0 -21
- package/lib/app/services/extension-upsert/upsertCheckout.js +0 -44
- package/lib/app/services/extension-upsert/upsertFunction.js +0 -52
- package/lib/app/services/extension-upsert/upsertTheme.js +0 -113
- package/lib/app/services/oss/index.js +0 -45
- package/lib/app/services/partner/index.js +0 -52
- package/lib/app/store/base-store.js +0 -37
- package/lib/app/store/config-store.js +0 -55
- package/lib/app/store/config.js +0 -21
- package/lib/app/store/index.js +0 -14
- package/lib/app/store/install-store.js +0 -41
- package/lib/app/store/sso-store.js +0 -55
- package/lib/app/utils/asyncPool.js +0 -42
- package/lib/app/utils/debug/index.js +0 -16
- package/lib/app/utils/env.js +0 -24
- package/lib/app/utils/error.js +0 -20
- package/lib/app/utils/git.js +0 -20
- package/lib/app/utils/json.js +0 -27
- package/lib/app/utils/path.js +0 -33
- package/lib/app/utils/platform.js +0 -37
- package/lib/app/utils/request/cli.js +0 -72
- package/lib/app/utils/request/debug.js +0 -13
- package/lib/app/utils/request/openapi.js +0 -67
- package/lib/app/utils/request/partnerOpenapi.js +0 -47
- package/lib/app/utils/toml.js +0 -56
- package/lib/app/utils/views/message.js +0 -68
- package/lib/app/utils/views/select.js +0 -36
- package/lib/app/utils/withTempDir.js +0 -55
- package/lib/auth/__mocks__/getCode.js +0 -7
- package/lib/auth/__mocks__/index.js +0 -0
- package/lib/auth/child.js +0 -23
- package/lib/auth/getCode.js +0 -39
- package/lib/auth/index.js +0 -134
- package/lib/check.js +0 -28
- package/lib/checkout/api.js +0 -164
- package/lib/checkout/build/plugin/vite-plugin-transform-extension-html.js +0 -207
- package/lib/checkout/build/vite.config.js +0 -34
- package/lib/checkout/build.js +0 -38
- package/lib/checkout/config.js +0 -97
- package/lib/checkout/create.js +0 -132
- package/lib/checkout/delete.js +0 -26
- package/lib/checkout/deploy.js +0 -59
- package/lib/checkout/dev/index.js +0 -143
- package/lib/checkout/fields.js +0 -29
- package/lib/checkout/index.js +0 -63
- package/lib/checkout/preview.js +0 -52
- package/lib/checkout/pull.js +0 -22
- package/lib/checkout/push.js +0 -141
- package/lib/checkout/template/README.md +0 -34
- package/lib/checkout/template/_gitignore +0 -4
- package/lib/checkout/template/extension.config.js +0 -4
- package/lib/checkout/template/extensions/extension-template/extension.json +0 -10
- package/lib/checkout/template/extensions/extension-template/src/content.html +0 -3
- package/lib/checkout/template/extensions/extension-template/src/index.html +0 -5
- package/lib/checkout/template/extensions/extension-template/src/index.js +0 -11
- package/lib/checkout/template/extensions/extension-template/src/script.html +0 -3
- package/lib/checkout/template/extensions/extension-template/src/style.html +0 -3
- package/lib/checkout/template/package.json +0 -17
- package/lib/checkout/undeploy.js +0 -40
- package/lib/checkout/util.js +0 -201
- package/lib/checkout/verify.js +0 -16
- package/lib/checkout/version.js +0 -7
- package/lib/commands/__tests__/login.test.js +0 -77
- package/lib/commands/__tests__/logout.test.js +0 -29
- package/lib/commands/__tests__/store.test.js +0 -44
- package/lib/commands/__tests__/switch.test.js +0 -45
- package/lib/commands/login.js +0 -120
- package/lib/commands/logout.js +0 -23
- package/lib/commands/store.js +0 -14
- package/lib/commands/switch.js +0 -52
- package/lib/commands/theme/__tests__/delete.test.js +0 -49
- package/lib/commands/theme/__tests__/init.test.js +0 -21
- package/lib/commands/theme/__tests__/list.test.js +0 -80
- package/lib/commands/theme/__tests__/package.test.js +0 -17
- package/lib/commands/theme/__tests__/publish.test.js +0 -61
- package/lib/commands/theme/__tests__/pull.test.js +0 -69
- package/lib/commands/theme/__tests__/push.test.js +0 -63
- package/lib/commands/theme/__tests__/serve.test.js +0 -107
- package/lib/commands/theme/delete.js +0 -64
- package/lib/commands/theme/init.js +0 -51
- package/lib/commands/theme/list.js +0 -28
- package/lib/commands/theme/package.js +0 -37
- package/lib/commands/theme/publish.js +0 -56
- package/lib/commands/theme/pull.js +0 -62
- package/lib/commands/theme/push.js +0 -106
- package/lib/commands/theme/serve.js +0 -153
- package/lib/commands/theme/share.js +0 -20
- package/lib/commands/version.js +0 -6
- package/lib/common/constants.js +0 -24
- package/lib/common/db/partner.js +0 -91
- package/lib/common/inquirers/choose-app.js +0 -79
- package/lib/common/inquirers/choose-partner.js +0 -74
- package/lib/common/log.js +0 -15
- package/lib/common/login.js +0 -125
- package/lib/common/logout.js +0 -16
- package/lib/db/__mocks__/index.js +0 -9
- package/lib/db/__tests__/analytics.test.js +0 -19
- package/lib/db/__tests__/user.test.js +0 -20
- package/lib/db/analytics.js +0 -48
- package/lib/db/index.js +0 -9
- package/lib/db/user.js +0 -71
- package/lib/function/bin/index.js +0 -20
- package/lib/function/bin/javy/javy-arm-linux-v5.0.1 +0 -0
- package/lib/function/bin/javy/javy-arm-macos-v5.0.1 +0 -0
- package/lib/function/bin/javy/javy-x86_64-linux-v5.0.1 +0 -0
- package/lib/function/bin/javy/javy-x86_64-macos-v5.0.1 +0 -0
- package/lib/function/bin/javy/javy-x86_64-windows-v5.0.1 +0 -0
- package/lib/function/commands/compile.js +0 -43
- package/lib/function/commands/create.js +0 -77
- package/lib/function/commands/list.js +0 -18
- package/lib/function/commands/release.js +0 -69
- package/lib/function/index.js +0 -24
- package/lib/function/template/js/README.md +0 -37
- package/lib/function/template/js/_gitignore +0 -4
- package/lib/function/template/js/extension.config.json +0 -5
- package/lib/function/template/js/package.json +0 -17
- package/lib/function/template/js/src/index.js +0 -64
- package/lib/function/utils.js +0 -29
- package/lib/log.js +0 -13
- package/lib/openAPI/__mocks__/index.js +0 -20
- package/lib/openAPI/api.js +0 -76
- package/lib/openAPI/index.js +0 -56
- package/lib/oss.js +0 -102
- package/lib/partner-api/axios.js +0 -67
- package/lib/partner-api/index.js +0 -79
- package/lib/report.js +0 -37
- package/lib/theme-extension/api/index.js +0 -96
- package/lib/theme-extension/commands/build.js +0 -114
- package/lib/theme-extension/commands/connect.js +0 -73
- package/lib/theme-extension/commands/create.js +0 -105
- package/lib/theme-extension/commands/deploy.js +0 -56
- package/lib/theme-extension/commands/list.js +0 -35
- package/lib/theme-extension/commands/release.js +0 -59
- package/lib/theme-extension/commands/serve.js +0 -179
- package/lib/theme-extension/commands/versions.js +0 -55
- package/lib/theme-extension/index.js +0 -29
- package/lib/theme-extension/template/basic-app/README.md +0 -125
- package/lib/theme-extension/template/basic-app/extension.config.json +0 -4
- package/lib/theme-extension/template/basic-app/package.json +0 -18
- package/lib/theme-extension/template/basic-app/theme-app/assets/index.css +0 -4
- package/lib/theme-extension/template/basic-app/theme-app/assets-manifest.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/blocks/index.liquid +0 -16
- package/lib/theme-extension/template/basic-app/theme-app/locales/ar-SA.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/de-DE.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/en-US.json +0 -6
- package/lib/theme-extension/template/basic-app/theme-app/locales/es-ES.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/fr-FR.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/id-ID.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/it-IT.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/ja-JP.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/ko-KR.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/nl-NL.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/pl-PL.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/pt-PT.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/ru-RU.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/th-TH.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/locales/zh-CN.json +0 -6
- package/lib/theme-extension/template/basic-app/theme-app/locales/zh-TW.json +0 -1
- package/lib/theme-extension/template/basic-app/theme-app/snippets/index.liquid +0 -8
- package/lib/theme-extension/template/embed-app/README.md +0 -125
- package/lib/theme-extension/template/embed-app/extension.config.json +0 -4
- package/lib/theme-extension/template/embed-app/package.json +0 -18
- package/lib/theme-extension/template/embed-app/theme-app/assets-manifest.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/blocks/index.liquid +0 -18
- package/lib/theme-extension/template/embed-app/theme-app/locales/ar-SA.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/de-DE.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/en-US.json +0 -6
- package/lib/theme-extension/template/embed-app/theme-app/locales/es-ES.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/fr-FR.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/id-ID.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/it-IT.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/ja-JP.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/ko-KR.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/nl-NL.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/pl-PL.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/pt-PT.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/ru-RU.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/th-TH.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/locales/zh-CN.json +0 -6
- package/lib/theme-extension/template/embed-app/theme-app/locales/zh-TW.json +0 -1
- package/lib/theme-extension/template/embed-app/theme-app/snippets/index.liquid +0 -8
- package/lib/theme-extension/template/embed-app/theme-app/snippets/index_css.liquid +0 -6
- package/lib/theme-extension/utils/config.js +0 -32
- package/lib/theme-extension/utils/index.js +0 -213
- package/lib/tracing.js +0 -50
- package/lib/utils/config.js +0 -12
- package/lib/utils/console.js +0 -33
- package/lib/utils/env.js +0 -17
- package/lib/utils/file.js +0 -48
- package/lib/utils/platform.js +0 -37
- package/lib/utils/utils.js +0 -165
- /package/{lib/checkout → scripts/jsbuild}/dev/client.js +0 -0
- /package/{lib/app/services/extension-build/plugins → scripts/jsbuild/plugin}/vite-plugin-transform-extension-html.js +0 -0
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
const input = readInput();
|
|
2
|
-
const result = run(input);
|
|
3
|
-
writeOutput(result);
|
|
4
|
-
|
|
5
|
-
function run(input) {
|
|
6
|
-
const runResult = {
|
|
7
|
-
operations: {
|
|
8
|
-
update: []
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
input.cart.line_items.forEach((lineItem) => {
|
|
13
|
-
lineItem.product.metafields.forEach((metafield) => {
|
|
14
|
-
// key是自己定义的metafield名。如果有同名的key,可用namespace用于区分
|
|
15
|
-
if (metafield.namespace === 'custom-option' && metafield.key === 'adjust-10-price') {
|
|
16
|
-
runResult.operations.update.push({
|
|
17
|
-
id: lineItem.id,
|
|
18
|
-
price: {
|
|
19
|
-
adjustment_fixed_price: '10' // 设置定制的价格10元
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
return runResult;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
function readInput() {
|
|
29
|
-
const chunkSize = 1024;
|
|
30
|
-
const inputChunks = [];
|
|
31
|
-
let totalBytes = 0;
|
|
32
|
-
// Read all the available bytes
|
|
33
|
-
while (1) {
|
|
34
|
-
const buffer = new Uint8Array(chunkSize);
|
|
35
|
-
// Stdin file descriptor
|
|
36
|
-
const fd = 0;
|
|
37
|
-
const bytesRead = Javy.IO.readSync(fd, buffer);
|
|
38
|
-
totalBytes += bytesRead;
|
|
39
|
-
if (bytesRead === 0) {
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
inputChunks.push(buffer.subarray(0, bytesRead));
|
|
43
|
-
}
|
|
44
|
-
// Assemble input into a single Uint8Array
|
|
45
|
-
const { finalBuffer } = inputChunks.reduce(
|
|
46
|
-
(context, chunk) => {
|
|
47
|
-
context.finalBuffer.set(chunk, context.bufferOffset);
|
|
48
|
-
context.bufferOffset += chunk.length;
|
|
49
|
-
return context;
|
|
50
|
-
},
|
|
51
|
-
{ bufferOffset: 0, finalBuffer: new Uint8Array(totalBytes) }
|
|
52
|
-
);
|
|
53
|
-
|
|
54
|
-
return JSON.parse(new TextDecoder().decode(finalBuffer));
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
// Write output to stdout
|
|
58
|
-
function writeOutput(output) {
|
|
59
|
-
const encodedOutput = new TextEncoder().encode(JSON.stringify(output));
|
|
60
|
-
const buffer = new Uint8Array(encodedOutput);
|
|
61
|
-
// Stdout file descriptor
|
|
62
|
-
const fd = 1;
|
|
63
|
-
Javy.IO.writeSync(fd, buffer);
|
|
64
|
-
}
|
package/lib/function/utils.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
const inquirer = require('inquirer');
|
|
2
|
-
const { getConfigJson, updateConfigJson } = require('../utils/file');
|
|
3
|
-
|
|
4
|
-
async function requestAppSecretWhenNotExist() {
|
|
5
|
-
const config = getConfigJson();
|
|
6
|
-
if (!config.appId || !config.appSecret) {
|
|
7
|
-
const { appId, appSecret } = await inquirer.prompt([
|
|
8
|
-
{
|
|
9
|
-
type: 'input',
|
|
10
|
-
name: 'appId',
|
|
11
|
-
message: 'Enter client id of app:',
|
|
12
|
-
prefix: '*'
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
type: 'input',
|
|
16
|
-
name: 'appSecret',
|
|
17
|
-
message: 'Enter client secret of app:',
|
|
18
|
-
prefix: '*'
|
|
19
|
-
}
|
|
20
|
-
]);
|
|
21
|
-
config.appId = appId;
|
|
22
|
-
config.appSecret = appSecret;
|
|
23
|
-
updateConfigJson(config);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
module.exports = {
|
|
28
|
-
requestAppSecretWhenNotExist
|
|
29
|
-
};
|
package/lib/log.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
const axios = require('axios');
|
|
2
|
-
|
|
3
|
-
const openAPI = axios.create({
|
|
4
|
-
baseURL: `https://developer.myshoplaza.com/openapi/2020-07`
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
openAPI.interceptors.request.use((config) => {
|
|
8
|
-
return config;
|
|
9
|
-
});
|
|
10
|
-
|
|
11
|
-
openAPI.interceptors.response.use(
|
|
12
|
-
function (response) {
|
|
13
|
-
return response;
|
|
14
|
-
},
|
|
15
|
-
function (error) {
|
|
16
|
-
return Promise.reject(error);
|
|
17
|
-
}
|
|
18
|
-
);
|
|
19
|
-
|
|
20
|
-
module.exports = openAPI;
|
package/lib/openAPI/api.js
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
const fs = require('fs-extra');
|
|
2
|
-
const FormData = require('form-data');
|
|
3
|
-
const { getThemeFilenameTypeAndLocation } = require('../utils/utils');
|
|
4
|
-
const openAPI = require('./index');
|
|
5
|
-
|
|
6
|
-
exports.getShopDetail = (config = {}) => {
|
|
7
|
-
return openAPI.get('/shop', config);
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
exports.getThemes = () => {
|
|
11
|
-
return openAPI.get('/themes');
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
exports.getThemeDetail = (theme) => {
|
|
15
|
-
return openAPI.get(`/themes/${theme}`);
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
exports.getDefaultThemeDetail = () => {
|
|
19
|
-
return openAPI.get(`/themes/default-theme`);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
exports.pullTheme = (theme) => {
|
|
23
|
-
return openAPI.get(`/themes/${theme}/download`, { responseType: 'stream' });
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
exports.pushTheme = ({ zipPath, name, version, merchant_theme_id, theme_id }) => {
|
|
27
|
-
const form = new FormData();
|
|
28
|
-
form.append('file', fs.createReadStream(zipPath));
|
|
29
|
-
return openAPI.post('/themes/upload', form, {
|
|
30
|
-
headers: form.getHeaders(),
|
|
31
|
-
params: { name, version, merchant_theme_id, theme_id }
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
exports.getPushTask = (taskId) => {
|
|
36
|
-
return openAPI.get(`/themes/task/${taskId}`);
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
exports.publishTheme = (theme) => {
|
|
40
|
-
return openAPI.patch(`/themes/${theme}/publish`);
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
exports.deleteTheme = (theme) => {
|
|
44
|
-
return openAPI.delete(`/themes/${theme}`);
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
exports.getFileList = (theme) => {
|
|
48
|
-
return openAPI.get(`/themes/${theme}/doctree`);
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
exports.deleteFile = (theme, filename) => {
|
|
52
|
-
const { type, location } = getThemeFilenameTypeAndLocation(filename);
|
|
53
|
-
return openAPI.delete(`/themes/${theme}/doc`, { params: { type, location } });
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
exports.updateFile = (theme, filename) => {
|
|
57
|
-
const { type, location } = getThemeFilenameTypeAndLocation(filename);
|
|
58
|
-
return openAPI.patch(`/themes/${theme}/doc`, {
|
|
59
|
-
doc: {
|
|
60
|
-
type,
|
|
61
|
-
location,
|
|
62
|
-
content: fs.readFileSync(filename, 'utf-8')
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
exports.addFile = (theme, filename) => {
|
|
68
|
-
const { type, location } = getThemeFilenameTypeAndLocation(filename);
|
|
69
|
-
return openAPI.post(`/themes/${theme}/doc`, {
|
|
70
|
-
doc: {
|
|
71
|
-
type,
|
|
72
|
-
location,
|
|
73
|
-
content: fs.readFileSync(filename, 'utf-8')
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
};
|
package/lib/openAPI/index.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
const axios = require('axios');
|
|
2
|
-
const fs = require('fs-extra');
|
|
3
|
-
const chalk = require('chalk');
|
|
4
|
-
const Sentry = require('@sentry/node');
|
|
5
|
-
const { get, set } = require('../db/user');
|
|
6
|
-
const { postExchangeToken } = require('../auth');
|
|
7
|
-
const log = require('../log');
|
|
8
|
-
|
|
9
|
-
const openAPI = axios.create({
|
|
10
|
-
baseURL: `https://${get('store_domain')}/openapi/2020-07`,
|
|
11
|
-
headers: { 'Access-Token': get('exchange_token') }
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
openAPI.interceptors.request.use(
|
|
15
|
-
(config) => {
|
|
16
|
-
if (!get('store_domain')) {
|
|
17
|
-
log.error(
|
|
18
|
-
chalk.red(
|
|
19
|
-
`\n✗ No store found. Please run ${chalk.cyan('shoplazza login --store STORE')} to login to a specific store`
|
|
20
|
-
)
|
|
21
|
-
);
|
|
22
|
-
process.exit(-1);
|
|
23
|
-
}
|
|
24
|
-
return config;
|
|
25
|
-
},
|
|
26
|
-
(error) => {
|
|
27
|
-
console.error(chalk.red(`[REQUEST ERROR] ${error.message}`));
|
|
28
|
-
return Promise.reject(error);
|
|
29
|
-
}
|
|
30
|
-
);
|
|
31
|
-
|
|
32
|
-
openAPI.interceptors.response.use(
|
|
33
|
-
function (response) {
|
|
34
|
-
return response;
|
|
35
|
-
},
|
|
36
|
-
function (error) {
|
|
37
|
-
// Token expired will return a 400 error
|
|
38
|
-
if (error?.response?.status === 400) {
|
|
39
|
-
set({
|
|
40
|
-
exchange_token: ''
|
|
41
|
-
});
|
|
42
|
-
return postExchangeToken(get('store_domain'), { ignoreLogError: error.config.ignoreLogError }).then(() => {
|
|
43
|
-
error.config.headers['Access-Token'] = get('exchange_token');
|
|
44
|
-
return openAPI(error.config);
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
error.response && console.error(
|
|
48
|
-
chalk.red(
|
|
49
|
-
`[RESPONSE ERROR] ${error.response.status} ${error.response.config.baseURL}${error.response.config.url}`
|
|
50
|
-
)
|
|
51
|
-
);
|
|
52
|
-
return Promise.reject(error);
|
|
53
|
-
}
|
|
54
|
-
);
|
|
55
|
-
|
|
56
|
-
module.exports = openAPI;
|
package/lib/oss.js
DELETED
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
const axios = require('axios');
|
|
2
|
-
const fs = require('fs');
|
|
3
|
-
const path = require('path');
|
|
4
|
-
const FormData = require('form-data');
|
|
5
|
-
const chalk = require('chalk');
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* 获取OSS上传功能,适用于上传文件到店铺的OSS服务器
|
|
9
|
-
* @param {string} accessToken - 用于认证的token
|
|
10
|
-
* @param {string} storeDomain - 店铺域名
|
|
11
|
-
* @param {string} storeDomainTips - 店铺域名为空时的提示信息
|
|
12
|
-
* @returns {{ uploadOss: (filePath: string) => Promise<string> }} 返回一个对象,包含上传文件到OSS的函数
|
|
13
|
-
* @example
|
|
14
|
-
* const { uploadOss } = useOss('your-access-token', 'your-store-domain', 'Store domain is required');
|
|
15
|
-
* const ossUrl = await uploadOss('/path/to/file.txt');
|
|
16
|
-
* console.log(ossUrl); // 输出文件的 OSS 地址
|
|
17
|
-
*/
|
|
18
|
-
function useOss(accessToken, storeDomain, storeDomainTips) {
|
|
19
|
-
const ins = axios.create({
|
|
20
|
-
headers: { 'Access-Token': accessToken }
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
ins.interceptors.request.use(
|
|
24
|
-
(config) => {
|
|
25
|
-
if (!storeDomain) {
|
|
26
|
-
console.error(
|
|
27
|
-
// chalk.red(`\n\n`)
|
|
28
|
-
chalk.red(`\n${storeDomainTips}\n`)
|
|
29
|
-
);
|
|
30
|
-
process.exit(-1);
|
|
31
|
-
}
|
|
32
|
-
if (config.url.startsWith('/checkout_extensions')) {
|
|
33
|
-
config.baseURL = `https://${storeDomain}/openapi`;
|
|
34
|
-
}
|
|
35
|
-
return config;
|
|
36
|
-
},
|
|
37
|
-
(error) => {
|
|
38
|
-
console.error(chalk.red(`[REQUEST ERROR] ${error.message}`));
|
|
39
|
-
return Promise.reject(error);
|
|
40
|
-
}
|
|
41
|
-
);
|
|
42
|
-
|
|
43
|
-
ins.interceptors.response.use(
|
|
44
|
-
(response) => {
|
|
45
|
-
return response.data;
|
|
46
|
-
},
|
|
47
|
-
(error) => {
|
|
48
|
-
if (error.response.status === 409) {
|
|
49
|
-
// 文件已存在
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
console.error(
|
|
54
|
-
chalk.red(
|
|
55
|
-
`[RESPONSE ERROR] ${error.response.status} ${error.response.config.baseURL}${error.response.config.url}`
|
|
56
|
-
)
|
|
57
|
-
);
|
|
58
|
-
return Promise.reject(error);
|
|
59
|
-
}
|
|
60
|
-
);
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* 上传文件到OSS
|
|
64
|
-
* @param {string} filePath - 要上传的文件路径
|
|
65
|
-
* @returns {Promise<string>} 返回文件的 OSS 地址
|
|
66
|
-
* @throws {Error} 如果上传失败或发生未知错误,抛出错误
|
|
67
|
-
* @example
|
|
68
|
-
* const ossUrl = await uploadOss('/path/to/file.txt');
|
|
69
|
-
* console.log(ossUrl); // 输出文件的 OSS 地址
|
|
70
|
-
*/
|
|
71
|
-
async function uploadOss(filePath) {
|
|
72
|
-
let fileName = path.basename(filePath);
|
|
73
|
-
const key = 'chick-extension/' + fileName;
|
|
74
|
-
const form = new FormData();
|
|
75
|
-
const url = await ins.get(`/checkout_extensions/file/sign?key=${key}`).then(async (data) => {
|
|
76
|
-
const url = data.write_host;
|
|
77
|
-
form.append('policy', data.policy);
|
|
78
|
-
form.append('OSSAccessKeyId', data.access_id);
|
|
79
|
-
form.append('success_action_status', 200);
|
|
80
|
-
form.append('signature', data.sign);
|
|
81
|
-
form.append('x-oss-forbid-overwrite', 'true');
|
|
82
|
-
form.append('key', key);
|
|
83
|
-
form.append('file', fs.createReadStream(filePath));
|
|
84
|
-
await ins.post(`https:${url}`, form, { headers: form.getHeaders() }).catch((error) => {
|
|
85
|
-
if (error.response?.data.includes('<Code>FileAlreadyExists</Code>')) {
|
|
86
|
-
console.log(chalk.yellow('[WARN] The current file already exists, not need to upload.'));
|
|
87
|
-
return;
|
|
88
|
-
} else {
|
|
89
|
-
return Promise.reject(error);
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
return `${data.read_host}${data.read_host.endsWith('/') ? '' : '/'}${key}`;
|
|
93
|
-
});
|
|
94
|
-
return url;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
return { uploadOss };
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
module.exports = {
|
|
101
|
-
useOss
|
|
102
|
-
};
|
package/lib/partner-api/axios.js
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
const axios = require('axios');
|
|
2
|
-
const { isDevDebug, isStgDebug } = require('../utils/env');
|
|
3
|
-
const { consoleError } = require('../utils/console');
|
|
4
|
-
const { updateConfigJson, getConfigJson } = require('../utils/file');
|
|
5
|
-
|
|
6
|
-
const baseUrl = `https://partners.${isDevDebug() ? 'dev.' : isStgDebug() ? 'stg.' : ''}shoplazza.com`;
|
|
7
|
-
|
|
8
|
-
const instance = axios.create({
|
|
9
|
-
baseURL: baseUrl + '/openapi/2024-07'
|
|
10
|
-
});
|
|
11
|
-
|
|
12
|
-
instance.interceptors.request.use(
|
|
13
|
-
async (config) => {
|
|
14
|
-
const extConfig = getConfigJson();
|
|
15
|
-
let token = extConfig.accessToken;
|
|
16
|
-
if (!token) {
|
|
17
|
-
token = await refreshAccessToken();
|
|
18
|
-
}
|
|
19
|
-
config.headers['Access-Token'] = token;
|
|
20
|
-
config.headers['app-client-id'] = extConfig.appId;
|
|
21
|
-
return config;
|
|
22
|
-
},
|
|
23
|
-
(error) => {
|
|
24
|
-
consoleError(`[REQUEST ERROR] ${error.message}`);
|
|
25
|
-
return Promise.reject(error);
|
|
26
|
-
}
|
|
27
|
-
);
|
|
28
|
-
|
|
29
|
-
instance.interceptors.response.use(
|
|
30
|
-
function (response) {
|
|
31
|
-
return response;
|
|
32
|
-
},
|
|
33
|
-
async function (error) {
|
|
34
|
-
const { config, response } = error || {};
|
|
35
|
-
if (response?.status === 403 && !config._retry) {
|
|
36
|
-
config._retry = true;
|
|
37
|
-
await refreshAccessToken();
|
|
38
|
-
return instance(config);
|
|
39
|
-
}
|
|
40
|
-
error.response &&
|
|
41
|
-
consoleError(
|
|
42
|
-
`[RESPONSE ERROR] ${error.response.status} ${error.response.config.baseURL}${error.response.config.url}`
|
|
43
|
-
);
|
|
44
|
-
return Promise.reject(error);
|
|
45
|
-
}
|
|
46
|
-
);
|
|
47
|
-
|
|
48
|
-
function refreshAccessToken() {
|
|
49
|
-
const extensionConfig = getConfigJson();
|
|
50
|
-
if (!extensionConfig.appId || !extensionConfig.appSecret) {
|
|
51
|
-
consoleError(`must provide 'appId' and 'appSecret' in extension.config.json `);
|
|
52
|
-
process.exit(-1);
|
|
53
|
-
}
|
|
54
|
-
return axios
|
|
55
|
-
.post(baseUrl + '/partner/oauth/token', {
|
|
56
|
-
client_id: extensionConfig.appId,
|
|
57
|
-
client_secret: extensionConfig.appSecret,
|
|
58
|
-
grant_type: 'client_credentials'
|
|
59
|
-
})
|
|
60
|
-
.then((res) => {
|
|
61
|
-
const token = res.data.access_token;
|
|
62
|
-
updateConfigJson({ accessToken: token });
|
|
63
|
-
return token;
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
module.exports = instance;
|
package/lib/partner-api/index.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
const axios = require('./axios');
|
|
2
|
-
// const Aaxios = require('axios');
|
|
3
|
-
|
|
4
|
-
// const axios = Aaxios.create({
|
|
5
|
-
// baseURL: 'http://igw-traefik.internal.svc.cluster.local/service/functions-api/api/partner-openapi/2025-03',
|
|
6
|
-
// headers: {
|
|
7
|
-
// 'x-rf': 'feature-ymq',
|
|
8
|
-
// 'app-client-id': '123123'
|
|
9
|
-
// }
|
|
10
|
-
// });
|
|
11
|
-
|
|
12
|
-
function createFunctionExtension(form) {
|
|
13
|
-
return axios
|
|
14
|
-
.post('/functions', form, {
|
|
15
|
-
headers: {
|
|
16
|
-
...form.getHeaders()
|
|
17
|
-
}
|
|
18
|
-
})
|
|
19
|
-
.then((res) => res.data?.data);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
function updateFunctionExtension(functionId, form) {
|
|
23
|
-
return axios
|
|
24
|
-
.patch(`/functions/${functionId}`, form, {
|
|
25
|
-
headers: {
|
|
26
|
-
...form.getHeaders()
|
|
27
|
-
}
|
|
28
|
-
})
|
|
29
|
-
.then((res) => res.data?.data);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
function getFunctionList(params = { page: 1, limit: 1000 }) {
|
|
33
|
-
return axios
|
|
34
|
-
.get(
|
|
35
|
-
'/functions',
|
|
36
|
-
{ params },
|
|
37
|
-
{
|
|
38
|
-
headers: {
|
|
39
|
-
'Content-Type': 'application/ x-www-form-urlencoded',
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
)
|
|
43
|
-
.then((res) => res.data?.data);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* 连接App
|
|
48
|
-
*/
|
|
49
|
-
async function toConnectApp(data) {
|
|
50
|
-
return axios.post(
|
|
51
|
-
'/theme-extensions/connection',
|
|
52
|
-
{
|
|
53
|
-
extension_id: data.extensionId,
|
|
54
|
-
type: data.type || 'link'
|
|
55
|
-
}
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* 应用主题插件到App
|
|
61
|
-
*/
|
|
62
|
-
async function toReleaseApp(data) {
|
|
63
|
-
return axios.post(
|
|
64
|
-
'/theme-extensions/publications',
|
|
65
|
-
{
|
|
66
|
-
extension_id: data.extensionId,
|
|
67
|
-
version_id: data.versionId,
|
|
68
|
-
type: data.type || 'enable'
|
|
69
|
-
}
|
|
70
|
-
);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
module.exports = {
|
|
74
|
-
createFunctionExtension,
|
|
75
|
-
updateFunctionExtension,
|
|
76
|
-
getFunctionList,
|
|
77
|
-
toConnectApp,
|
|
78
|
-
toReleaseApp
|
|
79
|
-
};
|
package/lib/report.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
const { get } = require('./db/user');
|
|
2
|
-
const { isEnabledAnalytics } = require('./db/analytics');
|
|
3
|
-
const pkg = require('../package.json');
|
|
4
|
-
const axios = require('axios');
|
|
5
|
-
|
|
6
|
-
const report = (eventName, properties = {}) => {
|
|
7
|
-
const user_id = get('user_id');
|
|
8
|
-
if (!isEnabledAnalytics(user_id)) return;
|
|
9
|
-
axios.post(
|
|
10
|
-
`https://r.shoplazza.com/beacon/sa.gif`,
|
|
11
|
-
`data=${encodeURIComponent(
|
|
12
|
-
Buffer.from(
|
|
13
|
-
JSON.stringify({
|
|
14
|
-
distinct_id: user_id,
|
|
15
|
-
event: eventName,
|
|
16
|
-
type: 'track',
|
|
17
|
-
_track_id: parseInt(Math.random() * (9999999999 - 999999999 + 1) + 999999999, 10),
|
|
18
|
-
properties: {
|
|
19
|
-
platform: 'shoplazza-cli',
|
|
20
|
-
cli_version: pkg.version,
|
|
21
|
-
user_id,
|
|
22
|
-
...properties
|
|
23
|
-
}
|
|
24
|
-
})
|
|
25
|
-
).toString('base64')
|
|
26
|
-
)}`,
|
|
27
|
-
{
|
|
28
|
-
headers: { 'content-type': 'text/plain;charset=UTF-8' },
|
|
29
|
-
params: {
|
|
30
|
-
project: 'production',
|
|
31
|
-
gzip: 0
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
);
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
module.exports = report;
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
const instance = require('../../openAPI/index');
|
|
2
|
-
const request = require('../../partner-api/axios');
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* 获取主题列表
|
|
6
|
-
*/
|
|
7
|
-
async function getThemeList() {
|
|
8
|
-
return instance.get('/themes');
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* 获取店铺私有主题插件列表
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
async function getThemeAppList() {
|
|
16
|
-
return instance.get('/theme-extensions');
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* 创建主题插件 or 更新主题插件信息
|
|
21
|
-
*/
|
|
22
|
-
async function toCreateThemeApp(data) {
|
|
23
|
-
return instance.put('/theme-extensions', data);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* 上传主题插件
|
|
28
|
-
*/
|
|
29
|
-
async function toUploadThemeApp(extension_id, data) {
|
|
30
|
-
return instance.patch(`/theme-extensions/${extension_id}/dev-doctree`, data);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* 新增文件
|
|
35
|
-
*/
|
|
36
|
-
async function toCreateFile(extension_id, data) {
|
|
37
|
-
return instance.post(`/theme-extensions/${extension_id}/dev-doc`, data);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* 更新文件
|
|
42
|
-
*/
|
|
43
|
-
async function toUpdateFile(extension_id, data) {
|
|
44
|
-
return instance.patch(`/theme-extensions/${extension_id}/dev-doc`, data);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* 删除文件
|
|
49
|
-
*/
|
|
50
|
-
async function toDeleteFile(extension_id, params) {
|
|
51
|
-
return instance.delete(`/theme-extensions/${extension_id}/dev-doc`, {
|
|
52
|
-
params
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* 获取任务状态
|
|
58
|
-
*/
|
|
59
|
-
async function getTaskStatus(data) {
|
|
60
|
-
return instance.get(`/theme-extensions/version-tasks/${data.taskId}`);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* 获取主题插件版本列表
|
|
65
|
-
*/
|
|
66
|
-
async function getThemeAppVersionList(extension_id) {
|
|
67
|
-
return instance.get(`/theme-extensions/${extension_id}/versions`);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* 创建主题插件版本
|
|
72
|
-
*/
|
|
73
|
-
async function toCreateThemeAppVersion(data) {
|
|
74
|
-
return instance.post(`/theme-extensions/version-tasks`, data);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* 部署主题插件
|
|
79
|
-
*/
|
|
80
|
-
async function toDeployThemeApp(data) {
|
|
81
|
-
return instance.post(`/theme-extensions/publications`, data);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
module.exports = {
|
|
85
|
-
getThemeList,
|
|
86
|
-
getThemeAppList,
|
|
87
|
-
toCreateThemeApp,
|
|
88
|
-
toCreateFile,
|
|
89
|
-
toUpdateFile,
|
|
90
|
-
toDeleteFile,
|
|
91
|
-
toUploadThemeApp,
|
|
92
|
-
getThemeAppVersionList,
|
|
93
|
-
toCreateThemeAppVersion,
|
|
94
|
-
toDeployThemeApp,
|
|
95
|
-
getTaskStatus,
|
|
96
|
-
};
|