@skyux/ag-grid 10.9.0 → 10.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -124,7 +124,7 @@ export class SkyAgGridCellEditorLookupComponent {
124
124
  }
125
125
  #stopEditingOnBlur() {
126
126
  if (!this.#lookupOpen &&
127
- this.#params?.context?.gridOptions?.stopEditingWhenCellsLoseFocus &&
127
+ this.#params?.api.getGridOption('stopEditingWhenCellsLoseFocus') &&
128
128
  !this.#elementRef.nativeElement.matches(':focus-within')) {
129
129
  this.#params?.api.stopEditing();
130
130
  }
@@ -142,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
142
142
  type: HostListener,
143
143
  args: ['blur']
144
144
  }] } });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEUsT0FBTyxFQUFzQixNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUxRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0FBR3pFOztHQUVHO0FBT0gsTUFBTSxPQUFPLGtDQUFrQztJQU4vQztRQWFTLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsZUFBVSxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDdkMsU0FBUyxFQUFFLElBQUksa0JBQWtCLENBQUM7Z0JBQ2hDLEtBQUssRUFBRSxFQUFFO2dCQUNULFFBQVEsRUFBRSxLQUFLO2FBQ2hCLENBQUM7U0FDSCxDQUFDLENBQUM7UUFDSSxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUVwQixjQUFTLEdBQXVCLFNBQVMsQ0FBQztRQUVwRCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUdwQixvQkFBZSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzVDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUM7S0E0SC9DO0lBaElDLFdBQVcsQ0FBUztJQUNwQixPQUFPLENBQXdDO0lBQy9DLFlBQVksQ0FBK0M7SUFDM0QsZUFBZSxDQUE2QjtJQUM1QyxXQUFXLENBQW1DO0lBR3ZDLE1BQU07UUFDWCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU0sTUFBTSxDQUFDLE1BQWlDO1FBQzdDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsd0JBQXdCLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsY0FBYztZQUM1RCxDQUFDLENBQUMsU0FBUztZQUNYLENBQUMsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsU0FBUztnQkFDeEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVO2dCQUN4QixNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWE7Z0JBQzNCLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSztnQkFDbkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFFeEIsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNaLFFBQVEsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUMxQixLQUFLLGdDQUFnQyxDQUFDLE1BQU07b0JBQzFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ3JCLE1BQU07Z0JBQ1IsS0FBSyxnQ0FBZ0MsQ0FBQyxPQUFPLENBQUM7Z0JBQzlDLEtBQUssZ0NBQWdDLENBQUMsV0FBVyxDQUFDO2dCQUNsRCxLQUFLLGdDQUFnQyxDQUFDLFNBQVMsQ0FBQztnQkFDaEQ7b0JBQ0UsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQy9CLE1BQU07WUFDVixDQUFDO1lBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxDQUFDO2dCQUNsRCxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuQixDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxjQUFjO1lBQ2pCLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsS0FBSyxVQUFVLENBQUM7UUFDaEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FDL0IsTUFBTSxDQUFDLG9CQUFvQixFQUMzQixDQUFDLEtBQXlCLEVBQUUsRUFBRTtZQUM1QixJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDakUsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLGNBQWMsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RDLENBQUM7UUFDSCxDQUFDLENBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQiwwRUFBMEU7UUFDMUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxNQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsOERBQThEO0lBQ3ZELFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUNqRCxDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLE1BQU0sV0FBVyxHQUNmLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ3BFLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNwQixJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssZ0NBQWdDLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkUsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3JCLFdBQVcsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDdEQsK0NBQStDO1lBQy9DLFdBQVcsQ0FBQyxpQkFBaUIsQ0FDM0IsV0FBVyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQ3hCLFdBQVcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN6QixDQUFDO1lBQ0YsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssZ0NBQWdDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkUsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBRU0sa0JBQWtCLENBQUMsTUFBZTtRQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsMEJBQTBCLENBQ3hCLE1BQWlDO1FBRWpDLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDO1FBQzFELE9BQU8sZ0NBQWdDLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQ0UsQ0FBQyxJQUFJLENBQUMsV0FBVztZQUNqQixJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsNkJBQTZCO1lBQ2pFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxFQUN4RCxDQUFDO1lBQ0QsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7OEdBakpVLGtDQUFrQztrR0FBbEMsa0NBQWtDLG1LQzdCL0MsNG1HQWlFQTs7MkZEcENhLGtDQUFrQztrQkFOOUMsU0FBUzsrQkFDRSxnQ0FBZ0MsbUJBR3pCLHVCQUF1QixDQUFDLE1BQU07OEJBTXhDLEtBQUs7c0JBRFgsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBc0J0QixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBJQ2VsbEVkaXRvckFuZ3VsYXJDb21wIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IENvbHVtblJlc2l6ZWRFdmVudCwgRXZlbnRzIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuXG5pbXBvcnQgeyBhcHBseVNreUxvb2t1cFByb3BlcnRpZXNEZWZhdWx0cyB9IGZyb20gJy4uLy4uL2FwcGx5LWxvb2t1cC1wcm9wZXJ0aWVzLWRlZmF1bHRzJztcbmltcG9ydCB7IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uIH0gZnJvbSAnLi4vLi4vdHlwZXMvY2VsbC1lZGl0b3ItaW5pdGlhbC1hY3Rpb24nO1xuaW1wb3J0IHsgU2t5Q2VsbEVkaXRvckxvb2t1cFBhcmFtcyB9IGZyb20gJy4uLy4uL3R5cGVzL2NlbGwtZWRpdG9yLWxvb2t1cC1wYXJhbXMnO1xuaW1wb3J0IHsgU2t5QWdHcmlkQ2VsbEVkaXRvclV0aWxzIH0gZnJvbSAnLi4vLi4vdHlwZXMvY2VsbC1lZGl0b3ItdXRpbHMnO1xuaW1wb3J0IHsgU2t5QWdHcmlkTG9va3VwUHJvcGVydGllcyB9IGZyb20gJy4uLy4uL3R5cGVzL2xvb2t1cC1wcm9wZXJ0aWVzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWFnLWdyaWQtY2VsbC1lZGl0b3ItbG9va3VwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NlbGwtZWRpdG9yLWxvb2t1cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NlbGwtZWRpdG9yLWxvb2t1cC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5QWdHcmlkQ2VsbEVkaXRvckxvb2t1cENvbXBvbmVudFxuICBpbXBsZW1lbnRzIElDZWxsRWRpdG9yQW5ndWxhckNvbXBcbntcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS53aWR0aC5weCcpXG4gIHB1YmxpYyB3aWR0aDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBza3lDb21wb25lbnRQcm9wZXJ0aWVzPzogU2t5QWdHcmlkTG9va3VwUHJvcGVydGllcztcbiAgcHVibGljIGlzQWxpdmUgPSBmYWxzZTtcbiAgcHVibGljIGVkaXRvckZvcm0gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgc2VsZWN0aW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHtcbiAgICAgIHZhbHVlOiBbXSxcbiAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICB9KSxcbiAgfSk7XG4gIHB1YmxpYyB1c2VBc3luY1NlYXJjaCA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBhcmlhTGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICAjbG9va3VwT3BlbiA9IGZhbHNlO1xuICAjcGFyYW1zOiBTa3lDZWxsRWRpdG9yTG9va3VwUGFyYW1zIHwgdW5kZWZpbmVkO1xuICAjdHJpZ2dlclR5cGU6IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uIHwgdW5kZWZpbmVkO1xuICAjY2hhbmdlRGV0ZWN0b3IgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAjZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmPEhUTUxFbGVtZW50Pik7XG5cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXG4gIHB1YmxpYyBvbkJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy4jc3RvcEVkaXRpbmdPbkJsdXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBhZ0luaXQocGFyYW1zOiBTa3lDZWxsRWRpdG9yTG9va3VwUGFyYW1zKTogdm9pZCB7XG4gICAgdGhpcy4jcGFyYW1zID0gcGFyYW1zO1xuICAgIGlmICghQXJyYXkuaXNBcnJheSh0aGlzLiNwYXJhbXMudmFsdWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYExvb2t1cCB2YWx1ZSBtdXN0IGJlIGFuIGFycmF5YCk7XG4gICAgfVxuXG4gICAgdGhpcy4jdHJpZ2dlclR5cGUgPSBTa3lBZ0dyaWRDZWxsRWRpdG9yVXRpbHMuZ2V0RWRpdG9ySW5pdGlhbEFjdGlvbihwYXJhbXMpO1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmVkaXRvckZvcm0uZ2V0KCdzZWxlY3Rpb24nKTtcbiAgICB0aGlzLmFyaWFMYWJlbCA9IHBhcmFtcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hcmlhTGFiZWxsZWRCeVxuICAgICAgPyB1bmRlZmluZWRcbiAgICAgIDogcGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFyaWFMYWJlbCB8fFxuICAgICAgICBwYXJhbXMuY29sRGVmLmhlYWRlck5hbWUgfHxcbiAgICAgICAgcGFyYW1zLmNvbERlZi5oZWFkZXJUb29sdGlwIHx8XG4gICAgICAgIHBhcmFtcy5jb2xEZWYuZmllbGQgfHxcbiAgICAgICAgcGFyYW1zLmNvbERlZi5jb2xJZDtcblxuICAgIGlmIChjb250cm9sKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuI3RyaWdnZXJUeXBlKSB7XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uRGVsZXRlOlxuICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUoW10pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLlJlcGxhY2U6XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uSGlnaGxpZ2h0ZWQ6XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uVW50b3VjaGVkOlxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUocGFyYW1zLnZhbHVlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuI3BhcmFtcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kaXNhYmxlZCkge1xuICAgICAgICBjb250cm9sLmRpc2FibGUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzID0gdGhpcy4jdXBkYXRlQ29tcG9uZW50UHJvcGVydGllcyh0aGlzLiNwYXJhbXMpO1xuICAgIHRoaXMudXNlQXN5bmNTZWFyY2ggPVxuICAgICAgdHlwZW9mIHRoaXMuc2t5Q29tcG9uZW50UHJvcGVydGllcy5zZWFyY2hBc3luYyA9PT0gJ2Z1bmN0aW9uJztcbiAgICB0aGlzLmlzQWxpdmUgPSB0cnVlO1xuICAgIHRoaXMud2lkdGggPSB0aGlzLiNwYXJhbXMuY29sdW1uLmdldEFjdHVhbFdpZHRoKCk7XG4gICAgdGhpcy4jcGFyYW1zLmFwaS5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgRXZlbnRzLkVWRU5UX0NPTFVNTl9SRVNJWkVELFxuICAgICAgKGV2ZW50OiBDb2x1bW5SZXNpemVkRXZlbnQpID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LmNvbHVtbj8uZ2V0Q29sSWQoKSA9PT0gdGhpcy4jcGFyYW1zPy5jb2x1bW4uZ2V0Q29sSWQoKSkge1xuICAgICAgICAgIHRoaXMud2lkdGggPSBldmVudC5jb2x1bW4/LmdldEFjdHVhbFdpZHRoKCk7XG4gICAgICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0NhbmNlbEFmdGVyRW5kKCk6IGJvb2xlYW4ge1xuICAgIC8vIFNodXQgZG93biBjb21wb25lbnRzIHRvIGNvbW1pdCB2YWx1ZXMgYmVmb3JlIGZpbmFsIHZhbHVlIHN5bmNzIHRvIGdyaWQuXG4gICAgdGhpcy5pc0FsaXZlID0gZmFsc2U7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRHdWkoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBwdWJsaWMgZ2V0VmFsdWUoKTogYW55W10ge1xuICAgIHJldHVybiB0aGlzLmVkaXRvckZvcm0uZ2V0KCdzZWxlY3Rpb24nKT8udmFsdWU7XG4gIH1cblxuICBwdWJsaWMgaXNQb3B1cCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRQb3B1cFBvc2l0aW9uKCk6ICdvdmVyJyB8ICd1bmRlcicgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAnb3Zlcic7XG4gIH1cblxuICBwdWJsaWMgYWZ0ZXJHdWlBdHRhY2hlZCgpOiB2b2lkIHtcbiAgICBjb25zdCBsb29rdXBJbnB1dDogSFRNTFRleHRBcmVhRWxlbWVudCA9XG4gICAgICB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnNreS1sb29rdXAtaW5wdXQnKTtcbiAgICBsb29rdXBJbnB1dC5mb2N1cygpO1xuICAgIGlmICh0aGlzLiN0cmlnZ2VyVHlwZSA9PT0gU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uUmVwbGFjZSkge1xuICAgICAgbG9va3VwSW5wdXQuc2VsZWN0KCk7XG4gICAgICBsb29rdXBJbnB1dC5zZXRSYW5nZVRleHQoYCR7dGhpcy4jcGFyYW1zPy5ldmVudEtleX1gKTtcbiAgICAgIC8vIEVuc3VyZSB0aGUgY3Vyc29yIGlzIGF0IHRoZSBlbmQgb2YgdGhlIHRleHQuXG4gICAgICBsb29rdXBJbnB1dC5zZXRTZWxlY3Rpb25SYW5nZShcbiAgICAgICAgbG9va3VwSW5wdXQudmFsdWUubGVuZ3RoLFxuICAgICAgICBsb29rdXBJbnB1dC52YWx1ZS5sZW5ndGgsXG4gICAgICApO1xuICAgICAgbG9va3VwSW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JykpO1xuICAgIH1cbiAgICBpZiAodGhpcy4jdHJpZ2dlclR5cGUgPT09IFNreUFnR3JpZENlbGxFZGl0b3JJbml0aWFsQWN0aW9uLkhpZ2hsaWdodGVkKSB7XG4gICAgICBsb29rdXBJbnB1dC5zZWxlY3QoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Mb29rdXBPcGVuQ2hhbmdlKGlzT3BlbjogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuI2xvb2t1cE9wZW4gPSBpc09wZW47XG4gICAgdGhpcy4jc3RvcEVkaXRpbmdPbkJsdXIoKTtcbiAgfVxuXG4gICN1cGRhdGVDb21wb25lbnRQcm9wZXJ0aWVzKFxuICAgIHBhcmFtczogU2t5Q2VsbEVkaXRvckxvb2t1cFBhcmFtcyxcbiAgKTogU2t5QWdHcmlkTG9va3VwUHJvcGVydGllcyB7XG4gICAgY29uc3Qgc2t5TG9va3VwUHJvcGVydGllcyA9IHBhcmFtcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzO1xuICAgIHJldHVybiBhcHBseVNreUxvb2t1cFByb3BlcnRpZXNEZWZhdWx0cyhza3lMb29rdXBQcm9wZXJ0aWVzKTtcbiAgfVxuXG4gICNzdG9wRWRpdGluZ09uQmx1cigpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy4jbG9va3VwT3BlbiAmJlxuICAgICAgdGhpcy4jcGFyYW1zPy5jb250ZXh0Py5ncmlkT3B0aW9ucz8uc3RvcEVkaXRpbmdXaGVuQ2VsbHNMb3NlRm9jdXMgJiZcbiAgICAgICF0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQubWF0Y2hlcygnOmZvY3VzLXdpdGhpbicpXG4gICAgKSB7XG4gICAgICB0aGlzLiNwYXJhbXM/LmFwaS5zdG9wRWRpdGluZygpO1xuICAgIH1cbiAgfVxufVxuIiwiPHNreS1pbnB1dC1ib3hcbiAgKm5nSWY9XCJpc0FsaXZlICYmIHVzZUFzeW5jU2VhcmNoXCJcbiAgW2Rpc2FibGVkXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRpc2FibGVkXCJcbiAgW2Zvcm1Hcm91cF09XCJlZGl0b3JGb3JtXCJcbj5cbiAgPHNreS1sb29rdXBcbiAgICBbYXJpYUxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2FyaWFMYWJlbGxlZEJ5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFyaWFMYWJlbGxlZEJ5XCJcbiAgICBbYXV0b2NvbXBsZXRlQXR0cmlidXRlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmF1dG9jb21wbGV0ZUF0dHJpYnV0ZVwiXG4gICAgW2RhdGFdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGF0YVwiXG4gICAgW2RlYm91bmNlVGltZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kZWJvdW5jZVRpbWVcIlxuICAgIFtkZXNjcmlwdG9yUHJvcGVydHldPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGVzY3JpcHRvclByb3BlcnR5XCJcbiAgICBbZW5hYmxlU2hvd01vcmVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZW5hYmxlU2hvd01vcmVcIlxuICAgIGZvcm1Db250cm9sTmFtZT1cInNlbGVjdGlvblwiXG4gICAgW2lkUHJvcGVydHldPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uaWRQcm9wZXJ0eVwiXG4gICAgW3BsYWNlaG9sZGVyVGV4dF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5wbGFjZWhvbGRlclRleHRcIlxuICAgIFtwcm9wZXJ0aWVzVG9TZWFyY2hdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8ucHJvcGVydGllc1RvU2VhcmNoXCJcbiAgICBbc2VhcmNoXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaFwiXG4gICAgW3NlYXJjaEZpbHRlcnNdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoRmlsdGVyc1wiXG4gICAgW3NlYXJjaFJlc3VsdHNMaW1pdF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hSZXN1bHRzTGltaXRcIlxuICAgIFtzZWFyY2hSZXN1bHRUZW1wbGF0ZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hSZXN1bHRUZW1wbGF0ZVwiXG4gICAgW3NlYXJjaFRleHRNaW5pbXVtQ2hhcmFjdGVyc109XCJcbiAgICAgIHNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaFRleHRNaW5pbXVtQ2hhcmFjdGVyc1xuICAgIFwiXG4gICAgKHNlYXJjaEFzeW5jKT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaEFzeW5jPy4oJGV2ZW50KVwiXG4gICAgW3NlbGVjdE1vZGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VsZWN0TW9kZVwiXG4gICAgW3Nob3dBZGRCdXR0b25dPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2hvd0FkZEJ1dHRvblwiXG4gICAgW3Nob3dNb3JlQ29uZmlnXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNob3dNb3JlQ29uZmlnXCJcbiAgICBbd3JhcHBlckNsYXNzXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LndyYXBwZXJDbGFzc1wiXG4gICAgKGFkZENsaWNrKT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFkZENsaWNrPy4oJGV2ZW50KVwiXG4gICAgKG9wZW5DaGFuZ2UpPVwib25Mb29rdXBPcGVuQ2hhbmdlKCRldmVudClcIlxuICAvPlxuPC9za3ktaW5wdXQtYm94PlxuPHNreS1pbnB1dC1ib3hcbiAgKm5nSWY9XCJpc0FsaXZlICYmICF1c2VBc3luY1NlYXJjaFwiXG4gIFtkaXNhYmxlZF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kaXNhYmxlZFwiXG4gIFtmb3JtR3JvdXBdPVwiZWRpdG9yRm9ybVwiXG4+XG4gIDxza3ktbG9va3VwXG4gICAgW2FyaWFMYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgIFthcmlhTGFiZWxsZWRCeV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hcmlhTGFiZWxsZWRCeVwiXG4gICAgW2F1dG9jb21wbGV0ZUF0dHJpYnV0ZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hdXRvY29tcGxldGVBdHRyaWJ1dGVcIlxuICAgIFtkYXRhXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRhdGFcIlxuICAgIFtkZWJvdW5jZVRpbWVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGVib3VuY2VUaW1lXCJcbiAgICBbZGVzY3JpcHRvclByb3BlcnR5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRlc2NyaXB0b3JQcm9wZXJ0eVwiXG4gICAgW2VuYWJsZVNob3dNb3JlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmVuYWJsZVNob3dNb3JlXCJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJzZWxlY3Rpb25cIlxuICAgIFtpZFByb3BlcnR5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmlkUHJvcGVydHlcIlxuICAgIFtwbGFjZWhvbGRlclRleHRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8ucGxhY2Vob2xkZXJUZXh0XCJcbiAgICBbcHJvcGVydGllc1RvU2VhcmNoXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnByb3BlcnRpZXNUb1NlYXJjaFwiXG4gICAgW3NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hcIlxuICAgIFtzZWFyY2hGaWx0ZXJzXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaEZpbHRlcnNcIlxuICAgIFtzZWFyY2hSZXN1bHRzTGltaXRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoUmVzdWx0c0xpbWl0XCJcbiAgICBbc2VhcmNoUmVzdWx0VGVtcGxhdGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoUmVzdWx0VGVtcGxhdGVcIlxuICAgIFtzZWFyY2hUZXh0TWluaW11bUNoYXJhY3RlcnNdPVwiXG4gICAgICBza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hUZXh0TWluaW11bUNoYXJhY3RlcnNcbiAgICBcIlxuICAgIFtzZWxlY3RNb2RlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlbGVjdE1vZGVcIlxuICAgIFtzaG93QWRkQnV0dG9uXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNob3dBZGRCdXR0b25cIlxuICAgIFtzaG93TW9yZUNvbmZpZ109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zaG93TW9yZUNvbmZpZ1wiXG4gICAgW3dyYXBwZXJDbGFzc109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy53cmFwcGVyQ2xhc3NcIlxuICAgIChhZGRDbGljayk9XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hZGRDbGljaz8uKCRldmVudClcIlxuICAgIChvcGVuQ2hhbmdlKT1cIm9uTG9va3VwT3BlbkNoYW5nZSgkZXZlbnQpXCJcbiAgLz5cbjwvc2t5LWlucHV0LWJveD5cbiJdfQ==
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hZy1ncmlkL3NyYy9saWIvbW9kdWxlcy9hZy1ncmlkL2NlbGwtZWRpdG9ycy9jZWxsLWVkaXRvci1sb29rdXAvY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEUsT0FBTyxFQUFzQixNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUxRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0FBR3pFOztHQUVHO0FBT0gsTUFBTSxPQUFPLGtDQUFrQztJQU4vQztRQWFTLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsZUFBVSxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDdkMsU0FBUyxFQUFFLElBQUksa0JBQWtCLENBQUM7Z0JBQ2hDLEtBQUssRUFBRSxFQUFFO2dCQUNU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QUFnQjtnQkFzQnRCLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IElDZWxsRWRpdG9yQW5ndWxhckNvbXAgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuaW1wb3J0IHsgQ29sdW1uUmVzaXplZEV2ZW50LCBFdmVudHMgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5cbmltcG9ydCB7IGFwcGx5U2t5TG9va3VwUHJvcGVydGllc0RlZmF1bHRzIH0gZnJvbSAnLi4vLi4vYXBwbHktbG9va3VwLXByb3BlcnRpZXMtZGVmYXVsdHMnO1xuaW1wb3J0IHsgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24gfSBmcm9tICcuLi8uLi90eXBlcy9jZWxsLWVkaXRvci1pbml0aWFsLWFjdGlvbic7XG5pbXBvcnQgeyBTa3lDZWxsRWRpdG9yTG9va3VwUGFyYW1zIH0gZnJvbSAnLi4vLi4vdHlwZXMvY2VsbC1lZGl0b3ItbG9va3VwLXBhcmFtcyc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRDZWxsRWRpdG9yVXRpbHMgfSBmcm9tICcuLi8uLi90eXBlcy9jZWxsLWVkaXRvci11dGlscyc7XG5pbXBvcnQgeyBTa3lBZ0dyaWRMb29rdXBQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vLi4vdHlwZXMvbG9va3VwLXByb3BlcnRpZXMnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktYWctZ3JpZC1jZWxsLWVkaXRvci1sb29rdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2VsbC1lZGl0b3ItbG9va3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lBZ0dyaWRDZWxsRWRpdG9yTG9va3VwQ29tcG9uZW50XG4gIGltcGxlbWVudHMgSUNlbGxFZGl0b3JBbmd1bGFyQ29tcFxue1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLndpZHRoLnB4JylcbiAgcHVibGljIHdpZHRoOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIHNreUNvbXBvbmVudFByb3BlcnRpZXM/OiBTa3lBZ0dyaWRMb29rdXBQcm9wZXJ0aWVzO1xuICBwdWJsaWMgaXNBbGl2ZSA9IGZhbHNlO1xuICBwdWJsaWMgZWRpdG9yRm9ybSA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICBzZWxlY3Rpb246IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woe1xuICAgICAgdmFsdWU6IFtdLFxuICAgICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgIH0pLFxuICB9KTtcbiAgcHVibGljIHVzZUFzeW5jU2VhcmNoID0gZmFsc2U7XG5cbiAgcHJvdGVjdGVkIGFyaWFMYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuXG4gICNsb29rdXBPcGVuID0gZmFsc2U7XG4gICNwYXJhbXM6IFNreUNlbGxFZGl0b3JMb29rdXBQYXJhbXMgfCB1bmRlZmluZWQ7XG4gICN0cmlnZ2VyVHlwZTogU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24gfCB1bmRlZmluZWQ7XG4gICNjaGFuZ2VEZXRlY3RvciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICNlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICBASG9zdExpc3RlbmVyKCdibHVyJylcbiAgcHVibGljIG9uQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLiNzdG9wRWRpdGluZ09uQmx1cigpO1xuICB9XG5cbiAgcHVibGljIGFnSW5pdChwYXJhbXM6IFNreUNlbGxFZGl0b3JMb29rdXBQYXJhbXMpOiB2b2lkIHtcbiAgICB0aGlzLiNwYXJhbXMgPSBwYXJhbXM7XG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHRoaXMuI3BhcmFtcy52YWx1ZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTG9va3VwIHZhbHVlIG11c3QgYmUgYW4gYXJyYXlgKTtcbiAgICB9XG5cbiAgICB0aGlzLiN0cmlnZ2VyVHlwZSA9IFNreUFnR3JpZENlbGxFZGl0b3JVdGlscy5nZXRFZGl0b3JJbml0aWFsQWN0aW9uKHBhcmFtcyk7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZWRpdG9yRm9ybS5nZXQoJ3NlbGVjdGlvbicpO1xuICAgIHRoaXMuYXJpYUxhYmVsID0gcGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXM/LmFyaWFMYWJlbGxlZEJ5XG4gICAgICA/IHVuZGVmaW5lZFxuICAgICAgOiBwYXJhbXMuc2t5Q29tcG9uZW50UHJvcGVydGllcz8uYXJpYUxhYmVsIHx8XG4gICAgICAgIHBhcmFtcy5jb2xEZWYuaGVhZGVyTmFtZSB8fFxuICAgICAgICBwYXJhbXMuY29sRGVmLmhlYWRlclRvb2x0aXAgfHxcbiAgICAgICAgcGFyYW1zLmNvbERlZi5maWVsZCB8fFxuICAgICAgICBwYXJhbXMuY29sRGVmLmNvbElkO1xuXG4gICAgaWYgKGNvbnRyb2wpIHtcbiAgICAgIHN3aXRjaCAodGhpcy4jdHJpZ2dlclR5cGUpIHtcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5EZWxldGU6XG4gICAgICAgICAgY29udHJvbC5zZXRWYWx1ZShbXSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uUmVwbGFjZTpcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5IaWdobGlnaHRlZDpcbiAgICAgICAgY2FzZSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5VbnRvdWNoZWQ6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgY29udHJvbC5zZXRWYWx1ZShwYXJhbXMudmFsdWUpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy4jcGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRpc2FibGVkKSB7XG4gICAgICAgIGNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29udHJvbC5lbmFibGUoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNreUNvbXBvbmVudFByb3BlcnRpZXMgPSB0aGlzLiN1cGRhdGVDb21wb25lbnRQcm9wZXJ0aWVzKHRoaXMuI3BhcmFtcyk7XG4gICAgdGhpcy51c2VBc3luY1NlYXJjaCA9XG4gICAgICB0eXBlb2YgdGhpcy5za3lDb21wb25lbnRQcm9wZXJ0aWVzLnNlYXJjaEFzeW5jID09PSAnZnVuY3Rpb24nO1xuICAgIHRoaXMuaXNBbGl2ZSA9IHRydWU7XG4gICAgdGhpcy53aWR0aCA9IHRoaXMuI3BhcmFtcy5jb2x1bW4uZ2V0QWN0dWFsV2lkdGgoKTtcbiAgICB0aGlzLiNwYXJhbXMuYXBpLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICBFdmVudHMuRVZFTlRfQ09MVU1OX1JFU0laRUQsXG4gICAgICAoZXZlbnQ6IENvbHVtblJlc2l6ZWRFdmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQuY29sdW1uPy5nZXRDb2xJZCgpID09PSB0aGlzLiNwYXJhbXM/LmNvbHVtbi5nZXRDb2xJZCgpKSB7XG4gICAgICAgICAgdGhpcy53aWR0aCA9IGV2ZW50LmNvbHVtbj8uZ2V0QWN0dWFsV2lkdGgoKTtcbiAgICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICApO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGlzQ2FuY2VsQWZ0ZXJFbmQoKTogYm9vbGVhbiB7XG4gICAgLy8gU2h1dCBkb3duIGNvbXBvbmVudHMgdG8gY29tbWl0IHZhbHVlcyBiZWZvcmUgZmluYWwgdmFsdWUgc3luY3MgdG8gZ3JpZC5cbiAgICB0aGlzLmlzQWxpdmUgPSBmYWxzZTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldEd1aSgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIHB1YmxpYyBnZXRWYWx1ZSgpOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yRm9ybS5nZXQoJ3NlbGVjdGlvbicpPy52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBpc1BvcHVwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldFBvcHVwUG9zaXRpb24oKTogJ292ZXInIHwgJ3VuZGVyJyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuICdvdmVyJztcbiAgfVxuXG4gIHB1YmxpYyBhZnRlckd1aUF0dGFjaGVkKCk6IHZvaWQge1xuICAgIGNvbnN0IGxvb2t1cElucHV0OiBIVE1MVGV4dEFyZWFFbGVtZW50ID1cbiAgICAgIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuc2t5LWxvb2t1cC1pbnB1dCcpO1xuICAgIGxvb2t1cElucHV0LmZvY3VzKCk7XG4gICAgaWYgKHRoaXMuI3RyaWdnZXJUeXBlID09PSBTa3lBZ0dyaWRDZWxsRWRpdG9ySW5pdGlhbEFjdGlvbi5SZXBsYWNlKSB7XG4gICAgICBsb29rdXBJbnB1dC5zZWxlY3QoKTtcbiAgICAgIGxvb2t1cElucHV0LnNldFJhbmdlVGV4dChgJHt0aGlzLiNwYXJhbXM/LmV2ZW50S2V5fWApO1xuICAgICAgLy8gRW5zdXJlIHRoZSBjdXJzb3IgaXMgYXQgdGhlIGVuZCBvZiB0aGUgdGV4dC5cbiAgICAgIGxvb2t1cElucHV0LnNldFNlbGVjdGlvblJhbmdlKFxuICAgICAgICBsb29rdXBJbnB1dC52YWx1ZS5sZW5ndGgsXG4gICAgICAgIGxvb2t1cElucHV0LnZhbHVlLmxlbmd0aCxcbiAgICAgICk7XG4gICAgICBsb29rdXBJbnB1dC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnaW5wdXQnKSk7XG4gICAgfVxuICAgIGlmICh0aGlzLiN0cmlnZ2VyVHlwZSA9PT0gU2t5QWdHcmlkQ2VsbEVkaXRvckluaXRpYWxBY3Rpb24uSGlnaGxpZ2h0ZWQpIHtcbiAgICAgIGxvb2t1cElucHV0LnNlbGVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkxvb2t1cE9wZW5DaGFuZ2UoaXNPcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy4jbG9va3VwT3BlbiA9IGlzT3BlbjtcbiAgICB0aGlzLiNzdG9wRWRpdGluZ09uQmx1cigpO1xuICB9XG5cbiAgI3VwZGF0ZUNvbXBvbmVudFByb3BlcnRpZXMoXG4gICAgcGFyYW1zOiBTa3lDZWxsRWRpdG9yTG9va3VwUGFyYW1zLFxuICApOiBTa3lBZ0dyaWRMb29rdXBQcm9wZXJ0aWVzIHtcbiAgICBjb25zdCBza3lMb29rdXBQcm9wZXJ0aWVzID0gcGFyYW1zLnNreUNvbXBvbmVudFByb3BlcnRpZXM7XG4gICAgcmV0dXJuIGFwcGx5U2t5TG9va3VwUHJvcGVydGllc0RlZmF1bHRzKHNreUxvb2t1cFByb3BlcnRpZXMpO1xuICB9XG5cbiAgI3N0b3BFZGl0aW5nT25CbHVyKCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLiNsb29rdXBPcGVuICYmXG4gICAgICB0aGlzLiNwYXJhbXM/LmFwaS5nZXRHcmlkT3B0aW9uKCdzdG9wRWRpdGluZ1doZW5DZWxsc0xvc2VGb2N1cycpICYmXG4gICAgICAhdGhpcy4jZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm1hdGNoZXMoJzpmb2N1cy13aXRoaW4nKVxuICAgICkge1xuICAgICAgdGhpcy4jcGFyYW1zPy5hcGkuc3RvcEVkaXRpbmcoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxza3ktaW5wdXQtYm94XG4gICpuZ0lmPVwiaXNBbGl2ZSAmJiB1c2VBc3luY1NlYXJjaFwiXG4gIFtkaXNhYmxlZF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kaXNhYmxlZFwiXG4gIFtmb3JtR3JvdXBdPVwiZWRpdG9yRm9ybVwiXG4+XG4gIDxza3ktbG9va3VwXG4gICAgW2FyaWFMYWJlbF09XCJhcmlhTGFiZWxcIlxuICAgIFthcmlhTGFiZWxsZWRCeV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hcmlhTGFiZWxsZWRCeVwiXG4gICAgW2F1dG9jb21wbGV0ZUF0dHJpYnV0ZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hdXRvY29tcGxldGVBdHRyaWJ1dGVcIlxuICAgIFtkYXRhXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRhdGFcIlxuICAgIFtkZWJvdW5jZVRpbWVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGVib3VuY2VUaW1lXCJcbiAgICBbZGVzY3JpcHRvclByb3BlcnR5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRlc2NyaXB0b3JQcm9wZXJ0eVwiXG4gICAgW2VuYWJsZVNob3dNb3JlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmVuYWJsZVNob3dNb3JlXCJcbiAgICBmb3JtQ29udHJvbE5hbWU9XCJzZWxlY3Rpb25cIlxuICAgIFtpZFByb3BlcnR5XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmlkUHJvcGVydHlcIlxuICAgIFtwbGFjZWhvbGRlclRleHRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8ucGxhY2Vob2xkZXJUZXh0XCJcbiAgICBbcHJvcGVydGllc1RvU2VhcmNoXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnByb3BlcnRpZXNUb1NlYXJjaFwiXG4gICAgW3NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hcIlxuICAgIFtzZWFyY2hGaWx0ZXJzXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaEZpbHRlcnNcIlxuICAgIFtzZWFyY2hSZXN1bHRzTGltaXRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoUmVzdWx0c0xpbWl0XCJcbiAgICBbc2VhcmNoUmVzdWx0VGVtcGxhdGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoUmVzdWx0VGVtcGxhdGVcIlxuICAgIFtzZWFyY2hUZXh0TWluaW11bUNoYXJhY3RlcnNdPVwiXG4gICAgICBza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hUZXh0TWluaW11bUNoYXJhY3RlcnNcbiAgICBcIlxuICAgIChzZWFyY2hBc3luYyk9XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hBc3luYz8uKCRldmVudClcIlxuICAgIFtzZWxlY3RNb2RlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlbGVjdE1vZGVcIlxuICAgIFtzaG93QWRkQnV0dG9uXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNob3dBZGRCdXR0b25cIlxuICAgIFtzaG93TW9yZUNvbmZpZ109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zaG93TW9yZUNvbmZpZ1wiXG4gICAgW3dyYXBwZXJDbGFzc109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy53cmFwcGVyQ2xhc3NcIlxuICAgIChhZGRDbGljayk9XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5hZGRDbGljaz8uKCRldmVudClcIlxuICAgIChvcGVuQ2hhbmdlKT1cIm9uTG9va3VwT3BlbkNoYW5nZSgkZXZlbnQpXCJcbiAgLz5cbjwvc2t5LWlucHV0LWJveD5cbjxza3ktaW5wdXQtYm94XG4gICpuZ0lmPVwiaXNBbGl2ZSAmJiAhdXNlQXN5bmNTZWFyY2hcIlxuICBbZGlzYWJsZWRdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uZGlzYWJsZWRcIlxuICBbZm9ybUdyb3VwXT1cImVkaXRvckZvcm1cIlxuPlxuICA8c2t5LWxvb2t1cFxuICAgIFthcmlhTGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXJpYUxhYmVsbGVkQnldPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uYXJpYUxhYmVsbGVkQnlcIlxuICAgIFthdXRvY29tcGxldGVBdHRyaWJ1dGVdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uYXV0b2NvbXBsZXRlQXR0cmlidXRlXCJcbiAgICBbZGF0YV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kYXRhXCJcbiAgICBbZGVib3VuY2VUaW1lXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LmRlYm91bmNlVGltZVwiXG4gICAgW2Rlc2NyaXB0b3JQcm9wZXJ0eV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5kZXNjcmlwdG9yUHJvcGVydHlcIlxuICAgIFtlbmFibGVTaG93TW9yZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5lbmFibGVTaG93TW9yZVwiXG4gICAgZm9ybUNvbnRyb2xOYW1lPVwic2VsZWN0aW9uXCJcbiAgICBbaWRQcm9wZXJ0eV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5pZFByb3BlcnR5XCJcbiAgICBbcGxhY2Vob2xkZXJUZXh0XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnBsYWNlaG9sZGVyVGV4dFwiXG4gICAgW3Byb3BlcnRpZXNUb1NlYXJjaF09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5wcm9wZXJ0aWVzVG9TZWFyY2hcIlxuICAgIFtzZWFyY2hdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoXCJcbiAgICBbc2VhcmNoRmlsdGVyc109XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWFyY2hGaWx0ZXJzXCJcbiAgICBbc2VhcmNoUmVzdWx0c0xpbWl0XT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaFJlc3VsdHNMaW1pdFwiXG4gICAgW3NlYXJjaFJlc3VsdFRlbXBsYXRlXT1cInNreUNvbXBvbmVudFByb3BlcnRpZXM/LnNlYXJjaFJlc3VsdFRlbXBsYXRlXCJcbiAgICBbc2VhcmNoVGV4dE1pbmltdW1DaGFyYWN0ZXJzXT1cIlxuICAgICAgc2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2VhcmNoVGV4dE1pbmltdW1DaGFyYWN0ZXJzXG4gICAgXCJcbiAgICBbc2VsZWN0TW9kZV09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zZWxlY3RNb2RlXCJcbiAgICBbc2hvd0FkZEJ1dHRvbl09XCJza3lDb21wb25lbnRQcm9wZXJ0aWVzPy5zaG93QWRkQnV0dG9uXCJcbiAgICBbc2hvd01vcmVDb25maWddPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uc2hvd01vcmVDb25maWdcIlxuICAgIFt3cmFwcGVyQ2xhc3NdPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8ud3JhcHBlckNsYXNzXCJcbiAgICAoYWRkQ2xpY2spPVwic2t5Q29tcG9uZW50UHJvcGVydGllcz8uYWRkQ2xpY2s/LigkZXZlbnQpXCJcbiAgICAob3BlbkNoYW5nZSk9XCJvbkxvb2t1cE9wZW5DaGFuZ2UoJGV2ZW50KVwiXG4gIC8+XG48L3NreS1pbnB1dC1ib3g+XG4iXX0=
@@ -326,7 +326,7 @@ class SkyAgGridCellEditorAutocompleteComponent {
326
326
  }
