@shoplineos/cli 1.5.2 → 1.5.5
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/dist/commands/auth/index.js +2 -1
- package/dist/commands/auth/login.js +2 -1
- package/dist/commands/auth/logout.js +2 -1
- package/dist/commands/auth/whoami.js +2 -1
- package/dist/commands/extension/build.js +2 -1
- package/dist/commands/extension/common-options.js +2 -1
- package/dist/commands/extension/connect.js +2 -1
- package/dist/commands/extension/create.js +2 -1
- package/dist/commands/extension/index.js +2 -1
- package/dist/commands/extension/push.js +2 -1
- package/dist/commands/extension/serve.js +2 -1
- package/dist/commands/index.js +2 -1
- package/dist/commands/report.js +2 -1
- package/dist/commands/theme/check.js +2 -1
- package/dist/commands/theme/console.js +2 -1
- package/dist/commands/theme/index.js +2 -1
- package/dist/commands/theme/init.js +2 -1
- package/dist/commands/theme/list.js +2 -1
- package/dist/commands/theme/package.js +2 -1
- package/dist/commands/theme/pull.js +2 -1
- package/dist/commands/theme/push.js +2 -1
- package/dist/commands/theme/serve.js +2 -1
- package/dist/commands/theme/theme-common-options.js +2 -1
- package/dist/eventlistener.d.js +2 -1
- package/dist/helpers/config.js +2 -1
- package/dist/helpers/monitoring-bootstrap.js +2 -0
- package/dist/helpers/monitoring-environment.js +2 -0
- package/dist/helpers/open-admin-url.js +2 -1
- package/dist/helpers/process-errors.js +2 -0
- package/dist/helpers/report.js +2 -1
- package/dist/helpers/sentry.js +2 -1
- package/dist/helpers/sum.js +2 -1
- package/dist/helpers/verify-login.js +2 -1
- package/dist/services/auth/logout.js +2 -1
- package/dist/services/dev-server/index.js +3 -2
- package/dist/services/dev-server/sse.js +2 -1
- package/dist/services/dev-server/web/socket-client.js +2 -1
- package/dist/services/dev-server-3/index.js +2 -1
- package/dist/services/dev-server-3/server.js +3 -2
- package/dist/services/dev-server-3/sse.js +2 -1
- package/dist/services/dev-server-3/web/socket-client.js +2 -1
- package/dist/services/extension/api.js +2 -1
- package/dist/services/extension/check-extension-version.js +2 -1
- package/dist/services/extension/clone-repo.js +2 -1
- package/dist/services/extension/connect/context.js +2 -1
- package/dist/services/extension/connect/index.js +2 -1
- package/dist/services/extension/connect/validate.js +2 -1
- package/dist/services/extension/const.js +2 -1
- package/dist/services/extension/context.js +2 -1
- package/dist/services/extension/create/index.js +2 -1
- package/dist/services/extension/ensure-project-type.js +2 -1
- package/dist/services/extension/env.js +2 -1
- package/dist/services/extension/extension.js +2 -1
- package/dist/services/extension/functions/generate.js +2 -1
- package/dist/services/extension/functions/info.js +2 -1
- package/dist/services/extension/functions/push.js +2 -1
- package/dist/services/extension/functions/schemas.js +2 -1
- package/dist/services/extension/generate.js +2 -1
- package/dist/services/extension/index.js +2 -1
- package/dist/services/extension/inquirer.js +2 -1
- package/dist/services/extension/loader.js +2 -1
- package/dist/services/extension/openapi.js +2 -1
- package/dist/services/extension/push/build.js +2 -1
- package/dist/services/extension/push/checkout-ui.js +2 -1
- package/dist/services/extension/push/index.js +2 -1
- package/dist/services/extension/push/pixels.js +2 -1
- package/dist/services/extension/push/post-purchase.js +2 -1
- package/dist/services/extension/push/shopper.js +2 -1
- package/dist/services/extension/push/show.js +2 -1
- package/dist/services/extension/push/theme.js +2 -1
- package/dist/services/extension/push/zip.js +2 -1
- package/dist/services/extension/register.js +2 -1
- package/dist/services/extension/schemas.js +2 -1
- package/dist/services/extension/serve/bundler.js +2 -1
- package/dist/services/extension/serve/extension.js +2 -1
- package/dist/services/extension/serve/localization.js +2 -1
- package/dist/services/extension/serve/models.js +2 -1
- package/dist/services/extension/serve/payload.js +2 -1
- package/dist/services/extension/serve/server/middlewares.js +2 -1
- package/dist/services/extension/serve/server.js +2 -1
- package/dist/services/extension/serve/websocket/handlers.js +2 -1
- package/dist/services/extension/serve/websocket/models.js +2 -1
- package/dist/services/extension/serve/websocket.js +2 -1
- package/dist/services/extension/serve.js +2 -1
- package/dist/services/extension/tunnel/cloudflared.js +2 -1
- package/dist/services/extension/tunnel/install-cloudflared.js +2 -1
- package/dist/services/extension/types.js +2 -1
- package/dist/services/extension/utils.js +2 -1
- package/dist/services/extension/validate.js +2 -1
- package/dist/services/extension/zip.js +2 -1
- package/dist/services/extension/zip3.js +2 -1
- package/dist/services/identity-auth/api.js +2 -1
- package/dist/services/identity-auth/const.js +2 -1
- package/dist/services/identity-auth/create-server.js +2 -1
- package/dist/services/identity-auth/index.js +2 -1
- package/dist/services/identity-auth/store-enter.js +2 -1
- package/dist/services/report/index.js +2 -1
- package/dist/services/theme/3.0/api.js +4 -3
- package/dist/services/theme/3.0/check.js +2 -1
- package/dist/services/theme/3.0/file.js +2 -1
- package/dist/services/theme/3.0/package.js +2 -1
- package/dist/services/theme/3.0/pull.js +2 -1
- package/dist/services/theme/3.0/push.js +2 -1
- package/dist/services/theme/3.0/remote-watcher.js +2 -1
- package/dist/services/theme/3.0/theme.js +4 -3
- package/dist/services/theme/api.js +2 -1
- package/dist/services/theme/check/check.js +2 -1
- package/dist/services/theme/check/config.js +2 -1
- package/dist/services/theme/check/exception.js +2 -1
- package/dist/services/theme/check/index.js +2 -1
- package/dist/services/theme/check/types.js +2 -1
- package/dist/services/theme/checksum.js +2 -1
- package/dist/services/theme/choose-theme-list.js +2 -1
- package/dist/services/theme/console/api.js +2 -1
- package/dist/services/theme/console/console.js +4 -3
- package/dist/services/theme/console/index.js +2 -1
- package/dist/services/theme/const.js +2 -1
- package/dist/services/theme/dev-server-monitoring.js +2 -0
- package/dist/services/theme/file.js +2 -1
- package/dist/services/theme/git.js +2 -1
- package/dist/services/theme/index.js +4 -3
- package/dist/services/theme/inquirer.js +2 -1
- package/dist/services/theme/no-second-check.js +2 -1
- package/dist/services/theme/operation.js +2 -1
- package/dist/services/theme/package.js +2 -1
- package/dist/services/theme/proxy-error.js +2 -0
- package/dist/services/theme/pull.js +2 -1
- package/dist/services/theme/push.js +2 -1
- package/dist/services/theme/remote-watcher.js +2 -1
- package/dist/services/theme/types.js +2 -1
- package/dist/services/theme/update-queue.js +2 -1
- package/dist/services/theme/update.js +2 -1
- package/dist/services/theme/uploader.js +2 -1
- package/dist/services/theme/utils.js +3 -1
- package/dist/services/theme/watcher-monitoring.js +2 -0
- package/dist/type.d.js +2 -1
- package/dist/types/env.d.js +2 -1
- package/dist/types/type.d.js +2 -1
- package/dist/utils/abort.js +2 -1
- package/dist/utils/check-theme-type-version.js +2 -1
- package/dist/utils/check-update.js +2 -1
- package/dist/utils/colors.js +2 -1
- package/dist/utils/const.js +2 -1
- package/dist/utils/content-tokens.js +2 -1
- package/dist/utils/debug.js +2 -1
- package/dist/utils/decorators.js +2 -1
- package/dist/utils/environments.js +2 -1
- package/dist/utils/error.js +2 -1
- package/dist/utils/exit-hook.js +2 -1
- package/dist/utils/find-up-node-module.js +2 -1
- package/dist/utils/format-protocol.js +2 -1
- package/dist/utils/fs.js +2 -1
- package/dist/utils/get-objects-diff.js +2 -1
- package/dist/utils/get-real-referer.js +2 -1
- package/dist/utils/get-store-env.js +2 -1
- package/dist/utils/get-url-handle.js +2 -1
- package/dist/utils/git.js +2 -1
- package/dist/utils/has-command.js +2 -1
- package/dist/utils/hbs.js +2 -1
- package/dist/utils/http.js +2 -1
- package/dist/utils/ignore-filter.js +2 -1
- package/dist/utils/import-esm.js +2 -1
- package/dist/utils/include-filter.js +2 -1
- package/dist/utils/load-local-preset.js +2 -1
- package/dist/utils/local.js +2 -1
- package/dist/utils/logger.js +2 -1
- package/dist/utils/messages.js +3 -2
- package/dist/utils/misc.js +2 -1
- package/dist/utils/node-package-manager.js +2 -1
- package/dist/utils/ora-manager.js +2 -1
- package/dist/utils/os.js +2 -1
- package/dist/utils/output.js +2 -1
- package/dist/utils/parse-options.js +2 -1
- package/dist/utils/path-matcher.js +2 -1
- package/dist/utils/path.js +2 -1
- package/dist/utils/print-preview.js +2 -1
- package/dist/utils/program.js +2 -1
- package/dist/utils/replace-dot.js +2 -1
- package/dist/utils/replace-top-level-com.js +2 -1
- package/dist/utils/retry.js +2 -1
- package/dist/utils/schema.js +2 -1
- package/dist/utils/string.js +2 -1
- package/dist/utils/system.js +2 -1
- package/dist/utils/tcp.js +2 -1
- package/dist/utils/tiny-queue.js +2 -1
- package/dist/utils/toml.js +2 -1
- package/dist/utils/tree-kill.js +2 -1
- package/dist/utils/ui/Tasks.js +2 -1
- package/dist/utils/ui/alert.js +2 -1
- package/dist/utils/ui/components/Alert.js +2 -1
- package/dist/utils/ui/components/Banner.js +2 -1
- package/dist/utils/ui/components/Command.js +2 -1
- package/dist/utils/ui/components/ConcurrentOutput.js +2 -1
- package/dist/utils/ui/components/FatalError.js +2 -1
- package/dist/utils/ui/components/FilePath.js +2 -1
- package/dist/utils/ui/components/Link.js +2 -1
- package/dist/utils/ui/components/List.js +2 -1
- package/dist/utils/ui/components/Prompts/InfoTable.js +2 -1
- package/dist/utils/ui/components/SelectInput.js +2 -1
- package/dist/utils/ui/components/SelectPrompt.js +2 -1
- package/dist/utils/ui/components/Subdued.js +2 -1
- package/dist/utils/ui/components/TextAnimation.js +2 -1
- package/dist/utils/ui/components/TextInput.js +2 -1
- package/dist/utils/ui/components/TextPrompt.js +2 -1
- package/dist/utils/ui/components/TokenizedText.js +2 -1
- package/dist/utils/ui/components/UserInput.js +2 -1
- package/dist/utils/ui/contexts/LinksContext.js +2 -1
- package/dist/utils/ui/hooks/use-async-and-unmount.js +2 -1
- package/dist/utils/ui/hooks/use-layout.js +2 -1
- package/dist/utils/ui/render.js +2 -1
- package/dist/utils/ui/ui.js +2 -1
- package/dist/utils/ui/utilities.js +2 -1
- package/dist/utils/winston/index.js +2 -1
- package/dist/utils/winston/log-file.js +3 -2
- package/dist/utils/write-file-tree.js +2 -1
- package/dist/vendor/logger-apm-node/index.js +11 -0
- package/dist/vendor/logger-apm-node/licenses.txt +296 -0
- package/package.json +14 -7
- package/dist/commands/extension/tunnel.js +0 -1
- package/dist/services/dev-server/socket.js +0 -1
- package/dist/services/extension/create.js +0 -1
- package/dist/services/extension/push.js +0 -1
- package/dist/services/extension/resolve-env.js +0 -1
- package/dist/services/extension/tunnel.js +0 -3
- package/dist/services/extension/write-env-file.js +0 -1
- package/dist/services/theme/draft.js +0 -1
- package/dist/services/theme/types.d.js +0 -1
- package/dist/utils/ui.js +0 -1
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{resolveConfig:()=>u,getDefaultConfig:()=>o,getMergedConfig:()=>a});const e=function(e){return e&&e.__esModule?e:{default:e}}(require("yaml")),r=require("@shoplinedev/theme-check"),t=require("../../../utils/fs"),i=require("../../../utils/path"),n=require("./types");function l(e){return Array.isArray(e)&&e.length>0?{global:{include_categories:e.map(e=>n.ECheckCategory[e])}}:null}async function u(r,n,u){if(!u)return l(n);let o=(0,i.joinPath)(r,u);if(await (0,t.fileExists)(o)){let r=e.default.parse(await (0,t.readFile)(o)),i=l(n);return i?{...r,global:{...r.global,include_categories:i.global.include_categories}}:r}return l(n)}function o(){return(0,r.generateConfig)()}function a(e){return(0,r.listEnabledConfig)(e||{})}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{resolveConfig:()=>u,getDefaultConfig:()=>o,getMergedConfig:()=>a});const e=function(e){return e&&e.__esModule?e:{default:e}}(require("yaml")),r=require("@shoplinedev/theme-check"),t=require("../../../utils/fs"),i=require("../../../utils/path"),n=require("./types");function l(e){return Array.isArray(e)&&e.length>0?{global:{include_categories:e.map(e=>n.ECheckCategory[e])}}:null}async function u(r,n,u){if(!u)return l(n);let o=(0,i.joinPath)(r,u);if(await (0,t.fileExists)(o)){let r=e.default.parse(await (0,t.readFile)(o)),i=l(n);return i?{...r,global:{...r.global,include_categories:i.global.include_categories}}:r}return l(n)}function o(){return(0,r.generateConfig)()}function a(e){return(0,r.listEnabledConfig)(e||{})}
|
|
2
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";var e;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{SeverityNumber:()=>e,CliCheckError:()=>r.CliCheckError,Errors:()=>r.Errors,Exception:()=>r.Exception,Severity:()=>r.Severity});const r=require("@shoplinedev/theme-check");!function(e){e[e.error=0]="error",e[e.suggestion=1]="suggestion",e[e.style=2]="style"}(e||(e={}));
|
|
1
|
+
"use strict";var e;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{SeverityNumber:()=>e,CliCheckError:()=>r.CliCheckError,Errors:()=>r.Errors,Exception:()=>r.Exception,Severity:()=>r.Severity});const r=require("@shoplinedev/theme-check");!function(e){e[e.error=0]="error",e[e.suggestion=1]="suggestion",e[e.style=2]="style"}(e||(e={}));
|
|
2
|
+
//# sourceMappingURL=exception.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>l});const e=require("@shoplinedev/theme-check"),t=require("../../../utils/ui/render"),r=require("./check"),i=require("./config"),o=require("./types"),n=require("../../../utils/output"),u=function(e){return e&&e.__esModule?e:{default:e}}(require("../../../utils/winston"));async function l(l){var a;let{config:c,path:f,init:s,print:d,list:h,output:g,failLevel:m,category:k}=l;u.default.log("Resolve theme config...");let p=await (0,i.resolveConfig)(f,k,c);if(s){u.default.log("Init theme config in current directory..."),await (0,r.initConfig)(f,p),u.default.log("Init .theme-check.yml in current directory done.");return}if(d){u.default.log("Print active config..."),await (0,r.outputActiveConfig)(f,p),u.default.log("Print active config done.");return}if(h){u.default.log("List enabled checks..."),await (0,r.outputActiveChecks)(p),u.default.log("List enabled checks done.");return}let y=(0,r.getConfigRoot)(f,null==p?void 0:null===(a=p.global)||void 0===a?void 0:a.root);u.default.log("Check theme...");let{errors:v,checkFiles:C}=await (0,e.cliCheckTheme)({themePath:y,config:p}),O=(0,r.formatErrors)(v),b=(0,r.sortOffenses)(v),q=Object.values(C).flat();if(g===o.ECheckOutput.text){u.default.log("Render theme check summary..."),(0,r.renderOffensesText)(b,y);let e=O.length?t.renderInfo:t.renderSuccess;e({headline:"Theme Check Summary.",body:(0,r.formatSummary)(O,b,q)})}if(g===o.ECheckOutput.json){u.default.log("Render theme check summary in JSON format...");let{stdout:e}=process;(0,r.isExtendedWriteStream)(e)&&e._handle.setBlocking(!0),(0,n.outputInfo)(JSON.stringify((0,r.formatOffensesJson)(b)))}return(0,r.handleExit)(O,m)}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>l});const e=require("@shoplinedev/theme-check"),t=require("../../../utils/ui/render"),r=require("./check"),i=require("./config"),o=require("./types"),n=require("../../../utils/output"),u=function(e){return e&&e.__esModule?e:{default:e}}(require("../../../utils/winston"));async function l(l){var a;let{config:c,path:f,init:s,print:d,list:h,output:g,failLevel:m,category:k}=l;u.default.log("Resolve theme config...");let p=await (0,i.resolveConfig)(f,k,c);if(s){u.default.log("Init theme config in current directory..."),await (0,r.initConfig)(f,p),u.default.log("Init .theme-check.yml in current directory done.");return}if(d){u.default.log("Print active config..."),await (0,r.outputActiveConfig)(f,p),u.default.log("Print active config done.");return}if(h){u.default.log("List enabled checks..."),await (0,r.outputActiveChecks)(p),u.default.log("List enabled checks done.");return}let y=(0,r.getConfigRoot)(f,null==p?void 0:null===(a=p.global)||void 0===a?void 0:a.root);u.default.log("Check theme...");let{errors:v,checkFiles:C}=await (0,e.cliCheckTheme)({themePath:y,config:p}),O=(0,r.formatErrors)(v),b=(0,r.sortOffenses)(v),q=Object.values(C).flat();if(g===o.ECheckOutput.text){u.default.log("Render theme check summary..."),(0,r.renderOffensesText)(b,y);let e=O.length?t.renderInfo:t.renderSuccess;e({headline:"Theme Check Summary.",body:(0,r.formatSummary)(O,b,q)})}if(g===o.ECheckOutput.json){u.default.log("Render theme check summary in JSON format...");let{stdout:e}=process;(0,r.isExtendedWriteStream)(e)&&e._handle.setBlocking(!0),(0,n.outputInfo)(JSON.stringify((0,r.formatOffensesJson)(b)))}return(0,r.handleExit)(O,m)}
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";var e,t,o;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var o in t)Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}(exports,{EFailLevel:()=>e,ECheckCategory:()=>t,ECheckOutput:()=>o,Config:()=>n.Config,Category:()=>n.Category,CheckConfig:()=>n.CheckConfig,GlobalConfig:()=>n.GlobalConfig});const n=require("@shoplinedev/theme-check");!function(e){e.error="error",e.suggestion="suggestion",e.style="style"}(e||(e={})),function(e){e.json="json",e.handlebars="handlebars",e.translation="translation",e.html="html"}(t||(t={})),function(e){e.text="text",e.json="json"}(o||(o={}));
|
|
1
|
+
"use strict";var e,t,o;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var o in t)Object.defineProperty(e,o,{enumerable:!0,get:t[o]})}(exports,{EFailLevel:()=>e,ECheckCategory:()=>t,ECheckOutput:()=>o,Config:()=>n.Config,Category:()=>n.Category,CheckConfig:()=>n.CheckConfig,GlobalConfig:()=>n.GlobalConfig});const n=require("@shoplinedev/theme-check");!function(e){e.error="error",e.suggestion="suggestion",e.style="style"}(e||(e={})),function(e){e.json="json",e.handlebars="handlebars",e.translation="translation",e.html="html"}(t||(t={})),function(e){e.text="text",e.json="json"}(o||(o={}));
|
|
2
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>e});class e{has(e){return!!this.get(e)}fileHasChanged(t){return this.checksumByKey.get(e.toKey(t))!==t.checksum}keys(){return Array.from(this.checksumByKey.keys())}delete(t){"string"==typeof t?this.checksumByKey.delete(t):this.checksumByKey.delete(e.toKey(t))}get(t){return this.checksumByKey.get(e.toKey(t))}set(e,t){this.checksumByKey.set(e,t||"")}static toKey(e){return e.fileName}constructor(){!function(e,t,s){t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s}(this,"checksumByKey",new Map)}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>e});class e{has(e){return!!this.get(e)}fileHasChanged(t){return this.checksumByKey.get(e.toKey(t))!==t.checksum}keys(){return Array.from(this.checksumByKey.keys())}delete(t){"string"==typeof t?this.checksumByKey.delete(t):this.checksumByKey.delete(e.toKey(t))}get(t){return this.checksumByKey.get(e.toKey(t))}set(e,t){this.checksumByKey.set(e,t||"")}static toKey(e){return e.fileName}constructor(){!function(e,t,s){t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s}(this,"checksumByKey",new Map)}}
|
|
2
|
+
//# sourceMappingURL=checksum.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var s in t)Object.defineProperty(e,s,{enumerable:!0,get:t[s]})}(exports,{prompt:()=>m,getAllThemeList:()=>p,getSortedThemeList:()=>c,default:()=>g,themePresenter:()=>T});const e=o(require("inquirer")),t=require("lodash"),s=o(require("../../helpers/config")),u=require("./api"),i=require("./const"),n=require("./types"),a=require("../../utils/messages"),l=o(require("../../utils/colors")),r=require("../../utils/error");function o(e){return e&&e.__esModule?e:{default:e}}const m=e.default.createPromptModule(),d={[n.EThemeStatus.Published]:"green",[n.EThemeStatus.Unpublished]:"yellow",[n.EThemeStatus.Development]:"magenta"},h={[n.EThemeStatus.Published]:"live",[n.EThemeStatus.Unpublished]:"unpublished",[n.EThemeStatus.Development]:"development"};async function p(){let e=await (0,u.getThemeListWithPagination)({pageNum:1,pageSize:i.DEFAULT_PAGE_SIZE,includePublish:!0}),t=(null==e?void 0:e.list)||[];return t}async function c(e){let s=await p(),u=[n.EThemeStatus.Published,n.EThemeStatus.Unpublished,n.EThemeStatus.Development],i=(0,t.sortBy)(s,e=>(0,t.indexOf)(u,e.status));return"function"==typeof e?i.map(e):i}async function f(){var e;let t={originThemes:[],choices:[],publishedThemeId:""},u=await c();return u=function(e){let t=s.default.developmentThemeId,u=s.default.developmentThemeName;return t?e.concat({name:u,status:n.EThemeStatus.Development,id:t}):e}(u),t.choices=u.map(e=>({name:T(e,"short"),value:e.id})),t.publishedThemeId=null===(e=u.find(e=>e.status===n.EThemeStatus.Published))||void 0===e?void 0:e.id,t.originThemes=u,t}async function g(e){var t;let{choices:s,publishedThemeId:u,originThemes:n}=await f();if(!s.length)throw new r.AbortError((0,a.getMessage)("theme.errors.no_themes"));let{themeId:l}=await m([{type:"list",name:"themeId",message:"pull"===e?"Select a theme to pull from":"Select theme to push to",pageSize:i.DEFAULT_PAGE_SIZE,default:u,loop:!1,choices:s}]),o=null===(t=n.find(e=>e.id===l))||void 0===t?void 0:t.status;return{themeId:l,isPublished:!!(l&&u&&u===l),status:o}}function T(e,t="long"){let u=d[e.status],i=[`${l.default[u](`[${h[e.status]}]`)}`];if(e.id===s.default.developmentThemeId&&i.push(l.default.cyan("[yours]")),"long"===t){let t=(0,a.getMessage)("theme.list.long",{id:e.id,name:e.name,tags:i.join(" ")});return t}let n=(0,a.getMessage)("theme.list.short",{name:e.name,tags:i.join(" ")});return n}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var s in t)Object.defineProperty(e,s,{enumerable:!0,get:t[s]})}(exports,{prompt:()=>m,getAllThemeList:()=>p,getSortedThemeList:()=>c,default:()=>g,themePresenter:()=>T});const e=o(require("inquirer")),t=require("lodash"),s=o(require("../../helpers/config")),u=require("./api"),i=require("./const"),n=require("./types"),a=require("../../utils/messages"),l=o(require("../../utils/colors")),r=require("../../utils/error");function o(e){return e&&e.__esModule?e:{default:e}}const m=e.default.createPromptModule(),d={[n.EThemeStatus.Published]:"green",[n.EThemeStatus.Unpublished]:"yellow",[n.EThemeStatus.Development]:"magenta"},h={[n.EThemeStatus.Published]:"live",[n.EThemeStatus.Unpublished]:"unpublished",[n.EThemeStatus.Development]:"development"};async function p(){let e=await (0,u.getThemeListWithPagination)({pageNum:1,pageSize:i.DEFAULT_PAGE_SIZE,includePublish:!0}),t=(null==e?void 0:e.list)||[];return t}async function c(e){let s=await p(),u=[n.EThemeStatus.Published,n.EThemeStatus.Unpublished,n.EThemeStatus.Development],i=(0,t.sortBy)(s,e=>(0,t.indexOf)(u,e.status));return"function"==typeof e?i.map(e):i}async function f(){var e;let t={originThemes:[],choices:[],publishedThemeId:""},u=await c();return u=function(e){let t=s.default.developmentThemeId,u=s.default.developmentThemeName;return t?e.concat({name:u,status:n.EThemeStatus.Development,id:t}):e}(u),t.choices=u.map(e=>({name:T(e,"short"),value:e.id})),t.publishedThemeId=null===(e=u.find(e=>e.status===n.EThemeStatus.Published))||void 0===e?void 0:e.id,t.originThemes=u,t}async function g(e){var t;let{choices:s,publishedThemeId:u,originThemes:n}=await f();if(!s.length)throw new r.AbortError((0,a.getMessage)("theme.errors.no_themes"));let{themeId:l}=await m([{type:"list",name:"themeId",message:"pull"===e?"Select a theme to pull from":"Select theme to push to",pageSize:i.DEFAULT_PAGE_SIZE,default:u,loop:!1,choices:s}]),o=null===(t=n.find(e=>e.id===l))||void 0===t?void 0:t.status;return{themeId:l,isPublished:!!(l&&u&&u===l),status:o}}function T(e,t="long"){let u=d[e.status],i=[`${l.default[u](`[${h[e.status]}]`)}`];if(e.id===s.default.developmentThemeId&&i.push(l.default.cyan("[yours]")),"long"===t){let t=(0,a.getMessage)("theme.list.long",{id:e.id,name:e.name,tags:i.join(" ")});return t}let n=(0,a.getMessage)("theme.list.short",{name:e.name,tags:i.join(" ")});return n}
|
|
2
|
+
//# sourceMappingURL=choose-theme-list.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"renderSnippet",{enumerable:!0,get:()=>p});const e=i(require("axios")),t=i(require("form-data")),r=require("../../../helpers/sentry"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"renderSnippet",{enumerable:!0,get:()=>p});const e=i(require("axios")),t=i(require("form-data")),r=require("../../../helpers/sentry"),o=i(require("../../../utils/debug")),s=i(require("../../../helpers/config")),n=require("../../../utils/output"),u=require("../../../utils/const"),a=i(require("../../../utils/winston"));function i(e){return e&&e.__esModule?e:{default:e}}const{currentStore:d}=s.default,l=(()=>{let s=e.default.create({baseURL:d,maxContentLength:1/0,maxBodyLength:1/0,maxRedirects:0});return s.interceptors.request.use(e=>((0,n.outputDebug)((0,n.outputContent)`Request config: ${n.outputToken.json(e)}`),o.default.printRequest(e),Object.assign(e.headers,{cookie:"l_spwd=1","User-Agent":u.CLI_USER_AGENT}),(null==e?void 0:e.data)instanceof t.default&&Object.assign(e.headers,null==e?void 0:e.data.getHeaders()),a.default.logHttp({type:"request",method:e.method,url:e.baseURL+e.url,params:e.params}),e),e=>Promise.reject(e)),s.interceptors.response.use(async e=>{var t,r,s,n;return(o.default.printResponse(e.config,e),a.default.logHttp({type:"response",method:e.config.method,url:e.config.baseURL+e.config.url,params:e.config.params,body:e.data,status:e.status,traceId:(null==e?void 0:null===(t=e.data)||void 0===t?void 0:t.trace_id)||(null==e?void 0:null===(r=e.headers)||void 0===r?void 0:r["x-request-id"])||(null==e?void 0:null===(s=e.headers)||void 0===s?void 0:s["x-response-id"])||""}),200===e.status&&e.data&&e.data["announcement-bar"].html)?null!==(n=e.data["announcement-bar"].html)&&void 0!==n?n:"":"null"},e=>{var t;let o=null===(t=e.response)||void 0===t?void 0:t.status,s=Error(o>=300&&o<400?"Page not found. Please provide a valid --url value.":e.message||"Failed to render theme snippet.");if(s.stack=e.stack,"string"==typeof e.code&&(s.code=e.code),(0,r.reportHttpError)(s,{response:e.response,requestConfig:e.config,source:"theme-console"}),o>=300&&o<400)throw s;return"null"}),s})();function p(e,t){return l.post(e,t)}
|
|
2
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>g});const e=p(require("repl")),t=require("htmlparser2"),r=require("domutils"),s=p(require("color-json")),l=p(require("../../../helpers/config")),n=require("../../../utils/output"),i=p(require("../../../utils/colors")),o=require("../../../utils/path"),a=require("./api"),u=p(require("../../../utils/winston")),c=require("../../../helpers/sentry");function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function p(e){return e&&e.__esModule?e:{default:e}}class g{async start(){g.printReplMessage(),this.startReplServer()}static printReplMessage(){console.log(`
|
|
2
2
|
Welcome to Shopline Handlebars console
|
|
3
3
|
(press Ctrl + C twice to exit)
|
|
4
|
-
`)}async evaluator(e,t,r,s){if(u.default.log(`Evaluating: ${e}`),(0,n.outputDebug)(`Evaluating: ${e}`),/\{\{\{?|\}\}\}?/.test(e)){
|
|
4
|
+
`)}async evaluator(e,t,r,s){if(u.default.log(`Evaluating: ${e}`),(0,n.outputDebug)(`Evaluating: ${e}`),/\{\{\{?|\}\}\}?/.test(e)){g.delimiterWarning(),s(null);return}try{await this.renderSnippet(e),s(null)}catch(e){console.log(i.default.red(e.message)),s(e,null),u.default.logError(e,()=>{(0,c.reportAndExit)(e)})}}static delimiterWarning(){console.log(i.default.yellow(`
|
|
5
5
|
Handlebars Console doesn't support Handlebars delimiters such as '{{ ... }}' or '{{{ ... }}}'.
|
|
6
6
|
|
|
7
7
|
Please use 'collections.first' instead of '{{ collections.first }}'.
|
|
8
|
-
`))}startReplServer(){u.default.log("Starting node repl server...");let t=e.default.start({eval:this.evaluator.bind(this)});t.on("exit",()=>{process.exit()})}collectAssignmentExpressiones(e){return(/^assign\s+(["']).+\1\s+(["']).+\2/.test(e)&&(console.log(i.default.gray(`> ${e}`)),this.assignments.add(`{{${e}}}`)),this.assignments.size>0)?Array.from(this.assignments).join("\n"):""}async renderSnippet(e){(0,n.outputDebug)(`Request url: ${this.requestUrl}`),e=e.replace(/\r|\n|\t/g,"");let t=this.collectAssignmentExpressiones(e);u.default.log(`Render snippet: ${t}{{{json ${e}}}}`);let r=await (0,a.renderSnippet)(this.requestUrl,{"announcement-bar":null,replace_templates:{"sections/announcement-bar.html":`<div id='${
|
|
8
|
+
`))}startReplServer(){u.default.log("Starting node repl server...");let t=e.default.start({eval:this.evaluator.bind(this)});t.on("exit",()=>{process.exit()})}collectAssignmentExpressiones(e){return(/^assign\s+(["']).+\1\s+(["']).+\2/.test(e)&&(console.log(i.default.gray(`> ${e}`)),this.assignments.add(`{{${e}}}`)),this.assignments.size>0)?Array.from(this.assignments).join("\n"):""}async renderSnippet(e){(0,n.outputDebug)(`Request url: ${this.requestUrl}`),e=e.replace(/\r|\n|\t/g,"");let t=this.collectAssignmentExpressiones(e);u.default.log(`Render snippet: ${t}{{{json ${e}}}}`);let r=await (0,a.renderSnippet)(this.requestUrl,{"announcement-bar":null,replace_templates:{"sections/announcement-bar.html":`<div id='${g.RENDER_SNIPPET_ID}'>${t}{{{json ${e}}}}</div>`}});if(r&&r.includes(g.RENDER_SNIPPET_ID)){let e=g.getRenderResult(r);"object"==typeof e?console.log((0,s.default)(e)):"string"==typeof String(e)?console.log(i.default.cyan(e)):console.log(i.default.red("Except for Object and String, other types cannot be printed."))}else console.log(i.default.red(`Unknow object '${e}'`)),console.log(i.default.cyan("string"==typeof r?r:"null"))}get requestUrl(){let e=new URL(l.default.currentStore);return e.pathname=this.url,`${e.pathname}`}static getRenderResult(e){let s=(0,t.parseDocument)(e),l=(0,r.getElementById)(g.RENDER_SNIPPET_ID,s.children),n=(0,r.textContent)(l);try{return JSON.parse(n)}catch(e){return("string"==typeof n?n.trim():n)||"null"}}constructor(e,t){d(this,"url",void 0),d(this,"cwd",void 0),d(this,"assignments",new Set),this.url=e.url&&e.url.startsWith("/")?e.url:"/",this.cwd=null!=t?t:(0,o.cwd)()}}d(g,"RENDER_SNIPPET_ID","shopline-cli-repl-result");
|
|
9
|
+
//# sourceMappingURL=console.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"consoleAction",{enumerable:!0,get:()=>s});const e=require("../../../utils/parse-options"),t=o(require("../../../helpers/config")),r=require("../utils"),i=o(require("./console")),n=o(require("../../../utils/winston"));function o(e){return e&&e.__esModule?e:{default:e}}async function s(o,s){try{let r=await (0,e.parseOptions)(o,s),u=r.path;n.default.log("Checking login..."),t.default.isLogin();let l=new i.default(r,u);await l.start()}catch(e){(0,r.handleError)(e)}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"consoleAction",{enumerable:!0,get:()=>s});const e=require("../../../utils/parse-options"),t=o(require("../../../helpers/config")),r=require("../utils"),i=o(require("./console")),n=o(require("../../../utils/winston"));function o(e){return e&&e.__esModule?e:{default:e}}async function s(o,s){try{let r=await (0,e.parseOptions)(o,s),u=r.path;n.default.log("Checking login..."),t.default.isLogin();let l=new i.default(r,u);await l.start()}catch(e){(0,r.handleError)(e)}}
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,E){for(var t in E)Object.defineProperty(e,t,{enumerable:!0,get:E[t]})}(exports,{ENDPOINTS:()=>e,ERRORS:()=>E,DEFAULT_ZIP_NAME:()=>t,DEFAULT_PAGE_SIZE:()=>_,LIVE_RELOAD_MODE:()=>T,DEFAULT_LIVE_RELOAD_MODE:()=>a,DEV_SERVE_PORT:()=>o,ERROR_CODES:()=>i,TEXT_TYPE_EXTNAMES:()=>r,IGNORE_LAYOUT_FILES:()=>n});const e={CODE_EDITOR:"/admin/api/site/code-editor",THEME:"/admin/api/site/theme"},E={NOT_EMPTY_DIR:"The directory is not empty, please clear the directory before operating",THEME_ID_NOT_EXIST:"Theme id does not exist",THEME_COUNT_LIMIT:"The number of themes has reached the limit",DOWNLOAD_THEME_FAILED:"Failed to download the theme",UPLOAD_THEME_FAILED:"Failed to upload the theme",LAYOUT_FILE_NOT_MATCH_TEMPLATE:"Layout file does not match the template",THEME_IS_PUBLISHED:"The current theme {themeName} (#{id}) is published",THEME_IS_INVALID:"The current development theme is not exist",NOT_STANDARD_DIRECTORY:"Current directory is not a theme, Please run this command in a theme directory",TEMPLATE_FILE_NAME_NOT_PASS:"The template name contains invalid characters, please modify it.",FEATURE_KEY_NOT_EXIST:"You haven’t the permission to upload the theme package, please contact your account manager for help",UNZIP_THEME_FAILED:"Unpacking failed due to corruption in the theme code package. Please check and try again."},t="theme.zip",_=50,T=["hot-reload","full-page","off"],a="hot-reload",o=8282,i={THEME_COUNT_LIMIT:["SLE0201"],DEVELOPMENT_THEME_NOT_EXIST:["SLE0101"],NO_SECOND_CHECK:["CUS0402","10049"],FEATURE_KEY_NOT_EXIST:["CUS0412","10048"],NOT_LOGIN:["1000"],INVALID_FILE:["1001"],FILE_NOT_EXIT:["10042","10001"]},r=[".js",".css",".hbs"],n=["password"];
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,E){for(var t in E)Object.defineProperty(e,t,{enumerable:!0,get:E[t]})}(exports,{ENDPOINTS:()=>e,ERRORS:()=>E,DEFAULT_ZIP_NAME:()=>t,DEFAULT_PAGE_SIZE:()=>_,LIVE_RELOAD_MODE:()=>T,DEFAULT_LIVE_RELOAD_MODE:()=>a,DEV_SERVE_PORT:()=>o,ERROR_CODES:()=>i,TEXT_TYPE_EXTNAMES:()=>r,IGNORE_LAYOUT_FILES:()=>n});const e={CODE_EDITOR:"/admin/api/site/code-editor",THEME:"/admin/api/site/theme"},E={NOT_EMPTY_DIR:"The directory is not empty, please clear the directory before operating",THEME_ID_NOT_EXIST:"Theme id does not exist",THEME_COUNT_LIMIT:"The number of themes has reached the limit",DOWNLOAD_THEME_FAILED:"Failed to download the theme",UPLOAD_THEME_FAILED:"Failed to upload the theme",LAYOUT_FILE_NOT_MATCH_TEMPLATE:"Layout file does not match the template",THEME_IS_PUBLISHED:"The current theme {themeName} (#{id}) is published",THEME_IS_INVALID:"The current development theme is not exist",NOT_STANDARD_DIRECTORY:"Current directory is not a theme, Please run this command in a theme directory",TEMPLATE_FILE_NAME_NOT_PASS:"The template name contains invalid characters, please modify it.",FEATURE_KEY_NOT_EXIST:"You haven’t the permission to upload the theme package, please contact your account manager for help",UNZIP_THEME_FAILED:"Unpacking failed due to corruption in the theme code package. Please check and try again."},t="theme.zip",_=50,T=["hot-reload","full-page","off"],a="hot-reload",o=8282,i={THEME_COUNT_LIMIT:["SLE0201"],DEVELOPMENT_THEME_NOT_EXIST:["SLE0101"],NO_SECOND_CHECK:["CUS0402","10049"],FEATURE_KEY_NOT_EXIST:["CUS0412","10048"],NOT_LOGIN:["1000"],INVALID_FILE:["1001"],FILE_NOT_EXIT:["10042","10001"]},r=[".js",".css",".hbs"],n=["password"];
|
|
2
|
+
//# sourceMappingURL=const.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{markExpectedStaticNotFound:()=>n,registerThemeDevServerErrorReporting:()=>d});const e=require("../../helpers/sentry"),r=new Set(["ECONNRESET","EPIPE"]),t=new Set(["ENOENT","ENAMETOOLONG","ENOTDIR"]),o=new WeakSet;function n(e){o.add(e)}function d(n,{themeOs:d}){n.on("error",(i,l)=>{var u;n.onerror(i);let v=function(e){var r;if("ENOENT"===e.code)return 404;let t=null!==(r=e.status)&&void 0!==r?r:e.statusCode;return"number"==typeof t&&t>=400&&t<=599?t:500}(i);if(function(e,n,d){var i,l,u,v,s;if(d&&o.has(d)&&404===n&&e.code&&t.has(e.code))return!0;let c=(null==d?void 0:null===(i=d.req)||void 0===i?void 0:i.aborted)===!0||(null==d?void 0:null===(l=d.req)||void 0===l?void 0:l.destroyed)===!0&&(null==d?void 0:null===(u=d.req)||void 0===u?void 0:u.complete)!==!0,a=(null==d?void 0:null===(v=d.res)||void 0===v?void 0:v.destroyed)===!0&&(null==d?void 0:null===(s=d.res)||void 0===s?void 0:s.writableFinished)!==!0;return!!e.code&&r.has(e.code)&&(c||a)}(i,v,l))return;let s=null==l?void 0:null===(u=l.method)||void 0===u?void 0:u.toUpperCase(),c=function(e){try{var r;return null==e?void 0:null===(r=e.path)||void 0===r?void 0:r.slice(0,1024)}catch(e){return}}(l);try{(0,e.reportBugOnce)(i,{tags:{error_source:"theme-dev-server",theme_os:d,...s?{http_method:s}:{},...v?{http_status:String(v)}:{}},extra:{koa_request:{...s?{method:s}:{},...c?{path:c}:{},...v?{status:v}:{},...i.code?{errorCode:i.code}:{}}}})}catch(e){}})}
|
|
2
|
+
//# sourceMappingURL=dev-server-monitoring.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>r});const e=require("crypto"),t=function(e){return e&&e.__esModule?e:{default:e}}(require("mime")),i=require("../../utils/path"),s=require("../../utils/fs");function l(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class r{get fullPath(){return(0,i.joinPath)(this.cwd,this.filePath)}get extName(){return(0,i.extname)(this.filePath)}get isExist(){return(0,s.fileExistsSync)(this.fullPath)}get isConfigSchemaFile(){return"config/settings_schema.json"===this.fileName}get isConfigFile(){return["config/settings_schema.json","config/settings_data.json"].includes(this.fileName)}get mimeType(){return this.isExist?t.default.getType(this.filePath):""}get isImageType(){var e,t;return(null===(e=this.mimeType)||void 0===e?void 0:e.startsWith("image/"))&&!(null===(t=this.mimeType)||void 0===t?void 0:t.startsWith("image/svg"))}get fileName(){return this.filePath}get fileContent(){return this.filePath.startsWith("assets/")?(0,s.readFileSync)(this.localeFullFilePath,{}):(0,s.readFileSync)(this.localeFullFilePath)}get localeFullFilePath(){let e=this.filePath.endsWith(".preview")?this.filePath.replace(".preview",""):this.filePath,t=(0,i.joinPath)(this.cwd,e);return t}get checksum(){return(0,e.createHash)("sha256").update(this.fileContent).digest("hex")}constructor(e,t){l(this,"cwd",(0,i.cwd)()),l(this,"filePath",void 0),this.filePath=e,this.cwd=t}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>r});const e=require("crypto"),t=function(e){return e&&e.__esModule?e:{default:e}}(require("mime")),i=require("../../utils/path"),s=require("../../utils/fs");function l(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class r{get fullPath(){return(0,i.joinPath)(this.cwd,this.filePath)}get extName(){return(0,i.extname)(this.filePath)}get isExist(){return(0,s.fileExistsSync)(this.fullPath)}get isConfigSchemaFile(){return"config/settings_schema.json"===this.fileName}get isConfigFile(){return["config/settings_schema.json","config/settings_data.json"].includes(this.fileName)}get mimeType(){return this.isExist?t.default.getType(this.filePath):""}get isImageType(){var e,t;return(null===(e=this.mimeType)||void 0===e?void 0:e.startsWith("image/"))&&!(null===(t=this.mimeType)||void 0===t?void 0:t.startsWith("image/svg"))}get fileName(){return this.filePath}get fileContent(){return this.filePath.startsWith("assets/")?(0,s.readFileSync)(this.localeFullFilePath,{}):(0,s.readFileSync)(this.localeFullFilePath)}get localeFullFilePath(){let e=this.filePath.endsWith(".preview")?this.filePath.replace(".preview",""):this.filePath,t=(0,i.joinPath)(this.cwd,e);return t}get checksum(){return(0,e.createHash)("sha256").update(this.fileContent).digest("hex")}constructor(e,t){l(this,"cwd",(0,i.cwd)()),l(this,"filePath",void 0),this.filePath=e,this.cwd=t}}
|
|
2
|
+
//# sourceMappingURL=file.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{cloneExampleTheme:()=>u,reInitGitRepo:()=>l});const e=n(require("simple-git")),t=n(require("ora")),r=n(require("path")),i=n(require("fs-extra")),s=require("../../utils/messages"),o=require("../../utils/error");function n(e){return e&&e.__esModule?e:{default:e}}const a=e=>i.default.existsSync(e),u=async r=>{if(a(r))return Promise.reject(new o.AbortError((0,s.getMessage)("theme.errors.directory_exists",{folder_name:r})));let i=(0,e.default)(),n="https://github.com/shoplineos/Bottle.git",u=(0,t.default)({text:`Cloning ${n} into ${r}`}).start();try{return await i.clone(n,r,{"--branch":"main","--progress":null}),u.succeed(),await Promise.resolve()}catch(e){return u.fail(),Promise.reject(e)}},l=async t=>{i.default.removeSync(r.default.join(t,".git"));let s=(0,e.default)(t);await s.init()};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{cloneExampleTheme:()=>u,reInitGitRepo:()=>l});const e=n(require("simple-git")),t=n(require("ora")),r=n(require("path")),i=n(require("fs-extra")),s=require("../../utils/messages"),o=require("../../utils/error");function n(e){return e&&e.__esModule?e:{default:e}}const a=e=>i.default.existsSync(e),u=async r=>{if(a(r))return Promise.reject(new o.AbortError((0,s.getMessage)("theme.errors.directory_exists",{folder_name:r})));let i=(0,e.default)(),n="https://github.com/shoplineos/Bottle.git",u=(0,t.default)({text:`Cloning ${n} into ${r}`}).start();try{return await i.clone(n,r,{"--branch":"main","--progress":null}),u.succeed(),await Promise.resolve()}catch(e){return u.fail(),Promise.reject(e)}},l=async t=>{i.default.removeSync(r.default.join(t,".git"));let s=(0,e.default)(t);await s.init()};
|
|
2
|
+
//# sourceMappingURL=git.js.map
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var a in t)Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}(exports,{startThemeService:()
|
|
2
|
-
The presence of ${
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var a in t)Object.defineProperty(e,a,{enumerable:!0,get:t[a]})}(exports,{startThemeService:()=>$,default:()=>R});const e=C(require("path")),t=C(require("fs-extra")),a=C(require("chokidar")),i=require("lodash"),s=C(require("form-data")),r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=I(t);if(a&&a.has(e))return a.get(e);var i={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var l=s?Object.getOwnPropertyDescriptor(e,r):null;l&&(l.get||l.set)?Object.defineProperty(i,r,l):i[r]=e[r]}return i.default=e,a&&a.set(e,i),i}(require("../../utils/logger")),l=C(require("../../helpers/config")),u=C(require("../../utils/write-file-tree")),n=C(require("../../utils/load-local-preset")),o=require("../../utils/git"),d=require("./git"),h=require("./api"),c=require("./utils"),m=C(require("./package")),f=C(require("../../utils/tiny-queue")),p=require("./types"),g=require("./const"),T=require("../../utils/messages"),w=require("./choose-theme-list"),y=C(require("../../utils/debug")),E=require("../../helpers/sentry"),v=require("../../utils/ora-manager"),D=C(require("../../utils/colors")),k=require("../../utils/path"),b=C(require("./uploader")),F=require("../../utils/error"),S=require("../../utils/output"),q=C(require("../../utils/winston")),_=require("./watcher-monitoring");function O(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function C(e){return e&&e.__esModule?e:{default:e}}function I(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,a=new WeakMap;return(I=function(e){return e?a:t})(e)}class N extends y.default{static async package(e,t=(0,k.cwd)()){try{let a=new m.default(t);await a.pack(e)}catch(e){(0,c.handleError)(e)}}static async getDevelopmentId(){let e=l.default.developmentThemeId;return await N.isValidDevTheme(e)?e:""}static async getValidDevelopmentInfo(){let e=l.default.developmentThemeId;return await N.isValidDevTheme(e)?{id:e,name:"",status:p.EThemeStatus.Development}:{id:"",name:(0,c.generateDevThemeName)(),status:p.EThemeStatus.Development}}static async isValidDevTheme(e){try{let t=await (0,h.getThemeInfo)(e,{ignoreBusinessCodes:g.ERROR_CODES.DEVELOPMENT_THEME_NOT_EXIST});return(null==t?void 0:t.status)===p.EThemeStatus.Development}catch(e){return!1}}static async isUncompletedDevTheme(e){try{let t=await (0,h.getThemeInfo)(e,{ignoreBusinessCodes:g.ERROR_CODES.DEVELOPMENT_THEME_NOT_EXIST});return(null==t?void 0:t.status)===p.EThemeStatus.Uncompleted}catch(e){return!1}}static async getThemeInfo(e){let t=await (0,h.getThemeInfo)(e);return t}static async getLiveThemeId(){var e;let t=await (0,w.getAllThemeList)();return null===(e=t.find(e=>e.status===p.EThemeStatus.Published))||void 0===e?void 0:e.id}static async checkThemeStandardStructure(e){if(0===e.length)throw new F.AbortError(g.ERRORS.NOT_STANDARD_DIRECTORY);let t=(0,i.difference)(c.standardThemeDirectories,e);t.length>0&&Error(`
|
|
2
|
+
The presence of ${D.default.bold(null==t?void 0:t[0])} in the directory structure isn't supported.
|
|
3
3
|
|
|
4
4
|
Move any files to a parent folder, then delete unsupported subdirectories.
|
|
5
5
|
|
|
6
6
|
• Required directory structure: https://developer.myshopline.com/docs/introduce/bGgYARTh
|
|
7
|
-
`)}static async findOrCreate(e){if(e){(0,S.outputDebug)(`Get theme info: ${e}`);try{let t=await (0,h.getThemeInfo)(e);if((0,S.outputDebug)((0,S.outputContent)`Theme info: ${S.outputToken.json(t)}`),t.id)return{id:t.id,name:t.name,status:t.status}}catch(t){let e=await
|
|
7
|
+
`)}static async findOrCreate(e){if(e){(0,S.outputDebug)(`Get theme info: ${e}`);try{let t=await (0,h.getThemeInfo)(e,{ignoreBusinessCodes:g.ERROR_CODES.DEVELOPMENT_THEME_NOT_EXIST});if((0,S.outputDebug)((0,S.outputContent)`Theme info: ${S.outputToken.json(t)}`),t.id)return{id:t.id,name:t.name,status:t.status}}catch(t){let e=await N.createNewTheme();return e}}(0,S.outputDebug)(`The theme ${e} doesn't exist. creating a new one...`);let t=await N.createNewTheme();return(0,S.outputDebug)((0,S.outputContent)`The new theme info: ${S.outputToken.json(t)}`),t}static async createNewTheme(){(0,S.outputDebug)("Create a new development theme...");let e=(0,c.generateDevThemeName)(),t=await b.default.createNewTheme(e);return(0,S.outputDebug)((0,S.outputContent)`A new development theme info: ${S.outputToken.json({id:t,name:e})}`),{id:t,name:e}}static async deleteDevelopment(e){e&&await (0,h.changeThemeStatus)({themeId:e,status:p.EThemeStatus.Delete})}static async changeToPublishTheme(e){await (0,h.changeThemeStatus)({themeId:e,status:p.EThemeStatus.Published})}static async changeToUnpublishTheme(e){await (0,h.changeThemeStatus)({themeId:e,status:p.EThemeStatus.Unpublished})}static async init(t,a){let i=e.default.join(a,t),s=e.default.basename(t);try{q.default.log("ensure git..."),await (0,o.ensureGitOrAbort)(a),q.default.log("clone example theme..."),await (0,d.cloneExampleTheme)(i);let t="theme.schema.json",l=await (0,n.default)(e.default.join(i,t));l&&(l.name=s,l.theme_name=s),q.default.log(`create theme ${s}...`),await (0,u.default)(i,{[t]:JSON.stringify(l,null,2)}),q.default.log("reinit git in your project..."),await (0,d.reInitGitRepo)(i),r.success(`🎉 Successfully created theme ${D.default.yellow(s)}.`),q.default.log("initialize success in your project...")}catch(e){(0,c.handleError)(e)}}static async list(){try{q.default.log("Checking login..."),l.default.isLogin(),console.log((0,T.getMessage)("theme.list.title",{store:l.default.currentStore}));let e=await (0,w.getSortedThemeList)(e=>(0,w.themePresenter)(e));q.default.log("Printing sorted theme list..."),e.forEach(e=>{console.log(e)}),q.default.log("Print theme list succeed!")}catch(e){(0,c.handleError)(e)}}watch(){let e=a.default.watch((0,c.getThemeDirectory)(this.cwd),{ignored:/(^|[/\\])\../,interval:1e3,usePolling:!0,ignoreInitial:!0});e.on("ready",()=>{q.default.log("Watching theme files..."),this.queue.on("error",e=>{(0,_.reportThemeWatcherError)(e,{themeOs:"2",operation:"sync"}),e instanceof F.ValidatorError?(e.errors.forEach(e=>{r.error(`${e.filename}: ${e.message.join("\n")}`)}),(0,v.clearAllOra)()):r.error(e.message||e)}),e.on("add",(...e)=>{let t=e[0];q.default.log(`Add theme file: ${t}`),this.shouldWatchFile(t)&&(this.shouldUpdate(t)?this.queue.push(this.onAdd.bind(this,t)):this.sse.broadcast(this.getSseData(t,"add")))}),e.on("change",(...e)=>{let t=e[0];q.default.log(`Change theme file: ${t}`),this.shouldWatchFile(t)&&(this.shouldUpdate(t)?this.queue.push(this.onChange.bind(this,t)):this.sse.broadcast(this.getSseData(t)))}),e.on("unlink",(...e)=>{let t=e[0];q.default.log(`Unlink theme file: ${t}`),this.shouldWatchFile(t)&&(this.shouldUpdate(t)?this.queue.push(this.onUnlink.bind(this,...e)):this.sse.broadcast(this.getSseData(t,"unlink")))})})}shouldWatchFile(e){let t=(0,c.parseFileName)(e,this.cwd),a=this.ignoreFilter.match(t),i=this.includeFilter.match(t);return!a&&i}shouldUpdate(e){let t=(0,c.parseFileName)(e,this.cwd),a=this.updateQueue.find(t);return!a||(this.updateQueue.delete(t),!1)}async onAdd(e){await this.createFile(e),this.sse.broadcast(this.getSseData(e,"add"))}async onChange(e){await this.updateFile(e),this.sse.broadcast(this.getSseData(e))}async onUnlink(e){await this.deleteFile(e),this.sse.broadcast(this.getSseData(e,"unlink"))}async deleteFile(e){let t=(0,c.parseFileName)(e,this.cwd),a=(0,v.createOra)((0,T.getMessage)("theme.serve.syncer.delete_strategy.success",{file_name:t})).start();if(!await this.isRemoteExistsFile(e)){r.warn((0,T.getMessage)("theme.serve.syncer.no_remote_file",{file_name:t}));return}q.default.log(`Delete file: ${t}`),await (0,h.deleteFile)(this.themeId,{fileName:t}),q.default.log(`Delete file (${t}) checksum`),this.uploader.checksums.delete(t),a.succeed()}async updateFile(a){let i=(0,c.parseFileName)(a,this.cwd),[r]=i.split("/"),l=e.default.extname(i);(0,c.checkTemplateFileName)(i);let u=(0,v.createOra)((0,T.getMessage)("theme.serve.syncer.update_strategy.success",{file_name:i})).start();try{if("assets"!==r||g.TEXT_TYPE_EXTNAMES.includes(l)){let{fileContent:e}=(0,c.parseFile)(a,this.cwd);if(!(0,c.checkLayoutFile)(i,e)){u.stop();return}try{await (0,h.getThemeFileDetail)({themeId:this.themeId,fileName:i})}catch(e){await this.createFile(a),u.stop();return}q.default.log(`Update file: ${i}`);let t=await (0,h.updateFile)(this.themeId,{fileName:i,fileContent:e});q.default.log(`Update file (${i}) checksum: ${t.fileContentChecksum}`),this.uploader.checksums.set(i,t.fileContentChecksum)}else{let e=new s.default;e.append("file",t.default.createReadStream(a)),e.append("fileName",i);let r=e.getHeaders();q.default.log(`Upload asset file: ${i}`);let l=await (0,h.uploadFile)(this.themeId,e,{headers:r});q.default.log(`Update file (${i}) checksum: ${l.fileContentChecksum}`),this.uploader.checksums.set(i,l.fileContentChecksum)}u.succeed()}catch(e){throw u.fail(),(0,c.formatThemeFileUploadError)(e,{fileName:i,themeId:this.themeId})}}async createFile(a){let i=(0,c.parseFileName)(a,this.cwd),[r]=i.split("/"),l=e.default.extname(i),u=(0,v.createOra)((0,T.getMessage)("theme.serve.syncer.create_strategy.success",{file_name:i})).start();try{if("assets"!==r||g.TEXT_TYPE_EXTNAMES.includes(l)){let{fileContent:e}=(0,c.parseFile)(a,this.cwd);if(!(0,c.checkLayoutFile)(i,e)){u.stop();return}(0,c.checkTemplateFileName)(i),q.default.log(`Create file: ${i}`);let t=await (0,h.createFile)(this.themeId,{fileName:i,fileContent:e});q.default.log(`Update file (${i}) checksum: ${t.fileContentChecksum}`),this.uploader.checksums.set(i,t.fileContentChecksum)}else{let e=new s.default;e.append("file",t.default.createReadStream(a)),e.append("fileName",i);let r=e.getHeaders();q.default.log(`Upload asset file: ${i}`);let l=await (0,h.uploadFile)(this.themeId,e,{headers:r});q.default.log(`Update file (${i}) checksum: ${l.fileContentChecksum}`),this.uploader.checksums.set(i,l.fileContentChecksum)}u.succeed()}catch(e){throw u.fail(),(0,c.formatThemeFileUploadError)(e,{fileName:i,themeId:this.themeId})}}async isRemoteExistsFile(e){try{let t=(0,c.parseFileName)(e,this.cwd);return await (0,h.getThemeFileDetail)({themeId:this.themeId,fileName:t}),!0}catch(e){return!1}}getSseData(e,t){return"full-page"===this.mode||t&&["add","unlink"].includes(t)?{data:{reload_page:!0}}:{data:{modified:[(0,c.getRelativePath)(e,this.cwd)]}}}constructor({themeId:e,mode:t,editorSync:a,sse:i,updateQueue:s,includeFilter:r,ignoreFilter:l,uploader:u,cwd:n}){super("theme:theme"),O(this,"cwd",""),O(this,"themeId",""),O(this,"queue",void 0),O(this,"mode",void 0),O(this,"sse",void 0),O(this,"editorSync",void 0),O(this,"updateQueue",void 0),O(this,"includeFilter",void 0),O(this,"ignoreFilter",void 0),O(this,"uploader",void 0),this.themeId=e,this.queue=new f.default,this.mode=t,this.sse=i,this.editorSync=a,this.updateQueue=s,this.includeFilter=r,this.ignoreFilter=l,this.uploader=u,this.cwd=n,this.watch()}}async function $(e,t,a,i,s,u,n,o){try{let r=l.default.developmentThemeId,d=new N({themeId:r,mode:e,editorSync:t,sse:a,updateQueue:i,includeFilter:s,ignoreFilter:u,uploader:n,cwd:o});return{themeId:r,themeInstance:d}}catch(e){var d,h;return r.error((null==e?void 0:null===(d=e.response)||void 0===d?void 0:null===(h=d.data)||void 0===h?void 0:h.msg)||(null==e?void 0:e.stack)),(0,E.reportAndExit)(e)}}const R=N;
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{askForPull:()=>a,askForUpdateStrategy:()=>s,askForApplyToAll:()=>l});const e=function(e){return e&&e.__esModule?e:{default:e}}(require("inquirer")),t=require("../../utils/messages"),r=e.default.createPromptModule();async function a(){let{overrideStrategy:e}=await r([{type:"list",name:"overrideStrategy",message:"Your current directory is not empty, Please select how to handle the current directory files",default:"override",choices:[{name:"Override files with the same name",value:"override"},{name:"Clear the current directory and pull remote files",value:"clear"}]}]);return e}async function s(){let{updateStrategy:e}=await r([{type:"list",name:"updateStrategy",message:(0,t.getMessage)("theme.serve.syncer.update_strategy.title_question"),default:"remote",choices:[{name:(0,t.getMessage)("theme.serve.syncer.update_strategy.keep_remote"),value:"remote"},{name:(0,t.getMessage)("theme.serve.syncer.update_strategy.keep_local"),value:"local"}]}]);return e}async function l(e){let{applyToAll:a}=await r([{type:"confirm",name:"applyToAll",message:(0,t.getMessage)("theme.serve.syncer.apply_to_all.title",{count:e}),default:!0}]);return a}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{askForPull:()=>a,askForUpdateStrategy:()=>s,askForApplyToAll:()=>l});const e=function(e){return e&&e.__esModule?e:{default:e}}(require("inquirer")),t=require("../../utils/messages"),r=e.default.createPromptModule();async function a(){let{overrideStrategy:e}=await r([{type:"list",name:"overrideStrategy",message:"Your current directory is not empty, Please select how to handle the current directory files",default:"override",choices:[{name:"Override files with the same name",value:"override"},{name:"Clear the current directory and pull remote files",value:"clear"}]}]);return e}async function s(){let{updateStrategy:e}=await r([{type:"list",name:"updateStrategy",message:(0,t.getMessage)("theme.serve.syncer.update_strategy.title_question"),default:"remote",choices:[{name:(0,t.getMessage)("theme.serve.syncer.update_strategy.keep_remote"),value:"remote"},{name:(0,t.getMessage)("theme.serve.syncer.update_strategy.keep_local"),value:"local"}]}]);return e}async function l(e){let{applyToAll:a}=await r([{type:"confirm",name:"applyToAll",message:(0,t.getMessage)("theme.serve.syncer.apply_to_all.title",{count:e}),default:!0}]);return a}
|
|
2
|
+
//# sourceMappingURL=inquirer.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>g});const e=d(require("open")),r=d(require("koa")),t=d(require("path")),o=d(require("fs")),s=d(require("koa-ejs")),a=d(require("killable")),i=d(require("inquirer")),n=d(require("../../helpers/config")),l=require("../../helpers/sentry"),u=require("../../utils/messages"),c=require("../../utils/ora-manager");function d(e){return e&&e.__esModule?e:{default:e}}const f=i.default.createPromptModule();function h(e){return e instanceof Error?e:Error(String(e))}class g{static get checkStoreUrl(){let e=encodeURIComponent(`http://127.0.0.1:${g.PORT}`);return`${n.default.currentStore}/admin/checkStore?redirectUrl=${e}`}static get storeOriginUrl(){let e=new URL(g.checkStoreUrl);return e.origin}static async askForCheckStore(){let{immediately:e}=await f([{type:"confirm",name:"immediately",message:(0,u.getMessage)("theme.errors.check_store"),default:!0}]);return e}static async run(){(0,c.clearAllOra)();try{console.log((0,u.getMessage)("theme.errors.checking_store",{check_url:g.checkStoreUrl})),await (0,e.default)(g.checkStoreUrl);let r=await g.startServer();g.saveCurrentStoreCookie(r),g.printResultAndExit()}catch(e){throw h(e)}}static printResultAndExit(){console.log((0,u.getMessage)("theme.errors.check_result")),process.exit(1)}static saveCurrentStoreCookie(e){let{loginInfo:r}=n.default,t={...r,a_osudb_verify:e};n.default.saveLoginInfo(t,g.storeOriginUrl)}static async startServer(){return new Promise((e,i)=>{let n;let u=new r.default,c=!1,d=!1,f=()=>{d||(d=!0,setImmediate(()=>{try{(null==n?void 0:n.kill)?n.kill():null==n||n.close()}catch(e){}}))},p=r=>{c||(c=!0,f(),e(r))},y=(e,{shouldReport:r=!1,ctx:t}={})=>{if(c)return;c=!0;let o=h(e);r&&function(e,r){try{var t;let o=null==r?void 0:null===(t=r.method)||void 0===t?void 0:t.toUpperCase(),s=function(e){try{var r;return null==e?void 0:null===(r=e.path)||void 0===r?void 0:r.slice(0,1024)}catch(e){return}}(r),a=function(e){var r;let t=null!==(r=e.status)&&void 0!==r?r:e.statusCode;return"number"==typeof t&&t>=400&&t<=599?t:500}(e);(0,l.reportBugOnce)(e,{tags:{error_source:"theme-check-store",...o?{http_method:o}:{},http_status:String(a)},extra:{koa_request:{...o?{method:o}:{},...s?{path:s}:{},status:a,...e.code?{errorCode:e.code}:{}}}})}catch(e){}}(o,t),f(),i(o)};u.on("error",(e,r)=>{let t=h(e);u.onerror(t),y(t,{shouldReport:!0,ctx:r})});try{(0,s.default)(u,{root:t.default.join(__dirname,"../identity-auth/client"),layout:!1,cache:!1}),u.use(async e=>{let r=e.request.query,s=r.a_osudb_verify,a={css:o.default.readFileSync(t.default.join(__dirname,"../identity-auth/client/style.css"))};"string"==typeof s?(e.status=200,a.successful=200===e.status,a.message=`You’ve successfully complete verification. Please try run the previous command if necessary`,await e.render("index",a),p(s)):(e.status=403,a.successful=200===e.status,a.message="Verification failed. Please retry again.",await e.render("index",a),y(Error("Verification failed. Please retry again!")))}),n=u.listen(g.PORT),(0,a.default)(n),n.once("error",e=>{let r=h(e);u.onerror(r),y(r,{shouldReport:!0})})}catch(r){let e=h(r);u.onerror(e),y(e,{shouldReport:!0})}})}}!function(e,r,t){r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t}(g,"PORT",2345);
|
|
2
|
+
//# sourceMappingURL=no-second-check.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>s});const e=require("lodash"),t=function(e){return e&&e.__esModule?e:{default:e}}(require("../../utils/colors"));function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class s{toString(){return`${this.method} ${this.file.fileName}`}asErrorMessage(){return this.asMessageWith("error")}asSyncMessage(){return this.asMessageWith("synced")}asFixedMessage(){return this.asMessageWith("fixed")}asMessageWith(r){let s=new Date().toTimeString().slice(0,8),i="error"===r?"ERROR":(0,e.capitalize)(r);return`${t.default.gray(`• ${s}`)} ${i} ${t.default.gray(`\xbb ${this.method} ${this.file.fileName}`)}`}constructor(e,t){r(this,"method",void 0),r(this,"file",void 0),this.method=e,this.file=t}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>s});const e=require("lodash"),t=function(e){return e&&e.__esModule?e:{default:e}}(require("../../utils/colors"));function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class s{toString(){return`${this.method} ${this.file.fileName}`}asErrorMessage(){return this.asMessageWith("error")}asSyncMessage(){return this.asMessageWith("synced")}asFixedMessage(){return this.asMessageWith("fixed")}asMessageWith(r){let s=new Date().toTimeString().slice(0,8),i="error"===r?"ERROR":(0,e.capitalize)(r);return`${t.default.gray(`• ${s}`)} ${i} ${t.default.gray(`\xbb ${this.method} ${this.file.fileName}`)}`}constructor(e,t){r(this,"method",void 0),r(this,"file",void 0),this.method=e,this.file=t}}
|
|
2
|
+
//# sourceMappingURL=operation.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>y});const e=h(require("path")),t=h(require("fast-glob")),i=h(require("fs-extra")),r=h(require("adm-zip")),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var i=p(t);if(i&&i.has(e))return i.get(e);var r={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var s=l?Object.getOwnPropertyDescriptor(e,a):null;s&&(s.get||s.set)?Object.defineProperty(r,a,s):r[a]=e[a]}return r.default=e,i&&i.set(e,r),r}(require("../../utils/logger")),a=require("./utils"),s=h(require("../../utils/debug")),n=h(require("../../utils/colors")),u=require("../../utils/fs"),o=h(require("./index")),c=require("../../utils/path"),d=h(require("../../utils/winston"));function f(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function h(e){return e&&e.__esModule?e:{default:e}}function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(p=function(e){return e?i:t})(e)}const g=/^[/\\]?(assets|config|layout|locales|sections|snippets|templates)/,m=/^[/\\]?(layout|sections|snippets|templates)/,w=/^[/\\]?(templates|sections)/;class y extends s.default{setFilter(e,t){this.includeFilter=e,this.ignoreFilter=t}async pack({silent:a=!1}){let s=new r.default,c=t.default.sync("**/*",{cwd:this.cwd,onlyDirectories:!0,deep:1}),f=t.default.sync("**/*",{cwd:this.cwd});return d.default.log("Check theme structure..."),await o.default.checkThemeStandardStructure(c),d.default.log("Pack theme..."),f.forEach(t=>{let i=e.default.dirname(t);if(w.test(t)&&t.endsWith(".json")||(!m.test(t)||t.endsWith(".html"))&&g.test(t)&&!t.includes(".map")){let r=e.default.join(this.cwd,t);if(a||l.info(`adding ${n.default.magenta(t)}`,!0),this.log(`adding ${n.default.magenta(t)}`),this.includeFilter&&this.ignoreFilter){let e=this.ignoreFilter.match(t),l=this.includeFilter.match(t);!e&&l&&s.addLocalFile(r,i)}else s.addLocalFile(r,i)}}),(0,u.pathExists)(this.targetZipFilePath)&&i.default.unlinkSync(this.targetZipFilePath),d.default.log(`Write zip file to ${this.targetZipFilePath}...`),s.writeZip(this.targetZipFilePath,e=>{if(e)throw e}),d.default.log(`Write zip file to ${this.targetZipFilePath} success`),this.targetZipFilePath}get targetZipFilePath(){let t=(0,a.getThemeInfo)(this.cwd),i=`${t.theme_name}-${t.theme_version}.zip`;return e.default.join(this.cwd,i)}constructor(e){super("theme:package"),f(this,"cwd",(0,c.cwd)()),f(this,"includeFilter",null),f(this,"ignoreFilter",null),e&&(this.cwd=e)}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>y});const e=h(require("path")),t=h(require("fast-glob")),i=h(require("fs-extra")),r=h(require("adm-zip")),l=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var i=p(t);if(i&&i.has(e))return i.get(e);var r={},l=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var s=l?Object.getOwnPropertyDescriptor(e,a):null;s&&(s.get||s.set)?Object.defineProperty(r,a,s):r[a]=e[a]}return r.default=e,i&&i.set(e,r),r}(require("../../utils/logger")),a=require("./utils"),s=h(require("../../utils/debug")),n=h(require("../../utils/colors")),u=require("../../utils/fs"),o=h(require("./index")),c=require("../../utils/path"),d=h(require("../../utils/winston"));function f(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function h(e){return e&&e.__esModule?e:{default:e}}function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(p=function(e){return e?i:t})(e)}const g=/^[/\\]?(assets|config|layout|locales|sections|snippets|templates)/,m=/^[/\\]?(layout|sections|snippets|templates)/,w=/^[/\\]?(templates|sections)/;class y extends s.default{setFilter(e,t){this.includeFilter=e,this.ignoreFilter=t}async pack({silent:a=!1}){let s=new r.default,c=t.default.sync("**/*",{cwd:this.cwd,onlyDirectories:!0,deep:1}),f=t.default.sync("**/*",{cwd:this.cwd});return d.default.log("Check theme structure..."),await o.default.checkThemeStandardStructure(c),d.default.log("Pack theme..."),f.forEach(t=>{let i=e.default.dirname(t);if(w.test(t)&&t.endsWith(".json")||(!m.test(t)||t.endsWith(".html"))&&g.test(t)&&!t.includes(".map")){let r=e.default.join(this.cwd,t);if(a||l.info(`adding ${n.default.magenta(t)}`,!0),this.log(`adding ${n.default.magenta(t)}`),this.includeFilter&&this.ignoreFilter){let e=this.ignoreFilter.match(t),l=this.includeFilter.match(t);!e&&l&&s.addLocalFile(r,i)}else s.addLocalFile(r,i)}}),(0,u.pathExists)(this.targetZipFilePath)&&i.default.unlinkSync(this.targetZipFilePath),d.default.log(`Write zip file to ${this.targetZipFilePath}...`),s.writeZip(this.targetZipFilePath,e=>{if(e)throw e}),d.default.log(`Write zip file to ${this.targetZipFilePath} success`),this.targetZipFilePath}get targetZipFilePath(){let t=(0,a.getThemeInfo)(this.cwd),i=`${t.theme_name}-${t.theme_version}.zip`;return e.default.join(this.cwd,i)}constructor(e){super("theme:package"),f(this,"cwd",(0,c.cwd)()),f(this,"includeFilter",null),f(this,"ignoreFilter",null),e&&(this.cwd=e)}}
|
|
2
|
+
//# sourceMappingURL=package.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(r,e){for(var t in e)Object.defineProperty(r,t,{enumerable:!0,get:e[t]})}(exports,{getXResponseId:()=>t,formatNonStart20ProxyError:()=>o,reportNonStart20ProxyError:()=>s,reportNetworkProxyError:()=>n});const r=require("../../helpers/sentry"),e=require("../../utils/messages");function t(r){return r&&(r["x-response-id"]||r["X-Response-Id"])||""}function o(r){let o=t(r.headers)||"-",s="string"==typeof r.requestQuery?r.requestQuery:JSON.stringify(r.requestQuery,null,2);return(0,e.getMessage)("theme.serve.error.non_start_20_error",{errorCode:r.errorCode,requestUrl:r.requestUrl,requestQuery:s,responseId:o})}function s(e){try{var o;let s=t(e.headers)||"-",n=Error(`theme serve proxy non-2xx: status=${e.errorCode} url=${e.requestUrl} x-response-id=${s}`),u={status:Number(e.errorCode),data:e.responseData,headers:null!==(o=e.headers)&&void 0!==o?o:{},config:{method:e.method,url:e.requestUrl}};(0,r.reportHttpError)(n,{response:u,source:"theme-proxy"})}catch(r){}}function n({error:e,requestUrl:t,method:o}){try{let s=Error(e instanceof Error?e.message:String(e));e instanceof Error&&(s.stack=e.stack),e&&"object"==typeof e&&"code"in e&&("string"==typeof e.code||"number"==typeof e.code)&&(s.code=e.code),(0,r.reportHttpError)(s,{requestConfig:{method:o,url:t},source:"theme-proxy"})}catch(r){}}
|
|
2
|
+
//# sourceMappingURL=proxy-error.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"PullService",{enumerable:!0,get:()=>q});const e=T(require("fs-extra")),t=T(require("path")),r=T(require("progress")),i=T(require("adm-zip")),l=T(require("../../helpers/config")),s=require("./const"),o=T(require("../../utils/logger")),n=require("./api"),a=require("./utils"),d=T(require("./choose-theme-list")),u=T(require("../../utils/ignore-filter")),h=T(require("./index")),c=T(require("../../utils/include-filter")),m=T(require("../../utils/debug")),f=require("./inquirer"),p=require("../../utils/ora-manager"),w=require("../../utils/path"),g=require("../../utils/error"),v=T(require("../../utils/check-theme-type-version")),E=T(require("../../utils/winston"));function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function T(e){return e&&e.__esModule?e:{default:e}}class q extends m.default{get isEmptyDir(){return(0,a.isEmptyDir)(!0,this.cwd)}async pull(){let{themeId:e}=this;if(e){await this.beforePull(),E.default.log(`Downloading theme (${e})...`);let{fileName:t}=await this.processDownloadTheme(e);E.default.log(`Unzipping theme (${t})...`),this.unzipTheme(t),(0,v.default)(this.cwd),E.default.log(`Theme (${e}) pulled successfully`),o.default.success("Theme pulled successfully")}else throw new g.AbortError(s.ERRORS.THEME_ID_NOT_EXIST)}async beforePull(){if(this.isEmptyDir||this.nodelete)return Promise.resolve();let t=await (0,f.askForPull)();return"clear"===t&&(E.default.log("Clear local theme files..."),e.default.emptyDirSync(this.cwd)),Promise.resolve()}unzipTheme(r){let l=t.default.join(this.cwd,r);if(e.default.existsSync(l)){try{let e=new i.default(l),t=e.getEntries();t.forEach(t=>{let r=t.entryName,i=this.ignoreFilter.match(r),l=this.includeFilter.match(r);!i&&l&&e.extractEntryTo(r,this.cwd,!0,!0)})}catch(e){throw new g.AbortError(e.message,s.ERRORS.UNZIP_THEME_FAILED)}e.default.removeSync(l)}}downloadTheme(e,t){return new Promise(async(r,i)=>{let l=await (0,n.downloadThemePackage)(e);if(t.succeed().clear(),200===l.status){let t=l.headers,o=t["theme-status"],n=t["theme-develop-type"];if(void 0===o||void 0===n){i(new g.AbortError(s.ERRORS.THEME_ID_NOT_EXIST));return}this.onDownloadProgress(l,e).then(e=>r(e)).catch(i)}else i(new g.AbortError(s.ERRORS.DOWNLOAD_THEME_FAILED))})}onDownloadProgress(i,o){return new Promise((n,d)=>{var u,h;let c;let m=i.headers["theme-status"],f=i.headers["theme-develop-type"],w=i.headers["content-length"]||0,g=i.headers["content-disposition"],v=null!==(h=null===(u=/fileName=([^;]+)/.exec(g))||void 0===u?void 0:u[1])&&void 0!==h?h:s.DEFAULT_ZIP_NAME;v=decodeURIComponent(v);let E=t.default.basename(v,".zip"),y=e.default.createWriteStream(t.default.join(this.cwd,v)),T=(0,a.getKeyMessage)(`Pulling theme files from ${decodeURIComponent(E)} (#${o}) on ${l.default.currentStore}`);w?(c=new r.default((0,a.getKeyMessage)("[:bar] :rate/bps :percent :etas"),{complete:"=",incomplete:" ",total:+w,width:50}),console.log(T)):c=(0,p.createOra)({text:T,spinner:"bouncingBar"}),i.data.pipe(y),i.data.on("data",e=>{w?c.tick(e.length):c.start()}),i.data.on("error",e=>{w||c.fail(),d(e)}),i.data.on("end",()=>{w||c.succeed(),y.on("finish",()=>{let r=e.default.statSync(t.default.join(this.cwd,v)).size;this.log("fileSize: %O",r),0===r?(w||c.fail("Downloaded file is empty"),d(Error("Downloaded file is empty"))):n({themeStatus:m,themeType:f,fileName:v})})})})}async processDownloadTheme(e){let t=(0,p.createOra)("Fetching the theme package file...");try{t.start();let{fileName:r}=await this.downloadTheme(e,t);return await Promise.resolve({fileName:r,themeId:e})}catch(e){return t.isSpinning&&t.fail().clear(),Promise.reject(e.message||e)}}async prepareTheme(){if(this.themeId)return this.themeId;if(this.live){let e=await h.default.getLiveThemeId();if(!e)throw new g.AbortError('Theme "live" doesn\'t exist');return e}if(this.development){let e=await h.default.getDevelopmentId();if(!e)throw new g.AbortError('Theme "development" doesn\'t exist');return e}let{themeId:e}=await (0,d.default)("pull");return e}constructor(e,t=(0,w.cwd)()){var r,i,l,s;super("theme:pull"),y(this,"cwd",void 0),y(this,"themeId",void 0),y(this,"live",void 0),y(this,"development",void 0),y(this,"includeFilter",void 0),y(this,"ignoreFilter",void 0),y(this,"nodelete",void 0),this.cwd=t,this.themeId=e.theme||"",this.live=null!==(r=e.live)&&void 0!==r&&r,this.development=null!==(i=e.development)&&void 0!==i&&i,this.nodelete=e.nodelete;let o=null!==(l=e.only)&&void 0!==l?l:[],n=null!==(s=e.ignore)&&void 0!==s?s:[];this.log("includes: %O",o),this.log("ignores: %O",n),this.includeFilter=new c.default(o,this.cwd),this.ignoreFilter=new u.default(n,this.cwd)}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"PullService",{enumerable:!0,get:()=>q});const e=T(require("fs-extra")),t=T(require("path")),r=T(require("progress")),i=T(require("adm-zip")),l=T(require("../../helpers/config")),s=require("./const"),o=T(require("../../utils/logger")),n=require("./api"),a=require("./utils"),d=T(require("./choose-theme-list")),u=T(require("../../utils/ignore-filter")),h=T(require("./index")),c=T(require("../../utils/include-filter")),m=T(require("../../utils/debug")),f=require("./inquirer"),p=require("../../utils/ora-manager"),w=require("../../utils/path"),g=require("../../utils/error"),v=T(require("../../utils/check-theme-type-version")),E=T(require("../../utils/winston"));function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function T(e){return e&&e.__esModule?e:{default:e}}class q extends m.default{get isEmptyDir(){return(0,a.isEmptyDir)(!0,this.cwd)}async pull(){let{themeId:e}=this;if(e){await this.beforePull(),E.default.log(`Downloading theme (${e})...`);let{fileName:t}=await this.processDownloadTheme(e);E.default.log(`Unzipping theme (${t})...`),this.unzipTheme(t),(0,v.default)(this.cwd),E.default.log(`Theme (${e}) pulled successfully`),o.default.success("Theme pulled successfully")}else throw new g.AbortError(s.ERRORS.THEME_ID_NOT_EXIST)}async beforePull(){if(this.isEmptyDir||this.nodelete)return Promise.resolve();let t=await (0,f.askForPull)();return"clear"===t&&(E.default.log("Clear local theme files..."),e.default.emptyDirSync(this.cwd)),Promise.resolve()}unzipTheme(r){let l=t.default.join(this.cwd,r);if(e.default.existsSync(l)){try{let e=new i.default(l),t=e.getEntries();t.forEach(t=>{let r=t.entryName,i=this.ignoreFilter.match(r),l=this.includeFilter.match(r);!i&&l&&e.extractEntryTo(r,this.cwd,!0,!0)})}catch(e){throw new g.AbortError(e.message,s.ERRORS.UNZIP_THEME_FAILED)}e.default.removeSync(l)}}downloadTheme(e,t){return new Promise(async(r,i)=>{let l=await (0,n.downloadThemePackage)(e);if(t.succeed().clear(),200===l.status){let t=l.headers,o=t["theme-status"],n=t["theme-develop-type"];if(void 0===o||void 0===n){i(new g.AbortError(s.ERRORS.THEME_ID_NOT_EXIST));return}this.onDownloadProgress(l,e).then(e=>r(e)).catch(i)}else i(new g.AbortError(s.ERRORS.DOWNLOAD_THEME_FAILED))})}onDownloadProgress(i,o){return new Promise((n,d)=>{var u,h;let c;let m=i.headers["theme-status"],f=i.headers["theme-develop-type"],w=i.headers["content-length"]||0,g=i.headers["content-disposition"],v=null!==(h=null===(u=/fileName=([^;]+)/.exec(g))||void 0===u?void 0:u[1])&&void 0!==h?h:s.DEFAULT_ZIP_NAME;v=decodeURIComponent(v);let E=t.default.basename(v,".zip"),y=e.default.createWriteStream(t.default.join(this.cwd,v)),T=(0,a.getKeyMessage)(`Pulling theme files from ${decodeURIComponent(E)} (#${o}) on ${l.default.currentStore}`);w?(c=new r.default((0,a.getKeyMessage)("[:bar] :rate/bps :percent :etas"),{complete:"=",incomplete:" ",total:+w,width:50}),console.log(T)):c=(0,p.createOra)({text:T,spinner:"bouncingBar"}),i.data.pipe(y),i.data.on("data",e=>{w?c.tick(e.length):c.start()}),i.data.on("error",e=>{w||c.fail(),d(e)}),i.data.on("end",()=>{w||c.succeed(),y.on("finish",()=>{let r=e.default.statSync(t.default.join(this.cwd,v)).size;this.log("fileSize: %O",r),0===r?(w||c.fail("Downloaded file is empty"),d(Error("Downloaded file is empty"))):n({themeStatus:m,themeType:f,fileName:v})})})})}async processDownloadTheme(e){let t=(0,p.createOra)("Fetching the theme package file...");try{t.start();let{fileName:r}=await this.downloadTheme(e,t);return await Promise.resolve({fileName:r,themeId:e})}catch(e){return t.isSpinning&&t.fail().clear(),Promise.reject(e.message||e)}}async prepareTheme(){if(this.themeId)return this.themeId;if(this.live){let e=await h.default.getLiveThemeId();if(!e)throw new g.AbortError('Theme "live" doesn\'t exist');return e}if(this.development){let e=await h.default.getDevelopmentId();if(!e)throw new g.AbortError('Theme "development" doesn\'t exist');return e}let{themeId:e}=await (0,d.default)("pull");return e}constructor(e,t=(0,w.cwd)()){var r,i,l,s;super("theme:pull"),y(this,"cwd",void 0),y(this,"themeId",void 0),y(this,"live",void 0),y(this,"development",void 0),y(this,"includeFilter",void 0),y(this,"ignoreFilter",void 0),y(this,"nodelete",void 0),this.cwd=t,this.themeId=e.theme||"",this.live=null!==(r=e.live)&&void 0!==r&&r,this.development=null!==(i=e.development)&&void 0!==i&&i,this.nodelete=e.nodelete;let o=null!==(l=e.only)&&void 0!==l?l:[],n=null!==(s=e.ignore)&&void 0!==s?s:[];this.log("includes: %O",o),this.log("ignores: %O",n),this.includeFilter=new c.default(o,this.cwd),this.ignoreFilter=new u.default(n,this.cwd)}}
|
|
2
|
+
//# sourceMappingURL=pull.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var i in t)Object.defineProperty(e,i,{enumerable:!0,get:t[i]})}(exports,{PushService:()=>T,pushAction:()=>q});const e=b(require("../../helpers/config")),t=require("./types"),i=require("./utils"),s=b(require("../../utils/print-preview")),r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var i=P(t);if(i&&i.has(e))return i.get(e);var s={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var l=r?Object.getOwnPropertyDescriptor(e,u):null;l&&(l.get||l.set)?Object.defineProperty(s,u,l):s[u]=e[u]}return s.default=e,i&&i.set(e,s),s}(require("./choose-theme-list")),u=b(require("./index")),l=b(require("../../utils/ignore-filter")),n=b(require("../../utils/include-filter")),a=require("../../utils/system"),o=b(require("../../utils/debug")),h=require("../../utils/output"),d=require("../../utils/ui/ui"),m=require("../../utils/parse-options"),c=b(require("./uploader")),f=require("../../utils/path"),p=require("../../utils/error"),v=b(require("../../utils/winston")),g=require("../../utils/check-theme-type-version"),w=b(require("./3.0/push"));function y(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function b(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(P=function(e){return e?i:t})(e)}class T extends o.default{async confirmPushMode(){if(this.includes.length>0||this.ignores.length>0)return;let{mode:e}=await (0,r.prompt)([{type:"list",name:"mode",message:"Please choose an action (Use arrow keys)",default:"overwrite",choices:[{name:"Push all static files (safe mode)",value:"safe"},{name:"Push all files (overwrite existing ones)",value:"overwrite"}]}]);({safe:()=>{this.ignoreFilter=new l.default(["**/*.json"],this.cwd),this.uploader=new c.default({ignore:this.ignoreFilter,include:this.includeFilter},!this.nodelete,this.cwd)},overwrite:()=>{}})[e]()}async push(){v.default.log("Prepare push theme...");let e=await this.prepareTheme();e&&(await this.confirmPushMode(),v.default.log(`Current push theme info: ${JSON.stringify(e)}`),await this.pushThemePackage(e))}async prepareTheme(){if(this.themeId){let e=await u.default.getThemeInfo(this.themeId);return{id:this.themeId,name:e.name,status:e.status}}if(this.live){let e=await u.default.getLiveThemeId();if(!e)throw new p.AbortError('Theme "live" doesn\'t exist, please try again!');return{id:e,name:"",status:t.EThemeStatus.Published}}if(this.development){let e=await u.default.getValidDevelopmentInfo();return e}if(this.unpublished){let e=await T.getThemeNamePrompt();return{id:"",name:e,status:t.EThemeStatus.Unpublished}}let{themeId:e,isPublished:i,status:s}=await (0,r.default)("push");if(i){if(this.allowAlive)return{id:e,name:"",status:t.EThemeStatus.Published};let i=await T.confirmOverrideStoreTheme();return i?{id:e,name:"",status:t.EThemeStatus.Published}:null}return{id:e,name:"",status:s}}async pushThemePackage(t){v.default.log("Get theme info from local...");let r=(0,i.getThemeInfo)(this.cwd),u=t.id?{themeId:t.id,status:t.status}:{themeName:t.name,status:t.status};u.themeName&&(v.default.log(`Create a new theme base on ${u.themeName}...`),u.themeId=await c.default.createNewTheme(u.themeName));let l=u.themeId;console.log((0,i.getKeyMessage)(`Pushing theme files to ${decodeURIComponent(t.id?null==r?void 0:r.theme_name:t.name)} ${t.id?`(#${t.id}) `:""}on ${e.default.currentStore}`)),v.default.log(`Pushing theme (${l}) files...`),await this.uploader.upload(l,u.status),this.live?(v.default.log(`Publish theme (${l}) to live successfully`),(0,h.outputSuccess)(`Your theme is now live at ${e.default.currentStore}`)):(v.default.log(`Push theme (${l}) successfully`),(0,h.outputSuccess)("Your theme was pushed successfully"),(0,s.default)(l))}static async confirmOverrideStoreTheme(){let{isOverride:e}=await (0,r.prompt)([{type:"confirm",name:"isOverride",message:"Are you sure you want to push to your live theme?",default:!0}]);return e}static async getThemeNamePrompt(){return(0,d.renderTextPrompt)({message:"Please input the unpublished theme name",validate:e=>{if(!e.trim())return"Theme name cannot be empty"}})}constructor(e,t=(0,f.cwd)()){var i,s,r,u;super("theme:push"),y(this,"cwd",void 0),y(this,"themeId",void 0),y(this,"live",void 0),y(this,"development",void 0),y(this,"allowAlive",void 0),y(this,"publish",void 0),y(this,"unpublished",void 0),y(this,"includeFilter",void 0),y(this,"ignoreFilter",void 0),y(this,"uploader",void 0),y(this,"nodelete",void 0),y(this,"includes",void 0),y(this,"ignores",void 0),this.cwd=t,this.themeId=e.theme||"",this.live=null!==(i=e.live)&&void 0!==i&&i,this.development=null!==(s=e.development)&&void 0!==s&&s,this.allowAlive=e.allowLive,this.unpublished=e.unpublished,this.nodelete=e.nodelete,this.includes=null!==(r=e.only)&&void 0!==r?r:[],this.ignores=null!==(u=e.ignore)&&void 0!==u?u:[],this.log("includes: %O",this.includes),this.log("ignores: %O",this.ignores),this.includeFilter=new n.default(this.includes,this.cwd),this.ignoreFilter=new l.default(this.ignores,this.cwd),this.uploader=new c.default({ignore:this.ignoreFilter,include:this.includeFilter},!this.nodelete,t)}}async function q(t,s){try{let i=await (0,m.parseOptions)(t,s),r=i.path;v.default.log("Checking login..."),e.default.isLogin();let u=(0,g.getThemeTypeVersion)(r);(0,a.rmZipOnExit)(void 0,r),3===u?await new w.default(i,r).push():await new T(i,r).push()}catch(e){(0,i.handleError)(e)}}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var i in t)Object.defineProperty(e,i,{enumerable:!0,get:t[i]})}(exports,{PushService:()=>T,pushAction:()=>q});const e=b(require("../../helpers/config")),t=require("./types"),i=require("./utils"),s=b(require("../../utils/print-preview")),r=function(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var i=P(t);if(i&&i.has(e))return i.get(e);var s={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var l=r?Object.getOwnPropertyDescriptor(e,u):null;l&&(l.get||l.set)?Object.defineProperty(s,u,l):s[u]=e[u]}return s.default=e,i&&i.set(e,s),s}(require("./choose-theme-list")),u=b(require("./index")),l=b(require("../../utils/ignore-filter")),n=b(require("../../utils/include-filter")),a=require("../../utils/system"),o=b(require("../../utils/debug")),h=require("../../utils/output"),d=require("../../utils/ui/ui"),m=require("../../utils/parse-options"),c=b(require("./uploader")),f=require("../../utils/path"),p=require("../../utils/error"),v=b(require("../../utils/winston")),g=require("../../utils/check-theme-type-version"),w=b(require("./3.0/push"));function y(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function b(e){return e&&e.__esModule?e:{default:e}}function P(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,i=new WeakMap;return(P=function(e){return e?i:t})(e)}class T extends o.default{async confirmPushMode(){if(this.includes.length>0||this.ignores.length>0)return;let{mode:e}=await (0,r.prompt)([{type:"list",name:"mode",message:"Please choose an action (Use arrow keys)",default:"overwrite",choices:[{name:"Push all static files (safe mode)",value:"safe"},{name:"Push all files (overwrite existing ones)",value:"overwrite"}]}]);({safe:()=>{this.ignoreFilter=new l.default(["**/*.json"],this.cwd),this.uploader=new c.default({ignore:this.ignoreFilter,include:this.includeFilter},!this.nodelete,this.cwd)},overwrite:()=>{}})[e]()}async push(){v.default.log("Prepare push theme...");let e=await this.prepareTheme();e&&(await this.confirmPushMode(),v.default.log(`Current push theme info: ${JSON.stringify(e)}`),await this.pushThemePackage(e))}async prepareTheme(){if(this.themeId){let e=await u.default.getThemeInfo(this.themeId);return{id:this.themeId,name:e.name,status:e.status}}if(this.live){let e=await u.default.getLiveThemeId();if(!e)throw new p.AbortError('Theme "live" doesn\'t exist, please try again!');return{id:e,name:"",status:t.EThemeStatus.Published}}if(this.development){let e=await u.default.getValidDevelopmentInfo();return e}if(this.unpublished){let e=await T.getThemeNamePrompt();return{id:"",name:e,status:t.EThemeStatus.Unpublished}}let{themeId:e,isPublished:i,status:s}=await (0,r.default)("push");if(i){if(this.allowAlive)return{id:e,name:"",status:t.EThemeStatus.Published};let i=await T.confirmOverrideStoreTheme();return i?{id:e,name:"",status:t.EThemeStatus.Published}:null}return{id:e,name:"",status:s}}async pushThemePackage(t){v.default.log("Get theme info from local...");let r=(0,i.getThemeInfo)(this.cwd),u=t.id?{themeId:t.id,status:t.status}:{themeName:t.name,status:t.status};u.themeName&&(v.default.log(`Create a new theme base on ${u.themeName}...`),u.themeId=await c.default.createNewTheme(u.themeName));let l=u.themeId;console.log((0,i.getKeyMessage)(`Pushing theme files to ${decodeURIComponent(t.id?null==r?void 0:r.theme_name:t.name)} ${t.id?`(#${t.id}) `:""}on ${e.default.currentStore}`)),v.default.log(`Pushing theme (${l}) files...`),await this.uploader.upload(l,u.status),this.live?(v.default.log(`Publish theme (${l}) to live successfully`),(0,h.outputSuccess)(`Your theme is now live at ${e.default.currentStore}`)):(v.default.log(`Push theme (${l}) successfully`),(0,h.outputSuccess)("Your theme was pushed successfully"),(0,s.default)(l))}static async confirmOverrideStoreTheme(){let{isOverride:e}=await (0,r.prompt)([{type:"confirm",name:"isOverride",message:"Are you sure you want to push to your live theme?",default:!0}]);return e}static async getThemeNamePrompt(){return(0,d.renderTextPrompt)({message:"Please input the unpublished theme name",validate:e=>{if(!e.trim())return"Theme name cannot be empty"}})}constructor(e,t=(0,f.cwd)()){var i,s,r,u;super("theme:push"),y(this,"cwd",void 0),y(this,"themeId",void 0),y(this,"live",void 0),y(this,"development",void 0),y(this,"allowAlive",void 0),y(this,"publish",void 0),y(this,"unpublished",void 0),y(this,"includeFilter",void 0),y(this,"ignoreFilter",void 0),y(this,"uploader",void 0),y(this,"nodelete",void 0),y(this,"includes",void 0),y(this,"ignores",void 0),this.cwd=t,this.themeId=e.theme||"",this.live=null!==(i=e.live)&&void 0!==i&&i,this.development=null!==(s=e.development)&&void 0!==s&&s,this.allowAlive=e.allowLive,this.unpublished=e.unpublished,this.nodelete=e.nodelete,this.includes=null!==(r=e.only)&&void 0!==r?r:[],this.ignores=null!==(u=e.ignore)&&void 0!==u?u:[],this.log("includes: %O",this.includes),this.log("ignores: %O",this.ignores),this.includeFilter=new n.default(this.includes,this.cwd),this.ignoreFilter=new l.default(this.ignores,this.cwd),this.uploader=new c.default({ignore:this.ignoreFilter,include:this.includeFilter},!this.nodelete,t)}}async function q(t,s){try{let i=await (0,m.parseOptions)(t,s),r=i.path;v.default.log("Checking login..."),e.default.isLogin();let u=(0,g.getThemeTypeVersion)(r);(0,a.rmZipOnExit)(void 0,r),3===u?await new w.default(i,r).push():await new T(i,r).push()}catch(e){(0,i.handleError)(e)}}
|
|
2
|
+
//# sourceMappingURL=push.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>s});const e=require("../../helpers/sentry"),t=require("../../utils/error"),r=function(e){return e&&e.__esModule?e:{default:e}}(require("./update"));function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class s{start(){this.editorSync&&(this.timer=setInterval(this.startWork.bind(this),3e3))}stop(){this.timer&&clearInterval(this.timer)}async startWork(){try{await this.updateService.syncRemoteUpdate()}catch(i){this.stop()
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>s});const e=require("../../helpers/sentry"),t=require("../../utils/error"),r=function(e){return e&&e.__esModule?e:{default:e}}(require("./update"));function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class s{start(){this.editorSync&&(this.timer=setInterval(this.startWork.bind(this),3e3))}stop(){this.timer&&clearInterval(this.timer)}async startWork(){try{await this.updateService.syncRemoteUpdate()}catch(i){this.stop();let r=i instanceof Error&&Object.isExtensible(i)?i:new t.AbortError(i instanceof Error?i.message:String(null!=i?i:""));throw r!==i&&i instanceof Error&&(r.stack=i.stack),(0,e.reportBugOnce)(r),r}}constructor(e,t,s,o,a){i(this,"editorSync",void 0),i(this,"updateService",void 0),i(this,"timer",void 0),i(this,"uploader",void 0),i(this,"cwd",void 0),this.editorSync=e,this.uploader=o,this.cwd=a,this.updateService=new r.default(e,t,o,a),this.updateService.setUpdateQueue(s),this.updateService.setUpdateMode("polling")}}
|
|
2
|
+
//# sourceMappingURL=remote-watcher.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";var e,t;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var l in t)Object.defineProperty(e,l,{enumerable:!0,get:t[l]})}(exports,{EThemeType:()=>e,EThemeStatus:()=>t}),function(e){e[e.Mall=0]="Mall",e[e.Private=1]="Private"}(e||(e={})),function(e){e[e.Uncompleted=-2]="Uncompleted",e[e.Delete=-1]="Delete",e[e.Unpublished=0]="Unpublished",e[e.Published=1]="Published",e[e.Development=2]="Development"}(t||(t={}));
|
|
1
|
+
"use strict";var e,t;Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var l in t)Object.defineProperty(e,l,{enumerable:!0,get:t[l]})}(exports,{EThemeType:()=>e,EThemeStatus:()=>t}),function(e){e[e.Mall=0]="Mall",e[e.Private=1]="Private"}(e||(e={})),function(e){e[e.Uncompleted=-2]="Uncompleted",e[e.Delete=-1]="Delete",e[e.Unpublished=0]="Unpublished",e[e.Published=1]="Published",e[e.Development=2]="Development"}(t||(t={}));
|
|
2
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var u in t)Object.defineProperty(e,u,{enumerable:!0,get:t[u]})}(exports,{UpdateQueue:()=>e,default:()=>t});class e{push(e){this.queue.set(e.key,e)}find(e){if(this.queue.size>0){let t=this.queue.get(e);return t}return null}delete(e){this.queue.delete(e)}list(){let e=this.queue.entries(),t={};for(let[u,r]of e)t[u]=r;return t}clear(){this.queue.clear()}constructor(){!function(e,t,u){t in e?Object.defineProperty(e,t,{value:u,enumerable:!0,configurable:!0,writable:!0}):e[t]=u}(this,"queue",new Map)}}const t=new e;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var u in t)Object.defineProperty(e,u,{enumerable:!0,get:t[u]})}(exports,{UpdateQueue:()=>e,default:()=>t});class e{push(e){this.queue.set(e.key,e)}find(e){if(this.queue.size>0){let t=this.queue.get(e);return t}return null}delete(e){this.queue.delete(e)}list(){let e=this.queue.entries(),t={};for(let[u,r]of e)t[u]=r;return t}clear(){this.queue.clear()}constructor(){!function(e,t,u){t in e?Object.defineProperty(e,t,{value:u,enumerable:!0,configurable:!0,writable:!0}):e[t]=u}(this,"queue",new Map)}}const t=new e;
|
|
2
|
+
//# sourceMappingURL=update-queue.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>k});const e=F(require("fs-extra")),t=F(require("form-data")),l=F(require("../../helpers/config")),i=require("./api"),a=require("./utils"),s=require("./const"),r=F(require("../../utils/get-objects-diff")),o=require("./types"),u=F(require("../../utils/tiny-queue")),d=F(require("./index")),n=require("../../utils/messages"),f=require("./inquirer"),c=F(require("../../utils/debug")),h=F(require("./uploader")),m=require("../../utils/error"),p=F(require("./file")),g=F(require("./operation")),y=F(require("../../utils/winston"));function w(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function F(e){return e&&e.__esModule?e:{default:e}}class k extends c.default{setUpdateQueue(e){this.updateQueue=e}setUpdateMode(e){this.updateMode=e}async syncTheme(){y.default.log("Ensure development theme..."),await this.ensureDevelopmentTheme(),this.printSyncMessage(),y.default.log(`Check theme (${this.themeId}) is uncompleted dev theme...`);let e=await d.default.isUncompletedDevTheme(this.themeId);y.default.log(`The theme ${this.themeId}) is uncompleted dev theme: ${e}`),e?(y.default.log("Upload theme files..."),await this.uploadThemeFiles()):(y.default.log("Sync theme files..."),await this.syncUpdate())}printSyncMessage(){console.log(`✨ Syncing theme #${this.themeId} on ${l.default.currentStore}`)}getFilterFileChecksums(e){let t=Object.keys(e).reduce((t,l)=>{let i=this.ignoreFilter.match(l),a=this.includeFilter.match(l);return!i&&a&&(t[l]=e[l]),t},{});return t}async getFileChecksums(){let{localeFileChecksums:e}=this.uploader,t=await (0,i.getThemeFileList)(this.themeId),l=t.files.reduce((e,t)=>(t.fileName.endsWith(".preview")||(e[t.fileName]=t.fileContentChecksum||""),e),Object.create(null)),a=this.getFilterFileChecksums(e),s=this.getFilterFileChecksums(l);return{local:a,remote:s}}async syncRemoteUpdate(){let{local:e,remote:t}=await this.getFileChecksums();if(this.editorSync){y.default.log("[Remote Watch] Get remote and local diffs...");let l=await (0,r.default)(t,e);y.default.log("[Remote Watch] Run remote diffs..."),await this.updateStrategy(l,!0)}}async syncUpdate(){y.default.log("Get local and remote files checksum...");let{local:e,remote:t}=await this.getFileChecksums();if(this.editorSync){y.default.log("Get remote and local diffs...");let l=await (0,r.default)(t,e);await this.updateStrategy(l)}else{y.default.log("Get local and remote diffs...");let l=await (0,r.default)(e,t);l.length&&(y.default.log(`Run local diffs ${JSON.stringify(l)}...`),await this.runAllLocalDiff(l))}}async updateStrategy(e,t){let{local:l,remote:i}=await k.prepareUpdateDiffs(e,t);this.log("local diffs: %O",l),this.log("remote diffs: %O",i),l.length&&(y.default.log(`Run local diffs ${JSON.stringify(l)}...`),await this.runAllLocalDiff(l,!0)),i.length&&(y.default.log(`Run remote diffs ${JSON.stringify(i)}...`),await this.runAllRemoteDiff(i))}static async prepareUpdateDiffs(e,t){let l={local:[],remote:[]},i=e.length,a=e=>"create"===e?"delete":"delete"===e?"create":"update",s=(e,t)=>{let i=t.filter(e=>{let t=e.key;return(t.startsWith("config/")||t.startsWith("templates/"))&&t.endsWith(".json")});"remote"===e?l.remote=l.remote.concat(i):l.local=l.local.concat(i.map(e=>({...e,type:a(e.type)})))};if(!i)return l;if(t)return s("remote",e),l;y.default.log("Update conflicts files...");let[{key:r},...o]=e,u=await k.promptUpdateStrategy(r);if(s(u,[e[0]]),1===i)return l;let d=await (0,f.askForApplyToAll)(o.length);for await(let e of(console.log(),o))if(d)y.default.log("Apply to all files to solve conflict files..."),s(u,o);else{let t=await k.promptUpdateStrategy(e.key);y.default.log(`Apply ${e.key} strategy to solve conflict files...`),console.log(),s(t,[e])}return l}static async promptUpdateStrategy(e){let t=(0,n.getMessage)("theme.serve.syncer.update_strategy.title_content",{file_name:e});console.log(t);let l=await (0,f.askForUpdateStrategy)();return l}async processRemoteDiffFile(t,l,i){var a;let{fullPath:s}=l;if("create"===t||"update"===t){y.default.log(`Get file (${l.fileName}) information: ${l.fileName}`);let t=await this.getFileInfo(s);y.default.log("Writing file content"),e.default.ensureFileSync(s),e.default.writeFileSync(s,t)}else"delete"===t&&(y.default.log(`Delete file (${l.fileName})`),e.default.unlinkSync(s));null===(a=this.updateQueue)||void 0===a||a.push({key:l.fileName,checksums:[i],type:t})}runAllLocalDiff(e,t){return new Promise((l,i)=>{let a=!1,s=new m.ErrorStash,r=async e=>{if(a){e();return}y.default.log("Set theme upload completed"),await h.default.setUploadCompleted(this.themeId,o.EThemeStatus.Development),a=!0,e()};this.queue.on("all-done",async()=>{y.default.log("All task queue is all done!"),s.printAll(),await r(()=>l())}),this.queue.on("error",async e=>{y.default.logError(e),e instanceof m.ValidatorError?(y.default.log("Occurred validation error"),s.concat(e.errors)):(s.printAll(),await r(()=>{i(e)}))}),this.queue.all(e.map(({type:e,key:l})=>async()=>{let i=new p.default(l,this.cwd);if(await this.processLocalDiffFile(e,i),!t){let t=this.editorSync&&"update"===e?"get":e,l=new g.default(t,i).asSyncMessage();console.log(l)}}))})}runAllRemoteDiff(e){return new Promise((t,l)=>{this.queue.on("all-done",()=>t()),this.queue.on("error",e=>l(e)),this.queue.all(e.map(({type:e,key:t,checksums:l})=>async()=>{let i=new p.default(t,this.cwd);if(await this.processRemoteDiffFile(e,i,l[0]),"polling"===this.updateMode){let t=this.editorSync&&"update"===e?"get":e,l=new g.default(t,i).asSyncMessage();console.log(l)}}))})}async processLocalDiffFile(e,t){"create"===e?(y.default.log(`Create file: ${t.fileName}`),await this.createFile(t)):"update"===e?(y.default.log(`Update file: ${t.fileName}`),await this.updateFile(t)):"delete"===e&&(y.default.log(`Delete file: ${t.fileName}`),await this.deleteFile(t))}async getFileInfo(e){let t=(0,a.parseFileName)(e,this.cwd),l=await (0,i.getThemeFileDetail)({themeId:this.themeId,fileName:t});return null==l?void 0:l.fileContent}async deleteFile(e){y.default.log(`Delete file: ${e.fileName}`),await (0,i.deleteFile)(this.themeId,{fileName:e.fileName,cliFirstCreateFile:!0}),this.uploader.checksums.has(e)&&(y.default.log(`Delete file (${e.fileName}) checksum`),this.uploader.checksums.delete(e))}async updateFile(l){let{fileName:r}=l,o=r.startsWith("assets/");
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>k});const e=F(require("fs-extra")),t=F(require("form-data")),l=F(require("../../helpers/config")),i=require("./api"),a=require("./utils"),s=require("./const"),r=F(require("../../utils/get-objects-diff")),o=require("./types"),u=F(require("../../utils/tiny-queue")),d=F(require("./index")),n=require("../../utils/messages"),f=require("./inquirer"),c=F(require("../../utils/debug")),h=F(require("./uploader")),m=require("../../utils/error"),p=F(require("./file")),g=F(require("./operation")),y=F(require("../../utils/winston"));function w(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function F(e){return e&&e.__esModule?e:{default:e}}class k extends c.default{setUpdateQueue(e){this.updateQueue=e}setUpdateMode(e){this.updateMode=e}async syncTheme(){y.default.log("Ensure development theme..."),await this.ensureDevelopmentTheme(),this.printSyncMessage(),y.default.log(`Check theme (${this.themeId}) is uncompleted dev theme...`);let e=await d.default.isUncompletedDevTheme(this.themeId);y.default.log(`The theme ${this.themeId}) is uncompleted dev theme: ${e}`),e?(y.default.log("Upload theme files..."),await this.uploadThemeFiles()):(y.default.log("Sync theme files..."),await this.syncUpdate())}printSyncMessage(){console.log(`✨ Syncing theme #${this.themeId} on ${l.default.currentStore}`)}getFilterFileChecksums(e){let t=Object.keys(e).reduce((t,l)=>{let i=this.ignoreFilter.match(l),a=this.includeFilter.match(l);return!i&&a&&(t[l]=e[l]),t},{});return t}async getFileChecksums(){let{localeFileChecksums:e}=this.uploader,t=await (0,i.getThemeFileList)(this.themeId),l=t.files.reduce((e,t)=>(t.fileName.endsWith(".preview")||(e[t.fileName]=t.fileContentChecksum||""),e),Object.create(null)),a=this.getFilterFileChecksums(e),s=this.getFilterFileChecksums(l);return{local:a,remote:s}}async syncRemoteUpdate(){let{local:e,remote:t}=await this.getFileChecksums();if(this.editorSync){y.default.log("[Remote Watch] Get remote and local diffs...");let l=await (0,r.default)(t,e);y.default.log("[Remote Watch] Run remote diffs..."),await this.updateStrategy(l,!0)}}async syncUpdate(){y.default.log("Get local and remote files checksum...");let{local:e,remote:t}=await this.getFileChecksums();if(this.editorSync){y.default.log("Get remote and local diffs...");let l=await (0,r.default)(t,e);await this.updateStrategy(l)}else{y.default.log("Get local and remote diffs...");let l=await (0,r.default)(e,t);l.length&&(y.default.log(`Run local diffs ${JSON.stringify(l)}...`),await this.runAllLocalDiff(l))}}async updateStrategy(e,t){let{local:l,remote:i}=await k.prepareUpdateDiffs(e,t);this.log("local diffs: %O",l),this.log("remote diffs: %O",i),l.length&&(y.default.log(`Run local diffs ${JSON.stringify(l)}...`),await this.runAllLocalDiff(l,!0)),i.length&&(y.default.log(`Run remote diffs ${JSON.stringify(i)}...`),await this.runAllRemoteDiff(i))}static async prepareUpdateDiffs(e,t){let l={local:[],remote:[]},i=e.length,a=e=>"create"===e?"delete":"delete"===e?"create":"update",s=(e,t)=>{let i=t.filter(e=>{let t=e.key;return(t.startsWith("config/")||t.startsWith("templates/"))&&t.endsWith(".json")});"remote"===e?l.remote=l.remote.concat(i):l.local=l.local.concat(i.map(e=>({...e,type:a(e.type)})))};if(!i)return l;if(t)return s("remote",e),l;y.default.log("Update conflicts files...");let[{key:r},...o]=e,u=await k.promptUpdateStrategy(r);if(s(u,[e[0]]),1===i)return l;let d=await (0,f.askForApplyToAll)(o.length);for await(let e of(console.log(),o))if(d)y.default.log("Apply to all files to solve conflict files..."),s(u,o);else{let t=await k.promptUpdateStrategy(e.key);y.default.log(`Apply ${e.key} strategy to solve conflict files...`),console.log(),s(t,[e])}return l}static async promptUpdateStrategy(e){let t=(0,n.getMessage)("theme.serve.syncer.update_strategy.title_content",{file_name:e});console.log(t);let l=await (0,f.askForUpdateStrategy)();return l}async processRemoteDiffFile(t,l,i){var a;let{fullPath:s}=l;if("create"===t||"update"===t){y.default.log(`Get file (${l.fileName}) information: ${l.fileName}`);let t=await this.getFileInfo(s);y.default.log("Writing file content"),e.default.ensureFileSync(s),e.default.writeFileSync(s,t)}else"delete"===t&&(y.default.log(`Delete file (${l.fileName})`),e.default.unlinkSync(s));null===(a=this.updateQueue)||void 0===a||a.push({key:l.fileName,checksums:[i],type:t})}runAllLocalDiff(e,t){return new Promise((l,i)=>{let a=!1,s=new m.ErrorStash,r=async e=>{if(a){e();return}y.default.log("Set theme upload completed"),await h.default.setUploadCompleted(this.themeId,o.EThemeStatus.Development),a=!0,e()};this.queue.on("all-done",async()=>{y.default.log("All task queue is all done!"),s.printAll(),await r(()=>l())}),this.queue.on("error",async e=>{y.default.logError(e),e instanceof m.ValidatorError?(y.default.log("Occurred validation error"),s.concat(e.errors)):(s.printAll(),await r(()=>{i(e)}))}),this.queue.all(e.map(({type:e,key:l})=>async()=>{let i=new p.default(l,this.cwd);if(await this.processLocalDiffFile(e,i),!t){let t=this.editorSync&&"update"===e?"get":e,l=new g.default(t,i).asSyncMessage();console.log(l)}}))})}runAllRemoteDiff(e){return new Promise((t,l)=>{this.queue.on("all-done",()=>t()),this.queue.on("error",e=>l(e)),this.queue.all(e.map(({type:e,key:t,checksums:l})=>async()=>{let i=new p.default(t,this.cwd);if(await this.processRemoteDiffFile(e,i,l[0]),"polling"===this.updateMode){let t=this.editorSync&&"update"===e?"get":e,l=new g.default(t,i).asSyncMessage();console.log(l)}}))})}async processLocalDiffFile(e,t){"create"===e?(y.default.log(`Create file: ${t.fileName}`),await this.createFile(t)):"update"===e?(y.default.log(`Update file: ${t.fileName}`),await this.updateFile(t)):"delete"===e&&(y.default.log(`Delete file: ${t.fileName}`),await this.deleteFile(t))}async getFileInfo(e){let t=(0,a.parseFileName)(e,this.cwd),l=await (0,i.getThemeFileDetail)({themeId:this.themeId,fileName:t});return null==l?void 0:l.fileContent}async deleteFile(e){y.default.log(`Delete file: ${e.fileName}`),await (0,i.deleteFile)(this.themeId,{fileName:e.fileName,cliFirstCreateFile:!0}),this.uploader.checksums.has(e)&&(y.default.log(`Delete file (${e.fileName}) checksum`),this.uploader.checksums.delete(e))}async updateFile(l){let{fileName:r}=l,o=r.startsWith("assets/");(0,a.checkTemplateFileName)(r);try{if(o&&!s.TEXT_TYPE_EXTNAMES.includes(l.extName)){let a=new t.default;a.append("file",e.default.createReadStream(l.fullPath)),a.append("fileName",r),a.append("cliFirstCreateFile","true"),y.default.log(`Upload asset file: ${r}`);let s=await (0,i.uploadFile)(this.themeId,a,{headers:a.getHeaders()});y.default.log(`Update file (${r}) checksum: ${s.fileContentChecksum}`),this.uploader.checksums.set(r,null==s?void 0:s.fileContentChecksum)}else{if(!(0,a.checkLayoutFile)(r,l.fileContent))throw new m.AbortError(s.ERRORS.LAYOUT_FILE_NOT_MATCH_TEMPLATE);y.default.log(`Update file: ${r}`);let e=await (0,i.updateFile)(this.themeId,{fileName:r,fileContent:l.fileContent,cliFirstCreateFile:!0});y.default.log(`Update file (${r}) checksum: ${e.fileContentChecksum}`),this.uploader.checksums.set(r,null==e?void 0:e.fileContentChecksum)}}catch(e){if(e instanceof m.AbortError&&e.message===s.ERRORS.LAYOUT_FILE_NOT_MATCH_TEMPLATE)throw e;throw(0,a.formatThemeFileUploadError)(e,{fileName:r,themeId:this.themeId})}}async createFile(l){let{fileName:r}=l,o=r.startsWith("assets/");if(!(0,a.checkLayoutFile)(r,l.fileContent))throw new m.AbortError(s.ERRORS.LAYOUT_FILE_NOT_MATCH_TEMPLATE);(0,a.checkTemplateFileName)(r);try{if(o){let a=new t.default;a.append("file",e.default.createReadStream(l.fullPath)),a.append("fileName",r),a.append("cliFirstCreateFile","true"),y.default.log(`Upload asset file: ${r}`);let s=await (0,i.uploadFile)(this.themeId,a,{headers:a.getHeaders()});y.default.log(`Update file (${r}) checksum: ${s.fileContentChecksum}`),this.uploader.checksums.set(r,s.fileContentChecksum)}else{y.default.log(`Create file: ${r}`);let e=await (0,i.createFile)(this.themeId,{fileName:r,fileContent:l.fileContent,cliFirstCreateFile:!0});y.default.log(`Update file (${r}) checksum: ${e.fileContentChecksum}`),this.uploader.checksums.set(r,e.fileContentChecksum)}}catch(e){throw(0,a.formatThemeFileUploadError)(e,{fileName:r,themeId:this.themeId})}}async ensureDevelopmentTheme(){let{id:e,name:t}=await d.default.findOrCreate(this.themeId);if(e)this.themeId=e,l.default.developmentThemeId=e,l.default.developmentThemeName=t;else throw new m.AbortError(s.ERRORS.THEME_ID_NOT_EXIST)}async uploadThemeFiles(){await this.uploader.upload(this.themeId,o.EThemeStatus.Development)}constructor(e,t,i,a=process.cwd()){super("theme:serve:update"),w(this,"cwd",void 0),w(this,"themeId",void 0),w(this,"queue",void 0),w(this,"editorSync",void 0),w(this,"updateQueue",void 0),w(this,"updateMode","initialize"),w(this,"includeFilter",void 0),w(this,"ignoreFilter",void 0),w(this,"uploader",void 0),this.cwd=a,this.themeId=l.default.developmentThemeId,this.queue=new u.default({concurrency:4}),this.editorSync=e,this.updateQueue=null,this.includeFilter=t.include,this.ignoreFilter=t.ignore,this.uploader=i}}
|
|
2
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>p});const e=f(require("progress")),t=f(require("fast-glob")),i=f(require("fs-extra")),l=f(require("form-data")),s=require("./api"),a=require("../../utils/error"),r=f(require("../../utils/colors")),n=f(require("./file")),u=f(require("./checksum")),c=require("./types"),o=f(require("../../utils/tiny-queue")),h=require("./utils"),d=f(require("../../utils/winston"));function m(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function f(e){return e&&e.__esModule?e:{default:e}}class p{themeFiles(){let e=t.default.sync(["config/**/*","layout/**/*","locales/**/*","sections/**/*","snippets/**/*","templates/**/*","assets/**/*"],{cwd:this.cwd,onlyFiles:!0,unique:!0});return e.map(e=>new n.default(e,this.cwd))}staticAssetFiles(){let e=t.default.sync(["assets/**/*"],{cwd:this.cwd,onlyFiles:!0,unique:!0});return e.map(e=>new n.default(e,this.cwd))}diffThemeFiles(){return this.themeFiles().filter(e=>!this.checksums.has(e))}get localeFileChecksums(){return this.themeFiles().reduce((e,t)=>(e[t.fileName]=t.checksum,e),{})}upload(t,i=c.EThemeStatus.Development,l={progressFormat:r.default.cyan("[:bar] :percent")}){let s=new a.ErrorStash;return new Promise(async(n,u)=>{d.default.log("Fetching theme checksums..."),await this.fetchChecksums(t),await this.deleteFiles(t);let c=this.themeFiles(),o=!1,m=(()=>{if(l.silent)return;let t=l.progressFormat||r.default.cyan("[:bar] :percent");e.default.prototype.setTotal=function(e){this.total=e};let i=new e.default(t,{complete:"=",incomplete:" ",total:0,width:50,clear:!0,...l.progressBarOptions});return i})(),f=!1,F=async e=>{if(f||!o){e();return}d.default.log(`Set theme (${t}) upload completed...`),await p.setUploadCompleted(t,i),f=!0,e()};this.queue.on("all-done",async()=>{d.default.log("All task queue is all done!"),s.printAll(),await F(()=>n())}),this.queue.on("error",async e=>{if(d.default.logError(e),e instanceof a.ValidatorError)s.concat(e.errors);else{console.log(),null==m||m.terminate(),s.printAll();let t=e instanceof a.AbortError?e:new a.AbortError(e.message);await F(()=>{u(t),(0,h.handleError)(t)})}}),this.queue.on("success",()=>{o=!0,l.silent||null==m||m.tick()});let w=c.filter(e=>this.uploadable(e)).filter(e=>e.isConfigSchemaFile).map(e=>async()=>{await p.createFile(t,e)}),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>p});const e=f(require("progress")),t=f(require("fast-glob")),i=f(require("fs-extra")),l=f(require("form-data")),s=require("./api"),a=require("../../utils/error"),r=f(require("../../utils/colors")),n=f(require("./file")),u=f(require("./checksum")),c=require("./types"),o=f(require("../../utils/tiny-queue")),h=require("./utils"),d=f(require("../../utils/winston"));function m(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function f(e){return e&&e.__esModule?e:{default:e}}class p{themeFiles(){let e=t.default.sync(["config/**/*","layout/**/*","locales/**/*","sections/**/*","snippets/**/*","templates/**/*","assets/**/*"],{cwd:this.cwd,onlyFiles:!0,unique:!0});return e.map(e=>new n.default(e,this.cwd))}staticAssetFiles(){let e=t.default.sync(["assets/**/*"],{cwd:this.cwd,onlyFiles:!0,unique:!0});return e.map(e=>new n.default(e,this.cwd))}diffThemeFiles(){return this.themeFiles().filter(e=>!this.checksums.has(e))}get localeFileChecksums(){return this.themeFiles().reduce((e,t)=>(e[t.fileName]=t.checksum,e),{})}upload(t,i=c.EThemeStatus.Development,l={progressFormat:r.default.cyan("[:bar] :percent")}){let s=new a.ErrorStash;return new Promise(async(n,u)=>{d.default.log("Fetching theme checksums..."),await this.fetchChecksums(t),await this.deleteFiles(t);let c=this.themeFiles(),o=!1,m=(()=>{if(l.silent)return;let t=l.progressFormat||r.default.cyan("[:bar] :percent");e.default.prototype.setTotal=function(e){this.total=e};let i=new e.default(t,{complete:"=",incomplete:" ",total:0,width:50,clear:!0,...l.progressBarOptions});return i})(),f=!1,F=async e=>{if(f||!o){e();return}d.default.log(`Set theme (${t}) upload completed...`),await p.setUploadCompleted(t,i),f=!0,e()};this.queue.on("all-done",async()=>{d.default.log("All task queue is all done!"),s.printAll(),await F(()=>n())}),this.queue.on("error",async e=>{if(d.default.logError(e),e instanceof a.ValidatorError)s.concat(e.errors);else{console.log(),null==m||m.terminate(),s.printAll();let t=e instanceof a.AbortError?e:new a.AbortError(e.message);await F(()=>{u(t),(0,h.handleError)(t)})}}),this.queue.on("success",()=>{o=!0,l.silent||null==m||m.tick()});let w=c.filter(e=>this.uploadable(e)).filter(e=>e.isConfigSchemaFile).map(e=>async()=>{await p.createFile(t,e)}),y=c.filter(e=>this.uploadable(e)).filter(e=>".html"===e.extName).map(e=>async()=>{await p.createFile(t,e)}),g=c.filter(e=>this.uploadable(e)).filter(e=>".json"===e.extName&&!e.isConfigFile).map(e=>async()=>{await p.createFile(t,e)}),q=c.filter(e=>this.uploadable(e)).filter(e=>e.isConfigFile&&!e.isConfigSchemaFile).map(e=>async()=>{await p.createFile(t,e)}),N=this.staticAssetFiles().filter(e=>this.uploadable(e)).map(e=>async()=>{await p.createFile(t,e)}),C=[...w,...y,...g,...q,...N];this.queue.addAll(C),0===C.length&&n(),null==m||m.setTotal(this.queue.size)})}uploadable(e){return!this.ignoreOperation(e.fileName)&&!!e.isExist&&this.checksums.fileHasChanged(e)}static async createFile(e,t){let a=t.fileName.startsWith("assets/");(0,h.checkTemplateFileName)(t.fileName);try{if(a){let a=new l.default;a.append("file",i.default.createReadStream(t.fullPath)),a.append("fileName",t.fileName),a.append("cliFirstCreateFile","true"),await (0,s.uploadFile)(e,a,{headers:a.getHeaders()})}else await (0,s.createFile)(e,{fileName:t.fileName,fileContent:t.fileContent,cliFirstCreateFile:!0})}catch(i){throw(0,h.formatThemeFileUploadError)(i,{fileName:t.fileName,themeId:e})}}async fetchChecksums(e){try{let t=await (0,s.getThemeFileList)(e);t.files.forEach(e=>{e.fileContentChecksum&&this.checksums.set(e.fileName,e.fileContentChecksum)})}catch(e){}}async deleteFiles(e){if(!this.isDeleteFile)return;d.default.log("Deleting remote theme files...");let t=this.checksums.keys(),i=this.themeFiles().map(e=>e.fileName),l=t.map(e=>new n.default(e,this.cwd)).filter(e=>!i.includes(e.fileName)).filter(e=>!this.ignoreOperation(e.fileName));l.length>0&&await this.enqueueDeletes(l,e)}async enqueueDeletes(e,t){return new Promise((i,l)=>{this.queue.on("all-done",i),this.queue.on("error",l),this.queue.addAll(e.map(e=>async()=>{await this.del(e,t)}))})}ignoreOperation(e){return this.ignoreFilter.match(e)||!this.includeFilter.match(e)}async del(e,t){await (0,s.deleteFile)(t,{fileName:e.fileName,cliFirstCreateFile:!0}),this.checksums.has(e)&&this.checksums.delete(e)}static async createNewTheme(e){let t=await (0,s.createNewThemeOrCompleteUpload)({themeName:e});if(t.themeId)return t.themeId}static async setUploadCompleted(e,t){let i=await (0,s.createNewThemeOrCompleteUpload)({themeId:e,status:t,completed:!0});if(i.themeId)return i.themeId}constructor(e,t,i){m(this,"cwd",void 0),m(this,"queue",void 0),m(this,"checksums",void 0),m(this,"includeFilter",void 0),m(this,"ignoreFilter",void 0),m(this,"isDeleteFile",void 0),this.cwd=i,this.queue=new o.default({maxRetry:3,concurrency:4}),this.checksums=new u.default,this.includeFilter=e.include,this.ignoreFilter=e.ignore,this.isDeleteFile=t}}
|
|
2
|
+
//# sourceMappingURL=uploader.js.map
|
|
@@ -1 +1,3 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{standardThemeDirectories:()=>m,standardThemeDirectories3:()=>g,themeDirectoryGlobList3:()=>
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{standardThemeDirectories:()=>m,standardThemeDirectories3:()=>g,themeDirectoryGlobList3:()=>y,getThemeDirectory:()=>E,getThemeDirectory3:()=>_,getRelativePath:()=>w,parseFileName:()=>A,parseFile:()=>S,checkTemplateFileName:()=>T,checkLayoutFile:()=>D,checkSectionFile:()=>$,handleError:()=>b,formatThemeFileUploadError:()=>j,formatThemeFileDeleteError:()=>q,getThemeInfo:()=>v,getThemeInfo3:()=>F,getKeyMessage:()=>O,getStringifyKey:()=>N,replaceVariable:()=>I,generateDevThemeName:()=>k,ignoreHiddenDir:()=>x,isEmptyDir:()=>M,getDirsWithoutDot:()=>P});const e=p(require("path")),t=p(require("fs-extra")),r=require("os"),n=require("nanoid"),o=p(require("../../utils/logger")),i=p(require("../../utils/replace-dot")),l=require("./const"),a=require("../../helpers/sentry"),s=p(require("../../utils/colors")),c=require("../../utils/ui/render"),u=require("../../utils/error"),f=require("../../utils/path"),d=require("../../utils/ora-manager"),h=p(require("../../utils/winston"));function p(e){return e&&e.__esModule?e:{default:e}}const m=["assets","config","layout","locales","sections","snippets","templates"],g=["blocks","public","layout","i18n","sections","components","templates","theme.config.json","theme.schema.json"],y=g.map(e=>e.endsWith(".json")?e:`${e}/**/*`);function E(t=(0,f.cwd)()){return m.map(r=>e.default.join(t,r))}function _(t=(0,f.cwd)()){return g.map(r=>e.default.join(t,r))}function w(t,r=process.cwd()){return e.default.relative(r,t)}function A(e,t=process.cwd()){e=e.replace(/\\/g,"/");let r=t.replace(/\\/g,"/");return e.split(r)[1].replace(/^\//,"")}function S(e,r=(0,f.cwd)()){let n=t.default.readFileSync(e,"utf-8"),o=A(e,r);return{fileName:o,fileContent:n}}function T(e){if(h.default.log(`Check template file name is valid or not: ${e}`),!e.startsWith("templates"))return;let t=e.split("/"),r=t[t.length-1];if(!/^[A-Za-z0-9._-]+$/.test(r))throw new u.AbortError(`${e} ${l.ERRORS.TEMPLATE_FILE_NAME_NOT_PASS}`)}function D(e,t){if(!e.startsWith("layout")||e.startsWith("layout")&&l.IGNORE_LAYOUT_FILES.some(t=>e.includes(t)))return!0;let r=[];return t.match(/{{\s*content_for_header\s*}}/)||r.push("content_for_header"),t.match(/{{\s*content_for_layout\s*}}/)||r.push("content_for_layout"),t.match(/{{\s*content_for_footer\s*}}/)||r.push("content_for_footer"),!r.length||(r.forEach(t=>{o.default.error(`[${e}]: Missing {{${t}}} in the head section of the template`)}),(0,d.clearAllOra)(),console.log(),!1)}function $(r,n,o){if(n.startsWith("sections")&&!o.trim()){let n=t.default.readFileSync(e.default.join(__dirname,"./section-default.html"),"utf-8");t.default.writeFileSync(r,n,"utf-8")}}function b(e){process.env.DEBUG&&console.log(e),e instanceof u.AbortError?(0,c.renderFatalError)(e):o.default.error(e.message||e),h.default.logError(e,()=>{(0,a.reportAndExit)(e)})}function R(e,t){let r=`Failed to ${t.operation} file "`;if(e instanceof u.AbortError&&e.message.startsWith(r))return e;let n=e instanceof Error?e.message:String(null!=e?e:"Unknown error"),o=e instanceof u.AbortError?e.tryMessage:null,i=t.operation.charAt(0).toUpperCase()+t.operation.slice(1);h.default.log(`[${i}] failed file=${t.fileName} themeId=${t.themeId} detail=${n}`);let l=new u.AbortError(`${r}${t.fileName}" (themeId: ${t.themeId})
|
|
2
|
+
${n}`,o);return e instanceof Error&&(l.stack=e.stack,l.cause=e),e&&"object"==typeof e&&"code"in e&&(l.code=e.code),l}function j(e,t){return R(e,{...t,operation:"upload"})}function q(e,t){return R(e,{...t,operation:"delete"})}function v(e=process.cwd()){let r=(0,f.joinPath)(e,"config/settings_schema.json");if(!t.default.existsSync(r))throw new u.AbortError(l.ERRORS.NOT_STANDARD_DIRECTORY);let n=t.default.readJsonSync(r),o=null==n?void 0:n[0];return o}function F(e=process.cwd()){let r=(0,f.joinPath)(e,"theme.schema.json");if(!t.default.existsSync(r))throw new u.AbortError(l.ERRORS.NOT_STANDARD_DIRECTORY);let n=t.default.readJsonSync(r);return n}function O(e){return s.default.cyan(e)}function N(e){return e.map(e=>(0,i.default)(e)).filter(Boolean).join(".")}function I(e,t){let r=e.match(/\{(.*?)\}/g);return r&&r.forEach(r=>{let n=r.replace(/[{}]/g,""),o=n in t?t[n]:"";o&&(e=e.replace(r,o))}),e}function k(){var e;let t=(0,n.customAlphabet)("abcdefghijklmnopqrstuvwxyz0123456789",6),o=t(),i=null===(e=(0,r.hostname)().split("."))||void 0===e?void 0:e.shift(),l=36-o.length-1,a=`${o}-${null==i?void 0:i.slice(0,l)}`;return`Development (${a})`}function x(e){return!/(^|\/)\.[^/.]/g.test(e)}function M(e=!0,r=process.cwd()){let n=t.default.readdirSync(r);if(e){let e=n.filter(x);return 0===e.length}return 0===n.length}function P(e=process.cwd()){let r=t.default.readdirSync(e);return r.filter(x)}
|
|
3
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"reportThemeWatcherError",{enumerable:!0,get:()=>r});const e=require("../../helpers/sentry");function r(r,{themeOs:t,operation:o}){return(0,e.reportBugOnce)(r,{tags:{error_source:"theme-file-watcher",theme_os:t,file_operation:o}})}
|
|
2
|
+
//# sourceMappingURL=watcher-monitoring.js.map
|
package/dist/type.d.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
//# sourceMappingURL=type.d.js.map
|
package/dist/types/env.d.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
2
|
+
//# sourceMappingURL=env.d.js.map
|
package/dist/types/type.d.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
//# sourceMappingURL=type.d.js.map
|
package/dist/utils/abort.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{AbortController:()=>r,AbortSignal:()=>t});const e=require("node-abort-controller");class r extends e.AbortController{}class t extends e.AbortSignal{}
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{AbortController:()=>r,AbortSignal:()=>t});const e=require("node-abort-controller");class r extends e.AbortController{}class t extends e.AbortSignal{}
|
|
2
|
+
//# sourceMappingURL=abort.js.map
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{getThemeTypeVersion:()=>u,isThemeTypeVersion3:()=>a,isRemoteThemeTypeVersion3:()=>f,default:()=>h});const e=o(require("fs-extra")),t=o(require("./logger")),r=require("./messages"),n=o(require("../helpers/config")),s=require("./path"),i=o(require("./winston/index"));function o(e){return e&&e.__esModule?e:{default:e}}const u=(t,r=!1)=>{i.default.log("Checking theme type version...");let n=(0,s.joinPath)(t,"config/settings_schema.json"),o=(0,s.joinPath)(t,"theme.schema.json"),u=e.default.pathExistsSync(n)?e.default.readJsonSync(n,"utf-8"):e.default.readJsonSync(o,"utf-8"),{theme_type_version:a}=Array.isArray(u)?u[0]:u;if(r)return a;if(!a||!a.startsWith("OS_"))return 1;let f=Number(a.split("OS_")[1]);return f},a=e=>3===u(e),f=e=>"OS_3.0"===e,h=e=>{if(n.default.isShownNot2o1ThemeTips)return;let s=u(e);return s<2.1&&(t.default.warn((0,r.getMessage)("theme.warnings.is_not_gte_2o1_theme")),n.default.isShownNot2o1ThemeTips=!0),s};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(exports,{getThemeTypeVersion:()=>u,isThemeTypeVersion3:()=>a,isRemoteThemeTypeVersion3:()=>f,default:()=>h});const e=o(require("fs-extra")),t=o(require("./logger")),r=require("./messages"),n=o(require("../helpers/config")),s=require("./path"),i=o(require("./winston/index"));function o(e){return e&&e.__esModule?e:{default:e}}const u=(t,r=!1)=>{i.default.log("Checking theme type version...");let n=(0,s.joinPath)(t,"config/settings_schema.json"),o=(0,s.joinPath)(t,"theme.schema.json"),u=e.default.pathExistsSync(n)?e.default.readJsonSync(n,"utf-8"):e.default.readJsonSync(o,"utf-8"),{theme_type_version:a}=Array.isArray(u)?u[0]:u;if(r)return a;if(!a||!a.startsWith("OS_"))return 1;let f=Number(a.split("OS_")[1]);return f},a=e=>3===u(e),f=e=>"OS_3.0"===e,h=e=>{if(n.default.isShownNot2o1ThemeTips)return;let s=u(e);return s<2.1&&(t.default.warn((0,r.getMessage)("theme.warnings.is_not_gte_2o1_theme")),n.default.isShownNot2o1ThemeTips=!0),s};
|
|
2
|
+
//# sourceMappingURL=check-theme-type-version.js.map
|
package/dist/utils/colors.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>t});const e=function(e){return e&&e.__esModule?e:{default:e}}(require("chalk")),t=e.default;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>t});const e=function(e){return e&&e.__esModule?e:{default:e}}(require("chalk")),t=e.default;
|
|
2
|
+
//# sourceMappingURL=colors.js.map
|
package/dist/utils/const.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{CLI_VERSION:()=>t,CLI_NAME:()=>n,CLI_USER_AGENT:()=>o});const e=require("pathe"),r=require("fs-extra"),t=function(){let t=(0,e.join)(__dirname,"../../package.json"),{version:n}=(0,r.readJSONSync)(t);return n}(),n="Shopline CLI",o=`${n}/${t}`;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,r){for(var t in r)Object.defineProperty(e,t,{enumerable:!0,get:r[t]})}(exports,{CLI_VERSION:()=>t,CLI_NAME:()=>n,CLI_USER_AGENT:()=>o});const e=require("pathe"),r=require("fs-extra"),t=function(){let t=(0,e.join)(__dirname,"../../package.json"),{version:n}=(0,r.readJSONSync)(t);return n}(),n="Shopline CLI",o=`${n}/${t}`;
|
|
2
|
+
//# sourceMappingURL=const.js.map
|