@vuu-ui/vuu-utils 2.1.18 → 2.1.19-beta.2

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 (430) hide show
  1. package/package.json +11 -14
  2. package/src/Clock.js +43 -0
  3. package/src/PageVisibilityObserver.js +42 -0
  4. package/src/ScaledDecimal.js +32 -0
  5. package/src/ShellContext.js +5 -0
  6. package/src/ThemeProvider.js +56 -0
  7. package/src/array-utils.js +51 -0
  8. package/src/box-utils.js +51 -0
  9. package/src/broadcast-channel.js +0 -0
  10. package/src/column-utils.js +790 -0
  11. package/src/common-types.js +11 -0
  12. package/src/component-registry.js +83 -0
  13. package/src/context-definitions/DataContext.js +15 -0
  14. package/src/context-definitions/DataProvider.js +13 -0
  15. package/src/context-definitions/DataSourceProvider.js +18 -0
  16. package/src/context-definitions/WorkspaceContext.js +14 -0
  17. package/src/cookie-utils.js +15 -0
  18. package/src/css-utils.js +5 -0
  19. package/src/data-editing/DataEditingProvider.js +13 -0
  20. package/src/data-editing/EditButtons.js +32 -0
  21. package/src/data-editing/EditModeProvider.js +18 -0
  22. package/src/data-editing/EditSession.js +149 -0
  23. package/src/data-editing/edit-utils.js +37 -0
  24. package/src/data-editing/useEditableTable.js +76 -0
  25. package/src/data-utils.js +55 -0
  26. package/src/datasource/BaseDataSource.js +233 -0
  27. package/src/datasource/datasource-action-utils.js +6 -0
  28. package/src/datasource/datasource-filter-utils.js +27 -0
  29. package/src/datasource/datasource-utils.js +148 -0
  30. package/src/date/date-utils.js +80 -0
  31. package/src/date/dateTimePattern.js +17 -0
  32. package/src/date/formatter.js +101 -0
  33. package/src/date/index.js +4 -0
  34. package/src/date/types.js +27 -0
  35. package/src/debug-utils.js +25 -0
  36. package/src/event-emitter.js +78 -0
  37. package/src/feature-utils.js +86 -0
  38. package/src/filters/filter-utils.js +136 -0
  39. package/src/filters/filterAsQuery.js +70 -0
  40. package/src/filters/index.js +2 -0
  41. package/src/form-utils.js +69 -0
  42. package/src/formatting-utils.js +42 -0
  43. package/src/getUniqueId.js +2 -0
  44. package/src/group-utils.js +16 -0
  45. package/src/html-utils.js +108 -0
  46. package/src/index.js +77 -0
  47. package/src/input-utils.js +3 -0
  48. package/src/invariant.js +9 -0
  49. package/src/itemToString.js +9 -0
  50. package/src/json-types.js +0 -0
  51. package/src/json-utils.js +108 -0
  52. package/{esm/packages/vuu-utils/src → src}/keyboard-utils.js +1 -3
  53. package/src/keyset.js +57 -0
  54. package/src/layout-types.js +0 -0
  55. package/src/list-utils.js +5 -0
  56. package/src/local-storage-utils.js +23 -0
  57. package/src/logging-utils.js +52 -0
  58. package/src/module-utils.js +2 -0
  59. package/src/nanoid/index.js +13 -0
  60. package/src/perf-utils.js +28 -0
  61. package/src/promise-utils.js +26 -0
  62. package/src/protocol-message-utils.js +68 -0
  63. package/src/range-utils.js +109 -0
  64. package/src/react-utils.js +64 -0
  65. package/src/round-decimal.js +83 -0
  66. package/src/row-utils.js +43 -0
  67. package/src/selection-utils.js +25 -0
  68. package/src/shell-layout-types.js +9 -0
  69. package/src/sort-utils.js +75 -0
  70. package/src/table-schema-utils.js +11 -0
  71. package/src/text-utils.js +13 -0
  72. package/src/theme-utils.js +21 -0
  73. package/src/tree-types.js +0 -0
  74. package/src/tree-utils.js +96 -0
  75. package/src/ts-utils.js +6 -0
  76. package/src/typeahead-utils.js +4 -0
  77. package/src/url-utils.js +12 -0
  78. package/src/useId.js +6 -0
  79. package/src/useLayoutEffectSkipFirst.js +9 -0
  80. package/src/useResizeObserver.js +122 -0
  81. package/src/useStateRef.js +21 -0
  82. package/src/user-types.js +0 -0
  83. package/types/ThemeProvider.d.ts +4 -4
  84. package/types/data-utils.d.ts +1 -1
  85. package/types/date/date-utils.d.ts +8 -8
  86. package/types/feature-utils.d.ts +1 -1
  87. package/types/filters/filter-utils.d.ts +15 -15
  88. package/cjs/node_modules/@dnd-kit/abstract/index.js +0 -1488
  89. package/cjs/node_modules/@dnd-kit/abstract/index.js.map +0 -1
  90. package/cjs/node_modules/@dnd-kit/abstract/modifiers.js +0 -85
  91. package/cjs/node_modules/@dnd-kit/abstract/modifiers.js.map +0 -1
  92. package/cjs/node_modules/@dnd-kit/collision/dist/index.js +0 -91
  93. package/cjs/node_modules/@dnd-kit/collision/dist/index.js.map +0 -1
  94. package/cjs/node_modules/@dnd-kit/dom/index.js +0 -1991
  95. package/cjs/node_modules/@dnd-kit/dom/index.js.map +0 -1
  96. package/cjs/node_modules/@dnd-kit/dom/sortable.js +0 -828
  97. package/cjs/node_modules/@dnd-kit/dom/sortable.js.map +0 -1
  98. package/cjs/node_modules/@dnd-kit/dom/utilities.js +0 -1389
  99. package/cjs/node_modules/@dnd-kit/dom/utilities.js.map +0 -1
  100. package/cjs/node_modules/@dnd-kit/geometry/dist/index.js +0 -310
  101. package/cjs/node_modules/@dnd-kit/geometry/dist/index.js.map +0 -1
  102. package/cjs/node_modules/@dnd-kit/react/hooks.js +0 -134
  103. package/cjs/node_modules/@dnd-kit/react/hooks.js.map +0 -1
  104. package/cjs/node_modules/@dnd-kit/react/index.js +0 -398
  105. package/cjs/node_modules/@dnd-kit/react/index.js.map +0 -1
  106. package/cjs/node_modules/@dnd-kit/react/sortable.js +0 -177
  107. package/cjs/node_modules/@dnd-kit/react/sortable.js.map +0 -1
  108. package/cjs/node_modules/@dnd-kit/react/utilities.js +0 -19
  109. package/cjs/node_modules/@dnd-kit/react/utilities.js.map +0 -1
  110. package/cjs/node_modules/@dnd-kit/state/dist/index.js +0 -280
  111. package/cjs/node_modules/@dnd-kit/state/dist/index.js.map +0 -1
  112. package/cjs/node_modules/@preact/signals-core/dist/signals-core.js +0 -11
  113. package/cjs/node_modules/@preact/signals-core/dist/signals-core.js.map +0 -1
  114. package/cjs/packages/vuu-utils/src/Clock.js +0 -62
  115. package/cjs/packages/vuu-utils/src/Clock.js.map +0 -1
  116. package/cjs/packages/vuu-utils/src/PageVisibilityObserver.js +0 -80
  117. package/cjs/packages/vuu-utils/src/PageVisibilityObserver.js.map +0 -1
  118. package/cjs/packages/vuu-utils/src/ScaledDecimal.js +0 -43
  119. package/cjs/packages/vuu-utils/src/ScaledDecimal.js.map +0 -1
  120. package/cjs/packages/vuu-utils/src/ShellContext.js +0 -13
  121. package/cjs/packages/vuu-utils/src/ShellContext.js.map +0 -1
  122. package/cjs/packages/vuu-utils/src/ThemeProvider.js +0 -85
  123. package/cjs/packages/vuu-utils/src/ThemeProvider.js.map +0 -1
  124. package/cjs/packages/vuu-utils/src/array-utils.js +0 -87
  125. package/cjs/packages/vuu-utils/src/array-utils.js.map +0 -1
  126. package/cjs/packages/vuu-utils/src/box-utils.js +0 -53
  127. package/cjs/packages/vuu-utils/src/box-utils.js.map +0 -1
  128. package/cjs/packages/vuu-utils/src/column-utils.js +0 -1057
  129. package/cjs/packages/vuu-utils/src/column-utils.js.map +0 -1
  130. package/cjs/packages/vuu-utils/src/common-types.js +0 -15
  131. package/cjs/packages/vuu-utils/src/common-types.js.map +0 -1
  132. package/cjs/packages/vuu-utils/src/component-registry.js +0 -144
  133. package/cjs/packages/vuu-utils/src/component-registry.js.map +0 -1
  134. package/cjs/packages/vuu-utils/src/context-definitions/DataContext.js +0 -21
  135. package/cjs/packages/vuu-utils/src/context-definitions/DataContext.js.map +0 -1
  136. package/cjs/packages/vuu-utils/src/context-definitions/DataProvider.js +0 -19
  137. package/cjs/packages/vuu-utils/src/context-definitions/DataProvider.js.map +0 -1
  138. package/cjs/packages/vuu-utils/src/context-definitions/DataSourceProvider.js +0 -33
  139. package/cjs/packages/vuu-utils/src/context-definitions/DataSourceProvider.js.map +0 -1
  140. package/cjs/packages/vuu-utils/src/context-definitions/WorkspaceContext.js +0 -20
  141. package/cjs/packages/vuu-utils/src/context-definitions/WorkspaceContext.js.map +0 -1
  142. package/cjs/packages/vuu-utils/src/cookie-utils.js +0 -22
  143. package/cjs/packages/vuu-utils/src/cookie-utils.js.map +0 -1
  144. package/cjs/packages/vuu-utils/src/css-utils.js +0 -9
  145. package/cjs/packages/vuu-utils/src/css-utils.js.map +0 -1
  146. package/cjs/packages/vuu-utils/src/data-editing/DataEditingProvider.js +0 -28
  147. package/cjs/packages/vuu-utils/src/data-editing/DataEditingProvider.js.map +0 -1
  148. package/cjs/packages/vuu-utils/src/data-editing/EditButtons.js +0 -34
  149. package/cjs/packages/vuu-utils/src/data-editing/EditButtons.js.map +0 -1
  150. package/cjs/packages/vuu-utils/src/data-editing/EditSession.js +0 -204
  151. package/cjs/packages/vuu-utils/src/data-editing/EditSession.js.map +0 -1
  152. package/cjs/packages/vuu-utils/src/data-editing/edit-utils.js +0 -37
  153. package/cjs/packages/vuu-utils/src/data-editing/edit-utils.js.map +0 -1
  154. package/cjs/packages/vuu-utils/src/data-editing/useEditableTable.js +0 -81
  155. package/cjs/packages/vuu-utils/src/data-editing/useEditableTable.js.map +0 -1
  156. package/cjs/packages/vuu-utils/src/data-utils.js +0 -96
  157. package/cjs/packages/vuu-utils/src/data-utils.js.map +0 -1
  158. package/cjs/packages/vuu-utils/src/datasource/BaseDataSource.js +0 -317
  159. package/cjs/packages/vuu-utils/src/datasource/BaseDataSource.js.map +0 -1
  160. package/cjs/packages/vuu-utils/src/datasource/datasource-action-utils.js +0 -14
  161. package/cjs/packages/vuu-utils/src/datasource/datasource-action-utils.js.map +0 -1
  162. package/cjs/packages/vuu-utils/src/datasource/datasource-filter-utils.js +0 -40
  163. package/cjs/packages/vuu-utils/src/datasource/datasource-filter-utils.js.map +0 -1
  164. package/cjs/packages/vuu-utils/src/datasource/datasource-utils.js +0 -218
  165. package/cjs/packages/vuu-utils/src/datasource/datasource-utils.js.map +0 -1
  166. package/cjs/packages/vuu-utils/src/date/date-utils.js +0 -131
  167. package/cjs/packages/vuu-utils/src/date/date-utils.js.map +0 -1
  168. package/cjs/packages/vuu-utils/src/date/dateTimePattern.js +0 -26
  169. package/cjs/packages/vuu-utils/src/date/dateTimePattern.js.map +0 -1
  170. package/cjs/packages/vuu-utils/src/date/formatter.js +0 -82
  171. package/cjs/packages/vuu-utils/src/date/formatter.js.map +0 -1
  172. package/cjs/packages/vuu-utils/src/date/types.js +0 -32
  173. package/cjs/packages/vuu-utils/src/date/types.js.map +0 -1
  174. package/cjs/packages/vuu-utils/src/debug-utils.js +0 -34
  175. package/cjs/packages/vuu-utils/src/debug-utils.js.map +0 -1
  176. package/cjs/packages/vuu-utils/src/event-emitter.js +0 -113
  177. package/cjs/packages/vuu-utils/src/event-emitter.js.map +0 -1
  178. package/cjs/packages/vuu-utils/src/feature-utils.js +0 -139
  179. package/cjs/packages/vuu-utils/src/feature-utils.js.map +0 -1
  180. package/cjs/packages/vuu-utils/src/filters/filter-utils.js +0 -182
  181. package/cjs/packages/vuu-utils/src/filters/filter-utils.js.map +0 -1
  182. package/cjs/packages/vuu-utils/src/filters/filterAsQuery.js +0 -69
  183. package/cjs/packages/vuu-utils/src/filters/filterAsQuery.js.map +0 -1
  184. package/cjs/packages/vuu-utils/src/form-utils.js +0 -117
  185. package/cjs/packages/vuu-utils/src/form-utils.js.map +0 -1
  186. package/cjs/packages/vuu-utils/src/formatting-utils.js +0 -98
  187. package/cjs/packages/vuu-utils/src/formatting-utils.js.map +0 -1
  188. package/cjs/packages/vuu-utils/src/getUniqueId.js +0 -6
  189. package/cjs/packages/vuu-utils/src/getUniqueId.js.map +0 -1
  190. package/cjs/packages/vuu-utils/src/group-utils.js +0 -27
  191. package/cjs/packages/vuu-utils/src/group-utils.js.map +0 -1
  192. package/cjs/packages/vuu-utils/src/html-utils.js +0 -162
  193. package/cjs/packages/vuu-utils/src/html-utils.js.map +0 -1
  194. package/cjs/packages/vuu-utils/src/index.js +0 -475
  195. package/cjs/packages/vuu-utils/src/index.js.map +0 -1
  196. package/cjs/packages/vuu-utils/src/input-utils.js +0 -10
  197. package/cjs/packages/vuu-utils/src/input-utils.js.map +0 -1
  198. package/cjs/packages/vuu-utils/src/invariant.js +0 -13
  199. package/cjs/packages/vuu-utils/src/invariant.js.map +0 -1
  200. package/cjs/packages/vuu-utils/src/itemToString.js +0 -23
  201. package/cjs/packages/vuu-utils/src/itemToString.js.map +0 -1
  202. package/cjs/packages/vuu-utils/src/json-utils.js +0 -105
  203. package/cjs/packages/vuu-utils/src/json-utils.js.map +0 -1
  204. package/cjs/packages/vuu-utils/src/keyboard-utils.js +0 -30
  205. package/cjs/packages/vuu-utils/src/keyboard-utils.js.map +0 -1
  206. package/cjs/packages/vuu-utils/src/keyset.js +0 -72
  207. package/cjs/packages/vuu-utils/src/keyset.js.map +0 -1
  208. package/cjs/packages/vuu-utils/src/list-utils.js +0 -11
  209. package/cjs/packages/vuu-utils/src/list-utils.js.map +0 -1
  210. package/cjs/packages/vuu-utils/src/local-storage-utils.js +0 -35
  211. package/cjs/packages/vuu-utils/src/local-storage-utils.js.map +0 -1
  212. package/cjs/packages/vuu-utils/src/logging-utils.js +0 -65
  213. package/cjs/packages/vuu-utils/src/logging-utils.js.map +0 -1
  214. package/cjs/packages/vuu-utils/src/module-utils.js +0 -6
  215. package/cjs/packages/vuu-utils/src/module-utils.js.map +0 -1
  216. package/cjs/packages/vuu-utils/src/nanoid/index.js +0 -22
  217. package/cjs/packages/vuu-utils/src/nanoid/index.js.map +0 -1
  218. package/cjs/packages/vuu-utils/src/perf-utils.js +0 -35
  219. package/cjs/packages/vuu-utils/src/perf-utils.js.map +0 -1
  220. package/cjs/packages/vuu-utils/src/promise-utils.js +0 -42
  221. package/cjs/packages/vuu-utils/src/promise-utils.js.map +0 -1
  222. package/cjs/packages/vuu-utils/src/protocol-message-utils.js +0 -104
  223. package/cjs/packages/vuu-utils/src/protocol-message-utils.js.map +0 -1
  224. package/cjs/packages/vuu-utils/src/range-utils.js +0 -115
  225. package/cjs/packages/vuu-utils/src/range-utils.js.map +0 -1
  226. package/cjs/packages/vuu-utils/src/react-utils.js +0 -72
  227. package/cjs/packages/vuu-utils/src/react-utils.js.map +0 -1
  228. package/cjs/packages/vuu-utils/src/round-decimal.js +0 -131
  229. package/cjs/packages/vuu-utils/src/round-decimal.js.map +0 -1
  230. package/cjs/packages/vuu-utils/src/row-utils.js +0 -59
  231. package/cjs/packages/vuu-utils/src/row-utils.js.map +0 -1
  232. package/cjs/packages/vuu-utils/src/selection-utils.js +0 -34
  233. package/cjs/packages/vuu-utils/src/selection-utils.js.map +0 -1
  234. package/cjs/packages/vuu-utils/src/shell-layout-types.js +0 -13
  235. package/cjs/packages/vuu-utils/src/shell-layout-types.js.map +0 -1
  236. package/cjs/packages/vuu-utils/src/sort-utils.js +0 -78
  237. package/cjs/packages/vuu-utils/src/sort-utils.js.map +0 -1
  238. package/cjs/packages/vuu-utils/src/table-schema-utils.js +0 -13
  239. package/cjs/packages/vuu-utils/src/table-schema-utils.js.map +0 -1
  240. package/cjs/packages/vuu-utils/src/text-utils.js +0 -21
  241. package/cjs/packages/vuu-utils/src/text-utils.js.map +0 -1
  242. package/cjs/packages/vuu-utils/src/theme-utils.js +0 -36
  243. package/cjs/packages/vuu-utils/src/theme-utils.js.map +0 -1
  244. package/cjs/packages/vuu-utils/src/tree-utils.js +0 -114
  245. package/cjs/packages/vuu-utils/src/tree-utils.js.map +0 -1
  246. package/cjs/packages/vuu-utils/src/ts-utils.js +0 -12
  247. package/cjs/packages/vuu-utils/src/ts-utils.js.map +0 -1
  248. package/cjs/packages/vuu-utils/src/typeahead-utils.js +0 -6
  249. package/cjs/packages/vuu-utils/src/typeahead-utils.js.map +0 -1
  250. package/cjs/packages/vuu-utils/src/url-utils.js +0 -21
  251. package/cjs/packages/vuu-utils/src/url-utils.js.map +0 -1
  252. package/cjs/packages/vuu-utils/src/useId.js +0 -9
  253. package/cjs/packages/vuu-utils/src/useId.js.map +0 -1
  254. package/cjs/packages/vuu-utils/src/useLayoutEffectSkipFirst.js +0 -17
  255. package/cjs/packages/vuu-utils/src/useLayoutEffectSkipFirst.js.map +0 -1
  256. package/cjs/packages/vuu-utils/src/useResizeObserver.js +0 -134
  257. package/cjs/packages/vuu-utils/src/useResizeObserver.js.map +0 -1
  258. package/cjs/packages/vuu-utils/src/useStateRef.js +0 -23
  259. package/cjs/packages/vuu-utils/src/useStateRef.js.map +0 -1
  260. package/esm/node_modules/@dnd-kit/abstract/index.js +0 -1472
  261. package/esm/node_modules/@dnd-kit/abstract/index.js.map +0 -1
  262. package/esm/node_modules/@dnd-kit/abstract/modifiers.js +0 -82
  263. package/esm/node_modules/@dnd-kit/abstract/modifiers.js.map +0 -1
  264. package/esm/node_modules/@dnd-kit/collision/dist/index.js +0 -86
  265. package/esm/node_modules/@dnd-kit/collision/dist/index.js.map +0 -1
  266. package/esm/node_modules/@dnd-kit/dom/index.js +0 -1977
  267. package/esm/node_modules/@dnd-kit/dom/index.js.map +0 -1
  268. package/esm/node_modules/@dnd-kit/dom/sortable.js +0 -822
  269. package/esm/node_modules/@dnd-kit/dom/sortable.js.map +0 -1
  270. package/esm/node_modules/@dnd-kit/dom/utilities.js +0 -1344
  271. package/esm/node_modules/@dnd-kit/dom/utilities.js.map +0 -1
  272. package/esm/node_modules/@dnd-kit/geometry/dist/index.js +0 -303
  273. package/esm/node_modules/@dnd-kit/geometry/dist/index.js.map +0 -1
  274. package/esm/node_modules/@dnd-kit/react/hooks.js +0 -126
  275. package/esm/node_modules/@dnd-kit/react/hooks.js.map +0 -1
  276. package/esm/node_modules/@dnd-kit/react/index.js +0 -392
  277. package/esm/node_modules/@dnd-kit/react/index.js.map +0 -1
  278. package/esm/node_modules/@dnd-kit/react/sortable.js +0 -175
  279. package/esm/node_modules/@dnd-kit/react/sortable.js.map +0 -1
  280. package/esm/node_modules/@dnd-kit/react/utilities.js +0 -17
  281. package/esm/node_modules/@dnd-kit/react/utilities.js.map +0 -1
  282. package/esm/node_modules/@dnd-kit/state/dist/index.js +0 -266
  283. package/esm/node_modules/@dnd-kit/state/dist/index.js.map +0 -1
  284. package/esm/node_modules/@preact/signals-core/dist/signals-core.js +0 -4
  285. package/esm/node_modules/@preact/signals-core/dist/signals-core.js.map +0 -1
  286. package/esm/packages/vuu-utils/src/Clock.js +0 -60
  287. package/esm/packages/vuu-utils/src/Clock.js.map +0 -1
  288. package/esm/packages/vuu-utils/src/PageVisibilityObserver.js +0 -78
  289. package/esm/packages/vuu-utils/src/PageVisibilityObserver.js.map +0 -1
  290. package/esm/packages/vuu-utils/src/ScaledDecimal.js +0 -37
  291. package/esm/packages/vuu-utils/src/ScaledDecimal.js.map +0 -1
  292. package/esm/packages/vuu-utils/src/ShellContext.js +0 -10
  293. package/esm/packages/vuu-utils/src/ShellContext.js.map +0 -1
  294. package/esm/packages/vuu-utils/src/ThemeProvider.js +0 -78
  295. package/esm/packages/vuu-utils/src/ThemeProvider.js.map +0 -1
  296. package/esm/packages/vuu-utils/src/array-utils.js +0 -79
  297. package/esm/packages/vuu-utils/src/array-utils.js.map +0 -1
  298. package/esm/packages/vuu-utils/src/box-utils.js +0 -47
  299. package/esm/packages/vuu-utils/src/box-utils.js.map +0 -1
  300. package/esm/packages/vuu-utils/src/column-utils.js +0 -970
  301. package/esm/packages/vuu-utils/src/column-utils.js.map +0 -1
  302. package/esm/packages/vuu-utils/src/common-types.js +0 -13
  303. package/esm/packages/vuu-utils/src/common-types.js.map +0 -1
  304. package/esm/packages/vuu-utils/src/component-registry.js +0 -128
  305. package/esm/packages/vuu-utils/src/component-registry.js.map +0 -1
  306. package/esm/packages/vuu-utils/src/context-definitions/DataContext.js +0 -18
  307. package/esm/packages/vuu-utils/src/context-definitions/DataContext.js.map +0 -1
  308. package/esm/packages/vuu-utils/src/context-definitions/DataProvider.js +0 -16
  309. package/esm/packages/vuu-utils/src/context-definitions/DataProvider.js.map +0 -1
  310. package/esm/packages/vuu-utils/src/context-definitions/DataSourceProvider.js +0 -29
  311. package/esm/packages/vuu-utils/src/context-definitions/DataSourceProvider.js.map +0 -1
  312. package/esm/packages/vuu-utils/src/context-definitions/WorkspaceContext.js +0 -17
  313. package/esm/packages/vuu-utils/src/context-definitions/WorkspaceContext.js.map +0 -1
  314. package/esm/packages/vuu-utils/src/cookie-utils.js +0 -19
  315. package/esm/packages/vuu-utils/src/cookie-utils.js.map +0 -1
  316. package/esm/packages/vuu-utils/src/css-utils.js +0 -7
  317. package/esm/packages/vuu-utils/src/css-utils.js.map +0 -1
  318. package/esm/packages/vuu-utils/src/data-editing/DataEditingProvider.js +0 -25
  319. package/esm/packages/vuu-utils/src/data-editing/DataEditingProvider.js.map +0 -1
  320. package/esm/packages/vuu-utils/src/data-editing/EditButtons.js +0 -32
  321. package/esm/packages/vuu-utils/src/data-editing/EditButtons.js.map +0 -1
  322. package/esm/packages/vuu-utils/src/data-editing/EditSession.js +0 -201
  323. package/esm/packages/vuu-utils/src/data-editing/EditSession.js.map +0 -1
  324. package/esm/packages/vuu-utils/src/data-editing/edit-utils.js +0 -34
  325. package/esm/packages/vuu-utils/src/data-editing/edit-utils.js.map +0 -1
  326. package/esm/packages/vuu-utils/src/data-editing/useEditableTable.js +0 -79
  327. package/esm/packages/vuu-utils/src/data-editing/useEditableTable.js.map +0 -1
  328. package/esm/packages/vuu-utils/src/data-utils.js +0 -82
  329. package/esm/packages/vuu-utils/src/data-utils.js.map +0 -1
  330. package/esm/packages/vuu-utils/src/datasource/BaseDataSource.js +0 -314
  331. package/esm/packages/vuu-utils/src/datasource/BaseDataSource.js.map +0 -1
  332. package/esm/packages/vuu-utils/src/datasource/datasource-action-utils.js +0 -8
  333. package/esm/packages/vuu-utils/src/datasource/datasource-action-utils.js.map +0 -1
  334. package/esm/packages/vuu-utils/src/datasource/datasource-filter-utils.js +0 -38
  335. package/esm/packages/vuu-utils/src/datasource/datasource-filter-utils.js.map +0 -1
  336. package/esm/packages/vuu-utils/src/datasource/datasource-utils.js +0 -193
  337. package/esm/packages/vuu-utils/src/datasource/datasource-utils.js.map +0 -1
  338. package/esm/packages/vuu-utils/src/date/date-utils.js +0 -121
  339. package/esm/packages/vuu-utils/src/date/date-utils.js.map +0 -1
  340. package/esm/packages/vuu-utils/src/date/dateTimePattern.js +0 -22
  341. package/esm/packages/vuu-utils/src/date/dateTimePattern.js.map +0 -1
  342. package/esm/packages/vuu-utils/src/date/formatter.js +0 -79
  343. package/esm/packages/vuu-utils/src/date/formatter.js.map +0 -1
  344. package/esm/packages/vuu-utils/src/date/types.js +0 -26
  345. package/esm/packages/vuu-utils/src/date/types.js.map +0 -1
  346. package/esm/packages/vuu-utils/src/debug-utils.js +0 -32
  347. package/esm/packages/vuu-utils/src/debug-utils.js.map +0 -1
  348. package/esm/packages/vuu-utils/src/event-emitter.js +0 -111
  349. package/esm/packages/vuu-utils/src/event-emitter.js.map +0 -1
  350. package/esm/packages/vuu-utils/src/feature-utils.js +0 -125
  351. package/esm/packages/vuu-utils/src/feature-utils.js.map +0 -1
  352. package/esm/packages/vuu-utils/src/filters/filter-utils.js +0 -159
  353. package/esm/packages/vuu-utils/src/filters/filter-utils.js.map +0 -1
  354. package/esm/packages/vuu-utils/src/filters/filterAsQuery.js +0 -65
  355. package/esm/packages/vuu-utils/src/filters/filterAsQuery.js.map +0 -1
  356. package/esm/packages/vuu-utils/src/form-utils.js +0 -110
  357. package/esm/packages/vuu-utils/src/form-utils.js.map +0 -1
  358. package/esm/packages/vuu-utils/src/formatting-utils.js +0 -93
  359. package/esm/packages/vuu-utils/src/formatting-utils.js.map +0 -1
  360. package/esm/packages/vuu-utils/src/getUniqueId.js +0 -4
  361. package/esm/packages/vuu-utils/src/getUniqueId.js.map +0 -1
  362. package/esm/packages/vuu-utils/src/group-utils.js +0 -23
  363. package/esm/packages/vuu-utils/src/group-utils.js.map +0 -1
  364. package/esm/packages/vuu-utils/src/html-utils.js +0 -145
  365. package/esm/packages/vuu-utils/src/html-utils.js.map +0 -1
  366. package/esm/packages/vuu-utils/src/index.js +0 -77
  367. package/esm/packages/vuu-utils/src/index.js.map +0 -1
  368. package/esm/packages/vuu-utils/src/input-utils.js +0 -7
  369. package/esm/packages/vuu-utils/src/input-utils.js.map +0 -1
  370. package/esm/packages/vuu-utils/src/invariant.js +0 -11
  371. package/esm/packages/vuu-utils/src/invariant.js.map +0 -1
  372. package/esm/packages/vuu-utils/src/itemToString.js +0 -21
  373. package/esm/packages/vuu-utils/src/itemToString.js.map +0 -1
  374. package/esm/packages/vuu-utils/src/json-utils.js +0 -103
  375. package/esm/packages/vuu-utils/src/json-utils.js.map +0 -1
  376. package/esm/packages/vuu-utils/src/keyboard-utils.js.map +0 -1
  377. package/esm/packages/vuu-utils/src/keyset.js +0 -70
  378. package/esm/packages/vuu-utils/src/keyset.js.map +0 -1
  379. package/esm/packages/vuu-utils/src/list-utils.js +0 -9
  380. package/esm/packages/vuu-utils/src/list-utils.js.map +0 -1
  381. package/esm/packages/vuu-utils/src/local-storage-utils.js +0 -30
  382. package/esm/packages/vuu-utils/src/local-storage-utils.js.map +0 -1
  383. package/esm/packages/vuu-utils/src/logging-utils.js +0 -61
  384. package/esm/packages/vuu-utils/src/logging-utils.js.map +0 -1
  385. package/esm/packages/vuu-utils/src/module-utils.js +0 -4
  386. package/esm/packages/vuu-utils/src/module-utils.js.map +0 -1
  387. package/esm/packages/vuu-utils/src/nanoid/index.js +0 -20
  388. package/esm/packages/vuu-utils/src/nanoid/index.js.map +0 -1
  389. package/esm/packages/vuu-utils/src/perf-utils.js +0 -32
  390. package/esm/packages/vuu-utils/src/perf-utils.js.map +0 -1
  391. package/esm/packages/vuu-utils/src/promise-utils.js +0 -40
  392. package/esm/packages/vuu-utils/src/promise-utils.js.map +0 -1
  393. package/esm/packages/vuu-utils/src/protocol-message-utils.js +0 -75
  394. package/esm/packages/vuu-utils/src/protocol-message-utils.js.map +0 -1
  395. package/esm/packages/vuu-utils/src/range-utils.js +0 -108
  396. package/esm/packages/vuu-utils/src/range-utils.js.map +0 -1
  397. package/esm/packages/vuu-utils/src/react-utils.js +0 -66
  398. package/esm/packages/vuu-utils/src/react-utils.js.map +0 -1
  399. package/esm/packages/vuu-utils/src/round-decimal.js +0 -127
  400. package/esm/packages/vuu-utils/src/round-decimal.js.map +0 -1
  401. package/esm/packages/vuu-utils/src/row-utils.js +0 -54
  402. package/esm/packages/vuu-utils/src/row-utils.js.map +0 -1
  403. package/esm/packages/vuu-utils/src/selection-utils.js +0 -31
  404. package/esm/packages/vuu-utils/src/selection-utils.js.map +0 -1
  405. package/esm/packages/vuu-utils/src/shell-layout-types.js +0 -11
  406. package/esm/packages/vuu-utils/src/shell-layout-types.js.map +0 -1
  407. package/esm/packages/vuu-utils/src/sort-utils.js +0 -73
  408. package/esm/packages/vuu-utils/src/sort-utils.js.map +0 -1
  409. package/esm/packages/vuu-utils/src/table-schema-utils.js +0 -11
  410. package/esm/packages/vuu-utils/src/table-schema-utils.js.map +0 -1
  411. package/esm/packages/vuu-utils/src/text-utils.js +0 -18
  412. package/esm/packages/vuu-utils/src/text-utils.js.map +0 -1
  413. package/esm/packages/vuu-utils/src/theme-utils.js +0 -34
  414. package/esm/packages/vuu-utils/src/theme-utils.js.map +0 -1
  415. package/esm/packages/vuu-utils/src/tree-utils.js +0 -108
  416. package/esm/packages/vuu-utils/src/tree-utils.js.map +0 -1
  417. package/esm/packages/vuu-utils/src/ts-utils.js +0 -8
  418. package/esm/packages/vuu-utils/src/ts-utils.js.map +0 -1
  419. package/esm/packages/vuu-utils/src/typeahead-utils.js +0 -4
  420. package/esm/packages/vuu-utils/src/typeahead-utils.js.map +0 -1
  421. package/esm/packages/vuu-utils/src/url-utils.js +0 -18
  422. package/esm/packages/vuu-utils/src/url-utils.js.map +0 -1
  423. package/esm/packages/vuu-utils/src/useId.js +0 -7
  424. package/esm/packages/vuu-utils/src/useId.js.map +0 -1
  425. package/esm/packages/vuu-utils/src/useLayoutEffectSkipFirst.js +0 -15
  426. package/esm/packages/vuu-utils/src/useLayoutEffectSkipFirst.js.map +0 -1
  427. package/esm/packages/vuu-utils/src/useResizeObserver.js +0 -130
  428. package/esm/packages/vuu-utils/src/useResizeObserver.js.map +0 -1
  429. package/esm/packages/vuu-utils/src/useStateRef.js +0 -21
  430. package/esm/packages/vuu-utils/src/useStateRef.js.map +0 -1
