@wix/web50-cli 0.1.0 → 0.1.2

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.
Files changed (134) hide show
  1. package/bin/web5.js +1 -2
  2. package/dist/cjs/auth/deviceFlow.js +175 -16
  3. package/dist/cjs/auth/deviceFlow.js.map +1 -1
  4. package/dist/cjs/auth/index.js +93 -10
  5. package/dist/cjs/auth/index.js.map +1 -1
  6. package/dist/cjs/auth/secretStore.js.map +1 -1
  7. package/dist/cjs/cli.js +29 -1
  8. package/dist/cjs/cli.js.map +1 -1
  9. package/dist/cjs/commands/bundle.js +103 -0
  10. package/dist/cjs/commands/bundle.js.map +1 -0
  11. package/dist/cjs/commands/conversation.js +50 -0
  12. package/dist/cjs/commands/conversation.js.map +1 -0
  13. package/dist/cjs/commands/conversationWizard.js +528 -0
  14. package/dist/cjs/commands/conversationWizard.js.map +1 -0
  15. package/dist/cjs/commands/deploy.js +237 -0
  16. package/dist/cjs/commands/deploy.js.map +1 -0
  17. package/dist/cjs/commands/ecom.js +239 -0
  18. package/dist/cjs/commands/ecom.js.map +1 -0
  19. package/dist/cjs/commands/embed.js +118 -0
  20. package/dist/cjs/commands/embed.js.map +1 -0
  21. package/dist/cjs/commands/init.js +65 -29
  22. package/dist/cjs/commands/init.js.map +1 -1
  23. package/dist/cjs/commands/instructions.js +456 -0
  24. package/dist/cjs/commands/instructions.js.map +1 -0
  25. package/dist/cjs/commands/login.js +63 -4
  26. package/dist/cjs/commands/login.js.map +1 -1
  27. package/dist/cjs/commands/logout.js +16 -0
  28. package/dist/cjs/commands/logout.js.map +1 -0
  29. package/dist/cjs/commands/serve.js +122 -0
  30. package/dist/cjs/commands/serve.js.map +1 -0
  31. package/dist/cjs/commands/storybook.js +102 -0
  32. package/dist/cjs/commands/storybook.js.map +1 -0
  33. package/dist/cjs/commands/validate.js +617 -17
  34. package/dist/cjs/commands/validate.js.map +1 -1
  35. package/dist/cjs/commands/whoami.js +48 -0
  36. package/dist/cjs/commands/whoami.js.map +1 -0
  37. package/dist/cjs/templates/aiInstructionsSchema.js +5 -1
  38. package/dist/cjs/templates/aiInstructionsSchema.js.map +1 -1
  39. package/dist/cjs/templates/cmsMappingSchema.js +132 -0
  40. package/dist/cjs/templates/cmsMappingSchema.js.map +1 -0
  41. package/dist/cjs/utils/print.js +12 -0
  42. package/dist/cjs/utils/print.js.map +1 -1
  43. package/dist/cjs/utils/project.js +24 -0
  44. package/dist/cjs/utils/project.js.map +1 -1
  45. package/dist/cjs/utils/wixApi.js +57 -0
  46. package/dist/cjs/utils/wixApi.js.map +1 -0
  47. package/dist/esm/auth/deviceFlow.js +182 -17
  48. package/dist/esm/auth/deviceFlow.js.map +1 -1
  49. package/dist/esm/auth/index.js +98 -11
  50. package/dist/esm/auth/index.js.map +1 -1
  51. package/dist/esm/auth/secretStore.js.map +1 -1
  52. package/dist/esm/cli.js +29 -1
  53. package/dist/esm/cli.js.map +1 -1
  54. package/dist/esm/commands/bundle.js +100 -0
  55. package/dist/esm/commands/bundle.js.map +1 -0
  56. package/dist/esm/commands/conversation.js +44 -0
  57. package/dist/esm/commands/conversation.js.map +1 -0
  58. package/dist/esm/commands/conversationWizard.js +529 -0
  59. package/dist/esm/commands/conversationWizard.js.map +1 -0
  60. package/dist/esm/commands/deploy.js +239 -0
  61. package/dist/esm/commands/deploy.js.map +1 -0
  62. package/dist/esm/commands/ecom.js +234 -0
  63. package/dist/esm/commands/ecom.js.map +1 -0
  64. package/dist/esm/commands/embed.js +112 -0
  65. package/dist/esm/commands/embed.js.map +1 -0
  66. package/dist/esm/commands/init.js +66 -30
  67. package/dist/esm/commands/init.js.map +1 -1
  68. package/dist/esm/commands/instructions.js +459 -0
  69. package/dist/esm/commands/instructions.js.map +1 -0
  70. package/dist/esm/commands/login.js +66 -6
  71. package/dist/esm/commands/login.js.map +1 -1
  72. package/dist/esm/commands/logout.js +12 -0
  73. package/dist/esm/commands/logout.js.map +1 -0
  74. package/dist/esm/commands/serve.js +117 -0
  75. package/dist/esm/commands/serve.js.map +1 -0
  76. package/dist/esm/commands/storybook.js +97 -0
  77. package/dist/esm/commands/storybook.js.map +1 -0
  78. package/dist/esm/commands/validate.js +623 -19
  79. package/dist/esm/commands/validate.js.map +1 -1
  80. package/dist/esm/commands/whoami.js +44 -0
  81. package/dist/esm/commands/whoami.js.map +1 -0
  82. package/dist/esm/templates/aiInstructionsSchema.js +5 -1
  83. package/dist/esm/templates/aiInstructionsSchema.js.map +1 -1
  84. package/dist/esm/templates/cmsMappingSchema.js +128 -0
  85. package/dist/esm/templates/cmsMappingSchema.js.map +1 -0
  86. package/dist/esm/utils/print.js +10 -0
  87. package/dist/esm/utils/print.js.map +1 -1
  88. package/dist/esm/utils/project.js +23 -0
  89. package/dist/esm/utils/project.js.map +1 -1
  90. package/dist/esm/utils/wixApi.js +53 -0
  91. package/dist/esm/utils/wixApi.js.map +1 -0
  92. package/dist/types/auth/deviceFlow.d.ts +3 -1
  93. package/dist/types/auth/deviceFlow.d.ts.map +1 -1
  94. package/dist/types/auth/index.d.ts +6 -1
  95. package/dist/types/auth/index.d.ts.map +1 -1
  96. package/dist/types/auth/secretStore.d.ts +2 -0
  97. package/dist/types/auth/secretStore.d.ts.map +1 -1
  98. package/dist/types/commands/bundle.d.ts +10 -0
  99. package/dist/types/commands/bundle.d.ts.map +1 -0
  100. package/dist/types/commands/conversation.d.ts +3 -0
  101. package/dist/types/commands/conversation.d.ts.map +1 -0
  102. package/dist/types/commands/conversationWizard.d.ts +3 -0
  103. package/dist/types/commands/conversationWizard.d.ts.map +1 -0
  104. package/dist/types/commands/deploy.d.ts +3 -0
  105. package/dist/types/commands/deploy.d.ts.map +1 -0
  106. package/dist/types/commands/ecom.d.ts +3 -0
  107. package/dist/types/commands/ecom.d.ts.map +1 -0
  108. package/dist/types/commands/embed.d.ts +3 -0
  109. package/dist/types/commands/embed.d.ts.map +1 -0
  110. package/dist/types/commands/init.d.ts.map +1 -1
  111. package/dist/types/commands/instructions.d.ts +3 -0
  112. package/dist/types/commands/instructions.d.ts.map +1 -0
  113. package/dist/types/commands/login.d.ts.map +1 -1
  114. package/dist/types/commands/logout.d.ts +3 -0
  115. package/dist/types/commands/logout.d.ts.map +1 -0
  116. package/dist/types/commands/serve.d.ts +3 -0
  117. package/dist/types/commands/serve.d.ts.map +1 -0
  118. package/dist/types/commands/storybook.d.ts +3 -0
  119. package/dist/types/commands/storybook.d.ts.map +1 -0
  120. package/dist/types/commands/validate.d.ts +7 -0
  121. package/dist/types/commands/validate.d.ts.map +1 -1
  122. package/dist/types/commands/whoami.d.ts +3 -0
  123. package/dist/types/commands/whoami.d.ts.map +1 -0
  124. package/dist/types/templates/aiInstructionsSchema.d.ts.map +1 -1
  125. package/dist/types/templates/cmsMappingSchema.d.ts +2 -0
  126. package/dist/types/templates/cmsMappingSchema.d.ts.map +1 -0
  127. package/dist/types/utils/print.d.ts +3 -0
  128. package/dist/types/utils/print.d.ts.map +1 -1
  129. package/dist/types/utils/project.d.ts +12 -0
  130. package/dist/types/utils/project.d.ts.map +1 -1
  131. package/dist/types/utils/wixApi.d.ts +9 -0
  132. package/dist/types/utils/wixApi.d.ts.map +1 -0
  133. package/package.json +5 -5
  134. package/defaults/package.json +0 -42
