mobx-view-model-devtools 0.0.23 → 0.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/auto.global.js +2 -2
- package/index.cjs +2 -2
- package/index.d.ts +1 -0
- package/index.js +455 -335
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(){"use strict";try{if("undefined"!=typeof document){var t=document.createElement("style");t.appendChild(document.createTextNode('.vmButton_esipO{position:fixed;z-index:999999;width:36px;height:36px;border-radius:8px;transition:all .15s ease-in-out;cursor:pointer;-webkit-user-select:none;user-select:none}.vmButton_esipO.dragging_kUMCE{transition:none;cursor:grabbing;opacity:.8;z-index:1000}.vmButton_esipO.opened_NYAFW{opacity:0!important;pointer-events:none}.vmButton_esipO[data-position=top-right]{top:12px;right:12px}.vmButton_esipO[data-position=top-left]{top:12px;left:12px}.vmButton_esipO[data-position=bottom-left]{bottom:12px;left:12px}.vmButton_esipO[data-position=bottom-right]{bottom:12px;right:12px}.vmButton_esipO>img{pointer-events:none;position:absolute;inset:0;border-radius:8px}.vmButton_esipO>div{transition:all .15s ease-in-out;position:absolute;inset:0;border-radius:8px;border:2px solid #00000057}.vmButton_esipO>span{left:-4px;top:-4px;pointer-events:none;position:absolute;display:flex;border-radius:8px;background:#005c26cf;padding:2px;font-weight:600;font-size:12px;line-height:12px;color:#2aff0a}.vmButton_esipO:not(.isConnected_eObxX){filter:grayscale(1)}.iconToggleButton_R48wm{display:flex;align-items:center;gap:2px;position:relative;height:20px;outline:none}.activePosition_IXsRn{position:absolute;height:16px;width:16px;padding:1px;box-sizing:content-box!important;background:var(--vmd-control-active-bg);-webkit-backdrop-filter:blur(var(--vmd-base-blur));backdrop-filter:blur(var(--vmd-base-blur));border-radius:4px;transition:all 149ms ease;transform:translate(calc(20px * var(--index)))}.option_a5IcR{padding:1px;z-index:1;width:18px;height:18px;display:flex;align-items:center;justify-content:center;transition:all 149ms ease;color:var(--vmd-control-inactive-color)}.option_a5IcR.active_6QS-2{color:var(--vmd-control-active-color)}.option_a5IcR>svg{width:14px;height:14px}:root{--vmd-base-blur: 2px;--vmd-bg: #0c0a19e6;--vmd-overlay-bg: #0e1227bd;--vmd-base-color: #ccc;--vmd-control-active-bg: #e6e6e682;--vmd-control-active-color: #181818;--vmd-control-active-text-input-color: var(--vmd-base-color);--vmd-control-inactive-color: #8b8b8b;--vmd-control-border: #5b5468a6;--vmd-control-bg: transparent;--vmd-bg-transparent: #1f1c2600;--vmd-content-bg: transparent;--vmd-content-highlight-bg: #ffffff0a;--vmd-scrollbar-track-size: 8px;--vmd-scrollbar-bg-base: #81818170;--vmd-scrollbar-bg-active: #818181;--vmd-property-meta-color: #616161;--vmd-primary-bg: #0f6013;--vmd-primary-color: #5ab65e;--vmd-secondary-bg: #6b6902;--vmd-header-height: 60px}.root_Xsw1F{display:contents;box-sizing:border-box}.root_Xsw1F *{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;box-sizing:border-box}.root_Xsw1F button{outline:none;background:transparent;border:0;cursor:pointer;margin:0;padding-block:0;padding-inline:0}.hierarchyButton_h3FD7{width:18px;height:18px;padding:2px;border-radius:6px}.hierarchyButton_h3FD7.active_4JTx5{background:#f0f0f01f}.treeItemHeader_9gR6Q{display:flex;align-items:center;gap:4px;margin:auto 0;cursor:pointer;z-index:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.treeItemLabel_eiMgP{padding:0 4px;border-radius:4px}.treeItemMetaText_cmfX0{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.treeItem_sRXPA{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:pre;height:22px;display:flex;flex-direction:row;align-items:center;padding-left:calc(8px + (var(--level) * 20px));position:sticky;top:calc(var(--vmd-header-height) + var(--vmd-control-panel-height));z-index:1}.treeItem_sRXPA:hover{background:var(--vmd-content-highlight-bg)}.treeItem_sRXPA:not([data-fitted=true])>header{opacity:.6}.vmTreeItem_t-7jc .treeItemLabel_eiMgP{background:var(--vmd-primary-bg)}.vmTreeItem_t-7jc .treeItemMetaText_cmfX0{color:var(--vmd-primary-color)}.extraTreeItem_z3KA1 .treeItemLabel_eiMgP{background:var(--vmd-secondary-bg)}.expandButton_B24E3{color:#a0a0a0;opacity:1!important;width:16px;height:16px;font-weight:700;cursor:pointer}.expandButton_B24E3.expanded_8-pD6{color:#b8b8b8;transform:rotate(90deg)}.expandButton_B24E3.disabled_MBq1Q{opacity:.35!important}.vmContent_TIK57[data-simplebar]{position:relative;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start;color:var(--vmd-base-color);background:var(--vmd-bg);-webkit-backdrop-filter:blur(var(--vmd-base-blur));backdrop-filter:blur(var(--vmd-base-blur));display:flex;flex-direction:column;overflow:auto;overflow-y:auto;scrollbar-width:thin;overflow-anchor:none}.vmContent_TIK57[data-simplebar] .simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.vmContent_TIK57[data-simplebar] .simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;inset:0;width:auto!important;height:auto!important;z-index:0}.vmContent_TIK57[data-simplebar] .simplebar-offset{direction:inherit!important;box-sizing:inherit!important;resize:none!important;position:absolute;inset:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.vmContent_TIK57[data-simplebar] .simplebar-content-wrapper{direction:inherit;box-sizing:border-box!important;position:relative;display:block;height:100%;width:auto;max-width:100%;max-height:100%;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.vmContent_TIK57[data-simplebar] .simplebar-content-wrapper::-webkit-scrollbar,.vmContent_TIK57[data-simplebar] .simplebar-hide-scrollbar::-webkit-scrollbar{display:none;width:0;height:0}.vmContent_TIK57[data-simplebar] .simplebar-content:after,.vmContent_TIK57[data-simplebar] .simplebar-content:before{content:" ";display:table}.vmContent_TIK57[data-simplebar] .simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.vmContent_TIK57[data-simplebar] .simplebar-height-auto-observer-wrapper{box-sizing:inherit!important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}.vmContent_TIK57[data-simplebar] .simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.vmContent_TIK57[data-simplebar] .simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}.vmContent_TIK57[data-simplebar].simplebar-dragging,.vmContent_TIK57[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vmContent_TIK57[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar:before{position:absolute;content:"";background:var(--vmd-scrollbar-bg-base);border-radius:7px;left:2px;right:2px;opacity:0;transition:opacity .2s .5s linear}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar.simplebar-visible:before{opacity:.5;transition-delay:0s;transition-duration:0s}.vmContent_TIK57[data-simplebar] .simplebar-track.simplebar-vertical{top:0;width:var(--vmd-scrollbar-track-size)}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar:before{inset:2px}.vmContent_TIK57[data-simplebar] .simplebar-track.simplebar-horizontal{left:0;height:var(--vmd-scrollbar-track-size)}.vmContent_TIK57[data-simplebar] .simplebar-track.simplebar-horizontal .simplebar-scrollbar{inset:0 auto 0 0;min-height:0;min-width:10px;width:auto}.vmContent_TIK57[data-simplebar] .simplebar-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:scrollbar!important}.vmContent_TIK57[data-simplebar] .simplebar-dummy-scrollbar-size>div{width:200%;height:200%;margin:10px 0}.vmContent_TIK57[data-simplebar] .simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}.vmContentHeader_M1JNM{display:flex;flex-direction:column;height:var(--vmd-header-height);flex:none;padding:0 8px;position:sticky;top:0;z-index:1}.vmContentHeaderLogo_FRJDO{width:16px;margin-right:6px}.vmContentHeaderTitle_lYmde{display:flex;justify-content:space-between;align-items:center;flex:none;font-weight:600;z-index:1}.vmContentHeaderTitleText_RlIFH{font-size:16px;margin-right:auto}.vmContentControlPanel_CgUN9{width:100%;height:var(--vmd-control-panel-height);padding-bottom:4px;flex:none;display:flex;flex-direction:row;z-index:1;gap:4px}.vmContentControlPanelActions_lONbA{display:flex;flex-direction:row;align-items:center;gap:6px}.hiearchyToggleButton_0FTG-{display:flex}.vmContentInput_29GM1{display:flex;position:relative;flex:1}.vmContentInput_29GM1>svg{position:absolute;width:16px;inset:50% 0;transform:translate(6px,-50%);pointer-events:none;opacity:.7}.vmContentInput_29GM1>input{background:var(--vmd-control-bg);border:1px solid var(--vmd-control-border);color:var(--vmd-control-active-text-input-color);border-radius:4px;outline:0;width:100%;padding:3px 26px;font-size:14px;text-overflow:ellipsis}.vmContentInput_29GM1>button{position:absolute;right:6px;width:16px;transform:translate(4px,-50%);top:50%;opacity:.6;display:none}.vmContentInput_29GM1.filled_6JZa0>svg{opacity:.9}.vmContentInput_29GM1.filled_6JZa0>button{display:block}.vmContentVirtualized_lia62{flex:1}.vmContentVirtualized_lia62>div>div{height:22px}.gradientBlur_-y-re{position:absolute;top:0;left:0;width:100%;height:calc(100% + 6px);pointer-events:none;background:linear-gradient(to bottom,var(--vmd-overlay-bg) 0%,rgba(0,0,0,0) 100%)}.gradientBlur_-y-re:before{content:"";position:absolute;inset:0;background:transparent;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);-webkit-mask:linear-gradient(to bottom,var(--vmd-overlay-bg) 50%,rgba(0,0,0,0) 100%);mask:linear-gradient(to bottom,var(--vmd-overlay-bg) 50%,rgba(0,0,0,0) 100%)}.property_sD8FG{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:pre;background:var(--vmd-content-bg);height:22px;display:flex;flex-direction:row;align-items:center;position:relative;color:var(--vmd-property-meta-color);padding-left:calc(0px + 28px + (var(--level) * 15px))}.property_sD8FG:hover{background:var(--vmd-content-highlight-bg)}.property_sD8FG.expandable_np03F{cursor:pointer}.property_sD8FG[data-fitted=false]{opacity:.5}.property_sD8FG.instance_jv3IW{--value-color: rgb(190 113 195)}.property_sD8FG.primitive_v6LAV.boolean_Z6znK,.property_sD8FG.primitive_v6LAV.number_U9H45,.property_sD8FG.primitive_v6LAV.object_bHf4I,.property_sD8FG.primitive_v6LAV.bigint_HkgX8,.property_sD8FG.primitive_v6LAV.symbol_oKSwT{--value-color: rgb(89, 153, 205)}.property_sD8FG.primitive_v6LAV.undefined_6CapW,.property_sD8FG.primitive_v6LAV.null_lugoL{--value-color: #499098}.primitive_v6LAV.string_87vm1{--value-color: #af7249}.propertyName_KicXG{color:#ccc}.propertyMeta_Ia9ce{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.propertyValue_fYO2g{color:var(--value-color, var(--vmd-property-meta-color));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.propertyValue_fYO2g:has(+.propertyName_KicXG){margin-right:4px}.propertyOperations_fT6Ez{position:absolute;right:12px;display:flex;align-items:center;opacity:0}.property_sD8FG:hover>.propertyOperations_fT6Ez{opacity:1}.vmPopup_0hkGL{position:fixed!important;z-index:999999;width:520px;border-radius:8px;height:calc(100vh - 24px);width:calc(100vw - 34px);max-width:520px;box-shadow:0 5px 20px #0006}.vmPopup_0hkGL[data-position=top-right]{top:12px;right:12px}.vmPopup_0hkGL[data-position=top-left]{top:12px;left:12px}.vmPopup_0hkGL[data-position=bottom-left]{bottom:12px;left:12px}.vmPopup_0hkGL[data-position=bottom-right]{bottom:12px;right:12px}.closePopupButton_igv9j{width:28px;height:28px;padding:6px;border:0;background:transparent;color:var(--vmd-base-color);display:flex;align-items:center;justify-content:center}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}}();
|
|
1
|
+
!function(){"use strict";try{if("undefined"!=typeof document){var t=document.createElement("style");t.appendChild(document.createTextNode('.vmButton_esipO{position:fixed;z-index:999999;width:36px;height:36px;border-radius:8px;transition:all .15s ease-in-out;cursor:pointer;-webkit-user-select:none;user-select:none}.vmButton_esipO.dragging_kUMCE{transition:none;cursor:grabbing;opacity:.8;z-index:1000}.vmButton_esipO.opened_NYAFW{opacity:0!important;pointer-events:none}.vmButton_esipO[data-position=top-right]{top:12px;right:12px}.vmButton_esipO[data-position=top-left]{top:12px;left:12px}.vmButton_esipO[data-position=bottom-left]{bottom:12px;left:12px}.vmButton_esipO[data-position=bottom-right]{bottom:12px;right:12px}.vmButton_esipO>img{pointer-events:none;position:absolute;inset:0;border-radius:8px}.vmButton_esipO>div{transition:all .15s ease-in-out;position:absolute;inset:0;border-radius:8px;border:2px solid #00000057}.vmButton_esipO>span{left:-4px;top:-4px;pointer-events:none;position:absolute;display:flex;border-radius:8px;background:#005c26cf;padding:2px;font-weight:600;font-size:12px;line-height:12px;color:#2aff0a}.vmButton_esipO:not(.isConnected_eObxX){filter:grayscale(1)}.iconToggleButton_R48wm{display:flex;align-items:center;gap:2px;position:relative;height:20px;outline:none;border-radius:4px;-webkit-backdrop-filter:blur(var(--vmd-control-blur));backdrop-filter:blur(var(--vmd-control-blur))}.activePosition_IXsRn{position:absolute;height:16px;width:16px;padding:1px;box-sizing:content-box!important;background:var(--vmd-control-active-bg);-webkit-backdrop-filter:blur(var(--vmd-base-blur));backdrop-filter:blur(var(--vmd-base-blur));border-radius:4px;transition:all 149ms ease;transform:translate(calc(20px * var(--index)))}.option_a5IcR{padding:1px;z-index:1;width:18px;height:18px;display:flex;align-items:center;justify-content:center;transition:all 149ms ease;color:var(--vmd-control-inactive-color)}.option_a5IcR.active_6QS-2{color:var(--vmd-control-active-color)}.option_a5IcR>svg{width:14px;height:14px}:root{--vmd-base-blur: 2px;--vmd-bg: #0c0a19e6;--vmd-overlay-bg: #0e1227bd;--vmd-base-color: #ccc;--vmd-control-active-bg: #e6e6e682;--vmd-control-active-color: #181818;--vmd-control-active-text-input-color: var(--vmd-base-color);--vmd-control-active-text-input-placeholder-color: #a3a3a3;--vmd-control-inactive-color: #8b8b8b;--vmd-control-border: #5b5468a6;--vmd-control-bg: transparent;--vmd-control-blur: 2px;--vmd-bg-transparent: #1f1c2600;--vmd-content-bg: transparent;--vmd-content-highlight-bg: #ffffff0a;--vmd-scrollbar-track-size: 8px;--vmd-scrollbar-bg-base: #81818170;--vmd-scrollbar-bg-active: #818181;--vmd-property-meta-color: #616161;--vmd-primary-bg: #0f6013;--vmd-primary-color: #5ab65e;--vmd-secondary-bg: #6b6902;--vmd-header-height: 60px}.root_Xsw1F{display:contents;box-sizing:border-box}.root_Xsw1F *{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:14px;box-sizing:border-box}.root_Xsw1F button{outline:none;background:transparent;border:0;cursor:pointer;margin:0;padding-block:0;padding-inline:0;color:var(--vmd-base-color)}.hierarchyButton_h3FD7{width:18px;height:18px;padding:2px;border-radius:6px}.hierarchyButton_h3FD7.active_4JTx5{background:#f0f0f01f}.treeItemHeader_9gR6Q{display:flex;align-items:center;gap:4px;margin:auto 0;cursor:pointer;z-index:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.treeItemLabel_eiMgP{padding:0 4px;border-radius:4px}.treeItemMetaText_cmfX0{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.treeItem_sRXPA{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:pre;height:22px;display:flex;flex-direction:row;align-items:center;padding-left:calc(8px + (var(--level) * 20px));position:sticky;top:calc(var(--vmd-header-height) + var(--vmd-control-panel-height));z-index:1}.treeItem_sRXPA:hover{background:var(--vmd-content-highlight-bg)}.treeItem_sRXPA:not([data-fitted=true])>header{opacity:.6}.vmTreeItem_t-7jc .treeItemLabel_eiMgP{background:var(--vmd-primary-bg)}.vmTreeItem_t-7jc .treeItemMetaText_cmfX0{color:var(--vmd-primary-color)}.extraTreeItem_z3KA1 .treeItemLabel_eiMgP{background:var(--vmd-secondary-bg)}.expandButton_B24E3{color:#a0a0a0;opacity:1!important;width:16px;height:16px;font-weight:700;cursor:pointer}.expandButton_B24E3.expanded_8-pD6{color:#b8b8b8;transform:rotate(90deg)}.expandButton_B24E3.disabled_MBq1Q{opacity:.35!important}.vmContent_TIK57[data-simplebar]{position:relative;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:flex-start;color:var(--vmd-base-color);background:var(--vmd-bg);-webkit-backdrop-filter:blur(var(--vmd-base-blur));backdrop-filter:blur(var(--vmd-base-blur));display:flex;flex-direction:column;overflow:auto;overflow-y:auto;scrollbar-width:thin;overflow-anchor:none}.vmContent_TIK57[data-simplebar] .simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.vmContent_TIK57[data-simplebar] .simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;inset:0;width:auto!important;height:auto!important;z-index:0}.vmContent_TIK57[data-simplebar] .simplebar-offset{direction:inherit!important;box-sizing:inherit!important;resize:none!important;position:absolute;inset:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.vmContent_TIK57[data-simplebar] .simplebar-content-wrapper{direction:inherit;box-sizing:border-box!important;position:relative;display:block;height:100%;width:auto;max-width:100%;max-height:100%;overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.vmContent_TIK57[data-simplebar] .simplebar-content-wrapper::-webkit-scrollbar,.vmContent_TIK57[data-simplebar] .simplebar-hide-scrollbar::-webkit-scrollbar{display:none;width:0;height:0}.vmContent_TIK57[data-simplebar] .simplebar-content:after,.vmContent_TIK57[data-simplebar] .simplebar-content:before{content:" ";display:table}.vmContent_TIK57[data-simplebar] .simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.vmContent_TIK57[data-simplebar] .simplebar-height-auto-observer-wrapper{box-sizing:inherit!important;height:100%;width:100%;max-width:1px;position:relative;float:left;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;flex-grow:inherit;flex-shrink:0;flex-basis:0}.vmContent_TIK57[data-simplebar] .simplebar-height-auto-observer{box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;left:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.vmContent_TIK57[data-simplebar] .simplebar-track{z-index:1;position:absolute;right:0;bottom:0;pointer-events:none;overflow:hidden}.vmContent_TIK57[data-simplebar].simplebar-dragging,.vmContent_TIK57[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vmContent_TIK57[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar{position:absolute;left:0;right:0;min-height:10px}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar:before{position:absolute;content:"";background:var(--vmd-scrollbar-bg-base);border-radius:7px;left:2px;right:2px;opacity:0;transition:opacity .2s .5s linear}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar.simplebar-visible:before{opacity:.5;transition-delay:0s;transition-duration:0s}.vmContent_TIK57[data-simplebar] .simplebar-track.simplebar-vertical{top:0;width:var(--vmd-scrollbar-track-size)}.vmContent_TIK57[data-simplebar] .simplebar-scrollbar:before{inset:2px}.vmContent_TIK57[data-simplebar] .simplebar-track.simplebar-horizontal{left:0;height:var(--vmd-scrollbar-track-size)}.vmContent_TIK57[data-simplebar] .simplebar-track.simplebar-horizontal .simplebar-scrollbar{inset:0 auto 0 0;min-height:0;min-width:10px;width:auto}.vmContent_TIK57[data-simplebar] .simplebar-dummy-scrollbar-size{direction:rtl;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll;-ms-overflow-style:scrollbar!important}.vmContent_TIK57[data-simplebar] .simplebar-dummy-scrollbar-size>div{width:200%;height:200%;margin:10px 0}.vmContent_TIK57[data-simplebar] .simplebar-hide-scrollbar{position:fixed;left:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none;-ms-overflow-style:none}.vmContentHeader_M1JNM{display:flex;flex-direction:column;height:var(--vmd-header-height);flex:none;padding:0 8px;position:sticky;top:0;z-index:1}.vmContentHeaderLogo_FRJDO{width:16px;margin-right:6px}.vmContentHeaderTitle_lYmde{display:flex;justify-content:space-between;align-items:center;flex:none;font-weight:600;z-index:1}.vmContentHeaderTitleText_RlIFH{font-size:16px;margin-right:auto}.vmContentControlPanel_CgUN9{width:100%;height:var(--vmd-control-panel-height);padding-bottom:4px;flex:none;display:flex;flex-direction:row;z-index:1;gap:4px;overflow:hidden;padding-right:6px}.vmContentControlPanel_CgUN9:has(.vmContentInput_29GM1 input:focus)>.vmContentControlPanelActions_lONbA{margin-left:-106px}.vmContentControlPanelActions_lONbA{display:flex;flex-direction:row;align-items:center;gap:6px;transition:all .15s ease}.hiearchyToggleButton_0FTG-{display:flex}.vmContentInput_29GM1{display:flex;position:relative;flex:1;-webkit-backdrop-filter:blur(var(--vmd-control-blur));backdrop-filter:blur(var(--vmd-control-blur))}.vmContentInput_29GM1>svg{position:absolute;width:16px;inset:50% 0;transform:translate(6px,-50%);pointer-events:none;opacity:.7}.vmContentInput_29GM1>input{background:var(--vmd-control-bg);border:1px solid var(--vmd-control-border);color:var(--vmd-control-active-text-input-color);border-radius:4px;outline:0;width:100%;padding:3px 26px;font-size:14px;text-overflow:ellipsis}.vmContentInput_29GM1>input::placeholder{color:var(--vmd-control-active-text-input-placeholder-color)}.vmContentInput_29GM1>button{position:absolute;right:6px;width:16px;transform:translate(4px,-50%);top:50%;opacity:.6;display:none}.vmContentInput_29GM1.filled_6JZa0>svg{opacity:.9}.vmContentInput_29GM1.filled_6JZa0>button{display:block}.vmContentVirtualized_lia62{flex:1}.vmContentVirtualized_lia62>div>div{height:22px}.gradientBlur_-y-re{position:absolute;top:0;left:0;width:100%;height:calc(100% + 6px);pointer-events:none;background:linear-gradient(to bottom,var(--vmd-overlay-bg) 0%,rgba(0,0,0,0) 100%)}.gradientBlur_-y-re:before{content:"";position:absolute;inset:0;background:transparent;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);-webkit-mask:linear-gradient(to bottom,var(--vmd-overlay-bg) 50%,rgba(0,0,0,0) 100%);mask:linear-gradient(to bottom,var(--vmd-overlay-bg) 50%,rgba(0,0,0,0) 100%)}.property_sD8FG{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:pre;background:var(--vmd-content-bg);height:22px;display:flex;flex-direction:row;align-items:center;position:relative;color:var(--vmd-property-meta-color);padding-left:calc(0px + 28px + (var(--level) * 15px))}.property_sD8FG:hover{background:var(--vmd-content-highlight-bg)}.property_sD8FG.expandable_np03F{cursor:pointer}.property_sD8FG[data-fitted=false]{opacity:.5}.property_sD8FG.instance_jv3IW{--value-color: rgb(190 113 195)}.property_sD8FG.primitive_v6LAV.boolean_Z6znK,.property_sD8FG.primitive_v6LAV.number_U9H45,.property_sD8FG.primitive_v6LAV.object_bHf4I,.property_sD8FG.primitive_v6LAV.bigint_HkgX8,.property_sD8FG.primitive_v6LAV.symbol_oKSwT{--value-color: rgb(89, 153, 205)}.property_sD8FG.primitive_v6LAV.undefined_6CapW,.property_sD8FG.primitive_v6LAV.null_lugoL{--value-color: #499098}.primitive_v6LAV.string_87vm1{--value-color: #af7249}.propertyName_KicXG{color:#ccc}.propertyMeta_Ia9ce{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.propertyValue_fYO2g{color:var(--value-color, var(--vmd-property-meta-color));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.propertyValue_fYO2g:has(+.propertyName_KicXG){margin-right:4px}.propertyOperations_fT6Ez{position:absolute;right:12px;display:flex;align-items:center;opacity:0}.property_sD8FG:hover>.propertyOperations_fT6Ez{opacity:1}.vmPopup_0hkGL{position:fixed!important;z-index:999999;width:520px;border-radius:8px;height:calc(100vh - 24px);width:calc(100vw - 34px);max-width:520px;box-shadow:0 5px 20px #0006}.vmPopup_0hkGL[data-position=top-right]{top:12px;right:12px}.vmPopup_0hkGL[data-position=top-left]{top:12px;left:12px}.vmPopup_0hkGL[data-position=bottom-left]{bottom:12px;left:12px}.vmPopup_0hkGL[data-position=bottom-right]{bottom:12px;right:12px}.closePopupButton_igv9j{width:28px;height:28px;padding:6px;border:0;background:transparent;color:var(--vmd-base-color);display:flex;align-items:center;justify-content:center}')),document.head.appendChild(t)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}}();
|
|
2
2
|
function getDefaultExportFromCjs(x2) {
|
|
3
3
|
return x2 && x2.__esModule && Object.prototype.hasOwnProperty.call(x2, "default") ? x2["default"] : x2;
|
|
4
4
|
}
|
|
@@ -31393,6 +31393,421 @@ class ViewModelImpl extends ViewModelBase {
|
|
|
31393
31393
|
});
|
|
31394
31394
|
}
|
|
31395
31395
|
}
|
|
31396
|
+
class LinkedAbortController extends AbortController {
|
|
31397
|
+
constructor(...abortSignals) {
|
|
31398
|
+
super();
|
|
31399
|
+
this.link(...abortSignals);
|
|
31400
|
+
}
|
|
31401
|
+
link(...abortSignals) {
|
|
31402
|
+
abortSignals.forEach((abortSignal) => {
|
|
31403
|
+
abortSignal?.addEventListener("abort", () => {
|
|
31404
|
+
this.abort(abortSignal.reason);
|
|
31405
|
+
});
|
|
31406
|
+
});
|
|
31407
|
+
}
|
|
31408
|
+
}
|
|
31409
|
+
const callFunction = (fn, ...args) => {
|
|
31410
|
+
if (typeof fn === "function") {
|
|
31411
|
+
return fn(...args);
|
|
31412
|
+
}
|
|
31413
|
+
return fn;
|
|
31414
|
+
};
|
|
31415
|
+
var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
|
|
31416
|
+
var freeSelf = typeof self == "object" && self && self.Object === Object && self;
|
|
31417
|
+
var root$1 = freeGlobal || freeSelf || Function("return this")();
|
|
31418
|
+
var Symbol$1 = root$1.Symbol;
|
|
31419
|
+
var objectProto$1 = Object.prototype;
|
|
31420
|
+
var hasOwnProperty = objectProto$1.hasOwnProperty;
|
|
31421
|
+
var nativeObjectToString$1 = objectProto$1.toString;
|
|
31422
|
+
var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0;
|
|
31423
|
+
function getRawTag(value) {
|
|
31424
|
+
var isOwn = hasOwnProperty.call(value, symToStringTag$1), tag = value[symToStringTag$1];
|
|
31425
|
+
try {
|
|
31426
|
+
value[symToStringTag$1] = void 0;
|
|
31427
|
+
var unmasked = true;
|
|
31428
|
+
} catch (e) {
|
|
31429
|
+
}
|
|
31430
|
+
var result = nativeObjectToString$1.call(value);
|
|
31431
|
+
if (unmasked) {
|
|
31432
|
+
if (isOwn) {
|
|
31433
|
+
value[symToStringTag$1] = tag;
|
|
31434
|
+
} else {
|
|
31435
|
+
delete value[symToStringTag$1];
|
|
31436
|
+
}
|
|
31437
|
+
}
|
|
31438
|
+
return result;
|
|
31439
|
+
}
|
|
31440
|
+
var objectProto = Object.prototype;
|
|
31441
|
+
var nativeObjectToString = objectProto.toString;
|
|
31442
|
+
function objectToString(value) {
|
|
31443
|
+
return nativeObjectToString.call(value);
|
|
31444
|
+
}
|
|
31445
|
+
var nullTag = "[object Null]", undefinedTag = "[object Undefined]";
|
|
31446
|
+
var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0;
|
|
31447
|
+
function baseGetTag(value) {
|
|
31448
|
+
if (value == null) {
|
|
31449
|
+
return value === void 0 ? undefinedTag : nullTag;
|
|
31450
|
+
}
|
|
31451
|
+
return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
|
|
31452
|
+
}
|
|
31453
|
+
function isObjectLike(value) {
|
|
31454
|
+
return value != null && typeof value == "object";
|
|
31455
|
+
}
|
|
31456
|
+
var symbolTag = "[object Symbol]";
|
|
31457
|
+
function isSymbol(value) {
|
|
31458
|
+
return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
|
|
31459
|
+
}
|
|
31460
|
+
var reWhitespace = /\s/;
|
|
31461
|
+
function trimmedEndIndex(string2) {
|
|
31462
|
+
var index = string2.length;
|
|
31463
|
+
while (index-- && reWhitespace.test(string2.charAt(index))) {
|
|
31464
|
+
}
|
|
31465
|
+
return index;
|
|
31466
|
+
}
|
|
31467
|
+
var reTrimStart = /^\s+/;
|
|
31468
|
+
function baseTrim(string2) {
|
|
31469
|
+
return string2 ? string2.slice(0, trimmedEndIndex(string2) + 1).replace(reTrimStart, "") : string2;
|
|
31470
|
+
}
|
|
31471
|
+
function isObject(value) {
|
|
31472
|
+
var type = typeof value;
|
|
31473
|
+
return value != null && (type == "object" || type == "function");
|
|
31474
|
+
}
|
|
31475
|
+
var NAN = 0 / 0;
|
|
31476
|
+
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
|
|
31477
|
+
var reIsBinary = /^0b[01]+$/i;
|
|
31478
|
+
var reIsOctal = /^0o[0-7]+$/i;
|
|
31479
|
+
var freeParseInt = parseInt;
|
|
31480
|
+
function toNumber(value) {
|
|
31481
|
+
if (typeof value == "number") {
|
|
31482
|
+
return value;
|
|
31483
|
+
}
|
|
31484
|
+
if (isSymbol(value)) {
|
|
31485
|
+
return NAN;
|
|
31486
|
+
}
|
|
31487
|
+
if (isObject(value)) {
|
|
31488
|
+
var other = typeof value.valueOf == "function" ? value.valueOf() : value;
|
|
31489
|
+
value = isObject(other) ? other + "" : other;
|
|
31490
|
+
}
|
|
31491
|
+
if (typeof value != "string") {
|
|
31492
|
+
return value === 0 ? value : +value;
|
|
31493
|
+
}
|
|
31494
|
+
value = baseTrim(value);
|
|
31495
|
+
var isBinary = reIsBinary.test(value);
|
|
31496
|
+
return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
|
|
31497
|
+
}
|
|
31498
|
+
var now = function() {
|
|
31499
|
+
return root$1.Date.now();
|
|
31500
|
+
};
|
|
31501
|
+
var FUNC_ERROR_TEXT$1 = "Expected a function";
|
|
31502
|
+
var nativeMax = Math.max, nativeMin = Math.min;
|
|
31503
|
+
function debounce(func, wait, options) {
|
|
31504
|
+
var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
|
|
31505
|
+
if (typeof func != "function") {
|
|
31506
|
+
throw new TypeError(FUNC_ERROR_TEXT$1);
|
|
31507
|
+
}
|
|
31508
|
+
wait = toNumber(wait) || 0;
|
|
31509
|
+
if (isObject(options)) {
|
|
31510
|
+
leading = !!options.leading;
|
|
31511
|
+
maxing = "maxWait" in options;
|
|
31512
|
+
maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
|
|
31513
|
+
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
31514
|
+
}
|
|
31515
|
+
function invokeFunc(time) {
|
|
31516
|
+
var args = lastArgs, thisArg = lastThis;
|
|
31517
|
+
lastArgs = lastThis = void 0;
|
|
31518
|
+
lastInvokeTime = time;
|
|
31519
|
+
result = func.apply(thisArg, args);
|
|
31520
|
+
return result;
|
|
31521
|
+
}
|
|
31522
|
+
function leadingEdge(time) {
|
|
31523
|
+
lastInvokeTime = time;
|
|
31524
|
+
timerId = setTimeout(timerExpired, wait);
|
|
31525
|
+
return leading ? invokeFunc(time) : result;
|
|
31526
|
+
}
|
|
31527
|
+
function remainingWait(time) {
|
|
31528
|
+
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
|
|
31529
|
+
return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
|
|
31530
|
+
}
|
|
31531
|
+
function shouldInvoke(time) {
|
|
31532
|
+
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
|
|
31533
|
+
return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
|
|
31534
|
+
}
|
|
31535
|
+
function timerExpired() {
|
|
31536
|
+
var time = now();
|
|
31537
|
+
if (shouldInvoke(time)) {
|
|
31538
|
+
return trailingEdge(time);
|
|
31539
|
+
}
|
|
31540
|
+
timerId = setTimeout(timerExpired, remainingWait(time));
|
|
31541
|
+
}
|
|
31542
|
+
function trailingEdge(time) {
|
|
31543
|
+
timerId = void 0;
|
|
31544
|
+
if (trailing && lastArgs) {
|
|
31545
|
+
return invokeFunc(time);
|
|
31546
|
+
}
|
|
31547
|
+
lastArgs = lastThis = void 0;
|
|
31548
|
+
return result;
|
|
31549
|
+
}
|
|
31550
|
+
function cancel() {
|
|
31551
|
+
if (timerId !== void 0) {
|
|
31552
|
+
clearTimeout(timerId);
|
|
31553
|
+
}
|
|
31554
|
+
lastInvokeTime = 0;
|
|
31555
|
+
lastArgs = lastCallTime = lastThis = timerId = void 0;
|
|
31556
|
+
}
|
|
31557
|
+
function flush() {
|
|
31558
|
+
return timerId === void 0 ? result : trailingEdge(now());
|
|
31559
|
+
}
|
|
31560
|
+
function debounced() {
|
|
31561
|
+
var time = now(), isInvoking = shouldInvoke(time);
|
|
31562
|
+
lastArgs = arguments;
|
|
31563
|
+
lastThis = this;
|
|
31564
|
+
lastCallTime = time;
|
|
31565
|
+
if (isInvoking) {
|
|
31566
|
+
if (timerId === void 0) {
|
|
31567
|
+
return leadingEdge(lastCallTime);
|
|
31568
|
+
}
|
|
31569
|
+
if (maxing) {
|
|
31570
|
+
clearTimeout(timerId);
|
|
31571
|
+
timerId = setTimeout(timerExpired, wait);
|
|
31572
|
+
return invokeFunc(lastCallTime);
|
|
31573
|
+
}
|
|
31574
|
+
}
|
|
31575
|
+
if (timerId === void 0) {
|
|
31576
|
+
timerId = setTimeout(timerExpired, wait);
|
|
31577
|
+
}
|
|
31578
|
+
return result;
|
|
31579
|
+
}
|
|
31580
|
+
debounced.cancel = cancel;
|
|
31581
|
+
debounced.flush = flush;
|
|
31582
|
+
return debounced;
|
|
31583
|
+
}
|
|
31584
|
+
var FUNC_ERROR_TEXT = "Expected a function";
|
|
31585
|
+
function throttle(func, wait, options) {
|
|
31586
|
+
var leading = true, trailing = true;
|
|
31587
|
+
if (typeof func != "function") {
|
|
31588
|
+
throw new TypeError(FUNC_ERROR_TEXT);
|
|
31589
|
+
}
|
|
31590
|
+
if (isObject(options)) {
|
|
31591
|
+
leading = "leading" in options ? !!options.leading : leading;
|
|
31592
|
+
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
31593
|
+
}
|
|
31594
|
+
return debounce(func, wait, {
|
|
31595
|
+
"leading": leading,
|
|
31596
|
+
"maxWait": wait,
|
|
31597
|
+
"trailing": trailing
|
|
31598
|
+
});
|
|
31599
|
+
}
|
|
31600
|
+
let KeyboardHandler$1 = class KeyboardHandler {
|
|
31601
|
+
constructor(config) {
|
|
31602
|
+
this.config = config;
|
|
31603
|
+
this.abortController = new LinkedAbortController(config.abortSignal);
|
|
31604
|
+
this.activateStrategy = this.config.activateStrategy ?? {
|
|
31605
|
+
type: "immidiately"
|
|
31606
|
+
};
|
|
31607
|
+
this.isActivated = !!(this.activateStrategy.type === "immidiately");
|
|
31608
|
+
observable.ref(this, "isActivated");
|
|
31609
|
+
observable.ref(this, "localActions");
|
|
31610
|
+
computed.struct(this, "actions");
|
|
31611
|
+
action.bound(this, "handleKeyboardClick");
|
|
31612
|
+
action.bound(this, "setActions");
|
|
31613
|
+
makeObservable(this);
|
|
31614
|
+
if (this.activateStrategy.type === "element-focus") {
|
|
31615
|
+
const ref = this.activateStrategy.ref;
|
|
31616
|
+
let nodeAbortController = new LinkedAbortController();
|
|
31617
|
+
reaction(
|
|
31618
|
+
() => ref.current,
|
|
31619
|
+
(node) => {
|
|
31620
|
+
if (node) {
|
|
31621
|
+
if (globalThis.document?.activeElement === node) {
|
|
31622
|
+
this.activate();
|
|
31623
|
+
}
|
|
31624
|
+
node.addEventListener("focus", this.activate, {
|
|
31625
|
+
signal: nodeAbortController.signal
|
|
31626
|
+
});
|
|
31627
|
+
node.addEventListener("blur", this.deactivate, {
|
|
31628
|
+
signal: nodeAbortController.signal
|
|
31629
|
+
});
|
|
31630
|
+
} else {
|
|
31631
|
+
nodeAbortController.abort();
|
|
31632
|
+
nodeAbortController = new LinkedAbortController(
|
|
31633
|
+
this.abortController.signal
|
|
31634
|
+
);
|
|
31635
|
+
}
|
|
31636
|
+
},
|
|
31637
|
+
{ fireImmediately: true, signal: this.abortController.signal }
|
|
31638
|
+
);
|
|
31639
|
+
}
|
|
31640
|
+
globalThis.addEventListener("keydown", this.handleKeyboardClick, {
|
|
31641
|
+
signal: this.abortController.signal
|
|
31642
|
+
});
|
|
31643
|
+
if (config.activateStrategy?.type === "keyclick") {
|
|
31644
|
+
globalThis.addEventListener("click", this.activate, {
|
|
31645
|
+
signal: this.abortController.signal
|
|
31646
|
+
});
|
|
31647
|
+
globalThis.addEventListener("mousemove", this.activate, {
|
|
31648
|
+
signal: this.abortController.signal
|
|
31649
|
+
});
|
|
31650
|
+
}
|
|
31651
|
+
}
|
|
31652
|
+
abortController;
|
|
31653
|
+
activateStrategy;
|
|
31654
|
+
localActions;
|
|
31655
|
+
/**
|
|
31656
|
+
* Is user using keyboard input
|
|
31657
|
+
*/
|
|
31658
|
+
isActivated;
|
|
31659
|
+
/**
|
|
31660
|
+
* User actions
|
|
31661
|
+
*/
|
|
31662
|
+
get actions() {
|
|
31663
|
+
const usingActions = this.localActions ?? this.config.actions;
|
|
31664
|
+
return callFunction(usingActions) ?? [];
|
|
31665
|
+
}
|
|
31666
|
+
setActions(actions) {
|
|
31667
|
+
this.localActions = actions;
|
|
31668
|
+
}
|
|
31669
|
+
activate = () => {
|
|
31670
|
+
if (this.isActivated) {
|
|
31671
|
+
return;
|
|
31672
|
+
}
|
|
31673
|
+
this.isActivated = true;
|
|
31674
|
+
this.config.onActivate?.();
|
|
31675
|
+
};
|
|
31676
|
+
deactivate = () => {
|
|
31677
|
+
if (!this.isActivated) {
|
|
31678
|
+
return;
|
|
31679
|
+
}
|
|
31680
|
+
this.isActivated = false;
|
|
31681
|
+
this.config.onDeactivate?.();
|
|
31682
|
+
};
|
|
31683
|
+
handleKeyboardClick(event) {
|
|
31684
|
+
this.config.onKeyClick?.(event);
|
|
31685
|
+
if (this.activateStrategy.type === "keyclick") {
|
|
31686
|
+
this.activate();
|
|
31687
|
+
}
|
|
31688
|
+
if (!this.isActivated) {
|
|
31689
|
+
return;
|
|
31690
|
+
}
|
|
31691
|
+
for (let i = 0; i < this.actions.length; i++) {
|
|
31692
|
+
const action2 = this.actions[i];
|
|
31693
|
+
const disabled2 = callFunction(action2.disabled);
|
|
31694
|
+
if (disabled2) {
|
|
31695
|
+
continue;
|
|
31696
|
+
}
|
|
31697
|
+
for (let j = 0; j < action2.shortcuts.length; j++) {
|
|
31698
|
+
const shortcut = action2.shortcuts[j];
|
|
31699
|
+
const keys = shortcut.split("+");
|
|
31700
|
+
if (keys.every((key) => this.checkKey(event, key))) {
|
|
31701
|
+
runInAction(() => {
|
|
31702
|
+
action2.action(event);
|
|
31703
|
+
});
|
|
31704
|
+
return;
|
|
31705
|
+
}
|
|
31706
|
+
}
|
|
31707
|
+
}
|
|
31708
|
+
}
|
|
31709
|
+
checkKey(event, key) {
|
|
31710
|
+
if (key === "Shift" && event.shiftKey) return true;
|
|
31711
|
+
if ((key === "Ctrl" || key === "Control") && event.ctrlKey) return true;
|
|
31712
|
+
if (key === "Alt" && event.altKey) return true;
|
|
31713
|
+
if ((key === "Windows" || key === "Meta" || key === "Command" || key === "⌘" || key === "Win") && event.metaKey)
|
|
31714
|
+
return true;
|
|
31715
|
+
return key === event.key || key === event.code;
|
|
31716
|
+
}
|
|
31717
|
+
destroy() {
|
|
31718
|
+
this.abortController.abort();
|
|
31719
|
+
}
|
|
31720
|
+
};
|
|
31721
|
+
class Storage {
|
|
31722
|
+
constructor(config) {
|
|
31723
|
+
this.config = config;
|
|
31724
|
+
this.abortController = new LinkedAbortController(config?.abortSignal);
|
|
31725
|
+
this.abortSignal = this.abortController.signal;
|
|
31726
|
+
makeObservable(this);
|
|
31727
|
+
}
|
|
31728
|
+
abortController;
|
|
31729
|
+
abortSignal;
|
|
31730
|
+
getStorage(params) {
|
|
31731
|
+
const type = params.type ?? this.config?.type;
|
|
31732
|
+
if (type === "session") {
|
|
31733
|
+
return globalThis.sessionStorage;
|
|
31734
|
+
}
|
|
31735
|
+
return globalThis.localStorage;
|
|
31736
|
+
}
|
|
31737
|
+
createKey(params) {
|
|
31738
|
+
if (this.config?.createKey) {
|
|
31739
|
+
return this.config.createKey(params);
|
|
31740
|
+
}
|
|
31741
|
+
const prefix = params.prefix ?? this.config?.prefix ?? "";
|
|
31742
|
+
const namespace = params.namespace ?? this.config?.namespace;
|
|
31743
|
+
const key = params.key;
|
|
31744
|
+
return `${prefix ? `${prefix}/` : ""}${namespace ? `${namespace}/` : ""}${key}`;
|
|
31745
|
+
}
|
|
31746
|
+
get(config) {
|
|
31747
|
+
const key = this.createKey(config);
|
|
31748
|
+
const storage = this.getStorage(config);
|
|
31749
|
+
const rawValue = storage.getItem(key);
|
|
31750
|
+
let value = null;
|
|
31751
|
+
if (typeof rawValue === "string") {
|
|
31752
|
+
try {
|
|
31753
|
+
const parsed = JSON.parse(rawValue);
|
|
31754
|
+
value = parsed;
|
|
31755
|
+
} catch {
|
|
31756
|
+
value = null;
|
|
31757
|
+
}
|
|
31758
|
+
} else {
|
|
31759
|
+
value = rawValue;
|
|
31760
|
+
}
|
|
31761
|
+
return value ?? config.fallback ?? null;
|
|
31762
|
+
}
|
|
31763
|
+
formatValue(value) {
|
|
31764
|
+
return JSON.stringify(value);
|
|
31765
|
+
}
|
|
31766
|
+
set(config) {
|
|
31767
|
+
const key = this.createKey(config);
|
|
31768
|
+
const storage = this.getStorage(config);
|
|
31769
|
+
storage.setItem(
|
|
31770
|
+
key,
|
|
31771
|
+
config.format ? config.format(config.value) : this.formatValue(config.value)
|
|
31772
|
+
);
|
|
31773
|
+
}
|
|
31774
|
+
syncProperty(context, property2, params) {
|
|
31775
|
+
const storageKey = params?.key ?? property2;
|
|
31776
|
+
const fallback = params && "fallback" in params ? params.fallback : context[property2];
|
|
31777
|
+
runInAction(() => {
|
|
31778
|
+
context[property2] = this.get({
|
|
31779
|
+
...params,
|
|
31780
|
+
key: storageKey,
|
|
31781
|
+
fallback
|
|
31782
|
+
}) ?? context[property2];
|
|
31783
|
+
});
|
|
31784
|
+
const disposer = autorun(
|
|
31785
|
+
() => {
|
|
31786
|
+
const newValue = context[property2];
|
|
31787
|
+
this.set({
|
|
31788
|
+
...params,
|
|
31789
|
+
key: storageKey,
|
|
31790
|
+
value: newValue
|
|
31791
|
+
});
|
|
31792
|
+
},
|
|
31793
|
+
{
|
|
31794
|
+
signal: this.abortSignal
|
|
31795
|
+
}
|
|
31796
|
+
);
|
|
31797
|
+
this.abortSignal.addEventListener("abort", disposer);
|
|
31798
|
+
return () => {
|
|
31799
|
+
this.abortSignal.removeEventListener("abort", disposer);
|
|
31800
|
+
disposer();
|
|
31801
|
+
};
|
|
31802
|
+
}
|
|
31803
|
+
/**
|
|
31804
|
+
* Reset model
|
|
31805
|
+
* Do not clean storages
|
|
31806
|
+
*/
|
|
31807
|
+
destroy() {
|
|
31808
|
+
this.abortController.abort();
|
|
31809
|
+
}
|
|
31810
|
+
}
|
|
31396
31811
|
var client = {};
|
|
31397
31812
|
var hasRequiredClient;
|
|
31398
31813
|
function requireClient() {
|
|
@@ -35298,6 +35713,11 @@ const css$5 = {
|
|
|
35298
35713
|
};
|
|
35299
35714
|
class VmDevtoolsButtonVM extends ViewModelBase {
|
|
35300
35715
|
devtools = this.parentViewModel.devtools;
|
|
35716
|
+
storage = new Storage({
|
|
35717
|
+
namespace: "mobx-view-model-devtools",
|
|
35718
|
+
prefix: "devtools-button",
|
|
35719
|
+
type: "local"
|
|
35720
|
+
});
|
|
35301
35721
|
ref = createRef({
|
|
35302
35722
|
onSet: (node) => {
|
|
35303
35723
|
const dragState = {
|
|
@@ -35308,6 +35728,12 @@ class VmDevtoolsButtonVM extends ViewModelBase {
|
|
|
35308
35728
|
startX: 0,
|
|
35309
35729
|
startY: 0
|
|
35310
35730
|
};
|
|
35731
|
+
const savedLeft = this.storage.get({ key: "left" });
|
|
35732
|
+
const savedTop = this.storage.get({ key: "top" });
|
|
35733
|
+
if (savedLeft && savedTop) {
|
|
35734
|
+
node.style.left = `${savedLeft}`;
|
|
35735
|
+
node.style.top = `${savedTop}`;
|
|
35736
|
+
}
|
|
35311
35737
|
const { width, height } = node.getBoundingClientRect();
|
|
35312
35738
|
node.addEventListener("mousedown", (e) => {
|
|
35313
35739
|
dragState.isDragging = true;
|
|
@@ -35351,6 +35777,8 @@ class VmDevtoolsButtonVM extends ViewModelBase {
|
|
|
35351
35777
|
if (this.position !== this.devtools.position) {
|
|
35352
35778
|
runInAction(() => {
|
|
35353
35779
|
this.devtools.position = this.position;
|
|
35780
|
+
this.storage.set({ key: "left", value: node.style.left });
|
|
35781
|
+
this.storage.set({ key: "top", value: node.style.top });
|
|
35354
35782
|
});
|
|
35355
35783
|
}
|
|
35356
35784
|
};
|
|
@@ -36273,7 +36701,16 @@ class ExtraListItem extends ListItem {
|
|
|
36273
36701
|
return isFittedByName;
|
|
36274
36702
|
}
|
|
36275
36703
|
get propertyListItems() {
|
|
36276
|
-
|
|
36704
|
+
let keys = Object.keys(this.data || {});
|
|
36705
|
+
if (this.devtools.sortPropertiesBy !== "none") {
|
|
36706
|
+
keys = keys.sort((a2, b2) => {
|
|
36707
|
+
if (this.devtools.sortPropertiesBy === "asc") {
|
|
36708
|
+
return a2.localeCompare(b2);
|
|
36709
|
+
}
|
|
36710
|
+
return b2.localeCompare(a2);
|
|
36711
|
+
});
|
|
36712
|
+
}
|
|
36713
|
+
return keys.map((property2, order) => {
|
|
36277
36714
|
return PropertyListItem.create(
|
|
36278
36715
|
this.devtools,
|
|
36279
36716
|
property2,
|
|
@@ -36382,7 +36819,7 @@ const IconToggleButton = ({
|
|
|
36382
36819
|
columnNumber: 5
|
|
36383
36820
|
}, void 0);
|
|
36384
36821
|
};
|
|
36385
|
-
const root
|
|
36822
|
+
const root = "root_Xsw1F";
|
|
36386
36823
|
const treeItemHeader = "treeItemHeader_9gR6Q";
|
|
36387
36824
|
const treeItemLabel = "treeItemLabel_eiMgP";
|
|
36388
36825
|
const treeItemMetaText = "treeItemMetaText_cmfX0";
|
|
@@ -36390,7 +36827,7 @@ const treeItem = "treeItem_sRXPA";
|
|
|
36390
36827
|
const vmTreeItem = "vmTreeItem_t-7jc";
|
|
36391
36828
|
const extraTreeItem = "extraTreeItem_z3KA1";
|
|
36392
36829
|
const css$3 = {
|
|
36393
|
-
root
|
|
36830
|
+
root,
|
|
36394
36831
|
treeItemHeader,
|
|
36395
36832
|
treeItemLabel,
|
|
36396
36833
|
treeItemMetaText,
|
|
@@ -36407,8 +36844,8 @@ const vmContentHeaderLogo = "vmContentHeaderLogo_FRJDO";
|
|
|
36407
36844
|
const vmContentHeaderTitle = "vmContentHeaderTitle_lYmde";
|
|
36408
36845
|
const vmContentHeaderTitleText = "vmContentHeaderTitleText_RlIFH";
|
|
36409
36846
|
const vmContentControlPanel = "vmContentControlPanel_CgUN9";
|
|
36410
|
-
const vmContentControlPanelActions = "vmContentControlPanelActions_lONbA";
|
|
36411
36847
|
const vmContentInput = "vmContentInput_29GM1";
|
|
36848
|
+
const vmContentControlPanelActions = "vmContentControlPanelActions_lONbA";
|
|
36412
36849
|
const filled = "filled_6JZa0";
|
|
36413
36850
|
const vmContentVirtualized = "vmContentVirtualized_lia62";
|
|
36414
36851
|
const gradientBlur = "gradientBlur_-y-re";
|
|
@@ -36422,8 +36859,8 @@ const css$2 = {
|
|
|
36422
36859
|
vmContentHeaderTitle,
|
|
36423
36860
|
vmContentHeaderTitleText,
|
|
36424
36861
|
vmContentControlPanel,
|
|
36425
|
-
vmContentControlPanelActions,
|
|
36426
36862
|
vmContentInput,
|
|
36863
|
+
vmContentControlPanelActions,
|
|
36427
36864
|
filled,
|
|
36428
36865
|
vmContentVirtualized,
|
|
36429
36866
|
gradientBlur
|
|
@@ -37152,191 +37589,6 @@ const VmDevtoolsPopup = observer(() => {
|
|
|
37152
37589
|
void 0
|
|
37153
37590
|
);
|
|
37154
37591
|
});
|
|
37155
|
-
function isObject(value) {
|
|
37156
|
-
var type = typeof value;
|
|
37157
|
-
return value != null && (type == "object" || type == "function");
|
|
37158
|
-
}
|
|
37159
|
-
var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
|
|
37160
|
-
var freeSelf = typeof self == "object" && self && self.Object === Object && self;
|
|
37161
|
-
var root = freeGlobal || freeSelf || Function("return this")();
|
|
37162
|
-
var now = function() {
|
|
37163
|
-
return root.Date.now();
|
|
37164
|
-
};
|
|
37165
|
-
var reWhitespace = /\s/;
|
|
37166
|
-
function trimmedEndIndex(string2) {
|
|
37167
|
-
var index = string2.length;
|
|
37168
|
-
while (index-- && reWhitespace.test(string2.charAt(index))) {
|
|
37169
|
-
}
|
|
37170
|
-
return index;
|
|
37171
|
-
}
|
|
37172
|
-
var reTrimStart = /^\s+/;
|
|
37173
|
-
function baseTrim(string2) {
|
|
37174
|
-
return string2 ? string2.slice(0, trimmedEndIndex(string2) + 1).replace(reTrimStart, "") : string2;
|
|
37175
|
-
}
|
|
37176
|
-
var Symbol$1 = root.Symbol;
|
|
37177
|
-
var objectProto$1 = Object.prototype;
|
|
37178
|
-
var hasOwnProperty = objectProto$1.hasOwnProperty;
|
|
37179
|
-
var nativeObjectToString$1 = objectProto$1.toString;
|
|
37180
|
-
var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0;
|
|
37181
|
-
function getRawTag(value) {
|
|
37182
|
-
var isOwn = hasOwnProperty.call(value, symToStringTag$1), tag = value[symToStringTag$1];
|
|
37183
|
-
try {
|
|
37184
|
-
value[symToStringTag$1] = void 0;
|
|
37185
|
-
var unmasked = true;
|
|
37186
|
-
} catch (e) {
|
|
37187
|
-
}
|
|
37188
|
-
var result = nativeObjectToString$1.call(value);
|
|
37189
|
-
if (unmasked) {
|
|
37190
|
-
if (isOwn) {
|
|
37191
|
-
value[symToStringTag$1] = tag;
|
|
37192
|
-
} else {
|
|
37193
|
-
delete value[symToStringTag$1];
|
|
37194
|
-
}
|
|
37195
|
-
}
|
|
37196
|
-
return result;
|
|
37197
|
-
}
|
|
37198
|
-
var objectProto = Object.prototype;
|
|
37199
|
-
var nativeObjectToString = objectProto.toString;
|
|
37200
|
-
function objectToString(value) {
|
|
37201
|
-
return nativeObjectToString.call(value);
|
|
37202
|
-
}
|
|
37203
|
-
var nullTag = "[object Null]", undefinedTag = "[object Undefined]";
|
|
37204
|
-
var symToStringTag = Symbol$1 ? Symbol$1.toStringTag : void 0;
|
|
37205
|
-
function baseGetTag(value) {
|
|
37206
|
-
if (value == null) {
|
|
37207
|
-
return value === void 0 ? undefinedTag : nullTag;
|
|
37208
|
-
}
|
|
37209
|
-
return symToStringTag && symToStringTag in Object(value) ? getRawTag(value) : objectToString(value);
|
|
37210
|
-
}
|
|
37211
|
-
function isObjectLike(value) {
|
|
37212
|
-
return value != null && typeof value == "object";
|
|
37213
|
-
}
|
|
37214
|
-
var symbolTag = "[object Symbol]";
|
|
37215
|
-
function isSymbol(value) {
|
|
37216
|
-
return typeof value == "symbol" || isObjectLike(value) && baseGetTag(value) == symbolTag;
|
|
37217
|
-
}
|
|
37218
|
-
var NAN = 0 / 0;
|
|
37219
|
-
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
|
|
37220
|
-
var reIsBinary = /^0b[01]+$/i;
|
|
37221
|
-
var reIsOctal = /^0o[0-7]+$/i;
|
|
37222
|
-
var freeParseInt = parseInt;
|
|
37223
|
-
function toNumber(value) {
|
|
37224
|
-
if (typeof value == "number") {
|
|
37225
|
-
return value;
|
|
37226
|
-
}
|
|
37227
|
-
if (isSymbol(value)) {
|
|
37228
|
-
return NAN;
|
|
37229
|
-
}
|
|
37230
|
-
if (isObject(value)) {
|
|
37231
|
-
var other = typeof value.valueOf == "function" ? value.valueOf() : value;
|
|
37232
|
-
value = isObject(other) ? other + "" : other;
|
|
37233
|
-
}
|
|
37234
|
-
if (typeof value != "string") {
|
|
37235
|
-
return value === 0 ? value : +value;
|
|
37236
|
-
}
|
|
37237
|
-
value = baseTrim(value);
|
|
37238
|
-
var isBinary = reIsBinary.test(value);
|
|
37239
|
-
return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
|
|
37240
|
-
}
|
|
37241
|
-
var FUNC_ERROR_TEXT$1 = "Expected a function";
|
|
37242
|
-
var nativeMax = Math.max, nativeMin = Math.min;
|
|
37243
|
-
function debounce(func, wait, options) {
|
|
37244
|
-
var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
|
|
37245
|
-
if (typeof func != "function") {
|
|
37246
|
-
throw new TypeError(FUNC_ERROR_TEXT$1);
|
|
37247
|
-
}
|
|
37248
|
-
wait = toNumber(wait) || 0;
|
|
37249
|
-
if (isObject(options)) {
|
|
37250
|
-
leading = !!options.leading;
|
|
37251
|
-
maxing = "maxWait" in options;
|
|
37252
|
-
maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
|
|
37253
|
-
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
37254
|
-
}
|
|
37255
|
-
function invokeFunc(time) {
|
|
37256
|
-
var args = lastArgs, thisArg = lastThis;
|
|
37257
|
-
lastArgs = lastThis = void 0;
|
|
37258
|
-
lastInvokeTime = time;
|
|
37259
|
-
result = func.apply(thisArg, args);
|
|
37260
|
-
return result;
|
|
37261
|
-
}
|
|
37262
|
-
function leadingEdge(time) {
|
|
37263
|
-
lastInvokeTime = time;
|
|
37264
|
-
timerId = setTimeout(timerExpired, wait);
|
|
37265
|
-
return leading ? invokeFunc(time) : result;
|
|
37266
|
-
}
|
|
37267
|
-
function remainingWait(time) {
|
|
37268
|
-
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, timeWaiting = wait - timeSinceLastCall;
|
|
37269
|
-
return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;
|
|
37270
|
-
}
|
|
37271
|
-
function shouldInvoke(time) {
|
|
37272
|
-
var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
|
|
37273
|
-
return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
|
|
37274
|
-
}
|
|
37275
|
-
function timerExpired() {
|
|
37276
|
-
var time = now();
|
|
37277
|
-
if (shouldInvoke(time)) {
|
|
37278
|
-
return trailingEdge(time);
|
|
37279
|
-
}
|
|
37280
|
-
timerId = setTimeout(timerExpired, remainingWait(time));
|
|
37281
|
-
}
|
|
37282
|
-
function trailingEdge(time) {
|
|
37283
|
-
timerId = void 0;
|
|
37284
|
-
if (trailing && lastArgs) {
|
|
37285
|
-
return invokeFunc(time);
|
|
37286
|
-
}
|
|
37287
|
-
lastArgs = lastThis = void 0;
|
|
37288
|
-
return result;
|
|
37289
|
-
}
|
|
37290
|
-
function cancel() {
|
|
37291
|
-
if (timerId !== void 0) {
|
|
37292
|
-
clearTimeout(timerId);
|
|
37293
|
-
}
|
|
37294
|
-
lastInvokeTime = 0;
|
|
37295
|
-
lastArgs = lastCallTime = lastThis = timerId = void 0;
|
|
37296
|
-
}
|
|
37297
|
-
function flush() {
|
|
37298
|
-
return timerId === void 0 ? result : trailingEdge(now());
|
|
37299
|
-
}
|
|
37300
|
-
function debounced() {
|
|
37301
|
-
var time = now(), isInvoking = shouldInvoke(time);
|
|
37302
|
-
lastArgs = arguments;
|
|
37303
|
-
lastThis = this;
|
|
37304
|
-
lastCallTime = time;
|
|
37305
|
-
if (isInvoking) {
|
|
37306
|
-
if (timerId === void 0) {
|
|
37307
|
-
return leadingEdge(lastCallTime);
|
|
37308
|
-
}
|
|
37309
|
-
if (maxing) {
|
|
37310
|
-
clearTimeout(timerId);
|
|
37311
|
-
timerId = setTimeout(timerExpired, wait);
|
|
37312
|
-
return invokeFunc(lastCallTime);
|
|
37313
|
-
}
|
|
37314
|
-
}
|
|
37315
|
-
if (timerId === void 0) {
|
|
37316
|
-
timerId = setTimeout(timerExpired, wait);
|
|
37317
|
-
}
|
|
37318
|
-
return result;
|
|
37319
|
-
}
|
|
37320
|
-
debounced.cancel = cancel;
|
|
37321
|
-
debounced.flush = flush;
|
|
37322
|
-
return debounced;
|
|
37323
|
-
}
|
|
37324
|
-
var FUNC_ERROR_TEXT = "Expected a function";
|
|
37325
|
-
function throttle(func, wait, options) {
|
|
37326
|
-
var leading = true, trailing = true;
|
|
37327
|
-
if (typeof func != "function") {
|
|
37328
|
-
throw new TypeError(FUNC_ERROR_TEXT);
|
|
37329
|
-
}
|
|
37330
|
-
if (isObject(options)) {
|
|
37331
|
-
leading = "leading" in options ? !!options.leading : leading;
|
|
37332
|
-
trailing = "trailing" in options ? !!options.trailing : trailing;
|
|
37333
|
-
}
|
|
37334
|
-
return debounce(func, wait, {
|
|
37335
|
-
"leading": leading,
|
|
37336
|
-
"maxWait": wait,
|
|
37337
|
-
"trailing": trailing
|
|
37338
|
-
});
|
|
37339
|
-
}
|
|
37340
37592
|
var __assign = function() {
|
|
37341
37593
|
__assign = Object.assign || function __assign2(t) {
|
|
37342
37594
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -38276,146 +38528,6 @@ const DevtoolsClient = withViewModel(DevtoolsClientVM, ({ model }) => {
|
|
|
38276
38528
|
columnNumber: 5
|
|
38277
38529
|
}, void 0);
|
|
38278
38530
|
});
|
|
38279
|
-
class LinkedAbortController extends AbortController {
|
|
38280
|
-
constructor(...abortSignals) {
|
|
38281
|
-
super();
|
|
38282
|
-
this.link(...abortSignals);
|
|
38283
|
-
}
|
|
38284
|
-
link(...abortSignals) {
|
|
38285
|
-
abortSignals.forEach((abortSignal) => {
|
|
38286
|
-
abortSignal?.addEventListener("abort", () => {
|
|
38287
|
-
this.abort(abortSignal.reason);
|
|
38288
|
-
});
|
|
38289
|
-
});
|
|
38290
|
-
}
|
|
38291
|
-
}
|
|
38292
|
-
const callFunction = (fn, ...args) => {
|
|
38293
|
-
if (typeof fn === "function") {
|
|
38294
|
-
return fn(...args);
|
|
38295
|
-
}
|
|
38296
|
-
return fn;
|
|
38297
|
-
};
|
|
38298
|
-
let KeyboardHandler$1 = class KeyboardHandler {
|
|
38299
|
-
constructor(config) {
|
|
38300
|
-
this.config = config;
|
|
38301
|
-
this.abortController = new LinkedAbortController(config.abortSignal);
|
|
38302
|
-
this.activateStrategy = this.config.activateStrategy ?? {
|
|
38303
|
-
type: "immidiately"
|
|
38304
|
-
};
|
|
38305
|
-
this.isActivated = !!(this.activateStrategy.type === "immidiately");
|
|
38306
|
-
observable.ref(this, "isActivated");
|
|
38307
|
-
observable.ref(this, "localActions");
|
|
38308
|
-
computed.struct(this, "actions");
|
|
38309
|
-
action.bound(this, "handleKeyboardClick");
|
|
38310
|
-
action.bound(this, "setActions");
|
|
38311
|
-
makeObservable(this);
|
|
38312
|
-
if (this.activateStrategy.type === "element-focus") {
|
|
38313
|
-
const ref = this.activateStrategy.ref;
|
|
38314
|
-
let nodeAbortController = new LinkedAbortController();
|
|
38315
|
-
reaction(
|
|
38316
|
-
() => ref.current,
|
|
38317
|
-
(node) => {
|
|
38318
|
-
if (node) {
|
|
38319
|
-
if (globalThis.document?.activeElement === node) {
|
|
38320
|
-
this.activate();
|
|
38321
|
-
}
|
|
38322
|
-
node.addEventListener("focus", this.activate, {
|
|
38323
|
-
signal: nodeAbortController.signal
|
|
38324
|
-
});
|
|
38325
|
-
node.addEventListener("blur", this.deactivate, {
|
|
38326
|
-
signal: nodeAbortController.signal
|
|
38327
|
-
});
|
|
38328
|
-
} else {
|
|
38329
|
-
nodeAbortController.abort();
|
|
38330
|
-
nodeAbortController = new LinkedAbortController(
|
|
38331
|
-
this.abortController.signal
|
|
38332
|
-
);
|
|
38333
|
-
}
|
|
38334
|
-
},
|
|
38335
|
-
{ fireImmediately: true, signal: this.abortController.signal }
|
|
38336
|
-
);
|
|
38337
|
-
}
|
|
38338
|
-
globalThis.addEventListener("keydown", this.handleKeyboardClick, {
|
|
38339
|
-
signal: this.abortController.signal
|
|
38340
|
-
});
|
|
38341
|
-
if (config.activateStrategy?.type === "keyclick") {
|
|
38342
|
-
globalThis.addEventListener("click", this.activate, {
|
|
38343
|
-
signal: this.abortController.signal
|
|
38344
|
-
});
|
|
38345
|
-
globalThis.addEventListener("mousemove", this.activate, {
|
|
38346
|
-
signal: this.abortController.signal
|
|
38347
|
-
});
|
|
38348
|
-
}
|
|
38349
|
-
}
|
|
38350
|
-
abortController;
|
|
38351
|
-
activateStrategy;
|
|
38352
|
-
localActions;
|
|
38353
|
-
/**
|
|
38354
|
-
* Is user using keyboard input
|
|
38355
|
-
*/
|
|
38356
|
-
isActivated;
|
|
38357
|
-
/**
|
|
38358
|
-
* User actions
|
|
38359
|
-
*/
|
|
38360
|
-
get actions() {
|
|
38361
|
-
const usingActions = this.localActions ?? this.config.actions;
|
|
38362
|
-
return callFunction(usingActions) ?? [];
|
|
38363
|
-
}
|
|
38364
|
-
setActions(actions) {
|
|
38365
|
-
this.localActions = actions;
|
|
38366
|
-
}
|
|
38367
|
-
activate = () => {
|
|
38368
|
-
if (this.isActivated) {
|
|
38369
|
-
return;
|
|
38370
|
-
}
|
|
38371
|
-
this.isActivated = true;
|
|
38372
|
-
this.config.onActivate?.();
|
|
38373
|
-
};
|
|
38374
|
-
deactivate = () => {
|
|
38375
|
-
if (!this.isActivated) {
|
|
38376
|
-
return;
|
|
38377
|
-
}
|
|
38378
|
-
this.isActivated = false;
|
|
38379
|
-
this.config.onDeactivate?.();
|
|
38380
|
-
};
|
|
38381
|
-
handleKeyboardClick(event) {
|
|
38382
|
-
this.config.onKeyClick?.(event);
|
|
38383
|
-
if (this.activateStrategy.type === "keyclick") {
|
|
38384
|
-
this.activate();
|
|
38385
|
-
}
|
|
38386
|
-
if (!this.isActivated) {
|
|
38387
|
-
return;
|
|
38388
|
-
}
|
|
38389
|
-
for (let i = 0; i < this.actions.length; i++) {
|
|
38390
|
-
const action2 = this.actions[i];
|
|
38391
|
-
const disabled2 = callFunction(action2.disabled);
|
|
38392
|
-
if (disabled2) {
|
|
38393
|
-
continue;
|
|
38394
|
-
}
|
|
38395
|
-
for (let j = 0; j < action2.shortcuts.length; j++) {
|
|
38396
|
-
const shortcut = action2.shortcuts[j];
|
|
38397
|
-
const keys = shortcut.split("+");
|
|
38398
|
-
if (keys.every((key) => this.checkKey(event, key))) {
|
|
38399
|
-
runInAction(() => {
|
|
38400
|
-
action2.action(event);
|
|
38401
|
-
});
|
|
38402
|
-
return;
|
|
38403
|
-
}
|
|
38404
|
-
}
|
|
38405
|
-
}
|
|
38406
|
-
}
|
|
38407
|
-
checkKey(event, key) {
|
|
38408
|
-
if (key === "Shift" && event.shiftKey) return true;
|
|
38409
|
-
if ((key === "Ctrl" || key === "Control") && event.ctrlKey) return true;
|
|
38410
|
-
if (key === "Alt" && event.altKey) return true;
|
|
38411
|
-
if ((key === "Windows" || key === "Meta" || key === "Command" || key === "⌘" || key === "Win") && event.metaKey)
|
|
38412
|
-
return true;
|
|
38413
|
-
return key === event.key || key === event.code;
|
|
38414
|
-
}
|
|
38415
|
-
destroy() {
|
|
38416
|
-
this.abortController.abort();
|
|
38417
|
-
}
|
|
38418
|
-
};
|
|
38419
38531
|
class KeyboardHandler2 extends KeyboardHandler$1 {
|
|
38420
38532
|
constructor(devtools) {
|
|
38421
38533
|
super({
|
|
@@ -38603,14 +38715,14 @@ class SearchEngine {
|
|
|
38603
38715
|
class ViewModelDevtools {
|
|
38604
38716
|
constructor(config) {
|
|
38605
38717
|
this.config = config;
|
|
38606
|
-
this.isPopupOpened = !!this.config.defaultIsOpened;
|
|
38718
|
+
this.isPopupOpened = this.storage.get({ key: "isPopupOpened" }) ?? !!this.config.defaultIsOpened;
|
|
38607
38719
|
this.displayType = "popup";
|
|
38608
|
-
this.position = this.config.position ?? "top-right";
|
|
38720
|
+
this.position = this.storage.get({ key: "position" }) ?? this.config.position ?? "top-right";
|
|
38609
38721
|
this.vmStore = new ViewModelStoreImpl();
|
|
38610
38722
|
this.setExtras(this.config.extras);
|
|
38611
38723
|
this.setStore(this.config.viewModels);
|
|
38612
|
-
this.presentationMode = "tree";
|
|
38613
|
-
this.sortPropertiesBy = "none";
|
|
38724
|
+
this.presentationMode = this.storage.get({ key: "presentationMode" }) ?? "tree";
|
|
38725
|
+
this.sortPropertiesBy = this.storage.get({ key: "sortPropertiesBy" }) ?? "none";
|
|
38614
38726
|
this.expandedVmItemsPaths = observable.set();
|
|
38615
38727
|
this.logoUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAACTFBMVEUvEQFCGQIuEQFAGALpZhjoZhlgJANAGALrZhiAMAR1KwNKHAJXIAM4FQFsKgWUNgL09PYvEQCgPARoJwNRHgL////U0dCoSRGSPgzFTQljKwl5MggjDQHm5ORWsU2JNATWWBC4SQxsMQysQAX6+vra2NbMUQtRJQxWLgu/SAXf3t62tLOyr6zCbTecSxmyQQLIxcDAvbqbmZaVeWeKc2WgRBB/OhCMOQu4QwPt7e/DuLCYz5NoOB2tqqdsaGVhW1NagUJtTjtkYCe8XyaRRRiHRRTi29XKyMfr0cG2p5yag3JfVElMR0GfcjBVMx/KWRnoYxXdXhRzQBB0OA3n6OrOzM2npKPLq5frs5TUpo2umounkHp3cm6mgWqBbGB8aVZzYVBXnktWT0eYY0BYZzOGazGmWi3IYid1QSOxTxZYSBQ6IBFFJA6lPAP/8uvR2s3qybbSwLW8q6G3nYigm4B8fHvxonW9kXWSjGhrgl5vZlpZqk+ZdE5cjE16fkzuh0q9eUetcUKAWEBpdj90bjg/PDfteDRZdTGwaS6sYCljVCl2TCflbCJZYSKlVSJfRh/dZB2OWR1nRhFfNRHO48zo1crjwamuv5SfqpSXtpGro4bEm4SMhoGFu3yQlHqFf3l5tHKtjHCFe2ageWLSimBnYFuue1hYlk1uikCCYT5XijqRWjdNPTLRcS5VVCC7WB3WYBtsTRYmHBNYPxLA3bzwv6LVsZ+4tJyQxYqHqHvVlnJzn2uegF39l1t1oEiKjzyAdjpeRDShaClCLR/JXT/FAAAABnRSTlP7uLgrtivDuZKUAAAElElEQVQ4yyWURXsbMRRFpyRF0vCM2a6ZmWPXYWqwTVKGMDRNUmZmZmZmZub+scrp3bzN+e65q8dMmQwBwqwKnLZTNrsVDW/Y8P3AgRJPKcK8ykHIMZOmMJMgAYAlimCwGQRsHdHpayOv2tsN4wJmIZTMEiSTGMgRQoCC/B5ZAYIu/fylIthsBlkAHCeZKaNChuE4yKkA2w2IAKtdhyNpWY76ZUwkFZkIUFmeNTPU6vUadSMOOg2htNWURRhRkwQBr9OlHXQNYTipbVHZ6tX5JiPGKgsgUBQWUgckMDX/woIFC+uwzEhcWz43J6ANVgEC+dpIrcJyEp8+MeR4k4hpz696PyTIdBMZ+jAv0RBqGXPUZkw1YT0AEtCFw/3NiVgiVbWMR5hCJnnZs5uB+PoeB4pk9OFaoM9adTVDXeXzGm7+9fI8AIwEsiwBV12BYIWZmCL6DIBGozGt8+6vCLmbOp8e0vF0uMKzrH7hnHii3GyGpgjiOcLr9QDubwlaFj3d9oD6GcIqQM1enVO25FobqD1x2IQIp/KAjPUtabCs7e/fHR7hGQAUDqKN4rz9fb/XrJrf76gzcuqexsY91xJaS2Pq7oNdNVaGZ4kElaWituXNaF50b3p8uoN451m02y6VaS1rkksXbwybGMJBSMBSSy5YPtqUs6zbse816HHn8jsuB91zGpNNi2/vyjAsYGmSWm080VblFj9WV589eylnSR7ZnHDnGrvvbNq2K8JgwALCJhtCFVsKjnwgftLnexsKxE4uHyiPB9ZV79s3uHuYwbSKA3e1oeYWn3GxO17lW34kblnke7F5SVCb8lUf6aibxSgYEAhS2mDfs1GuKqa98WLghltb5Tv+dX1obtdY5YBD384gpAIWbmkI9TR7Ve+awMrNe1eK1Hbw1voQbTr46PSrEsaOAVak+7F8d/OYz5sMiJc/uzQXB45Xfpo719L0tvrn85ISxmYFkFe7YmXdPaNecHSueO6cRrzV++TJDFF0rVt+pvVYEbIDs0RS2rKKLW2s0bgoJ7o077ZunT59hkajuXKm82XJBKRAs5R0l/VVnOWNxscB0eW63jt9AnJd6ch6JiCnwkJzyhJqqSjwDkdHXnSt3P7wPyQuNgkTkB1jOryrPth8v+Do7Oz8Vl+/6eD2CZ1LXKsXxtsp5EQAQph0B8vLl2FTpq7u6NEzxysfFiHRchsjq392CQN4IJkLa93xJd0Zkykbqct0vK6urOwtNlmWYgVFKQQh6yvsnl8fu0OLsD4dOXF6cO/eyu2910WNuGDnvfApqlPUwoYFq2bWr97D026driZ8uHVw8NeORz8uipoVK1wrdhZ1oHDvy8KF8zfqMUZpnW54uKbm8KFDf1pbWy+cn0lThFSWEG/WaOQF2SrbnbJ9Fo3H4xnJoKzDaNJTG90kQcIKCAAcLaVxGuz0B/k9HpssOJ0I20uKEGOGHCsIPAAoGnU6x52lfkPU7zfMNsjRUsFqmIAmmzmJIISBCpAgO6OCMC7T47H5BdqP2ikzlb5DxswBjAAhvFX2+2UrRgIyHDtwzGMoFexFZto/HbAJBdFwHOYAAAAASUVORK5CYII=";
|
|
38616
38728
|
this.scrollContentRef = createRef();
|
|
@@ -38654,6 +38766,10 @@ class ViewModelDevtools {
|
|
|
38654
38766
|
sortPropertiesBy;
|
|
38655
38767
|
position;
|
|
38656
38768
|
scrollListRef;
|
|
38769
|
+
storage = new Storage({
|
|
38770
|
+
namespace: "mobx-view-model-devtools",
|
|
38771
|
+
type: "local"
|
|
38772
|
+
});
|
|
38657
38773
|
anyCache = observable.map();
|
|
38658
38774
|
autoscrollTimeout;
|
|
38659
38775
|
get allVms() {
|
|
@@ -38780,6 +38896,10 @@ class ViewModelDevtools {
|
|
|
38780
38896
|
}, 200);
|
|
38781
38897
|
}
|
|
38782
38898
|
);
|
|
38899
|
+
this.storage.syncProperty(this, "isPopupOpened");
|
|
38900
|
+
this.storage.syncProperty(this, "sortPropertiesBy");
|
|
38901
|
+
this.storage.syncProperty(this, "presentationMode");
|
|
38902
|
+
this.storage.syncProperty(this, "position");
|
|
38783
38903
|
}
|
|
38784
38904
|
isInitialized = false;
|
|
38785
38905
|
render() {
|