327
327
  #stopEditingOnBlur() {
328
328
  if (!this.#autocompleteOpen &&
329
- this.#params?.context?.gridOptions?.stopEditingWhenCellsLoseFocus &&
329
+ this.#params?.api.getGridOption('stopEditingWhenCellsLoseFocus') &&
330
330
  !this.#elementRef.nativeElement.matches(':focus-within')) {
331
331
  this.#params?.api.stopEditing();
332
332
  }
@@ -349,15 +349,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImpor
349
349
  * @internal
350
350
  */
351
351
  class SkyAgGridCellEditorCurrencyComponent {
352
- #triggerType;
353
- #changeDetector;
354
- constructor(changeDetector) {
355
- this.skyComponentProperties = {};
352
+ constructor() {
353
+ this.skyComponentProperties = {
354
+ isCancellable: false,
355
+ };
356
+ this.currency = new UntypedFormControl();
356
357
  this.editorForm = new UntypedFormGroup({
357
- currency: new UntypedFormControl(),
358
+ currency: this.currency,
358
359
  });
359
- this.#changeDetector = changeDetector;
360
+ this.#changeDetector = inject(ChangeDetectorRef);
361
+ this.#initialized = false;
360
362
  }
363
+ #triggerType;
364
+ #changeDetector;
365
+ #initialized;
361
366
  /**
362
367
  * agInit is called by agGrid once after the editor is created and provides the editor with the information it needs.
363
368
  * @param params The cell editor params that include data about the cell, column, row, and grid.
@@ -368,11 +373,17 @@ class SkyAgGridCellEditorCurrencyComponent {
368
373
  this.rowNumber = this.params.rowIndex + 1;
369
374
  this.columnWidth = this.params.column.getActualWidth();
370
375
  this.rowHeightWithoutBorders = SkyAgGridCellEditorUtils.subtractOrZero(this.params.node?.rowHeight, 4);
371
- this.skyComponentProperties = this.params.skyComponentProperties || {
372
- decimalPlaces: 2,
373
- currencySymbol: '$',
376
+ this.skyComponentProperties = {
377
+ ...(this.params.skyComponentProperties || {
378
+ decimalPlaces: 2,
379
+ currencySymbol: '$',
380
+ }),
381
+ isCancellable: false,
374
382
  };
375
383
  }
384
+ refresh(params) {
385
+ this.agInit(params);
386
+ }
376
387
  /**
377
388
  * afterGuiAttached is called by agGrid after the editor is rendered in the DOM. Once it is attached the editor is ready to be focused on.
378
389
  */
@@ -381,7 +392,7 @@ class SkyAgGridCellEditorCurrencyComponent {
381
392
  // This setup is in `afterGuiAttached` due to the lifecycle of autonumeric which will highlight the initial value if it is in place when it renders.
382
393
  // Since we don't want that, we set the initial value after autonumeric initializes.
383
394
  this.#triggerType = SkyAgGridCellEditorUtils.getEditorInitialAction(this.params);
384
- const control = this.editorForm.get('currency');
395
+ const control = this.currency;
385
396
  if (control) {
386
397
  switch (this.#triggerType) {
387
398
  case SkyAgGridCellEditorInitialAction.Delete:
@@ -398,19 +409,18 @@ class SkyAgGridCellEditorCurrencyComponent {
398
409
  }
399
410
  }
400
411
  this.#changeDetector.markForCheck();
401
- // Without the `setTimeout` there is inconsistent behavior with the highlighting when no initial value is present.
402
- setTimeout(() => {
403
- if (this.#triggerType === SkyAgGridCellEditorInitialAction.Highlighted) {
404
- this.input?.nativeElement.select();
405
- }
406
- }, 100);
412
+ if (this.#triggerType === SkyAgGridCellEditorInitialAction.Highlighted &&
413
+ (this.params?.value ?? '') !== '') {
414
+ this.input?.nativeElement.select();
415
+ }
416
+ // When the cell is initialized with the Enter key, we need to suppress the first `onPressEnter`.
417
+ this.#initialized = this.params?.eventKey !== 'Enter';
407
418
  }
408
419
  /**
409
420
  * getValue is called by agGrid when editing is stopped to get the new value of the cell.
410
421
  */
411
422
  getValue() {
412
- const val = this.editorForm.get('currency')?.value;
413
- return val !== undefined && val !== null ? val : undefined;
423
+ return this.currency.value ?? undefined;
414
424
  }
415
425
  /**
416
426
  * The autoNumeric library's event handler suppresses the escape key event. This additional handler re-enables AG Grid's default functionality.
@@ -421,13 +431,19 @@ class SkyAgGridCellEditorCurrencyComponent {
421
431
  this.params.api.setFocusedCell(this.params.rowIndex, this.params.column);
422
432
  }
423
433
  }
424
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
425
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: SkyAgGridCellEditorCurrencyComponent, selector: "sky-ag-grid-cell-editor-currency", viewQueries: [{ propertyName: "input", first: true, predicate: ["skyCellEditorCurrency"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container [formGroup]=\"editorForm\">\n <input\n formControlName=\"currency\"\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_currency_aria_label'\n | skyLibResources: columnHeader : rowNumber\n \"\n [style.width.px]=\"columnWidth\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n [skyAutonumeric]=\"skyComponentProperties\"\n [skyAutonumericFormChangesUnformatted]=\"params?.eventKey?.length === 1\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n />\n</ng-container>\n", styles: ["input{border:none;padding-left:11px}\n"], dependencies: [{ kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2$1.λ1, selector: "input[skyAutonumeric]", inputs: ["skyAutonumeric", "skyAutonumericFormChangesUnformatted"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
434
+ onPressEnter() {
435
+ if (this.params && this.#initialized) {
436
+ this.params.stopEditing();
437
+ }
438
+ this.#initialized = true;
439
+ }
440
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
441
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.4", type: SkyAgGridCellEditorCurrencyComponent, selector: "sky-ag-grid-cell-editor-currency", viewQueries: [{ propertyName: "input", first: true, predicate: ["skyCellEditorCurrency"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-container [formGroup]=\"editorForm\">\n <input\n [formControl]=\"currency\"\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_currency_aria_label'\n | skyLibResources: columnHeader : rowNumber\n \"\n [style.width.px]=\"columnWidth\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n [skyAutonumeric]=\"skyComponentProperties\"\n [skyAutonumericFormChangesUnformatted]=\"params?.eventKey?.length === 1\"\n (keyup.enter)=\"onPressEnter()\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n />\n</ng-container>\n", styles: ["input{border:none;padding-left:11px}\n"], dependencies: [{ kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2$1.λ1, selector: "input[skyAutonumeric]", inputs: ["skyAutonumeric", "skyAutonumericFormChangesUnformatted"] }, { kind: "pipe", type: i3.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
426
442
  }
427
443
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: SkyAgGridCellEditorCurrencyComponent, decorators: [{
428
444
  type: Component,
429
- args: [{ selector: 'sky-ag-grid-cell-editor-currency', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [formGroup]=\"editorForm\">\n <input\n formControlName=\"currency\"\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_currency_aria_label'\n | skyLibResources: columnHeader : rowNumber\n \"\n [style.width.px]=\"columnWidth\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n [skyAutonumeric]=\"skyComponentProperties\"\n [skyAutonumericFormChangesUnformatted]=\"params?.eventKey?.length === 1\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n />\n</ng-container>\n", styles: ["input{border:none;padding-left:11px}\n"] }]
430
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { input: [{
445
+ args: [{ selector: 'sky-ag-grid-cell-editor-currency', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [formGroup]=\"editorForm\">\n <input\n [formControl]=\"currency\"\n type=\"text\"\n [attr.aria-label]=\"\n 'sky_ag_grid_cell_editor_currency_aria_label'\n | skyLibResources: columnHeader : rowNumber\n \"\n [style.width.px]=\"columnWidth\"\n [style.height.px]=\"rowHeightWithoutBorders\"\n [skyAutonumeric]=\"skyComponentProperties\"\n [skyAutonumericFormChangesUnformatted]=\"params?.eventKey?.length === 1\"\n (keyup.enter)=\"onPressEnter()\"\n (keyup.escape)=\"onPressEscape()\"\n #skyCellEditorCurrency\n />\n</ng-container>\n", styles: ["input{border:none;padding-left:11px}\n"] }]
446
+ }], propDecorators: { input: [{
431
447
  type: ViewChild,
432
448
  args: ['skyCellEditorCurrency', { read: ElementRef }]
433
449
  }] } });
@@ -552,7 +568,7 @@ class SkyAgGridCellEditorDatepickerComponent extends PopupComponent {
552
568
  }
553
569
  #stopEditingOnBlur() {
554
570
  if (!this.#calendarOpen &&
555
- this.#params?.context.gridOptions.stopEditingWhenCellsLoseFocus &&
571
+ this.#params?.api.getGridOption('stopEditingWhenCellsLoseFocus') &&
556
572
  !this.#elementRef.nativeElement.matches(':focus-within')) {
557
573
  this.#params?.api.stopEditing();
558
574
  }
@@ -686,7 +702,7 @@ class SkyAgGridCellEditorLookupComponent {
686
702
  }
687
703
  #stopEditingOnBlur() {
688
704
  if (!this.#lookupOpen &&
689
- this.#params?.context?.gridOptions?.stopEditingWhenCellsLoseFocus &&
705
+ this.#params?.api.getGridOption('stopEditingWhenCellsLoseFocus') &&
690
706
  !this.#elementRef.nativeElement.matches(':focus-within')) {
691
707
  this.#params?.api.stopEditing();
692
708
  }
@@ -1778,10 +1794,6 @@ class SkyAgGridService {
1778
1794
  getEditableGridOptions(args) {
1779
1795
  const defaultGridOptions = this.#getDefaultEditableGridOptions(args);
1780
1796
  const mergedGridOptions = this.#mergeGridOptions(defaultGridOptions, args.gridOptions);
1781
- mergedGridOptions.context ||= {};
1782
- mergedGridOptions.context.gridOptions = {
1783
- ...mergedGridOptions,
1784
- };
1785
1797
  return mergedGridOptions;
1786
1798
  }
1787
1799
  getHeaderHeight() {
@@ -1895,6 +1907,7 @@ class SkyAgGridService {
1895
1907
  cellEditor: SkyAgGridCellEditorCurrencyComponent,
1896
1908
  headerClass: getHeaderClass(SkyHeaderClass.RightAligned),
1897
1909
  minWidth: 185,
1910
+ suppressKeyboardEvent: (params) => this.#suppressEnter(params) || this.#suppressTab(params),
1898
1911
  },
1899
1912
  [SkyCellType.Date]: {
1900
1913
  cellClassRules: {
@@ -2119,6 +2132,12 @@ class SkyAgGridService {
2119
2132
  }
2120
2133
  return false;
2121
2134
  }
2135
+ #suppressEnter(params) {
2136
+ if (params.event.code === 'Enter') {
2137
+ return params.editing;
2138
+ }
2139
+ return false;
2140
+ }
2122
2141
  #getRowHeight() {
2123
2142
  return this.#currentTheme?.theme?.name === 'modern' ? 60 : 38;
2124
2143
  }