@@ -0,0 +1,53 @@
1
+ import { getToken, getTokenForSite } from '../auth';
2
+ import { getProjectMsid } from './project';
3
+ const BASE_URL = 'https://www.wixapis.com';
4
+ export async function wixRequest(options) {
5
+ const {
6
+ path,
7
+ method = 'GET',
8
+ params,
9
+ body,
10
+ verbose = false
11
+ } = options;
12
+ const projectMsid = getProjectMsid(process.cwd());
13
+ const token = projectMsid ? await getTokenForSite(projectMsid) : await getToken();
14
+ if (!token) {
15
+ throw new Error('Not authenticated. Run `web5 login` first.');
16
+ }
17
+ const url = new URL(`${BASE_URL}${path}`);
18
+ if (params) {
19
+ for (const [key, value] of Object.entries(params)) {
20
+ url.searchParams.set(key, value);
21
+ }
22
+ }
23
+ if (verbose) {
24
+ console.error(`[LOG] ${method} ${url.toString()}`);
25
+ if (body !== undefined) {
26
+ console.error(`[LOG] body: ${JSON.stringify(body)}`);
27
+ }
28
+ }
29
+ const res = await fetch(url.toString(), {
30
+ method,
31
+ headers: {
32
+ Authorization: `Bearer ${token}`,
33
+ 'Content-Type': 'application/json'
34
+ },
35
+ ...(body !== undefined ? {
36
+ body: JSON.stringify(body)
37
+ } : {})
38
+ });
39
+ const text = await res.text();
40
+ if (verbose) {
41
+ console.error(`[LOG] HTTP ${res.status} ${res.statusText}`);
42
+ console.error(`[LOG] response: ${text}`);
43
+ }
44
+ if (!text) {
45
+ throw new Error(`Empty response from ${method} ${path} (HTTP ${res.status})`);
46
+ }
47
+ try {
48
+ return JSON.parse(text);
49
+ } catch {
50
+ throw new Error(`Invalid JSON from ${method} ${path} (HTTP ${res.status}): ${text.slice(0, 200)}`);
51
+ }
52
+ }
53
+ //# sourceMappingURL=wixApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getToken","getTokenForSite","getProjectMsid","BASE_URL","wixRequest","options","path","method","params","body","verbose","projectMsid","process","cwd","token","Error","url","URL","key","value","Object","entries","searchParams","set","console","error","toString","undefined","JSON","stringify","res","fetch","headers","Authorization","text","status","statusText","parse","slice"],"sources":["../../../src/utils/wixApi.ts"],"sourcesContent":["import { getToken, getTokenForSite } from '../auth';\nimport { getProjectMsid } from './project';\n\nconst BASE_URL = 'https://www.wixapis.com';\n\nexport interface WixRequestOptions {\n path: string;\n method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';\n params?: Record<string, string>;\n body?: unknown;\n verbose?: boolean;\n}\n\nexport async function wixRequest<T = unknown>(\n options: WixRequestOptions,\n): Promise<T> {\n const { path, method = 'GET', params, body, verbose = false } = options;\n\n const projectMsid = getProjectMsid(process.cwd());\n const token = projectMsid\n ? await getTokenForSite(projectMsid)\n : await getToken();\n if (!token) {\n throw new Error('Not authenticated. Run `web5 login` first.');\n }\n\n const url = new URL(`${BASE_URL}${path}`);\n if (params) {\n for (const [key, value] of Object.entries(params)) {\n url.searchParams.set(key, value);\n }\n }\n\n if (verbose) {\n console.error(`[LOG] ${method} ${url.toString()}`);\n if (body !== undefined) {\n console.error(`[LOG] body: ${JSON.stringify(body)}`);\n }\n }\n\n const res = await fetch(url.toString(), {\n method,\n headers: {\n Authorization: `Bearer ${token}`,\n 'Content-Type': 'application/json',\n },\n ...(body !== undefined ? { body: JSON.stringify(body) } : {}),\n });\n\n const text = await res.text();\n\n if (verbose) {\n console.error(`[LOG] HTTP ${res.status} ${res.statusText}`);\n console.error(`[LOG] response: ${text}`);\n }\n\n if (!text) {\n throw new Error(\n `Empty response from ${method} ${path} (HTTP ${res.status})`,\n );\n }\n\n try {\n return JSON.parse(text) as T;\n } catch {\n throw new Error(\n `Invalid JSON from ${method} ${path} (HTTP ${res.status}): ${text.slice(\n 0,\n 200,\n )}`,\n );\n }\n}\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,eAAe,QAAQ,SAAS;AACnD,SAASC,cAAc,QAAQ,WAAW;AAE1C,MAAMC,QAAQ,GAAG,yBAAyB;AAU1C,OAAO,eAAeC,UAAUA,CAC9BC,OAA0B,EACd;EACZ,MAAM;IAAEC,IAAI;IAAEC,MAAM,GAAG,KAAK;IAAEC,MAAM;IAAEC,IAAI;IAAEC,OAAO,GAAG;EAAM,CAAC,GAAGL,OAAO;EAEvE,MAAMM,WAAW,GAAGT,cAAc,CAACU,OAAO,CAACC,GAAG,CAAC,CAAC,CAAC;EACjD,MAAMC,KAAK,GAAGH,WAAW,GACrB,MAAMV,eAAe,CAACU,WAAW,CAAC,GAClC,MAAMX,QAAQ,CAAC,CAAC;EACpB,IAAI,CAACc,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CAAC,4CAA4C,CAAC;EAC/D;EAEA,MAAMC,GAAG,GAAG,IAAIC,GAAG,CAAC,GAAGd,QAAQ,GAAGG,IAAI,EAAE,CAAC;EACzC,IAAIE,MAAM,EAAE;IACV,KAAK,MAAM,CAACU,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACb,MAAM,CAAC,EAAE;MACjDQ,GAAG,CAACM,YAAY,CAACC,GAAG,CAACL,GAAG,EAAEC,KAAK,CAAC;IAClC;EACF;EAEA,IAAIT,OAAO,EAAE;IACXc,OAAO,CAACC,KAAK,CAAC,SAASlB,MAAM,IAAIS,GAAG,CAACU,QAAQ,CAAC,CAAC,EAAE,CAAC;IAClD,IAAIjB,IAAI,KAAKkB,SAAS,EAAE;MACtBH,OAAO,CAACC,KAAK,CAAC,eAAeG,IAAI,CAACC,SAAS,CAACpB,IAAI,CAAC,EAAE,CAAC;IACtD;EACF;EAEA,MAAMqB,GAAG,GAAG,MAAMC,KAAK,CAACf,GAAG,CAACU,QAAQ,CAAC,CAAC,EAAE;IACtCnB,MAAM;IACNyB,OAAO,EAAE;MACPC,aAAa,EAAE,UAAUnB,KAAK,EAAE;MAChC,cAAc,EAAE;IAClB,CAAC;IACD,IAAIL,IAAI,KAAKkB,SAAS,GAAG;MAAElB,IAAI,EAAEmB,IAAI,CAACC,SAAS,CAACpB,IAAI;IAAE,CAAC,GAAG,CAAC,CAAC;EAC9D,CAAC,CAAC;EAEF,MAAMyB,IAAI,GAAG,MAAMJ,GAAG,CAACI,IAAI,CAAC,CAAC;EAE7B,IAAIxB,OAAO,EAAE;IACXc,OAAO,CAACC,KAAK,CAAC,cAAcK,GAAG,CAACK,MAAM,IAAIL,GAAG,CAACM,UAAU,EAAE,CAAC;IAC3DZ,OAAO,CAACC,KAAK,CAAC,mBAAmBS,IAAI,EAAE,CAAC;EAC1C;EAEA,IAAI,CAACA,IAAI,EAAE;IACT,MAAM,IAAInB,KAAK,CACb,uBAAuBR,MAAM,IAAID,IAAI,UAAUwB,GAAG,CAACK,MAAM,GAC3D,CAAC;EACH;EAEA,IAAI;IACF,OAAOP,IAAI,CAACS,KAAK,CAACH,IAAI,CAAC;EACzB,CAAC,CAAC,MAAM;IACN,MAAM,IAAInB,KAAK,CACb,qBAAqBR,MAAM,IAAID,IAAI,UAAUwB,GAAG,CAACK,MAAM,MAAMD,IAAI,CAACI,KAAK,CACrE,CAAC,EACD,GACF,CAAC,EACH,CAAC;EACH;AACF","ignoreList":[]}
@@ -4,5 +4,7 @@ export interface TokenResponse {
4
4
  expires_in: number;
5
5
  refresh_token: string;
6
6
  }
