@wix/cli-app 1.1.52 → 1.1.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -0
- package/build/{CreateVersionCommand-HVC5JTAL.js → CreateVersionCommand-XTZT5DED.js} +2 -2
- package/build/{DevCommand-RTZ66W3P.js → DevCommand-Q5XLAGMG.js} +2 -2
- package/build/DevCommand-Q5XLAGMG.js.map +1 -0
- package/build/GenerateCommand-HNFICZJA.js +128 -0
- package/build/{GenerateCommand-J4FYPLSB.js.map → GenerateCommand-HNFICZJA.js.map} +1 -1
- package/build/LogsCommand-XJHE75L2.js +4 -0
- package/build/LogsCommand-XJHE75L2.js.map +1 -0
- package/build/PreviewCommand-JKPFMGWV.js +4 -0
- package/build/ServeCommand-CPZOI7DC.js +4 -0
- package/build/ServeCommand-CPZOI7DC.js.map +1 -0
- package/build/build-3RXHADZD.js +4 -0
- package/build/build-3RXHADZD.js.map +1 -0
- package/build/chunk-2FB5F5QF.js +4 -0
- package/build/{chunk-2R6WOCA4.js → chunk-4BHNJVL2.js} +2 -2
- package/build/{chunk-KNH7RNAZ.js → chunk-5OZZ7R6I.js} +2 -2
- package/build/chunk-5OZZ7R6I.js.map +1 -0
- package/build/{chunk-6ZJVIMV7.js → chunk-6HSUK2A2.js} +2 -2
- package/build/{chunk-EWA6OFAF.js → chunk-7VOKCPZP.js} +3 -3
- package/build/{chunk-EWA6OFAF.js.map → chunk-7VOKCPZP.js.map} +1 -1
- package/build/{chunk-2LPICRGU.js → chunk-B4SDDVMV.js} +2 -2
- package/build/{chunk-UKELYG5A.js → chunk-C4SXZWXS.js} +2 -2
- package/build/{chunk-NEWE3FX5.js → chunk-FKBCPMYK.js} +3 -3
- package/build/chunk-FKBCPMYK.js.map +1 -0
- package/build/chunk-FMIXY6J5.js +115 -0
- package/build/chunk-FMIXY6J5.js.map +1 -0
- package/build/chunk-GWU77DPO.js +4 -0
- package/build/chunk-GWU77DPO.js.map +1 -0
- package/build/{chunk-CMBEPCWL.js → chunk-HDXLQ34N.js} +2 -2
- package/build/chunk-JXE3LQ2S.js +100 -0
- package/build/chunk-JXE3LQ2S.js.map +1 -0
- package/build/chunk-K2A77MMN.js +4 -0
- package/build/chunk-K2A77MMN.js.map +1 -0
- package/build/{chunk-WRYRVOZP.js → chunk-KG7BHEJG.js} +2 -2
- package/build/chunk-LJEYXY4V.js +4 -0
- package/build/chunk-LJEYXY4V.js.map +1 -0
- package/build/{chunk-ATQCL6AZ.js → chunk-N5D4TFKX.js} +177 -126
- package/build/chunk-N5D4TFKX.js.map +1 -0
- package/build/{chunk-2YXY5Y3Z.js → chunk-QOUZ6J7N.js} +2 -2
- package/build/{chunk-FMTROGFZ.js → chunk-X4BLMM2K.js} +2 -2
- package/build/chunk-X4BLMM2K.js.map +1 -0
- package/build/cloudflare-runtime/entry.js +308 -49
- package/build/cloudflare-runtime/getRegisteredExtensions.js +307 -48
- package/build/index.js +2 -2
- package/build/index.js.map +1 -1
- package/build/platform-sdk/{chunk-RE2R2PA6.js → chunk-GZP4Z76C.js} +2 -2
- package/build/platform-sdk/chunk-KGLNBMRO.js +2 -0
- package/build/platform-sdk/chunk-KGLNBMRO.js.map +1 -0
- package/build/platform-sdk/dashboard.js +1 -1
- package/build/platform-sdk/editor.js +2 -2
- package/build/platform-sdk/editor.js.map +1 -1
- package/build/platform-sdk/site.js +1 -1
- package/build/platform-sdk/site.js.map +1 -1
- package/build/preview-TM7JAWFS.js +4 -0
- package/build/preview-TM7JAWFS.js.map +1 -0
- package/build/render-command-QEQ3L7OX.js +4 -0
- package/build/render-command-QEQ3L7OX.js.map +1 -0
- package/internal/component-hmr-wrapper.tsx +9 -9
- package/package.json +8 -7
- package/templates/dashboard-plugin/files/plugin.tsx.ejs +8 -18
- package/templates/site-plugin/files/plugin.tsx.ejs +1 -1
- package/build/DevCommand-RTZ66W3P.js.map +0 -1
- package/build/GenerateCommand-J4FYPLSB.js +0 -128
- package/build/LogsCommand-J3PHRUGE.js +0 -4
- package/build/LogsCommand-J3PHRUGE.js.map +0 -1
- package/build/PreviewCommand-JYIGS25E.js +0 -4
- package/build/ServeCommand-LEJRJ2CR.js +0 -4
- package/build/ServeCommand-LEJRJ2CR.js.map +0 -1
- package/build/build-YPC7VLOB.js +0 -4
- package/build/build-YPC7VLOB.js.map +0 -1
- package/build/chunk-522ULCVX.js +0 -100
- package/build/chunk-522ULCVX.js.map +0 -1
- package/build/chunk-ATQCL6AZ.js.map +0 -1
- package/build/chunk-FMTROGFZ.js.map +0 -1
- package/build/chunk-KNH7RNAZ.js.map +0 -1
- package/build/chunk-MXLCRTVZ.js +0 -4
- package/build/chunk-NEWE3FX5.js.map +0 -1
- package/build/chunk-RWTMPGYF.js +0 -4
- package/build/chunk-RWTMPGYF.js.map +0 -1
- package/build/chunk-WLHVYK7Z.js +0 -4
- package/build/chunk-WLHVYK7Z.js.map +0 -1
- package/build/chunk-X3ZYER2U.js +0 -115
- package/build/chunk-X3ZYER2U.js.map +0 -1
- package/build/chunk-ZCIEKIRM.js +0 -4
- package/build/chunk-ZCIEKIRM.js.map +0 -1
- package/build/platform-sdk/chunk-3TJ2D6DS.js +0 -2
- package/build/platform-sdk/chunk-3TJ2D6DS.js.map +0 -1
- package/build/preview-VAP5AF4W.js +0 -4
- package/build/preview-VAP5AF4W.js.map +0 -1
- package/build/render-command-NE2QILSS.js +0 -4
- package/build/render-command-NE2QILSS.js.map +0 -1
- /package/build/{CreateVersionCommand-HVC5JTAL.js.map → CreateVersionCommand-XTZT5DED.js.map} +0 -0
- /package/build/{PreviewCommand-JYIGS25E.js.map → PreviewCommand-JKPFMGWV.js.map} +0 -0
- /package/build/{chunk-MXLCRTVZ.js.map → chunk-2FB5F5QF.js.map} +0 -0
- /package/build/{chunk-2R6WOCA4.js.map → chunk-4BHNJVL2.js.map} +0 -0
- /package/build/{chunk-6ZJVIMV7.js.map → chunk-6HSUK2A2.js.map} +0 -0
- /package/build/{chunk-2LPICRGU.js.map → chunk-B4SDDVMV.js.map} +0 -0
- /package/build/{chunk-UKELYG5A.js.map → chunk-C4SXZWXS.js.map} +0 -0
- /package/build/{chunk-CMBEPCWL.js.map → chunk-HDXLQ34N.js.map} +0 -0
- /package/build/{chunk-WRYRVOZP.js.map → chunk-KG7BHEJG.js.map} +0 -0
- /package/build/{chunk-2YXY5Y3Z.js.map → chunk-QOUZ6J7N.js.map} +0 -0
- /package/build/platform-sdk/{chunk-RE2R2PA6.js.map → chunk-GZP4Z76C.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as _createRequire } from 'node:module';
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
|
-
import{d as r}from"./chunk-
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
import{d as r}from"./chunk-N5D4TFKX.js";import{k as p,na as i}from"./chunk-FMIXY6J5.js";import{h as n}from"./chunk-V4TR6DCM.js";n();async function A({projectFolder:t,manifest:e}){let a=i(t);return p(a,e)}async function M(t){let e=i(t);return r(e)}export{A as a,M as b};
|
|
4
|
+
//# sourceMappingURL=chunk-QOUZ6J7N.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as _createRequire } from 'node:module';
|
|
2
2
|
const require = _createRequire(import.meta.url);
|
|
3
|
-
import{a as X,b as Z}from"./chunk-
|
|
4
|
-
//# sourceMappingURL=chunk-
|
|
3
|
+
import{a as X,b as Z}from"./chunk-K2A77MMN.js";import{c as V}from"./chunk-GWU77DPO.js";import{a as W}from"./chunk-4BHNJVL2.js";import{g as Y,h as q,j as H,k as K,l as z,m as Q}from"./chunk-LJEYXY4V.js";import{a as J}from"./chunk-B4SDDVMV.js";import{Ab as E,Sa as j,Ta as w,Ua as D,Va as G,cb as N,u as U}from"./chunk-FMIXY6J5.js";import{A as b,C as k,L as F,P as B,S as M,T as f,W as L,X as h,b as C,c as _,x as g}from"./chunk-JXE3LQ2S.js";import{e as d,h as t}from"./chunk-V4TR6DCM.js";t();t();var S=d(C(),1);t();var e=d(C(),1),R=d(_(),1);t();var x=d(C(),1),$=d(_(),1),P=({status:n,loadingText:p,successText:s})=>(0,$.match)(n,{NotRequested:()=>null,Loading:()=>x.default.createElement(B,{text:p}),Error:()=>null,Success:()=>x.default.createElement(F,{type:"success"},s)});var ee=({baseUrl:n,onPreviewCreated:p})=>{let{site:s}=z(),{t:a}=h(),{model:o}=E(),{backendComponents:oe}=J(),re=Y(),te=U(),{getAppByVersion:ie}=G(),{createOverride:ne}=H(),se=D({type:"backoffice"}),I=f(()=>N(o.config.appId,o.projectFolder,te,se,oe.length>0)),me=f((c,r)=>ne({appId:o.config.appId,siteId:s.id,overrides:r})),A=f((c,r,l,m,i,u)=>W({model:o,arm:re,serveUrl:r,backendServerUrl:m,topologyComponentId:l,monitoringData:i,monitoringComponentId:u})),{status:pe}=M(async()=>{await X(o.projectFolder);let{serveUrl:c,backendServerUrl:r}=n?{serveUrl:n,backendServerUrl:void 0}:await I.execute(),{data:{components:l}}=await ie({appId:o.config.appId}),m=l.find(v=>v.compType===w.TOPOLOGY),i=l.find(v=>v.compType===w.MONITORING),u=K(o),{id:ae}=u?await me.execute(u):await Promise.resolve({id:void 0}),O=await A.execute(c,m?.compId,r,i?.compData.monitoring,i?.compId);return(m||i)&&await j(o.projectFolder,{...m?{topologyComponentId:m.compId}:{},...i?{monitoringComponentId:i.compId}:{}}),p?.(O,r),{armTag:O,siteOverrideId:ae}},[]);return e.default.createElement(e.default.Fragment,null,e.default.createElement(P,{status:I.status,loadingText:a("preview_command.uploading_files"),successText:a("preview_command.uploading_files_success")}),e.default.createElement(P,{status:A.status,loadingText:a("preview_command.creating_preview"),successText:a("preview_command.creating_preview_success")}),(0,R.match)(pe,{Error:()=>null,Loading:()=>null,Success:({result:{armTag:c,siteOverrideId:r}})=>e.default.createElement(Q,{siteOverrideId:r},e.default.createElement(q,{armTag:c},e.default.createElement(g,{rowGap:1,marginY:1,flexDirection:"column"},e.default.createElement(g,{gap:1},e.default.createElement(k,null),e.default.createElement(L,{i18nKey:"general.dev_site.current",values:{name:s.displayName}})),e.default.createElement(g,{rowGap:1},e.default.createElement(Z,null)),e.default.createElement(b,{skin:"info"},a("preview_command.note_about_temporary_backend")))))}))};var ce=({baseUrl:n,siteIdOverride:p,onPreviewCreated:s})=>S.default.createElement(V,{siteId:p},S.default.createElement(ee,{baseUrl:n,onPreviewCreated:s}));export{ce as a};
|
|
4
|
+
//# sourceMappingURL=chunk-X4BLMM2K.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/PreviewCommand/index.ts","../src/components/PreviewCommand/PreviewCommand.tsx","../src/components/PreviewCommand/Preview.tsx","../src/components/PreviewCommand/ActionStatus.tsx"],"sourcesContent":["export { PreviewCommand } from './PreviewCommand.js';\n","import React from 'react';\nimport type { FC } from 'react';\nimport { SiteProvider } from '../../site/index.js';\nimport { Preview } from './Preview.js';\n\nexport const PreviewCommand: FC<{\n baseUrl?: string;\n siteIdOverride?: string;\n onPreviewCreated?: (tag: string) => void;\n}> = ({ baseUrl, siteIdOverride, onPreviewCreated }) => {\n return (\n <SiteProvider siteId={siteIdOverride}>\n <Preview baseUrl={baseUrl} onPreviewCreated={onPreviewCreated} />\n </SiteProvider>\n );\n};\n","import React from 'react';\nimport type { FC } from 'react';\nimport { match } from 'variant';\nimport { useARMClient } from '@wix/arm-client';\nimport { Trans, useTranslation } from '@wix/cli-i18n';\nimport type { Monitoring } from '@wix/cli-app-manifest';\nimport { useBiLogger } from '@wix/cli-telemetry-react';\nimport { useHttpClient } from '@wix/cli-http-client-react';\nimport {\n Text,\n Box,\n PointerIcon,\n useAsync,\n useAsyncCallback,\n} from '@wix/cli-ui-kit';\nimport { useDevCenterClient, ComponentType } from '@wix/dev-center-client';\nimport type {\n TopologyComponent,\n MonitoringComponent,\n} from '@wix/dev-center-client';\nimport type { ComponentsForSiteOverride } from '@wix/site-override-client';\nimport { useSiteOverrideClient } from '@wix/site-override-client';\nimport { useProjectModel } from '../../model.js';\nimport { useSite } from '../../site/index.js';\nimport { ArmTagProvider } from '../../context/armTag.js';\nimport { createPreviewTag } from '../../preview/create-preview-tag.js';\nimport { uploadApplication } from '../../hosting/upload-application.js';\nimport { assertBuildOutputExists } from '../../files/assert-build-output-exists.js';\nimport { ActionStatus } from './ActionStatus.js';\nimport { PlatformViewer } from '../Platform/PlatformViewer.js';\nimport { saveAppConfig } from '../../files/app.config.js';\nimport { useBackendComponents } from '../../backend/useBackendComponents.js';\nimport { createSiteOverrides } from '../../site-override/createSiteOverrides.js';\nimport { SiteOverrideProvider } from '../../context/siteOverride.js';\n\nexport const Preview: FC<{\n baseUrl?: string;\n onPreviewCreated?: (tag: string, backendServerUrl?: string) => void;\n}> = ({ baseUrl, onPreviewCreated }) => {\n const { site } = useSite();\n const { t } = useTranslation();\n const { model } = useProjectModel();\n const { backendComponents } = useBackendComponents();\n const arm = useARMClient();\n const biLogger = useBiLogger();\n const { getAppByVersion } = useDevCenterClient();\n const { createOverride } = useSiteOverrideClient();\n const httpClient = useHttpClient({ type: 'backoffice' });\n\n const uploadApplicationAction = useAsyncCallback(() =>\n uploadApplication(\n model.config.appId,\n model.projectFolder,\n biLogger,\n httpClient,\n backendComponents.length > 0\n )\n );\n\n const createSiteOverrideIdAction = useAsyncCallback(\n (_, overrides: ComponentsForSiteOverride) =>\n createOverride({\n appId: model.config.appId,\n siteId: site.id,\n overrides,\n })\n );\n\n const createPreviewTagAction = useAsyncCallback(\n (\n _,\n serveUrl: string,\n topologyComponentId?: string,\n backendServerUrl?: string,\n monitoringData?: Monitoring['compData']['monitoring'],\n monitoringComponentId?: string\n ) =>\n createPreviewTag({\n model,\n arm,\n serveUrl,\n backendServerUrl,\n topologyComponentId,\n monitoringData,\n monitoringComponentId,\n })\n );\n\n const { status: createPreviewStatus } = useAsync(async () => {\n await assertBuildOutputExists(model.projectFolder);\n const { serveUrl, backendServerUrl } = baseUrl\n ? { serveUrl: baseUrl, backendServerUrl: undefined }\n : await uploadApplicationAction.execute();\n const {\n data: { components },\n } = await getAppByVersion({\n appId: model.config.appId,\n });\n const topologyComponent = components.find(\n (component): component is TopologyComponent => {\n return component.compType === ComponentType.TOPOLOGY;\n }\n );\n const monitoringComponent = components.find(\n (component): component is MonitoringComponent => {\n return component.compType === ComponentType.MONITORING;\n }\n );\n const overrides = createSiteOverrides(model);\n const { id: siteOverrideId } = overrides\n ? await createSiteOverrideIdAction.execute(overrides)\n : await Promise.resolve({ id: undefined });\n const armTag = await createPreviewTagAction.execute(\n serveUrl,\n topologyComponent?.compId,\n backendServerUrl,\n monitoringComponent?.compData.monitoring,\n monitoringComponent?.compId\n );\n\n if (topologyComponent || monitoringComponent) {\n // Once there is topology/monitoring in production I want to use the same id for dev as well,\n // to reduce confusion during debug.\n await saveAppConfig(model.projectFolder, {\n ...(topologyComponent\n ? { topologyComponentId: topologyComponent.compId }\n : {}),\n ...(monitoringComponent\n ? { monitoringComponentId: monitoringComponent.compId }\n : {}),\n });\n }\n\n onPreviewCreated?.(armTag, backendServerUrl);\n\n return { armTag, siteOverrideId };\n }, []);\n\n return (\n <>\n <ActionStatus\n status={uploadApplicationAction.status}\n loadingText={t('preview_command.uploading_files')}\n successText={t('preview_command.uploading_files_success')}\n />\n <ActionStatus\n status={createPreviewTagAction.status}\n loadingText={t('preview_command.creating_preview')}\n successText={t('preview_command.creating_preview_success')}\n />\n {match(createPreviewStatus, {\n Error: () => null,\n Loading: () => null,\n Success: ({ result: { armTag, siteOverrideId } }) => (\n <SiteOverrideProvider siteOverrideId={siteOverrideId}>\n <ArmTagProvider armTag={armTag}>\n <Box rowGap={1} marginY={1} flexDirection=\"column\">\n <Box gap={1}>\n <PointerIcon />\n <Trans\n i18nKey=\"general.dev_site.current\"\n values={{ name: site.displayName }}\n />\n </Box>\n <Box rowGap={1}>\n <PlatformViewer />\n </Box>\n <Text skin=\"info\">\n {t('preview_command.note_about_temporary_backend')}\n </Text>\n </Box>\n </ArmTagProvider>\n </SiteOverrideProvider>\n ),\n })}\n </>\n );\n};\n","import type { AsyncCallbackStatus } from '@wix/cli-ui-kit';\nimport { Alert, Spinner } from '@wix/cli-ui-kit';\nimport type { FC } from 'react';\nimport React from 'react';\nimport { match } from 'variant';\n\nexport const ActionStatus: FC<{\n status: AsyncCallbackStatus<unknown>;\n loadingText: string;\n successText: string;\n}> = ({ status, loadingText, successText }) =>\n match(status, {\n NotRequested: () => null,\n Loading: () => <Spinner text={loadingText} />,\n Error: () => null,\n Success: () => <Alert type=\"success\">{successText}</Alert>,\n });\n"],"mappings":"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","names":["init_esm_shims","init_esm_shims","import_react","init_esm_shims","import_react","import_variant","init_esm_shims","import_react","import_variant","ActionStatus","status","loadingText","successText","React","Spinner","Alert","Preview","baseUrl","onPreviewCreated","site","useSite","t","useTranslation","model","useProjectModel","backendComponents","useBackendComponents","arm","useARMClient","biLogger","useBiLogger","getAppByVersion","useDevCenterClient","createOverride","useSiteOverrideClient","httpClient","useHttpClient","uploadApplicationAction","useAsyncCallback","uploadApplication","createSiteOverrideIdAction","_","overrides","createPreviewTagAction","serveUrl","topologyComponentId","backendServerUrl","monitoringData","monitoringComponentId","createPreviewTag","createPreviewStatus","useAsync","assertBuildOutputExists","components","topologyComponent","component","ComponentType","monitoringComponent","createSiteOverrides","siteOverrideId","armTag","saveAppConfig","React","ActionStatus","SiteOverrideProvider","ArmTagProvider","Box_default","PointerIcon","Trans","PlatformViewer","Text","PreviewCommand","baseUrl","siteIdOverride","onPreviewCreated","React","SiteProvider","Preview"]}
|
|
@@ -1,12 +1,166 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
2
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
3
7
|
var __esm = (fn, res) => function __init() {
|
|
4
8
|
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
5
9
|
};
|
|
10
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
11
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
12
|
+
};
|
|
6
13
|
var __export = (target, all) => {
|
|
7
14
|
for (var name in all)
|
|
8
15
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
16
|
};
|
|
17
|
+
var __copyProps = (to, from, except, desc) => {
|
|
18
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
19
|
+
for (let key of __getOwnPropNames(from))
|
|
20
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
21
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
22
|
+
}
|
|
23
|
+
return to;
|
|
24
|
+
};
|
|
25
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
26
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
27
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
28
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
29
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
30
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
31
|
+
mod
|
|
32
|
+
));
|
|
33
|
+
|
|
34
|
+
// ../../node_modules/serialize-error/index.js
|
|
35
|
+
var require_serialize_error = __commonJS({
|
|
36
|
+
"../../node_modules/serialize-error/index.js"(exports, module) {
|
|
37
|
+
"use strict";
|
|
38
|
+
var NonError = class _NonError extends Error {
|
|
39
|
+
constructor(message2) {
|
|
40
|
+
super(_NonError._prepareSuperMessage(message2));
|
|
41
|
+
Object.defineProperty(this, "name", {
|
|
42
|
+
value: "NonError",
|
|
43
|
+
configurable: true,
|
|
44
|
+
writable: true
|
|
45
|
+
});
|
|
46
|
+
if (Error.captureStackTrace) {
|
|
47
|
+
Error.captureStackTrace(this, _NonError);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
static _prepareSuperMessage(message2) {
|
|
51
|
+
try {
|
|
52
|
+
return JSON.stringify(message2);
|
|
53
|
+
} catch {
|
|
54
|
+
return String(message2);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
var commonProperties = [
|
|
59
|
+
{ property: "name", enumerable: false },
|
|
60
|
+
{ property: "message", enumerable: false },
|
|
61
|
+
{ property: "stack", enumerable: false },
|
|
62
|
+
{ property: "code", enumerable: true }
|
|
63
|
+
];
|
|
64
|
+
var isCalled = Symbol(".toJSON called");
|
|
65
|
+
var toJSON = (from) => {
|
|
66
|
+
from[isCalled] = true;
|
|
67
|
+
const json = from.toJSON();
|
|
68
|
+
delete from[isCalled];
|
|
69
|
+
return json;
|
|
70
|
+
};
|
|
71
|
+
var destroyCircular = ({
|
|
72
|
+
from,
|
|
73
|
+
seen,
|
|
74
|
+
to_,
|
|
75
|
+
forceEnumerable,
|
|
76
|
+
maxDepth,
|
|
77
|
+
depth
|
|
78
|
+
}) => {
|
|
79
|
+
const to = to_ || (Array.isArray(from) ? [] : {});
|
|
80
|
+
seen.push(from);
|
|
81
|
+
if (depth >= maxDepth) {
|
|
82
|
+
return to;
|
|
83
|
+
}
|
|
84
|
+
if (typeof from.toJSON === "function" && from[isCalled] !== true) {
|
|
85
|
+
return toJSON(from);
|
|
86
|
+
}
|
|
87
|
+
for (const [key, value] of Object.entries(from)) {
|
|
88
|
+
if (typeof Buffer === "function" && Buffer.isBuffer(value)) {
|
|
89
|
+
to[key] = "[object Buffer]";
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
if (typeof value === "function") {
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
if (!value || typeof value !== "object") {
|
|
96
|
+
to[key] = value;
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
99
|
+
if (!seen.includes(from[key])) {
|
|
100
|
+
depth++;
|
|
101
|
+
to[key] = destroyCircular({
|
|
102
|
+
from: from[key],
|
|
103
|
+
seen: seen.slice(),
|
|
104
|
+
forceEnumerable,
|
|
105
|
+
maxDepth,
|
|
106
|
+
depth
|
|
107
|
+
});
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
to[key] = "[Circular]";
|
|
111
|
+
}
|
|
112
|
+
for (const { property, enumerable } of commonProperties) {
|
|
113
|
+
if (typeof from[property] === "string") {
|
|
114
|
+
Object.defineProperty(to, property, {
|
|
115
|
+
value: from[property],
|
|
116
|
+
enumerable: forceEnumerable ? true : enumerable,
|
|
117
|
+
configurable: true,
|
|
118
|
+
writable: true
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return to;
|
|
123
|
+
};
|
|
124
|
+
var serializeError2 = (value, options = {}) => {
|
|
125
|
+
const { maxDepth = Number.POSITIVE_INFINITY } = options;
|
|
126
|
+
if (typeof value === "object" && value !== null) {
|
|
127
|
+
return destroyCircular({
|
|
128
|
+
from: value,
|
|
129
|
+
seen: [],
|
|
130
|
+
forceEnumerable: true,
|
|
131
|
+
maxDepth,
|
|
132
|
+
depth: 0
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
if (typeof value === "function") {
|
|
136
|
+
return `[Function: ${value.name || "anonymous"}]`;
|
|
137
|
+
}
|
|
138
|
+
return value;
|
|
139
|
+
};
|
|
140
|
+
var deserializeError = (value, options = {}) => {
|
|
141
|
+
const { maxDepth = Number.POSITIVE_INFINITY } = options;
|
|
142
|
+
if (value instanceof Error) {
|
|
143
|
+
return value;
|
|
144
|
+
}
|
|
145
|
+
if (typeof value === "object" && value !== null && !Array.isArray(value)) {
|
|
146
|
+
const newError = new Error();
|
|
147
|
+
destroyCircular({
|
|
148
|
+
from: value,
|
|
149
|
+
seen: [],
|
|
150
|
+
to_: newError,
|
|
151
|
+
maxDepth,
|
|
152
|
+
depth: 0
|
|
153
|
+
});
|
|
154
|
+
return newError;
|
|
155
|
+
}
|
|
156
|
+
return new NonError(value);
|
|
157
|
+
};
|
|
158
|
+
module.exports = {
|
|
159
|
+
serializeError: serializeError2,
|
|
160
|
+
deserializeError
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
});
|
|
10
164
|
|
|
11
165
|
// ../../node_modules/jose/dist/browser/runtime/webcrypto.js
|
|
12
166
|
var webcrypto_default, isCryptoKey;
|
|
@@ -4706,8 +4860,15 @@ function servicePluginsModules(authStrategy) {
|
|
|
4706
4860
|
async processRequest(request) {
|
|
4707
4861
|
const url = request.url;
|
|
4708
4862
|
const body = await request.text();
|
|
4709
|
-
|
|
4710
|
-
|
|
4863
|
+
try {
|
|
4864
|
+
const implMethodResult = await this.process({ url, body });
|
|
4865
|
+
return Response.json(implMethodResult);
|
|
4866
|
+
} catch (err) {
|
|
4867
|
+
if (err.errorType === "SPI" && err.applicationCode && err.httpCode) {
|
|
4868
|
+
return Response.json({ applicationError: { code: err.applicationCode, data: err.data } }, { status: err.httpCode });
|
|
4869
|
+
}
|
|
4870
|
+
throw err;
|
|
4871
|
+
}
|
|
4711
4872
|
},
|
|
4712
4873
|
async executeHandler(servicePluginRequest, url) {
|
|
4713
4874
|
const componentType = servicePluginRequest.metadata.appExtensionType.toLowerCase();
|
|
@@ -4742,6 +4903,120 @@ function servicePluginsModules(authStrategy) {
|
|
|
4742
4903
|
};
|
|
4743
4904
|
}
|
|
4744
4905
|
|
|
4906
|
+
// ../../node_modules/@wix/sdk/build/web-method-modules.js
|
|
4907
|
+
var import_serialize_error = __toESM(require_serialize_error(), 1);
|
|
4908
|
+
|
|
4909
|
+
// ../../node_modules/@wix/sdk/build/get-token-info.js
|
|
4910
|
+
async function getTokenInfo(token) {
|
|
4911
|
+
const tokenInfoRes = await fetch("https://www.wixapis.com/oauth2/token-info", {
|
|
4912
|
+
method: "POST",
|
|
4913
|
+
headers: {
|
|
4914
|
+
"Content-Type": "application/json"
|
|
4915
|
+
},
|
|
4916
|
+
body: JSON.stringify({
|
|
4917
|
+
token
|
|
4918
|
+
})
|
|
4919
|
+
});
|
|
4920
|
+
if (tokenInfoRes.status !== 200) {
|
|
4921
|
+
throw new Error(`Failed to get token info. Unexpected status code from Wix OAuth API: ${tokenInfoRes.status}`);
|
|
4922
|
+
}
|
|
4923
|
+
return await tokenInfoRes.json();
|
|
4924
|
+
}
|
|
4925
|
+
|
|
4926
|
+
// ../../node_modules/@wix/sdk/build/web-method-modules.js
|
|
4927
|
+
var isWebMethodModules = (val) => val.__type === "web-method-module";
|
|
4928
|
+
var Permissions;
|
|
4929
|
+
(function(Permissions2) {
|
|
4930
|
+
Permissions2["Anyone"] = "anyone";
|
|
4931
|
+
Permissions2["Admin"] = "admin";
|
|
4932
|
+
Permissions2["SiteMember"] = "site-member";
|
|
4933
|
+
})(Permissions || (Permissions = {}));
|
|
4934
|
+
async function checkPermission(request, permission) {
|
|
4935
|
+
const accessToken = request.headers.get("Authorization");
|
|
4936
|
+
if (!accessToken) {
|
|
4937
|
+
throw new Error("Request is missing authentication data");
|
|
4938
|
+
}
|
|
4939
|
+
const { subjectType } = await getTokenInfo(accessToken);
|
|
4940
|
+
switch (permission) {
|
|
4941
|
+
case Permissions.Anyone: {
|
|
4942
|
+
if (subjectType !== "VISITOR" && subjectType !== "MEMBER" && subjectType !== "USER") {
|
|
4943
|
+
throw new Error("Insufficient permissions");
|
|
4944
|
+
}
|
|
4945
|
+
break;
|
|
4946
|
+
}
|
|
4947
|
+
case Permissions.SiteMember: {
|
|
4948
|
+
if (subjectType !== "MEMBER" && subjectType !== "USER") {
|
|
4949
|
+
throw new Error("Insufficient permissions");
|
|
4950
|
+
}
|
|
4951
|
+
break;
|
|
4952
|
+
}
|
|
4953
|
+
case Permissions.Admin: {
|
|
4954
|
+
if (subjectType !== "USER") {
|
|
4955
|
+
throw new Error("Insufficient permissions");
|
|
4956
|
+
}
|
|
4957
|
+
break;
|
|
4958
|
+
}
|
|
4959
|
+
}
|
|
4960
|
+
}
|
|
4961
|
+
var urlRegex = /\/_webMethods\/(.+\..+)\/(.+\..+)/;
|
|
4962
|
+
function extractUrlParts(url) {
|
|
4963
|
+
const parts = url.match(urlRegex);
|
|
4964
|
+
if (parts) {
|
|
4965
|
+
return [parts[1], parts[2].replace(".ajax", "")];
|
|
4966
|
+
}
|
|
4967
|
+
}
|
|
4968
|
+
function isRequestBodyValid(body) {
|
|
4969
|
+
return !!body && typeof body === "object" && Array.isArray(body);
|
|
4970
|
+
}
|
|
4971
|
+
var productionErrorMessage = "Error: Unable to handle the request. Contact the site administrator or view site monitoring logs for more information.";
|
|
4972
|
+
function webMethodModules() {
|
|
4973
|
+
const webMethods = {};
|
|
4974
|
+
const client = {
|
|
4975
|
+
async processRequest(request, devMode = false) {
|
|
4976
|
+
const urlParts = extractUrlParts(request.url);
|
|
4977
|
+
if (!urlParts) {
|
|
4978
|
+
return new Response("invalid request", { status: 400 });
|
|
4979
|
+
}
|
|
4980
|
+
const [file, method] = urlParts;
|
|
4981
|
+
const body = await request.json();
|
|
4982
|
+
if (!isRequestBodyValid(body)) {
|
|
4983
|
+
return new Response("invalid request", { status: 400 });
|
|
4984
|
+
}
|
|
4985
|
+
const loadWebMethodFile = webMethods[`/${file}`];
|
|
4986
|
+
try {
|
|
4987
|
+
if (!loadWebMethodFile) {
|
|
4988
|
+
throw new Error(`Error loading web module ${file}: Cannot find module '${file}'`);
|
|
4989
|
+
}
|
|
4990
|
+
const webMethodFile = await loadWebMethodFile();
|
|
4991
|
+
const webMethod = webMethodFile[method];
|
|
4992
|
+
if (!webMethod) {
|
|
4993
|
+
throw new Error(`Error loading function from web module ${file}: function '${method}' not found`);
|
|
4994
|
+
}
|
|
4995
|
+
await checkPermission(request, webMethod.permission);
|
|
4996
|
+
return Response.json({
|
|
4997
|
+
result: await webMethod.handler(...body)
|
|
4998
|
+
});
|
|
4999
|
+
} catch (error) {
|
|
5000
|
+
const serializedError = (0, import_serialize_error.serializeError)(error, { maxDepth: 1 });
|
|
5001
|
+
return Response.json({
|
|
5002
|
+
result: devMode || !(error instanceof Error) ? serializedError : {
|
|
5003
|
+
...serializedError,
|
|
5004
|
+
message: productionErrorMessage,
|
|
5005
|
+
stack: productionErrorMessage
|
|
5006
|
+
},
|
|
5007
|
+
exception: true
|
|
5008
|
+
});
|
|
5009
|
+
}
|
|
5010
|
+
}
|
|
5011
|
+
};
|
|
5012
|
+
return {
|
|
5013
|
+
initModule(webMethodModule) {
|
|
5014
|
+
Object.assign(webMethods, webMethodModule);
|
|
5015
|
+
},
|
|
5016
|
+
client
|
|
5017
|
+
};
|
|
5018
|
+
}
|
|
5019
|
+
|
|
4745
5020
|
// ../../node_modules/@wix/sdk/build/wixClient.js
|
|
4746
5021
|
function createClient(config) {
|
|
4747
5022
|
const _headers = config.headers || { Authorization: "" };
|
|
@@ -4750,8 +5025,25 @@ function createClient(config) {
|
|
|
4750
5025
|
};
|
|
4751
5026
|
const boundGetAuthHeaders = authStrategy.getAuthHeaders.bind(void 0, config.host);
|
|
4752
5027
|
authStrategy.getAuthHeaders = boundGetAuthHeaders;
|
|
5028
|
+
const fetchWithAuth = async (urlOrRequest, requestInit) => {
|
|
5029
|
+
if (typeof urlOrRequest === "string" || urlOrRequest instanceof URL) {
|
|
5030
|
+
return fetch(urlOrRequest, {
|
|
5031
|
+
...requestInit,
|
|
5032
|
+
headers: {
|
|
5033
|
+
...requestInit?.headers,
|
|
5034
|
+
...(await boundGetAuthHeaders()).headers
|
|
5035
|
+
}
|
|
5036
|
+
});
|
|
5037
|
+
} else {
|
|
5038
|
+
for (const [k, v] of Object.entries((await boundGetAuthHeaders()).headers)) {
|
|
5039
|
+
urlOrRequest.headers.set(k, v);
|
|
5040
|
+
}
|
|
5041
|
+
return fetch(urlOrRequest, requestInit);
|
|
5042
|
+
}
|
|
5043
|
+
};
|
|
4753
5044
|
const { client: servicePluginsClient, initModule: initServicePluginModule } = servicePluginsModules(authStrategy);
|
|
4754
5045
|
const { client: eventHandlersClient, initModule: initEventHandlerModule } = eventHandlersModules(authStrategy);
|
|
5046
|
+
const { client: webMethodClient, initModule } = webMethodModules();
|
|
4755
5047
|
const boundFetch = async (url, options) => {
|
|
4756
5048
|
const authHeaders = await boundGetAuthHeaders();
|
|
4757
5049
|
const defaultContentTypeHeader = getDefaultContentHeader(options);
|
|
@@ -4773,6 +5065,8 @@ function createClient(config) {
|
|
|
4773
5065
|
return initServicePluginModule(modules);
|
|
4774
5066
|
} else if (isHostModule(modules) && config.host) {
|
|
4775
5067
|
return buildHostModule(modules, config.host);
|
|
5068
|
+
} else if (isWebMethodModules(modules)) {
|
|
5069
|
+
return initModule(modules);
|
|
4776
5070
|
} else if (typeof modules === "function") {
|
|
4777
5071
|
if ("__type" in modules && modules.__type === SERVICE_PLUGIN_ERROR_TYPE) {
|
|
4778
5072
|
return modules;
|
|
@@ -4839,22 +5133,7 @@ function createClient(config) {
|
|
|
4839
5133
|
finalUrl.protocol = "https";
|
|
4840
5134
|
return boundFetch(finalUrl.toString(), options);
|
|
4841
5135
|
},
|
|
4842
|
-
fetchWithAuth
|
|
4843
|
-
if (typeof urlOrRequest === "string" || urlOrRequest instanceof URL) {
|
|
4844
|
-
return fetch(urlOrRequest, {
|
|
4845
|
-
...requestInit,
|
|
4846
|
-
headers: {
|
|
4847
|
-
...requestInit?.headers,
|
|
4848
|
-
...(await boundGetAuthHeaders()).headers
|
|
4849
|
-
}
|
|
4850
|
-
});
|
|
4851
|
-
} else {
|
|
4852
|
-
for (const [k, v] of Object.entries((await boundGetAuthHeaders()).headers)) {
|
|
4853
|
-
urlOrRequest.headers.set(k, v);
|
|
4854
|
-
}
|
|
4855
|
-
return fetch(urlOrRequest, requestInit);
|
|
4856
|
-
}
|
|
4857
|
-
},
|
|
5136
|
+
fetchWithAuth,
|
|
4858
5137
|
async graphql(query, variables, opts = {
|
|
4859
5138
|
apiVersion: "alpha"
|
|
4860
5139
|
}) {
|
|
@@ -4873,13 +5152,13 @@ function createClient(config) {
|
|
|
4873
5152
|
return { data: data ?? {}, errors };
|
|
4874
5153
|
},
|
|
4875
5154
|
webhooks: eventHandlersClient,
|
|
5155
|
+
webMethods: webMethodClient,
|
|
4876
5156
|
servicePlugins: servicePluginsClient
|
|
4877
5157
|
};
|
|
4878
5158
|
}
|
|
4879
5159
|
|
|
4880
5160
|
// ../../node_modules/@wix/sdk/build/auth/AppStrategy.js
|
|
4881
5161
|
function AppStrategy(opts) {
|
|
4882
|
-
const authServerBaseUrl = opts.authServerBaseUrl ?? "https://www.wixapis.com";
|
|
4883
5162
|
let refreshToken = "refreshToken" in opts ? opts.refreshToken : void 0;
|
|
4884
5163
|
let cachedToken;
|
|
4885
5164
|
return {
|
|
@@ -4909,8 +5188,7 @@ function AppStrategy(opts) {
|
|
|
4909
5188
|
if (!code || !instanceId) {
|
|
4910
5189
|
throw new Error("Invalid OAuth callback URL. Make sure you pass the url including the code and instanceId query params.");
|
|
4911
5190
|
}
|
|
4912
|
-
const
|
|
4913
|
-
const tokensRes = await fetch(tokenUrl.href, {
|
|
5191
|
+
const tokensRes = await fetch("https://www.wixapis.com/oauth/access", {
|
|
4914
5192
|
method: "POST",
|
|
4915
5193
|
headers: {
|
|
4916
5194
|
"Content-Type": "application/json"
|
|
@@ -4943,10 +5221,9 @@ function AppStrategy(opts) {
|
|
|
4943
5221
|
}
|
|
4944
5222
|
if ("refreshToken" in opts || refreshToken) {
|
|
4945
5223
|
if (!opts.appSecret) {
|
|
4946
|
-
throw new Error("App secret is required for
|
|
5224
|
+
throw new Error("App secret is required for retrieving app-level access tokens. Make sure to pass it to the AppStrategy");
|
|
4947
5225
|
}
|
|
4948
|
-
const
|
|
4949
|
-
const tokensRes = await fetch(tokenUrl.href, {
|
|
5226
|
+
const tokensRes = await fetch("https://www.wixapis.com/oauth/access", {
|
|
4950
5227
|
method: "POST",
|
|
4951
5228
|
headers: {
|
|
4952
5229
|
"Content-Type": "application/json"
|
|
@@ -4970,10 +5247,9 @@ function AppStrategy(opts) {
|
|
|
4970
5247
|
};
|
|
4971
5248
|
} else if ("instanceId" in opts) {
|
|
4972
5249
|
if (!opts.appSecret) {
|
|
4973
|
-
throw new Error("App secret is required for
|
|
5250
|
+
throw new Error("App secret is required for retrieving app-level access tokens. Make sure to pass it to the AppStrategy");
|
|
4974
5251
|
}
|
|
4975
|
-
const
|
|
4976
|
-
const tokensRes = await fetch(tokenUrl.href, {
|
|
5252
|
+
const tokensRes = await fetch("https://www.wixapis.com/oauth2/token", {
|
|
4977
5253
|
method: "POST",
|
|
4978
5254
|
headers: {
|
|
4979
5255
|
"Content-Type": "application/json"
|
|
@@ -4999,7 +5275,7 @@ function AppStrategy(opts) {
|
|
|
4999
5275
|
}
|
|
5000
5276
|
};
|
|
5001
5277
|
} else if ("accessToken" in opts && opts.accessToken) {
|
|
5002
|
-
const tokenRes = await fetch(
|
|
5278
|
+
const tokenRes = await fetch("https://www.wixapis.com/oauth2/token", {
|
|
5003
5279
|
method: "POST",
|
|
5004
5280
|
headers: {
|
|
5005
5281
|
"Content-Type": "application/json"
|
|
@@ -5029,7 +5305,7 @@ function AppStrategy(opts) {
|
|
|
5029
5305
|
},
|
|
5030
5306
|
async elevated() {
|
|
5031
5307
|
if ("accessToken" in opts && opts.accessToken) {
|
|
5032
|
-
const tokenInfo = await getTokenInfo(opts.accessToken
|
|
5308
|
+
const tokenInfo = await getTokenInfo(opts.accessToken);
|
|
5033
5309
|
if (tokenInfo.clientId !== opts.appId) {
|
|
5034
5310
|
throw new Error(`Invalid access token. The token is not issued for the app with ID "${opts.appId}"`);
|
|
5035
5311
|
}
|
|
@@ -5040,8 +5316,7 @@ function AppStrategy(opts) {
|
|
|
5040
5316
|
appId: opts.appId,
|
|
5041
5317
|
appSecret: opts.appSecret,
|
|
5042
5318
|
publicKey: opts.publicKey,
|
|
5043
|
-
instanceId: tokenInfo.instanceId
|
|
5044
|
-
authServerBaseUrl: opts.authServerBaseUrl
|
|
5319
|
+
instanceId: tokenInfo.instanceId
|
|
5045
5320
|
});
|
|
5046
5321
|
} else {
|
|
5047
5322
|
throw new Error("Providing an access token is required to perform elevation. Make sure to pass it to the AppStrategy");
|
|
@@ -5069,29 +5344,13 @@ function AppStrategy(opts) {
|
|
|
5069
5344
|
if (!tokenToCheck) {
|
|
5070
5345
|
throw new Error("Missing token to get info for. Either pass the token as an argument or provide it when initializing the AppStrategy");
|
|
5071
5346
|
}
|
|
5072
|
-
return getTokenInfo(tokenToCheck
|
|
5347
|
+
return getTokenInfo(tokenToCheck);
|
|
5073
5348
|
},
|
|
5074
5349
|
getActiveToken() {
|
|
5075
5350
|
return "accessToken" in opts ? opts.accessToken : refreshToken;
|
|
5076
5351
|
}
|
|
5077
5352
|
};
|
|
5078
5353
|
}
|
|
5079
|
-
async function getTokenInfo(token, authServerBaseUrl) {
|
|
5080
|
-
const tokenInfoUrl = new URL("/oauth2/token-info", authServerBaseUrl);
|
|
5081
|
-
const tokenInfoRes = await fetch(tokenInfoUrl.href, {
|
|
5082
|
-
method: "POST",
|
|
5083
|
-
headers: {
|
|
5084
|
-
"Content-Type": "application/json"
|
|
5085
|
-
},
|
|
5086
|
-
body: JSON.stringify({
|
|
5087
|
-
token
|
|
5088
|
-
})
|
|
5089
|
-
});
|
|
5090
|
-
if (tokenInfoRes.status !== 200) {
|
|
5091
|
-
throw new Error(`Failed to get token info. Unexpected status code from Wix OAuth API: ${tokenInfoRes.status}`);
|
|
5092
|
-
}
|
|
5093
|
-
return await tokenInfoRes.json();
|
|
5094
|
-
}
|
|
5095
5354
|
|
|
5096
5355
|
// src/utils.ts
|
|
5097
5356
|
var supportedMethods = ["GET", "POST", "PUT", "DELETE"];
|
|
@@ -5110,7 +5369,7 @@ function isMethodSupported(method) {
|
|
|
5110
5369
|
return supportedMethods.includes(method);
|
|
5111
5370
|
}
|
|
5112
5371
|
function isAPI(value) {
|
|
5113
|
-
return typeof value === "object" &&
|
|
5372
|
+
return value != null && typeof value === "object" && supportedMethods.some((method) => method in value);
|
|
5114
5373
|
}
|
|
5115
5374
|
function formatError(error) {
|
|
5116
5375
|
if (import.meta.env.DEV && error instanceof Error) {
|