@infinite-table/infinite-react 0.5.1 → 0.5.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 (282) hide show
  1. package/README.md +104 -0
  2. package/index.css +896 -0
  3. package/index.d.ts +2264 -0
  4. package/index.esm.css +896 -0
  5. package/index.esm.js +15404 -0
  6. package/index.js +15240 -0
  7. package/package.json +2 -94
  8. package/.vscode/settings.json +0 -3
  9. package/API.md +0 -0
  10. package/build/buildPackageJson.js +0 -43
  11. package/build/scripts/test.js +0 -37
  12. package/bundler.config.js +0 -25
  13. package/globals.d.ts +0 -7
  14. package/rollup.config.js +0 -15
  15. package/run-build-deepmap.js +0 -47
  16. package/run-build.js +0 -45
  17. package/run-dts-concat.js +0 -21
  18. package/src/components/CSSVariableWatch.tsx +0 -82
  19. package/src/components/DataSource/BooleanCollectionState.ts +0 -214
  20. package/src/components/DataSource/BooleanDeepCollectionState.ts +0 -208
  21. package/src/components/DataSource/DataSourceContext.ts +0 -20
  22. package/src/components/DataSource/GroupRowsState.ts +0 -74
  23. package/src/components/DataSource/Indexer.ts +0 -27
  24. package/src/components/DataSource/RowSelectionState.ts +0 -763
  25. package/src/components/DataSource/defaultFilterTypes.ts +0 -64
  26. package/src/components/DataSource/index.tsx +0 -108
  27. package/src/components/DataSource/privateHooks/getChangeDetect.ts +0 -7
  28. package/src/components/DataSource/privateHooks/useLoadData.ts +0 -783
  29. package/src/components/DataSource/publicHooks/useDataSource.ts +0 -19
  30. package/src/components/DataSource/publicHooks/useDataSourceActions.ts +0 -14
  31. package/src/components/DataSource/state/getInitialState.ts +0 -494
  32. package/src/components/DataSource/state/normalizeSortInfo.ts +0 -35
  33. package/src/components/DataSource/state/reducer.ts +0 -466
  34. package/src/components/DataSource/state/rowInfoStatus.ts +0 -27
  35. package/src/components/DataSource/types.ts +0 -548
  36. package/src/components/HeadlessTable/HeadlessTableWithPinnedContainers.tsx +0 -142
  37. package/src/components/HeadlessTable/MappedCells.ts +0 -251
  38. package/src/components/HeadlessTable/RawTable.tsx +0 -98
  39. package/src/components/HeadlessTable/ReactHeadlessTableRenderer.tsx +0 -1516
  40. package/src/components/HeadlessTable/index.tsx +0 -234
  41. package/src/components/InfiniteTable/InfiniteCls.css.ts +0 -164
  42. package/src/components/InfiniteTable/InfiniteTableContext.ts +0 -16
  43. package/src/components/InfiniteTable/api/getImperativeApi.ts +0 -391
  44. package/src/components/InfiniteTable/api/getSelectionApi.ts +0 -364
  45. package/src/components/InfiniteTable/api/type.ts +0 -11
  46. package/src/components/InfiniteTable/components/ActiveCellIndicator.css.ts +0 -51
  47. package/src/components/InfiniteTable/components/ActiveCellIndicator.tsx +0 -116
  48. package/src/components/InfiniteTable/components/ActiveRowIndicator.css.ts +0 -56
  49. package/src/components/InfiniteTable/components/ActiveRowIndicator.tsx +0 -94
  50. package/src/components/InfiniteTable/components/CheckBox.css.ts +0 -13
  51. package/src/components/InfiniteTable/components/CheckBox.tsx +0 -96
  52. package/src/components/InfiniteTable/components/FilterEditors.tsx +0 -52
  53. package/src/components/InfiniteTable/components/InfiniteTableBody/InfiniteTableBody.tsx +0 -27
  54. package/src/components/InfiniteTable/components/InfiniteTableBody/index.tsx +0 -1
  55. package/src/components/InfiniteTable/components/InfiniteTableFooter/InfiniteTableFooter.tsx +0 -31
  56. package/src/components/InfiniteTable/components/InfiniteTableFooter/index.tsx +0 -1
  57. package/src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableColumnHeaderFilter.tsx +0 -102
  58. package/src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeader.tsx +0 -163
  59. package/src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderCell.tsx +0 -574
  60. package/src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderGroup.tsx +0 -79
  61. package/src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderTypes.tsx +0 -25
  62. package/src/components/InfiniteTable/components/InfiniteTableHeader/InfiniteTableHeaderWrapper.tsx +0 -185
  63. package/src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/GroupResizeHandle.tsx +0 -159
  64. package/src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/ResizeHandle.css.ts +0 -124
  65. package/src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/columnResizer.ts +0 -166
  66. package/src/components/InfiniteTable/components/InfiniteTableHeader/ResizeHandle/index.tsx +0 -146
  67. package/src/components/InfiniteTable/components/InfiniteTableHeader/buildColumnAndGroupTree.ts +0 -240
  68. package/src/components/InfiniteTable/components/InfiniteTableHeader/header.css.ts +0 -358
  69. package/src/components/InfiniteTable/components/InfiniteTableHeader/index.tsx +0 -1
  70. package/src/components/InfiniteTable/components/InfiniteTableHeader/useColumnGroupResizeHandle.tsx +0 -114
  71. package/src/components/InfiniteTable/components/InfiniteTableHeader/useColumnResizeHandle.tsx +0 -146
  72. package/src/components/InfiniteTable/components/InfiniteTableLicenseFooter/footer.css.ts +0 -7
  73. package/src/components/InfiniteTable/components/InfiniteTableLicenseFooter/index.tsx +0 -110
  74. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableCell.tsx +0 -120
  75. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableCellTypes.ts +0 -74
  76. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableColumnCell.tsx +0 -457
  77. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableRow.tsx +0 -107
  78. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableRowClassName.ts +0 -6
  79. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableRowTypes.ts +0 -32
  80. package/src/components/InfiniteTable/components/InfiniteTableRow/InfiniteTableRowUnvirtualized.tsx +0 -75
  81. package/src/components/InfiniteTable/components/InfiniteTableRow/columnRendering.tsx +0 -263
  82. package/src/components/InfiniteTable/components/InfiniteTableRow/index.tsx +0 -1
  83. package/src/components/InfiniteTable/components/InfiniteTableRow/row.css.ts +0 -74
  84. package/src/components/InfiniteTable/components/InfiniteTableRow/useRowDOMProps.ts +0 -199
  85. package/src/components/InfiniteTable/components/LoadMask.css.ts +0 -34
  86. package/src/components/InfiniteTable/components/LoadMask.tsx +0 -27
  87. package/src/components/InfiniteTable/components/ScrollbarPlaceholder.tsx +0 -56
  88. package/src/components/InfiniteTable/components/cell.css.ts +0 -192
  89. package/src/components/InfiniteTable/components/icons/ArrowDown.tsx +0 -14
  90. package/src/components/InfiniteTable/components/icons/ArrowUp.tsx +0 -14
  91. package/src/components/InfiniteTable/components/icons/ExpanderIcon.css.ts +0 -31
  92. package/src/components/InfiniteTable/components/icons/ExpanderIcon.tsx +0 -63
  93. package/src/components/InfiniteTable/components/icons/Icon.tsx +0 -18
  94. package/src/components/InfiniteTable/components/icons/InfiniteTableIconClassName.ts +0 -1
  95. package/src/components/InfiniteTable/components/icons/LoadingIcon.css.ts +0 -8
  96. package/src/components/InfiniteTable/components/icons/LoadingIcon.tsx +0 -45
  97. package/src/components/InfiniteTable/components/icons/MenuIcon.tsx +0 -50
  98. package/src/components/InfiniteTable/components/icons/SortIcon.tsx +0 -113
  99. package/src/components/InfiniteTable/eventHandlers/eventHandlerTypes.ts +0 -57
  100. package/src/components/InfiniteTable/eventHandlers/index.ts +0 -95
  101. package/src/components/InfiniteTable/eventHandlers/keyboardNavigation.ts +0 -232
  102. package/src/components/InfiniteTable/eventHandlers/keyboardSelection.ts +0 -110
  103. package/src/components/InfiniteTable/eventHandlers/onCellClick.ts +0 -94
  104. package/src/components/InfiniteTable/eventHandlers/onKeyDown.ts +0 -25
  105. package/src/components/InfiniteTable/hooks/adjustColumnOrderForAllColumns.ts +0 -70
  106. package/src/components/InfiniteTable/hooks/reorderColumnsOnDrag.ts +0 -476
  107. package/src/components/InfiniteTable/hooks/useAutoSizeColumns.ts +0 -206
  108. package/src/components/InfiniteTable/hooks/useCellClassName.ts +0 -80
  109. package/src/components/InfiniteTable/hooks/useCellRendering.tsx +0 -217
  110. package/src/components/InfiniteTable/hooks/useColumnGroups.ts +0 -71
  111. package/src/components/InfiniteTable/hooks/useColumnMenu.ts +0 -72
  112. package/src/components/InfiniteTable/hooks/useColumnPointerEvents.ts +0 -258
  113. package/src/components/InfiniteTable/hooks/useColumnRowspan.ts +0 -43
  114. package/src/components/InfiniteTable/hooks/useColumnSizeFn.ts +0 -24
  115. package/src/components/InfiniteTable/hooks/useColumnsWhen.ts +0 -582
  116. package/src/components/InfiniteTable/hooks/useComputed.ts +0 -186
  117. package/src/components/InfiniteTable/hooks/useComputedVisibleColumns.ts +0 -219
  118. package/src/components/InfiniteTable/hooks/useDOMProps.ts +0 -306
  119. package/src/components/InfiniteTable/hooks/useEffectWithRaf.ts +0 -47
  120. package/src/components/InfiniteTable/hooks/useInfiniteTable.ts +0 -10
  121. package/src/components/InfiniteTable/hooks/useInfiniteTableState.ts +0 -11
  122. package/src/components/InfiniteTable/hooks/useInternalProps.ts +0 -8
  123. package/src/components/InfiniteTable/hooks/useLicense/LicenseDetails.ts +0 -13
  124. package/src/components/InfiniteTable/hooks/useLicense/crc32.ts +0 -56
  125. package/src/components/InfiniteTable/hooks/useLicense/decode.ts +0 -147
  126. package/src/components/InfiniteTable/hooks/useLicense/useLicense.ts +0 -39
  127. package/src/components/InfiniteTable/hooks/useRerenderOnKeyChange.ts +0 -21
  128. package/src/components/InfiniteTable/hooks/useRowHover.ts +0 -18
  129. package/src/components/InfiniteTable/hooks/useScrollToActiveCell.ts +0 -48
  130. package/src/components/InfiniteTable/hooks/useScrollToActiveRow.ts +0 -44
  131. package/src/components/InfiniteTable/hooks/useScrollbars.ts +0 -51
  132. package/src/components/InfiniteTable/hooks/useToggleGroupRow.ts +0 -56
  133. package/src/components/InfiniteTable/hooks/useUnpinnedRendering.tsx +0 -165
  134. package/src/components/InfiniteTable/hooks/useYourBrain.ts +0 -55
  135. package/src/components/InfiniteTable/index.tsx +0 -352
  136. package/src/components/InfiniteTable/internalProps.ts +0 -4
  137. package/src/components/InfiniteTable/state/computeColumnGroupsDepths.ts +0 -29
  138. package/src/components/InfiniteTable/state/getColumnVisibilityForHideEmptyGroupColumns.ts +0 -127
  139. package/src/components/InfiniteTable/state/getInitialState.ts +0 -375
  140. package/src/components/InfiniteTable/theme.css.ts +0 -556
  141. package/src/components/InfiniteTable/types/InfiniteTableAction.ts +0 -6
  142. package/src/components/InfiniteTable/types/InfiniteTableActionType.ts +0 -12
  143. package/src/components/InfiniteTable/types/InfiniteTableColumn.ts +0 -478
  144. package/src/components/InfiniteTable/types/InfiniteTableComputedValues.ts +0 -43
  145. package/src/components/InfiniteTable/types/InfiniteTableContextValue.ts +0 -12
  146. package/src/components/InfiniteTable/types/InfiniteTableInternalProps.ts +0 -3
  147. package/src/components/InfiniteTable/types/InfiniteTableProps.ts +0 -511
  148. package/src/components/InfiniteTable/types/InfiniteTableState.ts +0 -195
  149. package/src/components/InfiniteTable/types/Utility.ts +0 -35
  150. package/src/components/InfiniteTable/types/index.ts +0 -96
  151. package/src/components/InfiniteTable/utilities.css.ts +0 -179
  152. package/src/components/InfiniteTable/utils/MultiRowSelector.ts +0 -111
  153. package/src/components/InfiniteTable/utils/RenderHookComponentForInfinite.tsx +0 -52
  154. package/src/components/InfiniteTable/utils/adjustColumnOrderForPinning.ts +0 -33
  155. package/src/components/InfiniteTable/utils/assignFiltered.ts +0 -29
  156. package/src/components/InfiniteTable/utils/defaultGetColumContextMenuItems.tsx +0 -108
  157. package/src/components/InfiniteTable/utils/getColumnComputedType.ts +0 -33
  158. package/src/components/InfiniteTable/utils/getColumnForGroupBy.tsx +0 -313
  159. package/src/components/InfiniteTable/utils/getComputedVisibleColumns.ts +0 -773
  160. package/src/components/InfiniteTable/utils/getContextMenuForColumn.tsx +0 -72
  161. package/src/components/InfiniteTable/utils/infiniteDOMUtils.ts +0 -189
  162. package/src/components/InfiniteTable/utils/mapToObject.ts +0 -20
  163. package/src/components/InfiniteTable/utils/moveXatY.ts +0 -25
  164. package/src/components/InfiniteTable/utils/objectValuesExcept.ts +0 -9
  165. package/src/components/InfiniteTable/utils/progressiveSpeedScroller.ts +0 -158
  166. package/src/components/InfiniteTable/utils/rafFn.ts +0 -13
  167. package/src/components/InfiniteTable/utils/toCSSVarName.ts +0 -1
  168. package/src/components/InfiniteTable/utils/toMap.ts +0 -24
  169. package/src/components/Menu/Menu.tsx +0 -750
  170. package/src/components/Menu/MenuCls.css.ts +0 -139
  171. package/src/components/Menu/MenuContext.ts +0 -10
  172. package/src/components/Menu/MenuContextValue.ts +0 -15
  173. package/src/components/Menu/MenuProps.ts +0 -98
  174. package/src/components/Menu/MenuState.ts +0 -56
  175. package/src/components/Menu/MenuTriangleContext.ts +0 -352
  176. package/src/components/Menu/childrenToRuntimeItems.tsx +0 -103
  177. package/src/components/Menu/getMenuState.tsx +0 -119
  178. package/src/components/Menu/index.tsx +0 -88
  179. package/src/components/Menu/propToIdentifyMenu.ts +0 -1
  180. package/src/components/RawList/AvoidReactDiff.tsx +0 -48
  181. package/src/components/RawList/MappedItems.ts +0 -143
  182. package/src/components/RawList/ReactVirtualRenderer.tsx +0 -307
  183. package/src/components/RawList/index.tsx +0 -42
  184. package/src/components/RawList/types.ts +0 -23
  185. package/src/components/RawList/useVirtualRenderer.ts +0 -36
  186. package/src/components/RenderHookComponent.tsx +0 -10
  187. package/src/components/ResizeObserver/index.tsx +0 -170
  188. package/src/components/VirtualBrain/MatrixBrain.ts +0 -1621
  189. package/src/components/VirtualBrain/ScrollListener.ts +0 -39
  190. package/src/components/VirtualBrain/index.ts +0 -664
  191. package/src/components/VirtualList/ColumnListWithExternalScrolling.tsx +0 -78
  192. package/src/components/VirtualList/InfiniteListRootClassName.ts +0 -1
  193. package/src/components/VirtualList/RowListWithExternalScrolling.tsx +0 -120
  194. package/src/components/VirtualList/SpacePlaceholder.tsx +0 -32
  195. package/src/components/VirtualList/VirtualList.css.ts +0 -29
  196. package/src/components/VirtualList/VirtualList.tsx +0 -141
  197. package/src/components/VirtualList/VirtualRowList.tsx +0 -34
  198. package/src/components/VirtualList/types.ts +0 -56
  199. package/src/components/VirtualList/useCorrectHeightForRowElements.ts +0 -14
  200. package/src/components/VirtualScrollContainer/VirtualScrollContainer.css.ts +0 -51
  201. package/src/components/VirtualScrollContainer/getScrollableClassName.ts +0 -30
  202. package/src/components/VirtualScrollContainer/index.tsx +0 -63
  203. package/src/components/flexbox/index.ts +0 -562
  204. package/src/components/hooks/useComponentState/index.tsx +0 -562
  205. package/src/components/hooks/useComponentState/types.ts +0 -32
  206. package/src/components/hooks/useEffectOnceWithProperUnmount.ts +0 -33
  207. package/src/components/hooks/useEffectWithChanges.ts +0 -56
  208. package/src/components/hooks/useImmutableRef.ts +0 -7
  209. package/src/components/hooks/useInterceptedMap.ts +0 -71
  210. package/src/components/hooks/useLatest.tsx +0 -8
  211. package/src/components/hooks/useLazyLatest.ts +0 -23
  212. package/src/components/hooks/useMemoShallowObjectMerge.ts +0 -16
  213. package/src/components/hooks/useMounted.ts +0 -18
  214. package/src/components/hooks/useOnMount.ts +0 -21
  215. package/src/components/hooks/useOnScroll.ts +0 -34
  216. package/src/components/hooks/useOnce.ts +0 -10
  217. package/src/components/hooks/useOverlay/index.tsx +0 -418
  218. package/src/components/hooks/usePrevious.ts +0 -8
  219. package/src/components/hooks/usePropertyOld.ts +0 -168
  220. package/src/components/hooks/useRerender.ts +0 -12
  221. package/src/components/hooks/xuseProperty.ts +0 -165
  222. package/src/components/types/CellPosition.ts +0 -4
  223. package/src/components/types/NonUndefined.ts +0 -1
  224. package/src/components/types/RemoveObject.ts +0 -22
  225. package/src/components/types/Renderable.ts +0 -3
  226. package/src/components/types/ScrollPosition.ts +0 -7
  227. package/src/components/types/Setter.ts +0 -2
  228. package/src/components/types/Size.ts +0 -6
  229. package/src/components/types/SubscriptionCallback.ts +0 -10
  230. package/src/components/types/VoidFn.ts +0 -1
  231. package/src/components/utils/buildSubscriptionCallback.tsx +0 -60
  232. package/src/components/utils/clamp.ts +0 -3
  233. package/src/components/utils/debounce.ts +0 -16
  234. package/src/components/utils/decamelize.ts +0 -11
  235. package/src/components/utils/discardCallsWithEqualArg.ts +0 -42
  236. package/src/components/utils/getRenderIndexes.ts +0 -33
  237. package/src/components/utils/getScrollbarWidth.ts +0 -31
  238. package/src/components/utils/getVirtualRenderCount.ts +0 -21
  239. package/src/components/utils/isControlled.ts +0 -12
  240. package/src/components/utils/isControlledValue.ts +0 -5
  241. package/src/index.tsx +0 -34
  242. package/src/test.tsx +0 -18
  243. package/src/utils/DeepMap/index.ts +0 -588
  244. package/src/utils/DeepMap/once.ts +0 -16
  245. package/src/utils/DeepMap/sortAscending.ts +0 -1
  246. package/src/utils/DeepMap/tsconfig.deepmap.json +0 -17
  247. package/src/utils/DeepMap/xpackage.json +0 -26
  248. package/src/utils/debug.ts +0 -40
  249. package/src/utils/deepClone.ts +0 -38
  250. package/src/utils/getGlobal.ts +0 -3
  251. package/src/utils/groupAndPivot/defaultToKey.ts +0 -3
  252. package/src/utils/groupAndPivot/getGroupKeysForDataItem.ts +0 -19
  253. package/src/utils/groupAndPivot/getPivotColumnsAndColumnGroups.ts +0 -361
  254. package/src/utils/groupAndPivot/index.ts +0 -1229
  255. package/src/utils/groupAndPivot/types.ts +0 -10
  256. package/src/utils/join.ts +0 -4
  257. package/src/utils/mathIntersection.ts +0 -21
  258. package/src/utils/minified.d.ts +0 -2
  259. package/src/utils/minified.js +0 -6
  260. package/src/utils/multisort/index.ts +0 -151
  261. package/src/utils/multisort/sortTypes.ts +0 -25
  262. package/src/utils/notes-status.md +0 -92
  263. package/src/utils/pageGeometry/ConvexPoly.ts +0 -34
  264. package/src/utils/pageGeometry/Point.ts +0 -51
  265. package/src/utils/pageGeometry/PolyWithPoints.ts +0 -52
  266. package/src/utils/pageGeometry/Rectangle.ts +0 -98
  267. package/src/utils/pageGeometry/Triangle.ts +0 -16
  268. package/src/utils/pageGeometry/alignment/index.ts +0 -221
  269. package/src/utils/pageGeometry/polyContainsPoint.ts +0 -182
  270. package/src/utils/pageGeometry/types.ts +0 -3
  271. package/src/utils/proxyFnCall.ts +0 -46
  272. package/src/utils/raf.ts +0 -13
  273. package/src/utils/selectParent.ts +0 -18
  274. package/src/utils/shallowEqualObjects.ts +0 -49
  275. package/src/utils/stripVar.ts +0 -3
  276. package/src/utils/toUpperFirst.ts +0 -5
  277. package/todo.md +0 -2
  278. package/tsconfig.build.json +0 -8
  279. package/tsconfig.dev.json +0 -7
  280. package/tsconfig.json +0 -30
  281. package/tsconfig.typebundler.json +0 -13
  282. package/typedoc.json +0 -4