@@ -1,114 +0,0 @@
1
- 'use strict';
2
-
3
- var columnUtils = require('./column-utils.js');
4
-
5
- const { COUNT, DEPTH, IDX, KEY } = columnUtils.metadataKeys;
6
- const timestamp = 0;
7
- const isNew = false;
8
- const treeToDataSourceRows = (treeSourceNodes, iconProvider) => {
9
- const columns = [];
10
- columns.push(
11
- {
12
- hidden: true,
13
- name: "nodeData",
14
- type: "json"
15
- },
16
- {
17
- getIcon: iconProvider?.getIcon,
18
- name: "Level 1",
19
- type: "string"
20
- },
21
- {
22
- getIcon: iconProvider?.getIcon,
23
- name: "Level 2",
24
- type: "string"
25
- }
26
- );
27
- const rows = [];
28
- addChildValues(rows, treeSourceNodes, columns, iconProvider);
29
- return [columns, rows];
30
- };
31
- const addChildValues = (rows, treeSourceNodes, cols, iconProvider, index = { value: 0 }, keyBase = "$root", depth = 1) => {
32
- let leafCount = 0;
33
- let rowCount = 0;
34
- if (depth === cols.length - 1) {
35
- cols.push({
36
- getIcon: iconProvider?.getIcon,
37
- name: `Level ${cols.length}`,
38
- type: "string"
39
- });
40
- }
41
- for (let i = 0; i < treeSourceNodes.length; i++, index.value += 1) {
42
- const {
43
- childNodes,
44
- icon,
45
- label,
46
- nodeData
47
- /*, tags */
48
- } = treeSourceNodes[i];
49
- const blanks = Array(depth - 1).fill("");
50
- const fullKey = `${keyBase}|${label}`;
51
- const row = [index.value, index.value, false, false, depth, 0, fullKey, 0, timestamp, isNew, nodeData, ...blanks, label];
52
- if (icon) {
53
- iconProvider?.setIcon(fullKey, icon);
54
- }
55
- rows.push(row);
56
- rowCount += 1;
57
- if (childNodes && childNodes.length > 0) {
58
- const [nestedLeafCount, nestedRowCount] = addChildValues(
59
- rows,
60
- childNodes,
61
- cols,
62
- iconProvider,
63
- { value: index.value + 1 },
64
- fullKey,
65
- depth + 1
66
- );
67
- row[COUNT] = nestedLeafCount;
68
- leafCount += nestedLeafCount;
69
- rowCount += nestedRowCount;
70
- index.value += nestedRowCount;
71
- } else {
72
- leafCount += 1;
73
- }
74
- }
75
- return [leafCount, rowCount];
76
- };
77
- const lastPathSegment = (path, separator = "/") => {
78
- const root = path.endsWith(separator) ? path.slice(0, -1) : path;
79
- return root.slice(root.lastIndexOf(separator) + 1);
80
- };
81
- const dropLastPathSegment = (path, separator = "/") => {
82
- return path.slice(0, path.lastIndexOf(separator));
83
- };
84
- const getParentRow = (rows, row) => {
85
- const { [IDX]: idx, [DEPTH]: depth } = row;
86
- for (let i = idx - 1; i >= 0; i--) {
87
- const nextRow = rows[i];
88
- if (nextRow[DEPTH] === depth - 1) {
89
- return nextRow;
90
- }
91
- }
92
- };
93
- const rowsAreSiblings = (key1, key2) => dropLastPathSegment(key1, "|") === dropLastPathSegment(key2, "|");
94
- const missingAncestor = (row, previousRow) => {
95
- if (previousRow) {
96
- const prevKey = previousRow[KEY];
97
- const key = row[KEY];
98
- if (key.startsWith(prevKey)) {
99
- return false;
100
- } else if (!rowsAreSiblings(prevKey, key)) {
101
- return true;
102
- }
103
- } else if (row[DEPTH] > 1) {
104
- return true;
105
- }
106
- return false;
107
- };
108
-
109
- exports.dropLastPathSegment = dropLastPathSegment;
110
- exports.getParentRow = getParentRow;
111
- exports.lastPathSegment = lastPathSegment;
112
- exports.missingAncestor = missingAncestor;
113
- exports.treeToDataSourceRows = treeToDataSourceRows;
114
- //# sourceMappingURL=tree-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tree-utils.js","sources":["../../../../../../packages/vuu-utils/src/tree-utils.ts"],"sourcesContent":["import { TreeSourceNode } from \"./tree-types\";\nimport { ColumnDescriptor } from \"@vuu-ui/vuu-table-types\";\nimport { DataSourceRow } from \"@vuu-ui/vuu-data-types\";\nimport { metadataKeys } from \"./column-utils\";\nimport { IconProvider } from \"@vuu-ui/vuu-data-local/src/tree-data-source/IconProvider\";\n\nconst { COUNT, DEPTH, IDX, KEY } = metadataKeys;\n\ntype Index = { value: number };\n\nconst timestamp = 0;\nconst isNew = false;\n\nexport const treeToDataSourceRows = (\n treeSourceNodes: TreeSourceNode[],\n iconProvider?: IconProvider,\n): [ColumnDescriptor[], DataSourceRow[]] => {\n const columns: ColumnDescriptor[] = [];\n\n columns.push(\n {\n hidden: true,\n name: \"nodeData\",\n type: \"json\",\n },\n {\n getIcon: iconProvider?.getIcon,\n name: \"Level 1\",\n type: \"string\",\n },\n {\n getIcon: iconProvider?.getIcon,\n name: \"Level 2\",\n type: \"string\",\n },\n );\n\n const rows: DataSourceRow[] = [];\n\n addChildValues(rows, treeSourceNodes, columns, iconProvider);\n return [columns, rows];\n};\n\nconst addChildValues = (\n rows: DataSourceRow[],\n treeSourceNodes: TreeSourceNode[],\n cols: ColumnDescriptor[],\n iconProvider: IconProvider | undefined,\n index: Index = { value: 0 },\n keyBase = \"$root\",\n depth = 1,\n): [number, number] => {\n let leafCount = 0;\n let rowCount = 0;\n if (depth === cols.length - 1) {\n cols.push({\n getIcon: iconProvider?.getIcon,\n name: `Level ${cols.length}`,\n type: \"string\",\n });\n }\n for (let i = 0; i < treeSourceNodes.length; i++, index.value += 1) {\n const { childNodes, icon, label, nodeData /*, tags */ } =\n treeSourceNodes[i];\n const blanks = Array(depth - 1).fill(\"\");\n const fullKey = `${keyBase}|${label}`;\n\n // we create all nodes as non-leaf in a TreeTable, even those with no childNodes\n // prettier-ignore\n const row = [index.value, index.value, false, false, depth, 0, fullKey, 0, timestamp, isNew, nodeData, ...blanks, label ] as DataSourceRow;\n if (icon) {\n iconProvider?.setIcon(fullKey, icon);\n }\n rows.push(row);\n rowCount += 1;\n\n if (childNodes && childNodes.length > 0) {\n const [nestedLeafCount, nestedRowCount] = addChildValues(\n rows,\n childNodes,\n cols,\n iconProvider,\n { value: index.value + 1 },\n fullKey,\n depth + 1,\n );\n row[COUNT] = nestedLeafCount;\n leafCount += nestedLeafCount;\n rowCount += nestedRowCount;\n index.value += nestedRowCount;\n } else {\n leafCount += 1;\n }\n }\n\n return [leafCount, rowCount];\n};\n\nexport const lastPathSegment = (path: string, separator = \"/\") => {\n const root = path.endsWith(separator) ? path.slice(0, -1) : path;\n return root.slice(root.lastIndexOf(separator) + 1);\n};\n\nexport const dropLastPathSegment = (path: string, separator = \"/\") => {\n return path.slice(0, path.lastIndexOf(separator));\n};\n\nexport const getParentRow = (rows: DataSourceRow[], row: DataSourceRow) => {\n const { [IDX]: idx, [DEPTH]: depth } = row;\n for (let i = idx - 1; i >= 0; i--) {\n const nextRow = rows[i];\n if (nextRow[DEPTH] === depth - 1) {\n return nextRow;\n }\n }\n};\n\nconst rowsAreSiblings = (key1: string, key2: string) =>\n dropLastPathSegment(key1, \"|\") === dropLastPathSegment(key2, \"|\");\n\nexport const missingAncestor = (\n row: DataSourceRow,\n previousRow?: DataSourceRow,\n) => {\n if (previousRow) {\n const prevKey = previousRow[KEY];\n const key = row[KEY];\n\n if (key.startsWith(prevKey)) {\n return false;\n } else if (!rowsAreSiblings(prevKey, key)) {\n return true;\n }\n } else if (row[DEPTH] > 1) {\n return true;\n }\n\n return false;\n};\n"],"names":["metadataKeys"],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- 'use strict';
2
-
3
- function isNotNullOrUndefined(value) {
4
- return value !== void 0 && value !== null;
5
- }
6
- const isObject = (o) => typeof o === "object" && o !== null;
7
- const elementImplementsJSONSerialization = (element) => typeof element.type.toJSON === "function";
8
-
9
- exports.elementImplementsJSONSerialization = elementImplementsJSONSerialization;
10
- exports.isNotNullOrUndefined = isNotNullOrUndefined;
11
- exports.isObject = isObject;
12
- //# sourceMappingURL=ts-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ts-utils.js","sources":["../../../../../../packages/vuu-utils/src/ts-utils.ts"],"sourcesContent":["import { JSXElementConstructor, ReactElement } from \"react\";\nimport { LayoutJSON } from \"./json-types\";\n\nexport function isNotNullOrUndefined<T>(\n value: T | undefined | null,\n): value is NonNullable<T> {\n return value !== undefined && value !== null;\n}\n\nexport const isObject = (o: unknown): o is object =>\n typeof o === \"object\" && o !== null;\n\nexport type OptionalProperty<T, K extends keyof T> = Omit<T, K> &\n Partial<Pick<T, K>>;\n\nexport type ValueOf<T> = T[keyof T];\n\n/**\n * test whether a given react element implements a custom toJSON\n * serialisation (static) method.\n */\ntype JsonEnabledJSXElementConstructor<P> = JSXElementConstructor<P> & {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n toJSON: (el: ReactElement) => LayoutJSON<any>;\n};\n\ninterface ReactElementWithJSON<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n P = any,\n T extends // eslint-disable-next-line @typescript-eslint/no-explicit-any\n JsonEnabledJSXElementConstructor<any> = JsonEnabledJSXElementConstructor<any>,\n> {\n type: T;\n props: P;\n key: string | null;\n}\nexport const elementImplementsJSONSerialization = (\n element: ReactElement,\n): element is ReactElementWithJSON =>\n typeof (element.type as JsonEnabledJSXElementConstructor<unknown>).toJSON ===\n \"function\";\n"],"names":[],"mappings":";;AAGO,SAAS,qBACd,KACyB,EAAA;AACzB,EAAO,OAAA,KAAA,KAAU,UAAa,KAAU,KAAA,IAAA;AAC1C;AAEO,MAAM,WAAW,CAAC,CAAA,KACvB,OAAO,CAAA,KAAM,YAAY,CAAM,KAAA;AA0B1B,MAAM,qCAAqC,CAChD,OAAA,KAEA,OAAQ,OAAA,CAAQ,KAAmD,MACnE,KAAA;;;;;;"}
@@ -1,6 +0,0 @@
1
- 'use strict';
2
-
3
- const NO_DATA_MATCH = ["No matching data"];
4
-
5
- exports.NO_DATA_MATCH = NO_DATA_MATCH;
6
- //# sourceMappingURL=typeahead-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"typeahead-utils.js","sources":["../../../../../../packages/vuu-utils/src/typeahead-utils.ts"],"sourcesContent":["export const NO_DATA_MATCH = [\"No matching data\"];\n"],"names":[],"mappings":";;AAAa,MAAA,aAAA,GAAgB,CAAC,kBAAkB;;;;"}
@@ -1,21 +0,0 @@
1
- 'use strict';
2
-
3
- function getUrlParameter(paramName, defaultValue) {
4
- const url = new URL(document.location.href);
5
- const parameter = url.searchParams.get(paramName);
6
- if (parameter) {
7
- return parameter;
8
- }
9
- const hashParams = url.hash;
10
- const regex = new RegExp(`${paramName}=([a-zA-Z]*)`);
11
- const result = regex.exec(hashParams);
12
- if (result) {
13
- return result[1];
14
- }
15
- return defaultValue;
16
- }
17
- const hasUrlParameter = (paramName) => new URL(document.location.href).searchParams.has(paramName);
18
-
19
- exports.getUrlParameter = getUrlParameter;
20
- exports.hasUrlParameter = hasUrlParameter;
21
- //# sourceMappingURL=url-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"url-utils.js","sources":["../../../../../../packages/vuu-utils/src/url-utils.ts"],"sourcesContent":["export function getUrlParameter(paramName: string): string | undefined;\nexport function getUrlParameter(\n paramName: string,\n defaultValue: string,\n): string;\nexport function getUrlParameter(paramName: string, defaultValue?: string) {\n const url = new URL(document.location.href);\n const parameter = url.searchParams.get(paramName);\n if (parameter) {\n return parameter;\n }\n const hashParams = url.hash;\n const regex = new RegExp(`${paramName}=([a-zA-Z]*)`);\n const result = regex.exec(hashParams);\n if (result) {\n return result[1];\n }\n return defaultValue;\n}\n\nexport const hasUrlParameter = (paramName: string) =>\n new URL(document.location.href).searchParams.has(paramName);\n"],"names":[],"mappings":";;AAKgB,SAAA,eAAA,CAAgB,WAAmB,YAAuB,EAAA;AACxE,EAAA,MAAM,GAAM,GAAA,IAAI,GAAI,CAAA,QAAA,CAAS,SAAS,IAAI,CAAA;AAC1C,EAAA,MAAM,SAAY,GAAA,GAAA,CAAI,YAAa,CAAA,GAAA,CAAI,SAAS,CAAA;AAChD,EAAA,IAAI,SAAW,EAAA;AACb,IAAO,OAAA,SAAA;AAAA;AAET,EAAA,MAAM,aAAa,GAAI,CAAA,IAAA;AACvB,EAAA,MAAM,KAAQ,GAAA,IAAI,MAAO,CAAA,CAAA,EAAG,SAAS,CAAc,YAAA,CAAA,CAAA;AACnD,EAAM,MAAA,MAAA,GAAS,KAAM,CAAA,IAAA,CAAK,UAAU,CAAA;AACpC,EAAA,IAAI,MAAQ,EAAA;AACV,IAAA,OAAO,OAAO,CAAC,CAAA;AAAA;AAEjB,EAAO,OAAA,YAAA;AACT;AAEa,MAAA,eAAA,GAAkB,CAAC,SAAA,KAC9B,IAAI,GAAA,CAAI,QAAS,CAAA,QAAA,CAAS,IAAI,CAAA,CAAE,YAAa,CAAA,GAAA,CAAI,SAAS;;;;;"}
@@ -1,9 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
-
5
- let vuuComponentIdCount = 0;
6
- const useId = (id) => React.useMemo(() => id ?? `vuu-${++vuuComponentIdCount}`, [id]);
7
-
8
- exports.useId = useId;
9
- //# sourceMappingURL=useId.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useId.js","sources":["../../../../../../packages/vuu-utils/src/useId.ts"],"sourcesContent":["import { useMemo } from \"react\";\n\nlet vuuComponentIdCount = 0;\n\nexport const useId = (id?: string) =>\n useMemo(() => id ?? `vuu-${++vuuComponentIdCount}`, [id]);\n"],"names":["useMemo"],"mappings":";;;;AAEA,IAAI,mBAAsB,GAAA,CAAA;AAEnB,MAAM,KAAQ,GAAA,CAAC,EACpB,KAAAA,aAAA,CAAQ,MAAM,EAAA,IAAM,CAAO,IAAA,EAAA,EAAE,mBAAmB,CAAA,CAAA,EAAI,CAAC,EAAE,CAAC;;;;"}
@@ -1,17 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
-
5
- const useLayoutEffectSkipFirst = (func, deps) => {
6
- const goodToGo = React.useRef(false);
7
- React.useLayoutEffect(() => {
8
- if (goodToGo.current) {
9
- func();
10
- } else {
11
- goodToGo.current = true;
12
- }
13
- }, deps);
14
- };
15
-
16
- exports.useLayoutEffectSkipFirst = useLayoutEffectSkipFirst;
17
- //# sourceMappingURL=useLayoutEffectSkipFirst.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useLayoutEffectSkipFirst.js","sources":["../../../../../../packages/vuu-utils/src/useLayoutEffectSkipFirst.ts"],"sourcesContent":["import { DependencyList, EffectCallback, useLayoutEffect, useRef } from \"react\";\n\nexport const useLayoutEffectSkipFirst = (\n func: EffectCallback,\n deps: DependencyList\n) => {\n const goodToGo = useRef(false);\n useLayoutEffect(() => {\n if (goodToGo.current) {\n func();\n } else {\n goodToGo.current = true;\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n};\n"],"names":["useRef","useLayoutEffect"],"mappings":";;;;AAEa,MAAA,wBAAA,GAA2B,CACtC,IAAA,EACA,IACG,KAAA;AACH,EAAM,MAAA,QAAA,GAAWA,aAAO,KAAK,CAAA;AAC7B,EAAAC,qBAAA,CAAgB,MAAM;AACpB,IAAA,IAAI,SAAS,OAAS,EAAA;AACpB,MAAK,IAAA,EAAA;AAAA,KACA,MAAA;AACL,MAAA,QAAA,CAAS,OAAU,GAAA,IAAA;AAAA;AACrB,KAEC,IAAI,CAAA;AACT;;;;"}
@@ -1,134 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
-
5
- const WidthHeight = ["height", "width"];
6
- const WidthOnly = ["width"];
7
- const observedMap = /* @__PURE__ */ new Map();
8
- const getTargetSize = (element, size, dimension) => {
9
- switch (dimension) {
10
- case "height":
11
- return size.height;
12
- case "clientHeight":
13
- return Math.floor(element.clientHeight);
14
- case "clientWidth":
15
- return Math.floor(element.clientWidth);
16
- case "contentHeight":
17
- return size.contentHeight;
18
- case "contentWidth":
19
- return size.contentWidth;
20
- case "scrollHeight":
21
- return Math.ceil(Math.floor(element.scrollHeight));
22
- case "scrollWidth":
23
- return Math.ceil(Math.floor(element.scrollWidth));
24
- case "width":
25
- return size.width;
26
- default:
27
- return 0;
28
- }
29
- };
30
- const resizeObserver = new ResizeObserver((entries) => {
31
- for (const entry of entries) {
32
- const { target, borderBoxSize, contentBoxSize } = entry;
33
- const observedTarget = observedMap.get(target);
34
- if (observedTarget) {
35
- const [{ blockSize: height, inlineSize: width }] = borderBoxSize;
36
- const [{ blockSize: contentHeight, inlineSize: contentWidth }] = contentBoxSize;
37
- const { onResize, measurements } = observedTarget;
38
- let sizeChanged = false;
39
- for (const [dimension, size] of Object.entries(measurements)) {
40
- const newSize = getTargetSize(
41
- target,
42
- { height, width, contentHeight, contentWidth },
43
- dimension
44
- );
45
- if (newSize !== size) {
46
- sizeChanged = true;
47
- measurements[dimension] = newSize;
48
- }
49
- }
50
- if (sizeChanged) {
51
- onResize && onResize(measurements);
52
- }
53
- }
54
- }
55
- });
56
- function useResizeObserver(ref, dimensions, onResize, reportInitialSize = false) {
57
- const dimensionsRef = React.useRef(dimensions);
58
- const measure = React.useCallback((target) => {
59
- const { width, height } = target.getBoundingClientRect();
60
- const { clientWidth: contentWidth, clientHeight: contentHeight } = target;
61
- const flooredHeight = Math.floor(height);
62
- const flooredWidth = Math.floor(width);
63
- return dimensionsRef.current.reduce(
64
- (map, dim) => {
65
- map[dim] = getTargetSize(
66
- target,
67
- {
68
- width: flooredWidth,
69
- height: flooredHeight,
70
- contentHeight,
71
- contentWidth
72
- },
73
- dim
74
- );
75
- return map;
76
- },
77
- {}
78
- );
79
- }, []);
80
- React.useEffect(() => {
81
- const target = ref.current;
82
- async function registerObserver() {
83
- observedMap.set(target, { measurements: {} });
84
- const observedTarget = observedMap.get(target);
85
- if (observedTarget) {
86
- const measurements = measure(target);
87
- observedTarget.measurements = measurements;
88
- resizeObserver.observe(target);
89
- if (reportInitialSize) {
90
- onResize(measurements);
91
- }
92
- } else {
93
- console.log(
94
- `%cuseResizeObserver an target expected to be under observation wa snot found. This warrants investigation`,
95
- "font-weight:bold; color:red;"
96
- );
97
- }
98
- }
99
- if (target) {
100
- if (observedMap.has(target)) {
101
- console.log(
102
- `useResizeObserver attemping to observe same element twice`,
103
- {
104
- target
105
- }
106
- );
107
- }
108
- registerObserver();
109
- }
110
- return () => {
111
- if (target && observedMap.has(target)) {
112
- resizeObserver.unobserve(target);
113
- observedMap.delete(target);
114
- }
115
- };
116
- }, [measure, ref]);
117
- React.useEffect(() => {
118
- const target = ref.current;
119
- const record = observedMap.get(target);
120
- if (record) {
121
- if (dimensionsRef.current !== dimensions) {
122
- dimensionsRef.current = dimensions;
123
- const measurements = measure(target);
124
- record.measurements = measurements;
125
- }
126
- record.onResize = onResize;
127
- }
128
- }, [dimensions, measure, ref, onResize]);
129
- }
130
-
131
- exports.WidthHeight = WidthHeight;
132
- exports.WidthOnly = WidthOnly;
133
- exports.useResizeObserver = useResizeObserver;
134
- //# sourceMappingURL=useResizeObserver.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useResizeObserver.js","sources":["../../../../../../packages/vuu-utils/src/useResizeObserver.ts"],"sourcesContent":["import { RefObject, useCallback, useEffect, useRef } from \"react\";\n\nexport const WidthHeight = [\"height\", \"width\"];\nexport const WidthOnly = [\"width\"];\n\nexport type measurements<T = string | number> = {\n height?: T;\n clientHeight?: number;\n clientWidth?: number;\n contentHeight?: number;\n contentWidth?: number;\n scrollHeight?: number;\n scrollWidth?: number;\n width?: T;\n};\ntype measuredDimension = keyof measurements<number>;\n\nexport type ResizeHandler = (measurements: measurements<number>) => void;\n\ntype observedDetails = {\n onResize?: ResizeHandler;\n measurements: measurements<number>;\n};\nconst observedMap = new Map<HTMLElement, observedDetails>();\n\nconst getTargetSize = (\n element: HTMLElement,\n size: {\n height: number;\n width: number;\n contentHeight: number;\n contentWidth: number;\n },\n dimension: measuredDimension,\n): number => {\n switch (dimension) {\n case \"height\":\n return size.height;\n case \"clientHeight\":\n return Math.floor(element.clientHeight);\n case \"clientWidth\":\n return Math.floor(element.clientWidth);\n case \"contentHeight\":\n return size.contentHeight;\n case \"contentWidth\":\n return size.contentWidth;\n case \"scrollHeight\":\n return Math.ceil(Math.floor(element.scrollHeight));\n case \"scrollWidth\":\n return Math.ceil(Math.floor(element.scrollWidth));\n case \"width\":\n return size.width;\n default:\n return 0;\n }\n};\n\n// TODO should we make this create-on-demand\nconst resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n for (const entry of entries) {\n const { target, borderBoxSize, contentBoxSize } = entry;\n const observedTarget = observedMap.get(target as HTMLElement);\n if (observedTarget) {\n const [{ blockSize: height, inlineSize: width }] = borderBoxSize;\n const [{ blockSize: contentHeight, inlineSize: contentWidth }] =\n contentBoxSize;\n const { onResize, measurements } = observedTarget;\n let sizeChanged = false;\n for (const [dimension, size] of Object.entries(measurements)) {\n const newSize = getTargetSize(\n target as HTMLElement,\n { height, width, contentHeight, contentWidth },\n dimension as measuredDimension,\n );\n\n if (newSize !== size) {\n sizeChanged = true;\n measurements[dimension as measuredDimension] = newSize;\n }\n }\n if (sizeChanged) {\n // TODO only return measured sizes\n onResize && onResize(measurements);\n }\n }\n }\n});\n\n// TODO use an optional lag (default to false) to ask to fire onResize\n// with initial size\nexport function useResizeObserver(\n ref: RefObject<Element | HTMLElement | null>,\n dimensions: readonly string[],\n onResize: ResizeHandler,\n reportInitialSize = false,\n) {\n const dimensionsRef = useRef(dimensions);\n\n const measure = useCallback((target: HTMLElement): measurements<number> => {\n const { width, height } = target.getBoundingClientRect();\n const { clientWidth: contentWidth, clientHeight: contentHeight } = target;\n const flooredHeight = Math.floor(height);\n const flooredWidth = Math.floor(width);\n\n return dimensionsRef.current.reduce(\n (map: { [key: string]: number }, dim) => {\n map[dim] = getTargetSize(\n target,\n {\n width: flooredWidth,\n height: flooredHeight,\n contentHeight,\n contentWidth,\n },\n dim as measuredDimension,\n );\n return map;\n },\n {},\n );\n }, []);\n\n // TODO use ref to store resizeHandler here\n // resize handler registered with REsizeObserver will never change\n // use ref to store user onResize callback here\n // resizeHandler will call user callback.current\n\n // Keep this effect separate in case user inadvertently passes different\n // dimensions or callback instance each time - we only ever want to\n // initiate new observation when ref changes.\n useEffect(() => {\n const target = ref.current as HTMLElement;\n async function registerObserver() {\n // Create the map entry immediately. useEffect may fire below\n // before fonts are ready and attempt to update entry\n observedMap.set(target, { measurements: {} as measurements<number> });\n // await document.fonts.ready;\n const observedTarget = observedMap.get(target);\n if (observedTarget) {\n const measurements = measure(target);\n observedTarget.measurements = measurements;\n resizeObserver.observe(target);\n if (reportInitialSize) {\n onResize(measurements);\n }\n } else {\n console.log(\n `%cuseResizeObserver an target expected to be under observation wa snot found. This warrants investigation`,\n \"font-weight:bold; color:red;\",\n );\n }\n }\n\n if (target) {\n // TODO might we want multiple callers to attach a listener to the same element ?\n if (observedMap.has(target)) {\n console.log(\n `useResizeObserver attemping to observe same element twice`,\n {\n target,\n },\n );\n // throw Error(\n // \"useResizeObserver attemping to observe same element twice\"\n // );\n }\n // TODO set a pending entry on map\n registerObserver();\n }\n return () => {\n if (target && observedMap.has(target)) {\n resizeObserver.unobserve(target);\n observedMap.delete(target);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [measure, ref]);\n\n useEffect(() => {\n const target = ref.current as HTMLElement;\n const record = observedMap.get(target);\n if (record) {\n if (dimensionsRef.current !== dimensions) {\n dimensionsRef.current = dimensions;\n const measurements = measure(target);\n record.measurements = measurements;\n }\n // Might not have changed, but no harm ...\n record.onResize = onResize;\n }\n }, [dimensions, measure, ref, onResize]);\n}\n"],"names":["useRef","useCallback","useEffect"],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- 'use strict';
2
-
3
- var React = require('react');
4
-
5
- const isSimpleStateValue = (arg) => typeof arg !== "function";
6
- const useStateRef = (initialValue) => {
7
- const [value, _setValue] = React.useState(initialValue);
8
- const ref = React.useRef(value);
9
- const setValue = React.useCallback((arg) => {
10
- if (isSimpleStateValue(arg)) {
11
- ref.current = arg;
12
- _setValue(arg);
13
- } else {
14
- const { current: prev } = ref;
15
- ref.current = arg(prev);
16
- _setValue(ref.current);
17
- }
18
- }, []);
19
- return [ref, setValue];
20
- };
21
-
22
- exports.useStateRef = useStateRef;
23
- //# sourceMappingURL=useStateRef.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useStateRef.js","sources":["../../../../../../packages/vuu-utils/src/useStateRef.ts"],"sourcesContent":["import {\n Dispatch,\n RefObject,\n SetStateAction,\n useCallback,\n useRef,\n useState,\n} from \"react\";\n\n/**\n * Extension to useState that maintains a ref for the\n * current state value. Useful where use of the ref can\n * avoid referencing the state vale in a dependency array\n * eg on a native event handler.\n *\n * @param value the initial value to store\n */\n\nconst isSimpleStateValue = <T>(arg: SetStateAction<T>): arg is T =>\n typeof arg !== \"function\";\n\n// Keeps a ref value in sync with a state value\nexport const useStateRef = <T = string>(\n initialValue: T,\n): [RefObject<T>, Dispatch<SetStateAction<T>>] => {\n const [value, _setValue] = useState<T>(initialValue);\n const ref = useRef<T>(value);\n\n const setValue = useCallback<Dispatch<SetStateAction<T>>>((arg) => {\n if (isSimpleStateValue(arg)) {\n ref.current = arg;\n _setValue(arg);\n } else {\n const { current: prev } = ref;\n ref.current = arg(prev);\n _setValue(ref.current);\n }\n }, []);\n return [ref, setValue];\n};\n"],"names":["useState","useRef","useCallback"],"mappings":";;;;AAkBA,MAAM,kBAAqB,GAAA,CAAI,GAC7B,KAAA,OAAO,GAAQ,KAAA,UAAA;AAGJ,MAAA,WAAA,GAAc,CACzB,YACgD,KAAA;AAChD,EAAA,MAAM,CAAC,KAAA,EAAO,SAAS,CAAA,GAAIA,eAAY,YAAY,CAAA;AACnD,EAAM,MAAA,GAAA,GAAMC,aAAU,KAAK,CAAA;AAE3B,EAAM,MAAA,QAAA,GAAWC,iBAAyC,CAAA,CAAC,GAAQ,KAAA;AACjE,IAAI,IAAA,kBAAA,CAAmB,GAAG,CAAG,EAAA;AAC3B,MAAA,GAAA,CAAI,OAAU,GAAA,GAAA;AACd,MAAA,SAAA,CAAU,GAAG,CAAA;AAAA,KACR,MAAA;AACL,MAAM,MAAA,EAAE,OAAS,EAAA,IAAA,EAAS,GAAA,GAAA;AAC1B,MAAI,GAAA,CAAA,OAAA,GAAU,IAAI,IAAI,CAAA;AACtB,MAAA,SAAA,CAAU,IAAI,OAAO,CAAA;AAAA;AACvB,GACF,EAAG,EAAE,CAAA;AACL,EAAO,OAAA,CAAC,KAAK,QAAQ,CAAA;AACvB;;;;"}