@deephaven/embed-widget 1.8.1-beta.4 → 1.8.1-beta.5

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.
Files changed (27) hide show
  1. package/build/assets/{App-sjUiqzF8.js → App-D7FdbK3x.js} +2 -2
  2. package/build/assets/{App-sjUiqzF8.js.map → App-D7FdbK3x.js.map} +1 -1
  3. package/build/assets/{Chart-CAxXPsNV.js → Chart-QehjsICG.js} +2 -2
  4. package/build/assets/{Chart-CAxXPsNV.js.map → Chart-QehjsICG.js.map} +1 -1
  5. package/build/assets/{IrisGrid-CyhLczs1.js → IrisGrid-fcQO_wHf.js} +2 -2
  6. package/build/assets/{IrisGrid-CyhLczs1.js.map → IrisGrid-fcQO_wHf.js.map} +1 -1
  7. package/build/assets/{IrisGridThemeProvider-liJSHW0z.js → IrisGridThemeProvider-C6EKLoR0.js} +2 -2
  8. package/build/assets/{IrisGridThemeProvider-liJSHW0z.js.map → IrisGridThemeProvider-C6EKLoR0.js.map} +1 -1
  9. package/build/assets/{LocalWorkspaceStorage-BaeGIt59.js → LocalWorkspaceStorage-ZkiXbvwz.js} +2 -2
  10. package/build/assets/{LocalWorkspaceStorage-BaeGIt59.js.map → LocalWorkspaceStorage-ZkiXbvwz.js.map} +1 -1
  11. package/build/assets/{LogPanel-U1ARoCi3.js → LogPanel-DN635Qba.js} +4 -4
  12. package/build/assets/LogPanel-DN635Qba.js.map +1 -0
  13. package/build/assets/LogPanel-kxFI7ByQ.css +1 -0
  14. package/build/assets/{MarkdownEditor-LQsjKwjN.js → MarkdownEditor-DToCA0t-.js} +2 -2
  15. package/build/assets/{MarkdownEditor-LQsjKwjN.js.map → MarkdownEditor-DToCA0t-.js.map} +1 -1
  16. package/build/assets/{MarkdownNotebook-B6lrjDIY.js → MarkdownNotebook-DGMIMxaq.js} +2 -2
  17. package/build/assets/{MarkdownNotebook-B6lrjDIY.js.map → MarkdownNotebook-DGMIMxaq.js.map} +1 -1
  18. package/build/assets/{index-BVIlhVph.js → index-BauuvgyM.js} +2 -2
  19. package/build/assets/{index-BVIlhVph.js.map → index-BauuvgyM.js.map} +1 -1
  20. package/build/assets/{index-BDUsssTl.js → index-BohcsXgU.js} +3 -3
  21. package/build/assets/{index-BDUsssTl.js.map → index-BohcsXgU.js.map} +1 -1
  22. package/build/assets/{index-BHShzili.js → index-C8_qg_e9.js} +5 -5
  23. package/build/assets/{index-BHShzili.js.map → index-C8_qg_e9.js.map} +1 -1
  24. package/build/index.html +1 -1
  25. package/package.json +17 -17
  26. package/build/assets/LogPanel-D38KszRh.css +0 -1
  27. package/build/assets/LogPanel-U1ARoCi3.js.map +0 -1
