@vuu-ui/vuu-utils 2.1.19-beta.1 → 2.1.19-beta.3

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 (358) hide show
  1. package/cjs/node_modules/@dnd-kit/abstract/index.js +1488 -0
  2. package/cjs/node_modules/@dnd-kit/abstract/index.js.map +1 -0
  3. package/cjs/node_modules/@dnd-kit/abstract/modifiers.js +85 -0
  4. package/cjs/node_modules/@dnd-kit/abstract/modifiers.js.map +1 -0
  5. package/cjs/node_modules/@dnd-kit/collision/dist/index.js +91 -0
  6. package/cjs/node_modules/@dnd-kit/collision/dist/index.js.map +1 -0
  7. package/cjs/node_modules/@dnd-kit/dom/index.js +1991 -0
  8. package/cjs/node_modules/@dnd-kit/dom/index.js.map +1 -0
  9. package/cjs/node_modules/@dnd-kit/dom/sortable.js +828 -0
  10. package/cjs/node_modules/@dnd-kit/dom/sortable.js.map +1 -0
  11. package/cjs/node_modules/@dnd-kit/dom/utilities.js +1389 -0
  12. package/cjs/node_modules/@dnd-kit/dom/utilities.js.map +1 -0
  13. package/cjs/node_modules/@dnd-kit/geometry/dist/index.js +310 -0
  14. package/cjs/node_modules/@dnd-kit/geometry/dist/index.js.map +1 -0
  15. package/cjs/node_modules/@dnd-kit/react/hooks.js +134 -0
  16. package/cjs/node_modules/@dnd-kit/react/hooks.js.map +1 -0
  17. package/cjs/node_modules/@dnd-kit/react/index.js +398 -0
  18. package/cjs/node_modules/@dnd-kit/react/index.js.map +1 -0
  19. package/cjs/node_modules/@dnd-kit/react/sortable.js +177 -0
  20. package/cjs/node_modules/@dnd-kit/react/sortable.js.map +1 -0
  21. package/cjs/node_modules/@dnd-kit/react/utilities.js +19 -0
  22. package/cjs/node_modules/@dnd-kit/react/utilities.js.map +1 -0
  23. package/cjs/node_modules/@dnd-kit/state/dist/index.js +280 -0
  24. package/cjs/node_modules/@dnd-kit/state/dist/index.js.map +1 -0
  25. package/cjs/node_modules/@preact/signals-core/dist/signals-core.js +11 -0
  26. package/cjs/node_modules/@preact/signals-core/dist/signals-core.js.map +1 -0
  27. package/cjs/packages/vuu-utils/src/Clock.js +62 -0
  28. package/cjs/packages/vuu-utils/src/Clock.js.map +1 -0
  29. package/cjs/packages/vuu-utils/src/PageVisibilityObserver.js +80 -0
  30. package/cjs/packages/vuu-utils/src/PageVisibilityObserver.js.map +1 -0
  31. package/cjs/packages/vuu-utils/src/ScaledDecimal.js +43 -0
  32. package/cjs/packages/vuu-utils/src/ScaledDecimal.js.map +1 -0
  33. package/cjs/packages/vuu-utils/src/ShellContext.js +13 -0
  34. package/cjs/packages/vuu-utils/src/ShellContext.js.map +1 -0
  35. package/cjs/packages/vuu-utils/src/ThemeProvider.js +85 -0
  36. package/cjs/packages/vuu-utils/src/ThemeProvider.js.map +1 -0
  37. package/cjs/packages/vuu-utils/src/array-utils.js +87 -0
  38. package/cjs/packages/vuu-utils/src/array-utils.js.map +1 -0
  39. package/cjs/packages/vuu-utils/src/box-utils.js +53 -0
  40. package/cjs/packages/vuu-utils/src/box-utils.js.map +1 -0
  41. package/cjs/packages/vuu-utils/src/column-utils.js +1066 -0
  42. package/cjs/packages/vuu-utils/src/column-utils.js.map +1 -0
  43. package/cjs/packages/vuu-utils/src/common-types.js +15 -0
  44. package/cjs/packages/vuu-utils/src/common-types.js.map +1 -0
  45. package/cjs/packages/vuu-utils/src/component-registry.js +144 -0
  46. package/cjs/packages/vuu-utils/src/component-registry.js.map +1 -0
  47. package/cjs/packages/vuu-utils/src/context-definitions/DataContext.js +21 -0
  48. package/cjs/packages/vuu-utils/src/context-definitions/DataContext.js.map +1 -0
  49. package/cjs/packages/vuu-utils/src/context-definitions/DataProvider.js +19 -0
  50. package/cjs/packages/vuu-utils/src/context-definitions/DataProvider.js.map +1 -0
  51. package/cjs/packages/vuu-utils/src/context-definitions/DataSourceProvider.js +33 -0
  52. package/cjs/packages/vuu-utils/src/context-definitions/DataSourceProvider.js.map +1 -0
  53. package/cjs/packages/vuu-utils/src/context-definitions/WorkspaceContext.js +20 -0
  54. package/cjs/packages/vuu-utils/src/context-definitions/WorkspaceContext.js.map +1 -0
  55. package/cjs/packages/vuu-utils/src/cookie-utils.js +22 -0
  56. package/cjs/packages/vuu-utils/src/cookie-utils.js.map +1 -0
  57. package/cjs/packages/vuu-utils/src/css-utils.js +9 -0
  58. package/cjs/packages/vuu-utils/src/css-utils.js.map +1 -0
  59. package/cjs/packages/vuu-utils/src/data-editing/DataEditingProvider.js +28 -0
  60. package/cjs/packages/vuu-utils/src/data-editing/DataEditingProvider.js.map +1 -0
  61. package/cjs/packages/vuu-utils/src/data-editing/EditButtons.js +64 -0
  62. package/cjs/packages/vuu-utils/src/data-editing/EditButtons.js.map +1 -0
  63. package/cjs/packages/vuu-utils/src/data-editing/EditSession.js +312 -0
  64. package/cjs/packages/vuu-utils/src/data-editing/EditSession.js.map +1 -0
  65. package/cjs/packages/vuu-utils/src/data-editing/edit-utils.js +51 -0
  66. package/cjs/packages/vuu-utils/src/data-editing/edit-utils.js.map +1 -0
  67. package/cjs/packages/vuu-utils/src/data-editing/useEditableTable.js +107 -0
  68. package/cjs/packages/vuu-utils/src/data-editing/useEditableTable.js.map +1 -0
  69. package/cjs/packages/vuu-utils/src/data-utils.js +110 -0
  70. package/cjs/packages/vuu-utils/src/data-utils.js.map +1 -0
  71. package/cjs/packages/vuu-utils/src/datasource/BaseDataSource.js +317 -0
  72. package/cjs/packages/vuu-utils/src/datasource/BaseDataSource.js.map +1 -0
  73. package/cjs/packages/vuu-utils/src/datasource/datasource-action-utils.js +14 -0
  74. package/cjs/packages/vuu-utils/src/datasource/datasource-action-utils.js.map +1 -0
  75. package/cjs/packages/vuu-utils/src/datasource/datasource-filter-utils.js +40 -0
  76. package/cjs/packages/vuu-utils/src/datasource/datasource-filter-utils.js.map +1 -0
  77. package/cjs/packages/vuu-utils/src/datasource/datasource-utils.js +218 -0
  78. package/cjs/packages/vuu-utils/src/datasource/datasource-utils.js.map +1 -0
  79. package/cjs/packages/vuu-utils/src/date/date-utils.js +131 -0
  80. package/cjs/packages/vuu-utils/src/date/date-utils.js.map +1 -0
  81. package/cjs/packages/vuu-utils/src/date/dateTimePattern.js +26 -0
  82. package/cjs/packages/vuu-utils/src/date/dateTimePattern.js.map +1 -0
  83. package/cjs/packages/vuu-utils/src/date/formatter.js +82 -0
  84. package/cjs/packages/vuu-utils/src/date/formatter.js.map +1 -0
  85. package/cjs/packages/vuu-utils/src/date/types.js +32 -0
  86. package/cjs/packages/vuu-utils/src/date/types.js.map +1 -0
  87. package/cjs/packages/vuu-utils/src/debug-utils.js +34 -0
  88. package/cjs/packages/vuu-utils/src/debug-utils.js.map +1 -0
  89. package/cjs/packages/vuu-utils/src/event-emitter.js +113 -0
  90. package/cjs/packages/vuu-utils/src/event-emitter.js.map +1 -0
  91. package/cjs/packages/vuu-utils/src/feature-utils.js +139 -0
  92. package/cjs/packages/vuu-utils/src/feature-utils.js.map +1 -0
  93. package/cjs/packages/vuu-utils/src/filters/filter-utils.js +182 -0
  94. package/cjs/packages/vuu-utils/src/filters/filter-utils.js.map +1 -0
  95. package/cjs/packages/vuu-utils/src/filters/filterAsQuery.js +69 -0
  96. package/cjs/packages/vuu-utils/src/filters/filterAsQuery.js.map +1 -0
  97. package/cjs/packages/vuu-utils/src/form-utils.js +123 -0
  98. package/cjs/packages/vuu-utils/src/form-utils.js.map +1 -0
  99. package/cjs/packages/vuu-utils/src/formatting-utils.js +114 -0
  100. package/cjs/packages/vuu-utils/src/formatting-utils.js.map +1 -0
  101. package/cjs/packages/vuu-utils/src/getUniqueId.js +6 -0
  102. package/cjs/packages/vuu-utils/src/getUniqueId.js.map +1 -0
  103. package/cjs/packages/vuu-utils/src/group-utils.js +27 -0
  104. package/cjs/packages/vuu-utils/src/group-utils.js.map +1 -0
  105. package/cjs/packages/vuu-utils/src/html-utils.js +162 -0
  106. package/cjs/packages/vuu-utils/src/html-utils.js.map +1 -0
  107. package/cjs/packages/vuu-utils/src/index.js +481 -0
  108. package/cjs/packages/vuu-utils/src/index.js.map +1 -0
  109. package/cjs/packages/vuu-utils/src/input-utils.js +10 -0
  110. package/cjs/packages/vuu-utils/src/input-utils.js.map +1 -0
  111. package/cjs/packages/vuu-utils/src/invariant.js +13 -0
  112. package/cjs/packages/vuu-utils/src/invariant.js.map +1 -0
  113. package/cjs/packages/vuu-utils/src/itemToString.js +23 -0
  114. package/cjs/packages/vuu-utils/src/itemToString.js.map +1 -0
  115. package/cjs/packages/vuu-utils/src/json-utils.js +105 -0
  116. package/cjs/packages/vuu-utils/src/json-utils.js.map +1 -0
  117. package/cjs/packages/vuu-utils/src/keyboard-utils.js +30 -0
  118. package/cjs/packages/vuu-utils/src/keyboard-utils.js.map +1 -0
  119. package/cjs/packages/vuu-utils/src/keyset.js +72 -0
  120. package/cjs/packages/vuu-utils/src/keyset.js.map +1 -0
  121. package/cjs/packages/vuu-utils/src/list-utils.js +11 -0
  122. package/cjs/packages/vuu-utils/src/list-utils.js.map +1 -0
  123. package/cjs/packages/vuu-utils/src/local-storage-utils.js +35 -0
  124. package/cjs/packages/vuu-utils/src/local-storage-utils.js.map +1 -0
  125. package/cjs/packages/vuu-utils/src/logging-utils.js +65 -0
  126. package/cjs/packages/vuu-utils/src/logging-utils.js.map +1 -0
  127. package/cjs/packages/vuu-utils/src/module-utils.js +6 -0
  128. package/cjs/packages/vuu-utils/src/module-utils.js.map +1 -0
  129. package/cjs/packages/vuu-utils/src/nanoid/index.js +22 -0
  130. package/cjs/packages/vuu-utils/src/nanoid/index.js.map +1 -0
  131. package/cjs/packages/vuu-utils/src/perf-utils.js +35 -0
  132. package/cjs/packages/vuu-utils/src/perf-utils.js.map +1 -0
  133. package/cjs/packages/vuu-utils/src/promise-utils.js +42 -0
  134. package/cjs/packages/vuu-utils/src/promise-utils.js.map +1 -0
  135. package/cjs/packages/vuu-utils/src/protocol-message-utils.js +108 -0
  136. package/cjs/packages/vuu-utils/src/protocol-message-utils.js.map +1 -0
  137. package/cjs/packages/vuu-utils/src/range-utils.js +115 -0
  138. package/cjs/packages/vuu-utils/src/range-utils.js.map +1 -0
  139. package/cjs/packages/vuu-utils/src/react-utils.js +72 -0
  140. package/cjs/packages/vuu-utils/src/react-utils.js.map +1 -0
  141. package/cjs/packages/vuu-utils/src/round-decimal.js +131 -0
  142. package/cjs/packages/vuu-utils/src/round-decimal.js.map +1 -0
  143. package/cjs/packages/vuu-utils/src/row-utils.js +59 -0
  144. package/cjs/packages/vuu-utils/src/row-utils.js.map +1 -0
  145. package/cjs/packages/vuu-utils/src/selection-utils.js +34 -0
  146. package/cjs/packages/vuu-utils/src/selection-utils.js.map +1 -0
  147. package/cjs/packages/vuu-utils/src/shell-layout-types.js +13 -0
  148. package/cjs/packages/vuu-utils/src/shell-layout-types.js.map +1 -0
  149. package/cjs/packages/vuu-utils/src/sort-utils.js +78 -0
  150. package/cjs/packages/vuu-utils/src/sort-utils.js.map +1 -0
  151. package/cjs/packages/vuu-utils/src/table-schema-utils.js +13 -0
  152. package/cjs/packages/vuu-utils/src/table-schema-utils.js.map +1 -0
  153. package/cjs/packages/vuu-utils/src/text-utils.js +21 -0
  154. package/cjs/packages/vuu-utils/src/text-utils.js.map +1 -0
  155. package/cjs/packages/vuu-utils/src/theme-utils.js +36 -0
  156. package/cjs/packages/vuu-utils/src/theme-utils.js.map +1 -0
  157. package/cjs/packages/vuu-utils/src/tree-utils.js +114 -0
  158. package/cjs/packages/vuu-utils/src/tree-utils.js.map +1 -0
  159. package/cjs/packages/vuu-utils/src/ts-utils.js +12 -0
  160. package/cjs/packages/vuu-utils/src/ts-utils.js.map +1 -0
  161. package/cjs/packages/vuu-utils/src/typeahead-utils.js +6 -0
  162. package/cjs/packages/vuu-utils/src/typeahead-utils.js.map +1 -0
  163. package/cjs/packages/vuu-utils/src/url-utils.js +21 -0
  164. package/cjs/packages/vuu-utils/src/url-utils.js.map +1 -0
  165. package/cjs/packages/vuu-utils/src/useId.js +9 -0
  166. package/cjs/packages/vuu-utils/src/useId.js.map +1 -0
  167. package/cjs/packages/vuu-utils/src/useLayoutEffectSkipFirst.js +17 -0
  168. package/cjs/packages/vuu-utils/src/useLayoutEffectSkipFirst.js.map +1 -0
  169. package/cjs/packages/vuu-utils/src/useResizeObserver.js +134 -0
  170. package/cjs/packages/vuu-utils/src/useResizeObserver.js.map +1 -0
  171. package/cjs/packages/vuu-utils/src/useStateRef.js +23 -0
  172. package/cjs/packages/vuu-utils/src/useStateRef.js.map +1 -0
  173. package/esm/node_modules/@dnd-kit/abstract/index.js +1472 -0
  174. package/esm/node_modules/@dnd-kit/abstract/index.js.map +1 -0
  175. package/esm/node_modules/@dnd-kit/abstract/modifiers.js +82 -0
  176. package/esm/node_modules/@dnd-kit/abstract/modifiers.js.map +1 -0
  177. package/esm/node_modules/@dnd-kit/collision/dist/index.js +86 -0
  178. package/esm/node_modules/@dnd-kit/collision/dist/index.js.map +1 -0
  179. package/esm/node_modules/@dnd-kit/dom/index.js +1977 -0
  180. package/esm/node_modules/@dnd-kit/dom/index.js.map +1 -0
  181. package/esm/node_modules/@dnd-kit/dom/sortable.js +822 -0
  182. package/esm/node_modules/@dnd-kit/dom/sortable.js.map +1 -0
  183. package/esm/node_modules/@dnd-kit/dom/utilities.js +1344 -0
  184. package/esm/node_modules/@dnd-kit/dom/utilities.js.map +1 -0
  185. package/esm/node_modules/@dnd-kit/geometry/dist/index.js +303 -0
  186. package/esm/node_modules/@dnd-kit/geometry/dist/index.js.map +1 -0
  187. package/esm/node_modules/@dnd-kit/react/hooks.js +126 -0
  188. package/esm/node_modules/@dnd-kit/react/hooks.js.map +1 -0
  189. package/esm/node_modules/@dnd-kit/react/index.js +392 -0
  190. package/esm/node_modules/@dnd-kit/react/index.js.map +1 -0
  191. package/esm/node_modules/@dnd-kit/react/sortable.js +175 -0
  192. package/esm/node_modules/@dnd-kit/react/sortable.js.map +1 -0
  193. package/esm/node_modules/@dnd-kit/react/utilities.js +17 -0
  194. package/esm/node_modules/@dnd-kit/react/utilities.js.map +1 -0
  195. package/esm/node_modules/@dnd-kit/state/dist/index.js +266 -0
  196. package/esm/node_modules/@dnd-kit/state/dist/index.js.map +1 -0
  197. package/esm/node_modules/@preact/signals-core/dist/signals-core.js +4 -0
  198. package/esm/node_modules/@preact/signals-core/dist/signals-core.js.map +1 -0
  199. package/esm/packages/vuu-utils/src/Clock.js +60 -0
  200. package/esm/packages/vuu-utils/src/Clock.js.map +1 -0
  201. package/esm/packages/vuu-utils/src/PageVisibilityObserver.js +78 -0
  202. package/esm/packages/vuu-utils/src/PageVisibilityObserver.js.map +1 -0
  203. package/esm/packages/vuu-utils/src/ScaledDecimal.js +37 -0
  204. package/esm/packages/vuu-utils/src/ScaledDecimal.js.map +1 -0
  205. package/esm/packages/vuu-utils/src/ShellContext.js +10 -0
  206. package/esm/packages/vuu-utils/src/ShellContext.js.map +1 -0
  207. package/esm/packages/vuu-utils/src/ThemeProvider.js +78 -0
  208. package/esm/packages/vuu-utils/src/ThemeProvider.js.map +1 -0
  209. package/esm/packages/vuu-utils/src/array-utils.js +79 -0
  210. package/esm/packages/vuu-utils/src/array-utils.js.map +1 -0
  211. package/esm/packages/vuu-utils/src/box-utils.js +47 -0
  212. package/esm/packages/vuu-utils/src/box-utils.js.map +1 -0
  213. package/esm/packages/vuu-utils/src/column-utils.js +978 -0
  214. package/esm/packages/vuu-utils/src/column-utils.js.map +1 -0
  215. package/esm/packages/vuu-utils/src/common-types.js +13 -0
  216. package/esm/packages/vuu-utils/src/common-types.js.map +1 -0
  217. package/esm/packages/vuu-utils/src/component-registry.js +128 -0
  218. package/esm/packages/vuu-utils/src/component-registry.js.map +1 -0
  219. package/esm/packages/vuu-utils/src/context-definitions/DataContext.js +18 -0
  220. package/esm/packages/vuu-utils/src/context-definitions/DataContext.js.map +1 -0
  221. package/esm/packages/vuu-utils/src/context-definitions/DataProvider.js +16 -0
  222. package/esm/packages/vuu-utils/src/context-definitions/DataProvider.js.map +1 -0
  223. package/esm/packages/vuu-utils/src/context-definitions/DataSourceProvider.js +29 -0
  224. package/esm/packages/vuu-utils/src/context-definitions/DataSourceProvider.js.map +1 -0
  225. package/esm/packages/vuu-utils/src/context-definitions/WorkspaceContext.js +17 -0
  226. package/esm/packages/vuu-utils/src/context-definitions/WorkspaceContext.js.map +1 -0
  227. package/esm/packages/vuu-utils/src/cookie-utils.js +19 -0
  228. package/esm/packages/vuu-utils/src/cookie-utils.js.map +1 -0
  229. package/esm/packages/vuu-utils/src/css-utils.js +7 -0
  230. package/esm/packages/vuu-utils/src/css-utils.js.map +1 -0
  231. package/esm/packages/vuu-utils/src/data-editing/DataEditingProvider.js +25 -0
  232. package/esm/packages/vuu-utils/src/data-editing/DataEditingProvider.js.map +1 -0
  233. package/esm/packages/vuu-utils/src/data-editing/EditButtons.js +62 -0
  234. package/esm/packages/vuu-utils/src/data-editing/EditButtons.js.map +1 -0
  235. package/esm/packages/vuu-utils/src/data-editing/EditSession.js +309 -0
  236. package/esm/packages/vuu-utils/src/data-editing/EditSession.js.map +1 -0
  237. package/esm/packages/vuu-utils/src/data-editing/edit-utils.js +46 -0
  238. package/esm/packages/vuu-utils/src/data-editing/edit-utils.js.map +1 -0
  239. package/esm/packages/vuu-utils/src/data-editing/useEditableTable.js +105 -0
  240. package/esm/packages/vuu-utils/src/data-editing/useEditableTable.js.map +1 -0
  241. package/esm/packages/vuu-utils/src/data-utils.js +95 -0
  242. package/esm/packages/vuu-utils/src/data-utils.js.map +1 -0
  243. package/esm/packages/vuu-utils/src/datasource/BaseDataSource.js +314 -0
  244. package/esm/packages/vuu-utils/src/datasource/BaseDataSource.js.map +1 -0
  245. package/esm/packages/vuu-utils/src/datasource/datasource-action-utils.js +8 -0
  246. package/esm/packages/vuu-utils/src/datasource/datasource-action-utils.js.map +1 -0
  247. package/esm/packages/vuu-utils/src/datasource/datasource-filter-utils.js +38 -0
  248. package/esm/packages/vuu-utils/src/datasource/datasource-filter-utils.js.map +1 -0
  249. package/esm/packages/vuu-utils/src/datasource/datasource-utils.js +193 -0
  250. package/esm/packages/vuu-utils/src/datasource/datasource-utils.js.map +1 -0
  251. package/esm/packages/vuu-utils/src/date/date-utils.js +121 -0
  252. package/esm/packages/vuu-utils/src/date/date-utils.js.map +1 -0
  253. package/esm/packages/vuu-utils/src/date/dateTimePattern.js +22 -0
  254. package/esm/packages/vuu-utils/src/date/dateTimePattern.js.map +1 -0
  255. package/esm/packages/vuu-utils/src/date/formatter.js +79 -0
  256. package/esm/packages/vuu-utils/src/date/formatter.js.map +1 -0
  257. package/esm/packages/vuu-utils/src/date/types.js +26 -0
  258. package/esm/packages/vuu-utils/src/date/types.js.map +1 -0
  259. package/esm/packages/vuu-utils/src/debug-utils.js +32 -0
  260. package/esm/packages/vuu-utils/src/debug-utils.js.map +1 -0
  261. package/esm/packages/vuu-utils/src/event-emitter.js +111 -0
  262. package/esm/packages/vuu-utils/src/event-emitter.js.map +1 -0
  263. package/esm/packages/vuu-utils/src/feature-utils.js +125 -0
  264. package/esm/packages/vuu-utils/src/feature-utils.js.map +1 -0
  265. package/esm/packages/vuu-utils/src/filters/filter-utils.js +159 -0
  266. package/esm/packages/vuu-utils/src/filters/filter-utils.js.map +1 -0
  267. package/esm/packages/vuu-utils/src/filters/filterAsQuery.js +65 -0
  268. package/esm/packages/vuu-utils/src/filters/filterAsQuery.js.map +1 -0
  269. package/esm/packages/vuu-utils/src/form-utils.js +116 -0
  270. package/esm/packages/vuu-utils/src/form-utils.js.map +1 -0
  271. package/esm/packages/vuu-utils/src/formatting-utils.js +109 -0
  272. package/esm/packages/vuu-utils/src/formatting-utils.js.map +1 -0
  273. package/esm/packages/vuu-utils/src/getUniqueId.js +4 -0
  274. package/esm/packages/vuu-utils/src/getUniqueId.js.map +1 -0
  275. package/esm/packages/vuu-utils/src/group-utils.js +23 -0
  276. package/esm/packages/vuu-utils/src/group-utils.js.map +1 -0
  277. package/esm/packages/vuu-utils/src/html-utils.js +145 -0
  278. package/esm/packages/vuu-utils/src/html-utils.js.map +1 -0
  279. package/esm/packages/vuu-utils/src/index.js +77 -0
  280. package/esm/packages/vuu-utils/src/index.js.map +1 -0
  281. package/esm/packages/vuu-utils/src/input-utils.js +7 -0
  282. package/esm/packages/vuu-utils/src/input-utils.js.map +1 -0
  283. package/esm/packages/vuu-utils/src/invariant.js +11 -0
  284. package/esm/packages/vuu-utils/src/invariant.js.map +1 -0
  285. package/esm/packages/vuu-utils/src/itemToString.js +21 -0
  286. package/esm/packages/vuu-utils/src/itemToString.js.map +1 -0
  287. package/esm/packages/vuu-utils/src/json-utils.js +103 -0
  288. package/esm/packages/vuu-utils/src/json-utils.js.map +1 -0
  289. package/esm/packages/vuu-utils/src/keyboard-utils.js +16 -0
  290. package/esm/packages/vuu-utils/src/keyboard-utils.js.map +1 -0
  291. package/esm/packages/vuu-utils/src/keyset.js +70 -0
  292. package/esm/packages/vuu-utils/src/keyset.js.map +1 -0
  293. package/esm/packages/vuu-utils/src/list-utils.js +9 -0
  294. package/esm/packages/vuu-utils/src/list-utils.js.map +1 -0
  295. package/esm/packages/vuu-utils/src/local-storage-utils.js +30 -0
  296. package/esm/packages/vuu-utils/src/local-storage-utils.js.map +1 -0
  297. package/esm/packages/vuu-utils/src/logging-utils.js +61 -0
  298. package/esm/packages/vuu-utils/src/logging-utils.js.map +1 -0
  299. package/esm/packages/vuu-utils/src/module-utils.js +4 -0
  300. package/esm/packages/vuu-utils/src/module-utils.js.map +1 -0
  301. package/esm/packages/vuu-utils/src/nanoid/index.js +20 -0
  302. package/esm/packages/vuu-utils/src/nanoid/index.js.map +1 -0
  303. package/esm/packages/vuu-utils/src/perf-utils.js +32 -0
  304. package/esm/packages/vuu-utils/src/perf-utils.js.map +1 -0
  305. package/esm/packages/vuu-utils/src/promise-utils.js +40 -0
  306. package/esm/packages/vuu-utils/src/promise-utils.js.map +1 -0
  307. package/esm/packages/vuu-utils/src/protocol-message-utils.js +77 -0
  308. package/esm/packages/vuu-utils/src/protocol-message-utils.js.map +1 -0
  309. package/esm/packages/vuu-utils/src/range-utils.js +108 -0
  310. package/esm/packages/vuu-utils/src/range-utils.js.map +1 -0
  311. package/esm/packages/vuu-utils/src/react-utils.js +66 -0
  312. package/esm/packages/vuu-utils/src/react-utils.js.map +1 -0
  313. package/esm/packages/vuu-utils/src/round-decimal.js +127 -0
  314. package/esm/packages/vuu-utils/src/round-decimal.js.map +1 -0
  315. package/esm/packages/vuu-utils/src/row-utils.js +54 -0
  316. package/esm/packages/vuu-utils/src/row-utils.js.map +1 -0
  317. package/esm/packages/vuu-utils/src/selection-utils.js +31 -0
  318. package/esm/packages/vuu-utils/src/selection-utils.js.map +1 -0
  319. package/esm/packages/vuu-utils/src/shell-layout-types.js +11 -0
  320. package/esm/packages/vuu-utils/src/shell-layout-types.js.map +1 -0
  321. package/esm/packages/vuu-utils/src/sort-utils.js +73 -0
  322. package/esm/packages/vuu-utils/src/sort-utils.js.map +1 -0
  323. package/esm/packages/vuu-utils/src/table-schema-utils.js +11 -0
  324. package/esm/packages/vuu-utils/src/table-schema-utils.js.map +1 -0
  325. package/esm/packages/vuu-utils/src/text-utils.js +18 -0
  326. package/esm/packages/vuu-utils/src/text-utils.js.map +1 -0
  327. package/esm/packages/vuu-utils/src/theme-utils.js +34 -0
  328. package/esm/packages/vuu-utils/src/theme-utils.js.map +1 -0
  329. package/esm/packages/vuu-utils/src/tree-utils.js +108 -0
  330. package/esm/packages/vuu-utils/src/tree-utils.js.map +1 -0
  331. package/esm/packages/vuu-utils/src/ts-utils.js +8 -0
  332. package/esm/packages/vuu-utils/src/ts-utils.js.map +1 -0
  333. package/esm/packages/vuu-utils/src/typeahead-utils.js +4 -0
  334. package/esm/packages/vuu-utils/src/typeahead-utils.js.map +1 -0
  335. package/esm/packages/vuu-utils/src/url-utils.js +18 -0
  336. package/esm/packages/vuu-utils/src/url-utils.js.map +1 -0
  337. package/esm/packages/vuu-utils/src/useId.js +7 -0
  338. package/esm/packages/vuu-utils/src/useId.js.map +1 -0
  339. package/esm/packages/vuu-utils/src/useLayoutEffectSkipFirst.js +15 -0
  340. package/esm/packages/vuu-utils/src/useLayoutEffectSkipFirst.js.map +1 -0
  341. package/esm/packages/vuu-utils/src/useResizeObserver.js +130 -0
  342. package/esm/packages/vuu-utils/src/useResizeObserver.js.map +1 -0
  343. package/esm/packages/vuu-utils/src/useStateRef.js +21 -0
  344. package/esm/packages/vuu-utils/src/useStateRef.js.map +1 -0
  345. package/package.json +12 -10
  346. package/types/ThemeProvider.d.ts +4 -4
  347. package/types/column-utils.d.ts +5 -4
  348. package/types/data-editing/EditButtons.d.ts +8 -2
  349. package/types/data-editing/EditSession.d.ts +13 -4
  350. package/types/data-editing/edit-utils.d.ts +3 -1
  351. package/types/data-editing/useEditableTable.d.ts +10 -4
  352. package/types/data-utils.d.ts +2 -1
  353. package/types/date/date-utils.d.ts +8 -8
  354. package/types/feature-utils.d.ts +1 -1
  355. package/types/filters/filter-utils.d.ts +15 -15
  356. package/types/formatting-utils.d.ts +1 -1
  357. package/types/index.d.ts +1 -1
  358. package/types/protocol-message-utils.d.ts +3 -1
