@memberjunction/ng-entity-viewer 5.10.1 → 5.11.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.
@@ -1,6 +1,6 @@
1
1
  import { EventEmitter, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core';
2
2
  import { MJUserViewEntityExtended } from '@memberjunction/core-entities';
3
- import { ViewConfigSummary, QuickSaveEvent } from '../types';
3
+ import { ViewConfigSummary, QuickSaveEvent, QuickSaveAdvancedEvent } from '../types';
4
4
  import * as i0 from "@angular/core";
5
5
  /**
6
6
  * QuickSaveDialogComponent - Focused modal for saving views quickly
@@ -62,9 +62,10 @@ export declare class QuickSaveDialogComponent implements OnChanges {
62
62
  */
63
63
  Close: EventEmitter<void>;
64
64
  /**
65
- * Emitted when user wants to open the full config panel
65
+ * Emitted when user wants to open the full config panel.
66
+ * Carries the partially-filled form data so the config panel can continue the flow.
66
67
  */
67
- OpenAdvanced: EventEmitter<void>;
68
+ OpenAdvanced: EventEmitter<QuickSaveAdvancedEvent>;
68
69
  Name: string;
69
70
  Description: string;
70
71
  IsShared: boolean;
@@ -85,7 +86,7 @@ export declare class QuickSaveDialogComponent implements OnChanges {
85
86
  */
86
87
  OnClose(): void;
87
88
  /**
88
- * Open advanced configuration panel
89
+ * Open advanced configuration panel, carrying partially-filled form data
89
90
  */
90
91
  OnOpenAdvanced(): void;
91
92
  static ɵfac: i0.ɵɵFactoryDeclaration<QuickSaveDialogComponent, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"quick-save-dialog.component.d.ts","sourceRoot":"","sources":["../../../src/lib/quick-save-dialog/quick-save-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACpH,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;;AAE7D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAMa,wBAAyB,YAAW,SAAS;IAoD5C,OAAO,CAAC,GAAG;IAnDvB;;OAEG;IACM,MAAM,EAAE,OAAO,CAAS;IAEjC;;OAEG;IACM,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAAQ;IAE5D;;OAEG;IACM,UAAU,EAAE,MAAM,CAAM;IAEjC;;OAEG;IACM,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAElD;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACM,gBAAgB,EAAE,OAAO,CAAS;IAE3C;;OAEG;IACO,IAAI,+BAAsC;IAEpD;;OAEG;IACO,KAAK,qBAA4B;IAE3C;;OAEG;IACO,YAAY,qBAA4B;IAG3C,IAAI,EAAE,MAAM,CAAM;IAClB,WAAW,EAAE,MAAM,CAAM;IACzB,QAAQ,EAAE,OAAO,CAAS;IAC1B,WAAW,EAAE,OAAO,CAAS;gBAEhB,GAAG,EAAE,iBAAiB;IAE1C,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzC;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAWhC;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,cAAc,IAAI,IAAI;yCAtGX,wBAAwB;2CAAxB,wBAAwB;CAyGpC"}
1
+ {"version":3,"file":"quick-save-dialog.component.d.ts","sourceRoot":"","sources":["../../../src/lib/quick-save-dialog/quick-save-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACpH,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;;AAErF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAMa,wBAAyB,YAAW,SAAS;IAqD5C,OAAO,CAAC,GAAG;IApDvB;;OAEG;IACM,MAAM,EAAE,OAAO,CAAS;IAEjC;;OAEG;IACM,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAAQ;IAE5D;;OAEG;IACM,UAAU,EAAE,MAAM,CAAM;IAEjC;;OAEG;IACM,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAElD;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACM,gBAAgB,EAAE,OAAO,CAAS;IAE3C;;OAEG;IACO,IAAI,+BAAsC;IAEpD;;OAEG;IACO,KAAK,qBAA4B;IAE3C;;;OAGG;IACO,YAAY,uCAA8C;IAG7D,IAAI,EAAE,MAAM,CAAM;IAClB,WAAW,EAAE,MAAM,CAAM;IACzB,QAAQ,EAAE,OAAO,CAAS;IAC1B,WAAW,EAAE,OAAO,CAAS;gBAEhB,GAAG,EAAE,iBAAiB;IAE1C,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzC;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;;OAGG;IACH,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAWhC;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,cAAc,IAAI,IAAI;yCAvGX,wBAAwB;2CAAxB,wBAAwB;CA8GpC"}
@@ -203,7 +203,8 @@ export class QuickSaveDialogComponent {
203
203
  */
204
204
  Close = new EventEmitter();
205
205
  /**
206
- * Emitted when user wants to open the full config panel
206
+ * Emitted when user wants to open the full config panel.
207
+ * Carries the partially-filled form data so the config panel can continue the flow.
207
208
  */
208
209
  OpenAdvanced = new EventEmitter();
209
210
  // Form state
@@ -257,10 +258,14 @@ export class QuickSaveDialogComponent {
257
258
  this.Close.emit();
258
259
  }
259
260
  /**
260
- * Open advanced configuration panel
261
+ * Open advanced configuration panel, carrying partially-filled form data
261
262
  */
262
263
  OnOpenAdvanced() {
263
- this.OpenAdvanced.emit();
264
+ this.OpenAdvanced.emit({
265
+ Name: this.Name.trim(),
266
+ Description: this.Description,
267
+ IsShared: this.IsShared
268
+ });
264
269
  }
265
270
  static ɵfac = function QuickSaveDialogComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || QuickSaveDialogComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
266
271
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: QuickSaveDialogComponent, selectors: [["mj-quick-save-dialog"]], inputs: { IsOpen: "IsOpen", ViewEntity: "ViewEntity", EntityName: "EntityName", Summary: "Summary", IsSaving: "IsSaving", DefaultSaveAsNew: "DefaultSaveAsNew" }, outputs: { Save: "Save", Close: "Close", OpenAdvanced: "OpenAdvanced" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], decls: 40, vars: 12, consts: [[1, "dialog-backdrop"], [1, "dialog-panel"], [1, "dialog-header"], [1, "header-title"], [1, "fa-solid", "fa-bookmark"], [1, "entity-badge"], ["title", "Close", 1, "close-btn", 3, "click"], [1, "fa-solid", "fa-times"], [1, "dialog-content"], [1, "form-group"], ["for", "quickSaveName"], ["id", "quickSaveName", "type", "text", "placeholder", "e.g., Active West Coast Contacts", 1, "form-input", 3, "ngModelChange", "blur", "keydown.enter", "ngModel"], [1, "validation-error"], ["for", "quickSaveDescription"], [1, "optional"], ["id", "quickSaveDescription", "placeholder", "What does this view show?", "rows", "2", 1, "form-input", "form-textarea", 3, "ngModelChange", "ngModel"], [1, "checkbox-label"], ["type", "checkbox", 3, "ngModelChange", "ngModel"], [1, "checkbox-text"], [1, "summary-section"], [1, "advanced-link", 3, "click"], [1, "fa-solid", "fa-sliders"], [1, "dialog-footer"], [1, "footer-actions"], [1, "btn", "btn-primary", 3, "disabled"], [1, "btn", "btn-cancel", 3, "click"], [1, "dialog-backdrop", 3, "click"], [1, "summary-header"], [1, "fa-solid", "fa-list-check"], [1, "summary-items"], [1, "summary-item"], [1, "fa-solid", "fa-columns"], [1, "summary-item", "smart-filter"], [1, "fa-solid", "fa-arrow-up-wide-short"], [1, "fa-solid", "fa-wand-magic-sparkles"], [1, "fa-solid", "fa-filter"], [1, "fa-solid", "fa-chart-simple"], [1, "btn", "btn-primary", 3, "click", "disabled"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-save"], [1, "btn", "btn-secondary", 3, "click", "disabled"], [1, "fa-solid", "fa-plus"]], template: function QuickSaveDialogComponent_Template(rf, ctx) { if (rf & 1) {
@@ -1 +1 @@
1
- {"version":3,"file":"quick-save-dialog.component.js","sourceRoot":"","sources":["../../../src/lib/quick-save-dialog/quick-save-dialog.component.ts","../../../src/lib/quick-save-dialog/quick-save-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, Output, EventEmitter, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core';\nimport { MJUserViewEntityExtended } from '@memberjunction/core-entities';\nimport { ViewConfigSummary, QuickSaveEvent } from '../types';\n\n/**\n * QuickSaveDialogComponent - Focused modal for saving views quickly\n *\n * Replaces the 7+ click \"create new view\" flow with a focused 2-3 click dialog.\n * Shows essential fields (name, description, share) plus a summary preview\n * of what the view configuration includes.\n *\n * Footer buttons determine the action:\n * - No existing view: \"Create View\" button\n * - Existing view: \"Update\" (primary) + \"Save As New\" (secondary) buttons\n *\n * @example\n * ```html\n * <mj-quick-save-dialog\n * [IsOpen]=\"showQuickSave\"\n * [ViewEntity]=\"currentView\"\n * [EntityName]=\"entity.Name\"\n * [Summary]=\"configSummary\"\n * [IsSaving]=\"isSaving\"\n * (Save)=\"onQuickSave($event)\"\n * (Close)=\"showQuickSave = false\"\n * (OpenAdvanced)=\"openConfigPanel()\">\n * </mj-quick-save-dialog>\n * ```\n */\n@Component({\n standalone: false,\n selector: 'mj-quick-save-dialog',\n templateUrl: './quick-save-dialog.component.html',\n styleUrls: ['./quick-save-dialog.component.css']\n})\nexport class QuickSaveDialogComponent implements OnChanges {\n /**\n * Whether the dialog is open\n */\n @Input() IsOpen: boolean = false;\n\n /**\n * The existing view entity (null = creating new)\n */\n @Input() ViewEntity: MJUserViewEntityExtended | null = null;\n\n /**\n * Display name of the entity being viewed\n */\n @Input() EntityName: string = '';\n\n /**\n * Summary of what the current view configuration includes\n */\n @Input() Summary: ViewConfigSummary | null = null;\n\n /**\n * Whether a save is in progress\n */\n @Input() IsSaving: boolean = false;\n\n /**\n * Whether to default to Save As New mode (no longer used for toggle, kept for API compat)\n */\n @Input() DefaultSaveAsNew: boolean = false;\n\n /**\n * Emitted when the user saves\n */\n @Output() Save = new EventEmitter<QuickSaveEvent>();\n\n /**\n * Emitted when the dialog should close\n */\n @Output() Close = new EventEmitter<void>();\n\n /**\n * Emitted when user wants to open the full config panel\n */\n @Output() OpenAdvanced = new EventEmitter<void>();\n\n // Form state\n public Name: string = '';\n public Description: string = '';\n public IsShared: boolean = false;\n public NameTouched: boolean = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['IsOpen'] && this.IsOpen) {\n this.initializeForm();\n }\n }\n\n /**\n * Initialize form from view entity or defaults\n */\n private initializeForm(): void {\n this.NameTouched = false;\n if (this.ViewEntity) {\n this.Name = this.ViewEntity.Name;\n this.Description = this.ViewEntity.Description || '';\n this.IsShared = this.ViewEntity.IsShared;\n } else {\n this.Name = '';\n this.Description = '';\n this.IsShared = false;\n }\n this.cdr.detectChanges();\n }\n\n /**\n * Handle save button click\n * @param saveAsNew - true to create a new view, false to update existing\n */\n OnSave(saveAsNew: boolean): void {\n if (!this.Name.trim() || this.IsSaving) return;\n\n this.Save.emit({\n Name: this.Name.trim(),\n Description: this.Description,\n IsShared: this.IsShared,\n SaveAsNew: saveAsNew\n });\n }\n\n /**\n * Handle close/cancel\n */\n OnClose(): void {\n this.Close.emit();\n }\n\n /**\n * Open advanced configuration panel\n */\n OnOpenAdvanced(): void {\n this.OpenAdvanced.emit();\n }\n}\n","<!-- Dialog Backdrop -->\n@if (IsOpen) {\n <div class=\"dialog-backdrop\" (click)=\"OnClose()\"></div>\n}\n\n<!-- Dialog Panel -->\n<div class=\"dialog-panel\" [class.open]=\"IsOpen\">\n <!-- Header -->\n <div class=\"dialog-header\">\n <div class=\"header-title\">\n <i class=\"fa-solid fa-bookmark\"></i>\n <span>Save View</span>\n </div>\n @if (EntityName) {\n <span class=\"entity-badge\">{{ EntityName }}</span>\n }\n <button class=\"close-btn\" (click)=\"OnClose()\" title=\"Close\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n </div>\n\n <!-- Content -->\n <div class=\"dialog-content\">\n <!-- Name Field -->\n <div class=\"form-group\">\n <label for=\"quickSaveName\">View Name</label>\n <input\n id=\"quickSaveName\"\n type=\"text\"\n class=\"form-input\"\n [class.invalid]=\"NameTouched && !Name.trim()\"\n placeholder=\"e.g., Active West Coast Contacts\"\n [(ngModel)]=\"Name\"\n (blur)=\"NameTouched = true\"\n (keydown.enter)=\"OnSave(false)\"\n />\n @if (NameTouched && !Name.trim()) {\n <span class=\"validation-error\">Name is required</span>\n }\n </div>\n\n <!-- Description Field -->\n <div class=\"form-group\">\n <label for=\"quickSaveDescription\">Description <span class=\"optional\">(optional)</span></label>\n <textarea\n id=\"quickSaveDescription\"\n class=\"form-input form-textarea\"\n placeholder=\"What does this view show?\"\n [(ngModel)]=\"Description\"\n rows=\"2\"\n ></textarea>\n </div>\n\n <!-- Share Toggle -->\n <label class=\"checkbox-label\">\n <input type=\"checkbox\" [(ngModel)]=\"IsShared\" />\n <span class=\"checkbox-text\">\n <strong>Share with others</strong>\n <small>Allow other users to use this view</small>\n </span>\n </label>\n\n <!-- View Summary Preview -->\n @if (Summary) {\n <div class=\"summary-section\">\n <div class=\"summary-header\">\n <i class=\"fa-solid fa-list-check\"></i>\n <span>View includes:</span>\n </div>\n <div class=\"summary-items\">\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-columns\"></i>\n <span>{{ Summary.ColumnCount }} column{{ Summary.ColumnCount !== 1 ? 's' : '' }}</span>\n </div>\n @if (Summary.SortCount > 0) {\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-arrow-up-wide-short\"></i>\n <span>{{ Summary.SortCount }} sort level{{ Summary.SortCount !== 1 ? 's' : '' }}</span>\n </div>\n }\n @if (Summary.SmartFilterActive) {\n <div class=\"summary-item smart-filter\">\n <i class=\"fa-solid fa-wand-magic-sparkles\"></i>\n <span>Smart filter: \"{{ Summary.SmartFilterPrompt }}\"</span>\n </div>\n }\n @if (Summary.FilterCount > 0) {\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-filter\"></i>\n <span>{{ Summary.FilterCount }} filter{{ Summary.FilterCount !== 1 ? 's' : '' }}</span>\n </div>\n }\n @if (Summary.AggregateCount > 0) {\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-chart-simple\"></i>\n <span>{{ Summary.AggregateCount }} aggregate{{ Summary.AggregateCount !== 1 ? 's' : '' }}</span>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- Advanced Link -->\n <button class=\"advanced-link\" (click)=\"OnOpenAdvanced()\">\n <i class=\"fa-solid fa-sliders\"></i>\n <span>Customize columns, filters & sorting...</span>\n </button>\n </div>\n\n <!-- Footer -->\n <div class=\"dialog-footer\">\n <div class=\"footer-actions\">\n @if (ViewEntity) {\n <!-- Existing view: Update + Save As New -->\n <button\n class=\"btn btn-primary\"\n (click)=\"OnSave(false)\"\n [disabled]=\"!Name.trim() || IsSaving\">\n @if (IsSaving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n }\n {{ IsSaving ? 'Saving...' : 'Update' }}\n </button>\n <button\n class=\"btn btn-secondary\"\n (click)=\"OnSave(true)\"\n [disabled]=\"!Name.trim() || IsSaving\">\n <i class=\"fa-solid fa-plus\"></i>\n Save As New\n </button>\n } @else {\n <!-- New view: Create -->\n <button\n class=\"btn btn-primary\"\n (click)=\"OnSave(true)\"\n [disabled]=\"!Name.trim() || IsSaving\">\n @if (IsSaving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n } @else {\n <i class=\"fa-solid fa-plus\"></i>\n }\n {{ IsSaving ? 'Saving...' : 'Create View' }}\n </button>\n }\n </div>\n <button class=\"btn btn-cancel\" (click)=\"OnClose()\">\n Cancel\n </button>\n </div>\n</div>\n"]}
1
+ {"version":3,"file":"quick-save-dialog.component.js","sourceRoot":"","sources":["../../../src/lib/quick-save-dialog/quick-save-dialog.component.ts","../../../src/lib/quick-save-dialog/quick-save-dialog.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, Input, Output, EventEmitter, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core';\nimport { MJUserViewEntityExtended } from '@memberjunction/core-entities';\nimport { ViewConfigSummary, QuickSaveEvent, QuickSaveAdvancedEvent } from '../types';\n\n/**\n * QuickSaveDialogComponent - Focused modal for saving views quickly\n *\n * Replaces the 7+ click \"create new view\" flow with a focused 2-3 click dialog.\n * Shows essential fields (name, description, share) plus a summary preview\n * of what the view configuration includes.\n *\n * Footer buttons determine the action:\n * - No existing view: \"Create View\" button\n * - Existing view: \"Update\" (primary) + \"Save As New\" (secondary) buttons\n *\n * @example\n * ```html\n * <mj-quick-save-dialog\n * [IsOpen]=\"showQuickSave\"\n * [ViewEntity]=\"currentView\"\n * [EntityName]=\"entity.Name\"\n * [Summary]=\"configSummary\"\n * [IsSaving]=\"isSaving\"\n * (Save)=\"onQuickSave($event)\"\n * (Close)=\"showQuickSave = false\"\n * (OpenAdvanced)=\"openConfigPanel()\">\n * </mj-quick-save-dialog>\n * ```\n */\n@Component({\n standalone: false,\n selector: 'mj-quick-save-dialog',\n templateUrl: './quick-save-dialog.component.html',\n styleUrls: ['./quick-save-dialog.component.css']\n})\nexport class QuickSaveDialogComponent implements OnChanges {\n /**\n * Whether the dialog is open\n */\n @Input() IsOpen: boolean = false;\n\n /**\n * The existing view entity (null = creating new)\n */\n @Input() ViewEntity: MJUserViewEntityExtended | null = null;\n\n /**\n * Display name of the entity being viewed\n */\n @Input() EntityName: string = '';\n\n /**\n * Summary of what the current view configuration includes\n */\n @Input() Summary: ViewConfigSummary | null = null;\n\n /**\n * Whether a save is in progress\n */\n @Input() IsSaving: boolean = false;\n\n /**\n * Whether to default to Save As New mode (no longer used for toggle, kept for API compat)\n */\n @Input() DefaultSaveAsNew: boolean = false;\n\n /**\n * Emitted when the user saves\n */\n @Output() Save = new EventEmitter<QuickSaveEvent>();\n\n /**\n * Emitted when the dialog should close\n */\n @Output() Close = new EventEmitter<void>();\n\n /**\n * Emitted when user wants to open the full config panel.\n * Carries the partially-filled form data so the config panel can continue the flow.\n */\n @Output() OpenAdvanced = new EventEmitter<QuickSaveAdvancedEvent>();\n\n // Form state\n public Name: string = '';\n public Description: string = '';\n public IsShared: boolean = false;\n public NameTouched: boolean = false;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['IsOpen'] && this.IsOpen) {\n this.initializeForm();\n }\n }\n\n /**\n * Initialize form from view entity or defaults\n */\n private initializeForm(): void {\n this.NameTouched = false;\n if (this.ViewEntity) {\n this.Name = this.ViewEntity.Name;\n this.Description = this.ViewEntity.Description || '';\n this.IsShared = this.ViewEntity.IsShared;\n } else {\n this.Name = '';\n this.Description = '';\n this.IsShared = false;\n }\n this.cdr.detectChanges();\n }\n\n /**\n * Handle save button click\n * @param saveAsNew - true to create a new view, false to update existing\n */\n OnSave(saveAsNew: boolean): void {\n if (!this.Name.trim() || this.IsSaving) return;\n\n this.Save.emit({\n Name: this.Name.trim(),\n Description: this.Description,\n IsShared: this.IsShared,\n SaveAsNew: saveAsNew\n });\n }\n\n /**\n * Handle close/cancel\n */\n OnClose(): void {\n this.Close.emit();\n }\n\n /**\n * Open advanced configuration panel, carrying partially-filled form data\n */\n OnOpenAdvanced(): void {\n this.OpenAdvanced.emit({\n Name: this.Name.trim(),\n Description: this.Description,\n IsShared: this.IsShared\n });\n }\n}\n","<!-- Dialog Backdrop -->\n@if (IsOpen) {\n <div class=\"dialog-backdrop\" (click)=\"OnClose()\"></div>\n}\n\n<!-- Dialog Panel -->\n<div class=\"dialog-panel\" [class.open]=\"IsOpen\">\n <!-- Header -->\n <div class=\"dialog-header\">\n <div class=\"header-title\">\n <i class=\"fa-solid fa-bookmark\"></i>\n <span>Save View</span>\n </div>\n @if (EntityName) {\n <span class=\"entity-badge\">{{ EntityName }}</span>\n }\n <button class=\"close-btn\" (click)=\"OnClose()\" title=\"Close\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n </div>\n\n <!-- Content -->\n <div class=\"dialog-content\">\n <!-- Name Field -->\n <div class=\"form-group\">\n <label for=\"quickSaveName\">View Name</label>\n <input\n id=\"quickSaveName\"\n type=\"text\"\n class=\"form-input\"\n [class.invalid]=\"NameTouched && !Name.trim()\"\n placeholder=\"e.g., Active West Coast Contacts\"\n [(ngModel)]=\"Name\"\n (blur)=\"NameTouched = true\"\n (keydown.enter)=\"OnSave(false)\"\n />\n @if (NameTouched && !Name.trim()) {\n <span class=\"validation-error\">Name is required</span>\n }\n </div>\n\n <!-- Description Field -->\n <div class=\"form-group\">\n <label for=\"quickSaveDescription\">Description <span class=\"optional\">(optional)</span></label>\n <textarea\n id=\"quickSaveDescription\"\n class=\"form-input form-textarea\"\n placeholder=\"What does this view show?\"\n [(ngModel)]=\"Description\"\n rows=\"2\"\n ></textarea>\n </div>\n\n <!-- Share Toggle -->\n <label class=\"checkbox-label\">\n <input type=\"checkbox\" [(ngModel)]=\"IsShared\" />\n <span class=\"checkbox-text\">\n <strong>Share with others</strong>\n <small>Allow other users to use this view</small>\n </span>\n </label>\n\n <!-- View Summary Preview -->\n @if (Summary) {\n <div class=\"summary-section\">\n <div class=\"summary-header\">\n <i class=\"fa-solid fa-list-check\"></i>\n <span>View includes:</span>\n </div>\n <div class=\"summary-items\">\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-columns\"></i>\n <span>{{ Summary.ColumnCount }} column{{ Summary.ColumnCount !== 1 ? 's' : '' }}</span>\n </div>\n @if (Summary.SortCount > 0) {\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-arrow-up-wide-short\"></i>\n <span>{{ Summary.SortCount }} sort level{{ Summary.SortCount !== 1 ? 's' : '' }}</span>\n </div>\n }\n @if (Summary.SmartFilterActive) {\n <div class=\"summary-item smart-filter\">\n <i class=\"fa-solid fa-wand-magic-sparkles\"></i>\n <span>Smart filter: \"{{ Summary.SmartFilterPrompt }}\"</span>\n </div>\n }\n @if (Summary.FilterCount > 0) {\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-filter\"></i>\n <span>{{ Summary.FilterCount }} filter{{ Summary.FilterCount !== 1 ? 's' : '' }}</span>\n </div>\n }\n @if (Summary.AggregateCount > 0) {\n <div class=\"summary-item\">\n <i class=\"fa-solid fa-chart-simple\"></i>\n <span>{{ Summary.AggregateCount }} aggregate{{ Summary.AggregateCount !== 1 ? 's' : '' }}</span>\n </div>\n }\n </div>\n </div>\n }\n\n <!-- Advanced Link -->\n <button class=\"advanced-link\" (click)=\"OnOpenAdvanced()\">\n <i class=\"fa-solid fa-sliders\"></i>\n <span>Customize columns, filters & sorting...</span>\n </button>\n </div>\n\n <!-- Footer -->\n <div class=\"dialog-footer\">\n <div class=\"footer-actions\">\n @if (ViewEntity) {\n <!-- Existing view: Update + Save As New -->\n <button\n class=\"btn btn-primary\"\n (click)=\"OnSave(false)\"\n [disabled]=\"!Name.trim() || IsSaving\">\n @if (IsSaving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n }\n {{ IsSaving ? 'Saving...' : 'Update' }}\n </button>\n <button\n class=\"btn btn-secondary\"\n (click)=\"OnSave(true)\"\n [disabled]=\"!Name.trim() || IsSaving\">\n <i class=\"fa-solid fa-plus\"></i>\n Save As New\n </button>\n } @else {\n <!-- New view: Create -->\n <button\n class=\"btn btn-primary\"\n (click)=\"OnSave(true)\"\n [disabled]=\"!Name.trim() || IsSaving\">\n @if (IsSaving) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n } @else {\n <i class=\"fa-solid fa-plus\"></i>\n }\n {{ IsSaving ? 'Saving...' : 'Create View' }}\n </button>\n }\n </div>\n <button class=\"btn btn-cancel\" (click)=\"OnClose()\">\n Cancel\n </button>\n </div>\n</div>\n"]}
@@ -375,6 +375,18 @@ export interface QuickSaveEvent {
375
375
  /** Whether to save as new (true) or update existing (false) */
376
376
  SaveAsNew: boolean;
377
377
  }
378
+ /**
379
+ * Data emitted by QuickSaveDialog when user clicks "Customize columns, filters & sorting..."
380
+ * Carries the partially-filled form data so the config panel can continue the new-view creation.
381
+ */
382
+ export interface QuickSaveAdvancedEvent {
383
+ /** View name entered so far */
384
+ Name: string;
385
+ /** View description entered so far */
386
+ Description: string;
387
+ /** Whether the view should be shared */
388
+ IsShared: boolean;
389
+ }
378
390
  /**
379
391
  * Result of a view save operation (for notification display)
380
392
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AA2bA,MAAM,CAAC,MAAM,qBAAqB,GAAiC;IACjE,UAAU,EAAE,IAAI;IAChB,kBAAkB,EAAE,IAAI;IACxB,iBAAiB,EAAE,WAAW;IAC9B,eAAe,EAAE,MAAM;IACvB,iBAAiB,EAAE,KAAK;IACxB,QAAQ,EAAE,GAAG;IACb,eAAe,EAAE,IAAI;IACrB,iBAAiB,EAAE,mBAAmB;IACtC,gBAAgB,EAAE,GAAG;IACrB,WAAW,EAAE,EAAE;IACf,YAAY,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,IAAI;QACtB,aAAa,EAAE,EAAE;QACjB,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,IAAI;KACjB;IACD,MAAM,EAAE,MAAM;IACd,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,EAAE;IACpB,oBAAoB,EAAE,KAAK;CAC5B,CAAC","sourcesContent":["import { EntityInfo, CompositeKey } from '@memberjunction/core';\nimport {\n ViewColumnPinned as CoreViewColumnPinned,\n ViewGridSortSetting as CoreViewGridSortSetting,\n ViewGridColumnSetting as CoreViewGridColumnSetting,\n ViewGridState as CoreViewGridState,\n} from '@memberjunction/core-entities';\n\n// Re-export core types for direct usage\nexport type ViewColumnPinned = CoreViewColumnPinned;\nexport type ViewGridSortSetting = CoreViewGridSortSetting;\nexport type ViewGridColumnSetting = CoreViewGridColumnSetting;\nexport type ViewGridState = CoreViewGridState;\n\n/**\n * View modes supported by the EntityViewer component\n */\nexport type EntityViewMode = 'grid' | 'cards' | 'timeline';\n\n/**\n * Behavior when a record is selected\n */\nexport type RecordSelectionBehavior =\n | 'emit-only' // Only emit the recordSelected event\n | 'show-detail' // Show the detail panel (if available)\n | 'emit-and-detail'; // Both emit event and show detail panel\n\n/**\n * Field display type for smart rendering in cards\n */\nexport type CardFieldType = 'number' | 'boolean' | 'text' | 'date';\n\n/**\n * Color categories for status pills based on semantic meaning\n */\nexport type PillColorType = 'success' | 'warning' | 'danger' | 'info' | 'neutral';\n\n/**\n * Metadata for a field to display in a card\n */\nexport interface CardDisplayField {\n /** Field name from the entity */\n name: string;\n /** Display type for rendering */\n type: CardFieldType;\n /** Human-readable label */\n label: string;\n}\n\n/**\n * Auto-generated card template based on entity metadata\n */\nexport interface CardTemplate {\n /** Primary title field name */\n titleField: string;\n /** Secondary subtitle field name */\n subtitleField: string | null;\n /** Description/notes field name */\n descriptionField: string | null;\n /** Display fields with type information for smart rendering */\n displayFields: CardDisplayField[];\n /**\n * Array of thumbnail field names in priority order\n * Per-record fallback: if the first field is empty, try the next, etc.\n */\n thumbnailFields: string[];\n /** Badge/priority field name */\n badgeField: string | null;\n}\n\n/**\n * Column definition for the grid view\n */\nexport interface GridColumnDef {\n /** Field name from the entity */\n field: string;\n /** Column header text */\n headerName: string;\n /** Column width in pixels */\n width?: number;\n /** Minimum column width */\n minWidth?: number;\n /** Maximum column width */\n maxWidth?: number;\n /** Whether column is sortable */\n sortable?: boolean;\n /** Whether column is filterable */\n filter?: boolean;\n /** Whether column is resizable */\n resizable?: boolean;\n /** Whether to hide this column */\n hide?: boolean;\n /** Custom cell renderer type */\n cellRenderer?: string;\n /** Value formatter function name */\n valueFormatter?: string;\n}\n\n/**\n * Event emitted when a record is selected (clicked)\n */\nexport interface RecordSelectedEvent {\n /** The selected record (plain object from ResultType: 'simple') */\n record: Record<string, unknown>;\n /** The entity metadata */\n entity: EntityInfo;\n /** The composite key of the record */\n compositeKey: CompositeKey;\n}\n\n/**\n * Event emitted when a record should be opened (double-click or open button)\n */\nexport interface RecordOpenedEvent {\n /** The record to open (may be undefined for FK navigation where record isn't loaded) */\n record?: Record<string, unknown>;\n /** The entity metadata */\n entity: EntityInfo;\n /** The composite key of the record */\n compositeKey: CompositeKey;\n}\n\n/**\n * Event emitted when data is loaded\n */\nexport interface DataLoadedEvent {\n /** Total number of records available */\n totalRowCount: number;\n /** Number of records currently loaded */\n loadedRowCount: number;\n /** Time taken to load in milliseconds */\n loadTime: number;\n /** The loaded records - allows parent to access records for state restoration */\n records: Record<string, unknown>[];\n}\n\n/**\n * Event emitted when filtered count changes\n */\nexport interface FilteredCountChangedEvent {\n /** Number of records after filtering */\n filteredCount: number;\n /** Total number of records before filtering */\n totalCount: number;\n}\n\n/**\n * Sort direction for server-side sorting\n */\nexport type SortDirection = 'asc' | 'desc' | null;\n\n/**\n * Sort state for a column\n */\nexport interface SortState {\n /** Field name to sort by */\n field: string;\n /** Sort direction */\n direction: SortDirection;\n}\n\n/**\n * Event emitted when sort changes in the grid\n */\nexport interface SortChangedEvent {\n /** The new sort state (null if no sorting) */\n sort: SortState | null;\n}\n\n/**\n * Pagination state for server-side paging\n */\nexport interface PaginationState {\n /** Current page number (0-based) */\n currentPage: number;\n /** Number of records per page */\n pageSize: number;\n /** Total number of records available (from server) */\n totalRecords: number;\n /** Whether there are more records to load */\n hasMore: boolean;\n /** Whether data is currently being loaded */\n isLoading: boolean;\n}\n\n/**\n * Event emitted when pagination changes\n */\nexport interface PaginationChangedEvent {\n /** The new pagination state */\n pagination: PaginationState;\n}\n\n/**\n * Event emitted when requesting to load more data\n */\nexport interface LoadMoreEvent {\n /** Current page being requested (0-based) */\n page: number;\n /** Page size */\n pageSize: number;\n}\n\n/**\n * Event emitted when grid state changes (column resize, reorder, etc.)\n */\nexport interface GridStateChangedEvent {\n /** The updated grid state */\n gridState: ViewGridState;\n /** What changed: 'columns', 'sort', 'filter' */\n changeType: 'columns' | 'sort' | 'filter';\n}\n\n/**\n * Configuration options for the EntityViewer component\n */\nexport interface EntityViewerConfig {\n /**\n * Whether to show the filter input box\n * @default true\n */\n showFilter?: boolean;\n\n /**\n * Whether to show the view mode toggle (grid/cards)\n * @default true\n */\n showViewModeToggle?: boolean;\n\n /**\n * Behavior when a record is selected\n * @default 'emit-only'\n */\n selectionBehavior?: RecordSelectionBehavior;\n\n /**\n * Initial view mode\n * @default 'grid'\n */\n defaultViewMode?: EntityViewMode;\n\n /**\n * Whether to enable multi-select\n * @default false\n */\n enableMultiSelect?: boolean;\n\n /**\n * Maximum number of records to load per page\n * @default 100\n */\n pageSize?: number;\n\n /**\n * Whether to show record count in header\n * @default true\n */\n showRecordCount?: boolean;\n\n /**\n * Placeholder text for the filter input\n * @default 'Filter records...'\n */\n filterPlaceholder?: string;\n\n /**\n * Debounce time for filter input in milliseconds\n * @default 250\n */\n filterDebounceMs?: number;\n\n /**\n * Custom grid column definitions (optional - auto-generated if not provided)\n */\n gridColumns?: GridColumnDef[];\n\n /**\n * Custom card template (optional - auto-generated if not provided)\n */\n cardTemplate?: CardTemplate;\n\n /**\n * Height of the component (CSS value)\n * @default '100%'\n */\n height?: string;\n\n /**\n * Whether to use server-side filtering via UserSearchString\n * When true, filter text is sent to the server for SQL-based filtering\n * When false, filtering is done client-side on loaded records\n * @default true\n */\n serverSideFiltering?: boolean;\n\n /**\n * Whether to use server-side sorting via OrderBy\n * When true, sort changes trigger a new server request\n * When false, sorting is done client-side by AG Grid\n * @default true\n */\n serverSideSorting?: boolean;\n\n /**\n * Whether to show pagination controls\n * @default true\n */\n showPagination?: boolean;\n\n /**\n * Default sort field when loading data\n */\n defaultSortField?: string;\n\n /**\n * Default sort direction when loading data\n * @default 'asc'\n */\n defaultSortDirection?: SortDirection;\n}\n\n/**\n * Timeline segment grouping options\n */\nexport type TimelineSegmentGrouping = 'none' | 'day' | 'week' | 'month' | 'quarter' | 'year';\n\n/**\n * Timeline orientation options\n */\nexport type TimelineOrientation = 'vertical' | 'horizontal';\n\n/**\n * Timeline-specific configuration state\n * Persisted in UserView.DisplayState JSON\n */\nexport interface TimelineState {\n /** The date field name to use for timeline ordering */\n dateFieldName: string;\n /** Time segment grouping */\n segmentGrouping?: TimelineSegmentGrouping;\n /** Sort order for timeline events */\n sortOrder?: 'asc' | 'desc';\n /** Whether segments are collapsible */\n segmentsCollapsible?: boolean;\n /** Whether segments start expanded */\n segmentsDefaultExpanded?: boolean;\n /** Timeline orientation (vertical or horizontal) */\n orientation?: TimelineOrientation;\n}\n\n/**\n * Card-specific configuration state\n * Persisted in UserView.DisplayState JSON\n */\nexport interface CardState {\n /** Custom card size (small, medium, large) */\n cardSize?: 'small' | 'medium' | 'large';\n}\n\n/**\n * Grid-specific configuration state\n * Persisted in UserView.DisplayState JSON\n * Note: Most grid state is already in GridState column, this is for additional settings\n */\nexport interface GridDisplayState {\n /** Row height preference */\n rowHeight?: 'compact' | 'normal' | 'comfortable';\n /**\n * Enable text wrapping in grid cells\n * When true, long text will wrap to multiple lines and rows will auto-size\n * @default false\n */\n wrapText?: boolean;\n}\n\n/**\n * View display state - persisted in UserView.DisplayState\n * Contains the default view mode and mode-specific configuration\n */\nexport interface ViewDisplayState {\n /** The default view mode to show when loading this view */\n defaultMode: EntityViewMode;\n /** Which view modes are enabled/visible for this view */\n enabledModes?: {\n grid?: boolean;\n cards?: boolean;\n timeline?: boolean;\n };\n /** Timeline-specific configuration */\n timeline?: TimelineState;\n /** Card-specific configuration */\n cards?: CardState;\n /** Grid-specific configuration */\n grid?: GridDisplayState;\n}\n\n/**\n * Default configuration values\n */\n/**\n * Summary of what a view configuration includes, for preview in Quick Save dialog\n */\nexport interface ViewConfigSummary {\n /** Number of visible columns */\n ColumnCount: number;\n /** Number of active filters */\n FilterCount: number;\n /** Number of sort levels */\n SortCount: number;\n /** Whether smart filter is active */\n SmartFilterActive: boolean;\n /** Smart filter prompt text (if active) */\n SmartFilterPrompt: string;\n /** Number of enabled aggregates */\n AggregateCount: number;\n}\n\n/**\n * Event emitted by QuickSaveDialog when user saves\n */\nexport interface QuickSaveEvent {\n /** View name */\n Name: string;\n /** View description (optional) */\n Description: string;\n /** Whether the view is shared */\n IsShared: boolean;\n /** Whether to save as new (true) or update existing (false) */\n SaveAsNew: boolean;\n}\n\n/**\n * Result of a view save operation (for notification display)\n */\nexport interface ViewSaveResult {\n /** Whether the save succeeded */\n Success: boolean;\n /** Error message (on failure) */\n ErrorMessage?: string;\n /** Whether this was a new view or update */\n IsNew: boolean;\n}\n\nexport const DEFAULT_VIEWER_CONFIG: Required<EntityViewerConfig> = {\n showFilter: true,\n showViewModeToggle: true,\n selectionBehavior: 'emit-only',\n defaultViewMode: 'grid',\n enableMultiSelect: false,\n pageSize: 100,\n showRecordCount: true,\n filterPlaceholder: 'Filter records...',\n filterDebounceMs: 250,\n gridColumns: [],\n cardTemplate: {\n titleField: '',\n subtitleField: null,\n descriptionField: null,\n displayFields: [],\n thumbnailFields: [],\n badgeField: null\n },\n height: '100%',\n serverSideFiltering: true,\n serverSideSorting: true,\n showPagination: true,\n defaultSortField: '',\n defaultSortDirection: 'asc'\n};\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAwcA,MAAM,CAAC,MAAM,qBAAqB,GAAiC;IACjE,UAAU,EAAE,IAAI;IAChB,kBAAkB,EAAE,IAAI;IACxB,iBAAiB,EAAE,WAAW;IAC9B,eAAe,EAAE,MAAM;IACvB,iBAAiB,EAAE,KAAK;IACxB,QAAQ,EAAE,GAAG;IACb,eAAe,EAAE,IAAI;IACrB,iBAAiB,EAAE,mBAAmB;IACtC,gBAAgB,EAAE,GAAG;IACrB,WAAW,EAAE,EAAE;IACf,YAAY,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,IAAI;QACnB,gBAAgB,EAAE,IAAI;QACtB,aAAa,EAAE,EAAE;QACjB,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,IAAI;KACjB;IACD,MAAM,EAAE,MAAM;IACd,mBAAmB,EAAE,IAAI;IACzB,iBAAiB,EAAE,IAAI;IACvB,cAAc,EAAE,IAAI;IACpB,gBAAgB,EAAE,EAAE;IACpB,oBAAoB,EAAE,KAAK;CAC5B,CAAC","sourcesContent":["import { EntityInfo, CompositeKey } from '@memberjunction/core';\nimport {\n ViewColumnPinned as CoreViewColumnPinned,\n ViewGridSortSetting as CoreViewGridSortSetting,\n ViewGridColumnSetting as CoreViewGridColumnSetting,\n ViewGridState as CoreViewGridState,\n} from '@memberjunction/core-entities';\n\n// Re-export core types for direct usage\nexport type ViewColumnPinned = CoreViewColumnPinned;\nexport type ViewGridSortSetting = CoreViewGridSortSetting;\nexport type ViewGridColumnSetting = CoreViewGridColumnSetting;\nexport type ViewGridState = CoreViewGridState;\n\n/**\n * View modes supported by the EntityViewer component\n */\nexport type EntityViewMode = 'grid' | 'cards' | 'timeline';\n\n/**\n * Behavior when a record is selected\n */\nexport type RecordSelectionBehavior =\n | 'emit-only' // Only emit the recordSelected event\n | 'show-detail' // Show the detail panel (if available)\n | 'emit-and-detail'; // Both emit event and show detail panel\n\n/**\n * Field display type for smart rendering in cards\n */\nexport type CardFieldType = 'number' | 'boolean' | 'text' | 'date';\n\n/**\n * Color categories for status pills based on semantic meaning\n */\nexport type PillColorType = 'success' | 'warning' | 'danger' | 'info' | 'neutral';\n\n/**\n * Metadata for a field to display in a card\n */\nexport interface CardDisplayField {\n /** Field name from the entity */\n name: string;\n /** Display type for rendering */\n type: CardFieldType;\n /** Human-readable label */\n label: string;\n}\n\n/**\n * Auto-generated card template based on entity metadata\n */\nexport interface CardTemplate {\n /** Primary title field name */\n titleField: string;\n /** Secondary subtitle field name */\n subtitleField: string | null;\n /** Description/notes field name */\n descriptionField: string | null;\n /** Display fields with type information for smart rendering */\n displayFields: CardDisplayField[];\n /**\n * Array of thumbnail field names in priority order\n * Per-record fallback: if the first field is empty, try the next, etc.\n */\n thumbnailFields: string[];\n /** Badge/priority field name */\n badgeField: string | null;\n}\n\n/**\n * Column definition for the grid view\n */\nexport interface GridColumnDef {\n /** Field name from the entity */\n field: string;\n /** Column header text */\n headerName: string;\n /** Column width in pixels */\n width?: number;\n /** Minimum column width */\n minWidth?: number;\n /** Maximum column width */\n maxWidth?: number;\n /** Whether column is sortable */\n sortable?: boolean;\n /** Whether column is filterable */\n filter?: boolean;\n /** Whether column is resizable */\n resizable?: boolean;\n /** Whether to hide this column */\n hide?: boolean;\n /** Custom cell renderer type */\n cellRenderer?: string;\n /** Value formatter function name */\n valueFormatter?: string;\n}\n\n/**\n * Event emitted when a record is selected (clicked)\n */\nexport interface RecordSelectedEvent {\n /** The selected record (plain object from ResultType: 'simple') */\n record: Record<string, unknown>;\n /** The entity metadata */\n entity: EntityInfo;\n /** The composite key of the record */\n compositeKey: CompositeKey;\n}\n\n/**\n * Event emitted when a record should be opened (double-click or open button)\n */\nexport interface RecordOpenedEvent {\n /** The record to open (may be undefined for FK navigation where record isn't loaded) */\n record?: Record<string, unknown>;\n /** The entity metadata */\n entity: EntityInfo;\n /** The composite key of the record */\n compositeKey: CompositeKey;\n}\n\n/**\n * Event emitted when data is loaded\n */\nexport interface DataLoadedEvent {\n /** Total number of records available */\n totalRowCount: number;\n /** Number of records currently loaded */\n loadedRowCount: number;\n /** Time taken to load in milliseconds */\n loadTime: number;\n /** The loaded records - allows parent to access records for state restoration */\n records: Record<string, unknown>[];\n}\n\n/**\n * Event emitted when filtered count changes\n */\nexport interface FilteredCountChangedEvent {\n /** Number of records after filtering */\n filteredCount: number;\n /** Total number of records before filtering */\n totalCount: number;\n}\n\n/**\n * Sort direction for server-side sorting\n */\nexport type SortDirection = 'asc' | 'desc' | null;\n\n/**\n * Sort state for a column\n */\nexport interface SortState {\n /** Field name to sort by */\n field: string;\n /** Sort direction */\n direction: SortDirection;\n}\n\n/**\n * Event emitted when sort changes in the grid\n */\nexport interface SortChangedEvent {\n /** The new sort state (null if no sorting) */\n sort: SortState | null;\n}\n\n/**\n * Pagination state for server-side paging\n */\nexport interface PaginationState {\n /** Current page number (0-based) */\n currentPage: number;\n /** Number of records per page */\n pageSize: number;\n /** Total number of records available (from server) */\n totalRecords: number;\n /** Whether there are more records to load */\n hasMore: boolean;\n /** Whether data is currently being loaded */\n isLoading: boolean;\n}\n\n/**\n * Event emitted when pagination changes\n */\nexport interface PaginationChangedEvent {\n /** The new pagination state */\n pagination: PaginationState;\n}\n\n/**\n * Event emitted when requesting to load more data\n */\nexport interface LoadMoreEvent {\n /** Current page being requested (0-based) */\n page: number;\n /** Page size */\n pageSize: number;\n}\n\n/**\n * Event emitted when grid state changes (column resize, reorder, etc.)\n */\nexport interface GridStateChangedEvent {\n /** The updated grid state */\n gridState: ViewGridState;\n /** What changed: 'columns', 'sort', 'filter' */\n changeType: 'columns' | 'sort' | 'filter';\n}\n\n/**\n * Configuration options for the EntityViewer component\n */\nexport interface EntityViewerConfig {\n /**\n * Whether to show the filter input box\n * @default true\n */\n showFilter?: boolean;\n\n /**\n * Whether to show the view mode toggle (grid/cards)\n * @default true\n */\n showViewModeToggle?: boolean;\n\n /**\n * Behavior when a record is selected\n * @default 'emit-only'\n */\n selectionBehavior?: RecordSelectionBehavior;\n\n /**\n * Initial view mode\n * @default 'grid'\n */\n defaultViewMode?: EntityViewMode;\n\n /**\n * Whether to enable multi-select\n * @default false\n */\n enableMultiSelect?: boolean;\n\n /**\n * Maximum number of records to load per page\n * @default 100\n */\n pageSize?: number;\n\n /**\n * Whether to show record count in header\n * @default true\n */\n showRecordCount?: boolean;\n\n /**\n * Placeholder text for the filter input\n * @default 'Filter records...'\n */\n filterPlaceholder?: string;\n\n /**\n * Debounce time for filter input in milliseconds\n * @default 250\n */\n filterDebounceMs?: number;\n\n /**\n * Custom grid column definitions (optional - auto-generated if not provided)\n */\n gridColumns?: GridColumnDef[];\n\n /**\n * Custom card template (optional - auto-generated if not provided)\n */\n cardTemplate?: CardTemplate;\n\n /**\n * Height of the component (CSS value)\n * @default '100%'\n */\n height?: string;\n\n /**\n * Whether to use server-side filtering via UserSearchString\n * When true, filter text is sent to the server for SQL-based filtering\n * When false, filtering is done client-side on loaded records\n * @default true\n */\n serverSideFiltering?: boolean;\n\n /**\n * Whether to use server-side sorting via OrderBy\n * When true, sort changes trigger a new server request\n * When false, sorting is done client-side by AG Grid\n * @default true\n */\n serverSideSorting?: boolean;\n\n /**\n * Whether to show pagination controls\n * @default true\n */\n showPagination?: boolean;\n\n /**\n * Default sort field when loading data\n */\n defaultSortField?: string;\n\n /**\n * Default sort direction when loading data\n * @default 'asc'\n */\n defaultSortDirection?: SortDirection;\n}\n\n/**\n * Timeline segment grouping options\n */\nexport type TimelineSegmentGrouping = 'none' | 'day' | 'week' | 'month' | 'quarter' | 'year';\n\n/**\n * Timeline orientation options\n */\nexport type TimelineOrientation = 'vertical' | 'horizontal';\n\n/**\n * Timeline-specific configuration state\n * Persisted in UserView.DisplayState JSON\n */\nexport interface TimelineState {\n /** The date field name to use for timeline ordering */\n dateFieldName: string;\n /** Time segment grouping */\n segmentGrouping?: TimelineSegmentGrouping;\n /** Sort order for timeline events */\n sortOrder?: 'asc' | 'desc';\n /** Whether segments are collapsible */\n segmentsCollapsible?: boolean;\n /** Whether segments start expanded */\n segmentsDefaultExpanded?: boolean;\n /** Timeline orientation (vertical or horizontal) */\n orientation?: TimelineOrientation;\n}\n\n/**\n * Card-specific configuration state\n * Persisted in UserView.DisplayState JSON\n */\nexport interface CardState {\n /** Custom card size (small, medium, large) */\n cardSize?: 'small' | 'medium' | 'large';\n}\n\n/**\n * Grid-specific configuration state\n * Persisted in UserView.DisplayState JSON\n * Note: Most grid state is already in GridState column, this is for additional settings\n */\nexport interface GridDisplayState {\n /** Row height preference */\n rowHeight?: 'compact' | 'normal' | 'comfortable';\n /**\n * Enable text wrapping in grid cells\n * When true, long text will wrap to multiple lines and rows will auto-size\n * @default false\n */\n wrapText?: boolean;\n}\n\n/**\n * View display state - persisted in UserView.DisplayState\n * Contains the default view mode and mode-specific configuration\n */\nexport interface ViewDisplayState {\n /** The default view mode to show when loading this view */\n defaultMode: EntityViewMode;\n /** Which view modes are enabled/visible for this view */\n enabledModes?: {\n grid?: boolean;\n cards?: boolean;\n timeline?: boolean;\n };\n /** Timeline-specific configuration */\n timeline?: TimelineState;\n /** Card-specific configuration */\n cards?: CardState;\n /** Grid-specific configuration */\n grid?: GridDisplayState;\n}\n\n/**\n * Default configuration values\n */\n/**\n * Summary of what a view configuration includes, for preview in Quick Save dialog\n */\nexport interface ViewConfigSummary {\n /** Number of visible columns */\n ColumnCount: number;\n /** Number of active filters */\n FilterCount: number;\n /** Number of sort levels */\n SortCount: number;\n /** Whether smart filter is active */\n SmartFilterActive: boolean;\n /** Smart filter prompt text (if active) */\n SmartFilterPrompt: string;\n /** Number of enabled aggregates */\n AggregateCount: number;\n}\n\n/**\n * Event emitted by QuickSaveDialog when user saves\n */\nexport interface QuickSaveEvent {\n /** View name */\n Name: string;\n /** View description (optional) */\n Description: string;\n /** Whether the view is shared */\n IsShared: boolean;\n /** Whether to save as new (true) or update existing (false) */\n SaveAsNew: boolean;\n}\n\n/**\n * Data emitted by QuickSaveDialog when user clicks \"Customize columns, filters & sorting...\"\n * Carries the partially-filled form data so the config panel can continue the new-view creation.\n */\nexport interface QuickSaveAdvancedEvent {\n /** View name entered so far */\n Name: string;\n /** View description entered so far */\n Description: string;\n /** Whether the view should be shared */\n IsShared: boolean;\n}\n\n/**\n * Result of a view save operation (for notification display)\n */\nexport interface ViewSaveResult {\n /** Whether the save succeeded */\n Success: boolean;\n /** Error message (on failure) */\n ErrorMessage?: string;\n /** Whether this was a new view or update */\n IsNew: boolean;\n}\n\nexport const DEFAULT_VIEWER_CONFIG: Required<EntityViewerConfig> = {\n showFilter: true,\n showViewModeToggle: true,\n selectionBehavior: 'emit-only',\n defaultViewMode: 'grid',\n enableMultiSelect: false,\n pageSize: 100,\n showRecordCount: true,\n filterPlaceholder: 'Filter records...',\n filterDebounceMs: 250,\n gridColumns: [],\n cardTemplate: {\n titleField: '',\n subtitleField: null,\n descriptionField: null,\n displayFields: [],\n thumbnailFields: [],\n badgeField: null\n },\n height: '100%',\n serverSideFiltering: true,\n serverSideSorting: true,\n showPagination: true,\n defaultSortField: '',\n defaultSortDirection: 'asc'\n};\n"]}
@@ -113,9 +113,22 @@ export declare class ViewConfigPanelComponent implements OnInit, OnChanges {
113
113
  */
114
114
  externalFilterState: CompositeFilterDescriptor | null;
115
115
  /**
116
- * When true, auto-focus on Settings tab when panel opens (BUG-011: forward saveAsNew intent)
116
+ * When true, the panel is in "create new view" mode shows the Settings tab
117
+ * and a "Create View" button even without a viewEntity.
117
118
  */
118
119
  DefaultSaveAsNew: boolean;
120
+ /**
121
+ * Pre-populated view name from the quick save dialog (used when DefaultSaveAsNew is true)
122
+ */
123
+ PendingNewViewName: string;
124
+ /**
125
+ * Pre-populated description from the quick save dialog (used when DefaultSaveAsNew is true)
126
+ */
127
+ PendingNewViewDescription: string;
128
+ /**
129
+ * Pre-populated sharing preference from the quick save dialog (used when DefaultSaveAsNew is true)
130
+ */
131
+ PendingNewViewIsShared: boolean;
119
132
  /**
120
133
  * Emitted when user wants to duplicate the current view (F-005)
121
134
  */
@@ -570,6 +583,6 @@ export declare class ViewConfigPanelComponent implements OnInit, OnChanges {
570
583
  */
571
584
  private buildAggregatesConfig;
572
585
  static ɵfac: i0.ɵɵFactoryDeclaration<ViewConfigPanelComponent, never>;
573
- static ɵcmp: i0.ɵɵComponentDeclaration<ViewConfigPanelComponent, "mj-view-config-panel", never, { "entity": { "alias": "entity"; "required": false; }; "viewEntity": { "alias": "viewEntity"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "currentGridState": { "alias": "currentGridState"; "required": false; }; "sampleData": { "alias": "sampleData"; "required": false; }; "externalFilterState": { "alias": "externalFilterState"; "required": false; }; "DefaultSaveAsNew": { "alias": "DefaultSaveAsNew"; "required": false; }; "isSaving": { "alias": "isSaving"; "required": false; }; }, { "close": "close"; "save": "save"; "saveDefaults": "saveDefaults"; "delete": "delete"; "openFilterDialogRequest": "openFilterDialogRequest"; "duplicate": "duplicate"; }, never, never, false, never>;
586
+ static ɵcmp: i0.ɵɵComponentDeclaration<ViewConfigPanelComponent, "mj-view-config-panel", never, { "entity": { "alias": "entity"; "required": false; }; "viewEntity": { "alias": "viewEntity"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "currentGridState": { "alias": "currentGridState"; "required": false; }; "sampleData": { "alias": "sampleData"; "required": false; }; "externalFilterState": { "alias": "externalFilterState"; "required": false; }; "DefaultSaveAsNew": { "alias": "DefaultSaveAsNew"; "required": false; }; "PendingNewViewName": { "alias": "PendingNewViewName"; "required": false; }; "PendingNewViewDescription": { "alias": "PendingNewViewDescription"; "required": false; }; "PendingNewViewIsShared": { "alias": "PendingNewViewIsShared"; "required": false; }; "isSaving": { "alias": "isSaving"; "required": false; }; }, { "close": "close"; "save": "save"; "saveDefaults": "saveDefaults"; "delete": "delete"; "openFilterDialogRequest": "openFilterDialogRequest"; "duplicate": "duplicate"; }, never, never, false, never>;
574
587
  }
575
588
  //# sourceMappingURL=view-config-panel.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view-config-panel.component.d.ts","sourceRoot":"","sources":["../../../src/lib/view-config-panel/view-config-panel.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAgB,MAAM,eAAe,CAAC;AAC1I,OAAO,EAAE,UAAU,EAAE,eAAe,EAAY,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EACL,wBAAwB,EAExB,aAAa,EAEb,YAAY,EACZ,eAAe,EAEf,wBAAwB,EACxB,iBAAiB,EAGlB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,yBAAyB,EACzB,eAAe,EAGhB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;;AAE7C;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,eAAe,CAAC;IACvB,sCAAsC;IACtC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,+DAA+D;IAC/D,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,+DAA+D;IAC/D,aAAa,EAAE,KAAK,GAAG,MAAM,CAAC;IAC9B,4DAA4D;IAC5D,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,WAAW,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAC9C,+BAA+B;IAC/B,gBAAgB,EAAE,wBAAwB,GAAG,IAAI,CAAC;CACnD;AAED;;;;;;;;;;GAUG;AACH,qBAMa,wBAAyB,YAAW,MAAM,EAAE,SAAS;IA4JpD,OAAO,CAAC,GAAG;IA3JvB;;OAEG;IACM,MAAM,EAAE,UAAU,GAAG,IAAI,CAAQ;IAE1C;;OAEG;IACM,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAAQ;IAE5D;;OAEG;IACM,MAAM,EAAE,OAAO,CAAS;IAEjC;;;OAGG;IACM,gBAAgB,EAAE,aAAa,GAAG,IAAI,CAAQ;IAEvD;;OAEG;IACM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAM;IAEpD;;OAEG;IACO,KAAK,qBAA4B;IAE3C;;OAEG;IACO,IAAI,8BAAqC;IAEnD;;;OAGG;IACO,YAAY,8BAAqC;IAE3D;;OAEG;IACO,MAAM,qBAA4B;IAE5C;;OAEG;IACO,uBAAuB;qBAClB,yBAAyB;sBACxB,eAAe,EAAE;OAC5B;IAEL;;OAEG;IACM,mBAAmB,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IAEtE;;OAEG;IACM,gBAAgB,EAAE,OAAO,CAAS;IAE3C;;OAEG;IACO,SAAS,qBAA4B;IAGxC,QAAQ,EAAE,MAAM,CAAM;IACtB,eAAe,EAAE,MAAM,CAAM;IAC7B,QAAQ,EAAE,OAAO,CAAS;IAC1B,OAAO,EAAE,YAAY,EAAE,CAAM;IACpC,wCAAwC;IACjC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAQ;IACvC,wCAAwC;IACjC,aAAa,EAAE,KAAK,GAAG,MAAM,CAAS;IAC7C,4DAA4D;IACrD,SAAS,EAAE,QAAQ,EAAE,CAAM;IAG3B,eAAe,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACxC,kBAAkB,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAC3C,gBAAgB,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAQ;IAGnD,cAAc;;;;;;SAGnB;IAGK,kBAAkB,EAAE,OAAO,CAAS;IACpC,iBAAiB,EAAE,MAAM,CAAM;IAC/B,sBAAsB,EAAE,MAAM,CAAM;IAGpC,WAAW,EAAE,yBAAyB,CAAuB;IAC7D,YAAY,EAAE,eAAe,EAAE,CAAM;IAGrC,UAAU,EAAE,OAAO,GAAG,aAAa,CAAW;IAG9C,UAAU,EAAE,iBAAiB,EAAE,CAAM;IACrC,mBAAmB,EAAE,OAAO,CAAS;IACrC,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAGzD,OAAO,CAAC,sBAAsB,CAAc;IAC5C,OAAO,CAAC,sBAAsB,CAAkD;IAGzE,2BAA2B,EAAE,OAAO,CAAS;IAC7C,uBAAuB,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CAAQ;IAGtE,OAAO,CAAC,YAAY,CAAkB;IAG/B,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,CAAa;IACnF,QAAQ,EAAE,OAAO,CAAS;IAC5B,gBAAgB,EAAE,MAAM,CAAM;IAG9B,aAAa,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC1C,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC7C,YAAY,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAAQ;IAG/C,mBAAmB,EAAE,YAAY,GAAG,IAAI,CAAQ;IAGhD,UAAU,EAAE,OAAO,CAAS;IAC5B,UAAU,EAAE,MAAM,CAAO;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAO;IACvC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAO;IACvC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAO;IAC3C,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAO;IAC3C,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA6B;IACrE,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,gBAAgB,CAAa;IAErC;;OAEG;IACH,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,OAAO,CAAC,QAAQ,CAAkB;gBAEd,GAAG,EAAE,iBAAiB;IAE1C;;;OAGG;IAEH,YAAY,IAAI,IAAI;IAYpB;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAatC;;OAEG;IACH,OAAO,CAAC,YAAY,CAYlB;IAEF;;OAEG;IACH,OAAO,CAAC,WAAW,CASjB;IAEF,QAAQ,IAAI,IAAI;IAKhB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;YACW,cAAc;IAQ5B,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAkCzC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAyI5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgBzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAsBpB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgBxB;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IAKvD;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAOxB;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAYpB;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAQ1B;;OAEG;IACH,YAAY,IAAI,IAAI;IAKpB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA6B/B;;OAEG;IACH,IAAI,cAAc,IAAI,YAAY,EAAE,CAEnC;IAED;;OAEG;IACH,IAAI,aAAa,IAAI,YAAY,EAAE,CAElC;IAED;;OAEG;IACH,IAAI,qBAAqB,IAAI,YAAY,EAAE,CAS1C;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,eAAe,EAAE,CAKtC;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAGrB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAGvB;IAED;;OAEG;IACH,sBAAsB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IASlD;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAaxC;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAiB1C;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAUzD;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAqBxD;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAUnC;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,GAAG,IAAI;IAyB1D;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKjC;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,aAAa;IA6BrB;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IAI3C;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IAQ1C;;OAEG;IACH,YAAY,IAAI,IAAI;IAepB;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IASzC;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAK9C;;OAEG;IACH,yBAAyB,CAAC,eAAe,EAAE,QAAQ,GAAG,eAAe,EAAE;IAOvE;;OAEG;IACH,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM9D;;OAEG;IACH,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAM1E;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAS3D;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAoB1D;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IASvC;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,GAAG,IAAI;IA4B5D;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKrC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAI7C;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAQ5C;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAS5C;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAKzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO;IAI9C;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAK7C;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,EAAE;IAUhD;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0B7B;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM;IAqB5E,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,UAAU;IAuClB,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAS/B;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,mBAAmB,IAAI,OAAO,CAEjC;IAED;;OAEG;IACH,YAAY,IAAI,iBAAiB;IAWjC;;OAEG;IACH,MAAM,IAAI,IAAI;IAuBd;;OAEG;IACH,WAAW,IAAI,IAAI;IAuBnB;;;OAGG;IACH,cAAc,IAAI,IAAI;IAsBf,iBAAiB,EAAE,OAAO,CAAS;IAE1C;;OAEG;IACH,QAAQ,IAAI,IAAI;IAKhB;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAKzB;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAKzB;;OAEG;IACH,WAAW,IAAI,IAAI;IAInB;;OAEG;IACH,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,IAAI;IAMtF;;;OAGG;IACH,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI;IAiBlD;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAQhC;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAQnC;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAKnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;OAEG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAS9C;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,eAAe,GAAG,IAAI;IAcpD;;OAEG;IACH,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQ1C;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAWzE;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,eAAe,GAAG,IAAI;IAclD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAevE;;OAEG;IACH,sBAAsB,IAAI,IAAI;IAM9B;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAMjD;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAM5B;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAenD;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAUnD;;OAEG;IACH,sBAAsB,CAAC,SAAS,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,UAAU,GAAG,IAAI;IAgC9E;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAWnD;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAWrD;;OAEG;IACH,IAAI,sBAAsB,IAAI,MAAM,CAEnC;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,iBAAiB,EAAE,CAExC;IAED;;OAEG;IACH,IAAI,gBAAgB,IAAI,iBAAiB,EAAE,CAE1C;IAED;;OAEG;IACH,OAAO,CAAC,qBAAqB;yCAlsDlB,wBAAwB;2CAAxB,wBAAwB;CA0sDpC"}
1
+ {"version":3,"file":"view-config-panel.component.d.ts","sourceRoot":"","sources":["../../../src/lib/view-config-panel/view-config-panel.component.ts"],"names":[],"mappings":"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"}