@coolon/angular-ui-powerups 12.4.0-alpha.65 → 12.4.0-alpha.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/bundles/coolon-angular-ui-powerups.umd.js +32 -5
  2. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  3. package/coolon-angular-ui-powerups.metadata.json +1 -1
  4. package/esm2015/lib/components/exports.js +1 -0
  5. package/esm2015/lib/components/exports.js.map +1 -1
  6. package/esm2015/lib/components/exports.metadata.json +1 -1
  7. package/esm2015/lib/components/tables/abstract-table-model.js +3 -0
  8. package/esm2015/lib/components/tables/abstract-table-model.js.map +1 -1
  9. package/esm2015/lib/components/tables/abstract-table-model.metadata.json +1 -1
  10. package/esm2015/lib/components/tables/table/cell-renderer.js.map +1 -1
  11. package/esm2015/lib/components/tables/table/column-model.js +22 -4
  12. package/esm2015/lib/components/tables/table/column-model.js.map +1 -1
  13. package/esm2015/lib/components/tables/table/column-model.metadata.json +1 -1
  14. package/esm2015/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.js +3 -0
  15. package/esm2015/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.js.map +1 -1
  16. package/esm2015/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.metadata.json +1 -1
  17. package/esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.js +0 -2
  18. package/esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.js.map +1 -1
  19. package/esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.metadata.json +1 -1
  20. package/esm2015/lib/components/tables/table/text-search-predicate.js +2 -0
  21. package/esm2015/lib/components/tables/table/text-search-predicate.js.map +1 -0
  22. package/esm2015/lib/components/tables/table/text-search-predicate.metadata.json +1 -0
  23. package/fesm2015/coolon-angular-ui-powerups.js +28 -6
  24. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  25. package/lib/components/exports.d.ts +1 -0
  26. package/lib/components/tables/abstract-table-model.d.ts +1 -0
  27. package/lib/components/tables/table/cell-renderer.d.ts +2 -0
  28. package/lib/components/tables/table/column-model.d.ts +9 -0
  29. package/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.d.ts +3 -1
  30. package/lib/components/tables/table/table-row-menu/table-row-menu.component.d.ts +2 -3
  31. package/lib/components/tables/table/text-search-predicate.d.ts +1 -0
  32. package/package.json +1 -1
  33. package/schematics/activity/index.js +1 -1
  34. package/schematics/activity/index.js.map +1 -1
  35. package/schematics/aup-i18n/index.js +1 -1
  36. package/schematics/aup-i18n/index.js.map +1 -1
@@ -57,6 +57,7 @@ export * from "./tables/table/mutable-cell-renderer";
57
57
  export * from "./tables/table/table-def";
58
58
  export * from "./tables/table/table-model";
59
59
  export * from "./tables/table/table.component";
60
+ export * from "./tables/table/text-search-predicate";
60
61
  export * from "./tables/table/column-template/column-template.directive";
61
62
  export * from "./tables/table/default-cell-renderer/default-cell-renderer.component";
62
63
  export * from "./tables/table/default-header-cell-renderer/default-header-cell-renderer.component";
