atom.io 0.32.4 → 0.33.1

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 (362) hide show
  1. package/dist/chunk-Cl8Af3a2.js +11 -0
  2. package/dist/data/index.d.ts +28 -0
  3. package/dist/data/index.d.ts.map +1 -0
  4. package/dist/data/index.js +66 -0
  5. package/dist/data/index.js.map +1 -0
  6. package/dist/devtools-CAg2k57t.js +0 -0
  7. package/dist/devtools-Jyn42mZm.css +311 -0
  8. package/dist/devtools-Jyn42mZm.css.map +1 -0
  9. package/dist/eslint-plugin/index.d.ts +36 -0
  10. package/dist/eslint-plugin/index.d.ts.map +1 -0
  11. package/dist/eslint-plugin/index.js +196 -0
  12. package/dist/eslint-plugin/index.js.map +1 -0
  13. package/{internal/dist → dist/internal}/index.d.ts +495 -378
  14. package/dist/internal/index.d.ts.map +1 -0
  15. package/dist/internal/index.js +3213 -0
  16. package/dist/internal/index.js.map +1 -0
  17. package/dist/introspection/index.d.ts +153 -0
  18. package/dist/introspection/index.d.ts.map +1 -0
  19. package/dist/introspection/index.js +520 -0
  20. package/dist/introspection/index.js.map +1 -0
  21. package/{json/dist → dist/json}/index.d.ts +38 -32
  22. package/dist/json/index.d.ts.map +1 -0
  23. package/dist/json/index.js +75 -0
  24. package/dist/json/index.js.map +1 -0
  25. package/dist/main/index.d.ts +691 -0
  26. package/dist/main/index.d.ts.map +1 -0
  27. package/dist/main/index.js +237 -0
  28. package/dist/main/index.js.map +1 -0
  29. package/{react/dist → dist/react}/index.d.ts +22 -11
  30. package/dist/react/index.d.ts.map +1 -0
  31. package/dist/react/index.js +91 -0
  32. package/dist/react/index.js.map +1 -0
  33. package/dist/react-devtools/index.d.ts +194 -0
  34. package/dist/react-devtools/index.d.ts.map +1 -0
  35. package/dist/react-devtools/index.js +1274 -0
  36. package/dist/react-devtools/index.js.map +1 -0
  37. package/dist/realtime/index.d.ts +55 -0
  38. package/dist/realtime/index.d.ts.map +1 -0
  39. package/dist/realtime/index.js +113 -0
  40. package/dist/realtime/index.js.map +1 -0
  41. package/dist/realtime-client/index.d.ts +81 -0
  42. package/dist/realtime-client/index.d.ts.map +1 -0
  43. package/dist/realtime-client/index.js +376 -0
  44. package/dist/realtime-client/index.js.map +1 -0
  45. package/dist/realtime-react/index.d.ts +68 -0
  46. package/dist/realtime-react/index.d.ts.map +1 -0
  47. package/dist/realtime-react/index.js +182 -0
  48. package/dist/realtime-react/index.js.map +1 -0
  49. package/dist/realtime-server/index.d.ts +190 -0
  50. package/dist/realtime-server/index.d.ts.map +1 -0
  51. package/dist/realtime-server/index.js +795 -0
  52. package/dist/realtime-server/index.js.map +1 -0
  53. package/dist/realtime-testing/index.d.ts +60 -0
  54. package/dist/realtime-testing/index.d.ts.map +1 -0
  55. package/dist/realtime-testing/index.js +181 -0
  56. package/dist/realtime-testing/index.js.map +1 -0
  57. package/dist/transceivers/set-rtx/index.d.ts +44 -0
  58. package/dist/transceivers/set-rtx/index.d.ts.map +1 -0
  59. package/dist/transceivers/set-rtx/index.js +204 -0
  60. package/dist/transceivers/set-rtx/index.js.map +1 -0
  61. package/dist/web/index.d.ts +15 -0
  62. package/dist/web/index.d.ts.map +1 -0
  63. package/dist/web/index.js +16 -0
  64. package/dist/web/index.js.map +1 -0
  65. package/package.json +66 -117
  66. package/{eslint-plugin/src → src/eslint-plugin}/index.ts +3 -1
  67. package/{eslint-plugin/src → src/eslint-plugin}/rules/explicit-state-types.ts +6 -1
  68. package/{eslint-plugin/src → src/eslint-plugin}/rules/synchronous-selector-dependencies.ts +14 -1
  69. package/{internal/src → src/internal}/families/index.ts +2 -0
  70. package/{internal/src → src/internal}/index.ts +1 -0
  71. package/{internal/src → src/internal}/junction.ts +3 -2
  72. package/{internal/src → src/internal}/lazy-map.ts +1 -1
  73. package/{internal/src → src/internal}/mutable/tracker-family.ts +2 -5
  74. package/{internal/src → src/internal}/mutable/tracker.ts +15 -9
  75. package/{internal/src → src/internal}/store/store.ts +60 -47
  76. package/{internal/src → src/internal}/subject.ts +1 -1
  77. package/{introspection/src → src/introspection}/auditor.ts +1 -1
  78. package/{introspection/src → src/introspection}/differ.ts +12 -1
  79. package/{introspection/src → src/introspection}/refinery.ts +18 -3
  80. package/{json/src → src/json}/entries.ts +1 -1
  81. package/{json/src → src/json}/select-json-family.ts +1 -1
  82. package/src/{realm.ts → main/realm.ts} +1 -1
  83. package/src/{silo.ts → main/silo.ts} +1 -1
  84. package/src/{transaction.ts → main/transaction.ts} +1 -1
  85. package/{react/src → src/react}/store-context.tsx +3 -1
  86. package/{react-devtools/src → src/react-devtools}/AtomIODevtools.tsx +1 -1
  87. package/{react-devtools/src → src/react-devtools}/Button.tsx +3 -1
  88. package/{react-devtools/src → src/react-devtools}/Updates.tsx +5 -1
  89. package/src/react-devtools/devtools.css +308 -0
  90. package/{react-devtools/src → src/react-devtools}/json-editor/index.ts +5 -2
  91. package/{react-devtools/src → src/react-devtools}/store.ts +3 -2
  92. package/{realtime/src → src/realtime}/shared-room-store.ts +28 -5
  93. package/src/realtime-client/realtime-client-stores/client-main-store.ts +23 -0
  94. package/src/realtime-client/realtime-client-stores/client-sync-store.ts +15 -0
  95. package/{realtime-react/src → src/realtime-react}/index.ts +1 -0
  96. package/{realtime-react/src → src/realtime-react}/on-mount.ts +1 -1
  97. package/{realtime-react/src → src/realtime-react}/realtime-context.tsx +5 -4
  98. package/{realtime-react/src → src/realtime-react}/use-single-effect.ts +1 -1
  99. package/{realtime-server/src → src/realtime-server}/realtime-server-stores/server-room-external-actions.ts +20 -19
  100. package/{realtime-server/src → src/realtime-server}/realtime-server-stores/server-room-external-store.ts +12 -7
  101. package/{realtime-server/src → src/realtime-server}/realtime-server-stores/server-sync-store.ts +13 -4
  102. package/{realtime-server/src → src/realtime-server}/realtime-server-stores/server-user-store.ts +26 -8
  103. package/{transceivers/set-rtx/src → src/transceivers/set-rtx}/set-rtx.ts +2 -2
  104. package/data/dist/index.d.ts +0 -31
  105. package/data/dist/index.js +0 -69
  106. package/data/package.json +0 -13
  107. package/dist/chunk-4LWKCEW3.js +0 -14
  108. package/dist/chunk-7SJVR7FZ.js +0 -4499
  109. package/dist/chunk-IR77IXS7.js +0 -526
  110. package/dist/chunk-PG57JXN4.js +0 -1035
  111. package/dist/chunk-PXB4YZDI.js +0 -153
  112. package/dist/chunk-Q6OOJWM4.js +0 -634
  113. package/dist/chunk-TJPLOX7Z.js +0 -81
  114. package/dist/chunk-U4K63VLA.js +0 -109
  115. package/dist/chunk-XWL6SNVU.js +0 -7
  116. package/dist/index.d.ts +0 -701
  117. package/dist/index.js +0 -2
  118. package/eslint-plugin/dist/index.d.ts +0 -51
  119. package/eslint-plugin/dist/index.js +0 -238
  120. package/eslint-plugin/package.json +0 -13
  121. package/internal/dist/index.js +0 -2
  122. package/internal/package.json +0 -13
  123. package/introspection/dist/index.d.ts +0 -149
  124. package/introspection/dist/index.js +0 -3
  125. package/introspection/package.json +0 -13
  126. package/json/dist/index.js +0 -2
  127. package/json/package.json +0 -13
  128. package/react/dist/index.js +0 -3
  129. package/react/package.json +0 -13
  130. package/react-devtools/dist/index.css +0 -309
  131. package/react-devtools/dist/index.d.ts +0 -169
  132. package/react-devtools/dist/index.js +0 -1481
  133. package/react-devtools/package.json +0 -13
  134. package/react-devtools/src/devtools.scss +0 -309
  135. package/realtime/dist/index.d.ts +0 -51
  136. package/realtime/dist/index.js +0 -3
  137. package/realtime/package.json +0 -13
  138. package/realtime-client/dist/index.d.ts +0 -41
  139. package/realtime-client/dist/index.js +0 -4
  140. package/realtime-client/package.json +0 -13
  141. package/realtime-client/src/realtime-client-stores/client-main-store.ts +0 -20
  142. package/realtime-client/src/realtime-client-stores/client-sync-store.ts +0 -15
  143. package/realtime-react/dist/index.d.ts +0 -39
  144. package/realtime-react/dist/index.js +0 -6
  145. package/realtime-react/package.json +0 -13
  146. package/realtime-server/dist/index.d.ts +0 -139
  147. package/realtime-server/dist/index.js +0 -4
  148. package/realtime-server/package.json +0 -13
  149. package/realtime-testing/dist/index.d.ts +0 -59
  150. package/realtime-testing/dist/index.js +0 -198
  151. package/realtime-testing/package.json +0 -13
  152. package/transceivers/set-rtx/dist/index.d.ts +0 -41
  153. package/transceivers/set-rtx/dist/index.js +0 -2
  154. package/transceivers/set-rtx/package.json +0 -13
  155. package/web/dist/index.d.ts +0 -9
  156. package/web/dist/index.js +0 -2
  157. package/web/package.json +0 -13
  158. /package/{data/src → src/data}/dict.ts +0 -0
  159. /package/{data/src → src/data}/index.ts +0 -0
  160. /package/{data/src → src/data}/struct-family.ts +0 -0
  161. /package/{data/src → src/data}/struct.ts +0 -0
  162. /package/{eslint-plugin/src → src/eslint-plugin}/rules/index.ts +0 -0
  163. /package/{eslint-plugin/src → src/eslint-plugin}/walk.ts +0 -0
  164. /package/{internal/src → src/internal}/arbitrary.ts +0 -0
  165. /package/{internal/src → src/internal}/atom/create-regular-atom.ts +0 -0
  166. /package/{internal/src → src/internal}/atom/create-standalone-atom.ts +0 -0
  167. /package/{internal/src → src/internal}/atom/dispose-atom.ts +0 -0
  168. /package/{internal/src → src/internal}/atom/index.ts +0 -0
  169. /package/{internal/src → src/internal}/atom/is-default.ts +0 -0
  170. /package/{internal/src → src/internal}/caching.ts +0 -0
  171. /package/{internal/src → src/internal}/capitalize.ts +0 -0
  172. /package/{internal/src → src/internal}/families/create-atom-family.ts +0 -0
  173. /package/{internal/src → src/internal}/families/create-readonly-selector-family.ts +0 -0
  174. /package/{internal/src → src/internal}/families/create-regular-atom-family.ts +0 -0
  175. /package/{internal/src → src/internal}/families/create-selector-family.ts +0 -0
  176. /package/{internal/src → src/internal}/families/create-writable-selector-family.ts +0 -0
  177. /package/{internal/src → src/internal}/families/dispose-from-store.ts +0 -0
  178. /package/{internal/src → src/internal}/families/find-in-store.ts +0 -0
  179. /package/{internal/src → src/internal}/families/get-family-of-token.ts +0 -0
  180. /package/{internal/src → src/internal}/families/init-family-member.ts +0 -0
  181. /package/{internal/src → src/internal}/families/seek-in-store.ts +0 -0
  182. /package/{internal/src → src/internal}/future.ts +0 -0
  183. /package/{internal/src → src/internal}/get-environment-data.ts +0 -0
  184. /package/{internal/src → src/internal}/get-state/get-from-store.ts +0 -0
  185. /package/{internal/src → src/internal}/get-state/index.ts +0 -0
  186. /package/{internal/src → src/internal}/get-state/read-or-compute-value.ts +0 -0
  187. /package/{internal/src → src/internal}/get-trace.ts +0 -0
  188. /package/{internal/src → src/internal}/ingest-updates/index.ts +0 -0
  189. /package/{internal/src → src/internal}/ingest-updates/ingest-atom-update.ts +0 -0
  190. /package/{internal/src → src/internal}/ingest-updates/ingest-creation-disposal.ts +0 -0
  191. /package/{internal/src → src/internal}/ingest-updates/ingest-selector-update.ts +0 -0
  192. /package/{internal/src → src/internal}/ingest-updates/ingest-transaction-update.ts +0 -0
  193. /package/{internal/src → src/internal}/install-into-store.ts +0 -0
  194. /package/{internal/src → src/internal}/join/edit-relations-in-store.ts +0 -0
  195. /package/{internal/src → src/internal}/join/find-relations-in-store.ts +0 -0
  196. /package/{internal/src → src/internal}/join/get-internal-relations-from-store.ts +0 -0
  197. /package/{internal/src → src/internal}/join/get-join.ts +0 -0
  198. /package/{internal/src → src/internal}/join/index.ts +0 -0
  199. /package/{internal/src → src/internal}/join/join-internal.ts +0 -0
  200. /package/{internal/src → src/internal}/keys.ts +0 -0
  201. /package/{internal/src → src/internal}/lineage.ts +0 -0
  202. /package/{internal/src → src/internal}/molecule.ts +0 -0
  203. /package/{internal/src → src/internal}/mutable/create-mutable-atom-family.ts +0 -0
  204. /package/{internal/src → src/internal}/mutable/create-mutable-atom.ts +0 -0
  205. /package/{internal/src → src/internal}/mutable/get-json-family.ts +0 -0
  206. /package/{internal/src → src/internal}/mutable/get-json-token.ts +0 -0
  207. /package/{internal/src → src/internal}/mutable/get-update-family.ts +0 -0
  208. /package/{internal/src → src/internal}/mutable/get-update-token.ts +0 -0
  209. /package/{internal/src → src/internal}/mutable/index.ts +0 -0
  210. /package/{internal/src → src/internal}/mutable/transceiver.ts +0 -0
  211. /package/{internal/src → src/internal}/not-found-error.ts +0 -0
  212. /package/{internal/src → src/internal}/operation.ts +0 -0
  213. /package/{internal/src → src/internal}/pretty-print.ts +0 -0
  214. /package/{internal/src → src/internal}/reserved-keys.ts +0 -0
  215. /package/{internal/src → src/internal}/selector/create-readonly-selector.ts +0 -0
  216. /package/{internal/src → src/internal}/selector/create-standalone-selector.ts +0 -0
  217. /package/{internal/src → src/internal}/selector/create-writable-selector.ts +0 -0
  218. /package/{internal/src → src/internal}/selector/dispose-selector.ts +0 -0
  219. /package/{internal/src → src/internal}/selector/get-selector-dependency-keys.ts +0 -0
  220. /package/{internal/src → src/internal}/selector/index.ts +0 -0
  221. /package/{internal/src → src/internal}/selector/register-selector.ts +0 -0
  222. /package/{internal/src → src/internal}/selector/trace-selector-atoms.ts +0 -0
  223. /package/{internal/src → src/internal}/selector/update-selector-atoms.ts +0 -0
  224. /package/{internal/src → src/internal}/set-state/become.ts +0 -0
  225. /package/{internal/src → src/internal}/set-state/copy-mutable-if-needed.ts +0 -0
  226. /package/{internal/src → src/internal}/set-state/emit-update.ts +0 -0
  227. /package/{internal/src → src/internal}/set-state/evict-downstream.ts +0 -0
  228. /package/{internal/src → src/internal}/set-state/index.ts +0 -0
  229. /package/{internal/src → src/internal}/set-state/set-atom-or-selector.ts +0 -0
  230. /package/{internal/src → src/internal}/set-state/set-atom.ts +0 -0
  231. /package/{internal/src → src/internal}/set-state/set-into-store.ts +0 -0
  232. /package/{internal/src → src/internal}/store/circular-buffer.ts +0 -0
  233. /package/{internal/src → src/internal}/store/counterfeit.ts +0 -0
  234. /package/{internal/src → src/internal}/store/deposit.ts +0 -0
  235. /package/{internal/src → src/internal}/store/index.ts +0 -0
  236. /package/{internal/src → src/internal}/store/withdraw.ts +0 -0
  237. /package/{internal/src → src/internal}/subscribe/index.ts +0 -0
  238. /package/{internal/src → src/internal}/subscribe/recall-state.ts +0 -0
  239. /package/{internal/src → src/internal}/subscribe/subscribe-in-store.ts +0 -0
  240. /package/{internal/src → src/internal}/subscribe/subscribe-to-root-atoms.ts +0 -0
  241. /package/{internal/src → src/internal}/subscribe/subscribe-to-state.ts +0 -0
  242. /package/{internal/src → src/internal}/subscribe/subscribe-to-timeline.ts +0 -0
  243. /package/{internal/src → src/internal}/subscribe/subscribe-to-transaction.ts +0 -0
  244. /package/{internal/src → src/internal}/timeline/create-timeline.ts +0 -0
  245. /package/{internal/src → src/internal}/timeline/index.ts +0 -0
  246. /package/{internal/src → src/internal}/timeline/time-travel.ts +0 -0
  247. /package/{internal/src → src/internal}/transaction/abort-transaction.ts +0 -0
  248. /package/{internal/src → src/internal}/transaction/act-upon-store.ts +0 -0
  249. /package/{internal/src → src/internal}/transaction/apply-transaction.ts +0 -0
  250. /package/{internal/src → src/internal}/transaction/assign-transaction-to-continuity.ts +0 -0
  251. /package/{internal/src → src/internal}/transaction/build-transaction.ts +0 -0
  252. /package/{internal/src → src/internal}/transaction/create-transaction.ts +0 -0
  253. /package/{internal/src → src/internal}/transaction/get-epoch-number.ts +0 -0
  254. /package/{internal/src → src/internal}/transaction/index.ts +0 -0
  255. /package/{internal/src → src/internal}/transaction/is-root-store.ts +0 -0
  256. /package/{internal/src → src/internal}/transaction/set-epoch-number.ts +0 -0
  257. /package/{internal/src → src/internal}/utility-types.ts +0 -0
  258. /package/{introspection/src → src/introspection}/attach-atom-index.ts +0 -0
  259. /package/{introspection/src → src/introspection}/attach-introspection-states.ts +0 -0
  260. /package/{introspection/src → src/introspection}/attach-selector-index.ts +0 -0
  261. /package/{introspection/src → src/introspection}/attach-timeline-family.ts +0 -0
  262. /package/{introspection/src → src/introspection}/attach-timeline-index.ts +0 -0
  263. /package/{introspection/src → src/introspection}/attach-transaction-index.ts +0 -0
  264. /package/{introspection/src → src/introspection}/attach-transaction-logs.ts +0 -0
  265. /package/{introspection/src → src/introspection}/attach-type-selectors.ts +0 -0
  266. /package/{introspection/src → src/introspection}/index.ts +0 -0
  267. /package/{introspection/src → src/introspection}/sprawl.ts +0 -0
  268. /package/{json/src → src/json}/index.ts +0 -0
  269. /package/{json/src → src/json}/select-json.ts +0 -0
  270. /package/src/{atom.ts → main/atom.ts} +0 -0
  271. /package/src/{dispose-state.ts → main/dispose-state.ts} +0 -0
  272. /package/src/{find-state.ts → main/find-state.ts} +0 -0
  273. /package/src/{get-state.ts → main/get-state.ts} +0 -0
  274. /package/src/{index.ts → main/index.ts} +0 -0
  275. /package/src/{join.ts → main/join.ts} +0 -0
  276. /package/src/{logger.ts → main/logger.ts} +0 -0
  277. /package/src/{selector.ts → main/selector.ts} +0 -0
  278. /package/src/{set-state.ts → main/set-state.ts} +0 -0
  279. /package/src/{subscribe.ts → main/subscribe.ts} +0 -0
  280. /package/src/{timeline.ts → main/timeline.ts} +0 -0
  281. /package/src/{validators.ts → main/validators.ts} +0 -0
  282. /package/{react/src → src/react}/index.ts +0 -0
  283. /package/{react/src → src/react}/parse-state-overloads.ts +0 -0
  284. /package/{react/src → src/react}/use-i.ts +0 -0
  285. /package/{react/src → src/react}/use-json.ts +0 -0
  286. /package/{react/src → src/react}/use-o.ts +0 -0
  287. /package/{react/src → src/react}/use-tl.ts +0 -0
  288. /package/{react-devtools/src → src/react-devtools}/StateEditor.tsx +0 -0
  289. /package/{react-devtools/src → src/react-devtools}/StateIndex.tsx +0 -0
  290. /package/{react-devtools/src → src/react-devtools}/TimelineIndex.tsx +0 -0
  291. /package/{react-devtools/src → src/react-devtools}/TransactionIndex.tsx +0 -0
  292. /package/{react-devtools/src → src/react-devtools}/elastic-input/ElasticInput.tsx +0 -0
  293. /package/{react-devtools/src → src/react-devtools}/elastic-input/NumberInput.tsx +0 -0
  294. /package/{react-devtools/src → src/react-devtools}/elastic-input/TextInput.tsx +0 -0
  295. /package/{react-devtools/src → src/react-devtools}/elastic-input/index.ts +0 -0
  296. /package/{react-devtools/src → src/react-devtools}/error-boundary/DefaultFallback.tsx +0 -0
  297. /package/{react-devtools/src → src/react-devtools}/error-boundary/ReactErrorBoundary.tsx +0 -0
  298. /package/{react-devtools/src → src/react-devtools}/error-boundary/index.ts +0 -0
  299. /package/{react-devtools/src → src/react-devtools}/index.ts +0 -0
  300. /package/{react-devtools/src → src/react-devtools}/json-editor/default-components.tsx +0 -0
  301. /package/{react-devtools/src → src/react-devtools}/json-editor/developer-interface.tsx +0 -0
  302. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/array-editor.tsx +0 -0
  303. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/non-json.tsx +0 -0
  304. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/object-editor.tsx +0 -0
  305. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/primitive-editors.tsx +0 -0
  306. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/utilities/array-elements.ts +0 -0
  307. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/utilities/cast-json.ts +0 -0
  308. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/utilities/cast-to-json.ts +0 -0
  309. /package/{react-devtools/src → src/react-devtools}/json-editor/editors-by-type/utilities/object-properties.ts +0 -0
  310. /package/{react-devtools/src → src/react-devtools}/json-editor/json-editor-internal.tsx +0 -0
  311. /package/{react-devtools/src → src/react-devtools}/json-editor/todo.md +0 -0
  312. /package/{realtime/src → src/realtime}/index.ts +0 -0
  313. /package/{realtime/src → src/realtime}/realtime-continuity.ts +0 -0
  314. /package/{realtime-client/src → src/realtime-client}/continuity/index.ts +0 -0
  315. /package/{realtime-client/src → src/realtime-client}/continuity/register-and-attempt-confirmed-update.ts +0 -0
  316. /package/{realtime-client/src → src/realtime-client}/continuity/use-conceal-state.ts +0 -0
  317. /package/{realtime-client/src → src/realtime-client}/continuity/use-reveal-state.ts +0 -0
  318. /package/{realtime-client/src → src/realtime-client}/index.ts +0 -0
  319. /package/{realtime-client/src → src/realtime-client}/pull-atom-family-member.ts +0 -0
  320. /package/{realtime-client/src → src/realtime-client}/pull-atom.ts +0 -0
  321. /package/{realtime-client/src → src/realtime-client}/pull-mutable-atom-family-member.ts +0 -0
  322. /package/{realtime-client/src → src/realtime-client}/pull-mutable-atom.ts +0 -0
  323. /package/{realtime-client/src → src/realtime-client}/pull-selector-family-member.ts +0 -0
  324. /package/{realtime-client/src → src/realtime-client}/pull-selector.ts +0 -0
  325. /package/{realtime-client/src → src/realtime-client}/push-state.ts +0 -0
  326. /package/{realtime-client/src → src/realtime-client}/realtime-client-stores/index.ts +0 -0
  327. /package/{realtime-client/src → src/realtime-client}/server-action.ts +0 -0
  328. /package/{realtime-client/src → src/realtime-client}/sync-continuity.ts +0 -0
  329. /package/{realtime-react/src → src/realtime-react}/use-pull-atom-family-member.ts +0 -0
  330. /package/{realtime-react/src → src/realtime-react}/use-pull-atom.ts +0 -0
  331. /package/{realtime-react/src → src/realtime-react}/use-pull-mutable-atom.ts +0 -0
  332. /package/{realtime-react/src → src/realtime-react}/use-pull-mutable-family-member.ts +0 -0
  333. /package/{realtime-react/src → src/realtime-react}/use-pull-selector-family-member.ts +0 -0
  334. /package/{realtime-react/src → src/realtime-react}/use-pull-selector.ts +0 -0
  335. /package/{realtime-react/src → src/realtime-react}/use-push.ts +0 -0
  336. /package/{realtime-react/src → src/realtime-react}/use-realtime-service.ts +0 -0
  337. /package/{realtime-react/src → src/realtime-react}/use-server-action.ts +0 -0
  338. /package/{realtime-react/src → src/realtime-react}/use-sync-continuity.ts +0 -0
  339. /package/{realtime-server/src → src/realtime-server}/README.md +0 -0
  340. /package/{realtime-server/src → src/realtime-server}/continuity/prepare-to-send-initial-payload.ts +0 -0
  341. /package/{realtime-server/src → src/realtime-server}/continuity/prepare-to-serve-transaction-request.ts +0 -0
  342. /package/{realtime-server/src → src/realtime-server}/continuity/prepare-to-sync-realtime-continuity.ts +0 -0
  343. /package/{realtime-server/src → src/realtime-server}/continuity/prepare-to-track-client-acknowledgement.ts +0 -0
  344. /package/{realtime-server/src → src/realtime-server}/continuity/subscribe-to-continuity-actions.ts +0 -0
  345. /package/{realtime-server/src → src/realtime-server}/continuity/subscribe-to-continuity-perpectives.ts +0 -0
  346. /package/{realtime-server/src → src/realtime-server}/index.ts +0 -0
  347. /package/{realtime-server/src → src/realtime-server}/ipc-sockets/child-socket.ts +0 -0
  348. /package/{realtime-server/src → src/realtime-server}/ipc-sockets/custom-socket.ts +0 -0
  349. /package/{realtime-server/src → src/realtime-server}/ipc-sockets/index.ts +0 -0
  350. /package/{realtime-server/src → src/realtime-server}/ipc-sockets/parent-socket.ts +0 -0
  351. /package/{realtime-server/src → src/realtime-server}/realtime-action-receiver.ts +0 -0
  352. /package/{realtime-server/src → src/realtime-server}/realtime-family-provider.ts +0 -0
  353. /package/{realtime-server/src → src/realtime-server}/realtime-mutable-family-provider.ts +0 -0
  354. /package/{realtime-server/src → src/realtime-server}/realtime-mutable-provider.ts +0 -0
  355. /package/{realtime-server/src → src/realtime-server}/realtime-server-stores/index.ts +0 -0
  356. /package/{realtime-server/src → src/realtime-server}/realtime-state-provider.ts +0 -0
  357. /package/{realtime-server/src → src/realtime-server}/realtime-state-receiver.ts +0 -0
  358. /package/{realtime-testing/src → src/realtime-testing}/index.ts +0 -0
  359. /package/{realtime-testing/src → src/realtime-testing}/setup-realtime-test.tsx +0 -0
  360. /package/{transceivers/set-rtx/src → src/transceivers/set-rtx}/index.ts +0 -0
  361. /package/{web/src → src/web}/index.ts +0 -0
  362. /package/{web/src → src/web}/persist-sync.ts +0 -0