7
- export declare function runDeviceFlow(): Promise<TokenResponse>;
7
+ export declare function promptSiteSelection(accessToken: string): Promise<string>;
8
+ export declare function refreshAccessToken(refreshToken: string, siteId?: string): Promise<TokenResponse>;
9
+ export declare function runDeviceFlow(verbose?: boolean, noBrowser?: boolean): Promise<TokenResponse>;
8
10
  //# sourceMappingURL=deviceFlow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deviceFlow.d.ts","sourceRoot":"","sources":["../../../src/auth/deviceFlow.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AA+DD,wBAAsB,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,CAwB5D"}
1
+ {"version":3,"file":"deviceFlow.d.ts","sourceRoot":"","sources":["../../../src/auth/deviceFlow.ts"],"names":[],"mappings":"AAwBA,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB;AAsJD,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CA6BjB;AAED,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,aAAa,CAAC,CA2CxB;AAgBD,wBAAsB,aAAa,CACjC,OAAO,UAAQ,EACf,SAAS,UAAQ,GAChB,OAAO,CAAC,aAAa,CAAC,CA4BxB"}
@@ -1,6 +1,11 @@
1
1
  export type { Credentials } from './secretStore';
2
- export declare function login(apiKey?: string): Promise<void>;
2
+ export declare function login(apiKey?: string, verbose?: boolean, opts?: {
3
+ siteId?: string;
4
+ noBrowser?: boolean;
5
+ }): Promise<void>;
6
+ export declare function switchSite(siteId?: string): Promise<void>;
3
7
  export declare function logout(): Promise<void>;
