@wix/cli-app 1.1.35 → 1.1.37

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 (144) hide show
  1. package/build/{CreateVersionCommand-FGFXCQ6O.js → CreateVersionCommand-6EC4JSXM.js} +2 -2
  2. package/build/CreateVersionCommand-6EC4JSXM.js.map +1 -0
  3. package/build/DevCommand-X6EMKMNL.js +4 -0
  4. package/build/DevCommand-X6EMKMNL.js.map +1 -0
  5. package/build/GenerateCommand-OMONJKBI.js +99 -0
  6. package/build/GenerateCommand-OMONJKBI.js.map +1 -0
  7. package/build/LogsCommand-J2FI7ZFQ.js +4 -0
  8. package/build/LogsCommand-J2FI7ZFQ.js.map +1 -0
  9. package/build/PreviewCommand-62VXVRKG.js +4 -0
  10. package/build/{ServeCommand-3XS2PRLZ.js → ServeCommand-MITPYVYW.js} +2 -2
  11. package/build/ServeCommand-MITPYVYW.js.map +1 -0
  12. package/build/{build-R2V6VPAY.js → build-QYESI24D.js} +2 -2
  13. package/build/build-QYESI24D.js.map +1 -0
  14. package/build/{chunk-CBDNKNAV.js → chunk-22T5OFY2.js} +2 -2
  15. package/build/chunk-22T5OFY2.js.map +1 -0
  16. package/build/chunk-2M3UC7RV.js +4 -0
  17. package/build/chunk-2M3UC7RV.js.map +1 -0
  18. package/build/{chunk-R4ZQYYZR.js → chunk-7DTNPXX6.js} +2 -2
  19. package/build/{chunk-3T3H3UJF.js → chunk-7IFG7QRE.js} +3 -3
  20. package/build/chunk-7IFG7QRE.js.map +1 -0
  21. package/build/chunk-CKCOR335.js +10 -0
  22. package/build/chunk-CKCOR335.js.map +1 -0
  23. package/build/{chunk-2JOP4YNL.js → chunk-CXOD6WQ4.js} +2 -2
  24. package/build/chunk-CXOD6WQ4.js.map +1 -0
  25. package/build/chunk-E6KVS4MA.js +4 -0
  26. package/build/chunk-E6KVS4MA.js.map +1 -0
  27. package/build/{chunk-OWEB37KH.js → chunk-EQUG3BNW.js} +2 -2
  28. package/build/chunk-FVAP6LIO.js +4 -0
  29. package/build/chunk-FVAP6LIO.js.map +1 -0
  30. package/build/chunk-HDM7FXQ2.js +4 -0
  31. package/build/chunk-HMROXS2Y.js +116 -0
  32. package/build/{chunk-5JYQ2Z7Y.js.map → chunk-HMROXS2Y.js.map} +1 -1
  33. package/build/{chunk-ZORLYW6M.js → chunk-JA2XJ7LG.js} +2 -2
  34. package/build/{chunk-YT6VEJPK.js → chunk-KEE43HZL.js} +2 -2
  35. package/build/chunk-KEE43HZL.js.map +1 -0
  36. package/build/{chunk-KRQ3H7GR.js → chunk-PVYYLEXH.js} +2 -2
  37. package/build/chunk-PVYYLEXH.js.map +1 -0
  38. package/build/chunk-QCRAQWKR.js +11 -0
  39. package/build/chunk-QCRAQWKR.js.map +1 -0
  40. package/build/{chunk-QEH4HZND.js → chunk-RPHPWNCA.js} +2 -2
  41. package/build/chunk-T3M3WLBF.js +4 -0
  42. package/build/chunk-T3M3WLBF.js.map +1 -0
  43. package/build/chunk-U6DFVNFC.js +4 -0
  44. package/build/chunk-U6DFVNFC.js.map +1 -0
  45. package/build/chunk-XFE6VTSD.js +233 -0
  46. package/build/chunk-XFE6VTSD.js.map +1 -0
  47. package/build/{chunk-A3KHJIN7.js → chunk-XMBKXITX.js} +2 -2
  48. package/build/index.js +2 -2
  49. package/build/index.js.map +1 -1
  50. package/build/platform-sdk/chunk-OSR2I5MY.js +2 -0
  51. package/build/platform-sdk/chunk-OSR2I5MY.js.map +1 -0
  52. package/build/platform-sdk/chunk-SHVQ4QZG.js +2 -0
  53. package/build/platform-sdk/chunk-SHVQ4QZG.js.map +1 -0
  54. package/build/platform-sdk/chunk-TEDR2MDT.js +2 -0
  55. package/build/platform-sdk/dashboard.js +1 -1
  56. package/build/platform-sdk/dashboard.js.map +1 -1
  57. package/build/platform-sdk/editor.js +8 -0
  58. package/build/platform-sdk/editor.js.map +1 -0
  59. package/build/platform-sdk/{esm-IUMNLA6B.js → esm-WXLS5NTC.js} +2 -2
  60. package/build/platform-sdk/esm-WXLS5NTC.js.map +1 -0
  61. package/build/platform-sdk/site.js +2 -0
  62. package/build/platform-sdk/site.js.map +1 -0
  63. package/build/preview-YWEFS3GP.js +4 -0
  64. package/build/{preview-5HAC2VHN.js.map → preview-YWEFS3GP.js.map} +1 -1
  65. package/build/render-command-QQQFQTR7.js +4 -0
  66. package/build/render-command-QQQFQTR7.js.map +1 -0
  67. package/internal/component-hmr-wrapper.tsx +0 -1
  68. package/package.json +9 -6
  69. package/schemas/ecom-additional-fees.json +1 -0
  70. package/schemas/ecom-discounts-trigger.json +1 -0
  71. package/schemas/ecom-payment-settings.json +1 -0
  72. package/schemas/ecom-shipping-rates.json +1 -0
  73. package/schemas/ecom-validations.json +1 -0
  74. package/templates/custom-element/dependencies.json +1 -2
  75. package/templates/custom-element/files/element.module.css.ejs +22 -0
  76. package/templates/custom-element/files/element.tsx.ejs +11 -10
  77. package/templates/custom-element/files/panel.tsx.ejs +26 -32
  78. package/templates/dashboard-modal/dependencies.json +2 -3
  79. package/templates/dashboard-modal/files/modal.tsx.ejs +11 -16
  80. package/templates/dashboard-page/dependencies.json +1 -3
  81. package/templates/dashboard-page/files/page.tsx.ejs +7 -11
  82. package/templates/dashboard-plugin/dependencies.json +1 -3
  83. package/templates/dashboard-plugin/files/plugin.tsx.ejs +6 -10
  84. package/templates/service-plugin/ecom-additional-fees/dependencies.json +5 -0
  85. package/templates/service-plugin/ecom-additional-fees/files/plugin.json.ejs +4 -0
  86. package/templates/service-plugin/ecom-additional-fees/files/plugin.ts.ejs +12 -0
  87. package/templates/service-plugin/ecom-discounts-trigger/dependencies.json +5 -0
  88. package/templates/service-plugin/ecom-discounts-trigger/files/plugin.json.ejs +4 -0
  89. package/templates/service-plugin/ecom-discounts-trigger/files/plugin.ts.ejs +17 -0
  90. package/templates/service-plugin/ecom-payment-settings/dependencies.json +5 -0
  91. package/templates/service-plugin/ecom-payment-settings/files/plugin.json.ejs +4 -0
  92. package/templates/service-plugin/ecom-payment-settings/files/plugin.ts.ejs +12 -0
  93. package/templates/service-plugin/ecom-shipping-rates/dependencies.json +5 -0
  94. package/templates/service-plugin/ecom-shipping-rates/files/plugin.json.ejs +4 -0
  95. package/templates/service-plugin/ecom-shipping-rates/files/plugin.ts.ejs +12 -0
  96. package/templates/service-plugin/ecom-validations/dependencies.json +5 -0
  97. package/templates/service-plugin/ecom-validations/files/plugin.json.ejs +4 -0
  98. package/templates/service-plugin/ecom-validations/files/plugin.ts.ejs +12 -0
  99. package/build/CreateVersionCommand-FGFXCQ6O.js.map +0 -1
  100. package/build/DevCommand-5DVDWGBY.js +0 -4
  101. package/build/DevCommand-5DVDWGBY.js.map +0 -1
  102. package/build/GenerateCommand-5MXGDU5D.js +0 -99
  103. package/build/GenerateCommand-5MXGDU5D.js.map +0 -1
  104. package/build/LogsCommand-GT4C6W63.js +0 -4
  105. package/build/LogsCommand-GT4C6W63.js.map +0 -1
  106. package/build/PreviewCommand-TYTUHLCK.js +0 -4
  107. package/build/ServeCommand-3XS2PRLZ.js.map +0 -1
  108. package/build/build-R2V6VPAY.js.map +0 -1
  109. package/build/chunk-2JOP4YNL.js.map +0 -1
  110. package/build/chunk-3T3H3UJF.js.map +0 -1
  111. package/build/chunk-5JYQ2Z7Y.js +0 -116
  112. package/build/chunk-5YLHD2SK.js +0 -4
  113. package/build/chunk-A7TURNR5.js +0 -4
  114. package/build/chunk-A7TURNR5.js.map +0 -1
  115. package/build/chunk-CBDNKNAV.js.map +0 -1
  116. package/build/chunk-F6WBFD2I.js +0 -11
  117. package/build/chunk-F6WBFD2I.js.map +0 -1
  118. package/build/chunk-J2KSZ5LE.js +0 -4
  119. package/build/chunk-J2KSZ5LE.js.map +0 -1
  120. package/build/chunk-KRQ3H7GR.js.map +0 -1
  121. package/build/chunk-MI2F3EIB.js +0 -4
  122. package/build/chunk-MI2F3EIB.js.map +0 -1
  123. package/build/chunk-NNF6JCN7.js +0 -4
  124. package/build/chunk-NNF6JCN7.js.map +0 -1
  125. package/build/chunk-PWHZSGUV.js +0 -10
  126. package/build/chunk-PWHZSGUV.js.map +0 -1
  127. package/build/chunk-RXT5UM7Q.js +0 -184
  128. package/build/chunk-RXT5UM7Q.js.map +0 -1
  129. package/build/chunk-VRNTLFVH.js +0 -4
  130. package/build/chunk-VRNTLFVH.js.map +0 -1
  131. package/build/chunk-YT6VEJPK.js.map +0 -1
  132. package/build/platform-sdk/chunk-RFBBAUMM.js +0 -2
  133. package/build/platform-sdk/esm-IUMNLA6B.js.map +0 -1
  134. package/build/preview-5HAC2VHN.js +0 -4
  135. package/build/render-command-OPJNFJRC.js +0 -4
  136. package/build/render-command-OPJNFJRC.js.map +0 -1
  137. /package/build/{PreviewCommand-TYTUHLCK.js.map → PreviewCommand-62VXVRKG.js.map} +0 -0
  138. /package/build/{chunk-R4ZQYYZR.js.map → chunk-7DTNPXX6.js.map} +0 -0
  139. /package/build/{chunk-OWEB37KH.js.map → chunk-EQUG3BNW.js.map} +0 -0
  140. /package/build/{chunk-5YLHD2SK.js.map → chunk-HDM7FXQ2.js.map} +0 -0
  141. /package/build/{chunk-ZORLYW6M.js.map → chunk-JA2XJ7LG.js.map} +0 -0
  142. /package/build/{chunk-QEH4HZND.js.map → chunk-RPHPWNCA.js.map} +0 -0
  143. /package/build/{chunk-A3KHJIN7.js.map → chunk-XMBKXITX.js.map} +0 -0
  144. /package/build/platform-sdk/{chunk-RFBBAUMM.js.map → chunk-TEDR2MDT.js.map} +0 -0
