@memberjunction/ng-explorer-settings 2.120.0 → 2.122.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.
- package/dist/lib/application-management/application-dialog/application-dialog.component.d.ts +1 -1
- package/dist/lib/application-management/application-dialog/application-dialog.component.d.ts.map +1 -1
- package/dist/lib/application-management/application-dialog/application-dialog.component.js +5 -7
- package/dist/lib/application-management/application-dialog/application-dialog.component.js.map +1 -1
- package/dist/lib/application-management/application-management.component.d.ts +6 -4
- package/dist/lib/application-management/application-management.component.d.ts.map +1 -1
- package/dist/lib/application-management/application-management.component.js +28 -21
- package/dist/lib/application-management/application-management.component.js.map +1 -1
- package/dist/lib/entity-permissions/entity-permissions.component.d.ts +6 -4
- package/dist/lib/entity-permissions/entity-permissions.component.d.ts.map +1 -1
- package/dist/lib/entity-permissions/entity-permissions.component.js +27 -20
- package/dist/lib/entity-permissions/entity-permissions.component.js.map +1 -1
- package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.d.ts +1 -1
- package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.d.ts.map +1 -1
- package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.js +5 -7
- package/dist/lib/entity-permissions/permission-dialog/permission-dialog.component.js.map +1 -1
- package/dist/lib/module.d.ts +33 -19
- package/dist/lib/module.d.ts.map +1 -1
- package/dist/lib/module.js +97 -17
- package/dist/lib/module.js.map +1 -1
- package/dist/lib/role-management/role-dialog/role-dialog.component.d.ts +1 -1
- package/dist/lib/role-management/role-dialog/role-dialog.component.d.ts.map +1 -1
- package/dist/lib/role-management/role-dialog/role-dialog.component.js +5 -7
- package/dist/lib/role-management/role-dialog/role-dialog.component.js.map +1 -1
- package/dist/lib/role-management/role-management.component.d.ts +6 -4
- package/dist/lib/role-management/role-management.component.d.ts.map +1 -1
- package/dist/lib/role-management/role-management.component.js +28 -24
- package/dist/lib/role-management/role-management.component.js.map +1 -1
- package/dist/lib/settings/settings.component.d.ts +2 -2
- package/dist/lib/settings/settings.component.d.ts.map +1 -1
- package/dist/lib/settings/settings.component.js +11 -28
- package/dist/lib/settings/settings.component.js.map +1 -1
- package/dist/lib/shared/components/settings-card/settings-card.component.js +2 -2
- package/dist/lib/sql-logging/sql-logging.component.d.ts +36 -16
- package/dist/lib/sql-logging/sql-logging.component.d.ts.map +1 -1
- package/dist/lib/sql-logging/sql-logging.component.js +26 -29
- package/dist/lib/sql-logging/sql-logging.component.js.map +1 -1
- package/dist/lib/user-app-config/user-app-config.component.d.ts +102 -0
- package/dist/lib/user-app-config/user-app-config.component.d.ts.map +1 -0
- package/dist/lib/user-app-config/user-app-config.component.js +552 -0
- package/dist/lib/user-app-config/user-app-config.component.js.map +1 -0
- package/dist/lib/user-management/user-dialog/user-dialog.component.d.ts +1 -1
- package/dist/lib/user-management/user-dialog/user-dialog.component.d.ts.map +1 -1
- package/dist/lib/user-management/user-dialog/user-dialog.component.js +5 -7
- package/dist/lib/user-management/user-dialog/user-dialog.component.js.map +1 -1
- package/dist/lib/user-management/user-management.component.d.ts +6 -4
- package/dist/lib/user-management/user-management.component.d.ts.map +1 -1
- package/dist/lib/user-management/user-management.component.js +29 -24
- package/dist/lib/user-management/user-management.component.js.map +1 -1
- package/dist/lib/user-profile-settings/user-profile-settings.component.d.ts +1 -1
- package/dist/lib/user-profile-settings/user-profile-settings.component.d.ts.map +1 -1
- package/dist/lib/user-profile-settings/user-profile-settings.component.js +4 -6
- package/dist/lib/user-profile-settings/user-profile-settings.component.js.map +1 -1
- package/dist/public-api.d.ts +23 -1
- package/dist/public-api.d.ts.map +1 -1
- package/dist/public-api.js +52 -1
- package/dist/public-api.js.map +1 -1
- package/package.json +14 -14
package/dist/lib/application-management/application-dialog/application-dialog.component.d.ts
CHANGED
|
@@ -54,7 +54,7 @@ export declare class ApplicationDialogComponent implements OnInit, OnDestroy, On
|
|
|
54
54
|
onCancel(): void;
|
|
55
55
|
private markFormGroupTouched;
|
|
56
56
|
static ɵfac: i0.ɵɵFactoryDeclaration<ApplicationDialogComponent, never>;
|
|
57
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ApplicationDialogComponent, "mj-application-dialog", never, { "data": { "alias": "data"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; }, { "result": "result"; }, never, never,
|
|
57
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ApplicationDialogComponent, "mj-application-dialog", never, { "data": { "alias": "data"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; }, { "result": "result"; }, never, never, false, never>;
|
|
58
58
|
}
|
|
59
59
|
export {};
|
|
60
60
|
//# sourceMappingURL=application-dialog.component.d.ts.map
|
package/dist/lib/application-management/application-dialog/application-dialog.component.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/application-management/application-dialog/application-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAA2C,MAAM,eAAe,CAAC;AAE7J,OAAO,EAAiD,SAAS,EAAc,MAAM,gBAAgB,CAAC;AAEtG,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAGzG,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;CACzB;AAED,UAAU,uBAAuB;IAC/B,MAAM,EAAE,YAAY,CAAC;IACrB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC;AAED,
|
|
1
|
+
{"version":3,"file":"application-dialog.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/application-management/application-dialog/application-dialog.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAA2C,MAAM,eAAe,CAAC;AAE7J,OAAO,EAAiD,SAAS,EAAc,MAAM,gBAAgB,CAAC;AAEtG,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;;AAGzG,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;CACzB;AAED,UAAU,uBAAuB;IAC/B,MAAM,EAAE,YAAY,CAAC;IACrB,iBAAiB,CAAC,EAAE,uBAAuB,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC;AAED,qBAMa,0BAA2B,YAAW,MAAM,EAAE,SAAS,EAAE,SAAS;IACpE,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAQ;IAC1C,OAAO,UAAS;IACf,MAAM,wCAA+C;IAE/D,OAAO,CAAC,EAAE,CAAuB;IACjC,OAAO,CAAC,QAAQ,CAAkB;IAE3B,eAAe,EAAE,SAAS,CAAC;IAC3B,SAAS,UAAS;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG5B,mBAAmB,EAAE,uBAAuB,EAAE,CAAM;IACpD,iBAAiB,EAAE,YAAY,EAAE,CAAM;IACvC,WAAW,EAAE,YAAY,EAAE,CAAM;;IASxC,QAAQ,IAAI,IAAI;IAIhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAMzC,WAAW,IAAI,IAAI;YAIL,gBAAgB;YAuBhB,eAAe;IAW7B,OAAO,CAAC,SAAS;IAWjB,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAMvC,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,UAAU,IAAI,OAAO,CAE/B;YAEa,mBAAmB;YAanB,uBAAuB;IAsC9B,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAiBrC,YAAY,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAcnD,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IASjC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS1C,OAAO,CAAC,eAAe;IAShB,yBAAyB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAMvE,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAEY,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YA+CxB,uBAAuB;IA8B9B,QAAQ,IAAI,IAAI;IAIvB,OAAO,CAAC,oBAAoB;yCAzSjB,0BAA0B;2CAA1B,0BAA0B;CA+StC"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { Component, Input, Output, EventEmitter, inject, HostListener, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import { FormsModule, ReactiveFormsModule, FormBuilder, Validators } from '@angular/forms';
|
|
2
|
+
import { FormBuilder, Validators } from '@angular/forms';
|
|
4
3
|
import { Metadata, RunView } from '@memberjunction/core';
|
|
5
|
-
import { WindowModule } from '@progress/kendo-angular-dialog';
|
|
6
4
|
import * as i0 from "@angular/core";
|
|
7
5
|
import * as i1 from "@angular/common";
|
|
8
6
|
import * as i2 from "@angular/forms";
|
|
@@ -561,15 +559,15 @@ export class ApplicationDialogComponent {
|
|
|
561
559
|
static ɵfac = function ApplicationDialogComponent_Factory(t) { return new (t || ApplicationDialogComponent)(); };
|
|
562
560
|
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ApplicationDialogComponent, selectors: [["mj-application-dialog"]], hostBindings: function ApplicationDialogComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
563
561
|
i0.ɵɵlistener("keydown.escape", function ApplicationDialogComponent_keydown_escape_HostBindingHandler($event) { return ctx.onEscapeKey($event); }, false, i0.ɵɵresolveDocument);
|
|
564
|
-
} }, inputs: { data: "data", visible: "visible" }, outputs: { result: "result" },
|
|
562
|
+
} }, inputs: { data: "data", visible: "visible" }, outputs: { result: "result" }, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["kendoWindowContainer", "", 3, "width", "height", "resizable", "draggable", "keepContent", "close", 4, "ngIf"], ["kendoWindowContainer", "", 3, "close", "width", "height", "resizable", "draggable", "keepContent"], [1, "dialog-header"], [1, "dialog-title"], [1, "fa-solid", "fa-grid-2"], [1, "dialog-subtitle"], [1, "dialog-content"], [3, "ngSubmit", "formGroup"], [1, "content-section"], [1, "form-section"], [1, "section-header"], [1, "section-title"], [1, "fa-solid", "fa-info-circle"], [1, "section-description"], [1, "form-grid"], [1, "form-field"], ["for", "name", 1, "field-label", "required"], ["id", "name", "type", "text", "formControlName", "name", "placeholder", "My Application", 1, "field-input"], [1, "field-error"], ["for", "description", 1, "field-label"], ["id", "description", "formControlName", "description", "placeholder", "Describe the application's purpose and functionality...", "rows", "6", 1, "field-textarea"], [1, "field-hint"], [1, "fa-solid", "fa-database"], [1, "assigned-entities"], [1, "no-entities"], [1, "available-entities"], [1, "all-assigned"], [1, "dialog-footer"], ["type", "button", 1, "btn", "btn-secondary", 3, "click"], [1, "fa-solid", "fa-times"], ["type", "submit", 1, "btn", "btn-primary", 3, "disabled"], [1, "alert", "alert-error"], [1, "fa-solid", "fa-exclamation-triangle"], [1, "fa-solid", "fa-exclamation-circle"], [1, "subsection-title"], [1, "entities-list"], [1, "entity-item", 3, "is-new", "has-changes"], [1, "entity-item"], [1, "entity-info"], [1, "entity-icon"], [1, "fa-solid", "fa-table"], [1, "entity-details"], [1, "entity-name"], [1, "fa-solid", "fa-info-circle", "entity-info-icon", 3, "title"], [1, "entity-config"], [1, "config-item"], [1, "config-label"], ["type", "checkbox", 1, "config-checkbox", 3, "ngModelChange", "change", "ngModel", "ngModelOptions"], [1, "checkbox-text"], [1, "sequence-badge"], [1, "entity-actions"], ["type", "button", "title", "Move up", 1, "btn-icon", "btn-neutral", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-up"], ["type", "button", "title", "Move down", 1, "btn-icon", "btn-neutral", 3, "click", "disabled"], [1, "fa-solid", "fa-chevron-down"], ["type", "button", "title", "Remove entity", 1, "btn-icon", "btn-danger", 3, "click"], [1, "empty-subtext"], [1, "entities-grid"], [1, "entity-chip"], [1, "entity-chip", 3, "click"], [1, "chip-content"], [1, "fa-solid", "fa-plus"], [1, "chip-name"], [1, "fa-solid", "fa-check-circle"], [1, "info-grid"], [1, "info-item"], [1, "info-label"], [1, "info-value"], [1, "fa-solid", "fa-spinner", "fa-spin"], [1, "fa-solid", "fa-save"]], template: function ApplicationDialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
565
563
|
i0.ɵɵtemplate(0, ApplicationDialogComponent_kendo_window_0_Template, 52, 17, "kendo-window", 0);
|
|
566
564
|
} if (rf & 2) {
|
|
567
565
|
i0.ɵɵproperty("ngIf", ctx.visible);
|
|
568
|
-
} }, dependencies: [CommonModule, i1.NgIf, i1.DatePipe, FormsModule, i2.ɵNgNoValidate, i2.DefaultValueAccessor, i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.NgModel, ReactiveFormsModule, i2.FormGroupDirective, i2.FormControlName, WindowModule, i3.WindowComponent, i3.WindowTitleBarComponent, i3.WindowContainerDirective], styles: ["/* Modern Dialog Styling - Matching Dashboard Design */\n:host ::ng-deep .k-window {\n border: none;\n border-radius: 12px;\n box-shadow: 0 19px 38px rgba(0, 0, 0, 0.30), 0 15px 12px rgba(0, 0, 0, 0.22);\n background: #ffffff;\n overflow: hidden;\n}\n\n:host ::ng-deep .k-window-titlebar {\n background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);\n border: none;\n padding: 24px 32px;\n min-height: 70px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-title {\n display: none; /* Hide default title */\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions {\n position: absolute;\n top: 24px;\n right: 24px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button {\n background: rgba(255, 255, 255, 0.1);\n border: 1px solid rgba(255, 255, 255, 0.2);\n color: #ffffff;\n border-radius: 6px;\n width: 32px;\n height: 32px;\n min-width: auto;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button:hover {\n background: rgba(255, 255, 255, 0.2);\n border-color: rgba(255, 255, 255, 0.3);\n}\n\n:host ::ng-deep .k-window-content {\n padding: 0;\n background: #ffffff;\n}\n\n/* Custom Title Bar */\n.dialog-header {\n position: relative;\n color: #ffffff;\n}\n\n.dialog-header .dialog-title {\n font-size: 18px;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 16px;\n margin: 0;\n}\n\n.dialog-header .dialog-title i {\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(255, 255, 255, 0.15);\n border-radius: 6px;\n font-size: 14px;\n}\n\n.dialog-header .dialog-subtitle {\n margin: 4px 0 0 0;\n font-size: 12px;\n opacity: 0.85;\n font-weight: 400;\n}\n\n/* Modal Content Areas */\n.dialog-content {\n padding: 0;\n background: #ffffff;\n}\n\n.dialog-content .content-section {\n padding: 32px;\n}\n\n.dialog-content .content-section:not(:last-child) {\n border-bottom: 1px solid #e0e0e0;\n}\n\n.dialog-footer {\n padding: 24px 32px;\n background: #fafafa;\n border-top: 1px solid #e0e0e0;\n display: flex;\n justify-content: flex-end;\n gap: 16px;\n}\n\n/* Form Sections */\n.form-section .section-header {\n margin-bottom: 24px;\n}\n\n.form-section .section-header .section-title {\n font-size: 16px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 4px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-section .section-header .section-title i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.form-section .section-header .section-description {\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.form-grid {\n display: grid;\n gap: 24px;\n}\n\n.form-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 24px;\n}\n\n@media (max-width: 640px) {\n .form-row {\n grid-template-columns: 1fr;\n gap: 16px;\n }\n}\n\n/* Modern Form Fields */\n.form-field {\n margin-bottom: 24px;\n}\n\n.form-field:last-child {\n margin-bottom: 0;\n}\n\n.form-field .field-label {\n display: block;\n font-size: 12px;\n font-weight: 500;\n color: #212121;\n margin-bottom: 8px;\n}\n\n.form-field .field-label.required::after {\n content: ' *';\n color: #f44336;\n}\n\n.form-field .field-input,\n.form-field .field-select,\n.form-field .field-textarea {\n width: 100%;\n padding: 0 16px;\n border: 1px solid #bdbdbd;\n border-radius: 6px;\n font-size: 14px;\n background: #ffffff;\n transition: all 0.15s ease;\n}\n\n.form-field .field-input:focus,\n.form-field .field-select:focus,\n.form-field .field-textarea:focus {\n outline: none;\n border-color: #2196f3;\n box-shadow: 0 0 0 3px rgba(33, 150, 243, 0.1);\n}\n\n.form-field .field-input.error,\n.form-field .field-select.error,\n.form-field .field-textarea.error {\n border-color: #f44336;\n}\n\n.form-field .field-input.error:focus,\n.form-field .field-select.error:focus,\n.form-field .field-textarea.error:focus {\n border-color: #f44336;\n box-shadow: 0 0 0 3px rgba(244, 67, 54, 0.1);\n}\n\n.form-field .field-input::placeholder,\n.form-field .field-select::placeholder,\n.form-field .field-textarea::placeholder {\n color: #9e9e9e;\n}\n\n.form-field .field-input,\n.form-field .field-select {\n height: 36px;\n}\n\n.form-field .field-textarea {\n min-height: 100px;\n padding: 16px;\n resize: vertical;\n line-height: 1.4;\n}\n\n.form-field .field-select {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 16px center;\n background-repeat: no-repeat;\n background-size: 16px;\n padding-right: calc(16px + 24px);\n appearance: none;\n cursor: pointer;\n}\n\n.form-field .field-error {\n margin-top: 8px;\n font-size: 11px;\n color: #f44336;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.form-field .field-error i {\n font-size: 10px;\n}\n\n.form-field .field-hint {\n margin-top: 8px;\n font-size: 11px;\n color: #666666;\n line-height: 1.4;\n}\n\n/* Alert Messages */\n.alert {\n padding: 16px 24px;\n border-radius: 8px;\n margin-bottom: 24px;\n display: flex;\n align-items: flex-start;\n gap: 16px;\n}\n\n.alert i {\n font-size: 16px;\n flex-shrink: 0;\n margin-top: 2px;\n}\n\n.alert.alert-error {\n background: rgba(244, 67, 54, 0.1);\n border: 1px solid rgba(244, 67, 54, 0.2);\n color: #c62828;\n}\n\n.alert.alert-error i {\n color: #f44336;\n}\n\n.alert.alert-warning {\n background: rgba(255, 193, 7, 0.1);\n border: 1px solid rgba(255, 193, 7, 0.2);\n color: #b7800d;\n}\n\n.alert.alert-warning i {\n color: #ffc107;\n}\n\n.alert.alert-info {\n background: rgba(0, 188, 212, 0.1);\n border: 1px solid rgba(0, 188, 212, 0.2);\n color: #00838f;\n}\n\n.alert.alert-info i {\n color: #00bcd4;\n}\n\n/* Button Styles */\n.dialog-footer .btn {\n padding: 8px 24px;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.15s ease;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n min-height: 36px;\n}\n\n.dialog-footer .btn:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.dialog-footer .btn:disabled i.fa-spinner {\n animation: spin 1s linear infinite;\n}\n\n.dialog-footer .btn.btn-secondary {\n background: #ffffff;\n color: #666666;\n border-color: #bdbdbd;\n}\n\n.dialog-footer .btn.btn-secondary:hover:not(:disabled) {\n background: #f8f9fa;\n border-color: #757575;\n color: #212121;\n}\n\n.dialog-footer .btn.btn-primary {\n background: #2196f3;\n color: #ffffff;\n}\n\n.dialog-footer .btn.btn-primary:hover:not(:disabled) {\n background: #1976d2;\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.2);\n transform: translateY(-1px);\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n/* Entity Management Styles */\n.subsection-title {\n font-size: 14px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 16px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.assigned-entities {\n margin-bottom: 32px;\n}\n\n.assigned-entities .entities-list {\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n background: #ffffff;\n}\n\n.entity-item {\n display: flex;\n align-items: center;\n padding: 16px 24px;\n border-bottom: 1px solid #fafafa;\n transition: all 0.15s ease;\n}\n\n.entity-item:last-child {\n border-bottom: none;\n}\n\n.entity-item:hover {\n background: rgba(33, 150, 243, 0.02);\n}\n\n.entity-item.is-new {\n background: rgba(76, 175, 80, 0.05);\n border-left: 3px solid #4caf50;\n}\n\n.entity-item.has-changes {\n background: rgba(0, 188, 212, 0.05);\n border-left: 3px solid #00bcd4;\n}\n\n.entity-item .entity-info {\n display: flex;\n align-items: center;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-icon {\n width: 40px;\n height: 40px;\n background: rgba(33, 150, 243, 0.1);\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #2196f3;\n flex-shrink: 0;\n}\n\n.entity-item .entity-info .entity-details {\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-details .entity-name {\n font-weight: 500;\n color: #212121;\n margin-bottom: 2px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon {\n color: #00bcd4;\n font-size: 14px;\n cursor: help;\n opacity: 0.7;\n transition: all 0.15s ease;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon:hover {\n opacity: 1;\n transform: scale(1.1);\n}\n\n.entity-item .entity-info .entity-details .entity-description {\n font-size: 12px;\n color: #666666;\n line-height: 1.4;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.entity-item .entity-config {\n display: flex;\n align-items: center;\n gap: 24px;\n margin: 0 24px;\n}\n\n.entity-item .entity-config .config-item .config-label {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.entity-item .entity-config .config-item .config-label .config-checkbox {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.entity-item .entity-config .sequence-badge {\n background: #2196f3;\n color: #ffffff;\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n min-width: 24px;\n text-align: center;\n}\n\n.entity-item .entity-actions {\n display: flex;\n gap: 4px;\n}\n\n.no-entities,\n.all-assigned {\n text-align: center;\n padding: 32px;\n color: #666666;\n}\n\n.no-entities i,\n.all-assigned i {\n font-size: 2rem;\n color: #bdbdbd;\n margin-bottom: 16px;\n}\n\n.no-entities p,\n.all-assigned p {\n margin: 0 0 4px 0;\n font-weight: 500;\n}\n\n.no-entities .empty-subtext,\n.all-assigned .empty-subtext {\n font-size: 12px;\n color: #9e9e9e;\n margin: 0;\n}\n\n.available-entities .entities-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 8px;\n}\n\n@media (max-width: 640px) {\n .available-entities .entities-grid {\n grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\n }\n}\n\n.entity-chip {\n padding: 16px;\n border: 1px solid #bdbdbd;\n border-radius: 8px;\n background: #ffffff;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.entity-chip .chip-content {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-chip .chip-content i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.entity-chip .chip-content .chip-name {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n.entity-chip:hover {\n border-color: #2196f3;\n background: rgba(33, 150, 243, 0.05);\n transform: translateY(-1px);\n box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n}\n\n/* Info Grid for System Information */\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n@media (max-width: 640px) {\n .info-grid {\n grid-template-columns: 1fr;\n }\n}\n\n.info-grid .info-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.info-grid .info-item .info-label {\n font-size: 11px;\n color: #666666;\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.info-grid .info-item .info-value {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n/* Enhanced Button Icons */\n.btn-icon {\n width: 32px;\n height: 32px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\n.btn-icon:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.btn-icon.btn-neutral {\n background: rgba(189, 189, 189, 0.1);\n color: #666666;\n}\n\n.btn-icon.btn-neutral:hover:not(:disabled) {\n background: rgba(189, 189, 189, 0.2);\n color: #212121;\n transform: scale(1.05);\n}\n\n.btn-icon.btn-danger {\n background: rgba(244, 67, 54, 0.1);\n color: #f44336;\n}\n\n.btn-icon.btn-danger:hover:not(:disabled) {\n background: rgba(244, 67, 54, 0.2);\n transform: scale(1.05);\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n :host ::ng-deep .k-window {\n margin: 16px;\n max-width: none;\n width: calc(100vw - 24px) !important;\n height: calc(100vh - 24px) !important;\n }\n \n :host ::ng-deep .k-window-titlebar {\n padding: 16px 24px;\n min-height: 60px;\n }\n \n .dialog-content .content-section {\n padding: 24px 16px;\n }\n \n .dialog-footer {\n padding: 16px 24px;\n flex-direction: column-reverse;\n }\n \n .dialog-footer .btn {\n width: 100%;\n justify-content: center;\n }\n}"], encapsulation: 2 });
|
|
566
|
+
} }, dependencies: [i1.NgIf, i2.ɵNgNoValidate, i2.DefaultValueAccessor, i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.NgModel, i2.FormGroupDirective, i2.FormControlName, i3.WindowComponent, i3.WindowTitleBarComponent, i3.WindowContainerDirective, i1.DatePipe], styles: ["/* Modern Dialog Styling - Matching Dashboard Design */\n:host ::ng-deep .k-window {\n border: none;\n border-radius: 12px;\n box-shadow: 0 19px 38px rgba(0, 0, 0, 0.30), 0 15px 12px rgba(0, 0, 0, 0.22);\n background: #ffffff;\n overflow: hidden;\n}\n\n:host ::ng-deep .k-window-titlebar {\n background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);\n border: none;\n padding: 24px 32px;\n min-height: 70px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-title {\n display: none; /* Hide default title */\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions {\n position: absolute;\n top: 24px;\n right: 24px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button {\n background: rgba(255, 255, 255, 0.1);\n border: 1px solid rgba(255, 255, 255, 0.2);\n color: #ffffff;\n border-radius: 6px;\n width: 32px;\n height: 32px;\n min-width: auto;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button:hover {\n background: rgba(255, 255, 255, 0.2);\n border-color: rgba(255, 255, 255, 0.3);\n}\n\n:host ::ng-deep .k-window-content {\n padding: 0;\n background: #ffffff;\n}\n\n/* Custom Title Bar */\n.dialog-header {\n position: relative;\n color: #ffffff;\n}\n\n.dialog-header .dialog-title {\n font-size: 18px;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 16px;\n margin: 0;\n}\n\n.dialog-header .dialog-title i {\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(255, 255, 255, 0.15);\n border-radius: 6px;\n font-size: 14px;\n}\n\n.dialog-header .dialog-subtitle {\n margin: 4px 0 0 0;\n font-size: 12px;\n opacity: 0.85;\n font-weight: 400;\n}\n\n/* Modal Content Areas */\n.dialog-content {\n padding: 0;\n background: #ffffff;\n}\n\n.dialog-content .content-section {\n padding: 32px;\n}\n\n.dialog-content .content-section:not(:last-child) {\n border-bottom: 1px solid #e0e0e0;\n}\n\n.dialog-footer {\n padding: 24px 32px;\n background: #fafafa;\n border-top: 1px solid #e0e0e0;\n display: flex;\n justify-content: flex-end;\n gap: 16px;\n}\n\n/* Form Sections */\n.form-section .section-header {\n margin-bottom: 24px;\n}\n\n.form-section .section-header .section-title {\n font-size: 16px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 4px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-section .section-header .section-title i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.form-section .section-header .section-description {\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.form-grid {\n display: grid;\n gap: 24px;\n}\n\n.form-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 24px;\n}\n\n@media (max-width: 640px) {\n .form-row {\n grid-template-columns: 1fr;\n gap: 16px;\n }\n}\n\n/* Modern Form Fields */\n.form-field {\n margin-bottom: 24px;\n}\n\n.form-field:last-child {\n margin-bottom: 0;\n}\n\n.form-field .field-label {\n display: block;\n font-size: 12px;\n font-weight: 500;\n color: #212121;\n margin-bottom: 8px;\n}\n\n.form-field .field-label.required::after {\n content: ' *';\n color: #f44336;\n}\n\n.form-field .field-input,\n.form-field .field-select,\n.form-field .field-textarea {\n width: 100%;\n padding: 0 16px;\n border: 1px solid #bdbdbd;\n border-radius: 6px;\n font-size: 14px;\n background: #ffffff;\n transition: all 0.15s ease;\n}\n\n.form-field .field-input:focus,\n.form-field .field-select:focus,\n.form-field .field-textarea:focus {\n outline: none;\n border-color: #2196f3;\n box-shadow: 0 0 0 3px rgba(33, 150, 243, 0.1);\n}\n\n.form-field .field-input.error,\n.form-field .field-select.error,\n.form-field .field-textarea.error {\n border-color: #f44336;\n}\n\n.form-field .field-input.error:focus,\n.form-field .field-select.error:focus,\n.form-field .field-textarea.error:focus {\n border-color: #f44336;\n box-shadow: 0 0 0 3px rgba(244, 67, 54, 0.1);\n}\n\n.form-field .field-input::placeholder,\n.form-field .field-select::placeholder,\n.form-field .field-textarea::placeholder {\n color: #9e9e9e;\n}\n\n.form-field .field-input,\n.form-field .field-select {\n height: 36px;\n}\n\n.form-field .field-textarea {\n min-height: 100px;\n padding: 16px;\n resize: vertical;\n line-height: 1.4;\n}\n\n.form-field .field-select {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 16px center;\n background-repeat: no-repeat;\n background-size: 16px;\n padding-right: calc(16px + 24px);\n appearance: none;\n cursor: pointer;\n}\n\n.form-field .field-error {\n margin-top: 8px;\n font-size: 11px;\n color: #f44336;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.form-field .field-error i {\n font-size: 10px;\n}\n\n.form-field .field-hint {\n margin-top: 8px;\n font-size: 11px;\n color: #666666;\n line-height: 1.4;\n}\n\n/* Alert Messages */\n.alert {\n padding: 16px 24px;\n border-radius: 8px;\n margin-bottom: 24px;\n display: flex;\n align-items: flex-start;\n gap: 16px;\n}\n\n.alert i {\n font-size: 16px;\n flex-shrink: 0;\n margin-top: 2px;\n}\n\n.alert.alert-error {\n background: rgba(244, 67, 54, 0.1);\n border: 1px solid rgba(244, 67, 54, 0.2);\n color: #c62828;\n}\n\n.alert.alert-error i {\n color: #f44336;\n}\n\n.alert.alert-warning {\n background: rgba(255, 193, 7, 0.1);\n border: 1px solid rgba(255, 193, 7, 0.2);\n color: #b7800d;\n}\n\n.alert.alert-warning i {\n color: #ffc107;\n}\n\n.alert.alert-info {\n background: rgba(0, 188, 212, 0.1);\n border: 1px solid rgba(0, 188, 212, 0.2);\n color: #00838f;\n}\n\n.alert.alert-info i {\n color: #00bcd4;\n}\n\n/* Button Styles */\n.dialog-footer .btn {\n padding: 8px 24px;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.15s ease;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n min-height: 36px;\n}\n\n.dialog-footer .btn:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.dialog-footer .btn:disabled i.fa-spinner {\n animation: spin 1s linear infinite;\n}\n\n.dialog-footer .btn.btn-secondary {\n background: #ffffff;\n color: #666666;\n border-color: #bdbdbd;\n}\n\n.dialog-footer .btn.btn-secondary:hover:not(:disabled) {\n background: #f8f9fa;\n border-color: #757575;\n color: #212121;\n}\n\n.dialog-footer .btn.btn-primary {\n background: #2196f3;\n color: #ffffff;\n}\n\n.dialog-footer .btn.btn-primary:hover:not(:disabled) {\n background: #1976d2;\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.2);\n transform: translateY(-1px);\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n/* Entity Management Styles */\n.subsection-title {\n font-size: 14px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 16px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.assigned-entities {\n margin-bottom: 32px;\n}\n\n.assigned-entities .entities-list {\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n background: #ffffff;\n}\n\n.entity-item {\n display: flex;\n align-items: center;\n padding: 16px 24px;\n border-bottom: 1px solid #fafafa;\n transition: all 0.15s ease;\n}\n\n.entity-item:last-child {\n border-bottom: none;\n}\n\n.entity-item:hover {\n background: rgba(33, 150, 243, 0.02);\n}\n\n.entity-item.is-new {\n background: rgba(76, 175, 80, 0.05);\n border-left: 3px solid #4caf50;\n}\n\n.entity-item.has-changes {\n background: rgba(0, 188, 212, 0.05);\n border-left: 3px solid #00bcd4;\n}\n\n.entity-item .entity-info {\n display: flex;\n align-items: center;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-icon {\n width: 40px;\n height: 40px;\n background: rgba(33, 150, 243, 0.1);\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #2196f3;\n flex-shrink: 0;\n}\n\n.entity-item .entity-info .entity-details {\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-details .entity-name {\n font-weight: 500;\n color: #212121;\n margin-bottom: 2px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon {\n color: #00bcd4;\n font-size: 14px;\n cursor: help;\n opacity: 0.7;\n transition: all 0.15s ease;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon:hover {\n opacity: 1;\n transform: scale(1.1);\n}\n\n.entity-item .entity-info .entity-details .entity-description {\n font-size: 12px;\n color: #666666;\n line-height: 1.4;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.entity-item .entity-config {\n display: flex;\n align-items: center;\n gap: 24px;\n margin: 0 24px;\n}\n\n.entity-item .entity-config .config-item .config-label {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.entity-item .entity-config .config-item .config-label .config-checkbox {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.entity-item .entity-config .sequence-badge {\n background: #2196f3;\n color: #ffffff;\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n min-width: 24px;\n text-align: center;\n}\n\n.entity-item .entity-actions {\n display: flex;\n gap: 4px;\n}\n\n.no-entities,\n.all-assigned {\n text-align: center;\n padding: 32px;\n color: #666666;\n}\n\n.no-entities i,\n.all-assigned i {\n font-size: 2rem;\n color: #bdbdbd;\n margin-bottom: 16px;\n}\n\n.no-entities p,\n.all-assigned p {\n margin: 0 0 4px 0;\n font-weight: 500;\n}\n\n.no-entities .empty-subtext,\n.all-assigned .empty-subtext {\n font-size: 12px;\n color: #9e9e9e;\n margin: 0;\n}\n\n.available-entities .entities-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 8px;\n}\n\n@media (max-width: 640px) {\n .available-entities .entities-grid {\n grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\n }\n}\n\n.entity-chip {\n padding: 16px;\n border: 1px solid #bdbdbd;\n border-radius: 8px;\n background: #ffffff;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.entity-chip .chip-content {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-chip .chip-content i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.entity-chip .chip-content .chip-name {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n.entity-chip:hover {\n border-color: #2196f3;\n background: rgba(33, 150, 243, 0.05);\n transform: translateY(-1px);\n box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n}\n\n/* Info Grid for System Information */\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n@media (max-width: 640px) {\n .info-grid {\n grid-template-columns: 1fr;\n }\n}\n\n.info-grid .info-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.info-grid .info-item .info-label {\n font-size: 11px;\n color: #666666;\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.info-grid .info-item .info-value {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n/* Enhanced Button Icons */\n.btn-icon {\n width: 32px;\n height: 32px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\n.btn-icon:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.btn-icon.btn-neutral {\n background: rgba(189, 189, 189, 0.1);\n color: #666666;\n}\n\n.btn-icon.btn-neutral:hover:not(:disabled) {\n background: rgba(189, 189, 189, 0.2);\n color: #212121;\n transform: scale(1.05);\n}\n\n.btn-icon.btn-danger {\n background: rgba(244, 67, 54, 0.1);\n color: #f44336;\n}\n\n.btn-icon.btn-danger:hover:not(:disabled) {\n background: rgba(244, 67, 54, 0.2);\n transform: scale(1.05);\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n :host ::ng-deep .k-window {\n margin: 16px;\n max-width: none;\n width: calc(100vw - 24px) !important;\n height: calc(100vh - 24px) !important;\n }\n \n :host ::ng-deep .k-window-titlebar {\n padding: 16px 24px;\n min-height: 60px;\n }\n \n .dialog-content .content-section {\n padding: 24px 16px;\n }\n \n .dialog-footer {\n padding: 16px 24px;\n flex-direction: column-reverse;\n }\n \n .dialog-footer .btn {\n width: 100%;\n justify-content: center;\n }\n}"], encapsulation: 2 });
|
|
569
567
|
}
|
|
570
568
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ApplicationDialogComponent, [{
|
|
571
569
|
type: Component,
|
|
572
|
-
args: [{ selector: 'mj-application-dialog', standalone: true, imports: [CommonModule, FormsModule, ReactiveFormsModule, WindowModule], encapsulation: ViewEncapsulation.None, template: "<kendo-window\n *ngIf=\"visible\"\n [width]=\"900\"\n [height]=\"700\"\n [resizable]=\"false\"\n [draggable]=\"true\"\n [keepContent]=\"true\"\n (close)=\"onCancel()\"\n kendoWindowContainer>\n \n <kendo-window-titlebar>\n <div class=\"dialog-header\">\n <h2 class=\"dialog-title\">\n <i class=\"fa-solid fa-grid-2\"></i>\n {{ isEditMode ? 'Edit Application' : 'Create New Application' }}\n </h2>\n <p class=\"dialog-subtitle\">\n {{ isEditMode ? 'Update application information and settings' : 'Add a new application to the system' }}\n </p>\n </div>\n </kendo-window-titlebar>\n\n <div class=\"dialog-content\">\n <form [formGroup]=\"applicationForm\" (ngSubmit)=\"onSubmit()\">\n \n @if (error) {\n <div class=\"content-section\">\n <div class=\"alert alert-error\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <div>{{ error }}</div>\n </div>\n </div>\n }\n\n <!-- Basic Information Section -->\n <div class=\"content-section\">\n <div class=\"form-section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Application Information\n </h3>\n <p class=\"section-description\">Define the application's basic properties</p>\n </div>\n \n <div class=\"form-grid\">\n <div class=\"form-field\">\n <label class=\"field-label required\" for=\"name\">Application Name</label>\n <input \n id=\"name\"\n type=\"text\" \n class=\"field-input\" \n formControlName=\"name\"\n placeholder=\"My Application\"\n [class.error]=\"applicationForm.get('name')?.invalid && applicationForm.get('name')?.touched\"\n />\n @if (applicationForm.get('name')?.invalid && applicationForm.get('name')?.touched) {\n <div class=\"field-error\">\n <i class=\"fa-solid fa-exclamation-circle\"></i>\n @if (applicationForm.get('name')?.errors?.['required']) {\n Application name is required\n }\n @if (applicationForm.get('name')?.errors?.['maxlength']) {\n Application name cannot exceed 100 characters\n }\n </div>\n }\n </div>\n\n <div class=\"form-field\">\n <label class=\"field-label\" for=\"description\">Description</label>\n <textarea \n id=\"description\"\n class=\"field-textarea\" \n formControlName=\"description\"\n placeholder=\"Describe the application's purpose and functionality...\"\n rows=\"6\"\n ></textarea>\n <div class=\"field-hint\">\n Provide a clear description of what this application does and its main features.\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Entity Management Section -->\n <div class=\"content-section\">\n <div class=\"form-section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-database\"></i>\n Application Entities\n </h3>\n <p class=\"section-description\">Manage which entities are included in this application</p>\n </div>\n \n <div class=\"form-grid\">\n <!-- Assigned Entities -->\n @if (applicationEntities.length > 0) {\n <div class=\"assigned-entities\">\n <h4 class=\"subsection-title\">Assigned Entities ({{ applicationEntities.length }})</h4>\n <div class=\"entities-list\">\n @for (config of applicationEntities; track config.entity.ID; let i = $index) {\n <div class=\"entity-item\" [class.is-new]=\"config.isNew\" [class.has-changes]=\"config.hasChanges\">\n <div class=\"entity-info\">\n <div class=\"entity-icon\">\n <i class=\"fa-solid fa-table\"></i>\n </div>\n <div class=\"entity-details\">\n <div class=\"entity-name\">\n {{ config.entity.Name }}\n @if (config.entity.Description) {\n <i class=\"fa-solid fa-info-circle entity-info-icon\" \n [title]=\"config.entity.Description\"\n [attr.data-tooltip]=\"config.entity.Description\"></i>\n }\n </div>\n </div>\n </div>\n \n <div class=\"entity-config\">\n <div class=\"config-item\">\n <label class=\"config-label\">\n <input \n type=\"checkbox\" \n [(ngModel)]=\"config.defaultForNewUser\"\n [ngModelOptions]=\"{standalone: true}\"\n (change)=\"onDefaultForNewUserChange(config)\"\n class=\"config-checkbox\"\n />\n <span class=\"checkbox-text\">Default for new users</span>\n </label>\n </div>\n <div class=\"sequence-badge\">{{ config.sequence }}</div>\n </div>\n \n <div class=\"entity-actions\">\n <button \n type=\"button\" \n class=\"btn-icon btn-neutral\"\n (click)=\"moveEntityUp(i)\"\n [disabled]=\"i === 0\"\n title=\"Move up\"\n >\n <i class=\"fa-solid fa-chevron-up\"></i>\n </button>\n <button \n type=\"button\" \n class=\"btn-icon btn-neutral\"\n (click)=\"moveEntityDown(i)\"\n [disabled]=\"i === applicationEntities.length - 1\"\n title=\"Move down\"\n >\n <i class=\"fa-solid fa-chevron-down\"></i>\n </button>\n <button \n type=\"button\" \n class=\"btn-icon btn-danger\"\n (click)=\"removeEntity(config)\"\n title=\"Remove entity\"\n >\n <i class=\"fa-solid fa-times\"></i>\n </button>\n </div>\n </div>\n }\n </div>\n </div>\n } @else {\n <div class=\"no-entities\">\n <i class=\"fa-solid fa-database\"></i>\n <p>No entities assigned to this application</p>\n <p class=\"empty-subtext\">Add entities from the available list below</p>\n </div>\n }\n \n <!-- Available Entities -->\n @if (availableEntities.length > 0) {\n <div class=\"available-entities\">\n <h4 class=\"subsection-title\">Available Entities ({{ availableEntities.length }})</h4>\n <div class=\"entities-grid\">\n @for (entity of availableEntities; track entity.ID) {\n <div class=\"entity-chip\" (click)=\"addEntity(entity)\">\n <div class=\"chip-content\">\n <i class=\"fa-solid fa-plus\"></i>\n <span class=\"chip-name\">{{ entity.Name }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n } @else {\n <div class=\"all-assigned\">\n <i class=\"fa-solid fa-check-circle\"></i>\n <p>All entities have been assigned to this application</p>\n </div>\n }\n </div>\n </div>\n </div>\n\n <!-- Application Info Section -->\n @if (isEditMode) {\n <div class=\"content-section\">\n <div class=\"form-section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-info-circle\"></i>\n System Information\n </h3>\n <p class=\"section-description\">Application metadata and audit information</p>\n </div>\n \n <div class=\"form-grid\">\n <div class=\"info-grid\">\n <div class=\"info-item\">\n <span class=\"info-label\">Created:</span>\n <span class=\"info-value\">{{ data?.application?.__mj_CreatedAt | date:'medium' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Last Updated:</span>\n <span class=\"info-value\">{{ data?.application?.__mj_UpdatedAt | date:'medium' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Application ID:</span>\n <span class=\"info-value\">{{ data?.application?.ID }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Total Entities:</span>\n <span class=\"info-value\">{{ applicationEntities.length }}</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n }\n\n <div class=\"dialog-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"onCancel()\">\n <i class=\"fa-solid fa-times\"></i>\n Cancel\n </button>\n <button \n type=\"submit\" \n class=\"btn btn-primary\" \n [disabled]=\"applicationForm.invalid || isLoading\"\n >\n @if (isLoading) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n {{ isEditMode ? 'Update Application' : 'Create Application' }}\n }\n </button>\n </div>\n </form>\n </div>\n</kendo-window>", styles: ["/* Modern Dialog Styling - Matching Dashboard Design */\n:host ::ng-deep .k-window {\n border: none;\n border-radius: 12px;\n box-shadow: 0 19px 38px rgba(0, 0, 0, 0.30), 0 15px 12px rgba(0, 0, 0, 0.22);\n background: #ffffff;\n overflow: hidden;\n}\n\n:host ::ng-deep .k-window-titlebar {\n background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);\n border: none;\n padding: 24px 32px;\n min-height: 70px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-title {\n display: none; /* Hide default title */\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions {\n position: absolute;\n top: 24px;\n right: 24px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button {\n background: rgba(255, 255, 255, 0.1);\n border: 1px solid rgba(255, 255, 255, 0.2);\n color: #ffffff;\n border-radius: 6px;\n width: 32px;\n height: 32px;\n min-width: auto;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button:hover {\n background: rgba(255, 255, 255, 0.2);\n border-color: rgba(255, 255, 255, 0.3);\n}\n\n:host ::ng-deep .k-window-content {\n padding: 0;\n background: #ffffff;\n}\n\n/* Custom Title Bar */\n.dialog-header {\n position: relative;\n color: #ffffff;\n}\n\n.dialog-header .dialog-title {\n font-size: 18px;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 16px;\n margin: 0;\n}\n\n.dialog-header .dialog-title i {\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(255, 255, 255, 0.15);\n border-radius: 6px;\n font-size: 14px;\n}\n\n.dialog-header .dialog-subtitle {\n margin: 4px 0 0 0;\n font-size: 12px;\n opacity: 0.85;\n font-weight: 400;\n}\n\n/* Modal Content Areas */\n.dialog-content {\n padding: 0;\n background: #ffffff;\n}\n\n.dialog-content .content-section {\n padding: 32px;\n}\n\n.dialog-content .content-section:not(:last-child) {\n border-bottom: 1px solid #e0e0e0;\n}\n\n.dialog-footer {\n padding: 24px 32px;\n background: #fafafa;\n border-top: 1px solid #e0e0e0;\n display: flex;\n justify-content: flex-end;\n gap: 16px;\n}\n\n/* Form Sections */\n.form-section .section-header {\n margin-bottom: 24px;\n}\n\n.form-section .section-header .section-title {\n font-size: 16px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 4px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-section .section-header .section-title i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.form-section .section-header .section-description {\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.form-grid {\n display: grid;\n gap: 24px;\n}\n\n.form-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 24px;\n}\n\n@media (max-width: 640px) {\n .form-row {\n grid-template-columns: 1fr;\n gap: 16px;\n }\n}\n\n/* Modern Form Fields */\n.form-field {\n margin-bottom: 24px;\n}\n\n.form-field:last-child {\n margin-bottom: 0;\n}\n\n.form-field .field-label {\n display: block;\n font-size: 12px;\n font-weight: 500;\n color: #212121;\n margin-bottom: 8px;\n}\n\n.form-field .field-label.required::after {\n content: ' *';\n color: #f44336;\n}\n\n.form-field .field-input,\n.form-field .field-select,\n.form-field .field-textarea {\n width: 100%;\n padding: 0 16px;\n border: 1px solid #bdbdbd;\n border-radius: 6px;\n font-size: 14px;\n background: #ffffff;\n transition: all 0.15s ease;\n}\n\n.form-field .field-input:focus,\n.form-field .field-select:focus,\n.form-field .field-textarea:focus {\n outline: none;\n border-color: #2196f3;\n box-shadow: 0 0 0 3px rgba(33, 150, 243, 0.1);\n}\n\n.form-field .field-input.error,\n.form-field .field-select.error,\n.form-field .field-textarea.error {\n border-color: #f44336;\n}\n\n.form-field .field-input.error:focus,\n.form-field .field-select.error:focus,\n.form-field .field-textarea.error:focus {\n border-color: #f44336;\n box-shadow: 0 0 0 3px rgba(244, 67, 54, 0.1);\n}\n\n.form-field .field-input::placeholder,\n.form-field .field-select::placeholder,\n.form-field .field-textarea::placeholder {\n color: #9e9e9e;\n}\n\n.form-field .field-input,\n.form-field .field-select {\n height: 36px;\n}\n\n.form-field .field-textarea {\n min-height: 100px;\n padding: 16px;\n resize: vertical;\n line-height: 1.4;\n}\n\n.form-field .field-select {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 16px center;\n background-repeat: no-repeat;\n background-size: 16px;\n padding-right: calc(16px + 24px);\n appearance: none;\n cursor: pointer;\n}\n\n.form-field .field-error {\n margin-top: 8px;\n font-size: 11px;\n color: #f44336;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.form-field .field-error i {\n font-size: 10px;\n}\n\n.form-field .field-hint {\n margin-top: 8px;\n font-size: 11px;\n color: #666666;\n line-height: 1.4;\n}\n\n/* Alert Messages */\n.alert {\n padding: 16px 24px;\n border-radius: 8px;\n margin-bottom: 24px;\n display: flex;\n align-items: flex-start;\n gap: 16px;\n}\n\n.alert i {\n font-size: 16px;\n flex-shrink: 0;\n margin-top: 2px;\n}\n\n.alert.alert-error {\n background: rgba(244, 67, 54, 0.1);\n border: 1px solid rgba(244, 67, 54, 0.2);\n color: #c62828;\n}\n\n.alert.alert-error i {\n color: #f44336;\n}\n\n.alert.alert-warning {\n background: rgba(255, 193, 7, 0.1);\n border: 1px solid rgba(255, 193, 7, 0.2);\n color: #b7800d;\n}\n\n.alert.alert-warning i {\n color: #ffc107;\n}\n\n.alert.alert-info {\n background: rgba(0, 188, 212, 0.1);\n border: 1px solid rgba(0, 188, 212, 0.2);\n color: #00838f;\n}\n\n.alert.alert-info i {\n color: #00bcd4;\n}\n\n/* Button Styles */\n.dialog-footer .btn {\n padding: 8px 24px;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.15s ease;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n min-height: 36px;\n}\n\n.dialog-footer .btn:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.dialog-footer .btn:disabled i.fa-spinner {\n animation: spin 1s linear infinite;\n}\n\n.dialog-footer .btn.btn-secondary {\n background: #ffffff;\n color: #666666;\n border-color: #bdbdbd;\n}\n\n.dialog-footer .btn.btn-secondary:hover:not(:disabled) {\n background: #f8f9fa;\n border-color: #757575;\n color: #212121;\n}\n\n.dialog-footer .btn.btn-primary {\n background: #2196f3;\n color: #ffffff;\n}\n\n.dialog-footer .btn.btn-primary:hover:not(:disabled) {\n background: #1976d2;\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.2);\n transform: translateY(-1px);\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n/* Entity Management Styles */\n.subsection-title {\n font-size: 14px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 16px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.assigned-entities {\n margin-bottom: 32px;\n}\n\n.assigned-entities .entities-list {\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n background: #ffffff;\n}\n\n.entity-item {\n display: flex;\n align-items: center;\n padding: 16px 24px;\n border-bottom: 1px solid #fafafa;\n transition: all 0.15s ease;\n}\n\n.entity-item:last-child {\n border-bottom: none;\n}\n\n.entity-item:hover {\n background: rgba(33, 150, 243, 0.02);\n}\n\n.entity-item.is-new {\n background: rgba(76, 175, 80, 0.05);\n border-left: 3px solid #4caf50;\n}\n\n.entity-item.has-changes {\n background: rgba(0, 188, 212, 0.05);\n border-left: 3px solid #00bcd4;\n}\n\n.entity-item .entity-info {\n display: flex;\n align-items: center;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-icon {\n width: 40px;\n height: 40px;\n background: rgba(33, 150, 243, 0.1);\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #2196f3;\n flex-shrink: 0;\n}\n\n.entity-item .entity-info .entity-details {\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-details .entity-name {\n font-weight: 500;\n color: #212121;\n margin-bottom: 2px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon {\n color: #00bcd4;\n font-size: 14px;\n cursor: help;\n opacity: 0.7;\n transition: all 0.15s ease;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon:hover {\n opacity: 1;\n transform: scale(1.1);\n}\n\n.entity-item .entity-info .entity-details .entity-description {\n font-size: 12px;\n color: #666666;\n line-height: 1.4;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.entity-item .entity-config {\n display: flex;\n align-items: center;\n gap: 24px;\n margin: 0 24px;\n}\n\n.entity-item .entity-config .config-item .config-label {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.entity-item .entity-config .config-item .config-label .config-checkbox {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.entity-item .entity-config .sequence-badge {\n background: #2196f3;\n color: #ffffff;\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n min-width: 24px;\n text-align: center;\n}\n\n.entity-item .entity-actions {\n display: flex;\n gap: 4px;\n}\n\n.no-entities,\n.all-assigned {\n text-align: center;\n padding: 32px;\n color: #666666;\n}\n\n.no-entities i,\n.all-assigned i {\n font-size: 2rem;\n color: #bdbdbd;\n margin-bottom: 16px;\n}\n\n.no-entities p,\n.all-assigned p {\n margin: 0 0 4px 0;\n font-weight: 500;\n}\n\n.no-entities .empty-subtext,\n.all-assigned .empty-subtext {\n font-size: 12px;\n color: #9e9e9e;\n margin: 0;\n}\n\n.available-entities .entities-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 8px;\n}\n\n@media (max-width: 640px) {\n .available-entities .entities-grid {\n grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\n }\n}\n\n.entity-chip {\n padding: 16px;\n border: 1px solid #bdbdbd;\n border-radius: 8px;\n background: #ffffff;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.entity-chip .chip-content {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-chip .chip-content i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.entity-chip .chip-content .chip-name {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n.entity-chip:hover {\n border-color: #2196f3;\n background: rgba(33, 150, 243, 0.05);\n transform: translateY(-1px);\n box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n}\n\n/* Info Grid for System Information */\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n@media (max-width: 640px) {\n .info-grid {\n grid-template-columns: 1fr;\n }\n}\n\n.info-grid .info-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.info-grid .info-item .info-label {\n font-size: 11px;\n color: #666666;\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.info-grid .info-item .info-value {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n/* Enhanced Button Icons */\n.btn-icon {\n width: 32px;\n height: 32px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\n.btn-icon:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.btn-icon.btn-neutral {\n background: rgba(189, 189, 189, 0.1);\n color: #666666;\n}\n\n.btn-icon.btn-neutral:hover:not(:disabled) {\n background: rgba(189, 189, 189, 0.2);\n color: #212121;\n transform: scale(1.05);\n}\n\n.btn-icon.btn-danger {\n background: rgba(244, 67, 54, 0.1);\n color: #f44336;\n}\n\n.btn-icon.btn-danger:hover:not(:disabled) {\n background: rgba(244, 67, 54, 0.2);\n transform: scale(1.05);\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n :host ::ng-deep .k-window {\n margin: 16px;\n max-width: none;\n width: calc(100vw - 24px) !important;\n height: calc(100vh - 24px) !important;\n }\n \n :host ::ng-deep .k-window-titlebar {\n padding: 16px 24px;\n min-height: 60px;\n }\n \n .dialog-content .content-section {\n padding: 24px 16px;\n }\n \n .dialog-footer {\n padding: 16px 24px;\n flex-direction: column-reverse;\n }\n \n .dialog-footer .btn {\n width: 100%;\n justify-content: center;\n }\n}"] }]
|
|
570
|
+
args: [{ selector: 'mj-application-dialog', encapsulation: ViewEncapsulation.None, template: "<kendo-window\n *ngIf=\"visible\"\n [width]=\"900\"\n [height]=\"700\"\n [resizable]=\"false\"\n [draggable]=\"true\"\n [keepContent]=\"true\"\n (close)=\"onCancel()\"\n kendoWindowContainer>\n \n <kendo-window-titlebar>\n <div class=\"dialog-header\">\n <h2 class=\"dialog-title\">\n <i class=\"fa-solid fa-grid-2\"></i>\n {{ isEditMode ? 'Edit Application' : 'Create New Application' }}\n </h2>\n <p class=\"dialog-subtitle\">\n {{ isEditMode ? 'Update application information and settings' : 'Add a new application to the system' }}\n </p>\n </div>\n </kendo-window-titlebar>\n\n <div class=\"dialog-content\">\n <form [formGroup]=\"applicationForm\" (ngSubmit)=\"onSubmit()\">\n \n @if (error) {\n <div class=\"content-section\">\n <div class=\"alert alert-error\">\n <i class=\"fa-solid fa-exclamation-triangle\"></i>\n <div>{{ error }}</div>\n </div>\n </div>\n }\n\n <!-- Basic Information Section -->\n <div class=\"content-section\">\n <div class=\"form-section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-info-circle\"></i>\n Application Information\n </h3>\n <p class=\"section-description\">Define the application's basic properties</p>\n </div>\n \n <div class=\"form-grid\">\n <div class=\"form-field\">\n <label class=\"field-label required\" for=\"name\">Application Name</label>\n <input \n id=\"name\"\n type=\"text\" \n class=\"field-input\" \n formControlName=\"name\"\n placeholder=\"My Application\"\n [class.error]=\"applicationForm.get('name')?.invalid && applicationForm.get('name')?.touched\"\n />\n @if (applicationForm.get('name')?.invalid && applicationForm.get('name')?.touched) {\n <div class=\"field-error\">\n <i class=\"fa-solid fa-exclamation-circle\"></i>\n @if (applicationForm.get('name')?.errors?.['required']) {\n Application name is required\n }\n @if (applicationForm.get('name')?.errors?.['maxlength']) {\n Application name cannot exceed 100 characters\n }\n </div>\n }\n </div>\n\n <div class=\"form-field\">\n <label class=\"field-label\" for=\"description\">Description</label>\n <textarea \n id=\"description\"\n class=\"field-textarea\" \n formControlName=\"description\"\n placeholder=\"Describe the application's purpose and functionality...\"\n rows=\"6\"\n ></textarea>\n <div class=\"field-hint\">\n Provide a clear description of what this application does and its main features.\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Entity Management Section -->\n <div class=\"content-section\">\n <div class=\"form-section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-database\"></i>\n Application Entities\n </h3>\n <p class=\"section-description\">Manage which entities are included in this application</p>\n </div>\n \n <div class=\"form-grid\">\n <!-- Assigned Entities -->\n @if (applicationEntities.length > 0) {\n <div class=\"assigned-entities\">\n <h4 class=\"subsection-title\">Assigned Entities ({{ applicationEntities.length }})</h4>\n <div class=\"entities-list\">\n @for (config of applicationEntities; track config.entity.ID; let i = $index) {\n <div class=\"entity-item\" [class.is-new]=\"config.isNew\" [class.has-changes]=\"config.hasChanges\">\n <div class=\"entity-info\">\n <div class=\"entity-icon\">\n <i class=\"fa-solid fa-table\"></i>\n </div>\n <div class=\"entity-details\">\n <div class=\"entity-name\">\n {{ config.entity.Name }}\n @if (config.entity.Description) {\n <i class=\"fa-solid fa-info-circle entity-info-icon\" \n [title]=\"config.entity.Description\"\n [attr.data-tooltip]=\"config.entity.Description\"></i>\n }\n </div>\n </div>\n </div>\n \n <div class=\"entity-config\">\n <div class=\"config-item\">\n <label class=\"config-label\">\n <input \n type=\"checkbox\" \n [(ngModel)]=\"config.defaultForNewUser\"\n [ngModelOptions]=\"{standalone: true}\"\n (change)=\"onDefaultForNewUserChange(config)\"\n class=\"config-checkbox\"\n />\n <span class=\"checkbox-text\">Default for new users</span>\n </label>\n </div>\n <div class=\"sequence-badge\">{{ config.sequence }}</div>\n </div>\n \n <div class=\"entity-actions\">\n <button \n type=\"button\" \n class=\"btn-icon btn-neutral\"\n (click)=\"moveEntityUp(i)\"\n [disabled]=\"i === 0\"\n title=\"Move up\"\n >\n <i class=\"fa-solid fa-chevron-up\"></i>\n </button>\n <button \n type=\"button\" \n class=\"btn-icon btn-neutral\"\n (click)=\"moveEntityDown(i)\"\n [disabled]=\"i === applicationEntities.length - 1\"\n title=\"Move down\"\n >\n <i class=\"fa-solid fa-chevron-down\"></i>\n </button>\n <button \n type=\"button\" \n class=\"btn-icon btn-danger\"\n (click)=\"removeEntity(config)\"\n title=\"Remove entity\"\n >\n <i class=\"fa-solid fa-times\"></i>\n </button>\n </div>\n </div>\n }\n </div>\n </div>\n } @else {\n <div class=\"no-entities\">\n <i class=\"fa-solid fa-database\"></i>\n <p>No entities assigned to this application</p>\n <p class=\"empty-subtext\">Add entities from the available list below</p>\n </div>\n }\n \n <!-- Available Entities -->\n @if (availableEntities.length > 0) {\n <div class=\"available-entities\">\n <h4 class=\"subsection-title\">Available Entities ({{ availableEntities.length }})</h4>\n <div class=\"entities-grid\">\n @for (entity of availableEntities; track entity.ID) {\n <div class=\"entity-chip\" (click)=\"addEntity(entity)\">\n <div class=\"chip-content\">\n <i class=\"fa-solid fa-plus\"></i>\n <span class=\"chip-name\">{{ entity.Name }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n } @else {\n <div class=\"all-assigned\">\n <i class=\"fa-solid fa-check-circle\"></i>\n <p>All entities have been assigned to this application</p>\n </div>\n }\n </div>\n </div>\n </div>\n\n <!-- Application Info Section -->\n @if (isEditMode) {\n <div class=\"content-section\">\n <div class=\"form-section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">\n <i class=\"fa-solid fa-info-circle\"></i>\n System Information\n </h3>\n <p class=\"section-description\">Application metadata and audit information</p>\n </div>\n \n <div class=\"form-grid\">\n <div class=\"info-grid\">\n <div class=\"info-item\">\n <span class=\"info-label\">Created:</span>\n <span class=\"info-value\">{{ data?.application?.__mj_CreatedAt | date:'medium' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Last Updated:</span>\n <span class=\"info-value\">{{ data?.application?.__mj_UpdatedAt | date:'medium' }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Application ID:</span>\n <span class=\"info-value\">{{ data?.application?.ID }}</span>\n </div>\n <div class=\"info-item\">\n <span class=\"info-label\">Total Entities:</span>\n <span class=\"info-value\">{{ applicationEntities.length }}</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n }\n\n <div class=\"dialog-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"onCancel()\">\n <i class=\"fa-solid fa-times\"></i>\n Cancel\n </button>\n <button \n type=\"submit\" \n class=\"btn btn-primary\" \n [disabled]=\"applicationForm.invalid || isLoading\"\n >\n @if (isLoading) {\n <i class=\"fa-solid fa-spinner fa-spin\"></i>\n Saving...\n } @else {\n <i class=\"fa-solid fa-save\"></i>\n {{ isEditMode ? 'Update Application' : 'Create Application' }}\n }\n </button>\n </div>\n </form>\n </div>\n</kendo-window>", styles: ["/* Modern Dialog Styling - Matching Dashboard Design */\n:host ::ng-deep .k-window {\n border: none;\n border-radius: 12px;\n box-shadow: 0 19px 38px rgba(0, 0, 0, 0.30), 0 15px 12px rgba(0, 0, 0, 0.22);\n background: #ffffff;\n overflow: hidden;\n}\n\n:host ::ng-deep .k-window-titlebar {\n background: linear-gradient(135deg, #2196f3 0%, #1976d2 100%);\n border: none;\n padding: 24px 32px;\n min-height: 70px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-title {\n display: none; /* Hide default title */\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions {\n position: absolute;\n top: 24px;\n right: 24px;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button {\n background: rgba(255, 255, 255, 0.1);\n border: 1px solid rgba(255, 255, 255, 0.2);\n color: #ffffff;\n border-radius: 6px;\n width: 32px;\n height: 32px;\n min-width: auto;\n}\n\n:host ::ng-deep .k-window-titlebar .k-window-actions .k-button:hover {\n background: rgba(255, 255, 255, 0.2);\n border-color: rgba(255, 255, 255, 0.3);\n}\n\n:host ::ng-deep .k-window-content {\n padding: 0;\n background: #ffffff;\n}\n\n/* Custom Title Bar */\n.dialog-header {\n position: relative;\n color: #ffffff;\n}\n\n.dialog-header .dialog-title {\n font-size: 18px;\n font-weight: 600;\n display: flex;\n align-items: center;\n gap: 16px;\n margin: 0;\n}\n\n.dialog-header .dialog-title i {\n width: 24px;\n height: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgba(255, 255, 255, 0.15);\n border-radius: 6px;\n font-size: 14px;\n}\n\n.dialog-header .dialog-subtitle {\n margin: 4px 0 0 0;\n font-size: 12px;\n opacity: 0.85;\n font-weight: 400;\n}\n\n/* Modal Content Areas */\n.dialog-content {\n padding: 0;\n background: #ffffff;\n}\n\n.dialog-content .content-section {\n padding: 32px;\n}\n\n.dialog-content .content-section:not(:last-child) {\n border-bottom: 1px solid #e0e0e0;\n}\n\n.dialog-footer {\n padding: 24px 32px;\n background: #fafafa;\n border-top: 1px solid #e0e0e0;\n display: flex;\n justify-content: flex-end;\n gap: 16px;\n}\n\n/* Form Sections */\n.form-section .section-header {\n margin-bottom: 24px;\n}\n\n.form-section .section-header .section-title {\n font-size: 16px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 4px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.form-section .section-header .section-title i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.form-section .section-header .section-description {\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.form-grid {\n display: grid;\n gap: 24px;\n}\n\n.form-row {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 24px;\n}\n\n@media (max-width: 640px) {\n .form-row {\n grid-template-columns: 1fr;\n gap: 16px;\n }\n}\n\n/* Modern Form Fields */\n.form-field {\n margin-bottom: 24px;\n}\n\n.form-field:last-child {\n margin-bottom: 0;\n}\n\n.form-field .field-label {\n display: block;\n font-size: 12px;\n font-weight: 500;\n color: #212121;\n margin-bottom: 8px;\n}\n\n.form-field .field-label.required::after {\n content: ' *';\n color: #f44336;\n}\n\n.form-field .field-input,\n.form-field .field-select,\n.form-field .field-textarea {\n width: 100%;\n padding: 0 16px;\n border: 1px solid #bdbdbd;\n border-radius: 6px;\n font-size: 14px;\n background: #ffffff;\n transition: all 0.15s ease;\n}\n\n.form-field .field-input:focus,\n.form-field .field-select:focus,\n.form-field .field-textarea:focus {\n outline: none;\n border-color: #2196f3;\n box-shadow: 0 0 0 3px rgba(33, 150, 243, 0.1);\n}\n\n.form-field .field-input.error,\n.form-field .field-select.error,\n.form-field .field-textarea.error {\n border-color: #f44336;\n}\n\n.form-field .field-input.error:focus,\n.form-field .field-select.error:focus,\n.form-field .field-textarea.error:focus {\n border-color: #f44336;\n box-shadow: 0 0 0 3px rgba(244, 67, 54, 0.1);\n}\n\n.form-field .field-input::placeholder,\n.form-field .field-select::placeholder,\n.form-field .field-textarea::placeholder {\n color: #9e9e9e;\n}\n\n.form-field .field-input,\n.form-field .field-select {\n height: 36px;\n}\n\n.form-field .field-textarea {\n min-height: 100px;\n padding: 16px;\n resize: vertical;\n line-height: 1.4;\n}\n\n.form-field .field-select {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e\");\n background-position: right 16px center;\n background-repeat: no-repeat;\n background-size: 16px;\n padding-right: calc(16px + 24px);\n appearance: none;\n cursor: pointer;\n}\n\n.form-field .field-error {\n margin-top: 8px;\n font-size: 11px;\n color: #f44336;\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.form-field .field-error i {\n font-size: 10px;\n}\n\n.form-field .field-hint {\n margin-top: 8px;\n font-size: 11px;\n color: #666666;\n line-height: 1.4;\n}\n\n/* Alert Messages */\n.alert {\n padding: 16px 24px;\n border-radius: 8px;\n margin-bottom: 24px;\n display: flex;\n align-items: flex-start;\n gap: 16px;\n}\n\n.alert i {\n font-size: 16px;\n flex-shrink: 0;\n margin-top: 2px;\n}\n\n.alert.alert-error {\n background: rgba(244, 67, 54, 0.1);\n border: 1px solid rgba(244, 67, 54, 0.2);\n color: #c62828;\n}\n\n.alert.alert-error i {\n color: #f44336;\n}\n\n.alert.alert-warning {\n background: rgba(255, 193, 7, 0.1);\n border: 1px solid rgba(255, 193, 7, 0.2);\n color: #b7800d;\n}\n\n.alert.alert-warning i {\n color: #ffc107;\n}\n\n.alert.alert-info {\n background: rgba(0, 188, 212, 0.1);\n border: 1px solid rgba(0, 188, 212, 0.2);\n color: #00838f;\n}\n\n.alert.alert-info i {\n color: #00bcd4;\n}\n\n/* Button Styles */\n.dialog-footer .btn {\n padding: 8px 24px;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n border: 1px solid transparent;\n cursor: pointer;\n transition: all 0.15s ease;\n display: inline-flex;\n align-items: center;\n gap: 8px;\n min-height: 36px;\n}\n\n.dialog-footer .btn:disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n.dialog-footer .btn:disabled i.fa-spinner {\n animation: spin 1s linear infinite;\n}\n\n.dialog-footer .btn.btn-secondary {\n background: #ffffff;\n color: #666666;\n border-color: #bdbdbd;\n}\n\n.dialog-footer .btn.btn-secondary:hover:not(:disabled) {\n background: #f8f9fa;\n border-color: #757575;\n color: #212121;\n}\n\n.dialog-footer .btn.btn-primary {\n background: #2196f3;\n color: #ffffff;\n}\n\n.dialog-footer .btn.btn-primary:hover:not(:disabled) {\n background: #1976d2;\n box-shadow: 0 2px 8px rgba(33, 150, 243, 0.2);\n transform: translateY(-1px);\n}\n\n@keyframes spin {\n from { transform: rotate(0deg); }\n to { transform: rotate(360deg); }\n}\n\n/* Entity Management Styles */\n.subsection-title {\n font-size: 14px;\n font-weight: 600;\n color: #212121;\n margin: 0 0 16px 0;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.assigned-entities {\n margin-bottom: 32px;\n}\n\n.assigned-entities .entities-list {\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n overflow: hidden;\n background: #ffffff;\n}\n\n.entity-item {\n display: flex;\n align-items: center;\n padding: 16px 24px;\n border-bottom: 1px solid #fafafa;\n transition: all 0.15s ease;\n}\n\n.entity-item:last-child {\n border-bottom: none;\n}\n\n.entity-item:hover {\n background: rgba(33, 150, 243, 0.02);\n}\n\n.entity-item.is-new {\n background: rgba(76, 175, 80, 0.05);\n border-left: 3px solid #4caf50;\n}\n\n.entity-item.has-changes {\n background: rgba(0, 188, 212, 0.05);\n border-left: 3px solid #00bcd4;\n}\n\n.entity-item .entity-info {\n display: flex;\n align-items: center;\n gap: 16px;\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-icon {\n width: 40px;\n height: 40px;\n background: rgba(33, 150, 243, 0.1);\n border-radius: 6px;\n display: flex;\n align-items: center;\n justify-content: center;\n color: #2196f3;\n flex-shrink: 0;\n}\n\n.entity-item .entity-info .entity-details {\n flex: 1;\n min-width: 0;\n}\n\n.entity-item .entity-info .entity-details .entity-name {\n font-weight: 500;\n color: #212121;\n margin-bottom: 2px;\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon {\n color: #00bcd4;\n font-size: 14px;\n cursor: help;\n opacity: 0.7;\n transition: all 0.15s ease;\n}\n\n.entity-item .entity-info .entity-details .entity-name .entity-info-icon:hover {\n opacity: 1;\n transform: scale(1.1);\n}\n\n.entity-item .entity-info .entity-details .entity-description {\n font-size: 12px;\n color: #666666;\n line-height: 1.4;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.entity-item .entity-config {\n display: flex;\n align-items: center;\n gap: 24px;\n margin: 0 24px;\n}\n\n.entity-item .entity-config .config-item .config-label {\n display: flex;\n align-items: center;\n gap: 8px;\n cursor: pointer;\n font-size: 12px;\n color: #666666;\n margin: 0;\n}\n\n.entity-item .entity-config .config-item .config-label .config-checkbox {\n width: 16px;\n height: 16px;\n cursor: pointer;\n}\n\n.entity-item .entity-config .sequence-badge {\n background: #2196f3;\n color: #ffffff;\n padding: 4px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n min-width: 24px;\n text-align: center;\n}\n\n.entity-item .entity-actions {\n display: flex;\n gap: 4px;\n}\n\n.no-entities,\n.all-assigned {\n text-align: center;\n padding: 32px;\n color: #666666;\n}\n\n.no-entities i,\n.all-assigned i {\n font-size: 2rem;\n color: #bdbdbd;\n margin-bottom: 16px;\n}\n\n.no-entities p,\n.all-assigned p {\n margin: 0 0 4px 0;\n font-weight: 500;\n}\n\n.no-entities .empty-subtext,\n.all-assigned .empty-subtext {\n font-size: 12px;\n color: #9e9e9e;\n margin: 0;\n}\n\n.available-entities .entities-grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\n gap: 8px;\n}\n\n@media (max-width: 640px) {\n .available-entities .entities-grid {\n grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\n }\n}\n\n.entity-chip {\n padding: 16px;\n border: 1px solid #bdbdbd;\n border-radius: 8px;\n background: #ffffff;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.entity-chip .chip-content {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.entity-chip .chip-content i {\n color: #2196f3;\n font-size: 14px;\n}\n\n.entity-chip .chip-content .chip-name {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n.entity-chip:hover {\n border-color: #2196f3;\n background: rgba(33, 150, 243, 0.05);\n transform: translateY(-1px);\n box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n}\n\n/* Info Grid for System Information */\n.info-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\n gap: 16px;\n}\n\n@media (max-width: 640px) {\n .info-grid {\n grid-template-columns: 1fr;\n }\n}\n\n.info-grid .info-item {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.info-grid .info-item .info-label {\n font-size: 11px;\n color: #666666;\n font-weight: 500;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.info-grid .info-item .info-value {\n font-size: 12px;\n color: #212121;\n font-weight: 500;\n}\n\n/* Enhanced Button Icons */\n.btn-icon {\n width: 32px;\n height: 32px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.15s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\n.btn-icon:disabled {\n opacity: 0.4;\n cursor: not-allowed;\n}\n\n.btn-icon.btn-neutral {\n background: rgba(189, 189, 189, 0.1);\n color: #666666;\n}\n\n.btn-icon.btn-neutral:hover:not(:disabled) {\n background: rgba(189, 189, 189, 0.2);\n color: #212121;\n transform: scale(1.05);\n}\n\n.btn-icon.btn-danger {\n background: rgba(244, 67, 54, 0.1);\n color: #f44336;\n}\n\n.btn-icon.btn-danger:hover:not(:disabled) {\n background: rgba(244, 67, 54, 0.2);\n transform: scale(1.05);\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n :host ::ng-deep .k-window {\n margin: 16px;\n max-width: none;\n width: calc(100vw - 24px) !important;\n height: calc(100vh - 24px) !important;\n }\n \n :host ::ng-deep .k-window-titlebar {\n padding: 16px 24px;\n min-height: 60px;\n }\n \n .dialog-content .content-section {\n padding: 24px 16px;\n }\n \n .dialog-footer {\n padding: 16px 24px;\n flex-direction: column-reverse;\n }\n \n .dialog-footer .btn {\n width: 100%;\n justify-content: center;\n }\n}"] }]
|
|
573
571
|
}], () => [], { data: [{
|
|
574
572
|
type: Input
|
|
575
573
|
}], visible: [{
|
|
@@ -580,5 +578,5 @@ export class ApplicationDialogComponent {
|
|
|
580
578
|
type: HostListener,
|
|
581
579
|
args: ['document:keydown.escape', ['$event']]
|
|
582
580
|
}] }); })();
|
|
583
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ApplicationDialogComponent, { className: "ApplicationDialogComponent", filePath: "src/lib/application-management/application-dialog/application-dialog.component.ts", lineNumber:
|
|
581
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ApplicationDialogComponent, { className: "ApplicationDialogComponent", filePath: "src/lib/application-management/application-dialog/application-dialog.component.ts", lineNumber: 33 }); })();
|
|
584
582
|
//# sourceMappingURL=application-dialog.component.js.map
|
package/dist/lib/application-management/application-dialog/application-dialog.component.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-dialog.component.js","sourceRoot":"","sources":["../../../../src/lib/application-management/application-dialog/application-dialog.component.ts","../../../../src/lib/application-management/application-dialog/application-dialog.component.html"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"application-dialog.component.js","sourceRoot":"","sources":["../../../../src/lib/application-management/application-dialog/application-dialog.component.ts","../../../../src/lib/application-management/application-dialog/application-dialog.component.html"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
3
|
import { ApplicationEntity, ApplicationEntityEntity } from '@memberjunction/core-entities';
|
|
4
|
+
import { BaseDashboard } from '@memberjunction/ng-shared';
|
|
4
5
|
import { ApplicationDialogData, ApplicationDialogResult } from './application-dialog/application-dialog.component';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
interface AppStats {
|
|
@@ -13,7 +14,7 @@ interface FilterOptions {
|
|
|
13
14
|
status: 'all' | 'active' | 'inactive';
|
|
14
15
|
search: string;
|
|
15
16
|
}
|
|
16
|
-
export declare class ApplicationManagementComponent implements
|
|
17
|
+
export declare class ApplicationManagementComponent extends BaseDashboard implements OnDestroy {
|
|
17
18
|
applications: ApplicationEntity[];
|
|
18
19
|
filteredApplications: ApplicationEntity[];
|
|
19
20
|
selectedApp: ApplicationEntity | null;
|
|
@@ -29,7 +30,8 @@ export declare class ApplicationManagementComponent implements OnInit, OnDestroy
|
|
|
29
30
|
private destroy$;
|
|
30
31
|
private metadata;
|
|
31
32
|
constructor();
|
|
32
|
-
|
|
33
|
+
protected initDashboard(): void;
|
|
34
|
+
protected loadData(): void;
|
|
33
35
|
ngOnDestroy(): void;
|
|
34
36
|
loadInitialData(): Promise<void>;
|
|
35
37
|
private loadApplications;
|
|
@@ -55,7 +57,7 @@ export declare class ApplicationManagementComponent implements OnInit, OnDestroy
|
|
|
55
57
|
getAppStatusLabel(app: ApplicationEntity): string;
|
|
56
58
|
refreshData(): void;
|
|
57
59
|
static ɵfac: i0.ɵɵFactoryDeclaration<ApplicationManagementComponent, never>;
|
|
58
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ApplicationManagementComponent, "mj-application-management", never, {}, {}, never, never,
|
|
60
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ApplicationManagementComponent, "mj-application-management", never, {}, {}, never, never, false, never>;
|
|
59
61
|
}
|
|
60
62
|
export {};
|
|
61
63
|
//# sourceMappingURL=application-management.component.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application-management.component.d.ts","sourceRoot":"","sources":["../../../src/lib/application-management/application-management.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,
|
|
1
|
+
{"version":3,"file":"application-management.component.d.ts","sourceRoot":"","sources":["../../../src/lib/application-management/application-management.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAW,eAAe,EAAE,MAAM,MAAM,CAAC;AAGhD,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,mDAAmD,CAAC;;AAEnH,UAAU,QAAQ;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,aAAa;IACrB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAMa,8BAA+B,SAAQ,aAAc,YAAW,SAAS;IAE7E,YAAY,EAAE,iBAAiB,EAAE,CAAM;IACvC,oBAAoB,EAAE,iBAAiB,EAAE,CAAM;IAC/C,WAAW,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAC7C,SAAS,UAAS;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG5B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAa;IAGhE,KAAK,EAAE,QAAQ,CAKpB;IAGK,QAAQ,iCAGZ;IAGI,qBAAqB,UAAS;IAC9B,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAQ;IAC3D,iBAAiB,UAAS;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE3C,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,QAAQ,CAAkB;;IAMlC,SAAS,CAAC,aAAa,IAAI,IAAI;IAI/B,SAAS,CAAC,QAAQ,IAAI,IAAI;IAIjB,WAAW,IAAI,IAAI;IAMf,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;YAwB/B,gBAAgB;YAWhB,uBAAuB;IAWrC,OAAO,CAAC,0BAA0B;IAYlC,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,YAAY;IAuBpB,OAAO,CAAC,cAAc;IAoBf,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAKlC,oBAAoB,CAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,UAAU,GAAG,IAAI;IAIjE,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAOnD,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIvC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIrC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,uBAAuB,EAAE;IAIxD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG;IAIpC,oBAAoB,IAAI,IAAI;IAO5B,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;IAQ7C,wBAAwB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI;IAKhD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBxC,yBAAyB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAUhE,UAAU,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM;IAK1C,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM;IAKjD,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,GAAG,MAAM;IAKjD,WAAW,IAAI,IAAI;yCA1Qf,8BAA8B;2CAA9B,8BAA8B;CA6Q1C"}
|