@@ -23,6 +23,7 @@ export declare class AbstractTableModel<Row> extends GarbageCollector {
23
23
  readonly lastVisibleColumn: ValueModel<ColumnModel<Row>>;
24
24
  private _createForm;
25
25
  constructor();
26
+ findMatchingColumns(row: Row, text: string): ColumnModel<Row>[];
26
27
  protected setDataSource(sourceOfTruth: ListModel<Row>): void;
27
28
  identityOf(row: Row): any;
28
29
  get rowsBeingEdited(): ListModel<Row>;
@@ -1,3 +1,5 @@
1
+ import { TextSearchPredicate } from './text-search-predicate';
1
2
  export interface CellRenderer<T> {
2
3
  value: T;
4
+ matches?: TextSearchPredicate<T>;
3
5
  }
@@ -9,6 +9,7 @@ import { EditSession } from './edit-session';
9
9
  import { MutableCellRenderer } from './mutable-cell-renderer';
10
10
  import { TableCellRendererComponent } from './table-cell-renderer/table-cell-renderer.component';
11
11
  import { TableHeaderCellRendererComponent } from './table-header-cell-renderer/table-header-cell-renderer.component';
12
+ import { TextSearchPredicate } from './text-search-predicate';
12
13
  export interface RowData<Row> {
13
14
  row: Row;
14
15
  editSession?: EditSession<Row>;
@@ -34,6 +35,8 @@ export declare class ColumnModel<Row> extends GarbageCollector {
34
35
  private _defaultVisibility;
35
36
  private _visible;
36
37
  readonly dasherisedColumnId: string;
38
+ protected _columnModelTextSearchPredicate: TextSearchPredicate<Row>;
39
+ protected _cellRendererTextSearchPredicate: TextSearchPredicate<Row>;
37
40
  constructor(columnId: string, textPropertiesProvider: ColumnModel.TextPropertiesProvider);
38
41
  protected installHeaderRenderer(): void;
39
42
  getHeaderText(): string;
@@ -42,6 +45,12 @@ export declare class ColumnModel<Row> extends GarbageCollector {
42
45
  visibleWhile(visible: ValueModel<boolean>): this;
43
46
  protected setDefaultVisibility(visible: ValueModel<boolean>): void;
44
47
  protected getDefaultHeaderText(): string;
48
+ get isTextMatch(): TextSearchPredicate<Row>;
49
+ /**
50
+ * Sets the predicate to use when checking if the specified row is a text match for this column.
51
+ * @param predicate
52
+ */
53
+ useTextSearchPredicate(predicate: TextSearchPredicate<Row>): this;
45
54
  getColumnTextProperties(): ColumnTextProperties;
46
55
  /**
47
56
  * @deprecated use #columnTextProperties instead
@@ -1,6 +1,8 @@
1
- export declare class DefaultCellRendererComponent<T> {
1
+ import { CellRenderer } from '../cell-renderer';
2
+ export declare class DefaultCellRendererComponent<T> implements CellRenderer<T> {
2
3
  private _value;
3
4
  set value(value: T);
4
5
  get value(): T;
6
+ matches(row: T, text: string): boolean;
5
7
  constructor();
6
8
  }
@@ -1,8 +1,8 @@
1
- import { OnInit } from '@angular/core';
2
1
  import { MatMenuTrigger } from '@angular/material/menu';
3
2
  import { Command } from '@coolon/pectin';
4
3
  import { CommandFace } from '../../../commands/command-face';
5
4
  import { DisposableComponent } from '../../../disposable-component';
5
+ import { CellRenderer } from '../cell-renderer';
6
6
  declare class MenuItemData<T> {
7
7
  readonly factory: Command.Factory<T, void>;
8
8
  readonly face: CommandFace;
@@ -11,7 +11,7 @@ declare class MenuItemData<T> {
11
11
  /**
12
12
  *
13
13
  */
14
- export declare class TableRowMenuComponent<T> extends DisposableComponent implements OnInit {
14
+ export declare class TableRowMenuComponent<T> extends DisposableComponent implements CellRenderer<T> {
15
15
  value: T;
16
16
  menu: MatMenuTrigger;
17
17
  readonly actions: MenuItemData<T>[];
@@ -19,7 +19,6 @@ export declare class TableRowMenuComponent<T> extends DisposableComponent implem
19
19
  registerAction(commandFactory: Command.Factory<T, void>, properties: CommandFace): void;
20
20
  registerMoreAction(commandFactory: Command.Factory<T, void>, properties: CommandFace): void;
21
21
  constructor();
22
- ngOnInit(): void;
23
22
  createMoreMenuCommand(item: MenuItemData<T>, value: T): Command<void>;
24
23
  private closeMoreMenu;
25
24
  }
@@ -0,0 +1 @@
1
+ export declare type TextSearchPredicate<T> = (row: T, text: string) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coolon/angular-ui-powerups",
3
- "version": "12.4.0-alpha.65",
3
+ "version": "12.4.0-alpha.66",
4
4
  "schematics": "./schematics/collection.json",
5
5
  "dependencies": {
6
6
  "@coolon/typescript-utilities": "^2.3.0",
@@ -8,7 +8,7 @@ const workspace_1 = require("../utils/workspace");
8
8
  function addActivity(_options) {
9
9
  return (tree, context) => {
10
10
  const workspace = workspace_1.Workspace.load(tree, context);
11
- const buildContext = workspace.getApplication(_options.project);
11
+ const buildContext = workspace.getProject(_options.project);
12
12
  const nameParts = _options.name.split('/');
13
13
  const componentName = nameParts[nameParts.length - 1];
14
14
  const componentPathParts = nameParts.slice(0, nameParts.length - 1);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/schematics/activity/index.ts"],"names":[],"mappings":";;;AAAA,2DAAoG;AACpG,uEAAuD;AACvD,oEAA0E;AAC1E,kDAA+C;AAI/C,SAAgB,WAAW,CAAC,QAAgB;IAE1C,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAE/C,MAAM,SAAS,GAAG,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAChD,MAAM,YAAY,GAAG,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEhE,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtD,MAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,gBAAgB,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAElF,kHAAkH;QAClH,MAAM,YAAY,GAAG,8BAAiB,CAAC,qBAAqB,EAAE,WAAW,EAAE;YACzE,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,QAAQ,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,8BAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAExI,MAAM,cAAc,GAAG,gDAA2B,CAChD,IAAI,EACJ,qBAAqB,EACrB;YACE,IAAI,EAAE,aAAa;YACnB,cAAc,EAAE,YAAY,CAAC,cAAc;YAC3C,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACrD,aAAa;SACd,EACD,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,aAAa,EAAE,CACnD,CAAC;QAGF,OAAO,kBAAK,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE9D,CAAC,CAAC;AAEJ,CAAC;AArCD,kCAqCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/schematics/activity/index.ts"],"names":[],"mappings":";;;AAAA,2DAAoG;AACpG,uEAAuD;AACvD,oEAA0E;AAC1E,kDAA+C;AAI/C,SAAgB,WAAW,CAAC,QAAgB;IAE1C,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAE/C,MAAM,SAAS,GAAG,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEhD,MAAM,YAAY,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE5D,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtD,MAAM,kBAAkB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,gBAAgB,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAElF,kHAAkH;QAClH,MAAM,YAAY,GAAG,8BAAiB,CAAC,qBAAqB,EAAE,WAAW,EAAE;YACzE,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,QAAQ,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,8BAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAExI,MAAM,cAAc,GAAG,gDAA2B,CAChD,IAAI,EACJ,qBAAqB,EACrB;YACE,IAAI,EAAE,aAAa;YACnB,cAAc,EAAE,YAAY,CAAC,cAAc;YAC3C,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACrD,aAAa;SACd,EACD,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,aAAa,EAAE,CACnD,CAAC;QAGF,OAAO,kBAAK,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAE9D,CAAC,CAAC;AAEJ,CAAC;AAtCD,kCAsCC"}
@@ -9,7 +9,7 @@ const package_util_1 = require("../package-util");
9
9
  function run(_options) {
10
10
  return (tree, _context) => {
11
11
  const workspace = workspace_1.Workspace.load(tree, _context);
12
- const buildContext = workspace.getApplicationOrDefault(_options.project);
12
+ const buildContext = workspace.getProject(_options.project);
13
13
  const templateSource = applyWithOverwrite(schematics_1.url('./templates'), [
14
14
  schematics_1.applyTemplates(Object.assign(Object.assign({}, _options), core_1.strings)),
15
15
  schematics_1.move(buildContext.sourceRoot)
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/schematics/aup-i18n/index.ts"],"names":[],"mappings":";;;AAAA,+CAA6D;AAC7D,2DAaoC;AACpC,kDAA+C;AAE/C,kDAAoD;AACpD,yFAAyF;AAEzF,SAAgB,GAAG,CAAC,QAAgB;IAElC,OAAO,CAAC,IAAU,EAAE,QAA0B,EAAE,EAAE;QAEhD,MAAM,SAAS,GAAG,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,SAAS,CAAC,uBAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAExE,MAAM,cAAc,GAAG,kBAAkB,CACvC,gBAAG,CAAC,aAAa,CAAC,EAAE;YAClB,2BAAc,iCAAM,QAAQ,GAAK,cAAO,EAAG;YAC3C,iBAAI,CAAC,YAAY,CAAC,UAAU,CAAC;SAC9B,CAAC,CAAC;QAEL,gDAAgD;QAChD,MAAM,yBAAyB,GAAQ,CAAC,IAAU,EAAE,CAAmB,EAAQ,EAAE;YAC/E,OAAO,gCAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;gBACrC,KAAK,CAAC,eAAe,mCAChB,KAAK,CAAC,eAAe,KACxB,iCAAiC,EAAE,QAAQ,GAC5C,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAA;QACD,MAAM,KAAK,GAAG,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC;QAC1D,OAAO,kBAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAS,CAAC;IAC9C,CAAC,CAAC;AACJ,CAAC;AAzBD,kBAyBC;AAED,2CAA2C;AAC3C,SAAgB,kBAAkB,CAAC,MAAc,EAAE,KAAa;IAC9D,OAAO,CAAC,IAAU,EAAE,QAA0B,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,sBAAS,CACpB,kBAAK,CAAC,MAAM,EAAE;YACZ,GAAG,KAAK;YACR,oBAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACpB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBAC/B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;oBAClD,OAAO,IAAI,CAAC;iBACb;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;SACH,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAjBD,gDAiBC;AAGD,6CAA6C;AAC7C,+DAA+D;AAC/D,YAAY;AACZ,wBAAwB;AACxB,uBAAuB;AACvB,qBAAqB;AACrB,qBAAqB;AACrB,0BAA0B;AAC1B,4BAA4B;AAC5B,QAAQ;AACR,IAAI;AAGJ,kDAAkD;AAClD,gCAAgC;AAChC,EAAE;AACF,yDAAyD;AACzD,EAAE;AACF,qDAAqD;AACrD,8CAA8C;AAC9C,UAAU;AACV,4EAA4E;AAC5E,EAAE;AACF,2BAA2B;AAC3B,kBAAkB;AAClB,UAAU;AACV,EAAE;AACF,2CAA2C;AAC3C,OAAO;AACP,IAAI;AAGJ,oDAAoD;AACpD,yDAAyD;AACzD,2EAA2E;AAC3E,mBAAmB;AACnB,OAAO;AACP,IAAI;AACJ,EAAE;AACF,qDAAqD;AACrD,yDAAyD;AACzD,oEAAoE;AACpE,mBAAmB;AACnB,OAAO;AACP,IAAI"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/schematics/aup-i18n/index.ts"],"names":[],"mappings":";;;AAAA,+CAA6D;AAC7D,2DAaoC;AACpC,kDAA+C;AAE/C,kDAAoD;AACpD,yFAAyF;AAEzF,SAAgB,GAAG,CAAC,QAAgB;IAElC,OAAO,CAAC,IAAU,EAAE,QAA0B,EAAE,EAAE;QAEhD,MAAM,SAAS,GAAG,qBAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,YAAY,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE5D,MAAM,cAAc,GAAG,kBAAkB,CACvC,gBAAG,CAAC,aAAa,CAAC,EAAE;YAClB,2BAAc,iCAAM,QAAQ,GAAK,cAAO,EAAG;YAC3C,iBAAI,CAAC,YAAY,CAAC,UAAU,CAAC;SAC9B,CAAC,CAAC;QAEL,gDAAgD;QAChD,MAAM,yBAAyB,GAAQ,CAAC,IAAU,EAAE,CAAmB,EAAQ,EAAE;YAC/E,OAAO,gCAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;gBACrC,KAAK,CAAC,eAAe,mCAChB,KAAK,CAAC,eAAe,KACxB,iCAAiC,EAAE,QAAQ,GAC5C,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAA;QACD,MAAM,KAAK,GAAG,CAAC,cAAc,EAAE,yBAAyB,CAAC,CAAC;QAC1D,OAAO,kBAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAS,CAAC;IAC9C,CAAC,CAAC;AACJ,CAAC;AAzBD,kBAyBC;AAED,2CAA2C;AAC3C,SAAgB,kBAAkB,CAAC,MAAc,EAAE,KAAa;IAC9D,OAAO,CAAC,IAAU,EAAE,QAA0B,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,sBAAS,CACpB,kBAAK,CAAC,MAAM,EAAE;YACZ,GAAG,KAAK;YACR,oBAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACpB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBAC/B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;oBAClD,OAAO,IAAI,CAAC;iBACb;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;SACH,CAAC,CACH,CAAC;QAEF,OAAO,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC;AACJ,CAAC;AAjBD,gDAiBC;AAGD,6CAA6C;AAC7C,+DAA+D;AAC/D,YAAY;AACZ,wBAAwB;AACxB,uBAAuB;AACvB,qBAAqB;AACrB,qBAAqB;AACrB,0BAA0B;AAC1B,4BAA4B;AAC5B,QAAQ;AACR,IAAI;AAGJ,kDAAkD;AAClD,gCAAgC;AAChC,EAAE;AACF,yDAAyD;AACzD,EAAE;AACF,qDAAqD;AACrD,8CAA8C;AAC9C,UAAU;AACV,4EAA4E;AAC5E,EAAE;AACF,2BAA2B;AAC3B,kBAAkB;AAClB,UAAU;AACV,EAAE;AACF,2CAA2C;AAC3C,OAAO;AACP,IAAI;AAGJ,oDAAoD;AACpD,yDAAyD;AACzD,2EAA2E;AAC3E,mBAAmB;AACnB,OAAO;AACP,IAAI;AACJ,EAAE;AACF,qDAAqD;AACrD,yDAAyD;AACzD,oEAAoE;AACpE,mBAAmB;AACnB,OAAO;AACP,IAAI"}