@@ -0,0 +1,4 @@
1
+ import { createRequire as _createRequire } from 'node:module';
2
+ const require = _createRequire(import.meta.url);
3
+ import{a as D}from"./chunk-JA2XJ7LG.js";import{a as b}from"./chunk-EQUG3BNW.js";import"./chunk-XMBKXITX.js";import{a as S,e as I,f as y,n as j,p as x}from"./chunk-T3M3WLBF.js";import"./chunk-2M3UC7RV.js";import{E as v,Za as P,g as w,kb as U,la as h,va as n}from"./chunk-HMROXS2Y.js";import{b as C,d as s,e as l}from"./chunk-CXOD6WQ4.js";import{e as u,h as o}from"./chunk-V4TR6DCM.js";o();o();import{cwd as N}from"node:process";var f=u(C(),1);o();var A=u(C(),1);async function E(e,a,r){let t=new S(a),i=await I({siteId:r,projectFolder:e.projectFolder,siteListClient:t});return(0,A.match)(i,{NotConfigured:()=>{throw new s({code:l.SiteConfiguredRequired()})},NotFound:()=>{throw new s({code:l.SiteConfiguredRequired()})},Resolved:({site:m})=>m})}o();var c=u(C(),1);var M=({model:e,site:a,tag:r})=>{let t=e.components.filter(m=>(0,c.isType)(m,n.DashboardPage)||(0,c.isType)(m,n.DashboardPlugin)||(0,c.isType)(m,n.DashboardMenuPlugin)),i={appId:e.config.appId,site:a,tag:r};return t[0]?x(t[0],i):j(h.Dashboard(),i)};o();function T(e){console.log(e)}async function z(e,a){let r=await U(N()),t=await v();if(!t)throw new s({code:l.AuthenticationRequired()});a.errorReporter.setUser({id:t.userInfo.userId}),b(a.biLogger,t.userInfo.userId);let i=w({type:"backoffice",getAppToken:()=>t.getAccessToken()}),m=await E(r,i,e.siteId),k=r.components.filter(g=>(0,f.isType)(g,n.Api)||(0,f.isType)(g,n.Event)||(0,f.isType)(g,n.ServicePlugin)),{serveUrl:R,backendServerUrl:F}=e.baseUrl?{serveUrl:e.baseUrl,backendServerUrl:void 0}:await P(r.config.appId,r.projectFolder,a.biLogger,i,k.length>0),L=new y(i),q=await D({model:r,arm:L,serveUrl:R,backendServerUrl:F}),H=M({site:m,model:r,tag:q});T(H)}export{z as nonInteractivePreview};
4
+ //# sourceMappingURL=preview-YWEFS3GP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/non-interactive/preview/index.ts","../src/non-interactive/preview/preview.ts","../src/non-interactive/preview/resolve-site.ts","../src/non-interactive/preview/dashboard-page-url.ts","../src/non-interactive/logger.ts"],"sourcesContent":["export { nonInteractivePreview } from './preview.js';\n","import { cwd } from 'node:process';\nimport { ARMClient } from '@wix/arm-client';\nimport { isLoggedInToAccount } from '@wix/cli-auth';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { addUserFields } from '@wix/cli-telemetry';\nimport { createHttpClient } from '@wix/cli-http-client';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { isType } from 'variant';\nimport { loadProjectModel } from '../../model.js';\nimport { createPreviewTag } from '../../preview/create-preview-tag.js';\nimport { uploadApplication } from '../../hosting/upload-application.js';\nimport { resolveSite } from './resolve-site.js';\nimport { getDashboardPageUrl } from './dashboard-page-url.js';\nimport { log } from '../logger.js';\nimport { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\n\nexport async function nonInteractivePreview(\n options: { siteId?: string; baseUrl?: string },\n services: CommandServices\n) {\n const model = await loadProjectModel(cwd());\n const authData = await isLoggedInToAccount();\n\n if (!authData) {\n throw new CliError({\n code: CliErrorCode.AuthenticationRequired(),\n });\n }\n\n services.errorReporter.setUser({ id: authData.userInfo.userId });\n addUserFields(services.biLogger, authData.userInfo.userId);\n\n const httpClient = createHttpClient({\n type: 'backoffice',\n getAppToken: () => authData.getAccessToken(),\n });\n\n const site = await resolveSite(model, httpClient, options.siteId);\n const backendComponents = model.components.filter(\n (component) =>\n isType(component, DevCenterComponent.Api) ||\n isType(component, DevCenterComponent.Event) ||\n isType(component, DevCenterComponent.ServicePlugin)\n );\n\n const { serveUrl, backendServerUrl } = options.baseUrl\n ? { serveUrl: options.baseUrl, backendServerUrl: undefined }\n : await uploadApplication(\n model.config.appId,\n model.projectFolder,\n services.biLogger,\n httpClient,\n backendComponents.length > 0\n );\n\n const arm = new ARMClient(httpClient);\n\n const tag = await createPreviewTag({\n model,\n arm,\n serveUrl,\n backendServerUrl,\n });\n const dashboardPageUrl = getDashboardPageUrl({ site, model, tag });\n\n log(dashboardPageUrl);\n}\n","import { match } from 'variant';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { SiteListClient } from '@wix/site-list-client';\nimport type { HttpClient } from '@wix/cli-http-client';\nimport type { ProjectModel } from '../../model.js';\nimport { resolveConfiguredSite } from '../../site-id/resolve-configured-site.js';\n\nexport async function resolveSite(\n model: ProjectModel,\n httpClient: HttpClient,\n siteId?: string\n) {\n const siteListClient = new SiteListClient(httpClient);\n\n const site = await resolveConfiguredSite({\n siteId,\n projectFolder: model.projectFolder,\n siteListClient,\n });\n\n return match(site, {\n NotConfigured: () => {\n throw new CliError({\n code: CliErrorCode.SiteConfiguredRequired(),\n });\n },\n NotFound: () => {\n throw new CliError({\n code: CliErrorCode.SiteConfiguredRequired(),\n });\n },\n Resolved: ({ site }) => site,\n });\n}\n","import type { Site } from '@wix/site-list-client';\nimport { PlatformType } from '@wix/cli-app-definitions';\nimport { isType } from 'variant';\nimport type { ProjectModel } from '../../model.js';\nimport {\n resolvePlatformUrl,\n resolveDashboardExtensionUrl,\n} from '../../components/extensions/utils.js';\nimport { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\n\nexport const getDashboardPageUrl = ({\n model,\n site,\n tag,\n}: {\n model: ProjectModel;\n site: Site;\n tag: string;\n}) => {\n const dashboardExtensions = model.components.filter(\n isType(DevCenterComponent.DashboardPage) ||\n isType(DevCenterComponent.DashboardPlugin) ||\n isType(DevCenterComponent.DashboardMenuPlugin)\n );\n\n const envConfig = {\n appId: model.config.appId,\n site,\n tag,\n };\n\n return dashboardExtensions[0]\n ? resolveDashboardExtensionUrl({\n envConfig,\n extension: dashboardExtensions[0],\n })\n : resolvePlatformUrl({\n envConfig,\n platformType: PlatformType.Dashboard(),\n });\n};\n","export function log(message: string) {\n // eslint-disable-next-line no-console\n console.log(message);\n}\n"],"mappings":";;gYAAAA,ICAAC,IAAA,OAAS,OAAAC,MAAW,eAOpB,IAAAC,EAAuB,SCPvBC,IAAA,IAAAC,EAAsB,SAOtB,eAAsBC,EACpBC,EACAC,EACAC,EACA,CACA,IAAMC,EAAiB,IAAIC,EAAeH,CAAU,EAE9CI,EAAO,MAAMC,EAAsB,CACvC,OAAAJ,EACA,cAAeF,EAAM,cACrB,eAAAG,CACF,CAAC,EAED,SAAO,SAAME,EAAM,CACjB,cAAe,IAAM,CACnB,MAAM,IAAIE,EAAS,CACjB,KAAMC,EAAa,uBAAuB,CAC5C,CAAC,CACH,EACA,SAAU,IAAM,CACd,MAAM,IAAID,EAAS,CACjB,KAAMC,EAAa,uBAAuB,CAC5C,CAAC,CACH,EACA,SAAU,CAAC,CAAE,KAAAH,CAAK,IAAMA,CAC1B,CAAC,CACH,CCjCAI,IAEA,IAAAC,EAAuB,SAQhB,IAAMC,EAAsB,CAAC,CAClC,MAAAC,EACA,KAAAC,EACA,IAAAC,CACF,IAIM,CACJ,IAAMC,EAAsBH,EAAM,WAAW,UAC3C,UAAOI,EAAmB,aAAa,MACrC,UAAOA,EAAmB,eAAe,MACzC,UAAOA,EAAmB,mBAAmB,CACjD,EAEMC,EAAY,CAChB,MAAOL,EAAM,OAAO,MACpB,KAAAC,EACA,IAAAC,CACF,EAEA,OAAOC,EAAoB,CAAC,EACxBG,EAA6B,CAC3B,UAAAD,EACA,UAAWF,EAAoB,CAAC,CAClC,CAAC,EACDI,EAAmB,CACjB,UAAAF,EACA,aAAcG,EAAa,UAAU,CACvC,CAAC,CACP,ECxCAC,IAAO,SAASC,EAAIC,EAAiB,CAEnC,QAAQ,IAAIA,CAAO,CACrB,CHaA,eAAsBC,EACpBC,EACAC,EACA,CACA,IAAMC,EAAQ,MAAMC,EAAiBC,EAAI,CAAC,EACpCC,EAAW,MAAMC,EAAoB,EAE3C,GAAI,CAACD,EACH,MAAM,IAAIE,EAAS,CACjB,KAAMC,EAAa,uBAAuB,CAC5C,CAAC,EAGHP,EAAS,cAAc,QAAQ,CAAE,GAAII,EAAS,SAAS,MAAO,CAAC,EAC/DI,EAAcR,EAAS,SAAUI,EAAS,SAAS,MAAM,EAEzD,IAAMK,EAAaC,EAAiB,CAClC,KAAM,aACN,YAAa,IAAMN,EAAS,eAAe,CAC7C,CAAC,EAEKO,EAAO,MAAMC,EAAYX,EAAOQ,EAAYV,EAAQ,MAAM,EAC1Dc,EAAoBZ,EAAM,WAAW,OACxCa,MACC,UAAOA,EAAWC,EAAmB,GAAG,MACxC,UAAOD,EAAWC,EAAmB,KAAK,MAC1C,UAAOD,EAAWC,EAAmB,aAAa,CACtD,EAEM,CAAE,SAAAC,EAAU,iBAAAC,CAAiB,EAAIlB,EAAQ,QAC3C,CAAE,SAAUA,EAAQ,QAAS,iBAAkB,MAAU,EACzD,MAAMmB,EACJjB,EAAM,OAAO,MACbA,EAAM,cACND,EAAS,SACTS,EACAI,EAAkB,OAAS,CAC7B,EAEEM,EAAM,IAAIC,EAAUX,CAAU,EAE9BY,EAAM,MAAMC,EAAiB,CACjC,MAAArB,EACA,IAAAkB,EACA,SAAAH,EACA,iBAAAC,CACF,CAAC,EACKM,EAAmBC,EAAoB,CAAE,KAAAb,EAAM,MAAAV,EAAO,IAAAoB,CAAI,CAAC,EAEjEI,EAAIF,CAAgB,CACtB","names":["init_esm_shims","init_esm_shims","cwd","import_variant","init_esm_shims","import_variant","resolveSite","model","httpClient","siteId","siteListClient","SiteListClient","site","resolveConfiguredSite","CliError","CliErrorCode","init_esm_shims","import_variant","getDashboardPageUrl","model","site","tag","dashboardExtensions","DevCenterComponent","envConfig","resolveDashboardExtensionUrl","resolvePlatformUrl","PlatformType","init_esm_shims","log","message","nonInteractivePreview","options","services","model","loadProjectModel","cwd","authData","isLoggedInToAccount","CliError","CliErrorCode","addUserFields","httpClient","createHttpClient","site","resolveSite","backendComponents","component","DevCenterComponent","serveUrl","backendServerUrl","uploadApplication","arm","ARMClient","tag","createPreviewTag","dashboardPageUrl","getDashboardPageUrl","log"]}
1
+ {"version":3,"sources":["../src/non-interactive/preview/index.ts","../src/non-interactive/preview/preview.ts","../src/non-interactive/preview/resolve-site.ts","../src/non-interactive/preview/dashboard-page-url.ts","../src/non-interactive/logger.ts"],"sourcesContent":["export { nonInteractivePreview } from './preview.js';\n","import { cwd } from 'node:process';\nimport { ARMClient } from '@wix/arm-client';\nimport { isLoggedInToAccount } from '@wix/cli-auth';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { addUserFields } from '@wix/cli-telemetry';\nimport { createHttpClient } from '@wix/cli-http-client';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport { isType } from 'variant';\nimport { loadProjectModel } from '../../model.js';\nimport { createPreviewTag } from '../../preview/create-preview-tag.js';\nimport { uploadApplication } from '../../hosting/upload-application.js';\nimport { resolveSite } from './resolve-site.js';\nimport { getDashboardPageUrl } from './dashboard-page-url.js';\nimport { log } from '../logger.js';\nimport { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\n\nexport async function nonInteractivePreview(\n options: { siteId?: string; baseUrl?: string },\n services: CommandServices\n) {\n const model = await loadProjectModel(cwd());\n const authData = await isLoggedInToAccount();\n\n if (!authData) {\n throw new CliError({\n code: CliErrorCode.AuthenticationRequired(),\n });\n }\n\n services.errorReporter.setUser({ id: authData.userInfo.userId });\n addUserFields(services.biLogger, authData.userInfo.userId);\n\n const httpClient = createHttpClient({\n type: 'backoffice',\n getAppToken: () => authData.getAccessToken(),\n });\n\n const site = await resolveSite(model, httpClient, options.siteId);\n const backendComponents = model.components.filter(\n (component) =>\n isType(component, DevCenterComponent.Api) ||\n isType(component, DevCenterComponent.Event) ||\n isType(component, DevCenterComponent.ServicePlugin)\n );\n\n const { serveUrl, backendServerUrl } = options.baseUrl\n ? { serveUrl: options.baseUrl, backendServerUrl: undefined }\n : await uploadApplication(\n model.config.appId,\n model.projectFolder,\n services.biLogger,\n httpClient,\n backendComponents.length > 0\n );\n\n const arm = new ARMClient(httpClient);\n\n const tag = await createPreviewTag({\n model,\n arm,\n serveUrl,\n backendServerUrl,\n });\n const dashboardPageUrl = getDashboardPageUrl({ site, model, tag });\n\n log(dashboardPageUrl);\n}\n","import { match } from 'variant';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { SiteListClient } from '@wix/site-list-client';\nimport type { HttpClient } from '@wix/cli-http-client';\nimport type { ProjectModel } from '../../model.js';\nimport { resolveConfiguredSite } from '../../site-id/resolve-configured-site.js';\n\nexport async function resolveSite(\n model: ProjectModel,\n httpClient: HttpClient,\n siteId?: string\n) {\n const siteListClient = new SiteListClient(httpClient);\n\n const site = await resolveConfiguredSite({\n siteId,\n projectFolder: model.projectFolder,\n siteListClient,\n });\n\n return match(site, {\n NotConfigured: () => {\n throw new CliError({\n code: CliErrorCode.SiteConfiguredRequired(),\n });\n },\n NotFound: () => {\n throw new CliError({\n code: CliErrorCode.SiteConfiguredRequired(),\n });\n },\n Resolved: ({ site }) => site,\n });\n}\n","import type { Site } from '@wix/site-list-client';\nimport { PlatformType } from '@wix/cli-app-definitions';\nimport { isType } from 'variant';\nimport type { ProjectModel } from '../../model.js';\nimport {\n resolvePlatformUrl,\n resolveDashboardExtensionUrl,\n} from '../../components/extensions/utils.js';\nimport { DevCenterComponent } from '../../dev-center/components/dev-center-component.js';\n\nexport const getDashboardPageUrl = ({\n model,\n site,\n tag,\n}: {\n model: ProjectModel;\n site: Site;\n tag: string;\n}) => {\n const dashboardExtensions = model.components.filter(\n (component) =>\n isType(component, DevCenterComponent.DashboardPage) ||\n isType(component, DevCenterComponent.DashboardPlugin) ||\n isType(component, DevCenterComponent.DashboardMenuPlugin)\n );\n\n const envConfig = {\n appId: model.config.appId,\n site,\n tag,\n };\n\n return dashboardExtensions[0]\n ? resolveDashboardExtensionUrl(dashboardExtensions[0], envConfig)\n : resolvePlatformUrl(PlatformType.Dashboard(), envConfig);\n};\n","export function log(message: string) {\n // eslint-disable-next-line no-console\n console.log(message);\n}\n"],"mappings":";;gYAAAA,ICAAC,IAAA,OAAS,OAAAC,MAAW,eAOpB,IAAAC,EAAuB,SCPvBC,IAAA,IAAAC,EAAsB,SAOtB,eAAsBC,EACpBC,EACAC,EACAC,EACA,CACA,IAAMC,EAAiB,IAAIC,EAAeH,CAAU,EAE9CI,EAAO,MAAMC,EAAsB,CACvC,OAAAJ,EACA,cAAeF,EAAM,cACrB,eAAAG,CACF,CAAC,EAED,SAAO,SAAME,EAAM,CACjB,cAAe,IAAM,CACnB,MAAM,IAAIE,EAAS,CACjB,KAAMC,EAAa,uBAAuB,CAC5C,CAAC,CACH,EACA,SAAU,IAAM,CACd,MAAM,IAAID,EAAS,CACjB,KAAMC,EAAa,uBAAuB,CAC5C,CAAC,CACH,EACA,SAAU,CAAC,CAAE,KAAAH,CAAK,IAAMA,CAC1B,CAAC,CACH,CCjCAI,IAEA,IAAAC,EAAuB,SAQhB,IAAMC,EAAsB,CAAC,CAClC,MAAAC,EACA,KAAAC,EACA,IAAAC,CACF,IAIM,CACJ,IAAMC,EAAsBH,EAAM,WAAW,OAC1CI,MACC,UAAOA,EAAWC,EAAmB,aAAa,MAClD,UAAOD,EAAWC,EAAmB,eAAe,MACpD,UAAOD,EAAWC,EAAmB,mBAAmB,CAC5D,EAEMC,EAAY,CAChB,MAAON,EAAM,OAAO,MACpB,KAAAC,EACA,IAAAC,CACF,EAEA,OAAOC,EAAoB,CAAC,EACxBI,EAA6BJ,EAAoB,CAAC,EAAGG,CAAS,EAC9DE,EAAmBC,EAAa,UAAU,EAAGH,CAAS,CAC5D,ECnCAI,IAAO,SAASC,EAAIC,EAAiB,CAEnC,QAAQ,IAAIA,CAAO,CACrB,CHaA,eAAsBC,EACpBC,EACAC,EACA,CACA,IAAMC,EAAQ,MAAMC,EAAiBC,EAAI,CAAC,EACpCC,EAAW,MAAMC,EAAoB,EAE3C,GAAI,CAACD,EACH,MAAM,IAAIE,EAAS,CACjB,KAAMC,EAAa,uBAAuB,CAC5C,CAAC,EAGHP,EAAS,cAAc,QAAQ,CAAE,GAAII,EAAS,SAAS,MAAO,CAAC,EAC/DI,EAAcR,EAAS,SAAUI,EAAS,SAAS,MAAM,EAEzD,IAAMK,EAAaC,EAAiB,CAClC,KAAM,aACN,YAAa,IAAMN,EAAS,eAAe,CAC7C,CAAC,EAEKO,EAAO,MAAMC,EAAYX,EAAOQ,EAAYV,EAAQ,MAAM,EAC1Dc,EAAoBZ,EAAM,WAAW,OACxCa,MACC,UAAOA,EAAWC,EAAmB,GAAG,MACxC,UAAOD,EAAWC,EAAmB,KAAK,MAC1C,UAAOD,EAAWC,EAAmB,aAAa,CACtD,EAEM,CAAE,SAAAC,EAAU,iBAAAC,CAAiB,EAAIlB,EAAQ,QAC3C,CAAE,SAAUA,EAAQ,QAAS,iBAAkB,MAAU,EACzD,MAAMmB,EACJjB,EAAM,OAAO,MACbA,EAAM,cACND,EAAS,SACTS,EACAI,EAAkB,OAAS,CAC7B,EAEEM,EAAM,IAAIC,EAAUX,CAAU,EAE9BY,EAAM,MAAMC,EAAiB,CACjC,MAAArB,EACA,IAAAkB,EACA,SAAAH,EACA,iBAAAC,CACF,CAAC,EACKM,EAAmBC,EAAoB,CAAE,KAAAb,EAAM,MAAAV,EAAO,IAAAoB,CAAI,CAAC,EAEjEI,EAAIF,CAAgB,CACtB","names":["init_esm_shims","init_esm_shims","cwd","import_variant","init_esm_shims","import_variant","resolveSite","model","httpClient","siteId","siteListClient","SiteListClient","site","resolveConfiguredSite","CliError","CliErrorCode","init_esm_shims","import_variant","getDashboardPageUrl","model","site","tag","dashboardExtensions","component","DevCenterComponent","envConfig","resolveDashboardExtensionUrl","resolvePlatformUrl","PlatformType","init_esm_shims","log","message","nonInteractivePreview","options","services","model","loadProjectModel","cwd","authData","isLoggedInToAccount","CliError","CliErrorCode","addUserFields","httpClient","createHttpClient","site","resolveSite","backendComponents","component","DevCenterComponent","serveUrl","backendServerUrl","uploadApplication","arm","ARMClient","tag","createPreviewTag","dashboardPageUrl","getDashboardPageUrl","log"]}
@@ -0,0 +1,4 @@
1
+ import { createRequire as _createRequire } from 'node:module';
2
+ const require = _createRequire(import.meta.url);
3
+ import{a as l}from"./chunk-KEE43HZL.js";import{a as E}from"./chunk-7IFG7QRE.js";import{a as h}from"./chunk-QCRAQWKR.js";import{a as y,b as I}from"./chunk-EQUG3BNW.js";import{B as C,D as w,I as j,kb as p,lb as x,t as P}from"./chunk-HMROXS2Y.js";import{T as g,Y as v,a as L,d as f,e as u}from"./chunk-CXOD6WQ4.js";import{e as b,h as s}from"./chunk-V4TR6DCM.js";s();var i=b(L(),1);import{cwd as F}from"node:process";async function M(e,{biLogger:o,errorReporter:t}){t.setContext("app info",{appId:e.config.appId,projectId:e.config.projectId}),o.updateDefaults({_appId:e.config.appId})}async function Q(e,{biLogger:o,errorReporter:t},n,m){await S(e,{biLogger:o,errorReporter:t},async()=>{let r=await p(F());if(r.components.length===0&&!m?.skipProjectValidation)throw new f({code:u.NoExtensionsFound()});o.updateDefaults({command:e.name()});let a=j(r.projectFolder);await g(i.default.createElement(P,{value:o},i.default.createElement(C,{value:t},i.default.createElement(w,{onLogin:c=>{t.setUser({id:c.userId}),y(o,c.userId)}},i.default.createElement(v,{messages:E},i.default.createElement(h,{filePath:a},i.default.createElement(x,{value:r,watchForChanges:m?.watchForModelChanges},n)))))))})}async function S(e,o,t){let n=await p(F());await M(n,o),o.biLogger.updateDefaults({command:e.name()});let m=I({biLogger:o.biLogger,command:e,cliVersion:l,flow:"Apps",projectId:n.config.projectId,extensions:n.components.reduce((r,a)=>{let d=r[a.type];return r[a.type]=d?d+1:1,r},{})});try{await t(),m.succeed()}catch(r){throw m.failed(r),r}}export{Q as renderCommand,S as runCommand};
4
+ //# sourceMappingURL=render-command-QQQFQTR7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/render-command.tsx"],"sourcesContent":["import { cwd } from 'node:process';\nimport React from 'react';\nimport type { ReactElement } from 'react';\nimport { AccountAuthProvider } from '@wix/cli-auth';\nimport type { UserInfo } from '@wix/cli-auth';\nimport { render } from '@wix/cli-ui-kit';\nimport { I18nProvider } from '@wix/cli-i18n';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { DebugLogProvider } from '@wix/cli-debug-log';\nimport { getDebugLogFilePath } from '@wix/cli-core-definitions';\nimport { ErrorReporterProvider } from '@wix/cli-error-reporting';\nimport { BiProvider } from '@wix/cli-telemetry-react';\nimport { addUserFields, reportCommandStartEvent } from '@wix/cli-telemetry';\nimport type { CommandServices } from '@wix/cli-command-contract';\nimport type { Command } from '@commander-js/extra-typings';\nimport type { ProjectModel } from '../model.js';\nimport { loadProjectModel, ProjectModelProvider } from '../model.js';\nimport messages from '../messages.json';\nimport { version } from '../../package.json';\n\ninterface Options {\n watchForModelChanges?: boolean;\n skipProjectValidation?: boolean;\n}\n\nasync function initServices(\n model: ProjectModel,\n { biLogger, errorReporter }: CommandServices\n) {\n errorReporter.setContext('app info', {\n appId: model.config.appId,\n projectId: model.config.projectId,\n });\n\n biLogger.updateDefaults({\n _appId: model.config.appId,\n });\n}\n\nexport async function renderCommand(\n command: Command,\n { biLogger, errorReporter }: CommandServices,\n tree: ReactElement,\n options?: Options\n) {\n await runCommand(command, { biLogger, errorReporter }, async () => {\n const model = await loadProjectModel(cwd());\n\n if (model.components.length === 0 && !options?.skipProjectValidation) {\n throw new CliError({\n code: CliErrorCode.NoExtensionsFound(),\n });\n }\n\n biLogger.updateDefaults({ command: command.name() });\n\n const debugLogFilePath = getDebugLogFilePath(model.projectFolder);\n\n const handleLogin = (userInfo: UserInfo) => {\n errorReporter.setUser({ id: userInfo.userId });\n addUserFields(biLogger, userInfo.userId);\n };\n\n await render(\n <BiProvider value={biLogger}>\n <ErrorReporterProvider value={errorReporter}>\n <AccountAuthProvider onLogin={handleLogin}>\n <I18nProvider messages={messages}>\n <DebugLogProvider filePath={debugLogFilePath}>\n <ProjectModelProvider\n value={model}\n watchForChanges={options?.watchForModelChanges}\n >\n {tree}\n </ProjectModelProvider>\n </DebugLogProvider>\n </I18nProvider>\n </AccountAuthProvider>\n </ErrorReporterProvider>\n </BiProvider>\n );\n });\n}\n\nexport async function runCommand(\n command: Command,\n services: CommandServices,\n commandFn: () => Promise<void>\n) {\n const model = await loadProjectModel(cwd());\n\n await initServices(model, services);\n\n services.biLogger.updateDefaults({\n command: command.name(),\n });\n\n const commandStatus = reportCommandStartEvent({\n biLogger: services.biLogger,\n command,\n cliVersion: version,\n flow: 'Apps',\n projectId: model.config.projectId,\n extensions: model.components.reduce<Record<string, number>>((acc, item) => {\n const value = acc[item.type];\n acc[item.type] = value ? value + 1 : 1;\n return acc;\n }, {}),\n });\n\n try {\n await commandFn();\n commandStatus.succeed();\n } catch (e) {\n commandStatus.failed(e);\n throw e;\n }\n}\n"],"mappings":";;uWAAAA,IACA,IAAAC,EAAkB,SADlB,OAAS,OAAAC,MAAW,eAyBpB,eAAeC,EACbC,EACA,CAAE,SAAAC,EAAU,cAAAC,CAAc,EAC1B,CACAA,EAAc,WAAW,WAAY,CACnC,MAAOF,EAAM,OAAO,MACpB,UAAWA,EAAM,OAAO,SAC1B,CAAC,EAEDC,EAAS,eAAe,CACtB,OAAQD,EAAM,OAAO,KACvB,CAAC,CACH,CAEA,eAAsBG,EACpBC,EACA,CAAE,SAAAH,EAAU,cAAAC,CAAc,EAC1BG,EACAC,EACA,CACA,MAAMC,EAAWH,EAAS,CAAE,SAAAH,EAAU,cAAAC,CAAc,EAAG,SAAY,CACjE,IAAMF,EAAQ,MAAMQ,EAAiBC,EAAI,CAAC,EAE1C,GAAIT,EAAM,WAAW,SAAW,GAAK,CAACM,GAAS,sBAC7C,MAAM,IAAII,EAAS,CACjB,KAAMC,EAAa,kBAAkB,CACvC,CAAC,EAGHV,EAAS,eAAe,CAAE,QAASG,EAAQ,KAAK,CAAE,CAAC,EAEnD,IAAMQ,EAAmBC,EAAoBb,EAAM,aAAa,EAOhE,MAAMc,EACJ,EAAAC,QAAA,cAACC,EAAA,CAAW,MAAOf,GACjB,EAAAc,QAAA,cAACE,EAAA,CAAsB,MAAOf,GAC5B,EAAAa,QAAA,cAACG,EAAA,CAAoB,QARNC,GAAuB,CAC1CjB,EAAc,QAAQ,CAAE,GAAIiB,EAAS,MAAO,CAAC,EAC7CC,EAAcnB,EAAUkB,EAAS,MAAM,CACzC,GAMQ,EAAAJ,QAAA,cAACM,EAAA,CAAa,SAAUC,GACtB,EAAAP,QAAA,cAACQ,EAAA,CAAiB,SAAUX,GAC1B,EAAAG,QAAA,cAACS,EAAA,CACC,MAAOxB,EACP,gBAAiBM,GAAS,sBAEzBD,CACH,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CAAC,CACH,CAEA,eAAsBE,EACpBH,EACAqB,EACAC,EACA,CACA,IAAM1B,EAAQ,MAAMQ,EAAiBC,EAAI,CAAC,EAE1C,MAAMV,EAAaC,EAAOyB,CAAQ,EAElCA,EAAS,SAAS,eAAe,CAC/B,QAASrB,EAAQ,KAAK,CACxB,CAAC,EAED,IAAMuB,EAAgBC,EAAwB,CAC5C,SAAUH,EAAS,SACnB,QAAArB,EACA,WAAYyB,EACZ,KAAM,OACN,UAAW7B,EAAM,OAAO,UACxB,WAAYA,EAAM,WAAW,OAA+B,CAAC8B,EAAKC,IAAS,CACzE,IAAMC,EAAQF,EAAIC,EAAK,IAAI,EAC3B,OAAAD,EAAIC,EAAK,IAAI,EAAIC,EAAQA,EAAQ,EAAI,EAC9BF,CACT,EAAG,CAAC,CAAC,CACP,CAAC,EAED,GAAI,CACF,MAAMJ,EAAU,EAChBC,EAAc,QAAQ,CACxB,OAASM,EAAG,CACV,MAAAN,EAAc,OAAOM,CAAC,EAChBA,CACR,CACF","names":["init_esm_shims","import_react","cwd","initServices","model","biLogger","errorReporter","renderCommand","command","tree","options","runCommand","loadProjectModel","cwd","CliError","CliErrorCode","debugLogFilePath","getDebugLogFilePath","render","React","BiProvider","ErrorReporterProvider","AccountAuthProvider","userInfo","addUserFields","I18nProvider","messages_default","DebugLogProvider","ProjectModelProvider","services","commandFn","commandStatus","reportCommandStartEvent","version","acc","item","value","e"]}
@@ -1,4 +1,3 @@
1
- /* eslint-disable no-param-reassign */
2
1
  /// <reference types="vite/client" />
