atom.io 0.33.13 → 0.33.14

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 (37) hide show
  1. package/dist/data/index.js.map +1 -1
  2. package/dist/eslint-plugin/index.js.map +1 -1
  3. package/dist/internal/index.js +25 -23
  4. package/dist/internal/index.js.map +1 -1
  5. package/dist/introspection/index.d.ts +7 -7
  6. package/dist/introspection/index.d.ts.map +1 -1
  7. package/dist/introspection/index.js +26 -38
  8. package/dist/introspection/index.js.map +1 -1
  9. package/dist/json/index.js.map +1 -1
  10. package/dist/main/index.js +11 -11
  11. package/dist/main/index.js.map +1 -1
  12. package/dist/react/index.js.map +1 -1
  13. package/dist/react-devtools/index.css +110 -56
  14. package/dist/react-devtools/index.css.map +1 -1
  15. package/dist/react-devtools/index.js +38 -14
  16. package/dist/react-devtools/index.js.map +1 -1
  17. package/dist/realtime/index.js.map +1 -1
  18. package/dist/realtime-client/index.js.map +1 -1
  19. package/dist/realtime-react/index.js.map +1 -1
  20. package/dist/realtime-server/index.js.map +1 -1
  21. package/dist/realtime-testing/index.js.map +1 -1
  22. package/dist/transceivers/set-rtx/index.js.map +1 -1
  23. package/dist/use-o-BrXc7Qro.js.map +1 -1
  24. package/dist/web/index.js.map +1 -1
  25. package/package.json +6 -6
  26. package/src/internal/transaction/create-transaction.ts +9 -5
  27. package/src/introspection/attach-atom-index.ts +6 -15
  28. package/src/introspection/attach-introspection-states.ts +5 -5
  29. package/src/introspection/attach-selector-index.ts +78 -85
  30. package/src/introspection/attach-timeline-index.ts +5 -12
  31. package/src/introspection/attach-transaction-index.ts +18 -16
  32. package/src/introspection/auditor.ts +2 -3
  33. package/src/react-devtools/StateIndex.tsx +44 -20
  34. package/src/react-devtools/TimelineIndex.tsx +16 -12
  35. package/src/react-devtools/TransactionIndex.tsx +22 -18
  36. package/src/react-devtools/devtools.css +110 -56
  37. package/src/react-devtools/store.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.css","names":[],"sources":["../../src/react-devtools/devtools.css"],"sourcesContent":["main[data-css=\"atom_io_devtools\"] {\n\t--fg-color: #ccc;\n\t--fg-light: #aaa;\n\t--fg-soft: #888;\n\t--fg-faint: #777;\n\t--fg-hint: #4a4a4a;\n\t--fg-max: #fff;\n\t--bg-color: #111;\n\t--bg-accent: #00f;\n\t--bg-max: #000;\n\t--bg-tint1: #222;\n\t--bg-tint2: #333;\n\t--fg-border: 1px solid var(--fg-color);\n\t--fg-border-soft: 1px solid var(--fg-soft);\n\t--fg-border-hint: 1px solid var(--fg-hint);\n\t@media (prefers-color-scheme: light) {\n\t\t--fg-color: #444;\n\t\t--fg-light: #777;\n\t\t--fg-soft: #888;\n\t\t--fg-faint: #999;\n\t\t--fg-hint: #ccc;\n\t\t--fg-max: #000;\n\t\t--bg-color: #ddd;\n\t\t--bg-accent: #0ff;\n\t\t--bg-max: #fff;\n\t\t--bg-tint1: #e3e3e3;\n\t\t--bg-tint2: #f3f3f3;\n\t}\n\t* {\n\t\tbox-sizing: border-box;\n\t}\n\t& {\n\t\tpointer-events: all;\n\t\tbox-sizing: border-box;\n\t\tcolor: var(--fg-color);\n\t\tbackground-color: var(--bg-color);\n\t\tborder: 2px solid var(--fg-color);\n\t\tposition: fixed;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\theight: 100%;\n\t\tdisplay: flex;\n\t\tflex-flow: column;\n\t\tmax-height: 800px;\n\t\twidth: 100%;\n\t\tmax-width: 500px;\n\t\toverflow-y: scroll;\n\t}\n\t* {\n\t\tfont-size: 14px;\n\t\tfont-family: theia, monospace;\n\t\tline-height: 1em;\n\t\tcolor: var(--fg-color);\n\t}\n\t> header {\n\t\tpadding-bottom: 0;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\th1 {\n\t\t\tmargin: 2px 4px;\n\t\t\tfont-size: 24px;\n\t\t\tfont-family: charter, serif;\n\t\t}\n\t\tnav {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\tflex-flow: row nowrap;\n\t\t\tmargin-top: 4px;\n\t\t\toverflow-x: scroll;\n\t\t\toverflow-y: visible;\n\t\t\theight: 24px;\n\t\t\tbutton {\n\t\t\t\theight: 24px;\n\t\t\t\tcursor: pointer;\n\t\t\t\tbackground: none;\n\t\t\t\tborder: none;\n\t\t\t\tpadding: 0px 5px;\n\t\t\t\tmargin-bottom: -2px;\n\t\t\t\tz-index: 1000;\n\t\t\t\t&:disabled {\n\t\t\t\t\tcursor: default;\n\t\t\t\t\tbackground-color: var(--fg-color);\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t\tborder: var(--fg-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t> main {\n\t\tbackground: var(--bg-tint1);\n\t}\n\t> main::before {\n\t\tbackground-color: black;\n\t\theight: 10px;\n\t}\n\t> main {\n\t\toverflow-y: scroll;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-flow: column;\n\t\tgap: 0;\n\t\tarticle.index {\n\t\t\tmargin-bottom: 24px;\n\t\t\tborder-bottom: var(--fg-border);\n\t\t\t.node .node {\n\t\t\t\tborder-right: var(--fg-border);\n\t\t\t\tpadding-right: 0;\n\t\t\t\tbackground: #ffffff08;\n\t\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\t\tbackground: #00000004;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.node > .node {\n\t\t\t\tmargin: 0px 0px 0px 9px;\n\t\t\t\tborder-left: var(--fg-border-soft);\n\t\t\t}\n\t\t\t.node {\n\t\t\t\tborder-top: var(--fg-border);\n\t\t\t\toverflow: visible;\n\n\t\t\t\t&.transaction_update {\n\t\t\t\t\tpadding: 0;\n\t\t\t\t}\n\t\t\t\t> header {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-flow: row;\n\t\t\t\t\tjustify-content: space-between;\n\t\t\t\t\tposition: sticky;\n\t\t\t\t\tz-index: 999;\n\t\t\t\t\ttop: 0;\n\t\t\t\t\theight: 22px;\n\t\t\t\t\tbackground: var(--bg-tint2);\n\t\t\t\t\tborder-bottom: none;\n\t\t\t\t\t> main {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-flow: row;\n\t\t\t\t\t\tcursor: help;\n\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\tflex-shrink: 0;\n\t\t\t\t\t\t* {\n\t\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\t\talign-content: center;\n\t\t\t\t\t\t\tjustify-content: center;\n\t\t\t\t\t\t}\n\t\t\t\t\t\th2 {\n\t\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t.detail {\n\t\t\t\t\t\t\tmargin-left: 5px;\n\t\t\t\t\t\t\tcolor: #777;\n\t\t\t\t\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\t\t\t\t\tcolor: #999;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t> .json_editor {\n\t\t\t\t\t\tborder-left: var(--fg-border-soft);\n\t\t\t\t\t\tpadding: 3px 0px;\n\t\t\t\t\t}\n\t\t\t\t\t> .json_viewer {\n\t\t\t\t\t\tcolor: var(--fg-light);\n\t\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\t\tflex-shrink: 1;\n\t\t\t\t\t}\n\t\t\t\t\t> .json_editor,\n\t\t\t\t\t> .json_viewer {\n\t\t\t\t\t\tmargin-left: 3px;\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-shrink: 1;\n\t\t\t\t\t\tz-index: -1;\n\t\t\t\t\t\toverflow-x: scroll;\n\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\twhite-space: pre;\n\t\t\t\t\t\tbackground: var(--bg-tint2);\n\t\t\t\t\t\t&:focus-within {\n\t\t\t\t\t\t\tbackground-color: var(--bg-max);\n\t\t\t\t\t\t\toutline: 2px solid var(--fg-max);\n\t\t\t\t\t\t\t* {\n\t\t\t\t\t\t\t\tcolor: var(--fg-max);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t&.nu * {\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t> span {\n\t\t\t\t\t\t\tpadding: 0px 5px;\n\t\t\t\t\t\t\tz-index: 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tinput {\n\t\t\t\t\t\t\toutline: none;\n\t\t\t\t\t\t\tmin-width: 10px;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tsection.transaction_log {\n\t\t\t\tmargin-top: 0;\n\t\t\t\tmain {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-flow: row wrap;\n\t\t\t\t\tgap: 5px;\n\t\t\t\t\t.transaction_update {\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-flow: row;\n\t\t\t\t\t\talign-items: flex-start;\n\t\t\t\t\t\tjustify-content: flex-start;\n\t\t\t\t\t\tjustify-items: flex-start;\n\t\t\t\t\t\talign-content: flex-start;\n\t\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\t\tborder-top: var(--fg-border);\n\t\t\t\t\t\theader {\n\t\t\t\t\t\t\tpadding: 5px;\n\t\t\t\t\t\t\th4 {\n\t\t\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t\t\tpadding: 0;\n\t\t\t\t\t\t\t\tfont-size: inherit;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmain {\n\t\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\tflex-flow: column;\n\t\t\t\t\t\t\tgap: 0px;\n\t\t\t\t\t\t\tborder-left: 1px solid #333;\n\t\t\t\t\t\t\tsection ~ section {\n\t\t\t\t\t\t\t\tborder-top: 1px solid #333;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsection {\n\t\t\t\t\t\t\t\tpadding: 5px;\n\t\t\t\t\t\t\t\t&.transaction_output {\n\t\t\t\t\t\t\t\t\tborder-right: none;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t&.transaction_impact {\n\t\t\t\t\t\t\t\t\tpadding: 5px;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t\t\tarticle {\n\t\t\t\t\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\t\t\t\t\tborder-right: var(--fg-border);\n\t\t\t\t\t\t\t\t\t.summary {\n\t\t\t\t\t\t\t\t\t\twhite-space: nowrap;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tsection.timeline_log {\n\t\t\t\theader {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t> main {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t\t.gap {\n\t\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tnav {\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\tflex-flow: row nowrap;\n\t\t\t\t\t\t\tgap: 5px;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t.timeline_update {\n\t\t\t\t\tpadding: 5px;\n\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\th4 {\n\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\tpadding: 0;\n\t\t\t\t\t\tfont-size: inherit;\n\t\t\t\t\t}\n\t\t\t\t\tmain {\n\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t.node.atom_update {\n\t\t\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t.you_are_here {\n\t\t\t\t\tbackground: var(--fg-color);\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t> footer {\n\t\tdisplay: flex;\n\t\tjustify-content: flex-end;\n\t\tbutton {\n\t\t\tcursor: pointer;\n\t\t\tbackground: none;\n\t\t\tborder: none;\n\t\t\tpadding: none;\n\t\t\tposition: absolute;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t}\n\t}\n\n\t.json_editor {\n\t\tdisplay: flex;\n\t\tflex-flow: column;\n\t\talign-items: flex-start;\n\t\t> header {\n\t\t\twidth: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-flow: row;\n\t\t\talign-items: center;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tjustify-content: space-between;\n\t\t\t&:has(> main > button.carat) {\n\t\t\t\theight: 21px;\n\t\t\t}\n\t\t\t> main {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-flow: row;\n\t\t\t\talign-items: center;\n\t\t\t\tflex-shrink: 1;\n\t\t\t\toverflow-x: hidden;\n\t\t\t\talign-self: center;\n\t\t\t\t> .json_viewer {\n\t\t\t\t\tflex-shrink: 1;\n\t\t\t\t\toverflow-x: scroll;\n\t\t\t\t\theight: 21px;\n\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tmargin-left: 0px;\n\t\t\t\t\tcolor: var(--fg-soft);\n\t\t\t\t}\n\t\t\t\t> button {\n\t\t\t\t\tpadding: 0;\n\t\t\t\t\t&.carat {\n\t\t\t\t\t\tline-height: 0.5em;\n\t\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t> .json_editor_array,\n\t\t> .json_editor_object {\n\t\t\twidth: 100%;\n\t\t\tflex-grow: 1;\n\t\t}\n\t\tinput {\n\t\t\tfont-family: theia, monospace;\n\t\t\tbackground: none;\n\t\t\t&:disabled {\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t}\n\t\tinput,\n\t\tselect {\n\t\t\t&:focus-within {\n\t\t\t\toutline: 2px solid var(--fg-max);\n\t\t\t\tbackground: var(--bg-max);\n\t\t\t\tcolor: var(--fg-max);\n\t\t\t}\n\t\t}\n\n\t\tbutton:disabled {\n\t\t\tcursor: default;\n\t\t\t> span.json_editor_icon {\n\t\t\t\tcolor: var(--fg-hint);\n\t\t\t}\n\t\t\t&:hover {\n\t\t\t\tbackground: none;\n\t\t\t}\n\t\t}\n\t\tinput::selection {\n\t\t\tbackground: var(--bg-accent);\n\t\t}\n\n\t\tbutton {\n\t\t\tbackground: none;\n\t\t\tcolor: #777;\n\t\t\tborder: none;\n\t\t\tfont-family: theia, monospace;\n\t\t\tfont-size: 14px;\n\t\t\theight: 21px;\n\t\t\tmin-width: 21px;\n\t\t\tmargin: none;\n\t\t\tpadding: 4px;\n\t\t\tpadding-bottom: 6px;\n\t\t\tcursor: pointer;\n\t\t\t&:hover,\n\t\t\t&:focus-within {\n\t\t\t\tbackground-color: var(--fg-faint);\n\t\t\t\t&,\n\t\t\t\t> * {\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:active {\n\t\t\t\tbackground: var(--fg-color);\n\t\t\t\t&,\n\t\t\t\t> * {\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tselect {\n\t\t\tfont-family: theia, monospace;\n\t\t\tfont-size: 14px;\n\t\t\tbackground: none;\n\t\t\tborder: none;\n\t\t\tcolor: #777;\n\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\tcolor: #999;\n\t\t\t}\n\t\t}\n\t\t.json_editor_unofficial {\n\t\t\tbackground-color: #777;\n\t\t\tbutton {\n\t\t\t\tcolor: #333;\n\t\t\t}\n\t\t}\n\t\t.json_editor_missing {\n\t\t\tbackground-color: #f055;\n\t\t}\n\t\t.json_editor_key {\n\t\t\tpadding-right: 0px;\n\t\t\t&::after {\n\t\t\t\tcontent: \":\";\n\t\t\t\tcolor: var(--fg-soft);\n\t\t\t}\n\t\t\tinput {\n\t\t\t\tcolor: var(--fg-color);\n\t\t\t}\n\t\t}\n\t\t.json_editor_object,\n\t\t.json_editor_array {\n\t\t\tborder-left: var(--fg-border-soft);\n\t\t\tmargin-left: 9px;\n\t\t\twidth: calc(100% - 9px);\n\t\t\t> footer {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-flow: row;\n\t\t\t\tjustify-content: flex-start;\n\t\t\t\tjustify-items: flex-start;\n\t\t\t\theight: 21px;\n\t\t\t\talign-items: baseline;\n\t\t\t\tposition: relative;\n\t\t\t}\n\t\t\t.json_editor_properties,\n\t\t\t.json_editor_elements {\n\t\t\t\tborder-top: var(--fg-border-soft);\n\t\t\t\t.json_editor_property,\n\t\t\t\t.json_editor_element {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tborder-bottom: var(--fg-border-soft);\n\t\t\t\t\tmargin-bottom: 0;\n\t\t\t\t\tmin-height: 21px;\n\t\t\t\t\t> header {\n\t\t\t\t\t\t> main {\n\t\t\t\t\t\t\t> span {\n\t\t\t\t\t\t\t\tinput {\n\t\t\t\t\t\t\t\t\tmin-width: 10px;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t> * {\n\t\t\t\t\t\t\t\t\tborder: var(--fg-border-hint);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t&.readonly {\n\t\t\t\t\t.json_editor_property,\n\t\t\t\t\t.json_editor_element {\n\t\t\t\t\t\t&:last-of-type {\n\t\t\t\t\t\t\tborder-bottom: none;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tspan > * {\n\t\t\t\t\t\t\tborder: 1px solid transparent;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.json_editor_icon {\n\t\tcolor: var(--fg-soft);\n\t}\n\n\tbutton.carat {\n\t\tborder: none;\n\t\tcursor: pointer;\n\t\tbackground: none;\n\t\t> .json_editor_icon {\n\t\t\tline-height: 4px;\n\t\t}\n\t\t&.open {\n\t\t\ttransform: rotate(90deg);\n\t\t}\n\t\t&:disabled {\n\t\t\t> .json_editor_icon {\n\t\t\t\tcursor: default;\n\t\t\t\tcolor: var(--fg-hint);\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"index.css","names":[],"sources":["../../src/react-devtools/devtools.css"],"sourcesContent":["main[data-css=\"atom_io_devtools\"] {\n\t--fg-color: #ccc;\n\t--fg-light: #aaa;\n\t--fg-soft: #888;\n\t--fg-faint: #777;\n\t--fg-hint: #4a4a4a;\n\t--fg-max: #fff;\n\t--bg-color: #111;\n\t--bg-accent: #00f;\n\t--bg-max: #000;\n\t--bg-tint1: #222;\n\t--bg-tint2: #333;\n\t--fg-border: 1px solid var(--fg-color);\n\t--fg-border-soft: 1px solid var(--fg-soft);\n\t--fg-border-hint: 1px solid var(--fg-hint);\n\t@media (prefers-color-scheme: light) {\n\t\t--fg-color: #444;\n\t\t--fg-light: #777;\n\t\t--fg-soft: #888;\n\t\t--fg-faint: #999;\n\t\t--fg-hint: #ccc;\n\t\t--fg-max: #000;\n\t\t--bg-color: #ddd;\n\t\t--bg-accent: #0ff;\n\t\t--bg-max: #fff;\n\t\t--bg-tint1: #e3e3e3;\n\t\t--bg-tint2: #f3f3f3;\n\t}\n\t* {\n\t\tbox-sizing: border-box;\n\t}\n\t& {\n\t\tpointer-events: all;\n\t\tbox-sizing: border-box;\n\t\tcolor: var(--fg-color);\n\t\tbackground-color: var(--bg-color);\n\t\tborder: 2px solid var(--fg-color);\n\t\tposition: fixed;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\theight: 100%;\n\t\tdisplay: flex;\n\t\tflex-flow: column;\n\t\tmax-height: 800px;\n\t\twidth: 100%;\n\t\tmax-width: 500px;\n\t\toverflow-y: scroll;\n\t}\n\t* {\n\t\tfont-size: 14px;\n\t\tfont-family: theia, monospace;\n\t\tline-height: 1em;\n\t\tcolor: var(--fg-color);\n\t}\n\t> header {\n\t\tpadding-bottom: 0;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\th1 {\n\t\t\tmargin: 2px 4px;\n\t\t\tfont-size: 24px;\n\t\t\tfont-family: charter, serif;\n\t\t}\n\t\tnav {\n\t\t\tposition: relative;\n\t\t\tdisplay: flex;\n\t\t\tflex-flow: row nowrap;\n\t\t\tmargin-top: 4px;\n\t\t\toverflow-x: scroll;\n\t\t\toverflow-y: visible;\n\t\t\theight: 24px;\n\t\t\tbutton {\n\t\t\t\theight: 24px;\n\t\t\t\tcursor: pointer;\n\t\t\t\tbackground: none;\n\t\t\t\tborder: none;\n\t\t\t\tpadding: 0px 5px;\n\t\t\t\tmargin-bottom: -2px;\n\t\t\t\tz-index: 1000;\n\t\t\t\t&:disabled {\n\t\t\t\t\tcursor: default;\n\t\t\t\t\tbackground-color: var(--fg-color);\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t\tborder: var(--fg-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t> main {\n\t\tbackground: var(--bg-tint1);\n\t\toverflow-y: scroll;\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\tflex-flow: column;\n\t\tgap: 0;\n\t\tarticle.index {\n\t\t\tmargin-bottom: 0px;\n\t\t\tpadding-bottom: 24px;\n\t\t\tborder-top: var(--fg-border);\n\t\t\tmin-height: calc(100% - 24px);\n\t\t\tdisplay: flex;\n\t\t\tflex-shrink: 0;\n\t\t\tflex-flow: column;\n\t\t\t.node .node {\n\t\t\t\tborder-right: none;\n\t\t\t\tpadding-right: 0;\n\t\t\t\tbackground: #ffffff08;\n\t\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\t\tbackground: #00000004;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.index-empty-state {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tfont-style: italic;\n\t\t\t\tdisplay: flex;\n\t\t\t\tjustify-content: center;\n\t\t\t\talign-items: center;\n\t\t\t}\n\t\t\t.node > .node {\n\t\t\t\tmargin: 0px 0px 0px 9px;\n\t\t\t\twidth: calc(100% - 9px);\n\t\t\t\tborder-left: var(--fg-border-soft);\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tborder-top: var(--fg-border-soft);\n\t\t\t\t}\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-bottom: none;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.node {\n\t\t\t\tposition: relative;\n\t\t\t\tborder-bottom: var(--fg-border-soft);\n\t\t\t\toverflow: visible;\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-flow: column;\n\t\t\t\t&.transaction_update {\n\t\t\t\t\tpadding: 0;\n\t\t\t\t}\n\n\t\t\t\t> header {\n\t\t\t\t\twidth: auto;\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-flow: row;\n\t\t\t\t\tjustify-content: space-between;\n\t\t\t\t\tposition: sticky;\n\t\t\t\t\tz-index: 999;\n\t\t\t\t\ttop: 0;\n\t\t\t\t\theight: 22px;\n\t\t\t\t\tbackground: var(--bg-tint2);\n\t\t\t\t\tborder-bottom: none;\n\t\t\t\t\talign-items: center;\n\t\t\t\t\toverflow: hidden;\n\n\t\t\t\t\t> main {\n\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-flow: row;\n\t\t\t\t\t\tcursor: help;\n\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\tflex-shrink: 0;\n\t\t\t\t\t\t* {\n\t\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\t\talign-content: center;\n\t\t\t\t\t\t\tjustify-content: center;\n\t\t\t\t\t\t}\n\t\t\t\t\t\th2 {\n\t\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t> footer {\n\t\t\t\t\t\theight: 16px;\n\t\t\t\t\t\twidth: fit-content;\n\t\t\t\t\t\tmin-width: 0;\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tjustify-content: flex-start;\n\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\tflex-shrink: 1;\n\t\t\t\t\t\t> button {\n\t\t\t\t\t\t\tborder: none;\n\t\t\t\t\t\t\tbackground: none;\n\t\t\t\t\t\t\tborder-left: var(--fg-border-soft);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t> .json_viewer {\n\t\t\t\t\t\t\tcolor: var(--fg-light);\n\t\t\t\t\t\t\tflex-shrink: 1;\n\t\t\t\t\t\t\toverflow: scroll;\n\t\t\t\t\t\t\talign-self: center;\n\t\t\t\t\t\t\talign-items: flex-start;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t> .json_editor,\n\t\t\t\t\t\t> .json_viewer {\n\t\t\t\t\t\t\theight: 16px;\n\t\t\t\t\t\t\tmin-width: 10px;\n\t\t\t\t\t\t\tpadding-left: 4px;\n\t\t\t\t\t\t\tpadding-right: 2px;\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\tflex-flow: row;\n\t\t\t\t\t\t\tmargin-right: 0px;\n\t\t\t\t\t\t\toverflow-x: scroll;\n\t\t\t\t\t\t\talign-items: center;\n\t\t\t\t\t\t\tjustify-content: flex-start;\n\t\t\t\t\t\t\twhite-space: pre;\n\t\t\t\t\t\t\tborder-left: var(--fg-border-soft);\n\t\t\t\t\t\t\t&:focus-within {\n\t\t\t\t\t\t\t\tbackground-color: var(--bg-max);\n\t\t\t\t\t\t\t\toutline: 2px solid var(--fg-max);\n\t\t\t\t\t\t\t\t* {\n\t\t\t\t\t\t\t\t\tcolor: var(--fg-max);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmain {\n\t\t\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t> span {\n\t\t\t\t\t\t\t\tpadding: 0px 5px;\n\t\t\t\t\t\t\t\tz-index: 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tinput {\n\t\t\t\t\t\t\t\toutline: none;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t.detail {\n\t\t\t\t\t\tmargin-left: 5px;\n\t\t\t\t\t\tcolor: #777;\n\t\t\t\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\t\t\t\tcolor: #999;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tsection.transaction_log {\n\t\t\t\tmargin-top: 0;\n\t\t\t\tmain {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-flow: row wrap;\n\t\t\t\t\tgap: 0;\n\t\t\t\t\tarticle.transaction_update {\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\tflex-flow: row;\n\t\t\t\t\t\talign-items: flex-start;\n\t\t\t\t\t\tjustify-content: flex-start;\n\t\t\t\t\t\tjustify-items: flex-start;\n\t\t\t\t\t\talign-content: flex-start;\n\t\t\t\t\t\tborder-left: none;\n\t\t\t\t\t\tborder-bottom: none;\n\t\t\t\t\t\tborder-top: var(--fg-border);\n\t\t\t\t\t\theader {\n\t\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\t\tpadding: 5px;\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\tflex-flow: column;\n\t\t\t\t\t\t\th4 {\n\t\t\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t\t\tpadding: 0;\n\t\t\t\t\t\t\t\tfont-size: inherit;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmain {\n\t\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\tflex-flow: column;\n\t\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t\t\tgap: 0px;\n\t\t\t\t\t\t\tborder-left: 1px solid #333;\n\t\t\t\t\t\t\tsection ~ section {\n\t\t\t\t\t\t\t\tborder-top: 1px solid #333;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsection {\n\t\t\t\t\t\t\t\tpadding: 5px;\n\t\t\t\t\t\t\t\tborder-bottom: none;\n\t\t\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t\t\t&.transaction_output {\n\t\t\t\t\t\t\t\t\tborder-right: none;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t&.transaction_impact {\n\t\t\t\t\t\t\t\t\tpadding: 5px;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tarticle {\n\t\t\t\t\t\t\t\t\tpadding: 3px 6px;\n\t\t\t\t\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\t\t\t\t\tborder-right: var(--fg-border);\n\t\t\t\t\t\t\t\t\t&:first-of-type {\n\t\t\t\t\t\t\t\t\t\tborder-top: var(--fg-border);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t.summary {\n\t\t\t\t\t\t\t\t\t\twhite-space: nowrap;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tsection.timeline_log {\n\t\t\t\theader {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t> main {\n\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t\t.gap {\n\t\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tnav {\n\t\t\t\t\t\t\tdisplay: flex;\n\t\t\t\t\t\t\tflex-flow: row nowrap;\n\t\t\t\t\t\t\tgap: 5px;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t.timeline_update {\n\t\t\t\t\tpadding: 5px;\n\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\th4 {\n\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\tpadding: 0;\n\t\t\t\t\t\tfont-size: inherit;\n\t\t\t\t\t}\n\t\t\t\t\tmain {\n\t\t\t\t\t\tmargin: 0;\n\t\t\t\t\t\t.node.atom_update {\n\t\t\t\t\t\t\tborder-left: var(--fg-border);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t.you_are_here {\n\t\t\t\t\tbackground: var(--fg-color);\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t> footer {\n\t\tz-index: 10000;\n\t\tdisplay: flex;\n\t\tjustify-content: flex-end;\n\t\tbutton {\n\t\t\tcursor: pointer;\n\t\t\tbackground: none;\n\t\t\tborder: none;\n\t\t\tpadding: none;\n\t\t\tposition: absolute;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t}\n\t}\n\n\t.json_editor {\n\t\tdisplay: flex;\n\t\tflex-flow: column;\n\t\t> header {\n\t\t\twidth: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-flow: row;\n\t\t\talign-items: center;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tjustify-content: space-between;\n\t\t\t&:has(> main > button.carat) {\n\t\t\t\theight: 21px;\n\t\t\t}\n\t\t\t> main {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-flow: row;\n\t\t\t\talign-items: center;\n\t\t\t\talign-self: center;\n\t\t\t\tflex-shrink: 1;\n\t\t\t\toverflow-x: hidden;\n\t\t\t\tpadding-right: 2px;\n\t\t\t\t> .json_viewer {\n\t\t\t\t\tflex-shrink: 1;\n\t\t\t\t\toverflow-x: scroll;\n\t\t\t\t\theight: 21px;\n\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\talign-items: center;\n\t\t\t\t\tmargin-left: 0px;\n\t\t\t\t\tcolor: var(--fg-soft);\n\t\t\t\t}\n\t\t\t\t> button {\n\t\t\t\t\tpadding: 0;\n\t\t\t\t\t&.carat {\n\t\t\t\t\t\tline-height: 0.5em;\n\t\t\t\t\t\tfont-size: 14px;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t> .json_editor_array,\n\t\t> .json_editor_object {\n\t\t\twidth: 100%;\n\t\t\tflex-grow: 1;\n\t\t}\n\t\tinput {\n\t\t\tfont-family: theia, monospace;\n\t\t\tbackground: none;\n\t\t\t&:disabled {\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t}\n\t\tinput,\n\t\tselect {\n\t\t\t&:focus-within {\n\t\t\t\toutline: 2px solid var(--fg-max);\n\t\t\t\tbackground: var(--bg-max);\n\t\t\t\tcolor: var(--fg-max);\n\t\t\t}\n\t\t}\n\n\t\tbutton:disabled {\n\t\t\tcursor: default;\n\t\t\t> span.json_editor_icon {\n\t\t\t\tcolor: var(--fg-hint);\n\t\t\t}\n\t\t\t&:hover {\n\t\t\t\tbackground: none;\n\t\t\t}\n\t\t}\n\t\tinput::selection {\n\t\t\tbackground: var(--bg-accent);\n\t\t}\n\n\t\tbutton {\n\t\t\tbackground: none;\n\t\t\tcolor: #777;\n\t\t\tborder: none;\n\t\t\tfont-family: theia, monospace;\n\t\t\tfont-size: 14px;\n\t\t\theight: 21px;\n\t\t\tmin-width: 21px;\n\t\t\tmargin: none;\n\t\t\tpadding: 4px;\n\t\t\tpadding-bottom: 6px;\n\t\t\tcursor: pointer;\n\t\t\t&:hover,\n\t\t\t&:focus-within {\n\t\t\t\tbackground-color: var(--fg-faint);\n\t\t\t\t&,\n\t\t\t\t> * {\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:active {\n\t\t\t\tbackground: var(--fg-color);\n\t\t\t\t&,\n\t\t\t\t> * {\n\t\t\t\t\tcolor: var(--bg-color);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tselect {\n\t\t\tfont-family: theia, monospace;\n\t\t\tfont-size: 14px;\n\t\t\tbackground: none;\n\t\t\tborder: none;\n\t\t\tcolor: #777;\n\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\tcolor: #999;\n\t\t\t}\n\t\t}\n\t\t.json_editor_unofficial {\n\t\t\tbackground-color: #777;\n\t\t\tbutton {\n\t\t\t\tcolor: #333;\n\t\t\t}\n\t\t}\n\t\t.json_editor_missing {\n\t\t\tbackground-color: #f055;\n\t\t}\n\t\t.json_editor_key {\n\t\t\tpadding-right: 0px;\n\t\t\t&::after {\n\t\t\t\tcontent: \":\";\n\t\t\t\tcolor: var(--fg-soft);\n\t\t\t}\n\t\t\tinput {\n\t\t\t\tcolor: var(--fg-color);\n\t\t\t}\n\t\t}\n\t\t.json_editor_object,\n\t\t.json_editor_array {\n\t\t\tborder-left: var(--fg-border-soft);\n\t\t\tmargin-left: 9px;\n\t\t\twidth: calc(100% - 9px);\n\t\t\t> footer {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-flow: row;\n\t\t\t\tjustify-content: flex-start;\n\t\t\t\tjustify-items: flex-start;\n\t\t\t\theight: 21px;\n\t\t\t\talign-items: baseline;\n\t\t\t\tposition: relative;\n\t\t\t}\n\t\t\t.json_editor_properties,\n\t\t\t.json_editor_elements {\n\t\t\t\tborder-top: var(--fg-border-soft);\n\t\t\t\t.json_editor_property,\n\t\t\t\t.json_editor_element {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tborder-bottom: var(--fg-border-soft);\n\t\t\t\t\tmargin-bottom: 0;\n\t\t\t\t\tmin-height: 21px;\n\t\t\t\t\t> header {\n\t\t\t\t\t\t> main {\n\t\t\t\t\t\t\t> span {\n\t\t\t\t\t\t\t\tinput {\n\t\t\t\t\t\t\t\t\tmin-width: 10px;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t> * {\n\t\t\t\t\t\t\t\t\tborder: var(--fg-border-hint);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t&.readonly {\n\t\t\t\t\t.json_editor_property,\n\t\t\t\t\t.json_editor_element {\n\t\t\t\t\t\t&:last-of-type {\n\t\t\t\t\t\t\tborder-bottom: none;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tspan > * {\n\t\t\t\t\t\t\tborder: 1px solid transparent;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t.json_editor_icon {\n\t\tcolor: var(--fg-soft);\n\t}\n\n\tbutton.carat {\n\t\tborder: none;\n\t\tcursor: pointer;\n\t\tbackground: none;\n\t\t> .json_editor_icon {\n\t\t\tline-height: 4px;\n\t\t}\n\t\t&.open {\n\t\t\ttransform: rotate(90deg);\n\t\t}\n\t\t&:disabled {\n\t\t\t> .json_editor_icon {\n\t\t\t\tcursor: default;\n\t\t\t\tcolor: var(--fg-hint);\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
@@ -1,5 +1,5 @@
1
1
  import { useI, useO } from "../use-o-BrXc7Qro.js";
2
- import { IMPLICIT, actUponStore, arbitrary, become, createAtomFamily, createStandaloneAtom, createTransaction, findInStore, getFromStore } from "atom.io/internal";
2
+ import { IMPLICIT, actUponStore, arbitrary, become, createAtomFamily, createStandaloneAtom, createTransaction, disposeFromStore, findInStore, getFromStore } from "atom.io/internal";
3
3
  import { JSON_DEFAULTS, fromEntries, isJson, stringifyJson, toEntries } from "atom.io/json";
4
4
  import { redo, undo } from "atom.io";
5
5
  import { Component, Fragment, createContext, forwardRef, useContext, useId, useImperativeHandle, useLayoutEffect, useRef, useState } from "react";
@@ -195,7 +195,7 @@ function attachDevtoolsStates(store) {
195
195
  effects: (key) => typeof window === `undefined` ? [] : [persistSync(window.localStorage, JSON, `view-is-open:${key.join()}`)]
196
196
  });
197
197
  const openCloseAllTX = createTransaction(store, {
198
- key: `openCloseMultiView`,
198
+ key: `🔍 Open Close All`,
199
199
  do: ({ get, set }, path, current) => {
200
200
  const currentView = get(devtoolsViewSelectionState);
201
201
  let states;
@@ -1037,7 +1037,7 @@ const StoreEditor = ({ token }) => {
1037
1037
 
1038
1038
  //#endregion
1039
1039
  //#region src/react-devtools/StateIndex.tsx
1040
- const StateIndexLeafNode = ({ node, isOpenState, typeState }) => {
1040
+ const StateIndexLeafNode = ({ node, isOpenState, typeState, dispose }) => {
1041
1041
  const { openCloseAllTX, store } = useContext(DevtoolsContext);
1042
1042
  const setIsOpen = useI$1(isOpenState);
1043
1043
  const isOpen = useO$1(isOpenState);
@@ -1074,10 +1074,16 @@ const StateIndexLeafNode = ({ node, isOpenState, typeState }) => {
1074
1074
  ]
1075
1075
  })
1076
1076
  ]
1077
- }), isPrimitive ? /* @__PURE__ */ jsx(StoreEditor, { token: node }) : /* @__PURE__ */ jsx("div", {
1077
+ }), /* @__PURE__ */ jsxs("footer", { children: [isPrimitive ? /* @__PURE__ */ jsx(StoreEditor, { token: node }) : /* @__PURE__ */ jsx("div", {
1078
1078
  className: "json_viewer",
1079
1079
  children: JSON.stringify(state)
1080
- })] }), isOpen && !isPrimitive ? /* @__PURE__ */ jsx("main", { children: /* @__PURE__ */ jsx(StoreEditor, { token: node }) }) : null] });
1080
+ }), dispose ? /* @__PURE__ */ jsx(DEFAULT_JSON_EDITOR_COMPONENTS.Button, {
1081
+ onClick: () => {
1082
+ dispose?.();
1083
+ },
1084
+ testid: `${node.key}-dispose`,
1085
+ children: /* @__PURE__ */ jsx(DEFAULT_JSON_EDITOR_COMPONENTS.DeleteIcon, {})
1086
+ }) : null] })] }), isOpen && !isPrimitive ? /* @__PURE__ */ jsx("main", { children: /* @__PURE__ */ jsx(StoreEditor, { token: node }) }) : null] });
1081
1087
  };
