@adaptabletools/adaptable-angular-aggrid 20.2.6 → 20.2.7
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adaptabletools-adaptable-angular-aggrid.mjs","sources":["../../../projects/adaptable-angular-aggrid/src/lib/adaptable-api.token.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-controller.service.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-aggrid.directive.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-provider.component.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-ui.component.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-angular-aggrid.module.ts","../../../projects/adaptable-angular-aggrid/src/public-api.ts","../../../projects/adaptable-angular-aggrid/src/adaptabletools-adaptable-angular-aggrid.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { AdaptableApi } from '@adaptabletools/adaptable/src/Api/AdaptableApi';\nexport const ADAPTABLE_API = new InjectionToken<AdaptableApi>('ADAPTABLE_API');\n","import {\n ApplicationRef,\n ComponentRef,\n createComponent,\n EnvironmentInjector,\n EventEmitter,\n Injectable,\n Injector,\n Type,\n} from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { GridApi, GridOptions, Module } from 'ag-grid-enterprise';\nimport { AdaptableOptions } from '@adaptabletools/adaptable/src/AdaptableOptions/AdaptableOptions';\nimport { AngularFrameworkComponent } from '@adaptabletools/adaptable/src/agGrid/AdaptableFrameworkComponent';\nimport { AdaptableApi } from '@adaptabletools/adaptable/src/Api/AdaptableApi';\nimport { ADAPTABLE_API } from './adaptable-api.token';\nimport { AdaptableReadyInfo } from '@adaptabletools/adaptable/src/Api/Events/AdaptableReady';\n\nexport type AdaptableInitialisationPhase =\n | 'waitForAdaptableProps'\n | 'waitForAdaptableInit'\n | 'waitForAgGridInit'\n | 'waitForAdaptableReady';\n\nexport type RenderAgGridFrameworkComponentResult = false | GridApi;\n@Injectable()\nexport class AdaptableControllerService {\n adaptableOptions: AdaptableOptions;\n gridOptions: GridOptions;\n modules: Module[];\n\n adaptableReady: EventEmitter<AdaptableReadyInfo>;\n\n private phase: BehaviorSubject<AdaptableInitialisationPhase>;\n\n private agGridFrameworkPromise: Promise<RenderAgGridFrameworkComponentResult>;\n private resolveAgGridFrameworkPromise: (result: RenderAgGridFrameworkComponentResult) => void;\n\n private toolbarComponentRefs: WeakMap<AngularFrameworkComponent, ComponentRef<unknown>>;\n constructor(\n private injector: Injector,\n private environmentInjector: EnvironmentInjector,\n private appRef: ApplicationRef\n ) {\n this.adaptableReady = new EventEmitter<AdaptableReadyInfo>();\n this.phase = new BehaviorSubject<AdaptableInitialisationPhase>('waitForAdaptableProps');\n this.agGridFrameworkPromise = new Promise<RenderAgGridFrameworkComponentResult>((resolve) => {\n this.resolveAgGridFrameworkPromise = resolve;\n });\n this.toolbarComponentRefs = new WeakMap<AngularFrameworkComponent, ComponentRef<unknown>>();\n }\n\n currentInitPhase(): Observable<AdaptableInitialisationPhase> {\n return this.phase.asObservable();\n }\n setInitialisationPhase(phase: AdaptableInitialisationPhase) {\n this.phase.next(phase);\n }\n registerAdaptableOptions(adaptableOptions: AdaptableOptions) {\n this.adaptableOptions = adaptableOptions;\n this.checkIfAllPropsAreSet();\n }\n registerGridOptions(gridOptions: GridOptions) {\n this.gridOptions = gridOptions;\n this.checkIfAllPropsAreSet();\n }\n registerModules(modules: Module[]) {\n this.modules = modules;\n this.checkIfAllPropsAreSet();\n }\n renderAgGridFrameworkComponent(\n gridOptions: GridOptions\n ): Promise<RenderAgGridFrameworkComponentResult> {\n this.gridOptions = gridOptions;\n\n this.setInitialisationPhase('waitForAgGridInit');\n\n return this.agGridFrameworkPromise;\n }\n onAdaptableReady(adaptableReadyInfo: AdaptableReadyInfo) {\n this.adaptableReady.emit(adaptableReadyInfo);\n }\n\n onAgGridReady(agGridApi: GridApi) {\n this.resolveAgGridFrameworkPromise(agGridApi);\n this.setInitialisationPhase('waitForAdaptableReady');\n }\n private checkIfAllPropsAreSet() {\n if (this.adaptableOptions && this.gridOptions && this.modules) {\n this.setInitialisationPhase('waitForAdaptableInit');\n }\n }\n createFrameworkComponent(\n component: AngularFrameworkComponent,\n containerDomNode: HTMLElement,\n componentType: string,\n adaptableApi: AdaptableApi\n ): void {\n try {\n adaptableApi.logInfo(`Creating framework component for ${componentType}`, containerDomNode);\n if (this.toolbarComponentRefs.has(component)) {\n adaptableApi.logInfo(\n `Creation of framework component ${componentType} skipped as it is already present`,\n containerDomNode\n );\n return;\n }\n\n const angularComponentRef = this.createAngularComponent(\n component.type as Type<unknown>,\n containerDomNode,\n adaptableApi\n );\n\n if (component.onSetup) {\n Object.assign(angularComponentRef.instance, component.onSetup({ adaptableApi }));\n }\n\n this.toolbarComponentRefs.set(component, angularComponentRef);\n } catch (err) {\n adaptableApi.logError(\n `Cannot correctly create framework component for ${componentType}`,\n err\n );\n }\n }\n destroyFrameworkComponent(\n component: AngularFrameworkComponent,\n componentType: string,\n adaptableApi: AdaptableApi\n ): void {\n adaptableApi.logInfo(`Destroying framework component for ${componentType}`);\n const toolbarComponentRef = this.toolbarComponentRefs.get(component);\n if (toolbarComponentRef) {\n try {\n toolbarComponentRef.destroy();\n this.toolbarComponentRefs.delete(component);\n } catch (err) {\n adaptableApi.logError(\n `Cannot correctly destroy framework component for ${componentType}`,\n err\n );\n }\n } else {\n adaptableApi.logInfo(\n `Cannot correctly destroy framework component for ${componentType} because the reference is no longer available`\n );\n }\n }\n private createAngularComponent(\n angularComponentType: Type<unknown>,\n domContainer: HTMLElement,\n api: AdaptableApi\n ): ComponentRef<unknown> {\n // extend standard DI context with AdaptableApi\n const toolbarInjector = Injector.create({\n providers: [\n {\n provide: ADAPTABLE_API,\n useValue: api,\n },\n ],\n parent: this.injector,\n });\n\n // create the component\n const componentRef = createComponent(angularComponentType, {\n hostElement: domContainer,\n environmentInjector: this.environmentInjector,\n elementInjector: toolbarInjector,\n });\n\n // Last step is to register the newly created ref using the `ApplicationRef` instance\n // to include the component view into change detection cycles.\n this.appRef.attachView(componentRef.hostView);\n // trigger an early change detection\n componentRef.changeDetectorRef.detectChanges();\n\n return componentRef;\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n EmbeddedViewRef,\n OnDestroy,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { AdaptableControllerService } from './adaptable-controller.service';\nimport { Subscription } from 'rxjs';\nimport { GridOptions, GridReadyEvent, Module } from 'ag-grid-enterprise';\n\n@Directive({\n selector: '[adaptable]',\n})\nexport class AdaptableAgGridDirective implements OnDestroy {\n private phaseSubscription: Subscription;\n private embeddedViewRef?: EmbeddedViewRef<unknown>;\n\n constructor(\n private viewContainer: ViewContainerRef,\n private templateRef: TemplateRef<any>,\n private adaptableControllerService: AdaptableControllerService,\n private changeDetectorRef: ChangeDetectorRef\n ) {\n this.phaseSubscription = this.adaptableControllerService\n .currentInitPhase()\n .subscribe((phase) => {\n if (phase === 'waitForAgGridInit') {\n if (this.embeddedViewRef) {\n this.embeddedViewRef.destroy();\n }\n const modules = this.adaptableControllerService.modules;\n const gridOptions = this.adaptableControllerService.gridOptions;\n this.piggyBackAgGridReady(gridOptions);\n\n this.embeddedViewRef = this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: { gridOptions, modules },\n });\n // force change detection to ensure the grid is rendered (required in case of OnPush change detection strategy)\n this.changeDetectorRef.detectChanges();\n }\n });\n }\n\n ngOnDestroy(): void {\n this.phaseSubscription?.unsubscribe();\n }\n\n private piggyBackAgGridReady(gridOptions: GridOptions) {\n const originalGridReady = gridOptions.onGridReady;\n gridOptions.onGridReady = (params: GridReadyEvent) => {\n this.adaptableControllerService.onAgGridReady(params.api);\n originalGridReady?.(params);\n };\n }\n}\n","import {\n AfterContentInit,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { GridOptions, Module, _GET_ALL_GRID_OPTIONS } from 'ag-grid-enterprise';\nimport { AdaptableOptions } from '@adaptabletools/adaptable/src/AdaptableOptions/AdaptableOptions';\nimport { AdaptableControllerService } from './adaptable-controller.service';\nimport { AdaptableReadyInfo } from '@adaptabletools/adaptable/src/Api/Events/AdaptableReady';\nimport { AdaptableAgGridDirective } from './adaptable-aggrid.directive';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'adaptable-provider',\n template: `<ng-content></ng-content>`,\n providers: [AdaptableControllerService],\n host: {\n class: 'ab__ng-wrapper',\n },\n})\nexport class AdaptableProvider implements OnChanges, AfterContentInit, OnDestroy {\n @Input()\n adaptableOptions: AdaptableOptions;\n @Input()\n gridOptions: GridOptions;\n @Input()\n modules: Module[];\n\n @Output() adaptableReady: EventEmitter<AdaptableReadyInfo>;\n\n @ContentChild(AdaptableAgGridDirective)\n adaptableDirective: AdaptableAgGridDirective;\n\n private phaseSubscription: Subscription;\n\n constructor(\n private adaptableControllerService: AdaptableControllerService,\n private elementRef: ElementRef\n ) {\n this.adaptableReady = this.adaptableControllerService.adaptableReady;\n this.phaseSubscription = this.adaptableControllerService\n .currentInitPhase()\n .subscribe((phase) => {\n if (phase === 'waitForAdaptableReady') {\n this.validateAgGridAngularInputs();\n }\n });\n }\n\n ngOnDestroy(): void {\n this.phaseSubscription?.unsubscribe();\n }\n\n ngAfterContentInit() {\n if (!this.adaptableDirective) {\n throw new Error(\n `\n <adaptable-provider> must have a child <ag-grid-angular> component with the 'adaptable' directive applied!\n\n See the documentation for more information: https://docs.adaptabletools.com/guide/angular-integration\n `\n );\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const adaptableOptionsChange = changes['adaptableOptions'];\n if (adaptableOptionsChange) {\n if (adaptableOptionsChange.previousValue != undefined) {\n console.error(\n `Mutating AdaptableOptions after Adaptable has been initialised is not supported!`\n );\n } else if (adaptableOptionsChange.currentValue != undefined) {\n this.adaptableControllerService.registerAdaptableOptions(\n adaptableOptionsChange.currentValue\n );\n }\n }\n const gridOptionsChange = changes['gridOptions'];\n if (gridOptionsChange) {\n if (gridOptionsChange.previousValue != undefined) {\n console.error(`Mutating GridOptions after AG Grid has been initialised is not supported!`);\n } else if (gridOptionsChange.currentValue != undefined) {\n this.adaptableControllerService.registerGridOptions(gridOptionsChange.currentValue);\n }\n }\n const modulesChange = changes['modules'];\n if (modulesChange) {\n if (modulesChange.previousValue != undefined) {\n console.error(`Mutating Modules after AG Grid has been initialised is not supported!`);\n } else if (modulesChange.currentValue != undefined) {\n this.adaptableControllerService.registerModules(modulesChange.currentValue);\n }\n }\n }\n\n onAdaptableReady(adaptableReadyInfo: AdaptableReadyInfo) {\n this.adaptableReady.emit(adaptableReadyInfo);\n }\n\n private validateAgGridAngularInputs(): void {\n const ALLOWED_AG_GRID_ANGULAR_INPUTS: (keyof GridOptions)[] = ['rowData'];\n\n const componentInputs: string[] = Array.from(\n this.elementRef.nativeElement.getElementsByTagName('ag-grid-angular')?.[0]?.attributes ?? []\n )\n .map((attr: any) => attr.name)\n .filter(Boolean);\n\n const normalisedComponentInputs = componentInputs\n .map((input) => {\n // dynamic attributes get prefixed with 'ng-reflect-'\n return input.replace('ng-reflect-', '');\n })\n .map((key) => {\n // convert from kebab-case to camelCase\n const camelCaseKey = key.replace(/-([a-z])/g, (g) => g[1].toUpperCase());\n return camelCaseKey;\n })\n .filter((key) => !ALLOWED_AG_GRID_ANGULAR_INPUTS.includes(key as keyof GridOptions));\n\n const gridOptionsKeys = _GET_ALL_GRID_OPTIONS();\n\n const notAllowedInputs = gridOptionsKeys.filter((key) =>\n normalisedComponentInputs.includes(key)\n );\n\n if (notAllowedInputs.length) {\n console.warn(\n `Warning: Found ${\n notAllowedInputs.length\n } input(s) that are not allowed to be passed as Angular inputs:\n ${notAllowedInputs.join(', ')}\n\nThese inputs should pe passed as properties of the 'gridOptions' parameter.\n\n\nSee the documentation for more information: https://docs.adaptabletools.com/guide/angular-integration`\n );\n }\n }\n}\n","import { Attribute, Component, OnDestroy } from '@angular/core';\nimport { GridOptions, Module, ColumnApiModule } from 'ag-grid-enterprise';\nimport { Subscription } from 'rxjs';\nimport { AdaptableControllerService } from './adaptable-controller.service';\nimport { AdaptableApi } from '@adaptabletools/adaptable/src/Api/AdaptableApi';\nimport { _AdaptableAgGrid } from '@adaptabletools/adaptable/agGrid';\nimport { AngularFrameworkComponent } from '@adaptabletools/adaptable/src/agGrid/AdaptableFrameworkComponent';\nimport { AdaptableReadyInfo } from '@adaptabletools/adaptable/src/Api/Events/AdaptableReady';\nimport { AdaptableOptions } from '@adaptabletools/adaptable/src/AdaptableOptions/AdaptableOptions';\n\nfunction getRandomInt(max: number): number {\n return Math.floor(Math.random() * Math.floor(max));\n}\n\nconst columnApiModule = ColumnApiModule;\n\n@Component({\n selector: 'adaptable-ui',\n template: ` <div *ngIf=\"readyForAdaptableInit\" [id]=\"adaptableContainerId\"></div>`,\n styles: [],\n})\nexport class AdaptableUI implements OnDestroy {\n readyForAdaptableInit: boolean;\n adaptableContainerId: string;\n\n private adaptableApi: AdaptableApi | null = null;\n private isDestroyed = false;\n private phaseSubscription: Subscription;\n\n constructor(\n @Attribute('id') elementId: string,\n private adaptableControllerService: AdaptableControllerService\n ) {\n this.readyForAdaptableInit = false;\n this.adaptableContainerId = elementId || `adaptable-${getRandomInt(1000)}-${Date.now()}`;\n\n this.phaseSubscription = this.adaptableControllerService\n .currentInitPhase()\n .subscribe((phase) => {\n if (phase === 'waitForAdaptableInit' && !this.isDestroyed) {\n this.readyForAdaptableInit = true;\n this.initializeAdaptable();\n }\n });\n }\n\n ngOnDestroy() {\n this.isDestroyed = true;\n this.phaseSubscription?.unsubscribe();\n\n if (this.adaptableApi) {\n this.adaptableApi.destroy({\n unmount: true,\n destroyAgGrid: false,\n });\n this.adaptableApi = null;\n }\n }\n\n get adaptableOptions(): AdaptableOptions {\n return this.adaptableControllerService.adaptableOptions;\n }\n\n get gridOptions(): GridOptions {\n return this.adaptableControllerService.gridOptions;\n }\n\n get modules(): Module[] {\n return this.adaptableControllerService.modules;\n }\n\n private async initializeAdaptable() {\n if (this.isDestroyed) {\n return;\n }\n\n this.adaptableOptions.containerOptions = this.adaptableOptions.containerOptions || {};\n this.adaptableOptions.containerOptions.adaptableContainer = this.adaptableContainerId;\n\n try {\n const adaptableApi: AdaptableApi = await _AdaptableAgGrid._initInternal({\n adaptableOptions: this.adaptableOptions,\n gridOptions: this.gridOptions,\n modules: this.modules,\n variant: 'angular',\n renderAgGridFrameworkComponent: (gridOptions: GridOptions) =>\n this.adaptableControllerService.renderAgGridFrameworkComponent(gridOptions),\n getAgGridColumnApiModuleReference: () => {\n return columnApiModule;\n },\n });\n\n // Check if component was destroyed during initialization\n if (this.isDestroyed) {\n adaptableApi.destroy({\n unmount: true,\n destroyAgGrid: false,\n });\n return;\n }\n\n this.adaptableApi = adaptableApi;\n\n adaptableApi.internalApi\n .getAdaptableInstance()\n ._onIncludeFired(\n 'FrameworkComponentChange',\n ({ command, frameworkComponent, containerDomNode, componentType }) => {\n if (command === 'create') {\n this.adaptableControllerService.createFrameworkComponent(\n frameworkComponent as AngularFrameworkComponent,\n containerDomNode,\n componentType,\n adaptableApi\n );\n } else {\n this.adaptableControllerService.destroyFrameworkComponent(\n frameworkComponent as AngularFrameworkComponent,\n componentType,\n adaptableApi\n );\n }\n }\n );\n\n adaptableApi.eventApi.on('AdaptableReady', (adaptableReadyInfo: AdaptableReadyInfo) =>\n this.adaptableControllerService.onAdaptableReady(adaptableReadyInfo)\n );\n } catch (error) {\n console.error('Failed to initialize Adaptable:', error);\n if (!this.isDestroyed) {\n this.adaptableApi?.destroy({\n unmount: true,\n destroyAgGrid: false,\n });\n this.adaptableApi = null;\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AdaptableProvider } from './adaptable-provider.component';\nimport { AdaptableUI } from './adaptable-ui.component';\nimport { AdaptableAgGridDirective } from './adaptable-aggrid.directive';\n\n@NgModule({\n declarations: [AdaptableProvider, AdaptableUI, AdaptableAgGridDirective],\n imports: [CommonModule],\n exports: [AdaptableProvider, AdaptableUI, AdaptableAgGridDirective],\n providers: [],\n})\nexport class AdaptableAngularAgGridModule {}\n","/*\n * Public API Surface of adaptable-angular-aggrid\n */\nexport * from '@adaptabletools/adaptable/src/types';\nexport {\n AdaptableQL,\n AdaptableUpgradeHelper,\n AdaptableColumnType,\n} from '@adaptabletools/adaptable/agGrid';\nexport * from './lib/adaptable-angular-aggrid.module';\nexport * from './lib/adaptable-provider.component';\nexport * from './lib/adaptable-ui.component';\nexport * from './lib/adaptable-aggrid.directive';\nexport { ADAPTABLE_API } from './lib/adaptable-api.token';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.AdaptableControllerService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adaptabletools-adaptable-angular-aggrid.mjs","sources":["../../../projects/adaptable-angular-aggrid/src/lib/adaptable-api.token.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-controller.service.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-aggrid.directive.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-provider.component.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-ui.component.ts","../../../projects/adaptable-angular-aggrid/src/lib/adaptable-angular-aggrid.module.ts","../../../projects/adaptable-angular-aggrid/src/public-api.ts","../../../projects/adaptable-angular-aggrid/src/adaptabletools-adaptable-angular-aggrid.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { AdaptableApi } from '@adaptabletools/adaptable/src/Api/AdaptableApi';\nexport const ADAPTABLE_API = new InjectionToken<AdaptableApi>('ADAPTABLE_API');\n","import {\n ApplicationRef,\n ComponentRef,\n createComponent,\n EnvironmentInjector,\n EventEmitter,\n Injectable,\n Injector,\n Type,\n} from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { GridApi, GridOptions, Module } from 'ag-grid-enterprise';\nimport { AdaptableOptions } from '@adaptabletools/adaptable/src/AdaptableOptions/AdaptableOptions';\nimport { AngularFrameworkComponent } from '@adaptabletools/adaptable/src/agGrid/AdaptableFrameworkComponent';\nimport { AdaptableApi } from '@adaptabletools/adaptable/src/Api/AdaptableApi';\nimport { ADAPTABLE_API } from './adaptable-api.token';\nimport { AdaptableReadyInfo } from '@adaptabletools/adaptable/src/Api/Events/AdaptableReady';\n\nexport type AdaptableInitialisationPhase =\n | 'waitForAdaptableProps'\n | 'waitForAdaptableInit'\n | 'waitForAgGridInit'\n | 'waitForAdaptableReady';\n\nexport type RenderAgGridFrameworkComponentResult = false | GridApi;\n@Injectable()\nexport class AdaptableControllerService {\n adaptableOptions: AdaptableOptions;\n gridOptions: GridOptions;\n modules: Module[];\n\n adaptableReady: EventEmitter<AdaptableReadyInfo>;\n\n private phase: BehaviorSubject<AdaptableInitialisationPhase>;\n\n private agGridFrameworkPromise: Promise<RenderAgGridFrameworkComponentResult>;\n private resolveAgGridFrameworkPromise: (result: RenderAgGridFrameworkComponentResult) => void;\n\n private toolbarComponentRefs: WeakMap<AngularFrameworkComponent, ComponentRef<unknown>>;\n constructor(\n private injector: Injector,\n private environmentInjector: EnvironmentInjector,\n private appRef: ApplicationRef\n ) {\n this.adaptableReady = new EventEmitter<AdaptableReadyInfo>();\n this.phase = new BehaviorSubject<AdaptableInitialisationPhase>('waitForAdaptableProps');\n this.agGridFrameworkPromise = new Promise<RenderAgGridFrameworkComponentResult>((resolve) => {\n this.resolveAgGridFrameworkPromise = resolve;\n });\n this.toolbarComponentRefs = new WeakMap<AngularFrameworkComponent, ComponentRef<unknown>>();\n }\n\n currentInitPhase(): Observable<AdaptableInitialisationPhase> {\n return this.phase.asObservable();\n }\n setInitialisationPhase(phase: AdaptableInitialisationPhase) {\n this.phase.next(phase);\n }\n registerAdaptableOptions(adaptableOptions: AdaptableOptions) {\n this.adaptableOptions = adaptableOptions;\n this.checkIfAllPropsAreSet();\n }\n registerGridOptions(gridOptions: GridOptions) {\n this.gridOptions = gridOptions;\n this.checkIfAllPropsAreSet();\n }\n registerModules(modules: Module[]) {\n this.modules = modules;\n this.checkIfAllPropsAreSet();\n }\n renderAgGridFrameworkComponent(\n gridOptions: GridOptions\n ): Promise<RenderAgGridFrameworkComponentResult> {\n this.gridOptions = gridOptions;\n\n this.setInitialisationPhase('waitForAgGridInit');\n\n return this.agGridFrameworkPromise;\n }\n onAdaptableReady(adaptableReadyInfo: AdaptableReadyInfo) {\n this.adaptableReady.emit(adaptableReadyInfo);\n }\n\n onAgGridReady(agGridApi: GridApi) {\n this.resolveAgGridFrameworkPromise(agGridApi);\n this.setInitialisationPhase('waitForAdaptableReady');\n }\n private checkIfAllPropsAreSet() {\n if (this.adaptableOptions && this.gridOptions && this.modules) {\n this.setInitialisationPhase('waitForAdaptableInit');\n }\n }\n createFrameworkComponent(\n component: AngularFrameworkComponent,\n containerDomNode: HTMLElement,\n componentType: string,\n adaptableApi: AdaptableApi\n ): void {\n try {\n adaptableApi.logInfo(`Creating framework component for ${componentType}`, containerDomNode);\n if (this.toolbarComponentRefs.has(component)) {\n adaptableApi.logInfo(\n `Creation of framework component ${componentType} skipped as it is already present`,\n containerDomNode\n );\n return;\n }\n\n const angularComponentRef = this.createAngularComponent(\n component.type as Type<unknown>,\n containerDomNode,\n adaptableApi\n );\n\n if (component.onSetup) {\n Object.assign(angularComponentRef.instance, component.onSetup({ adaptableApi }));\n }\n\n this.toolbarComponentRefs.set(component, angularComponentRef);\n } catch (err) {\n adaptableApi.logError(\n `Cannot correctly create framework component for ${componentType}`,\n err\n );\n }\n }\n destroyFrameworkComponent(\n component: AngularFrameworkComponent,\n componentType: string,\n adaptableApi: AdaptableApi\n ): void {\n adaptableApi.logInfo(`Destroying framework component for ${componentType}`);\n const toolbarComponentRef = this.toolbarComponentRefs.get(component);\n if (toolbarComponentRef) {\n try {\n toolbarComponentRef.destroy();\n this.toolbarComponentRefs.delete(component);\n } catch (err) {\n adaptableApi.logError(\n `Cannot correctly destroy framework component for ${componentType}`,\n err\n );\n }\n } else {\n adaptableApi.logInfo(\n `Cannot correctly destroy framework component for ${componentType} because the reference is no longer available`\n );\n }\n }\n private createAngularComponent(\n angularComponentType: Type<unknown>,\n domContainer: HTMLElement,\n api: AdaptableApi\n ): ComponentRef<unknown> {\n // extend standard DI context with AdaptableApi\n const toolbarInjector = Injector.create({\n providers: [\n {\n provide: ADAPTABLE_API,\n useValue: api,\n },\n ],\n parent: this.injector,\n });\n\n // create the component\n const componentRef = createComponent(angularComponentType, {\n hostElement: domContainer,\n environmentInjector: this.environmentInjector,\n elementInjector: toolbarInjector,\n });\n\n // Last step is to register the newly created ref using the `ApplicationRef` instance\n // to include the component view into change detection cycles.\n this.appRef.attachView(componentRef.hostView);\n // trigger an early change detection\n componentRef.changeDetectorRef.detectChanges();\n\n return componentRef;\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n EmbeddedViewRef,\n OnDestroy,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { AdaptableControllerService } from './adaptable-controller.service';\nimport { Subscription } from 'rxjs';\nimport { GridOptions, GridReadyEvent, Module } from 'ag-grid-enterprise';\n\n@Directive({\n selector: '[adaptable]',\n})\nexport class AdaptableAgGridDirective implements OnDestroy {\n private phaseSubscription: Subscription;\n private embeddedViewRef?: EmbeddedViewRef<unknown>;\n\n constructor(\n private viewContainer: ViewContainerRef,\n private templateRef: TemplateRef<any>,\n private adaptableControllerService: AdaptableControllerService,\n private changeDetectorRef: ChangeDetectorRef\n ) {\n this.phaseSubscription = this.adaptableControllerService\n .currentInitPhase()\n .subscribe((phase) => {\n if (phase === 'waitForAgGridInit') {\n if (this.embeddedViewRef) {\n this.embeddedViewRef.destroy();\n }\n const modules = this.adaptableControllerService.modules;\n const gridOptions = this.adaptableControllerService.gridOptions;\n this.piggyBackAgGridReady(gridOptions);\n\n this.embeddedViewRef = this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: { gridOptions, modules },\n });\n // force change detection to ensure the grid is rendered (required in case of OnPush change detection strategy)\n this.changeDetectorRef.detectChanges();\n }\n });\n }\n\n ngOnDestroy(): void {\n this.phaseSubscription?.unsubscribe();\n }\n\n private piggyBackAgGridReady(gridOptions: GridOptions) {\n const originalGridReady = gridOptions.onGridReady;\n gridOptions.onGridReady = (params: GridReadyEvent) => {\n this.adaptableControllerService.onAgGridReady(params.api);\n originalGridReady?.(params);\n };\n }\n}\n","import {\n AfterContentInit,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { GridOptions, Module, _GET_ALL_GRID_OPTIONS } from 'ag-grid-enterprise';\nimport { AdaptableOptions } from '@adaptabletools/adaptable/src/AdaptableOptions/AdaptableOptions';\nimport { AdaptableControllerService } from './adaptable-controller.service';\nimport { AdaptableReadyInfo } from '@adaptabletools/adaptable/src/Api/Events/AdaptableReady';\nimport { AdaptableAgGridDirective } from './adaptable-aggrid.directive';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'adaptable-provider',\n template: `<ng-content></ng-content>`,\n providers: [AdaptableControllerService],\n host: {\n class: 'ab__ng-wrapper',\n },\n})\nexport class AdaptableProvider implements OnChanges, AfterContentInit, OnDestroy {\n @Input()\n adaptableOptions: AdaptableOptions;\n @Input()\n gridOptions: GridOptions;\n @Input()\n modules: Module[];\n\n @Output() adaptableReady: EventEmitter<AdaptableReadyInfo>;\n\n @ContentChild(AdaptableAgGridDirective)\n adaptableDirective: AdaptableAgGridDirective;\n\n private phaseSubscription: Subscription;\n\n constructor(\n private adaptableControllerService: AdaptableControllerService,\n private elementRef: ElementRef\n ) {\n this.adaptableReady = this.adaptableControllerService.adaptableReady;\n this.phaseSubscription = this.adaptableControllerService\n .currentInitPhase()\n .subscribe((phase) => {\n if (phase === 'waitForAdaptableReady') {\n this.validateAgGridAngularInputs();\n }\n });\n }\n\n ngOnDestroy(): void {\n this.phaseSubscription?.unsubscribe();\n }\n\n ngAfterContentInit() {\n if (!this.adaptableDirective) {\n throw new Error(\n `\n <adaptable-provider> must have a child <ag-grid-angular> component with the 'adaptable' directive applied!\n\n See the documentation for more information: https://docs.adaptabletools.com/guide/angular-integration\n `\n );\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const adaptableOptionsChange = changes['adaptableOptions'];\n if (adaptableOptionsChange) {\n if (adaptableOptionsChange.previousValue != undefined) {\n console.error(\n `Mutating AdaptableOptions after Adaptable has been initialised is not supported!`\n );\n } else if (adaptableOptionsChange.currentValue != undefined) {\n this.adaptableControllerService.registerAdaptableOptions(\n adaptableOptionsChange.currentValue\n );\n }\n }\n const gridOptionsChange = changes['gridOptions'];\n if (gridOptionsChange) {\n if (gridOptionsChange.previousValue != undefined) {\n console.error(`Mutating GridOptions after AG Grid has been initialised is not supported!`);\n } else if (gridOptionsChange.currentValue != undefined) {\n this.adaptableControllerService.registerGridOptions(gridOptionsChange.currentValue);\n }\n }\n const modulesChange = changes['modules'];\n if (modulesChange) {\n if (modulesChange.previousValue != undefined) {\n console.error(`Mutating Modules after AG Grid has been initialised is not supported!`);\n } else if (modulesChange.currentValue != undefined) {\n this.adaptableControllerService.registerModules(modulesChange.currentValue);\n }\n }\n }\n\n onAdaptableReady(adaptableReadyInfo: AdaptableReadyInfo) {\n this.adaptableReady.emit(adaptableReadyInfo);\n }\n\n private validateAgGridAngularInputs(): void {\n const ALLOWED_AG_GRID_ANGULAR_INPUTS: (keyof GridOptions)[] = ['rowData'];\n\n const componentInputs: string[] = Array.from(\n this.elementRef.nativeElement.getElementsByTagName('ag-grid-angular')?.[0]?.attributes ?? []\n )\n .map((attr: any) => attr.name)\n .filter(Boolean);\n\n const normalisedComponentInputs = componentInputs\n .map((input) => {\n // dynamic attributes get prefixed with 'ng-reflect-'\n return input.replace('ng-reflect-', '');\n })\n .map((key) => {\n // convert from kebab-case to camelCase\n const camelCaseKey = key.replace(/-([a-z])/g, (g) => g[1].toUpperCase());\n return camelCaseKey;\n })\n .filter((key) => !ALLOWED_AG_GRID_ANGULAR_INPUTS.includes(key as keyof GridOptions));\n\n const gridOptionsKeys = _GET_ALL_GRID_OPTIONS();\n\n const notAllowedInputs = gridOptionsKeys.filter((key) =>\n normalisedComponentInputs.includes(key)\n );\n\n if (notAllowedInputs.length) {\n console.warn(\n `Warning: Found ${\n notAllowedInputs.length\n } input(s) that are not allowed to be passed as Angular inputs:\n ${notAllowedInputs.join(', ')}\n\nThese inputs should pe passed as properties of the 'gridOptions' parameter.\n\n\nSee the documentation for more information: https://docs.adaptabletools.com/guide/angular-integration`\n );\n }\n }\n}\n","import { Attribute, Component, OnDestroy } from '@angular/core';\nimport { GridOptions, Module, ColumnApiModule } from 'ag-grid-enterprise';\nimport { Subscription } from 'rxjs';\nimport { AdaptableControllerService } from './adaptable-controller.service';\nimport { AdaptableApi } from '@adaptabletools/adaptable/src/Api/AdaptableApi';\nimport { _AdaptableAgGrid } from '@adaptabletools/adaptable/agGrid';\nimport { AngularFrameworkComponent } from '@adaptabletools/adaptable/src/agGrid/AdaptableFrameworkComponent';\nimport { AdaptableReadyInfo } from '@adaptabletools/adaptable/src/Api/Events/AdaptableReady';\nimport { AdaptableOptions } from '@adaptabletools/adaptable/src/AdaptableOptions/AdaptableOptions';\n\nfunction getRandomInt(max: number): number {\n return Math.floor(Math.random() * Math.floor(max));\n}\n\nconst columnApiModule = ColumnApiModule;\n\n@Component({\n selector: 'adaptable-ui',\n template: ` <div *ngIf=\"readyForAdaptableInit\" [id]=\"adaptableContainerId\"></div>`,\n styles: [],\n})\nexport class AdaptableUI implements OnDestroy {\n readyForAdaptableInit: boolean;\n adaptableContainerId: string;\n\n private adaptableApi: AdaptableApi | null = null;\n private isDestroyed = false;\n private phaseSubscription: Subscription;\n\n constructor(\n @Attribute('id') elementId: string,\n private adaptableControllerService: AdaptableControllerService\n ) {\n this.readyForAdaptableInit = false;\n this.adaptableContainerId = elementId || `adaptable-${getRandomInt(1000)}-${Date.now()}`;\n\n this.phaseSubscription = this.adaptableControllerService\n .currentInitPhase()\n .subscribe((phase) => {\n if (phase === 'waitForAdaptableInit' && !this.isDestroyed) {\n this.readyForAdaptableInit = true;\n this.initializeAdaptable();\n }\n });\n }\n\n ngOnDestroy() {\n this.isDestroyed = true;\n this.phaseSubscription?.unsubscribe();\n\n if (this.adaptableApi) {\n this.adaptableApi.destroy({\n unmount: true,\n destroyAgGrid: false,\n });\n this.adaptableApi = null;\n }\n }\n\n get adaptableOptions(): AdaptableOptions {\n return this.adaptableControllerService.adaptableOptions;\n }\n\n get gridOptions(): GridOptions {\n return this.adaptableControllerService.gridOptions;\n }\n\n get modules(): Module[] {\n return this.adaptableControllerService.modules;\n }\n\n private async initializeAdaptable() {\n if (this.isDestroyed) {\n return;\n }\n\n this.adaptableOptions.containerOptions = this.adaptableOptions.containerOptions || {};\n this.adaptableOptions.containerOptions.adaptableContainer = this.adaptableContainerId;\n\n try {\n const adaptableApi: AdaptableApi = await _AdaptableAgGrid._initInternal({\n adaptableOptions: this.adaptableOptions,\n gridOptions: this.gridOptions,\n modules: this.modules,\n variant: 'angular',\n renderAgGridFrameworkComponent: (gridOptions: GridOptions) =>\n this.adaptableControllerService.renderAgGridFrameworkComponent(gridOptions),\n getAgGridColumnApiModuleReference: () => {\n return columnApiModule;\n },\n });\n\n // Check if component was destroyed during initialization\n if (this.isDestroyed) {\n adaptableApi.destroy({\n unmount: true,\n destroyAgGrid: false,\n });\n return;\n }\n\n this.adaptableApi = adaptableApi;\n\n adaptableApi.internalApi\n .getAdaptableInstance()\n ._onIncludeFired(\n 'FrameworkComponentChange',\n ({ command, frameworkComponent, containerDomNode, componentType }) => {\n if (command === 'create') {\n this.adaptableControllerService.createFrameworkComponent(\n frameworkComponent as AngularFrameworkComponent,\n containerDomNode,\n componentType,\n adaptableApi\n );\n } else {\n this.adaptableControllerService.destroyFrameworkComponent(\n frameworkComponent as AngularFrameworkComponent,\n componentType,\n adaptableApi\n );\n }\n }\n );\n\n adaptableApi.eventApi.on('AdaptableReady', (adaptableReadyInfo: AdaptableReadyInfo) =>\n this.adaptableControllerService.onAdaptableReady(adaptableReadyInfo)\n );\n } catch (error) {\n console.error('Failed to initialize Adaptable:', error);\n if (!this.isDestroyed) {\n this.adaptableApi?.destroy({\n unmount: true,\n destroyAgGrid: false,\n });\n this.adaptableApi = null;\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AdaptableProvider } from './adaptable-provider.component';\nimport { AdaptableUI } from './adaptable-ui.component';\nimport { AdaptableAgGridDirective } from './adaptable-aggrid.directive';\n\n@NgModule({\n declarations: [AdaptableProvider, AdaptableUI, AdaptableAgGridDirective],\n imports: [CommonModule],\n exports: [AdaptableProvider, AdaptableUI, AdaptableAgGridDirective],\n providers: [],\n})\nexport class AdaptableAngularAgGridModule {}\n","/*\n * Public API Surface of adaptable-angular-aggrid\n */\nexport * from '@adaptabletools/adaptable/src/types';\nexport {\n AdaptableQL,\n AdaptableUpgradeHelper,\n AdaptableColumnType,\n} from '@adaptabletools/adaptable/agGrid';\nexport * from './lib/adaptable-angular-aggrid.module';\nexport * from './lib/adaptable-provider.component';\nexport * from './lib/adaptable-ui.component';\nexport * from './lib/adaptable-aggrid.directive';\nexport { ADAPTABLE_API } from './lib/adaptable-api.token';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.AdaptableControllerService"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaptabletools/adaptable-angular-aggrid",
|
|
3
|
-
"version": "20.2.
|
|
3
|
+
"version": "20.2.7",
|
|
4
4
|
"description": "Angular version of AdapTable - the powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements",
|
|
5
5
|
"license": "contact sales@adaptabletools.com for details",
|
|
6
6
|
"peerDependencies": {
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"tslib": "^2.8.1",
|
|
13
|
-
"@adaptabletools/adaptable": "20.2.
|
|
13
|
+
"@adaptabletools/adaptable": "20.2.7"
|
|
14
14
|
},
|
|
15
15
|
"exports": {
|
|
16
16
|
"./index.css": "./index.css",
|