@@ -0,0 +1,11 @@
1
+ //#region rolldown:runtime
2
+ var __defProp = Object.defineProperty;
3
+ var __export = (target, all) => {
4
+ for (var name in all) __defProp(target, name, {
5
+ get: all[name],
6
+ enumerable: true
7
+ });
8
+ };
9
+
10
+ //#endregion
11
+ export { __export };
@@ -0,0 +1,28 @@
1
+ import { Store } from "atom.io/internal";
2
+ import { Canonical, stringified } from "atom.io/json";
3
+ import * as AtomIO$2 from "atom.io";
4
+ import * as AtomIO$1 from "atom.io";
5
+ import * as AtomIO from "atom.io";
6
+
7
+ //#region src/data/dict.d.ts
8
+ declare function dict<State, Key extends Canonical>(family: AtomIO$2.ReadonlySelectorFamilyToken<State, Key> | AtomIO$2.RegularAtomFamilyToken<State, Key> | AtomIO$2.WritableSelectorFamilyToken<State, Key>, index: AtomIO$2.ReadonlySelectorToken<Key[]> | AtomIO$2.RegularAtomToken<Key[]> | AtomIO$2.WritableSelectorToken<Key[]>, store?: Store): AtomIO$2.ReadonlySelectorToken<{ [K in stringified<Key>]: State }>;
9
+
10
+ //#endregion
11
+ //#region src/data/struct.d.ts
12
+ declare function struct<Struct extends {
13
+ [key: string]: unknown;
14
+ }, Key extends string>(options: {
15
+ key: Key;
16
+ default: Struct;
17
+ }, store?: Store): [{ [K in keyof Struct as `${Key}${Capitalize<K & string>}State`]: AtomIO$1.RegularAtomToken<Struct[K]> }, AtomIO$1.ReadonlySelectorToken<Struct>];
18
+
19
+ //#endregion
20
+ //#region src/data/struct-family.d.ts
21
+ declare function structFamily<Struct extends object, Key extends string>(options: {
22
+ key: Key;
23
+ default: Struct;
24
+ }): [{ [K in keyof Struct as `find${Capitalize<Key & string>}${Capitalize<K & string>}State`]: AtomIO.RegularAtomFamilyToken<Struct[K], string> }, AtomIO.ReadonlySelectorFamilyToken<Struct, string>];
25
+
26
+ //#endregion
27
+ export { dict, struct, structFamily };
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":["family:\n\t\t| AtomIO.ReadonlySelectorFamilyToken<State, Key>\n\t\t| AtomIO.RegularAtomFamilyToken<State, Key>\n\t\t| AtomIO.WritableSelectorFamilyToken<State, Key>","index:\n\t\t| AtomIO.ReadonlySelectorToken<Key[]>\n\t\t| AtomIO.RegularAtomToken<Key[]>\n\t\t| AtomIO.WritableSelectorToken<Key[]>","store: Store","options: {\n\t\tkey: Key\n\t\tdefault: Struct\n\t}","store: Store","options: {\n\tkey: Key\n\tdefault: Struct\n}"],"sources":["../../src/data/dict.ts","../../src/data/struct.ts","../../src/data/struct-family.ts"],"sourcesContent":null,"mappings":";;;;;;;iBASgB,wBAAwB,mBAEpC,QAAA,CAAO,4BAA4B,OAAO,OAC1C,QAAA,CAAO,uBAAuB,OAAO,OACrC,QAAA,CAAO,4BAA4B,OAAO,aAE1C,QAAA,CAAO,sBAAsB,SAC7B,QAAA,CAAO,iBAAiB,SACxB,QAAA,CAAO,sBAAsB,gBACzB,QACL,QAAA,CAAO,8BAA8B,YAAY,OAAO;;;;iBCV3C;;sBDAhB,CAAA,OAAgB,EAAA;EAAA,GAAA,ECKT,GDLS;EAAA,OAAwB,ECM7B,MDN6B;CAAA,EAAA,KAED,CAAA,ECM/B,KDN+B,CAAA,EAAA,CAAA,QAAA,MCSzB,MDTyB,IAAA,GCSZ,GDTY,GCSN,UDTM,CCUpC,CDVoC,GAAA,MAAA,CAAA,OAAA,GCW1B,QAAA,CAAO,gBDXmB,CCWF,MDXE,CCWK,CDXL,CAAA,CAAA,EAAA,ECatC,QAAA,CAAO,qBDb+B,CCaT,MDbS,CAAA,CAAA;;;;iBEAvB;OAIV;WACI;AFPV,CAAA,CAAA,EAAgB,CAAA,QAAA,MEUF,MFVE,IAAA,OEUe,UFVf,CEU0B,GFV1B,GAAA,MAAA,CAAA,GEU0C,UFV1C,CEWb,CFXa,GAAA,MAAA,CAAA,OAAA,GEYH,MAAA,CAAO,sBFZJ,CEY2B,MFZ3B,CEYkC,CFZlC,CAAA,EAAA,MAAA,CAAA,EAAA,EEcf,MAAA,CAAO,2BFdQ,CEcoB,MFdpB,EAAA,MAAA,CAAA,CAAA"}
@@ -0,0 +1,66 @@
1
+ import { IMPLICIT, capitalize, createRegularAtom, createRegularAtomFamily, createSelectorFamily, createStandaloneSelector, findInStore } from "atom.io/internal";
2
+
3
+ //#region src/data/dict.ts
4
+ function dict(family, index, store = IMPLICIT.STORE) {
5
+ return createStandaloneSelector(store, {
6
+ key: `${family.key}Dict`,
7
+ get: ({ get }) => {
8
+ const keys = get(index);
9
+ return keys.reduce((acc, key) => {
10
+ acc[key] = get(findInStore(store, family, key));
11
+ return acc;
12
+ }, {});
13
+ }
14
+ });
15
+ }
16
+
17
+ //#endregion
18
+ //#region src/data/struct.ts
19
+ function struct(options, store = IMPLICIT.STORE) {
20
+ const atoms = Object.keys(options.default).reduce((acc, key) => {
21
+ const atomName = options.key + capitalize(key) + `State`;
22
+ acc[atomName] = createRegularAtom(store, {
23
+ key: `${options.key}.${key}`,
24
+ default: options.default[key]
25
+ }, void 0);
26
+ return acc;
27
+ }, {});
28
+ const structState = createStandaloneSelector(store, {
29
+ key: options.key,
30
+ get: ({ get }) => {
31
+ return Object.keys(options.default).reduce((acc, key) => {
32
+ acc[key] = get(atoms[options.key + capitalize(key) + `State`]);
33
+ return acc;
34
+ }, {});
35
+ }
36
+ });
37
+ return [atoms, structState];
38
+ }
39
+
40
+ //#endregion
41
+ //#region src/data/struct-family.ts
42
+ const nameFamily = (topKey, subKey) => `find` + capitalize(topKey) + capitalize(subKey) + `State`;
43
+ function structFamily(options) {
44
+ const atoms = Object.keys(options.default).reduce((acc, subKey) => {
45
+ const atomFamilyName = nameFamily(options.key, subKey);
46
+ acc[atomFamilyName] = createRegularAtomFamily(IMPLICIT.STORE, {
47
+ key: `${options.key}.${subKey}`,
48
+ default: options.default[subKey]
49
+ });
50
+ return acc;
51
+ }, {});
52
+ const findStructState = createSelectorFamily(IMPLICIT.STORE, {
53
+ key: options.key,
54
+ get: (id) => ({ find, get }) => {
55
+ return Object.keys(options.default).reduce((acc, subKey) => {
56
+ acc[subKey] = get(find(atoms[nameFamily(options.key, subKey)], id));
57
+ return acc;
58
+ }, {});
59
+ }
60
+ });
61
+ return [atoms, findStructState];
62
+ }
63
+
64
+ //#endregion
65
+ export { dict, struct, structFamily };
66
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["family:\n\t\t| AtomIO.ReadonlySelectorFamilyToken<State, Key>\n\t\t| AtomIO.RegularAtomFamilyToken<State, Key>\n\t\t| AtomIO.WritableSelectorFamilyToken<State, Key>","index:\n\t\t| AtomIO.ReadonlySelectorToken<Key[]>\n\t\t| AtomIO.RegularAtomToken<Key[]>\n\t\t| AtomIO.WritableSelectorToken<Key[]>","store: Store","options: {\n\t\tkey: Key\n\t\tdefault: Struct\n\t}","store: Store","atoms: {\n\t\t[K in keyof Struct as `${Key}${Capitalize<\n\t\t\tK & string\n\t\t>}State`]: AtomIO.RegularAtomToken<Struct[K]>\n\t}","topKey: string","subKey: string","options: {\n\tkey: Key\n\tdefault: Struct\n}","atoms: {\n\t\t[K in keyof Struct as `find${Capitalize<Key & string>}${Capitalize<\n\t\t\tK & string\n\t\t>}State`]: AtomIO.RegularAtomFamilyToken<Struct[K], string>\n\t}","findStructState: AtomIO.ReadonlySelectorFamilyToken<Struct, string>"],"sources":["../../src/data/dict.ts","../../src/data/struct.ts","../../src/data/struct-family.ts"],"sourcesContent":["import type * as AtomIO from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport {\n\tcreateStandaloneSelector,\n\tfindInStore,\n\tIMPLICIT,\n} from \"atom.io/internal\"\nimport type { Canonical, stringified } from \"atom.io/json\"\n\nexport function dict<State, Key extends Canonical>(\n\tfamily:\n\t\t| AtomIO.ReadonlySelectorFamilyToken<State, Key>\n\t\t| AtomIO.RegularAtomFamilyToken<State, Key>\n\t\t| AtomIO.WritableSelectorFamilyToken<State, Key>,\n\tindex:\n\t\t| AtomIO.ReadonlySelectorToken<Key[]>\n\t\t| AtomIO.RegularAtomToken<Key[]>\n\t\t| AtomIO.WritableSelectorToken<Key[]>,\n\tstore: Store = IMPLICIT.STORE,\n): AtomIO.ReadonlySelectorToken<{ [K in stringified<Key>]: State }> {\n\treturn createStandaloneSelector(store, {\n\t\tkey: `${family.key}Dict`,\n\t\tget: ({ get }) => {\n\t\t\tconst keys = get(index)\n\t\t\treturn keys.reduce((acc, key) => {\n\t\t\t\tacc[key] = get(findInStore(store, family, key))\n\t\t\t\treturn acc\n\t\t\t}, {} as any)\n\t\t},\n\t})\n}\n","import type * as AtomIO from \"atom.io\"\nimport type { Store } from \"atom.io/internal\"\nimport {\n\tcapitalize,\n\tcreateRegularAtom,\n\tcreateStandaloneSelector,\n\tIMPLICIT,\n} from \"atom.io/internal\"\n\nexport function struct<\n\tStruct extends { [key: string]: unknown },\n\tKey extends string,\n>(\n\toptions: {\n\t\tkey: Key\n\t\tdefault: Struct\n\t},\n\tstore: Store = IMPLICIT.STORE,\n): [\n\t{\n\t\t[K in keyof Struct as `${Key}${Capitalize<\n\t\t\tK & string\n\t\t>}State`]: AtomIO.RegularAtomToken<Struct[K]>\n\t},\n\tAtomIO.ReadonlySelectorToken<Struct>,\n] {\n\tconst atoms: {\n\t\t[K in keyof Struct as `${Key}${Capitalize<\n\t\t\tK & string\n\t\t>}State`]: AtomIO.RegularAtomToken<Struct[K]>\n\t} = Object.keys(options.default).reduce((acc, key) => {\n\t\tconst atomName = options.key + capitalize(key) + `State`\n\t\tacc[atomName] = createRegularAtom(\n\t\t\tstore,\n\t\t\t{\n\t\t\t\tkey: `${options.key}.${key}`,\n\t\t\t\tdefault: options.default[key],\n\t\t\t},\n\t\t\tundefined,\n\t\t)\n\t\treturn acc\n\t}, {} as any)\n\tconst structState = createStandaloneSelector(store, {\n\t\tkey: options.key,\n\t\tget: ({ get }) => {\n\t\t\treturn Object.keys(options.default).reduce((acc, key) => {\n\t\t\t\t// @ts-expect-error finicky\n\t\t\t\tacc[key] = get(atoms[options.key + capitalize(key) + `State`])\n\t\t\t\treturn acc\n\t\t\t}, {} as any)\n\t\t},\n\t})\n\treturn [atoms, structState]\n}\n","import type * as AtomIO from \"atom.io\"\nimport {\n\tcapitalize,\n\tcreateRegularAtomFamily,\n\tcreateSelectorFamily,\n\tIMPLICIT,\n} from \"atom.io/internal\"\n\nconst nameFamily = (topKey: string, subKey: string) =>\n\t`find` + capitalize(topKey) + capitalize(subKey) + `State`\n\nexport function structFamily<\n\tStruct extends object,\n\tKey extends string,\n>(options: {\n\tkey: Key\n\tdefault: Struct\n}): [\n\t{\n\t\t[K in keyof Struct as `find${Capitalize<Key & string>}${Capitalize<\n\t\t\tK & string\n\t\t>}State`]: AtomIO.RegularAtomFamilyToken<Struct[K], string>\n\t},\n\tAtomIO.ReadonlySelectorFamilyToken<Struct, string>,\n] {\n\tconst atoms: {\n\t\t[K in keyof Struct as `find${Capitalize<Key & string>}${Capitalize<\n\t\t\tK & string\n\t\t>}State`]: AtomIO.RegularAtomFamilyToken<Struct[K], string>\n\t} = Object.keys(options.default).reduce((acc, subKey) => {\n\t\tconst atomFamilyName = nameFamily(options.key, subKey)\n\t\tacc[atomFamilyName] = createRegularAtomFamily(IMPLICIT.STORE, {\n\t\t\tkey: `${options.key}.${subKey}`,\n\t\t\tdefault: (options.default as any)[subKey],\n\t\t})\n\t\treturn acc\n\t}, {} as any)\n\tconst findStructState: AtomIO.ReadonlySelectorFamilyToken<Struct, string> =\n\t\tcreateSelectorFamily(IMPLICIT.STORE, {\n\t\t\tkey: options.key,\n\t\t\tget:\n\t\t\t\t(id) =>\n\t\t\t\t({ find, get }) => {\n\t\t\t\t\treturn Object.keys(options.default).reduce((acc, subKey) => {\n\t\t\t\t\t\tacc[subKey] = get(\n\t\t\t\t\t\t\tfind((atoms as any)[nameFamily(options.key, subKey)], id),\n\t\t\t\t\t\t)\n\t\t\t\t\t\treturn acc\n\t\t\t\t\t}, {} as any)\n\t\t\t\t},\n\t\t})\n\treturn [atoms, findStructState]\n}\n"],"mappings":";;;AASA,SAAgB,KACfA,QAIAC,OAIAC,QAAe,SAAS,OAC2C;AACnE,QAAO,yBAAyB,OAAO;EACtC,MAAM,EAAE,OAAO,IAAI;EACnB,KAAK,CAAC,EAAE,KAAK,KAAK;GACjB,MAAM,OAAO,IAAI,MAAM;AACvB,UAAO,KAAK,OAAO,CAAC,KAAK,QAAQ;AAChC,QAAI,OAAO,IAAI,YAAY,OAAO,QAAQ,IAAI,CAAC;AAC/C,WAAO;GACP,GAAE,CAAE,EAAQ;EACb;CACD,EAAC;AACF;;;;ACrBD,SAAgB,OAIfC,SAIAC,QAAe,SAAS,OAQvB;CACD,MAAMC,QAIF,OAAO,KAAK,QAAQ,QAAQ,CAAC,OAAO,CAAC,KAAK,QAAQ;EACrD,MAAM,WAAW,QAAQ,MAAM,WAAW,IAAI,IAAI;AAClD,MAAI,YAAY,kBACf,OACA;GACC,MAAM,EAAE,QAAQ,IAAI,GAAG,IAAI;GAC3B,SAAS,QAAQ,QAAQ;EACzB,UAED;AACD,SAAO;CACP,GAAE,CAAE,EAAQ;CACb,MAAM,cAAc,yBAAyB,OAAO;EACnD,KAAK,QAAQ;EACb,KAAK,CAAC,EAAE,KAAK,KAAK;AACjB,UAAO,OAAO,KAAK,QAAQ,QAAQ,CAAC,OAAO,CAAC,KAAK,QAAQ;AAExD,QAAI,OAAO,IAAI,MAAM,QAAQ,MAAM,WAAW,IAAI,IAAI,QAAQ;AAC9D,WAAO;GACP,GAAE,CAAE,EAAQ;EACb;CACD,EAAC;AACF,QAAO,CAAC,OAAO,WAAY;AAC3B;;;;AC7CD,MAAM,aAAa,CAACC,QAAgBC,YAClC,QAAQ,WAAW,OAAO,GAAG,WAAW,OAAO,IAAI;AAErD,SAAgB,aAGdC,SAUA;CACD,MAAMC,QAIF,OAAO,KAAK,QAAQ,QAAQ,CAAC,OAAO,CAAC,KAAK,WAAW;EACxD,MAAM,iBAAiB,WAAW,QAAQ,KAAK,OAAO;AACtD,MAAI,kBAAkB,wBAAwB,SAAS,OAAO;GAC7D,MAAM,EAAE,QAAQ,IAAI,GAAG,OAAO;GAC9B,SAAU,QAAQ,QAAgB;EAClC,EAAC;AACF,SAAO;CACP,GAAE,CAAE,EAAQ;CACb,MAAMC,kBACL,qBAAqB,SAAS,OAAO;EACpC,KAAK,QAAQ;EACb,KACC,CAAC,OACD,CAAC,EAAE,MAAM,KAAK,KAAK;AAClB,UAAO,OAAO,KAAK,QAAQ,QAAQ,CAAC,OAAO,CAAC,KAAK,WAAW;AAC3D,QAAI,UAAU,IACb,KAAM,MAAc,WAAW,QAAQ,KAAK,OAAO,GAAG,GAAG,CACzD;AACD,WAAO;GACP,GAAE,CAAE,EAAQ;EACb;CACF,EAAC;AACH,QAAO,CAAC,OAAO,eAAgB;AAC/B"}
File without changes
@@ -0,0 +1,311 @@
1
+ main[data-css="atom_io_devtools"] {
2
+ --fg-color: #eee;
3
+ --bg-color: #111;
4
+ --bg-tint1: #222;
5
+ --fg-border: 1px solid var(--fg-color);
6
+ @media (prefers-color-scheme: light) {
7
+ --fg-color: #444;
8
+ --bg-color: #ddd;
9
+ --bg-tint1: #e3e3e3;
10
+ }
11
+ & {
12
+ box-sizing: border-box;
13
+ color: var(--fg-color);
14
+ background-color: var(--bg-color);
15
+ border: 2px solid var(--fg-color);
16
+ position: fixed;
17
+ right: 0;
18
+ bottom: 0;
19
+ height: 100%;
20
+ display: flex;
21
+ flex-flow: column;
22
+ max-height: 800px;
23
+ width: 100%;
24
+ max-width: 500px;
25
+ overflow-y: scroll;
26
+ }
27
+ * {
28
+ font-size: 16px;
29
+ font-family: theia, monospace;
30
+ }
31
+ > header {
32
+ padding: 5px;
33
+ padding-left: 10px;
34
+ padding-bottom: 0;
35
+ display: flex;
36
+ justify-content: space-between;
37
+ h1 {
38
+ font-size: inherit;
39
+ margin: 0;
40
+ font-size: 24px;
41
+ font-family: charter, serif;
42
+ }
43
+ nav {
44
+ display: flex;
45
+ flex-flow: row nowrap;
46
+ button {
47
+ cursor: pointer;
48
+ background: none;
49
+ border: none;
50
+ padding: none;
51
+ margin-bottom: -2px;
52
+ z-index: 1000;
53
+ &:disabled {
54
+ cursor: default;
55
+ background-color: var(--bg-tint1);
56
+ color: var(--fg-color);
57
+ border: var(--fg-border);
58
+ border-bottom: none;
59
+ }
60
+ }
61
+ }
62
+ }
63
+ > main {
64
+ background: var(--bg-tint1);
65
+ }
66
+ main {
67
+ overflow-y: scroll;
68
+ flex-grow: 1;
69
+ display: flex;
70
+ flex-flow: column;
71
+ gap: 0;
72
+ article.index {
73
+ .node .node {
74
+ border-right: var(--fg-border);
75
+ padding-right: 0;
76
+ background: #fff3;
77
+ }
78
+ .node > .node {
79
+ margin: 5px 0;
80
+ margin-left: 12px;
81
+ border-left: var(--fg-border);
82
+ }
83
+ .node {
84
+ border-top: var(--fg-border);
85
+ overflow-x: scroll;
86
+ padding: 5px;
87
+ &:last-of-type {
88
+ border-bottom: var(--fg-border);
89
+ }
90
+ &.transaction_update {
91
+ padding: 0;
92
+ }
93
+ header {
94
+ display: flex;
95
+ flex-flow: row;
96
+ gap: 5px;
97
+ position: sticky;
98
+ z-index: 999;
99
+ top: 0;
100
+ button.carat {
101
+ cursor: pointer;
102
+ background: none;
103
+ border: none;
104
+ width: 20px;
105
+ &.open {
106
+ transform: rotate(90deg);
107
+ }
108
+ &:disabled {
109
+ cursor: default;
110
+ }
111
+ }
112
+ > main {
113
+ display: flex;
114
+ flex-flow: row;
115
+ gap: 5px;
116
+ cursor: help;
117
+ h2 {
118
+ display: inline-block;
119
+ margin: 0;
120
+ }
121
+ .detail {
122
+ color: #777;
123
+ @media (prefers-color-scheme: light) {
124
+ color: #999;
125
+ }
126
+ }
127
+ }
128
+ }
129
+ main {
130
+ margin-left: 15px;
131
+ }
132
+ }
133
+ section.transaction_log {
134
+ margin-top: 0;
135
+ main {
136
+ display: flex;
137
+ flex-flow: row wrap;
138
+ gap: 5px;
139
+ .transaction_update {
140
+ width: 100%;
141
+ display: flex;
142
+ flex-flow: row;
143
+ align-items: flex-start;
144
+ justify-content: flex-start;
145
+ justify-items: flex-start;
146
+ align-content: flex-start;
147
+ border-left: var(--fg-border);
148
+ border-top: var(--fg-border);
149
+ header {
150
+ padding: 5px;
151
+ h4 {
152
+ margin: 0;
153
+ padding: 0;
154
+ font-size: inherit;
155
+ }
156
+ }
157
+ main {
158
+ margin-left: 0;
159
+ display: flex;
160
+ flex-flow: column;
161
+ gap: 0px;
162
+ border-left: 1px solid #333;
163
+ section ~ section {
164
+ border-top: 1px solid #333;
165
+ }
166
+ section {
167
+ padding: 5px;
168
+ &.transaction_output {
169
+ border-right: none;
170
+ }
171
+ &.transaction_impact {
172
+ padding: 5px;
173
+ }
174
+ margin: 0;
175
+ article {
176
+ border-left: var(--fg-border);
177
+ border-right: var(--fg-border);
178
+ .summary {
179
+ white-space: nowrap;
180
+ }
181
+ }
182
+ }
183
+ }
184
+ }
185
+ }
186
+ }
187
+ section.timeline_log {
188
+ header {
189
+ display: flex;
190
+ > main {
191
+ display: flex;
192
+ width: 100%;
193
+ flex-grow: 1;
194
+ .gap {
195
+ flex-grow: 1;
196
+ }
197
+ nav {
198
+ display: flex;
199
+ flex-flow: row nowrap;
200
+ gap: 5px;
201
+ }
202
+ }
203
+ }
204
+ .timeline_update {
205
+ padding: 5px;
206
+ border-left: var(--fg-border);
207
+ h4 {
208
+ margin: 0;
209
+ padding: 0;
210
+ font-size: inherit;
211
+ }
212
+ main {
213
+ margin: 0;
214
+ .node.atom_update {
215
+ border-left: var(--fg-border);
216
+ }
217
+ }
218
+ }
219
+ .you_are_here {
220
+ background: var(--fg-color);
221
+ color: var(--bg-color);
222
+ text-align: center;
223
+ }
224
+ }
225
+ }
226
+ }
227
+ footer {
228
+ display: flex;
229
+ justify-content: flex-end;
230
+ button {
231
+ cursor: pointer;
232
+ background: none;
233
+ border: none;
234
+ padding: none;
235
+ position: absolute;
236
+ right: 0;
237
+ bottom: 0;
238
+ }
239
+ }
240
+
241
+ .json_editor {
242
+ input {
243
+ font-family: theia, monospace;
244
+ border: none;
245
+ border-bottom: 1px solid;
246
+ background: none;
247
+ &:disabled {
248
+ border: none;
249
+ }
250
+ }
251
+ button {
252
+ background: none;
253
+ color: #777;
254
+ border: none;
255
+ font-family: theia, monospace;
256
+ font-size: 14px;
257
+ margin: none;
258
+ padding: 4px;
259
+ padding-bottom: 6px;
260
+ cursor: pointer;
261
+ &:hover {
262
+ color: #333;
263
+ background-color: #aaa;
264
+ }
265
+ }
266
+ select {
267
+ font-family: theia, monospace;
268
+ font-size: 14px;
269
+ background: none;
270
+ border: none;
271
+ color: #777;
272
+ @media (prefers-color-scheme: light) {
273
+ color: #999;
274
+ }
275
+ }
276
+ .json_editor_unofficial {
277
+ background-color: #777;
278
+ button {
279
+ color: #333;
280
+ }
281
+ }
282
+ .json_editor_missing {
283
+ background-color: #f055;
284
+ }
285
+ .json_editor_key {
286
+ padding-right: 10px;
287
+ input {
288
+ color: #999;
289
+ @media (prefers-color-scheme: light) {
290
+ color: #777;
291
+ }
292
+ }
293
+ }
294
+ .json_editor_object {
295
+ border-left: 2px solid #333;
296
+ padding-left: 20px;
297
+ @media (prefers-color-scheme: light) {
298
+ border-color: #ccc;
299
+ }
300
+ .json_editor_properties {
301
+ > * {
302
+ border-bottom: var(--fg-border);
303
+ margin-bottom: 2px;
304
+ }
305
+ }
306
+ }
307
+ }
308
+ }
309
+
310
+
311
+ /*# sourceMappingURL=devtools-Jyn42mZm.css.map*/
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-Jyn42mZm.css","names":[],"sources":["src/react-devtools/devtools.css"],"sourcesContent":["main[data-css=\"atom_io_devtools\"] {\n\t--fg-color: #eee;\n\t--bg-color: #111;\n\t--bg-tint1: #222;\n\t--fg-border: 1px solid var(--fg-color);\n\t@media (prefers-color-scheme: light) {\n\t\t--fg-color: #444;\n\t\t--bg-color: #ddd;\n\t\t--bg-tint1: #e3e3e3;\n\t}\n\t& {\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: 16px;\n\t\tfont-family: theia, monospace;\n\t}\n\t> header {\n\t\tpadding: 5px;\n\t\tpadding-left: 10px;\n\t\tpadding-bottom: 0;\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\th1 {\n\t\t\tfont-size: inherit;\n\t\t\tmargin: 0;\n\t\t\tfont-size: 24px;\n\t\t\tfont-family: charter, serif;\n\t\t}\n\t\tnav {\n\t\t\tdisplay: flex;\n\t\t\tflex-flow: row nowrap;\n\t\t\tbutton {\n\t\t\t\tcursor: pointer;\n\t\t\t\tbackground: none;\n\t\t\t\tborder: none;\n\t\t\t\tpadding: none;\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(--bg-tint1);\n\t\t\t\t\tcolor: var(--fg-color);\n\t\t\t\t\tborder: var(--fg-border);\n\t\t\t\t\tborder-bottom: none;\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\tmain {\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\t.node .node {\n\t\t\t\tborder-right: var(--fg-border);\n\t\t\t\tpadding-right: 0;\n\t\t\t\tbackground: #fff3;\n\t\t\t}\n\t\t\t.node > .node {\n\t\t\t\tmargin: 5px 0;\n\t\t\t\tmargin-left: 12px;\n\t\t\t\tborder-left: var(--fg-border);\n\t\t\t}\n\t\t\t.node {\n\t\t\t\tborder-top: var(--fg-border);\n\t\t\t\toverflow-x: scroll;\n\t\t\t\tpadding: 5px;\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-bottom: var(--fg-border);\n\t\t\t\t}\n\t\t\t\t&.transaction_update {\n\t\t\t\t\tpadding: 0;\n\t\t\t\t}\n\t\t\t\theader {\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tflex-flow: row;\n\t\t\t\t\tgap: 5px;\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\tbutton.carat {\n\t\t\t\t\t\tcursor: pointer;\n\t\t\t\t\t\tbackground: none;\n\t\t\t\t\t\tborder: none;\n\t\t\t\t\t\twidth: 20px;\n\t\t\t\t\t\t&.open {\n\t\t\t\t\t\t\ttransform: rotate(90deg);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t&:disabled {\n\t\t\t\t\t\t\tcursor: default;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\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\tgap: 5px;\n\t\t\t\t\t\tcursor: help;\n\t\t\t\t\t\th2 {\n\t\t\t\t\t\t\tdisplay: inline-block;\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\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}\n\t\t\t\tmain {\n\t\t\t\t\tmargin-left: 15px;\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\tfooter {\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\tinput {\n\t\t\tfont-family: theia, monospace;\n\t\t\tborder: none;\n\t\t\tborder-bottom: 1px solid;\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\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\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\tcolor: #333;\n\t\t\t\tbackground-color: #aaa;\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: 10px;\n\t\t\tinput {\n\t\t\t\tcolor: #999;\n\t\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\t\tcolor: #777;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t.json_editor_object {\n\t\t\tborder-left: 2px solid #333;\n\t\t\tpadding-left: 20px;\n\t\t\t@media (prefers-color-scheme: light) {\n\t\t\t\tborder-color: #ccc;\n\t\t\t}\n\t\t\t.json_editor_properties {\n\t\t\t\t> * {\n\t\t\t\t\tborder-bottom: var(--fg-border);\n\t\t\t\t\tmargin-bottom: 2px;\n\t\t\t\t}\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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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"}
@@ -0,0 +1,36 @@
1
+ import { __export } from "../chunk-Cl8Af3a2.js";
2
+ import { ESLintUtils } from "@typescript-eslint/utils";
3
+ import { ESLint, Rule } from "eslint";
4
+ import { RuleType } from "@eslint/core";
5
+
6
+ //#region src/eslint-plugin/rules/explicit-state-types.d.ts
7
+ declare const explicitStateTypes: ESLintUtils.RuleModule<`noTypeArgument`, [], unknown, ESLintUtils.RuleListener>;
8
+
9
+ //#endregion
10
+ //#region src/eslint-plugin/rules/synchronous-selector-dependencies.d.ts
11
+ declare const synchronousSelectorDependencies: {
12
+ meta: {
13
+ type: RuleType;
14
+ docs: {
15
+ description: string;
16
+ category: string;
17
+ recommended: boolean;
18
+ url: string;
19
+ };
20
+ schema: never[];
21
+ };
22
+ create(context: Rule.RuleContext): Rule.NodeListener;
23
+ };
24
+
25
+ //#endregion
26
+ //#region src/eslint-plugin/rules/index.d.ts
27
+ declare namespace index_d_exports {
28
+ export { explicitStateTypes, synchronousSelectorDependencies };
29
+ }
30
+ //#endregion
31
+ //#region src/eslint-plugin/index.d.ts
32
+ declare const plugin: ESLint.Plugin;
33
+
34
+ //#endregion
35
+ export { index_d_exports as Rules, plugin as default };
36
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":["explicitStateTypes: ESLintUtils.RuleModule<\n\t`noTypeArgument`,\n\t[],\n\tunknown,\n\tESLintUtils.RuleListener\n>","synchronousSelectorDependencies: {\n\tmeta: {\n\t\ttype: RuleType\n\t\tdocs: {\n\t\t\tdescription: string\n\t\t\tcategory: string\n\t\t\trecommended: boolean\n\t\t\turl: string\n\t\t}\n\t\tschema: never[]\n\t}\n\tcreate(context: Rule.RuleContext): Rule.NodeListener\n}","context: Rule.RuleContext","plugin: ESLint.Plugin"],"sources":["../../src/eslint-plugin/rules/explicit-state-types.ts","../../src/eslint-plugin/rules/synchronous-selector-dependencies.ts","../../src/eslint-plugin/rules/index.ts","../../src/eslint-plugin/index.ts"],"sourcesContent":null,"mappings":";;;;;;cASaA,oBAAoB,WAAA,CAAY,0CAI5C,WAAA,CAAY;;;;cCNAC;;UAEL;;MDAR,WAAaD,EAAAA,MAAAA;MAIA,QAAA,EAAA,MAAA;MAAA,WAAZ,EAAA,OAAY;MAAA,GAAA,EAJoB,MAAA;IAAY,CAAA;;;kBCS5B,IAAA,CAAK,cAAc,IAAA,CAAK;AAXzC,CAAA;;;;;;;;;cEDMG,QAAQ,MAAA,CAAO"}