package/package.json CHANGED
@@ -17,110 +17,18 @@
17
17
  "bugs": {
18
18
  "url": "https://github.com/infinite-table/infinite-react/issues"
19
19
  },
20
- "version": "0.5.1",
20
+ "version": "0.5.2",
21
21
  "main": "index.js",
22
22
  "module": "index.esm.js",
23
23
  "typings": "index.d.ts",
24
- "scripts": {
25
- "build": "rimraf dist && npm run tsc && npm run concat-dts && node ./build/buildPackageJson.js && npm run esbuild && npm run update-md && cp LICENSE.md ./dist && cp ../README.md ./dist",
26
- "watch": "npm run esbuild-esm && concurrently \"npm run tscw\" \"npm run esbuild-esm-watch\" \"npm run concat-dts-watch\"",
27
- "rollup-types": "rollup -c rollup.config.js",
28
- "update-md": "npm run --prefix .. doctoc",
29
- "esbuild": "npm run esbuild-esm && npm run esbuild-cjs",
30
- "esbuild-deepmap": "npm run esbuild-deepmap-esm && npm run esbuild-deepmap-cjs",
31
- "esbuild-deepmap-esm": "node run-build-deepmap.js esm",
32
- "esbuild-esm": "node run-build.js esm",
33
- "esbuild-esm-watch": "node run-build.js esm --watch",
34
- "esbuild-cjs": "node run-build.js cjs",
35
- "esbuild-deepmap-cjs": "node run-build-deepmap.js cjs",
36
- "esbuild-cjs-watch": "node run-build.js cjs --watch",
37
- "test": "npm run --prefix=examples test ",
38
- "//-": " only build declaration files",
39
- "tsc": "tsc --project tsconfig.build.json",
40
- "concat-dts": "tsup src/index.tsx --dts-only",
41
- "concat-dts-watch": "tsup src/index.tsx --dts-only --watch",
42
- "xxx - no longer used - bundle-types": "dts-bundle-generator --config bundler.config.js",
43
- "tscw": "tsc --watch --project tsconfig.dev.json --outDir dist",
44
- "xxx - no longer used - concat-dts": "node run-dts-concat.js",
45
- "typedoc": "typedoc",
46
- "lint": "tsdx lint src",
47
- "format": "prettier --write 'src/**/*.{js,jsx,ts,tsx,json,scss,css,md}'",
48
- "/": "//",
49
- "/--- should not run locally ----": "//",
50
- "/--- as this is run via github actions CI ----": "//",
51
- "registry-publish": "npm publish dist --access public",
52
- "registry-publish-canary": "npm publish dist --access public --tag canary",
53
- "//": "// only used in the release.yml workflow",
54
- "release:canary-nobump": "npm run registry-publish-canary",
55
- "release:nobump": "npm run registry-publish",
56
- "///": "//",
57
- "bump:canary": "npm version prerelease --preid=canary",
58
- "bump:major:canary": "npm version premajor --preid=canary",
59
- "bump:minor:canary": "npm version preminor --preid=canary",
60
- "bump:patch:canary": "npm version prepatch --preid=canary",
61
- "////": "//",
62
- "bump:patch": "npm version patch",
63
- "bump:minor": "npm version minor",
64
- "bump:major": "npm version major"
65
- },
66
24
  "peerDependencies": {
67
25
  "react": ">=16"
68
26
  },
