@wix/cli-app 1.1.52 → 1.1.53

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 (94) hide show
  1. package/build/{CreateVersionCommand-HVC5JTAL.js → CreateVersionCommand-2W37YQW4.js} +2 -2
  2. package/build/{DevCommand-RTZ66W3P.js → DevCommand-JDHE7RQB.js} +2 -2
  3. package/build/{GenerateCommand-J4FYPLSB.js → GenerateCommand-3PPXF4B6.js} +3 -3
  4. package/build/{GenerateCommand-J4FYPLSB.js.map → GenerateCommand-3PPXF4B6.js.map} +1 -1
  5. package/build/LogsCommand-LQKTBY6D.js +4 -0
  6. package/build/LogsCommand-LQKTBY6D.js.map +1 -0
  7. package/build/PreviewCommand-H3HVD7DH.js +4 -0
  8. package/build/ServeCommand-RHONEHTF.js +4 -0
  9. package/build/{ServeCommand-LEJRJ2CR.js.map → ServeCommand-RHONEHTF.js.map} +1 -1
  10. package/build/build-QN6TGE3Q.js +4 -0
  11. package/build/build-QN6TGE3Q.js.map +1 -0
  12. package/build/{chunk-522ULCVX.js → chunk-2W2YJZP5.js} +31 -31
  13. package/build/chunk-2W2YJZP5.js.map +1 -0
  14. package/build/{chunk-NEWE3FX5.js → chunk-4CCKO52Z.js} +2 -2
  15. package/build/{chunk-KNH7RNAZ.js → chunk-5OZZ7R6I.js} +2 -2
  16. package/build/chunk-5OZZ7R6I.js.map +1 -0
  17. package/build/{chunk-2YXY5Y3Z.js → chunk-AXAJ7DJ4.js} +2 -2
  18. package/build/{chunk-ATQCL6AZ.js → chunk-B5P4JHUW.js} +174 -125
  19. package/build/chunk-B5P4JHUW.js.map +1 -0
  20. package/build/{chunk-WRYRVOZP.js → chunk-C3O7WWDR.js} +2 -2
  21. package/build/{chunk-UKELYG5A.js → chunk-DLQYJEV6.js} +2 -2
  22. package/build/chunk-F6MVNSX2.js +4 -0
  23. package/build/chunk-F6MVNSX2.js.map +1 -0
  24. package/build/chunk-FVG3T57Z.js +4 -0
  25. package/build/{chunk-FMTROGFZ.js → chunk-HILXNAWZ.js} +2 -2
  26. package/build/chunk-LDGXTJLC.js +4 -0
  27. package/build/chunk-LDGXTJLC.js.map +1 -0
  28. package/build/{chunk-6ZJVIMV7.js → chunk-PSQ4AQFG.js} +2 -2
  29. package/build/{chunk-EWA6OFAF.js → chunk-QXIKCJLU.js} +3 -3
  30. package/build/{chunk-EWA6OFAF.js.map → chunk-QXIKCJLU.js.map} +1 -1
  31. package/build/{chunk-CMBEPCWL.js → chunk-SZ5JWJ4Q.js} +2 -2
  32. package/build/{chunk-2R6WOCA4.js → chunk-TSAKYUDG.js} +2 -2
  33. package/build/{chunk-2LPICRGU.js → chunk-WXOIL7LC.js} +2 -2
  34. package/build/chunk-YIGHU6O6.js +4 -0
  35. package/build/chunk-YIGHU6O6.js.map +1 -0
  36. package/build/chunk-YMRYABCG.js +115 -0
  37. package/build/{chunk-X3ZYER2U.js.map → chunk-YMRYABCG.js.map} +1 -1
  38. package/build/cloudflare-runtime/entry.js +10 -3
  39. package/build/cloudflare-runtime/getRegisteredExtensions.js +10 -3
  40. package/build/index.js +2 -2
  41. package/build/index.js.map +1 -1
  42. package/build/platform-sdk/chunk-32RIHE6N.js +2 -0
  43. package/build/platform-sdk/chunk-32RIHE6N.js.map +1 -0
  44. package/build/platform-sdk/chunk-DGX4CFXG.js +2 -0
  45. package/build/platform-sdk/chunk-DGX4CFXG.js.map +1 -0
  46. package/build/platform-sdk/dashboard.js +1 -1
  47. package/build/platform-sdk/editor.js +2 -2
  48. package/build/platform-sdk/editor.js.map +1 -1
  49. package/build/platform-sdk/site.js +1 -1
  50. package/build/preview-457BTAHF.js +4 -0
  51. package/build/preview-457BTAHF.js.map +1 -0
  52. package/build/render-command-W6CY3R4Q.js +4 -0
  53. package/build/render-command-W6CY3R4Q.js.map +1 -0
  54. package/internal/component-hmr-wrapper.tsx +9 -9
  55. package/package.json +5 -5
  56. package/templates/site-plugin/files/plugin.tsx.ejs +1 -1
  57. package/build/LogsCommand-J3PHRUGE.js +0 -4
  58. package/build/LogsCommand-J3PHRUGE.js.map +0 -1
  59. package/build/PreviewCommand-JYIGS25E.js +0 -4
  60. package/build/ServeCommand-LEJRJ2CR.js +0 -4
  61. package/build/build-YPC7VLOB.js +0 -4
  62. package/build/build-YPC7VLOB.js.map +0 -1
  63. package/build/chunk-522ULCVX.js.map +0 -1
  64. package/build/chunk-ATQCL6AZ.js.map +0 -1
  65. package/build/chunk-KNH7RNAZ.js.map +0 -1
  66. package/build/chunk-MXLCRTVZ.js +0 -4
  67. package/build/chunk-RWTMPGYF.js +0 -4
  68. package/build/chunk-RWTMPGYF.js.map +0 -1
  69. package/build/chunk-WLHVYK7Z.js +0 -4
  70. package/build/chunk-WLHVYK7Z.js.map +0 -1
  71. package/build/chunk-X3ZYER2U.js +0 -115
  72. package/build/chunk-ZCIEKIRM.js +0 -4
  73. package/build/chunk-ZCIEKIRM.js.map +0 -1
  74. package/build/platform-sdk/chunk-3TJ2D6DS.js +0 -2
  75. package/build/platform-sdk/chunk-3TJ2D6DS.js.map +0 -1
  76. package/build/platform-sdk/chunk-RE2R2PA6.js +0 -2
  77. package/build/platform-sdk/chunk-RE2R2PA6.js.map +0 -1
  78. package/build/preview-VAP5AF4W.js +0 -4
  79. package/build/preview-VAP5AF4W.js.map +0 -1
  80. package/build/render-command-NE2QILSS.js +0 -4
  81. package/build/render-command-NE2QILSS.js.map +0 -1
  82. /package/build/{CreateVersionCommand-HVC5JTAL.js.map → CreateVersionCommand-2W37YQW4.js.map} +0 -0
  83. /package/build/{DevCommand-RTZ66W3P.js.map → DevCommand-JDHE7RQB.js.map} +0 -0
  84. /package/build/{PreviewCommand-JYIGS25E.js.map → PreviewCommand-H3HVD7DH.js.map} +0 -0
  85. /package/build/{chunk-NEWE3FX5.js.map → chunk-4CCKO52Z.js.map} +0 -0
  86. /package/build/{chunk-2YXY5Y3Z.js.map → chunk-AXAJ7DJ4.js.map} +0 -0
  87. /package/build/{chunk-WRYRVOZP.js.map → chunk-C3O7WWDR.js.map} +0 -0
  88. /package/build/{chunk-UKELYG5A.js.map → chunk-DLQYJEV6.js.map} +0 -0
  89. /package/build/{chunk-MXLCRTVZ.js.map → chunk-FVG3T57Z.js.map} +0 -0
  90. /package/build/{chunk-FMTROGFZ.js.map → chunk-HILXNAWZ.js.map} +0 -0
  91. /package/build/{chunk-6ZJVIMV7.js.map → chunk-PSQ4AQFG.js.map} +0 -0
  92. /package/build/{chunk-CMBEPCWL.js.map → chunk-SZ5JWJ4Q.js.map} +0 -0
  93. /package/build/{chunk-2R6WOCA4.js.map → chunk-TSAKYUDG.js.map} +0 -0
  94. /package/build/{chunk-2LPICRGU.js.map → chunk-WXOIL7LC.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{d as a}from"./chunk-3TJ2D6DS.js";import"./chunk-SBZEOPXX.js";function c(){let t=null,n=null;return{promise:new Promise((o,r)=>{t=o,n=r}),resolve:t,reject:n}}var d=t=>{let{createHost:n}=t;return{__type:"host",create:e=>({}),host:e=>{var o,r;let i=n(e),s=p();return{...i,apiBaseUrl:s,essentials:{language:(o=window)==null||(o=o.commonConfig)==null?void 0:o.language,locale:(r=window)==null||(r=r.commonConfig)==null?void 0:r.locale}}},auth:e=>{let o=typeof window<"u"?window.wixEmbedsAPI:void 0;e||(e=o==null||o.getAccessTokenFunction==null?void 0:o.getAccessTokenFunction());let r=!1,{resolve:i,promise:s}=c();return{getAuthHeaders:async()=>{if(!e&&r&&(e=await s),!e)throw new Error("Failed to resolve auth token");return{headers:{Authorization:await e()}}},getAccessTokenInjector:()=>(r=!0,m=>{i(m)})}}}};function p(){let t=typeof window<"u"?window.wixEmbedsAPI:void 0,n=t==null||t.getExternalBaseUrl==null?void 0:t.getExternalBaseUrl();if(!n)return;let e=new URL(n);return e!=null&&e.pathname&&e.pathname!=="/"?""+e.hostname+e.pathname:e.hostname}var u=t=>{let{clientSdk:n,applicationId:e}=t;return{invoke:async o=>{let{namespace:r,method:i,args:s}=o;if(!n)throw new Error("Wix Site SDK only works in a Wix site environment. Learn more: https://dev.wix.com/docs/sdk/host-modules/site/introduction");return n.invoke({namespace:r,method:i,args:s,applicationId:e,accessToken:"accessToken"})},getAccessToken:()=>{throw new Error("Not implemented")},observeState:()=>({disconnect:()=>{}})}};var w=function(t){let n=typeof $wixContext<"u"&&$wixContext.clientSdk||t?.clientSdk||window.clientSdk,{applicationId:e}=t||{};if(!e)throw new Error('"createHost" was called without a required field "applicationId"');return{channel:u({clientSdk:n,applicationId:e}),close:()=>{}}};var l=d({createHost:w});var y=t=>{let n=l.host({applicationId:t}),e=l.auth(),o=e.getAccessTokenInjector();return a({auth:e,host:n}).enableContext("module"),{injectGetAccessToken:o}};export{y as enableClient};
1
+ import{c as a}from"./chunk-32RIHE6N.js";import"./chunk-SBZEOPXX.js";function c(){let t=null,n=null;return{promise:new Promise((o,r)=>{t=o,n=r}),resolve:t,reject:n}}var d=t=>{let{createHost:n}=t;return{__type:"host",create:e=>({}),host:e=>{var o,r;let i=n(e),s=p();return{...i,apiBaseUrl:s,essentials:{language:(o=window)==null||(o=o.commonConfig)==null?void 0:o.language,locale:(r=window)==null||(r=r.commonConfig)==null?void 0:r.locale}}},auth:e=>{let o=typeof window<"u"?window.wixEmbedsAPI:void 0;e||(e=o==null||o.getAccessTokenFunction==null?void 0:o.getAccessTokenFunction());let r=!1,{resolve:i,promise:s}=c();return{getAuthHeaders:async()=>{if(!e&&r&&(e=await s),!e)throw new Error("Failed to resolve auth token");return{headers:{Authorization:await e()}}},getAccessTokenInjector:()=>(r=!0,m=>{i(m)})}}}};function p(){let t=typeof window<"u"?window.wixEmbedsAPI:void 0,n=t==null||t.getExternalBaseUrl==null?void 0:t.getExternalBaseUrl();if(!n)return;let e=new URL(n);return e!=null&&e.pathname&&e.pathname!=="/"?""+e.hostname+e.pathname:e.hostname}var u=t=>{let{clientSdk:n,applicationId:e}=t;return{invoke:async o=>{let{namespace:r,method:i,args:s}=o;if(!n)throw new Error("Wix Site SDK only works in a Wix site environment. Learn more: https://dev.wix.com/docs/sdk/host-modules/site/introduction");return n.invoke({namespace:r,method:i,args:s,applicationId:e,accessToken:"accessToken"})},getAccessToken:()=>{throw new Error("Not implemented")},observeState:()=>({disconnect:()=>{}})}};var w=function(t){let n=typeof $wixContext<"u"&&$wixContext.clientSdk||t?.clientSdk||window.clientSdk,{applicationId:e}=t||{};if(!e)throw new Error('"createHost" was called without a required field "applicationId"');return{channel:u({clientSdk:n,applicationId:e}),close:()=>{}}};var l=d({createHost:w});var y=t=>{let n=l.host({applicationId:t}),e=l.auth(),o=e.getAccessTokenInjector();return a({auth:e,host:n}).enableContext("module"),{injectGetAccessToken:o}};export{y as enableClient};
2
2
  //# sourceMappingURL=site.js.map
@@ -0,0 +1,4 @@
1
+ import { createRequire as _createRequire } from 'node:module';
2
+ const require = _createRequire(import.meta.url);
3
+ import{a as x}from"./chunk-TSAKYUDG.js";import{a as b}from"./chunk-PSQ4AQFG.js";import"./chunk-AXAJ7DJ4.js";import{a as U,e as S,f as j,s as y,v as I}from"./chunk-LDGXTJLC.js";import"./chunk-WXOIL7LC.js";import"./chunk-QXIKCJLU.js";import"./chunk-WJTPY35F.js";import"./chunk-4CCKO52Z.js";import"./chunk-B5P4JHUW.js";import"./chunk-DLQYJEV6.js";import{Aa as n,E as w,bb as P,g as v,na as h}from"./chunk-YMRYABCG.js";import{c as C,e as m,f as p}from"./chunk-2W2YJZP5.js";import{e as u,h as o}from"./chunk-V4TR6DCM.js";o();o();var f=u(C(),1);o();var D=u(C(),1);async function M(e,r,s){let t=new U(r),i=await S({siteId:s,projectFolder:e.projectFolder,siteListClient:t});return(0,D.match)(i,{NotConfigured:()=>{throw new m({code:p.SiteConfiguredRequired(),cause:void 0})},NotFound:()=>{throw new m({code:p.SiteConfiguredRequired(),cause:void 0})},Resolved:({site:a})=>a})}o();var l=u(C(),1);var A=({model:e,site:r,tag:s})=>{let t=e.components.filter(a=>(0,l.isType)(a,n.DashboardPage)||(0,l.isType)(a,n.DashboardPlugin)||(0,l.isType)(a,n.DashboardMenuPlugin)),i={appId:e.config.appId,site:r,tag:s};return t[0]?I(t[0],i):y(h.Dashboard(),i)};o();function E(e){console.log(e)}async function H(e,r,s){let t=await w();if(!t)throw new m({code:p.AuthenticationRequired(),cause:void 0});s.errorReporter.setUser({id:t.userInfo.userId}),b(s.biLogger,t.userInfo.userId);let i=v({type:"backoffice",getAppToken:()=>t.getAccessToken()}),a=await M(r,i,e.siteId),T=r.components.filter(g=>(0,f.isType)(g,n.Api)||(0,f.isType)(g,n.Event)||(0,f.isType)(g,n.ServicePlugin)),{serveUrl:k,backendServerUrl:R}=e.baseUrl?{serveUrl:e.baseUrl,backendServerUrl:void 0}:await P(r.config.appId,r.projectFolder,s.biLogger,i,T.length>0),F=new j(i),L=await x({model:r,arm:F,serveUrl:k,backendServerUrl:R}),q=A({site:a,model:r,tag:L});E(q)}export{H as nonInteractivePreview};
4
+ //# sourceMappingURL=preview-457BTAHF.js.map
@@ -0,0 +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 { 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 type { ProjectModel } 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 model: ProjectModel,\n services: CommandServices\n) {\n const authData = await isLoggedInToAccount();\n\n if (!authData) {\n throw new CliError({\n code: CliErrorCode.AuthenticationRequired(),\n cause: undefined,\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 cause: undefined,\n });\n },\n NotFound: () => {\n throw new CliError({\n code: CliErrorCode.SiteConfiguredRequired(),\n cause: undefined,\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":";;ogBAAAA,ICAAC,IAMA,IAAAC,EAAuB,SCNvBC,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,EAC1C,MAAO,MACT,CAAC,CACH,EACA,SAAU,IAAM,CACd,MAAM,IAAID,EAAS,CACjB,KAAMC,EAAa,uBAAuB,EAC1C,MAAO,MACT,CAAC,CACH,EACA,SAAU,CAAC,CAAE,KAAAH,CAAK,IAAMA,CAC1B,CAAC,CACH,CCnCAI,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,CHYA,eAAsBC,EACpBC,EACAC,EACAC,EACA,CACA,IAAMC,EAAW,MAAMC,EAAoB,EAE3C,GAAI,CAACD,EACH,MAAM,IAAIE,EAAS,CACjB,KAAMC,EAAa,uBAAuB,EAC1C,MAAO,MACT,CAAC,EAGHJ,EAAS,cAAc,QAAQ,CAAE,GAAIC,EAAS,SAAS,MAAO,CAAC,EAC/DI,EAAcL,EAAS,SAAUC,EAAS,SAAS,MAAM,EAEzD,IAAMK,EAAaC,EAAiB,CAClC,KAAM,aACN,YAAa,IAAMN,EAAS,eAAe,CAC7C,CAAC,EAEKO,EAAO,MAAMC,EAAYV,EAAOO,EAAYR,EAAQ,MAAM,EAC1DY,EAAoBX,EAAM,WAAW,OACxCY,MACC,UAAOA,EAAWC,EAAmB,GAAG,MACxC,UAAOD,EAAWC,EAAmB,KAAK,MAC1C,UAAOD,EAAWC,EAAmB,aAAa,CACtD,EAEM,CAAE,SAAAC,EAAU,iBAAAC,CAAiB,EAAIhB,EAAQ,QAC3C,CAAE,SAAUA,EAAQ,QAAS,iBAAkB,MAAU,EACzD,MAAMiB,EACJhB,EAAM,OAAO,MACbA,EAAM,cACNC,EAAS,SACTM,EACAI,EAAkB,OAAS,CAC7B,EAEEM,EAAM,IAAIC,EAAUX,CAAU,EAE9BY,EAAM,MAAMC,EAAiB,CACjC,MAAApB,EACA,IAAAiB,EACA,SAAAH,EACA,iBAAAC,CACF,CAAC,EACKM,EAAmBC,EAAoB,CAAE,KAAAb,EAAM,MAAAT,EAAO,IAAAmB,CAAI,CAAC,EAEjEI,EAAIF,CAAgB,CACtB","names":["init_esm_shims","init_esm_shims","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","model","services","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 E}from"./chunk-5OZZ7R6I.js";import{a as j,b as y}from"./chunk-PSQ4AQFG.js";import{a as P}from"./chunk-4CCKO52Z.js";import{B as C,D as h,I as w,t as v,xb as I,yb as x}from"./chunk-YMRYABCG.js";import{U as u,Z as g,a as c,b,e as f,f as l}from"./chunk-2W2YJZP5.js";import{e as F,h as s}from"./chunk-V4TR6DCM.js";s();var i=F(b(),1);import{cwd as D}from"node:process";async function M(e,{biLogger:o,errorReporter:r}){r.setContext("app info",{appId:e.config.appId,projectId:e.config.projectId}),o.updateDefaults({_appId:e.config.appId})}function S(e,o){switch(e){case"dev":case"preview":return{is_mocking_values:o.some(r=>r.type==="EmbeddedScript"&&r.paramsOverride)};default:return}}async function T(e,{biLogger:o,errorReporter:r},n,m){await L(e,{biLogger:o,errorReporter:r},async t=>{if(t.components.length===0&&!m?.skipProjectValidation)throw new f({code:l.NoExtensionsFound(),cause:void 0});o.updateDefaults({command:e.name()});let a=w(t.projectFolder);await u(i.default.createElement(v,{value:o},i.default.createElement(C,{value:r},i.default.createElement(h,{onLogin:p=>{r.setUser({id:p.userId}),j(o,p.userId)}},i.default.createElement(g,{messages:E},i.default.createElement(P,{filePath:a},i.default.createElement(x,{value:t,watchForChanges:m?.watchForModelChanges},n)))))))})}async function L(e,o,r){let n=await I(D());await M(n,o),o.biLogger.updateDefaults({command:e.name()});let m=y({biLogger:o.biLogger,command:e,cliVersion:c,flow:"Apps",projectId:n.config.projectId,extensions:n.components.reduce((t,a)=>{let d=t[a.type];return t[a.type]=d?d+1:1,t},{}),extraFields:S(e.name(),n.components)});try{await r(n),m.succeed()}catch(t){throw m.failed(t),t}}export{T as renderCommand,L as runCommand};
4
+ //# sourceMappingURL=render-command-W6CY3R4Q.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 type { DevCenterComponent } from '../dev-center/components/dev-center-component.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\nfunction getExtraBiFields(command: string, components: DevCenterComponent[]) {\n switch (command) {\n case 'dev':\n case 'preview':\n return {\n is_mocking_values: components.some(\n (component) =>\n component.type === 'EmbeddedScript' && component.paramsOverride\n ),\n };\n default:\n return;\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 (model) => {\n if (model.components.length === 0 && !options?.skipProjectValidation) {\n throw new CliError({\n code: CliErrorCode.NoExtensionsFound(),\n cause: undefined,\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: (model: ProjectModel) => 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 extraFields: getExtraBiFields(command.name(), model.components),\n });\n\n try {\n await commandFn(model);\n commandStatus.succeed();\n } catch (e) {\n commandStatus.failed(e);\n throw e;\n }\n}\n"],"mappings":";;iUAAAA,IACA,IAAAC,EAAkB,SADlB,OAAS,OAAAC,MAAW,eA0BpB,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,SAASG,EAAiBC,EAAiBC,EAAkC,CAC3E,OAAQD,EAAS,CACf,IAAK,MACL,IAAK,UACH,MAAO,CACL,kBAAmBC,EAAW,KAC3BC,GACCA,EAAU,OAAS,kBAAoBA,EAAU,cACrD,CACF,EACF,QACE,MACJ,CACF,CAEA,eAAsBC,EACpBH,EACA,CAAE,SAAAH,EAAU,cAAAC,CAAc,EAC1BM,EACAC,EACA,CACA,MAAMC,EAAWN,EAAS,CAAE,SAAAH,EAAU,cAAAC,CAAc,EAAG,MAAOF,GAAU,CACtE,GAAIA,EAAM,WAAW,SAAW,GAAK,CAACS,GAAS,sBAC7C,MAAM,IAAIE,EAAS,CACjB,KAAMC,EAAa,kBAAkB,EACrC,MAAO,MACT,CAAC,EAGHX,EAAS,eAAe,CAAE,QAASG,EAAQ,KAAK,CAAE,CAAC,EAEnD,IAAMS,EAAmBC,EAAoBd,EAAM,aAAa,EAOhE,MAAMe,EACJ,EAAAC,QAAA,cAACC,EAAA,CAAW,MAAOhB,GACjB,EAAAe,QAAA,cAACE,EAAA,CAAsB,MAAOhB,GAC5B,EAAAc,QAAA,cAACG,EAAA,CAAoB,QARNC,GAAuB,CAC1ClB,EAAc,QAAQ,CAAE,GAAIkB,EAAS,MAAO,CAAC,EAC7CC,EAAcpB,EAAUmB,EAAS,MAAM,CACzC,GAMQ,EAAAJ,QAAA,cAACM,EAAA,CAAa,SAAUC,GACtB,EAAAP,QAAA,cAACQ,EAAA,CAAiB,SAAUX,GAC1B,EAAAG,QAAA,cAACS,EAAA,CACC,MAAOzB,EACP,gBAAiBS,GAAS,sBAEzBD,CACH,CACF,CACF,CACF,CACF,CACF,CACF,CACF,CAAC,CACH,CAEA,eAAsBE,EACpBN,EACAsB,EACAC,EACA,CACA,IAAM3B,EAAQ,MAAM4B,EAAiBC,EAAI,CAAC,EAE1C,MAAM9B,EAAaC,EAAO0B,CAAQ,EAElCA,EAAS,SAAS,eAAe,CAC/B,QAAStB,EAAQ,KAAK,CACxB,CAAC,EAED,IAAM0B,EAAgBC,EAAwB,CAC5C,SAAUL,EAAS,SACnB,QAAAtB,EACA,WAAY4B,EACZ,KAAM,OACN,UAAWhC,EAAM,OAAO,UACxB,WAAYA,EAAM,WAAW,OAA+B,CAACiC,EAAKC,IAAS,CACzE,IAAMC,EAAQF,EAAIC,EAAK,IAAI,EAC3B,OAAAD,EAAIC,EAAK,IAAI,EAAIC,EAAQA,EAAQ,EAAI,EAC9BF,CACT,EAAG,CAAC,CAAC,EACL,YAAa9B,EAAiBC,EAAQ,KAAK,EAAGJ,EAAM,UAAU,CAChE,CAAC,EAED,GAAI,CACF,MAAM2B,EAAU3B,CAAK,EACrB8B,EAAc,QAAQ,CACxB,OAASM,EAAG,CACV,MAAAN,EAAc,OAAOM,CAAC,EAChBA,CACR,CACF","names":["init_esm_shims","import_react","cwd","initServices","model","biLogger","errorReporter","getExtraBiFields","command","components","component","renderCommand","tree","options","runCommand","CliError","CliErrorCode","debugLogFilePath","getDebugLogFilePath","render","React","BiProvider","ErrorReporterProvider","AccountAuthProvider","userInfo","addUserFields","I18nProvider","messages_default","DebugLogProvider","ProjectModelProvider","services","commandFn","loadProjectModel","cwd","commandStatus","reportCommandStartEvent","version","acc","item","value","e"]}
@@ -51,23 +51,23 @@ const replaceMethodsOnElement = (
51
51
  }
52
52
 
53
53
  const instanceSymbols = Object.getOwnPropertySymbols(newClass);
54
- instanceSymbols.forEach((symbol) => {
54
+ for (const symbol of instanceSymbols) {
55
55
  //@ts-expect-error using symbol as index
56
56
  Object.defineProperty(elementNode, symbol, instanceDescriptors[symbol]);
57
- });
57
+ }
58
58
 
59
- const prototypeDecriptors = Object.getOwnPropertyDescriptors(
59
+ const prototypeDescriptors = Object.getOwnPropertyDescriptors(
60
60
  newClass.prototype
61
61
  );
62
- for (const [name, descriptor] of Object.entries(prototypeDecriptors)) {
62
+ for (const [name, descriptor] of Object.entries(prototypeDescriptors)) {
63
63
  Object.defineProperty(elementNode, name, descriptor);
64
64
  }
65
65
 
66
66
  const prototypeSymbols = Object.getOwnPropertySymbols(newClass.prototype);
67
- prototypeSymbols.forEach((symbol) => {
67
+ for (const symbol of prototypeSymbols) {
68
68
  //@ts-expect-error using symbol as index
69
- Object.defineProperty(elementNode, symbol, prototypeDecriptors[symbol]);
70
- });
69
+ Object.defineProperty(elementNode, symbol, prototypeDescriptors[symbol]);
70
+ }
71
71
  };
72
72
 
73
73
  function visitPrototypeChain(
@@ -82,9 +82,9 @@ function visitPrototypeChain(
82
82
  currentClass = Object.getPrototypeOf(currentClass);
83
83
  }
84
84
 
85
- inheritanceArray.forEach((classForVisiting) => {
85
+ for (const classForVisiting of inheritanceArray) {
86
86
  visitFn(classForVisiting);
87
- });
87
+ }
88
88
  }
89
89
 
90
90
  export function applyCustomElementHmr(
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wix/cli-app",
3
3
  "description": "CLI tool for Wix apps",
4
- "version": "1.1.52",
4
+ "version": "1.1.53",
5
5
  "author": "Amit Dahan",
6
6
  "dependencies": {
7
7
  "esbuild": "^0.21.3",
@@ -14,12 +14,12 @@
14
14
  "@types/mustache": "^4.2.5",
15
15
  "@types/react": "^18.3.3",
16
16
  "@wix/ambassador-cli-site-override-service-v1-site-override": "^1.0.6",
17
- "@wix/ambassador-ctp-app-cloud-backend-service-v1-app-cloud-backend-deployment": "^1.0.5",
17
+ "@wix/ambassador-ctp-app-cloud-backend-service-v1-app-cloud-backend-deployment": "^1.0.6",
18
18
  "@wix/ambassador-ctp-gradual-rollout-v1-app-config": "^1.0.67",
19
- "@wix/ambassador-devcenter-components-v1-component": "^1.0.430",
19
+ "@wix/ambassador-devcenter-components-v1-component": "^1.0.431",
20
20
  "@wix/app-cloud-uploader": "^1.12.0",
21
21
  "@wix/arm-client": "0.0.0",
22
- "@wix/bi-logger-dev-tools-data": "^1.68.0",
22
+ "@wix/bi-logger-dev-tools-data": "^1.72.0",
23
23
  "@wix/cli-app-definitions": "0.0.0",
24
24
  "@wix/cli-app-manifest": "1.0.0",
25
25
  "@wix/cli-app-platform-sdk": "0.0.0",
@@ -139,5 +139,5 @@
139
139
  ]
140
140
  }
141
141
  },
142
- "falconPackageHash": "0a6eadfcc4f96b278d8b30f9315f88ca3041fa0eb67a4c543d86abce"
142
+ "falconPackageHash": "f49be3a39078e522a0609b3f735f7125add62984ae747996d97a52ae"
143
143
  }
@@ -10,7 +10,7 @@ type Props = {
10
10
  name: string;
11
11
  };
12
12
 
13
- // To learn more about \"<%- widgetName %>\" go to our docs: <%- widgetDocsLink %>
13
+ // To learn more about "<%- widgetName %>" go to our docs: <%- widgetDocsLink %>
14
14
  const CustomElement: FC<Props> = (props) => {
15
15
  return (
16
16
  <div className={styles.root}>
@@ -1,4 +0,0 @@
1
- import { createRequire as _createRequire } from 'node:module';
2
- const require = _createRequire(import.meta.url);
3
- import{a as J}from"./chunk-EWA6OFAF.js";import"./chunk-WJTPY35F.js";import{C as N,Sa as z,Ta as G,Ua as H,Za as q,_a as U,ub as V}from"./chunk-X3ZYER2U.js";import{A as f,O as D,R as F,V as A,W as R,b as k,c as _,e as h,f as x,m as r,x as u}from"./chunk-522ULCVX.js";import{e as L,h as g}from"./chunk-V4TR6DCM.js";g();g();var e=L(k(),1),E=L(_(),1);g();var l=L(k(),1);import{createServer as ie}from"node:http";var Y=L(_(),1);g();var y=L(_(),1),Z=r.any(),ee=r.enum(["info","error","warn","debug","log"]),oe=r.object({message:r.array(Z),level:ee,timestamp:r.number()}),re=r.object({stack:r.string(),name:r.string(),message:r.string(),timestamp:r.number()}),te=r.object({_type:r.literal("log"),exceptions:r.array(re),logs:r.array(oe)}).passthrough(),ne=r.object({_type:r.literal("session-timeout")}).passthrough(),se=r.discriminatedUnion("_type",[te,ne]),K=(0,y.variant)({Log:(0,y.fields)(),Exception:(0,y.fields)()}),B="/logs",$=(n,s)=>{let i,d;if(n.method==="POST"&&n.url===B){let m="";n.on("data",t=>{m+=t.toString()}),n.on("end",()=>{let t;try{t=se.parse(JSON.parse(m))}catch(o){return d(x.FailedToParseLog(),o,{body:m}),s.statusCode=400,s.end()}let p=[];t._type==="log"&&(p.push(...t.exceptions.map(o=>K.Exception(o))),p.push(...t.logs.map(o=>K.Log(o)))),(0,y.match)(t._type,{log:()=>{i(p)},"session-timeout":()=>{s.statusCode=200,s.end(),d(x.LogsConnectionTimeout(),{},{body:m})}}),s.statusCode=200,s.end()})}else s.statusCode=404,s.end("Not Found");let c={onLog:m=>(i=m,c),onError:m=>(d=m,c)};return c};var me=/([0-9a-f-]{36})/,Q=({onLog:n,version:s,appId:i})=>{let{reportError:d}=N(),{getAppByVersion:c}=H(),m=J(),t=G({type:"backoffice"}),p=(0,l.useRef)(),o=(0,l.useMemo)(()=>ie((a,w)=>{$(a,w).onLog(n).onError((I,M,v)=>{throw o.close(),new h({code:I,cause:M,info:v})})}),[n]),O=(0,l.useMemo)(()=>new Promise(a=>{p.current=a}),[]);(0,l.useEffect)(()=>(o.listen(0,async()=>{let a=o.address().port;p.current?.(a)}),()=>{o.listening&&o.close()}),[o]);let{status:S}=F(async()=>{let a=await O,{url:w}=await m(a),{data:I}=await c({appId:i,version:s}),M=I.components.find(b=>b.compType===z.TOPOLOGY),v=me.exec(M?.compData.topology.topology.backendApiUrl??"");if(!v?.[1])throw new h({code:x.FailedToGetLogsTopology()});let j=v[1],X={appId:i,deploymentId:j,destinationUrl:new URL(B,w).href};try{await t.request(q(X))}catch(b){throw o.close(),new h({code:x.FailedToConnectToLogsService(),cause:b})}return j},[]);return(0,l.useEffect)(()=>()=>{(0,Y.isType)(S,"Success")&&t.request(U({appId:i,deploymentId:S.result})).catch(d)},[]),S};g();var W=L(k(),1);var P=({message:n,level:s})=>{let i="unknown";return typeof n=="object"?i=JSON.stringify(n):i=String(n),W.default.createElement(f,{skin:s==="error"?"error":"standard"},i)};var pe=({version:n})=>{let{model:s}=V(),{t:i}=R(),[d,c]=(0,e.useState)([]),m=Q({appId:s.config.appId,version:n,onLog:(0,e.useCallback)(t=>{c(p=>[...p,...t])},[c])});return(0,E.match)(m,{Success:()=>e.default.createElement(u,{marginTop:1,marginBottom:1,flexDirection:"column"},e.default.createElement(u,{marginBottom:1,flexDirection:"column"},e.default.createElement(f,null,e.default.createElement(A,{i18nKey:"logs_command.listening_to_logs"})),e.default.createElement(f,null,e.default.createElement(A,{i18nKey:"logs_command.prod_env_logs",values:{version:n}}))),d.map((t,p)=>e.default.createElement(u,{key:p,flexDirection:"column"},e.default.createElement(u,{columnGap:1},e.default.createElement(u,{flexShrink:0},e.default.createElement(f,{skin:"secondary"},new Date(t.timestamp).toLocaleTimeString())),e.default.createElement(u,{columnGap:1},(0,E.match)(t,{Log:({message:o,level:O})=>o.map((S,a)=>e.default.createElement(P,{key:`${p}-${a}`,message:S,level:O})),Exception:({message:o})=>e.default.createElement(P,{key:p,message:o,level:"error"})}))),(0,E.match)(t,{Log:()=>null,Exception:({stack:o})=>e.default.createElement(f,{skin:"error"},o)})))),Loading:()=>e.default.createElement(D,{text:i("logs_command.connecting")}),Error:()=>null})};export{pe as LogsCommand};
4
- //# sourceMappingURL=LogsCommand-J3PHRUGE.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/LogsCommand/index.ts","../src/components/LogsCommand/LogsCommand.tsx","../src/components/LogsCommand/useLogsServer.ts","../src/components/LogsCommand/logsReqHandler.ts","../src/components/LogsCommand/ServerLogMessage.tsx"],"sourcesContent":["export { LogsCommand } from './LogsCommand.js';\n","import type { FC } from 'react';\nimport React, { useState, useCallback } from 'react';\nimport { match } from 'variant';\nimport { Spinner, Box, Text } from '@wix/cli-ui-kit';\nimport { useTranslation, Trans } from '@wix/cli-i18n';\nimport { useLogsServer } from './useLogsServer.js';\nimport type { AggregatedLog } from './logsReqHandler.js';\nimport { ServerLogMessage } from './ServerLogMessage.js';\nimport { useProjectModel } from '../../model.js';\n\nexport const LogsCommand: FC<{\n version: string;\n}> = ({ version }) => {\n const { model } = useProjectModel();\n const { t } = useTranslation();\n const [logs, setLogs] = useState<AggregatedLog[]>([]);\n const serverResult = useLogsServer({\n appId: model.config.appId,\n version,\n onLog: useCallback(\n (serverLogs) => {\n setLogs((prevLogs) => {\n return [...prevLogs, ...serverLogs];\n });\n },\n [setLogs]\n ),\n });\n\n return match(serverResult, {\n Success: () => (\n <Box marginTop={1} marginBottom={1} flexDirection=\"column\">\n <Box marginBottom={1} flexDirection=\"column\">\n <Text>\n <Trans i18nKey=\"logs_command.listening_to_logs\" />\n </Text>\n <Text>\n <Trans i18nKey=\"logs_command.prod_env_logs\" values={{ version }} />\n </Text>\n </Box>\n\n {logs.map((log, logIdx) => (\n <Box key={logIdx} flexDirection=\"column\">\n <Box columnGap={1}>\n <Box flexShrink={0}>\n <Text skin=\"secondary\">\n {new Date(log.timestamp).toLocaleTimeString()}\n </Text>\n </Box>\n <Box columnGap={1}>\n {match(log, {\n Log: ({ message, level }) =>\n message.map((msgItem, idx) => (\n <ServerLogMessage\n key={`${logIdx}-${idx}`}\n message={msgItem}\n level={level}\n />\n )),\n Exception: ({ message }) => (\n <ServerLogMessage\n key={logIdx}\n message={message}\n level=\"error\"\n />\n ),\n })}\n </Box>\n </Box>\n {match(log, {\n Log: () => null,\n Exception: ({ stack }) => <Text skin=\"error\">{stack}</Text>,\n })}\n </Box>\n ))}\n </Box>\n ),\n Loading: () => <Spinner text={t('logs_command.connecting')} />,\n Error: () => null,\n });\n};\n","import { useEffect, useMemo, useRef } from 'react';\nimport { createServer } from 'node:http';\nimport type { AddressInfo } from 'node:net';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { useAsync } from '@wix/cli-ui-kit';\nimport { useErrorReporter } from '@wix/cli-error-reporting';\nimport { useHttpClient } from '@wix/cli-http-client-react';\nimport {\n attachLogger,\n deattachLogger,\n} from '@wix/ambassador-ctp-app-cloud-backend-service-v1-app-cloud-backend-deployment/http';\nimport { useTunnel } from '@wix/cli-tunnel';\nimport { useDevCenterClient, ComponentType } from '@wix/dev-center-client';\nimport type { TopologyComponent } from '@wix/dev-center-client';\nimport { isType } from 'variant';\nimport type { OnLog } from './logsReqHandler.js';\nimport { LOGS_ENDPOINT, logsReqHandler } from './logsReqHandler.js';\n\nconst deploymentIdRegex = /([0-9a-f-]{36})/;\n\nexport const useLogsServer = ({\n onLog,\n version,\n appId,\n}: {\n onLog: OnLog;\n version: string;\n appId: string;\n}) => {\n const { reportError } = useErrorReporter();\n const { getAppByVersion } = useDevCenterClient();\n const createTunnelClient = useTunnel();\n const httpClient = useHttpClient({ type: 'backoffice' });\n const localServerPortResolverRef = useRef<(port: number) => void>();\n\n const server = useMemo(() => {\n return createServer((req, res) => {\n logsReqHandler(req, res)\n .onLog(onLog)\n .onError((code, err, info) => {\n server.close();\n throw new CliError({ code, cause: err, info });\n });\n });\n }, [onLog]);\n\n const localServerPortPromise = useMemo(() => {\n return new Promise<number>((resolve) => {\n localServerPortResolverRef.current = resolve;\n });\n }, []);\n\n useEffect(() => {\n server.listen(0, async () => {\n const port = (server.address() as AddressInfo).port;\n localServerPortResolverRef.current?.(port);\n });\n return () => {\n if (server.listening) {\n server.close();\n }\n };\n }, [server]);\n\n const { status } = useAsync(async () => {\n const localServerPort = await localServerPortPromise;\n const { url: tunnelUrl } = await createTunnelClient(localServerPort);\n const { data } = await getAppByVersion({ appId, version });\n\n const topologyComponent = data.components.find(\n (component): component is TopologyComponent => {\n return component.compType === ComponentType.TOPOLOGY;\n }\n );\n const match = deploymentIdRegex.exec(\n topologyComponent?.compData.topology.topology.backendApiUrl ?? ''\n );\n\n if (!match?.[1]) {\n throw new CliError({\n code: CliErrorCode.FailedToGetLogsTopology(),\n });\n }\n const deploymentId = match[1];\n\n const loggerReq = {\n appId,\n deploymentId,\n destinationUrl: new URL(LOGS_ENDPOINT, tunnelUrl).href,\n };\n\n try {\n await httpClient.request(attachLogger(loggerReq));\n } catch (error) {\n server.close();\n throw new CliError({\n code: CliErrorCode.FailedToConnectToLogsService(),\n cause: error,\n });\n }\n\n return deploymentId;\n }, []);\n\n useEffect(() => {\n // Logs should be deattached only on unmount.\n // This is why this `useEffect` has only `return` statement.\n return () => {\n if (isType(status, 'Success')) {\n httpClient\n .request(\n deattachLogger({\n appId,\n deploymentId: status.result,\n })\n )\n .catch(reportError);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return status;\n};\n","import type { IncomingMessage, ServerResponse } from 'node:http';\nimport type { CliErrorCodeType } from '@wix/cli-error';\nimport { CliErrorCode } from '@wix/cli-error';\nimport { z } from 'zod';\nimport { variant, fields, match } from 'variant';\nimport type { VariantOf } from 'variant';\n\nconst LogMessageSchema = z.any();\nexport type LogMessage = z.infer<typeof LogMessageSchema>;\n\nconst LogMessageLevelSchema = z.enum(['info', 'error', 'warn', 'debug', 'log']);\nexport type LogMessageLevel = z.infer<typeof LogMessageLevelSchema>;\n\nconst LogItemSchema = z.object({\n message: z.array(LogMessageSchema),\n level: LogMessageLevelSchema,\n timestamp: z.number(),\n});\n\ntype LogItem = z.infer<typeof LogItemSchema>;\n\nconst ExceptionItemSchema = z.object({\n stack: z.string(),\n name: z.string(),\n message: z.string(),\n timestamp: z.number(),\n});\n\ntype ExceptionItem = z.infer<typeof ExceptionItemSchema>;\n\nconst LogResponseSchema = z\n .object({\n _type: z.literal('log'),\n exceptions: z.array(ExceptionItemSchema),\n logs: z.array(LogItemSchema),\n })\n .passthrough();\n\nconst SessionTimeoutResponseSchema = z\n .object({\n _type: z.literal('session-timeout'),\n })\n .passthrough();\n\nconst ServerLogResponseSchema = z.discriminatedUnion('_type', [\n LogResponseSchema,\n SessionTimeoutResponseSchema,\n]);\n\ntype ServerLogResponse = z.infer<typeof ServerLogResponseSchema>;\n\nconst AggregatedLog = variant({\n Log: fields<LogItem>(),\n Exception: fields<ExceptionItem>(),\n});\nexport type AggregatedLog = VariantOf<typeof AggregatedLog>;\n\nexport type OnLog = (data: AggregatedLog[]) => void;\ntype OnError = (\n errType: CliErrorCodeType,\n err: unknown,\n info?: Record<string, unknown>\n) => void;\n\nexport const LOGS_ENDPOINT = '/logs';\n\nexport const logsReqHandler = (req: IncomingMessage, res: ServerResponse) => {\n let onLog: OnLog;\n let onError: OnError;\n\n if (req.method === 'POST' && req.url === LOGS_ENDPOINT) {\n let body = '';\n\n req.on('data', (chunk) => {\n body += chunk.toString();\n });\n\n req.on('end', () => {\n let parsedBody: ServerLogResponse;\n try {\n parsedBody = ServerLogResponseSchema.parse(JSON.parse(body));\n } catch (err) {\n onError(CliErrorCode.FailedToParseLog(), err, { body });\n res.statusCode = 400;\n return res.end();\n }\n\n const resultLogs: AggregatedLog[] = [];\n\n if (parsedBody._type === 'log') {\n resultLogs.push(\n ...parsedBody.exceptions.map((exception) =>\n AggregatedLog.Exception(exception)\n )\n );\n resultLogs.push(\n ...parsedBody.logs.map((log) => AggregatedLog.Log(log))\n );\n }\n\n match(parsedBody._type, {\n log: () => {\n onLog(resultLogs);\n },\n 'session-timeout': () => {\n res.statusCode = 200;\n res.end();\n\n onError(CliErrorCode.LogsConnectionTimeout(), {}, { body });\n },\n });\n\n res.statusCode = 200;\n res.end();\n });\n } else {\n res.statusCode = 404;\n res.end('Not Found');\n }\n\n const api = {\n onLog: (callback: OnLog) => {\n onLog = callback;\n return api;\n },\n onError: (callback: OnError) => {\n onError = callback;\n return api;\n },\n };\n\n return api;\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { Text } from '@wix/cli-ui-kit';\nimport type { LogMessage, LogMessageLevel } from './logsReqHandler.js';\n\nexport const ServerLogMessage: FC<{\n message: LogMessage;\n level: LogMessageLevel;\n}> = ({ message, level }) => {\n let content = 'unknown';\n\n if (typeof message === 'object') {\n content = JSON.stringify(message);\n } else {\n content = String(message);\n }\n\n return <Text skin={level === 'error' ? 'error' : 'standard'}>{content}</Text>;\n};\n"],"mappings":"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","names":["init_esm_shims","init_esm_shims","import_react","import_variant","init_esm_shims","import_react","createServer","import_variant","init_esm_shims","import_variant","LogMessageSchema","z","LogMessageLevelSchema","LogItemSchema","ExceptionItemSchema","LogResponseSchema","SessionTimeoutResponseSchema","ServerLogResponseSchema","AggregatedLog","LOGS_ENDPOINT","logsReqHandler","req","res","onLog","onError","body","chunk","parsedBody","err","CliErrorCode","resultLogs","exception","log","api","callback","deploymentIdRegex","useLogsServer","onLog","version","appId","reportError","useErrorReporter","getAppByVersion","useDevCenterClient","createTunnelClient","useTunnel","httpClient","useHttpClient","localServerPortResolverRef","server","createServer","req","res","logsReqHandler","code","err","info","CliError","localServerPortPromise","resolve","port","status","useAsync","localServerPort","tunnelUrl","data","topologyComponent","component","ComponentType","match","CliErrorCode","deploymentId","loggerReq","LOGS_ENDPOINT","attachLogger","error","deattachLogger","init_esm_shims","import_react","ServerLogMessage","message","level","content","React","Text","LogsCommand","version","model","useProjectModel","t","useTranslation","logs","setLogs","serverResult","useLogsServer","serverLogs","prevLogs","React","Box_default","Text","Trans","log","logIdx","message","level","msgItem","idx","ServerLogMessage","stack","Spinner"]}
@@ -1,4 +0,0 @@
1
- import { createRequire as _createRequire } from 'node:module';
2
- const require = _createRequire(import.meta.url);
3
- import{a}from"./chunk-FMTROGFZ.js";import"./chunk-ZCIEKIRM.js";import"./chunk-WLHVYK7Z.js";import"./chunk-2R6WOCA4.js";import"./chunk-2YXY5Y3Z.js";import"./chunk-RWTMPGYF.js";import"./chunk-2LPICRGU.js";import"./chunk-EWA6OFAF.js";import"./chunk-WJTPY35F.js";import"./chunk-NEWE3FX5.js";import"./chunk-ATQCL6AZ.js";import"./chunk-UKELYG5A.js";import"./chunk-X3ZYER2U.js";import"./chunk-522ULCVX.js";import"./chunk-V4TR6DCM.js";export{a as PreviewCommand};
4
- //# sourceMappingURL=PreviewCommand-JYIGS25E.js.map
@@ -1,4 +0,0 @@
1
- import { createRequire as _createRequire } from 'node:module';
2
- const require = _createRequire(import.meta.url);
3
- import{a as W,b as q}from"./chunk-ZCIEKIRM.js";import{c as L}from"./chunk-WLHVYK7Z.js";import{a as b}from"./chunk-CMBEPCWL.js";import{b as U}from"./chunk-2YXY5Y3Z.js";import{g as k,h as K,j as N,k as V,l as f,m as D}from"./chunk-RWTMPGYF.js";import"./chunk-2LPICRGU.js";import"./chunk-EWA6OFAF.js";import"./chunk-WJTPY35F.js";import"./chunk-NEWE3FX5.js";import{a as M,b as h,e as j}from"./chunk-ATQCL6AZ.js";import"./chunk-UKELYG5A.js";import{ub as u}from"./chunk-X3ZYER2U.js";import{A as I,B as y,C as B,E as T,N as _,O,R as A,V as c,W as F,b as a,c as ee,x as m}from"./chunk-522ULCVX.js";import{e as s,h as o}from"./chunk-V4TR6DCM.js";o();o();var g=s(a(),1);o();var n=s(a(),1),G=s(ee(),1);o();var i=s(a(),1);import{preview as re}from"vite";function z(){let t=(0,i.useRef)(),{model:r}=u();(0,i.useEffect)(()=>()=>{t.current?.httpServer.close()},[]);let v=(0,i.useMemo)(()=>b({timestamp:!0}),[]);return(0,i.useCallback)(async()=>{let p=await re(await h(r,{type:"build",customLogger:v}));return t.current=p,M(p)},[r,v])}var H=(0,n.createContext)(null),w=({children:t})=>{let{model:r}=u(),{t:v}=F(),{site:p}=f(),Q=k(),{createOverride:X}=N(),Y=z(),{status:Z}=A(async()=>{await W(r.projectFolder);let d=await Y(),x=await U(r.projectFolder),P=j(x,d),$=await Q.createAppRelease(P,r.config.projectId),E=V(r),{id:R}=E?await X({appId:r.config.appId,siteId:p.id,overrides:E}):await Promise.resolve({id:void 0});return{armTag:$,serverUrl:d,siteOverrideId:R}},[]);return(0,G.match)(Z,{Error:()=>null,Loading:()=>n.default.createElement(O,{text:v("serve_command.starting_serve_environment")}),Success:({result:{armTag:d,serverUrl:x,siteOverrideId:P}})=>n.default.createElement(H.Provider,{value:{serverUrl:x}},n.default.createElement(D,{siteOverrideId:P},n.default.createElement(K,{armTag:d},t)))})};function C(){let t=(0,n.useContext)(H);if(t===null)throw new Error("useServeEnvironment() cannot be used without an <ServeEnvironmentProvider>");return t}o();var e=s(a(),1);function J(){let{site:t}=f(),{serverUrl:r}=C();return e.default.createElement(m,{flexDirection:"column"},e.default.createElement(m,{gap:1},e.default.createElement(I,{skin:"success"},e.default.createElement(T,null)),e.default.createElement(c,{i18nKey:"serve_command.starting_serve_environment_success",components:[e.default.createElement(_,{url:r})]})),e.default.createElement(m,{gap:1},e.default.createElement(y,null),e.default.createElement(c,{i18nKey:"serve_command.production_build"})),e.default.createElement(m,{gap:1,paddingTop:1,paddingBottom:1},e.default.createElement(B,null),e.default.createElement(c,{i18nKey:"general.dev_site.current",values:{name:t.displayName}})),e.default.createElement(m,{paddingBottom:1,flexDirection:"column"},e.default.createElement(q,null)))}var oe=()=>g.default.createElement(L,null,g.default.createElement(w,null,g.default.createElement(J,null)));export{oe as ServeCommand,w as ServeEnvironmentProvider,C as useServeEnvironment};
4
- //# sourceMappingURL=ServeCommand-LEJRJ2CR.js.map
@@ -1,4 +0,0 @@
1
- import { createRequire as _createRequire } from 'node:module';
2
- const require = _createRequire(import.meta.url);
3
- import{a as w}from"./chunk-CMBEPCWL.js";import{a as s}from"./chunk-2YXY5Y3Z.js";import{b as d,c as l,h as u,j as f,k as g}from"./chunk-ATQCL6AZ.js";import"./chunk-UKELYG5A.js";import{Aa as r,ab as a,sb as m}from"./chunk-X3ZYER2U.js";import{c as h,e as t,f as i}from"./chunk-522ULCVX.js";import{e as A,h as c}from"./chunk-V4TR6DCM.js";c();import{cwd as y}from"node:process";import{build as C}from"vite";var n=A(h(),1);async function R(){let o=await m(y());if(o.components.length===0)throw new t({code:i.NoExtensionsFound()});u(o.components);let _=o.components.filter(e=>(0,n.isType)(e,r.Api)||(0,n.isType)(e,r.Event)||(0,n.isType)(e,r.ServicePlugin)),p=w(),B=_.length>0?await C(await l(o,{type:"build",customLogger:p},{appSecret:"__APP_SECRET__",webhookPublicKey:"__WEBHOOK_PUBLIC_KEY__"})).catch(e=>{throw new t({code:i.FailedToBuildApp({cause:e}),cause:e})}):void 0,E=await C(await d(o,{type:"build",customLogger:p},{baseBackendUrl:a})).catch(e=>{throw new t({code:i.FailedToBuildApp({cause:e}),cause:e})}),b=await f({appId:o.config.appId,components:o.components,sentryDSN:o.config.sentryDSN,componentSourceBuilder:g(o,{clientBuildOutput:E},{backendBuildOutput:B})});await s({projectFolder:o.projectFolder,manifest:b})}export{R as build};
4
- //# sourceMappingURL=build-YPC7VLOB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/build.ts"],"sourcesContent":["import { cwd } from 'node:process';\nimport { build as viteBuild } from 'vite';\nimport { CliError, CliErrorCode } from '@wix/cli-error';\nimport { isType } from 'variant';\nimport { loadProjectModel } from './model.js';\nimport { getBackendViteConfig, getClientViteConfig } from './vite/index.js';\nimport { writeAppManifestFile } from './app-manifest/file.js';\nimport { createAppManifest } from './app-manifest/create.js';\nimport { getComponentSourceBuilder } from './app-manifest/component-source.js';\nimport { ConfigType } from './vite/vite-config-options.js';\nimport { validateComponents } from './app-manifest/validate.js';\nimport { API_BASEURL_PLACEHOLDER } from './hosting/upload-application.js';\nimport { DevCenterComponent } from './dev-center/components/dev-center-component.js';\nimport { createLogger } from './vite/logger.js';\n\nexport async function build() {\n const projectModel = await loadProjectModel(cwd());\n\n // Validate before building the project, to fail fast in case of a validation issue\n if (projectModel.components.length === 0) {\n throw new CliError({\n code: CliErrorCode.NoExtensionsFound(),\n });\n }\n\n validateComponents(projectModel.components);\n\n const backendComponents = projectModel.components.filter(\n (component) =>\n isType(component, DevCenterComponent.Api) ||\n isType(component, DevCenterComponent.Event) ||\n isType(component, DevCenterComponent.ServicePlugin)\n );\n\n const logger = createLogger();\n\n const backendBuildOutput =\n backendComponents.length > 0\n ? await viteBuild(\n await getBackendViteConfig(\n projectModel,\n { type: ConfigType.build, customLogger: logger },\n {\n appSecret: '__APP_SECRET__',\n webhookPublicKey: '__WEBHOOK_PUBLIC_KEY__',\n }\n )\n ).catch((e: unknown) => {\n throw new CliError({\n code: CliErrorCode.FailedToBuildApp({ cause: e }),\n cause: e,\n });\n })\n : undefined;\n\n const clientBuildOutput = await viteBuild(\n await getClientViteConfig(\n projectModel,\n {\n type: ConfigType.build,\n customLogger: logger,\n },\n {\n baseBackendUrl: API_BASEURL_PLACEHOLDER,\n }\n )\n ).catch((e: unknown) => {\n throw new CliError({\n code: CliErrorCode.FailedToBuildApp({ cause: e }),\n cause: e,\n });\n });\n\n const manifest = await createAppManifest({\n appId: projectModel.config.appId,\n components: projectModel.components,\n sentryDSN: projectModel.config.sentryDSN,\n componentSourceBuilder: getComponentSourceBuilder(\n projectModel,\n { clientBuildOutput },\n { backendBuildOutput }\n ),\n });\n\n await writeAppManifestFile({\n projectFolder: projectModel.projectFolder,\n manifest,\n });\n}\n"],"mappings":";;8UAAAA,IAAA,OAAS,OAAAC,MAAW,eACpB,OAAS,SAASC,MAAiB,OAEnC,IAAAC,EAAuB,SAYvB,eAAsBC,GAAQ,CAC5B,IAAMC,EAAe,MAAMC,EAAiBC,EAAI,CAAC,EAGjD,GAAIF,EAAa,WAAW,SAAW,EACrC,MAAM,IAAIG,EAAS,CACjB,KAAMC,EAAa,kBAAkB,CACvC,CAAC,EAGHC,EAAmBL,EAAa,UAAU,EAE1C,IAAMM,EAAoBN,EAAa,WAAW,OAC/CO,MACC,UAAOA,EAAWC,EAAmB,GAAG,MACxC,UAAOD,EAAWC,EAAmB,KAAK,MAC1C,UAAOD,EAAWC,EAAmB,aAAa,CACtD,EAEMC,EAASC,EAAa,EAEtBC,EACJL,EAAkB,OAAS,EACvB,MAAMM,EACJ,MAAMC,EACJb,EACA,CAAE,aAAwB,aAAcS,CAAO,EAC/C,CACE,UAAW,iBACX,iBAAkB,wBACpB,CACF,CACF,EAAE,MAAO,GAAe,CACtB,MAAM,IAAIN,EAAS,CACjB,KAAMC,EAAa,iBAAiB,CAAE,MAAO,CAAE,CAAC,EAChD,MAAO,CACT,CAAC,CACH,CAAC,EACD,OAEAU,EAAoB,MAAMF,EAC9B,MAAMC,EACJb,EACA,CACE,aACA,aAAcS,CAChB,EACA,CACE,eAAgBM,CAClB,CACF,CACF,EAAE,MAAO,GAAe,CACtB,MAAM,IAAIZ,EAAS,CACjB,KAAMC,EAAa,iBAAiB,CAAE,MAAO,CAAE,CAAC,EAChD,MAAO,CACT,CAAC,CACH,CAAC,EAEKY,EAAW,MAAMC,EAAkB,CACvC,MAAOjB,EAAa,OAAO,MAC3B,WAAYA,EAAa,WACzB,UAAWA,EAAa,OAAO,UAC/B,uBAAwBkB,EACtBlB,EACA,CAAE,kBAAAc,CAAkB,EACpB,CAAE,mBAAAH,CAAmB,CACvB,CACF,CAAC,EAED,MAAMQ,EAAqB,CACzB,cAAenB,EAAa,cAC5B,SAAAgB,CACF,CAAC,CACH","names":["init_esm_shims","cwd","viteBuild","import_variant","build","projectModel","loadProjectModel","cwd","CliError","CliErrorCode","validateComponents","backendComponents","component","DevCenterComponent","logger","createLogger","backendBuildOutput","viteBuild","getViteConfig","clientBuildOutput","API_BASEURL_PLACEHOLDER","manifest","createAppManifest","getComponentSourceBuilder","writeAppManifestFile"]}