vastgrid 0.1.0 → 0.1.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.
package/README.md CHANGED
@@ -22,4 +22,4 @@ const source = new RemoteSource({ endpoint: "/api/table", ref: "sales.parquet" }
22
22
  </div>;
23
23
  ```
24
24
 
25
- Documentation, benchmarks and the server setup: https://github.com/yhay81/vastgrid
25
+ Documentation and a live demo: https://vastgrid.yhay81.com
@@ -1 +1 @@
1
- {"version":3,"file":"bars.d.ts","sourceRoot":"","sources":["../../src/components/bars.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,6EAA6E;AAC7E,wBAAgB,OAAO,CAAC,EACtB,UAAU,EACV,QAAQ,EACR,SAAS,GACV,EAAE;IACD,UAAU,EAAE,cAAc,CAAC;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAChD,+BAmHA;AAED,gGAAgG;AAChG,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE;IAAE,UAAU,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,+BA8CrG"}
1
+ {"version":3,"file":"bars.d.ts","sourceRoot":"","sources":["../../src/components/bars.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,6EAA6E;AAC7E,wBAAgB,OAAO,CAAC,EACtB,UAAU,EACV,QAAQ,EACR,SAAS,GACV,EAAE;IACD,UAAU,EAAE,cAAc,CAAC;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAChD,+BAmHA;AAED,gGAAgG;AAChG,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE;IAAE,UAAU,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,+BA8CrG"}
@@ -1,5 +1,6 @@
1
1
  import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useRef, useState } from "react";
3
+ import { filtersRows } from "vastgrid-core";
3
4
  import { countFormat, filterLabel, numberFormat } from "../labels.js";
4
5
  /** Search box, active sort and filters, row count and the columns button. */
5
6
  export function Toolbar({ controller, messages, onColumns, }) {
@@ -21,7 +22,7 @@ export function Toolbar({ controller, messages, onColumns, }) {
21
22
  const filters = query.filters ?? [];
22
23
  const sort = query.sort ?? [];
23
24
  const total = controller.totalRows;
24
- const filtered = controller.view.id !== null && (filters.length > 0 || Boolean(query.search?.trim()));
25
+ const filtered = controller.view.id !== null && filtersRows(query);
25
26
  let rows;
26
27
  if (controller.info?.status === "loading") {
27
28
  const progress = controller.info.progress;
@@ -51,7 +52,7 @@ export function Toolbar({ controller, messages, onColumns, }) {
51
52
  .join(", ")) }), _jsx("button", { type: "button", className: "vg-chip__remove", "aria-label": messages.clearSort, title: messages.clearSort, onClick: () => controller.clearSort(), children: "\u00D7" })] })), filters.map((filter) => {
52
53
  const label = filterLabel(filter, controller.schema[filter.column], controller.formatter, messages);
53
54
  return (_jsxs("span", { className: "vg-chip vg-chip--filter", children: [_jsx("span", { title: label, children: label }), _jsx("button", { type: "button", className: "vg-chip__remove", "aria-label": messages.removeFilter(label), title: messages.removeFilter(label), onClick: () => controller.setFilter(filter.column, null), children: "\u00D7" })] }, filter.column));
54
- }), (filters.length > 0 || Boolean(query.search?.trim())) && (_jsx("button", { type: "button", className: "vg-button vg-button--small", onClick: () => controller.clearFilters(), children: messages.clearFilters })), _jsx("span", { className: "vg-toolbar__spacer" }), _jsx("span", { className: "vg-toolbar__count", "aria-live": "polite", children: controller.viewPending ? messages.buildingView : rows }), _jsx("button", { type: "button", className: "vg-button vg-button--small", onClick: (event) => onColumns(event.currentTarget), disabled: !controller.info, children: messages.columns })] }));
55
+ }), filtersRows(query) && (_jsx("button", { type: "button", className: "vg-button vg-button--small", onClick: () => controller.clearFilters(), children: messages.clearFilters })), _jsx("span", { className: "vg-toolbar__spacer" }), _jsx("span", { className: "vg-toolbar__count", "aria-live": "polite", children: controller.viewPending ? messages.buildingView : rows }), _jsx("button", { type: "button", className: "vg-button vg-button--small", onClick: (event) => onColumns(event.currentTarget), disabled: !controller.info, children: messages.columns })] }));
55
56
  }
56
57
  /** The active cell and, for multi-cell selections, count, sum, average, minimum and maximum. */
57
58
  export function StatusBar({ controller, messages }) {
@@ -1 +1 @@
1
- {"version":3,"file":"bars.js","sourceRoot":"","sources":["../../src/components/bars.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bars.js","sourceRoot":"","sources":["../../src/components/bars.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,10 @@
1
- import { type ColumnSchema, type DistinctValues, type Filter, type ValueFormatter } from "vastgrid-core";
1
+ import { type ColumnSchema, type ColumnType, type DistinctValues, type Filter, type ValueFormatter } from "vastgrid-core";
2
2
  import type { Messages } from "../messages.js";
3
+ /**
4
+ * Converts typed text for a numeric column into a number when it is one. Decimals and integers that a
5
+ * JavaScript number cannot hold exactly (beyond 2^53) stay text, which servers compare exactly.
6
+ */
7
+ export declare function comparable(text: string, type: ColumnType): string | number;
3
8
  /**
4
9
  * The filter for one column, in the manner of spreadsheet filters: a searchable list of values with
5
10
  * check boxes, or a condition (comparison, text match, range, blank).
@@ -1 +1 @@
1
- {"version":3,"file":"filter-panel.d.ts","sourceRoot":"","sources":["../../src/components/filter-panel.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,MAAM,EAKX,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAoD/C;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,EACL,IAAI,EACJ,OAAO,GACR,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,cAAc,CAAC;IAC1B,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;IAC9E,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC1C,+BA2MA"}
1
+ {"version":3,"file":"filter-panel.d.ts","sourceRoot":"","sources":["../../src/components/filter-panel.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,MAAM,EAKX,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AA2C/C;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAO1E;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,KAAK,EACL,IAAI,EACJ,OAAO,GACR,EAAE;IACD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,cAAc,CAAC;IAC1B,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;IAC9E,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC1C,+BAyMA"}
@@ -37,14 +37,20 @@ function initialCondition(filter) {
37
37
  return { operator: "none", first: "", second: "" };
38
38
  }
39
39
  }
40
- /** Converts typed text for a numeric column into a number when it is one. */
41
- function comparable(text, numeric) {
42
- if (numeric) {
43
- const number = Number(text.replaceAll(",", ""));
44
- if (text.trim() !== "" && Number.isFinite(number))
45
- return number;
46
- }
47
- return text;
40
+ /**
41
+ * Converts typed text for a numeric column into a number when it is one. Decimals and integers that a
42
+ * JavaScript number cannot hold exactly (beyond 2^53) stay text, which servers compare exactly.
43
+ */
44
+ export function comparable(text, type) {
45
+ if (!isNumericType(type))
46
+ return text;
47
+ const digits = text.trim().replaceAll(",", "");
48
+ const number = Number(digits);
49
+ if (digits === "" || !Number.isFinite(number))
50
+ return text;
51
+ if (type === "decimal" || (/^[+-]?\d+$/.test(digits) && !Number.isSafeInteger(number)))
52
+ return digits;
53
+ return number;
48
54
  }
49
55
  /**
50
56
  * The filter for one column, in the manner of spreadsheet filters: a searchable list of values with
@@ -139,8 +145,8 @@ export function FilterPanel({ column, schema, filter, messages, formatter, count
139
145
  return {
140
146
  type: "between",
141
147
  column,
142
- ...(first ? { min: comparable(first, isNumericType(schema.type)) } : {}),
143
- ...(second ? { max: comparable(second, isNumericType(schema.type)) } : {}),
148
+ ...(first ? { min: comparable(first, schema.type) } : {}),
149
+ ...(second ? { max: comparable(second, schema.type) } : {}),
144
150
  };
145
151
  case "eq":
146
152
  case "ne":
@@ -148,9 +154,7 @@ export function FilterPanel({ column, schema, filter, messages, formatter, count
148
154
  case "le":
149
155
  case "gt":
150
156
  case "ge":
151
- return first === ""
152
- ? null
153
- : { type: "compare", column, op: operator, value: comparable(first, isNumericType(schema.type)) };
157
+ return first === "" ? null : { type: "compare", column, op: operator, value: comparable(first, schema.type) };
154
158
  default:
155
159
  return first === "" ? null : { type: "text", column, op: operator, value: first };
156
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filter-panel.js","sourceRoot":"","sources":["../../src/components/filter-panel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-panel.js","sourceRoot":"","sources":["../../src/components/filter-panel.tsx"],"names":[],"mappings":"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"}
@@ -34,8 +34,6 @@ export declare class CopyTooLargeError extends Error {
34
34
  readonly limit: number;
35
35
  constructor(limit: number);
36
36
  }
37
- /** Filters on one column (the grid edits one filter per column). */
38
- export declare function filterColumn(filter: Filter): number;
39
37
  /**
40
38
  * State and behavior of one grid: the table and its view, columns, selection, scrolling and the row
41
39
  * cache. It is independent of React; the component forwards DOM events here and draws with
@@ -155,7 +153,10 @@ export declare class GridController {
155
153
  fullValue(row: number, col: number, signal?: AbortSignal): Promise<CellValue>;
156
154
  /** Builds clipboard text from values per column. */
157
155
  private clipboardText;
158
- /** The current range's values from the cache, or null when some are not loaded (or it is large). */
156
+ /**
157
+ * The current range's values from the cache, or null when some are not loaded, may have been cut
158
+ * for display, or the range is large.
159
+ */
159
160
  private cachedRange;
160
161
  /** Clipboard text for the current range when every cell is loaded; otherwise null (use `copySelection`). */
161
162
  copySelectionSync(options: {
@@ -180,10 +181,18 @@ export declare class GridController {
180
181
  cells: number;
181
182
  }>;
182
183
  setQuery(query: ViewQuery): Promise<void>;
184
+ /**
185
+ * Creates a view, asking once more when the source cancelled it without being asked to: a server
186
+ * cancels the build when it closes the table (for example because the file changed), and the next
187
+ * request opens the table again.
188
+ */
189
+ private createView;
183
190
  sortBy(col: number, direction: SortDirection, add?: boolean): void;
184
191
  clearSort(): void;
185
192
  /** Replaces the filter of a schema column (`null` removes it). */
186
- setFilter(column: number, filter: Filter | null): void;
193
+ setFilter(column: number, filter: Filter | null): Promise<void>;
194
+ /** Keeps the rows whose value in the cell's column is the cell's value (or all others, with `exclude`). */
195
+ filterByValue(row: number, col: number, exclude?: boolean): Promise<void>;
187
196
  filterOf(column: number): Filter | null;
188
197
  clearFilters(): void;
189
198
  setSearch(search: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,MAAM,EAIX,QAAQ,EACR,UAAU,EACV,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,WAAW,EAIhB,cAAc,EACd,KAAK,QAAQ,EACb,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,uFAAuF;IACvF,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAE1E,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,IAAI,EAAE,OAAO,CAAC;CACf;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM;IAAlC,YAAqB,KAAK,EAAE,MAAM,EAEjC;CACF;AAwCD,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,UAE1C;AAED;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,SAAS,iBAAwB;IAC1C,QAAQ,CAAC,OAAO,aAAoB;IACpC,QAAQ,CAAC,OAAO,aAAoB;IACpC,SAAS,EAAE,cAAc,CAAC;IAC1B,wFAAwF;IACxF,aAAa,SAAK;IAElB,IAAI,EAAE,SAAS,GAAG,IAAI,CAAQ;IAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChC,KAAK,EAAE,SAAS,CAAM;IACtB,IAAI,EAAE,QAAQ,CAAwC;IACtD,WAAW,UAAS;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChC,OAAO,EAAE,WAAW,EAAE,CAAM;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAM;IAC5B,MAAM,eAAwB;IAC9B,MAAM,SAAK;IACX,WAAW,SAAK;IAChB,WAAW,SAAM;IACjB,KAAK,SAAK;IACV,MAAM,SAAK;IACX,KAAK,EAAE,GAAG,GAAG,IAAI,CAAQ;IACzB,+DAA+D;IAC/D,QAAQ,SAAM;IACd,QAAQ,SAAM;IACd,iBAAiB,UAAS;IAC1B,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IACxC,cAAc,UAAS;IACvB,wDAAwD;IACxD,OAAO,SAAK;IACZ,qEAAqE;IACrE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,GAAG,IAAI,CAAQ;IAEnE,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IACzD,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAwB;IAE3C,YAAY,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAepD;IAED,kDAAkD;IAClD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,QAMrD;IAID,SAAS,aAAc,MAAM,IAAI,gBAK/B;IAEF,UAAU,eAAsB;IAEhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,cAK5B;IAED,IAAI,SAGH;IAED,aAAa,SAEZ;IAID,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,QAI/C;IAED,mEAAmE;IACnE,KAAK,SAQJ;IAED,kEAAkE;IAClE,MAAM,SAKL;IAED,6DAA6D;IAC7D,IAAI,SAUH;IAED,OAAO,SAMN;YAEa,IAAI;IA0BlB,OAAO,CAAC,SAAS;IA6CjB,IAAI,MAAM,wCAET;IAED,IAAI,MAAM,IAAI,YAAY,EAAE,CAE3B;IAED,gCAAgC;IAChC,IAAI,QAAQ,WAEX;IAED,4EAA4E;IAC5E,IAAI,YAAY,WAEf;IAED,IAAI,SAAS,kBAEZ;IAED,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAGlD;IAED,IAAI,UAAU,WAEb;IAED,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,MAAM,iBAInB;IAED,YAAY,SAcX;IAED,yEAAyE;IACzE,SAAS,SAgBR;IAED,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAMxC;IAED,YAAY,SAKX;IAED,oCAAoC;IACpC,WAAW,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAK9B;IAED,4EAA4E;IAC5E,oBAAoB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CASvC;IAED,gDAAgD;IAChD,OAAO,CAAC,GAAG,EAAE,MAAM,UAIlB;IAED,IAAI,CAAC,GAAG,EAAE,MAAM,UAEf;IAED,6CAA6C;IAC7C,QAAQ,CAAC,CAAC,EAAE,MAAM,UAOjB;IAED,KAAK,CAAC,CAAC,EAAE,MAAM,UAId;IAED,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,GAAG,CAsBjC;IAID,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,QAKtD;IAED,oDAAoD;IACpD,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAiBrC;IAID,6BAA6B;IAC7B,IAAI,QAAQ,WAEX;IAED,gBAAgB,CAAC,QAAQ,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,QAKvD;IAED,OAAO,CAAC,eAAe;IA+BvB,qDAAqD;IACrD,eAAe;;;;QAMd;IAID,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAGrD;IAED,wEAAwE;IAClE,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAQlF;IAED,oDAAoD;IACpD,OAAO,CAAC,aAAa;IAcrB,oGAAoG;IACpG,OAAO,CAAC,WAAW;IAmBnB,4GAA4G;IAC5G,iBAAiB,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;;;aAGnE;IAED,iGAAiG;IAC3F,aAAa,CACjB,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAClD,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAe/D;IAIK,QAAQ,CAAC,KAAK,EAAE,SAAS,iBA+B9B;IAED,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,UAAQ,QAKxD;IAED,SAAS,SAER;IAED,kEAAkE;IAClE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,QAI9C;IAED,QAAQ,CAAC,MAAM,EAAE,MAAM,iBAEtB;IAED,YAAY,SAEX;IAED,SAAS,CAAC,MAAM,EAAE,MAAM,QAEvB;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,aAAa,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAIzE;IAID,OAAO,CAAC,aAAa;IAKrB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAOtC;IAED,UAAU,CAAC,GAAG,EAAE,MAAM,QAMrB;IAED,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,QAM7C;IAED,cAAc,SAGb;IAED,UAAU,CAAC,GAAG,EAAE,MAAM,QAIrB;IAED,4DAA4D;IAC5D,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QASlC;IAED,oEAAoE;IACpE,WAAW,CAAC,GAAG,EAAE,MAAM,UAatB;IAED,OAAO,CAAC,GAAG,EAAE,MAAM,QAElB;IAED;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QAYtC;IAED,8EAA8E;IAC9E,OAAO,CAAC,QAAQ;IAyBhB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAIpE;IAED,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAI7F;IAED,+EAA+E;IACzE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,oBAsBvF;CACF"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,cAAc,EAEnB,KAAK,MAAM,EAMX,QAAQ,EACR,UAAU,EACV,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,WAAW,EAIhB,cAAc,EACd,KAAK,QAAQ,EACb,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,uFAAuF;IACvF,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAE1E,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,8BAA8B;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,IAAI,EAAE,OAAO,CAAC;CACf;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM;IAAlC,YAAqB,KAAK,EAAE,MAAM,EAEjC;CACF;AA8CD;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,SAAS,iBAAwB;IAC1C,QAAQ,CAAC,OAAO,aAAoB;IACpC,QAAQ,CAAC,OAAO,aAAoB;IACpC,SAAS,EAAE,cAAc,CAAC;IAC1B,wFAAwF;IACxF,aAAa,SAAK;IAElB,IAAI,EAAE,SAAS,GAAG,IAAI,CAAQ;IAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChC,KAAK,EAAE,SAAS,CAAM;IACtB,IAAI,EAAE,QAAQ,CAAwC;IACtD,WAAW,UAAS;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IAChC,OAAO,EAAE,WAAW,EAAE,CAAM;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAM;IAC5B,MAAM,eAAwB;IAC9B,MAAM,SAAK;IACX,WAAW,SAAK;IAChB,WAAW,SAAM;IACjB,KAAK,SAAK;IACV,MAAM,SAAK;IACX,KAAK,EAAE,GAAG,GAAG,IAAI,CAAQ;IACzB,+DAA+D;IAC/D,QAAQ,SAAM;IACd,QAAQ,SAAM;IACd,iBAAiB,UAAS;IAC1B,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAQ;IACxC,cAAc,UAAS;IACvB,wDAAwD;IACxD,OAAO,SAAK;IACZ,qEAAqE;IACrE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,GAAG,IAAI,CAAQ;IAEnE,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyB;IACzD,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,YAAY,CAAgC;IACpD,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAwB;IAE3C,YAAY,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAepD;IAED,kDAAkD;IAClD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,QAMrD;IAID,SAAS,aAAc,MAAM,IAAI,gBAK/B;IAEF,UAAU,eAAsB;IAEhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,cAK5B;IAED,IAAI,SAGH;IAED,aAAa,SAEZ;IAID,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,QAI/C;IAED,mEAAmE;IACnE,KAAK,SAQJ;IAED,kEAAkE;IAClE,MAAM,SAKL;IAED,6DAA6D;IAC7D,IAAI,SAUH;IAED,OAAO,SAMN;YAEa,IAAI;IA0BlB,OAAO,CAAC,SAAS;IAmEjB,IAAI,MAAM,wCAET;IAED,IAAI,MAAM,IAAI,YAAY,EAAE,CAE3B;IAED,gCAAgC;IAChC,IAAI,QAAQ,WAEX;IAED,4EAA4E;IAC5E,IAAI,YAAY,WAEf;IAED,IAAI,SAAS,kBAEZ;IAED,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAGlD;IAED,IAAI,UAAU,WAEb;IAED,0FAA0F;IAC1F,QAAQ,CAAC,GAAG,EAAE,MAAM,iBAInB;IAED,YAAY,SAcX;IAED,yEAAyE;IACzE,SAAS,SAgBR;IAED,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAMxC;IAED,YAAY,SAKX;IAED,oCAAoC;IACpC,WAAW,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAK9B;IAED,4EAA4E;IAC5E,oBAAoB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CASvC;IAED,gDAAgD;IAChD,OAAO,CAAC,GAAG,EAAE,MAAM,UAIlB;IAED,IAAI,CAAC,GAAG,EAAE,MAAM,UAEf;IAED,6CAA6C;IAC7C,QAAQ,CAAC,CAAC,EAAE,MAAM,UAOjB;IAED,KAAK,CAAC,CAAC,EAAE,MAAM,UAId;IAED,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,GAAG,CAsBjC;IAID,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,QAKtD;IAED,oDAAoD;IACpD,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAiBrC;IAID,6BAA6B;IAC7B,IAAI,QAAQ,WAEX;IAED,gBAAgB,CAAC,QAAQ,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,QAKvD;IAED,OAAO,CAAC,eAAe;IA+BvB,qDAAqD;IACrD,eAAe;;;;QAMd;IAID,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAGrD;IAED,wEAAwE;IAClE,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAQlF;IAED,oDAAoD;IACpD,OAAO,CAAC,aAAa;IAcrB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAmBnB,4GAA4G;IAC5G,iBAAiB,CAAC,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;;;aAGnE;IAED,iGAAiG;IAC3F,aAAa,CACjB,OAAO,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAClD,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAe/D;IAIK,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAkC9B;IAED;;;;OAIG;YACW,UAAU;IASxB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,UAAQ,QAKxD;IAED,SAAS,SAER;IAED,kEAAkE;IAClE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,iBAI9C;IAED,2GAA2G;IACrG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,UAAQ,iBAO5D;IAED,QAAQ,CAAC,MAAM,EAAE,MAAM,iBAEtB;IAED,YAAY,SAEX;IAED,SAAS,CAAC,MAAM,EAAE,MAAM,QAEvB;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,aAAa,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAIzE;IAID,OAAO,CAAC,aAAa;IAKrB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAOtC;IAED,UAAU,CAAC,GAAG,EAAE,MAAM,QAMrB;IAED,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,QAM7C;IAED,cAAc,SAGb;IAED,UAAU,CAAC,GAAG,EAAE,MAAM,QAIrB;IAED,4DAA4D;IAC5D,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QASlC;IAED,oEAAoE;IACpE,WAAW,CAAC,GAAG,EAAE,MAAM,UAatB;IAED,OAAO,CAAC,GAAG,EAAE,MAAM,QAElB;IAED;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,QActC;IAED,8EAA8E;IAC9E,OAAO,CAAC,QAAQ;IAyBhB,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAIpE;IAED,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAI7F;IAED,+EAA+E;IACzE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,oBAsBvF;CACF"}
@@ -1,4 +1,4 @@
1
- import { ColumnLayout, isAbortError, isNumericType, plainText, RowCache, ScrollAxis, SelectionModel, toHtmlTable, toMarkdownTable, toTsv, ValueFormatter, } from "vastgrid-core";
1
+ import { ColumnLayout, ErrorCodes, isAbortError, isEmptyQuery, isNumericType, MAX_TEXT_LIMIT, plainText, RowCache, ScrollAxis, SelectionModel, toHtmlTable, toMarkdownTable, toTsv, ValueFormatter, } from "vastgrid-core";
2
2
  export class CopyTooLargeError extends Error {
3
3
  limit;
4
4
  constructor(limit) {
@@ -32,12 +32,13 @@ function sleep(ms, signal) {
32
32
  function messageOf(error) {
33
33
  return error instanceof Error ? error.message : String(error);
34
34
  }
35
- function hasQuery(query) {
36
- return Boolean(query.sort?.length || query.filters?.length || query.search?.trim());
35
+ /** The stable `code` of a source's error (see `SourceError`), if it has one. */
36
+ function codeOf(error) {
37
+ return error instanceof Error && "code" in error ? error.code : undefined;
37
38
  }
38
- /** Filters on one column (the grid edits one filter per column). */
39
- export function filterColumn(filter) {
40
- return filter.column;
39
+ /** Whether a loaded value may be text that the source cut for display (it then ends with "…"). */
40
+ function mayBeCut(value) {
41
+ return typeof value === "string" && value.endsWith("…");
41
42
  }
42
43
  /**
43
44
  * State and behavior of one grid: the table and its view, columns, selection, scrolling and the row
@@ -215,13 +216,33 @@ export class GridController {
215
216
  }
216
217
  applyInfo(info) {
217
218
  const previous = this.info;
219
+ // A reopened file may not have its preview schema yet. Keep the old names until new names arrive.
220
+ if (previous && info.status === "loading" && info.columns.length === 0) {
221
+ info = { ...info, columns: previous.columns };
222
+ }
218
223
  this.info = info;
219
224
  this.loadError = null;
220
225
  const names = (table) => table?.columns.map((column) => column.name).join("\u0000");
221
226
  const types = (table) => table?.columns.map((column) => column.type).join("\u0000");
222
227
  const reset = !previous || previous.revision !== info.revision || names(previous) !== names(info);
223
228
  if (reset) {
224
- const old = new Map(this.columns.map((column) => [info.columns[column.index]?.name ?? "", column]));
229
+ if (previous?.columns.length && names(previous) !== names(info)) {
230
+ const indexOf = (column) => {
231
+ const name = previous.columns[column]?.name;
232
+ return name === undefined ? -1 : info.columns.findIndex((item) => item.name === name);
233
+ };
234
+ const sort = this.query.sort?.flatMap((key) => {
235
+ const column = indexOf(key.column);
236
+ return column < 0 ? [] : [{ ...key, column }];
237
+ });
238
+ const filters = this.query.filters?.flatMap((filter) => {
239
+ const column = indexOf(filter.column);
240
+ return column < 0 ? [] : [{ ...filter, column }];
241
+ });
242
+ this.query = { ...this.query, ...(sort ? { sort } : {}), ...(filters ? { filters } : {}) };
243
+ }
244
+ // Settings follow their columns by name, also when the file's columns moved.
245
+ const old = new Map(this.columns.map((column) => [previous?.columns[column.index]?.name ?? "", column]));
225
246
  this.columns = info.columns.map((column, index) => {
226
247
  const kept = previous && names(previous) === names(info)
227
248
  ? this.columns.find((item) => item.index === index)
@@ -241,6 +262,8 @@ export class GridController {
241
262
  this.viewPending = false;
242
263
  this.cache.clear();
243
264
  this.selection.select({ row: 0, col: 0 });
265
+ // The summary of the previous selection no longer applies.
266
+ this.scheduleSummary();
244
267
  }
245
268
  else if (previous.status !== info.status && types(previous) !== types(info)) {
246
269
  // The final types differ from the preview's (for example all columns read as text).
@@ -250,7 +273,7 @@ export class GridController {
250
273
  this.view = { id: null, rowCount: info.rowCount ?? info.readableRows, query: {} };
251
274
  }
252
275
  this.updateLayout();
253
- if (info.status === "ready" && (reset || previous?.status !== "ready") && hasQuery(this.query)) {
276
+ if (info.status === "ready" && (reset || previous?.status !== "ready") && !isEmptyQuery(this.query)) {
254
277
  void this.setQuery(this.query);
255
278
  }
256
279
  this.emit();
@@ -503,7 +526,7 @@ export class GridController {
503
526
  const state = this.visible[col];
504
527
  if (!state)
505
528
  return null;
506
- const block = await this.source.readRows({ view: this.view.id, start: row, end: row + 1, columns: [state.index], textLimit: 1_000_000 }, signal);
529
+ const block = await this.source.readRows({ view: this.view.id, start: row, end: row + 1, columns: [state.index], textLimit: MAX_TEXT_LIMIT }, signal);
507
530
  return block.columns[0]?.[0] ?? null;
508
531
  }
509
532
  /** Builds clipboard text from values per column. */
@@ -517,7 +540,10 @@ export class GridController {
517
540
  const table = options.headers ? [header, ...body] : body;
518
541
  return { text: toTsv(table), html: toHtmlTable(table, options.headers ? 1 : 0), cells: rows * columns.length };
519
542
  }
520
- /** The current range's values from the cache, or null when some are not loaded (or it is large). */
543
+ /**
544
+ * The current range's values from the cache, or null when some are not loaded, may have been cut
545
+ * for display, or the range is large.
546
+ */
521
547
  cachedRange() {
522
548
  const range = this.selection.current;
523
549
  if (!range)
@@ -531,7 +557,7 @@ export class GridController {
531
557
  const list = [];
532
558
  for (let row = range.top; row <= range.bottom; row++) {
533
559
  const value = this.cache.value(row, column.index);
534
- if (value === undefined)
560
+ if (value === undefined || mayBeCut(value))
535
561
  return null;
536
562
  list.push(value);
537
563
  }
@@ -574,7 +600,7 @@ export class GridController {
574
600
  this.emit();
575
601
  this.requestRender();
576
602
  try {
577
- const view = await this.source.createView(query, controller.signal);
603
+ const view = await this.createView(query, controller.signal);
578
604
  if (controller.signal.aborted || this.disposed)
579
605
  return;
580
606
  this.view = view;
@@ -586,16 +612,34 @@ export class GridController {
586
612
  this.scheduleSummary();
587
613
  }
588
614
  catch (error) {
589
- if (controller.signal.aborted || isAbortError(error))
590
- return;
591
- if (error instanceof Error && "code" in error && error.code === "cancelled")
615
+ // Only this grid's own cancellation (a newer query replaced this one) is silent.
616
+ if (controller.signal.aborted)
592
617
  return;
593
618
  this.viewPending = false;
594
619
  this.viewError = messageOf(error);
620
+ // The server is loading the table again (it closed it, for example because the file changed):
621
+ // follow that load, which applies the query once the table is ready.
622
+ if (codeOf(error) === ErrorCodes.notReady)
623
+ this.reload();
595
624
  }
596
625
  this.emit();
597
626
  this.requestRender();
598
627
  }
628
+ /**
629
+ * Creates a view, asking once more when the source cancelled it without being asked to: a server
630
+ * cancels the build when it closes the table (for example because the file changed), and the next
631
+ * request opens the table again.
632
+ */
633
+ async createView(query, signal) {
634
+ try {
635
+ return await this.source.createView(query, signal);
636
+ }
637
+ catch (error) {
638
+ if (signal.aborted || codeOf(error) !== ErrorCodes.cancelled)
639
+ throw error;
640
+ return this.source.createView(query, signal);
641
+ }
642
+ }
599
643
  sortBy(col, direction, add = false) {
600
644
  const state = this.visible[col];
601
645
  if (!state)
@@ -611,7 +655,18 @@ export class GridController {
611
655
  const filters = (this.query.filters ?? []).filter((item) => item.column !== column);
612
656
  if (filter)
613
657
  filters.push(filter);
614
- void this.setQuery({ ...this.query, filters });
658
+ return this.setQuery({ ...this.query, filters });
659
+ }
660
+ /** Keeps the rows whose value in the cell's column is the cell's value (or all others, with `exclude`). */
661
+ async filterByValue(row, col, exclude = false) {
662
+ const state = this.visible[col];
663
+ let value = this.value(row, col);
664
+ if (!state || value === undefined)
665
+ return;
666
+ // A value cut for display would match nothing: filter by the whole text.
667
+ if (mayBeCut(value))
668
+ value = await this.fullValue(row, col);
669
+ await this.setFilter(state.index, { type: "values", column: state.index, values: [value], exclude });
615
670
  }
616
671
  filterOf(column) {
617
672
  return this.query.filters?.find((filter) => filter.column === column) ?? null;
@@ -710,9 +765,11 @@ export class GridController {
710
765
  let changed = false;
711
766
  for (const [col, width] of widths) {
712
767
  const state = this.visible[col];
713
- if (!state || state.sized || width <= state.width)
768
+ // At most 600 px: wider numbers stay cut, and asking again for them changes nothing.
769
+ const next = Math.min(Math.ceil(width), 600);
770
+ if (!state || state.sized || next <= state.width)
714
771
  continue;
715
- state.width = Math.min(Math.ceil(width), 600);
772
+ state.width = next;
716
773
  changed = true;
717
774
  }
718
775
  if (changed) {
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../src/controller.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid.d.ts","sourceRoot":"","sources":["../src/data-grid.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAanB,MAAM,OAAO,CAAC;AACf,OAAO,EAA6B,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAQ5F,OAAO,EAAqB,cAAc,EAAY,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,MAAM,EAAE,WAAW,CAAC;IACpB,oGAAoG;IACpG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7B,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4FAA4F;IAC5F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,IAAI,IAAI,CAAC;IACd,MAAM,IAAI,IAAI,CAAC;IACf,QAAQ,IAAI,SAAS,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACjC,gEAAgE;IAChE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,sGAAsG;IACtG,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CAC1C;AA+BD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,0GA45BnB,CAAC"}
1
+ {"version":3,"file":"data-grid.d.ts","sourceRoot":"","sources":["../src/data-grid.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAanB,MAAM,OAAO,CAAC;AACf,OAAO,EAA6B,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAQ5F,OAAO,EAAqB,cAAc,EAAY,MAAM,iBAAiB,CAAC;AAE9E,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,MAAM,EAAE,WAAW,CAAC;IACpB,oGAAoG;IACpG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7B,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4FAA4F;IAC5F,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,IAAI,IAAI,CAAC;IACd,MAAM,IAAI,IAAI,CAAC;IACf,QAAQ,IAAI,SAAS,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACjC,gEAAgE;IAChE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,sGAAsG;IACtG,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;CAC1C;AA+BD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,0GAk6BnB,CAAC"}
package/dist/data-grid.js CHANGED
@@ -633,11 +633,11 @@ export const DataGrid = forwardRef(function DataGrid(props, ref) {
633
633
  label: messages.filterToValue,
634
634
  separator: true,
635
635
  disabled: !ready || !capabilities?.filter,
636
- onSelect: () => c.setFilter(state.index, { type: "values", column: state.index, values: [value] }),
636
+ onSelect: () => void c.filterByValue(row, col),
637
637
  }, {
638
638
  label: messages.excludeValue,
639
639
  disabled: !ready || !capabilities?.filter,
640
- onSelect: () => c.setFilter(state.index, { type: "values", column: state.index, values: [value], exclude: true }),
640
+ onSelect: () => void c.filterByValue(row, col, true),
641
641
  });
642
642
  }
643
643
  items.push({
@@ -677,6 +677,12 @@ export const DataGrid = forwardRef(function DataGrid(props, ref) {
677
677
  overlayMessage = messages.loading;
678
678
  else if (c.rowCount === 0 && !c.viewPending)
679
679
  overlayMessage = messages.noRows;
680
+ // Retrying reads the table again after a load error, and builds the view again after a view error.
681
+ const retry = c.loadError || c.info?.status === "error"
682
+ ? () => controller.reload()
683
+ : c.viewError
684
+ ? () => void controller.setQuery(controller.query)
685
+ : null;
680
686
  return (_jsxs("div", { ref: rootRef, className: `vg-root${className ? ` ${className}` : ""}`, style: style, "data-status": c.status, children: [toolbar && (_jsx(Toolbar, { controller: c, messages: messages, onColumns: (button) => {
681
687
  const root = rootRef.current?.getBoundingClientRect();
682
688
  const rect = button.getBoundingClientRect();
@@ -684,7 +690,7 @@ export const DataGrid = forwardRef(function DataGrid(props, ref) {
684
690
  kind: "columns",
685
691
  anchor: { x: rect.right - (root?.left ?? 0) - 260, y: rect.top - (root?.top ?? 0), height: rect.height },
686
692
  });
687
- } })), (c.viewPending || c.info?.status === "loading") && (_jsx("div", { className: "vg-progress", role: "progressbar", "aria-label": messages.loading, "aria-valuemin": 0, "aria-valuemax": 100, "aria-valuenow": c.info?.progress ? Math.round(c.info.progress * 100) : undefined, children: _jsx("span", { style: c.info?.progress && !c.viewPending ? { width: `${Math.round(c.info.progress * 100)}%` } : undefined, "data-indeterminate": c.viewPending || !c.info?.progress || undefined }) })), _jsxs("div", { ref: bodyRef, className: "vg-body", children: [_jsx("canvas", { ref: canvasRef, className: "vg-canvas" }), _jsxs("div", { ref: scrollerRef, className: "vg-scroller", role: "grid", tabIndex: 0, "aria-label": props["aria-label"] ?? messages.gridLabel, "aria-rowcount": c.rowCount + 1, "aria-colcount": c.visible.length + 1, "aria-multiselectable": "true", "aria-activedescendant": c.rowCount > 0 && activeSchema ? cellId : undefined, onPointerDown: onPointerDown, onPointerMove: onPointerMove, onPointerUp: endDrag, onPointerCancel: endDrag, onPointerLeave: onPointerLeave, onDoubleClick: onDoubleClick, onContextMenu: onContextMenu, onKeyDown: onKeyDown, children: [_jsx("div", { ref: sizerRef, className: "vg-sizer" }), activeSchema && c.rowCount > 0 && (_jsxs("div", { className: "vg-sr-only", role: "rowgroup", children: [_jsx("div", { role: "row", "aria-rowindex": 1, children: _jsx("div", { role: "columnheader", "aria-colindex": active.col + 2, children: activeSchema.name }) }), _jsx("div", { role: "row", "aria-rowindex": active.row + 2, children: _jsx("div", { role: "gridcell", id: cellId, "aria-colindex": active.col + 2, "aria-selected": "true", children: activeText }) })] }))] }), overlayMessage && (_jsxs("div", { className: "vg-message", role: c.loadError || c.viewError || c.info?.status === "error" ? "alert" : "status", children: [_jsx("span", { children: overlayMessage }), (c.loadError || c.info?.status === "error") && (_jsx("button", { type: "button", className: "vg-button", onClick: () => controller.reload(), children: messages.retry }))] })), findOpen && (_jsx(FindBar, { messages: messages, initial: c.findText, onFind: (text, direction, caseSensitive, signal) => controller.find(text, direction, caseSensitive, signal), onClose: () => {
693
+ } })), (c.viewPending || c.info?.status === "loading") && (_jsx("div", { className: "vg-progress", role: "progressbar", "aria-label": messages.loading, "aria-valuemin": 0, "aria-valuemax": 100, "aria-valuenow": c.info?.progress ? Math.round(c.info.progress * 100) : undefined, children: _jsx("span", { style: c.info?.progress && !c.viewPending ? { width: `${Math.round(c.info.progress * 100)}%` } : undefined, "data-indeterminate": c.viewPending || !c.info?.progress || undefined }) })), _jsxs("div", { ref: bodyRef, className: "vg-body", children: [_jsx("canvas", { ref: canvasRef, className: "vg-canvas" }), _jsxs("div", { ref: scrollerRef, className: "vg-scroller", role: "grid", tabIndex: 0, "aria-label": props["aria-label"] ?? messages.gridLabel, "aria-rowcount": c.rowCount + 1, "aria-colcount": c.visible.length + 1, "aria-multiselectable": "true", "aria-activedescendant": c.rowCount > 0 && activeSchema ? cellId : undefined, onPointerDown: onPointerDown, onPointerMove: onPointerMove, onPointerUp: endDrag, onPointerCancel: endDrag, onPointerLeave: onPointerLeave, onDoubleClick: onDoubleClick, onContextMenu: onContextMenu, onKeyDown: onKeyDown, children: [_jsx("div", { ref: sizerRef, className: "vg-sizer" }), activeSchema && c.rowCount > 0 && (_jsxs("div", { className: "vg-sr-only", role: "rowgroup", children: [_jsx("div", { role: "row", "aria-rowindex": 1, children: _jsx("div", { role: "columnheader", "aria-colindex": active.col + 2, children: activeSchema.name }) }), _jsx("div", { role: "row", "aria-rowindex": active.row + 2, children: _jsx("div", { role: "gridcell", id: cellId, "aria-colindex": active.col + 2, "aria-selected": "true", children: activeText }) })] }))] }), overlayMessage && (_jsxs("div", { className: "vg-message", role: c.loadError || c.viewError || c.info?.status === "error" ? "alert" : "status", children: [_jsx("span", { children: overlayMessage }), retry && (_jsx("button", { type: "button", className: "vg-button", onClick: retry, children: messages.retry }))] })), findOpen && (_jsx(FindBar, { messages: messages, initial: c.findText, onFind: (text, direction, caseSensitive, signal) => controller.find(text, direction, caseSensitive, signal), onClose: () => {
688
694
  setFindOpen(false);
689
695
  controller.findText = "";
690
696
  controller.requestRender();
@@ -1 +1 @@
1
- {"version":3,"file":"data-grid.js","sourceRoot":"","sources":["../src/data-grid.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,UAAU,EAIV,WAAW,EACX,SAAS,EACT,KAAK,EACL,mBAAmB,EACnB,OAAO,EACP,MAAM,EACN,QAAQ,EACR,oBAAoB,GACrB,MAAM,OAAO,CAAC;AACf,OAAO,EAAkB,SAAS,EAAoC,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAA8B,QAAQ,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAY,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAiB,WAAW,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAwDrD,MAAM,KAAK,GAAG,OAAO,SAAS,KAAK,WAAW,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAEpH,KAAK,UAAU,cAAc,CAAC,IAAqB,EAAE,IAAmC;IACtF,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC;IACrF,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACnE,IAAI,SAAS,CAAC,KAAK,IAAI,OAAO,aAAa,KAAK,WAAW,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAkC;YAC3C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;SAC9E,CAAC;QACF,IAAI,IAAI;YAAE,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QACpG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IACD,MAAM,SAAS,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAgC,SAAS,QAAQ,CAAC,KAAK,EAAE,GAAG;IAC5F,MAAM,EACJ,MAAM,EACN,MAAM,EACN,SAAS,EACT,YAAY,EACZ,QAAQ,GAAG,EAAE,EACb,aAAa,GAAG,CAAC,EACjB,OAAO,GAAG,IAAI,EACd,SAAS,GAAG,IAAI,EAChB,SAAS,EACT,SAAS,GAAG,SAAS,EACrB,aAAa,EACb,SAAS,EACT,KAAK,GACN,GAAG,KAAK,CAAC;IACV,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,OAAO,SAAS,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACrG,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,EAC7D,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CACjC,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,MAAM,CAAc,IAAI,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC;IACvB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAiB,IAAI,CAAC,CAAC;IAC7D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,MAAM,CAA4C,SAAS,CAAC,CAAC;IAEjF,yFAAyF;IACzF,sHAAsH;IACtH,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CACH,IAAI,cAAc,CAAC,MAAM,EAAE;QACzB,SAAS,EAAE,SAAS,IAAI,EAAE;QAC1B,YAAY,EAAE,YAAY,IAAI,EAAE;QAChC,MAAM,EAAE,cAAc;QACtB,QAAQ;QACR,aAAa;QACb,cAAc,EAAE,EAAE;QAClB,YAAY,EAAE,GAAG;QACjB,SAAS;KACV,CAAC,EACJ,CAAC,MAAM,CAAC,CACT,CAAC;IACF,oBAAoB,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IAEzF,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAE7E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,cAAc,KAAK,UAAU,CAAC,OAAO,CAAC,MAAM,IAAI,QAAQ,KAAK,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7F,UAAU,CAAC,SAAS,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE3C,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,IAAY,EAAE,EAAE;QAC5C,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAClC,WAAW,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IAChE,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAE7D,sCAAsC;IACtC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK;YAAE,OAAO;QACpD,UAAU,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,IAAI,SAAS,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACnF,UAAU,CAAC,OAAO,CAAC,YAAY,GAAG,YAAY,IAAI,SAAS,CAAC,IAAI,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;QAC5F,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;QAC/B,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QACzF,MAAM,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5C,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QACjD,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,gGAAgG;QAChG,+FAA+F;QAC/F,MAAM,YAAY,GAAG,CAAC,KAAY,EAAE,EAAE;YACpC,IAAI,QAAQ,CAAC,aAAa,KAAK,QAAQ;gBAAE,KAAK,CAAC,cAAc,EAAE,CAAC;QAClE,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,KAAqB,EAAE,EAAE;YACvC,IAAI,QAAQ,CAAC,aAAa,KAAK,QAAQ;gBAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC,CAAC;QACF,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACtD,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;QAChE,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC/C,MAAM,aAAa,GAAG,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACzD,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE;YAC9C,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC;SAClD,CAAC,CAAC;QACH,KAAK,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,GAAG,EAAE;YACV,UAAU,CAAC,IAAI,EAAE,CAAC;YAClB,UAAU,EAAE,CAAC;YACb,QAAQ,CAAC,UAAU,EAAE,CAAC;YACtB,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACjD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACzD,QAAQ,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7C,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAClD,aAAa,CAAC,UAAU,EAAE,CAAC;YAC3B,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;IAE1C,uDAAuD;IACvD,iGAAiG;IACjG,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,IAAI,IAAI,WAAW,CAAC,OAAO;YAAE,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACpF,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAEvB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,qFAAqF;IACrF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,UAAU,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAE5B,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC3C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,CAAC,OAAO,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC;YAC3C,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC;YACrC,aAAa,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,mBAAmB,CACjB,GAAG,EACH,GAAG,EAAE,CAAC,CAAC;QACL,KAAK,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE;QACzC,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE;QACjC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK;QAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YACf,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAC3E,UAAU,CAAC,gBAAgB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,UAAU;QACV,IAAI,QAAQ;YACV,OAAO,WAAW,CAAC,OAAO,CAAC;QAC7B,CAAC;KACF,CAAC,EACF,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,sBAAsB;IAEtB,SAAS,KAAK,CAAC,KAA2C;QACxD,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;QAC1D,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;IACvF,CAAC;IAED,oDAAoD;IACpD,SAAS,QAAQ,CAAC,CAAS,EAAE,CAAS,EAAE,MAAM,GAAG,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,SAAS,IAAI,CAAC,CAAC;QAChD,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC;IACpD,CAAC;IAED,SAAS,YAAY,CAAC,GAAW;QAC/B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IAED,SAAS,UAAU,CAAC,GAAW,EAAE,GAAW;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3G,OAAO,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtD,CAAC;IAED,SAAS,SAAS;QAChB,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,IAAI,GAAG,WAAW,CACtB,KAAK,EAAE,OAAkD,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,cAAc,CAClB,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAClC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAC7D,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;YAC1B,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,iBAAiB;gBAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;;gBACvF,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CACxC,CAAC;IACF,6FAA6F;IAC7F,MAAM,WAAW,GAAG,MAAM,CAA+B,IAAI,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,MAAM,CAAkC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAE7E,sBAAsB;IAEtB,SAAS,UAAU,CAAC,KAAgE;QAClF,IAAI,KAAK,CAAC,QAAQ;YAAE,OAAO,QAAiB,CAAC;QAC7C,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO;YAAE,OAAO,KAAc,CAAC;QACjE,OAAO,SAAkB,CAAC;IAC5B,CAAC;IAED,SAAS,MAAM,CAAC,CAAS,EAAE,CAAS;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;YAAE,OAAO;QAC7F,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjF,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,IAAI,CAAC;YAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;aAC5E,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,IAAI,CAAC;YAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;aACjF,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnG,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACvB,CAAC;IAED,SAAS,UAAU;QACjB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;YACrF,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,MAAM,KAAK,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC;QACjG,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY;YAAE,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;aAC5E,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM;YAAE,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC;gBAClE,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;iBAChD,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK;gBAAE,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YACzB,CAAC,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YACxG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,aAAa,CAAC,OAAO,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,SAAS,aAAa,CAAC,KAAmC;QACxD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC5C,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,qCAAqC;QACrC,IAAI,CAAC,GAAG,QAAQ,CAAC,WAAW,IAAI,CAAC,GAAG,QAAQ,CAAC,YAAY;YAAE,OAAO;QAClE,SAAS,EAAE,CAAC;QACZ,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACpB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5C,OAAO,CAAC,OAAO,GAAG;gBAChB,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,GAAG,EAAE,GAAG,CAAC,MAAM;gBACf,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;aACvC,CAAC;YACF,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC;YACxB,CAAC,CAAC,aAAa,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;YAC7B,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChF,OAAO;QACT,CAAC;QACD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,MAAM;gBACT,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;gBACzD,OAAO,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtE,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3D,OAAO,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;gBACnG,CAAC;qBAAM,CAAC;oBACN,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBAC/C,OAAO,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvE,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ;gBACX,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAC/C,OAAO,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrE,MAAM;YACR,KAAK,QAAQ;gBACX,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM;YACR;gBACE,OAAO;QACX,CAAC;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACvB,CAAC;IAED,SAAS,aAAa,CAAC,KAAmC;QACxD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3B,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC9D,OAAO;YACT,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACpD,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACX,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,OAAO;YACT,CAAC;YACD,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACX,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACb,IAAI,CAAC,aAAa,CAAC,OAAO;gBAAE,aAAa,CAAC,OAAO,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACtF,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GACP,CAAC,GAAG,QAAQ,CAAC,WAAW,IAAI,CAAC,GAAG,QAAQ,CAAC,YAAY;YACnD,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;YAChE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtB,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC;QACzB,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC;QACd,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,IAAI,QAAQ,EAAE,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI;YAAE,CAAC,CAAC,aAAa,EAAE,CAAC;IAC/G,CAAC;IAED,SAAS,OAAO,CAAC,KAAmC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAAE,OAAO;QACxD,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,oBAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5C,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC;QAC1B,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC;QACrC,IAAI,QAAQ,EAAE,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,QAAQ,CAAC,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAClG,IAAI,QAAQ;YAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC,aAAa,EAAE,CAAC;QACpB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,IAAI,CAAC,KAAK,IAAI,MAAM,IAAI,CAAC,IAAI,MAAM,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;gBACrD,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC/B,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACvC,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACvB,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACvB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3C,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,cAAc;QACrB,IAAI,UAAU,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACzC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC;YACxB,UAAU,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,SAAS,aAAa,CAAC,KAAiC;QACtD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACrC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACpB,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/B,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/B,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtG,CAAC;IACH,CAAC;IAED,SAAS,aAAa,CAAC,KAAiC;QACtD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO;QAChC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5C,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACvB,CAAC;QACD,UAAU,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED,uBAAuB;IAEvB,SAAS,SAAS,CAAC,KAAoC;QACrD,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC,OAAO;YAAE,OAAO;QACjD,MAAM,CAAC,GAAG,UAAU,CAAC;QACrB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC;QACtD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;QAC9D,IAAI,MAAM,GAAwC,IAAI,CAAC;QACvD,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;YAClB,KAAK,WAAW;gBACd,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9G,MAAM;gBACR,CAAC;gBACD,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBAChG,MAAM;YACR,KAAK,SAAS;gBACZ,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC1F,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBAChG,MAAM;YACR,KAAK,WAAW;gBACd,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC1F,MAAM;YACR,KAAK,UAAU;gBACb,MAAM,GAAG,KAAK,CAAC,MAAM;oBACnB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC;oBACpE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBAChF,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,GAAG,KAAK,CAAC,MAAM;oBACnB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC;oBACpE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBAChF,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBACrG,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CACzB,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,EAC3E,MAAM,CACP,CAAC;gBACF,MAAM;YACR,KAAK,KAAK;gBACR,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzD,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzD,MAAM;YACR,KAAK,GAAG;gBACN,IAAI,KAAK,CAAC,QAAQ;oBAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACtF,IAAI,KAAK,CAAC,OAAO;oBAAE,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;oBAC1F,OAAO;gBACZ,CAAC,CAAC,gBAAgB,EAAE,CAAC;gBACrB,MAAM;YACR,KAAK,IAAI;gBACP,UAAU,CAAC;oBACT,IAAI,EAAE,WAAW;oBACjB,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM;oBACrB,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC;iBACnE,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,QAAQ;oBAAE,WAAW,CAAC,KAAK,CAAC,CAAC;qBAC5B,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;oBAC7B,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBACvC,CAAC,CAAC,gBAAgB,EAAE,CAAC;gBACvB,CAAC;;oBAAM,OAAO;gBACd,MAAM;YACR,KAAK,aAAa;gBAChB,UAAU,CAAC;oBACT,IAAI,EAAE,aAAa;oBACnB,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM;oBACrB,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC;iBACnE,CAAC,CAAC;gBACH,MAAM;YACR;gBACE,IAAI,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;oBAC/C,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;oBACxB,CAAC,CAAC,gBAAgB,EAAE,CAAC;gBACvB,CAAC;qBAAM,IAAI,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;oBACtD,iGAAiG;oBACjG,6FAA6F;oBAC7F,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAC5C,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC;oBAC9B,UAAU,CAAC,GAAG,EAAE;wBACd,IAAI,WAAW,CAAC,OAAO,KAAK,OAAO;4BAAE,OAAO;wBAC5C,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;wBAC3B,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;oBACrB,CAAC,EAAE,CAAC,CAAC,CAAC;oBACN,OAAO;gBACT,CAAC;qBAAM,IAAI,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;oBACtD,WAAW,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;oBACjD,UAAU,CAAC;wBACT,IAAI,EAAE,aAAa;wBACnB,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM;wBACrB,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC;qBACnE,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,OAAO;gBACT,CAAC;QACL,CAAC;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,MAAM;YAAE,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,kGAAkG;IAClG;;;;OAIG;IACH,WAAW,CAAC,OAAO,GAAG,CAAC,KAAqB,EAAE,EAAE;QAC9C,IAAI,CAAC,KAAK,CAAC,aAAa;YAAE,OAAO;QACjC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,IAAI,EAAE,CAAC;QAC1C,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,MAAM,EAAE,CAAC;YACX,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,MAAM,CAAC,IAAI;gBAAE,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACvE,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC;IAEF,oBAAoB;IAEpB,MAAM,CAAC,GAAG,UAAU,CAAC;IACrB,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC;IAC1C,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAEzC,SAAS,eAAe,CAAC,GAAW;QAClC,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/F,MAAM,KAAK,GAAe;YACxB;gBACE,KAAK,EAAE,QAAQ,CAAC,aAAa;gBAC7B,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;gBACpC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,IAAI;gBACvC,OAAO,EAAE,IAAI,EAAE,SAAS,KAAK,KAAK,IAAI,CAAC,UAAU;aAClD;YACD;gBACE,KAAK,EAAE,QAAQ,CAAC,cAAc;gBAC9B,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;gBACrC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,IAAI;gBACvC,OAAO,EAAE,IAAI,EAAE,SAAS,KAAK,MAAM,IAAI,CAAC,UAAU;aACnD;SACF,CAAC;QACF,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,KAAK,CAAC,IAAI,CACR,EAAE,KAAK,EAAE,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAClG,EAAE,KAAK,EAAE,QAAQ,CAAC,iBAAiB,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CACrG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC9G,KAAK,CAAC,IAAI,CACR;YACE,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,MAAM;YACzC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;SAC/F,EACD;YACE,KAAK,EAAE,QAAQ,CAAC,UAAU;YAC1B,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,KAAK;YACxC,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;SAC9E,EACD;YACE,KAAK,EAAE,QAAQ,CAAC,OAAO;YACvB,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,GAAG,EAAE;gBACb,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACf,CAAC,CAAC,IAAI,EAAE,CAAC;YACX,CAAC;SACF,EACD,GAAG,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;YAC5B,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;YAChE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EACrE,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAClG;YACE,KAAK,EAAE,QAAQ,CAAC,cAAc;YAC9B,QAAQ,EAAE,GAAG,EAAE,CACb,KAAK,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAC1D,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EACpC,CAAC,KAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrF;SACJ,CACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,SAAS,gBAAgB,CAAC,GAAW,EAAE,GAAW;QAChD,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,KAAK,GAA0B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,MAAM,KAAK,GAAe;YACxB,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE;YAC1F;gBACE,KAAK,EAAE,QAAQ,CAAC,eAAe;gBAC/B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc;gBACxC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;aAC7C;YACD,EAAE,KAAK,EAAE,QAAQ,CAAC,cAAc,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE;SAClF,CAAC;QACF,IAAI,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CACR;gBACE,KAAK,EAAE,QAAQ,CAAC,aAAa;gBAC7B,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,MAAM;gBACzC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;aACnG,EACD;gBACE,KAAK,EAAE,QAAQ,CAAC,YAAY;gBAC5B,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,MAAM;gBACzC,QAAQ,EAAE,GAAG,EAAE,CACb,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;aACpG,CACF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CACR;YACE,KAAK,EAAE,QAAQ,CAAC,aAAa;YAC7B,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,IAAI;YACvC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;SACrC,EACD;YACE,KAAK,EAAE,QAAQ,CAAC,cAAc;YAC9B,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE,IAAI;YACvC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC;SACtC,EACD;YACE,KAAK,EAAE,QAAQ,CAAC,WAAW;YAC3B,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;SAC1F,CACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,MAAc,EAAE,MAAmB,EAAE,EAAE,CACtC,OAAO,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EACzF,CAAC,UAAU,EAAE,OAAO,CAAC,CACtB,CAAC;IACF,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,MAAmB,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EACnG,CAAC,UAAU,EAAE,OAAO,CAAC,CACtB,CAAC;IACF,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,MAAmB,EAAE,EAAE,CACtB,OAAO,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAChH,CAAC,UAAU,EAAE,OAAO,CAAC,CACtB,CAAC;IAEF,4BAA4B;IAE5B,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC;IAClC,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,UAAU,GACd,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAEhH,IAAI,cAAc,GAAkB,IAAI,CAAC;IACzC,IAAI,CAAC,CAAC,SAAS;QAAE,cAAc,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;SAChE,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO;QAAE,cAAc,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;SAC3F,IAAI,CAAC,CAAC,SAAS;QAAE,cAAc,GAAG,CAAC,CAAC,SAAS,CAAC;SAC9C,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC;QAAE,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC;SACxG,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;QAAE,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE9E,OAAO,CACL,eAAK,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,iBAAe,CAAC,CAAC,MAAM,aAC5G,OAAO,IAAI,CACV,KAAC,OAAO,IACN,UAAU,EAAE,CAAC,EACb,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE;oBACpB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;oBACtD,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;oBAC5C,UAAU,CAAC;wBACT,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;qBACzG,CAAC,CAAC;gBACL,CAAC,GACD,CACH,EACA,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,IAAI,CAClD,cACE,SAAS,EAAC,aAAa,EACvB,IAAI,EAAC,aAAa,gBACN,QAAQ,CAAC,OAAO,mBACb,CAAC,mBACD,GAAG,mBACH,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,YAE/E,eACE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,wBACtF,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,IAAI,SAAS,GACnE,GACE,CACP,EACD,eAAK,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,SAAS,aACpC,iBAAQ,GAAG,EAAE,SAAS,EAAE,SAAS,EAAC,WAAW,GAAG,EAEhD,eACE,GAAG,EAAE,WAAW,EAChB,SAAS,EAAC,aAAa,EACvB,IAAI,EAAC,MAAM,EACX,QAAQ,EAAE,CAAC,gBACC,KAAK,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,SAAS,mBACtC,CAAC,CAAC,QAAQ,GAAG,CAAC,mBACd,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,0BACd,MAAM,2BACJ,CAAC,CAAC,QAAQ,GAAG,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC1E,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,OAAO,EACpB,eAAe,EAAE,OAAO,EACxB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,aAEpB,cAAK,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAC,UAAU,GAAG,EAM1C,YAAY,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,IAAI,CAEjC,eAAK,SAAS,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU,aAGzC,cAAK,IAAI,EAAC,KAAK,mBAAgB,CAAC,YAG9B,cAAK,IAAI,EAAC,cAAc,mBAAgB,MAAM,CAAC,GAAG,GAAG,CAAC,YACnD,YAAY,CAAC,IAAI,GACd,GACF,EAGN,cAAK,IAAI,EAAC,KAAK,mBAAgB,MAAM,CAAC,GAAG,GAAG,CAAC,YAG3C,cAAK,IAAI,EAAC,UAAU,EAAC,EAAE,EAAE,MAAM,mBAAiB,MAAM,CAAC,GAAG,GAAG,CAAC,mBAAgB,MAAM,YACjF,UAAU,GACP,GACF,IACF,CACP,IACG,EACL,cAAc,IAAI,CACjB,eACE,SAAS,EAAC,YAAY,EACtB,IAAI,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,aAEnF,yBAAO,cAAc,GAAQ,EAC5B,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAC9C,iBAAQ,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,YAC3E,QAAQ,CAAC,KAAK,GACR,CACV,IACG,CACP,EACA,QAAQ,IAAI,CACX,KAAC,OAAO,IACN,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,CAAC,CAAC,QAAQ,EACnB,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,EAC3G,OAAO,EAAE,GAAG,EAAE;4BACZ,WAAW,CAAC,KAAK,CAAC,CAAC;4BACnB,UAAU,CAAC,QAAQ,GAAG,EAAE,CAAC;4BACzB,UAAU,CAAC,aAAa,EAAE,CAAC;4BAC3B,SAAS,EAAE,CAAC;wBACd,CAAC,GACD,CACH,EACA,MAAM,IAAI,CACT,cAAK,SAAS,EAAC,UAAU,EAAC,IAAI,EAAC,QAAQ,YACpC,MAAM,GACH,CACP,IACG,EACL,SAAS,IAAI,KAAC,SAAS,IAAC,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC7D,OAAO,EAAE,IAAI,KAAK,YAAY,IAAI,CACjC,KAAC,OAAO,IACN,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE,EAC9C,IAAI,EAAC,MAAM,YAEX,KAAC,QAAQ,IAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,YAAY,GAAI,GAChE,CACX,EACA,OAAO,EAAE,IAAI,KAAK,aAAa,IAAI,CAClC,KAAC,OAAO,IACN,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,QAAQ,CAAC,IAAI,EACpB,IAAI,EAAC,MAAM,YAEX,KAAC,QAAQ,IAAC,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,YAAY,GAAI,GAC9E,CACX,EACA,OAAO,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CACzD,KAAC,OAAO,IACN,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EACvD,SAAS,EAAC,mBAAmB,YAE7B,KAAC,WAAW,IACV,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAChC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAClC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,CAAC,CAAC,SAAS,EACtB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;wBAClB,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;wBACpC,UAAU,CAAC,IAAI,CAAC,CAAC;wBACjB,SAAS,EAAE,CAAC;oBACd,CAAC,GACD,GACM,CACX,EACA,OAAO,EAAE,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAC3D,KAAC,OAAO,IACN,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,QAAQ,CAAC,UAAU,EAC1B,SAAS,EAAC,mBAAmB,YAE7B,KAAC,UAAU,IACT,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAmD,EACrF,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,CAAC,CAAC,SAAS,EACtB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,SAAS,GACf,GACM,CACX,EACA,OAAO,EAAE,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAC/D,KAAC,OAAO,IACN,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,QAAQ,CAAC,WAAW,EAC3B,SAAS,EAAC,oCAAoC,YAE9C,KAAC,aAAa,IACZ,MAAM,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAmD,EACrF,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,EACxF,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACf,KAAK,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CACnD,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EACpC,CAAC,KAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CACrF,GAEH,GACM,CACX,EACA,OAAO,EAAE,IAAI,KAAK,SAAS,IAAI,CAC9B,KAAC,OAAO,IACN,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,QAAQ,CAAC,OAAO,EACvB,SAAS,EAAC,mBAAmB,YAE7B,KAAC,YAAY,IACX,OAAO,EAAE,CAAC,CAAC,OAAO,EAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAChB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,EAC7D,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,GACnC,GACM,CACX,IACG,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"data-grid.js","sourceRoot":"","sources":["../src/data-grid.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vastgrid",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "A canvas data grid for React that opens CSV, TSV, Parquet and JSON Lines files of any size, with spreadsheet selection, sorting, filters and statistics.",
5
5
  "license": "MIT",
6
6
  "author": "yhay81",
@@ -9,7 +9,7 @@
9
9
  "url": "git+https://github.com/yhay81/vastgrid.git",
10
10
  "directory": "packages/react"
11
11
  },
12
- "homepage": "https://github.com/yhay81/vastgrid#readme",
12
+ "homepage": "https://vastgrid.yhay81.com",
13
13
  "bugs": "https://github.com/yhay81/vastgrid/issues",
14
14
  "type": "module",
15
15
  "sideEffects": [
@@ -45,7 +45,7 @@
45
45
  "build": "tsc -b"
46
46
  },
47
47
  "dependencies": {
48
- "vastgrid-core": "^0.1.0"
48
+ "vastgrid-core": "^0.1.1"
49
49
  },
50
50
  "peerDependencies": {
51
51
  "react": ">=18",
@@ -1,4 +1,5 @@
1
1
  import { useEffect, useRef, useState } from "react";
2
+ import { filtersRows } from "vastgrid-core";
2
3
  import type { GridController } from "../controller.js";
3
4
  import { countFormat, filterLabel, numberFormat } from "../labels.js";
4
5
  import type { Messages } from "../messages.js";
@@ -31,7 +32,7 @@ export function Toolbar({
31
32
  const filters = query.filters ?? [];
32
33
  const sort = query.sort ?? [];
33
34
  const total = controller.totalRows;
34
- const filtered = controller.view.id !== null && (filters.length > 0 || Boolean(query.search?.trim()));
35
+ const filtered = controller.view.id !== null && filtersRows(query);
35
36
  let rows: string;
36
37
  if (controller.info?.status === "loading") {
37
38
  const progress = controller.info.progress;
@@ -108,7 +109,7 @@ export function Toolbar({
108
109
  </span>
109
110
  );
110
111
  })}
111
- {(filters.length > 0 || Boolean(query.search?.trim())) && (
112
+ {filtersRows(query) && (
112
113
  <button type="button" className="vg-button vg-button--small" onClick={() => controller.clearFilters()}>
113
114
  {messages.clearFilters}
114
115
  </button>
@@ -2,6 +2,7 @@ import { type FormEvent, useEffect, useId, useMemo, useState } from "react";
2
2
  import {
3
3
  type CellValue,
4
4
  type ColumnSchema,
5
+ type ColumnType,
5
6
  type DistinctValues,
6
7
  type Filter,
7
8
  isAbortError,
@@ -53,13 +54,17 @@ function initialCondition(filter: Filter | null): { operator: Operator; first: s
53
54
  }
54
55
  }
55
56
 
56
- /** Converts typed text for a numeric column into a number when it is one. */
57
- function comparable(text: string, numeric: boolean): string | number {
58
- if (numeric) {
59
- const number = Number(text.replaceAll(",", ""));
60
- if (text.trim() !== "" && Number.isFinite(number)) return number;
61
- }
62
- return text;
57
+ /**
58
+ * Converts typed text for a numeric column into a number when it is one. Decimals and integers that a
59
+ * JavaScript number cannot hold exactly (beyond 2^53) stay text, which servers compare exactly.
60
+ */
61
+ export function comparable(text: string, type: ColumnType): string | number {
62
+ if (!isNumericType(type)) return text;
63
+ const digits = text.trim().replaceAll(",", "");
64
+ const number = Number(digits);
65
+ if (digits === "" || !Number.isFinite(number)) return text;
66
+ if (type === "decimal" || (/^[+-]?\d+$/.test(digits) && !Number.isSafeInteger(number))) return digits;
67
+ return number;
63
68
  }
64
69
 
65
70
  /**
@@ -174,8 +179,8 @@ export function FilterPanel({
174
179
  return {
175
180
  type: "between",
176
181
  column,
177
- ...(first ? { min: comparable(first, isNumericType(schema.type)) } : {}),
178
- ...(second ? { max: comparable(second, isNumericType(schema.type)) } : {}),
182
+ ...(first ? { min: comparable(first, schema.type) } : {}),
183
+ ...(second ? { max: comparable(second, schema.type) } : {}),
179
184
  };
180
185
  case "eq":
181
186
  case "ne":
@@ -183,9 +188,7 @@ export function FilterPanel({
183
188
  case "le":
184
189
  case "gt":
185
190
  case "ge":
186
- return first === ""
187
- ? null
188
- : { type: "compare", column, op: operator, value: comparable(first, isNumericType(schema.type)) };
191
+ return first === "" ? null : { type: "compare", column, op: operator, value: comparable(first, schema.type) };
189
192
  default:
190
193
  return first === "" ? null : { type: "text", column, op: operator, value: first };
191
194
  }
package/src/controller.ts CHANGED
@@ -4,9 +4,12 @@ import {
4
4
  type ColumnSchema,
5
5
  type ColumnStats,
6
6
  type DistinctValues,
7
+ ErrorCodes,
7
8
  type Filter,
8
9
  isAbortError,
10
+ isEmptyQuery,
9
11
  isNumericType,
12
+ MAX_TEXT_LIMIT,
10
13
  plainText,
11
14
  RowCache,
12
15
  ScrollAxis,
@@ -98,13 +101,14 @@ function messageOf(error: unknown) {
98
101
  return error instanceof Error ? error.message : String(error);
99
102
  }
100
103
 
101
- function hasQuery(query: ViewQuery) {
102
- return Boolean(query.sort?.length || query.filters?.length || query.search?.trim());
104
+ /** The stable `code` of a source's error (see `SourceError`), if it has one. */
105
+ function codeOf(error: unknown) {
106
+ return error instanceof Error && "code" in error ? error.code : undefined;
103
107
  }
104
108
 
105
- /** Filters on one column (the grid edits one filter per column). */
106
- export function filterColumn(filter: Filter) {
107
- return filter.column;
109
+ /** Whether a loaded value may be text that the source cut for display (it then ends with "…"). */
110
+ function mayBeCut(value: CellValue) {
111
+ return typeof value === "string" && value.endsWith("…");
108
112
  }
109
113
 
110
114
  /**
@@ -292,13 +296,33 @@ export class GridController {
292
296
 
293
297
  private applyInfo(info: TableInfo) {
294
298
  const previous = this.info;
299
+ // A reopened file may not have its preview schema yet. Keep the old names until new names arrive.
300
+ if (previous && info.status === "loading" && info.columns.length === 0) {
301
+ info = { ...info, columns: previous.columns };
302
+ }
295
303
  this.info = info;
296
304
  this.loadError = null;
297
305
  const names = (table: TableInfo | null) => table?.columns.map((column) => column.name).join("\u0000");
298
306
  const types = (table: TableInfo | null) => table?.columns.map((column) => column.type).join("\u0000");
299
307
  const reset = !previous || previous.revision !== info.revision || names(previous) !== names(info);
300
308
  if (reset) {
301
- const old = new Map(this.columns.map((column) => [info.columns[column.index]?.name ?? "", column]));
309
+ if (previous?.columns.length && names(previous) !== names(info)) {
310
+ const indexOf = (column: number) => {
311
+ const name = previous.columns[column]?.name;
312
+ return name === undefined ? -1 : info.columns.findIndex((item) => item.name === name);
313
+ };
314
+ const sort = this.query.sort?.flatMap((key) => {
315
+ const column = indexOf(key.column);
316
+ return column < 0 ? [] : [{ ...key, column }];
317
+ });
318
+ const filters = this.query.filters?.flatMap((filter) => {
319
+ const column = indexOf(filter.column);
320
+ return column < 0 ? [] : [{ ...filter, column }];
321
+ });
322
+ this.query = { ...this.query, ...(sort ? { sort } : {}), ...(filters ? { filters } : {}) };
323
+ }
324
+ // Settings follow their columns by name, also when the file's columns moved.
325
+ const old = new Map(this.columns.map((column) => [previous?.columns[column.index]?.name ?? "", column]));
302
326
  this.columns = info.columns.map((column, index) => {
303
327
  const kept =
304
328
  previous && names(previous) === names(info)
@@ -318,6 +342,8 @@ export class GridController {
318
342
  this.viewPending = false;
319
343
  this.cache.clear();
320
344
  this.selection.select({ row: 0, col: 0 });
345
+ // The summary of the previous selection no longer applies.
346
+ this.scheduleSummary();
321
347
  } else if (previous.status !== info.status && types(previous) !== types(info)) {
322
348
  // The final types differ from the preview's (for example all columns read as text).
323
349
  this.cache.clear();
@@ -326,7 +352,7 @@ export class GridController {
326
352
  this.view = { id: null, rowCount: info.rowCount ?? info.readableRows, query: {} };
327
353
  }
328
354
  this.updateLayout();
329
- if (info.status === "ready" && (reset || previous?.status !== "ready") && hasQuery(this.query)) {
355
+ if (info.status === "ready" && (reset || previous?.status !== "ready") && !isEmptyQuery(this.query)) {
330
356
  void this.setQuery(this.query);
331
357
  }
332
358
  this.emit();
@@ -589,7 +615,7 @@ export class GridController {
589
615
  const state = this.visible[col];
590
616
  if (!state) return null;
591
617
  const block = await this.source.readRows(
592
- { view: this.view.id, start: row, end: row + 1, columns: [state.index], textLimit: 1_000_000 },
618
+ { view: this.view.id, start: row, end: row + 1, columns: [state.index], textLimit: MAX_TEXT_LIMIT },
593
619
  signal,
594
620
  );
595
621
  return block.columns[0]?.[0] ?? null;
@@ -610,7 +636,10 @@ export class GridController {
610
636
  return { text: toTsv(table), html: toHtmlTable(table, options.headers ? 1 : 0), cells: rows * columns.length };
611
637
  }
612
638
 
613
- /** The current range's values from the cache, or null when some are not loaded (or it is large). */
639
+ /**
640
+ * The current range's values from the cache, or null when some are not loaded, may have been cut
641
+ * for display, or the range is large.
642
+ */
614
643
  private cachedRange() {
615
644
  const range = this.selection.current;
616
645
  if (!range) return null;
@@ -622,7 +651,7 @@ export class GridController {
622
651
  const list: CellValue[] = [];
623
652
  for (let row = range.top; row <= range.bottom; row++) {
624
653
  const value = this.cache.value(row, column.index);
625
- if (value === undefined) return null;
654
+ if (value === undefined || mayBeCut(value)) return null;
626
655
  list.push(value);
627
656
  }
628
657
  values.push(list);
@@ -673,7 +702,7 @@ export class GridController {
673
702
  this.emit();
674
703
  this.requestRender();
675
704
  try {
676
- const view = await this.source.createView(query, controller.signal);
705
+ const view = await this.createView(query, controller.signal);
677
706
  if (controller.signal.aborted || this.disposed) return;
678
707
  this.view = view;
679
708
  this.viewPending = false;
@@ -683,15 +712,32 @@ export class GridController {
683
712
  this.scrollToVirtual(null, 0);
684
713
  this.scheduleSummary();
685
714
  } catch (error) {
686
- if (controller.signal.aborted || isAbortError(error)) return;
687
- if (error instanceof Error && "code" in error && (error as { code: string }).code === "cancelled") return;
715
+ // Only this grid's own cancellation (a newer query replaced this one) is silent.
716
+ if (controller.signal.aborted) return;
688
717
  this.viewPending = false;
689
718
  this.viewError = messageOf(error);
719
+ // The server is loading the table again (it closed it, for example because the file changed):
720
+ // follow that load, which applies the query once the table is ready.
721
+ if (codeOf(error) === ErrorCodes.notReady) this.reload();
690
722
  }
691
723
  this.emit();
692
724
  this.requestRender();
693
725
  }
694
726
 
727
+ /**
728
+ * Creates a view, asking once more when the source cancelled it without being asked to: a server
729
+ * cancels the build when it closes the table (for example because the file changed), and the next
730
+ * request opens the table again.
731
+ */
732
+ private async createView(query: ViewQuery, signal: AbortSignal) {
733
+ try {
734
+ return await this.source.createView(query, signal);
735
+ } catch (error) {
736
+ if (signal.aborted || codeOf(error) !== ErrorCodes.cancelled) throw error;
737
+ return this.source.createView(query, signal);
738
+ }
739
+ }
740
+
695
741
  sortBy(col: number, direction: SortDirection, add = false) {
696
742
  const state = this.visible[col];
697
743
  if (!state) return;
@@ -707,7 +753,17 @@ export class GridController {
707
753
  setFilter(column: number, filter: Filter | null) {
708
754
  const filters = (this.query.filters ?? []).filter((item) => item.column !== column);
709
755
  if (filter) filters.push(filter);
710
- void this.setQuery({ ...this.query, filters });
756
+ return this.setQuery({ ...this.query, filters });
757
+ }
758
+
759
+ /** Keeps the rows whose value in the cell's column is the cell's value (or all others, with `exclude`). */
760
+ async filterByValue(row: number, col: number, exclude = false) {
761
+ const state = this.visible[col];
762
+ let value = this.value(row, col);
763
+ if (!state || value === undefined) return;
764
+ // A value cut for display would match nothing: filter by the whole text.
765
+ if (mayBeCut(value)) value = await this.fullValue(row, col);
766
+ await this.setFilter(state.index, { type: "values", column: state.index, values: [value], exclude });
711
767
  }
712
768
 
713
769
  filterOf(column: number) {
@@ -812,8 +868,10 @@ export class GridController {
812
868
  let changed = false;
813
869
  for (const [col, width] of widths) {
814
870
  const state = this.visible[col];
815
- if (!state || state.sized || width <= state.width) continue;
816
- state.width = Math.min(Math.ceil(width), 600);
871
+ // At most 600 px: wider numbers stay cut, and asking again for them changes nothing.
872
+ const next = Math.min(Math.ceil(width), 600);
873
+ if (!state || state.sized || next <= state.width) continue;
874
+ state.width = next;
817
875
  changed = true;
818
876
  }
819
877
  if (changed) {
package/src/data-grid.tsx CHANGED
@@ -737,13 +737,12 @@ export const DataGrid = forwardRef<DataGridHandle, DataGridProps>(function DataG
737
737
  label: messages.filterToValue,
738
738
  separator: true,
739
739
  disabled: !ready || !capabilities?.filter,
740
- onSelect: () => c.setFilter(state.index, { type: "values", column: state.index, values: [value] }),
740
+ onSelect: () => void c.filterByValue(row, col),
741
741
  },
742
742
  {
743
743
  label: messages.excludeValue,
744
744
  disabled: !ready || !capabilities?.filter,
745
- onSelect: () =>
746
- c.setFilter(state.index, { type: "values", column: state.index, values: [value], exclude: true }),
745
+ onSelect: () => void c.filterByValue(row, col, true),
747
746
  },
748
747
  );
749
748
  }
@@ -799,6 +798,13 @@ export const DataGrid = forwardRef<DataGridHandle, DataGridProps>(function DataG
799
798
  else if (c.viewError) overlayMessage = c.viewError;
800
799
  else if (!c.info || (c.info.status === "loading" && c.readableRows === 0)) overlayMessage = messages.loading;
801
800
  else if (c.rowCount === 0 && !c.viewPending) overlayMessage = messages.noRows;
801
+ // Retrying reads the table again after a load error, and builds the view again after a view error.
802
+ const retry =
803
+ c.loadError || c.info?.status === "error"
804
+ ? () => controller.reload()
805
+ : c.viewError
806
+ ? () => void controller.setQuery(controller.query)
807
+ : null;
802
808
 
803
809
  return (
804
810
  <div ref={rootRef} className={`vg-root${className ? ` ${className}` : ""}`} style={style} data-status={c.status}>
@@ -889,8 +895,8 @@ export const DataGrid = forwardRef<DataGridHandle, DataGridProps>(function DataG
889
895
  role={c.loadError || c.viewError || c.info?.status === "error" ? "alert" : "status"}
890
896
  >
891
897
  <span>{overlayMessage}</span>
892
- {(c.loadError || c.info?.status === "error") && (
893
- <button type="button" className="vg-button" onClick={() => controller.reload()}>
898
+ {retry && (
899
+ <button type="button" className="vg-button" onClick={retry}>
894
900
  {messages.retry}
895
901
  </button>
896
902
  )}