argus-table 0.3.0 → 0.4.0

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 (63) hide show
  1. package/dist/argus-column-group.js +66 -0
  2. package/dist/argus-column-group.js.map +1 -0
  3. package/dist/argus-column.js +4 -25
  4. package/dist/argus-column.js.map +1 -1
  5. package/dist/argus-table.js +553 -200
  6. package/dist/argus-table.js.map +1 -1
  7. package/dist/attributes.js +21 -0
  8. package/dist/attributes.js.map +1 -0
  9. package/dist/cdn/argus-table.js +92 -57
  10. package/dist/cdn/argus-table.js.map +1 -1
  11. package/dist/column-registry.js +23 -0
  12. package/dist/column-registry.js.map +1 -0
  13. package/dist/controllers/auto-width.js +6 -5
  14. package/dist/controllers/auto-width.js.map +1 -1
  15. package/dist/controllers/column-children.js +32 -9
  16. package/dist/controllers/column-children.js.map +1 -1
  17. package/dist/controllers/column-window.js +0 -4
  18. package/dist/controllers/column-window.js.map +1 -1
  19. package/dist/controllers/plugins.js +25 -6
  20. package/dist/controllers/plugins.js.map +1 -1
  21. package/dist/controllers/reorder-drag.js +12 -9
  22. package/dist/controllers/reorder-drag.js.map +1 -1
  23. package/dist/controllers/row-measure.js +2 -1
  24. package/dist/controllers/row-measure.js.map +1 -1
  25. package/dist/controllers/virtual-controller.js +25 -32
  26. package/dist/controllers/virtual-controller.js.map +1 -1
  27. package/dist/core/src/columns/column-groups.js +129 -0
  28. package/dist/core/src/columns/column-groups.js.map +1 -0
  29. package/dist/core/src/columns/column-order.js +125 -31
  30. package/dist/core/src/columns/column-order.js.map +1 -1
  31. package/dist/core/src/columns/resolve-columns.js +0 -1
  32. package/dist/core/src/columns/resolve-columns.js.map +1 -1
  33. package/dist/core/src/columns/spread-width.js +43 -0
  34. package/dist/core/src/columns/spread-width.js.map +1 -0
  35. package/dist/core/src/filters/filter.js +6 -8
  36. package/dist/core/src/filters/filter.js.map +1 -1
  37. package/dist/core/src/grid/row-layout.js +19 -11
  38. package/dist/core/src/grid/row-layout.js.map +1 -1
  39. package/dist/core/src/state/selection.js +2 -1
  40. package/dist/core/src/state/selection.js.map +1 -1
  41. package/dist/core/src/table/create-table.js +57 -22
  42. package/dist/core/src/table/create-table.js.map +1 -1
  43. package/dist/core/src/table/sorted-row-model.js.map +1 -1
  44. package/dist/core/src/virtual/row-sizes.js +0 -4
  45. package/dist/core/src/virtual/row-sizes.js.map +1 -1
  46. package/dist/custom-elements.json +489 -245
  47. package/dist/events.js +16 -16
  48. package/dist/events.js.map +1 -1
  49. package/dist/index.d.ts +273 -127
  50. package/dist/index.js +3 -2
  51. package/dist/render/body.js +2 -2
  52. package/dist/render/body.js.map +1 -1
  53. package/dist/render/cells.js +11 -3
  54. package/dist/render/cells.js.map +1 -1
  55. package/dist/render/content-directive.js +1 -1
  56. package/dist/render/content-directive.js.map +1 -1
  57. package/dist/render/content.js +15 -3
  58. package/dist/render/content.js.map +1 -1
  59. package/dist/render/header.js +82 -19
  60. package/dist/render/header.js.map +1 -1
  61. package/dist/styles/base.js +1 -1
  62. package/dist/styles/base.js.map +1 -1
  63. package/package.json +1 -1
package/dist/events.js CHANGED
@@ -1,24 +1,24 @@
1
1
  // src/events.ts
2
- /** Fired after an update when the visible row range changed. */
2
+ /** Fired after an update when the rows in view changed. */
3
3
  var RANGE_CHANGE = "argus-range-change";
