@kubb/react
Version:
React integration for Kubb, providing JSX runtime support and React component generation capabilities for code generation plugins.
1 lines • 3.41 kB
Source Map (JSON)
{"version":3,"file":"devtools.cjs","names":["customGlobal: any","subprocess: { kill: () => void }"],"sources":["../src/devtools.ts"],"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-expect-error\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"],"mappings":";;;;;;;AAaA,MAAMA,eAAoB;AAC1B,aAAa,cAAc;AAC3B,aAAa,WAAW;AACxB,aAAa,SAAS;AACtB,aAAa,oBAAoB;AACjC,aAAa,OAAO,uCAAuC;CACzD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACD;EAEE,MAAM;EACN,OAAO;EACP,WAAW;EACX,SAAS;EACV;CACF;AAED,SAAS,eAAe;CACtB,IAAIC;AACJ,QAAO,SACJ,KAAK,OAAO,UAAU;AACrB,UAAQ,IAAI,mBAAmB;AAE/B,eAAa,MAAM,MAAM,EAAE,aAAa,MAAM,CAAC;GAC/C,CACD,WAAW;AAEV,oFAAO;GACP,CACD,MAAM,aAAa;AAClB,UAAQ,IAAI,sBAAsB;AAClC,WAAS,QAAQ,mBAAmB;GACpC,CACD,YAAY;AACX,UAAQ,IAAI,4BAA4B;GACxC;AAEJ,+BACQ;AACJ,UAAQ,IAAI,yBAAyB;AACrC,cAAY,MAAM;IAEpB,EAAE,YAAY,OAAO,CACtB;;AAGH,cAAc"}