mates-devtools 0.1.0-beta.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 (379) hide show
  1. package/dist/mates-devtools.es.js +3464 -0
  2. package/dist/mates-devtools.umd.js +650 -0
  3. package/dist/types/Mates-DevTools/src/MatesDevTools.d.ts +5 -0
  4. package/dist/types/Mates-DevTools/src/MatesDevTools.d.ts.map +1 -0
  5. package/dist/types/Mates-DevTools/src/MatesDevToolsComponent.d.ts +24 -0
  6. package/dist/types/Mates-DevTools/src/MatesDevToolsComponent.d.ts.map +1 -0
  7. package/dist/types/Mates-DevTools/src/components/AtomsViewer.d.ts +2 -0
  8. package/dist/types/Mates-DevTools/src/components/AtomsViewer.d.ts.map +1 -0
  9. package/dist/types/Mates-DevTools/src/components/ComponentInspector.d.ts +27 -0
  10. package/dist/types/Mates-DevTools/src/components/ComponentInspector.d.ts.map +1 -0
  11. package/dist/types/Mates-DevTools/src/components/ComponentList.d.ts +11 -0
  12. package/dist/types/Mates-DevTools/src/components/ComponentList.d.ts.map +1 -0
  13. package/dist/types/Mates-DevTools/src/components/ComponentTree.d.ts +9 -0
  14. package/dist/types/Mates-DevTools/src/components/ComponentTree.d.ts.map +1 -0
  15. package/dist/types/Mates-DevTools/src/components/Header.d.ts +10 -0
  16. package/dist/types/Mates-DevTools/src/components/Header.d.ts.map +1 -0
  17. package/dist/types/Mates-DevTools/src/components/Highlight.d.ts +6 -0
  18. package/dist/types/Mates-DevTools/src/components/Highlight.d.ts.map +1 -0
  19. package/dist/types/Mates-DevTools/src/components/HooksViewer.d.ts +7 -0
  20. package/dist/types/Mates-DevTools/src/components/HooksViewer.d.ts.map +1 -0
  21. package/dist/types/Mates-DevTools/src/components/LogsViewer.d.ts +6 -0
  22. package/dist/types/Mates-DevTools/src/components/LogsViewer.d.ts.map +1 -0
  23. package/dist/types/Mates-DevTools/src/components/PerfViewer.d.ts +7 -0
  24. package/dist/types/Mates-DevTools/src/components/PerfViewer.d.ts.map +1 -0
  25. package/dist/types/Mates-DevTools/src/components/PropsViewer.d.ts +2 -0
  26. package/dist/types/Mates-DevTools/src/components/PropsViewer.d.ts.map +1 -0
  27. package/dist/types/Mates-DevTools/src/components/ScopesViewer.d.ts +2 -0
  28. package/dist/types/Mates-DevTools/src/components/ScopesViewer.d.ts.map +1 -0
  29. package/dist/types/Mates-DevTools/src/components/TimerLogger.d.ts +5 -0
  30. package/dist/types/Mates-DevTools/src/components/TimerLogger.d.ts.map +1 -0
  31. package/dist/types/Mates-DevTools/src/components/UseStateViewer.d.ts +12 -0
  32. package/dist/types/Mates-DevTools/src/components/UseStateViewer.d.ts.map +1 -0
  33. package/dist/types/Mates-DevTools/src/components/ValueTree.d.ts +19 -0
  34. package/dist/types/Mates-DevTools/src/components/ValueTree.d.ts.map +1 -0
  35. package/dist/types/Mates-DevTools/src/index.d.ts +23 -0
  36. package/dist/types/Mates-DevTools/src/index.d.ts.map +1 -0
  37. package/dist/types/Mates-DevTools/src/interceptTimers.d.ts +11 -0
  38. package/dist/types/Mates-DevTools/src/interceptTimers.d.ts.map +1 -0
  39. package/dist/types/Mates-DevTools/src/logStore.d.ts +38 -0
  40. package/dist/types/Mates-DevTools/src/logStore.d.ts.map +1 -0
  41. package/dist/types/Mates-DevTools/src/perfStore.d.ts +36 -0
  42. package/dist/types/Mates-DevTools/src/perfStore.d.ts.map +1 -0
  43. package/dist/types/Mates-DevTools/src/registry.d.ts +68 -0
  44. package/dist/types/Mates-DevTools/src/registry.d.ts.map +1 -0
  45. package/dist/types/Mates-DevTools/src/styles.d.ts +833 -0
  46. package/dist/types/Mates-DevTools/src/styles.d.ts.map +1 -0
  47. package/dist/types/Mates-DevTools/src/types.d.ts +19 -0
  48. package/dist/types/Mates-DevTools/src/types.d.ts.map +1 -0
  49. package/dist/types/lib/Directives/$.d.ts +371 -0
  50. package/dist/types/lib/Directives/$.d.ts.map +1 -0
  51. package/dist/types/lib/Directives/animatedConditional.d.ts +67 -0
  52. package/dist/types/lib/Directives/animatedConditional.d.ts.map +1 -0
  53. package/dist/types/lib/Directives/animationClasses.d.ts +50 -0
  54. package/dist/types/lib/Directives/animationClasses.d.ts.map +1 -0
  55. package/dist/types/lib/Directives/attrDirective.d.ts +69 -0
  56. package/dist/types/lib/Directives/attrDirective.d.ts.map +1 -0
  57. package/dist/types/lib/Directives/classesDirective.d.ts +79 -0
  58. package/dist/types/lib/Directives/classesDirective.d.ts.map +1 -0
  59. package/dist/types/lib/Directives/eleHook.d.ts +84 -0
  60. package/dist/types/lib/Directives/eleHook.d.ts.map +1 -0
  61. package/dist/types/lib/Directives/eventBinding.d.ts +29 -0
  62. package/dist/types/lib/Directives/eventBinding.d.ts.map +1 -0
  63. package/dist/types/lib/Directives/htmlHook.d.ts +101 -0
  64. package/dist/types/lib/Directives/htmlHook.d.ts.map +1 -0
  65. package/dist/types/lib/Directives/index.d.ts +18 -0
  66. package/dist/types/lib/Directives/index.d.ts.map +1 -0
  67. package/dist/types/lib/Directives/intersectDirective.d.ts +67 -0
  68. package/dist/types/lib/Directives/intersectDirective.d.ts.map +1 -0
  69. package/dist/types/lib/Directives/lazyLoadDirective.d.ts +66 -0
  70. package/dist/types/lib/Directives/lazyLoadDirective.d.ts.map +1 -0
  71. package/dist/types/lib/Directives/lifecycleDirectives.d.ts +56 -0
  72. package/dist/types/lib/Directives/lifecycleDirectives.d.ts.map +1 -0
  73. package/dist/types/lib/Directives/masonryGrid.d.ts +114 -0
  74. package/dist/types/lib/Directives/masonryGrid.d.ts.map +1 -0
  75. package/dist/types/lib/Directives/memoTemplate.d.ts +94 -0
  76. package/dist/types/lib/Directives/memoTemplate.d.ts.map +1 -0
  77. package/dist/types/lib/Directives/onDirective.d.ts +71 -0
  78. package/dist/types/lib/Directives/onDirective.d.ts.map +1 -0
  79. package/dist/types/lib/Directives/onParentDirective.d.ts +34 -0
  80. package/dist/types/lib/Directives/onParentDirective.d.ts.map +1 -0
  81. package/dist/types/lib/Directives/renderSwitch.d.ts +55 -0
  82. package/dist/types/lib/Directives/renderSwitch.d.ts.map +1 -0
  83. package/dist/types/lib/Directives/resolveAttrValue.d.ts +35 -0
  84. package/dist/types/lib/Directives/resolveAttrValue.d.ts.map +1 -0
  85. package/dist/types/lib/Directives/styleDirective.d.ts +81 -0
  86. package/dist/types/lib/Directives/styleDirective.d.ts.map +1 -0
  87. package/dist/types/lib/Directives/timerDirective.d.ts +52 -0
  88. package/dist/types/lib/Directives/timerDirective.d.ts.map +1 -0
  89. package/dist/types/lib/Directives/virtualHelpers.d.ts +10 -0
  90. package/dist/types/lib/Directives/virtualHelpers.d.ts.map +1 -0
  91. package/dist/types/lib/Fetch/ErrorTypes.d.ts +74 -0
  92. package/dist/types/lib/Fetch/ErrorTypes.d.ts.map +1 -0
  93. package/dist/types/lib/Fetch/Fetch.d.ts +168 -0
  94. package/dist/types/lib/Fetch/Fetch.d.ts.map +1 -0
  95. package/dist/types/lib/Fetch/index.d.ts +3 -0
  96. package/dist/types/lib/Fetch/index.d.ts.map +1 -0
  97. package/dist/types/lib/Mutables/Extended Atoms/cacheAtom.d.ts +156 -0
  98. package/dist/types/lib/Mutables/Extended Atoms/cacheAtom.d.ts.map +1 -0
  99. package/dist/types/lib/Mutables/Extended Atoms/index.d.ts +4 -0
  100. package/dist/types/lib/Mutables/Extended Atoms/index.d.ts.map +1 -0
  101. package/dist/types/lib/Mutables/Extended Atoms/paginationAtom.d.ts +32 -0
  102. package/dist/types/lib/Mutables/Extended Atoms/paginationAtom.d.ts.map +1 -0
  103. package/dist/types/lib/Mutables/Extended Atoms/themeAtom.d.ts +59 -0
  104. package/dist/types/lib/Mutables/Extended Atoms/themeAtom.d.ts.map +1 -0
  105. package/dist/types/lib/Mutables/atom/atom.d.ts +148 -0
  106. package/dist/types/lib/Mutables/atom/atom.d.ts.map +1 -0
  107. package/dist/types/lib/Mutables/atom/createTimedAtom.d.ts +43 -0
  108. package/dist/types/lib/Mutables/atom/createTimedAtom.d.ts.map +1 -0
  109. package/dist/types/lib/Mutables/atom/debouncedAtom.d.ts +37 -0
  110. package/dist/types/lib/Mutables/atom/debouncedAtom.d.ts.map +1 -0
  111. package/dist/types/lib/Mutables/atom/index.d.ts +10 -0
  112. package/dist/types/lib/Mutables/atom/index.d.ts.map +1 -0
  113. package/dist/types/lib/Mutables/atom/mapAtom.d.ts +105 -0
  114. package/dist/types/lib/Mutables/atom/mapAtom.d.ts.map +1 -0
  115. package/dist/types/lib/Mutables/atom/setAtom.d.ts +107 -0
  116. package/dist/types/lib/Mutables/atom/setAtom.d.ts.map +1 -0
  117. package/dist/types/lib/Mutables/atom/storageAtom.d.ts +44 -0
  118. package/dist/types/lib/Mutables/atom/storageAtom.d.ts.map +1 -0
  119. package/dist/types/lib/Mutables/atom/throttledAtom.d.ts +37 -0
  120. package/dist/types/lib/Mutables/atom/throttledAtom.d.ts.map +1 -0
  121. package/dist/types/lib/Mutables/atom/titleAtom.d.ts +20 -0
  122. package/dist/types/lib/Mutables/atom/titleAtom.d.ts.map +1 -0
  123. package/dist/types/lib/Mutables/effect/effect.d.ts +31 -0
  124. package/dist/types/lib/Mutables/effect/effect.d.ts.map +1 -0
  125. package/dist/types/lib/Mutables/effect/index.d.ts +2 -0
  126. package/dist/types/lib/Mutables/effect/index.d.ts.map +1 -0
  127. package/dist/types/lib/Mutables/events/events.d.ts +123 -0
  128. package/dist/types/lib/Mutables/events/events.d.ts.map +1 -0
  129. package/dist/types/lib/Mutables/events/index.d.ts +2 -0
  130. package/dist/types/lib/Mutables/events/index.d.ts.map +1 -0
  131. package/dist/types/lib/Mutables/events/xTabEvent.d.ts +61 -0
  132. package/dist/types/lib/Mutables/events/xTabEvent.d.ts.map +1 -0
  133. package/dist/types/lib/Mutables/form/formAtom.d.ts +56 -0
  134. package/dist/types/lib/Mutables/form/formAtom.d.ts.map +1 -0
  135. package/dist/types/lib/Mutables/form/index.d.ts +5 -0
  136. package/dist/types/lib/Mutables/form/index.d.ts.map +1 -0
  137. package/dist/types/lib/Mutables/form/transformers.d.ts +4 -0
  138. package/dist/types/lib/Mutables/form/transformers.d.ts.map +1 -0
  139. package/dist/types/lib/Mutables/form/validateAll.d.ts +40 -0
  140. package/dist/types/lib/Mutables/form/validateAll.d.ts.map +1 -0
  141. package/dist/types/lib/Mutables/form/validators.d.ts +61 -0
  142. package/dist/types/lib/Mutables/form/validators.d.ts.map +1 -0
  143. package/dist/types/lib/Mutables/index.d.ts +13 -0
  144. package/dist/types/lib/Mutables/index.d.ts.map +1 -0
  145. package/dist/types/lib/Mutables/memo/index.d.ts +2 -0
  146. package/dist/types/lib/Mutables/memo/index.d.ts.map +1 -0
  147. package/dist/types/lib/Mutables/memo/memo.d.ts +47 -0
  148. package/dist/types/lib/Mutables/memo/memo.d.ts.map +1 -0
  149. package/dist/types/lib/Mutables/reactiveRunner/index.d.ts +4 -0
  150. package/dist/types/lib/Mutables/reactiveRunner/index.d.ts.map +1 -0
  151. package/dist/types/lib/Mutables/reactiveRunner/reactiveRunner.d.ts +56 -0
  152. package/dist/types/lib/Mutables/reactiveRunner/reactiveRunner.d.ts.map +1 -0
  153. package/dist/types/lib/Mutables/reactiveRunner/trackAndSubscribe.d.ts +6 -0
  154. package/dist/types/lib/Mutables/reactiveRunner/trackAndSubscribe.d.ts.map +1 -0
  155. package/dist/types/lib/Mutables/reactiveRunner/validateReactiveFunction.d.ts +6 -0
  156. package/dist/types/lib/Mutables/reactiveRunner/validateReactiveFunction.d.ts.map +1 -0
  157. package/dist/types/lib/Mutables/ref/index.d.ts +2 -0
  158. package/dist/types/lib/Mutables/ref/index.d.ts.map +1 -0
  159. package/dist/types/lib/Mutables/ref/ref.d.ts +74 -0
  160. package/dist/types/lib/Mutables/ref/ref.d.ts.map +1 -0
  161. package/dist/types/lib/Mutables/scope/index.d.ts +2 -0
  162. package/dist/types/lib/Mutables/scope/index.d.ts.map +1 -0
  163. package/dist/types/lib/Mutables/scope/scope.d.ts +60 -0
  164. package/dist/types/lib/Mutables/scope/scope.d.ts.map +1 -0
  165. package/dist/types/lib/Mutables/store/index.d.ts +2 -0
  166. package/dist/types/lib/Mutables/store/index.d.ts.map +1 -0
  167. package/dist/types/lib/Mutables/store/store.d.ts +73 -0
  168. package/dist/types/lib/Mutables/store/store.d.ts.map +1 -0
  169. package/dist/types/lib/Mutables/useState/index.d.ts +2 -0
  170. package/dist/types/lib/Mutables/useState/index.d.ts.map +1 -0
  171. package/dist/types/lib/Mutables/useState/useState.d.ts +54 -0
  172. package/dist/types/lib/Mutables/useState/useState.d.ts.map +1 -0
  173. package/dist/types/lib/Mutables/useStore/hostContext.d.ts +13 -0
  174. package/dist/types/lib/Mutables/useStore/hostContext.d.ts.map +1 -0
  175. package/dist/types/lib/Mutables/useStore/index.d.ts +9 -0
  176. package/dist/types/lib/Mutables/useStore/index.d.ts.map +1 -0
  177. package/dist/types/lib/Mutables/useStore/lifecycle.d.ts +94 -0
  178. package/dist/types/lib/Mutables/useStore/lifecycle.d.ts.map +1 -0
  179. package/dist/types/lib/Mutables/useStore/onError.d.ts +21 -0
  180. package/dist/types/lib/Mutables/useStore/onError.d.ts.map +1 -0
  181. package/dist/types/lib/Mutables/useStore/onReferenceChange.d.ts +2 -0
  182. package/dist/types/lib/Mutables/useStore/onReferenceChange.d.ts.map +1 -0
  183. package/dist/types/lib/Mutables/useStore/safetyCheck.d.ts +2 -0
  184. package/dist/types/lib/Mutables/useStore/safetyCheck.d.ts.map +1 -0
  185. package/dist/types/lib/Mutables/useStore/setter.d.ts +52 -0
  186. package/dist/types/lib/Mutables/useStore/setter.d.ts.map +1 -0
  187. package/dist/types/lib/Mutables/useStore/subscription.d.ts +50 -0
  188. package/dist/types/lib/Mutables/useStore/subscription.d.ts.map +1 -0
  189. package/dist/types/lib/Mutables/useStore/useContext.d.ts +3 -0
  190. package/dist/types/lib/Mutables/useStore/useContext.d.ts.map +1 -0
  191. package/dist/types/lib/Mutables/useStore/useStore.d.ts +7 -0
  192. package/dist/types/lib/Mutables/useStore/useStore.d.ts.map +1 -0
  193. package/dist/types/lib/Router/Router.d.ts +54 -0
  194. package/dist/types/lib/Router/Router.d.ts.map +1 -0
  195. package/dist/types/lib/Router/animatedRouter.d.ts +48 -0
  196. package/dist/types/lib/Router/animatedRouter.d.ts.map +1 -0
  197. package/dist/types/lib/Router/buildPath.d.ts +20 -0
  198. package/dist/types/lib/Router/buildPath.d.ts.map +1 -0
  199. package/dist/types/lib/Router/hashAtom.d.ts +12 -0
  200. package/dist/types/lib/Router/hashAtom.d.ts.map +1 -0
  201. package/dist/types/lib/Router/index.d.ts +11 -0
  202. package/dist/types/lib/Router/index.d.ts.map +1 -0
  203. package/dist/types/lib/Router/isPathMatching.d.ts +12 -0
  204. package/dist/types/lib/Router/isPathMatching.d.ts.map +1 -0
  205. package/dist/types/lib/Router/location.d.ts +74 -0
  206. package/dist/types/lib/Router/location.d.ts.map +1 -0
  207. package/dist/types/lib/Router/navigateTo.d.ts +31 -0
  208. package/dist/types/lib/Router/navigateTo.d.ts.map +1 -0
  209. package/dist/types/lib/Router/navigationLock.d.ts +50 -0
  210. package/dist/types/lib/Router/navigationLock.d.ts.map +1 -0
  211. package/dist/types/lib/Router/pathAtom.d.ts +42 -0
  212. package/dist/types/lib/Router/pathAtom.d.ts.map +1 -0
  213. package/dist/types/lib/Router/pathResolver.d.ts +9 -0
  214. package/dist/types/lib/Router/pathResolver.d.ts.map +1 -0
  215. package/dist/types/lib/Router/qsAtom.d.ts +12 -0
  216. package/dist/types/lib/Router/qsAtom.d.ts.map +1 -0
  217. package/dist/types/lib/Template/index.d.ts +6 -0
  218. package/dist/types/lib/Template/index.d.ts.map +1 -0
  219. package/dist/types/lib/Template/scheduler.d.ts +59 -0
  220. package/dist/types/lib/Template/scheduler.d.ts.map +1 -0
  221. package/dist/types/lib/Template/x-x.d.ts +60 -0
  222. package/dist/types/lib/Template/x-x.d.ts.map +1 -0
  223. package/dist/types/lib/Template/x-x.types.d.ts +91 -0
  224. package/dist/types/lib/Template/x-x.types.d.ts.map +1 -0
  225. package/dist/types/lib/Template/x-x.utils.d.ts +15 -0
  226. package/dist/types/lib/Template/x-x.utils.d.ts.map +1 -0
  227. package/dist/types/lib/Template/x.d.ts +5 -0
  228. package/dist/types/lib/Template/x.d.ts.map +1 -0
  229. package/dist/types/lib/Template/xProvider.d.ts +2 -0
  230. package/dist/types/lib/Template/xProvider.d.ts.map +1 -0
  231. package/dist/types/lib/Timers/createManagedTimer.d.ts +12 -0
  232. package/dist/types/lib/Timers/createManagedTimer.d.ts.map +1 -0
  233. package/dist/types/lib/Timers/index.d.ts +4 -0
  234. package/dist/types/lib/Timers/index.d.ts.map +1 -0
  235. package/dist/types/lib/Timers/interval.d.ts +2 -0
  236. package/dist/types/lib/Timers/interval.d.ts.map +1 -0
  237. package/dist/types/lib/Timers/timeout.d.ts +2 -0
  238. package/dist/types/lib/Timers/timeout.d.ts.map +1 -0
  239. package/dist/types/lib/TrackState/componentStatus.d.ts +105 -0
  240. package/dist/types/lib/TrackState/componentStatus.d.ts.map +1 -0
  241. package/dist/types/lib/TrackState/readTracking.d.ts +20 -0
  242. package/dist/types/lib/TrackState/readTracking.d.ts.map +1 -0
  243. package/dist/types/lib/Utils/Context.d.ts +6 -0
  244. package/dist/types/lib/Utils/Context.d.ts.map +1 -0
  245. package/dist/types/lib/Utils/Date/calendar.d.ts +30 -0
  246. package/dist/types/lib/Utils/Date/calendar.d.ts.map +1 -0
  247. package/dist/types/lib/Utils/Date/core.d.ts +29 -0
  248. package/dist/types/lib/Utils/Date/core.d.ts.map +1 -0
  249. package/dist/types/lib/Utils/Date/date.d.ts +60 -0
  250. package/dist/types/lib/Utils/Date/date.d.ts.map +1 -0
  251. package/dist/types/lib/Utils/Date/index.d.ts +3 -0
  252. package/dist/types/lib/Utils/Date/index.d.ts.map +1 -0
  253. package/dist/types/lib/Utils/deepClone.d.ts +7 -0
  254. package/dist/types/lib/Utils/deepClone.d.ts.map +1 -0
  255. package/dist/types/lib/Utils/deepFreeze.d.ts +2 -0
  256. package/dist/types/lib/Utils/deepFreeze.d.ts.map +1 -0
  257. package/dist/types/lib/Utils/getAllProps.d.ts +2 -0
  258. package/dist/types/lib/Utils/getAllProps.d.ts.map +1 -0
  259. package/dist/types/lib/Utils/helpers.d.ts +13 -0
  260. package/dist/types/lib/Utils/helpers.d.ts.map +1 -0
  261. package/dist/types/lib/Utils/index.d.ts +13 -0
  262. package/dist/types/lib/Utils/index.d.ts.map +1 -0
  263. package/dist/types/lib/Utils/is.d.ts +12 -0
  264. package/dist/types/lib/Utils/is.d.ts.map +1 -0
  265. package/dist/types/lib/Utils/isDefinedAsGetter.d.ts +2 -0
  266. package/dist/types/lib/Utils/isDefinedAsGetter.d.ts.map +1 -0
  267. package/dist/types/lib/Utils/logger.d.ts +22 -0
  268. package/dist/types/lib/Utils/logger.d.ts.map +1 -0
  269. package/dist/types/lib/Utils/notificationManager.d.ts +67 -0
  270. package/dist/types/lib/Utils/notificationManager.d.ts.map +1 -0
  271. package/dist/types/lib/Utils/registerCleanup.d.ts +7 -0
  272. package/dist/types/lib/Utils/registerCleanup.d.ts.map +1 -0
  273. package/dist/types/lib/Utils/svgIcon.d.ts +95 -0
  274. package/dist/types/lib/Utils/svgIcon.d.ts.map +1 -0
  275. package/dist/types/lib/Utils/uuid.d.ts +7 -0
  276. package/dist/types/lib/Utils/uuid.d.ts.map +1 -0
  277. package/dist/types/lib/ZeroPromise/index.d.ts +2 -0
  278. package/dist/types/lib/ZeroPromise/index.d.ts.map +1 -0
  279. package/dist/types/lib/ZeroPromise/zero.d.ts +23 -0
  280. package/dist/types/lib/ZeroPromise/zero.d.ts.map +1 -0
  281. package/dist/types/lib/actions/action.d.ts +14 -0
  282. package/dist/types/lib/actions/action.d.ts.map +1 -0
  283. package/dist/types/lib/actions/animatePresets.d.ts +38 -0
  284. package/dist/types/lib/actions/animatePresets.d.ts.map +1 -0
  285. package/dist/types/lib/actions/animateSwap.d.ts +79 -0
  286. package/dist/types/lib/actions/animateSwap.d.ts.map +1 -0
  287. package/dist/types/lib/actions/animateTypes.d.ts +103 -0
  288. package/dist/types/lib/actions/animateTypes.d.ts.map +1 -0
  289. package/dist/types/lib/actions/asyncAction.d.ts +4 -0
  290. package/dist/types/lib/actions/asyncAction.d.ts.map +1 -0
  291. package/dist/types/lib/actions/asyncActionCache.d.ts +16 -0
  292. package/dist/types/lib/actions/asyncActionCache.d.ts.map +1 -0
  293. package/dist/types/lib/actions/asyncActionPolling.d.ts +14 -0
  294. package/dist/types/lib/actions/asyncActionPolling.d.ts.map +1 -0
  295. package/dist/types/lib/actions/asyncActionTypes.d.ts +74 -0
  296. package/dist/types/lib/actions/asyncActionTypes.d.ts.map +1 -0
  297. package/dist/types/lib/actions/createTimingFunction.d.ts +23 -0
  298. package/dist/types/lib/actions/createTimingFunction.d.ts.map +1 -0
  299. package/dist/types/lib/actions/debounce.d.ts +10 -0
  300. package/dist/types/lib/actions/debounce.d.ts.map +1 -0
  301. package/dist/types/lib/actions/index.d.ts +12 -0
  302. package/dist/types/lib/actions/index.d.ts.map +1 -0
  303. package/dist/types/lib/actions/paginatedAsyncAction.d.ts +121 -0
  304. package/dist/types/lib/actions/paginatedAsyncAction.d.ts.map +1 -0
  305. package/dist/types/lib/actions/taskAction.d.ts +105 -0
  306. package/dist/types/lib/actions/taskAction.d.ts.map +1 -0
  307. package/dist/types/lib/actions/throttle.d.ts +9 -0
  308. package/dist/types/lib/actions/throttle.d.ts.map +1 -0
  309. package/dist/types/lib/css-in-js/cl.d.ts +37 -0
  310. package/dist/types/lib/css-in-js/cl.d.ts.map +1 -0
  311. package/dist/types/lib/css-in-js/index.d.ts +7 -0
  312. package/dist/types/lib/css-in-js/index.d.ts.map +1 -0
  313. package/dist/types/lib/css-in-js/sanitize.d.ts +31 -0
  314. package/dist/types/lib/css-in-js/sanitize.d.ts.map +1 -0
  315. package/dist/types/lib/css-in-js/serialize.d.ts +98 -0
  316. package/dist/types/lib/css-in-js/serialize.d.ts.map +1 -0
  317. package/dist/types/lib/css-in-js/stylesheet.d.ts +188 -0
  318. package/dist/types/lib/css-in-js/stylesheet.d.ts.map +1 -0
  319. package/dist/types/lib/css-in-js/theme.d.ts +110 -0
  320. package/dist/types/lib/css-in-js/theme.d.ts.map +1 -0
  321. package/dist/types/lib/devtools/devtoolsHooks.d.ts +101 -0
  322. package/dist/types/lib/devtools/devtoolsHooks.d.ts.map +1 -0
  323. package/dist/types/lib/devtools/index.d.ts +2 -0
  324. package/dist/types/lib/devtools/index.d.ts.map +1 -0
  325. package/dist/types/lib/index.d.ts +46 -0
  326. package/dist/types/lib/index.d.ts.map +1 -0
  327. package/dist/types/lib/on/hooks.d.ts +319 -0
  328. package/dist/types/lib/on/hooks.d.ts.map +1 -0
  329. package/dist/types/lib/on/index.d.ts +3 -0
  330. package/dist/types/lib/on/index.d.ts.map +1 -0
  331. package/dist/types/lib/on/on.d.ts +16 -0
  332. package/dist/types/lib/on/on.d.ts.map +1 -0
  333. package/dist/types/lib/portals/dialog.d.ts +56 -0
  334. package/dist/types/lib/portals/dialog.d.ts.map +1 -0
  335. package/dist/types/lib/portals/index.d.ts +9 -0
  336. package/dist/types/lib/portals/index.d.ts.map +1 -0
  337. package/dist/types/lib/portals/popup.d.ts +37 -0
  338. package/dist/types/lib/portals/popup.d.ts.map +1 -0
  339. package/dist/types/lib/portals/portal.d.ts +57 -0
  340. package/dist/types/lib/portals/portal.d.ts.map +1 -0
  341. package/dist/types/lib/portals/tip.d.ts +38 -0
  342. package/dist/types/lib/portals/tip.d.ts.map +1 -0
  343. package/dist/types/lib/socket/index.d.ts +2 -0
  344. package/dist/types/lib/socket/index.d.ts.map +1 -0
  345. package/dist/types/lib/socket/ws.d.ts +83 -0
  346. package/dist/types/lib/socket/ws.d.ts.map +1 -0
  347. package/dist/types/lib/ssr/index.d.ts +3 -0
  348. package/dist/types/lib/ssr/index.d.ts.map +1 -0
  349. package/dist/types/lib/ssr/ssr-bridge.d.ts +89 -0
  350. package/dist/types/lib/ssr/ssr-bridge.d.ts.map +1 -0
  351. package/dist/types/lib/ssr/ssrFlag.d.ts +38 -0
  352. package/dist/types/lib/ssr/ssrFlag.d.ts.map +1 -0
  353. package/dist/types/lib/virtualizer/ScrollerController.d.ts +54 -0
  354. package/dist/types/lib/virtualizer/ScrollerController.d.ts.map +1 -0
  355. package/dist/types/lib/virtualizer/Virtualizer.d.ts +214 -0
  356. package/dist/types/lib/virtualizer/Virtualizer.d.ts.map +1 -0
  357. package/dist/types/lib/virtualizer/events.d.ts +27 -0
  358. package/dist/types/lib/virtualizer/events.d.ts.map +1 -0
  359. package/dist/types/lib/virtualizer/layouts/flow.d.ts +123 -0
  360. package/dist/types/lib/virtualizer/layouts/flow.d.ts.map +1 -0
  361. package/dist/types/lib/virtualizer/layouts/grid.d.ts +25 -0
  362. package/dist/types/lib/virtualizer/layouts/grid.d.ts.map +1 -0
  363. package/dist/types/lib/virtualizer/layouts/masonry.d.ts +37 -0
  364. package/dist/types/lib/virtualizer/layouts/masonry.d.ts.map +1 -0
  365. package/dist/types/lib/virtualizer/layouts/shared/BaseLayout.d.ts +204 -0
  366. package/dist/types/lib/virtualizer/layouts/shared/BaseLayout.d.ts.map +1 -0
  367. package/dist/types/lib/virtualizer/layouts/shared/GridBaseLayout.d.ts +41 -0
  368. package/dist/types/lib/virtualizer/layouts/shared/GridBaseLayout.d.ts.map +1 -0
  369. package/dist/types/lib/virtualizer/layouts/shared/Layout.d.ts +138 -0
  370. package/dist/types/lib/virtualizer/layouts/shared/Layout.d.ts.map +1 -0
  371. package/dist/types/lib/virtualizer/layouts/shared/SizeCache.d.ts +19 -0
  372. package/dist/types/lib/virtualizer/layouts/shared/SizeCache.d.ts.map +1 -0
  373. package/dist/types/lib/virtualizer/layouts/shared/SizeGapPaddingBaseLayout.d.ts +57 -0
  374. package/dist/types/lib/virtualizer/layouts/shared/SizeGapPaddingBaseLayout.d.ts.map +1 -0
  375. package/dist/types/lib/virtualizer/mates-adapter.d.ts +201 -0
  376. package/dist/types/lib/virtualizer/mates-adapter.d.ts.map +1 -0
  377. package/dist/types/lib/virtualizer/virtualize.d.ts +52 -0
  378. package/dist/types/lib/virtualizer/virtualize.d.ts.map +1 -0
  379. package/package.json +45 -0