1082
1088
  const StateIndexTreeNode = ({ node, isOpenState }) => {
1083
1089
  const setIsOpen = useI$1(isOpenState);
@@ -1105,17 +1111,21 @@ const StateIndexTreeNode = ({ node, isOpenState }) => {
1105
1111
  ] }) }), isOpen ? [...node.familyMembers.entries()].map(([key, childNode]) => /* @__PURE__ */ jsx(StateIndexNode, {
1106
1112
  node: childNode,
1107
1113
  isOpenState: findInStore(store, viewIsOpenAtoms, [node.key, key]),
1108
- typeState: findInStore(store, typeSelectors, childNode.key)
1114
+ typeState: findInStore(store, typeSelectors, childNode.key),
1115
+ dispose: () => {
1116
+ disposeFromStore(store, childNode);
1117
+ }
1109
1118
  }, key)) : null] });
1110
1119
  };
1111
- const StateIndexNode = ({ node, isOpenState, typeState }) => {
1120
+ const StateIndexNode = ({ node, isOpenState, typeState, dispose }) => {
1112
1121
  return /* @__PURE__ */ jsx("section", {
1113
1122
  className: "node state",
1114
1123
  "data-testid": `state-${node.key}`,
1115
1124
  children: `type` in node ? /* @__PURE__ */ jsx(StateIndexLeafNode, {
1116
1125
  node,
1117
1126
  isOpenState,
1118
- typeState
1127
+ typeState,
1128
+ dispose
1119
1129
  }) : /* @__PURE__ */ jsx(StateIndexTreeNode, {
1120
1130
  node,
1121
1131
  isOpenState
@@ -1125,10 +1135,18 @@ const StateIndexNode = ({ node, isOpenState, typeState }) => {
1125
1135
  const StateIndex = ({ tokenIndex }) => {
1126
1136
  const tokenIds = useO$1(tokenIndex);
1127
1137
  const { typeSelectors, viewIsOpenAtoms, store } = useContext(DevtoolsContext);
1138
+ const statesName = tokenIndex.key.includes(`Atom`) ? `atoms` : `selectors`;
1128
1139
  return /* @__PURE__ */ jsx("article", {
1129
1140
  className: "index state_index",
1130
1141
  "data-testid": "state-index",
1131
- children: [...tokenIds.entries()].map(([key, node]) => {
1142
+ children: tokenIds.size === 0 ? /* @__PURE__ */ jsxs("p", {
1143
+ className: "index-empty-state",
1144
+ children: [
1145
+ "(no ",
1146
+ statesName,
1147
+ ")"
1148
+ ]
1149
+ }) : [...tokenIds.entries()].map(([key, node]) => {
1132
1150
  return /* @__PURE__ */ jsx(StateIndexNode, {
1133
1151
  node,
1134
1152
  isOpenState: findInStore(store, viewIsOpenAtoms, [node.key]),
@@ -1339,7 +1357,10 @@ const TimelineIndex = () => {
1339
1357
  return /* @__PURE__ */ jsx("article", {
1340
1358
  className: "index timeline_index",
1341
1359
  "data-testid": "timeline-index",
1342
- children: tokenIds.filter((token) => !token.key.startsWith(`👁‍🗨`)).map((token) => {
1360
+ children: tokenIds.length === 0 ? /* @__PURE__ */ jsx("p", {
1361
+ className: "index-empty-state",
1362
+ children: "(no timelines)"
1363
+ }) : tokenIds.filter((token) => !token.key.startsWith(`👁‍🗨`)).map((token) => {
1343
1364
  return /* @__PURE__ */ jsx(TimelineLog, {
1344
1365
  token,
1345
1366
  isOpenState: findInStore(store, viewIsOpenAtoms, [token.key]),
@@ -1358,18 +1379,18 @@ const TransactionLog = ({ token, isOpenState, logState }) => {
1358
1379
  return /* @__PURE__ */ jsxs("section", {
1359
1380
  className: "node transaction_log",
1360
1381
  "data-testid": `transaction-${token.key}`,
1361
- children: [/* @__PURE__ */ jsxs("header", { children: [/* @__PURE__ */ jsx(button.OpenClose, {
1382
+ children: [/* @__PURE__ */ jsxs("header", { children: [/* @__PURE__ */ jsxs("main", { children: [/* @__PURE__ */ jsx(button.OpenClose, {
1362
1383
  isOpen,
1363
1384
  testid: `open-close-transaction-${token.key}`,
1364
1385
  setIsOpen
1365
- }), /* @__PURE__ */ jsxs("main", { children: [/* @__PURE__ */ jsx("h2", { children: token.key }), /* @__PURE__ */ jsxs("span", {
1386
+ }), /* @__PURE__ */ jsx("h2", { children: token.key })] }), /* @__PURE__ */ jsxs("span", {
1366
1387
  className: "detail length",
1367
1388
  children: [
1368
1389
  "(",
1369
1390
  log.length,
1370
1391
  ")"
1371
1392
  ]
1372
- })] })] }), isOpen ? /* @__PURE__ */ jsx("main", { children: log.map((update, index) => /* @__PURE__ */ jsx(article.TransactionUpdate, {
1393
+ })] }), isOpen ? /* @__PURE__ */ jsx("main", { children: log.map((update, index) => /* @__PURE__ */ jsx(article.TransactionUpdate, {
1373
1394
  serialNumber: index,
1374
1395
  transactionUpdate: update
1375
1396
  }, update.key + index)) }) : null]
@@ -1381,7 +1402,10 @@ const TransactionIndex = () => {
1381
1402
  return /* @__PURE__ */ jsx("article", {
1382
1403
  className: "index transaction_index",
1383
1404
  "data-testid": "transaction-index",
1384
- children: tokenIds.filter((token) => !token.key.startsWith(`🔍`)).map((token) => {
1405
+ children: tokenIds.length === 0 ? /* @__PURE__ */ jsx("p", {
1406
+ className: "index-empty-state",
1407
+ children: "(no transactions)"
1408
+ }) : tokenIds.filter((token) => !token.key.startsWith(`🔍`)).map((token) => {
1385
1409
  return /* @__PURE__ */ jsx(TransactionLog, {
1386
1410
  token,
1387
1411
  isOpenState: findInStore(store, viewIsOpenAtoms, [token.key]),