@sprawlify/primitives 0.0.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 (378) hide show
  1. package/dist/anatomy.cjs +3 -0
  2. package/dist/anatomy.d.cts +2 -0
  3. package/dist/anatomy.d.mts +2 -0
  4. package/dist/anatomy.mjs +3 -0
  5. package/dist/aria-hidden-DqYx0f_y.mjs +177 -0
  6. package/dist/aria-hidden-DtLU6hSU.cjs +182 -0
  7. package/dist/aria-hidden.cjs +4 -0
  8. package/dist/aria-hidden.d.cts +16 -0
  9. package/dist/aria-hidden.d.mts +16 -0
  10. package/dist/aria-hidden.mjs +4 -0
  11. package/dist/auto-resize-D3qHtFy1.mjs +114 -0
  12. package/dist/auto-resize-xzlPFDyD.cjs +125 -0
  13. package/dist/auto-resize.cjs +5 -0
  14. package/dist/auto-resize.d.cts +17 -0
  15. package/dist/auto-resize.d.mts +17 -0
  16. package/dist/auto-resize.mjs +4 -0
  17. package/dist/chunk-CbDLau6x.cjs +34 -0
  18. package/dist/collection-8XqaNHs_.mjs +1279 -0
  19. package/dist/collection-DIoIDISa.cjs +1326 -0
  20. package/dist/collection.cjs +11 -0
  21. package/dist/collection.d.cts +5 -0
  22. package/dist/collection.d.mts +5 -0
  23. package/dist/collection.mjs +4 -0
  24. package/dist/color-BkAP1Tkd.d.mts +60 -0
  25. package/dist/color-VKewNv2e.d.cts +60 -0
  26. package/dist/color-utils-Cc5GVXZh.mjs +657 -0
  27. package/dist/color-utils-LER_6Zwu.cjs +680 -0
  28. package/dist/color-utils.cjs +7 -0
  29. package/dist/color-utils.d.cts +19 -0
  30. package/dist/color-utils.d.mts +19 -0
  31. package/dist/color-utils.mjs +4 -0
  32. package/dist/core-30pJjyC2.d.mts +49 -0
  33. package/dist/core-CQFbMdTl.cjs +176 -0
  34. package/dist/core-CefBjbst.d.cts +49 -0
  35. package/dist/core-DCFNMTZF.mjs +129 -0
  36. package/dist/core.cjs +12 -0
  37. package/dist/core.d.cts +3 -0
  38. package/dist/core.d.mts +3 -0
  39. package/dist/core.mjs +5 -0
  40. package/dist/create-anatomy-B3XYc-qG.d.mts +70 -0
  41. package/dist/create-anatomy-BGQ8pv8J.d.cts +70 -0
  42. package/dist/create-anatomy-BbDZbHpC.mjs +39 -0
  43. package/dist/create-anatomy-CDsIFUXg.cjs +45 -0
  44. package/dist/create-props-BnF_vl-E.mjs +5 -0
  45. package/dist/create-props-YKy7JIKj.cjs +11 -0
  46. package/dist/data-url-C3ITPVRX.d.cts +10 -0
  47. package/dist/data-url-DLwZ9M77.d.mts +10 -0
  48. package/dist/date-utils-D2xPHa_I.cjs +738 -0
  49. package/dist/date-utils-wEa1hhpc.mjs +474 -0
  50. package/dist/date-utils.cjs +46 -0
  51. package/dist/date-utils.d.cts +101 -0
  52. package/dist/date-utils.d.mts +2 -0
  53. package/dist/date-utils.mjs +3 -0
  54. package/dist/defineProperty-BoUOT9Ie.cjs +49 -0
  55. package/dist/defineProperty-DrXfyjd4.mjs +43 -0
  56. package/dist/dismissable-CTfKZ4OG.cjs +282 -0
  57. package/dist/dismissable-DDrx0xnH.mjs +271 -0
  58. package/dist/dismissable-layer-C7pZU2wi.d.cts +39 -0
  59. package/dist/dismissable-layer-t_b0fk-p.d.mts +39 -0
  60. package/dist/dismissable.cjs +7 -0
  61. package/dist/dismissable.d.cts +3 -0
  62. package/dist/dismissable.d.mts +3 -0
  63. package/dist/dismissable.mjs +6 -0
  64. package/dist/dom-query-CWZdWUGp.cjs +2141 -0
  65. package/dist/dom-query-DFCRhyj1.mjs +1374 -0
  66. package/dist/dom-query.cjs +130 -0
  67. package/dist/dom-query.d.cts +307 -0
  68. package/dist/dom-query.d.mts +307 -0
  69. package/dist/dom-query.mjs +3 -0
  70. package/dist/file-utils.cjs +220 -0
  71. package/dist/file-utils.d.cts +51 -0
  72. package/dist/file-utils.d.mts +51 -0
  73. package/dist/file-utils.mjs +210 -0
  74. package/dist/focus-trap-D-bypQEJ.mjs +485 -0
  75. package/dist/focus-trap-D4i52S9A.cjs +496 -0
  76. package/dist/focus-trap.cjs +5 -0
  77. package/dist/focus-trap.d.cts +88 -0
  78. package/dist/focus-trap.d.mts +88 -0
  79. package/dist/focus-trap.mjs +4 -0
  80. package/dist/focus-visible-DYTWdWpa.cjs +210 -0
  81. package/dist/focus-visible-irppYatv.mjs +175 -0
  82. package/dist/focus-visible.cjs +9 -0
  83. package/dist/focus-visible.d.cts +31 -0
  84. package/dist/focus-visible.d.mts +31 -0
  85. package/dist/focus-visible.mjs +4 -0
  86. package/dist/functions-BOkTDEFM.d.cts +15 -0
  87. package/dist/functions-IZtWcC8Q.d.mts +15 -0
  88. package/dist/highlight-word.cjs +100 -0
  89. package/dist/highlight-word.d.cts +24 -0
  90. package/dist/highlight-word.d.mts +24 -0
  91. package/dist/highlight-word.mjs +99 -0
  92. package/dist/hotkeys.cjs +758 -0
  93. package/dist/hotkeys.d.cts +130 -0
  94. package/dist/hotkeys.d.mts +130 -0
  95. package/dist/hotkeys.mjs +754 -0
  96. package/dist/i18n-utils.cjs +450 -0
  97. package/dist/i18n-utils.d.cts +61 -0
  98. package/dist/i18n-utils.d.mts +61 -0
  99. package/dist/i18n-utils.mjs +440 -0
  100. package/dist/index-BkzYij2j.d.mts +25 -0
  101. package/dist/index-Bqw3r34-.d.cts +1383 -0
  102. package/dist/index-C0MKXQmE.d.mts +1383 -0
  103. package/dist/index-C9-feK5c.d.cts +25 -0
  104. package/dist/index-CD5FN7kY.d.mts +114 -0
  105. package/dist/index-CJji6wHl.d.cts +15 -0
  106. package/dist/index-CNi5FkPe.d.mts +15 -0
  107. package/dist/index-D96rs8B0.d.mts +115 -0
  108. package/dist/index.cjs +0 -0
  109. package/dist/index.d.cts +1 -0
  110. package/dist/index.d.mts +1 -0
  111. package/dist/index.mjs +1 -0
  112. package/dist/interact-outside-BplxR9cR.mjs +200 -0
  113. package/dist/interact-outside-C8-oFBpB.cjs +205 -0
  114. package/dist/interact-outside.cjs +5 -0
  115. package/dist/interact-outside.d.cts +2 -0
  116. package/dist/interact-outside.d.mts +2 -0
  117. package/dist/interact-outside.mjs +5 -0
  118. package/dist/json-tree-utils.cjs +1512 -0
  119. package/dist/json-tree-utils.d.cts +117 -0
  120. package/dist/json-tree-utils.d.mts +117 -0
  121. package/dist/json-tree-utils.mjs +1463 -0
  122. package/dist/list-collection-BIMJGQjn.d.cts +61 -0
  123. package/dist/list-collection-Db3eixRU.d.mts +61 -0
  124. package/dist/live-region-CcZPGo89.cjs +52 -0
  125. package/dist/live-region-CnPh21WH.mjs +46 -0
  126. package/dist/live-region.cjs +3 -0
  127. package/dist/live-region.d.cts +2 -0
  128. package/dist/live-region.d.mts +2 -0
  129. package/dist/live-region.mjs +3 -0
  130. package/dist/machines/accordion/index.cjs +328 -0
  131. package/dist/machines/accordion/index.d.cts +83 -0
  132. package/dist/machines/accordion/index.d.mts +83 -0
  133. package/dist/machines/accordion/index.mjs +322 -0
  134. package/dist/machines/async-list/index.cjs +311 -0
  135. package/dist/machines/async-list/index.d.cts +89 -0
  136. package/dist/machines/async-list/index.d.mts +89 -0
  137. package/dist/machines/async-list/index.mjs +310 -0
  138. package/dist/machines/avatar/index.cjs +169 -0
  139. package/dist/machines/avatar/index.d.cts +63 -0
  140. package/dist/machines/avatar/index.d.mts +63 -0
  141. package/dist/machines/avatar/index.mjs +165 -0
  142. package/dist/machines/bottom-sheet/index.cjs +676 -0
  143. package/dist/machines/bottom-sheet/index.d.cts +239 -0
  144. package/dist/machines/bottom-sheet/index.d.mts +239 -0
  145. package/dist/machines/bottom-sheet/index.mjs +672 -0
  146. package/dist/machines/carousel/index.cjs +859 -0
  147. package/dist/machines/carousel/index.d.cts +146 -0
  148. package/dist/machines/carousel/index.d.mts +146 -0
  149. package/dist/machines/carousel/index.mjs +851 -0
  150. package/dist/machines/checkbox/index.cjs +316 -0
  151. package/dist/machines/checkbox/index.d.cts +81 -0
  152. package/dist/machines/checkbox/index.d.mts +81 -0
  153. package/dist/machines/checkbox/index.mjs +312 -0
  154. package/dist/machines/clipboard/index.cjs +225 -0
  155. package/dist/machines/clipboard/index.d.cts +68 -0
  156. package/dist/machines/clipboard/index.d.mts +68 -0
  157. package/dist/machines/clipboard/index.mjs +219 -0
  158. package/dist/machines/collapsible/index.cjs +362 -0
  159. package/dist/machines/collapsible/index.d.cts +82 -0
  160. package/dist/machines/collapsible/index.d.mts +82 -0
  161. package/dist/machines/collapsible/index.mjs +358 -0
  162. package/dist/machines/color-picker/index.cjs +1529 -0
  163. package/dist/machines/color-picker/index.d.cts +205 -0
  164. package/dist/machines/color-picker/index.d.mts +205 -0
  165. package/dist/machines/color-picker/index.mjs +1514 -0
  166. package/dist/machines/combobox/index.cjs +1593 -0
  167. package/dist/machines/combobox/index.d.cts +214 -0
  168. package/dist/machines/combobox/index.d.mts +214 -0
  169. package/dist/machines/combobox/index.mjs +1582 -0
  170. package/dist/machines/date-picker/index.cjs +2177 -0
  171. package/dist/machines/date-picker/index.d.cts +350 -0
  172. package/dist/machines/date-picker/index.d.mts +350 -0
  173. package/dist/machines/date-picker/index.mjs +2161 -0
  174. package/dist/machines/dialog/index.cjs +325 -0
  175. package/dist/machines/dialog/index.d.cts +80 -0
  176. package/dist/machines/dialog/index.d.mts +80 -0
  177. package/dist/machines/dialog/index.mjs +321 -0
  178. package/dist/machines/editable/index.cjs +551 -0
  179. package/dist/machines/editable/index.d.cts +114 -0
  180. package/dist/machines/editable/index.d.mts +114 -0
  181. package/dist/machines/editable/index.mjs +547 -0
  182. package/dist/machines/floating-panel/index.cjs +995 -0
  183. package/dist/machines/floating-panel/index.d.cts +147 -0
  184. package/dist/machines/floating-panel/index.d.mts +147 -0
  185. package/dist/machines/floating-panel/index.mjs +988 -0
  186. package/dist/machines/hover-card/index.cjs +383 -0
  187. package/dist/machines/hover-card/index.d.cts +69 -0
  188. package/dist/machines/hover-card/index.d.mts +69 -0
  189. package/dist/machines/hover-card/index.mjs +379 -0
  190. package/dist/machines/image-cropper/index.cjs +1995 -0
  191. package/dist/machines/image-cropper/index.d.cts +182 -0
  192. package/dist/machines/image-cropper/index.d.mts +182 -0
  193. package/dist/machines/image-cropper/index.mjs +1990 -0
  194. package/dist/machines/listbox/index.cjs +794 -0
  195. package/dist/machines/listbox/index.d.cts +168 -0
  196. package/dist/machines/listbox/index.d.mts +168 -0
  197. package/dist/machines/listbox/index.mjs +782 -0
  198. package/dist/machines/marquee/index.cjs +395 -0
  199. package/dist/machines/marquee/index.d.cts +102 -0
  200. package/dist/machines/marquee/index.d.mts +102 -0
  201. package/dist/machines/marquee/index.mjs +391 -0
  202. package/dist/machines/menu/index.cjs +1298 -0
  203. package/dist/machines/menu/index.d.cts +175 -0
  204. package/dist/machines/menu/index.d.mts +175 -0
  205. package/dist/machines/menu/index.mjs +1286 -0
  206. package/dist/machines/navigation-menu/index.cjs +861 -0
  207. package/dist/machines/navigation-menu/index.d.cts +127 -0
  208. package/dist/machines/navigation-menu/index.d.mts +127 -0
  209. package/dist/machines/navigation-menu/index.mjs +857 -0
  210. package/dist/machines/number-input/index.cjs +996 -0
  211. package/dist/machines/number-input/index.d.cts +134 -0
  212. package/dist/machines/number-input/index.d.mts +134 -0
  213. package/dist/machines/number-input/index.mjs +991 -0
  214. package/dist/machines/pagination/index.cjs +419 -0
  215. package/dist/machines/pagination/index.d.cts +139 -0
  216. package/dist/machines/pagination/index.d.mts +139 -0
  217. package/dist/machines/pagination/index.mjs +411 -0
  218. package/dist/machines/password-input/index.cjs +228 -0
  219. package/dist/machines/password-input/index.d.cts +71 -0
  220. package/dist/machines/password-input/index.d.mts +71 -0
  221. package/dist/machines/password-input/index.mjs +224 -0
  222. package/dist/machines/pin-input/index.cjs +523 -0
  223. package/dist/machines/pin-input/index.d.cts +105 -0
  224. package/dist/machines/pin-input/index.d.mts +105 -0
  225. package/dist/machines/pin-input/index.mjs +519 -0
  226. package/dist/machines/popover/index.cjs +430 -0
  227. package/dist/machines/popover/index.d.cts +88 -0
  228. package/dist/machines/popover/index.d.mts +88 -0
  229. package/dist/machines/popover/index.mjs +426 -0
  230. package/dist/machines/presence/index.cjs +192 -0
  231. package/dist/machines/presence/index.d.cts +44 -0
  232. package/dist/machines/presence/index.d.mts +44 -0
  233. package/dist/machines/presence/index.mjs +190 -0
  234. package/dist/machines/progress/index.cjs +288 -0
  235. package/dist/machines/progress/index.d.cts +96 -0
  236. package/dist/machines/progress/index.d.mts +96 -0
  237. package/dist/machines/progress/index.mjs +284 -0
  238. package/dist/machines/qr-code/index.cjs +172 -0
  239. package/dist/machines/qr-code/index.d.cts +70 -0
  240. package/dist/machines/qr-code/index.d.mts +70 -0
  241. package/dist/machines/qr-code/index.mjs +167 -0
  242. package/dist/machines/radio-group/index.cjs +436 -0
  243. package/dist/machines/radio-group/index.d.cts +106 -0
  244. package/dist/machines/radio-group/index.d.mts +106 -0
  245. package/dist/machines/radio-group/index.mjs +430 -0
  246. package/dist/machines/rating-group/index.cjs +405 -0
  247. package/dist/machines/rating-group/index.d.cts +101 -0
  248. package/dist/machines/rating-group/index.d.mts +101 -0
  249. package/dist/machines/rating-group/index.mjs +399 -0
  250. package/dist/machines/scroll-area/index.cjs +857 -0
  251. package/dist/machines/scroll-area/index.d.cts +159 -0
  252. package/dist/machines/scroll-area/index.d.mts +159 -0
  253. package/dist/machines/scroll-area/index.mjs +853 -0
  254. package/dist/machines/select/index.cjs +1165 -0
  255. package/dist/machines/select/index.d.cts +183 -0
  256. package/dist/machines/select/index.d.mts +183 -0
  257. package/dist/machines/select/index.mjs +1154 -0
  258. package/dist/machines/signature-pad/index.cjs +334 -0
  259. package/dist/machines/signature-pad/index.d.cts +108 -0
  260. package/dist/machines/signature-pad/index.d.mts +108 -0
  261. package/dist/machines/signature-pad/index.mjs +328 -0
  262. package/dist/machines/slider/index.cjs +957 -0
  263. package/dist/machines/slider/index.d.cts +149 -0
  264. package/dist/machines/slider/index.d.mts +149 -0
  265. package/dist/machines/slider/index.mjs +949 -0
  266. package/dist/machines/splitter/index.cjs +1112 -0
  267. package/dist/machines/splitter/index.d.cts +155 -0
  268. package/dist/machines/splitter/index.d.mts +155 -0
  269. package/dist/machines/splitter/index.mjs +1103 -0
  270. package/dist/machines/steps/index.cjs +289 -0
  271. package/dist/machines/steps/index.d.cts +97 -0
  272. package/dist/machines/steps/index.d.mts +97 -0
  273. package/dist/machines/steps/index.mjs +285 -0
  274. package/dist/machines/switch/index.cjs +305 -0
  275. package/dist/machines/switch/index.d.cts +80 -0
  276. package/dist/machines/switch/index.d.mts +80 -0
  277. package/dist/machines/switch/index.mjs +301 -0
  278. package/dist/machines/tabs/index.cjs +508 -0
  279. package/dist/machines/tabs/index.d.cts +111 -0
  280. package/dist/machines/tabs/index.d.mts +111 -0
  281. package/dist/machines/tabs/index.mjs +500 -0
  282. package/dist/machines/tags-input/index.cjs +1127 -0
  283. package/dist/machines/tags-input/index.d.cts +179 -0
  284. package/dist/machines/tags-input/index.d.mts +179 -0
  285. package/dist/machines/tags-input/index.mjs +1121 -0
  286. package/dist/machines/timer/index.cjs +329 -0
  287. package/dist/machines/timer/index.d.cts +98 -0
  288. package/dist/machines/timer/index.d.mts +98 -0
  289. package/dist/machines/timer/index.mjs +324 -0
  290. package/dist/machines/toast/index.cjs +1155 -0
  291. package/dist/machines/toast/index.d.cts +195 -0
  292. package/dist/machines/toast/index.d.mts +195 -0
  293. package/dist/machines/toast/index.mjs +1151 -0
  294. package/dist/machines/toggle/index.cjs +103 -0
  295. package/dist/machines/toggle/index.d.cts +46 -0
  296. package/dist/machines/toggle/index.d.mts +46 -0
  297. package/dist/machines/toggle/index.mjs +99 -0
  298. package/dist/machines/toggle-group/index.cjs +328 -0
  299. package/dist/machines/toggle-group/index.d.cts +81 -0
  300. package/dist/machines/toggle-group/index.d.mts +81 -0
  301. package/dist/machines/toggle-group/index.mjs +322 -0
  302. package/dist/machines/tooltip/index.cjs +516 -0
  303. package/dist/machines/tooltip/index.d.cts +71 -0
  304. package/dist/machines/tooltip/index.d.mts +71 -0
  305. package/dist/machines/tooltip/index.mjs +512 -0
  306. package/dist/machines/tour/index.cjs +1108 -0
  307. package/dist/machines/tour/index.d.cts +206 -0
  308. package/dist/machines/tour/index.d.mts +206 -0
  309. package/dist/machines/tour/index.mjs +1101 -0
  310. package/dist/machines/tree-view/index.cjs +1271 -0
  311. package/dist/machines/tree-view/index.d.cts +215 -0
  312. package/dist/machines/tree-view/index.d.mts +215 -0
  313. package/dist/machines/tree-view/index.mjs +1263 -0
  314. package/dist/node-BctU8GXk.d.mts +24 -0
  315. package/dist/node-CSsuPZVZ.d.cts +24 -0
  316. package/dist/popper-BPJeAtcA.mjs +349 -0
  317. package/dist/popper-D0FAW_p7.cjs +373 -0
  318. package/dist/popper.cjs +8 -0
  319. package/dist/popper.d.cts +74 -0
  320. package/dist/popper.d.mts +2 -0
  321. package/dist/popper.mjs +5 -0
  322. package/dist/raf-BnlYUlDi.d.mts +15 -0
  323. package/dist/raf-Cd2FGy0z.d.cts +15 -0
  324. package/dist/rect-utils-0ellN0a_.mjs +854 -0
  325. package/dist/rect-utils-DKLRhP8G.cjs +1147 -0
  326. package/dist/rect-utils.cjs +51 -0
  327. package/dist/rect-utils.d.cts +198 -0
  328. package/dist/rect-utils.d.mts +198 -0
  329. package/dist/rect-utils.mjs +3 -0
  330. package/dist/remove-scroll-Lrfv79X_.mjs +58 -0
  331. package/dist/remove-scroll-Uvzg1L9r.cjs +63 -0
  332. package/dist/remove-scroll.cjs +0 -0
  333. package/dist/remove-scroll.d.cts +1 -0
  334. package/dist/remove-scroll.d.mts +1 -0
  335. package/dist/remove-scroll.mjs +1 -0
  336. package/dist/scroll-snap-CrTmQRzA.mjs +152 -0
  337. package/dist/scroll-snap-zyiZLv7W.cjs +175 -0
  338. package/dist/scroll-snap.cjs +7 -0
  339. package/dist/scroll-snap.d.cts +14 -0
  340. package/dist/scroll-snap.d.mts +14 -0
  341. package/dist/scroll-snap.mjs +4 -0
  342. package/dist/selection-BIhSzkF7.d.mts +50 -0
  343. package/dist/selection-CS1GBp8e.d.cts +50 -0
  344. package/dist/store-BZcXv49B.cjs +305 -0
  345. package/dist/store-DEojWy9H.mjs +263 -0
  346. package/dist/store.cjs +9 -0
  347. package/dist/store.d.cts +26 -0
  348. package/dist/store.d.mts +26 -0
  349. package/dist/store.mjs +3 -0
  350. package/dist/stringify-state.cjs +49 -0
  351. package/dist/stringify-state.d.cts +8 -0
  352. package/dist/stringify-state.d.mts +8 -0
  353. package/dist/stringify-state.mjs +46 -0
  354. package/dist/tree-collection-BwU5WhGQ.d.mts +78 -0
  355. package/dist/tree-collection-DP_eznnI.d.cts +78 -0
  356. package/dist/typeahead-BdNwVP09.d.cts +45 -0
  357. package/dist/typeahead-XN6lZ7G9.d.mts +45 -0
  358. package/dist/types-BivBkYg9.d.cts +57 -0
  359. package/dist/types-Bl_6JtPQ.d.mts +57 -0
  360. package/dist/types-CPUMVt7c.d.mts +54 -0
  361. package/dist/types-CT_W6HWr.d.cts +54 -0
  362. package/dist/types-DDTcG99l.d.mts +201 -0
  363. package/dist/types-DejIu60O.d.cts +201 -0
  364. package/dist/types-DiIdKZ3K.d.cts +45 -0
  365. package/dist/types-GxLIgJib.d.cts +17 -0
  366. package/dist/types.cjs +15 -0
  367. package/dist/types.d.cts +2 -0
  368. package/dist/types.d.mts +2 -0
  369. package/dist/types.mjs +14 -0
  370. package/dist/utils-BZyrxWWR.mjs +525 -0
  371. package/dist/utils-_6frwjgJ.cjs +1040 -0
  372. package/dist/utils.cjs +88 -0
  373. package/dist/utils.d.cts +144 -0
  374. package/dist/utils.d.mts +144 -0
  375. package/dist/utils.mjs +3 -0
  376. package/dist/wait-for-CMjPsqWk.d.cts +10 -0
  377. package/dist/wait-for-D2nkdD4z.d.mts +10 -0
  378. package/package.json +399 -0