@@ -0,0 +1,650 @@
1
+ (function(s,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("mates"),require("mates/css-in-js")):typeof define=="function"&&define.amd?define(["exports","mates","mates/css-in-js"],i):(s=typeof globalThis<"u"?globalThis:s||self,i(s.MatesDevTools={},s.Mates,s.Mates))})(this,(function(s,i,Wt){"use strict";const Gt="selected",on="selected",cn=Wt.keyframes("mates-dt-flash",{"0%":{background:"var(--dt-flash-bg)",color:"#fff"},"100%":{background:"transparent",color:"var(--dt-text-muted)"}}),ot={"&::-webkit-scrollbar":{width:"6px"},"&::-webkit-scrollbar-track":{background:"transparent"},"&::-webkit-scrollbar-thumb":{background:"var(--dt-scrollbar)",borderRadius:"3px"},"&::-webkit-scrollbar-thumb:hover":{background:"var(--dt-scrollbar-hover)"}},r=Wt.globalCSS({fab:{position:"fixed",bottom:"50px",right:"50px",width:"44px",height:"44px",borderRadius:"50%",background:"var(--dt-bg)",border:"2px solid var(--dt-border)",color:"var(--dt-text-bright)",fontSize:"20px",lineHeight:"1",display:"flex",alignItems:"center",justifyContent:"center",cursor:"grab",zIndex:"100000",boxShadow:"0 2px 10px rgba(0,0,0,0.4)",userSelect:"none",transition:"box-shadow 0.15s ease, border-color 0.15s ease, transform 0.1s ease","-webkit-tap-highlight-color":"transparent","&:hover":{borderColor:"var(--dt-accent)",boxShadow:"0 4px 16px rgba(0,119,230,0.3)"},"&:active":{cursor:"grabbing",transform:"scale(0.95)"}},fabDragging:{cursor:"grabbing",transform:"scale(0.95)"},panel:{position:"fixed",bottom:"0",left:"0",right:"0",width:"100%",height:"320px",background:"var(--dt-bg)",borderTop:"1px solid var(--dt-border)",boxShadow:"0 -2px 12px rgba(0,0,0,0.4)",zIndex:"99999",display:"flex",flexDirection:"column",fontFamily:"'SF Mono', 'Fira Code', 'Consolas', monospace",fontSize:"13px",color:"var(--dt-text)",opacity:"0",transform:"translateY(12px)",transition:"opacity 0.2s ease, transform 0.2s ease",pointerEvents:"none"},panelVisible:{opacity:"1",transform:"translateY(0)",pointerEvents:"all"},minimized:{display:"none"},resizeHandle:{position:"absolute",top:"0",left:"0",right:"0",height:"4px",cursor:"ns-resize",zIndex:"1","&:hover":{background:"rgba(0,119,230,0.4)"}},header:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 10px",height:"38px",borderBottom:"1px solid var(--dt-border-2)",flexShrink:"0",gap:"16px"},headerLeft:{display:"flex",alignItems:"center",gap:"16px",minWidth:"0"},title:{fontWeight:"700",fontSize:"12px",color:"var(--dt-text-bright)",letterSpacing:"0.06em",textTransform:"uppercase",whiteSpace:"nowrap",flexShrink:"0"},controls:{display:"flex",alignItems:"center",gap:"4px",flexShrink:"0"},button:{background:"none",border:"none",color:"var(--dt-text-muted)",cursor:"pointer",padding:"4px 6px",borderRadius:"4px",fontSize:"13px",lineHeight:"1",display:"flex",alignItems:"center",justifyContent:"center",transition:"background 0.1s, color 0.1s","&:hover":{background:"var(--dt-bg-3)",color:"var(--dt-text-bright)"}},tabBar:{display:"flex",alignItems:"center",gap:"4px"},tabBtn:{background:"none",border:"none",color:"var(--dt-text-muted)",cursor:"pointer",padding:"4px 12px",borderRadius:"4px",fontSize:"12px",fontFamily:"inherit",fontWeight:"500",letterSpacing:"0.03em",transition:"background 0.1s, color 0.1s",position:"relative","&:hover":{background:"var(--dt-bg-3)",color:"var(--dt-text)"},"&.active":{color:"var(--dt-text-selected)",background:"var(--dt-bg-selected)"}},tabBadge:{display:"inline-flex",alignItems:"center",justifyContent:"center",background:"var(--dt-accent)",color:"#fff",borderRadius:"8px",fontSize:"10px",fontWeight:"700",minWidth:"16px",height:"16px",padding:"0 4px",marginLeft:"5px",lineHeight:"1"},body:{display:"flex",flex:"1",minHeight:"0",overflow:"hidden"},leftColumn:{width:"260px",minWidth:"160px",borderRight:"1px solid var(--dt-border-2)",display:"flex",flexDirection:"column",flexShrink:"0"},leftTabs:{display:"flex",gap:"4px",padding:"5px 8px",borderBottom:"1px solid var(--dt-border-2)",flexShrink:"0"},leftTabBtn:{background:"none",border:"none",color:"var(--dt-text-dim)",cursor:"pointer",padding:"3px 6px",borderRadius:"3px",display:"flex",alignItems:"center",justifyContent:"center",transition:"background 0.1s, color 0.1s","&:hover":{background:"var(--dt-bg-3)",color:"var(--dt-text)"},"&.active":{background:"var(--dt-bg-selected)",color:"var(--dt-text-selected)"}},content:{flex:"1",overflowY:"auto",...ot},componentSearch:{width:"100%",boxSizing:"border-box",background:"var(--dt-bg-input)",border:"none",borderBottom:"1px solid var(--dt-border-2)",color:"var(--dt-text)",fontFamily:"inherit",fontSize:"12px",padding:"6px 10px",outline:"none",flexShrink:"0","&::placeholder":{color:"var(--dt-text-dimmer)"},"&:focus":{borderBottomColor:"var(--dt-accent)"}},componentList:{listStyle:"none",margin:"0",padding:"4px 0"},componentItem:{display:"flex",alignItems:"center",gap:"6px",justifyContent:"space-between",padding:"5px 8px",cursor:"pointer",borderRadius:"3px",margin:"1px 4px",transition:"background 0.1s","&:hover":{background:"var(--dt-bg-hover)"},"&.selected":{background:"var(--dt-bg-selected)",color:"var(--dt-text-selected)"}},componentName:{flex:"1",minWidth:"0",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:"12px",color:"var(--dt-text)"},componentBadge:{display:"flex",alignItems:"center",gap:"6px",flexShrink:"0"},componentBadgeSelected:{display:"flex",alignItems:"center",gap:"6px",flexShrink:"0",color:"var(--dt-accent)"},componentCount:{fontSize:"11px",color:"var(--dt-text-dim)",background:"var(--dt-bg-3)",borderRadius:"8px",padding:"1px 6px",minWidth:"18px",textAlign:"center"},componentCountSelected:{fontSize:"11px",color:"var(--dt-accent)",background:"var(--dt-bg-3)",borderRadius:"8px",padding:"1px 6px",minWidth:"18px",textAlign:"center"},componentHighlightBtn:{background:"none",border:"none",color:"var(--dt-text-dim)",cursor:"pointer",padding:"2px 4px",borderRadius:"3px",fontSize:"11px",lineHeight:"1",display:"flex",alignItems:"center",opacity:"1",transition:"color 0.1s","&:hover":{color:"var(--dt-accent)"}},componentHighlightBtnSelected:{background:"none",border:"none",color:"var(--dt-accent)",cursor:"pointer",padding:"2px 4px",borderRadius:"3px",fontSize:"11px",lineHeight:"1",display:"flex",alignItems:"center",opacity:"1",transition:"color 0.1s","&:hover":{color:"var(--dt-accent)"}},empty:{padding:"16px 12px",color:"var(--dt-text-dimmer)",fontSize:"12px",textAlign:"center"},treeToggle:{background:"none",border:"none",color:"var(--dt-text-dim)",cursor:"pointer",padding:"0 3px",fontSize:"11px",lineHeight:"1",flexShrink:"0",width:"16px",textAlign:"center","&:hover":{color:"var(--dt-text)"}},treeLeaf:{display:"inline-block",width:"16px",flexShrink:"0",textAlign:"center",color:"var(--dt-text-dim)"},inspector:{flex:"1",minWidth:"0",overflowY:"auto",padding:"10px",...ot},inspectorBreadcrumb:{display:"flex",alignItems:"center",gap:"4px",marginBottom:"10px",flexWrap:"wrap"},breadcrumbSegment:{color:"var(--dt-text-dim)",cursor:"pointer",fontSize:"11px","&:hover":{color:"var(--dt-text-selected)"}},breadcrumbSeparator:{color:"var(--dt-border)",fontSize:"11px"},breadcrumbCurrent:{color:"var(--dt-text-selected)",fontSize:"11px"},inspectorTitle:{fontWeight:"600",fontSize:"13px",color:"var(--dt-text-bright)",marginBottom:"8px"},instanceCount:{fontSize:"11px",color:"var(--dt-text-dim)",marginBottom:"8px"},instanceList:{listStyle:"none",margin:"0 0 8px 0",padding:"0",display:"flex",flexDirection:"column",gap:"4px"},instanceGroup:{border:"1px solid var(--dt-border-2)",borderRadius:"4px",overflow:"hidden"},instanceItem:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"6px",padding:"5px 10px",cursor:"pointer",transition:"background 0.1s","&:hover":{background:"var(--dt-bg-hover)"},"&.selected":{background:"var(--dt-bg-selected)"}},instanceToggle:{background:"none",border:"none",color:"var(--dt-text-dim)",cursor:"pointer",padding:"0 3px",fontSize:"11px",flexShrink:"0","&:hover":{color:"var(--dt-text)"}},instanceToggleSelected:{background:"none",border:"none",color:"var(--dt-accent)",cursor:"pointer",padding:"0 3px",fontSize:"11px",flexShrink:"0","&:hover":{color:"var(--dt-accent)"}},instanceId:{fontSize:"11px",color:"var(--dt-text-dim)",flexShrink:"0",marginRight:"2px"},instanceDetails:{margin:"0 0 6px 0",padding:"8px 12px",borderLeft:"2px solid var(--dt-instance-border)",background:"var(--dt-instance-bg)",borderRadius:"0 4px 4px 0"},highlightBtn:{background:"none",border:"1px solid var(--dt-border)",color:"var(--dt-text-muted)",cursor:"pointer",padding:"2px 7px",borderRadius:"3px",fontSize:"11px",fontFamily:"inherit",transition:"border-color 0.1s, color 0.1s","&:hover":{borderColor:"var(--dt-accent)",color:"var(--dt-accent)"}},domHighlight:{position:"absolute",zIndex:"100001",pointerEvents:"none",border:"2px solid #e53e3e",background:"rgba(229,62,62,0.18)",borderRadius:"3px",transition:"opacity 0.6s ease"},hooksSummary:{display:"flex",flexWrap:"wrap",gap:"5px",marginBottom:"10px"},hookPill:{display:"inline-flex",alignItems:"center",gap:"4px",background:"var(--dt-bg-2)",border:"1px solid var(--dt-border)",borderRadius:"10px",padding:"2px 8px",fontSize:"11px"},hookPillLabel:{color:"var(--dt-text-muted)"},hookPillCount:{color:"var(--dt-hook-count)",fontWeight:"600"},sectionHeader:{fontSize:"10px",fontWeight:"700",textTransform:"uppercase",letterSpacing:"0.08em",color:"var(--dt-text-dim)",marginBottom:"4px",marginTop:"12px","&:first-child":{marginTop:"0"}},propItem:{display:"flex",alignItems:"baseline",gap:"8px",padding:"3px 0",fontSize:"12px",borderBottom:"1px solid var(--dt-border-3)"},propKey:{color:"var(--dt-prop-key)",flexShrink:"0",minWidth:"80px"},propValue:{color:"var(--dt-prop-val)",wordBreak:"break-all"},scopeItem:{padding:"3px 0",fontSize:"12px",borderBottom:"1px solid var(--dt-border-3)"},scopeName:{color:"var(--dt-scope-name)"},atomItem:{display:"flex",alignItems:"baseline",gap:"8px",padding:"3px 0",fontSize:"12px",borderBottom:"1px solid var(--dt-border-3)"},atomName:{color:"var(--dt-prop-key)",flexShrink:"0",minWidth:"80px"},atomValue:{color:"var(--dt-prop-val)",wordBreak:"break-all"},highlight:{display:"inline-block",padding:"1px 5px",borderRadius:"8px",fontSize:"11px",color:"var(--dt-text-muted)",background:"transparent",transition:"background 0.1s, color 0.1s"},highlightFlash:{animation:`${cn} 0.6s ease forwards`},logsPanel:{flex:"1",display:"flex",flexDirection:"column",minHeight:"0",overflow:"hidden"},logsToolbar:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",borderBottom:"1px solid var(--dt-border-2)",flexShrink:"0",gap:"10px"},logsFilterRow:{display:"flex",gap:"4px"},logsFilterBtn:{background:"none",border:"1px solid var(--dt-border)",color:"var(--dt-text-muted)",cursor:"pointer",padding:"2px 9px",borderRadius:"3px",fontSize:"11px",fontFamily:"inherit",transition:"border-color 0.1s, color 0.1s, background 0.1s","&:hover":{borderColor:"var(--dt-text-dim)",color:"var(--dt-text)"},"&.active":{borderColor:"var(--dt-border-selected)",color:"var(--dt-text-selected)",background:"var(--dt-bg-active)"}},logsActions:{display:"flex",gap:"6px",alignItems:"center"},logsCount:{fontSize:"11px",color:"var(--dt-text-dimmer)"},logsContainer:{flex:"1",overflowY:"auto",padding:"4px 0",...ot},logEntry:{display:"flex",alignItems:"baseline",gap:"8px",padding:"3px 10px",fontSize:"12px",borderBottom:"1px solid var(--dt-border-3)","&:hover":{background:"var(--dt-bg-hover)"}},logTs:{color:"var(--dt-text-dimmer)",flexShrink:"0",fontSize:"11px",minWidth:"56px"},logBadge:{flexShrink:"0",padding:"1px 5px",borderRadius:"3px",fontSize:"10px",fontWeight:"700",textTransform:"uppercase",letterSpacing:"0.05em"},logLabel:{color:"var(--dt-text)",flexShrink:"0"},logDetail:{color:"var(--dt-text-muted)",wordBreak:"break-all",flex:"1",minWidth:"0"},perfPanel:{flex:"1",display:"flex",flexDirection:"column",minHeight:"0",overflow:"hidden"},perfToolbar:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"5px 10px",borderBottom:"1px solid var(--dt-border-2)",flexShrink:"0",gap:"10px"},perfTabs:{display:"flex",gap:"4px"},perfTabBtn:{background:"none",border:"1px solid var(--dt-border)",color:"var(--dt-text-muted)",cursor:"pointer",padding:"2px 9px",borderRadius:"3px",fontSize:"11px",fontFamily:"inherit",transition:"border-color 0.1s, color 0.1s, background 0.1s","&:hover":{borderColor:"var(--dt-text-dim)",color:"var(--dt-text)"},"&.active":{borderColor:"var(--dt-border-selected)",color:"var(--dt-text-selected)",background:"var(--dt-bg-active)"}},perfActions:{display:"flex",gap:"6px",alignItems:"center"},perfContent:{flex:"1",overflowY:"auto",...ot},perfTable:{width:"100%",borderCollapse:"collapse",fontSize:"12px"},perfTh:{padding:"5px 10px",textAlign:"left",color:"var(--dt-text-dim)",fontWeight:"600",fontSize:"10px",textTransform:"uppercase",letterSpacing:"0.06em",borderBottom:"1px solid var(--dt-border-2)",position:"sticky",top:"0",background:"var(--dt-bg)"},perfThRight:{textAlign:"right"},perfRow:{borderBottom:"1px solid var(--dt-border-3)","&:hover":{background:"var(--dt-bg-hover)"}},perfRowClickable:{cursor:"pointer"},perfCell:{padding:"4px 10px",verticalAlign:"middle"},perfName:{color:"var(--dt-text)",fontWeight:"500"},perfNum:{textAlign:"right",color:"var(--dt-text-muted)",fontVariantNumeric:"tabular-nums"},perfBarWrap:{width:"80px",height:"6px",background:"var(--dt-bg-3)",borderRadius:"3px",overflow:"hidden",display:"inline-block",verticalAlign:"middle"},perfBar:{height:"100%",background:"var(--dt-accent)",borderRadius:"3px",transition:"width 0.2s ease"},perfBarLabel:{fontSize:"11px",color:"var(--dt-text-dim)",marginLeft:"5px"}}),_t=new Set,it=new WeakMap,ct=new WeakMap,N=i.event("devtools");function Ut(t,e){try{_t.add(t);let n=it.get(e);n||(n=new Set,it.set(e,n)),n.add(t),ct.set(t,1),N.trigger({type:"mount",component:t})}catch{}}function Yt(t,e){try{if(_t.delete(t),e){const n=it.get(e);n&&n.delete(t)}N.trigger({type:"unmount",component:t})}catch{}}function qt(t){try{const e=ct.get(t)??0;ct.set(t,e+1),N.trigger({type:"render",component:t})}catch{}}function j(t){try{return ct.get(t)??0}catch{}return 0}function E(t){try{return t._depth??0}catch{}return 0}function wt(t){try{return t._parentComponent??null}catch{}return null}function St(){try{return Array.from(_t).filter(t=>{const e=t._view||t.oldView;return!e?.__devtools__&&!e?.skipDevToolsRender})}catch{}return[]}function ln(t){try{const e=it.get(t);return e?Array.from(e):[]}catch{}return[]}function A(t){try{return(t._view||t.oldView)?.name||"Anonymous"}catch{}return""}function an(t){try{return t._view||t.oldView||null}catch{}return null}function Xt(){try{const t=St(),e=new Map;for(const o of t){const c=an(o);if(!c)continue;let l=e.get(c);l||(l=[],e.set(c,l)),l.push(o)}const n=[];for(const[o,c]of e)n.push({viewFn:o,name:o.name||"Anonymous",instances:c});try{n.sort((o,c)=>{const l=a=>a.instances.reduce((u,d)=>Math.min(u,E(d)),1/0);return l(o)-l(c)})}catch{}return n}catch{}return[]}const h={row:"display:flex;align-items:baseline;gap:4px;font-size:13px;line-height:20px;font-family:'SF Mono',Monaco,Consolas,monospace;",toggle:"cursor:pointer;background:none;border:none;color:#888;font-size:10px;padding:0 2px;width:14px;text-align:center;flex-shrink:0;",key:"color:#9cdcfe;white-space:nowrap;",colon:"color:#777;",string:"color:#ce9178;",number:"color:#b5cea8;",boolean:"color:#569cd6;",null:"color:#569cd6;font-style:italic;",undefined:"color:#777;font-style:italic;",function:"color:#dcdcaa;font-style:italic;",symbol:"color:#c586c0;",preview:"color:#888;font-style:italic;",children:"margin-left:14px;padding-left:6px;border-left:1px solid #333;",badge:"color:#777;font-size:11px;margin-left:4px;background:#2a2a2a;padding:0 4px;border-radius:3px;"},Kt=new WeakMap;let Jt=null;function kt(t){try{Jt=t}catch{}}function Qt(t){try{let e=Kt.get(t);return e||(e=new Set,Kt.set(t,e)),e}catch{return new Set}}function sn(t,e){try{return Qt(t).has(e)}catch{return!1}}function dn(t,e){try{const n=Qt(t);n.has(e)?n.delete(e):n.add(e);try{Jt?.()}catch{}}catch{}}function un(t){try{return t==null?!1:typeof t=="object"}catch{return!1}}function lt(t){try{return t===null?"null":t===void 0?"undefined":Array.isArray(t)?"array":t instanceof Date?"date":t instanceof RegExp?"regexp":t instanceof Map?"map":t instanceof Set?"set":typeof t}catch{return""}}function Zt(t,e=60){try{const n=lt(t);if(n==="array"){const o=t;if(o.length===0)return"[]";const c=o.slice(0,5).map(a=>te(a)).join(", "),l=o.length>5?", …":"";return`[${c}${l}] (${o.length})`}if(n==="map")return`Map(${t.size})`;if(n==="set")return`Set(${t.size})`;if(n==="date")return`Date(${t.toISOString()})`;if(n==="regexp")return String(t);if(n==="object"){const o=t,c=Object.keys(o);if(c.length===0)return"{}";const l=c.slice(0,4).map(d=>`${d}: ${te(o[d])}`).join(", "),a=c.length>4?", …":"",u=`{${l}${a}}`;return u.length>e?u.slice(0,e-1)+"…}":u}return String(t)}catch{return""}}function te(t){try{switch(lt(t)){case"string":{const n=t;return n.length>30?`"${n.slice(0,27)}…"`:`"${n}"`}case"number":case"boolean":return String(t);case"null":return"null";case"undefined":return"undefined";case"function":return"ƒ()";case"symbol":return String(t);case"array":return`Array(${t.length})`;case"object":return"{…}";case"date":return"Date";case"map":return`Map(${t.size})`;case"set":return`Set(${t.size})`;default:return String(t)}}catch{return""}}function pn(t){try{switch(lt(t)){case"string":return i.html`<span style="${h.string}">"${String(t)}"</span>`;case"number":return i.html`<span style="${h.number}">${String(t)}</span>`;case"boolean":return i.html`<span style="${h.boolean}">${String(t)}</span>`;case"null":return i.html`<span style="${h.null}">null</span>`;case"undefined":return i.html`<span style="${h.undefined}">undefined</span>`;case"function":return i.html`<span style="${h.function}"
2
+ >ƒ ${t.name||"anonymous"}()</span
3
+ >`;case"symbol":return i.html`<span style="${h.symbol}">${String(t)}</span>`;case"date":return i.html`<span style="${h.string}"
4
+ >${t.toISOString()}</span
5
+ >`;case"regexp":return i.html`<span style="${h.string}">${String(t)}</span>`;default:return i.html`<span style="${h.preview}">${String(t)}</span>`}}catch{return i.html``}}function fn(t){try{if(t instanceof Map)return Array.from(t.entries()).map(([e,n])=>({key:String(e),value:n}));if(t instanceof Set)return Array.from(t).map((e,n)=>({key:String(n),value:e}));if(Array.isArray(t))return t.map((e,n)=>({key:String(n),value:e}));if(typeof t=="object"&&t!==null){const e=[],n=new Set;for(const c of Object.keys(t)){n.add(c);try{e.push({key:c,value:t[c]})}catch{e.push({key:c,value:"[error reading]"})}}let o=Object.getPrototypeOf(t);for(;o&&o!==Object.prototype;){for(const c of Object.getOwnPropertyNames(o)){if(n.has(c)||c==="constructor")continue;if(Object.getOwnPropertyDescriptor(o,c)?.get){n.add(c);try{e.push({key:c,value:t[c]})}catch{e.push({key:c,value:"[error reading]"})}}}o=Object.getPrototypeOf(o)}return e}return[]}catch{return[]}}function T(t,e,n,o="root",c=0){try{if(c>15)return i.html`
6
+ <div style="${h.row}">
7
+ ${e!=null?i.html`<span style="${h.key}">${e}</span
8
+ ><span style="${h.colon}">:</span>`:i.nothing}
9
+ <span style="${h.preview}">[max depth]</span>
10
+ </div>
11
+ `;const l=un(n),a=l&&sn(t,o);if(!l)return i.html`
12
+ <div style="${h.row}">
13
+ <span style="${h.toggle}"></span>
14
+ ${e!=null?i.html`<span style="${h.key}">${e}</span
15
+ ><span style="${h.colon}">:</span>`:i.nothing}
16
+ ${pn(n)}
17
+ </div>
18
+ `;const u=a?fn(n):[],d=lt(n);return i.html`
19
+ <div>
20
+ <div
21
+ style="${h.row}cursor:pointer;user-select:none;"
22
+ @click=${p=>{try{p.stopPropagation(),dn(t,o)}catch{}}}
23
+ >
24
+ <span style="${h.toggle}">${a?"▼":"▶"}</span>
25
+ ${e!=null?i.html`<span style="${h.key}">${e}</span
26
+ ><span style="${h.colon}">:</span>`:i.nothing}
27
+ ${a?i.html`<span style="${h.preview}"
28
+ >${d==="array"?`Array(${n.length})`:d==="object"?"{":Zt(n)}</span
29
+ >`:i.html`<span style="${h.preview}">${Zt(n)}</span>`}
30
+ </div>
31
+ ${a?i.html`
32
+ <div style="${h.children}">
33
+ ${u.map(p=>T(t,p.key,p.value,`${o}.${p.key}`,c+1))}
34
+ ${u.length===0?i.html`<div style="${h.row}">
35
+ <span style="${h.preview}">(empty)</span>
36
+ </div>`:i.nothing}
37
+ </div>
38
+ ${d==="object"&&a?i.html`<div style="${h.row};margin-left:14px;">
39
+ <span style="${h.preview}">}</span>
40
+ </div>`:i.nothing}
41
+ `:i.nothing}
42
+ </div>
43
+ `}catch{return i.html``}}function hn(t,e,n="root"){try{const o=Object.keys(e);return o.length===0?i.html`<div style="color:#777;font-size:13px;padding:2px 0;">
44
+ No data
45
+ </div>`:i.html`
46
+ ${o.map(c=>T(t,c,e[c],`${n}.${c}`,0))}
47
+ `}catch{return i.html``}}function ee(t){try{const e=Object.keys(t);return e.length===0?i.html`<div style="color: #777; font-size: 13px;">No props</div>`:i.html`
48
+ ${i.repeat(e,n=>n,n=>T(t,n,t[n],`props.${n}`,0))}
49
+ `}catch{return i.html``}}function ne(t){try{return!t||t.size===0?i.html`<div style="color: #777; font-size: 13px;">No scopes</div>`:i.html`
50
+ ${[...t?.entries()||[]].map(([e,n])=>{try{const o=e.name||"AnonymousScope",c={},l=new Set;for(const d of Object.keys(n))if(!(d==="__isScope___"||d==="reset")){l.add(d);try{const p=n[d];p&&typeof p=="function"&&p.__isAtom___?c[`${d} (atom)`]=p.get():c[d]=p}catch{c[d]="[error reading]"}}let a=Object.getPrototypeOf(n);for(;a&&a!==Object.prototype;){for(const d of Object.getOwnPropertyNames(a)){if(l.has(d)||d==="constructor"||d==="__isScope___"||d==="reset")continue;if(Object.getOwnPropertyDescriptor(a,d)?.get){l.add(d);try{c[`${d} (get)`]=n[d]}catch{c[`${d} (get)`]="[error reading]"}}}a=Object.getPrototypeOf(a)}const u=n;return i.html`
51
+ <div style="margin-bottom:6px;">
52
+ <div
53
+ style="color:#4ec9b0;font-weight:500;font-size:13px;margin-bottom:2px;font-family:'SF Mono',Monaco,Consolas,monospace;"
54
+ >
55
+ ${o}
56
+ </div>
57
+ <div style="margin-left:4px;">
58
+ ${Object.keys(c).length===0?i.html`<div style="color:#666;font-size:13px;">
59
+ (empty scope)
60
+ </div>`:i.html`
61
+ ${Object.keys(c).map(d=>T(u,d,c[d],`scope_${o}.${d}`,0))}
62
+ `}
63
+ </div>
64
+ </div>
65
+ `}catch{return i.html``}})}
66
+ `}catch{return i.html``}}function gn(t){try{if(!t)return[];const e=[];for(const n of t.keys())if(n&&typeof n=="function"&&n.__isAtom___)try{e.push({id:n.__id__??"?",value:n.get(),key:n})}catch{}return e}catch{return[]}}function re(t){try{const e=gn(t);return e.length===0?i.html`<div style="color: #777; font-size: 13px;">No atoms</div>`:i.html`
67
+ ${i.repeat(e,n=>n.id,(n,o)=>{const c=e.length===1?"atom":`atom#${o+1}`,l=typeof n.value=="object"&&n.value!==null?n.value:n.key;return T(l,c,n.value,`atom_${n.id}`,0)})}
68
+ `}catch{return i.html``}}function oe(t){try{return!t||t.length===0?i.html`<div style="color: #777; font-size: 13px;">No state</div>`:i.html`
69
+ ${t.map((e,n)=>{const o=t.length===1?"state":`state#${n+1}`;let c;try{c=e.atom.get()}catch{c=e.state}return T(c,o,c,`useState_${n}`,0)})}
70
+ `}catch{return i.html``}}function mn(t){try{const e={onMount:0,onCleanup:0,onPaint:0,onAllMount:0,effects:0,on:0,setters:0,useState:0,atoms:0,events:0,channels:0},n=t._useStates;n&&(e.useState=n.length);const o=t.cleanups;if(!o)return e;for(const c of o.keys())if(c!=null){if(c.__isAtom___){e.atoms++;continue}if(c.__isSetter___){e.setters++;continue}if(c.__isCleanupEvent___){e.events++;continue}if(c.__isEvent___){e.events++;continue}if(c.__isChannel___){e.channels++;continue}if(c.__isOnMount__){e.onMount++;continue}if(c.__isOnCleanup__){e.onCleanup++;continue}if(c.__isOnPaint__){e.onPaint++;continue}if(c.__isOnAllMount__){e.onAllMount++;continue}if(c.__isEffect__){e.effects++;continue}if(c.__isOn__){e.on++;continue}}return e}catch{return{onMount:0,onCleanup:0,onPaint:0,onAllMount:0,effects:0,on:0,setters:0,useState:0,atoms:0,events:0,channels:0}}}function yn(t,e){try{return i.html`
71
+ <span class="${r.hookPill}">
72
+ <span class="${r.hookPillLabel}">${t}</span>
73
+ <span class="${r.hookPillCount}">${e}</span>
74
+ </span>
75
+ `}catch{return i.html``}}function Ct(t){try{const e=mn(t),n=[];return e.onMount>0&&n.push({label:"onMount",count:e.onMount}),e.onCleanup>0&&n.push({label:"onCleanup",count:e.onCleanup}),e.onPaint>0&&n.push({label:"onPaint",count:e.onPaint}),e.onAllMount>0&&n.push({label:"onAllMount",count:e.onAllMount}),e.effects>0&&n.push({label:"effect",count:e.effects}),e.on>0&&n.push({label:"on",count:e.on}),e.setters>0&&n.push({label:"setter",count:e.setters}),e.useState>0&&n.push({label:"useState",count:e.useState}),e.atoms>0&&n.push({label:"atom",count:e.atoms}),e.events>0&&n.push({label:"event",count:e.events}),e.channels>0&&n.push({label:"channel",count:e.channels}),n.length===0?i.nothing:i.html`
76
+ <div class="${r.hooksSummary}">
77
+ ${n.map(o=>yn(o.label,o.count))}
78
+ </div>
79
+ `}catch{return i.html``}}function bn(t,e){try{t.stopPropagation(),mt(e)}catch{}}function vn(t){try{const e=[];let n=wt(t);for(;n;)e.push(A(n)),n=wt(n);return e.reverse(),e}catch{return[]}}function ie(t){try{const e=vn(t),n=A(t);if(e.length===0)return i.html`
80
+ <div class="${r.inspectorBreadcrumb}">
81
+ <span class="${r.breadcrumbSegment} ${r.breadcrumbCurrent}"
82
+ >${n}</span
83
+ >
84
+ </div>
85
+ `;const o=[];for(let c=0;c<e.length;c++)c>0&&o.push(i.html`<span class="${r.breadcrumbSeparator}">›</span>`),o.push(i.html`<span class="${r.breadcrumbSegment}">${e[c]}</span>`);return o.push(i.html`<span class="${r.breadcrumbSeparator}">›</span>`),o.push(i.html`<span class="${r.breadcrumbSegment} ${r.breadcrumbCurrent}"
86
+ >${n}</span
87
+ >`),i.html` <div class="${r.inspectorBreadcrumb}">${o}</div> `}catch{return i.html``}}function ce(t){try{return i.html`
88
+ <div class="${r.instanceDetails}">
89
+ <div class="${r.sectionHeader}">Props</div>
90
+ ${ee(t._props||{})}
91
+
92
+ <div class="${r.sectionHeader}">State</div>
93
+ ${oe(t._useStates)}
94
+
95
+ <div class="${r.sectionHeader}">Atoms</div>
96
+ ${re(t.cleanups)}
97
+
98
+ <div class="${r.sectionHeader}">Scopes</div>
99
+ ${ne(t.scopes)}
100
+ </div>
101
+ `}catch{return i.html``}}function le(){try{return i.html`
102
+ <div class="${r.inspector}">
103
+ <div class="${r.empty}">Select a component to inspect</div>
104
+ </div>
105
+ `}catch{return i.html``}}function ae(t){try{const e=A(t),n=t.componentId,o=E(t),c=j(t);return i.html`
106
+ <div class="${r.inspector}">
107
+ ${ie(t)}
108
+ <div class="${r.inspectorTitle}">
109
+ <span>${e}</span>
110
+ <span class="${r.instanceCount}">
111
+ #${n.toString().slice(2,6)} · depth ${o} · renders ${c}
112
+ </span>
113
+ <button
114
+ class="${r.highlightBtn}"
115
+ style="opacity: 1;"
116
+ @click=${l=>{try{bn(l,t)}catch{}}}
117
+ title="Highlight in DOM"
118
+ >
119
+ <svg
120
+ xmlns="http://www.w3.org/2000/svg"
121
+ width="14"
122
+ height="14"
123
+ viewBox="0 0 24 24"
124
+ fill="none"
125
+ stroke="currentColor"
126
+ stroke-width="2"
127
+ stroke-linecap="round"
128
+ stroke-linejoin="round"
129
+ >
130
+ <circle cx="11" cy="11" r="8" />
131
+ <line x1="21" y1="21" x2="16.65" y2="16.65" />
132
+ </svg>
133
+ </button>
134
+ </div>
135
+
136
+ ${Ct(t)} ${ce(t)}
137
+ </div>
138
+ `}catch{return i.html``}}function xn(t,e,n,o){try{const{name:c,instances:l}=t;return i.html`
139
+ <div class="${r.inspector}">
140
+ <div class="${r.inspectorTitle}">
141
+ <span>${c}</span>
142
+ <span class="${r.instanceCount}">
143
+ ${l.length} instance${l.length!==1?"s":""}
144
+ </span>
145
+ </div>
146
+
147
+ <ul class="${r.instanceList}">
148
+ ${i.repeat(l,a=>a.componentId,a=>{const u=a.componentId,d=E(a),p=j(a),b=e===u;return i.html`
149
+ <li class="${r.instanceGroup}">
150
+ <div
151
+ class="${r.instanceItem} ${b?on:""}"
152
+ @click=${()=>{try{n(u)}catch{}}}
153
+ >
154
+ <span
155
+ class="${r.instanceToggle} ${b?r.instanceToggleSelected:""}"
156
+ >${b?"▼":"▶"}</span
157
+ >
158
+ <span class="${r.instanceId}"
159
+ >#${u.toString().slice(2,6)}</span
160
+ >
161
+ <span class="${r.componentBadge}">depth ${d}</span>
162
+ <span class="${r.componentBadge}"
163
+ >renders ${p}</span
164
+ >
165
+ <button
166
+ class="${r.componentHighlightBtn}"
167
+ @click=${m=>{try{m.stopPropagation(),o(a)}catch{}}}
168
+ title="Highlight in page"
169
+ >
170
+ <svg
171
+ xmlns="http://www.w3.org/2000/svg"
172
+ width="12"
173
+ height="12"
174
+ viewBox="0 0 24 24"
175
+ fill="none"
176
+ stroke="currentColor"
177
+ stroke-width="2"
178
+ stroke-linecap="round"
179
+ stroke-linejoin="round"
180
+ >
181
+ <circle cx="11" cy="11" r="8" />
182
+ <line x1="21" y1="21" x2="16.65" y2="16.65" />
183
+ </svg>
184
+ </button>
185
+ </div>
186
+ ${b?i.html`
187
+ ${ie(a)} ${Ct(a)}
188
+ ${ce(a)}
189
+ `:i.nothing}
190
+ </li>
191
+ `})}
192
+ </ul>
193
+ </div>
194
+ `}catch{return i.html``}}function Tt(t){try{if("selectedComponent"in t&&t.selectedComponent!==void 0)return t.selectedComponent?ae(t.selectedComponent):le();const{selectedGroup:e,selectedInstanceId:n,onSelectInstance:o,onHighlight:c}=t;return e?e.instances.length===1?ae(e.instances[0]):xn(e,n,o,c):le()}catch{return i.html``}}const M=new Set;let W=null,G=null,U=null,Y=null,at=!1,st=!1;const dt=i.atom(0);dt.skipDevToolsLog=!0;function R(){try{dt.set(M.size)}catch{}}function q(t){st=!0;try{return t()}finally{st=!1}}function $n(){try{if(at)return;at=!0,W=window.setTimeout,G=window.setInterval,U=window.clearTimeout,Y=window.clearInterval;const t=W,e=G,n=U,o=Y;window.setTimeout=function(l,a,...u){let d;try{if(typeof l!="function")return d=t(l,a,...u),d;const p=l;d=t(function(...m){try{return M.delete(d)&&R(),p.apply(this,m.length?m:u)}catch{}},a,...u),st||(M.add(d),R())}catch{d=t(l,a,...u)}return d},window.setInterval=function(l,a,...u){let d;try{if(typeof l!="function")return d=e(l,a,...u),d;const p=l;d=e(function(...m){try{return p.apply(this,m.length?m:u)}catch{}},a,...u),st||(M.add(d),R())}catch{d=e(l,a,...u)}return d},window.clearTimeout=function(l){try{l!==void 0&&M.delete(l)&&R()}catch{}n(l)},window.clearInterval=function(l){try{l!==void 0&&M.delete(l)&&R()}catch{}o(l)}}catch{}}function _n(){try{if(!at)return;at=!1,W&&(window.setTimeout=W),G&&(window.setInterval=G),U&&(window.clearTimeout=U),Y&&(window.clearInterval=Y),W=null,G=null,U=null,Y=null,M.clear(),R()}catch{}}const Mt=new WeakMap;let wn=0;function Sn(t){return Mt.has(t)||Mt.set(t,`mdt-hl-${++wn}`),Mt.get(t)}function se(t,e,n){try{const o=n.get(e),c=o!==void 0&&o!==t;n.set(e,t);const l=Sn(e);return c&&q(()=>setTimeout(()=>{try{const a=document.getElementById(l);if(!a)return;a.classList.remove("mdt-highlight-flash"),a.offsetWidth,a.classList.add("mdt-highlight-flash"),setTimeout(()=>{try{a.classList.remove("mdt-highlight-flash")}catch{}},600)}catch{}},0)),i.html`<span id="${l}" class="mdt-highlight">${t}</span>`}catch{return i.html``}}const kn=new WeakMap;let It="";function Cn(t){try{let e=0;for(const n of t.instances){const o=j(n);o>e&&(e=o)}return e}catch{return 0}}function Bt(t){try{let e=1/0;for(const n of t.instances){const o=E(n);o<e&&(e=o)}return e===1/0?0:e}catch{return 0}}function de({groups:t,selectedViewFn:e,onSelectGroup:n,onHighlight:o,renderCallback:c}){try{const l=It.trim().toLowerCase(),u=[...l?t.filter(p=>p.name.toLowerCase().includes(l)):t].sort((p,b)=>{const m=Bt(p),v=Bt(b);return m-v||p.name.localeCompare(b.name)}),d=p=>{try{It=p.target.value,c()}catch{}};return i.html`
195
+ <div class="${r.content}">
196
+ <div style="padding: 0 0 6px 0; flex-shrink: 0;">
197
+ <input
198
+ class="${r.componentSearch}"
199
+ type="text"
200
+ placeholder="Search components…"
201
+ .value=${It}
202
+ @input=${d}
203
+ />
204
+ </div>
205
+ ${u.length===0?i.html`<div class="${r.empty}">
206
+ ${l?"No matching components":"No components mounted"}
207
+ </div>`:i.html`
208
+ <ul class="${r.componentList}">
209
+ ${i.repeat(u,p=>p.viewFn,p=>{const b=Cn(p),m=e===p.viewFn,v=Bt(p),$t=p.instances.length,nn=p.instances[0];return i.html`
210
+ <li
211
+ class="${r.componentItem} ${m?Gt:""}"
212
+ @click=${()=>{try{n(p.viewFn)}catch{}}}
213
+ >
214
+ ${se(b,nn,kn)}
215
+ <span class="${r.componentName}"
216
+ >${p.name}</span
217
+ >
218
+ ${$t>1?i.html`<span
219
+ class="${r.componentCount} ${m?r.componentCountSelected:""}"
220
+ >×${$t}</span
221
+ >`:""}
222
+ <span
223
+ class="${r.componentBadge} ${m?r.componentBadgeSelected:""}"
224
+ >depth ${v}</span
225
+ >
226
+ <button
227
+ class="${r.componentHighlightBtn} ${m?r.componentHighlightBtnSelected:""}"
228
+ @click=${rn=>{try{rn.stopPropagation(),o(nn)}catch{}}}
229
+ title="Highlight in page"
230
+ >
231
+ <svg
232
+ xmlns="http://www.w3.org/2000/svg"
233
+ width="12"
234
+ height="12"
235
+ viewBox="0 0 24 24"
236
+ fill="none"
237
+ stroke="currentColor"
238
+ stroke-width="2"
239
+ stroke-linecap="round"
240
+ stroke-linejoin="round"
241
+ >
242
+ <path d="M1 1l6 6" />
243
+ <path d="M7 1L1 7" />
244
+ <circle cx="11" cy="11" r="8" />
245
+ <line x1="21" y1="21" x2="16.65" y2="16.65" />
246
+ </svg>
247
+ </button>
248
+ </li>
249
+ `})}
250
+ </ul>
251
+ `}
252
+ </div>
253
+ `}catch{return i.html``}}const Tn=new WeakMap,Lt=new WeakSet;function Mn(t){try{const e=new Set(t),n=new Map;for(const l of t)n.set(l,{component:l,name:A(l),depth:E(l),id:l.componentId,children:[]});const o=[];for(const l of t){const a=n.get(l),u=wt(l);if(u&&e.has(u)){const d=n.get(u);if(d){d.children.push(a);continue}}o.push(a)}const c=l=>{try{l.sort((a,u)=>a.depth-u.depth||a.name.localeCompare(u.name));for(const a of l)c(a.children)}catch{}};return c(o),o}catch{return[]}}function ue(t,e,n,o,c){try{const l=t.children.length>0,a=Lt.has(t.component),u=j(t.component),d=e===t.id,p=t.depth*16,b=v=>{try{v.stopPropagation(),a?Lt.delete(t.component):Lt.add(t.component),c()}catch{}},m=()=>{try{n(t.id)}catch{}};return i.html`
254
+ <li
255
+ class="${r.componentItem} ${d?Gt:""}"
256
+ style="margin-left: ${p}px;"
257
+ @click=${m}
258
+ >
259
+ ${l?i.html`<span class="${r.treeToggle}" @click=${b}
260
+ >${a?"▶":"▼"}</span
261
+ >`:i.html`<span class="${r.treeLeaf}">·</span>`}
262
+ ${se(u,t.component,Tn)}
263
+ <span class="${r.componentName}">${t.name}</span>
264
+ <span class="${r.componentBadge}"
265
+ >#${t.id.toString().slice(2,6)}</span
266
+ >
267
+ <button
268
+ class="${r.componentHighlightBtn}"
269
+ @click=${v=>{try{v.stopPropagation(),o(t.component)}catch{}}}
270
+ title="Highlight in page"
271
+ >
272
+ <svg
273
+ xmlns="http://www.w3.org/2000/svg"
274
+ width="12"
275
+ height="12"
276
+ viewBox="0 0 24 24"
277
+ fill="none"
278
+ stroke="currentColor"
279
+ stroke-width="2"
280
+ stroke-linecap="round"
281
+ stroke-linejoin="round"
282
+ >
283
+ <path d="M1 1l6 6" />
284
+ <path d="M7 1L1 7" />
285
+ <circle cx="11" cy="11" r="8" />
286
+ <line x1="21" y1="21" x2="16.65" y2="16.65" />
287
+ </svg>
288
+ </button>
289
+ </li>
290
+ ${l&&!a?i.repeat(t.children,v=>v.component,v=>ue(v,e,n,o,c)):i.nothing}
291
+ `}catch{return i.html``}}function pe({selectedComponentId:t,onSelectComponent:e,onHighlight:n,renderCallback:o}){try{const c=St(),l=Mn(c);return i.html`
292
+ <div class="${r.content}">
293
+ ${l.length===0?i.html`<div class="${r.empty}">No components mounted</div>`:i.html`
294
+ <ul class="${r.componentList}">
295
+ ${i.repeat(l,a=>a.component,a=>ue(a,t,e,n,o))}
296
+ </ul>
297
+ `}
298
+ </div>
299
+ `}catch{return i.html``}}const fe=()=>(i.effect(()=>{try{console.log(dt())}catch{}}),()=>{try{return i.html`Active Timers (${dt()})`}catch{return i.html``}});fe.skipDevToolsRender=!0;function he({activeTab:t,onTabChange:e,onMinimise:n,onClose:o,unreadLogCount:c}){try{return i.html`
300
+ <div class="${r.header}">
301
+ <div class="${r.headerLeft}">
302
+ <div class="${r.title}">🔧 Mates DevTools</div>
303
+ <nav class="${r.tabBar}">
304
+ <button
305
+ class="${r.tabBtn} ${t==="components"?"active":""}"
306
+ @click=${()=>{try{e("components")}catch{}}}
307
+ >
308
+ Components
309
+ </button>
310
+ <button
311
+ class="${r.tabBtn} ${t==="logs"?"active":""}"
312
+ @click=${()=>{try{e("logs")}catch{}}}
313
+ >
314
+ Logs
315
+ ${c>0?i.html`<span class="${r.tabBadge}"
316
+ >${c>99?"99+":c}</span
317
+ >`:""}
318
+ </button>
319
+ <button
320
+ class="${r.tabBtn} ${t==="performance"?"active":""}"
321
+ @click=${()=>{try{e("performance")}catch{}}}
322
+ >
323
+ Performance
324
+ </button>
325
+ </nav>
326
+ </div>
327
+ <div>
328
+ <button style="margin-left: 10px">${i.x(fe)}</button>
329
+ </div>
330
+ <div class="${r.controls}">
331
+ <button
332
+ class="${r.button}"
333
+ @click=${()=>{try{n()}catch{}}}
334
+ title="Minimise"
335
+ >
336
+ _
337
+ </button>
338
+ <button
339
+ class="${r.button}"
340
+ @click=${()=>{try{o()}catch{}}}
341
+ title="Close"
342
+ >
343
+ ×
344
+ </button>
345
+ </div>
346
+ </div>
347
+ `}catch{return i.html``}}let ut=null;function ge(t){try{return ut=t,()=>{ut===t&&(ut=null)}}catch{}return()=>{}}let x=!1;function me(){x=!0}function ye(){x=!1}function In(){return x}const Bn=100,P=[];let be=1,pt=0;const ve=new Set(["devtools","DOMReady","Paint"]);function k(t,e,n){try{P.length>=Bn&&P.shift(),P.push({id:be++,ts:performance.now(),category:t,label:e,detail:n}),pt++;try{ut?.()}catch{}}catch{}}function Et(t){try{if(t===void 0)return"undefined";if(t===null)return"null";if(typeof t=="function")return"ƒ()";try{const e=JSON.stringify(t);return e.length>120?e.slice(0,117)+"...":e}catch{return String(t)}}catch{}return""}function xe(){return P}function Ln(){return P.length}function $e(){return pt}function _e(){try{pt=0}catch{}}function we(){try{P.length=0,pt=0,be=1}catch{}}function Se(t){try{if(!x)return;k("mount",t,"mounted")}catch{}}function ke(t,e){try{if(!x)return;k("update",t,`updated (${e.toFixed(2)}ms)`)}catch{}}function Ce(t){try{if(!x)return;k("cleanup",t,"cleaned up")}catch{}}function Te(t,e){try{if(!x)return;k("setter",t,Et(e))}catch{}}function Me(t){try{if(!x)return;k("action",t)}catch{}}function Ie(t,e){try{if(!x||ve.has(t))return;k("event",t,e!==void 0?Et(e):void 0)}catch{}}const At=80,Be=120;function z(t,e){try{return t.length>e?t.slice(0,e-1)+"…":t}catch{}return""}function En(t,e,n){try{if(!x)return;const o=n?`pending · ${z(n,50)}`:"pending";k("fetch",z(`${t} ${e}`,At),o)}catch{}}function Le(t,e,n,o){try{if(!x)return;k("fetch",z(`${t} ${e}`,At),z(`${n} · ${o.toFixed(0)}ms`,Be))}catch{}}function Ee(t,e,n,o){try{if(!x)return;k("fetch",z(`${t} ${e}`,At),z(`error · ${o.toFixed(0)}ms · ${n}`,Be))}catch{}}function Ae(t,e){try{if(!x||ve.has(t))return;k("event",`${t} (cleanup)`,e!==void 0?Et(e):void 0)}catch{}}const H={mount:"#66bb6a",update:"#42a5f5",cleanup:"#ef5350",setter:"#4fc3f7",action:"#81c784",event:"#ffb74d",fetch:"#ce93d8"},An={mount:"MNT",update:"UPD",cleanup:"CLN",setter:"SET",action:"ACT",event:"EVT",fetch:"NET"};let _="all";const Rn={all:null,lifecycle:["mount","update","cleanup"],logs:["setter","action","event"],network:["fetch"]};function Pn(t){try{const e=t/1e3|0,n=t%1e3,o=e/60|0,c=e%60;return`${String(o).padStart(2,"0")}:${String(c).padStart(2,"0")}.${String(n|0).padStart(3,"0")}`}catch{return""}}function zn(){try{const t=xe(),e=Rn[_];if(!e)return t;const n=new Set(e);return t.filter(o=>n.has(o.category))}catch{return[]}}function Re({onClear:t,renderCallback:e}){try{_e();const n=zn();return i.html`
348
+ <div class="${r.logsPanel}">
349
+ <div class="${r.logsToolbar}">
350
+ <div class="${r.logsFilterRow}">
351
+ <button
352
+ class="${r.logsFilterBtn} ${_==="all"?"active":""}"
353
+ @click=${()=>{try{_="all",e()}catch{}}}
354
+ >
355
+ All
356
+ </button>
357
+ <button
358
+ class="${r.logsFilterBtn} ${_==="lifecycle"?"active":""}"
359
+ style="--mdt-filter-color: ${H.mount}"
360
+ @click=${()=>{try{_=_==="lifecycle"?"all":"lifecycle",e()}catch{}}}
361
+ >
362
+ Mounts / Updates
363
+ </button>
364
+ <button
365
+ class="${r.logsFilterBtn} ${_==="logs"?"active":""}"
366
+ style="--mdt-filter-color: ${H.setter}"
367
+ @click=${()=>{try{_=_==="logs"?"all":"logs",e()}catch{}}}
368
+ >
369
+ Logs
370
+ </button>
371
+ <button
372
+ class="${r.logsFilterBtn} ${_==="network"?"active":""}"
373
+ style="--mdt-filter-color: ${H.fetch}"
374
+ @click=${()=>{try{_=_==="network"?"all":"network",e()}catch{}}}
375
+ >
376
+ Network
377
+ </button>
378
+ </div>
379
+ <div class="${r.logsActions}">
380
+ <span class="${r.logsCount}">${n.length} entries</span>
381
+ <button
382
+ class="${r.button}"
383
+ @click=${()=>{try{we(),t()}catch{}}}
384
+ title="Clear logs"
385
+ >
386
+ 🗑
387
+ </button>
388
+ </div>
389
+ </div>
390
+
391
+ <div class="${r.logsContainer}">
392
+ ${n.length===0?i.html`<div class="${r.empty}">
393
+ No logs yet. Interact with the app to see activity.
394
+ </div>`:i.repeat(n,o=>o.id,o=>i.html`
395
+ <div class="${r.logEntry}">
396
+ <span class="${r.logTs}">${Pn(o.ts)}</span>
397
+ <span
398
+ class="${r.logBadge}"
399
+ style="background: ${H[o.category]}22; color: ${H[o.category]}; border-color: ${H[o.category]}44;"
400
+ >${An[o.category]}</span
401
+ >
402
+ <span class="${r.logLabel}">${o.label}</span>
403
+ ${o.detail?i.html`<span class="${r.logDetail}"
404
+ >${o.detail}</span
405
+ >`:i.nothing}
406
+ </div>
407
+ `)}
408
+ </div>
409
+ </div>
410
+ `}catch{return i.html``}}let X=!1;function Pe(){try{X=!0}catch{}}function ze(){try{X=!1}catch{}}function Hn(){return X}const Fn=100,K=new Map;let He=1,ft=null;function Fe(t){try{return ft=t,()=>{try{ft===t&&(ft=null)}catch{}}}catch{}return()=>{}}function Rt(t,e,n){try{if(!X)return;const o={id:He++,ts:performance.now(),durationMs:n,componentName:t,instanceId:e};let c=K.get(t);c||(c=[],K.set(t,c)),c.length>=Fn&&c.shift(),c.push(o);try{ft?.()}catch{}}catch{}}function Dn(t,e){try{if(!X)return De;const n=performance.now();return()=>Rt(t,e,performance.now()-n)}catch{}return De}function De(){}function Oe(){try{const t=[];for(const[e,n]of K){if(n.length===0)continue;let o=0,c=0,l=1/0;for(const a of n)o+=a.durationMs,a.durationMs>c&&(c=a.durationMs),a.durationMs<l&&(l=a.durationMs);t.push({name:e,renderCount:n.length,avgMs:o/n.length,maxMs:c,minMs:l,lastMs:n[n.length-1].durationMs,totalMs:o,timings:n})}return t.sort((e,n)=>n.totalMs-e.totalMs),t}catch{}return[]}function Ve(){try{const t=[];for(const e of K.values())for(let n=0;n<e.length;n++)t.push(e[n]);return t}catch{}return[]}function On(t=50){try{const e=Ve();return e.sort((n,o)=>o.ts-n.ts),e.length>t?e.slice(0,t):e}catch{}return[]}function Ne(t=20){try{const e=Ve();return e.sort((n,o)=>o.durationMs-n.durationMs),e.length>t?e.slice(0,t):e}catch{}return[]}function je(){try{K.clear(),He=1}catch{}}i.atom(0);function J(t){try{return t<.01?"<0.01ms":t<1?`${t.toFixed(2)}ms`:t<10?`${t.toFixed(1)}ms`:`${t.toFixed(0)}ms`}catch{return""}}function We(t,e){try{return e<=0?0:Math.max(2,Math.min(100,t/e*100))}catch{return 0}}function Ge(t){try{return t<16?"#66bb6a":t<=20?"#ffb74d":"#ef5350"}catch{return""}}let Q="summary";function Vn(t){try{if(t.length===0)return i.html`<div class="${r.empty}">
411
+ No render data yet. Interact with the app to see component performance.
412
+ </div>`;const e=Math.max(...t.map(n=>n.totalMs));return i.html`
413
+ <table class="${r.perfTable}">
414
+ <thead>
415
+ <tr>
416
+ <th class="${r.perfTh}">Component</th>
417
+ <th class="${r.perfTh} ${r.perfThRight}">Renders</th>
418
+ <th class="${r.perfTh} ${r.perfThRight}">Avg</th>
419
+ <th class="${r.perfTh} ${r.perfThRight}">Max</th>
420
+ <th class="${r.perfTh} ${r.perfThRight}">Last</th>
421
+ <th class="${r.perfTh}" style="width: 40%;">Total</th>
422
+ </tr>
423
+ </thead>
424
+ <tbody>
425
+ ${i.repeat(t,n=>n.name,n=>{const o=Ge(n.lastMs);return i.html`
426
+ <tr class="${r.perfRow}">
427
+ <td class="${r.perfCell} ${r.perfName}">
428
+ ${n.name}
429
+ </td>
430
+ <td class="${r.perfCell} ${r.perfNum}">
431
+ ${n.renderCount}
432
+ </td>
433
+ <td class="${r.perfCell} ${r.perfNum}">
434
+ ${J(n.avgMs)}
435
+ </td>
436
+ <td class="${r.perfCell} ${r.perfNum}">
437
+ ${J(n.maxMs)}
438
+ </td>
439
+ <td class="${r.perfCell} ${r.perfNum}">
440
+ ${J(n.lastMs)}
441
+ </td>
442
+ <td class="${r.perfCell}">
443
+ <div class="${r.perfBarWrap}">
444
+ <div
445
+ class="${r.perfBar}"
446
+ style="width: ${We(n.totalMs,e)}%; background: ${o};"
447
+ ></div>
448
+ <span class="${r.perfBarLabel}"
449
+ >${J(n.totalMs)}</span
450
+ >
451
+ </div>
452
+ </td>
453
+ </tr>
454
+ `})}
455
+ </tbody>
456
+ </table>
457
+ `}catch{return i.html``}}function Nn(t,e){try{if(t.length===0)return i.html`<div class="${r.empty}">
458
+ No render data yet. Interact with the app to see slow renders.
459
+ </div>`;const n=Math.max(...t.map(c=>c.durationMs)),o=!!e;return i.html`
460
+ <table class="${r.perfTable}">
461
+ <thead>
462
+ <tr>
463
+ <th class="${r.perfTh}">Component</th>
464
+ <th class="${r.perfTh} ${r.perfThRight}">Duration</th>
465
+ <th class="${r.perfTh}" style="width: 50%;">&nbsp;</th>
466
+ </tr>
467
+ </thead>
468
+ <tbody>
469
+ ${i.repeat(t,c=>c.id,c=>{const l=Ge(c.durationMs),a=o?()=>{try{e(c.instanceId)}catch{}}:void 0;return i.html`
470
+ <tr
471
+ class="${r.perfRow} ${o?r.perfRowClickable:""}"
472
+ @click=${a}
473
+ title=${o?`Go to ${c.componentName} in Components tab`:""}
474
+ >
475
+ <td class="${r.perfCell} ${r.perfName}">
476
+ ${c.componentName}
477
+ </td>
478
+ <td class="${r.perfCell} ${r.perfNum}">
479
+ ${J(c.durationMs)}
480
+ </td>
481
+ <td class="${r.perfCell}">
482
+ <div class="${r.perfBarWrap}">
483
+ <div
484
+ class="${r.perfBar}"
485
+ style="width: ${We(c.durationMs,n)}%; background: ${l};"
486
+ ></div>
487
+ </div>
488
+ </td>
489
+ </tr>
490
+ `})}
491
+ </tbody>
492
+ </table>
493
+ `}catch{return i.html``}}function Ue({onClear:t,renderCallback:e,onNavigateToComponent:n}){try{const o=Oe(),c=Ne(30);return i.html`
494
+ <div class="${r.perfPanel}">
495
+ <div class="${r.perfToolbar}">
496
+ <div class="${r.perfTabs}">
497
+ <button
498
+ class="${r.perfTabBtn} ${Q==="summary"?"active":""}"
499
+ @click=${()=>{try{Q="summary",e()}catch{}}}
500
+ >
501
+ Summary
502
+ </button>
503
+ <button
504
+ class="${r.perfTabBtn} ${Q==="slowest"?"active":""}"
505
+ @click=${()=>{try{Q="slowest",e()}catch{}}}
506
+ >
507
+ Slowest Renders
508
+ </button>
509
+ </div>
510
+ <div class="${r.perfActions}">
511
+ <button
512
+ class="${r.button}"
513
+ @click=${()=>{try{je(),t()}catch{}}}
514
+ title="Clear performance data"
515
+ >
516
+ 🗑
517
+ </button>
518
+ </div>
519
+ </div>
520
+
521
+ <div class="${r.perfContent}">
522
+ ${Q==="summary"?Vn(o):Nn(c,n??null)}
523
+ </div>
524
+ </div>
525
+ `}catch{return i.html``}}let I=!1,C=!1,Z="components",B="list",$=null,w=null,y=null,F=[],f=null,S=null,D=0;const jn=150,Wn=.8,Gn=.5;let L=null;function Pt(){try{const t=document.documentElement;L===null&&(L=parseFloat(getComputedStyle(t).paddingBottom)||0),t.style.paddingBottom=`${L+D}px`}catch{}}function zt(){try{if(L===null)return;document.documentElement.style.paddingBottom=L===0?"":`${L}px`,L=null}catch{}}let Ht=!1,Ye=0,qe=0,ht=!1,tt=null,et=null,nt=null,O=null,V=null;function Un(){try{V!==null&&(clearTimeout(V),V=null)}catch{}}function gt(){try{Un(),O&&(O.remove(),O=null)}catch{}}function mt(t){try{let e=function(){try{const l=document.createElement("div");l.className=r.domHighlight,document.body.appendChild(l),O=l;const a=n.getBoundingClientRect();c?(l.style.position="fixed",l.style.top=`${a.top}px`,l.style.left=`${a.left}px`):(l.style.top=`${a.top+window.scrollY}px`,l.style.left=`${a.left+window.scrollX}px`),l.style.width=`${a.width}px`,l.style.height=`${a.height}px`,V=q(()=>setTimeout(()=>{try{O===l&&(l.classList.add("fade-out"),V=q(()=>setTimeout(()=>{try{O===l&&gt()}catch{}},600)))}catch{}},1500))}catch{}};gt();const n=t.firstElementChild??t,o=getComputedStyle(n).position,c=o==="fixed"||o==="sticky";if(c)e();else{const l=n.getBoundingClientRect(),a=l.top>=0&&l.bottom<=(window.innerHeight||document.documentElement.clientHeight);a||n.scrollIntoView({behavior:"smooth",block:"center"}),V=q(()=>setTimeout(e,a?0:400))}}catch{}}function Xe(){try{if($===null)return null;for(const t of F)for(const e of t.instances)if(e.componentId===$)return e;return null}catch{}return null}function Ft(){try{return w===null?null:F.find(t=>t.viewFn===w)??null}catch{}return null}function Yn(){try{if(y===null)return null;const t=Ft();return t?t.instances.find(e=>e.componentId===y)??null:null}catch{}return null}function yt(){try{F=Xt(),$!==null&&!Xe()&&($=null),w!==null&&!Ft()?(w=null,y=null):y!==null&&!Yn()&&(y=null)}catch{}}function bt(){try{return I&&!C}catch{}return!1}function rt(){try{return S?.querySelector(`.${r.panel}`)??null}catch{}return null}function qn(t){try{$=$===t?null:t,g()}catch{}}function Xn(t){try{w===t?(w=null,y=null):(w=t,y=null),g()}catch{}}function Kn(t){try{y=y===t?null:t,g()}catch{}}function Jn(t){try{$=t,Z="components",yt(),w=null,y=null;for(const e of F){for(const n of e.instances)if(n.componentId===t){w=e.viewFn,y=t;break}if(w)break}g()}catch{}}function Qn(t){try{Z=t,g()}catch{}}function Zn(){try{if(!I||C)return;C=!0,rt()?.classList.remove(r.panelVisible),f&&(f.style.display=""),zt()}catch{}}function tr(){try{if(!C)return;C=!1,f&&(f.style.display="none"),yt(),g(),Pt(),requestAnimationFrame(()=>{try{requestAnimationFrame(()=>{try{rt()?.classList.add(r.panelVisible)}catch{}})}catch{}})}catch{}}function er(){try{I=!1,C=!1,$=null,Ke(),gt(),zt();const t=rt();if(t){t.classList.remove(r.panelVisible);let e=!1;const n=()=>{try{if(e)return;e=!0,t.removeEventListener("transitionend",n),Ot()}catch{}};t.addEventListener("transitionend",n,{once:!0}),q(()=>setTimeout(n,350))}else Ot();f&&(f.style.display="")}catch{}}function nr(){try{if(I)return;I=!0,C=!1,f&&(f.style.display="none"),D=Math.round(window.innerHeight*Gn),rr(),cr(),yt(),g(),Pt(),requestAnimationFrame(()=>{try{requestAnimationFrame(()=>{try{rt()?.classList.add(r.panelVisible)}catch{}})}catch{}})}catch{}}function rr(){try{Pe(),tt||(tt=ge(()=>{try{bt()&&g()}catch{}})),et||(et=Fe(()=>{try{bt()&&g()}catch{}}))}catch{}}function Ke(){try{ze(),tt&&(tt(),tt=null),et&&(et(),et=null)}catch{}}const Dt="mates-devtools-vars";function or(){try{if(document.getElementById(Dt))return;const t=document.createElement("style");t.id=Dt,t.textContent=`
526
+ #mates-devtools {
527
+ --dt-bg: #1a1a1a;
528
+ --dt-bg-2: #222222;
529
+ --dt-bg-3: #2a2a2a;
530
+ --dt-bg-input: #111111;
531
+ --dt-bg-hover: #252525;
532
+ --dt-bg-selected: #1a3a6e;
533
+ --dt-bg-active: rgba(59,130,246,0.15);
534
+ --dt-border: #333333;
535
+ --dt-border-2: #2a2a2a;
536
+ --dt-border-3: #1e1e1e;
537
+ --dt-border-selected: #3b82f6;
538
+ --dt-text: #cccccc;
539
+ --dt-text-bright: #e0e0e0;
540
+ --dt-text-muted: #888888;
541
+ --dt-text-dim: #666666;
542
+ --dt-text-dimmer: #555555;
543
+ --dt-text-selected: #93c5fd;
544
+ --dt-accent: #0077e6;
545
+ --dt-accent-2: #3b82f6;
546
+ --dt-scrollbar: #444444;
547
+ --dt-scrollbar-hover: #555555;
548
+ --dt-prop-key: #9cdcfe;
549
+ --dt-prop-val: #ce9178;
550
+ --dt-scope-name: #4ec9b0;
551
+ --dt-hook-count: #0099ff;
552
+ --dt-instance-border: #0066cc;
553
+ --dt-instance-bg: #151515;
554
+ --dt-flash-bg: rgba(0,180,100,0.45);
555
+ }
556
+
557
+ @media (prefers-color-scheme: light) {
558
+ #mates-devtools {
559
+ --dt-bg: #f5f5f5;
560
+ --dt-bg-2: #ebebeb;
561
+ --dt-bg-3: #e0e0e0;
562
+ --dt-bg-input: #ffffff;
563
+ --dt-bg-hover: #e8e8e8;
564
+ --dt-bg-selected: #dbeafe;
565
+ --dt-bg-active: rgba(59,130,246,0.12);
566
+ --dt-border: #cccccc;
567
+ --dt-border-2: #d4d4d4;
568
+ --dt-border-3: #e4e4e4;
569
+ --dt-border-selected: #3b82f6;
570
+ --dt-text: #333333;
571
+ --dt-text-bright: #111111;
572
+ --dt-text-muted: #666666;
573
+ --dt-text-dim: #888888;
574
+ --dt-text-dimmer: #999999;
575
+ --dt-text-selected: #1d4ed8;
576
+ --dt-accent: #0077e6;
577
+ --dt-accent-2: #3b82f6;
578
+ --dt-scrollbar: #bbbbbb;
579
+ --dt-scrollbar-hover: #999999;
580
+ --dt-prop-key: #0070c1;
581
+ --dt-prop-val: #a31515;
582
+ --dt-scope-name: #007f6a;
583
+ --dt-hook-count: #0070c1;
584
+ --dt-instance-border: #3b82f6;
585
+ --dt-instance-bg: #f0f4ff;
586
+ --dt-flash-bg: rgba(0,160,90,0.3);
587
+ }
588
+ }
589
+ `,document.head.appendChild(t)}catch{}}function ir(){try{document.getElementById(Dt)?.remove()}catch{}}function cr(){try{if(S)return;or(),S=document.createElement("div"),S.id="mates-devtools",document.body.appendChild(S)}catch{}}function Ot(){try{if(!S)return;i.render(i.html``,S),S.remove(),S=null,ir()}catch{}}function g(){try{if(!S||!I)return;const t=(()=>{try{switch(Z){case"components":return i.html`
590
+ <div class="${r.body}">
591
+ <div class="${r.leftColumn}">
592
+ <div class="${r.leftTabs}">
593
+ <button
594
+ class="${r.leftTabBtn} ${B==="list"?"active":""}"
595
+ @click=${()=>{try{B="list",g()}catch{}}}
596
+ title="Flat list"
597
+ >
598
+ <svg
599
+ xmlns="http://www.w3.org/2000/svg"
600
+ width="14"
601
+ height="14"
602
+ viewBox="0 0 24 24"
603
+ fill="none"
604
+ stroke="currentColor"
605
+ stroke-width="2"
606
+ stroke-linecap="round"
607
+ stroke-linejoin="round"
608
+ >
609
+ <line x1="8" y1="6" x2="21" y2="6" />
610
+ <line x1="8" y1="12" x2="21" y2="12" />
611
+ <line x1="8" y1="18" x2="21" y2="18" />
612
+ <line x1="3" y1="6" x2="3.01" y2="6" />
613
+ <line x1="3" y1="12" x2="3.01" y2="12" />
614
+ <line x1="3" y1="18" x2="3.01" y2="18" />
615
+ </svg>
616
+ </button>
617
+ <button
618
+ class="${r.leftTabBtn} ${B==="tree"?"active":""}"
619
+ @click=${()=>{try{B="tree",g()}catch{}}}
620
+ title="Tree view"
621
+ >
622
+ <svg
623
+ xmlns="http://www.w3.org/2000/svg"
624
+ width="14"
625
+ height="14"
626
+ viewBox="0 0 24 24"
627
+ fill="none"
628
+ stroke="currentColor"
629
+ stroke-width="2"
630
+ stroke-linecap="round"
631
+ stroke-linejoin="round"
632
+ >
633
+ <line x1="6" y1="3" x2="6" y2="15" />
634
+ <circle cx="18" cy="6" r="3" />
635
+ <circle cx="6" cy="18" r="3" />
636
+ <path d="M6 12a6 6 0 0 0 12-6" />
637
+ </svg>
638
+ </button>
639
+ </div>
640
+ ${B==="list"?de({groups:F,selectedViewFn:w,onSelectGroup:Xn,onHighlight:e=>mt(e),renderCallback:g}):pe({selectedComponentId:$,onSelectComponent:qn,onHighlight:e=>mt(e),renderCallback:g})}
641
+ </div>
642
+ ${Tt(B==="list"?{selectedGroup:Ft(),selectedInstanceId:y,onSelectInstance:Kn,onHighlight:e=>mt(e)}:{selectedComponent:Xe()})}
643
+ </div>
644
+ `;case"logs":return Re({onClear:g,renderCallback:g});case"performance":return Ue({onClear:g,renderCallback:g,onNavigateToComponent:Jn});default:return i.html``}}catch{}return i.html``})();i.render(i.html`
645
+ <div class="${r.panel}" style="height: ${D}px;">
646
+ <div class="${r.resizeHandle}" @mousedown=${lr}></div>
647
+ ${he({activeTab:Z,onTabChange:Qn,onMinimise:Zn,onClose:er,unreadLogCount:Z==="logs"?0:$e()})}
648
+ ${t}
649
+ </div>
650
+ `,S)}catch{}}function lr(t){try{t.preventDefault();const e=t.clientY,n=D,o=l=>{try{const a=window.innerHeight*Wn;D=Math.max(jn,Math.min(a,n+(e-l.clientY)));const u=rt();u&&(u.style.height=`${D}px`),Pt()}catch{}},c=()=>{try{document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",c)}catch{}};document.addEventListener("mousemove",o),document.addEventListener("mouseup",c)}catch{}}function ar(){try{if(f)return;f=document.createElement("div"),f.className=r.fab,f.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"/></svg>',f.style.bottom="50px",f.style.right="50px",f.addEventListener("mousedown",Qe),f.addEventListener("click",Je),document.body.appendChild(f)}catch{}}function sr(){try{if(!f)return;f.removeEventListener("mousedown",Qe),f.removeEventListener("click",Je),f.remove(),f=null}catch{}}function Je(){try{if(ht){ht=!1;return}C?tr():nr()}catch{}}function Qe(t){try{t.preventDefault(),Ht=!0,ht=!1;const e=f.getBoundingClientRect();Ye=t.clientX-e.left,qe=t.clientY-e.top,f.classList.add(r.fabDragging),document.addEventListener("mousemove",Ze),document.addEventListener("mouseup",tn)}catch{}}function Ze(t){try{if(!Ht||!f)return;ht=!0,f.style.bottom="auto",f.style.right="auto",f.style.left=`${Math.max(0,Math.min(window.innerWidth-48,t.clientX-Ye))}px`,f.style.top=`${Math.max(0,Math.min(window.innerHeight-48,t.clientY-qe))}px`}catch{}}function tn(){try{Ht=!1,f?.classList.remove(r.fabDragging),document.removeEventListener("mousemove",Ze),document.removeEventListener("mouseup",tn)}catch{}}function dr(){try{$n(),ar(),nt||(nt=N.__subscribe(t=>{try{t?.type==="unmount"&&($!==null&&t.component.componentId===$&&($=null),y!==null&&t.component.componentId===y&&(y=null)),yt(),bt()&&g()}catch{}})),kt(()=>{try{bt()&&g()}catch{}})}catch{}}function en(){try{_n(),kt(null),gt(),Ke(),ye(),zt(),nt&&(nt(),nt=null),I=!1,C=!1,B="list",$=null,w=null,y=null,F=[],Ot(),sr()}catch{}}const vt=[];let Vt=null,Nt=null,jt=null;function ur(){try{Vt=i.interceptBefore((t,e)=>{try{const n=(e.method??"GET").toUpperCase();vt.push({method:n,url:t,startTs:performance.now()})}catch{}return{url:t,options:e}}),Nt=i.interceptAfter(t=>{try{const e=vt.shift(),n=e?.method??"",o=e?.url??t.url??"",c=e?performance.now()-e.startTs:0;Le(n,o,t.status,c)}catch{}return t}),jt=i.interceptError(t=>{try{const e=vt.shift(),n=e?performance.now()-e.startTs:0;Ee(e?.method??"",e?.url??"",t.message,n)}catch{}})}catch{}}function pr(){try{Vt?.(),Nt?.(),jt?.(),Vt=null,Nt=null,jt=null,vt.length=0}catch{}}function fr(){try{if(i.isDevToolsInstalled())return;i.installDevToolsHooks({registerComponent:Ut,unregisterComponent:Yt,notifyRender:qt,getComponentName:A,logComponentMount:Se,logComponentRender:ke,logComponentUnmount:Ce,logAtomSet:Te,logAtomUpdate:Me,logEventTrigger:Ie,logCleanupEventTrigger:Ae,logFetchRequest:En,logFetchResponse:Le,logFetchError:Ee,recordRender:Rt}),me(),ur()}catch{}}let xt=!1;function hr(){try{if(xt)return;xt=!0,fr(),dr()}catch{}}function gr(){try{if(!xt)return;xt=!1,pr(),en()}catch{}}s.clearLogs=we,s.clearPerfData=je,s.connectLogStore=me,s.connectPerfStore=Pe,s.destroyDevTools=en,s.destroyMatesDevTools=gr,s.devToolsEvent=N,s.disconnectLogStore=ye,s.disconnectPerfStore=ze,s.getAllComponents=St,s.getComponentDepth=E,s.getComponentGroups=Xt,s.getComponentName=A,s.getComponentsByView=ln,s.getLogCount=Ln,s.getLogs=xe,s.getPerfSummaries=Oe,s.getRecentTimings=On,s.getRenderVersion=j,s.getSlowestRenders=Ne,s.getUnreadLogCount=$e,s.isLogStoreConnected=In,s.isPerfStoreConnected=Hn,s.logAtomSet=Te,s.logAtomUpdate=Me,s.logCleanupEventTrigger=Ae,s.logComponentMount=Se,s.logComponentRender=ke,s.logComponentUnmount=Ce,s.logEventTrigger=Ie,s.markLogsRead=_e,s.notifyRender=qt,s.onLogEntry=ge,s.onPerfEntry=Fe,s.recordRender=Rt,s.registerComponent=Ut,s.renderAtomsViewer=re,s.renderComponentInspector=Tt,s.renderComponentList=de,s.renderComponentTree=pe,s.renderHeader=he,s.renderHooksViewer=Ct,s.renderLogsViewer=Re,s.renderMatesDevTools=hr,s.renderPerfViewer=Ue,s.renderPropsViewer=ee,s.renderScopesViewer=ne,s.renderUseStateViewer=oe,s.renderValueTree=T,s.renderValueTreeEntries=hn,s.setValueTreeRenderCallback=kt,s.startRenderTiming=Dn,s.styles=r,s.unregisterComponent=Yt,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}));