@ai-table/grid 0.0.32 → 0.0.34

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.
@@ -3,7 +3,7 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
3
  import { ThyPopover } from 'ngx-tethys/popover';
4
4
  import { debounceTime, fromEvent, Subject } from 'rxjs';
5
5
  import { GRID_CELL_EDITOR_MAP } from '../constants';
6
- import { AITable } from '../core';
6
+ import { AITable, AITableFieldType } from '../core';
7
7
  import { getCellHorizontalPosition, getEditorBoxOffset, getEditorSpace, getHoverEditorBoxOffset, getHoverEditorSpace } from '../utils';
8
8
  import { AITableContextMenu } from '../components/context-menu/context-menu.component';
9
9
  import * as i0 from "@angular/core";
@@ -157,6 +157,10 @@ export class AITableGridEventService {
157
157
  });
158
158
  if (this.cellEditorPopoverRef) {
159
159
  const wheelEvent = fromEvent(this.cellEditorPopoverRef.componentInstance.elementRef.nativeElement, 'wheel').subscribe((event) => {
160
+ const field = aiTable.fieldsMap()[fieldId];
161
+ if (field.type === AITableFieldType.text || field.type === AITableFieldType.richText) {
162
+ return;
163
+ }
160
164
  event.preventDefault();
161
165
  this.aiTable.context?.scrollAction({
162
166
  deltaX: event.deltaX,
@@ -225,4 +229,4 @@ export class AITableGridEventService {
225
229
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableGridEventService, decorators: [{
226
230
  type: Injectable
227
231
  }] });
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxVQUFVLEVBQWlCLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwRCxPQUFPLEVBQXVCLE9BQU8sRUFBb0IsTUFBTSxTQUFTLENBQUM7QUFFekUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGtCQUFrQixFQUFFLGNBQWMsRUFBRSx1QkFBdUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2SSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7QUFHdkYsTUFBTSxPQUFPLHVCQUF1QjtJQURwQztRQU1JLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUUzQyxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7UUFFNUMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBRTVDLDBCQUFxQixHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7UUFFbEQsMEJBQXFCLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUkxQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWhDLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0E2TjNDO0lBM05HLFVBQVUsQ0FBQyxP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LG9CQUFvQixDQUFDLGlCQUFpQixFQUFFLFFBQVEsQ0FBQztZQUN2RSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDO1lBRXJFLElBQUksUUFBUSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUN0QixPQUFPO29CQUNILFFBQVE7b0JBQ1IsT0FBTztpQkFDVixDQUFDO1lBQ04sQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQWdCLEVBQUUsT0FBa0M7UUFDaEUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUM5RSxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUNqRCxNQUFNLEVBQUUsTUFBcUI7WUFDN0IsY0FBYyxFQUFFLFFBQVE7WUFDeEIsU0FBUyxFQUFFLFlBQVk7WUFDdkIsY0FBYyxFQUFFLElBQUk7WUFDcEIsZ0JBQWdCO1lBQ2hCLFlBQVksRUFBRTtnQkFDVixPQUFPO2dCQUNQLFNBQVM7Z0JBQ1QsVUFBVTtnQkFDVixRQUFRO2FBQ1g7U0FDSixDQUFDLENBQUM7UUFDSCxPQUFPLEdBQUcsQ0FBQztJQUNmLENBQUM7K0dBL09RLHVCQUF1QjttSEFBdkIsdUJBQXVCOzs0RkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRGVzdHJveVJlZiwgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBUaHlBYnN0cmFjdEludGVybmFsT3ZlcmxheVJlZiB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyLCBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZnJvbUV2ZW50LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdEVkaXRDZWxsRWRpdG9yIH0gZnJvbSAnLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBHUklEX0NFTExfRURJVE9SX01BUCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVJlY29yZEZpZWxkSWRQYXRoLCBBSVRhYmxlLCBBSVRhYmxlRmllbGRUeXBlIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlQ29udGV4dE1lbnVPcHRpb25zLCBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWEsIEFJVGFibGVPcGVuRWRpdE9wdGlvbnMgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRDZWxsSG9yaXpvbnRhbFBvc2l0aW9uLCBnZXRFZGl0b3JCb3hPZmZzZXQsIGdldEVkaXRvclNwYWNlLCBnZXRIb3ZlckVkaXRvckJveE9mZnNldCwgZ2V0SG92ZXJFZGl0b3JTcGFjZSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IEFJVGFibGVDb250ZXh0TWVudSB9IGZyb20gJy4uL2NvbXBvbmVudHMvY29udGV4dC1tZW51L2NvbnRleHQtbWVudS5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQUlUYWJsZUdyaWRFdmVudFNlcnZpY2Uge1xuICAgIGFpVGFibGUhOiBBSVRhYmxlO1xuXG4gICAgYWlGaWVsZFJlbmRlcmVycz86IFBhcnRpYWw8UmVjb3JkPEFJVGFibGVGaWVsZFR5cGUsIEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYT4+O1xuXG4gICAgZGJsQ2xpY2tFdmVudCQgPSBuZXcgU3ViamVjdDxNb3VzZUV2ZW50PigpO1xuXG4gICAgbW91c2Vkb3duRXZlbnQkID0gbmV3IFN1YmplY3Q8TW91c2VFdmVudD4oKTtcblxuICAgIG1vdXNlb3ZlckV2ZW50JCA9IG5ldyBTdWJqZWN0PE1vdXNlRXZlbnQ+KCk7XG5cbiAgICBnbG9iYWxNb3VzZW92ZXJFdmVudCQgPSBuZXcgU3ViamVjdDxNb3VzZUV2ZW50PigpO1xuXG4gICAgZ2xvYmFsTW91c2Vkb3duRXZlbnQkID0gbmV3IFN1YmplY3Q8TW91c2VFdmVudD4oKTtcblxuICAgIHByaXZhdGUgY2VsbEVkaXRvclBvcG92ZXJSZWYhOiBUaHlQb3BvdmVyUmVmPEFic3RyYWN0RWRpdENlbGxFZGl0b3I8YW55Pj4gfCBudWxsO1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgcHJpdmF0ZSB0aHlQb3BvdmVyID0gaW5qZWN0KFRoeVBvcG92ZXIpO1xuXG4gICAgaW5pdGlhbGl6ZShhaVRhYmxlOiBBSVRhYmxlLCBhaUZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj4pIHtcbiAgICAgICAgdGhpcy5haVRhYmxlID0gYWlUYWJsZTtcbiAgICAgICAgdGhpcy5haUZpZWxkUmVuZGVyZXJzID0gYWlGaWVsZFJlbmRlcmVycztcbiAgICB9XG5cbiAgICByZWdpc3RlckV2ZW50cyhlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZWxlbWVudCwgJ2RibGNsaWNrJywgeyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYmxDbGlja0V2ZW50JC5uZXh0KGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50PihlbGVtZW50LCAnbW91c2VvdmVyJywgeyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoODApLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb3VzZW92ZXJFdmVudCQubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZG9jdW1lbnQsICdtb3VzZW92ZXInLCB7IHBhc3NpdmU6IHRydWUgfSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmdsb2JhbE1vdXNlb3ZlckV2ZW50JC5uZXh0KGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50PihlbGVtZW50LCAnbW91c2Vkb3duJywgeyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb3VzZWRvd25FdmVudCQubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZG9jdW1lbnQsICdtb3VzZWRvd24nLCB7IHBhc3NpdmU6IHRydWUgfSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmdsb2JhbE1vdXNlZG93bkV2ZW50JC5uZXh0KGV2ZW50IGFzIE1vdXNlRXZlbnQpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFZGl0b3JDb21wb25lbnQodHlwZTogQUlUYWJsZUZpZWxkVHlwZSkge1xuICAgICAgICBjb25zdCBmaWxlZFJlbmRlclNjaGVtYSA9IHRoaXMuYWlGaWVsZFJlbmRlcmVycyAmJiB0aGlzLmFpRmllbGRSZW5kZXJlcnNbdHlwZV07XG4gICAgICAgIGlmIChmaWxlZFJlbmRlclNjaGVtYSAmJiBmaWxlZFJlbmRlclNjaGVtYS5lZGl0b3IpIHtcbiAgICAgICAgICAgIHJldHVybiBmaWxlZFJlbmRlclNjaGVtYS5lZGl0b3I7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEdSSURfQ0VMTF9FRElUT1JfTUFQW3R5cGVdO1xuICAgIH1cblxuICAgIG9wZW5FZGl0KGNlbGxEb206IEhUTUxFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHsgeCwgeSwgd2lkdGgsIGhlaWdodCB9ID0gY2VsbERvbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgZmllbGRJZCA9IGNlbGxEb20uZ2V0QXR0cmlidXRlKCdmaWVsZElkJykhO1xuICAgICAgICBjb25zdCByZWNvcmRJZCA9IGNlbGxEb20uZ2V0QXR0cmlidXRlKCdyZWNvcmRJZCcpITtcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5nZXRFZGl0b3JDb21wb25lbnQodGhpcy5haVRhYmxlLmZpZWxkc01hcCgpW2ZpZWxkSWRdLnR5cGUpO1xuICAgICAgICBjb25zdCByZWYgPSB0aGlzLnRoeVBvcG92ZXIub3Blbihjb21wb25lbnQsIHtcbiAgICAgICAgICAgIG9yaWdpbjogY2VsbERvbSxcbiAgICAgICAgICAgIG9yaWdpblBvc2l0aW9uOiB7XG4gICAgICAgICAgICAgICAgeDogeCAtIDEsXG4gICAgICAgICAgICAgICAgeTogeSArIDEsXG4gICAgICAgICAgICAgICAgd2lkdGg6IHdpZHRoICsgMixcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGhlaWdodCArIDJcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB3aWR0aDogd2lkdGggKyAxICsgJ3B4JyxcbiAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0ICsgMiArICdweCcsXG4gICAgICAgICAgICBwbGFjZW1lbnQ6ICd0b3AnLFxuICAgICAgICAgICAgb2Zmc2V0OiAtKGhlaWdodCArIDQpLFxuICAgICAgICAgICAgbWluV2lkdGg6IHdpZHRoLFxuICAgICAgICAgICAgaW5pdGlhbFN0YXRlOiB7XG4gICAgICAgICAgICAgICAgZmllbGRJZDogZmllbGRJZCxcbiAgICAgICAgICAgICAgICByZWNvcmRJZDogcmVjb3JkSWQsXG4gICAgICAgICAgICAgICAgYWlUYWJsZTogdGhpcy5haVRhYmxlXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcGFuZWxDbGFzczogJ2dyaWQtY2VsbC1lZGl0b3InLFxuICAgICAgICAgICAgb3V0c2lkZUNsb3NhYmxlOiBmYWxzZSxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG1hbnVhbENsb3N1cmU6IHRydWUsXG4gICAgICAgICAgICBhbmltYXRpb25EaXNhYmxlZDogdHJ1ZSxcbiAgICAgICAgICAgIGF1dG9BZGFwdGl2ZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIHJlZjtcbiAgICB9XG5cbiAgICBnZXRPcmlnaW5Qb3NpdGlvbihhaVRhYmxlOiBBSVRhYmxlLCBvcHRpb25zOiBBSVRhYmxlT3BlbkVkaXRPcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IHsgY29udGFpbmVyLCBjb29yZGluYXRlLCByZWNvcmRJZCwgZmllbGRJZCwgaXNIb3ZlckVkaXQgfSA9IG9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHsgc2Nyb2xsU3RhdGUgfSA9IGFpVGFibGUuY29udGV4dCE7XG4gICAgICAgIGNvbnN0IHsgcm93SGVpZ2h0LCBjb2x1bW5Db3VudCB9ID0gY29vcmRpbmF0ZTtcbiAgICAgICAgY29uc3QgY2VsbDogQUlSZWNvcmRGaWVsZElkUGF0aCA9IFtyZWNvcmRJZCwgZmllbGRJZF07XG4gICAgICAgIGNvbnN0IHsgcm93SW5kZXgsIGNvbHVtbkluZGV4IH0gPSBBSVRhYmxlLmdldENlbGxJbmRleChhaVRhYmxlLCBjZWxsKSE7XG4gICAgICAgIGNvbnN0IG9yaWdpblggPSBjb29yZGluYXRlLmdldENvbHVtbk9mZnNldChjb2x1bW5JbmRleCk7XG4gICAgICAgIGNvbnN0IG9yaWdpblkgPSBjb29yZGluYXRlLmdldFJvd09mZnNldChyb3dJbmRleCk7XG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gY29vcmRpbmF0ZS5nZXRDb2x1bW5XaWR0aChjb2x1bW5JbmRleCk7XG4gICAgICAgIGNvbnN0IHsgd2lkdGg6IG9yaWdpbldpZHRoLCBvZmZzZXQ6IG9yaWdpbk9mZnNldCB9ID0gZ2V0Q2VsbEhvcml6b250YWxQb3NpdGlvbih7XG4gICAgICAgICAgICBjb2x1bW5XaWR0aCxcbiAgICAgICAgICAgIGNvbHVtbkluZGV4LFxuICAgICAgICAgICAgY29sdW1uQ291bnRcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IG9yaWdpblJlY3QgPSBjb250YWluZXIhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICBjb25zdCBpc0Zyb3plbkNvbHVtbiA9IEFJVGFibGUuaXNGcm96ZW5Db2x1bW4oYWlUYWJsZSwgY29sdW1uSW5kZXgpO1xuICAgICAgICBjb25zdCBzY3JvbGxMZWZ0ID0gaXNGcm96ZW5Db2x1bW4gPyAwIDogc2Nyb2xsU3RhdGUoKS5zY3JvbGxMZWZ0O1xuICAgICAgICBjb25zdCBzY3JvbGxUb3AgPSBzY3JvbGxTdGF0ZSgpLnNjcm9sbFRvcDtcbiAgICAgICAgY29uc3Qgb3JpZ2luUG9zaXRpb24gPSB7XG4gICAgICAgICAgICB4OiBvcmlnaW5YICsgb3JpZ2luT2Zmc2V0IC0gc2Nyb2xsTGVmdCArIG9yaWdpblJlY3QueCxcbiAgICAgICAgICAgIHk6IG9yaWdpblkgLSBzY3JvbGxUb3AgKyBvcmlnaW5SZWN0LnksXG4gICAgICAgICAgICB3aWR0aDogb3JpZ2luV2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQ6IHJvd0hlaWdodFxuICAgICAgICB9O1xuICAgICAgICBsZXQgeCA9IG9yaWdpblBvc2l0aW9uLnggKyBnZXRFZGl0b3JCb3hPZmZzZXQoKTtcbiAgICAgICAgbGV0IHkgPSBvcmlnaW5Qb3NpdGlvbi55ICsgZ2V0RWRpdG9yQm94T2Zmc2V0KCk7XG4gICAgICAgIGxldCB3aWR0aCA9IGdldEVkaXRvclNwYWNlKG9yaWdpblBvc2l0aW9uLndpZHRoKTtcbiAgICAgICAgbGV0IGhlaWdodCA9IGdldEVkaXRvclNwYWNlKG9yaWdpblBvc2l0aW9uLmhlaWdodCk7XG4gICAgICAgIC8vIGhvdmVyIOe8lui+kee7hOS7tuaXoOi+ueahhlxuICAgICAgICBpZiAoaXNIb3ZlckVkaXQpIHtcbiAgICAgICAgICAgIHggPSBvcmlnaW5Qb3NpdGlvbi54ICsgZ2V0SG92ZXJFZGl0b3JCb3hPZmZzZXQoKTtcbiAgICAgICAgICAgIHkgPSBvcmlnaW5Qb3NpdGlvbi55ICsgZ2V0SG92ZXJFZGl0b3JCb3hPZmZzZXQoKTtcbiAgICAgICAgICAgIHdpZHRoID0gZ2V0SG92ZXJFZGl0b3JTcGFjZShvcmlnaW5Qb3NpdGlvbi53aWR0aCk7XG4gICAgICAgICAgICBoZWlnaHQgPSBnZXRIb3ZlckVkaXRvclNwYWNlKG9yaWdpblBvc2l0aW9uLmhlaWdodCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLm9yaWdpblBvc2l0aW9uLFxuICAgICAgICAgICAgeDogeCxcbiAgICAgICAgICAgIHk6IHksXG4gICAgICAgICAgICB3aWR0aDogd2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQ6IGhlaWdodFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIG9wZW5DZWxsRWRpdG9yKGFpVGFibGU6IEFJVGFibGUsIG9wdGlvbnM6IEFJVGFibGVPcGVuRWRpdE9wdGlvbnMpIHtcbiAgICAgICAgY29uc3QgeyBjb250YWluZXIsIHJlY29yZElkLCBmaWVsZElkLCBpc0hvdmVyRWRpdCwgcmVmZXJlbmNlcyB9ID0gb3B0aW9ucztcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5nZXRFZGl0b3JDb21wb25lbnQodGhpcy5haVRhYmxlLmZpZWxkc01hcCgpW2ZpZWxkSWRdLnR5cGUpO1xuICAgICAgICBjb25zdCBvZmZzZXRPcmlnaW5Qb3NpdGlvbiA9IHRoaXMuZ2V0T3JpZ2luUG9zaXRpb24oYWlUYWJsZSwgb3B0aW9ucyk7XG4gICAgICAgIHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3Blbihjb21wb25lbnQsIHtcbiAgICAgICAgICAgIG9yaWdpbjogY29udGFpbmVyISxcbiAgICAgICAgICAgIG9yaWdpblBvc2l0aW9uOiBvZmZzZXRPcmlnaW5Qb3NpdGlvbixcbiAgICAgICAgICAgIHdpZHRoOiBvZmZzZXRPcmlnaW5Qb3NpdGlvbi53aWR0aCArICdweCcsXG4gICAgICAgICAgICBoZWlnaHQ6IG9mZnNldE9yaWdpblBvc2l0aW9uLmhlaWdodCArICdweCcsXG4gICAgICAgICAgICBtaW5XaWR0aDogb2Zmc2V0T3JpZ2luUG9zaXRpb24ud2lkdGggKyAncHgnLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tJyxcbiAgICAgICAgICAgIG9mZnNldDogLW9mZnNldE9yaWdpblBvc2l0aW9uLmhlaWdodCxcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIGZpZWxkSWQ6IGZpZWxkSWQsXG4gICAgICAgICAgICAgICAgcmVjb3JkSWQ6IHJlY29yZElkLFxuICAgICAgICAgICAgICAgIHJlZmVyZW5jZXMsXG4gICAgICAgICAgICAgICAgYWlUYWJsZTogYWlUYWJsZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICdncmlkLWNlbGwtZWRpdG9yJyxcbiAgICAgICAgICAgIG91dHNpZGVDbG9zYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBtYW51YWxDbG9zdXJlOiB0cnVlLFxuICAgICAgICAgICAgYW5pbWF0aW9uRGlzYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICBhdXRvQWRhcHRpdmU6IHRydWVcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIGNvbnN0IHdoZWVsRXZlbnQgPSBmcm9tRXZlbnQ8V2hlZWxFdmVudD4oXG4gICAgICAgICAgICAgICAgdGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZi5jb21wb25lbnRJbnN0YW5jZS5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgJ3doZWVsJ1xuICAgICAgICAgICAgKS5zdWJzY3JpYmUoKGV2ZW50OiBXaGVlbEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmFpVGFibGUuY29udGV4dD8uc2Nyb2xsQWN0aW9uKHtcbiAgICAgICAgICAgICAgICAgICAgZGVsdGFYOiBldmVudC5kZWx0YVgsXG4gICAgICAgICAgICAgICAgICAgIGRlbHRhWTogZXZlbnQuZGVsdGFZLFxuICAgICAgICAgICAgICAgICAgICBzaGlmdEtleTogZXZlbnQuc2hpZnRLZXksXG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcmlnaW5Qb3NpdGlvbiA9IHRoaXMuZ2V0T3JpZ2luUG9zaXRpb24oYWlUYWJsZSwgb3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gKHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYgYXMgVGh5QWJzdHJhY3RJbnRlcm5hbE92ZXJsYXlSZWY8YW55LCBhbnksIGFueT4pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldE92ZXJsYXlSZWYoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXRDb25maWcoKS5wb3NpdGlvblN0cmF0ZWd5IGFzIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kuc2V0T3JpZ2luKG9yaWdpblBvc2l0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kuYXBwbHkoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB3aGVlbEV2ZW50LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZiA9IG51bGw7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICh0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmLmNvbXBvbmVudEluc3RhbmNlIGFzIEFic3RyYWN0RWRpdENlbGxFZGl0b3I8YW55PikudXBkYXRlRmllbGRWYWx1ZS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgb3B0aW9ucy51cGRhdGVGaWVsZFZhbHVlKHZhbHVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmO1xuICAgIH1cblxuICAgIGNsb3NlQ2VsbEVkaXRvcigpIHtcbiAgICAgICAgaWYgKHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICAgICAgICAgIHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0Q3VycmVudEVkaXRDZWxsKCkge1xuICAgICAgICBpZiAodGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZikge1xuICAgICAgICAgICAgY29uc3QgcmVjb3JkSWQgPSB0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmLmNvbXBvbmVudEluc3RhbmNlPy5yZWNvcmRJZDtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkSWQgPSB0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmLmNvbXBvbmVudEluc3RhbmNlPy5maWVsZElkO1xuXG4gICAgICAgICAgICBpZiAocmVjb3JkSWQgJiYgZmllbGRJZCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHJlY29yZElkLFxuICAgICAgICAgICAgICAgICAgICBmaWVsZElkXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIG9wZW5Db250ZXh0TWVudShhaVRhYmxlOiBBSVRhYmxlLCBvcHRpb25zOiBBSVRhYmxlQ29udGV4dE1lbnVPcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IHsgb3JpZ2luLCBwb3NpdGlvbiwgbWVudUl0ZW1zLCB0YXJnZXROYW1lLCB2aWV3Q29udGFpbmVyUmVmIH0gPSBvcHRpb25zO1xuICAgICAgICBjb25zdCByZWYgPSB0aGlzLnRoeVBvcG92ZXIub3BlbihBSVRhYmxlQ29udGV4dE1lbnUsIHtcbiAgICAgICAgICAgIG9yaWdpbjogb3JpZ2luIGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgb3JpZ2luUG9zaXRpb246IHBvc2l0aW9uLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tTGVmdCcsXG4gICAgICAgICAgICBpbnNpZGVDbG9zYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIHZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgICAgICAgICBhaVRhYmxlLFxuICAgICAgICAgICAgICAgIG1lbnVJdGVtcyxcbiAgICAgICAgICAgICAgICB0YXJnZXROYW1lLFxuICAgICAgICAgICAgICAgIHBvc2l0aW9uXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcmVmO1xuICAgIH1cbn1cbiJdfQ==
232
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3NlcnZpY2VzL2V2ZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxVQUFVLEVBQWlCLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwRCxPQUFPLEVBQXVCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLHVCQUF1QixFQUFFLG1CQUFtQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3ZJLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOztBQUd2RixNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBTUksbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBRTNDLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUU1QyxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFjLENBQUM7UUFFNUMsMEJBQXFCLEdBQUcsSUFBSSxPQUFPLEVBQWMsQ0FBQztRQUVsRCwwQkFBcUIsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBSTFDLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFaEMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztLQWlPM0M7SUEvTkcs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b250ZW50IjpbImltcG9ydCB7IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IERlc3Ryb3lSZWYsIGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgVGh5QWJzdHJhY3RJbnRlcm5hbE92ZXJsYXlSZWYgfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZyb21FdmVudCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWJzdHJhY3RFZGl0Q2VsbEVkaXRvciB9IGZyb20gJy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgR1JJRF9DRUxMX0VESVRPUl9NQVAgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQUlSZWNvcmRGaWVsZElkUGF0aCwgQUlUYWJsZSwgQUlUYWJsZUZpZWxkVHlwZSB9IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUNvbnRleHRNZW51T3B0aW9ucywgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hLCBBSVRhYmxlT3BlbkVkaXRPcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0Q2VsbEhvcml6b250YWxQb3NpdGlvbiwgZ2V0RWRpdG9yQm94T2Zmc2V0LCBnZXRFZGl0b3JTcGFjZSwgZ2V0SG92ZXJFZGl0b3JCb3hPZmZzZXQsIGdldEhvdmVyRWRpdG9yU3BhY2UgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBBSVRhYmxlQ29udGV4dE1lbnUgfSBmcm9tICcuLi9jb21wb25lbnRzL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFJVGFibGVHcmlkRXZlbnRTZXJ2aWNlIHtcbiAgICBhaVRhYmxlITogQUlUYWJsZTtcblxuICAgIGFpRmllbGRSZW5kZXJlcnM/OiBQYXJ0aWFsPFJlY29yZDxBSVRhYmxlRmllbGRUeXBlLCBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWE+PjtcblxuICAgIGRibENsaWNrRXZlbnQkID0gbmV3IFN1YmplY3Q8TW91c2VFdmVudD4oKTtcblxuICAgIG1vdXNlZG93bkV2ZW50JCA9IG5ldyBTdWJqZWN0PE1vdXNlRXZlbnQ+KCk7XG5cbiAgICBtb3VzZW92ZXJFdmVudCQgPSBuZXcgU3ViamVjdDxNb3VzZUV2ZW50PigpO1xuXG4gICAgZ2xvYmFsTW91c2VvdmVyRXZlbnQkID0gbmV3IFN1YmplY3Q8TW91c2VFdmVudD4oKTtcblxuICAgIGdsb2JhbE1vdXNlZG93bkV2ZW50JCA9IG5ldyBTdWJqZWN0PE1vdXNlRXZlbnQ+KCk7XG5cbiAgICBwcml2YXRlIGNlbGxFZGl0b3JQb3BvdmVyUmVmITogVGh5UG9wb3ZlclJlZjxBYnN0cmFjdEVkaXRDZWxsRWRpdG9yPGFueT4+IHwgbnVsbDtcblxuICAgIHByaXZhdGUgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIHByaXZhdGUgdGh5UG9wb3ZlciA9IGluamVjdChUaHlQb3BvdmVyKTtcblxuICAgIGluaXRpYWxpemUoYWlUYWJsZTogQUlUYWJsZSwgYWlGaWVsZFJlbmRlcmVycz86IFBhcnRpYWw8UmVjb3JkPEFJVGFibGVGaWVsZFR5cGUsIEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYT4+KSB7XG4gICAgICAgIHRoaXMuYWlUYWJsZSA9IGFpVGFibGU7XG4gICAgICAgIHRoaXMuYWlGaWVsZFJlbmRlcmVycyA9IGFpRmllbGRSZW5kZXJlcnM7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJFdmVudHMoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGVsZW1lbnQsICdkYmxjbGljaycsIHsgcGFzc2l2ZTogdHJ1ZSB9KVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGJsQ2xpY2tFdmVudCQubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZWxlbWVudCwgJ21vdXNlb3ZlcicsIHsgcGFzc2l2ZTogdHJ1ZSB9KVxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDgwKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW91c2VvdmVyRXZlbnQkLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnbW91c2VvdmVyJywgeyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5nbG9iYWxNb3VzZW92ZXJFdmVudCQubmV4dChldmVudCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZWxlbWVudCwgJ21vdXNlZG93bicsIHsgcGFzc2l2ZTogdHJ1ZSB9KVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW91c2Vkb3duRXZlbnQkLm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnbW91c2Vkb3duJywgeyBwYXNzaXZlOiB0cnVlIH0pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5nbG9iYWxNb3VzZWRvd25FdmVudCQubmV4dChldmVudCBhcyBNb3VzZUV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RWRpdG9yQ29tcG9uZW50KHR5cGU6IEFJVGFibGVGaWVsZFR5cGUpIHtcbiAgICAgICAgY29uc3QgZmlsZWRSZW5kZXJTY2hlbWEgPSB0aGlzLmFpRmllbGRSZW5kZXJlcnMgJiYgdGhpcy5haUZpZWxkUmVuZGVyZXJzW3R5cGVdO1xuICAgICAgICBpZiAoZmlsZWRSZW5kZXJTY2hlbWEgJiYgZmlsZWRSZW5kZXJTY2hlbWEuZWRpdG9yKSB7XG4gICAgICAgICAgICByZXR1cm4gZmlsZWRSZW5kZXJTY2hlbWEuZWRpdG9yO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBHUklEX0NFTExfRURJVE9SX01BUFt0eXBlXTtcbiAgICB9XG5cbiAgICBvcGVuRWRpdChjZWxsRG9tOiBIVE1MRWxlbWVudCkge1xuICAgICAgICBjb25zdCB7IHgsIHksIHdpZHRoLCBoZWlnaHQgfSA9IGNlbGxEb20uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIGNvbnN0IGZpZWxkSWQgPSBjZWxsRG9tLmdldEF0dHJpYnV0ZSgnZmllbGRJZCcpITtcbiAgICAgICAgY29uc3QgcmVjb3JkSWQgPSBjZWxsRG9tLmdldEF0dHJpYnV0ZSgncmVjb3JkSWQnKSE7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IHRoaXMuZ2V0RWRpdG9yQ29tcG9uZW50KHRoaXMuYWlUYWJsZS5maWVsZHNNYXAoKVtmaWVsZElkXS50eXBlKTtcbiAgICAgICAgY29uc3QgcmVmID0gdGhpcy50aHlQb3BvdmVyLm9wZW4oY29tcG9uZW50LCB7XG4gICAgICAgICAgICBvcmlnaW46IGNlbGxEb20sXG4gICAgICAgICAgICBvcmlnaW5Qb3NpdGlvbjoge1xuICAgICAgICAgICAgICAgIHg6IHggLSAxLFxuICAgICAgICAgICAgICAgIHk6IHkgKyAxLFxuICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCArIDIsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQgKyAyXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgd2lkdGg6IHdpZHRoICsgMSArICdweCcsXG4gICAgICAgICAgICBoZWlnaHQ6IGhlaWdodCArIDIgKyAncHgnLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAndG9wJyxcbiAgICAgICAgICAgIG9mZnNldDogLShoZWlnaHQgKyA0KSxcbiAgICAgICAgICAgIG1pbldpZHRoOiB3aWR0aCxcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIGZpZWxkSWQ6IGZpZWxkSWQsXG4gICAgICAgICAgICAgICAgcmVjb3JkSWQ6IHJlY29yZElkLFxuICAgICAgICAgICAgICAgIGFpVGFibGU6IHRoaXMuYWlUYWJsZVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICdncmlkLWNlbGwtZWRpdG9yJyxcbiAgICAgICAgICAgIG91dHNpZGVDbG9zYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBtYW51YWxDbG9zdXJlOiB0cnVlLFxuICAgICAgICAgICAgYW5pbWF0aW9uRGlzYWJsZWQ6IHRydWUsXG4gICAgICAgICAgICBhdXRvQWRhcHRpdmU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZWY7XG4gICAgfVxuXG4gICAgZ2V0T3JpZ2luUG9zaXRpb24oYWlUYWJsZTogQUlUYWJsZSwgb3B0aW9uczogQUlUYWJsZU9wZW5FZGl0T3B0aW9ucykge1xuICAgICAgICBjb25zdCB7IGNvbnRhaW5lciwgY29vcmRpbmF0ZSwgcmVjb3JkSWQsIGZpZWxkSWQsIGlzSG92ZXJFZGl0IH0gPSBvcHRpb25zO1xuICAgICAgICBjb25zdCB7IHNjcm9sbFN0YXRlIH0gPSBhaVRhYmxlLmNvbnRleHQhO1xuICAgICAgICBjb25zdCB7IHJvd0hlaWdodCwgY29sdW1uQ291bnQgfSA9IGNvb3JkaW5hdGU7XG4gICAgICAgIGNvbnN0IGNlbGw6IEFJUmVjb3JkRmllbGRJZFBhdGggPSBbcmVjb3JkSWQsIGZpZWxkSWRdO1xuICAgICAgICBjb25zdCB7IHJvd0luZGV4LCBjb2x1bW5JbmRleCB9ID0gQUlUYWJsZS5nZXRDZWxsSW5kZXgoYWlUYWJsZSwgY2VsbCkhO1xuICAgICAgICBjb25zdCBvcmlnaW5YID0gY29vcmRpbmF0ZS5nZXRDb2x1bW5PZmZzZXQoY29sdW1uSW5kZXgpO1xuICAgICAgICBjb25zdCBvcmlnaW5ZID0gY29vcmRpbmF0ZS5nZXRSb3dPZmZzZXQocm93SW5kZXgpO1xuICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IGNvb3JkaW5hdGUuZ2V0Q29sdW1uV2lkdGgoY29sdW1uSW5kZXgpO1xuICAgICAgICBjb25zdCB7IHdpZHRoOiBvcmlnaW5XaWR0aCwgb2Zmc2V0OiBvcmlnaW5PZmZzZXQgfSA9IGdldENlbGxIb3Jpem9udGFsUG9zaXRpb24oe1xuICAgICAgICAgICAgY29sdW1uV2lkdGgsXG4gICAgICAgICAgICBjb2x1bW5JbmRleCxcbiAgICAgICAgICAgIGNvbHVtbkNvdW50XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBvcmlnaW5SZWN0ID0gY29udGFpbmVyIS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3QgaXNGcm96ZW5Db2x1bW4gPSBBSVRhYmxlLmlzRnJvemVuQ29sdW1uKGFpVGFibGUsIGNvbHVtbkluZGV4KTtcbiAgICAgICAgY29uc3Qgc2Nyb2xsTGVmdCA9IGlzRnJvemVuQ29sdW1uID8gMCA6IHNjcm9sbFN0YXRlKCkuc2Nyb2xsTGVmdDtcbiAgICAgICAgY29uc3Qgc2Nyb2xsVG9wID0gc2Nyb2xsU3RhdGUoKS5zY3JvbGxUb3A7XG4gICAgICAgIGNvbnN0IG9yaWdpblBvc2l0aW9uID0ge1xuICAgICAgICAgICAgeDogb3JpZ2luWCArIG9yaWdpbk9mZnNldCAtIHNjcm9sbExlZnQgKyBvcmlnaW5SZWN0LngsXG4gICAgICAgICAgICB5OiBvcmlnaW5ZIC0gc2Nyb2xsVG9wICsgb3JpZ2luUmVjdC55LFxuICAgICAgICAgICAgd2lkdGg6IG9yaWdpbldpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiByb3dIZWlnaHRcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IHggPSBvcmlnaW5Qb3NpdGlvbi54ICsgZ2V0RWRpdG9yQm94T2Zmc2V0KCk7XG4gICAgICAgIGxldCB5ID0gb3JpZ2luUG9zaXRpb24ueSArIGdldEVkaXRvckJveE9mZnNldCgpO1xuICAgICAgICBsZXQgd2lkdGggPSBnZXRFZGl0b3JTcGFjZShvcmlnaW5Qb3NpdGlvbi53aWR0aCk7XG4gICAgICAgIGxldCBoZWlnaHQgPSBnZXRFZGl0b3JTcGFjZShvcmlnaW5Qb3NpdGlvbi5oZWlnaHQpO1xuICAgICAgICAvLyBob3ZlciDnvJbovpHnu4Tku7bml6DovrnmoYZcbiAgICAgICAgaWYgKGlzSG92ZXJFZGl0KSB7XG4gICAgICAgICAgICB4ID0gb3JpZ2luUG9zaXRpb24ueCArIGdldEhvdmVyRWRpdG9yQm94T2Zmc2V0KCk7XG4gICAgICAgICAgICB5ID0gb3JpZ2luUG9zaXRpb24ueSArIGdldEhvdmVyRWRpdG9yQm94T2Zmc2V0KCk7XG4gICAgICAgICAgICB3aWR0aCA9IGdldEhvdmVyRWRpdG9yU3BhY2Uob3JpZ2luUG9zaXRpb24ud2lkdGgpO1xuICAgICAgICAgICAgaGVpZ2h0ID0gZ2V0SG92ZXJFZGl0b3JTcGFjZShvcmlnaW5Qb3NpdGlvbi5oZWlnaHQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5vcmlnaW5Qb3NpdGlvbixcbiAgICAgICAgICAgIHg6IHgsXG4gICAgICAgICAgICB5OiB5LFxuICAgICAgICAgICAgd2lkdGg6IHdpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHRcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBvcGVuQ2VsbEVkaXRvcihhaVRhYmxlOiBBSVRhYmxlLCBvcHRpb25zOiBBSVRhYmxlT3BlbkVkaXRPcHRpb25zKSB7XG4gICAgICAgIGNvbnN0IHsgY29udGFpbmVyLCByZWNvcmRJZCwgZmllbGRJZCwgaXNIb3ZlckVkaXQsIHJlZmVyZW5jZXMgfSA9IG9wdGlvbnM7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IHRoaXMuZ2V0RWRpdG9yQ29tcG9uZW50KHRoaXMuYWlUYWJsZS5maWVsZHNNYXAoKVtmaWVsZElkXS50eXBlKTtcbiAgICAgICAgY29uc3Qgb2Zmc2V0T3JpZ2luUG9zaXRpb24gPSB0aGlzLmdldE9yaWdpblBvc2l0aW9uKGFpVGFibGUsIG9wdGlvbnMpO1xuICAgICAgICB0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmID0gdGhpcy50aHlQb3BvdmVyLm9wZW4oY29tcG9uZW50LCB7XG4gICAgICAgICAgICBvcmlnaW46IGNvbnRhaW5lciEsXG4gICAgICAgICAgICBvcmlnaW5Qb3NpdGlvbjogb2Zmc2V0T3JpZ2luUG9zaXRpb24sXG4gICAgICAgICAgICB3aWR0aDogb2Zmc2V0T3JpZ2luUG9zaXRpb24ud2lkdGggKyAncHgnLFxuICAgICAgICAgICAgaGVpZ2h0OiBvZmZzZXRPcmlnaW5Qb3NpdGlvbi5oZWlnaHQgKyAncHgnLFxuICAgICAgICAgICAgbWluV2lkdGg6IG9mZnNldE9yaWdpblBvc2l0aW9uLndpZHRoICsgJ3B4JyxcbiAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbScsXG4gICAgICAgICAgICBvZmZzZXQ6IC1vZmZzZXRPcmlnaW5Qb3NpdGlvbi5oZWlnaHQsXG4gICAgICAgICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgICAgICAgICBmaWVsZElkOiBmaWVsZElkLFxuICAgICAgICAgICAgICAgIHJlY29yZElkOiByZWNvcmRJZCxcbiAgICAgICAgICAgICAgICByZWZlcmVuY2VzLFxuICAgICAgICAgICAgICAgIGFpVGFibGU6IGFpVGFibGVcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwYW5lbENsYXNzOiAnZ3JpZC1jZWxsLWVkaXRvcicsXG4gICAgICAgICAgICBvdXRzaWRlQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgbWFudWFsQ2xvc3VyZTogdHJ1ZSxcbiAgICAgICAgICAgIGFuaW1hdGlvbkRpc2FibGVkOiB0cnVlLFxuICAgICAgICAgICAgYXV0b0FkYXB0aXZlOiB0cnVlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICBjb25zdCB3aGVlbEV2ZW50ID0gZnJvbUV2ZW50PFdoZWVsRXZlbnQ+KFxuICAgICAgICAgICAgICAgIHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYuY29tcG9uZW50SW5zdGFuY2UuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgICAgICd3aGVlbCdcbiAgICAgICAgICAgICkuc3Vic2NyaWJlKChldmVudDogV2hlZWxFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpZWxkID0gYWlUYWJsZS5maWVsZHNNYXAoKVtmaWVsZElkXTtcbiAgICAgICAgICAgICAgICBpZiAoZmllbGQudHlwZSA9PT0gQUlUYWJsZUZpZWxkVHlwZS50ZXh0IHx8IGZpZWxkLnR5cGUgPT09IEFJVGFibGVGaWVsZFR5cGUucmljaFRleHQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuYWlUYWJsZS5jb250ZXh0Py5zY3JvbGxBY3Rpb24oe1xuICAgICAgICAgICAgICAgICAgICBkZWx0YVg6IGV2ZW50LmRlbHRhWCxcbiAgICAgICAgICAgICAgICAgICAgZGVsdGFZOiBldmVudC5kZWx0YVksXG4gICAgICAgICAgICAgICAgICAgIHNoaWZ0S2V5OiBldmVudC5zaGlmdEtleSxcbiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9yaWdpblBvc2l0aW9uID0gdGhpcy5nZXRPcmlnaW5Qb3NpdGlvbihhaVRhYmxlLCBvcHRpb25zKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSAodGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZiBhcyBUaHlBYnN0cmFjdEludGVybmFsT3ZlcmxheVJlZjxhbnksIGFueSwgYW55PilcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0T3ZlcmxheVJlZigpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldENvbmZpZygpLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneS5zZXRPcmlnaW4ob3JpZ2luUG9zaXRpb24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneS5hcHBseSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHdoZWVsRXZlbnQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmID0gbnVsbDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgKHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYuY29tcG9uZW50SW5zdGFuY2UgYXMgQWJzdHJhY3RFZGl0Q2VsbEVkaXRvcjxhbnk+KS51cGRhdGVGaWVsZFZhbHVlLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLnVwZGF0ZUZpZWxkVmFsdWUodmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWY7XG4gICAgfVxuXG4gICAgY2xvc2VDZWxsRWRpdG9yKCkge1xuICAgICAgICBpZiAodGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgdGhpcy5jZWxsRWRpdG9yUG9wb3ZlclJlZiA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRDdXJyZW50RWRpdENlbGwoKSB7XG4gICAgICAgIGlmICh0aGlzLmNlbGxFZGl0b3JQb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICBjb25zdCByZWNvcmRJZCA9IHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYuY29tcG9uZW50SW5zdGFuY2U/LnJlY29yZElkO1xuICAgICAgICAgICAgY29uc3QgZmllbGRJZCA9IHRoaXMuY2VsbEVkaXRvclBvcG92ZXJSZWYuY29tcG9uZW50SW5zdGFuY2U/LmZpZWxkSWQ7XG5cbiAgICAgICAgICAgIGlmIChyZWNvcmRJZCAmJiBmaWVsZElkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgcmVjb3JkSWQsXG4gICAgICAgICAgICAgICAgICAgIGZpZWxkSWRcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgb3BlbkNvbnRleHRNZW51KGFpVGFibGU6IEFJVGFibGUsIG9wdGlvbnM6IEFJVGFibGVDb250ZXh0TWVudU9wdGlvbnMpIHtcbiAgICAgICAgY29uc3QgeyBvcmlnaW4sIHBvc2l0aW9uLCBtZW51SXRlbXMsIHRhcmdldE5hbWUsIHZpZXdDb250YWluZXJSZWYgfSA9IG9wdGlvbnM7XG4gICAgICAgIGNvbnN0IHJlZiA9IHRoaXMudGh5UG9wb3Zlci5vcGVuKEFJVGFibGVDb250ZXh0TWVudSwge1xuICAgICAgICAgICAgb3JpZ2luOiBvcmlnaW4gYXMgSFRNTEVsZW1lbnQsXG4gICAgICAgICAgICBvcmlnaW5Qb3NpdGlvbjogcG9zaXRpb24sXG4gICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b21MZWZ0JyxcbiAgICAgICAgICAgIGluc2lkZUNsb3NhYmxlOiB0cnVlLFxuICAgICAgICAgICAgdmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIGFpVGFibGUsXG4gICAgICAgICAgICAgICAgbWVudUl0ZW1zLFxuICAgICAgICAgICAgICAgIHRhcmdldE5hbWUsXG4gICAgICAgICAgICAgICAgcG9zaXRpb25cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZWY7XG4gICAgfVxufVxuIl19
@@ -13,4 +13,4 @@ export var AITableAreaType;
13
13
  AITableAreaType["grid"] = "grid";
14
14
  AITableAreaType["none"] = "none";
15
15
  })(AITableAreaType || (AITableAreaType = {}));
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3R5cGVzL2dyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNERBLE1BQU0sQ0FBTixJQUFZLG9CQUdYO0FBSEQsV0FBWSxvQkFBb0I7SUFDNUIsbUNBQVcsQ0FBQTtJQUNYLHlDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBRy9CO0FBZ0JELE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDeEIsdUNBQW1CLENBQUE7SUFDbkIsMkNBQXVCLENBQUE7QUFDM0IsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0I7QUFlRCxNQUFNLENBQU4sSUFBWSxlQUdYO0FBSEQsV0FBWSxlQUFlO0lBQ3ZCLGdDQUFhLENBQUE7SUFDYixnQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hbCwgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICduZ3gtdGV0aHlzL3R5cGVzJztcbmltcG9ydCB7XG4gICAgQUlSZWNvcmRGaWVsZElkUGF0aCxcbiAgICBBSVRhYmxlLFxuICAgIEFJVGFibGVGaWVsZCxcbiAgICBBSVRhYmxlRmllbGRUeXBlLFxuICAgIEFJVGFibGVSZWNvcmQsXG4gICAgQ29vcmRpbmF0ZSxcbiAgICBGaWVsZFZhbHVlLFxuICAgIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zXG59IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkTWVudUl0ZW0gfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEFJVGFibGVMaW5lYXJSb3cgfSBmcm9tICcuL3Jvdyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hIHtcbiAgICBlZGl0b3I/OiBhbnk7XG4gICAgdHJhbnNmb3JtPzogKGZpZWxkOiBBSVRhYmxlRmllbGQsIHZhbHVlOiBGaWVsZFZhbHVlKSA9PiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUdyaWREYXRhIHtcbiAgICB0eXBlOiAnZ3JpZCc7XG4gICAgZmllbGRzOiBBSVRhYmxlRmllbGRbXTtcbiAgICByZWNvcmRzOiBBSVRhYmxlUmVjb3JkW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVNlbGVjdGlvbiB7XG4gICAgc2VsZWN0ZWRSZWNvcmRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7cmVjb3JkSWR9YFxuICAgIHNlbGVjdGVkRmllbGRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7ZmllbGRJZH1gXG4gICAgc2VsZWN0ZWRDZWxsczogU2V0PHN0cmluZz47IC8vIGAke3JlY29yZElkfToke2ZpZWxkSWR9YFxuICAgIGFjdGl2ZUNlbGw6IEFJUmVjb3JkRmllbGRJZFBhdGggfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJRmllbGRDb25maWcge1xuICAgIGZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj47XG4gICAgZmllbGRTZXR0aW5nQ29tcG9uZW50PzogYW55O1xuICAgIGZpZWxkTWVudXM/OiBBSVRhYmxlRmllbGRNZW51SXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVVc2VySW5mbyB7XG4gICAgdWlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlfbmFtZT86IHN0cmluZztcbiAgICBhdmF0YXI/OiBzdHJpbmc7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVSZWZlcmVuY2VzIHtcbiAgICBtZW1iZXJzOiBEaWN0aW9uYXJ5PEFJVGFibGVVc2VySW5mbz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVJlbmRlcmVyQ29uZmlnIHtcbiAgICBhaVRhYmxlOiBBSVRhYmxlO1xuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQ7XG4gICAgY29vcmRpbmF0ZTogQ29vcmRpbmF0ZTtcbiAgICBjb250YWluZXJXaWR0aDogbnVtYmVyO1xuICAgIGNvbnRhaW5lckhlaWdodDogbnVtYmVyO1xuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzO1xuICAgIHJlYWRvbmx5PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZVJvd0NvbHVtblR5cGUge1xuICAgIHJvdyA9ICdyb3cnLFxuICAgIGNvbHVtbiA9ICdjb2x1bW4nXG59XG5cbmV4cG9ydCB0eXBlIEFJVGFibGVTaXplTWFwID0gUmVjb3JkPG51bWJlciwgbnVtYmVyPjtcblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlQ29vcmRpbmF0ZSB7XG4gICAgcm93Q291bnQ6IG51bWJlcjtcbiAgICBjb2x1bW5Db3VudDogbnVtYmVyO1xuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQ7XG4gICAgcm93SGVpZ2h0OiBudW1iZXI7XG4gICAgcm93SW5pdFNpemU/OiBudW1iZXI7XG4gICAgcm93SW5kaWNlc1NpemVNYXA6IEFJVGFibGVTaXplTWFwO1xuICAgIGNvbHVtbkluZGljZXNTaXplTWFwOiBBSVRhYmxlU2l6ZU1hcDtcbiAgICBjb2x1bW5Jbml0U2l6ZT86IG51bWJlcjtcbiAgICBmcm96ZW5Db2x1bW5Db3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUNoZWNrVHlwZSB7XG4gICAgY2hlY2tlZCA9ICdjaGVja2VkJyxcbiAgICB1bmNoZWNrZWQgPSAndW5jaGVja2VkJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTY3JvbGxTdGF0ZSB7XG4gICAgc2Nyb2xsVG9wOiBudW1iZXI7XG4gICAgc2Nyb2xsTGVmdDogbnVtYmVyO1xuICAgIGlzU2Nyb2xsaW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjcm9sbEFjdGlvbk9wdGlvbnMge1xuICAgIGRlbHRhWDogbnVtYmVyO1xuICAgIGRlbHRhWTogbnVtYmVyO1xuICAgIHNoaWZ0S2V5OiBib29sZWFuO1xuICAgIGNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUFyZWFUeXBlIHtcbiAgICBncmlkID0gJ2dyaWQnLFxuICAgIG5vbmUgPSAnbm9uZSdcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVBvaW50UG9zaXRpb24gPSB7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbiAgICBhcmVhVHlwZTogQUlUYWJsZUFyZWFUeXBlO1xuICAgIHRhcmdldE5hbWU6IHN0cmluZztcbiAgICByZWFsVGFyZ2V0TmFtZTogc3RyaW5nO1xuICAgIHJvd0luZGV4OiBudW1iZXI7XG4gICAgY29sdW1uSW5kZXg6IG51bWJlcjtcbiAgICBvZmZzZXRUb3A6IG51bWJlcjtcbiAgICBvZmZzZXRMZWZ0OiBudW1iZXI7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVFZGl0UG9zaXRpb24ge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gICAgd2lkdGg6IG51bWJlcjtcbiAgICBoZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlT3BlbkVkaXRPcHRpb25zIHtcbiAgICByZWNvcmRJZDogc3RyaW5nO1xuICAgIGZpZWxkSWQ6IHN0cmluZztcbiAgICBjb29yZGluYXRlOiBDb29yZGluYXRlO1xuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzO1xuICAgIGNvbnRhaW5lcj86IEhUTUxEaXZFbGVtZW50O1xuICAgIGlzSG92ZXJFZGl0PzogYm9vbGVhbjtcbiAgICB1cGRhdGVGaWVsZFZhbHVlOiAob3B0aW9uczogVXBkYXRlRmllbGRWYWx1ZU9wdGlvbnM8YW55PikgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlQ29udGV4dCB7XG4gICAgbGluZWFyUm93czogU2lnbmFsPEFJVGFibGVMaW5lYXJSb3dbXT47XG4gICAgcG9pbnRQb3NpdGlvbjogV3JpdGFibGVTaWduYWw8QUlUYWJsZVBvaW50UG9zaXRpb24+O1xuICAgIHNjcm9sbFN0YXRlOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlU2Nyb2xsU3RhdGU+O1xuICAgIHNjcm9sbEFjdGlvbjogKG9wdGlvbnM6IFNjcm9sbEFjdGlvbk9wdGlvbnMpID0+IHZvaWQ7XG4gICAgdmlzaWJsZUNvbHVtbnNJbmRleE1hcDogU2lnbmFsPE1hcDxzdHJpbmcsIG51bWJlcj4+O1xuICAgIHZpc2libGVSb3dzSW5kZXhNYXA6IFNpZ25hbDxNYXA8c3RyaW5nLCBudW1iZXI+PjtcbiAgICBmcm96ZW5Db2x1bW5Db3VudDogU2lnbmFsPG51bWJlcj47XG4gICAgcmVmZXJlbmNlczogU2lnbmFsPEFJVGFibGVSZWZlcmVuY2VzPjtcbn1cbiJdfQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3R5cGVzL2dyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNERBLE1BQU0sQ0FBTixJQUFZLG9CQUdYO0FBSEQsV0FBWSxvQkFBb0I7SUFDNUIsbUNBQVcsQ0FBQTtJQUNYLHlDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBRy9CO0FBZ0JELE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDeEIsdUNBQW1CLENBQUE7SUFDbkIsMkNBQXVCLENBQUE7QUFDM0IsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0I7QUFlRCxNQUFNLENBQU4sSUFBWSxlQUdYO0FBSEQsV0FBWSxlQUFlO0lBQ3ZCLGdDQUFhLENBQUE7SUFDYixnQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hbCwgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpY3Rpb25hcnkgfSBmcm9tICduZ3gtdGV0aHlzL3R5cGVzJztcbmltcG9ydCB7XG4gICAgQUlSZWNvcmRGaWVsZElkUGF0aCxcbiAgICBBSVRhYmxlLFxuICAgIEFJVGFibGVGaWVsZCxcbiAgICBBSVRhYmxlRmllbGRUeXBlLFxuICAgIEFJVGFibGVSZWNvcmQsXG4gICAgQ29vcmRpbmF0ZSxcbiAgICBGaWVsZFZhbHVlLFxuICAgIFVwZGF0ZUZpZWxkVmFsdWVPcHRpb25zXG59IGZyb20gJy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkTWVudUl0ZW0gfSBmcm9tICcuL2ZpZWxkJztcbmltcG9ydCB7IEFJVGFibGVMaW5lYXJSb3cgfSBmcm9tICcuL3Jvdyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hIHtcbiAgICBlZGl0b3I/OiBhbnk7XG4gICAgdHJhbnNmb3JtPzogKGZpZWxkOiBBSVRhYmxlRmllbGQsIHZhbHVlOiBGaWVsZFZhbHVlKSA9PiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUdyaWREYXRhIHtcbiAgICB0eXBlOiAnZ3JpZCc7XG4gICAgZmllbGRzOiBBSVRhYmxlRmllbGRbXTtcbiAgICByZWNvcmRzOiBBSVRhYmxlUmVjb3JkW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVNlbGVjdGlvbiB7XG4gICAgc2VsZWN0ZWRSZWNvcmRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7cmVjb3JkSWR9YFxuICAgIHNlbGVjdGVkRmllbGRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7ZmllbGRJZH1gXG4gICAgc2VsZWN0ZWRDZWxsczogU2V0PHN0cmluZz47IC8vIGAke3JlY29yZElkfToke2ZpZWxkSWR9YFxuICAgIGFjdGl2ZUNlbGw6IEFJUmVjb3JkRmllbGRJZFBhdGggfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJRmllbGRDb25maWcge1xuICAgIGZpZWxkUmVuZGVyZXJzPzogUGFydGlhbDxSZWNvcmQ8QUlUYWJsZUZpZWxkVHlwZSwgQUlUYWJsZUdyaWRDZWxsUmVuZGVyU2NoZW1hPj47XG4gICAgZmllbGRTZXR0aW5nQ29tcG9uZW50PzogYW55O1xuICAgIGZpZWxkTWVudXM/OiBBSVRhYmxlRmllbGRNZW51SXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVVc2VySW5mbyB7XG4gICAgdWlkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlfbmFtZT86IHN0cmluZztcbiAgICBhdmF0YXI/OiBzdHJpbmc7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVSZWZlcmVuY2VzIHtcbiAgICBtZW1iZXJzOiBEaWN0aW9uYXJ5PEFJVGFibGVVc2VySW5mbz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVJlbmRlcmVyQ29uZmlnIHtcbiAgICBhaVRhYmxlOiBBSVRhYmxlO1xuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQ7XG4gICAgY29vcmRpbmF0ZTogQ29vcmRpbmF0ZTtcbiAgICBjb250YWluZXJXaWR0aDogbnVtYmVyO1xuICAgIGNvbnRhaW5lckhlaWdodDogbnVtYmVyO1xuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzO1xuICAgIHJlYWRvbmx5PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZVJvd0NvbHVtblR5cGUge1xuICAgIHJvdyA9ICdyb3cnLFxuICAgIGNvbHVtbiA9ICdjb2x1bW4nXG59XG5cbmV4cG9ydCB0eXBlIEFJVGFibGVTaXplTWFwID0gUmVjb3JkPG51bWJlciwgbnVtYmVyPjtcblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlQ29vcmRpbmF0ZSB7XG4gICAgcm93Q291bnQ6IG51bWJlcjtcbiAgICBjb2x1bW5Db3VudDogbnVtYmVyO1xuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQ7XG4gICAgcm93SGVpZ2h0OiBudW1iZXI7XG4gICAgcm93SW5pdFNpemU/OiBudW1iZXI7XG4gICAgcm93SW5kaWNlc1NpemVNYXA6IEFJVGFibGVTaXplTWFwO1xuICAgIGNvbHVtbkluZGljZXNTaXplTWFwOiBBSVRhYmxlU2l6ZU1hcDtcbiAgICBjb2x1bW5Jbml0U2l6ZT86IG51bWJlcjtcbiAgICBmcm96ZW5Db2x1bW5Db3VudD86IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUNoZWNrVHlwZSB7XG4gICAgY2hlY2tlZCA9ICdjaGVja2VkJyxcbiAgICB1bmNoZWNrZWQgPSAndW5jaGVja2VkJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTY3JvbGxTdGF0ZSB7XG4gICAgc2Nyb2xsVG9wOiBudW1iZXI7XG4gICAgc2Nyb2xsTGVmdDogbnVtYmVyO1xuICAgIGlzU2Nyb2xsaW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjcm9sbEFjdGlvbk9wdGlvbnMge1xuICAgIGRlbHRhWDogbnVtYmVyO1xuICAgIGRlbHRhWTogbnVtYmVyO1xuICAgIHNoaWZ0S2V5OiBib29sZWFuO1xuICAgIGNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUFyZWFUeXBlIHtcbiAgICBncmlkID0gJ2dyaWQnLFxuICAgIG5vbmUgPSAnbm9uZSdcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVBvaW50UG9zaXRpb24gPSB7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbiAgICBhcmVhVHlwZTogQUlUYWJsZUFyZWFUeXBlO1xuICAgIHRhcmdldE5hbWU6IHN0cmluZztcbiAgICByZWFsVGFyZ2V0TmFtZTogc3RyaW5nO1xuICAgIHJvd0luZGV4OiBudW1iZXI7XG4gICAgY29sdW1uSW5kZXg6IG51bWJlcjtcbiAgICBvZmZzZXRUb3A6IG51bWJlcjtcbiAgICBvZmZzZXRMZWZ0OiBudW1iZXI7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVFZGl0UG9zaXRpb24ge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gICAgd2lkdGg6IG51bWJlcjtcbiAgICBoZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlT3BlbkVkaXRPcHRpb25zIHtcbiAgICByZWNvcmRJZDogc3RyaW5nO1xuICAgIGZpZWxkSWQ6IHN0cmluZztcbiAgICBjb29yZGluYXRlOiBDb29yZGluYXRlO1xuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzO1xuICAgIGNvbnRhaW5lcj86IEhUTUxEaXZFbGVtZW50O1xuICAgIGlzSG92ZXJFZGl0PzogYm9vbGVhbjtcbiAgICB1cGRhdGVGaWVsZFZhbHVlOiAob3B0aW9uczogVXBkYXRlRmllbGRWYWx1ZU9wdGlvbnM8YW55PikgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlQ29udGV4dCB7XG4gICAgbGluZWFyUm93czogU2lnbmFsPEFJVGFibGVMaW5lYXJSb3dbXT47XG4gICAgcG9pbnRQb3NpdGlvbjogV3JpdGFibGVTaWduYWw8QUlUYWJsZVBvaW50UG9zaXRpb24+O1xuICAgIHNjcm9sbFN0YXRlOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlU2Nyb2xsU3RhdGU+O1xuICAgIHNjcm9sbEFjdGlvbjogKG9wdGlvbnM6IFNjcm9sbEFjdGlvbk9wdGlvbnMpID0+IHZvaWQ7XG4gICAgdmlzaWJsZUNvbHVtbnNJbmRleE1hcDogU2lnbmFsPE1hcDxzdHJpbmcsIG51bWJlcj4+O1xuICAgIHZpc2libGVSb3dzSW5kZXhNYXA6IFNpZ25hbDxNYXA8c3RyaW5nLCBudW1iZXI+PjtcbiAgICBmcm96ZW5Db2x1bW5Db3VudDogU2lnbmFsPG51bWJlcj47XG4gICAgcmVmZXJlbmNlczogU2lnbmFsPEFJVGFibGVSZWZlcmVuY2VzPjtcbiAgICBhaUZpZWxkQ29uZmlnOiBTaWduYWw8QUlGaWVsZENvbmZpZyB8IHVuZGVmaW5lZD47XG59XG4iXX0=
@@ -801,7 +801,7 @@ const AITableQueries = {
801
801
 
802
802
  class RendererContext {
803
803
  constructor(options) {
804
- const { linearRows, pointPosition, scrollState, visibleColumnsIndexMap, visibleRowsIndexMap, frozenColumnCount, references, scrollAction } = options;
804
+ const { linearRows, pointPosition, scrollState, visibleColumnsIndexMap, visibleRowsIndexMap, frozenColumnCount, references, aiFieldConfig, scrollAction } = options;
805
805
  this.linearRows = linearRows;
806
806
  this.pointPosition = pointPosition;
807
807
  this.scrollState = scrollState;
@@ -810,6 +810,7 @@ class RendererContext {
810
810
  this.visibleRowsIndexMap = visibleRowsIndexMap;
811
811
  this.frozenColumnCount = frozenColumnCount;
812
812
  this.references = references;
813
+ this.aiFieldConfig = aiFieldConfig;
813
814
  }
814
815
  setPointPosition(position) {
815
816
  const oldPosition = this.pointPosition();
@@ -3042,6 +3043,10 @@ class AITableGridEventService {
3042
3043
  });
3043
3044
  if (this.cellEditorPopoverRef) {
3044
3045
  const wheelEvent = fromEvent(this.cellEditorPopoverRef.componentInstance.elementRef.nativeElement, 'wheel').subscribe((event) => {
3046
+ const field = aiTable.fieldsMap()[fieldId];
3047
+ if (field.type === AITableFieldType.text || field.type === AITableFieldType.richText) {
3048
+ return;
3049
+ }
3045
3050
  event.preventDefault();
3046
3051
  this.aiTable.context?.scrollAction({
3047
3052
  deltaX: event.deltaX,
@@ -5404,20 +5409,21 @@ class CellDrawer extends Drawer {
5404
5409
  renderCellRate(render, ctx) {
5405
5410
  const { x, y, transformValue: _cellValue } = render;
5406
5411
  const max = 5;
5407
- const cellValue = _cellValue || 0;
5412
+ const cellValue = _cellValue;
5408
5413
  const size = AI_TABLE_CELL_EMOJI_SIZE;
5414
+ const isEmpty = isNil(cellValue);
5409
5415
  return [...Array(max).keys()].map((item, index) => {
5410
5416
  const value = index + 1;
5411
5417
  const checked = value <= cellValue;
5412
5418
  const iconX = index * size + AI_TABLE_CELL_PADDING + index * AI_TABLE_CELL_EMOJI_PADDING;
5413
5419
  const iconY = (AI_TABLE_ROW_BLANK_HEIGHT - size) / 2;
5414
- if (ctx && checked) {
5420
+ if (ctx && (checked || isEmpty)) {
5415
5421
  this.path({
5416
5422
  x: x + iconX,
5417
5423
  y: y + iconY,
5418
5424
  size: 22,
5419
5425
  data: StarFill,
5420
- fill: this.colors.waring,
5426
+ fill: isEmpty ? this.colors.gray100 : this.colors.waring,
5421
5427
  scaleX: 1.14,
5422
5428
  scaleY: 1.14
5423
5429
  });
@@ -5427,8 +5433,11 @@ class CellDrawer extends Drawer {
5427
5433
  renderCellProgress(render, ctx) {
5428
5434
  const { x, y, transformValue, columnWidth, style } = render;
5429
5435
  const colors = AITable.getColors();
5430
- const cellText = transformValue;
5431
- if (cellText == null || !___default.isNumber(cellText)) {
5436
+ let cellValue = transformValue;
5437
+ if (isNil(cellValue)) {
5438
+ cellValue = 0;
5439
+ }
5440
+ if (!___default.isNumber(cellValue)) {
5432
5441
  return;
5433
5442
  }
5434
5443
  const width = columnWidth - 2 * AI_TABLE_CELL_PADDING - AI_TABLE_PROGRESS_TEXT_Width;
@@ -5447,7 +5456,7 @@ class CellDrawer extends Drawer {
5447
5456
  fill: colors.gray200
5448
5457
  });
5449
5458
  // 计算并绘制进度
5450
- const progressWidth = (transformValue / 100) * width;
5459
+ const progressWidth = (cellValue / 100) * width;
5451
5460
  this.rect({
5452
5461
  x: x + offsetX,
5453
5462
  y: y + offsetY,
@@ -5459,7 +5468,7 @@ class CellDrawer extends Drawer {
5459
5468
  this.text({
5460
5469
  x: x + offsetX + width + AI_TABLE_TEXT_GAP,
5461
5470
  y: y + textOffsetY,
5462
- text: `${transformValue}%`,
5471
+ text: `${cellValue}%`,
5463
5472
  fillStyle: colors.gray800
5464
5473
  });
5465
5474
  }
@@ -5563,6 +5572,18 @@ const cellDrawer = new CellDrawer();
5563
5572
  * 它继承自 Layout 类,包含了用于绘制行中单元格(尤其是首列和尾列)的几个方法
5564
5573
  */
5565
5574
  class RecordRowLayout extends Layout {
5575
+ renderAddFieldBlank({ isHoverRow, isCheckedRow }) {
5576
+ super.renderAddFieldBlank({ isHoverRow, isCheckedRow });
5577
+ const rowHeight = this.rowHeight;
5578
+ const startX = this.x + this.columnWidth;
5579
+ const lineWidth = this.containerWidth - startX < AI_TABLE_FIELD_ADD_BUTTON_WIDTH ? AI_TABLE_FIELD_ADD_BUTTON_WIDTH : this.containerWidth - startX;
5580
+ this.line({
5581
+ x: startX,
5582
+ y: this.y,
5583
+ points: [0, rowHeight, lineWidth, rowHeight],
5584
+ stroke: this.colors.gray200
5585
+ });
5586
+ }
5566
5587
  // 首列
5567
5588
  renderFirstCell({ row, style, isHoverRow, isCheckedRow }) {
5568
5589
  if (!this.isFirst)
@@ -5611,6 +5632,9 @@ class RecordRowLayout extends Layout {
5611
5632
  verticalAlign: DEFAULT_TEXT_VERTICAL_ALIGN_MIDDLE
5612
5633
  });
5613
5634
  }
5635
+ if (this.isLast) {
5636
+ this.renderAddFieldBlank({ isHoverRow, isCheckedRow });
5637
+ }
5614
5638
  }
5615
5639
  // 尾列
5616
5640
  renderLastCell({ style, isHoverRow, isCheckedRow }) {
@@ -5627,17 +5651,7 @@ class RecordRowLayout extends Layout {
5627
5651
  fill: fill || colors.white,
5628
5652
  stroke: stroke || colors.gray200
5629
5653
  });
5630
- // 延伸到 FIELD_ADD_BUTTON
5631
- super.renderAddFieldBlank({ isHoverRow, isCheckedRow });
5632
- const rowHeight = this.rowHeight;
5633
- const startX = this.x + this.columnWidth;
5634
- const lineWidth = this.containerWidth - startX < AI_TABLE_FIELD_ADD_BUTTON_WIDTH ? AI_TABLE_FIELD_ADD_BUTTON_WIDTH : this.containerWidth - startX;
5635
- this.line({
5636
- x: startX,
5637
- y: this.y,
5638
- points: [0, rowHeight, lineWidth, rowHeight],
5639
- stroke: this.colors.gray200
5640
- });
5654
+ this.renderAddFieldBlank({ isHoverRow, isCheckedRow });
5641
5655
  }
5642
5656
  // 绘制中间的普通单元格
5643
5657
  renderCommonCell({ style }) {
@@ -6140,6 +6154,11 @@ const createColumnHeads = (config) => {
6140
6154
  };
6141
6155
  };
6142
6156
  const fieldHeads = [];
6157
+ const fieldMenus = config.aiTable.context?.aiFieldConfig()?.fieldMenus || [];
6158
+ let noMoreIcon = false;
6159
+ if (fieldMenus.length === 0) {
6160
+ noMoreIcon = true;
6161
+ }
6143
6162
  for (let columnIndex = columnStartIndex; columnIndex <= columnStopIndex; columnIndex++) {
6144
6163
  if (columnIndex > columnCount - 1)
6145
6164
  break;
@@ -6158,7 +6177,7 @@ const createColumnHeads = (config) => {
6158
6177
  height: fieldHeadHeight,
6159
6178
  field,
6160
6179
  stroke: columnIndex === 0 ? colors.transparent : undefined,
6161
- iconVisible,
6180
+ iconVisible: noMoreIcon ? false : iconVisible,
6162
6181
  isSelected,
6163
6182
  isHoverIcon
6164
6183
  };
@@ -6906,6 +6925,7 @@ class AITableGrid extends AITableGridBase {
6906
6925
  scrollState: signal(DEFAULT_SCROLL_STATE),
6907
6926
  frozenColumnCount: this.frozenColumnCount,
6908
6927
  references: this.aiReferences,
6928
+ aiFieldConfig: this.aiFieldConfig,
6909
6929
  scrollAction: this.scrollAction
6910
6930
  });
6911
6931
  }
@@ -6972,7 +6992,6 @@ class AITableGrid extends AITableGridBase {
6972
6992
  case AI_TABLE_CELL:
6973
6993
  if (!recordId || !fieldId)
6974
6994
  return;
6975
- this.aiTableGridEventService.closeCellEditor();
6976
6995
  const dragSelectionStart = [recordId, fieldId];
6977
6996
  this.updateDragSelectionState(true, dragSelectionStart);
6978
6997
  this.aiTableGridSelectionService.selectCells(dragSelectionStart);