@@ -0,0 +1,822 @@
1
+ import { WeakStore, reactive } from '../state/dist/index.js';
2
+ import { defaultCollisionDetection, closestCorners } from '../collision/dist/index.js';
3
+ import { Draggable, Droppable, Scroller } from './index.js';
4
+ import { ProxiedElements, getComputedStyles, computeTranslate, animateTransform, isKeyboardEvent, DOMRectangle, getVisibleBoundingRectangle, scrollIntoViewIfNeeded } from './utilities.js';
5
+ import { Plugin } from '../abstract/index.js';
6
+ import { Rectangle } from '../geometry/dist/index.js';
7
+ import { batch as o, untracked as h, effect as E } from '../../@preact/signals-core/dist/signals-core.js';
8
+
9
+ var __create = Object.create;
10
+ var __defProp = Object.defineProperty;
11
+ var __defProps = Object.defineProperties;
12
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
14
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
15
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
16
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
17
+ var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
18
+ var __typeError = (msg) => {
19
+ throw TypeError(msg);
20
+ };
21
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
22
+ var __spreadValues = (a, b) => {
23
+ for (var prop in b || (b = {}))
24
+ if (__hasOwnProp.call(b, prop))
25
+ __defNormalProp(a, prop, b[prop]);
26
+ if (__getOwnPropSymbols)
27
+ for (var prop of __getOwnPropSymbols(b)) {
28
+ if (__propIsEnum.call(b, prop))
29
+ __defNormalProp(a, prop, b[prop]);
30
+ }
31
+ return a;
32
+ };
33
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
34
+ var __objRest = (source, exclude) => {
35
+ var target = {};
36
+ for (var prop in source)
37
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
38
+ target[prop] = source[prop];
39
+ if (source != null && __getOwnPropSymbols)
40
+ for (var prop of __getOwnPropSymbols(source)) {
41
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
42
+ target[prop] = source[prop];
43
+ }
44
+ return target;
45
+ };
46
+ var __decoratorStart = (base) => {
47
+ var _a;
48
+ return [, , , __create((_a = void 0 ) != null ? _a : null)];
49
+ };
50
+ var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
51
+ var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
52
+ var __decoratorContext = (kind, name, done, metadata, fns) => ({ kind: __decoratorStrings[kind], name, metadata, addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null)) });
53
+ var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
54
+ var __runInitializers = (array, flags, self, value) => {
55
+ for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self) : value = fns[i].call(self, value);
56
+ return value;
57
+ };
58
+ var __decorateElement = (array, flags, name, decorators, target, extra) => {
59
+ var fn, it, done, ctx, access, k = flags & 7, s = false, p = false;
60
+ var j = array.length + 1 , key = __decoratorStrings[k + 5];
61
+ var initializers = (array[j - 1] = []), extraInitializers = array[j] || (array[j] = []);
62
+ var desc = ((target = target.prototype), __getOwnPropDesc({ get [name]() {
63
+ return __privateGet(this, extra);
64
+ }, set [name](x) {
65
+ return __privateSet(this, extra, x);
66
+ } }, name));
67
+ for (var i = decorators.length - 1; i >= 0; i--) {
68
+ ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
69
+ {
70
+ ctx.static = s, ctx.private = p, access = ctx.access = { has: (x) => name in x };
71
+ access.get = (x) => x[name];
72
+ access.set = (x, y) => x[name] = y;
73
+ }
74
+ it = (0, decorators[i])({ get: desc.get, set: desc.set } , ctx), done._ = 1;
75
+ if (it === void 0) __expectFn(it) && (desc[key] = it );
76
+ else if (typeof it !== "object" || it === null) __typeError("Object expected");
77
+ else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);
78
+ }
79
+ return desc && __defProp(target, name, desc), target;
80
+ };
81
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
82
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), member.get(obj));
83
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
84
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
85
+
86
+ // src/sortable/utilities.ts
87
+ function isSortable(element) {
88
+ return element instanceof SortableDroppable || element instanceof SortableDraggable;
89
+ }
90
+
91
+ // src/sortable/plugins/SortableKeyboardPlugin.ts
92
+ var TOLERANCE = 10;
93
+ var SortableKeyboardPlugin = class extends Plugin {
94
+ constructor(manager) {
95
+ super(manager);
96
+ const cleanupEffect = E(() => {
97
+ const { dragOperation } = manager;
98
+ if (!isKeyboardEvent(dragOperation.activatorEvent)) {
99
+ return;
100
+ }
101
+ if (!isSortable(dragOperation.source)) {
102
+ return;
103
+ }
104
+ if (dragOperation.status.initialized) {
105
+ const scroller = manager.registry.plugins.get(Scroller);
106
+ if (scroller) {
107
+ scroller.disable();
108
+ return () => scroller.enable();
109
+ }
110
+ }
111
+ });
112
+ const unsubscribe = manager.monitor.addEventListener(
113
+ "dragmove",
114
+ (event, manager2) => {
115
+ queueMicrotask(() => {
116
+ if (this.disabled || event.defaultPrevented || !event.nativeEvent) {
117
+ return;
118
+ }
119
+ const { dragOperation } = manager2;
120
+ if (!isKeyboardEvent(event.nativeEvent)) {
121
+ return;
122
+ }
123
+ if (!isSortable(dragOperation.source)) {
124
+ return;
125
+ }
126
+ if (!dragOperation.shape) {
127
+ return;
128
+ }
129
+ const { actions, collisionObserver, registry } = manager2;
130
+ const { by } = event;
131
+ if (!by) {
132
+ return;
133
+ }
134
+ const direction = getDirection(by);
135
+ const { source, target } = dragOperation;
136
+ const { center } = dragOperation.shape.current;
137
+ const potentialTargets = [];
138
+ const cleanup = [];
139
+ o(() => {
140
+ for (const droppable of registry.droppables) {
141
+ const { id: id2 } = droppable;
142
+ if (!droppable.accepts(source) || id2 === (target == null ? void 0 : target.id) && isSortable(droppable) || !droppable.element) {
143
+ continue;
144
+ }
145
+ let previousShape = droppable.shape;
146
+ const shape = new DOMRectangle(droppable.element, {
147
+ getBoundingClientRect: (element) => getVisibleBoundingRectangle(element, void 0, 0.2)
148
+ });
149
+ if (!shape.height || !shape.width) continue;
150
+ if (direction == "down" && center.y + TOLERANCE < shape.center.y || direction == "up" && center.y - TOLERANCE > shape.center.y || direction == "left" && center.x - TOLERANCE > shape.center.x || direction == "right" && center.x + TOLERANCE < shape.center.x) {
151
+ potentialTargets.push(droppable);
152
+ droppable.shape = shape;
153
+ cleanup.push(() => droppable.shape = previousShape);
154
+ }
155
+ }
156
+ });
157
+ event.preventDefault();
158
+ collisionObserver.disable();
159
+ const collisions = collisionObserver.computeCollisions(
160
+ potentialTargets,
161
+ closestCorners
162
+ );
163
+ o(() => cleanup.forEach((clean) => clean()));
164
+ const [firstCollision] = collisions;
165
+ if (!firstCollision) {
166
+ return;
167
+ }
168
+ const { id } = firstCollision;
169
+ const { index, group } = source.sortable;
170
+ actions.setDropTarget(id).then(() => {
171
+ const { source: source2, target: target2, shape } = dragOperation;
172
+ if (!source2 || !isSortable(source2) || !shape) {
173
+ return;
174
+ }
175
+ const {
176
+ index: newIndex,
177
+ group: newGroup,
178
+ target: targetElement
179
+ } = source2.sortable;
180
+ const updated = index !== newIndex || group !== newGroup;
181
+ const element = updated ? targetElement : target2 == null ? void 0 : target2.element;
182
+ if (!element) return;
183
+ scrollIntoViewIfNeeded(element);
184
+ const updatedShape = new DOMRectangle(element);
185
+ if (!updatedShape) {
186
+ return;
187
+ }
188
+ const delta = Rectangle.delta(
189
+ updatedShape,
190
+ Rectangle.from(shape.current.boundingRectangle),
191
+ source2.alignment
192
+ );
193
+ actions.move({
194
+ by: delta
195
+ });
196
+ if (updated) {
197
+ actions.setDropTarget(source2.id).then(() => collisionObserver.enable());
198
+ } else {
199
+ collisionObserver.enable();
200
+ }
201
+ });
202
+ });
203
+ }
204
+ );
205
+ this.destroy = () => {
206
+ unsubscribe();
207
+ cleanupEffect();
208
+ };
209
+ }
210
+ };
211
+ function getDirection(delta) {
212
+ const { x, y } = delta;
213
+ if (x > 0) {
214
+ return "right";
215
+ } else if (x < 0) {
216
+ return "left";
217
+ } else if (y > 0) {
218
+ return "down";
219
+ } else if (y < 0) {
220
+ return "up";
221
+ }
222
+ }
223
+
224
+ // ../helpers/dist/index.js
225
+ var __defProp2 = Object.defineProperty;
226
+ var __defProps2 = Object.defineProperties;
227
+ var __getOwnPropDescs2 = Object.getOwnPropertyDescriptors;
228
+ var __getOwnPropSymbols2 = Object.getOwnPropertySymbols;
229
+ var __hasOwnProp2 = Object.prototype.hasOwnProperty;
230
+ var __propIsEnum2 = Object.prototype.propertyIsEnumerable;
231
+ var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
232
+ var __spreadValues2 = (a, b) => {
233
+ for (var prop in b || (b = {}))
234
+ if (__hasOwnProp2.call(b, prop))
235
+ __defNormalProp2(a, prop, b[prop]);
236
+ if (__getOwnPropSymbols2)
237
+ for (var prop of __getOwnPropSymbols2(b)) {
238
+ if (__propIsEnum2.call(b, prop))
239
+ __defNormalProp2(a, prop, b[prop]);
240
+ }
241
+ return a;
242
+ };
243
+ var __spreadProps2 = (a, b) => __defProps2(a, __getOwnPropDescs2(b));
244
+ function arrayMove(array, from, to) {
245
+ if (from === to) {
246
+ return array;
247
+ }
248
+ const newArray = array.slice();
249
+ newArray.splice(to, 0, newArray.splice(from, 1)[0]);
250
+ return newArray;
251
+ }
252
+ function mutate(items, event, mutation) {
253
+ var _a, _b;
254
+ const { source, target, canceled } = event.operation;
255
+ if (!source || !target || canceled) {
256
+ if ("preventDefault" in event) event.preventDefault();
257
+ return items;
258
+ }
259
+ const findIndex = (item, id) => item === id || typeof item === "object" && "id" in item && item.id === id;
260
+ if (Array.isArray(items)) {
261
+ const sourceIndex2 = items.findIndex((item) => findIndex(item, source.id));
262
+ const targetIndex2 = items.findIndex((item) => findIndex(item, target.id));
263
+ if (sourceIndex2 === -1 || targetIndex2 === -1) {
264
+ return items;
265
+ }
266
+ if (!canceled && "index" in source && typeof source.index === "number") {
267
+ const projectedSourceIndex = source.index;
268
+ if (projectedSourceIndex !== sourceIndex2) {
269
+ return mutation(items, sourceIndex2, projectedSourceIndex);
270
+ }
271
+ }
272
+ return mutation(items, sourceIndex2, targetIndex2);
273
+ }
274
+ const entries = Object.entries(items);
275
+ let sourceIndex = -1;
276
+ let sourceParent;
277
+ let targetIndex = -1;
278
+ let targetParent;
279
+ for (const [id, children] of entries) {
280
+ if (sourceIndex === -1) {
281
+ sourceIndex = children.findIndex((item) => findIndex(item, source.id));
282
+ if (sourceIndex !== -1) {
283
+ sourceParent = id;
284
+ }
285
+ }
286
+ if (targetIndex === -1) {
287
+ targetIndex = children.findIndex((item) => findIndex(item, target.id));
288
+ if (targetIndex !== -1) {
289
+ targetParent = id;
290
+ }
291
+ }
292
+ if (sourceIndex !== -1 && targetIndex !== -1) {
293
+ break;
294
+ }
295
+ }
296
+ if (!source.manager) return items;
297
+ const { dragOperation } = source.manager;
298
+ const position = (_b = (_a = dragOperation.shape) == null ? void 0 : _a.current.center) != null ? _b : dragOperation.position.current;
299
+ if (targetParent == null) {
300
+ if (target.id in items) {
301
+ const insertionIndex = target.shape && position.y > target.shape.center.y ? items[target.id].length : 0;
302
+ targetParent = target.id;
303
+ targetIndex = insertionIndex;
304
+ }
305
+ }
306
+ if (sourceParent == null || targetParent == null || sourceParent === targetParent && sourceIndex === targetIndex) {
307
+ if ("preventDefault" in event) event.preventDefault();
308
+ return items;
309
+ }
310
+ if (sourceParent === targetParent) {
311
+ return __spreadProps2(__spreadValues2({}, items), {
312
+ [sourceParent]: mutation(items[sourceParent], sourceIndex, targetIndex)
313
+ });
314
+ }
315
+ const isBelowTarget = target.shape && Math.round(position.y) > Math.round(target.shape.center.y);
316
+ const modifier = isBelowTarget ? 1 : 0;
317
+ const sourceItem = items[sourceParent][sourceIndex];
318
+ return __spreadProps2(__spreadValues2({}, items), {
319
+ [sourceParent]: [
320
+ ...items[sourceParent].slice(0, sourceIndex),
321
+ ...items[sourceParent].slice(sourceIndex + 1)
322
+ ],
323
+ [targetParent]: [
324
+ ...items[targetParent].slice(0, targetIndex + modifier),
325
+ sourceItem,
326
+ ...items[targetParent].slice(targetIndex + modifier)
327
+ ]
328
+ });
329
+ }
330
+ function move(items, event) {
331
+ return mutate(items, event, arrayMove);
332
+ }
333
+ var defaultGroup = "__default__";
334
+ var OptimisticSortingPlugin = class extends Plugin {
335
+ constructor(manager) {
336
+ super(manager);
337
+ const getSortableInstances = () => {
338
+ const sortableInstances = /* @__PURE__ */ new Map();
339
+ for (const droppable of manager.registry.droppables) {
340
+ if (droppable instanceof SortableDroppable) {
341
+ const { sortable } = droppable;
342
+ const { group } = sortable;
343
+ let instances = sortableInstances.get(group);
344
+ if (!instances) {
345
+ instances = /* @__PURE__ */ new Set();
346
+ sortableInstances.set(group, instances);
347
+ }
348
+ instances.add(sortable);
349
+ }
350
+ }
351
+ for (const [group, instances] of sortableInstances) {
352
+ sortableInstances.set(group, new Set(sort(instances)));
353
+ }
354
+ return sortableInstances;
355
+ };
356
+ const unsubscribe = [
357
+ manager.monitor.addEventListener("dragover", (event, manager2) => {
358
+ if (this.disabled) {
359
+ return;
360
+ }
361
+ const { dragOperation } = manager2;
362
+ const { source, target } = dragOperation;
363
+ if (!isSortable(source) || !isSortable(target)) {
364
+ return;
365
+ }
366
+ if (source.sortable === target.sortable) {
367
+ return;
368
+ }
369
+ const instances = getSortableInstances();
370
+ const sameGroup = source.sortable.group === target.sortable.group;
371
+ const sourceInstances = instances.get(source.sortable.group);
372
+ const targetInstances = sameGroup ? sourceInstances : instances.get(target.sortable.group);
373
+ if (!sourceInstances || !targetInstances) return;
374
+ queueMicrotask(() => {
375
+ if (event.defaultPrevented) return;
376
+ manager2.renderer.rendering.then(() => {
377
+ var _a, _b, _c;
378
+ const newInstances = getSortableInstances();
379
+ for (const [group, sortableInstances] of instances.entries()) {
380
+ const entries = Array.from(sortableInstances).entries();
381
+ for (const [index, sortable] of entries) {
382
+ if (sortable.index !== index || sortable.group !== group || !((_a = newInstances.get(group)) == null ? void 0 : _a.has(sortable))) {
383
+ return;
384
+ }
385
+ }
386
+ }
387
+ const sourceElement = source.sortable.element;
388
+ const targetElement = target.sortable.element;
389
+ if (!targetElement || !sourceElement) {
390
+ return;
391
+ }
392
+ if (!sameGroup && target.id === source.sortable.group) {
393
+ return;
394
+ }
395
+ const orderedSourceSortables = sort(sourceInstances);
396
+ const orderedTargetSortables = sameGroup ? orderedSourceSortables : sort(targetInstances);
397
+ const sourceGroup = (_b = source.sortable.group) != null ? _b : defaultGroup;
398
+ const targetGroup = (_c = target.sortable.group) != null ? _c : defaultGroup;
399
+ const state = {
400
+ [sourceGroup]: orderedSourceSortables,
401
+ [targetGroup]: orderedTargetSortables
402
+ };
403
+ const newState = move(state, event);
404
+ if (state === newState) return;
405
+ const sourceIndex = newState[targetGroup].indexOf(source.sortable);
406
+ const targetIndex = newState[targetGroup].indexOf(target.sortable);
407
+ manager2.collisionObserver.disable();
408
+ reorder(sourceElement, sourceIndex, targetElement, targetIndex);
409
+ o(() => {
410
+ for (const [index, sortable] of newState[sourceGroup].entries()) {
411
+ sortable.index = index;
412
+ }
413
+ if (!sameGroup) {
414
+ for (const [index, sortable] of newState[targetGroup].entries()) {
415
+ sortable.group = target.sortable.group;
416
+ sortable.index = index;
417
+ }
418
+ }
419
+ });
420
+ manager2.actions.setDropTarget(source.id).then(() => manager2.collisionObserver.enable());
421
+ });
422
+ });
423
+ }),
424
+ manager.monitor.addEventListener("dragend", (event, manager2) => {
425
+ if (!event.canceled) {
426
+ return;
427
+ }
428
+ const { dragOperation } = manager2;
429
+ const { source } = dragOperation;
430
+ if (!isSortable(source)) {
431
+ return;
432
+ }
433
+ if (source.sortable.initialIndex === source.sortable.index && source.sortable.initialGroup === source.sortable.group) {
434
+ return;
435
+ }
436
+ queueMicrotask(() => {
437
+ const instances = getSortableInstances();
438
+ const initialGroupInstances = instances.get(
439
+ source.sortable.initialGroup
440
+ );
441
+ if (!initialGroupInstances) return;
442
+ manager2.renderer.rendering.then(() => {
443
+ for (const [group, sortableInstances] of instances.entries()) {
444
+ const entries = Array.from(sortableInstances).entries();
445
+ for (const [index, sortable] of entries) {
446
+ if (sortable.index !== index || sortable.group !== group) {
447
+ return;
448
+ }
449
+ }
450
+ }
451
+ const initialGroup = sort(initialGroupInstances);
452
+ const sourceElement = source.sortable.element;
453
+ const target = initialGroup[source.sortable.initialIndex];
454
+ const targetElement = target == null ? void 0 : target.element;
455
+ if (!target || !targetElement || !sourceElement) {
456
+ return;
457
+ }
458
+ reorder(sourceElement, target.index, targetElement, source.index);
459
+ o(() => {
460
+ for (const [_, sortableInstances] of instances.entries()) {
461
+ const entries = Array.from(sortableInstances).values();
462
+ for (const sortable of entries) {
463
+ sortable.index = sortable.initialIndex;
464
+ sortable.group = sortable.initialGroup;
465
+ }
466
+ }
467
+ });
468
+ });
469
+ });
470
+ })
471
+ ];
472
+ this.destroy = () => {
473
+ for (const unsubscribeListener of unsubscribe) {
474
+ unsubscribeListener();
475
+ }
476
+ };
477
+ }
478
+ };
479
+ function reorder(sourceElement, sourceIndex, targetElement, targetIndex) {
480
+ const position = targetIndex < sourceIndex ? "afterend" : "beforebegin";
481
+ targetElement.insertAdjacentElement(position, sourceElement);
482
+ }
483
+ function sortByIndex(a, b) {
484
+ return a.index - b.index;
485
+ }
486
+ function sort(instances) {
487
+ return Array.from(instances).sort(sortByIndex);
488
+ }
489
+
490
+ // src/sortable/sortable.ts
491
+ var defaultPlugins = [
492
+ SortableKeyboardPlugin,
493
+ OptimisticSortingPlugin
494
+ ];
495
+ var defaultSortableTransition = {
496
+ duration: 250,
497
+ easing: "cubic-bezier(0.25, 1, 0.5, 1)",
498
+ idle: false
499
+ };
500
+ var store = new WeakStore();
501
+ var _group_dec, _index_dec, _init, _index, _previousGroup, _previousIndex, _group, _element;
502
+ _index_dec = [reactive], _group_dec = [reactive];
503
+ var Sortable2 = class {
504
+ constructor(_a, manager) {
505
+ __privateAdd(this, _index, __runInitializers(_init, 8, this)), __runInitializers(_init, 11, this);
506
+ __privateAdd(this, _previousGroup);
507
+ __privateAdd(this, _previousIndex);
508
+ __privateAdd(this, _group, __runInitializers(_init, 12, this)), __runInitializers(_init, 15, this);
509
+ __privateAdd(this, _element);
510
+ this.register = () => {
511
+ o(() => {
512
+ var _a, _b;
513
+ (_a = this.manager) == null ? void 0 : _a.registry.register(this.droppable);
514
+ (_b = this.manager) == null ? void 0 : _b.registry.register(this.draggable);
515
+ });
516
+ return () => this.unregister();
517
+ };
518
+ this.unregister = () => {
519
+ o(() => {
520
+ var _a, _b;
521
+ (_a = this.manager) == null ? void 0 : _a.registry.unregister(this.droppable);
522
+ (_b = this.manager) == null ? void 0 : _b.registry.unregister(this.draggable);
523
+ });
524
+ };
525
+ this.destroy = () => {
526
+ o(() => {
527
+ this.droppable.destroy();
528
+ this.draggable.destroy();
529
+ });
530
+ };
531
+ var _b = _a, {
532
+ effects: inputEffects = () => [],
533
+ group,
534
+ index,
535
+ sensors,
536
+ type,
537
+ transition = defaultSortableTransition,
538
+ plugins = defaultPlugins
539
+ } = _b, input = __objRest(_b, [
540
+ "effects",
541
+ "group",
542
+ "index",
543
+ "sensors",
544
+ "type",
545
+ "transition",
546
+ "plugins"
547
+ ]);
548
+ this.droppable = new SortableDroppable(input, manager, this);
549
+ this.draggable = new SortableDraggable(
550
+ __spreadProps(__spreadValues({}, input), {
551
+ effects: () => [
552
+ () => {
553
+ var _a2, _b2, _c;
554
+ const status = (_a2 = this.manager) == null ? void 0 : _a2.dragOperation.status;
555
+ if ((status == null ? void 0 : status.initializing) && this.id === ((_c = (_b2 = this.manager) == null ? void 0 : _b2.dragOperation.source) == null ? void 0 : _c.id)) {
556
+ store.clear(this.manager);
557
+ }
558
+ if (status == null ? void 0 : status.dragging) {
559
+ store.set(
560
+ this.manager,
561
+ this.id,
562
+ h(() => ({
563
+ initialIndex: this.index,
564
+ initialGroup: this.group
565
+ }))
566
+ );
567
+ }
568
+ },
569
+ () => {
570
+ const { index: index2, group: group2, manager: _ } = this;
571
+ const previousIndex = __privateGet(this, _previousIndex);
572
+ const previousGroup = __privateGet(this, _previousGroup);
573
+ if (index2 !== previousIndex || group2 !== previousGroup) {
574
+ __privateSet(this, _previousIndex, index2);
575
+ __privateSet(this, _previousGroup, group2);
576
+ this.animate();
577
+ }
578
+ },
579
+ () => {
580
+ const { target } = this;
581
+ const { feedback, isDragSource } = this.draggable;
582
+ if (feedback == "move" && isDragSource) {
583
+ this.droppable.disabled = !target;
584
+ }
585
+ },
586
+ () => {
587
+ const { manager: manager2 } = this;
588
+ for (const plugin of plugins) {
589
+ manager2 == null ? void 0 : manager2.registry.register(plugin);
590
+ }
591
+ },
592
+ ...inputEffects()
593
+ ],
594
+ type,
595
+ sensors
596
+ }),
597
+ manager,
598
+ this
599
+ );
600
+ __privateSet(this, _element, input.element);
601
+ this.manager = manager;
602
+ this.index = index;
603
+ __privateSet(this, _previousIndex, index);
604
+ this.group = group;
605
+ __privateSet(this, _previousGroup, group);
606
+ this.type = type;
607
+ this.transition = transition;
608
+ }
609
+ get initialIndex() {
610
+ var _a, _b;
611
+ return (_b = (_a = store.get(this.manager, this.id)) == null ? void 0 : _a.initialIndex) != null ? _b : this.index;
612
+ }
613
+ get initialGroup() {
614
+ var _a, _b;
615
+ return (_b = (_a = store.get(this.manager, this.id)) == null ? void 0 : _a.initialGroup) != null ? _b : this.group;
616
+ }
617
+ animate() {
618
+ h(() => {
619
+ const { manager, transition } = this;
620
+ const { shape } = this.droppable;
621
+ if (!manager) return;
622
+ const { idle } = manager.dragOperation.status;
623
+ if (!shape || !transition || idle && !transition.idle) {
624
+ return;
625
+ }
626
+ manager.renderer.rendering.then(() => {
627
+ const { element } = this;
628
+ if (!element) {
629
+ return;
630
+ }
631
+ const updatedShape = this.refreshShape();
632
+ if (!updatedShape) {
633
+ return;
634
+ }
635
+ const delta = {
636
+ x: shape.boundingRectangle.left - updatedShape.boundingRectangle.left,
637
+ y: shape.boundingRectangle.top - updatedShape.boundingRectangle.top
638
+ };
639
+ const { translate } = getComputedStyles(element);
640
+ const currentTranslate = computeTranslate(element, translate, false);
641
+ const finalTranslate = computeTranslate(element, translate);
642
+ if (delta.x || delta.y) {
643
+ animateTransform({
644
+ element,
645
+ keyframes: {
646
+ translate: [
647
+ `${currentTranslate.x + delta.x}px ${currentTranslate.y + delta.y}px ${currentTranslate.z}`,
648
+ `${finalTranslate.x}px ${finalTranslate.y}px ${finalTranslate.z}`
649
+ ]
650
+ },
651
+ options: transition
652
+ }).then(() => {
653
+ if (!manager.dragOperation.status.dragging) {
654
+ this.droppable.shape = void 0;
655
+ }
656
+ });
657
+ }
658
+ });
659
+ });
660
+ }
661
+ get manager() {
662
+ return this.draggable.manager;
663
+ }
664
+ set manager(manager) {
665
+ o(() => {
666
+ this.draggable.manager = manager;
667
+ this.droppable.manager = manager;
668
+ });
669
+ }
670
+ set element(element) {
671
+ o(() => {
672
+ const previousElement = __privateGet(this, _element);
673
+ const droppableElement = this.droppable.element;
674
+ const draggableElement = this.draggable.element;
675
+ if (!droppableElement || droppableElement === previousElement) {
676
+ this.droppable.element = element;
677
+ }
678
+ if (!draggableElement || draggableElement === previousElement) {
679
+ this.draggable.element = element;
680
+ }
681
+ __privateSet(this, _element, element);
682
+ });
683
+ }
684
+ get element() {
685
+ var _a, _b;
686
+ const element = __privateGet(this, _element);
687
+ if (!element) return;
688
+ return (_b = (_a = ProxiedElements.get(element)) != null ? _a : element) != null ? _b : this.droppable.element;
689
+ }
690
+ set target(target) {
691
+ this.droppable.element = target;
692
+ }
693
+ get target() {
694
+ return this.droppable.element;
695
+ }
696
+ set source(source) {
697
+ this.draggable.element = source;
698
+ }
699
+ get source() {
700
+ return this.draggable.element;
701
+ }
702
+ get disabled() {
703
+ return this.draggable.disabled && this.droppable.disabled;
704
+ }
705
+ set feedback(value) {
706
+ this.draggable.feedback = value;
707
+ }
708
+ set disabled(value) {
709
+ o(() => {
710
+ this.droppable.disabled = value;
711
+ this.draggable.disabled = value;
712
+ });
713
+ }
714
+ set data(data) {
715
+ o(() => {
716
+ this.droppable.data = data;
717
+ this.draggable.data = data;
718
+ });
719
+ }
720
+ set handle(handle) {
721
+ this.draggable.handle = handle;
722
+ }
723
+ set id(id) {
724
+ o(() => {
725
+ this.droppable.id = id;
726
+ this.draggable.id = id;
727
+ });
728
+ }
729
+ get id() {
730
+ return this.droppable.id;
731
+ }
732
+ set sensors(value) {
733
+ this.draggable.sensors = value;
734
+ }
735
+ set modifiers(value) {
736
+ this.draggable.modifiers = value;
737
+ }
738
+ set collisionPriority(value) {
739
+ this.droppable.collisionPriority = value;
740
+ }
741
+ set collisionDetector(value) {
742
+ this.droppable.collisionDetector = value != null ? value : defaultCollisionDetection;
743
+ }
744
+ set alignment(value) {
745
+ this.draggable.alignment = value;
746
+ }
747
+ get alignment() {
748
+ return this.draggable.alignment;
749
+ }
750
+ set type(type) {
751
+ o(() => {
752
+ this.droppable.type = type;
753
+ this.draggable.type = type;
754
+ });
755
+ }
756
+ get type() {
757
+ return this.draggable.type;
758
+ }
759
+ set accept(value) {
760
+ this.droppable.accept = value;
761
+ }
762
+ get accept() {
763
+ return this.droppable.accept;
764
+ }
765
+ get isDropTarget() {
766
+ return this.droppable.isDropTarget;
767
+ }
768
+ /**
769
+ * A boolean indicating whether the sortable item is the source of a drag operation.
770
+ */
771
+ get isDragSource() {
772
+ return this.draggable.isDragSource;
773
+ }
774
+ /**
775
+ * A boolean indicating whether the sortable item is being dragged.
776
+ */
777
+ get isDragging() {
778
+ return this.draggable.isDragging;
779
+ }
780
+ /**
781
+ * A boolean indicating whether the sortable item is being dropped.
782
+ */
783
+ get isDropping() {
784
+ return this.draggable.isDropping;
785
+ }
786
+ get status() {
787
+ return this.draggable.status;
788
+ }
789
+ refreshShape() {
790
+ return this.droppable.refreshShape();
791
+ }
792
+ accepts(draggable) {
793
+ return this.droppable.accepts(draggable);
794
+ }
795
+ };
796
+ _init = __decoratorStart();
797
+ _index = new WeakMap();
798
+ _previousGroup = new WeakMap();
799
+ _previousIndex = new WeakMap();
800
+ _group = new WeakMap();
801
+ _element = new WeakMap();
802
+ __decorateElement(_init, 4, "index", _index_dec, Sortable2, _index);
803
+ __decorateElement(_init, 4, "group", _group_dec, Sortable2, _group);
804
+ __decoratorMetadata(_init, Sortable2);
805
+ var SortableDraggable = class extends Draggable {
806
+ constructor(input, manager, sortable) {
807
+ super(input, manager);
808
+ this.sortable = sortable;
809
+ }
810
+ get index() {
811
+ return this.sortable.index;
812
+ }
813
+ };
814
+ var SortableDroppable = class extends Droppable {
815
+ constructor(input, manager, sortable) {
816
+ super(input, manager);
817
+ this.sortable = sortable;
818
+ }
819
+ };
820
+
821
+ export { OptimisticSortingPlugin, Sortable2 as Sortable, SortableKeyboardPlugin, defaultSortableTransition, isSortable };
822
+ //# sourceMappingURL=sortable.js.map