3
2
  import type { ComponentType } from 'react';
4
3
  import React, { useState, useRef, useEffect } from 'react';
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@wix/cli-app",
3
3
  "description": "CLI tool for Wix apps",
4
- "version": "1.1.35",
4
+ "version": "1.1.37",
5
5
  "author": "Amit Dahan",
6
6
  "dependencies": {
7
- "@wix/cli-cloudflare-runtime": "1.0.25",
8
- "@wix/cli-miniflare": "1.0.16",
7
+ "@wix/cli-cloudflare-runtime": "1.0.26",
8
+ "@wix/cli-miniflare": "1.0.18",
9
9
  "vite": "5.3.2"
10
10
  },
11
11
  "devDependencies": {
@@ -18,9 +18,10 @@
18
18
  "@wix/ambassador-ctp-gradual-rollout-v1-app-config": "^1.0.67",
19
19
  "@wix/ambassador-devcenter-components-v1-component": "^1.0.427",
20
20
  "@wix/arm-client": "0.0.0",
21
- "@wix/bi-logger-dev-tools-data": "^1.53.0",
21
+ "@wix/bi-logger-dev-tools-data": "^1.54.0",
22
22
  "@wix/cli-app-definitions": "0.0.0",
23
23
  "@wix/cli-app-manifest": "1.0.0",
24
+ "@wix/cli-app-platform-sdk": "0.0.0",
24
25
  "@wix/cli-auth": "0.0.0",
25
26
  "@wix/cli-command-contract": "0.0.0",
26
27
  "@wix/cli-core-definitions": "0.0.0",
@@ -40,7 +41,6 @@
40
41
  "@wix/cli-tunnel": "0.0.0",
41
42
  "@wix/cli-ui-kit": "0.0.0",
42
43
  "@wix/cli-user-config": "0.0.0",
43
- "@wix/dashboard": "^1.3.21",
44
44
  "@wix/dev-center-client": "0.0.0",
45
45
  "@wix/extensions-data-client": "0.0.0",
46
46
  "@wix/gena": "0.0.0",
@@ -56,7 +56,10 @@
56
56
  "form-data": "^4.0.0",
57
57
  "globby": "^13.2.2",
58
58
  "lodash": "^4.17.21",
59
+ "magic-string": "^0.30.11",
59
60
  "mustache": "^4.2.0",
61
+ "node-html-parser": "^6.1.13",
62
+ "outdent": "^0.8.0",
60
63
  "p-retry": "^5.1.2",
61
64
  "p-wait-for": "^5.0.2",
62
65
  "prompts": "^2.4.2",
@@ -134,5 +137,5 @@
134
137
  ]