4
8
  export declare function getToken(): Promise<string | null>;
9
+ export declare function getTokenForSite(msid: string): Promise<string>;
5
10
  export declare function isAuthenticated(): Promise<boolean>;
6
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auth/index.ts"],"names":[],"mappings":"AAQA,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,wBAAsB,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAc1D;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAG5C;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAYvD;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAExD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auth/index.ts"],"names":[],"mappings":"AAYA,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AA2BjD,wBAAsB,KAAK,CACzB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,UAAQ,EACf,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GAClD,OAAO,CAAC,IAAI,CAAC,CAef;AAED,wBAAsB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB/D;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAG5C;AAED,wBAAsB,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsCvD;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCnE;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAMxD"}
@@ -1,6 +1,8 @@
1
1
  export interface Credentials {
2
2
  access_token?: string;
3
3
  refresh_token?: string;
4
+ expires_at?: number;
5
+ site_id?: string;
4
6
  api_key?: string;
5
7
  }
6
8
  export declare function writeCredentials(creds: Credentials): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"secretStore.d.ts","sourceRoot":"","sources":["../../../src/auth/secretStore.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAqDD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAUxE;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAwBnE;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAatD"}
1
+ {"version":3,"file":"secretStore.d.ts","sourceRoot":"","sources":["../../../src/auth/secretStore.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAqDD,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAUxE;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAwBnE;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAatD"}
@@ -0,0 +1,10 @@
1
+ import { Command } from 'commander';
2
+ export interface BundleOptions {
3
+ watch?: boolean;
4
+ minify?: boolean;
5
+ outDir?: string;
6
+ sourcemap?: boolean;
7
+ }
8
+ export declare function runBundle(root: string, opts?: BundleOptions): Promise<void>;
9
+ export declare const bundleCommand: Command;
10
+ //# sourceMappingURL=bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,aAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CA4Ef;AAED,eAAO,MAAM,aAAa,SA2BvB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const conversationCommand: Command;
3
+ //# sourceMappingURL=conversation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../src/commands/conversation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgEpC,eAAO,MAAM,mBAAmB,SAEX,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const conversationsCommand: Command;
3
+ //# sourceMappingURL=conversationWizard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversationWizard.d.ts","sourceRoot":"","sources":["../../../src/commands/conversationWizard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqpBpC,eAAO,MAAM,oBAAoB,SASX,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const deployCommand: Command;
3
+ //# sourceMappingURL=deploy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6QpC,eAAO,MAAM,aAAa,SAkDE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const ecomCommand: Command;
3
+ //# sourceMappingURL=ecom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecom.d.ts","sourceRoot":"","sources":["../../../src/commands/ecom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+RpC,eAAO,MAAM,WAAW,SAOI,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const embedCommand: Command;
3
+ //# sourceMappingURL=embed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../../src/commands/embed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqGpC,eAAO,MAAM,YAAY,SAmDtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwEpC,eAAO,MAAM,WAAW,SAyMpB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+GpC,eAAO,MAAM,WAAW,SA0NpB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const instructionsCommand: Command;
3
+ //# sourceMappingURL=instructions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../../src/commands/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+jBpC,eAAO,MAAM,mBAAmB,SAYN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,eAAO,MAAM,YAAY,SAerB,CAAC"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsEpC,eAAO,MAAM,YAAY,SAmCG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const logoutCommand: Command;
3
+ //# sourceMappingURL=logout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,eAAO,MAAM,aAAa,SAStB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const serveCommand: Command;
3
+ //# sourceMappingURL=serve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../../src/commands/serve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwDpC,eAAO,MAAM,YAAY,SA6GtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const storybookCommand: Command;
3
+ //# sourceMappingURL=storybook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storybook.d.ts","sourceRoot":"","sources":["../../../src/commands/storybook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBpC,eAAO,MAAM,gBAAgB,SA8FzB,CAAC"}
@@ -1,3 +1,10 @@
1
1
  import { Command } from 'commander';
2
+ export type DomainFilter = 'ai' | 'cms' | 'cms-mapping' | 'actions' | 'scripts' | 'sections';
3
+ /**
4
+ * Runs validation domains against the given project root.
5
+ * Pass `filters` to validate only specific domains; omit to validate all.
6
+ * Prints results in slim mode and returns true if everything passes.
7
+ */
8
+ export declare function runValidation(root: string, filters?: DomainFilter[]): boolean;
2
9
  export declare const validateCommand: Command;
3
10
  //# sourceMappingURL=validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAmsBpC,eAAO,MAAM,eAAe,SAgDxB,CAAC"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../src/commands/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,KAAK,GACL,aAAa,GACb,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AA+vCf;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,GAAG,OAAO,CAI7E;AA6CD,eAAO,MAAM,eAAe,SAkEzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const whoamiCommand: Command;
3
+ //# sourceMappingURL=whoami.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/commands/whoami.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,eAAO,MAAM,aAAa,SA+CtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"aiInstructionsSchema.d.ts","sourceRoot":"","sources":["../../../src/templates/aiInstructionsSchema.ts"],"names":[],"mappings":"AAAA,wBAAgB,4BAA4B,IAAI,MAAM,CAiCrD"}
1
+ {"version":3,"file":"aiInstructionsSchema.d.ts","sourceRoot":"","sources":["../../../src/templates/aiInstructionsSchema.ts"],"names":[],"mappings":"AAAA,wBAAgB,4BAA4B,IAAI,MAAM,CAqCrD"}
@@ -0,0 +1,2 @@
1
+ export declare function cmsMappingSchemaTemplate(): string;
2
+ //# sourceMappingURL=cmsMappingSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmsMappingSchema.d.ts","sourceRoot":"","sources":["../../../src/templates/cmsMappingSchema.ts"],"names":[],"mappings":"AAAA,wBAAgB,wBAAwB,IAAI,MAAM,CA8HjD"}
@@ -4,4 +4,7 @@ export declare function error(msg: string): void;
4
4
  export declare function info(msg: string): void;
5
5
  export declare function warn(msg: string): void;
6
6
  export declare function spinner(msg: string): Ora;
7
+ export declare function step(n: number, total: number, label: string): void;
8
+ /** Returns true when the caller passed --json (or set WEB5_JSON_MODE=1). */
9
+ export declare function isJsonMode(): boolean;
7
10
  //# sourceMappingURL=print.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"print.d.ts","sourceRoot":"","sources":["../../../src/utils/print.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE/B,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEzC;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEvC;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtC;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtC;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAExC"}
1
+ {"version":3,"file":"print.d.ts","sourceRoot":"","sources":["../../../src/utils/print.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE/B,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEzC;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEvC;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtC;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEtC;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAExC;AAED,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAIlE;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,IAAI,OAAO,CAEpC"}
@@ -1,6 +1,18 @@
1
+ export interface Web5Config {
2
+ $schema?: string;
3
+ packageName?: string;
4
+ displayName?: string;
5
+ msid?: string;
6
+ clientId?: string;
7
+ platformType?: 'Content' | 'Ecommerce';
8
+ [key: string]: unknown;
9
+ }
10
+ export declare function readConfig(root: string): Web5Config;
11
+ export declare function writeConfig(root: string, config: Web5Config): void;
1
12
  /**
2
13
  * Walk up from startDir until we find a directory containing web5.config.json.
3
14
  * Returns that directory, or null if none found.
4
15
  */
5
16
  export declare function findProjectRoot(startDir: string): string | null;
17
+ export declare function getProjectMsid(startDir?: string): string | null;
6
18
  //# sourceMappingURL=project.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/utils/project.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc/D"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/utils/project.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAGnD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAGlE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc/D;AAED,wBAAgB,cAAc,CAC5B,QAAQ,GAAE,MAAsB,GAC/B,MAAM,GAAG,IAAI,CAWf"}
@@ -0,0 +1,9 @@
1
+ export interface WixRequestOptions {
2
+ path: string;
3
+ method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
4
+ params?: Record<string, string>;
5
+ body?: unknown;
6
+ verbose?: boolean;
7
+ }
8
+ export declare function wixRequest<T = unknown>(options: WixRequestOptions): Promise<T>;
9
+ //# sourceMappingURL=wixApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wixApi.d.ts","sourceRoot":"","sources":["../../../src/utils/wixApi.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,UAAU,CAAC,CAAC,GAAG,OAAO,EAC1C,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CAyDZ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/web50-cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "license": "MIT",
5
5
  "author": {
6
6
  "name": "Yonatan-Balassiano",
@@ -27,7 +27,7 @@
27
27
  "lint": "yoshi-library lint"
28
28
  },
29
29
  "lint-staged": {
30
- "*.{js,ts}": "yarn lint"
30
+ "src/**/*.{js,ts}": "yarn lint"
31
31
  },
32
32
  "dependencies": {
33
33
  "@babel/runtime": "^7.0.0",
@@ -41,13 +41,13 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/inquirer": "^8.2.10",
44
- "@types/jest": "^27.4.0",
44
+ "@types/jest": "^29.0.0",
45
45
  "@types/js-yaml": "^4.0.9",
46
46
  "@types/node": "^18.0.0",
47
47
  "@wix/eslint-config-yoshi": "^6.0.0",
48
48
  "@wix/jest-yoshi-preset": "^6.0.0",
49
49
  "@wix/yoshi-flow-library": "^6.0.0",
50
- "ts-jest": "^27.1.2",
50
+ "ts-jest": "^29.0.0",
51
51
  "typescript": "~5.0.0"
52
52
  },
53
53
  "jest": {
@@ -88,5 +88,5 @@
88
88
  "wallaby": {
89
89
  "autoDetect": true
90
90
  },
91
- "falconPackageHash": "e286cc95cfd784f9c7126a92a0765a421582cba8e0c1b093ae06471a"
91
+ "falconPackageHash": "4fc595a169d2b6ca6bd7079572730b8a8e275dc7df3945387ed36112"
92
92
  }
@@ -1,42 +0,0 @@
1
- {
2
- "name": "{{NAME}}",
3
- "version": "0.0.1",
4
- "license": "UNLICENSED",
5
- "private": true,
6
- "main": "dist/cjs/index.js",
7
- "module": "dist/esm/index.js",
8
- "types": "dist/types/index.d.ts",
9
- "files": [
10
- "dist/cjs",
11
- "dist/esm",
12
- "dist/types"
13
- ],
14
- "scripts": {
15
- "build": "yoshi-library build",
16
- "start": "yoshi-library start",
17
- "test": "yoshi-library test",
18
- "lint": "yoshi-library lint"
19
- },
20
- "dependencies": {
21
- "@babel/runtime": "^7.0.0",
22
- "@wix/web5-core": "*"
23
- },
24
- "devDependencies": {
25
- "@types/jest": "^27.4.0",
26
- "@types/node": "^18.0.0",
27
- "@wix/eslint-config-yoshi": "^6.0.0",
28
- "@wix/jest-yoshi-preset": "^6.0.0",
29
- "@wix/yoshi-flow-library": "^6.0.0",
30
- "ts-jest": "^27.1.2",
31
- "typescript": "~5.0.0"
32
- },
33
- "jest": {
34
- "preset": "@wix/jest-yoshi-preset"
35
- },
36
- "yoshiFlowLibrary": {
37
- "buildEsmWithBabel": true
38
- },
39
- "eslintConfig": {
40
- "extends": "@wix/eslint-config-yoshi"
41
- }
42
- }