comins-table 0.1.11 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/CHANGELOG.md +37 -1
  2. package/README.md +42 -338
  3. package/dist/browser/clipboard.d.ts +4 -0
  4. package/dist/browser/clipboard.d.ts.map +1 -0
  5. package/dist/browser/measurements.d.ts +28 -0
  6. package/dist/browser/measurements.d.ts.map +1 -0
  7. package/dist/browser/pointer.d.ts +25 -0
  8. package/dist/browser/pointer.d.ts.map +1 -0
  9. package/dist/browser/scroll.d.ts +9 -0
  10. package/dist/browser/scroll.d.ts.map +1 -0
  11. package/dist/browser/table-transfer.d.ts +38 -0
  12. package/dist/browser/table-transfer.d.ts.map +1 -0
  13. package/dist/browser/viewport-requests.d.ts +27 -0
  14. package/dist/browser/viewport-requests.d.ts.map +1 -0
  15. package/dist/cell-fill.d.ts +1 -1
  16. package/dist/cell-fill.d.ts.map +1 -1
  17. package/dist/clipboard-CNrbmDue.js +959 -0
  18. package/dist/clipboard-CNrbmDue.js.map +1 -0
  19. package/dist/clipboard.d.ts +2 -2
  20. package/dist/clipboard.d.ts.map +1 -1
  21. package/dist/clipboard.js +3 -2
  22. package/dist/column-layout.d.ts +24 -0
  23. package/dist/column-layout.d.ts.map +1 -0
  24. package/dist/component-renderer.d.ts +1 -1
  25. package/dist/component-renderer.d.ts.map +1 -1
  26. package/dist/core/editing/cells.d.ts +9 -0
  27. package/dist/core/editing/cells.d.ts.map +1 -0
  28. package/dist/core/editing/clipboard.d.ts +8 -0
  29. package/dist/core/editing/clipboard.d.ts.map +1 -0
  30. package/dist/core/editing/export-structure.d.ts +6 -0
  31. package/dist/core/editing/export-structure.d.ts.map +1 -0
  32. package/dist/core/editing/export.d.ts +4 -0
  33. package/dist/core/editing/export.d.ts.map +1 -0
  34. package/dist/core/editing/import.d.ts +4 -0
  35. package/dist/core/editing/import.d.ts.map +1 -0
  36. package/dist/core/layout/columns.d.ts +69 -0
  37. package/dist/core/layout/columns.d.ts.map +1 -0
  38. package/dist/core/layout/row-height.d.ts +25 -0
  39. package/dist/core/layout/row-height.d.ts.map +1 -0
  40. package/dist/core/layout/viewport.d.ts +21 -0
  41. package/dist/core/layout/viewport.d.ts.map +1 -0
  42. package/dist/core/layout/virtual.d.ts +119 -0
  43. package/dist/core/layout/virtual.d.ts.map +1 -0
  44. package/dist/core/model.d.ts +128 -0
  45. package/dist/core/model.d.ts.map +1 -0
  46. package/dist/core/rows/filtering.d.ts +45 -0
  47. package/dist/core/rows/filtering.d.ts.map +1 -0
  48. package/dist/core/rows/grouping.d.ts +97 -0
  49. package/dist/core/rows/grouping.d.ts.map +1 -0
  50. package/dist/core/rows/projection.d.ts +73 -0
  51. package/dist/core/rows/projection.d.ts.map +1 -0
  52. package/dist/core/rows/summary.d.ts +3 -0
  53. package/dist/core/rows/summary.d.ts.map +1 -0
  54. package/dist/core/selection/navigation.d.ts +49 -0
  55. package/dist/core/selection/navigation.d.ts.map +1 -0
  56. package/dist/core/selection/state.d.ts +131 -0
  57. package/dist/core/selection/state.d.ts.map +1 -0
  58. package/dist/core/state/access.d.ts +11 -0
  59. package/dist/core/state/access.d.ts.map +1 -0
  60. package/dist/core/state/changes.d.ts +14 -0
  61. package/dist/core/state/changes.d.ts.map +1 -0
  62. package/dist/core/state/reconcile.d.ts +18 -0
  63. package/dist/core/state/reconcile.d.ts.map +1 -0
  64. package/dist/core/state/table.d.ts +77 -0
  65. package/dist/core/state/table.d.ts.map +1 -0
  66. package/dist/core/transfer/policy.d.ts +116 -0
  67. package/dist/core/transfer/policy.d.ts.map +1 -0
  68. package/dist/core/viewport/data.d.ts +70 -0
  69. package/dist/core/viewport/data.d.ts.map +1 -0
  70. package/dist/core/viewport/requests.d.ts +19 -0
  71. package/dist/core/viewport/requests.d.ts.map +1 -0
  72. package/dist/core-compat-B4I2OHGY.js +391 -0
  73. package/dist/core-compat-B4I2OHGY.js.map +1 -0
  74. package/dist/core.d.ts +11 -714
  75. package/dist/core.d.ts.map +1 -1
  76. package/dist/core.js +3 -2
  77. package/dist/export-structure-Dy2zOqbj.js +166 -0
  78. package/dist/export-structure-Dy2zOqbj.js.map +1 -0
  79. package/dist/filtering.d.ts +8 -9
  80. package/dist/filtering.d.ts.map +1 -1
  81. package/dist/grouping.d.ts +11 -21
  82. package/dist/grouping.d.ts.map +1 -1
  83. package/dist/index.d.ts +26 -10
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +3162 -2624
  86. package/dist/index.js.map +1 -1
  87. package/dist/model.d.ts +170 -0
  88. package/dist/model.d.ts.map +1 -0
  89. package/dist/react/core-compat.d.ts +141 -0
  90. package/dist/react/core-compat.d.ts.map +1 -0
  91. package/dist/react/edit-policy.d.ts +9 -0
  92. package/dist/react/edit-policy.d.ts.map +1 -0
  93. package/dist/react/model.d.ts +14 -0
  94. package/dist/react/model.d.ts.map +1 -0
  95. package/dist/react/rows.d.ts +6 -0
  96. package/dist/react/rows.d.ts.map +1 -0
  97. package/dist/react/state.d.ts +43 -0
  98. package/dist/react/state.d.ts.map +1 -0
  99. package/dist/react/table-transfer.d.ts +55 -0
  100. package/dist/react/table-transfer.d.ts.map +1 -0
  101. package/dist/react/viewport.d.ts +10 -0
  102. package/dist/react/viewport.d.ts.map +1 -0
  103. package/dist/react-types.d.ts +292 -0
  104. package/dist/react-types.d.ts.map +1 -0
  105. package/dist/row-detail.d.ts +2 -0
  106. package/dist/row-detail.d.ts.map +1 -1
  107. package/dist/row-height.d.ts +1 -24
  108. package/dist/row-height.d.ts.map +1 -1
  109. package/dist/row-value.d.ts +2 -0
  110. package/dist/row-value.d.ts.map +1 -0
  111. package/dist/selection-data.d.ts +2 -1
  112. package/dist/selection-data.d.ts.map +1 -1
  113. package/dist/selection.d.ts +2 -2
  114. package/dist/selection.d.ts.map +1 -1
  115. package/dist/selection.js +2 -2
  116. package/dist/summary.d.ts +1 -1
  117. package/dist/summary.d.ts.map +1 -1
  118. package/dist/table-state.d.ts +24 -0
  119. package/dist/table-state.d.ts.map +1 -0
  120. package/dist/table-transfer.d.ts +1 -152
  121. package/dist/table-transfer.d.ts.map +1 -1
  122. package/dist/tree-drag.d.ts.map +1 -1
  123. package/dist/tree.d.ts +1 -1
  124. package/dist/tree.d.ts.map +1 -1
  125. package/dist/use-viewport.d.ts.map +1 -1
  126. package/dist/viewport-data.d.ts +8 -71
  127. package/dist/viewport-data.d.ts.map +1 -1
  128. package/dist/viewport-layout.d.ts +1 -20
  129. package/dist/viewport-layout.d.ts.map +1 -1
  130. package/dist/viewport-requests.d.ts +1 -8
  131. package/dist/viewport-requests.d.ts.map +1 -1
  132. package/dist/virtual-layout.d.ts +1 -118
  133. package/dist/virtual-layout.d.ts.map +1 -1
  134. package/package.json +5 -2
  135. package/styles.css +31 -0
  136. package/dist/core-C1tlvY8Q.js +0 -963
  137. package/dist/core-C1tlvY8Q.js.map +0 -1