4
- /** Fired after the sort order changed (uncontrolled), or with the proposed order (controlled). */
5
- var SORT_CHANGE = "argus-sort-change";
6
- /** Fired when a column was resized (uncontrolled), or with the proposed widths (controlled). */
7
- var COLUMN_RESIZE = "argus-column-resize";
8
- /** Fired when a column was moved (uncontrolled), or with the proposed order (controlled). */
9
- var COLUMN_REORDER = "argus-column-reorder";
10
- /** Fired when a column was pinned or unpinned (uncontrolled), or with the proposed pins (controlled). */
11
- var COLUMN_PIN = "argus-column-pin";
12
- /** Fired when a column was hidden or shown (uncontrolled), or with the proposed visibility (controlled). */
13
- var COLUMN_HIDE = "argus-column-hide";
14
- /** Fired when a column's filter was set, changed or cleared (uncontrolled), or with the proposed filters (controlled). */
15
- var COLUMN_FILTER = "argus-column-filter";
4
+ /** `sorting` changed (uncontrolled), or the proposed order (controlled). */
5
+ var SORTING_CHANGE = "argus-sorting-change";
6
+ /** `columnSizing` changed (uncontrolled), or the proposed widths (controlled). Once per column. */
7
+ var COLUMN_SIZING_CHANGE = "argus-column-sizing-change";
8
+ /** `columnOrder` changed (uncontrolled), or the proposed order (controlled). */
9
+ var COLUMN_ORDER_CHANGE = "argus-column-order-change";
10
+ /** `columnPinning` changed (uncontrolled), or the proposed pins (controlled). */
11
+ var COLUMN_PINNING_CHANGE = "argus-column-pinning-change";
12
+ /** `columnVisibility` changed (uncontrolled), or the proposed visibility (controlled). */
13
+ var COLUMN_VISIBILITY_CHANGE = "argus-column-visibility-change";
14
+ /** `columnFilters` changed (uncontrolled), or the proposed filters (controlled). */
15
+ var COLUMN_FILTERS_CHANGE = "argus-column-filters-change";
16
+ /** `selection` changed (uncontrolled), or the proposed ids (controlled). */
17
+ var SELECTION_CHANGE = "argus-selection-change";
16
18
  /** Fired when a body row was clicked, after `argus-cell-click`. */
17
19
  var ROW_CLICK = "argus-row-click";
18
20
  /** Fired when a body cell was clicked, before `argus-row-click`. */
19
21
  var CELL_CLICK = "argus-cell-click";
20
- /** Fired when the selected rows changed (uncontrolled), or with the proposed ids (controlled). */
21
- var ROW_SELECT = "argus-row-select";
22
22
  /** Fired after the update when a `dataSource` page failed to load. */
23
23
  var LOAD_ERROR = "argus-load-error";
24
24
  /** Dispatches a bubbling, composed `CustomEvent`, the shape of every public event. */
@@ -29,6 +29,6 @@ function fire(host, name, detail) {
29
29
  composed: true
30
30
  }));
31
31
  }
32
- export { CELL_CLICK, COLUMN_FILTER, COLUMN_HIDE, COLUMN_PIN, COLUMN_REORDER, COLUMN_RESIZE, LOAD_ERROR, RANGE_CHANGE, ROW_CLICK, ROW_SELECT, SORT_CHANGE, fire };
32
+ export { CELL_CLICK, COLUMN_FILTERS_CHANGE, COLUMN_ORDER_CHANGE, COLUMN_PINNING_CHANGE, COLUMN_SIZING_CHANGE, COLUMN_VISIBILITY_CHANGE, LOAD_ERROR, RANGE_CHANGE, ROW_CLICK, SELECTION_CHANGE, SORTING_CHANGE, fire };
33
33
 
