legend-state-dev-tools 0.0.6 → 0.0.8
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 +2 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +73 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +1402 -0
- package/dist/index.mjs.map +1 -0
- package/dist/styles.css +184 -0
- package/package.json +10 -19
- /package/{packages/core → dist}/dist/index.d.ts +0 -0
- /package/{packages/core → dist}/dist/index.js +0 -0
- /package/{packages/core → dist}/dist/index.js.map +0 -0
- /package/{packages/core → dist}/dist/index.mjs +0 -0
- /package/{packages/core → dist}/dist/index.mjs.map +0 -0
- /package/{packages/core → dist}/dist/styles.css +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../node_modules/eta/dist/browser.umd.js","../src/ui/templates/toolbar.eta","../src/ui/templates/panel.eta","../src/ui/template-engine.ts","../src/ui/shared-utils.ts","../src/ui/toolbar.ts","../src/ui/panel.ts","../src/state-bridge.ts","../../../node_modules/object-property-assigner/build/index.esm.js","../../../node_modules/object-property-extractor/build/index.esm.js","../../../node_modules/json-edit-react/build/index.esm.js","../src/ui/json-editor-mount.tsx","../src/index.ts"],"sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?e(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],e):e((t||self).eta={})}(this,function(t){function e(){return e=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},e.apply(this,arguments)}function n(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,i(t,e)}function r(t){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},r(t)}function i(t,e){return i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},i(t,e)}function a(t,e,n){return a=function(){if(\"undefined\"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if(\"function\"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(t){return!1}}()?Reflect.construct.bind():function(t,e,n){var r=[null];r.push.apply(r,e);var a=new(Function.bind.apply(t,r));return n&&i(a,n.prototype),a},a.apply(null,arguments)}function s(t){var e=\"function\"==typeof Map?new Map:void 0;return s=function(t){if(null===t||-1===Function.toString.call(t).indexOf(\"[native code]\"))return t;if(\"function\"!=typeof t)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return a(t,arguments,r(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),i(n,t)},s(t)}var o=/*#__PURE__*/function(){function t(t){this.cache=void 0,this.cache=t}var n=t.prototype;return n.define=function(t,e){this.cache[t]=e},n.get=function(t){return this.cache[t]},n.remove=function(t){delete this.cache[t]},n.reset=function(){this.cache={}},n.load=function(t){this.cache=e({},this.cache,t)},t}(),c=/*#__PURE__*/function(t){function e(e){var n;return(n=t.call(this,e)||this).name=\"Eta Error\",n}return n(e,t),e}(/*#__PURE__*/s(Error)),l=/*#__PURE__*/function(t){function e(e){var n;return(n=t.call(this,e)||this).name=\"EtaParser Error\",n}return n(e,t),e}(c),u=/*#__PURE__*/function(t){function e(e){var n;return(n=t.call(this,e)||this).name=\"EtaRuntime Error\",n}return n(e,t),e}(c),f=/*#__PURE__*/function(t){function e(e){var n;return(n=t.call(this,e)||this).name=\"EtaNameResolution Error\",n}return n(e,t),e}(c);function h(t,e,n){var r=e.slice(0,n).split(/\\n/),i=r.length,a=r[i-1].length+1;throw t+=\" at line \"+i+\" col \"+a+\":\\n\\n \"+e.split(/\\n/)[i-1]+\"\\n \"+Array(a).join(\" \")+\"^\",new l(t)}function p(t,e,n,r){var i=e.split(\"\\n\"),a=Math.max(n-3,0),s=Math.min(i.length,n+3),o=r,c=i.slice(a,s).map(function(t,e){var r=e+a+1;return(r==n?\" >> \":\" \")+r+\"| \"+t}).join(\"\\n\"),l=new u((o?o+\":\"+n+\"\\n\":\"line \"+n+\"\\n\")+c+\"\\n\\n\"+t.message);throw l.name=t.name,l}var d=function(){return Promise.resolve()}.constructor;function g(t,e){var n=this.config,r=e&&e.async?d:Function;try{return new r(n.varName,\"options\",this.compileToString.call(this,t,e))}catch(n){throw n instanceof SyntaxError?new l(\"Bad template syntax\\n\\n\"+n.message+\"\\n\"+Array(n.message.length+1).join(\"=\")+\"\\n\"+this.compileToString.call(this,t,e)+\"\\n\"):n}}function y(t,e){var n=this.config,r=e&&e.async,i=this.compileBody,a=this.parse.call(this,t),s=n.functionHeader+'\\nlet include = (template, data) => this.render(template, data, options);\\nlet includeAsync = (template, data) => this.renderAsync(template, data, options);\\n\\nlet __eta = {res: \"\", e: this.config.escapeFunction, f: this.config.filterFunction'+(n.debug?', line: 1, templateStr: \"'+t.replace(/\\\\|\"/g,\"\\\\$&\").replace(/\\r\\n|\\n|\\r/g,\"\\\\n\")+'\"':\"\")+\"};\\n\\nfunction layout(path, data) {\\n __eta.layout = path;\\n __eta.layoutData = data;\\n}\"+(n.debug?\"try {\":\"\")+(n.useWith?\"with(\"+n.varName+\"||{}){\":\"\")+\"\\n\\n\"+i.call(this,a)+\"\\nif (__eta.layout) {\\n __eta.res = \"+(r?\"await includeAsync\":\"include\")+\" (__eta.layout, {...\"+n.varName+\", body: __eta.res, ...__eta.layoutData});\\n}\\n\"+(n.useWith?\"}\":\"\")+(n.debug?\"} catch (e) { this.RuntimeErr(e, __eta.templateStr, __eta.line, options.filepath) }\":\"\")+\"\\nreturn __eta.res;\\n\";if(n.plugins)for(var o=0;o<n.plugins.length;o++){var c=n.plugins[o];c.processFnString&&(s=c.processFnString(s,n))}return s}function v(t){for(var e=this.config,n=0,r=t.length,i=\"\";n<r;n++){var a=t[n];if(\"string\"==typeof a)i+=\"__eta.res+='\"+a+\"'\\n\";else{var s=a.t,o=a.val||\"\";e.debug&&(i+=\"__eta.line=\"+a.lineNo+\"\\n\"),\"r\"===s?(e.autoFilter&&(o=\"__eta.f(\"+o+\")\"),i+=\"__eta.res+=\"+o+\"\\n\"):\"i\"===s?(e.autoFilter&&(o=\"__eta.f(\"+o+\")\"),e.autoEscape&&(o=\"__eta.e(\"+o+\")\"),i+=\"__eta.res+=\"+o+\"\\n\"):\"e\"===s&&(i+=o+\"\\n\")}}return i}var m={\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"};function x(t){return m[t]}var _={autoEscape:!0,autoFilter:!1,autoTrim:[!1,\"nl\"],cache:!1,cacheFilepaths:!0,debug:!1,escapeFunction:function(t){var e=String(t);return/[&<>\"']/.test(e)?e.replace(/[&<>\"']/g,x):e},filterFunction:function(t){return String(t)},functionHeader:\"\",parse:{exec:\"\",interpolate:\"=\",raw:\"~\"},plugins:[],rmWhitespace:!1,tags:[\"<%\",\"%>\"],useWith:!1,varName:\"it\",defaultExtension:\".eta\"},b=/`(?:\\\\[\\s\\S]|\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})*}|(?!\\${)[^\\\\`])*`/g,w=/'(?:\\\\[\\s\\w\"'\\\\`]|[^\\n\\r'\\\\])*?'/g,S=/\"(?:\\\\[\\s\\w\"'\\\\`]|[^\\n\\r\"\\\\])*?\"/g;function E(t){return t.replace(/[.*+\\-?^${}()|[\\]\\\\]/g,\"\\\\$&\")}function F(t,e){return t.slice(0,e).split(\"\\n\").length}function O(t){var e=this.config,n=[],r=!1,i=0,a=e.parse;if(e.plugins)for(var s=0;s<e.plugins.length;s++){var o=e.plugins[s];o.processTemplate&&(t=o.processTemplate(t,e))}function c(t,i){t&&(t=function(t,e,n,r){var i,a;return Array.isArray(e.autoTrim)?(i=e.autoTrim[1],a=e.autoTrim[0]):i=a=e.autoTrim,(n||!1===n)&&(i=n),(r||!1===r)&&(a=r),a||i?\"slurp\"===i&&\"slurp\"===a?t.trim():(\"_\"===i||\"slurp\"===i?t=t.trimStart():\"-\"!==i&&\"nl\"!==i||(t=t.replace(/^(?:\\r\\n|\\n|\\r)/,\"\")),\"_\"===a||\"slurp\"===a?t=t.trimEnd():\"-\"!==a&&\"nl\"!==a||(t=t.replace(/(?:\\r\\n|\\n|\\r)$/,\"\")),t):t}(t,e,r,i),t&&(t=t.replace(/\\\\|'/g,\"\\\\$&\").replace(/\\r\\n|\\n|\\r/g,\"\\\\n\"),n.push(t)))}e.rmWhitespace&&(t=t.replace(/[\\r\\n]+/g,\"\\n\").replace(/^\\s+|\\s+$/gm,\"\")),b.lastIndex=0,w.lastIndex=0,S.lastIndex=0;for(var l,u=[a.exec,a.interpolate,a.raw].reduce(function(t,e){return t&&e?t+\"|\"+E(e):e?E(e):t},\"\"),f=new RegExp(E(e.tags[0])+\"(-|_)?\\\\s*(\"+u+\")?\\\\s*\",\"g\"),p=new RegExp(\"'|\\\"|`|\\\\/\\\\*|(\\\\s*(-|_)?\"+E(e.tags[1])+\")\",\"g\");l=f.exec(t);){var d=t.slice(i,l.index);i=l[0].length+l.index;var g=l[2]||\"\";c(d,l[1]),p.lastIndex=i;for(var y=void 0,v=!1;y=p.exec(t);){if(y[1]){var m=t.slice(i,y.index);f.lastIndex=i=p.lastIndex,r=y[2],v={t:g===a.exec?\"e\":g===a.raw?\"r\":g===a.interpolate?\"i\":\"\",val:m};break}var x=y[0];if(\"/*\"===x){var _=t.indexOf(\"*/\",p.lastIndex);-1===_&&h(\"unclosed comment\",t,y.index),p.lastIndex=_}else\"'\"===x?(w.lastIndex=y.index,w.exec(t)?p.lastIndex=w.lastIndex:h(\"unclosed string\",t,y.index)):'\"'===x?(S.lastIndex=y.index,S.exec(t)?p.lastIndex=S.lastIndex:h(\"unclosed string\",t,y.index)):\"`\"===x&&(b.lastIndex=y.index,b.exec(t)?p.lastIndex=b.lastIndex:h(\"unclosed string\",t,y.index))}v?(e.debug&&(v.lineNo=F(t,l.index)),n.push(v)):h(\"unclosed tag\",t,l.index)}if(c(t.slice(i,t.length),!1),e.plugins)for(var O=0;O<e.plugins.length;O++){var I=e.plugins[O];I.processAST&&(n=I.processAST(n,e))}return n}function I(t,e){var n=e&&e.async?this.templatesAsync:this.templatesSync;if(this.resolvePath&&this.readFile&&!t.startsWith(\"@\")){var r=e.filepath,i=n.get(r);if(this.config.cache&&i)return i;var a=this.readFile(r),s=this.compile(a,e);return this.config.cache&&n.define(r,s),s}var o=n.get(t);if(o)return o;throw new f(\"Failed to get template '\"+t+\"'\")}function A(t,n,r){var i,a=e({},r,{async:!1});return\"string\"==typeof t?(this.resolvePath&&this.readFile&&!t.startsWith(\"@\")&&(a.filepath=this.resolvePath(t,a)),i=I.call(this,t,a)):i=t,i.call(this,n,a)}function P(t,n,r){var i,a=e({},r,{async:!0});\"string\"==typeof t?(this.resolvePath&&this.readFile&&!t.startsWith(\"@\")&&(a.filepath=this.resolvePath(t,a)),i=I.call(this,t,a)):i=t;var s=i.call(this,n,a);return Promise.resolve(s)}function T(t,e){var n=this.compile(t,{async:!1});return A.call(this,n,e)}function j(t,e){var n=this.compile(t,{async:!0});return P.call(this,n,e)}var R=/*#__PURE__*/function(){function t(t){this.config=void 0,this.RuntimeErr=p,this.compile=g,this.compileToString=y,this.compileBody=v,this.parse=O,this.render=A,this.renderAsync=P,this.renderString=T,this.renderStringAsync=j,this.filepathCache={},this.templatesSync=new o({}),this.templatesAsync=new o({}),this.resolvePath=null,this.readFile=null,this.config=t?e({},_,t):e({},_)}var n=t.prototype;return n.configure=function(t){this.config=e({},this.config,t)},n.withConfig=function(t){return e({},this,{config:e({},this.config,t)})},n.loadTemplate=function(t,e,n){if(\"string\"==typeof e)(n&&n.async?this.templatesAsync:this.templatesSync).define(t,this.compile(e,n));else{var r=this.templatesSync;(\"AsyncFunction\"===e.constructor.name||n&&n.async)&&(r=this.templatesAsync),r.define(t,e)}},t}(),W=/*#__PURE__*/function(t){function e(){return t.apply(this,arguments)||this}return n(e,t),e}(R);t.Eta=W});\n//# sourceMappingURL=browser.umd.js.map\n","<div class=\"lsdt-toolbar-header\">\n <div class=\"lsdt-toolbar-title\">\n <span class=\"lsdt-toolbar-indicator\"></span>\n Legend State\n </div>\n <button\n class=\"lsdt-toggle-btn <%= it.panelVisible ? 'active' : '' %>\"\n data-action=\"toggle-panel\"\n title=\"<%= it.panelVisible ? 'Hide panel' : 'Show panel' %>\"\n >\n <%= it.panelVisible ? 'Hide' : 'Show' %> <%= it.rootName %>\n </button>\n</div>\n","<div class=\"lsdt-panel-header\">\n <h3><%= it.rootName %></h3>\n <div class=\"lsdt-panel-actions\">\n <% if (it.readOnly) { %>\n <span class=\"lsdt-readonly-badge\">Read-only</span>\n <% } %>\n <button class=\"lsdt-close-btn\" data-action=\"close-panel\" title=\"Close\">×</button>\n </div>\n</div>\n<div class=\"lsdt-panel-content\">\n <div id=\"lsdt-json-editor-root\"></div>\n</div>\n","/**\n * Eta template engine wrapper for Legend State Dev Tools\n */\nimport { Eta } from 'eta';\n\nimport toolbarTemplate from './templates/toolbar.eta';\nimport panelTemplate from './templates/panel.eta';\n\nconst eta = new Eta({\n autoEscape: true,\n autoTrim: false,\n});\n\nconst templates: Record<string, string> = {\n toolbar: toolbarTemplate,\n panel: panelTemplate,\n};\n\nexport function renderTemplate<T extends Record<string, unknown>>(\n name: string,\n data: T\n): string {\n const template = templates[name];\n if (!template) {\n console.error(`[LSDT] Template not found: ${name}`);\n return '';\n }\n try {\n return eta.renderString(template, data);\n } catch (error) {\n console.error(`[LSDT] Error rendering template ${name}:`, error);\n return '';\n }\n}\n\nexport interface ToolbarData {\n [key: string]: unknown;\n isMinimized: boolean;\n panelVisible: boolean;\n rootName: string;\n}\n\nexport function renderToolbar(data: ToolbarData): string {\n return renderTemplate('toolbar', data);\n}\n\nexport interface PanelData {\n [key: string]: unknown;\n rootName: string;\n readOnly: boolean;\n}\n\nexport function renderPanel(data: PanelData): string {\n return renderTemplate('panel', data);\n}\n","/**\n * Shared UI utilities for Legend State Dev Tools\n */\n\nconst STORAGE_PREFIX = 'lsdt';\n\nexport function escapeHtml(str: string): string {\n const div = document.createElement('div');\n div.textContent = str;\n return div.innerHTML;\n}\n\nexport function getStoredBoolean(key: string, defaultValue: boolean): boolean {\n const stored = localStorage.getItem(`${STORAGE_PREFIX}-${key}`);\n if (stored === null) return defaultValue;\n return stored === 'true';\n}\n\nexport function setStoredBoolean(key: string, value: boolean): void {\n localStorage.setItem(`${STORAGE_PREFIX}-${key}`, String(value));\n}\n\nexport function getStoredString(key: string, defaultValue: string): string {\n return localStorage.getItem(`${STORAGE_PREFIX}-${key}`) || defaultValue;\n}\n\nexport function setStoredString(key: string, value: string): void {\n localStorage.setItem(`${STORAGE_PREFIX}-${key}`, value);\n}\n\nexport function createCleanup(): {\n add: (fn: () => void) => void;\n run: () => void;\n} {\n const cleanupFns: (() => void)[] = [];\n return {\n add: (fn: () => void) => cleanupFns.push(fn),\n run: () => {\n cleanupFns.forEach((fn) => {\n try {\n fn();\n } catch (e) {\n console.error('[Legend State DevTools] Cleanup error:', e);\n }\n });\n cleanupFns.length = 0;\n },\n };\n}\n","import { renderToolbar, type ToolbarData } from './template-engine';\nimport { getStoredBoolean, setStoredBoolean } from './shared-utils';\n\nexport class Toolbar {\n private container: HTMLElement | null = null;\n private isDragging = false;\n private offsetX = 0;\n private offsetY = 0;\n private isMinimized: boolean = getStoredBoolean('toolbar-minimized', false);\n private panelVisible = false;\n\n private onTogglePanel?: () => void;\n private rootName: string;\n\n constructor(options: { onTogglePanel?: () => void; rootName?: string } = {}) {\n this.onTogglePanel = options.onTogglePanel;\n this.rootName = options.rootName || 'state$';\n }\n\n public mount(): void {\n if (this.container) return;\n\n this.container = document.createElement('div');\n this.container.id = 'lsdt-toolbar';\n if (this.isMinimized) {\n this.container.classList.add('lsdt-toolbar-minimized');\n }\n\n document.body.appendChild(this.container);\n this.render();\n this.attachEventListeners();\n }\n\n private render(): void {\n if (!this.container) return;\n\n const data: ToolbarData = {\n isMinimized: this.isMinimized,\n panelVisible: this.panelVisible,\n rootName: this.rootName,\n };\n\n this.container.innerHTML = renderToolbar(data);\n }\n\n private attachEventListeners(): void {\n if (!this.container) return;\n\n this.container.addEventListener('click', this.handleClick);\n this.container.addEventListener('mousedown', this.handleMouseDown);\n document.addEventListener('mousemove', this.handleMouseMove);\n document.addEventListener('mouseup', this.handleMouseUp);\n }\n\n private handleClick = (e: Event): void => {\n const target = e.target as HTMLElement;\n const actionElement = target.closest('[data-action]');\n if (!actionElement) return;\n\n const action = actionElement.getAttribute('data-action');\n if (action === 'toggle-panel') {\n this.onTogglePanel?.();\n }\n };\n\n private handleMouseDown = (e: MouseEvent): void => {\n const target = e.target as HTMLElement;\n if (target.tagName === 'BUTTON') return;\n\n this.isDragging = true;\n if (this.container) {\n this.container.classList.add('dragging');\n const rect = this.container.getBoundingClientRect();\n this.offsetX = e.clientX - rect.left;\n this.offsetY = e.clientY - rect.top;\n }\n };\n\n private handleMouseMove = (e: MouseEvent): void => {\n if (!this.isDragging || !this.container) return;\n\n this.container.style.left = `${e.clientX - this.offsetX}px`;\n this.container.style.top = `${e.clientY - this.offsetY}px`;\n this.container.style.right = 'auto';\n this.container.style.bottom = 'auto';\n };\n\n private handleMouseUp = (): void => {\n this.isDragging = false;\n this.container?.classList.remove('dragging');\n };\n\n public setPanelVisible(visible: boolean): void {\n this.panelVisible = visible;\n this.render();\n }\n\n public unmount(): void {\n if (this.container) {\n this.container.removeEventListener('click', this.handleClick);\n this.container.removeEventListener('mousedown', this.handleMouseDown);\n this.container.remove();\n this.container = null;\n }\n document.removeEventListener('mousemove', this.handleMouseMove);\n document.removeEventListener('mouseup', this.handleMouseUp);\n }\n}\n","import { renderPanel, type PanelData } from './template-engine';\n\nexport class Panel {\n private container: HTMLElement | null = null;\n private visible = false;\n private rootName: string;\n private readOnly: boolean;\n private onClose?: () => void;\n private position: 'left' | 'right';\n\n constructor(options: {\n rootName?: string;\n readOnly?: boolean;\n onClose?: () => void;\n position?: 'left' | 'right';\n } = {}) {\n this.rootName = options.rootName || 'state$';\n this.readOnly = options.readOnly || false;\n this.onClose = options.onClose;\n this.position = options.position || 'right';\n }\n\n public toggle(): void {\n if (this.visible) {\n this.hide();\n } else {\n this.show();\n }\n }\n\n public show(): void {\n this.visible = true;\n\n if (!this.container) {\n this.container = document.createElement('div');\n this.container.id = 'lsdt-panel';\n if (this.position === 'left') {\n this.container.classList.add('lsdt-panel-left');\n }\n document.body.appendChild(this.container);\n this.attachEventListeners();\n }\n\n this.render();\n }\n\n public hide(): void {\n this.visible = false;\n this.container?.remove();\n this.container = null;\n }\n\n public isVisible(): boolean {\n return this.visible;\n }\n\n public getEditorRoot(): HTMLElement | null {\n return this.container?.querySelector('#lsdt-json-editor-root') || null;\n }\n\n private render(): void {\n if (!this.container) return;\n\n const data: PanelData = {\n rootName: this.rootName,\n readOnly: this.readOnly,\n };\n\n this.container.innerHTML = renderPanel(data);\n }\n\n private attachEventListeners(): void {\n if (!this.container) return;\n this.container.addEventListener('click', this.handleClick);\n }\n\n private handleClick = (e: Event): void => {\n const target = e.target as HTMLElement;\n const actionElement = target.closest('[data-action]');\n if (!actionElement) return;\n\n const action = actionElement.getAttribute('data-action');\n if (action === 'close-panel') {\n this.onClose?.();\n }\n };\n\n public unmount(): void {\n if (this.container) {\n this.container.removeEventListener('click', this.handleClick);\n this.container.remove();\n this.container = null;\n }\n this.visible = false;\n }\n}\n","import type { ObservableParam } from '@legendapp/state';\n\nexport interface StateBridgeOptions {\n onSnapshot: (snapshot: unknown) => void;\n}\n\nexport interface StateBridge {\n getSnapshot: () => unknown;\n setData: (newData: unknown) => void;\n destroy: () => void;\n}\n\nexport function createStateBridge(\n observable$: ObservableParam<any>,\n options: StateBridgeOptions\n): StateBridge {\n // Get initial snapshot\n const getSnapshot = () => {\n try {\n return JSON.parse(JSON.stringify((observable$ as any).peek()));\n } catch {\n return undefined;\n }\n };\n\n // Subscribe to changes using onChange\n let dispose: (() => void) | null = null;\n try {\n dispose = (observable$ as any).onChange(\n () => {\n const snapshot = getSnapshot();\n options.onSnapshot(snapshot);\n },\n { trackingType: false }\n );\n } catch {\n console.warn('[Legend State DevTools] Could not subscribe to observable changes via onChange');\n }\n\n return {\n getSnapshot,\n setData: (newData: unknown) => {\n try {\n (observable$ as any).set(newData);\n } catch (e) {\n console.error('[Legend State DevTools] Failed to set data:', e);\n }\n },\n destroy: () => {\n if (dispose) {\n dispose();\n dispose = null;\n }\n },\n };\n}\n","const r=(r,e,t,n,o)=>{if(!n)throw new Error(null!=o?o:`Invalid property path: ${e}\\nCouldn't access \"${t}\" in ${JSON.stringify(r)}`)},e=r=>\"object\"==typeof r&&null!==r&&!Array.isArray(r),t=r=>Array.isArray(r),n=(r,e)=>r.filter(((r,t)=>t!==e)),o=(r,e,o,a={})=>{const{remove:s=!1,createNew:l=!0,noError:f=!1}=a,u=r,c=\"string\"==typeof(y=e)?y:\"number\"==typeof y?String(y):y.reduce(((r,e)=>\"number\"==typeof e?`${r}[${e}]`:\"\"===r?e:`${r}.${e}`),\"\");var y;const p=Object.assign(Object.assign({},a),{remove:s,createNew:l,noError:f,fullData:u,fullPath:c}),m=Array.isArray(e)?e:(r=>Array.isArray(r)?r:r.split(/(\\.|\\[\\d+\\])/).filter((r=>\".\"!==r&&\"\"!==r)).map((r=>{const e=/\\[(\\d+)\\]/.exec(r);return e?Number(e[1]):r})).flat())(e).filter((r=>\"\"!==r));return t(r)&&s&&1===m.length?n(r,m[0]):i(r,m,o,p)},i=(o,l,f,u)=>{const c=e(o)?Object.assign({},o):null,y=t(o)?[...o]:null;if(0===l.length)return o;if(!c&&!y)throw new Error(\"Can't assign property -- invalid input object\");const{createNew:p,remove:m,noError:b,fullData:g,fullPath:h}=u,d=l[0];if(y&&\"string\"==typeof d)return y.map((r=>i(r,l,f,u)));if(1===l.length){if(c&&\"string\"==typeof d){const r=a(c,d,f,u);return null!=r?r:c}return y&&\"number\"==typeof d?(s(y,d,f,u),y):(r(g,h,d,b),o)}const v=c||y||[];if(m&&2===l.length&&\"number\"==typeof l[1]){const e=v[d],o=l[1];return t(e)?v[d]=n(e,o):r(g,h,d,b,\"Trying to remove an indexed item from an object that is not an array\"),v}const A=l.slice(1);if(d in o){if(w=v[d],!t(w)&&!e(w)){if(!p)return r(g,h,d,b),v;v[d]={}}return v[d]=i(v[d],A,f,u),v}var w;if(p){const r=\"number\"==typeof A[0]?[]:{};if(c)return v[d]=r,v[d]=i(v[d],A,f,u),v;if(y&&Array.isArray(v)){v.push(r);const e=v.length-1;return v[e]=i(v[e],A,f,u),v}}return r(g,h,d,b),v},a=(e,t,n,o)=>{const{remove:i,createNew:a,noError:s,insertAfter:l,insertBefore:f,fullData:u,fullPath:c}=o;if(void 0!==f||void 0!==l){const r=Object.entries(e);let o=1/0;return o=\"number\"==typeof f?f:\"number\"==typeof l?l:r.findIndex((([r,e])=>r===(null!=f?f:l))),l&&o++,r.splice(o,0,[t,n]),Object.fromEntries(r)}const y=t in e;i?y?delete e[t]:r(u,c,t,s):a||y?e[t]=n:r(u,c,t,s)},s=(e,t,n,o)=>{const{noError:i,fullData:a,fullPath:s,createNew:l,insert:f}=o;f&&e.splice(t,0,n),t in e?e[t]=n:l?e.push(n):r(a,s,t,i)};export{o as default};\n","const r=(n,o,i)=>{const a=Array.isArray(o)?o:t(o);if(0===a.length)return n;const c=a[0];if(Array.isArray(n)&&\"number\"!=typeof c)return n.map((t=>r(t,a,i)));if(\"object\"!=typeof n||null===n||!(c in n))return e(n,c,i);const f=n[c];return 1===a.length?f:r(f,a.slice(1),i)},t=r=>r.split(/(\\.|\\[\\d+\\])/).filter((r=>\".\"!==r&&\"\"!==r)).map((r=>{const t=/\\[(\\d+)\\]/.exec(r);return t?Number(t[1]):r})).flat(),e=(r,t,e)=>{if(void 0===e)throw new Error(`Unable to extract object property\\nLooking for property: ${t}\\nIn object: ${JSON.stringify(r)}`);return e};export{r as default};\n","import{jsxs as e,jsx as t,Fragment as n}from\"react/jsx-runtime\";import{createContext as r,useContext as o,useState as i,useRef as a,useEffect as l,useCallback as s,useMemo as c}from\"react\";import d from\"object-property-assigner\";export{default as assign}from\"object-property-assigner\";import u from\"object-property-extractor\";export{default as extract}from\"object-property-extractor\";function p(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&\"function\"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}function g(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{s(r.next(e))}catch(e){i(e)}}function l(e){try{s(r.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,l)}s((r=r.apply(e,t||[])).next())}))}\"function\"==typeof SuppressedError&&SuppressedError;const m=({className:n,name:r,value:o,setValue:i,handleKeyPress:a,styles:l,textAreaRef:s})=>{if(\"string\"!=typeof o)return null;const c=\"\\n\"===o.slice(-1)?o+\".\":o;return e(\"div\",{style:{display:\"grid\"},children:[t(\"textarea\",{id:`${r}_textarea`,ref:s,style:Object.assign({height:\"auto\",gridArea:\"1 / 1 / 2 / 2\",overflowY:\"auto\",whiteSpace:\"pre-wrap\"},l),rows:1,className:n,name:`${r}_textarea`,value:o,onChange:e=>i(e.target.value),autoFocus:!0,onFocus:e=>{o.length<40&&e.target.select()},onKeyDown:a}),t(\"span\",{className:n,style:Object.assign({visibility:\"hidden\",height:\"auto\",gridArea:\"1 / 1 / 2 / 2\",color:\"red\",opacity:.9,whiteSpace:\"pre-wrap\",overflowY:\"auto\",border:\"1px solid transparent\"},l),children:c})]})},h=e=>null!==e&&\"object\"==typeof e,y=(e,t,n,r=\"\")=>{if(!n&&!r)return!0;switch(e){case\"collection\":if(n){if(n(t,r))return!0;if(!f(r,t,n))return!1}if(!n&&r&&!f(r,t))return!1;break;case\"value\":if(n&&!n(t,r))return!1;if(!n&&r&&!b(t,r))return!1}return!0},f=(e=\"\",t,n=b)=>{const r=t.value;return Object.entries(r).some((([o,i])=>{const a=[...t.path,o],l=Object.assign(Object.assign({},t),{key:o,path:a,level:t.level+1,value:i,size:a.length,parentData:r});return h(i)?f(e,l,n):n(l,e)}))},b=(e,t=\"\")=>{const{value:n}=e;if(null===n&&\"null\".includes(t.toLowerCase()))return!0;switch(typeof n){case\"string\":return n.toLowerCase().includes(t.toLowerCase());case\"number\":return!!String(n).includes(t);case\"boolean\":return n?\"true\".includes(t.toLowerCase())||\"1\"===t:\"false\".includes(t.toLowerCase())||\"0\"===t;default:return!1}},v=({key:e,path:t},n=\"\")=>!!b({value:e},n)||!!t.some((e=>b({value:e},n))),j=(e,t)=>(null!=t?t:\"\")+e.map((e=>\"\"===e?String.fromCharCode(0):e)).join(\".\"),E=e=>e.shiftKey?\"Shift\":e.metaKey?\"Meta\":e.ctrlKey?\"Control\":e.altKey?\"Alt\":void 0,w=(e,t,n)=>{const r=e.key,o=E(e);if(Array.isArray(t))return!!o&&t.includes(o);const{key:i,modifier:a}=t;return(\"stringLineBreak\"!==n||\"Enter\"!==r||\"Shift\"!==o||\"Enter\"!==i||!(null==a?void 0:a.includes(\"Shift\")))&&(r===i&&(a===o||Array.isArray(a)&&a.includes(o)))},D={key:\"Enter\"},C={confirm:D,cancel:{key:\"Escape\"},objectConfirm:Object.assign(Object.assign({},D),{modifier:[\"Meta\",\"Shift\",\"Control\"]}),objectLineBreak:D,stringConfirm:D,stringLineBreak:Object.assign(Object.assign({},D),{modifier:[\"Shift\"]}),numberConfirm:D,numberUp:{key:\"ArrowUp\"},numberDown:{key:\"ArrowDown\"},tabForward:{key:\"Tab\"},tabBack:{key:\"Tab\",modifier:\"Shift\"},booleanConfirm:D,booleanToggle:{key:\" \"},clipboardModifier:[\"Meta\",\"Control\"],collapseModifier:[\"Alt\"]},O=(e,t,n=\"next\",r)=>{const o=t.slice(0,t.length-1),i=t.slice(-1)[0];if(void 0===i)return null;const a=u(e,o),l=S(a);Array.isArray(a)||r(l,(({key:e,value:t})=>[e,t]));const s=l.findIndex((e=>e.key===i)),c=l[s+(\"next\"===n?1:-1)];return c?h(c.value)?0===Object.keys(c.value).length?O(e,[...o,c.key],n,r):k(e,[...o,c.key],n,r):[...o,c.key]:0===o.length?null:O(e,o,n,r)},k=(e,t,n=\"next\",r)=>{const o=u(e,t);if(!h(o))return t;const i=Array.isArray(o)?o.map(((e,t)=>t)):Object.keys(o);r(i,(e=>[e,o]));const a=\"next\"===n?i[0]:i[i.length-1];return k(e,[...t,a],n,r)},S=e=>Array.isArray(e)?e.map(((e,t)=>({index:t,value:e,key:t}))):Object.entries(e).map((([e,t],n)=>({key:e,value:t,index:n}))),N=(e,t)=>{var n,r,o,i;const a=e.current,l=null!==(n=null==a?void 0:a.selectionStart)&&void 0!==n?n:1/0,s=null!==(r=null==a?void 0:a.selectionEnd)&&void 0!==r?r:1/0,c=(null===(o=null==a?void 0:a.textContent)||void 0===o?void 0:o.slice(0,l))+t+(null===(i=null==a?void 0:a.textContent)||void 0===i?void 0:i.slice(s));return a.value=c,null==a||a.setSelectionRange(l+1,l+1),c},T=e=>{if(e!==x){if(Array.isArray(e))return e.map((e=>T(e)));if(e&&\"object\"==typeof e)for(const t in e)e[t]=T(e[t]);return e}},x=\"__undefined__\",A={displayName:\"Default\",fragments:{edit:\"rgb(42, 161, 152)\"},styles:{container:{backgroundColor:\"#f6f6f6\",fontFamily:\"monospace\"},collection:{},collectionInner:{},collectionElement:{},dropZone:{},property:\"#292929\",bracket:{color:\"rgb(0, 43, 54)\",fontWeight:\"bold\"},itemCount:{color:\"rgba(0, 0, 0, 0.3)\",fontStyle:\"italic\"},string:\"rgb(203, 75, 22)\",number:\"rgb(38, 139, 210)\",boolean:\"green\",null:{color:\"rgb(220, 50, 47)\",fontVariant:\"small-caps\",fontWeight:\"bold\"},input:[\"#292929\"],inputHighlight:\"#b3d8ff\",error:{fontSize:\"0.8em\",color:\"red\",fontWeight:\"bold\"},iconCollection:\"rgb(0, 43, 54)\",iconEdit:\"edit\",iconDelete:\"rgb(203, 75, 22)\",iconAdd:\"edit\",iconCopy:\"rgb(38, 139, 210)\",iconOk:\"green\",iconCancel:\"rgb(203, 75, 22)\"}},P=r({getStyles:()=>({}),icons:{}}),R=({theme:e=A,icons:n={},docRoot:r,children:o})=>{const i=I(e,r);return t(P.Provider,{value:{getStyles:(e,t)=>\"function\"==typeof i[e]?i[e](t):i[e],icons:n},children:o})},K=()=>o(P),I=(e,t)=>{var n,r,o,i;const a={},l=(Array.isArray(e)?e:[e]).map((e=>_(e)?V({fragments:{},styles:e},a):V(e,a))),s=V(A,{});Object.keys(s).forEach((e=>{const t=e;l.forEach((e=>{e[t]&&(s[t]=Object.assign(Object.assign({},s[t]),e[t]))}))}));const c=Object.assign({},s);return Object.entries(a).forEach((([e,t])=>{const n=e;c[n]=e=>{const r=t(e)||{};return Object.assign(Object.assign({},s[n]),r)}})),\"function\"!=typeof(null==c?void 0:c.inputHighlight)&&(null===(n=null==c?void 0:c.inputHighlight)||void 0===n?void 0:n.backgroundColor)&&t.style.setProperty(\"--jer-highlight-color\",null===(r=null==c?void 0:c.inputHighlight)||void 0===r?void 0:r.backgroundColor),\"function\"!=typeof(null==c?void 0:c.iconCopy)&&(null===(o=null==c?void 0:c.iconCopy)||void 0===o?void 0:o.color)&&t.style.setProperty(\"--jer-icon-copy-color\",null===(i=null==c?void 0:c.iconCopy)||void 0===i?void 0:i.color),c},V=(e,t)=>{const{fragments:n,styles:r}=e,o={};return Object.entries(r).forEach((([e,r])=>{const i=(Array.isArray(r)?r:[r]).reduce(((r,o)=>{var i,a;if(\"function\"==typeof o)return t[e]=o,Object.assign({},r);if(\"string\"==typeof o){const t=null!==(i=null==n?void 0:n[o])&&void 0!==i?i:o;return\"string\"==typeof t?Object.assign(Object.assign({},r),{[null!==(a=F[e])&&void 0!==a?a:\"color\"]:t}):Object.assign(Object.assign({},r),t)}return Object.assign(Object.assign({},r),o)}),{});o[e]=i})),o},_=e=>!(\"styles\"in e),F={container:\"backgroundColor\",collection:\"backgroundColor\",collectionInner:\"backgroundColor\",collectionElement:\"backgroundColor\",dropZone:\"borderColor\",inputHighlight:\"backgroundColor\"},L=r(null),z=({children:e,onEditEvent:n,onCollapse:r})=>{const[o,l]=i(null),[s,c]=i(null),[d,u]=i(null),[p,g]=i({path:null,pathString:null}),m=a(null),h=a(\"next\"),y=a(null);return t(L.Provider,{value:{collapseState:o,setCollapseState:e=>{l(e),r&&null!==e&&(Array.isArray(e)?e.forEach((e=>r(e))):r(e)),null!==e&&setTimeout((()=>l(null)),2e3)},getMatchingCollapseState:e=>{if(Array.isArray(o)){for(const t of o)if(B(e,t))return t;return null}return B(e,o)?o:null},currentlyEditingElement:s,setCurrentlyEditingElement:(e,t)=>{const r=\"string\"==typeof e||null===e?e:j(e,\"key\"===t?\"key_\":void 0);null!==s&&null!==r&&null!==m.current&&m.current(),c(r),n&&(Array.isArray(e)||null===e)&&n(e,\"key\"===t),m.current=\"function\"==typeof t?t:null},areChildrenBeingEdited:e=>null!==s&&s.includes(e),previouslyEditedElement:y.current,setPreviouslyEditedElement:e=>{y.current=e},tabDirection:h.current,setTabDirection:e=>{h.current=e},previousValue:d,setPreviousValue:u,dragSource:p,setDragSource:g},children:e})},M=()=>{const e=o(L);if(!e)throw new Error(\"Missing Context Provider\");return e},B=(e,t)=>{if(null===t)return!1;if(!t.includeChildren)return t.path.every(((t,n)=>e[n]===t))&&t.path.length===e.length;for(const[n,r]of t.path.entries())if(r!==e[n])return!1;return!0},W=\"**INVALID_FUNCTION**\",G=({nodeData:r,showStringQuotes:o=!0,stringTruncate:a=200,pathString:l,canEdit:s,setIsEditing:c,styles:d,translate:u,value:p,TextWrapper:g=({children:e})=>e})=>{const m=null!=p?p:r.value,[h,y]=i(!1),f=o?'\"':\"\",b=m.length>a,v=()=>{s?c(!0):y(!h)};return e(\"div\",{id:`${l}_display`,onDoubleClick:v,onClick:e=>{(e.getModifierState(\"Control\")||e.getModifierState(\"Meta\"))&&v()},className:\"jer-value-string\",style:d,children:[f,b?e(n,h?{children:[t(g,{children:e(\"span\",{children:[m,f]})}),e(\"span\",{className:\"jer-string-expansion jer-show-less\",onClick:()=>y(!1),children:[\" \",u(\"SHOW_LESS\",r)]})]}:{children:[e(g,{children:[t(\"span\",{children:m.slice(0,a-2).trimEnd()}),\" \"]}),t(\"span\",{className:\"jer-string-expansion jer-ellipsis\",onClick:()=>y(!0),children:\"...\"}),f]}):t(g,{children:`${m}${f}`})]})},Y=({styles:e,pathString:n,value:r,setValue:o,handleEdit:i,handleKeyboard:l,keyboardCommon:s})=>{const c=a(null);return t(m,{className:\"jer-input-text\",textAreaRef:c,name:n,value:r,setValue:o,handleKeyPress:e=>{l(e,Object.assign({stringConfirm:i,stringLineBreak:()=>{const e=N(c,\"\\n\");o(e)}},s))},styles:e})},H=n=>{var{isEditing:r,path:o,enumType:i}=n,a=p(n,[\"isEditing\",\"path\",\"enumType\"]);const{getStyles:l}=K(),s=j(o),{value:c,setValue:d,nodeData:u,handleEdit:g,handleKeyboard:m,keyboardCommon:h}=a;return r&&i?e(\"div\",{className:\"jer-select jer-select-enums\",children:[t(\"select\",{name:`${s}-value-select`,className:\"jer-select-inner\",onChange:e=>d(e.target.value),value:c,autoFocus:!0,onKeyDown:e=>{m(e,Object.assign({stringConfirm:g},h))},children:i.values.map((e=>t(\"option\",{value:e,children:e},e)))}),t(\"span\",{className:\"focus\"})]}):r?t(Y,Object.assign({styles:l(\"input\",u),pathString:s},a,{setValue:a.setValue})):t(G,Object.assign({pathString:s,styles:l(\"string\",u)},a))},U=({value:e,setValue:n,isEditing:r,path:o,setIsEditing:i,handleEdit:a,nodeData:l,handleKeyboard:s,keyboardCommon:c})=>{const{getStyles:d}=K();return r?t(\"input\",{className:\"jer-input-number\",type:\"text\",name:j(o),value:e,onChange:e=>n(e.target.value.replace(/[^0-9.-]/g,\"\")),autoFocus:!0,onFocus:e=>setTimeout((()=>e.target.select()),10),onKeyDown:t=>s(t,Object.assign({numberConfirm:a,numberUp:()=>n(Number(e)+1),numberDown:()=>n(Number(e)-1)},c)),style:Object.assign({width:String(e).length/1.5+2+\"em\"},d(\"input\",l))}):t(\"span\",{onDoubleClick:()=>i(!0),className:\"jer-value-number\",style:d(\"number\",l),children:e})},$=({value:e,setValue:n,isEditing:r,path:o,setIsEditing:i,handleEdit:a,nodeData:l,handleKeyboard:s,keyboardCommon:c})=>{const{getStyles:d}=K();return\"boolean\"!=typeof e?null:r?t(\"input\",{className:\"jer-input-boolean\",type:\"checkbox\",name:j(o),checked:e,onChange:()=>n(!e),onKeyDown:t=>{\" \"===t.key&&t.preventDefault(),s(t,Object.assign({booleanConfirm:a,booleanToggle:()=>n(!e)},c))},autoFocus:!0}):t(\"span\",{onDoubleClick:()=>i(!0),className:\"jer-value-boolean\",style:d(\"boolean\",l),children:String(e)})},Z=(e,t)=>{const n=a(void 0),r=a(t);l((()=>{r.current=t}),[t]);const o=e=>{r.current(e)};l((()=>{if(window.clearTimeout(n.current),e)return n.current=window.setTimeout((()=>{window.addEventListener(\"keydown\",o)}),100),()=>{window.clearTimeout(n.current),window.removeEventListener(\"keydown\",o)}}),[e])},X=({value:e,isEditing:n,setIsEditing:r,handleEdit:o,nodeData:i,handleKeyboard:a,keyboardCommon:l})=>{const{getStyles:s}=K();return Z(n,(e=>a(e,Object.assign({confirm:o},l)))),t(\"div\",{onDoubleClick:()=>r(!0),className:\"jer-value-null\",style:s(\"null\",i),children:String(e)})},J=({value:e})=>{let n=\"Error!\";switch(typeof e){case\"string\":e===W&&(n=\"Function\");break;case\"undefined\":n=\"Undefined\";break;case\"symbol\":n=\"Symbol\"}return t(\"span\",{className:\"jer-value-invalid\",children:n})},Q=({size:n,style:r,className:o})=>e(\"svg\",{viewBox:\"0 0 24 24\",fill:\"currentColor\",width:n,height:n,className:o,style:r,children:[t(\"path\",{d:\"M13 7h-2v4H7v2h4v4h2v-4h4v-2h-4z\"}),t(\"path\",{d:\"M12 2C6.486 2 2 6.486 2 12s4.486 10 10 10 10-4.486 10-10S17.514 2 12 2zm0 18c-4.411 0-8-3.589-8-8s3.589-8 8-8 8 3.589 8 8-3.589 8-8 8z\"})]}),q=({size:n,style:r,className:o})=>e(\"svg\",{viewBox:\"0 0 24 24\",fill:\"currentColor\",width:n,height:n,className:o,style:r,transform:\"translate(0, 0.5)\",children:[t(\"path\",{d:\"M7 17.013l4.413-.015 9.632-9.54c.378-.378.586-.88.586-1.414s-.208-1.036-.586-1.414l-1.586-1.586c-.756-.756-2.075-.752-2.825-.003L7 12.583v4.43zM18.045 4.458l1.589 1.583-1.597 1.582-1.586-1.585 1.594-1.58zM9 13.417l6.03-5.973 1.586 1.586-6.029 5.971L9 15.006v-1.589z\"}),t(\"path\",{d:\"M5 21h14c1.103 0 2-.897 2-2v-8.668l-2 2V19H8.158c-.026 0-.053.01-.079.01-.033 0-.066-.009-.1-.01H5V5h6.847l2-2H5c-1.103 0-2 .897-2 2v14c0 1.103.897 2 2 2z\"})]}),ee=({size:e,style:n,className:r})=>t(\"svg\",{viewBox:\"0 0 24 24\",fill:\"currentColor\",width:e,height:e,className:r,style:n,children:t(\"path\",{d:\"M6 19a2 2 0 002 2h8a2 2 0 002-2V7H6v12m2.46-7.12l1.41-1.41L12 12.59l2.12-2.12 1.41 1.41L13.41 14l2.12 2.12-1.41 1.41L12 15.41l-2.12 2.12-1.41-1.41L10.59 14l-2.13-2.12M15.5 4l-1-1h-5l-1 1H5v2h14V4h-3.5z\"})}),te=({size:n,style:r,className:o})=>e(\"svg\",{fill:\"none\",stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:2,viewBox:\"0 0 24 24\",width:n,height:n,className:o,style:r,children:[t(\"path\",{d:\"M9 2 H15 A1 1 0 0 1 16 3 V5 A1 1 0 0 1 15 6 H9 A1 1 0 0 1 8 5 V3 A1 1 0 0 1 9 2 z\"}),t(\"path\",{d:\"M8 4H6a2 2 0 00-2 2v14a2 2 0 002 2h12a2 2 0 002-2v-2M16 4h2a2 2 0 012 2v4M21 14H11\"}),t(\"path\",{d:\"M15 10l-4 4 4 4\"})]}),ne=({size:n,style:r,className:o})=>e(\"svg\",{fill:\"none\",stroke:\"currentColor\",strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:2,viewBox:\"0 0 24 24\",width:n,height:n,className:o,style:r,children:[t(\"path\",{d:\"M22 11.08V12a10 10 0 11-5.93-9.14\"}),t(\"path\",{d:\"M22 4L12 14.01l-3-3\"})]}),re=({size:e,style:n,className:r})=>t(\"svg\",{baseProfile:\"tiny\",viewBox:\"0 0 24 24\",fill:\"currentColor\",width:e,height:e,className:r,style:n,children:t(\"path\",{d:\"M12 4c-4.411 0-8 3.589-8 8s3.589 8 8 8 8-3.589 8-8-3.589-8-8-8zm-5 8c0-.832.224-1.604.584-2.295l6.711 6.711A4.943 4.943 0 0112 17c-2.757 0-5-2.243-5-5zm9.416 2.295L9.705 7.584A4.943 4.943 0 0112 7c2.757 0 5 2.243 5 5 0 .832-.224 1.604-.584 2.295z\"})}),oe=({size:e,style:n,className:r})=>t(\"svg\",{viewBox:\"0 0 512 512\",fill:\"currentColor\",width:e,height:e,className:r,style:n,children:t(\"path\",{d:\"M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z\"})}),ie=({name:e,nodeData:r})=>{var o,i,a,l,s,c,d;const{getStyles:u,icons:p}=K(),g={size:\"1.4em\",className:\"jer-icon\"};switch(e){case\"add\":return null!==(o=null==p?void 0:p.add)&&void 0!==o?o:t(Q,Object.assign({},g,{style:u(\"iconAdd\",r)}));case\"edit\":return null!==(i=null==p?void 0:p.edit)&&void 0!==i?i:t(q,Object.assign({},g,{style:u(\"iconEdit\",r)}));case\"delete\":return null!==(a=null==p?void 0:p.delete)&&void 0!==a?a:t(ee,Object.assign({},g,{style:u(\"iconDelete\",r),size:\"1.45em\"}));case\"copy\":return null!==(l=null==p?void 0:p.copy)&&void 0!==l?l:t(te,Object.assign({},g,{style:u(\"iconCopy\",r),size:\"1.2em\"}));case\"ok\":return null!==(s=null==p?void 0:p.ok)&&void 0!==s?s:t(ne,Object.assign({},g,{style:Object.assign({fontSize:\"90%\"},u(\"iconOk\",r))}));case\"cancel\":return null!==(c=null==p?void 0:p.cancel)&&void 0!==c?c:t(re,Object.assign({},g,{style:Object.assign({fontSize:\"130%\"},u(\"iconCancel\",r))}));case\"chevron\":return null!==(d=null==p?void 0:p.chevron)&&void 0!==d?d:t(oe,{size:\"1em\",style:u(\"iconCollection\",r)});default:return t(n,{})}},ae=({startEdit:r,handleDelete:o,handleAdd:a,enableClipboard:l,type:s,customButtons:c,nodeData:d,translate:p,keyboardControls:g,handleKeyboard:m,editConfirmRef:h,getNewKeyOptions:y,jsonStringify:f,onEditEvent:b,showIconTooltips:v})=>{const{getStyles:j}=K(),w=p(\"KEY_NEW\",d),[D,C]=i(w),[O,k]=i(!1),{key:S,path:N,value:T}=d,x=Array.isArray(O),A=e=>{var t;if(b&&b(e?[...N,null]:null,e),!e)return void k(!1);const n=Object.keys(u(d.fullData,N)),r=y?null===(t=y(d))||void 0===t?void 0:t.filter((e=>!n.includes(e))):null;r&&C(\"\"),k(null==r||r)};return e(\"div\",{className:\"jer-edit-buttons\",style:{opacity:O?1:void 0},onClick:e=>e.stopPropagation(),children:[l&&t(\"div\",{onClick:e=>{var t;e.stopPropagation();let n,r,o=\"value\",i=\"\",a=null;if(l){const s=E(e);if(s&&g.clipboardModifier.includes(s)?(n=se(N),i=n,o=\"path\"):(n=T,i=\"object\"==typeof n?f(T):String(n)),!navigator.clipboard)return void(\"function\"==typeof l&&l({success:!1,value:n,stringValue:i,path:N,key:S,type:o,errorMessage:\"Can't access clipboard API\"}));null===(t=navigator.clipboard)||void 0===t||t.writeText(i).then((()=>r=!0)).catch((e=>{r=!1,a=e.message})).finally((()=>{\"function\"==typeof l&&l({success:r,errorMessage:a,value:n,stringValue:i,path:N,key:S,type:o})}))}},className:\"jer-copy-pulse\",title:v?p(\"TOOLTIP_COPY\",d):\"\",children:t(ie,{name:\"copy\",nodeData:d})}),r&&t(\"div\",{onClick:r,title:v?p(\"TOOLTIP_EDIT\",d):\"\",children:t(ie,{name:\"edit\",nodeData:d})}),o&&t(\"div\",{onClick:o,title:v?p(\"TOOLTIP_DELETE\",d):\"\",children:t(ie,{name:\"delete\",nodeData:d})}),a&&t(\"div\",{onClick:()=>{\"object\"===s?A(!0):a(\"\")},title:v?p(\"TOOLTIP_ADD\",d):\"\",children:t(ie,{name:\"add\",nodeData:d})}),null==c?void 0:c.map((({Element:e,onClick:n},r)=>t(\"div\",{onClick:e=>n&&n(d,e),children:t(e,{nodeData:d})},r))),O&&a&&\"object\"===s&&e(n,{children:[x?e(\"div\",{className:\"jer-select jer-select-keys\",children:[e(\"select\",{name:\"new-key-select\",className:\"jer-select-inner\",onChange:e=>{a(e.target.value),A(!1)},defaultValue:\"\",autoFocus:!0,onKeyDown:e=>{m(e,{cancel:()=>A(!1)})},children:[t(\"option\",{value:\"\",disabled:!0,children:O.length>0?p(\"KEY_SELECT\",d):p(\"NO_KEY_OPTIONS\",d)}),O.map((e=>t(\"option\",{value:e,children:e},e)))]}),t(\"span\",{className:\"focus\"})]}):t(\"input\",{className:\"jer-input-new-key\",type:\"text\",name:\"new-object-key\",value:D,onChange:e=>C(e.target.value),autoFocus:!0,onFocus:e=>e.target.select(),onKeyDown:e=>{m(e,{stringConfirm:()=>{a&&(A(!1),a(D),C(w))},cancel:()=>{A(!1),C(w)}})},style:j(\"input\",d)}),t(le,{onOk:()=>{x&&!D||(A(!1),a(D))},onCancel:()=>{A(!1)},nodeData:d,editConfirmRef:h,hideOk:x})]})]})},le=({onOk:n,onCancel:r,nodeData:o,editConfirmRef:i,hideOk:a=!1})=>e(\"div\",{className:\"jer-confirm-buttons\",children:[!a&&t(\"div\",{onClick:n,ref:i,children:t(ie,{name:\"ok\",nodeData:o})}),t(\"div\",{onClick:r,children:t(ie,{name:\"cancel\",nodeData:o})})]}),se=e=>e.reduce(((e,t)=>\"number\"==typeof t?`${e}[${t}]`:\"\"===e?t:`${e}.${t}`),\"\"),ce=[\"string\",\"number\",\"boolean\",\"null\",\"object\",\"array\"],de=({props:e,collapsed:t})=>{const{data:n,nodeData:r,parentData:o,onEdit:a,onError:l,showErrorMessages:c,restrictEditFilter:d,restrictDeleteFilter:u,restrictAddFilter:p,restrictDragFilter:g,translate:m,errorMessageTimeout:h}=e,{currentlyEditingElement:y,setCurrentlyEditingElement:f}=M(),[b,v]=i(null),E=Object.assign(Object.assign({},r),{collapsed:t}),{path:w,key:D,size:C}=E,O=j(w),k=!d(E),S=!u(E),N=!p(E),T=!g(E)&&S&&null===y,x=e=>{c&&(v(e),setTimeout((()=>v(null)),h)),console.warn(\"Error\",e)},A=s(((e,t)=>{x(e.message),l&&l({currentData:E.fullData,errorValue:t,currentValue:n,name:D,path:w,error:e})}),[l,c]),P=y===O,R=y===`key_${O}`,K=\"number\"==typeof w.slice(-1)[0],I={isEditing:P,isEditingKey:R,isArray:K,canEditKey:null!==o&&k&&N&&S&&!K},V=\"\"===D&&w.length>0?m(\"EMPTY_STRING\",E):null;return{pathString:O,nodeData:E,path:w,name:D,size:C,canEdit:k,canDelete:S,canAdd:N,canDrag:T,error:b,showError:x,onError:A,setError:v,handleEditKey:e=>{if(f(null),D===e)return;if(!o)return;const t=w.slice(0,-1);if(Object.keys(o).includes(e))return void A({code:\"KEY_EXISTS\",message:m(\"ERROR_KEY_EXISTS\",E)},e);const n=Object.fromEntries(Object.entries(o).map((([t,n])=>t===D?[e,n]:[t,n])));a(n,t).then((t=>{t&&A({code:\"UPDATE_ERROR\",message:t},e)}))},derivedValues:I,emptyStringKey:V}},ue=({canDrag:e,canDragOnto:n,path:r,nodeData:o,onMove:a,onError:l,translate:s})=>{const{getStyles:d}=K(),{dragSource:u,setDragSource:p}=M(),[g,m]=i(!1),h=j(r),y=c((()=>e?{onDragStart:e=>{e.stopPropagation(),p({path:r,pathString:h})},onDragEnd:e=>{e.stopPropagation(),p({path:null,pathString:null})}}:{}),[e,h]),f=c((()=>e=>n?{onDragOver:e=>{e.stopPropagation(),e.preventDefault()},onDrop:t=>{t.stopPropagation(),v(e),p({path:null,pathString:null}),m(!1)},onDragEnter:t=>{var n;t.stopPropagation(),h.startsWith(null!==(n=u.pathString)&&void 0!==n?n:\"\")||m(e)},onDragExit:e=>{e.stopPropagation(),m(!1)}}:{}),[u,n,h]),b=c((()=>n&&null!==u.pathString?t(\"div\",Object.assign({className:\"jer-drop-target-bottom\",style:{height:\"50%\",position:\"absolute\",width:\"100%\",top:\"50%\",zIndex:r.length}},f(\"below\"))):null),[u,n,r.length]),v=e=>{var t,n;const i=null===(t=u.path)||void 0===t?void 0:t.slice(-1)[0],c=null===(n=u.path)||void 0===n?void 0:n.slice(0,-1).join(\".\"),d=r.slice(0,-1).join(\"\"),{parentData:p}=o;\"string\"==typeof i&&p&&!Array.isArray(p)&&Object.keys(p).includes(i)&&i in p&&c!==d?l({code:\"KEY_EXISTS\",message:s(\"ERROR_KEY_EXISTS\",o)},i):a(u.path,r,e).then((e=>{e&&l({code:\"UPDATE_ERROR\",message:e},o.value)}))};return{dragSourceProps:y,getDropTargetProps:f,BottomDropTarget:b,DropTargetPadding:({position:e,nodeData:n})=>g===e?t(\"div\",{className:\"jer-drag-n-drop-padding\",style:d(\"dropZone\",n)}):null,handleDrop:v}},pe=(e,t,n,r)=>{var o,i,a;if(!t.current)return 0;const l=parseInt(null!==(o=getComputedStyle(n.current).getPropertyValue(\"line-height\"))&&void 0!==o?o:\"16px\"),s=(null!==(a=null===(i=t.current)||void 0===i?void 0:i.offsetWidth)&&void 0!==a?a:0)/(.5*l),c=r(e).replace(/\\\\n/g,\"\\n\").split(\"\\n\").map((e=>Math.ceil(e.length/s))).reduce(((e,t)=>e+t),0)*l;return Math.min(c+30,window.innerHeight-50)},ge=({isEditingKey:n,canEditKey:r,pathString:o,path:i,name:a,arrayIndexFromOne:l,handleKeyboard:s,handleEditKey:c,handleCancel:d,handleClick:u,keyValueArray:p,styles:g,getNextOrPrevious:m,emptyStringKey:h})=>{const{setCurrentlyEditingElement:y}=M(),f=\"number\"==typeof a?String(a+(l?1:0)):a;return n?t(\"input\",{className:\"jer-input-text jer-key-edit\",type:\"text\",name:o,defaultValue:f,autoFocus:!0,onFocus:e=>e.target.select(),onKeyDown:e=>s(e,{stringConfirm:()=>c(e.target.value),cancel:d,tabForward:()=>{if(c(e.target.value),p){const e=null==p?void 0:p[0][0];y(e?[...i,e]:m(\"next\"))}else y(i)},tabBack:()=>{c(e.target.value),y(m(\"prev\"))}}),style:{width:f.length/1.5+.5+\"em\"}}):e(\"span\",{className:\"jer-key-text\",style:Object.assign(Object.assign({},g),{minWidth:`${Math.min(f.length+1,5)}ch`,flexShrink:f.length>10?1:0}),onDoubleClick:()=>r&&y(i,\"key\"),onClick:u,children:[h?t(\"span\",{className:\"jer-empty-string\",children:h}):f,\"\"!==f||h?t(\"span\",{className:\"jer-key-colon\",children:\":\"}):null]})},me=n=>{const{data:r,parentData:o,onEdit:a,onDelete:d,onChange:u,onMove:p,enableClipboard:g,canDragOnto:m,restrictTypeSelection:h,searchFilter:f,searchText:b,showLabel:v,stringTruncate:j,showStringQuotes:E,arrayIndexFromOne:w,indent:D,translate:C,customNodeDefinitions:k,customNodeData:S,handleKeyboard:N,keyboardControls:T,sort:x,editConfirmRef:A,jsonStringify:P,showIconTooltips:R}=n,{getStyles:I}=K(),{setCurrentlyEditingElement:V,setCollapseState:_,previouslyEditedElement:F,setPreviouslyEditedElement:L,tabDirection:z,setTabDirection:B,previousValue:G,setPreviousValue:Y}=M(),[H,U]=i(\"function\"==typeof r?W:r),{pathString:$,nodeData:Z,path:X,name:J,canEdit:Q,canDelete:q,canDrag:ee,error:te,onError:ne,handleEditKey:re,emptyStringKey:oe,derivedValues:ie}=de({props:n}),{dragSourceProps:se,getDropTargetProps:pe,BottomDropTarget:me,DropTargetPadding:be}=ue({canDrag:ee,canDragOnto:m,path:X,nodeData:Z,onMove:p,onError:ne,translate:C}),[ve,je]=i(he(r,S)),Ee=s((e=>{if(!u)return void U(e);const t=u({currentData:Z.fullData,newValue:e,currentValue:H,name:J,path:X});U(t)}),[u]);l((()=>{U(\"function\"==typeof r?W:r),je(he(r,S))}),[r,te]);const{CustomNode:we,customNodeProps:De,hideKey:Ce,showEditTools:Oe=!0,showOnEdit:ke,showOnView:Se,passOriginalNode:Ne}=S,Te=[...ce,...k.filter((({showInTypesSelector:e=!1,name:t})=>e&&!!t)).map((({name:e})=>e))],xe=c((()=>{if(\"boolean\"==typeof h)return h?[]:Te;if(Array.isArray(h))return h;const e=h(Z);return\"boolean\"==typeof e?e?[]:Te:e}),[Z,h]),[Ae,Pe]=i(((e,t)=>{var n;if(\"string\"!=typeof e)return null;const r=t.filter((t=>t instanceof Object&&t.enum&&t.values.includes(e)&&t.matchPriority));return r.sort(((e,t)=>{var n,r;return(null!==(n=t.matchPriority)&&void 0!==n?n:0)-(null!==(r=e.matchPriority)&&void 0!==r?r:0)})),null!==(n=r[0])&&void 0!==n?n:null})(H,xe)),{isEditing:Re}=ie,Ke=y(\"value\",Z,f,b);if(Re&&(!Ke||!Q)){const e=O(Z.fullData,X,z,x);V(e||F)}if(!Ke)return null;const Ie=e=>{let t;if(V(null),Y(null),void 0===e||(e=>e&&\"object\"==typeof e&&\"type\"in e&&\"target\"in e&&\"preventDefault\"in e&&\"function\"==typeof e.preventDefault)(e))switch(ve){case\"object\":t={[C(\"DEFAULT_NEW_KEY\",Z)]:H};break;case\"array\":t=null!=H?H:[];break;case\"number\":{const e=Number(H);t=isNaN(e)?0:e;break}default:t=H}else t=e;a(t,X).then((e=>{e&&ne({code:\"UPDATE_ERROR\",message:e},t)}))},Ve=()=>{V(null),null===G?(U(r),Y(null)):a(G,X)},{isEditingKey:_e,canEditKey:Fe}=ie,Le=!Re&&te,ze=Re&&xe.length>1,Me=(\"invalid\"!==ve||we)&&!te&&Oe,Be=v&&!Ce,We=we&&(Re&&ke||!Re&&Se),Ge={value:H,parentData:o,setValue:Ee,isEditing:Re,canEdit:Q,setIsEditing:Q?()=>V(X):()=>{},handleEdit:Ie,handleCancel:Ve,path:X,stringTruncate:j,showStringQuotes:E,nodeData:Z,enumType:Ae,translate:C,handleKeyboard:N,keyboardCommon:{cancel:Ve,tabForward:()=>{B(\"next\"),L($);const e=O(Z.fullData,X,\"next\",x);e&&(Ie(),V(e))},tabBack:()=>{B(\"prev\"),L($);const e=O(Z.fullData,X,\"prev\",x);e&&(Ie(),V(e))}}},Ye={canEditKey:Fe,isEditingKey:_e,pathString:$,path:X,name:J,arrayIndexFromOne:w,handleKeyboard:N,handleEditKey:re,handleCancel:Ve,styles:I(\"property\",Z),getNextOrPrevious:e=>O(Z.fullData,X,e,x),emptyStringKey:oe},He=We?t(we,Object.assign({},n,{value:H,customNodeProps:De,setValue:Ee,handleEdit:Ie,handleCancel:Ve,handleKeyPress:e=>N(e,{stringConfirm:Ie,cancel:Ve}),isEditing:Re,setIsEditing:()=>V(X),getStyles:I,originalNode:Ne?ye(r,Ge):void 0,originalNodeKey:Ne?t(ge,Object.assign({},Ye)):void 0,canEdit:Q,keyboardCommon:Ge.keyboardCommon,onError:ne})):ye(r,Ge);return e(\"div\",Object.assign({className:\"jer-component jer-value-component\",style:{marginLeft:null!==o?D/2+\"em\":0,position:\"relative\"},draggable:ee},se,pe(\"above\"),{children:[me,t(be,{position:\"above\",nodeData:Z}),e(\"div\",{className:\"jer-value-main-row\",style:{flexWrap:J.length>10?\"wrap\":\"nowrap\"},children:[Be&&t(ge,Object.assign({},Ye)),e(\"div\",{className:\"jer-value-and-buttons\",children:[t(\"div\",{className:\"jer-input-component\",children:He}),Re?t(le,{onOk:Ie,onCancel:Ve,nodeData:Z,editConfirmRef:A}):Me&&t(ae,{startEdit:Q?()=>{Y(G),V(X,Ve)}:void 0,handleDelete:q?()=>{d(H,X).then((e=>{e&&ne({code:\"DELETE_ERROR\",message:e},H)}))}:void 0,enableClipboard:g,translate:C,customButtons:n.customButtons,nodeData:Z,handleKeyboard:N,keyboardControls:T,editConfirmRef:A,jsonStringify:P,showIconTooltips:R}),ze&&e(\"div\",{className:\"jer-select jer-select-types\",children:[t(\"select\",{name:`${J}-type-select`,className:\"jer-select-inner\",onChange:e=>(e=>{const t=k.find((t=>t.name===e));if(t)return a(t.defaultValue,X),je(e),Pe(null),V(null),void _({path:X,collapsed:!1,includeChildren:!1});const n=xe.find((t=>t instanceof Object&&t.enum===e));if(n)return\"string\"==typeof H&&n.values.includes(H)||a(n.values[0],X).then((e=>{e&&(ne({code:\"UPDATE_ERROR\",message:e},r),V(null))})),void Pe(n);const r=fe(H,e,C(\"DEFAULT_NEW_KEY\",Z),(null==S?void 0:S.CustomNode)?C(\"DEFAULT_STRING\",Z):void 0);[\"string\",\"number\",\"boolean\"].includes(e)||V(null),a(r,X).then((e=>{e?(ne({code:\"UPDATE_ERROR\",message:e},r),V(null)):Pe(null)}))})(e.target.value),value:Ae?Ae.enum:ve,children:xe.map((e=>e instanceof Object&&\"enum\"in e?t(\"option\",{value:e.enum,children:e.enum},e.enum):t(\"option\",{value:e,children:e},e)))}),t(\"span\",{className:\"focus\"})]}),Le&&t(\"span\",{className:\"jer-error-slug\",style:I(\"error\",Z),children:te})]})]}),t(be,{position:\"below\",nodeData:Z})]}))},he=(e,t)=>(null==t?void 0:t.CustomNode)&&(null==t?void 0:t.name)&&t.showInTypesSelector?t.name:\"string\"==typeof e?\"string\":\"number\"==typeof e?\"number\":\"boolean\"==typeof e?\"boolean\":null===e?\"null\":\"invalid\",ye=(e,n)=>{const r=he(e),{value:o}=n;switch(r){case\"string\":return t(H,Object.assign({},n,{value:o}));case\"number\":return t(U,Object.assign({},n,{value:o}));case\"boolean\":return t($,Object.assign({},n,{value:o}));case\"null\":return t(X,Object.assign({},n));default:return t(J,Object.assign({},n))}},fe=(e,t,n,r)=>{switch(t){case\"string\":return null!=r?r:String(e);case\"number\":{const t=Number(e);return isNaN(t)?0:t}case\"boolean\":return!!e;case\"null\":return null;case\"object\":return{[n]:e};case\"array\":return[e];default:return String(e)}},be=(e=[],t)=>{const n=e.filter((({condition:e})=>e(t)));if(0===n.length)return{};const r=n[0],{element:o,wrapperElement:i,customNodeProps:a,wrapperProps:l,hideKey:s=!1,showEditTools:c=!0,showOnEdit:d=!1,showOnView:u=!0,showCollectionWrapper:g=!0}=r,m=p(r,[\"element\",\"wrapperElement\",\"customNodeProps\",\"wrapperProps\",\"hideKey\",\"showEditTools\",\"showOnEdit\",\"showOnView\",\"showCollectionWrapper\"]);return Object.assign({CustomNode:o,CustomWrapper:i,customNodeProps:a,wrapperProps:l,hideKey:s,showEditTools:c,showOnEdit:d,showOnView:u,showCollectionWrapper:g},m)},ve=r=>{const{getStyles:o}=K(),{collapseState:c,setCollapseState:d,getMatchingCollapseState:u,currentlyEditingElement:p,setCurrentlyEditingElement:f,areChildrenBeingEdited:b,previousValue:v,setPreviousValue:j}=M(),{mainContainerRef:w,data:D,nodeData:C,parentData:k,showCollectionCount:S,onEdit:T,onAdd:x,onDelete:A,canDragOnto:P,collapseFilter:R,collapseAnimationTime:I,onMove:V,enableClipboard:_,onEditEvent:F,showIconTooltips:L,searchFilter:z,searchText:B,indent:W,sort:G,showArrayIndices:Y,arrayIndexFromOne:H,defaultValue:U,newKeyOptions:$,translate:Z,customNodeDefinitions:X,customNodeData:J,jsonParse:Q,jsonStringify:q,TextEditor:ee,keyboardControls:te,handleKeyboard:ne,insertAtTop:re,onCollapse:oe,editConfirmRef:se,collapseClickZones:ce}=r,[he,ye]=i(q(D)),fe=R(C),{contentRef:je,isAnimating:Ee,maxHeight:we,collapsed:De,animateCollapse:Ce,cssTransitionValue:Oe}=((e,t,n,r,o)=>{const[l,c]=i(n?0:void 0),[d,u]=i(n),p=a(!1),g=a(null),m=a(0),h=a(0),y=t/1e3+\"s\",f=s((n=>{var i,a;if(d!==n){switch(window.clearTimeout(h.current),p.current=!0,n){case!0:{const e=null!==(a=null===(i=g.current)||void 0===i?void 0:i.offsetHeight)&&void 0!==a?a:0;m.current=e,c(e),setTimeout((()=>{c(0)}),5);break}case!1:c(m.current||pe(e,g,r,o))}u(!d),h.current=window.setTimeout((()=>{p.current=!1,n||c(void 0)}),t)}}),[t,d,e,r,o]);return{contentRef:g,isAnimating:p.current,animateCollapse:f,maxHeight:l,collapsed:d,cssTransitionValue:y}})(D,I,fe,w,q),{pathString:ke,nodeData:Se,path:Ne,name:Te,size:xe,canEdit:Ae,canDelete:Pe,canAdd:Re,canDrag:Ke,error:Ie,setError:Ve,onError:_e,handleEditKey:Fe,emptyStringKey:Le,derivedValues:ze}=de({props:r,collapsed:De}),{dragSourceProps:Me,getDropTargetProps:Be,BottomDropTarget:We,DropTargetPadding:Ge}=ue({canDrag:Ke,canDragOnto:P,path:Ne,nodeData:Se,onMove:V,onError:_e,translate:Z}),Ye=a(!fe),{isEditing:He,isEditingKey:Ue,isArray:$e,canEditKey:Ze}=ze;l((()=>{ye(q(D))}),[D,q]),l((()=>{const e=R(Se)&&!He;Ye.current=!e,Ce(e)}),[R]),l((()=>{if(null!==c){const e=u(Ne);e&&(Ye.current=!0,Ce(e.collapsed))}}),[c]);const Xe=a(null),Je=s(((e,t)=>{if(\"function\"!=typeof U)return U;const n=U(e,t);return void 0!==n?n:null}),[U]),Qe=s((e=>$?\"function\"!=typeof $?$:$(e):null),[$]),{CustomNode:qe,customNodeProps:et,CustomWrapper:tt,wrapperProps:nt={},hideKey:rt,showEditTools:ot=!0,showOnEdit:it,showOnView:at,showCollectionWrapper:lt=!0}=J,st=b(ke);st&&De&&Ce(!1);if(!(y(\"collection\",Se,z,B)||0===Se.level)&&!st)return null;const ct=Array.isArray(D)?\"array\":\"object\",dt=\"array\"===ct?{open:\"[\",close:\"]\"}:{open:\"{\",close:\"}\"},ut=e=>{if(\"Tab\"!==e.key||e.getModifierState(\"Shift\"))ne(e,{objectConfirm:gt,cancel:ht});else{e.preventDefault();const t=N(Xe,\"\\t\");ye(t)}},pt=e=>{e.stopPropagation();const t=E(e);if(t&&te.collapseModifier.includes(t))return Ye.current=!0,void d({collapsed:!De,path:Ne,includeChildren:!0});p&&p.includes(ke)||(Ye.current=!0,d(null),oe&&oe({path:Ne,collapsed:!De,includeChildren:!1}),Ce(!De))},gt=()=>{try{const e=Q(he);if(f(null),j(null),Ve(null),q(e)===q(D))return;T(e,Ne).then((t=>{t&&_e({code:\"UPDATE_ERROR\",message:t},e)}))}catch(e){_e({code:\"INVALID_JSON\",message:Z(\"ERROR_INVALID_JSON\",Se)},he)}},mt=Ne.length>0?()=>{A(D,Ne).then((e=>{e&&_e({code:\"DELETE_ERROR\",message:e},D)}))}:void 0,ht=()=>{f(null),null===v?(Ve(null),ye(q(D)),j(null)):T(v,Ne)},yt=\"when-closed\"===S?De:S,ft=!He&&ot,bt=(Y||!$e)&&!rt&&void 0!==Te,vt=qe&&(He&&it||!He&&at),jt=Object.entries(D).map((([e,t])=>[\"array\"===ct?Number(e):e,t]));\"object\"===ct&&G(jt,(e=>e));const Et=Ye.current?He?e(\"div\",{className:\"jer-collection-text-edit\",children:[ee?t(ee,{value:he,onChange:ye,onKeyDown:e=>ne(e,{objectConfirm:gt,cancel:ht})}):t(m,{textAreaRef:Xe,className:\"jer-collection-text-area\",name:ke,value:he,setValue:ye,handleKeyPress:ut,styles:o(\"input\",Se)}),t(\"div\",{className:\"jer-collection-input-button-row\",children:t(le,{onOk:gt,onCancel:ht,nodeData:Se,editConfirmRef:se})})]}):jt.map((([e,n],i)=>{const a={key:e,value:n,path:[...Ne,e],level:Ne.length+1,index:i,size:h(n)?Object.keys(n).length:null,parentData:D,fullData:Se.fullData},l=be(X,a);return t(\"div\",{className:\"jer-collection-element\",style:o(\"collectionElement\",a),children:h(n)&&!(null==l?void 0:l.renderCollectionAsValue)?t(ve,Object.assign({},r,{data:n,parentData:D,nodeData:a,showCollectionCount:S,canDragOnto:Ae,customNodeData:l}),e):t(me,Object.assign({},r,{data:n,parentData:D,nodeData:a,canDragOnto:Ae,showLabel:\"object\"===ct||Y,customNodeData:l}),e)},e)})):null,wt=!!lt&&(De&&!st);wt||(Ye.current=!0);const Dt=Object.assign(Object.assign({},r),{data:D,value:D,parentData:k,nodeData:Se,setValue:e=>g(void 0,void 0,void 0,(function*(){return yield T(e,Ne)})),handleEdit:gt,handleCancel:ht,handleKeyPress:ut,isEditing:He,setIsEditing:()=>f(Ne),getStyles:o,canDragOnto:Ae,canEdit:Ae,keyboardCommon:{},onError:_e}),Ct=vt?t(qe,Object.assign({customNodeProps:et},Dt,{children:Et})):Et,Ot=ft&&t(ae,{startEdit:Ae?()=>{Ye.current=!0,j(null),f(Ne)}:void 0,handleAdd:Re?e=>{Ce(!1);const t=Je(Se,e);if(\"array\"===ct){const e=re.array?0:D.length,n=re.array?{insert:!0}:{};x(t,[...Ne,e],n).then((e=>{e&&_e({code:\"ADD_ERROR\",message:e},t)}))}else if(e in D)_e({code:\"KEY_EXISTS\",message:Z(\"ERROR_KEY_EXISTS\",Se)},e);else{const n=re.object?{insertBefore:0}:{};x(t,[...Ne,e],n).then((e=>{e&&_e({code:\"ADD_ERROR\",message:e},t)}))}}:void 0,handleDelete:Pe?mt:void 0,enableClipboard:_,type:ct,nodeData:Se,translate:Z,customButtons:r.customButtons,keyboardControls:te,handleKeyboard:ne,getNewKeyOptions:Qe,editConfirmRef:se,jsonStringify:q,onEditEvent:F,showIconTooltips:L}),kt={canEditKey:Ze,isEditingKey:Ue,pathString:ke,path:Ne,name:Te,arrayIndexFromOne:H,handleKeyboard:ne,handleEditKey:Fe,handleCancel:ht,keyValueArray:jt,styles:o(\"property\",Se),getNextOrPrevious:e=>O(Se.fullData,Ne,e,G),handleClick:ce.includes(\"property\")?pt:e=>e.stopPropagation(),emptyStringKey:Le},St=e(\"div\",Object.assign({className:\"jer-component jer-collection-component\",style:Object.assign(Object.assign({marginLeft:(0===Ne.length?0:W/2)+\"em\"},o(\"collection\",Se)),{position:\"relative\"}),draggable:Ke},Me,Be(\"above\"),{children:[t(\"div\",{className:\"jer-clickzone\",style:{width:W/2+1+\"em\",zIndex:10+2*Se.level},onClick:ce.includes(\"left\")?pt:void 0}),!He&&We,t(Ge,{position:\"above\",nodeData:Se}),lt?e(\"div\",{className:\"jer-collection-header-row\",style:{position:\"relative\"},onClick:ce.includes(\"header\")?pt:void 0,children:[e(\"div\",{className:\"jer-collection-name\",children:[t(\"div\",{className:\"jer-collapse-icon jer-accordion-icon\"+(De?\" jer-rotate-90\":\"\"),style:{zIndex:11+2*Se.level,transition:Oe},onClick:pt,children:t(ie,{name:\"chevron\",rotate:De,nodeData:Se})}),bt&&t(ge,Object.assign({},kt)),!He&&t(\"span\",{className:\"jer-brackets jer-bracket-open\",style:o(\"bracket\",Se),children:dt.open})]}),!He&&yt&&t(\"div\",{className:\"jer-collection-item-count\"+(yt?\" jer-visible\":\" jer-hidden\"),style:Object.assign(Object.assign({},o(\"itemCount\",Se)),{transition:Oe}),children:1===xe?Z(\"ITEM_SINGLE\",Object.assign(Object.assign({},Se),{size:1}),1):Z(\"ITEMS_MULTIPLE\",Se,xe)}),t(\"div\",{className:\"jer-brackets\"+(wt?\" jer-visible\":\" jer-hidden\"),style:Object.assign(Object.assign({},o(\"bracket\",Se)),{transition:Oe}),children:dt.close}),Ot]}):rt?t(n,{}):e(\"div\",{className:\"jer-collection-header-row\",style:{position:\"relative\"},children:[t(ge,Object.assign({},kt)),Ot]}),e(\"div\",{className:\"jer-collection-inner\",style:Object.assign(Object.assign({overflowY:wt||Ee?\"clip\":\"visible\",maxHeight:st?void 0:we},o(\"collectionInner\",Se)),{transition:Oe}),ref:je,children:[Ct,t(\"div\",{className:He?\"jer-collection-error-row\":\"jer-collection-error-row-edit\",children:Ie&&t(\"span\",{className:\"jer-error-slug\",style:o(\"error\",Se),children:Ie})}),!He&<&&t(\"div\",{className:\"jer-brackets jer-bracket-outside\",style:Object.assign(Object.assign({},o(\"bracket\",Se)),{marginLeft:(W<3?-1:W<6?-.5:0)+\"em\"}),children:dt.close})]}),t(Ge,{position:\"below\",nodeData:Se})]}));return tt?t(tt,Object.assign({customNodeProps:nt},Dt,{children:St})):St},je={ITEM_SINGLE:\"{{count}} item\",ITEMS_MULTIPLE:\"{{count}} items\",KEY_NEW:\"Enter new key\",KEY_SELECT:\"Select key\",NO_KEY_OPTIONS:\"No key options\",ERROR_KEY_EXISTS:\"Key already exists\",ERROR_INVALID_JSON:\"Invalid JSON\",ERROR_UPDATE:\"Update unsuccessful\",ERROR_DELETE:\"Delete unsuccessful\",ERROR_ADD:\"Adding node unsuccessful\",DEFAULT_STRING:\"New data!\",DEFAULT_NEW_KEY:\"key\",SHOW_LESS:\"(Show less)\",EMPTY_STRING:\"<empty string>\",TOOLTIP_COPY:\"Copy to clipboard\",TOOLTIP_EDIT:\"Edit\",TOOLTIP_DELETE:\"Delete\",TOOLTIP_ADD:\"Add\"},Ee=(e,t)=>(n,r,o)=>((e,t,n,r,o)=>{if(t[r]){const e=t[r](n);if(null!==e)return e}const i=r in e?e[r]:je[r];return void 0===o?i:null==i?void 0:i.replace(\"{{count}}\",String(o))})(e,t,r,n,o);var we=[],De=[];!function(e,t){if(e&&\"undefined\"!=typeof document){var n,r=!0===t.prepend?\"prepend\":\"append\",o=!0===t.singleTag,i=\"string\"==typeof t.container?document.querySelector(t.container):document.getElementsByTagName(\"head\")[0];if(o){var a=we.indexOf(i);-1===a&&(a=we.push(i)-1,De[a]={}),n=De[a]&&De[a][r]?De[a][r]:De[a][r]=l()}else n=l();65279===e.charCodeAt(0)&&(e=e.substring(1)),n.styleSheet?n.styleSheet.cssText+=e:n.appendChild(document.createTextNode(e))}function l(){var e=document.createElement(\"style\");if(e.setAttribute(\"type\",\"text/css\"),t.attributes)for(var n=Object.keys(t.attributes),o=0;o<n.length;o++)e.setAttribute(n[o],t.attributes[n[o]]);var a=\"prepend\"===r?\"afterbegin\":\"beforeend\";return i.insertAdjacentElement(a,e),e}}(':root{--jer-select-border:#b6b6b6;--jer-select-focus:#777;--jer-select-arrow:#777;--jer-form-border:1px solid #ededf0;--jer-form-border-focus:1px solid #e2e2e2;--jer-highlight-color:#b3d8ff}.jer-visible{opacity:1}.jer-hidden{opacity:0}.jer-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;color:#000;cursor:inherit;font-family:inherit;font-size:.8em;line-height:inherit;margin:0;outline:none;padding:0 1em 0 0;z-index:1}select::-ms-expand{display:none}.jer-select{align-items:center;background-color:#fff;background-image:linear-gradient(0deg,#f9f9f9,#fff 33%);border:1px solid var(--jer-select-border);border-radius:.25em;cursor:pointer;display:grid;grid-template-areas:\"select\";line-height:1.1;max-width:15ch;min-width:12ch;padding:.25em .5em;position:relative}.jer-select select,.jer-select:after{grid-area:select}.jer-select:not(.jer-select--multiple):after{background-color:var(--jer-select-arrow);clip-path:polygon(100% 0,0 0,50% 100%);content:\"\";height:.5em;justify-self:end;width:.8em}select:focus+.focus{border:1px solid var(--jer-select-focus);border-radius:inherit;bottom:-1px;left:-1px;position:absolute;right:-1px;top:-1px}.jer-select-inner{text-overflow:ellipsis;width:100%}.jer-editor-container{border-radius:.5em;font-size:16px;line-height:1;padding:1em 1em 1em 2em;position:relative;text-align:left}.jer-editor-container textarea{border:var(--jer-form-border);border-radius:.3em;color:var(--jer-input-color);outline:none}.jer-editor-container textarea:focus{border:var(--jer-form-border-focus)}.jer-editor-container input{border:var(--jer-form-border);border-radius:.3em;font-family:inherit;outline:none}.jer-editor-container input:focus{border:var(--jer-form-border-focus)}.jer-editor-container ::selection{background-color:var(--jer-highlight-color)}.jer-collection-header-row,.jer-value-main-row{align-items:center;display:flex;gap:.3em;min-height:1.7em}.jer-collection-header-row{display:flex;flex-wrap:wrap}.jer-collapse-icon{left:-1.2em;position:absolute;top:.35em}.jer-collection-inner{position:relative}.jer-collection-text-edit{align-items:flex-start;display:flex;flex-direction:column;gap:.3em;line-height:1.1em}.jer-collection-text-area{font-family:inherit;font-size:.85em;max-height:40em;overflow:hidden;padding:.2em .5em 0;resize:both}.jer-collection-input-button-row{display:flex;font-size:150%;justify-content:flex-end;margin-top:.4em;width:100%}.jer-collection-error-row{bottom:.5em;position:absolute}.jer-error-slug{margin-left:1em}.jer-value-component{position:relative}.jer-value-main-row{display:flex;gap:0}.jer-value-and-buttons{align-items:center;display:flex;justify-content:flex-start;padding-left:.5em}.jer-value-error-row{position:absolute}.jer-value-string{line-height:1.3em;overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.jer-string-expansion{cursor:pointer;filter:saturate(50%);opacity:.6}.jer-show-less{font-size:80%}.jer-hyperlink{text-decoration:underline}.jer-input-text{font-family:inherit;font-size:.9em;height:1.4em;line-height:1.2em;margin:0;min-width:6em;overflow:hidden;padding:.25em .5em .2em;resize:none}.jer-input-boolean{margin-left:.3em;margin-right:.3em;transform:scale(1.5)}.jer-key-text{line-height:1.1em;white-space:pre-wrap;word-break:break-word}.jer-key-edit{font-size:inherit;font-size:.9em;padding:0 .3em}.jer-value-invalid{font-style:italic;opacity:.5}.jer-input-number{font-size:90%;min-width:3em}.jer-confirm-buttons,.jer-edit-buttons{align-items:center;cursor:pointer;display:flex;height:1em}.jer-input-buttons{gap:.4em}.jer-edit-buttons{gap:.4em;margin-left:.5em;opacity:0}.jer-confirm-buttons{gap:.2em;margin-left:.4em}.jer-edit-buttons:hover{opacity:1;position:relative}.jer-collection-header-row:hover>.jer-edit-buttons,.jer-value-and-buttons:hover>.jer-edit-buttons,.jer-value-main-row:hover>.jer-edit-buttons{opacity:1}.jer-copy-pulse{position:relative;transition:.3s}.jer-copy-pulse:hover{opacity:.85;transform:scale(1.2);transition:.3s}.jer-copy-pulse:after{border-radius:50%;box-shadow:0 0 15px 5px var(--jer-icon-copy-color);content:\"\";display:block;height:100%;left:0;opacity:0;position:absolute;top:0;transition:all .5s;width:100%}.jer-copy-pulse:active:after{border-radius:4em;box-shadow:0 0 0 0 var(--jer-icon-copy-color);left:0;opacity:1;position:absolute;top:0;transition:0s}.jer-copy-pulse:active{top:.07em}.jer-rotate-90{transform:rotate(-90deg)}.jer-icon:hover{opacity:.85;transform:scale(1.2);transition:.3s}.jer-empty-string{font-size:90%;font-style:italic}.jer-drag-n-drop-padding{border:1px dashed #e0e0e0;border-radius:.3em;height:.5em}.jer-clickzone{height:calc(100% - .8em);left:-1em;position:absolute;top:1.2em}',{});const Ce=({data:e,setData:n,rootName:r=\"root\",onUpdate:o=()=>{},onEdit:d=o,onDelete:u=o,onAdd:p=o,onChange:m,onError:y,onEditEvent:f,showErrorMessages:b=!0,enableClipboard:v=!0,indent:E=2,collapse:D=!1,collapseAnimationTime:O=300,showCollectionCount:k=!0,restrictEdit:S=!1,restrictDelete:N=!1,restrictAdd:x=!1,restrictTypeSelection:A=!1,restrictDrag:P=!0,viewOnly:R,searchFilter:I,searchText:V,searchDebounceTime:_=350,keySort:F=!1,showArrayIndices:L=!0,arrayIndexFromOne:z=!1,showStringQuotes:B=!0,showIconTooltips:W=!1,defaultValue:G=null,newKeyOptions:Y,minWidth:H=250,maxWidth:U=\"min(600px, 90vw)\",rootFontSize:$,stringTruncate:Z=250,translations:X={},className:J,id:Q,customText:q={},customNodeDefinitions:ee=[],customButtons:te=[],jsonParse:ne=JSON.parse,jsonStringify:re=(e,t)=>JSON.stringify(e,t,2),TextEditor:oe,errorMessageTimeout:ie=2500,keyboardControls:ae={},externalTriggers:le,insertAtTop:se=!1,onCollapse:ce,collapseClickZones:de=[\"header\",\"left\"]})=>{const{getStyles:ue}=K(),{setCurrentlyEditingElement:pe}=M(),ge=c((()=>Se(D)),[D]),he=c((()=>Ee(X,q)),[X,q]),[ye,fe]=i(V),[je,we]=(({setData:e,data:t})=>{const[n,r]=i(e?void 0:t),o=s((t=>{e?e(t):r(t)}),[e]);return l((()=>{e||r(t)}),[t]),[e?t:n,o]})({setData:n,data:e}),De=a(null);l((()=>{pe(null);const e=setTimeout((()=>fe(V)),_);return()=>clearTimeout(e)}),[V,_]);const Ce={key:r,path:[],level:0,index:0,value:je,size:\"object\"==typeof je&&null!==je?Object.keys(je).length:1,parentData:null,fullData:je},Oe=(e,t)=>g(void 0,void 0,void 0,(function*(){const n=yield e(t);if(!0===n||void 0===n)return void we(t.newData);const r=Te(n)?n:[\"error\",n],[o,i]=r;if(\"error\"===o)return we(t.currentData),!1===i?he(\"ERROR_UPDATE\",Ce):String(i);we(i)})),Ae=c((()=>Se(S,R)),[S,R]),Pe=c((()=>Se(N,R)),[N,R]),Re=c((()=>Se(x,R)),[x,R]),Ke=c((()=>Se(P,R)),[P,R]),Ie=c((()=>Ne(I)),[I]),Ve=c((()=>(e=>{const t=Object.assign({},C);for(const n of Object.keys(C)){const r=n;if(e[r]){const o=e[r],i=[\"clipboardModifier\",\"collapseModifier\"].includes(n)?Array.isArray(o)?o:[o]:\"string\"==typeof o?{key:o}:o;t[r]=i,[\"stringConfirm\",\"numberConfirm\",\"booleanConfirm\"].forEach((n=>{!e[n]&&e.confirm&&(t[n]=t.confirm)}))}}return t})(ae)),[ae]),_e=s(((e,t)=>((e,t,n)=>{const r=Object.entries(t);for(const[t,o]of r)if(w(n,e[t],t)){n.preventDefault(),o();break}})(Ve,t,e)),[Ve]),Fe=c((()=>{const e=xe(ee,\"stringifyReplacer\");return t=>re(t,e)}),[ee,re]),Le=c((()=>{const e=xe(ee,\"parseReviver\");return t=>{const n=ne(t,e);return T(n)}}),[ee,ne]),ze=a(null);((e,t)=>{const{setCurrentlyEditingElement:n,currentlyEditingElement:r,setCollapseState:o}=M();l((()=>{if(!e)return;const{collapse:i,edit:a}=e;i&&o(i);const l=!(null==a?void 0:a.path)||j(a.path)===r;switch(null==a?void 0:a.action){case\"accept\":l&&(t.current&&t.current.click(),n(null));break;case\"cancel\":l&&n(null);break;default:(null==a?void 0:a.path)&&n(a.path)}}),[e])})(le,ze);const Me=s(((e,t)=>{!1!==F&&(\"function\"!=typeof F?e.sort(((e,n)=>{const r=t(e)[0],o=t(n)[0];return r<o?-1:r>o?1:0})):e.sort(((e,n)=>F(t(e),t(n)))))}),[F]),Be=be(ee,Ce),We={mainContainerRef:De,name:r,nodeData:Ce,onEdit:(e,t)=>g(void 0,void 0,void 0,(function*(){const{currentData:n,newData:r,currentValue:o,newValue:i}=ke(je,t,e,\"update\");if(o!==i)return yield Oe(d,{currentData:n,newData:r,currentValue:o,newValue:i,name:t.slice(-1)[0],path:t})})),onDelete:(e,t)=>g(void 0,void 0,void 0,(function*(){const{currentData:n,newData:r,currentValue:o,newValue:i}=ke(je,t,e,\"delete\");return yield Oe(u,{currentData:n,newData:r,currentValue:o,newValue:i,name:t.slice(-1)[0],path:t})})),onAdd:(e,t,n)=>g(void 0,void 0,void 0,(function*(){const{currentData:r,newData:o,currentValue:i,newValue:a}=ke(je,t,e,\"add\",n);return yield Oe(p,{currentData:r,newData:o,currentValue:i,newValue:a,name:t.slice(-1)[0],path:t})})),onChange:m,onError:y,onEditEvent:f,showErrorMessages:b,onMove:(e,t,n)=>g(void 0,void 0,void 0,(function*(){if(null===e)return;const{currentData:r,newData:o,currentValue:i}=ke(je,e,\"\",\"delete\"),a=e.slice(-1)[0],l=t.slice(0,-1),s=t.slice(-1)[0];let c=\"number\"==typeof s?\"above\"===n?s:s+1:\"number\"==typeof a?`arr_${a}`:a;e.slice(0,-1).join(\".\")===t.slice(0,-1).join(\".\")&&\"number\"==typeof a&&\"number\"==typeof c&&a<c&&(c-=1);const u=\"number\"==typeof c?{insert:!0}:\"above\"===n?{insertBefore:s}:{insertAfter:s},{newData:p,newValue:g}=ke(o,[...l,c],i,\"add\",u);return yield Oe(d,{currentData:r,newData:p,currentValue:i,newValue:g,name:t.slice(-1)[0],path:t})})),showCollectionCount:k,collapseFilter:ge,collapseAnimationTime:O,restrictEditFilter:Ae,restrictDeleteFilter:Pe,restrictAddFilter:Re,restrictTypeSelection:A,restrictDragFilter:Ke,canDragOnto:!1,searchFilter:Ie,searchText:ye,enableClipboard:v,keySort:F,sort:Me,showArrayIndices:L,arrayIndexFromOne:z,showStringQuotes:B,showIconTooltips:W,indent:E,defaultValue:G,newKeyOptions:Y,stringTruncate:Z,translate:he,customNodeDefinitions:ee,customNodeData:Be,customButtons:te,parentData:null,jsonParse:Le,jsonStringify:Fe,TextEditor:oe,errorMessageTimeout:ie,handleKeyboard:_e,keyboardControls:Ve,insertAtTop:{object:!0===se||\"object\"===se,array:!0===se||\"array\"===se},onCollapse:ce,editConfirmRef:ze,collapseClickZones:de},Ge=Object.assign(Object.assign({},ue(\"container\",Ce)),{minWidth:H,maxWidth:U});return Ge.fontSize=null!=$?$:Ge.fontSize,t(\"div\",{id:Q,ref:De,className:`jer-editor-container ${null!=J?J:\"\"}`,style:Ge,children:h(je)&&!Be.renderCollectionAsValue?t(ve,Object.assign({data:je},We)):t(me,Object.assign({data:je,showLabel:!0},We))})},Oe=e=>{var n;const[r,o]=i();return l((()=>{const e=document.documentElement;o(e)}),[]),r?t(R,{theme:null!==(n=e.theme)&&void 0!==n?n:A,icons:e.icons,docRoot:r,children:t(z,{onEditEvent:e.onEditEvent,onCollapse:e.onCollapse,children:t(Ce,Object.assign({},e))})}):null},ke=(e,t,n,r,o={})=>{if(0===t.length)return{currentData:e,newData:n,currentValue:e,newValue:n};const i=Object.assign({remove:\"delete\"===r},o),a=\"add\"!==r?u(e,t):void 0;return{currentData:e,newData:d(e,t,n,i),currentValue:a,newValue:\"delete\"!==r?n:void 0}},Se=(e,t)=>t?()=>!0:\"boolean\"==typeof e?()=>e:\"number\"==typeof e?({level:t})=>t>=e:e,Ne=e=>{if(void 0!==e)return\"value\"===e?b:\"key\"===e?v:\"all\"===e?(e,t)=>b(e,t)||v(e,t):e},Te=e=>Array.isArray(e)&&2===e.length&&[\"error\",\"value\"].includes(e[0]),xe=(e,t)=>{const n=\"stringifyReplacer\"===t?[e=>void 0===e?x:e]:[];if(n.push(...e.map((e=>e[t])).filter((e=>!!e))),0!==n.length)return(e,t)=>{let r=t;for(const e of n)r=e(r);return r}},Ae=e=>{var n;const{value:r,setIsEditing:o,getStyles:i,nodeData:a}=e,l=i(\"string\",a);return t(\"div\",{onDoubleClick:()=>o(!0),onClick:e=>{(e.getModifierState(\"Control\")||e.getModifierState(\"Meta\"))&&o(!0)},className:\"jer-value-string jer-hyperlink\",style:l,children:t(\"a\",{href:r,target:\"_blank\",rel:\"noreferrer\",style:{color:null!==(n=l.color)&&void 0!==n?n:void 0},children:t(G,Object.assign({},e,{pathString:j(a.path),styles:l,value:a.value}))})})},Pe={condition:({value:e})=>\"string\"==typeof e&&/^https?:\\/\\/.+\\..+$/.test(e),element:Ae,showOnView:!0,showOnEdit:!1},Re={displayName:\"Github Dark\",styles:{container:{backgroundColor:\"#0d1117\",color:\"white\"},dropZone:\"rgba(165, 214, 255, 0.17)\",property:\"#E6EDF3\",bracket:\"#56d364\",itemCount:\"#8B949E\",string:\"#A5D6FF\",number:\"#D2A8FF\",boolean:{color:\"#FF7B72\",fontSize:\"90%\",fontWeight:\"bold\"},null:\"green\",iconCollection:\"#D2A8FF\",iconEdit:\"#D2A8FF\",iconDelete:\"rgb(203, 75, 22)\",iconAdd:\"rgb(203, 75, 22)\",iconCopy:\"#A5D6FF\",iconOk:\"#56d364\",iconCancel:\"rgb(203, 75, 22)\"}},Ke={displayName:\"Github Light\",styles:{container:\"white\",property:\"#1F2328\",bracket:\"#00802e\",itemCount:\"#8B949E\",string:\"#0A3069\",number:\"#953800\",boolean:{color:\"#CF222E\",fontSize:\"90%\",fontWeight:\"bold\"},null:\"#FF7B72\",iconCollection:\"#8250DF\",iconEdit:\"#8250DF\",iconDelete:\"rgb(203, 75, 22)\",iconAdd:\"#8250DF\",iconCopy:\"#57606A\"}},Ie={displayName:\"Black & White\",fragments:{lightText:{color:\"white\"},midGrey:\"#5c5c5c\"},styles:{container:[\"lightText\",{backgroundColor:\"black\"}],dropZone:\"#e0e0e029\",property:\"lightText\",bracket:\"midGrey\",itemCount:\"#4a4a4a\",string:\"#a8a8a8\",number:\"#666666\",boolean:{color:\"#848484\",fontStyle:\"italic\"},null:\"#333333\",iconCollection:\"midGrey\",iconEdit:\"midGrey\",iconDelete:\"midGrey\",iconAdd:\"midGrey\",iconCopy:\"midGrey\",iconOk:\"midGrey\",iconCancel:\"midGrey\"}},Ve={fragments:{midGrey:\"#a3a3a3\"},displayName:\"White & Black\",styles:{container:\"white\",property:\"black\",bracket:\"midGrey\",itemCount:\"#b5b5b5\",string:\"#575757\",number:\"#999999\",boolean:{color:\"#7b7b7b\",fontStyle:\"italic\"},null:\"#cccccc\",iconCollection:\"midGrey\",iconEdit:\"midGrey\",iconDelete:\"midGrey\",iconAdd:\"midGrey\",iconCopy:\"midGrey\",iconOk:\"midGrey\",iconCancel:\"midGrey\"}},_e={displayName:\"Candy Wrapper\",fragments:{minty:{backgroundColor:\"#F1FAEE\"},pale:{color:\"#A8DADC\"},mid:{color:\"#457B9D\"},dark:{color:\"#1D3557\"},pop:{color:\"#E63946\"},darkBlue:{color:\"#2B2D42\"}},styles:{container:\"minty\",property:\"pop\",dropZone:\"#eb121217\",bracket:\"dark\",itemCount:\"pale\",string:\"mid\",number:[\"darkBlue\",{fontSize:\"85%\"}],boolean:[\"mid\",{fontStyle:\"italic\",fontWeight:\"bold\",fontSize:\"80%\"}],null:[\"#cccccc\",{fontWeight:\"bold\"}],input:{border:\"1px solid rgb(115, 194, 198)\"},iconCollection:\"#1D3557\",iconEdit:\"#457B9D\",iconDelete:\"#E63946\",iconAdd:\"#2B2D42\",iconCopy:\"#1D3557\",iconCancel:\"#E63946\"}},Fe={displayName:\"Psychedelic\",fragments:{pale:{color:\"#A8DADC\"},fluroYellow:\"rgb(242, 228, 21)\",fluroGreen:\"rgb(68, 255, 62)\",hotPink:\"#f7379a\"},styles:{container:{backgroundColor:\"unset\",background:\"linear-gradient(90deg, hsla(333, 100%, 53%, 1) 0%, hsla(33, 94%, 57%, 1) 100%)\",color:\"black\"},dropZone:\"fluroYellow\",property:\"black\",bracket:\"fluroYellow\",itemCount:[\"pale\",{opacity:.7}],string:\"white\",number:[\"#33d9ff\",{fontSize:\"90%\",fontWeight:\"bold\"}],boolean:[\"fluroGreen\",{fontWeight:\"bold\",fontSize:\"80%\"}],null:[\"black\",{fontWeight:\"bold\",opacity:.3,backgroundColor:\"rgb(255, 255, 255, 0.5)\",padding:\"0 0.4em\",borderRadius:\"0.4em\"}],iconCollection:\"fluroYellow\",iconEdit:[\"black\"],iconDelete:[\"white\",{opacity:.5}],iconAdd:[\"white\",{opacity:.5}],iconCopy:\"rgb(32, 84, 242)\",iconOk:\"fluroGreen\",iconCancel:\"hotPink\"}};export{Q as IconAdd,re as IconCancel,oe as IconChevron,te as IconCopy,ee as IconDelete,q as IconEdit,ne as IconOk,Oe as JsonEditor,Ae as LinkCustomComponent,Pe as LinkCustomNodeDefinition,G as StringDisplay,Y as StringEdit,_e as candyWrapperTheme,A as defaultTheme,Re as githubDarkTheme,Ke as githubLightTheme,h as isCollection,b as matchNode,v as matchNodeKey,Ie as monoDarkTheme,Ve as monoLightTheme,Fe as psychedelicTheme,ce as standardDataTypes,j as toPathString,Z as useKeyboardListener};\n","import React, { Component, useEffect, useState, type ErrorInfo, type ReactNode } from 'react';\nimport { createRoot, type Root } from 'react-dom/client';\nimport { JsonEditor, githubDarkTheme, githubLightTheme, monoDarkTheme, monoLightTheme } from 'json-edit-react';\n\nconst themeMap: Record<string, object> = {\n githubDark: githubDarkTheme,\n githubLight: githubLightTheme,\n monoDark: monoDarkTheme,\n monoLight: monoLightTheme,\n};\n\nclass ErrorBoundary extends Component<\n { children: ReactNode },\n { error: Error | null }\n> {\n state = { error: null as Error | null };\n static getDerivedStateFromError(error: Error) {\n return { error };\n }\n componentDidCatch(error: Error, info: ErrorInfo) {\n console.error('[Legend State DevTools] React error:', error, info);\n }\n render() {\n if (this.state.error) {\n return React.createElement(\n 'pre',\n { style: { color: '#ff6b6b', padding: 16, fontSize: 12 } },\n `DevTools Error: ${this.state.error.message}\\n${this.state.error.stack}`\n );\n }\n return this.props.children;\n }\n}\n\ninterface JsonEditorWrapperProps {\n data: unknown;\n onEdit: (newData: unknown) => void;\n readOnly: boolean;\n theme: string;\n rootName: string;\n}\n\nfunction JsonEditorWrapper({\n data,\n onEdit,\n readOnly,\n theme,\n rootName,\n}: JsonEditorWrapperProps) {\n const resolvedTheme = themeMap[theme] ?? githubDarkTheme;\n return (\n <JsonEditor\n data={data as Record<string, unknown>}\n setData={onEdit as any}\n rootName={rootName}\n theme={resolvedTheme as any}\n collapse={2}\n restrictEdit={readOnly}\n restrictDelete={readOnly}\n restrictAdd={readOnly}\n restrictTypeSelection={readOnly ? true : undefined}\n />\n );\n}\n\nexport interface JsonEditorBridge {\n updateData: (data: unknown) => void;\n destroy: () => void;\n}\n\n// Wrapper component that receives data via a callback registration\nfunction JsonEditorBridgeWrapper(props: {\n initialData: unknown;\n onEdit: (newData: unknown) => void;\n readOnly: boolean;\n theme: string;\n rootName: string;\n registerUpdater: (updater: (data: unknown) => void) => void;\n}) {\n const [data, setData] = useState<unknown>(props.initialData);\n\n useEffect(() => {\n props.registerUpdater((newData: unknown) => {\n setData(newData);\n });\n }, []);\n\n const handleEdit = (newData: unknown) => {\n setData(newData);\n props.onEdit(newData);\n };\n\n return (\n <JsonEditorWrapper\n data={data}\n onEdit={handleEdit}\n readOnly={props.readOnly}\n theme={props.theme}\n rootName={props.rootName}\n />\n );\n}\n\nexport function mountJsonEditor(\n container: HTMLElement,\n options: {\n initialData: unknown;\n onEdit: (newData: unknown) => void;\n readOnly: boolean;\n theme: string;\n rootName: string;\n }\n): JsonEditorBridge {\n let root: Root | null = null;\n let updaterFn: ((data: unknown) => void) | null = null;\n\n root = createRoot(container);\n root.render(\n <ErrorBoundary>\n <JsonEditorBridgeWrapper\n initialData={options.initialData}\n onEdit={options.onEdit}\n readOnly={options.readOnly}\n theme={options.theme}\n rootName={options.rootName}\n registerUpdater={(updater) => {\n updaterFn = updater;\n }}\n />\n </ErrorBoundary>\n );\n\n return {\n updateData: (data: unknown) => {\n updaterFn?.(data);\n },\n destroy: () => {\n if (root) {\n root.unmount();\n root = null;\n }\n },\n };\n}\n","import type { ObservableParam } from '@legendapp/state';\nimport { Toolbar } from './ui/toolbar';\nimport { Panel } from './ui/panel';\nimport { createStateBridge, type StateBridge } from './state-bridge';\nimport { mountJsonEditor, type JsonEditorBridge } from './ui/json-editor-mount';\nimport { createCleanup } from './ui/shared-utils';\n\nexport interface DevToolsOptions {\n enabled?: boolean;\n readOnly?: boolean;\n theme?: string;\n rootName?: string;\n position?: 'left' | 'right';\n}\n\nexport interface DevTools {\n destroy: () => void;\n}\n\nexport function init(\n observable$: ObservableParam<any>,\n options: DevToolsOptions = {}\n): DevTools {\n const {\n enabled = true,\n readOnly = false,\n theme = 'githubDark',\n rootName = 'state$',\n position = 'right',\n } = options;\n\n if (!enabled) {\n return { destroy: () => {} };\n }\n\n const cleanup = createCleanup();\n let panel: Panel | null = null;\n let toolbar: Toolbar | null = null;\n let bridge: StateBridge | null = null;\n let editorBridge: JsonEditorBridge | null = null;\n\n // Create panel\n panel = new Panel({\n rootName,\n readOnly,\n position,\n onClose: () => {\n hidePanel();\n },\n });\n\n const showPanel = () => {\n if (!panel) return;\n panel.show();\n toolbar?.setPanelVisible(true);\n\n // Poll for editor root element (innerHTML may not be ready immediately)\n const tryMount = (retries = 10) => {\n const editorRoot = panel?.getEditorRoot();\n if (!editorRoot) {\n if (retries > 0) {\n setTimeout(() => tryMount(retries - 1), 16);\n } else {\n console.warn('[Legend State DevTools] Could not find #lsdt-json-editor-root after retries');\n }\n return;\n }\n if (editorBridge) return;\n\n const initialData = bridge?.getSnapshot() ?? {};\n\n editorBridge = mountJsonEditor(editorRoot, {\n initialData,\n onEdit: (newData: unknown) => {\n bridge?.setData(newData);\n },\n readOnly,\n theme,\n rootName,\n });\n };\n tryMount();\n };\n\n const hidePanel = () => {\n if (editorBridge) {\n editorBridge.destroy();\n editorBridge = null;\n }\n panel?.hide();\n toolbar?.setPanelVisible(false);\n };\n\n const togglePanel = () => {\n if (panel?.isVisible()) {\n hidePanel();\n } else {\n showPanel();\n }\n };\n\n // Create toolbar\n toolbar = new Toolbar({\n onTogglePanel: togglePanel,\n rootName,\n });\n toolbar.mount();\n cleanup.add(() => toolbar?.unmount());\n\n // Create state bridge\n bridge = createStateBridge(observable$, {\n onSnapshot: (snapshot) => {\n editorBridge?.updateData(snapshot);\n },\n });\n cleanup.add(() => bridge?.destroy());\n cleanup.add(() => {\n if (editorBridge) {\n editorBridge.destroy();\n editorBridge = null;\n }\n });\n cleanup.add(() => panel?.unmount());\n\n return {\n destroy: () => {\n cleanup.run();\n },\n };\n}\n"],"names":["t","e","exports","this","n","r","a","s","o","c","l","u","f","h","i","p","d","g","y","v","m","x","_","b","w","S","E","F","O","I","A","P","T","j","R","W","toolbarTemplate","panelTemplate","eta","Eta","templates","renderTemplate","name","data","template","error","renderToolbar","renderPanel","STORAGE_PREFIX","getStoredBoolean","key","defaultValue","stored","createCleanup","cleanupFns","fn","Toolbar","options","actionElement","_a","rect","visible","Panel","createStateBridge","observable$","getSnapshot","dispose","snapshot","newData","D","C","k","N","K","V","L","z","B","M","G","Y","H","U","$","Z","X","J","Q","q","ee","te","ne","re","oe","ie","ae","se","le","ce","de","ue","pe","ge","me","be","ve","je","he","Ee","we","De","Ce","Oe","ke","Se","Te","xe","Ae","Pe","Re","Ke","Ve","_e","Fe","Le","ze","Me","Be","We","Ge","Ye","He","ye","fe","Ne","Ie","Ue","$e","Ze","Xe","Je","Qe","qe","et","tt","nt","rt","ot","it","at","lt","st","ct","dt","ut","gt","ht","pt","mt","yt","ft","bt","vt","Et","Dt","Ct","Ot","kt","St","themeMap","githubDarkTheme","githubLightTheme","monoDarkTheme","monoLightTheme","ErrorBoundary","Component","info","React","JsonEditorWrapper","onEdit","readOnly","theme","rootName","resolvedTheme","jsx","JsonEditor","JsonEditorBridgeWrapper","props","setData","useState","useEffect","mountJsonEditor","container","root","updaterFn","createRoot","updater","init","enabled","position","cleanup","panel","toolbar","bridge","editorBridge","hidePanel","showPanel","tryMount","retries","editorRoot","initialData","togglePanel"],"mappings":"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","x_google_ignoreList":[0,8,9,10]}
|
package/dist/styles.css
ADDED
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/* Legend State Dev Tools Styles */
|
|
2
|
+
|
|
3
|
+
/* Toolbar */
|
|
4
|
+
#lsdt-toolbar {
|
|
5
|
+
position: fixed;
|
|
6
|
+
bottom: 20px;
|
|
7
|
+
right: 20px;
|
|
8
|
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|
9
|
+
color: white;
|
|
10
|
+
padding: 10px 14px;
|
|
11
|
+
border-radius: 12px;
|
|
12
|
+
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
|
|
13
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
14
|
+
font-size: 14px;
|
|
15
|
+
z-index: 999999;
|
|
16
|
+
cursor: move;
|
|
17
|
+
user-select: none;
|
|
18
|
+
backdrop-filter: blur(10px);
|
|
19
|
+
border: 1px solid rgba(255, 255, 255, 0.2);
|
|
20
|
+
transition: all 0.2s ease;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
#lsdt-toolbar.dragging {
|
|
24
|
+
opacity: 0.8;
|
|
25
|
+
cursor: grabbing;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.lsdt-toolbar-header {
|
|
29
|
+
display: flex;
|
|
30
|
+
align-items: center;
|
|
31
|
+
justify-content: space-between;
|
|
32
|
+
gap: 10px;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.lsdt-toolbar-title {
|
|
36
|
+
font-weight: 600;
|
|
37
|
+
font-size: 13px;
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
gap: 6px;
|
|
41
|
+
white-space: nowrap;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.lsdt-toolbar-indicator {
|
|
45
|
+
width: 8px;
|
|
46
|
+
height: 8px;
|
|
47
|
+
background: #4ade80;
|
|
48
|
+
border-radius: 50%;
|
|
49
|
+
box-shadow: 0 0 6px rgba(74, 222, 128, 0.6);
|
|
50
|
+
flex-shrink: 0;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.lsdt-toggle-btn {
|
|
54
|
+
background: rgba(255, 255, 255, 0.2);
|
|
55
|
+
border: 1px solid rgba(255, 255, 255, 0.3);
|
|
56
|
+
color: white;
|
|
57
|
+
padding: 5px 10px;
|
|
58
|
+
border-radius: 6px;
|
|
59
|
+
cursor: pointer;
|
|
60
|
+
font-size: 12px;
|
|
61
|
+
font-weight: 500;
|
|
62
|
+
transition: all 0.2s;
|
|
63
|
+
white-space: nowrap;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.lsdt-toggle-btn:hover {
|
|
67
|
+
background: rgba(255, 255, 255, 0.3);
|
|
68
|
+
transform: translateY(-1px);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.lsdt-toggle-btn.active {
|
|
72
|
+
background: rgba(255, 255, 255, 0.4);
|
|
73
|
+
border-color: rgba(255, 255, 255, 0.5);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/* Panel */
|
|
77
|
+
#lsdt-panel {
|
|
78
|
+
position: fixed;
|
|
79
|
+
top: 20px;
|
|
80
|
+
right: 20px;
|
|
81
|
+
width: 420px;
|
|
82
|
+
max-height: calc(100vh - 100px);
|
|
83
|
+
background: #1e1e2e;
|
|
84
|
+
border-radius: 12px;
|
|
85
|
+
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
|
|
86
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
87
|
+
z-index: 999999;
|
|
88
|
+
overflow: hidden;
|
|
89
|
+
display: flex;
|
|
90
|
+
flex-direction: column;
|
|
91
|
+
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
#lsdt-panel.lsdt-panel-left {
|
|
95
|
+
right: auto;
|
|
96
|
+
left: 20px;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.lsdt-panel-header {
|
|
100
|
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
|
101
|
+
color: white;
|
|
102
|
+
padding: 14px 16px;
|
|
103
|
+
display: flex;
|
|
104
|
+
justify-content: space-between;
|
|
105
|
+
align-items: center;
|
|
106
|
+
flex-shrink: 0;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.lsdt-panel-header h3 {
|
|
110
|
+
margin: 0;
|
|
111
|
+
font-size: 15px;
|
|
112
|
+
font-weight: 600;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.lsdt-panel-actions {
|
|
116
|
+
display: flex;
|
|
117
|
+
align-items: center;
|
|
118
|
+
gap: 8px;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.lsdt-readonly-badge {
|
|
122
|
+
font-size: 10px;
|
|
123
|
+
background: rgba(255, 255, 255, 0.2);
|
|
124
|
+
padding: 2px 8px;
|
|
125
|
+
border-radius: 4px;
|
|
126
|
+
font-weight: 500;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.lsdt-close-btn {
|
|
130
|
+
background: rgba(255, 255, 255, 0.2);
|
|
131
|
+
border: none;
|
|
132
|
+
color: white;
|
|
133
|
+
width: 24px;
|
|
134
|
+
height: 24px;
|
|
135
|
+
border-radius: 50%;
|
|
136
|
+
cursor: pointer;
|
|
137
|
+
display: flex;
|
|
138
|
+
align-items: center;
|
|
139
|
+
justify-content: center;
|
|
140
|
+
font-size: 16px;
|
|
141
|
+
transition: background 0.2s;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.lsdt-close-btn:hover {
|
|
145
|
+
background: rgba(255, 255, 255, 0.3);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.lsdt-panel-content {
|
|
149
|
+
padding: 0;
|
|
150
|
+
overflow-y: auto;
|
|
151
|
+
flex: 1;
|
|
152
|
+
min-height: 200px;
|
|
153
|
+
max-height: calc(100vh - 180px);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
/* json-edit-react overrides for dark panel */
|
|
157
|
+
#lsdt-json-editor-root {
|
|
158
|
+
font-size: 13px;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
#lsdt-json-editor-root > div {
|
|
162
|
+
border-radius: 0 !important;
|
|
163
|
+
border: none !important;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
/* Responsive */
|
|
167
|
+
@media (max-width: 768px) {
|
|
168
|
+
#lsdt-toolbar {
|
|
169
|
+
bottom: 10px;
|
|
170
|
+
right: 10px;
|
|
171
|
+
font-size: 12px;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
#lsdt-panel {
|
|
175
|
+
width: calc(100vw - 20px);
|
|
176
|
+
right: 10px;
|
|
177
|
+
top: 10px;
|
|
178
|
+
max-height: calc(100vh - 80px);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
#lsdt-panel.lsdt-panel-left {
|
|
182
|
+
left: 10px;
|
|
183
|
+
}
|
|
184
|
+
}
|