{"version":3,"file":"index.cjs","sources":["../../src/utils.ts","../../src/svgs/angle-down.svg","../../src/svgs/copy.svg","../../src/svgs/copied.svg","../../src/components/copy-button.tsx","../../src/components/name-value.tsx","../../src/svgs/trash.svg","../../src/svgs/add-square.svg","../../src/svgs/done.svg","../../src/svgs/cancel.svg","../../src/components/large-array-node.tsx","../../src/components/large-array.tsx","../../src/components/object-node.tsx","../../src/components/long-string.tsx","../../src/svgs/edit.svg","../../src/svgs/link.svg","../../src/components/json-node.tsx","../../src/components/json-view.tsx"],"sourcesContent":["import type { Collapsed, CustomizeOptions, DisplaySize, Editable } from './types'\n\nexport function isObject(node: any): node is Record<string, any> {\n\treturn Object.prototype.toString.call(node) === '[object Object]'\n}\n\nexport function objectSize(node: Record<string, any> | Array<any>) {\n\treturn Array.isArray(node) ? node.length : isObject(node) ? Object.keys(node).length : 0\n}\n\nexport function stringifyForCopying(node: any, space?: string | number | undefined) {\n\t// return single string nodes without quotes\n\tif (typeof node === 'string') {\n\t\treturn node\n\t}\n\n\ttry {\n\t\treturn JSON.stringify(\n\t\t\tnode,\n\t\t\t(key, value) => {\n\t\t\t\tswitch (typeof value) {\n\t\t\t\t\tcase 'bigint':\n\t\t\t\t\t\treturn String(value) + 'n'\n\t\t\t\t\tcase 'number':\n\t\t\t\t\tcase 'boolean':\n\t\t\t\t\tcase 'object':\n\t\t\t\t\tcase 'string':\n\t\t\t\t\t\treturn value\n\t\t\t\t\tdefault:\n\t\t\t\t\t\treturn String(value)\n\t\t\t\t}\n\t\t\t},\n\t\t\tspace\n\t\t)\n\t} catch (error: any) {\n\t\treturn `${error.name}: ${error.message}` || 'JSON.stringify failed'\n\t}\n}\n\nexport function isCollapsed(\n\tnode: Record<string, any> | Array<any>,\n\tdepth: number,\n\tindexOrName: number | string | undefined,\n\tcollapsed: Collapsed,\n\tcollapseObjectsAfterLength: number,\n\tcustomOptions?: CustomizeOptions\n): boolean {\n\tif (customOptions && customOptions.collapsed !== undefined) return !!customOptions.collapsed\n\tif (typeof collapsed === 'boolean') return collapsed\n\tif (typeof collapsed === 'number' && depth > collapsed) return true\n\n\tconst size = objectSize(node)\n\n\tif (typeof collapsed === 'function') {\n\t\tconst result = safeCall(collapsed, [{ node, depth, indexOrName, size }])\n\t\tif (typeof result === 'boolean') return result\n\t}\n\n\tif (Array.isArray(node) && size > collapseObjectsAfterLength) return true\n\tif (isObject(node) && size > collapseObjectsAfterLength) return true\n\treturn false\n}\nexport function isCollapsed_largeArray(\n\tnode: Record<string, any> | Array<any>,\n\tdepth: number,\n\tindexOrName: number | string | undefined,\n\tcollapsed: Collapsed,\n\tcollapseObjectsAfterLength: number,\n\tcustomOptions?: CustomizeOptions\n): boolean {\n\tif (customOptions && customOptions.collapsed !== undefined) return !!customOptions.collapsed\n\tif (typeof collapsed === 'boolean') return collapsed\n\tif (typeof collapsed === 'number' && depth > collapsed) return true\n\n\tconst size = Math.ceil(node.length / 100)\n\n\tif (typeof collapsed === 'function') {\n\t\tconst result = safeCall(collapsed, [{ node, depth, indexOrName, size }])\n\t\tif (typeof result === 'boolean') return result\n\t}\n\n\tif (Array.isArray(node) && size > collapseObjectsAfterLength) return true\n\tif (isObject(node) && size > collapseObjectsAfterLength) return true\n\treturn false\n}\n\nexport function ifDisplay(displaySize: DisplaySize, depth: number, fold: boolean) {\n\tif (typeof displaySize === 'boolean') return displaySize\n\tif (typeof displaySize === 'number' && depth > displaySize) return true\n\tif (displaySize === 'collapsed' && fold) return true\n\tif (displaySize === 'expanded' && !fold) return true\n\n\treturn false\n}\n\nexport function safeCall<T extends (...args: any[]) => any>(func: T, params: Parameters<T>) {\n\ttry {\n\t\treturn func(...params)\n\t} catch (event) {\n\t\treportError(event)\n\t}\n}\n\nexport function editableAdd(editable: Editable) {\n\tif (editable === true) return true\n\tif (isObject(editable) && (editable as { add: boolean }).add === true) return true\n}\nexport function editableEdit(editable: Editable) {\n\tif (editable === true) return true\n\tif (isObject(editable) && (editable as { edit: boolean }).edit === true) return true\n}\nexport function editableDelete(editable: Editable) {\n\tif (editable === true) return true\n\tif (isObject(editable) && (editable as { delete: boolean }).delete === true) return true\n}\n\nfunction isClassComponent(component: any) {\n\treturn typeof component === 'function' && !!component.prototype?.isReactComponent\n}\nexport function isReactComponent(component: any): component is (new () => React.Component<any, any>) | React.FC<any> {\n\treturn typeof component === 'function'\n}\n\nexport function customAdd(customOptions?: CustomizeOptions) {\n\treturn !customOptions || customOptions.add === undefined || !!customOptions.add\n}\nexport function customEdit(customOptions?: CustomizeOptions) {\n\treturn !customOptions || customOptions.edit === undefined || !!customOptions.edit\n}\nexport function customDelete(customOptions?: CustomizeOptions) {\n\treturn !customOptions || customOptions.delete === undefined || !!customOptions.delete\n}\nexport function customCopy(customOptions?: CustomizeOptions) {\n\treturn !customOptions || customOptions.enableClipboard === undefined || !!customOptions.enableClipboard\n}\nexport function customMatchesURL(customOptions?: CustomizeOptions) {\n\treturn !customOptions || customOptions.matchesURL === undefined || !!customOptions.matchesURL\n}\n\nexport function resolveEvalFailedNewValue(type: string, value: string) {\n\tif (type === 'string') {\n\t\treturn value.trim().replace(/^\\\"([\\s\\S]+?)\\\"$/, '$1')\n\t}\n\treturn value\n}\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M12.4733%205.80615C12.4114%205.74366%2012.3376%205.69406%2012.2564%205.66022C12.1751%205.62637%2012.088%205.60895%2012%205.60895C11.912%205.60895%2011.8249%205.62637%2011.7436%205.66022C11.6624%205.69406%2011.5886%205.74366%2011.5267%205.80615L8.47333%208.85948C8.41136%208.92197%208.33762%208.97156%208.25639%209.00541C8.17515%209.03925%208.08801%209.05668%208%209.05668C7.91199%209.05668%207.82486%209.03925%207.74362%209.00541C7.66238%208.97156%207.58864%208.92197%207.52667%208.85948L4.47333%205.80615C4.41136%205.74366%204.33762%205.69406%204.25639%205.66022C4.17515%205.62637%204.08801%205.60895%204%205.60895C3.91199%205.60895%203.82486%205.62637%203.74362%205.66022C3.66238%205.69406%203.58864%205.74366%203.52667%205.80615C3.4025%205.93105%203.33281%206.10002%203.33281%206.27615C3.33281%206.45227%203.4025%206.62124%203.52667%206.74615L6.58667%209.80615C6.96167%2010.1807%207.47%2010.3911%208%2010.3911C8.53%2010.3911%209.03833%2010.1807%209.41333%209.80615L12.4733%206.74615C12.5975%206.62124%2012.6672%206.45227%2012.6672%206.27615C12.6672%206.10002%2012.5975%205.93105%2012.4733%205.80615Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M17.5417%202.5H12.7917C10.609%202.5%208.83333%204.27571%208.83333%206.45833V11.2083C8.83333%2013.391%2010.609%2015.1667%2012.7917%2015.1667H17.5417C19.7243%2015.1667%2021.5%2013.391%2021.5%2011.2083V6.45833C21.5%204.27571%2019.7243%202.5%2017.5417%202.5ZM19.9167%2011.2083C19.9167%2012.5178%2018.8511%2013.5833%2017.5417%2013.5833H12.7917C11.4823%2013.5833%2010.4167%2012.5178%2010.4167%2011.2083V6.45833C10.4167%205.14892%2011.4823%204.08333%2012.7917%204.08333H17.5417C18.8511%204.08333%2019.9167%205.14892%2019.9167%206.45833V11.2083ZM15.1667%2017.5417C15.1667%2019.7243%2013.391%2021.5%2011.2083%2021.5H6.45833C4.27571%2021.5%202.5%2019.7243%202.5%2017.5417V12.7917C2.5%2010.609%204.27571%208.83333%206.45833%208.83333C6.89613%208.83333%207.25%209.188%207.25%209.625C7.25%2010.062%206.89613%2010.4167%206.45833%2010.4167C5.14892%2010.4167%204.08333%2011.4823%204.08333%2012.7917V17.5417C4.08333%2018.8511%205.14892%2019.9167%206.45833%2019.9167H11.2083C12.5178%2019.9167%2013.5833%2018.8511%2013.5833%2017.5417C13.5833%2017.1047%2013.9372%2016.75%2014.375%2016.75C14.8128%2016.75%2015.1667%2017.1047%2015.1667%2017.5417Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M17.25%203H6.75C5.7558%203.00119%204.80267%203.39666%204.09966%204.09966C3.39666%204.80267%203.00119%205.7558%203%206.75L3%2017.25C3.00119%2018.2442%203.39666%2019.1973%204.09966%2019.9003C4.80267%2020.6033%205.7558%2020.9988%206.75%2021H17.25C18.2442%2020.9988%2019.1973%2020.6033%2019.9003%2019.9003C20.6033%2019.1973%2020.9988%2018.2442%2021%2017.25V6.75C20.9988%205.7558%2020.6033%204.80267%2019.9003%204.09966C19.1973%203.39666%2018.2442%203.00119%2017.25%203ZM19.5%2017.25C19.5%2017.8467%2019.2629%2018.419%2018.841%2018.841C18.419%2019.2629%2017.8467%2019.5%2017.25%2019.5H6.75C6.15326%2019.5%205.58097%2019.2629%205.15901%2018.841C4.73705%2018.419%204.5%2017.8467%204.5%2017.25V6.75C4.5%206.15326%204.73705%205.58097%205.15901%205.15901C5.58097%204.73705%206.15326%204.5%206.75%204.5H17.25C17.8467%204.5%2018.419%204.73705%2018.841%205.15901C19.2629%205.58097%2019.5%206.15326%2019.5%206.75V17.25Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%20%20%3Cpath%20%20%20%20d%3D%22M10.3116%2014.4507L7.83053%2011.9047C7.71181%2011.7829%207.55082%2011.7145%207.38295%2011.7145C7.21507%2011.7145%207.05408%2011.7829%206.93536%2011.9047C6.81667%2012.0266%206.75%2012.1918%206.75%2012.364C6.75%2012.5363%206.81667%2012.7015%206.93536%2012.8233L9.4164%2015.3693C9.53398%2015.49%209.67358%2015.5857%209.82723%2015.651C9.98089%2015.7164%2010.1456%2015.75%2010.3119%2015.75C10.4782%2015.75%2010.6429%2015.7164%2010.7965%2015.651C10.9502%2015.5857%2011.0898%2015.49%2011.2074%2015.3693L17.0646%209.3588C17.1833%209.23697%2017.25%209.07176%2017.25%208.8995C17.25%208.72724%2017.1833%208.56203%2017.0646%208.44021C16.9459%208.31842%2016.7849%208.25%2016.6171%208.25C16.4492%208.25%2016.2882%208.31842%2016.1695%208.44021L10.3116%2014.4507Z%22%20%20%20%20fill%3D%22%2314C786%22%20%2F%3E%3C%2Fsvg%3E\"","import { useContext, useState } from 'react'\nimport { ReactComponent as CopySVG } from '../svgs/copy.svg'\nimport { ReactComponent as CopiedSVG } from '../svgs/copied.svg'\nimport { JsonViewContext } from './json-view'\n\nexport default function CopyButton({ node }: { node: any }) {\n\tconst { customizeCopy } = useContext(JsonViewContext)\n\n\tconst [copied, setCopied] = useState(false)\n\n\treturn copied ? (\n\t\t<CopiedSVG className='json-view--copy' style={{ display: 'inline-block' }} />\n\t) : (\n\t\t<CopySVG\n\t\t\tonClick={event => {\n\t\t\t\tevent.stopPropagation()\n\n\t\t\t\tconst value = customizeCopy(node)\n\n\t\t\t\tif (typeof value === 'string' && value) {\n\t\t\t\t\tnavigator.clipboard.writeText(value)\n\t\t\t\t}\n\n\t\t\t\tsetCopied(true)\n\t\t\t\tsetTimeout(() => setCopied(false), 3000)\n\t\t\t}}\n\t\t\tclassName='json-view--copy'\n\t\t/>\n\t)\n}\n","import JsonNode from './json-node'\n\ninterface Props {\n\tindexOrName: number | string\n\tvalue: any\n\tdepth: number\n\tparent?: Record<string, any> | Array<any>\n\tdeleteHandle: (indexOrName: string | number) => void\n\teditHandle: (indexOrName: string | number, newValue: any, oldValue: any) => void\n}\n\nexport default function NameValue({ indexOrName, value, depth, parent, deleteHandle, editHandle }: Props) {\n\treturn (\n\t\t<div className='json-view--pair'>\n\t\t\t<span className={typeof indexOrName === 'number' ? 'json-view--index' : 'json-view--property'}>\n\t\t\t\t{indexOrName}\n\t\t\t</span>\n\t\t\t:{' '}\n\t\t\t<JsonNode\n\t\t\t\tnode={value}\n\t\t\t\tdepth={depth + 1}\n\t\t\t\tdeleteHandle={deleteHandle}\n\t\t\t\teditHandle={editHandle}\n\t\t\t\tparent={parent}\n\t\t\t\tindexOrName={indexOrName}\n\t\t\t/>\n\t\t</div>\n\t)\n}\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M18.75%206H16.425C16.2509%205.15356%2015.7904%204.39301%2015.1209%203.84654C14.4515%203.30007%2013.6142%203.00109%2012.75%203L11.25%203C10.3858%203.00109%209.54849%203.30007%208.87906%203.84654C8.20963%204.39301%207.74907%205.15356%207.575%206H5.25C5.05109%206%204.86032%206.07902%204.71967%206.21967C4.57902%206.36032%204.5%206.55109%204.5%206.75C4.5%206.94891%204.57902%207.13968%204.71967%207.28033C4.86032%207.42098%205.05109%207.5%205.25%207.5H6V17.25C6.00119%2018.2442%206.39666%2019.1973%207.09966%2019.9003C7.80267%2020.6033%208.7558%2020.9988%209.75%2021H14.25C15.2442%2020.9988%2016.1973%2020.6033%2016.9003%2019.9003C17.6033%2019.1973%2017.9988%2018.2442%2018%2017.25V7.5H18.75C18.9489%207.5%2019.1397%207.42098%2019.2803%207.28033C19.421%207.13968%2019.5%206.94891%2019.5%206.75C19.5%206.55109%2019.421%206.36032%2019.2803%206.21967C19.1397%206.07902%2018.9489%206%2018.75%206ZM11.25%204.5H12.75C13.2152%204.50057%2013.6688%204.64503%2014.0487%204.91358C14.4286%205.18213%2014.7161%205.56162%2014.8717%206H9.12825C9.28394%205.56162%209.57143%205.18213%209.95129%204.91358C10.3312%204.64503%2010.7848%204.50057%2011.25%204.5ZM16.5%2017.25C16.5%2017.8467%2016.2629%2018.419%2015.841%2018.841C15.419%2019.2629%2014.8467%2019.5%2014.25%2019.5H9.75C9.15326%2019.5%208.58097%2019.2629%208.15901%2018.841C7.73705%2018.419%207.5%2017.8467%207.5%2017.25V7.5H16.5V17.25Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%20%20%3Cpath%20%20%20%20d%3D%22M10.5%2016.5C10.6989%2016.5%2010.8897%2016.421%2011.0303%2016.2803C11.171%2016.1397%2011.25%2015.9489%2011.25%2015.75V11.25C11.25%2011.0511%2011.171%2010.8603%2011.0303%2010.7197C10.8897%2010.579%2010.6989%2010.5%2010.5%2010.5C10.3011%2010.5%2010.1103%2010.579%209.96967%2010.7197C9.82902%2010.8603%209.75%2011.0511%209.75%2011.25V15.75C9.75%2015.9489%209.82902%2016.1397%209.96967%2016.2803C10.1103%2016.421%2010.3011%2016.5%2010.5%2016.5Z%22%20%20%20%20fill%3D%22%23DA0000%22%20%2F%3E%20%20%3Cpath%20%20%20%20d%3D%22M13.5%2016.5C13.6989%2016.5%2013.8897%2016.421%2014.0303%2016.2803C14.171%2016.1397%2014.25%2015.9489%2014.25%2015.75V11.25C14.25%2011.0511%2014.171%2010.8603%2014.0303%2010.7197C13.8897%2010.579%2013.6989%2010.5%2013.5%2010.5C13.3011%2010.5%2013.1103%2010.579%2012.9697%2010.7197C12.829%2010.8603%2012.75%2011.0511%2012.75%2011.25V15.75C12.75%2015.9489%2012.829%2016.1397%2012.9697%2016.2803C13.1103%2016.421%2013.3011%2016.5%2013.5%2016.5Z%22%20%20%20%20fill%3D%22%23DA0000%22%20%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M21%206.75V17.25C21%2019.3177%2019.3177%2021%2017.25%2021H6.75C4.68225%2021%203%2019.3177%203%2017.25V6.75C3%204.68225%204.68225%203%206.75%203H17.25C19.3177%203%2021%204.68225%2021%206.75ZM19.5%206.75C19.5%205.5095%2018.4905%204.5%2017.25%204.5H6.75C5.5095%204.5%204.5%205.5095%204.5%206.75V17.25C4.5%2018.4905%205.5095%2019.5%206.75%2019.5H17.25C18.4905%2019.5%2019.5%2018.4905%2019.5%2017.25V6.75Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%20%20%3Cpath%20%20%20%20d%3D%22M15%2012.75C15.414%2012.75%2015.75%2012.4148%2015.75%2012C15.75%2011.5852%2015.414%2011.25%2015%2011.25H12.75V9C12.75%208.58525%2012.414%208.25%2012%208.25C11.586%208.25%2011.25%208.58525%2011.25%209V11.25H9C8.586%2011.25%208.25%2011.5852%208.25%2012C8.25%2012.4148%208.586%2012.75%209%2012.75H11.25V15C11.25%2015.4148%2011.586%2015.75%2012%2015.75C12.414%2015.75%2012.75%2015.4148%2012.75%2015V12.75H15Z%22%20%20%20%20fill%3D%22%2314C786%22%20%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M12%203C10.22%203%208.47991%203.52784%206.99987%204.51677C5.51983%205.50571%204.36628%206.91131%203.68509%208.55585C3.0039%2010.2004%202.82567%2012.01%203.17294%2013.7558C3.5202%2015.5016%204.37737%2017.1053%205.63604%2018.364C6.89472%2019.6226%208.49836%2020.4798%2010.2442%2020.8271C11.99%2021.1743%2013.7996%2020.9961%2015.4442%2020.3149C17.0887%2019.6337%2018.4943%2018.4802%2019.4832%2017.0001C20.4722%2015.5201%2021%2013.78%2021%2012C20.9974%209.61384%2020.0484%207.32616%2018.3611%205.63889C16.6738%203.95162%2014.3862%203.00258%2012%203ZM12%2019.5C10.5166%2019.5%209.0666%2019.0601%207.83323%2018.236C6.59986%2017.4119%205.63856%2016.2406%205.07091%2014.8701C4.50325%2013.4997%204.35473%2011.9917%204.64411%2010.5368C4.9335%209.08196%205.64781%207.74559%206.6967%206.6967C7.7456%205.64781%209.08197%204.9335%2010.5368%204.64411C11.9917%204.35472%2013.4997%204.50325%2014.8701%205.0709C16.2406%205.63856%2017.4119%206.59985%2018.236%207.83322C19.0601%209.06659%2019.5%2010.5166%2019.5%2012C19.4978%2013.9885%2018.7069%2015.8948%2017.3009%2017.3009C15.8948%2018.7069%2013.9885%2019.4978%2012%2019.5Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%20%20%3Cpath%20%20%20%20d%3D%22M10.8493%2013.9605L8.86443%2011.9238C8.76945%2011.8264%208.64065%2011.7716%208.50636%2011.7716C8.37206%2011.7716%208.24326%2011.8264%208.14829%2011.9238C8.05334%2012.0212%208%2012.1534%208%2012.2912C8%2012.429%208.05334%2012.5612%208.14829%2012.6587L10.1331%2014.6954C10.2272%2014.792%2010.3389%2014.8686%2010.4618%2014.9208C10.5847%2014.9731%2010.7165%2015%2010.8495%2015C10.9826%2015%2011.1143%2014.9731%2011.2372%2014.9208C11.3602%2014.8686%2011.4718%2014.792%2011.5659%2014.6954L16.2517%209.88704C16.3467%209.78958%2016.4%209.65741%2016.4%209.5196C16.4%209.38179%2016.3467%209.24962%2016.2517%209.15216C16.1567%209.05473%2016.0279%209%2015.8936%209C15.7593%209%2015.6306%209.05473%2015.5356%209.15216L10.8493%2013.9605Z%22%20%20%20%20fill%3D%22%2314C786%22%20%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M15%209C14.8593%208.8594%2014.6686%208.78041%2014.4697%208.78041C14.2708%208.78041%2014.0801%208.8594%2013.9395%209L12%2010.9395L10.0605%209C9.91901%208.86338%209.72956%208.78779%209.53291%208.7895C9.33626%208.7912%209.14815%208.87008%209.0091%209.00914C8.87004%209.14819%208.79117%209.3363%208.78946%209.53295C8.78775%209.7296%208.86334%209.91905%208.99996%2010.0605L10.9395%2012L8.99996%2013.9395C8.86334%2014.081%208.78775%2014.2704%208.78946%2014.4671C8.79117%2014.6637%208.87004%2014.8518%209.0091%2014.9909C9.14815%2015.1299%209.33626%2015.2088%209.53291%2015.2105C9.72956%2015.2122%209.91901%2015.1366%2010.0605%2015L12%2013.0605L13.9395%2015C14.0809%2015.1366%2014.2704%2015.2122%2014.467%2015.2105C14.6637%2015.2088%2014.8518%2015.1299%2014.9908%2014.9909C15.1299%2014.8518%2015.2088%2014.6637%2015.2105%2014.4671C15.2122%2014.2704%2015.1366%2014.081%2015%2013.9395L13.0605%2012L15%2010.0605C15.1406%209.91985%2015.2196%209.72912%2015.2196%209.53025C15.2196%209.33138%2015.1406%209.14065%2015%209Z%22%20%20%20%20fill%3D%22%23DA0000%22%20%2F%3E%20%20%3Cpath%20%20%20%20d%3D%22M12%203C10.22%203%208.47991%203.52784%206.99987%204.51677C5.51983%205.50571%204.36628%206.91131%203.68509%208.55585C3.0039%2010.2004%202.82567%2012.01%203.17294%2013.7558C3.5202%2015.5016%204.37737%2017.1053%205.63604%2018.364C6.89472%2019.6226%208.49836%2020.4798%2010.2442%2020.8271C11.99%2021.1743%2013.7996%2020.9961%2015.4442%2020.3149C17.0887%2019.6337%2018.4943%2018.4802%2019.4832%2017.0001C20.4722%2015.5201%2021%2013.78%2021%2012C20.9974%209.61384%2020.0484%207.32616%2018.3611%205.63889C16.6738%203.95162%2014.3862%203.00258%2012%203ZM12%2019.5C10.5166%2019.5%209.0666%2019.0601%207.83323%2018.236C6.59986%2017.4119%205.63856%2016.2406%205.07091%2014.8701C4.50325%2013.4997%204.35473%2011.9917%204.64411%2010.5368C4.9335%209.08197%205.64781%207.74559%206.6967%206.6967C7.7456%205.64781%209.08197%204.9335%2010.5368%204.64411C11.9917%204.35472%2013.4997%204.50325%2014.8701%205.0709C16.2406%205.63856%2017.4119%206.59985%2018.236%207.83322C19.0601%209.06659%2019.5%2010.5166%2019.5%2012C19.4978%2013.9885%2018.7069%2015.8948%2017.3009%2017.3009C15.8948%2018.7069%2013.9885%2019.4978%2012%2019.5Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%3C%2Fsvg%3E\"","import { useCallback, useContext, useState } from 'react'\nimport { JsonViewContext } from './json-view'\nimport { customCopy, objectSize, ifDisplay } from '../utils'\nimport { ReactComponent as AngleDownSVG } from '../svgs/angle-down.svg'\nimport CopyButton from './copy-button'\nimport NameValue from './name-value'\nimport type { CustomizeOptions } from '../types'\n\ninterface Props {\n\toriginNode: Array<any>\n\tnode: Array<any>\n\tdepth: number\n\tindex: number\n\tdeleteHandle?: (_: string | number) => void\n\tcustomOptions?: CustomizeOptions\n\tstartIndex: number\n}\n\nexport default function LargeArrayNode({ originNode, node, depth, index, deleteHandle: _deleteSelf, customOptions, startIndex }: Props) {\n\tconst { enableClipboard, src, onEdit, onChange, forceUpdate, displaySize } = useContext(JsonViewContext)\n\n\tconst [fold, setFold] = useState(true)\n\n\t// Edit property\n\tconst editHandle = useCallback(\n\t\t(indexOrName: number | string, newValue: any, oldValue: any) => {\n\t\t\toriginNode[indexOrName as number] = newValue\n\t\t\tif (onEdit)\n\t\t\t\tonEdit({\n\t\t\t\t\tnewValue,\n\t\t\t\t\toldValue,\n\t\t\t\t\tdepth,\n\t\t\t\t\tsrc,\n\t\t\t\t\tindexOrName,\n\t\t\t\t\tparentType: 'array'\n\t\t\t\t})\n\t\t\tif (onChange) onChange({ type: 'edit', depth, src, indexOrName, parentType: 'array' })\n\t\t\tforceUpdate()\n\t\t},\n\t\t[node, onEdit, onChange, forceUpdate]\n\t)\n\n\t// Delete property\n\tconst deleteHandle = (index: number | string) => {\n\t\toriginNode.splice(index as number, 1)\n\t\tforceUpdate()\n\t}\n\n\tconst Icons = (\n\t\t<>\n\t\t\t{!fold && (\n\t\t\t\t<span onClick={() => setFold(true)} className='jv-size-chevron'>\n\t\t\t\t\t{ifDisplay(displaySize, depth, fold) && <span className='jv-size'>{objectSize(node)} Items</span>}\n\n\t\t\t\t\t<AngleDownSVG className='jv-chevron' />\n\t\t\t\t</span>\n\t\t\t)}\n\n\t\t\t{!fold && enableClipboard && customCopy(customOptions) && <CopyButton node={node} />}\n\t\t</>\n\t)\n\n\treturn (\n\t\t<div>\n\t\t\t<span>{'['}</span>\n\n\t\t\t{Icons}\n\n\t\t\t{!fold ? (\n\t\t\t\t<div className='jv-indent'>\n\t\t\t\t\t{node.map((n, i) => (\n\t\t\t\t\t\t<NameValue\n\t\t\t\t\t\t\tkey={String(index) + String(i)}\n\t\t\t\t\t\t\tindexOrName={i + startIndex}\n\t\t\t\t\t\t\tvalue={n}\n\t\t\t\t\t\t\tdepth={depth}\n\t\t\t\t\t\t\tparent={node}\n\t\t\t\t\t\t\tdeleteHandle={deleteHandle}\n\t\t\t\t\t\t\teditHandle={editHandle}\n\t\t\t\t\t\t/>\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\t\t\t) : (\n\t\t\t\t<button onClick={() => setFold(false)} className='jv-button'>\n\t\t\t\t\t{startIndex} ... {startIndex + node.length - 1}\n\t\t\t\t</button>\n\t\t\t)}\n\n\t\t\t<span>{']'}</span>\n\n\t\t\t{/* {fold && ifDisplay(displaySize, depth, fold) && (\n\t\t\t\t<span onClick={() => setFold(false)} className='jv-size'>\n\t\t\t\t\t{objectSize(node)} Items\n\t\t\t\t</span>\n\t\t\t)} */}\n\t\t</div>\n\t)\n}\n","import { useContext, useEffect, useState } from 'react'\nimport LargeArrayNode from './large-array-node'\nimport { JsonViewContext } from './json-view'\nimport { CustomizeOptions } from '../types'\nimport { customAdd, customCopy, customDelete, editableAdd, editableDelete, ifDisplay, isCollapsed, isCollapsed_largeArray } from '../utils'\nimport { ReactComponent as AngleDownSVG } from '../svgs/angle-down.svg'\nimport CopyButton from './copy-button'\nimport { ReactComponent as DeleteSVG } from '../svgs/trash.svg'\nimport { ReactComponent as AddSVG } from '../svgs/add-square.svg'\nimport { ReactComponent as DoneSVG } from '../svgs/done.svg'\nimport { ReactComponent as CancelSVG } from '../svgs/cancel.svg'\n\ninterface Props {\n\tnode: Array<any>\n\tdepth: number\n\tindexOrName?: number | string\n\tdeleteHandle?: (_: string | number) => void\n\tcustomOptions?: CustomizeOptions\n}\n\nexport default function LargeArray({ node, depth, deleteHandle: _deleteSelf, indexOrName, customOptions }: Props) {\n\tconst nestCollapsedArray: any[] = []\n\tfor (let i = 0; i < node.length; i += 100) {\n\t\tnestCollapsedArray.push(node.slice(i, i + 100))\n\t}\n\n\tconst { collapsed, enableClipboard, collapseObjectsAfterLength, editable, onDelete, src, onAdd, onEdit, onChange, forceUpdate, displaySize } =\n\t\tuseContext(JsonViewContext)\n\n\tconst [fold, setFold] = useState(isCollapsed_largeArray(node, depth, indexOrName, collapsed, collapseObjectsAfterLength, customOptions))\n\tuseEffect(() => {\n\t\tsetFold(isCollapsed_largeArray(node, depth, indexOrName, collapsed, collapseObjectsAfterLength, customOptions))\n\t}, [collapsed, collapseObjectsAfterLength])\n\n\t// Delete self\n\tconst [deleting, setDeleting] = useState(false)\n\tconst deleteSelf = () => {\n\t\tsetDeleting(false)\n\t\tif (_deleteSelf) _deleteSelf(indexOrName!)\n\t\tif (onDelete) onDelete({ value: node, depth, src, indexOrName: indexOrName!, parentType: 'array' })\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\ttype: 'delete',\n\t\t\t\tdepth,\n\t\t\t\tsrc,\n\t\t\t\tindexOrName: indexOrName!,\n\t\t\t\tparentType: 'array'\n\t\t\t})\n\t}\n\n\t// Add\n\tconst [adding, setAdding] = useState(false)\n\tconst add = () => {\n\t\tconst arr = node as unknown as any[]\n\t\tarr.push(null)\n\t\tif (onAdd) onAdd({ indexOrName: arr.length - 1, depth, src, parentType: 'array' })\n\t\tif (onChange) onChange({ type: 'add', indexOrName: arr.length - 1, depth, src, parentType: 'array' })\n\t\tforceUpdate()\n\t}\n\n\tconst isEditing = deleting || adding\n\tconst cancel = () => {\n\t\tsetDeleting(false)\n\t\tsetAdding(false)\n\t}\n\n\tconst Icons = (\n\t\t<>\n\t\t\t{!fold && !isEditing && (\n\t\t\t\t<span onClick={() => setFold(true)} className='jv-size-chevron'>\n\t\t\t\t\t{ifDisplay(displaySize, depth, fold) && <span className='jv-size'>{node.length} Items</span>}\n\n\t\t\t\t\t<AngleDownSVG className='jv-chevron' />\n\t\t\t\t</span>\n\t\t\t)}\n\n\t\t\t{isEditing && <DoneSVG className='json-view--edit' style={{ display: 'inline-block' }} onClick={adding ? add : deleteSelf} />}\n\t\t\t{isEditing && <CancelSVG className='json-view--edit' style={{ display: 'inline-block' }} onClick={cancel} />}\n\n\t\t\t{!fold && !isEditing && enableClipboard && customCopy(customOptions) && <CopyButton node={node} />}\n\t\t\t{!fold && !isEditing && editableAdd(editable) && customAdd(customOptions) && (\n\t\t\t\t<AddSVG\n\t\t\t\t\tclassName='json-view--edit'\n\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\tadd()\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t{!fold && !isEditing && editableDelete(editable) && customDelete(customOptions) && _deleteSelf && (\n\t\t\t\t<DeleteSVG className='json-view--edit' onClick={() => setDeleting(true)} />\n\t\t\t)}\n\t\t</>\n\t)\n\n\treturn (\n\t\t<>\n\t\t\t<span>{'['}</span>\n\n\t\t\t{Icons}\n\n\t\t\t{!fold ? (\n\t\t\t\t<div className='jv-indent'>\n\t\t\t\t\t{nestCollapsedArray.map((item, index) => (\n\t\t\t\t\t\t<LargeArrayNode key={String(indexOrName) + String(index)} originNode={node} node={item} depth={depth} index={index} startIndex={index * 100} />\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\t\t\t) : (\n\t\t\t\t<button onClick={() => setFold(false)} className='jv-button'>\n\t\t\t\t\t...\n\t\t\t\t</button>\n\t\t\t)}\n\n\t\t\t<span>{']'}</span>\n\n\t\t\t{fold && ifDisplay(displaySize, depth, fold) && (\n\t\t\t\t<span onClick={() => setFold(false)} className='jv-size'>\n\t\t\t\t\t{node.length} Items\n\t\t\t\t</span>\n\t\t\t)}\n\t\t</>\n\t)\n}\n","import { useCallback, useContext, useEffect, useRef, useState } from 'react'\nimport { JsonViewContext } from './json-view'\nimport { isObject, customAdd, customCopy, customDelete, editableAdd, editableDelete, isCollapsed, objectSize, ifDisplay } from '../utils'\nimport { ReactComponent as AngleDownSVG } from '../svgs/angle-down.svg'\nimport CopyButton from './copy-button'\nimport NameValue from './name-value'\nimport { ReactComponent as DeleteSVG } from '../svgs/trash.svg'\nimport { ReactComponent as AddSVG } from '../svgs/add-square.svg'\nimport { ReactComponent as DoneSVG } from '../svgs/done.svg'\nimport { ReactComponent as CancelSVG } from '../svgs/cancel.svg'\nimport type { CustomizeOptions } from '../types'\nimport LargeArray from './large-array'\n\ninterface Props {\n\tnode: Record<string, any> | Array<any>\n\tdepth: number\n\tindexOrName?: number | string\n\tdeleteHandle?: (_: string | number) => void\n\tcustomOptions?: CustomizeOptions\n}\n\nexport default function ObjectNode({ node, depth, indexOrName, deleteHandle: _deleteSelf, customOptions }: Props) {\n\tconst {\n\t\tcollapsed,\n\t\tenableClipboard,\n\t\tignoreLargeArray,\n\t\tcollapseObjectsAfterLength,\n\t\teditable,\n\t\tonDelete,\n\t\tsrc,\n\t\tonAdd,\n\t\tonEdit,\n\t\tonChange,\n\t\tforceUpdate,\n\t\tdisplaySize\n\t} = useContext(JsonViewContext)\n\n\tif (!ignoreLargeArray && Array.isArray(node) && node.length > 100) {\n\t\treturn <LargeArray node={node} depth={depth} indexOrName={indexOrName} deleteHandle={_deleteSelf} customOptions={customOptions} />\n\t}\n\n\tconst isPlainObject = isObject(node)\n\n\tconst [fold, setFold] = useState(isCollapsed(node, depth, indexOrName, collapsed, collapseObjectsAfterLength, customOptions))\n\n\tuseEffect(() => {\n\t\tsetFold(isCollapsed(node, depth, indexOrName, collapsed, collapseObjectsAfterLength, customOptions))\n\t}, [collapsed, collapseObjectsAfterLength])\n\n\t// Edit property\n\tconst editHandle = useCallback(\n\t\t(indexOrName: number | string, newValue: any, oldValue: any) => {\n\t\t\tif (Array.isArray(node)) {\n\t\t\t\tnode[+indexOrName] = newValue\n\t\t\t} else if (node) {\n\t\t\t\tnode[indexOrName] = newValue\n\t\t\t}\n\t\t\tif (onEdit)\n\t\t\t\tonEdit({\n\t\t\t\t\tnewValue,\n\t\t\t\t\toldValue,\n\t\t\t\t\tdepth,\n\t\t\t\t\tsrc,\n\t\t\t\t\tindexOrName: indexOrName,\n\t\t\t\t\tparentType: isPlainObject ? 'object' : 'array'\n\t\t\t\t})\n\t\t\tif (onChange) onChange({ type: 'edit', depth, src, indexOrName: indexOrName, parentType: isPlainObject ? 'object' : 'array' })\n\t\t\tforceUpdate()\n\t\t},\n\t\t[node, onEdit, onChange, forceUpdate]\n\t)\n\n\t// Delete property\n\tconst deleteHandle = (indexOrName: number | string) => {\n\t\tif (Array.isArray(node)) {\n\t\t\tnode.splice(+indexOrName, 1)\n\t\t} else if (node) {\n\t\t\tdelete node[indexOrName]\n\t\t}\n\t\tforceUpdate()\n\t}\n\n\t// Delete self\n\tconst [deleting, setDeleting] = useState(false)\n\tconst deleteSelf = () => {\n\t\tsetDeleting(false)\n\t\tif (_deleteSelf) _deleteSelf(indexOrName!)\n\t\tif (onDelete) onDelete({ value: node, depth, src, indexOrName: indexOrName!, parentType: isPlainObject ? 'object' : 'array' })\n\t\tif (onChange)\n\t\t\tonChange({\n\t\t\t\ttype: 'delete',\n\t\t\t\tdepth,\n\t\t\t\tsrc,\n\t\t\t\tindexOrName: indexOrName!,\n\t\t\t\tparentType: isPlainObject ? 'object' : 'array'\n\t\t\t})\n\t}\n\n\t// Add\n\tconst [adding, setAdding] = useState(false)\n\tconst inputRef = useRef<HTMLInputElement>(null)\n\tconst add = () => {\n\t\tif (isPlainObject) {\n\t\t\tconst inputName = inputRef.current?.value\n\n\t\t\tif (inputName) {\n\t\t\t\t;(node as Record<string, any>)[inputName] = null\n\n\t\t\t\tif (inputRef.current) inputRef.current.value = ''\n\t\t\t\tsetAdding(false)\n\n\t\t\t\tif (onAdd) onAdd({ indexOrName: inputName, depth, src, parentType: 'object' })\n\t\t\t\tif (onChange) onChange({ type: 'add', indexOrName: inputName, depth, src, parentType: 'object' })\n\t\t\t}\n\t\t} else if (Array.isArray(node)) {\n\t\t\tconst arr = node as unknown as any[]\n\t\t\tarr.push(null)\n\t\t\tif (onAdd) onAdd({ indexOrName: arr.length - 1, depth, src, parentType: 'array' })\n\t\t\tif (onChange) onChange({ type: 'add', indexOrName: arr.length - 1, depth, src, parentType: 'array' })\n\t\t}\n\t\tforceUpdate()\n\t}\n\tconst handleAddKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n\t\tif (event.key === 'Enter') {\n\t\t\tevent.preventDefault()\n\t\t\tadd()\n\t\t} else if (event.key === 'Escape') {\n\t\t\tcancel()\n\t\t}\n\t}\n\n\tconst isEditing = deleting || adding\n\tconst cancel = () => {\n\t\tsetDeleting(false)\n\t\tsetAdding(false)\n\t}\n\n\tconst Icons = (\n\t\t<>\n\t\t\t{!fold && !isEditing && (\n\t\t\t\t<span onClick={() => setFold(true)} className='jv-size-chevron'>\n\t\t\t\t\t{ifDisplay(displaySize, depth, fold) && <span className='jv-size'>{objectSize(node)} Items</span>}\n\n\t\t\t\t\t<AngleDownSVG className='jv-chevron' />\n\t\t\t\t</span>\n\t\t\t)}\n\n\t\t\t{adding && isPlainObject && <input className='json-view--input' placeholder='property' ref={inputRef} onKeyDown={handleAddKeyDown} />}\n\n\t\t\t{isEditing && <DoneSVG className='json-view--edit' style={{ display: 'inline-block' }} onClick={adding ? add : deleteSelf} />}\n\t\t\t{isEditing && <CancelSVG className='json-view--edit' style={{ display: 'inline-block' }} onClick={cancel} />}\n\n\t\t\t{!fold && !isEditing && enableClipboard && customCopy(customOptions) && <CopyButton node={node} />}\n\t\t\t{!fold && !isEditing && editableAdd(editable) && customAdd(customOptions) && (\n\t\t\t\t<AddSVG\n\t\t\t\t\tclassName='json-view--edit'\n\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\tif (isPlainObject) {\n\t\t\t\t\t\t\tsetAdding(true)\n\t\t\t\t\t\t\tsetTimeout(() => inputRef.current?.focus())\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tadd()\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t{!fold && !isEditing && editableDelete(editable) && customDelete(customOptions) && _deleteSelf && (\n\t\t\t\t<DeleteSVG className='json-view--edit' onClick={() => setDeleting(true)} />\n\t\t\t)}\n\t\t</>\n\t)\n\n\tif (Array.isArray(node)) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<span>{'['}</span>\n\n\t\t\t\t{Icons}\n\n\t\t\t\t{!fold ? (\n\t\t\t\t\t<div className='jv-indent'>\n\t\t\t\t\t\t{node.map((n, i) => (\n\t\t\t\t\t\t\t<NameValue\n\t\t\t\t\t\t\t\tkey={String(indexOrName) + String(i)}\n\t\t\t\t\t\t\t\tindexOrName={i}\n\t\t\t\t\t\t\t\tvalue={n}\n\t\t\t\t\t\t\t\tdepth={depth}\n\t\t\t\t\t\t\t\tparent={node}\n\t\t\t\t\t\t\t\tdeleteHandle={deleteHandle}\n\t\t\t\t\t\t\t\teditHandle={editHandle}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<button onClick={() => setFold(false)} className='jv-button'>\n\t\t\t\t\t\t...\n\t\t\t\t\t</button>\n\t\t\t\t)}\n\n\t\t\t\t<span>{']'}</span>\n\n\t\t\t\t{fold && ifDisplay(displaySize, depth, fold) && (\n\t\t\t\t\t<span onClick={() => setFold(false)} className='jv-size'>\n\t\t\t\t\t\t{objectSize(node)} Items\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t)\n\t} else if (isPlainObject) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<span>{'{'}</span>\n\n\t\t\t\t{Icons}\n\n\t\t\t\t{!fold ? (\n\t\t\t\t\t<div className='jv-indent'>\n\t\t\t\t\t\t{Object.entries(node).map(([name, value]) => (\n\t\t\t\t\t\t\t<NameValue\n\t\t\t\t\t\t\t\tkey={String(indexOrName) + String(name)}\n\t\t\t\t\t\t\t\tindexOrName={name}\n\t\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t\t\tdepth={depth}\n\t\t\t\t\t\t\t\tparent={node}\n\t\t\t\t\t\t\t\tdeleteHandle={deleteHandle}\n\t\t\t\t\t\t\t\teditHandle={editHandle}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\t<button onClick={() => setFold(false)} className='jv-button'>\n\t\t\t\t\t\t...\n\t\t\t\t\t</button>\n\t\t\t\t)}\n\n\t\t\t\t<span>{'}'}</span>\n\n\t\t\t\t{fold && ifDisplay(displaySize, depth, fold) && (\n\t\t\t\t\t<span onClick={() => setFold(false)} className='jv-size'>\n\t\t\t\t\t\t{objectSize(node)} Items\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t)\n\t}\n\treturn null\n}\n","import React, { useContext, useRef, useState } from 'react'\nimport { JsonViewContext } from './json-view'\n\ninterface Props {\n\tstr: string\n\tclassName: string\n\tctrlClick: ((event: React.MouseEvent) => void) | undefined\n}\n\nconst LongString = React.forwardRef<HTMLSpanElement, Props>(({ str, className, ctrlClick }, ref) => {\n\tlet { collapseStringMode, collapseStringsAfterLength, customizeCollapseStringUI } = useContext(JsonViewContext)\n\tconst [truncated, setTruncated] = useState(true)\n\tconst strRef = useRef<HTMLSpanElement>(null)\n\n\tcollapseStringsAfterLength = collapseStringsAfterLength > 0 ? collapseStringsAfterLength : 0\n\n\tconst str_show = str.replace(/\\s+/g, ' ')\n\tconst collapseStringUI =\n\t\ttypeof customizeCollapseStringUI === 'function'\n\t\t\t? customizeCollapseStringUI(str_show, truncated)\n\t\t\t: typeof customizeCollapseStringUI === 'string'\n\t\t\t? customizeCollapseStringUI\n\t\t\t: '...'\n\n\tconst clickToTruncateOrEdit = (event: React.MouseEvent) => {\n\t\tif ((event.ctrlKey || event.metaKey) && ctrlClick) {\n\t\t\tctrlClick(event)\n\t\t} else {\n\t\t\tconst selection = window.getSelection()\n\n\t\t\tif (selection && selection.anchorOffset !== selection.focusOffset && selection.anchorNode?.parentElement === strRef.current) return\n\n\t\t\tsetTruncated(!truncated)\n\t\t}\n\t}\n\n\tif (str.length <= collapseStringsAfterLength)\n\t\treturn (\n\t\t\t<span ref={strRef} className={className} onClick={ctrlClick}>\n\t\t\t\t\"{str}\"\n\t\t\t</span>\n\t\t)\n\n\tif (collapseStringMode === 'address')\n\t\treturn str.length <= 10 ? (\n\t\t\t<span ref={strRef} className={className} onClick={ctrlClick}>\n\t\t\t\t\"{str}\"\n\t\t\t</span>\n\t\t) : (\n\t\t\t<span ref={strRef} onClick={clickToTruncateOrEdit} className={className + ' cursor-pointer'}>\n\t\t\t\t\"{truncated ? [str_show.slice(0, 6), collapseStringUI, str_show.slice(-4)] : str}\"\n\t\t\t</span>\n\t\t)\n\n\tif (collapseStringMode === 'directly') {\n\t\treturn (\n\t\t\t<span ref={strRef} onClick={clickToTruncateOrEdit} className={className + ' cursor-pointer'}>\n\t\t\t\t\"{truncated ? [str_show.slice(0, collapseStringsAfterLength), collapseStringUI] : str}\"\n\t\t\t</span>\n\t\t)\n\t}\n\n\tif (collapseStringMode === 'word') {\n\t\tlet index_ahead = collapseStringsAfterLength\n\t\tlet index_behind = collapseStringsAfterLength + 1\n\t\tlet str_collapsed = str_show\n\t\tlet count = 1\n\n\t\twhile (true) {\n\t\t\tif (/\\W/.test(str[index_ahead])) {\n\t\t\t\tstr_collapsed = str.slice(0, index_ahead)\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tif (/\\W/.test(str[index_behind])) {\n\t\t\t\tstr_collapsed = str.slice(0, index_behind)\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tif (count === 6) {\n\t\t\t\tstr_collapsed = str.slice(0, collapseStringsAfterLength)\n\t\t\t\tbreak\n\t\t\t}\n\n\t\t\tcount++\n\t\t\tindex_ahead--\n\t\t\tindex_behind++\n\t\t}\n\n\t\treturn (\n\t\t\t<span ref={strRef} onClick={clickToTruncateOrEdit} className={className + ' cursor-pointer'}>\n\t\t\t\t\"{truncated ? [str_collapsed, collapseStringUI] : str}\"\n\t\t\t</span>\n\t\t)\n\t}\n\n\treturn (\n\t\t<span ref={strRef} className={className}>\n\t\t\t\"{str}\"\n\t\t</span>\n\t)\n})\n\nexport default LongString\n","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%20%3Cpath%20%20%20%20d%3D%22M17.25%203H6.75C4.68225%203%203%204.68225%203%206.75V17.25C3%2019.3177%204.68225%2021%206.75%2021H17.25C19.3177%2021%2021%2019.3177%2021%2017.25V6.75C21%204.68225%2019.3177%203%2017.25%203ZM19.5%2017.25C19.5%2018.4905%2018.4905%2019.5%2017.25%2019.5H6.75C5.5095%2019.5%204.5%2018.4905%204.5%2017.25V6.75C4.5%205.5095%205.5095%204.5%206.75%204.5H17.25C18.4905%204.5%2019.5%205.5095%2019.5%206.75V17.25ZM13.4092%207.78425L8.379%2012.8145C7.81275%2013.3808%207.5%2014.1345%207.5%2014.9355V16.125C7.5%2016.5397%207.836%2016.875%208.25%2016.875H9.4395C10.2405%2016.875%2010.9942%2016.563%2011.5605%2015.996L16.5908%2010.9658C17.4683%2010.0883%2017.4683%208.66175%2016.5908%207.78425C15.7403%206.9345%2014.259%206.9345%2013.4092%207.78425ZM10.5%2014.9355C10.2203%2015.2145%209.834%2015.375%209.4395%2015.375H9V14.9355C9%2014.535%209.156%2014.1585%209.4395%2013.875L12.627%2010.6875L13.6875%2011.748L10.5%2014.9355ZM15.5303%209.90525L14.748%2010.6875L13.6875%209.627L14.4698%208.84475C14.7525%208.5605%2015.2468%208.5605%2015.5303%208.84475C15.8228%209.13725%2015.8228%209.61275%2015.5303%209.90525Z%22%20%20%20%20fill%3D%22currentColor%22%20%2F%3E%3C%2Fsvg%3E\"","export default \"data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M6.75%203H12.25V4.5H6.75C5.5095%204.5%204.5%205.5095%204.5%206.75V17.25C4.5%2018.4905%205.5095%2019.5%206.75%2019.5H17.25C18.4905%2019.5%2019.5%2018.4905%2019.5%2017.25V11.75H21V17.25C21%2019.3177%2019.3177%2021%2017.25%2021H6.75C4.68225%2021%203%2019.3177%203%2017.25V6.75C3%204.68225%204.68225%203%206.75%203Z%22%20fill%3D%22currentColor%22%2F%3E%3Cpath%20d%3D%22M20.0134%203H16.0669C15.8053%203.00003%2015.5544%203.10399%2015.3694%203.28902C15.1844%203.47404%2015.0804%203.72497%2015.0804%203.98662C15.0804%204.24827%2015.1844%204.4992%2015.3694%204.68422C15.5544%204.86925%2015.8053%204.97321%2016.0669%204.97324H17.6307L11.2892%2011.3148C10.9108%2011.6932%2010.9147%2012.3364%2011.2892%2012.7109C11.6675%2013.0892%2012.3107%2013.0854%2012.6852%2012.7109L19.0268%206.36931V7.9331C19.0268%208.19475%2019.1308%208.44567%2019.3158%208.63067C19.5008%208.81567%2019.7518%208.9196%2020.0134%208.9196C20.2751%208.9196%2020.526%208.81567%2020.711%208.63067C20.896%208.44567%2021%208.19475%2021%207.9331V3.98662C21%203.72495%2020.8961%203.474%2020.7111%203.28897C20.526%203.10395%2020.2751%203%2020.0134%203Z%22%20fill%3D%22currentColor%22%2F%3E%3C%2Fsvg%3E\"","import { useContext, useRef, useState, isValidElement, useMemo, useCallback } from 'react'\nimport { JsonViewContext } from './json-view'\nimport {\n\tcustomCopy,\n\tcustomDelete,\n\tcustomEdit,\n\teditableDelete,\n\teditableEdit,\n\tisObject,\n\tisReactComponent,\n\tsafeCall,\n\tstringifyForCopying,\n\tresolveEvalFailedNewValue,\n\tcustomMatchesURL\n} from '../utils'\nimport ObjectNode from './object-node'\nimport LongString from './long-string'\nimport CopyButton from './copy-button'\nimport { ReactComponent as EditSVG } from '../svgs/edit.svg'\nimport { ReactComponent as DeleteSVG } from '../svgs/trash.svg'\nimport { ReactComponent as DoneSVG } from '../svgs/done.svg'\nimport { ReactComponent as CancelSVG } from '../svgs/cancel.svg'\nimport { ReactComponent as LinkSVG } from '../svgs/link.svg'\nimport type { CustomizeNode, CustomizeOptions } from '../types'\n\ninterface Props {\n\tnode: any\n\tdepth: number\n\tdeleteHandle?: (indexOrName: string | number) => void\n\teditHandle?: (indexOrName: string | number, newValue: any, oldValue: any) => void\n\tindexOrName?: number | string\n\tparent?: Record<string, any> | Array<any>\n}\n\nexport default function JsonNode({ node, depth, deleteHandle: _deleteHandle, indexOrName, parent, editHandle }: Props) {\n\tconst { collapseStringsAfterLength, enableClipboard, editable, src, onDelete, onChange, customizeNode, matchesURL, urlRegExp } = useContext(JsonViewContext)\n\n\tlet customReturn: ReturnType<CustomizeNode> | undefined\n\tif (typeof customizeNode === 'function') customReturn = safeCall(customizeNode, [{ node, depth, indexOrName }])\n\n\tif (customReturn) {\n\t\tif (isValidElement(customReturn)) return customReturn\n\t\telse if (isReactComponent(customReturn)) {\n\t\t\tconst CustomComponent = customReturn\n\t\t\treturn <CustomComponent node={node} depth={depth} indexOrName={indexOrName} />\n\t\t}\n\t}\n\n\tif (Array.isArray(node) || isObject(node)) {\n\t\treturn (\n\t\t\t<ObjectNode\n\t\t\t\tnode={node}\n\t\t\t\tdepth={depth}\n\t\t\t\tindexOrName={indexOrName}\n\t\t\t\tdeleteHandle={_deleteHandle}\n\t\t\t\tcustomOptions={typeof customReturn === 'object' ? (customReturn as CustomizeOptions) : undefined}\n\t\t\t/>\n\t\t)\n\t} else {\n\t\tconst type = typeof node\n\n\t\tconst [editing, setEditing] = useState(false)\n\t\tconst [deleting, setDeleting] = useState(false)\n\t\tconst valueRef = useRef<HTMLSpanElement>(null)\n\n\t\tconst edit = () => {\n\t\t\tsetEditing(true)\n\t\t\tsetTimeout(() => {\n\t\t\t\twindow.getSelection()?.selectAllChildren(valueRef.current!)\n\t\t\t\tvalueRef.current?.focus()\n\t\t\t})\n\t\t}\n\n\t\tconst done = useCallback(() => {\n\t\t\tlet newValue = valueRef.current!.innerText\n\n\t\t\ttry {\n\t\t\t\tif (newValue === '{}' || newValue === '[]') newValue = `(${newValue})`\n\t\t\t\tconst evalValue = eval(newValue)\n\n\t\t\t\tif (editHandle) editHandle(indexOrName!, evalValue, node)\n\t\t\t} catch (e) {\n\t\t\t\tconst trimmedStringValue = resolveEvalFailedNewValue(type, newValue)\n\t\t\t\tif (editHandle) editHandle(indexOrName!, trimmedStringValue, node)\n\t\t\t}\n\n\t\t\tsetEditing(false)\n\t\t}, [editHandle])\n\t\tconst cancel = () => {\n\t\t\tsetEditing(false)\n\t\t\tsetDeleting(false)\n\t\t}\n\t\tconst deleteHandle = () => {\n\t\t\tsetDeleting(false)\n\t\t\tif (_deleteHandle) _deleteHandle(indexOrName!)\n\t\t\tif (onDelete)\n\t\t\t\tonDelete({\n\t\t\t\t\tvalue: node,\n\t\t\t\t\tdepth,\n\t\t\t\t\tsrc,\n\t\t\t\t\tindexOrName: indexOrName!,\n\t\t\t\t\tparentType: Array.isArray(parent) ? 'array' : 'object'\n\t\t\t\t})\n\t\t\tif (onChange)\n\t\t\t\tonChange({\n\t\t\t\t\tdepth,\n\t\t\t\t\tsrc,\n\t\t\t\t\tindexOrName: indexOrName!,\n\t\t\t\t\tparentType: Array.isArray(parent) ? 'array' : 'object',\n\t\t\t\t\ttype: 'delete'\n\t\t\t\t})\n\t\t}\n\n\t\tconst handleKeyDown = useCallback(\n\t\t\t(event: React.KeyboardEvent<HTMLDivElement>) => {\n\t\t\t\tif (event.key === 'Enter') {\n\t\t\t\t\tevent.preventDefault()\n\t\t\t\t\tdone()\n\t\t\t\t} else if (event.key === 'Escape') {\n\t\t\t\t\tcancel()\n\t\t\t\t}\n\t\t\t},\n\t\t\t[done]\n\t\t)\n\n\t\tconst isEditing = editing || deleting\n\n\t\tconst ctrlClick =\n\t\t\t!isEditing && editableEdit(editable) && customEdit(customReturn as CustomizeOptions | undefined) && editHandle\n\t\t\t\t? (event: React.MouseEvent) => {\n\t\t\t\t\t\tif (event.ctrlKey || event.metaKey) edit()\n\t\t\t\t  }\n\t\t\t\t: undefined\n\n\t\tconst Icons = (\n\t\t\t<>\n\t\t\t\t{isEditing && <DoneSVG className='json-view--edit' style={{ display: 'inline-block' }} onClick={deleting ? deleteHandle : done} />}\n\t\t\t\t{isEditing && <CancelSVG className='json-view--edit' style={{ display: 'inline-block' }} onClick={cancel} />}\n\n\t\t\t\t{!isEditing && enableClipboard && customCopy(customReturn as CustomizeOptions | undefined) && <CopyButton node={node} />}\n\t\t\t\t{!isEditing && matchesURL && type === 'string' && urlRegExp.test(node) && customMatchesURL(customReturn as CustomizeOptions | undefined) && (\n\t\t\t\t\t<a href={node} target='_blank' className='json-view--link'>\n\t\t\t\t\t\t<LinkSVG />\n\t\t\t\t\t</a>\n\t\t\t\t)}\n\n\t\t\t\t{!isEditing && editableEdit(editable) && customEdit(customReturn as CustomizeOptions | undefined) && editHandle && (\n\t\t\t\t\t<EditSVG className='json-view--edit' onClick={edit} />\n\t\t\t\t)}\n\t\t\t\t{!isEditing && editableDelete(editable) && customDelete(customReturn as CustomizeOptions | undefined) && _deleteHandle && (\n\t\t\t\t\t<DeleteSVG className='json-view--edit' onClick={() => setDeleting(true)} />\n\t\t\t\t)}\n\t\t\t</>\n\t\t)\n\n\t\tlet className = 'json-view--string'\n\n\t\tif (typeof (customReturn as CustomizeOptions)?.className === 'string') className += ' ' + (customReturn as CustomizeOptions).className\n\n\t\tswitch (type) {\n\t\t\tcase 'number':\n\t\t\tcase 'bigint':\n\t\t\t\tclassName = 'json-view--number'\n\t\t\t\tbreak\n\t\t\tcase 'boolean':\n\t\t\t\tclassName = 'json-view--boolean'\n\t\t\t\tbreak\n\t\t\tcase 'object':\n\t\t\t\tclassName = 'json-view--null'\n\t\t\t\tbreak\n\t\t}\n\t\tif (deleting) className += ' json-view--deleting'\n\n\t\tlet displayValue = String(node)\n\t\tif (type === 'bigint') displayValue += 'n'\n\n\t\tconst EditingElement = useMemo(\n\t\t\t() => (\n\t\t\t\t<span\n\t\t\t\t\tcontentEditable\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tdangerouslySetInnerHTML={{ __html: type === 'string' ? `\"${displayValue}\"` : displayValue }}\n\t\t\t\t\tref={valueRef}\n\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t/>\n\t\t\t),\n\t\t\t[displayValue, type, handleKeyDown]\n\t\t)\n\n\t\tif (type === 'string')\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t{editing ? (\n\t\t\t\t\t\tEditingElement\n\t\t\t\t\t) : node.length > collapseStringsAfterLength ? (\n\t\t\t\t\t\t<LongString str={node} ref={valueRef} className={className} ctrlClick={ctrlClick} />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span className={className} onClick={ctrlClick}>\n\t\t\t\t\t\t\t\"{displayValue}\"\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{Icons}\n\t\t\t\t</>\n\t\t\t)\n\t\telse {\n\t\t\treturn (\n\t\t\t\t<>\n\t\t\t\t\t{editing ? (\n\t\t\t\t\t\tEditingElement\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span className={className} onClick={ctrlClick}>\n\t\t\t\t\t\t\t{displayValue}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\n\t\t\t\t\t{Icons}\n\t\t\t\t</>\n\t\t\t)\n\t\t}\n\t}\n}\n","import { createContext, useCallback, useEffect, useState } from 'react'\nimport JsonNode from './json-node'\nimport type { Collapsed, CustomizeCollapseStringUI, CustomizeNode, DisplaySize, Editable } from '../types'\nimport { stringifyForCopying } from '../utils'\n\ntype OnEdit = (params: { newValue: any; oldValue: any; depth: number; src: any; indexOrName: string | number; parentType: 'object' | 'array' | null }) => void\ntype OnDelete = (params: { value: any; indexOrName: string | number; depth: number; src: any; parentType: 'object' | 'array' | null }) => void\ntype OnAdd = (params: { indexOrName: string | number; depth: number; src: any; parentType: 'object' | 'array' }) => void\ntype OnChange = (params: {\n\tindexOrName: string | number\n\tdepth: number\n\tsrc: any\n\tparentType: 'object' | 'array' | null\n\ttype: 'add' | 'edit' | 'delete'\n}) => void\n\nexport const defaultURLRegExp = /^(((ht|f)tps?):\\/\\/)?([^!@#$%^&*?.\\s-]([^!@#$%^&*?.\\s]{0,63}[^!@#$%^&*?.\\s])?\\.)+[a-z]{2,6}\\/?/\n\nexport const JsonViewContext = createContext({\n\tsrc: undefined as any,\n\n\tcollapseStringsAfterLength: 99,\n\tcollapseStringMode: 'directly' as 'directly' | 'word' | 'address',\n\tcustomizeCollapseStringUI: undefined as CustomizeCollapseStringUI | undefined,\n\n\tcollapseObjectsAfterLength: 20,\n\tcollapsed: false as Collapsed,\n\n\tenableClipboard: true,\n\n\teditable: false as Editable,\n\tonEdit: undefined as OnEdit | undefined,\n\tonDelete: undefined as OnDelete | undefined,\n\tonAdd: undefined as OnAdd | undefined,\n\tonChange: undefined as OnChange | undefined,\n\n\tforceUpdate: () => {},\n\n\tcustomizeNode: undefined as CustomizeNode | undefined,\n\tcustomizeCopy: (() => {}) as (node: any) => any,\n\n\tdisplaySize: undefined as DisplaySize,\n\n\tmatchesURL: false,\n\turlRegExp: defaultURLRegExp,\n\n\tignoreLargeArray: false\n})\n\nexport interface JsonViewProps {\n\tsrc: any\n\n\tcollapseStringsAfterLength?: number\n\tcollapseStringMode?: 'directly' | 'word' | 'address'\n\tcustomizeCollapseStringUI?: CustomizeCollapseStringUI\n\n\tcollapseObjectsAfterLength?: number\n\tcollapsed?: Collapsed\n\n\tenableClipboard?: boolean\n\n\teditable?: Editable\n\tonEdit?: OnEdit\n\tonDelete?: OnDelete\n\tonAdd?: OnAdd\n\tonChange?: OnChange\n\n\tcustomizeNode?: CustomizeNode\n\tcustomizeCopy?: (node: any) => any\n\n\tdark?: boolean\n\ttheme?: 'default' | 'a11y' | 'github' | 'vscode' | 'atom' | 'winter-is-coming'\n\n\tdisplaySize?: DisplaySize\n\n\tstyle?: React.CSSProperties\n\tclassName?: string\n\n\tmatchesURL?: boolean\n\turlRegExp?: RegExp\n\n\tignoreLargeArray?: boolean\n}\n\nexport default function JsonView({\n\tsrc: _src,\n\n\tcollapseStringsAfterLength = 99,\n\tcollapseStringMode = 'directly',\n\tcustomizeCollapseStringUI,\n\n\tcollapseObjectsAfterLength = 99,\n\tcollapsed,\n\n\tenableClipboard = true,\n\n\teditable = false,\n\tonEdit,\n\tonDelete,\n\tonAdd,\n\tonChange,\n\n\tdark = false,\n\ttheme = 'default',\n\n\tcustomizeNode,\n\tcustomizeCopy = stringifyForCopying,\n\n\tdisplaySize,\n\n\tstyle,\n\tclassName,\n\n\tmatchesURL = false,\n\turlRegExp = defaultURLRegExp,\n\n\tignoreLargeArray = false\n}: JsonViewProps) {\n\tconst [_, update] = useState(0)\n\tconst forceUpdate = useCallback(() => update(state => ++state), [])\n\tconst [src, setSrc] = useState(_src)\n\tuseEffect(() => setSrc(_src), [_src])\n\n\treturn (\n\t\t<JsonViewContext.Provider\n\t\t\tvalue={{\n\t\t\t\tsrc,\n\n\t\t\t\tcollapseStringsAfterLength,\n\t\t\t\tcollapseStringMode,\n\t\t\t\tcustomizeCollapseStringUI,\n\n\t\t\t\tcollapseObjectsAfterLength,\n\t\t\t\tcollapsed,\n\n\t\t\t\tenableClipboard,\n\n\t\t\t\teditable,\n\t\t\t\tonEdit,\n\t\t\t\tonDelete,\n\t\t\t\tonAdd,\n\t\t\t\tonChange,\n\n\t\t\t\tforceUpdate,\n\n\t\t\t\tcustomizeNode,\n\t\t\t\tcustomizeCopy,\n\n\t\t\t\tdisplaySize,\n\n\t\t\t\tmatchesURL,\n\t\t\t\turlRegExp,\n\n\t\t\t\tignoreLargeArray\n\t\t\t}}>\n\t\t\t<code\n\t\t\t\tclassName={'json-view' + (dark ? ' dark' : '') + (theme && theme !== 'default' ? ' json-view_' + theme : '') + (className ? ' ' + className : '')}\n\t\t\t\tstyle={style}>\n\t\t\t\t<JsonNode\n\t\t\t\t\tnode={src}\n\t\t\t\t\tdepth={1}\n\t\t\t\t\teditHandle={(indexOrName: number | string, newValue: any, oldValue: any) => {\n\t\t\t\t\t\tsetSrc(newValue)\n\t\t\t\t\t\tif (onEdit)\n\t\t\t\t\t\t\tonEdit({\n\t\t\t\t\t\t\t\tnewValue,\n\t\t\t\t\t\t\t\toldValue,\n\t\t\t\t\t\t\t\tdepth: 1,\n\t\t\t\t\t\t\t\tsrc,\n\t\t\t\t\t\t\t\tindexOrName: indexOrName,\n\t\t\t\t\t\t\t\tparentType: null\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\tif (onChange) onChange({ type: 'edit', depth: 1, src, indexOrName: indexOrName, parentType: null })\n\t\t\t\t\t}}\n\t\t\t\t\tdeleteHandle={() => {\n\t\t\t\t\t\tsetSrc(undefined)\n\t\t\t\t\t\tif (onDelete)\n\t\t\t\t\t\t\tonDelete({\n\t\t\t\t\t\t\t\tvalue: src,\n\t\t\t\t\t\t\t\tdepth: 1,\n\t\t\t\t\t\t\t\tsrc,\n\t\t\t\t\t\t\t\tindexOrName: '',\n\t\t\t\t\t\t\t\tparentType: null\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\tif (onChange)\n\t\t\t\t\t\t\tonChange({\n\t\t\t\t\t\t\t\tdepth: 1,\n\t\t\t\t\t\t\t\tsrc,\n\t\t\t\t\t\t\t\tindexOrName: '',\n\t\t\t\t\t\t\t\tparentType: null,\n\t\t\t\t\t\t\t\ttype: 'delete'\n\t\t\t\t\t\t\t})\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</code>\n\t\t</JsonViewContext.Provider>\n\t)\n}\n"],"names":["_path","_extends","React","_path2","useContext","useState","_jsx","CopiedSVG","CopySVG","_jsxs","useCallback","_Fragment","AngleDownSVG","useEffect","DoneSVG","CancelSVG","AddSVG","DeleteSVG","useRef","isValidElement","LinkSVG","EditSVG","useMemo","createContext"],"mappings":"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"}