69
- "husky": {
70
- "hooks": {
71
- "pre-commit": "lint-staged"
72
- }
73
- },
74
- "lint-staged": {
75
- "src/**/*.(js|jsx|ts|tsx)": [
76
- "echo ok",
77
- "git add"
78
- ],
79
- "src/**/*.(js|jsx|ts|tsx|json|scss|css|md)": [
80
- "prettier --write",
81
- "git add"
82
- ]
83
- },
84
- "devDependencies": {
85
- "@babel/runtime-corejs2": "^7.6.3",
86
- "@types/debug": "^4.1.7",
87
- "@types/jest": "^24.0.19",
88
- "@types/node": "^18.8.0",
89
- "@types/react": "^18.0.21",
90
- "@types/react-dom": "^18.0.6",
91
- "@vanilla-extract/css": "^1.9.1",
92
- "@vanilla-extract/esbuild-plugin": "^2.2.0",
93
- "@vanilla-extract/recipes": "^0.2.5",
94
- "@vanilla-extract/sprinkles": "^1.5.0",
95
- "autoprefixer": "^10.4.0",
96
- "camelcase": "^6.0.0",
97
- "concurrently": "^6.2.0",
98
- "csstype": "^2.6.10",
99
- "dts-bundle-generator": "^5.9.0",
100
- "dts-generator": "^3.0.0",
101
- "esbuild": "^0.12.9",
102
- "husky": "^4.2.3",
103
- "lint-staged": "^10.0.8",
104
- "postcss": "^8.4.17",
105
- "prettier": "^2.5.0",
106
- "prettier-eslint": "^13.0.0",
107
- "react": "^18.2.0",
108
- "react-dom": "^18.2.0",
109
- "rollup": "^2.55.1",
110
- "rollup-plugin-dts": "^3.0.2",
111
- "ts-node": "^8.8.2",
112
- "tsc-prog": "^2.2.1",
113
- "tsdx": "^0.14.1",
114
- "tslib": "^2.1.0",
115
- "tsup": "^5.11.13",
116
- "typedoc": "^0.23.16",
117
- "typescript": "4.6.2"
118
- },
119
27
  "dependencies": {
120
28
  "binary-search": "^1.3.6",
121
29
  "debug": "^4.3.1"
122
30
  },