@@ -0,0 +1 @@
1
+ .popper-container{position:absolute;z-index:5000}.popper.popper-tooltip{--background-color: var(--dh-color-tooltip-bg)}.popper{--background-color: var(--dh-color-popover-bg);background:var(--background-color);color:var(--dh-color-tooltip-fg);border-radius:4px;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);transition:visibility .15s,opacity .15s;pointer-events:none;outline:0}.popper .popper-content{position:relative}.popper .popper-content .tooltip-content{text-align:center;padding:.25rem .5rem}.popper .popper-arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:var(--background-color)}.popper.interactive{pointer-events:auto}.popper-transition-enter{opacity:0;transition:none}.popper-transition-exit{opacity:0;transition:all .15s}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translateY(10px)}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translate(-10px)}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translateY(-10px)}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-enter,.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-exit{transform:scale(.92) translate(10px)}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=right]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper-transition-enter-active.popper,.popper-container[x-placement^=left]>.spectrum-theme-provider .popper-transition-enter-active.popper{opacity:1;transform:none;transition:all .15s ease-out}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper{margin-bottom:5px}.popper-container[x-placement^=top]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 5px 0 5px;border-left-color:transparent;border-right-color:transparent;border-bottom-color:transparent;bottom:-5px;margin-top:0;margin-bottom:0}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper{margin-top:5px}.popper-container[x-placement^=bottom]>.spectrum-theme-provider .popper .popper-arrow{border-width:0 5px 5px 5px;border-left-color:transparent;border-right-color:transparent;border-top-color:transparent;top:-5px;margin-top:0;margin-bottom:0}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper{margin-left:5px}.popper-container[x-placement^=right]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 5px 5px 0;border-left-color:transparent;border-top-color:transparent;border-bottom-color:transparent;left:-5px;margin-left:0;margin-right:0}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper{margin-right:5px}.popper-container[x-placement^=left]>.spectrum-theme-provider .popper .popper-arrow{border-width:5px 0 5px 5px;border-top-color:transparent;border-right-color:transparent;border-bottom-color:transparent;right:-5px;margin-left:0;margin-right:0}:root{--dh-svg-icon-close-tab: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='currentColor' d='M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'/%3E%3C/svg%3E");--dh-svg-icon-maximise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M3 3v10h10V3H3zm9 9H4V4h8v8z'/%3E%3C/svg%3E");--dh-svg-icon-minimise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M14 8v1H3V8h11z'/%3E%3C/svg%3E");--dh-svg-icon-next: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M10.072 8.024L5.715 3.667l.618-.62L11 7.716v.618L6.333 13l-.618-.619 4.357-4.357z'/%3E%3C/svg%3E");--dh-svg-icon-prev: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M5.928 7.976l4.357 4.357-.618.62L5 8.284v-.618L9.667 3l.618.619-4.357 4.357z'/%3E%3C/svg%3E");--dh-svg-icon-tab-dropdown: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M7.976 10.072l4.357-4.357.62.618L8.284 11h-.618L3 6.333l.619-.618 4.357 4.357z'/%3E%3C/svg%3E");--dh-svg-icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='currentColor' d='m256 278.624 116.672 116.704 22.656 -22.624L278.624 256l116.704 -116.672 -22.624 -22.656L256 233.376 139.328 116.672l-22.624 22.656L233.376 256l-116.672 116.672 22.624 22.656L256 278.624z'/%3E%3C/svg%3E");--dh-svg-icon-search-cancel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M8 8.707l3.646 3.647.708-.707L8.707 8l3.647-3.646-.707-.708L8 7.293 4.354 3.646l-.707.708L7.293 8l-3.646 3.646.707.708L8 8.707z'/%3E%3C/svg%3E");--dh-svg-icon-selector-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath fill='currentColor' d='M9.99 1.01A1 1 0 0 0 8.283.303L5 3.586 1.717.303A1 1 0 1 0 .303 1.717l3.99 3.98a1 1 0 0 0 1.414 0l3.99-3.98a.997.997 0 0 0 .293-.707z'/%3E%3C/svg%3E");--dh-svg-icon-error: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='currentColor' d='M7.56 1h.88l6.54 12.26-.44.74H1.44L1 13.26 7.56 1zM8 2.28 2.28 13H13.7L8 2.28zM8.625 12v-1h-1.25v1h1.25zm-1.25-2V6h1.25v4h-1.25z'/%3E%3C/svg%3E");--dh-svg-icon-select-indicator: var(--dh-svg-icon-selector-caret);--dh-svg-icon-select-indicator-hover: var(--dh-svg-icon-selector-caret);--dh-svg-icon-select-indicator-disabled: var(--dh-svg-icon-selector-caret)}.context-actions-listener{display:none}.context-menu-root{position:fixed;height:100%;width:100%;top:0;left:0;pointer-events:none;z-index:1060}.context-menu-root.active{pointer-events:all}.context-menu-container{pointer-events:auto;position:fixed;background-color:var(--dh-color-popover-bg);color:var(--dh-color-text);z-index:initial;min-width:10rem;max-width:30rem;text-align:left;border-radius:4px;background-clip:border-box;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);max-height:100vh;overflow-y:auto}.context-menu-container.has-overflow{overflow-y:scroll}.context-menu-container hr{margin-top:0;margin-bottom:0;background-color:var(--dh-color-gray-400)}.context-menu-container .custom-menu-item{width:100%;color:var(--dh-color-text);white-space:nowrap;text-decoration:none;background-color:transparent;text-align:left}.context-menu-container .btn-context-menu{border:none;width:100%;padding:4px 8px;color:var(--dh-color-text);text-decoration:none;background-color:transparent;text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none}.context-menu-container .btn-context-menu .btn-context-menu-wrapper{display:flex;align-items:center;justify-content:flex-start}.context-menu-container .btn-context-menu .icon{margin-right:.5rem;width:1rem;flex-grow:0;text-align:center}.context-menu-container .btn-context-menu .icon.outline{stroke:var(--dh-color-popover-bg);stroke-width:60}.context-menu-container .btn-context-menu .title{flex:1 1 auto;text-align:left;white-space:nowrap}.context-menu-container .btn-context-menu .shortcut{color:var(--dh-color-gray-600);margin-left:.5rem;justify-self:flex-end;flex:1 1 auto;text-align:right;white-space:nowrap}.context-menu-container .btn-context-menu .submenu-indicator{color:var(--dh-color-text);flex-grow:0;justify-self:flex-end}.context-menu-container .btn-context-menu .submenu-indicator.disabled{color:var(--dh-color-text-disabled)}.context-menu-container .btn-context-menu.menu-title{-webkit-user-select:none;user-select:none;cursor:default;background:var(--dh-color-content-bg, #2d2a2e)}.context-menu-container .btn-context-menu.keyboard-active{background-color:var(--dh-color-keyboard-selected-bg)}.context-menu-container .btn-context-menu:focus,.context-menu-container .btn-context-menu.active{background-color:var(--dh-color-item-list-hover-bg)}.context-menu-container .btn-context-menu:focus{outline:none}.context-menu-container .btn-context-menu.active,.context-menu-container .btn-context-menu.keyboard-active,.context-menu-container .btn-context-menu:focus:not(.disabled){color:var(--dh-color-item-list-selected-fg)}.context-menu-container .btn-context-menu.active .shortcut,.context-menu-container .btn-context-menu.keyboard-active .shortcut,.context-menu-container .btn-context-menu:focus:not(.disabled) .shortcut{color:var(--dh-color-gray-700)}.context-menu-container .btn-context-menu.disabled{color:var(--dh-color-text-disabled);background-color:var(--dh-color-popover-bg)}.context-menu-container .context-menu-item:last-child>.btn-context-menu{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.context-menu-container .context-menu-item:first-child>.btn-context-menu{border-top-left-radius:4px;border-top-right-radius:4px}.context-menu-container .context-menu-group-header{margin:.5rem .75rem .25rem;color:var(--dh-color-gray-700);white-space:nowrap;text-decoration:none;background-color:transparent;text-align:left;cursor:default;-webkit-user-select:none;user-select:none;font-weight:500;border-bottom:1px solid var(--dh-color-hr)}.context-menu-container .loading{padding:.25rem 1.5rem;width:100%;display:block;text-align:center}.context-menu-container:focus{outline:none}.menu-actions-listener{display:none}.popper-container[x-placement^=top] .context-menu-container{margin-bottom:5px}.popper-container[x-placement^=right] .context-menu-container{margin-left:5px}.popper-container[x-placement^=bottom] .context-menu-container{margin-top:5px}.popper-container[x-placement^=left] .context-menu-container{margin-right:5px}.menu-popper{padding:0}.menu-popper .popper-content .context-menu-container{background-color:var(--dh-color-popover-bg);position:relative;box-shadow:none;max-height:80vh;overflow:auto}.menu-popper .popper-content .context-menu-container .context-menu-container{position:absolute}.menu-popper .popper-content .popper-arrow{border-color:var(--dh-color-popover-bg)}.search-group{position:relative}.search-group .form-control{padding-right:1.75rem}.search-group .search-end-content{color:var(--dh-color-search-icon);pointer-events:none;position:absolute;right:.5rem;top:0;bottom:0;height:100%;display:flex;align-items:center;gap:.25rem}.search-group .search-end-placeholder{color:var(--dh-color-text-disabled)}.search-group ::-webkit-search-cancel-button{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-search-cancel);mask-image:var(--dh-svg-icon-search-cancel);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px;-webkit-appearance:none;height:16px;width:16px;opacity:.4;transition:opacity .3s ease}.search-group ::-webkit-search-cancel-button:hover{opacity:1}.search-group .search-change-selection{position:absolute;right:.25rem;top:0;height:100%;display:flex;align-items:center}.search-group .search-change-button{padding:1px 2px;height:calc(100% - .5rem)}.search-group .search-change-text,.search-group .search-match{background-color:color-mix(in srgb,var(--dh-color-fg) 20%,transparent);border-radius:20px;padding:0 5px}.search-group .search-match{margin:0 .25rem}.item-list-item{border:none;border-radius:0;display:flex;flex-direction:row;width:100%;padding:0;white-space:nowrap;text-decoration:none;background-color:var(--dh-color-item-list-bg);text-align:left;-webkit-user-select:none;user-select:none}.item-list-item-content{display:flex;flex-direction:row;flex-grow:1;padding:0 .75rem;justify-content:space-between;align-items:center;cursor:pointer}.item-list-item-content .title{flex-grow:1}.item-list-item-content:hover{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item.is-focused .item-list-item-content{background-color:var(--dh-color-item-list-keyboard-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item.active .item-list-item-content{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.item-list-item:focus{outline:none;box-shadow:none}.item-list-scroll-pane{border:1px solid var(--dh-color-input-border);border-radius:4px}.item-list-scroll-pane:focus{outline:none}.item-list-scroll-pane .item-list-inner-element{position:relative}.btn-switch{display:inline-block;font-size:.6rem;color:var(--dh-color-gray-700);background:var(--dh-color-gray-300);padding:0;min-width:40px;width:40px;overflow:hidden;border:1px solid var(--dh-color-input-border);height:17px}.btn-switch .handle{position:relative;top:0;left:0;margin:1px;width:13px;height:13px;border-radius:13px;background-color:var(--dh-color-gray-700);transform:translate(0);transition:transform .15s ease-in,background-color .15s}.btn-switch :before,.btn-switch :after{width:15px;text-align:center;font-weight:600;text-transform:uppercase;position:absolute;bottom:0;line-height:13px;color:var(--dh-color-gray-700);letter-spacing:.75px;transition:opacity .15s}.btn-switch :before{content:"Off";left:17px;text-align:right}.btn-switch :after{content:"On";color:var(--dh-color-accent-contrast);left:-16px;text-align:left;opacity:0}.btn-switch:focus{outline:none;box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);border-color:var(--dh-color-input-focus-border)}.btn-switch.active{background:var(--dh-color-accent-bg);transition:background-color .15s;border-color:var(--dh-color-accent-bg)}.btn-switch.active:focus{border-color:var(--dh-color-input-focus-border)}.btn-switch.active .handle{transform:translate(23px);transition:transform .15s ease-in}.btn-switch.active :before{opacity:0}.btn-switch.active :after{opacity:1}.btn-switch:hover:not(:disabled) .handle{background-color:var(--dh-color-gray-900, #fcfcfa)}.btn-switch.is-invalid,.btn-switch:focus.is-invalid{border-color:var(--dh-color-negative-bg)}.btn-switch.is-invalid.active,.btn-switch:focus.is-invalid.active{border-color:var(--dh-color-negative-bg);background-color:var(--dh-color-negative-bg)}.btn-switch:disabled{background-color:var(--dh-color-gray-300);border-color:var(--dh-color-black, #1a171a);cursor:not-allowed}.btn-switch:disabled.active{border-color:var(--dh-color-black, #1a171a)}.btn-switch:disabled.active .handle{background-color:var(--dh-color-gray-500)}._lm_dragging_1cqvf_1{overflow:hidden;pointer-events:none}._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1{pointer-events:auto}._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li{pointer-events:none}._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li._lm_tabpreviousbutton_1cqvf_1,._lm_dragging_1cqvf_1 ._lm_goldenlayout_1cqvf_1 ._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li._lm_tabnextbutton_1cqvf_1{pointer-events:auto}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:not(._lm_active_1cqvf_1):hover{color:var(--dh-color-gray-700)}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:hover ._lm_close_tab_1cqvf_1{opacity:.35}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:hover ._lm_close_tab_1cqvf_1:hover{opacity:1}body:not(._lm_dragging_1cqvf_1) ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1:hover ._lm_close_tab_1cqvf_1:hover:before{opacity:1}._lm_goldenlayout_1cqvf_1 ._lm_goldenlayout_1cqvf_1._lm_dragging_1cqvf_1:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--dh-color-highlight-selected);border:1px dashed var(--dh-color-hover-border);pointer-events:none;z-index:9999}._lm_goldenlayout_1cqvf_1{background:var(--dh-color-bg, #1a171a);position:absolute}._lm_content_1cqvf_1{background:var(--dh-color-content-bg, #2d2a2e);overflow:visible}._lm_dragProxy_1cqvf_1 ._lm_content_1cqvf_1{height:100%;width:100%;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_dragProxy_1cqvf_1 ._lm_header_1cqvf_1{height:28px;box-shadow:none}._lm_dragProxy_1cqvf_1 ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1,._lm_dragProxy_1cqvf_1 ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1{border:0;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_dropTargetIndicator_1cqvf_1{background-image:linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:_march_1cqvf_1 .5s;animation-timing-function:linear;animation-iteration-count:infinite;box-sizing:border-box;transition:all .2s ease}._lm_dropTargetIndicator_1cqvf_1 ._lm_inner_1cqvf_1{box-sizing:border-box;border:1px solid transparent;box-shadow:inset 0 0 1rem 1px var(--dh-color-dropshadow);opacity:1;background:color-mix(in srgb,var(--dh-color-accent) 10%,transparent)}._lm_splitter_1cqvf_1{background:var(--dh-color-gray-600);opacity:.001;transition:opacity .15s ease}._lm_splitter_1cqvf_1:hover,._lm_splitter_1cqvf_1._lm_dragging_1cqvf_1{background:var(--dh-color-gray-700);opacity:1}._lm_header_1cqvf_1{box-sizing:content-box;height:28px;padding-top:0;background:var(--dh-color-golden-layout-tab-header-bg);box-shadow:inset 0 -1px 0 0 var(--dh-color-bg, #1a171a);-webkit-user-select:none;user-select:none}._lm_header_1cqvf_1 ._lm_controls_1cqvf_1>li{height:100%;width:24px}._lm_header_1cqvf_1._lm_selectable_1cqvf_1{cursor:pointer}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1{display:flex;align-items:center;font-family:Fira Sans,-apple-system,blinkmacsystemfont,Segoe UI,Roboto,Helvetica Neue,arial,sans-serif;background-color:var(--dh-color-golden-layout-tab-bg);color:var(--dh-color-gray-600);height:28px;font-size:12px;min-width:10ch;margin:0;padding:0 0 0 6px;box-shadow:inset -1px -1px 0 0 var(--dh-color-bg, #1a171a);transition:color .15s,background-color .15s;max-width:12.25rem;white-space:nowrap;overflow:hidden}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_1cqvf_1{flex-grow:1;padding-right:6px}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_before_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_title_before_1cqvf_1{display:flex;align-items:center}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1{margin-left:-6px;flex-shrink:0;cursor:pointer;position:relative;width:18px;height:100%;opacity:0}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:before,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:1px;border-radius:2px;background-color:var(--dh-color-highlight-selected-hover);opacity:0;transition:opacity .15s ease}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:after,._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1 ._lm_close_tab_1cqvf_1:after{background-size:8px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close-tab);mask-image:var(--dh-svg-icon-close-tab);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:8px;mask-size:8px;content:"";position:absolute;top:0;right:2px;bottom:0;left:0}._lm_selected_1cqvf_1 ._lm_header_1cqvf_1{background-color:var(--dh-color-golden-layout-tab-selected-bg)}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1,._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1:hover{height:28px;background-color:var(--dh-color-golden-layout-tab-selected-bg);color:var(--dh-color-text);padding-bottom:0;box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1._lm_focusin_1cqvf_1,._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1:hover._lm_focusin_1cqvf_1{box-shadow:inset 0 1px var(--dh-color-accent-bg),inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1 ._lm_close_tab_1cqvf_1,._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1:hover ._lm_close_tab_1cqvf_1{opacity:.35}._lm_window_blur_1cqvf_1 ._lm_header_1cqvf_1 ._lm_tab_1cqvf_1._lm_active_1cqvf_1._lm_focusin_1cqvf_1{box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}._lm_controls_1cqvf_1>li{opacity:.4;transition:opacity .15s ease;position:relative;background-position:center center;background-repeat:no-repeat}._lm_controls_1cqvf_1>li:hover{opacity:1}._lm_controls_1cqvf_1 ._lm_popout_1cqvf_1{background-size:auto;background-color:var(--dh-color-fg);-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:auto;mask-size:auto}._lm_controls_1cqvf_1 ._lm_maximise_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-maximise);mask-image:var(--dh-svg-icon-maximise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_tabdropdown_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-tab-dropdown);mask-image:var(--dh-svg-icon-tab-dropdown);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_close_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close);mask-image:var(--dh-svg-icon-close);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_tabnextbutton_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-next);mask-image:var(--dh-svg-icon-next);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_controls_1cqvf_1 ._lm_tabpreviousbutton_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-prev);mask-image:var(--dh-svg-icon-prev);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_tabdropdown_list_1cqvf_1{z-index:1000;background:var(--dh-color-popover-bg);box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);border-radius:4px;max-width:12rem;margin:0;padding:0;list-style-type:none}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1{padding:.25rem}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1 input{padding:.42145rem .75rem;line-height:1.3;color:var(--dh-color-input-fg);background-color:var(--dh-color-input-bg);border:1px solid var(--dh-color-input-border);border-radius:4px;max-width:100%}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1 input::placeholder{color:var(--dh-color-input-placeholder);opacity:1}._lm_tabdropdown_list_1cqvf_1 ._lm_tabdropdown_search_1cqvf_1 input:focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:0}._lm_tabdropdown_list_1cqvf_1 ._lm_tabs_1cqvf_1{padding:0}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1{background:transparent;color:var(--dh-color-gray-700);box-shadow:none}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1._lm_keyboard_active_1cqvf_1{color:var(--dh-color-gray-700);background-color:var(--dh-color-highlight-selected)}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1._lm_keyboard_active_1cqvf_1:hover{background-color:var(--dh-color-highlight-selected-hover)}._lm_tabdropdown_list_1cqvf_1 ._lm_tab_1cqvf_1:hover{color:var(--dh-color-text);background-color:var(--dh-color-highlight-hover)}._lm_maximised_1cqvf_1{border:15px solid color-mix(in srgb,var(--dh-color-bg) 80%,transparent);height:100%!important;width:100%!important}._lm_maximised_1cqvf_1 ._lm_items_1cqvf_1{box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}._lm_maximised_1cqvf_1 ._lm_controls_1cqvf_1 ._lm_maximise_1cqvf_1{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-minimise);mask-image:var(--dh-svg-icon-minimise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}._lm_tabs_1cqvf_1:empty+._lm_controls_1cqvf_1 ._lm_maximise_1cqvf_1{display:none}.lm_root{position:relative}.lm_row>.lm_item{float:left}.lm_content{overflow:hidden;position:relative;outline:0}.lm_dragging,.lm_dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.lm_maximised{position:absolute;top:0;left:0;z-index:40}.lm_maximise_placeholder{display:none}.lm_splitter{position:relative;z-index:20}.lm_splitter:hover,.lm_splitter.lm_dragging{background:orange}.lm_splitter.lm_vertical .lm_drag_handle{width:100%;position:absolute;cursor:ns-resize}.lm_splitter.lm_horizontal{float:left;height:100%}.lm_splitter.lm_horizontal .lm_drag_handle{height:100%;position:absolute;cursor:ew-resize}.lm_header{display:flex;justify-content:space-between;max-width:100%;z-index:12;position:relative;overflow:hidden}.lm_header.lm_dropdown_open{z-index:22}.lm_header [class^=lm_]{box-sizing:content-box!important}.lm_header .lm_controls{display:flex;-webkit-user-select:none;user-select:none}.lm_header .lm_controls>li{cursor:pointer;float:left;width:18px;height:18px;text-align:center}.lm_header .lm_controls>li[disabled]{cursor:default;opacity:.1}.lm_header ul{margin:0;padding:0;list-style-type:none}.lm_header .lm_tabs{display:flex;flex-grow:1;overflow:hidden}.lm_header .lm_tab{cursor:pointer;height:14px;margin-top:1px;padding:0 25px 5px 10px;position:relative;min-width:0;flex-shrink:0}.lm_header .lm_tab .lm_title{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lm_header .lm_tab .lm_close_tab{width:14px;height:14px;position:absolute;top:0;right:0;text-align:center}.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{height:100%}.lm_dragProxy.lm_left .lm_header,.lm_dragProxy.lm_right .lm_header,.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{width:20px;float:left;vertical-align:top}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform-origin:left top;top:0;width:1000px}.lm_dragProxy.lm_left .lm_header .lm_controls,.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_left .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{bottom:0}.lm_dragProxy.lm_left .lm_items,.lm_dragProxy.lm_right .lm_items,.lm_stack.lm_left .lm_items,.lm_stack.lm_right .lm_items{float:left}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs{transform:rotate(-90deg) scaleX(-1);left:0}.lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab,.lm_stack.lm_left .lm_header .lm_tabs .lm_tab{transform:scaleX(-1);margin-top:1px}.lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list,.lm_stack.lm_left .lm_header .lm_tabdropdown_list{top:initial;right:initial;left:20px}.lm_dragProxy.lm_right .lm_content{float:left}.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform:rotate(90deg) scaleX(1);left:100%;margin-left:0}.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{left:3px}.lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list,.lm_stack.lm_right .lm_header .lm_tabdropdown_list{top:initial;right:20px}.lm_dragProxy.lm_bottom .lm_header .lm_tab,.lm_stack.lm_bottom .lm_header .lm_tab{margin-top:0;border-top:none}.lm_dragProxy.lm_bottom .lm_header .lm_controls,.lm_stack.lm_bottom .lm_header .lm_controls{top:3px}.lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,.lm_stack.lm_bottom .lm_header .lm_tabdropdown_list{top:initial;bottom:20px}.lm_drop_tab_placeholder{flex-shrink:0}.lm_tabdropdown_list{position:absolute;overflow-y:auto;overflow-x:hidden;top:0;left:0;max-height:100%}.lm_tabdropdown_list .lm_tabs{flex-direction:column}.lm_tabdropdown_list .lm_tab{padding-right:10px}.lm_tabdropdown_list .lm_tab .lm_title{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lm_tabdropdown_list .lm_close_tab{display:none!important}.lm_dragProxy{position:absolute;top:0;left:0;z-index:30;pointer-events:none}.lm_dragProxy .lm_header{background:transparent}.lm_dragProxy .lm_content{border-top:none;overflow:hidden}.lm_dropTargetIndicator{display:none;position:absolute;z-index:20;pointer-events:none}.lm_dropTargetIndicator .lm_inner{width:100%;height:100%;position:relative;top:0;left:0}.lm_popin{width:20px;height:20px;position:absolute;bottom:0;right:0;z-index:9999}.lm_popin>*{width:100%;height:100%;position:absolute;top:0;left:0}.lm_popin>.lm_bg{z-index:10}.lm_popin>.lm_icon{z-index:20}.lm_dragging{overflow:hidden;pointer-events:none}.lm_dragging .lm_goldenlayout .lm_header{pointer-events:auto}.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li{pointer-events:none}.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li.lm_tabpreviousbutton,.lm_dragging .lm_goldenlayout .lm_header .lm_controls>li.lm_tabnextbutton{pointer-events:auto}body:not(.lm_dragging) .lm_header .lm_tab:not(.lm_active):hover{color:var(--dh-color-gray-700)}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab{opacity:.35}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab:hover{opacity:1}body:not(.lm_dragging) .lm_header .lm_tab:hover .lm_close_tab:hover:before{opacity:1}.lm_goldenlayout .lm_goldenlayout.lm_dragging:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:var(--dh-color-highlight-selected);border:1px dashed var(--dh-color-hover-border);pointer-events:none;z-index:9999}.lm_goldenlayout{background:var(--dh-color-bg, #1a171a);position:absolute}.lm_content{background:var(--dh-color-content-bg, #2d2a2e);overflow:visible}.lm_dragProxy .lm_content{height:100%;width:100%;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_dragProxy .lm_header{height:28px;box-shadow:none}.lm_dragProxy .lm_header .lm_tab,.lm_dragProxy .lm_header .lm_tab.lm_active{border:0;box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_dropTargetIndicator{background-image:linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-black, #1a171a) 50%,var(--dh-color-white, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:march .5s;animation-timing-function:linear;animation-iteration-count:infinite;box-sizing:border-box;transition:all .2s ease}.lm_dropTargetIndicator .lm_inner{box-sizing:border-box;border:1px solid transparent;box-shadow:inset 0 0 1rem 1px var(--dh-color-dropshadow);opacity:1;background:color-mix(in srgb,var(--dh-color-accent) 10%,transparent)}.lm_splitter{background:var(--dh-color-gray-600);opacity:.001;transition:opacity .15s ease}.lm_splitter:hover,.lm_splitter.lm_dragging{background:var(--dh-color-gray-700);opacity:1}.lm_header{box-sizing:content-box;height:28px;padding-top:0;background:var(--dh-color-golden-layout-tab-header-bg);box-shadow:inset 0 -1px 0 0 var(--dh-color-bg, #1a171a);-webkit-user-select:none;user-select:none}.lm_header .lm_controls>li{height:100%;width:24px}.lm_header.lm_selectable{cursor:pointer}.lm_header .lm_tab,.lm_tabdropdown_list .lm_tab{display:flex;align-items:center;font-family:Fira Sans,-apple-system,blinkmacsystemfont,Segoe UI,Roboto,Helvetica Neue,arial,sans-serif;background-color:var(--dh-color-golden-layout-tab-bg);color:var(--dh-color-gray-600);height:28px;font-size:12px;min-width:10ch;margin:0;padding:0 0 0 6px;box-shadow:inset -1px -1px 0 0 var(--dh-color-bg, #1a171a);transition:color .15s,background-color .15s;max-width:12.25rem;white-space:nowrap;overflow:hidden}.lm_header .lm_tab .lm_title,.lm_tabdropdown_list .lm_tab .lm_title{flex-grow:1;padding-right:6px}.lm_header .lm_tab .lm_title_before,.lm_tabdropdown_list .lm_tab .lm_title_before{display:flex;align-items:center}.lm_header .lm_tab .lm_close_tab,.lm_tabdropdown_list .lm_tab .lm_close_tab{margin-left:-6px;flex-shrink:0;cursor:pointer;position:relative;width:18px;height:100%;opacity:0}.lm_header .lm_tab .lm_close_tab:before,.lm_tabdropdown_list .lm_tab .lm_close_tab:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:1px;border-radius:2px;background-color:var(--dh-color-highlight-selected-hover);opacity:0;transition:opacity .15s ease}.lm_header .lm_tab .lm_close_tab:after,.lm_tabdropdown_list .lm_tab .lm_close_tab:after{background-size:8px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close-tab);mask-image:var(--dh-svg-icon-close-tab);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:8px;mask-size:8px;content:"";position:absolute;top:0;right:2px;bottom:0;left:0}.lm_selected .lm_header{background-color:var(--dh-color-golden-layout-tab-selected-bg)}.lm_header .lm_tab.lm_active,.lm_header .lm_tab.lm_active:hover{height:28px;background-color:var(--dh-color-golden-layout-tab-selected-bg);color:var(--dh-color-text);padding-bottom:0;box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_header .lm_tab.lm_active.lm_focusin,.lm_header .lm_tab.lm_active:hover.lm_focusin{box-shadow:inset 0 1px var(--dh-color-accent-bg),inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_header .lm_tab.lm_active .lm_close_tab,.lm_header .lm_tab.lm_active:hover .lm_close_tab{opacity:.35}.lm_window_blur .lm_header .lm_tab.lm_active.lm_focusin{box-shadow:inset -1px 0 0 0 var(--dh-color-bg, #1a171a)}.lm_controls>li{opacity:.4;transition:opacity .15s ease;position:relative;background-position:center center;background-repeat:no-repeat}.lm_controls>li:hover{opacity:1}.lm_controls .lm_popout{background-size:auto;background-color:var(--dh-color-fg);-webkit-mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);mask-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAPklEQVR4nI2Q0QoAIAwCNfr/X7aXCpGN8snBdgejJOzckpkxs9jR6K6T5JpU0nWl5pSXTk7qwh8SnNT+CAAWCgkKFpuSWsUAAAAASUVORK5CYII=);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:auto;mask-size:auto}.lm_controls .lm_maximise{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-maximise);mask-image:var(--dh-svg-icon-maximise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabdropdown{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-tab-dropdown);mask-image:var(--dh-svg-icon-tab-dropdown);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_close{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-close);mask-image:var(--dh-svg-icon-close);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabnextbutton{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-next);mask-image:var(--dh-svg-icon-next);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_controls .lm_tabpreviousbutton{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-prev);mask-image:var(--dh-svg-icon-prev);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_tabdropdown_list{z-index:1000;background:var(--dh-color-popover-bg);box-shadow:0 .1rem 1rem var(--dh-color-dropshadow);border-radius:4px;max-width:12rem;margin:0;padding:0;list-style-type:none}.lm_tabdropdown_list .lm_tabdropdown_search{padding:.25rem}.lm_tabdropdown_list .lm_tabdropdown_search input{padding:.42145rem .75rem;line-height:1.3;color:var(--dh-color-input-fg);background-color:var(--dh-color-input-bg);border:1px solid var(--dh-color-input-border);border-radius:4px;max-width:100%}.lm_tabdropdown_list .lm_tabdropdown_search input::placeholder{color:var(--dh-color-input-placeholder);opacity:1}.lm_tabdropdown_list .lm_tabdropdown_search input:focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:0}.lm_tabdropdown_list .lm_tabs{padding:0}.lm_tabdropdown_list .lm_tab{background:transparent;color:var(--dh-color-gray-700);box-shadow:none}.lm_tabdropdown_list .lm_tab.lm_keyboard_active{color:var(--dh-color-gray-700);background-color:var(--dh-color-highlight-selected)}.lm_tabdropdown_list .lm_tab.lm_keyboard_active:hover{background-color:var(--dh-color-highlight-selected-hover)}.lm_tabdropdown_list .lm_tab:hover{color:var(--dh-color-text);background-color:var(--dh-color-highlight-hover)}.lm_maximised{border:15px solid color-mix(in srgb,var(--dh-color-bg) 80%,transparent);height:100%!important;width:100%!important}.lm_maximised .lm_items{box-shadow:0 .1rem 1rem var(--dh-color-dropshadow)}.lm_maximised .lm_controls .lm_maximise{background-size:16px;background-color:var(--dh-color-fg);-webkit-mask-image:var(--dh-svg-icon-minimise);mask-image:var(--dh-svg-icon-minimise);-webkit-mask-position:center center;mask-position:center center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:16px;mask-size:16px}.lm_tabs:empty+.lm_controls .lm_maximise{display:none}.lm_tab .editor-unsaved-indicator{display:none;width:8px;height:8px;margin-right:.25rem;border-radius:50%;background:var(--dh-color-accent-bg)}.lm_tab .editor-unsaved-indicator.is-unsaved{display:inline-block}.lm_dragging .js-plotly-plot .plotly svg,.lm_dragging .js-plotly-plot .plotly g,.lm_dragging .js-plotly-plot .plotly rect,.lm_dragging .js-plotly-plot .plotly path{pointer-events:none!important}.panel-placeholder{display:flex;flex-direction:column;justify-content:center;min-height:100%;max-height:100%;text-align:center;overflow:hidden}.panel-placeholder div{padding:1rem}.panel-error-boundary{height:100%;width:100%;position:relative}.dashboard-container{position:relative}.dashboard-empty{position:absolute;display:grid;place-items:center;top:0;right:0;bottom:0;left:0;color:var(--dh-color-neutral);font-size:1.5rem}.dh-panel{position:relative}.console-history-result-in-progress{-webkit-user-select:none;user-select:none}.console-history-result-in-progress .badge{background-color:var(--dh-color-gray-500);color:var(--dh-color-fg, #f0f0ee);font-size:12px;font-weight:400;gap:4px;margin:4px 4px 4px 0;height:26px;border-radius:26px;display:inline-flex;justify-content:center;align-items:center;padding-right:0}.console-history-result-in-progress .badge .console-history-result-in-progress-cancel:after{border-radius:26px}.console-history-result-in-progress.disabled .badge{color:var(--dh-color-gray-700);background-color:var(--dh-color-gray-400);border-color:var(--dh-color-gray-400)}.console-history-item-command,.console-history-item-result{display:flex}.console-history-item-command{white-space:pre-line}.console-history-item-result .log-message{white-space:pre-wrap;word-wrap:break-word}.console-result-buttons .console-history-item-result .console-history-gutter{display:flex;align-items:center;justify-content:flex-end;max-height:34px}.console-history-item-result .btn-console-object{display:inline-flex;align-items:center;gap:.25rem;text-align:left;font-size:12px;padding-left:1rem;margin:4px 4px 4px 0;height:26px;border-radius:26px}.console-history-item-result .error-message{color:var(--dh-color-negative-bg);display:flex;overflow:hidden;-webkit-user-select:text;user-select:text}.console-history-item-result .error-message .error-gutter{padding:0;flex-basis:15px}.console-history-item-result .error-message .error-gutter .error-btn-link{min-width:15px;background-color:transparent;border:0;text-align:left;padding-left:0;padding-right:0;color:color-mix(in srgb,var(--dh-color-negative) 50%,transparent);transition:color .12s ease-in-out,background-color .12s ease-in-out,border-color .12s ease-in-out,box-shadow .12s ease-in-out}.console-history-item-result .error-message .error-gutter .error-btn-link:hover,.console-history-item-result .error-message .error-gutter .error-btn-link--active{color:var(--dh-color-negative-bg)}.console-history-item-result .error-message .error-content{flex-grow:1;white-space:normal;cursor:default;overflow:visible;text-overflow:ellipsis}.console-history-item-result .error-message .console-error-text-trigger{cursor:pointer;color:var(--dh-color-negative-bg);display:inline-block;margin-right:.25rem;border:1px solid transparent;border-radius:4px;overflow:visible;white-space:pre-wrap}.console-history-item-result .error-message .console-error-text-trigger:focus{outline:0}.console-history-item-result .error-message .console-error-text-trigger:focus-visible{border:1px solid color-mix(in srgb,var(--dh-color-negative) 50%,transparent)}.console-history .console-command-result{padding:0 0 .25rem}.console-history,.console-history-footer{font-family:Fira Mono,menlo,monaco,consolas,Liberation Mono,Courier New,monospace;font-size:12px;line-height:18px;padding:0}.console-history .console-history-gutter,.console-history .error-gutter,.console-history-footer .console-history-gutter,.console-history-footer .error-gutter{flex-shrink:0;flex-grow:0;flex-basis:30px;text-align:right;padding-right:8px;color:var(--dh-color-gray-600);-webkit-user-select:none;user-select:none}.console-history .console-history-content,.console-history-footer .console-history-content{min-width:0;flex-grow:1;overflow-wrap:break-word}.console-history .console-history-content .error-message.expanded .error-content,.console-history-footer .console-history-content .error-message.expanded .error-content{-webkit-user-select:text;user-select:text;-webkit-user-select:contain;user-select:contain;white-space:pre-wrap;word-break:break-word;overflow:auto;text-overflow:clip;cursor:default}.console-input-wrapper{--console-input-bg: var(--dh-color-input-bg);--console-input-surface-bg: var(--dh-color-surface-bg);--console-input-border-color: var(--dh-color-input-border);--console-input-hover-border-color: var(--dh-color-input-hover-border);background-color:var(--console-input-surface-bg);padding:4px;min-height:40px;display:flex;flex-grow:0;flex-shrink:0;width:100%}.console-input-wrapper:before{content:">";flex-grow:0;flex-shrink:0;flex-basis:33px;font-family:Fira Mono,menlo,monaco,consolas,Liberation Mono,Courier New,monospace;font-size:12px;text-align:right;padding-right:15px;padding-top:7px;color:var(--dh-color-fg, #f0f0ee)}.console-input-wrapper .console-input-inner-wrapper{min-width:0;flex-grow:1;border-radius:4px;border:1px solid var(--console-input-border-color);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.console-input-wrapper .console-input-inner-wrapper{transition:none}}.console-input-wrapper .console-input-inner-wrapper .monaco-editor{--vscode-editorGutter-background: var(--console-input-bg);--vscode-editor-background: var(--console-input-bg);border-radius:4px}.console-input-wrapper .console-input-inner-wrapper .monaco-editor .overflow-guard{border-radius:4px}.console-input-wrapper .console-input-inner-wrapper:hover,.console-input-wrapper .console-input-inner-wrapper.hover{border-color:var(--console-input-hover-border-color)}.console-input-wrapper .console-input-inner-wrapper:focus,.console-input-wrapper .console-input-inner-wrapper.focus{border-color:var(--dh-color-input-focus-border);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--dh-color-accent) 35%,transparent);outline:none}.csv-overlay{margin:.5rem;background:color-mix(in srgb,var(--dh-color-content-bg) 70%,transparent);text-align:center;display:flex;flex-direction:column;justify-content:center;white-space:pre-line;outline:none;background-image:linear-gradient(to right,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to right,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%),linear-gradient(to bottom,var(--dh-color-bg, #1a171a) 50%,var(--dh-color-fg, #f0f0ee) 50%);background-size:8px 1px,8px 1px,1px 8px,1px 8px;background-position:0 top,0 bottom,left 0,right 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;animation:march .5s;animation-timing-function:linear;animation-iteration-count:infinite}.csv-overlay .message-content{font-size:1.2rem}.csv-overlay .message-content .message-icon{font-size:80px}.csv-overlay .message-content .message-icon .svg-inline--fa{font-size:inherit}.csv-overlay .message-content .message-small{font-size:.8rem}.csv-overlay .message-content .btn{align-self:center;max-width:10rem}.csv-overlay .selected-content{display:flex;flex-direction:row;align-self:center}.csv-overlay .selected-content .selected-icon{font-size:64px}.csv-overlay .selected-content .selected-icon .svg-inline--fa{font-size:inherit}.csv-overlay .selected-content .selected-text{display:flex;flex-direction:column;align-items:flex-start;margin:15px;font-size:1rem}.csv-overlay .selected-content .selected-name{font-size:1.2rem}.csv-progress-container{display:grid;grid-template-columns:max-content 1fr max-content max-content;grid-gap:10px;align-items:center;padding:.5rem;background-color:var(--dh-color-surface-bg)}.csv-progress-container label{margin-bottom:0}.csv-input-bar-container{display:flex;background-color:var(--dh-color-surface-bg);overflow:hidden}.csv-input-bar-container>*{padding-top:.5rem;padding-bottom:.5rem;margin-left:.5rem;margin-right:.5rem}.csv-input-bar-container .form-group label{margin-right:.5rem}.csv-input-bar-container .csv-input-buttons{flex-flow:row wrap;margin-left:auto}.csv-input-bar-container .csv-input-buttons>*:first-child{margin-right:.25rem}.iris-console{display:flex}.iris-console .console-pane{position:relative;flex-grow:1;display:flex;flex-direction:column;height:100%;width:100%}.iris-console .console-pane .scroll-pane{flex-grow:1}.iris-console .console-pane .scroll-pane:before{content:"";display:block;position:absolute;width:100%;box-shadow:var(--dh-color-dropshadow) 0 6px 6px -6px inset;height:6px;opacity:0;transition:opacity .3s;pointer-events:none}.iris-console .console-pane .scroll-pane.scroll-decoration:before{opacity:1}.iris-console .console-pane .console-csv-container{position:relative;overflow:hidden;flex-grow:1}.console-pane-status-bar{display:flex;gap:3px;align-items:center;justify-content:flex-end;flex-grow:0;width:100%;font-size:small;text-align:right;color:var(--dh-color-gray-600)}.console-pane-status-details{text-align:left;max-width:400px;max-height:80vh;overflow:auto}.console-pane-status-details dd{white-space:pre-line}.console-status-icon{height:9px;position:relative;width:9px;top:-1px}.console-status-icon:before{border-radius:50%;border-style:solid;border-width:2px;content:"";display:block;height:100%;position:absolute;width:100%}.console-status-icon-idle:before{border-color:var(--dh-color-gray-600)}.console-status-icon-pending:before{border-color:var(--dh-color-gray-600);background:var(--dh-color-gray-600)}.console-status-icon-disconnected:before{border-color:var(--dh-color-visual-red)}.command-history .command-history-item{width:100%;padding:0 .75rem;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis}.command-history .item-list-item{padding:0;width:100%;background:transparent;color:var(--dh-color-gray-600);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;line-height:27px;border:1px solid transparent}.command-history .item-list-item.is-focused{background-color:transparent;color:var(--dh-color-gray-600)}.command-history .item-list-item:focus{outline:none}.command-history .item-list-item.active{outline:none;background-color:var(--dh-color-item-list-selected-inactive-bg);color:var(--dh-color-gray-600)}.command-history:focus-within .item-list-item.active{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item.active :before,.command-history:focus-within .item-list-item.active :after{content:"";position:absolute;top:-1px;bottom:-2px;width:1px;background-color:var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active :before{left:-1px}.command-history:focus-within .item-list-item.active :after{right:-1px}.command-history .item-list-item:hover{background-color:var(--dh-color-item-list-hover-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item.active:hover{background-color:var(--dh-color-item-list-selected-hover-bg);color:var(--dh-color-item-list-selected-fg)}.command-history:focus-within .item-list-item:not(.active)+.active,.command-history:focus-within .item-list-item.active:first-of-type{border-top:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .active+.item-list-item:not(.active){border-top:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active:last-of-type{border-bottom:1px solid var(--dh-color-item-list-selected-border)}.command-history:focus-within .item-list-item.active:last-of-type :before,.command-history:focus-within .item-list-item.active:last-of-type :after{bottom:-1px}.command-history-item-popper,.command-history-item-popper .popper-content .tooltip-content{padding:0}.command-history-item-popper .command-history-item-tooltip{display:flex;flex-direction:column;max-height:50vh;max-width:50vw;text-align:left}.command-history-item-popper .command-history-item-tooltip .scroll-container{padding:.5rem;overflow:auto}.command-history-item-popper .command-history-item-tooltip .result-info{flex-shrink:0;border-top:1px solid var(--dh-color-gray-500);padding:.25rem .5rem;overflow:auto;max-height:25vh}.command-history-item-popper .command-history-item-tooltip .result-info .time-wrapper{text-align:right;color:var(--dh-color-gray-600)}.command-history-item-popper .command-history-item-tooltip .result-info .time-wrapper .time-string{color:var(--dh-color-fg, #f0f0ee)}.command-history-item-popper .command-history-item-tooltip .result-info .error-message{color:var(--dh-color-negative-bg)}.command-history-actions{flex-shrink:0;margin-bottom:.25rem}.command-history-actions>*:first-child{margin:0 .25rem 0 0}.command-history{display:flex;flex-direction:column;position:relative;height:100%;width:100%}.command-history .command-history-list{flex-grow:1;overflow:hidden;width:100%;height:100%;background-color:var(--dh-color-subdued-content-bg);color:var(--dh-color-gray-600);padding:0}.command-history .command-history-list .item-list-scroll-pane{border:none;border-radius:0}.command-history-search-bar{background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);width:100%;padding:.25rem .25rem 0;display:flex;flex-wrap:wrap;flex-shrink:0;overflow:hidden}.command-history-search-bar .search-group{flex-grow:1;margin-right:.25rem;margin-bottom:.25rem}.log-pane-menu{position:absolute;right:17px;padding-left:3px;padding-bottom:1px;z-index:11;background:var(--dh-color-content-bg, #2d2a2e)}.log-pane-menu div{display:inline-block}.log-pane-menu .btn-link{min-width:1rem;padding:6px}.log-pane-editor .monaco-editor .scroll-decoration{box-shadow:var(--dh-color-black, #1a171a) 0 10px 10px -10px inset;height:10px}.log-pane-editor .find-widget{box-shadow:none!important;background:var(--dh-color-content-bg, #2d2a2e)!important;margin-right:48px}.log-pane-editor .find-widget .button[title*=Close i],.log-pane-editor .find-widget .monaco-sash{display:none}.log-level-menu-popper .popper-content .context-menu-container{background:var(--dh-color-gray-400);font-size:.875rem;min-width:0}.log-level-menu-popper .popper-content .popper-arrow{border-color:var(--dh-color-gray-400)}.log-level-menu-title{margin-left:.5rem;margin-right:3rem;margin-bottom:.5rem;padding-top:.5rem;font-weight:500;-webkit-user-select:none;user-select:none}.log-level-menu-controls .btn-link{font-size:.9rem;padding:.25rem;margin:.25rem;margin-top:0}.log-level-menu-controls .btn-link.log-level-toggle-all{color:var(--dh-color-gray-700);text-decoration:underline}.log-level-menu-controls .btn-link.log-level-toggle-all:hover{color:var(--dh-color-white, #f0f0ee)}.log-level-menu-item{margin-left:.5rem;margin-right:.5rem;height:22px;-webkit-user-select:none;user-select:none}.log-level-menu-item .btn-switch{margin-right:.5rem}.log-level-menu-item.ERROR,.log-level-menu-item.FATAL,.log-level-menu-item.STDERR{color:var(--dh-color-negative-bg)}.log-level-menu-item.INFO{color:var(--dh-color-visual-blue)}.log-level-menu-item.STDOUT{color:var(--dh-color-fg, #f0f0ee)}.log-level-menu-item.WARN{color:var(--dh-color-visual-yellow)}.log-level-menu-item.DEBUG{color:var(--dh-color-visual-purple)}.log-level-menu-item.TRACE{color:var(--dh-color-visual-green)}.max-memory{position:relative;color:var(--dh-color-gray-700);background-color:var(--dh-color-gray-75);border:1px solid var(--dh-color-bg, #1a171a);width:4.25rem;vertical-align:middle;text-align:center;-webkit-user-select:none;user-select:none;z-index:1}.total-memory,.used-memory{position:absolute;top:0;right:0;bottom:0;left:0;margin:1px;z-index:-1}.total-memory{background-color:var(--dh-color-gray-400)}.used-memory{background-color:var(--dh-color-gray-500)}.heap-overflow{background-color:var(--dh-color-visual-red)}.heap-tooltip{padding:.25rem;width:200px}.heap-usage-info-row{display:flex;color:var(--dh-color-fg, #f0f0ee);padding:.25rem;justify-content:space-between}.heap-plot{display:flex;align-items:center}.heading-bottom-border{border-bottom:1px solid var(--dh-color-gray-75);margin-bottom:.25rem}.heap-utilisation-text{margin-top:.25rem;color:var(--dh-color-gray-600)}.command-history-pane{background-color:var(--dh-color-gray-75)}.command-history-pane .command-history-disconnected-message{background-color:var(--dh-color-content-bg, #2d2a2e);color:var(--dh-color-gray-600);display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;overflow:hidden;width:100%;height:100%;text-align:center}.error-message pre{color:var(--dh-color-negative-bg)}.iris-panel-console.disconnected .console-history-result-in-progress,.iris-panel-console.disconnected .csv-overlay,.iris-panel-console.disconnected .csv-input-bar,.iris-panel-console.disconnected .console-input-wrapper{display:none}.file-explorer{background:var(--dh-color-subdued-content-bg);position:relative;flex-grow:1}.file-explorer .single-click-item-list-scroll-pane{flex-grow:1;flex-shrink:1;width:100%;padding:0;position:relative}.file-explorer .spinner-overlay{position:absolute;top:0;left:0;bottom:0;right:0;display:flex;flex-direction:column;justify-content:center;align-content:center}.file-list{position:absolute;top:0;bottom:0;left:0;right:0}.file-list .file-list-depth-line{margin-left:5px;padding-bottom:2px;width:8px;height:100%;border-left:1px solid var(--dh-color-gray-500);box-sizing:content-box}.file-list .item-list-scroll-pane{border:none;border-radius:0}.file-list .item-list-item{padding:0 .75rem;color:var(--dh-color-gray-600);border:1px solid transparent;-webkit-user-drag:none;cursor:pointer}.file-list .item-list-item.is-focused,.file-list .item-list-item.active{background-color:var(--dh-color-item-list-selected-inactive-bg)}.file-list .item-list-item:focus,.file-list .item-list-item.active,.file-list .item-list-item:hover,.file-list .item-list-item.is-focused{color:var(--dh-color-item-list-selected-fg)}.file-list .truncation-wrapper{overflow-x:hidden;text-overflow:ellipsis;white-space:pre}.file-list .item-icon{margin-right:.25rem}.file-list:focus-within.item-list-item.is-focused{background-color:var(--dh-color-item-list-selected-bg)}.file-list:focus-within .item-list-item.active{background-color:var(--dh-color-item-list-selected-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:focus-within .item-list-item.active :before,.file-list:focus-within .item-list-item.active :after{content:"";position:absolute;top:-1px;bottom:-2px;width:1px;background-color:var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active :before{left:-1px}.file-list:focus-within .item-list-item.active :after{right:-1px}.file-list.is-dragging{cursor:grabbing}.file-list.is-dragging .item-list-item.active{opacity:.5}.file-list.is-dragging .is-in-drop-target,.file-list.is-dragging .is-exact-drop-target{color:var(--dh-color-item-list-drop-target-fg)}.file-list:not(.is-dragging) .item-list-item:hover{background-color:var(--dh-color-item-list-hover-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:not(.is-dragging):focus-within .item-list-item.active:hover{background-color:var(--dh-color-item-list-selected-hover-bg);color:var(--dh-color-item-list-selected-fg)}.file-list:focus-within .item-list-item:not(.active)+.active,.file-list:focus-within .item-list-item.active:first-of-type{border-top:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active+.item-list-item:not(.active){border-top:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active:last-of-type{border-bottom:1px solid var(--dh-color-item-list-selected-border)}.file-list:focus-within .item-list-item.active:last-of-type :before,.file-list:focus-within .item-list-item.active:last-of-type :after{bottom:0}.file-list-dnd-placeholder{position:absolute;top:-100px;right:0}.file-list-dnd-placeholder .dnd-placeholder-content{padding:.25rem 1rem;background:var(--dh-color-accent-down-bg);color:var(--dh-color-fg, #f0f0ee);border-radius:4px}.file-list-item-editor{z-index:1;width:100%;display:inline-block;position:relative}.file-list-item-editor .file-list-item-editor-input{padding:0;border:none;border-radius:0;height:26px;line-height:26px}.file-list-item-editor .file-list-item-editor-input.is-invalid{border-bottom-left-radius:0;border-bottom-right-radius:0;padding-right:2rem}.file-list-item-editor .invalid-feedback{color:var(--dh-color-fg, #f0f0ee);background-color:var(--dh-color-negative-bg);font-size:.9rem;margin-top:0;padding:.25rem .5rem;border-bottom-left-radius:4px;border-bottom-right-radius:4px;position:absolute;top:100%;left:0}.new-file-modal-content .new-item-destination{color:var(--dh-color-gray-600)}.new-file-modal-content .file-explorer-container{border:1px solid var(--dh-color-input-border);border-radius:4px;overflow:hidden;height:250px;display:flex;flex-direction:column}.new-file-modal-content .directory-breadcrumbs{color:var(--dh-color-accent-bg)}.file-explorer-toolbar{background:var(--dh-color-content-bg, #2d2a2e);border-bottom:2px solid var(--dh-color-bg, #1a171a);display:flex;flex-direction:row;flex-grow:0;flex-shrink:1;width:100%;position:relative;align-items:center;padding:.25rem}.file-explorer-toolbar .file-explorer-toolbar-buttons{display:flex;padding-right:.25rem}.file-explorer-toolbar .file-explorer-toolbar-search{display:flex;flex-grow:1}.file-explorer-toolbar .file-explorer-toolbar-search .search-group{width:100%}.file-explorer-toolbar .btn{min-width:calc(1.3em + .8429rem + 2px);padding-left:0;padding-right:0;font-size:17px}.file-explorer-panel{display:flex;flex-direction:column}.log-panel-disconnected-message{color:var(--dh-color-gray-600);display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;justify-content:center;overflow:hidden;width:100%;height:100%;text-align:center}
@@ -1,2 +1,2 @@
1
- import{r as d,D as o,ch as l,ci as c,cj as m,J as s}from"./vendor-BscqrOix.js";import{V as p}from"./index-BHShzili.js";import{bA as f}from"./LogPanel-U1ARoCi3.js";import"./helpers-BosuxZz1.js";import"./index-BDUsssTl.js";function u(e,r,t){return(r=g(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function g(e){var r=v(e,"string");return typeof r=="symbol"?r:r+""}function v(e,r){if(typeof e!="object"||!e)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}var h=e=>{var{children:r,inline:t,className:n}=e;if(t===!0)return o.jsx("code",{children:s.Children.map(r,i=>typeof i=="string"?i.trim():i)});var a=n!=null&&n!==void 0&&n.startsWith("language-")?n.substring(9):"plaintext";return o.jsx("pre",{children:o.jsx("code",{children:o.jsx(f,{language:a,children:s.Children.map(r,i=>typeof i=="string"?i.trim():i)})})})};class x extends d.PureComponent{constructor(r){super(r),u(this,"container",void 0),this.container=null}render(){var{isEditing:r,content:t,onEditorInitialized:n}=this.props;return o.jsx("div",{className:"markdown-editor-container",ref:a=>{this.container=a},children:r?o.jsx(p,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:n}):o.jsx(l,{components:{code:h},remarkPlugins:[m],rehypePlugins:[c],children:t})})}}u(x,"defaultProps",{isEditing:!1,content:""});export{x as default};
2
- //# sourceMappingURL=MarkdownEditor-LQsjKwjN.js.map
1
+ import{r as d,D as o,ch as l,ci as c,cj as m,J as s}from"./vendor-BscqrOix.js";import{V as p}from"./index-C8_qg_e9.js";import{bA as f}from"./LogPanel-DN635Qba.js";import"./helpers-BosuxZz1.js";import"./index-BohcsXgU.js";function u(e,r,t){return(r=g(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function g(e){var r=v(e,"string");return typeof r=="symbol"?r:r+""}function v(e,r){if(typeof e!="object"||!e)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var n=t.call(e,r);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(e)}var h=e=>{var{children:r,inline:t,className:n}=e;if(t===!0)return o.jsx("code",{children:s.Children.map(r,i=>typeof i=="string"?i.trim():i)});var a=n!=null&&n!==void 0&&n.startsWith("language-")?n.substring(9):"plaintext";return o.jsx("pre",{children:o.jsx("code",{children:o.jsx(f,{language:a,children:s.Children.map(r,i=>typeof i=="string"?i.trim():i)})})})};class x extends d.PureComponent{constructor(r){super(r),u(this,"container",void 0),this.container=null}render(){var{isEditing:r,content:t,onEditorInitialized:n}=this.props;return o.jsx("div",{className:"markdown-editor-container",ref:a=>{this.container=a},children:r?o.jsx(p,{settings:{language:"markdown",value:t,lineNumbers:"off"},onEditorInitialized:n}):o.jsx(l,{components:{code:h},remarkPlugins:[m],rehypePlugins:[c],children:t})})}}u(x,"defaultProps",{isEditing:!1,content:""});export{x as default};
2
+ //# sourceMappingURL=MarkdownEditor-DToCA0t-.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownEditor-LQsjKwjN.js","sources":["../../../dashboard-core-plugins/dist/controls/markdown/MarkdownEditor.js"],"sourcesContent":["function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { PureComponent } from 'react';\nimport Markdown from 'react-markdown';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Code, Editor } from '@deephaven/console';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar renderMarkdown = props => {\n var {\n children,\n inline,\n className\n } = props;\n if (inline === true) {\n return /*#__PURE__*/_jsx(\"code\", {\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n });\n }\n var language = className !== undefined && className !== null && className !== void 0 && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n return /*#__PURE__*/_jsx(\"pre\", {\n children: /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })\n });\n};\nexport default class MarkdownEditor extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"container\", void 0);\n this.container = null;\n }\n render() {\n var {\n isEditing,\n content,\n onEditorInitialized\n } = this.props;\n return /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-editor-container\",\n ref: container => {\n this.container = container;\n },\n children: isEditing ? /*#__PURE__*/_jsx(Editor, {\n settings: {\n language: 'markdown',\n value: content,\n lineNumbers: 'off'\n },\n onEditorInitialized: onEditorInitialized\n }) : /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: renderMarkdown\n },\n remarkPlugins: [remarkMath],\n rehypePlugins: [rehypeMathjax],\n children: content\n })\n });\n }\n}\n_defineProperty(MarkdownEditor, \"defaultProps\", {\n isEditing: false,\n content: ''\n});\n//# sourceMappingURL=MarkdownEditor.js.map"],"names":["_defineProperty","_toPropertyKey","t","i","_toPrimitive","e","renderMarkdown","props","children","inline","className","_jsx","React","child","language","Code","MarkdownEditor","PureComponent","isEditing","content","onEditorInitialized","container","Editor","Markdown","remarkMath","rehypeMathjax"],"mappings":"6NAAA,SAASA,EAAgB,EAAG,EAAG,EAAG,CAAE,OAAQ,EAAIC,EAAe,CAAC,KAAM,EAAI,OAAO,eAAe,EAAG,EAAG,CAAE,MAAO,EAAG,WAAY,GAAI,aAAc,GAAI,SAAU,EAAE,CAAE,EAAI,EAAE,CAAC,EAAI,EAAG,CAAG,CACnL,SAASA,EAAeC,EAAG,CAAE,IAAIC,EAAIC,EAAaF,EAAG,QAAQ,EAAG,OAAmB,OAAOC,GAAnB,SAAuBA,EAAIA,EAAI,EAAI,CAC1G,SAASC,EAAaF,EAAG,EAAG,CAAE,GAAgB,OAAOA,GAAnB,UAAwB,CAACA,EAAG,OAAOA,EAAG,IAAIG,EAAIH,EAAE,OAAO,WAAW,EAAG,GAAeG,IAAX,OAAc,CAAE,IAAIF,EAAIE,EAAE,KAAKH,EAAG,CAAc,EAAG,GAAgB,OAAOC,GAAnB,SAAsB,OAAOA,EAAG,MAAM,IAAI,UAAU,8CAA8C,CAAG,CAAE,OAAqB,IAAb,SAAiB,OAAS,QAAQD,CAAC,CAAG,CAOvT,IAAII,EAAiBC,GAAS,CAC5B,GAAI,CACF,SAAAC,EACA,OAAAC,EACA,UAAAC,CACJ,EAAMH,EACJ,GAAIE,IAAW,GACb,OAAoBE,EAAAA,IAAK,OAAQ,CAC/B,SAAUC,EAAM,SAAS,IAAIJ,EAAUK,GAAS,OAAOA,GAAU,SAAWA,EAAM,KAAI,EAAKA,CAAK,CACtG,CAAK,EAEH,IAAIC,EAAsCJ,GAAc,MAAQA,IAAc,QAAUA,EAAU,WAAW,WAAW,EAAIA,EAAU,UAAU,CAAC,EAAI,YACrJ,OAAoBC,EAAAA,IAAK,MAAO,CAC9B,SAAuBA,EAAAA,IAAK,OAAQ,CAClC,SAAuBA,EAAAA,IAAKI,EAAM,CAChC,SAAUD,EACV,SAAUF,EAAM,SAAS,IAAIJ,EAAUK,GAAS,OAAOA,GAAU,SAAWA,EAAM,KAAI,EAAKA,CAAK,CACxG,CAAO,CACP,CAAK,CACL,CAAG,CACH,EACe,MAAMG,UAAuBC,EAAAA,aAAc,CACxD,YAAYV,EAAO,CACjB,MAAMA,CAAK,EACXP,EAAgB,KAAM,YAAa,MAAM,EACzC,KAAK,UAAY,IACnB,CACA,QAAS,CACP,GAAI,CACF,UAAAkB,EACA,QAAAC,EACA,oBAAAC,CACN,EAAQ,KAAK,MACT,OAAoBT,EAAAA,IAAK,MAAO,CAC9B,UAAW,4BACX,IAAKU,GAAa,CAChB,KAAK,UAAYA,CACnB,EACA,SAAUH,EAAyBP,EAAAA,IAAKW,EAAQ,CAC9C,SAAU,CACR,SAAU,WACV,MAAOH,EACP,YAAa,KACvB,EACQ,oBAAqBC,CAC7B,CAAO,EAAiBT,EAAAA,IAAKY,EAAU,CAC/B,WAAY,CACV,KAAMjB,CAChB,EACQ,cAAe,CAACkB,CAAU,EAC1B,cAAe,CAACC,CAAa,EAC7B,SAAUN,CAClB,CAAO,CACP,CAAK,CACH,CACF,CACAnB,EAAgBgB,EAAgB,eAAgB,CAC9C,UAAW,GACX,QAAS,EACX,CAAC"}
1
+ {"version":3,"file":"MarkdownEditor-DToCA0t-.js","sources":["../../../dashboard-core-plugins/dist/controls/markdown/MarkdownEditor.js"],"sourcesContent":["function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { PureComponent } from 'react';\nimport Markdown from 'react-markdown';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Code, Editor } from '@deephaven/console';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nvar renderMarkdown = props => {\n var {\n children,\n inline,\n className\n } = props;\n if (inline === true) {\n return /*#__PURE__*/_jsx(\"code\", {\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n });\n }\n var language = className !== undefined && className !== null && className !== void 0 && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n return /*#__PURE__*/_jsx(\"pre\", {\n children: /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })\n });\n};\nexport default class MarkdownEditor extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"container\", void 0);\n this.container = null;\n }\n render() {\n var {\n isEditing,\n content,\n onEditorInitialized\n } = this.props;\n return /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-editor-container\",\n ref: container => {\n this.container = container;\n },\n children: isEditing ? /*#__PURE__*/_jsx(Editor, {\n settings: {\n language: 'markdown',\n value: content,\n lineNumbers: 'off'\n },\n onEditorInitialized: onEditorInitialized\n }) : /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: renderMarkdown\n },\n remarkPlugins: [remarkMath],\n rehypePlugins: [rehypeMathjax],\n children: content\n })\n });\n }\n}\n_defineProperty(MarkdownEditor, \"defaultProps\", {\n isEditing: false,\n content: ''\n});\n//# sourceMappingURL=MarkdownEditor.js.map"],"names":["_defineProperty","_toPropertyKey","t","i","_toPrimitive","e","renderMarkdown","props","children","inline","className","_jsx","React","child","language","Code","MarkdownEditor","PureComponent","isEditing","content","onEditorInitialized","container","Editor","Markdown","remarkMath","rehypeMathjax"],"mappings":"6NAAA,SAASA,EAAgB,EAAG,EAAG,EAAG,CAAE,OAAQ,EAAIC,EAAe,CAAC,KAAM,EAAI,OAAO,eAAe,EAAG,EAAG,CAAE,MAAO,EAAG,WAAY,GAAI,aAAc,GAAI,SAAU,EAAE,CAAE,EAAI,EAAE,CAAC,EAAI,EAAG,CAAG,CACnL,SAASA,EAAeC,EAAG,CAAE,IAAIC,EAAIC,EAAaF,EAAG,QAAQ,EAAG,OAAmB,OAAOC,GAAnB,SAAuBA,EAAIA,EAAI,EAAI,CAC1G,SAASC,EAAaF,EAAG,EAAG,CAAE,GAAgB,OAAOA,GAAnB,UAAwB,CAACA,EAAG,OAAOA,EAAG,IAAIG,EAAIH,EAAE,OAAO,WAAW,EAAG,GAAeG,IAAX,OAAc,CAAE,IAAIF,EAAIE,EAAE,KAAKH,EAAG,CAAc,EAAG,GAAgB,OAAOC,GAAnB,SAAsB,OAAOA,EAAG,MAAM,IAAI,UAAU,8CAA8C,CAAG,CAAE,OAAqB,IAAb,SAAiB,OAAS,QAAQD,CAAC,CAAG,CAOvT,IAAII,EAAiBC,GAAS,CAC5B,GAAI,CACF,SAAAC,EACA,OAAAC,EACA,UAAAC,CACJ,EAAMH,EACJ,GAAIE,IAAW,GACb,OAAoBE,EAAAA,IAAK,OAAQ,CAC/B,SAAUC,EAAM,SAAS,IAAIJ,EAAUK,GAAS,OAAOA,GAAU,SAAWA,EAAM,KAAI,EAAKA,CAAK,CACtG,CAAK,EAEH,IAAIC,EAAsCJ,GAAc,MAAQA,IAAc,QAAUA,EAAU,WAAW,WAAW,EAAIA,EAAU,UAAU,CAAC,EAAI,YACrJ,OAAoBC,EAAAA,IAAK,MAAO,CAC9B,SAAuBA,EAAAA,IAAK,OAAQ,CAClC,SAAuBA,EAAAA,IAAKI,EAAM,CAChC,SAAUD,EACV,SAAUF,EAAM,SAAS,IAAIJ,EAAUK,GAAS,OAAOA,GAAU,SAAWA,EAAM,KAAI,EAAKA,CAAK,CACxG,CAAO,CACP,CAAK,CACL,CAAG,CACH,EACe,MAAMG,UAAuBC,EAAAA,aAAc,CACxD,YAAYV,EAAO,CACjB,MAAMA,CAAK,EACXP,EAAgB,KAAM,YAAa,MAAM,EACzC,KAAK,UAAY,IACnB,CACA,QAAS,CACP,GAAI,CACF,UAAAkB,EACA,QAAAC,EACA,oBAAAC,CACN,EAAQ,KAAK,MACT,OAAoBT,EAAAA,IAAK,MAAO,CAC9B,UAAW,4BACX,IAAKU,GAAa,CAChB,KAAK,UAAYA,CACnB,EACA,SAAUH,EAAyBP,EAAAA,IAAKW,EAAQ,CAC9C,SAAU,CACR,SAAU,WACV,MAAOH,EACP,YAAa,KACvB,EACQ,oBAAqBC,CAC7B,CAAO,EAAiBT,EAAAA,IAAKY,EAAU,CAC/B,WAAY,CACV,KAAMjB,CAChB,EACQ,cAAe,CAACkB,CAAU,EAC1B,cAAe,CAACC,CAAa,EAC7B,SAAUN,CAClB,CAAO,CACP,CAAK,CACH,CACF,CACAnB,EAAgBgB,EAAgB,eAAgB,CAC9C,UAAW,GACX,QAAS,EACX,CAAC"}
@@ -1,2 +1,2 @@
1
- import{r as L,J as g,D as a,G as C,ch as R,ci as j,ck as w,cj as N}from"./vendor-BscqrOix.js";import{u as E,aF as S}from"./index-BDUsssTl.js";import{B as b,bA as P}from"./LogPanel-U1ARoCi3.js";import"./helpers-BosuxZz1.js";function p(r,e,t){return(e=B(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function B(r){var e=I(r,"string");return typeof e=="symbol"?e:e+""}function I(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class M extends L.PureComponent{constructor(e){super(e),p(this,"commands",void 0),p(this,"codeElements",void 0),p(this,"editorScrollView",void 0),this.handleRunSelected=this.handleRunSelected.bind(this),this.renderCodeBlock=this.renderCodeBlock.bind(this),this.renderLink=this.renderLink.bind(this),this.commands=new Map,this.codeElements=new Map,this.editorScrollView=g.createRef(),this.state={hasCode:!1,hasRunCode:!1,nextStartLine:null}}componentDidMount(){this.updateHasCode()}componentDidUpdate(){this.updateHasCode()}updateHasCode(){var{hasCode:e}=this.state;this.commands.size===0&&e?this.setState({hasCode:!1}):this.commands.size>0&&!e&&this.setState({hasCode:!0})}getNextStartLine(e){var t=[...this.commands.keys()],n=t.findIndex(s=>s===e)+1;return n>=t.length?null:t[n]}handleRunSelected(e){var t,n;e.preventDefault(),e.stopPropagation();var{nextStartLine:s}=this.state,i=[...this.commands.keys()],d=i.findIndex(x=>x===s||s==null);if(!(d<0)){var l=i[d],f=this.commands.get(l),m=this.getNextStartLine(l),u=(t=this.codeElements.get(l))===null||t===void 0?void 0:t.current,o=u==null||(n=u.parentElement)===null||n===void 0?void 0:n.nextElementSibling;if(o!=null){var c,{offsetTop:v}=o,k=v;(c=this.editorScrollView.current)===null||c===void 0||c.scroll({top:k,left:0})}this.runCode(f),this.setState({nextStartLine:m})}}runCode(e){var{onRunCode:t}=this.props;t(e),this.setState({hasRunCode:!0})}renderCodeBlock(e){var{children:t,className:n,inline:s,node:i}=e,{hasRunCode:d,nextStartLine:l}=this.state,{children:f,position:m}=i;E(m);var{start:u}=m,{line:o}=u,c=f[0].value,v=g.createRef(),k=this.commands.size===0,x=l===o||k&&l==null&&!d,y=n!==void 0&&n.startsWith("language-")?n.substring(9):"plaintext";return s!=null&&s?a.jsx("code",{className:n,children:t}):(this.commands.set(o,c),this.codeElements.set(o,v),a.jsxs("div",{className:C("markdown-notebook-code-block",{"is-selected":x}),ref:v,onClick:()=>{this.setState({nextStartLine:o})},role:"presentation",children:[a.jsx(b,{kind:"ghost",icon:S,className:"btn-play-block",onClick:h=>{h.stopPropagation(),h.preventDefault(),this.runCode(c),this.setState({nextStartLine:o})},tooltip:"Run code"}),a.jsx("code",{children:a.jsx(P,{language:y,children:g.Children.map(t,h=>typeof h=="string"?h.trim():h)})})]}))}renderLink(e){var{onLinkClick:t}=this.props,{href:n,children:s,target:i}=e;return a.jsx("a",{href:n,onClick:t,target:i,children:s})}render(){var{content:e,transformImageUri:t,transformLinkUri:n}=this.props,{hasCode:s,hasRunCode:i,nextStartLine:d}=this.state;return a.jsxs("div",{className:"markdown-notebook",children:[a.jsx("div",{className:"markdown-notebook-toolbar",children:a.jsx(b,{className:C("btn-play-selected-cell",{flashing:s&&!i}),kind:"ghost",icon:S,onClick:this.handleRunSelected,tooltip:"Run code and select next",disabled:i&&d==null||!s,children:"Run Selected Code"})}),a.jsx("div",{className:"markdown-notebook-content",ref:this.editorScrollView,children:a.jsx(R,{components:{code:this.renderCodeBlock,a:this.renderLink},linkTarget:"_blank",remarkPlugins:[w,N],rehypePlugins:[j],transformLinkUri:n,transformImageUri:t,includeElementIndex:!0,children:e})})]})}}p(M,"defaultProps",{onRunCode:()=>{}});export{M as MarkdownNotebook,M as default};
2
- //# sourceMappingURL=MarkdownNotebook-B6lrjDIY.js.map
1
+ import{r as L,J as g,D as a,G as C,ch as R,ci as j,ck as w,cj as N}from"./vendor-BscqrOix.js";import{u as E,aF as S}from"./index-BohcsXgU.js";import{B as b,bA as P}from"./LogPanel-DN635Qba.js";import"./helpers-BosuxZz1.js";function p(r,e,t){return(e=B(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function B(r){var e=I(r,"string");return typeof e=="symbol"?e:e+""}function I(r,e){if(typeof r!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}class M extends L.PureComponent{constructor(e){super(e),p(this,"commands",void 0),p(this,"codeElements",void 0),p(this,"editorScrollView",void 0),this.handleRunSelected=this.handleRunSelected.bind(this),this.renderCodeBlock=this.renderCodeBlock.bind(this),this.renderLink=this.renderLink.bind(this),this.commands=new Map,this.codeElements=new Map,this.editorScrollView=g.createRef(),this.state={hasCode:!1,hasRunCode:!1,nextStartLine:null}}componentDidMount(){this.updateHasCode()}componentDidUpdate(){this.updateHasCode()}updateHasCode(){var{hasCode:e}=this.state;this.commands.size===0&&e?this.setState({hasCode:!1}):this.commands.size>0&&!e&&this.setState({hasCode:!0})}getNextStartLine(e){var t=[...this.commands.keys()],n=t.findIndex(s=>s===e)+1;return n>=t.length?null:t[n]}handleRunSelected(e){var t,n;e.preventDefault(),e.stopPropagation();var{nextStartLine:s}=this.state,i=[...this.commands.keys()],d=i.findIndex(x=>x===s||s==null);if(!(d<0)){var l=i[d],f=this.commands.get(l),m=this.getNextStartLine(l),u=(t=this.codeElements.get(l))===null||t===void 0?void 0:t.current,o=u==null||(n=u.parentElement)===null||n===void 0?void 0:n.nextElementSibling;if(o!=null){var c,{offsetTop:v}=o,k=v;(c=this.editorScrollView.current)===null||c===void 0||c.scroll({top:k,left:0})}this.runCode(f),this.setState({nextStartLine:m})}}runCode(e){var{onRunCode:t}=this.props;t(e),this.setState({hasRunCode:!0})}renderCodeBlock(e){var{children:t,className:n,inline:s,node:i}=e,{hasRunCode:d,nextStartLine:l}=this.state,{children:f,position:m}=i;E(m);var{start:u}=m,{line:o}=u,c=f[0].value,v=g.createRef(),k=this.commands.size===0,x=l===o||k&&l==null&&!d,y=n!==void 0&&n.startsWith("language-")?n.substring(9):"plaintext";return s!=null&&s?a.jsx("code",{className:n,children:t}):(this.commands.set(o,c),this.codeElements.set(o,v),a.jsxs("div",{className:C("markdown-notebook-code-block",{"is-selected":x}),ref:v,onClick:()=>{this.setState({nextStartLine:o})},role:"presentation",children:[a.jsx(b,{kind:"ghost",icon:S,className:"btn-play-block",onClick:h=>{h.stopPropagation(),h.preventDefault(),this.runCode(c),this.setState({nextStartLine:o})},tooltip:"Run code"}),a.jsx("code",{children:a.jsx(P,{language:y,children:g.Children.map(t,h=>typeof h=="string"?h.trim():h)})})]}))}renderLink(e){var{onLinkClick:t}=this.props,{href:n,children:s,target:i}=e;return a.jsx("a",{href:n,onClick:t,target:i,children:s})}render(){var{content:e,transformImageUri:t,transformLinkUri:n}=this.props,{hasCode:s,hasRunCode:i,nextStartLine:d}=this.state;return a.jsxs("div",{className:"markdown-notebook",children:[a.jsx("div",{className:"markdown-notebook-toolbar",children:a.jsx(b,{className:C("btn-play-selected-cell",{flashing:s&&!i}),kind:"ghost",icon:S,onClick:this.handleRunSelected,tooltip:"Run code and select next",disabled:i&&d==null||!s,children:"Run Selected Code"})}),a.jsx("div",{className:"markdown-notebook-content",ref:this.editorScrollView,children:a.jsx(R,{components:{code:this.renderCodeBlock,a:this.renderLink},linkTarget:"_blank",remarkPlugins:[w,N],rehypePlugins:[j],transformLinkUri:n,transformImageUri:t,includeElementIndex:!0,children:e})})]})}}p(M,"defaultProps",{onRunCode:()=>{}});export{M as MarkdownNotebook,M as default};
2
+ //# sourceMappingURL=MarkdownNotebook-DGMIMxaq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownNotebook-B6lrjDIY.js","sources":["../../../dashboard-core-plugins/dist/panels/MarkdownNotebook.js"],"sourcesContent":["function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport Markdown from 'react-markdown';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Button } from '@deephaven/components';\nimport { Code } from '@deephaven/console';\nimport { vsPlay } from '@deephaven/icons';\nimport \"./MarkdownNotebook.css\";\nimport { assertNotNull } from '@deephaven/utils';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport class MarkdownNotebook extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"commands\", void 0);\n _defineProperty(this, \"codeElements\", void 0);\n _defineProperty(this, \"editorScrollView\", void 0);\n this.handleRunSelected = this.handleRunSelected.bind(this);\n this.renderCodeBlock = this.renderCodeBlock.bind(this);\n this.renderLink = this.renderLink.bind(this);\n\n // Map of each code block from it's starting line number to the code within that block\n this.commands = new Map();\n this.codeElements = new Map();\n this.editorScrollView = /*#__PURE__*/React.createRef();\n this.state = {\n hasCode: false,\n // Keep track if any code has been executed yet. If not, make the run button flash\n hasRunCode: false,\n // Line of the next block to execute. Null to start at the first block\n nextStartLine: null\n };\n }\n componentDidMount() {\n this.updateHasCode();\n }\n componentDidUpdate() {\n this.updateHasCode();\n }\n updateHasCode() {\n var {\n hasCode\n } = this.state;\n if (this.commands.size === 0 && hasCode) {\n this.setState({\n hasCode: false\n });\n } else if (this.commands.size > 0 && !hasCode) {\n this.setState({\n hasCode: true\n });\n }\n }\n\n /**\n * @param line The line of the code block to start from\n * @returns The next line of the code block to start from\n */\n getNextStartLine(line) {\n var keys = [...this.commands.keys()];\n var nextIndex = keys.findIndex(key => key === line) + 1;\n if (nextIndex >= keys.length) {\n // We got to the last block, disable\n return null;\n }\n return keys[nextIndex];\n }\n handleRunSelected(event) {\n var _this$codeElements$ge, _element$parentElemen;\n event.preventDefault();\n event.stopPropagation();\n var {\n nextStartLine\n } = this.state;\n var keys = [...this.commands.keys()];\n var keyIndex = keys.findIndex(key => key === nextStartLine || nextStartLine == null);\n if (keyIndex < 0) {\n return;\n }\n var startLine = keys[keyIndex];\n var command = this.commands.get(startLine);\n var newNextStartLine = this.getNextStartLine(startLine);\n var element = (_this$codeElements$ge = this.codeElements.get(startLine)) === null || _this$codeElements$ge === void 0 ? void 0 : _this$codeElements$ge.current;\n var nextElement = element === null || element === void 0 || (_element$parentElemen = element.parentElement) === null || _element$parentElemen === void 0 ? void 0 : _element$parentElemen.nextElementSibling;\n if (nextElement != null) {\n var _this$editorScrollVie;\n var {\n offsetTop\n } = nextElement;\n var top = offsetTop;\n (_this$editorScrollVie = this.editorScrollView.current) === null || _this$editorScrollVie === void 0 || _this$editorScrollVie.scroll({\n top,\n left: 0\n });\n }\n this.runCode(command);\n this.setState({\n nextStartLine: newNextStartLine\n });\n }\n runCode(command) {\n var {\n onRunCode\n } = this.props;\n onRunCode(command);\n this.setState({\n hasRunCode: true\n });\n }\n renderCodeBlock(props) {\n var {\n children,\n className,\n inline,\n node\n } = props;\n var {\n hasRunCode,\n nextStartLine\n } = this.state;\n var {\n children: nodeChildren,\n position\n } = node;\n assertNotNull(position);\n var {\n start\n } = position;\n var {\n line\n } = start;\n var command = nodeChildren[0].value;\n var ref = /*#__PURE__*/React.createRef();\n var isFirstBlock = this.commands.size === 0;\n var isSelected = nextStartLine === line || isFirstBlock && nextStartLine == null && !hasRunCode;\n var language = className !== undefined && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n if (inline != null && inline) {\n return /*#__PURE__*/_jsx(\"code\", {\n className: className,\n children: children\n });\n }\n this.commands.set(line, command);\n this.codeElements.set(line, ref);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames('markdown-notebook-code-block', {\n 'is-selected': isSelected\n }),\n ref: ref,\n onClick: () => {\n this.setState({\n nextStartLine: line\n });\n },\n role: \"presentation\",\n children: [/*#__PURE__*/_jsx(Button, {\n kind: \"ghost\",\n icon: vsPlay,\n className: \"btn-play-block\",\n onClick: event => {\n event.stopPropagation();\n event.preventDefault();\n this.runCode(command);\n this.setState({\n nextStartLine: line\n });\n },\n tooltip: \"Run code\"\n }), /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })]\n });\n }\n renderLink(props) {\n var {\n onLinkClick\n } = this.props;\n var {\n href,\n children,\n target\n } = props;\n return /*#__PURE__*/_jsx(\"a\", {\n href: href,\n onClick: onLinkClick,\n target: target,\n children: children\n });\n }\n render() {\n var {\n content,\n transformImageUri,\n transformLinkUri\n } = this.props;\n var {\n hasCode,\n hasRunCode,\n nextStartLine\n } = this.state;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"markdown-notebook\",\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-toolbar\",\n children: /*#__PURE__*/_jsx(Button, {\n className: classNames('btn-play-selected-cell', {\n flashing: hasCode && !hasRunCode\n }),\n kind: \"ghost\",\n icon: vsPlay,\n onClick: this.handleRunSelected,\n tooltip: \"Run code and select next\",\n disabled: hasRunCode && nextStartLine == null || !hasCode,\n children: \"Run Selected Code\"\n })\n }), /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-content\",\n ref: this.editorScrollView,\n children: /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: this.renderCodeBlock,\n a: this.renderLink\n },\n linkTarget: \"_blank\",\n remarkPlugins: [remarkGfm, remarkMath],\n rehypePlugins: [rehypeMathjax],\n transformLinkUri: transformLinkUri,\n transformImageUri: transformImageUri,\n includeElementIndex: true,\n children: content\n })\n })]\n });\n }\n}\n_defineProperty(MarkdownNotebook, \"defaultProps\", {\n onRunCode: () => undefined\n});\nexport default MarkdownNotebook;\n//# sourceMappingURL=MarkdownNotebook.js.map"],"names":["_defineProperty","e","r","_toPropertyKey","t","i","_toPrimitive","MarkdownNotebook","PureComponent","props","React","hasCode","line","keys","nextIndex","key","event","_this$codeElements$ge","_element$parentElemen","nextStartLine","keyIndex","startLine","command","newNextStartLine","element","nextElement","_this$editorScrollVie","offsetTop","top","onRunCode","children","className","inline","node","hasRunCode","nodeChildren","position","assertNotNull","start","ref","isFirstBlock","isSelected","language","_jsx","_jsxs","classNames","Button","vsPlay","Code","child","onLinkClick","href","target","content","transformImageUri","transformLinkUri","Markdown","remarkGfm","remarkMath","rehypeMathjax"],"mappings":"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"}
1
+ {"version":3,"file":"MarkdownNotebook-DGMIMxaq.js","sources":["../../../dashboard-core-plugins/dist/panels/MarkdownNotebook.js"],"sourcesContent":["function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nimport React, { PureComponent } from 'react';\nimport classNames from 'classnames';\nimport Markdown from 'react-markdown';\nimport remarkGfm from 'remark-gfm';\nimport remarkMath from 'remark-math';\nimport rehypeMathjax from 'rehype-mathjax';\nimport { Button } from '@deephaven/components';\nimport { Code } from '@deephaven/console';\nimport { vsPlay } from '@deephaven/icons';\nimport \"./MarkdownNotebook.css\";\nimport { assertNotNull } from '@deephaven/utils';\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport class MarkdownNotebook extends PureComponent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"commands\", void 0);\n _defineProperty(this, \"codeElements\", void 0);\n _defineProperty(this, \"editorScrollView\", void 0);\n this.handleRunSelected = this.handleRunSelected.bind(this);\n this.renderCodeBlock = this.renderCodeBlock.bind(this);\n this.renderLink = this.renderLink.bind(this);\n\n // Map of each code block from it's starting line number to the code within that block\n this.commands = new Map();\n this.codeElements = new Map();\n this.editorScrollView = /*#__PURE__*/React.createRef();\n this.state = {\n hasCode: false,\n // Keep track if any code has been executed yet. If not, make the run button flash\n hasRunCode: false,\n // Line of the next block to execute. Null to start at the first block\n nextStartLine: null\n };\n }\n componentDidMount() {\n this.updateHasCode();\n }\n componentDidUpdate() {\n this.updateHasCode();\n }\n updateHasCode() {\n var {\n hasCode\n } = this.state;\n if (this.commands.size === 0 && hasCode) {\n this.setState({\n hasCode: false\n });\n } else if (this.commands.size > 0 && !hasCode) {\n this.setState({\n hasCode: true\n });\n }\n }\n\n /**\n * @param line The line of the code block to start from\n * @returns The next line of the code block to start from\n */\n getNextStartLine(line) {\n var keys = [...this.commands.keys()];\n var nextIndex = keys.findIndex(key => key === line) + 1;\n if (nextIndex >= keys.length) {\n // We got to the last block, disable\n return null;\n }\n return keys[nextIndex];\n }\n handleRunSelected(event) {\n var _this$codeElements$ge, _element$parentElemen;\n event.preventDefault();\n event.stopPropagation();\n var {\n nextStartLine\n } = this.state;\n var keys = [...this.commands.keys()];\n var keyIndex = keys.findIndex(key => key === nextStartLine || nextStartLine == null);\n if (keyIndex < 0) {\n return;\n }\n var startLine = keys[keyIndex];\n var command = this.commands.get(startLine);\n var newNextStartLine = this.getNextStartLine(startLine);\n var element = (_this$codeElements$ge = this.codeElements.get(startLine)) === null || _this$codeElements$ge === void 0 ? void 0 : _this$codeElements$ge.current;\n var nextElement = element === null || element === void 0 || (_element$parentElemen = element.parentElement) === null || _element$parentElemen === void 0 ? void 0 : _element$parentElemen.nextElementSibling;\n if (nextElement != null) {\n var _this$editorScrollVie;\n var {\n offsetTop\n } = nextElement;\n var top = offsetTop;\n (_this$editorScrollVie = this.editorScrollView.current) === null || _this$editorScrollVie === void 0 || _this$editorScrollVie.scroll({\n top,\n left: 0\n });\n }\n this.runCode(command);\n this.setState({\n nextStartLine: newNextStartLine\n });\n }\n runCode(command) {\n var {\n onRunCode\n } = this.props;\n onRunCode(command);\n this.setState({\n hasRunCode: true\n });\n }\n renderCodeBlock(props) {\n var {\n children,\n className,\n inline,\n node\n } = props;\n var {\n hasRunCode,\n nextStartLine\n } = this.state;\n var {\n children: nodeChildren,\n position\n } = node;\n assertNotNull(position);\n var {\n start\n } = position;\n var {\n line\n } = start;\n var command = nodeChildren[0].value;\n var ref = /*#__PURE__*/React.createRef();\n var isFirstBlock = this.commands.size === 0;\n var isSelected = nextStartLine === line || isFirstBlock && nextStartLine == null && !hasRunCode;\n var language = className !== undefined && className.startsWith('language-') ? className.substring(9) : 'plaintext';\n if (inline != null && inline) {\n return /*#__PURE__*/_jsx(\"code\", {\n className: className,\n children: children\n });\n }\n this.commands.set(line, command);\n this.codeElements.set(line, ref);\n return /*#__PURE__*/_jsxs(\"div\", {\n className: classNames('markdown-notebook-code-block', {\n 'is-selected': isSelected\n }),\n ref: ref,\n onClick: () => {\n this.setState({\n nextStartLine: line\n });\n },\n role: \"presentation\",\n children: [/*#__PURE__*/_jsx(Button, {\n kind: \"ghost\",\n icon: vsPlay,\n className: \"btn-play-block\",\n onClick: event => {\n event.stopPropagation();\n event.preventDefault();\n this.runCode(command);\n this.setState({\n nextStartLine: line\n });\n },\n tooltip: \"Run code\"\n }), /*#__PURE__*/_jsx(\"code\", {\n children: /*#__PURE__*/_jsx(Code, {\n language: language,\n children: React.Children.map(children, child => typeof child === 'string' ? child.trim() : child)\n })\n })]\n });\n }\n renderLink(props) {\n var {\n onLinkClick\n } = this.props;\n var {\n href,\n children,\n target\n } = props;\n return /*#__PURE__*/_jsx(\"a\", {\n href: href,\n onClick: onLinkClick,\n target: target,\n children: children\n });\n }\n render() {\n var {\n content,\n transformImageUri,\n transformLinkUri\n } = this.props;\n var {\n hasCode,\n hasRunCode,\n nextStartLine\n } = this.state;\n return /*#__PURE__*/_jsxs(\"div\", {\n className: \"markdown-notebook\",\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-toolbar\",\n children: /*#__PURE__*/_jsx(Button, {\n className: classNames('btn-play-selected-cell', {\n flashing: hasCode && !hasRunCode\n }),\n kind: \"ghost\",\n icon: vsPlay,\n onClick: this.handleRunSelected,\n tooltip: \"Run code and select next\",\n disabled: hasRunCode && nextStartLine == null || !hasCode,\n children: \"Run Selected Code\"\n })\n }), /*#__PURE__*/_jsx(\"div\", {\n className: \"markdown-notebook-content\",\n ref: this.editorScrollView,\n children: /*#__PURE__*/_jsx(Markdown, {\n components: {\n code: this.renderCodeBlock,\n a: this.renderLink\n },\n linkTarget: \"_blank\",\n remarkPlugins: [remarkGfm, remarkMath],\n rehypePlugins: [rehypeMathjax],\n transformLinkUri: transformLinkUri,\n transformImageUri: transformImageUri,\n includeElementIndex: true,\n children: content\n })\n })]\n });\n }\n}\n_defineProperty(MarkdownNotebook, \"defaultProps\", {\n onRunCode: () => undefined\n});\nexport default MarkdownNotebook;\n//# sourceMappingURL=MarkdownNotebook.js.map"],"names":["_defineProperty","e","r","_toPropertyKey","t","i","_toPrimitive","MarkdownNotebook","PureComponent","props","React","hasCode","line","keys","nextIndex","key","event","_this$codeElements$ge","_element$parentElemen","nextStartLine","keyIndex","startLine","command","newNextStartLine","element","nextElement","_this$editorScrollVie","offsetTop","top","onRunCode","children","className","inline","node","hasRunCode","nodeChildren","position","assertNotNull","start","ref","isFirstBlock","isSelected","language","_jsx","_jsxs","classNames","Button","vsPlay","Code","child","onLinkClick","href","target","content","transformImageUri","transformLinkUri","Markdown","remarkGfm","remarkMath","rehypeMathjax"],"mappings":"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"}