@@ -0,0 +1,38 @@
1
+ /** The registry only observes identity and DOM fields; adapter metadata stays opaque. */
2
+ export type BrowserTransferSnapshot = {
3
+ config: {
4
+ coordinator: object;
5
+ scope: string;
6
+ tableId: string;
7
+ };
8
+ endpoint: {
9
+ tableId: string;
10
+ };
11
+ instanceId: string;
12
+ root: HTMLElement | null;
13
+ viewport: HTMLElement | null;
14
+ };
15
+ type Registration<TSnapshot> = {
16
+ getSnapshot: () => TSnapshot | null;
17
+ };
18
+ export declare function createTableTransferRegistry<TSnapshot extends BrowserTransferSnapshot>(): {
19
+ register(scope: string, tableId: string, registration: Registration<TSnapshot>): () => void;
20
+ get(scope: string, tableId: string): Registration<TSnapshot> | null;
21
+ };
22
+ export declare function getRegisteredTransferSnapshot<TSnapshot extends BrowserTransferSnapshot>(registry: ReturnType<typeof createTableTransferRegistry<TSnapshot>>, coordinator: object, scope: string, tableId: string): TSnapshot | null;
23
+ export declare function getCrossTableTransferHit<TSnapshot extends BrowserTransferSnapshot>(input: {
24
+ sourceTableId: string;
25
+ scope: string;
26
+ instanceId: string;
27
+ root: HTMLElement | null;
28
+ clientX: number;
29
+ clientY: number;
30
+ document: Pick<Document, "elementFromPoint">;
31
+ getSnapshot: (tableId: string) => TSnapshot | null;
32
+ }): {
33
+ element: HTMLElement;
34
+ root: HTMLElement;
35
+ snapshot: TSnapshot;
36
+ } | null;
37
+ export {};
38
+ //# sourceMappingURL=table-transfer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-transfer.d.ts","sourceRoot":"","sources":["../../src/browser/table-transfer.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B,CAAC;AACF,KAAK,YAAY,CAAC,SAAS,IAAI;IAAE,WAAW,EAAE,MAAM,SAAS,GAAG,IAAI,CAAA;CAAE,CAAC;AAEvE,wBAAgB,2BAA2B,CAAC,SAAS,SAAS,uBAAuB;IAGjF,QAAQ,QAAQ,MAAM,WAAW,MAAM,gBAAgB,YAAY,CAAC,SAAS,CAAC;IAe9E,GAAG,QAAQ,MAAM,WAAW,MAAM;EAKrC;AAED,wBAAgB,6BAA6B,CAAC,SAAS,SAAS,uBAAuB,EACrF,QAAQ,EAAE,UAAU,CAAC,OAAO,2BAA2B,CAAC,SAAS,CAAC,CAAC,EACnE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAKpD;AAED,wBAAgB,wBAAwB,CAAC,SAAS,SAAS,uBAAuB,EAAE,KAAK,EAAE;IACzF,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAC7C,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,GAAG,IAAI,CAAC;CACpD;;;;SASA"}
@@ -0,0 +1,27 @@
1
+ import type { CoreViewportRequest, CominsViewportDataEvent } from "../core/viewport/data";
2
+ export type CominsViewportRequest = CoreViewportRequest & {
3
+ signal: AbortSignal;
4
+ };
5
+ type WithSignal<TEvent> = TEvent extends {
6
+ request: CoreViewportRequest;
7
+ } ? Omit<TEvent, "request"> & {
8
+ request: CominsViewportRequest;
9
+ } : TEvent;
10
+ export type BrowserViewportDataEvent<T> = WithSignal<CominsViewportDataEvent<T>>;
11
+ export declare function createViewportRequestExecutor(options: {
12
+ onRequest: (request: CominsViewportRequest) => void | Promise<void>;
13
+ onSettled: (requestId: string) => void;
14
+ }): {
15
+ start(descriptor: CoreViewportRequest): void;
16
+ cancel: (requestId: string) => void;
17
+ release(requestId: string): void;
18
+ dispose(): void;
19
+ };
20
+ /** The consumer owns data; this boundary owns only execution and listener lifetime. */
21
+ export declare function runViewportRequest<T>(input: {
22
+ request: CominsViewportRequest;
23
+ getRows: (request: CominsViewportRequest) => readonly T[] | Promise<readonly T[]>;
24
+ dispatch: (event: BrowserViewportDataEvent<T>) => void;
25
+ }): Promise<void>;
26
+ export {};
27
+ //# sourceMappingURL=viewport-requests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport-requests.d.ts","sourceRoot":"","sources":["../../src/browser/viewport-requests.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAE1F,MAAM,MAAM,qBAAqB,GAAG,mBAAmB,GAAG;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,CAAC;AAClF,KAAK,UAAU,CAAC,MAAM,IAAI,MAAM,SAAS;IAAE,OAAO,EAAE,mBAAmB,CAAA;CAAE,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG;IAAE,OAAO,EAAE,qBAAqB,CAAA;CAAE,GAAG,MAAM,CAAC;AAClJ,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,OAAO,EAAE;IACrD,SAAS,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC;sBAUqB,mBAAmB;wBAPZ,MAAM;uBAuBZ,MAAM;;EAS5B;AAED,uFAAuF;AACvF,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE;IACjD,OAAO,EAAE,qBAAqB,CAAC;IAC/B,OAAO,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAClF,QAAQ,EAAE,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;CACxD,GAAG,OAAO,CAAC,IAAI,CAAC,CAchB"}
@@ -1,5 +1,5 @@
1
1
  import { type RefObject } from "react";