123
31
  "license": "Commercial & Open Source",
124
32
  "//": "will be updated at build time",
125
- "publishedAt": 1624970570587
33
+ "publishedAt": 1666217238128
126
34
  }
@@ -1,3 +0,0 @@
1
- {
2
- "typescript.tsdk": "node_modules/typescript/lib"
3
- }
package/API.md DELETED
File without changes
@@ -1,43 +0,0 @@
1
- const fs = require('fs');
2
- const resolve = require('path').resolve;
3
- const sourcePackagePath = resolve(__dirname, '../package.json');
4
-
5
- const packageJSON = require(sourcePackagePath);
6
-
7
- const toDelete = [
8
- 'devDependencies',
9
- 'husky',
10
- 'prettier',
11
- 'files',
12
- 'lint-staged',
13
- 'scripts',
14
- 'private',
15
- ];
16
- toDelete.forEach((key) => delete packageJSON[key]);
17
-
18
- ['main', 'module', 'typings'].forEach((key) => {
19
- let value = packageJSON[key];
20
-
21
- value = value.split('/');
22
- if (value[0] === 'dist') {
23
- value = value.splice(1).join('/');
24
- }
25
-
26
- packageJSON[key] = value.join('/');
27
- });
28
-
29
- packageJSON.publishedAt = Date.now();
30
- const content = JSON.stringify(packageJSON, null, 2);
31
-
32
- const path = resolve(__dirname, '../dist', 'package.json');
33
- fs.writeFile(path, content, 'utf8', (err) => {
34
- if (err) {
35
- console.error(err);
36
- throw err;
37
- } else {
38
- console.log(
39
- 'DONE building package.json with version ',
40
- packageJSON.version,
41
- );
42
- }
43
- });
@@ -1,37 +0,0 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
- const carsales = require('../../examples/src/datasets/carsales.json');
4
-
5
- function getRandomNumberBetween(min, max) {
6
- return Math.floor(Math.random() * (max - min + 1) + min);
7
- }
8
-
9
- const color = [
10
- 'white',
11
- 'white',
12
- 'white',
13
- 'black',
14
- 'yellow',
15
- 'white',
16
- 'black',
17
- 'blue',
18
- 'blue',
19
- 'blue',
20
- 'green',
21
- 'red',
22
- 'red',
23
- 'magenta',
24
- 'silver',
25
- 'silver',
26
- ];
27
-
28
- carsales.forEach((sale, index) => {
29
- // sale.id = index;
30
- sale.color = color[getRandomNumberBetween(0, color.length - 1)];
31
- });
32
-
33
- fs.writeFileSync(
34
- path.resolve(__dirname, '../../examples/src/datasets/carsales.json'),
35
- JSON.stringify(carsales, null, 2),
36
- 'utf8',
37
- );
package/bundler.config.js DELETED
@@ -1,25 +0,0 @@
1
- //@ts-check
2
- module.exports = {
3
- compilationOptions: {
4
- followSymlinks: true,
5
- preferredConfigPath: './tsconfig.typebundler.json',
6
- },
7
-
8
- entries: [
9
- {
10
- filePath: 'dist/index.d.ts',
11
- outFile: 'dist/bundle.d.ts',
12
-
13
- failOnClass: false,
14
-
15
- libraries: {
16
- allowedTypesLibraries: [],
17
- importedLibraries: ['node', 'typescript'],
18
- inlinedLibraries: [],
19
- },
20
- output: {
21
- noBanner: true,
22
- },
23
- },
24
- ],
25
- };
package/globals.d.ts DELETED
@@ -1,7 +0,0 @@
1
- export {};
2
-
3
- declare global {
4
- var __DEV__: boolean;
5
- var __VERSION__: string;
6
- var __VERSION_TIMESTAMP__: number;
7
- }
package/rollup.config.js DELETED
@@ -1,15 +0,0 @@
1
- import dts from 'rollup-plugin-dts';
2
- const config = [
3
- {
4
- input: './dist/index.d.ts',
5
- external: () => false,
6
- output: [{ file: 'dist/index.d.ts', format: 'es' }],
7
- plugins: [
8
- dts({
9
- respectExternal: false,
10
- }),
11
- ],
12
- },
13
- ];
14
-
15
- export default config;
@@ -1,47 +0,0 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
-
4
- const packageJSON = require('./src/utils/DeepMap/package.json');
5
- const format = process.argv[2];
6
- const watch = process.argv[3] === '--watch';
7
-
8
- if (!format || !(format in { esm: true, cjs: true })) {
9
- throw 'Invalid format supplied';
10
- }
11
-
12
- require('esbuild')
13
- .build({
14
- entryPoints: [path.resolve(__dirname, 'src/utils/DeepMap/index.ts')],
15
- bundle: true,
16
- plugins: [],
17
- define: {},
18
- watch: watch
19
- ? {
20
- onRebuild(error, result) {
21
- if (error) console.error('watch build failed:', error);
22
- else console.log('watch build succeeded:', result);
23
- },
24
- }
25
- : null,
26
- external: [],
27
- format: format,
28
- bundle: true,
29
- platform: 'browser',
30
- outfile: path.resolve(
31
- __dirname,
32
- `dist-deepmap/index${format === 'esm' ? '.esm' : ''}.js`,
33
- ),
34
- })
35
- .then(() => {
36
- try {
37
- fs.writeFileSync(
38
- path.resolve(__dirname, './dist-deepmap/package.json'),
39
- JSON.stringify(packageJSON, null, 2),
40
- 'utf8',
41
- );
42
- } catch (ex) {
43
- console.error('Cannot find or write dist-deepmap/package.json');
44
- console.error(ex);
45
- }
46
- })
47
- .catch(() => process.exit(1));
package/run-build.js DELETED
@@ -1,45 +0,0 @@
1
- const { vanillaExtractPlugin } = require('@vanilla-extract/esbuild-plugin');
2
-
3
- const format = process.argv[2];
4
- const watch = process.argv[3] === '--watch';
5
-
6
- if (!format || !(format in { esm: true, cjs: true })) {
7
- throw 'Invalid format supplied';
8
- }
9
-
10
- const postcss = require('postcss');
11
- const autoprefixer = require('autoprefixer');
12
-
13
- async function processCss(css) {
14
- const result = await postcss([autoprefixer]).process(css, {
15
- from: undefined /* suppress source map warning */,
16
- });
17
-
18
- return result.css;
19
- }
20
-
21
- require('esbuild').build({
22
- entryPoints: ['src/index.tsx'],
23
- bundle: true,
24
- plugins: [vanillaExtractPlugin({ processCss, identifiers: 'short' })],
25
- define: {
26
- __DEV__: JSON.stringify(false),
27
- __VERSION__: JSON.stringify(require('./package.json').version),
28
- __VERSION_TIMESTAMP__: JSON.stringify(
29
- require('./package.json').publishedAt,
30
- ),
31
- },
32
- watch: watch
33
- ? {
34
- onRebuild(error, result) {
35
- if (error) console.error('watch build failed:', error);
36
- else console.log('watch build succeeded:', result);
37
- },
38
- }
39
- : null,
40
- external: ['react', 'react-dom'],
41
- format: format,
42
- bundle: true,
43
- platform: 'browser',
44
- outfile: `dist/index${format === 'esm' ? '.esm' : ''}.js`,
45
- });
package/run-dts-concat.js DELETED
@@ -1,21 +0,0 @@
1
- const fs = require('fs');
2
- const tsc = require('tsc-prog');
3
-
4
- tsc.build({
5
- basePath: __dirname,
6
- configFilePath: 'tsconfig.build.json',
7
- compilerOptions: {
8
- rootDir: 'src',
9
- outDir: 'dist',
10
- declaration: true, // must be set
11
- },
12
- bundleDeclaration: {
13
- entryPoint: 'index.d.ts', // relative to the OUTPUT directory ('dist' here)
14
- },
15
- });
16
-
17
- let contents = fs.readFileSync('./dist/index.d.ts', 'utf8');
18
-
19
- contents = contents.replace(/`/g, '');
20
-
21
- fs.writeFileSync('./dist/index.d.ts', contents, 'utf8');
@@ -1,82 +0,0 @@
1
- import * as React from 'react';
2
- import { useRef } from 'react';
3
- import { dbg, err } from '../utils/debug';
4
-
5
- import { useResizeObserver } from './ResizeObserver';
6
-
7
- const error = err('CSSVariableWatch');
8
- const debug = dbg('CSSVariableWatch');
9
-
10
- type CSSVariableWatcherProps = {
11
- varName: string;
12
- onChange: (value: number) => void;
13
- };
14
-
15
- const WRAPPER_STYLE: React.CSSProperties = {
16
- position: 'absolute',
17
- pointerEvents: 'none',
18
- width: 0,
19
- height: 0,
20
- lineHeight: 0,
21
- fontSize: 0,
22
- overflow: 'hidden',
23
- };
24
-
25
- export const useCSSVariableWatch = (
26
- params: CSSVariableWatcherProps & {
27
- ref: React.MutableRefObject<HTMLElement | null>;
28
- },
29
- ) => {
30
- const lastValueRef = useRef<number>(0);
31
- const onResize = React.useCallback(
32
- ({ height }: { height: number }) => {
33
- if (height && height !== lastValueRef.current) {
34
- lastValueRef.current = height;
35
- params.onChange(height);
36
- }
37
- },
38
- [params.onChange],
39
- );
40
- useResizeObserver(params.ref, onResize, { earlyAttach: true });
41
-
42
- React.useLayoutEffect(() => {
43
- const value = params.ref.current!.getBoundingClientRect().height;
44
-
45
- if (value) {
46
- lastValueRef.current = value;
47
-
48
- debug(`Variable ${params.varName} found and equals ${value}.`);
49
- return params.onChange(value);
50
- } else {
51
- error(
52
- `Specified variable ${params.varName} not found or does not have a numeric value.`,
53
- );
54
- }
55
- }, []);
56
- };
57
-
58
- export const CSSVariableWatch = (props: CSSVariableWatcherProps) => {
59
- const domRef = useRef<HTMLDivElement>(null);
60
-
61
- useCSSVariableWatch({
62
- ...props,
63
- ref: domRef,
64
- });
65
-
66
- return (
67
- <div
68
- data-name="css-variable-watcher"
69
- data-var={props.varName}
70
- style={WRAPPER_STYLE}
71
- >
72
- <div
73
- ref={domRef}
74
- style={{
75
- height: props.varName.startsWith('var(')
76
- ? props.varName
77
- : `var(${props.varName})`,
78
- }}
79
- ></div>
80
- </div>
81
- );
82
- };
@@ -1,214 +0,0 @@
1
- export type BooleanCollectionStateKeys<KeyType extends string | number> =
2
- | true
3
- | Record<KeyType, true>;
4
-
5
- export type BooleanCollectionStateObject<KeyType extends string | number> = {
6
- positiveItems: BooleanCollectionStateKeys<KeyType>;
7
- negativeItems: BooleanCollectionStateKeys<KeyType>;
8
- };
9
-
10
- export abstract class BooleanCollectionState<
11
- StateObject,
12
- KeyType extends string | number = string,
13
- > {
14
- protected positiveMap?: Map<KeyType, true>;
15
- protected negativeMap?: Map<KeyType, true>;
16
-
17
- protected allNegative!: boolean;
18
- protected allPositive!: boolean;
19
-
20
- private initialState!: BooleanCollectionStateObject<KeyType>;
21
-
22
- constructor(
23
- state:
24
- | BooleanCollectionStateObject<KeyType>
25
- | BooleanCollectionState<StateObject, KeyType>,
26
- ) {
27
- const stateObject =
28
- state instanceof Object.getPrototypeOf(this).constructor
29
- ? //@ts-ignore
30
- state.getState()
31
- : state;
32
-
33
- const positiveItems = this.getPositiveFromState(stateObject);
34
- const negativeItems = this.getNegativeFromState(stateObject);
35
-
36
- this.update({
37
- negativeItems,
38
- positiveItems,
39
- });
40
- }
41
-
42
- abstract getPositiveFromState(
43
- state: StateObject,
44
- ): BooleanCollectionStateKeys<KeyType>;
45
- abstract getNegativeFromState(
46
- state: StateObject,
47
- ): BooleanCollectionStateKeys<KeyType>;
48
-
49
- abstract getState(): StateObject;
50
-
51
- protected getInitialState() {
52
- return this.initialState;
53
- }
54
-
55
- // protected getState(): BooleanCollectionStateObject<KeyType> {
56
- // return {
57
- // positiveItems: this.allPositive
58
- // ? true
59
- // : this.positiveMap?.topDownKeys() ?? [],
60
- // negativeItems: this.allNegative
61
- // ? true
62
- // : this.negativeMap?.topDownKeys() ?? [],
63
- // };
64
- // }
65
-
66
- public destroy() {
67
- this.positiveMap?.clear();
68
- this.negativeMap?.clear();
69
-
70
- delete this.positiveMap;
71
- delete this.negativeMap;
72
- }
73
-
74
- private update(state: BooleanCollectionStateObject<KeyType>) {
75
- const { positiveItems, negativeItems } = state;
76
-
77
- this.allNegative = negativeItems === true;
78
- this.allPositive = positiveItems === true;
79
-
80
- if (this.allNegative && this.allPositive) {
81
- throw `Cannot have both negativeItems and positiveItems be true!`;
82
- }
83
-
84
- if (negativeItems && negativeItems !== true) {
85
- if (!this.negativeMap) {
86
- this.negativeMap = new Map();
87
- }
88
- this.negativeMap.clear();
89
-
90
- for (let k in negativeItems) {
91
- if (negativeItems.hasOwnProperty(k)) {
92
- this.negativeMap.set(k, true);
93
- }
94
- }
95
- if (this.positiveMap) {
96
- this.positiveMap.clear();
97
- }
98
- }
99
-
100
- if (positiveItems && positiveItems !== true) {
101
- if (!this.positiveMap) {
102
- this.positiveMap = new Map();
103
- }
104
- this.positiveMap.clear();
105
-
106
- for (let k in positiveItems) {
107
- if (positiveItems.hasOwnProperty(k)) {
108
- this.positiveMap.set(k, true);
109
- }
110
- }
111
-
112
- if (this.negativeMap) {
113
- this.negativeMap.clear();
114
- }
115
- }
116
- }
117
-
118
- protected isDefaultNegativeSelection() {
119
- return this.allNegative;
120
- }
121
-
122
- protected isDefaultPositiveSelection() {
123
- return this.allPositive;
124
- }
125
-
126
- protected areAllNegative() {
127
- return (
128
- this.allNegative &&
129
- (this.positiveMap ? this.positiveMap.size === 0 : true)
130
- );
131
- }
132
- protected areAllPositive() {
133
- return (
134
- this.allPositive &&
135
- (this.negativeMap ? this.negativeMap.size === 0 : true)
136
- );
137
- }
138
-
139
- protected makeAllNegative() {
140
- this.update({
141
- negativeItems: true,
142
- positiveItems: {} as Record<KeyType, true>,
143
- });
144
- }
145
-
146
- protected makeAllPositive() {
147
- this.update({
148
- positiveItems: true,
149
- negativeItems: {} as Record<KeyType, true>,
150
- });
151
- }
152
-
153
- protected isItemPositive(key: KeyType) {
154
- key = `${key}` as KeyType;
155
- if (this.allPositive === true) {
156
- if (this.allNegative === true) {
157
- throw 'Cannot have both positiveItems and negativeItems be "true"';
158
- }
159
-
160
- return !this.negativeMap?.has(key as KeyType);
161
- }
162
-
163
- return !!this.positiveMap?.has(key as KeyType);
164
- }
165
-
166
- protected isItemNegative(key: KeyType) {
167
- return !this.isItemPositive(key);
168
- }
169
-
170
- protected setItemValue(key: KeyType, shouldMakePositive: boolean) {
171
- key = `${key}` as KeyType;
172
- if (shouldMakePositive === this.isItemPositive(key)) {
173
- return;
174
- }
175
-
176
- if (shouldMakePositive) {
177
- if (this.allNegative === true) {
178
- if (!this.positiveMap) {
179
- throw `No positiveMap found when trying to set item ${key} be positive`;
180
- }
181
- this.positiveMap.set(key, true);
182
- } else if (this.allPositive === true) {
183
- if (!this.negativeMap) {
184
- throw `No negativeMap found when trying to set item ${key} be positive`;
185
- }
186
- this.negativeMap.delete(key);
187
- }
188
- } else {
189
- // we should collapse the item
190
- if (this.allPositive === true) {
191
- if (!this.negativeMap) {
192
- throw `No negativeMap found when trying to set item ${key} be negative`;
193
- }
194
- this.negativeMap.set(key, true);
195
- } else if (this.allNegative === true) {
196
- if (!this.positiveMap) {
197
- throw `No positiveMap found when trying to set item ${key} be negative`;
198
- }
199
- this.positiveMap?.delete(key);
200
- }
201
- }
202
- }
203
-
204
- protected makeItemNegative(key: KeyType) {
205
- this.setItemValue(key, false);
206
- }
207
- protected makeItemPositive(key: KeyType) {
208
- this.setItemValue(key, true);
209
- }
210
-
211
- protected toggleItem(key: KeyType) {
212
- this.setItemValue(key, !this.isItemPositive(key));
213
- }
214
- }