135
138
  }
136
139
  },
137
- "falconPackageHash": "0b77fc535a33124553b42df0fa8fbf0fcba6a042728fba64d6ac098c"
140
+ "falconPackageHash": "5e9d241cc333870b305eeddaef9a5c451dc1223fa374ea4267c61f39"
138
141
  }
@@ -0,0 +1 @@
1
+ {"type":"object","properties":{"$schema":{"type":"string"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}
@@ -0,0 +1 @@
1
+ {"type":"object","properties":{"$schema":{"type":"string"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"}},"required":["id","name"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}
@@ -0,0 +1 @@
1
+ {"type":"object","properties":{"$schema":{"type":"string"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"fallbackValueForRequires3dSecure":{"type":"boolean"}},"required":["id","name"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}
@@ -0,0 +1 @@
1
+ {"type":"object","properties":{"$schema":{"type":"string"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"description":{"type":"string"},"learnMoreUrl":{"type":"string","format":"uri"},"dashboardUrl":{"type":"string","format":"uri"},"fallbackDefinitionMandatory":{"type":"boolean"},"thumbnailUrl":{"type":"string","format":"uri"}},"required":["id","name"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}
@@ -0,0 +1 @@
1
+ {"type":"object","properties":{"$schema":{"type":"string"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"validateInCart":{"type":"boolean"}},"required":["id","name"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "dependencies": {
3
3
  "@wix/design-system": "^1.111.0",
4
- "@wix/editor": "^1.0.0",
5
- "@wix/sdk-react": "^0.5.0",
4
+ "@wix/editor": "^1.308.0",
6
5
  "react-to-webcomponent": "^2.0.0"
7
6
  },
8
7
  "devDependencies": {
@@ -0,0 +1,22 @@
1
+ ---
2
+ to: element.module.css
3
+ ---
4
+ .root {
5
+ width: 100%;
6
+ height: 100%;
7
+ }
8
+
9
+ .root h2 {
10
+ font-size: 20px;
11
+ margin-bottom: 5px;
12
+ }
13
+
14
+ .root code,
15
+ .root p {
16
+ font-size: 16px;
17
+ }
18
+
19
+ .root code {
20
+ font-style: italic;
21
+ color: darkgreen;
22
+ }
@@ -1,25 +1,26 @@
1
1
  ---
2
2
  to: element.tsx
3
3
  ---
4
- import React from 'react';
4
+ import React, { type FC } from 'react';
5
5
  import ReactDOM from 'react-dom';
6
6
  import reactToWebComponent from 'react-to-webcomponent';
7
- import { Text, WixDesignSystemProvider } from '@wix/design-system';
8
- import '@wix/design-system/styles.global.css';
7
+ import styles from './element.module.css';
9
8
 
10
9
  type Props = {
11
10
  name: string;
12
11
  };
13
12
 
14
- function CustomElement(props: Props) {
13
+ const CustomElement: FC<Props> = (props) => {
15
14
  return (
16
- <WixDesignSystemProvider>
17
- <div>
18
- <Text>Hello {props.name ?? 'Wix CLI'}</Text>
19
- </div>
20
- </WixDesignSystemProvider>
15
+ <div className={styles.root}>
16
+ <h2>Hello {props.name || 'Wix CLI'}</h2>
17
+ <p>
18
+ Open <code>`<%- readablePath %>`</code> to start
19
+ building your widget
20
+ </p>
21
+ </div>
21
22
  );
22
- }
23
+ };
23
24
 
24
25
  const customElement = reactToWebComponent(
25
26
  CustomElement,
@@ -1,9 +1,8 @@
1
1
  ---
2
2
  to: panel.tsx
3
3
  ---
4
- import React, { useState, useEffect } from 'react';
5
- import { WixProvider, useWixModules } from '@wix/sdk-react';
6
- import { editor, widget } from '@wix/editor';
4
+ import React, { type FC, useState, useEffect } from 'react';
5
+ import { widget } from '@wix/editor';
7
6
  import {
8
7
  SidePanel,
9
8
  WixDesignSystemProvider,
@@ -12,39 +11,34 @@ import {
12
11
  } from '@wix/design-system';
13
12
  import '@wix/design-system/styles.global.css';
14
13
 
15
- function Panel() {
16
- const { setProp, getProp } = useWixModules(widget);
14
+ const Panel: FC = () => {
17
15
  const [name, setName] = useState<string>('');
18
16
 
19
17
  useEffect(() => {
20
- getProp('name').then(name => setName(name ?? 'Wix CLI'));
21
- }, [getProp, setName]);
18
+ widget.getProp('name').then(name => setName(name || 'Wix CLI'));
19
+ }, [setName]);
22
20
 
23
21
  return (
24
- <SidePanel width="300">
25
- <SidePanel.Content noPadding stretchVertically>
26
- <SidePanel.Field>
27
- <FormField label="Your name">
28
- <Input
29
- type="text"
30
- value={name}
31
- onChange={(event) => {
32
- const newName = event.target.value;
33
- setName(newName);
34
- setProp('name', newName);
35
- }}
36
- />
37
- </FormField>
38
- </SidePanel.Field>
39
- </SidePanel.Content>
40
- </SidePanel>
41
- );
42
- }
43
-
44
- export default () => (
45
- <WixProvider host={editor.host()} auth={editor.auth()}>
46
22
  <WixDesignSystemProvider>
47
- <Panel />
23
+ <SidePanel width="300">
24
+ <SidePanel.Content noPadding stretchVertically>
25
+ <SidePanel.Field>
26
+ <FormField label="Your name">
27
+ <Input
28
+ type="text"
29
+ value={name}
30
+ onChange={(event) => {
31
+ const newName = event.target.value;
32
+ setName(newName);
33
+ widget.setProp('name', newName);
34
+ }}
35
+ />
36
+ </FormField>
37
+ </SidePanel.Field>
38
+ </SidePanel.Content>
39
+ </SidePanel>
48
40
  </WixDesignSystemProvider>
49
- </WixProvider>
50
- );
41
+ );
42
+ };
43
+
44
+ export default Panel;
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "dependencies": {
3
- "@wix/dashboard-react": "^1.0.0",
4
- "@wix/design-system": "^1.111.0",
5
- "@wix/sdk-react": "^0.5.0"
3
+ "@wix/dashboard": "^1.3.21",
4
+ "@wix/design-system": "^1.111.0"
6
5
  },
7
6
  "devDependencies": {
8
7
  "@types/react": "^16.0.0",
@@ -1,7 +1,8 @@
1
1
  ---
2
2
  to: modal.tsx
3
3
  ---
4
- import React from 'react';
4
+ import React, { type FC } from 'react';
5
+ import { dashboard } from '@wix/dashboard';
5
6
  import {
6
7
  WixDesignSystemProvider,
7
8
  Text,
@@ -9,31 +10,25 @@ import {
9
10
  CustomModalLayout,
10
11
  } from '@wix/design-system';
11
12
  import '@wix/design-system/styles.global.css';
12
- import { useDashboard, withDashboard, EnvironmentState } from '@wix/dashboard-react';
13
13
  import { width, height } from './modal.json';
14
- import { useEnvironment } from '@wix/sdk-react';
15
14
 
16
15
  // To open your modal, call `openModal` with your modal id.
17
16
  // e.g.
18
- // import { useDashboard } from '@wix/dashboard-react';
17
+ // import { dashboard } from '@wix/dashboard';
19
18
  // function MyComponent() {
20
- // const { openModal } = useDashboard();
21
- // return <button onClick={() => openModal('<%- modalId -%>')}>Open Modal</button>;
19
+ // return <button onClick={() => dashboard.openModal('<%- modalId -%>')}>Open Modal</button>;
22
20
  // }
23
- function Modal() {
24
- const { closeModal } = useDashboard();
25
- const { locale } = useEnvironment<EnvironmentState>();
26
-
21
+ const Modal: FC = () => {
27
22
  return (
28
- <WixDesignSystemProvider locale={locale} features={{ newColorsBranding: true }}>
23
+ <WixDesignSystemProvider features={{ newColorsBranding: true }}>
29
24
  <CustomModalLayout
30
25
  width={width}
31
26
  maxHeight={height}
32
27
  primaryButtonText="Save"
33
28
  secondaryButtonText="Cancel"
34
- onCloseButtonClick={() => closeModal()}
35
- primaryButtonOnClick={() => closeModal()}
36
- secondaryButtonOnClick={() => closeModal()}
29
+ onCloseButtonClick={() => dashboard.closeModal()}
30
+ primaryButtonOnClick={() => dashboard.closeModal()}
31
+ secondaryButtonOnClick={() => dashboard.closeModal()}
37
32
  title="Wix CLI Modal"
38
33
  subtitle="Edit this file to customize your modal"
39
34
  content={
@@ -44,6 +39,6 @@ function Modal() {
44
39
  />
45
40
  </WixDesignSystemProvider>
46
41
  );
47
- }
42
+ };
48
43
 
49
- export default withDashboard(Modal);
44
+ export default Modal;
@@ -1,8 +1,6 @@
1
1
  {
2
2
  "dependencies": {
3
- "@wix/dashboard-react": "^1.0.0",
4
- "@wix/design-system": "^1.111.0",
5
- "@wix/sdk-react": "^0.5.0"
3
+ "@wix/design-system": "^1.111.0"
6
4
  },
7
5
  "devDependencies": {
8
6
  "@types/react": "^16.0.0",
@@ -1,17 +1,13 @@
1
1
  ---
2
2
  to: page.tsx
3
3
  ---
4
- import React from "react";
5
- import { EmptyState, Page, WixDesignSystemProvider } from "@wix/design-system";
6
- import { withDashboard, EnvironmentState } from '@wix/dashboard-react';
7
- import { useEnvironment } from '@wix/sdk-react';
8
- import "@wix/design-system/styles.global.css";
9
-
10
- function DashboardPage() {
11
- const { locale } = useEnvironment<EnvironmentState>();
4
+ import React, { type FC } from 'react';
5
+ import { EmptyState, Page, WixDesignSystemProvider } from '@wix/design-system';
6
+ import '@wix/design-system/styles.global.css';
12
7
 
8
+ const DashboardPage: FC = () => {
13
9
  return (
14
- <WixDesignSystemProvider locale={locale} features={{ newColorsBranding: true }}>
10
+ <WixDesignSystemProvider features={{ newColorsBranding: true }}>
15
11
  <Page>
16
12
  <Page.Header
17
13
  title="<%= title %>"
@@ -27,6 +23,6 @@ function DashboardPage() {
27
23
  </Page>
28
24
  </WixDesignSystemProvider>
29
25
  );
30
- }
26
+ };
31
27
 
32
- export default withDashboard(DashboardPage);
28
+ export default DashboardPage;
@@ -1,8 +1,6 @@
1
1
  {
2
2
  "dependencies": {
3
- "@wix/dashboard-react": "^1.0.0",
4
- "@wix/design-system": "^1.111.0",
5
- "@wix/sdk-react": "^0.5.0"
3
+ "@wix/design-system": "^1.111.0"
6
4
  },
7
5
  "devDependencies": {
8
6
  "@types/react": "^16.0.0",
@@ -3,7 +3,7 @@ to: plugin.tsx
3
3
  ---
4
4
  <% const paramsKeys = Object.keys(params) -%>
5
5
  <% const hasParams = paramsKeys.length > 0 -%>
6
- import React from 'react';
6
+ import React, { type FC } from 'react';
7
7
  import {
8
8
  WixDesignSystemProvider,
9
9
  Card,
@@ -13,8 +13,6 @@ import {
13
13
  TextButton,
14
14
  } from '@wix/design-system';
15
15
  import '@wix/design-system/styles.global.css';
16
- import { withDashboard, EnvironmentState } from '@wix/dashboard-react';
17
- import { useEnvironment } from '@wix/sdk-react';
18
16
  <% if (hasParams) { %>
19
17
  interface Props {
20
18
  <% Object.entries(params).forEach(([param, type]) => { -%>
@@ -22,14 +20,12 @@ interface Props {
22
20
  <% }); -%>
23
21
  }
24
22
 
25
- function Plugin({ <%= paramsKeys.join(', ') %> }: Props) {
23
+ const Plugin: FC<Props> = ({ <%= paramsKeys.join(', ') %> }) => {
26
24
  <% } else { %>
27
- function Plugin() {
25
+ const Plugin: FC = () => {
28
26
  <% } -%>
29
- const { locale } = useEnvironment<EnvironmentState>();
30
-
31
27
  return (
32
- <WixDesignSystemProvider locale={locale} features={{ newColorsBranding: true }}>
28
+ <WixDesignSystemProvider features={{ newColorsBranding: true }}>
33
29
  <Card>
34
30
  <Card.Header
35
31
  title="Dashboard Plugin"
@@ -53,6 +49,6 @@ function Plugin() {
53
49
  </Card>
54
50
  </WixDesignSystemProvider>
55
51
  );
56
- }
52
+ };
57
53
 
58
- export default withDashboard(Plugin);
54
+ export default Plugin;
@@ -0,0 +1,5 @@
1
+ {
2
+ "dependencies": {
3
+ "@wix/ecom": "^1.0.668"
4
+ }
5
+ }
@@ -0,0 +1,4 @@
1
+ ---
2
+ to: plugin.json
3
+ ---
4
+ <%- servicePluginConfigJSON -%>
@@ -0,0 +1,12 @@
1
+ ---
2
+ to: plugin.ts
3
+ ---
4
+ import { additionalFees } from '@wix/ecom/service-plugins/context';
5
+
6
+ additionalFees.provideHandlers({
7
+ calculateAdditionalFees: async ({ request, metadata }) => {
8
+ return {
9
+ additionalFees: [],
10
+ };
11
+ },
12
+ });
@@ -0,0 +1,5 @@
1
+ {
2
+ "dependencies": {
3
+ "@wix/ecom": "^1.0.668"
4
+ }
5
+ }
@@ -0,0 +1,4 @@
1
+ ---
2
+ to: plugin.json
3
+ ---
4
+ <%- servicePluginConfigJSON -%>
@@ -0,0 +1,17 @@
1
+ ---
2
+ to: plugin.ts
3
+ ---
4
+ import { customTriggers } from '@wix/ecom/service-plugins/context';
5
+
6
+ customTriggers.provideHandlers({
7
+ listTriggers: async ({ request, metadata }) => {
8
+ return {
9
+ customTriggers: [],
10
+ };
11
+ },
12
+ getEligibleTriggers: async ({ request, metadata }) => {
13
+ return {
14
+ eligibleTriggers: [],
15
+ };
16
+ },
17
+ })
@@ -0,0 +1,5 @@
1
+ {
2
+ "dependencies": {
3
+ "@wix/ecom": "^1.0.668"
4
+ }
5
+ }
@@ -0,0 +1,4 @@
1
+ ---
2
+ to: plugin.json
3
+ ---
4
+ <%- servicePluginConfigJSON -%>
@@ -0,0 +1,12 @@
1
+ ---
2
+ to: plugin.ts
3
+ ---
4
+ import { paymentSettings } from '@wix/ecom/service-plugins/context';
5
+
6
+ paymentSettings.provideHandlers({
7
+ getPaymentSettings: async ({ request, metadata }) => {
8
+ return {
9
+ paymentSettings: {},
10
+ };
11
+ },
12
+ })
@@ -0,0 +1,5 @@
1
+ {
2
+ "dependencies": {
3
+ "@wix/ecom": "^1.0.668"
4
+ }
5
+ }
@@ -0,0 +1,4 @@
1
+ ---
2
+ to: plugin.json
3
+ ---
4
+ <%- servicePluginConfigJSON -%>
@@ -0,0 +1,12 @@
1
+ ---
2
+ to: plugin.ts
3
+ ---
4
+ import { shippingRates } from '@wix/ecom/service-plugins/context';
5
+
6
+ shippingRates.provideHandlers({
7
+ getShippingRates: async ({ request, metadata }) => {
8
+ return {
9
+ shippingRates: [],
10
+ };
11
+ },
12
+ });
@@ -0,0 +1,5 @@
1
+ {
2
+ "dependencies": {
3
+ "@wix/ecom": "^1.0.668"
4
+ }
5
+ }
@@ -0,0 +1,4 @@
1
+ ---
2
+ to: plugin.json
3
+ ---
4
+ <%- servicePluginConfigJSON -%>
@@ -0,0 +1,12 @@
1
+ ---
2
+ to: plugin.ts
3
+ ---
4
+ import { validations } from '@wix/ecom/service-plugins/context';
5
+
6
+ validations.provideHandlers({
7
+ getValidationViolations: async ({ request, metadata }) => {
8
+ return {
9
+ violations: [],
10
+ };
11
+ },
12
+ })