34
34
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","names":[],"sources":["../src/events.ts"],"sourcesContent":["import type {\n CellClickDetail,\n ColumnFilterDetail,\n ColumnHideDetail,\n ColumnPinDetail,\n ColumnReorderDetail,\n ColumnResizeDetail,\n LoadErrorDetail,\n RangeChangeDetail,\n RowClickDetail,\n RowSelectDetail,\n SortChangeDetail,\n} from '@argus-table/core';\n\n/** Fired after an update when the visible row range changed. */\nexport const RANGE_CHANGE = 'argus-range-change';\n\n/** Fired after the sort order changed (uncontrolled), or with the proposed order (controlled). */\nexport const SORT_CHANGE = 'argus-sort-change';\n\n/** Fired when a column was resized (uncontrolled), or with the proposed widths (controlled). */\nexport const COLUMN_RESIZE = 'argus-column-resize';\n\n/** Fired when a column was moved (uncontrolled), or with the proposed order (controlled). */\nexport const COLUMN_REORDER = 'argus-column-reorder';\n\n/** Fired when a column was pinned or unpinned (uncontrolled), or with the proposed pins (controlled). */\nexport const COLUMN_PIN = 'argus-column-pin';\n\n/** Fired when a column was hidden or shown (uncontrolled), or with the proposed visibility (controlled). */\nexport const COLUMN_HIDE = 'argus-column-hide';\n\n/** Fired when a column's filter was set, changed or cleared (uncontrolled), or with the proposed filters (controlled). */\nexport const COLUMN_FILTER = 'argus-column-filter';\n\n/** Fired when a body row was clicked, after `argus-cell-click`. */\nexport const ROW_CLICK = 'argus-row-click';\n\n/** Fired when a body cell was clicked, before `argus-row-click`. */\nexport const CELL_CLICK = 'argus-cell-click';\n\n/** Fired when the selected rows changed (uncontrolled), or with the proposed ids (controlled). */\nexport const ROW_SELECT = 'argus-row-select';\n\n/** Fired after the update when a `dataSource` page failed to load. */\nexport const LOAD_ERROR = 'argus-load-error';\n\ndeclare global {\n interface HTMLElementEventMap {\n 'argus-range-change': CustomEvent<RangeChangeDetail>;\n 'argus-sort-change': CustomEvent<SortChangeDetail>;\n 'argus-column-resize': CustomEvent<ColumnResizeDetail>;\n 'argus-column-reorder': CustomEvent<ColumnReorderDetail>;\n 'argus-column-pin': CustomEvent<ColumnPinDetail>;\n 'argus-column-hide': CustomEvent<ColumnHideDetail>;\n 'argus-column-filter': CustomEvent<ColumnFilterDetail>;\n 'argus-row-click': CustomEvent<RowClickDetail<unknown>>;\n 'argus-cell-click': CustomEvent<CellClickDetail<unknown>>;\n 'argus-load-error': CustomEvent<LoadErrorDetail>;\n 'argus-row-select': CustomEvent<RowSelectDetail>;\n }\n}\n\n/** Dispatches a bubbling, composed `CustomEvent`, the shape of every public event. */\nexport function fire(host: HTMLElement, name: string, detail: unknown): boolean {\n return host.dispatchEvent(new CustomEvent(name, { detail, bubbles: true, composed: true }));\n}\n"],"mappings":";;AAeA,IAAa,eAAe;;AAG5B,IAAa,cAAc;;AAG3B,IAAa,gBAAgB;;AAG7B,IAAa,iBAAiB;;AAG9B,IAAa,aAAa;;AAG1B,IAAa,cAAc;;AAG3B,IAAa,gBAAgB;;AAG7B,IAAa,YAAY;;AAGzB,IAAa,aAAa;;AAG1B,IAAa,aAAa;;AAG1B,IAAa,aAAa;;AAmB1B,SAAgB,KAAK,MAAmB,MAAc,QAA0B;CAC9E,OAAO,KAAK,cAAc,IAAI,YAAY,MAAM;EAAE;EAAQ,SAAS;EAAM,UAAU;CAAK,CAAC,CAAC;AAC5F"}
1
+ {"version":3,"file":"events.js","names":[],"sources":["../src/events.ts"],"sourcesContent":["import type {\n CellClickDetail,\n ColumnFiltersChangeDetail,\n ColumnOrderChangeDetail,\n ColumnPinningChangeDetail,\n ColumnSizingChangeDetail,\n ColumnVisibilityChangeDetail,\n LoadErrorDetail,\n RangeChangeDetail,\n RowClickDetail,\n SelectionChangeDetail,\n SortingChangeDetail,\n} from '@argus-table/core';\n\n// A change of controllable state fires `argus-<property>-change`, with the value\n// under the property's name in `detail` (ADR 0004): after the update when the table\n// applied it (uncontrolled), right away with the proposed value when it is controlled.\n// The wrappers derive two-way binding from that naming.\n\n/** Fired after an update when the rows in view changed. */\nexport const RANGE_CHANGE = 'argus-range-change';\n\n/** `sorting` changed (uncontrolled), or the proposed order (controlled). */\nexport const SORTING_CHANGE = 'argus-sorting-change';\n\n/** `columnSizing` changed (uncontrolled), or the proposed widths (controlled). Once per column. */\nexport const COLUMN_SIZING_CHANGE = 'argus-column-sizing-change';\n\n/** `columnOrder` changed (uncontrolled), or the proposed order (controlled). */\nexport const COLUMN_ORDER_CHANGE = 'argus-column-order-change';\n\n/** `columnPinning` changed (uncontrolled), or the proposed pins (controlled). */\nexport const COLUMN_PINNING_CHANGE = 'argus-column-pinning-change';\n\n/** `columnVisibility` changed (uncontrolled), or the proposed visibility (controlled). */\nexport const COLUMN_VISIBILITY_CHANGE = 'argus-column-visibility-change';\n\n/** `columnFilters` changed (uncontrolled), or the proposed filters (controlled). */\nexport const COLUMN_FILTERS_CHANGE = 'argus-column-filters-change';\n\n/** `selection` changed (uncontrolled), or the proposed ids (controlled). */\nexport const SELECTION_CHANGE = 'argus-selection-change';\n\n/** Fired when a body row was clicked, after `argus-cell-click`. */\nexport const ROW_CLICK = 'argus-row-click';\n\n/** Fired when a body cell was clicked, before `argus-row-click`. */\nexport const CELL_CLICK = 'argus-cell-click';\n\n/** Fired after the update when a `dataSource` page failed to load. */\nexport const LOAD_ERROR = 'argus-load-error';\n\ndeclare global {\n interface HTMLElementEventMap {\n 'argus-range-change': CustomEvent<RangeChangeDetail>;\n 'argus-sorting-change': CustomEvent<SortingChangeDetail>;\n 'argus-column-sizing-change': CustomEvent<ColumnSizingChangeDetail>;\n 'argus-column-order-change': CustomEvent<ColumnOrderChangeDetail>;\n 'argus-column-pinning-change': CustomEvent<ColumnPinningChangeDetail>;\n 'argus-column-visibility-change': CustomEvent<ColumnVisibilityChangeDetail>;\n 'argus-column-filters-change': CustomEvent<ColumnFiltersChangeDetail>;\n 'argus-selection-change': CustomEvent<SelectionChangeDetail>;\n 'argus-row-click': CustomEvent<RowClickDetail<unknown>>;\n 'argus-cell-click': CustomEvent<CellClickDetail<unknown>>;\n 'argus-load-error': CustomEvent<LoadErrorDetail>;\n }\n}\n\n/** Dispatches a bubbling, composed `CustomEvent`, the shape of every public event. */\nexport function fire(host: HTMLElement, name: string, detail: unknown): boolean {\n return host.dispatchEvent(new CustomEvent(name, { detail, bubbles: true, composed: true }));\n}\n"],"mappings":";;AAoBA,IAAa,eAAe;;AAG5B,IAAa,iBAAiB;;AAG9B,IAAa,uBAAuB;;AAGpC,IAAa,sBAAsB;;AAGnC,IAAa,wBAAwB;;AAGrC,IAAa,2BAA2B;;AAGxC,IAAa,wBAAwB;;AAGrC,IAAa,mBAAmB;;AAGhC,IAAa,YAAY;;AAGzB,IAAa,aAAa;;AAG1B,IAAa,aAAa;;AAmB1B,SAAgB,KAAK,MAAmB,MAAc,QAA0B;CAC9E,OAAO,KAAK,cAAc,IAAI,YAAY,MAAM;EAAE;EAAQ,SAAS;EAAM,UAAU;CAAK,CAAC,CAAC;AAC5F"}