@@ -0,0 +1,8 @@
1
+ //#region src/shared/stringify-state/index.d.ts
2
+ interface Dict {
3
+ [key: string]: any;
4
+ }
5
+ declare function stringifyState(state: Dict, omit?: string[]): string;
6
+ declare function highlightState(state: Dict, omit?: string[]): any;
7
+ //#endregion
8
+ export { highlightState, stringifyState };
@@ -0,0 +1,8 @@
1
+ //#region src/shared/stringify-state/index.d.ts
2
+ interface Dict {
3
+ [key: string]: any;
4
+ }
5
+ declare function stringifyState(state: Dict, omit?: string[]): string;
6
+ declare function highlightState(state: Dict, omit?: string[]): any;
7
+ //#endregion
8
+ export { highlightState, stringifyState };
@@ -0,0 +1,46 @@
1
+ import formatHighlight from "json-format-highlight";
2
+
3
+ //#region src/shared/stringify-state/index.ts
4
+ const pick = (obj, keys) => Object.fromEntries(keys.filter((key) => key in obj).map((key) => [key, obj[key]]));
5
+ const hasProp = (v, prop) => Object.prototype.hasOwnProperty.call(v, prop);
6
+ const isTimeObject = (v) => hasProp(v, "hour") && hasProp(v, "minute") && hasProp(v, "second");
7
+ const isMachine = (v) => [
8
+ "state",
9
+ "context",
10
+ "scope"
11
+ ].every((prop) => hasProp(v, prop));
12
+ function stringifyState(state, omit) {
13
+ return JSON.stringify(state, (key, value) => {
14
+ try {
15
+ if (hasProp(value, "target") && hasProp(value, "timeStamp")) return pick(value, [
16
+ "type",
17
+ "target",
18
+ "currentTarget",
19
+ "relatedTarget"
20
+ ]);
21
+ if (omit?.includes(key)) return;
22
+ if (hasProp(value, "calendar") || isTimeObject(value)) return value.toString();
23
+ if (typeof value?.json === "function") return value.json();
24
+ if (typeof value?.toJSON === "function") return value.toJSON();
25
+ if (Number.isNaN(value)) return "NaN";
26
+ if (value instanceof File) return value.name;
27
+ if (value instanceof Set) return Array.from(value);
28
+ if (isMachine(value)) return `Machine: ${value.scope.id}`;
29
+ switch (value?.toString()) {
30
+ case "[object ShadowRoot]": return "#shadow-root";
31
+ case "[object HTMLDocument]": return "#document";
32
+ case "[object Window]": return "#window";
33
+ case "[object AbortController]": return "#abort-controller";
34
+ default: return value !== null && typeof value === "object" && value.nodeType === 1 ? value.tagName : value;
35
+ }
36
+ } catch {
37
+ return value;
38
+ }
39
+ }, 4);
40
+ }
41
+ function highlightState(state, omit) {
42
+ return formatHighlight(stringifyState(state, omit));
43
+ }
44
+
45
+ //#endregion
46
+ export { highlightState, stringifyState };
@@ -0,0 +1,78 @@
1
+ import { c as FlatTreeNode, d as TreeCollectionMethods, f as TreeCollectionOptions, h as TreeSkipOptions, o as DescendantOptions, p as TreeNode, s as FilePathTreeNode, u as IndexPath } from "./types-Bl_6JtPQ.mjs";
2
+
3
+ //#region src/shared/collection/tree-visit.d.ts
4
+
5
+ interface BaseOptions<T> {
6
+ getChildren: (node: T, indexPath: IndexPath) => T[];
7
+ reuseIndexPath?: boolean | undefined;
8
+ }
9
+ type TreeVisitEnterReturnValue = void | "skip" | "stop";
10
+ type TreeVisitLeaveReturnValue = void | "stop";
11
+ interface TreeVisitOptions<T> extends BaseOptions<T> {
12
+ onEnter?(node: T, indexPath: IndexPath): TreeVisitEnterReturnValue;
13
+ onLeave?(node: T, indexPath: IndexPath): TreeVisitLeaveReturnValue;
14
+ }
15
+ //#endregion
16
+ //#region src/shared/collection/tree-collection.d.ts
17
+ declare class TreeCollection<T = TreeNode> {
18
+ private options;
19
+ rootNode: T;
20
+ constructor(options: TreeCollectionOptions<T>);
21
+ isEqual: (other: TreeCollection<T>) => boolean;
22
+ getNodeChildren: (node: T) => T[];
23
+ private resolveIndexPath;
24
+ private resolveNode;
25
+ getNodeChildrenCount: (node: T) => number | undefined;
26
+ getNodeValue: (node: T) => string;
27
+ getNodeDisabled: (node: T) => boolean;
28
+ stringify: (value: string) => string | null;
29
+ stringifyNode: (node: T) => string;
30
+ getFirstNode: (rootNode?: T) => T | undefined;
31
+ getLastNode: (rootNode?: T, opts?: TreeSkipOptions<T>) => T | undefined;
32
+ at: (indexPath: IndexPath) => T | undefined;
33
+ findNode: (value: string, rootNode?: T) => T | undefined;
34
+ findNodes: (values: string[], rootNode?: T) => T[];
35
+ sort: (values: string[]) => string[];
36
+ getIndexPath: (value: string) => IndexPath | undefined;
37
+ getValue: (indexPath: IndexPath) => string | undefined;
38
+ getValuePath: (indexPath: IndexPath | undefined) => string[];
39
+ getDepth: (value: string) => number;
40
+ isSameNode: (node: T, other: T) => boolean;
41
+ isRootNode: (node: T) => boolean;
42
+ contains: (parentIndexPath: IndexPath, valueIndexPath: IndexPath) => boolean;
43
+ getNextNode: (value: string, opts?: TreeSkipOptions<T>) => T | undefined;
44
+ getPreviousNode: (value: string, opts?: TreeSkipOptions<T>) => T | undefined;
45
+ getParentNodes: (valueOrIndexPath: string | IndexPath) => T[];
46
+ getDescendantNodes: (valueOrIndexPath: string | IndexPath, options?: DescendantOptions) => T[];
47
+ getDescendantValues: (valueOrIndexPath: string | IndexPath, options?: DescendantOptions) => string[];
48
+ private getParentIndexPath;
49
+ getParentNode: (valueOrIndexPath: string | IndexPath) => T | undefined;
50
+ visit: (opts: Omit<TreeVisitOptions<T>, "getChildren"> & TreeSkipOptions<T>) => void;
51
+ getPreviousSibling: (indexPath: IndexPath) => T | undefined;
52
+ getNextSibling: (indexPath: IndexPath) => T | undefined;
53
+ getSiblingNodes: (indexPath: IndexPath) => T[];
54
+ getValues: (rootNode?: T) => string[];
55
+ private isValidDepth;
56
+ isBranchNode: (node: T) => boolean;
57
+ getBranchValues: (rootNode?: T, opts?: TreeSkipOptions<T> & {
58
+ depth?: number | ((nodeDepth: number) => boolean) | undefined;
59
+ }) => string[];
60
+ flatten: (rootNode?: T) => Array<FlatTreeNode<T>>;
61
+ private _create;
62
+ private _insert;
63
+ copy: (rootNode: T) => TreeCollection<T>;
64
+ private _replace;
65
+ private _move;
66
+ private _remove;
67
+ replace: (indexPath: IndexPath, node: T) => TreeCollection<T>;
68
+ remove: (indexPaths: IndexPath[]) => TreeCollection<T>;
69
+ insertBefore: (indexPath: IndexPath, nodes: T[]) => TreeCollection<T> | undefined;
70
+ insertAfter: (indexPath: IndexPath, nodes: T[]) => TreeCollection<T> | undefined;
71
+ move: (fromIndexPaths: IndexPath[], toIndexPath: IndexPath) => TreeCollection<T>;
72
+ filter: (predicate: (node: T, indexPath: IndexPath) => boolean) => TreeCollection<T>;
73
+ toJSON: () => string[];
74
+ }
75
+ declare function flattenedToTree<T>(nodes: Array<FlatTreeNode<T>>, options?: TreeCollectionMethods<T>): TreeCollection<T>;
76
+ declare function filePathToTree(paths: string[]): TreeCollection<FilePathTreeNode>;
77
+ //#endregion
78
+ export { filePathToTree as n, flattenedToTree as r, TreeCollection as t };
@@ -0,0 +1,78 @@
1
+ import { c as FlatTreeNode, d as TreeCollectionMethods, f as TreeCollectionOptions, h as TreeSkipOptions, o as DescendantOptions, p as TreeNode, s as FilePathTreeNode, u as IndexPath } from "./types-BivBkYg9.cjs";
2
+
3
+ //#region src/shared/collection/tree-visit.d.ts
4
+
5
+ interface BaseOptions<T> {
6
+ getChildren: (node: T, indexPath: IndexPath) => T[];
7
+ reuseIndexPath?: boolean | undefined;
8
+ }
9
+ type TreeVisitEnterReturnValue = void | "skip" | "stop";
10
+ type TreeVisitLeaveReturnValue = void | "stop";
11
+ interface TreeVisitOptions<T> extends BaseOptions<T> {
12
+ onEnter?(node: T, indexPath: IndexPath): TreeVisitEnterReturnValue;
13
+ onLeave?(node: T, indexPath: IndexPath): TreeVisitLeaveReturnValue;
14
+ }
15
+ //#endregion
16
+ //#region src/shared/collection/tree-collection.d.ts
17
+ declare class TreeCollection<T = TreeNode> {
18
+ private options;
19
+ rootNode: T;
20
+ constructor(options: TreeCollectionOptions<T>);
21
+ isEqual: (other: TreeCollection<T>) => boolean;
22
+ getNodeChildren: (node: T) => T[];
23
+ private resolveIndexPath;
24
+ private resolveNode;
25
+ getNodeChildrenCount: (node: T) => number | undefined;
26
+ getNodeValue: (node: T) => string;
27
+ getNodeDisabled: (node: T) => boolean;
28
+ stringify: (value: string) => string | null;
29
+ stringifyNode: (node: T) => string;
30
+ getFirstNode: (rootNode?: T) => T | undefined;
31
+ getLastNode: (rootNode?: T, opts?: TreeSkipOptions<T>) => T | undefined;
32
+ at: (indexPath: IndexPath) => T | undefined;
33
+ findNode: (value: string, rootNode?: T) => T | undefined;
34
+ findNodes: (values: string[], rootNode?: T) => T[];
35
+ sort: (values: string[]) => string[];
36
+ getIndexPath: (value: string) => IndexPath | undefined;
37
+ getValue: (indexPath: IndexPath) => string | undefined;
38
+ getValuePath: (indexPath: IndexPath | undefined) => string[];
39
+ getDepth: (value: string) => number;
40
+ isSameNode: (node: T, other: T) => boolean;
41
+ isRootNode: (node: T) => boolean;
42
+ contains: (parentIndexPath: IndexPath, valueIndexPath: IndexPath) => boolean;
43
+ getNextNode: (value: string, opts?: TreeSkipOptions<T>) => T | undefined;
44
+ getPreviousNode: (value: string, opts?: TreeSkipOptions<T>) => T | undefined;
45
+ getParentNodes: (valueOrIndexPath: string | IndexPath) => T[];
46
+ getDescendantNodes: (valueOrIndexPath: string | IndexPath, options?: DescendantOptions) => T[];
47
+ getDescendantValues: (valueOrIndexPath: string | IndexPath, options?: DescendantOptions) => string[];
48
+ private getParentIndexPath;
49
+ getParentNode: (valueOrIndexPath: string | IndexPath) => T | undefined;
50
+ visit: (opts: Omit<TreeVisitOptions<T>, "getChildren"> & TreeSkipOptions<T>) => void;
51
+ getPreviousSibling: (indexPath: IndexPath) => T | undefined;
52
+ getNextSibling: (indexPath: IndexPath) => T | undefined;
53
+ getSiblingNodes: (indexPath: IndexPath) => T[];
54
+ getValues: (rootNode?: T) => string[];
55
+ private isValidDepth;
56
+ isBranchNode: (node: T) => boolean;
57
+ getBranchValues: (rootNode?: T, opts?: TreeSkipOptions<T> & {
58
+ depth?: number | ((nodeDepth: number) => boolean) | undefined;
59
+ }) => string[];
60
+ flatten: (rootNode?: T) => Array<FlatTreeNode<T>>;
61
+ private _create;
62
+ private _insert;
63
+ copy: (rootNode: T) => TreeCollection<T>;
64
+ private _replace;
65
+ private _move;
66
+ private _remove;
67
+ replace: (indexPath: IndexPath, node: T) => TreeCollection<T>;
68
+ remove: (indexPaths: IndexPath[]) => TreeCollection<T>;
69
+ insertBefore: (indexPath: IndexPath, nodes: T[]) => TreeCollection<T> | undefined;
70
+ insertAfter: (indexPath: IndexPath, nodes: T[]) => TreeCollection<T> | undefined;
71
+ move: (fromIndexPaths: IndexPath[], toIndexPath: IndexPath) => TreeCollection<T>;
72
+ filter: (predicate: (node: T, indexPath: IndexPath) => boolean) => TreeCollection<T>;
73
+ toJSON: () => string[];
74
+ }
75
+ declare function flattenedToTree<T>(nodes: Array<FlatTreeNode<T>>, options?: TreeCollectionMethods<T>): TreeCollection<T>;
76
+ declare function filePathToTree(paths: string[]): TreeCollection<FilePathTreeNode>;
77
+ //#endregion
78
+ export { filePathToTree as n, flattenedToTree as r, TreeCollection as t };
@@ -0,0 +1,45 @@
1
+ //#region src/shared/dom-query/query.d.ts
2
+ type Root = Document | Element | null | undefined;
3
+ declare function queryAll<T extends Element = HTMLElement>(root: Root, selector: string): T[];
4
+ declare function query<T extends Element = HTMLElement>(root: Root, selector: string): T | null;
5
+ type ItemToId<T> = (v: T) => string;
6
+ interface Item {
7
+ id: string;
8
+ }
9
+ declare const defaultItemToId: <T extends Item>(v: T) => string;
10
+ declare function itemById<T extends Item>(v: T[], id: string, itemToId?: ItemToId<T>): T | undefined;
11
+ declare function indexOfId<T extends Item>(v: T[], id: string, itemToId?: ItemToId<T>): number;
12
+ declare function nextById<T extends Item>(v: T[], id: string, loop?: boolean): T;
13
+ declare function prevById<T extends Item>(v: T[], id: string, loop?: boolean): T | null;
14
+ //#endregion
15
+ //#region src/shared/dom-query/searchable.d.ts
16
+ interface SearchableItem {
17
+ id: string;
18
+ textContent: string | null;
19
+ dataset?: any | undefined;
20
+ }
21
+ declare function getByText<T extends SearchableItem>(v: T[], text: string, currentId?: string | null, itemToId?: ItemToId<T>): T | undefined;
22
+ //#endregion
23
+ //#region src/shared/dom-query/typeahead.d.ts
24
+ interface TypeaheadState {
25
+ keysSoFar: string;
26
+ timer: number;
27
+ }
28
+ interface TypeaheadOptions<T> {
29
+ state: TypeaheadState;
30
+ activeId: string | null;
31
+ key: string;
32
+ timeout?: number | undefined;
33
+ itemToId?: ItemToId<T> | undefined;
34
+ }
35
+ declare function getByTypeaheadImpl<T extends SearchableItem>(baseItems: T[], options: TypeaheadOptions<T>): T | undefined;
36
+ declare const getByTypeahead: typeof getByTypeaheadImpl & {
37
+ defaultOptions: {
38
+ keysSoFar: string;
39
+ timer: number;
40
+ };
41
+ isValidEvent: typeof isValidTypeaheadEvent;
42
+ };
43
+ declare function isValidTypeaheadEvent(event: Pick<KeyboardEvent, "key" | "ctrlKey" | "metaKey">): boolean;
44
+ //#endregion
45
+ export { getByText as a, indexOfId as c, prevById as d, query as f, SearchableItem as i, itemById as l, TypeaheadState as n, ItemToId as o, queryAll as p, getByTypeahead as r, defaultItemToId as s, TypeaheadOptions as t, nextById as u };
@@ -0,0 +1,45 @@
1
+ //#region src/shared/dom-query/query.d.ts
2
+ type Root = Document | Element | null | undefined;
3
+ declare function queryAll<T extends Element = HTMLElement>(root: Root, selector: string): T[];
4
+ declare function query<T extends Element = HTMLElement>(root: Root, selector: string): T | null;
5
+ type ItemToId<T> = (v: T) => string;
6
+ interface Item {
7
+ id: string;
8
+ }
9
+ declare const defaultItemToId: <T extends Item>(v: T) => string;
10
+ declare function itemById<T extends Item>(v: T[], id: string, itemToId?: ItemToId<T>): T | undefined;
11
+ declare function indexOfId<T extends Item>(v: T[], id: string, itemToId?: ItemToId<T>): number;
12
+ declare function nextById<T extends Item>(v: T[], id: string, loop?: boolean): T;
13
+ declare function prevById<T extends Item>(v: T[], id: string, loop?: boolean): T | null;
14
+ //#endregion
15
+ //#region src/shared/dom-query/searchable.d.ts
16
+ interface SearchableItem {
17
+ id: string;
18
+ textContent: string | null;
19
+ dataset?: any | undefined;
20
+ }
21
+ declare function getByText<T extends SearchableItem>(v: T[], text: string, currentId?: string | null, itemToId?: ItemToId<T>): T | undefined;
22
+ //#endregion
23
+ //#region src/shared/dom-query/typeahead.d.ts
24
+ interface TypeaheadState {
25
+ keysSoFar: string;
26
+ timer: number;
27
+ }
28
+ interface TypeaheadOptions<T> {
29
+ state: TypeaheadState;
30
+ activeId: string | null;
31
+ key: string;
32
+ timeout?: number | undefined;
33
+ itemToId?: ItemToId<T> | undefined;
34
+ }
35
+ declare function getByTypeaheadImpl<T extends SearchableItem>(baseItems: T[], options: TypeaheadOptions<T>): T | undefined;
36
+ declare const getByTypeahead: typeof getByTypeaheadImpl & {
37
+ defaultOptions: {
38
+ keysSoFar: string;
39
+ timer: number;
40
+ };
41
+ isValidEvent: typeof isValidTypeaheadEvent;
42
+ };
43
+ declare function isValidTypeaheadEvent(event: Pick<KeyboardEvent, "key" | "ctrlKey" | "metaKey">): boolean;
44
+ //#endregion
45
+ export { getByText as a, indexOfId as c, prevById as d, query as f, SearchableItem as i, itemById as l, TypeaheadState as n, ItemToId as o, queryAll as p, getByTypeahead as r, defaultItemToId as s, TypeaheadOptions as t, nextById as u };
@@ -0,0 +1,57 @@
1
+ //#region src/shared/collection/types.d.ts
2
+ interface CollectionSearchState {
3
+ keysSoFar: string;
4
+ timer: number;
5
+ }
6
+ interface CollectionSearchOptions {
7
+ state: CollectionSearchState;
8
+ currentValue: string | null;
9
+ timeout?: number | undefined;
10
+ }
11
+ type CollectionItem = any;
12
+ interface CollectionMethods<T extends CollectionItem = CollectionItem> {
13
+ itemToValue: (item: T) => string;
14
+ itemToString: (item: T) => string;
15
+ isItemDisabled: (item: T) => boolean;
16
+ }
17
+ interface CollectionOptions<T extends CollectionItem = CollectionItem> extends Partial<CollectionMethods<T>> {
18
+ items: Iterable<T> | Readonly<Iterable<T>>;
19
+ groupBy?: ((item: T, index: number) => string) | undefined;
20
+ groupSort?: ((a: string, b: string) => number) | string[] | "asc" | "desc" | undefined;
21
+ }
22
+ type IndexPath = number[];
23
+ type ValuePath = string[];
24
+ interface TreeCollectionMethods<T> {
25
+ isNodeDisabled: (node: T) => boolean;
26
+ nodeToValue: (node: T) => string;
27
+ nodeToString: (node: T) => string;
28
+ nodeToChildren: (node: T) => any[];
29
+ nodeToChildrenCount: (node: T) => number | undefined;
30
+ }
31
+ interface TreeCollectionOptions<T> extends Partial<TreeCollectionMethods<T>> {
32
+ rootNode: T;
33
+ }
34
+ type TreeNode = any;
35
+ type FilePathTreeNode<T = TreeNode> = T & {
36
+ children?: FilePathTreeNode<T>[] | undefined;
37
+ };
38
+ interface FlatTreeNodeMeta {
39
+ _children: number[] | undefined;
40
+ _parent: number | undefined;
41
+ _index: number;
42
+ }
43
+ type FlatTreeNode<T = TreeNode> = T & FlatTreeNodeMeta;
44
+ interface TreeSkipFnArgs<T> {
45
+ value: string;
46
+ node: T;
47
+ indexPath: number[];
48
+ }
49
+ type TreeSkipFn<T> = (args: TreeSkipFnArgs<T>) => boolean | void;
50
+ interface TreeSkipOptions<T> {
51
+ skip?: TreeSkipFn<T> | undefined;
52
+ }
53
+ interface DescendantOptions {
54
+ withBranch?: boolean;
55
+ }
56
+ //#endregion
57
+ export { CollectionSearchState as a, FlatTreeNode as c, TreeCollectionMethods as d, TreeCollectionOptions as f, ValuePath as g, TreeSkipOptions as h, CollectionSearchOptions as i, FlatTreeNodeMeta as l, TreeSkipFn as m, CollectionMethods as n, DescendantOptions as o, TreeNode as p, CollectionOptions as r, FilePathTreeNode as s, CollectionItem as t, IndexPath as u };
@@ -0,0 +1,57 @@
1
+ //#region src/shared/collection/types.d.ts
2
+ interface CollectionSearchState {
3
+ keysSoFar: string;
4
+ timer: number;
5
+ }
6
+ interface CollectionSearchOptions {
7
+ state: CollectionSearchState;
8
+ currentValue: string | null;
9
+ timeout?: number | undefined;
10
+ }
11
+ type CollectionItem = any;
12
+ interface CollectionMethods<T extends CollectionItem = CollectionItem> {
13
+ itemToValue: (item: T) => string;
14
+ itemToString: (item: T) => string;
15
+ isItemDisabled: (item: T) => boolean;
16
+ }
17
+ interface CollectionOptions<T extends CollectionItem = CollectionItem> extends Partial<CollectionMethods<T>> {
18
+ items: Iterable<T> | Readonly<Iterable<T>>;
19
+ groupBy?: ((item: T, index: number) => string) | undefined;
20
+ groupSort?: ((a: string, b: string) => number) | string[] | "asc" | "desc" | undefined;
21
+ }
22
+ type IndexPath = number[];
23
+ type ValuePath = string[];
24
+ interface TreeCollectionMethods<T> {
25
+ isNodeDisabled: (node: T) => boolean;
26
+ nodeToValue: (node: T) => string;
27
+ nodeToString: (node: T) => string;
28
+ nodeToChildren: (node: T) => any[];
29
+ nodeToChildrenCount: (node: T) => number | undefined;
30
+ }
31
+ interface TreeCollectionOptions<T> extends Partial<TreeCollectionMethods<T>> {
32
+ rootNode: T;
33
+ }
34
+ type TreeNode = any;
35
+ type FilePathTreeNode<T = TreeNode> = T & {
36
+ children?: FilePathTreeNode<T>[] | undefined;
37
+ };
38
+ interface FlatTreeNodeMeta {
39
+ _children: number[] | undefined;
40
+ _parent: number | undefined;
41
+ _index: number;
42
+ }
43
+ type FlatTreeNode<T = TreeNode> = T & FlatTreeNodeMeta;
44
+ interface TreeSkipFnArgs<T> {
45
+ value: string;
46
+ node: T;
47
+ indexPath: number[];
48
+ }
49
+ type TreeSkipFn<T> = (args: TreeSkipFnArgs<T>) => boolean | void;
50
+ interface TreeSkipOptions<T> {
51
+ skip?: TreeSkipFn<T> | undefined;
52
+ }
53
+ interface DescendantOptions {
54
+ withBranch?: boolean;
55
+ }
56
+ //#endregion
57
+ export { CollectionSearchState as a, FlatTreeNode as c, TreeCollectionMethods as d, TreeCollectionOptions as f, ValuePath as g, TreeSkipOptions as h, CollectionSearchOptions as i, FlatTreeNodeMeta as l, TreeSkipFn as m, CollectionMethods as n, DescendantOptions as o, TreeNode as p, CollectionOptions as r, FilePathTreeNode as s, CollectionItem as t, IndexPath as u };
@@ -0,0 +1,54 @@
1
+ //#region src/shared/rect-utils/types.d.ts
2
+ interface Point {
3
+ x: number;
4
+ y: number;
5
+ }
6
+ interface Size {
7
+ width: number;
8
+ height: number;
9
+ }
10
+ interface Bounds {
11
+ minX: number;
12
+ midX: number;
13
+ maxX: number;
14
+ minY: number;
15
+ midY: number;
16
+ maxY: number;
17
+ }
18
+ interface CenterPoint {
19
+ center: Point;
20
+ }
21
+ interface RectInit extends Point, Size {}
22
+ interface Rect extends Point, Size, Bounds, CenterPoint {}
23
+ type RectSide = "top" | "right" | "bottom" | "left";
24
+ type RectPoint = "top-left" | "top-center" | "top-right" | "right-center" | "left-center" | "bottom-left" | "bottom-right" | "bottom-center" | "center";
25
+ type RectEdge = [Point, Point];
26
+ type RectPoints = [Point, Point, Point, Point];
27
+ type RectEdges = Record<RectSide, RectEdge> & {
28
+ value: RectEdge[];
29
+ };
30
+ type RectCorner = "topLeft" | "topRight" | "bottomLeft" | "bottomRight";
31
+ type RectCorners = Record<RectCorner, Point> & {
32
+ value: RectPoints;
33
+ };
34
+ type RectCenter = "topCenter" | "rightCenter" | "leftCenter" | "bottomCenter";
35
+ type RectCenters = Record<RectCenter, Point> & {
36
+ value: RectPoints;
37
+ };
38
+ type RectInset = Partial<Record<RectSide, number>>;
39
+ interface SymmetricRectInset {
40
+ dx?: number | undefined;
41
+ dy?: number | undefined;
42
+ }
43
+ interface ScalingOptions {
44
+ scalingOriginMode: "center" | "extent";
45
+ lockAspectRatio: boolean;
46
+ }
47
+ interface AlignOptions {
48
+ h: HAlign;
49
+ v: VAlign;
50
+ }
51
+ type HAlign = "left-inside" | "left-outside" | "center" | "right-inside" | "right-outside";
52
+ type VAlign = "top-inside" | "top-outside" | "center" | "bottom-inside" | "bottom-outside";
53
+ //#endregion
54
+ export { RectSide as _, Point as a, SymmetricRectInset as b, RectCenters as c, RectEdge as d, RectEdges as f, RectPoints as g, RectPoint as h, HAlign as i, RectCorner as l, RectInset as m, Bounds as n, Rect as o, RectInit as p, CenterPoint as r, RectCenter as s, AlignOptions as t, RectCorners as u, ScalingOptions as v, VAlign as x, Size as y };
@@ -0,0 +1,54 @@
1
+ //#region src/shared/rect-utils/types.d.ts
2
+ interface Point {
3
+ x: number;
4
+ y: number;
5
+ }
6
+ interface Size {
7
+ width: number;
8
+ height: number;
9
+ }
10
+ interface Bounds {
11
+ minX: number;
12
+ midX: number;
13
+ maxX: number;
14
+ minY: number;
15
+ midY: number;
16
+ maxY: number;
17
+ }
18
+ interface CenterPoint {
19
+ center: Point;
20
+ }
21
+ interface RectInit extends Point, Size {}
22
+ interface Rect extends Point, Size, Bounds, CenterPoint {}
23
+ type RectSide = "top" | "right" | "bottom" | "left";
24
+ type RectPoint = "top-left" | "top-center" | "top-right" | "right-center" | "left-center" | "bottom-left" | "bottom-right" | "bottom-center" | "center";
25
+ type RectEdge = [Point, Point];
26
+ type RectPoints = [Point, Point, Point, Point];
27
+ type RectEdges = Record<RectSide, RectEdge> & {
28
+ value: RectEdge[];
29
+ };
30
+ type RectCorner = "topLeft" | "topRight" | "bottomLeft" | "bottomRight";
31
+ type RectCorners = Record<RectCorner, Point> & {
32
+ value: RectPoints;
33
+ };
34
+ type RectCenter = "topCenter" | "rightCenter" | "leftCenter" | "bottomCenter";
35
+ type RectCenters = Record<RectCenter, Point> & {
36
+ value: RectPoints;
37
+ };
38
+ type RectInset = Partial<Record<RectSide, number>>;
39
+ interface SymmetricRectInset {
40
+ dx?: number | undefined;
41
+ dy?: number | undefined;
42
+ }
43
+ interface ScalingOptions {
44
+ scalingOriginMode: "center" | "extent";
45
+ lockAspectRatio: boolean;
46
+ }
47
+ interface AlignOptions {
48
+ h: HAlign;
49
+ v: VAlign;
50
+ }
51
+ type HAlign = "left-inside" | "left-outside" | "center" | "right-inside" | "right-outside";
52
+ type VAlign = "top-inside" | "top-outside" | "center" | "bottom-inside" | "bottom-outside";
53
+ //#endregion
54
+ export { RectSide as _, Point as a, SymmetricRectInset as b, RectCenters as c, RectEdge as d, RectEdges as f, RectPoints as g, RectPoint as h, HAlign as i, RectCorner as l, RectInset as m, Bounds as n, Rect as o, RectInit as p, CenterPoint as r, RectCenter as s, AlignOptions as t, RectCorners as u, ScalingOptions as v, VAlign as x, Size as y };