2
- import type { CominsCellAddress, CominsCellRange, CominsRowId, CominsTableState } from "./core";
2
+ import type { CominsCellAddress, CominsCellRange, CominsRowId, CominsTableState } from "./react/core-compat";
3
3
  /** Private gesture controller. All writes go through the owning Table's batch callback. */
4
4
  export declare function useCominsCellFill<TData>(options: {
5
5
  enabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"cell-fill.d.ts","sourceRoot":"","sources":["../src/cell-fill.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACrH,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAahG,2FAA2F;AAC3F,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IAC/B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,IAAI,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACvC,QAAQ,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3C,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,iBAAiB,GAAG,IAAI,CAAC;IACnE,WAAW,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,OAAO,CAAC;IACjD,MAAM,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC;IACtE,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC/C,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC9C,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;+BAyBmC,MAAM,GAAG,OAAO;;yBAuF3B,iBAAiB;;;;EAqBzC"}
1
+ {"version":3,"file":"cell-fill.d.ts","sourceRoot":"","sources":["../src/cell-fill.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACrH,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAI7G,2FAA2F;AAC3F,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,EAAE,SAAS,WAAW,EAAE,CAAC;IAC/B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,IAAI,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACvC,QAAQ,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3C,cAAc,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,iBAAiB,GAAG,IAAI,CAAC;IACnE,WAAW,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,OAAO,CAAC;IACjD,MAAM,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC;IACtE,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC/C,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC9C,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;+BAyBmC,MAAM,GAAG,OAAO;;yBA2E3B,iBAAiB;;;;EAqBzC"}