@kubb/react
Version:
React integration for Kubb, providing JSX runtime support and React component generation capabilities for code generation plugins.
1 lines • 4.36 kB
Source Map (JSON)
{"version":3,"sources":["../src/devtools.ts"],"names":["init_cjs_shims","ws","onExit"],"mappings":";;;;;;;;;;;AAAAA,gCAAA,EAAA;AAaA,IAAM,YAAoB,GAAA,UAAA;AAC1B,YAAA,CAAa,SAAc,KAAAC,mBAAA;AAC3B,YAAA,CAAa,MAAW,KAAA,YAAA;AACxB,YAAA,CAAa,IAAS,KAAA,YAAA;AACtB,YAAA,CAAa,iBAAoB,GAAA,IAAA;AACjC,YAAA,CAAa,OAAO,oCAAuC,GAAA;AAAA,EACzD;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,kBAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,UAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,mBAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,WAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,WAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,aAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,aAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA,GACX;AAAA,EACA;AAAA;AAAA,IAEE,IAAM,EAAA,CAAA;AAAA,IACN,KAAO,EAAA,aAAA;AAAA,IACP,SAAW,EAAA,IAAA;AAAA,IACX,OAAS,EAAA;AAAA;AAEb,CAAA;AAEA,SAAS,YAAe,GAAA;AACtB,EAAI,IAAA,UAAA;AACJ,EAAA,OAAO,OAAO,CAAA,CACX,IAAK,CAAA,OAAO,KAAU,KAAA;AACrB,IAAA,OAAA,CAAQ,IAAI,kBAAkB,CAAA;AAE9B,IAAA,UAAA,GAAa,KAAM,CAAA,KAAA,CAAM,EAAE,WAAA,EAAa,MAAM,CAAA,CAAA,kBAAA,CAAA;AAAA,GAC/C,CACA,CAAA,IAAA,CAAK,MAAM;AAEV,IAAA,OAAO,OAAO,wBAAqB,CAAA;AAAA,GACpC,CAAA,CACA,IAAK,CAAA,CAAC,QAAa,KAAA;AAClB,IAAA,OAAA,CAAQ,IAAI,qBAAqB,CAAA;AACjC,IAAA,QAAA,CAAS,QAAQ,iBAAkB,EAAA;AAAA,GACpC,CACA,CAAA,KAAA,CAAM,MAAM;AACX,IAAA,OAAA,CAAQ,IAAI,2BAA2B,CAAA;AAAA,GACxC,CAAA;AAEH,EAAAC,iBAAA;AAAA,IACE,MAAM;AACJ,MAAA,OAAA,CAAQ,IAAI,wBAAwB,CAAA;AACpC,MAAA,UAAA,EAAY,IAAK,EAAA;AAAA,KACnB;AAAA,IACA,EAAE,YAAY,KAAM;AAAA,GACtB;AACF;AAEA,YAAa,EAAA","file":"devtools.cjs","sourcesContent":["import { onExit } from 'signal-exit'\nimport ws from 'ws'\n\ndeclare global {\n var WebSocket: typeof WebSocket\n var self: any\n var window: any\n var isDevtoolsEnabled: any\n}\n\n// Filter out Kubbs's internal components from devtools for a cleaner view.\n// See https://github.com/facebook/react/blob/edf6eac8a181860fd8a2d076a43806f1237495a1/packages/react-devtools-shared/src/types.js#L24\n\nconst customGlobal: any = globalThis\ncustomGlobal.WebSocket ||= ws\ncustomGlobal.window ||= customGlobal\ncustomGlobal.self ||= customGlobal\ncustomGlobal.isDevtoolsEnabled = true\ncustomGlobal.window.__REACT_DEVTOOLS_COMPONENT_FILTERS__ = [\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'Context.Provider',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'KubbRoot',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'KubbErrorBoundary',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'kubb-file',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'kubb-text',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'kubb-import',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'kubb-export',\n isEnabled: true,\n isValid: true,\n },\n {\n // ComponentFilterDisplayName\n type: 2,\n value: 'kubb-source',\n isEnabled: true,\n isValid: true,\n },\n]\n\nfunction openDevtools() {\n let subprocess: { kill: () => void }\n import('execa')\n .then(async (execa) => {\n console.log('Opening devtools')\n\n subprocess = execa.execa({ preferLocal: true })`npx react-devtools`\n })\n .then(() => {\n // @ts-ignore\n return import('react-devtools-core')\n })\n .then((devtools) => {\n console.log('Connecting devtools')\n devtools.default.connectToDevTools()\n })\n .catch(() => {\n console.log('Error connecting devtools')\n })\n\n onExit(\n () => {\n console.log('Disconnecting devtools')\n subprocess?.kill()\n },\n { alwaysLast: false },\n )\n}\n\nopenDevtools()\n"]}