@acorex/modules 19.1.14 → 19.1.16
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/application-management/lib/menu.provider.d.ts +0 -1
- package/auth/lib/pages/account/avatar/avatar.component.d.ts +20 -0
- package/auth/lib/pages/account/profile/profile-slot.component.d.ts +2 -9
- package/auth/lib/pages/account/user-profile-card/user-profile-card.component.d.ts +26 -0
- package/fesm2022/{acorex-modules-application-management-module-designer.component-DjX4Ixc9.mjs → acorex-modules-application-management-module-designer.component-uLfQYtpy.mjs} +3 -3
- package/fesm2022/{acorex-modules-application-management-module-designer.component-DjX4Ixc9.mjs.map → acorex-modules-application-management-module-designer.component-uLfQYtpy.mjs.map} +1 -1
- package/fesm2022/acorex-modules-application-management.mjs +14 -21
- package/fesm2022/acorex-modules-application-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-BukQhL3i.mjs → acorex-modules-auth-acorex-modules-auth-DnTshxIU.mjs} +164 -36
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-DnTshxIU.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-app-chooser.component-Co9UVNs7.mjs → acorex-modules-auth-app-chooser.component-Dx-ehe1v.mjs} +6 -6
- package/fesm2022/acorex-modules-auth-app-chooser.component-Dx-ehe1v.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-login.module-DF8O2Xsc.mjs → acorex-modules-auth-login.module-DERpkzkP.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-DF8O2Xsc.mjs.map → acorex-modules-auth-login.module-DERpkzkP.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-master.layout-CzDJVkRY.mjs +23 -0
- package/fesm2022/acorex-modules-auth-master.layout-CzDJVkRY.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-password.component-4qadgU3K.mjs → acorex-modules-auth-password.component-B7P-Z5__.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-password.component-4qadgU3K.mjs.map → acorex-modules-auth-password.component-B7P-Z5__.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-C7dIOlgw.mjs → acorex-modules-auth-password.component-BeuD87_s.mjs} +5 -5
- package/fesm2022/{acorex-modules-auth-password.component-C7dIOlgw.mjs.map → acorex-modules-auth-password.component-BeuD87_s.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-routes-CGtWtEQI.mjs → acorex-modules-auth-routes-BtJMFRjd.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-CGtWtEQI.mjs.map → acorex-modules-auth-routes-BtJMFRjd.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-Cx3fK__H.mjs +83 -0
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-Cx3fK__H.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-BEsTVMeC.mjs → acorex-modules-auth-two-factor-code.component-YhAHhKIr.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-two-factor-code.component-BEsTVMeC.mjs.map → acorex-modules-auth-two-factor-code.component-YhAHhKIr.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-CqzFrEEK.mjs → acorex-modules-auth-two-factor.module-CC27kfrm.mjs} +3 -3
- package/fesm2022/{acorex-modules-auth-two-factor.module-CqzFrEEK.mjs.map → acorex-modules-auth-two-factor.module-CC27kfrm.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-conversation.mjs +9 -9
- package/fesm2022/acorex-modules-conversation.mjs.map +1 -1
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs +126 -0
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs.map +1 -0
- package/fesm2022/{acorex-modules-form-template-management-template.entity-C1xoo-tl.mjs → acorex-modules-form-template-management-template.entity-BpApQcvG.mjs} +18 -28
- package/fesm2022/acorex-modules-form-template-management-template.entity-BpApQcvG.mjs.map +1 -0
- package/fesm2022/acorex-modules-form-template-management.mjs +6 -6
- package/fesm2022/acorex-modules-form-template-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-notification-management.mjs +14 -14
- package/fesm2022/acorex-modules-notification-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-organization-managment-branch.entity-kuZxLStS.mjs +212 -0
- package/fesm2022/acorex-modules-organization-managment-branch.entity-kuZxLStS.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-department.entity-6imtSXqS.mjs → acorex-modules-organization-managment-department.entity-C1PxLx6p.mjs} +16 -3
- package/fesm2022/acorex-modules-organization-managment-department.entity-C1PxLx6p.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-managment-division.entity-DHVnrP38.mjs +212 -0
- package/fesm2022/acorex-modules-organization-managment-division.entity-DHVnrP38.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-managment-employee.entity-oo5Tyyp2.mjs +301 -0
- package/fesm2022/acorex-modules-organization-managment-employee.entity-oo5Tyyp2.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-employment.entity-BYwBhrym.mjs → acorex-modules-organization-managment-employment-type.entity-Cgbezwio.mjs} +23 -10
- package/fesm2022/acorex-modules-organization-managment-employment-type.entity-Cgbezwio.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-managment-org-chart.page-ubxepOmw.mjs +55 -0
- package/fesm2022/acorex-modules-organization-managment-org-chart.page-ubxepOmw.mjs.map +1 -0
- package/fesm2022/{acorex-modules-organization-managment-position.entity-CJNG3UPf.mjs → acorex-modules-organization-managment-position.entity-Bbb5KAkm.mjs} +15 -2
- package/fesm2022/acorex-modules-organization-managment-position.entity-Bbb5KAkm.mjs.map +1 -0
- package/fesm2022/acorex-modules-organization-managment.mjs +268 -149
- package/fesm2022/acorex-modules-organization-managment.mjs.map +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +115 -60
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-scheduler-job-management.mjs +2 -2
- package/fesm2022/acorex-modules-scheduler-job-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-security-management.mjs +8 -8
- package/fesm2022/acorex-modules-security-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-text-template-management.mjs +7 -7
- package/fesm2022/acorex-modules-text-template-management.mjs.map +1 -1
- package/organization-managment/index.d.ts +1 -6
- package/organization-managment/lib/const.d.ts +25 -1
- package/organization-managment/lib/entities/{employment/employment.module.d.ts → branch/branch.module.d.ts} +4 -4
- package/organization-managment/lib/entities/branch/branch.service.d.ts +10 -0
- package/organization-managment/lib/entities/branch/branch.types.d.ts +4 -0
- package/organization-managment/lib/entities/branch/index.d.ts +3 -0
- package/organization-managment/lib/entities/chart/chart.types.d.ts +12 -2
- package/organization-managment/lib/entities/chart/index.d.ts +3 -0
- package/organization-managment/lib/entities/company/index.d.ts +3 -0
- package/organization-managment/lib/entities/department/index.d.ts +3 -0
- package/organization-managment/lib/entities/division/division.entity.d.ts +3 -0
- package/organization-managment/lib/entities/division/division.module.d.ts +6 -0
- package/organization-managment/lib/entities/division/division.service.d.ts +10 -0
- package/organization-managment/lib/entities/division/division.types.d.ts +4 -0
- package/organization-managment/lib/entities/division/index.d.ts +3 -0
- package/organization-managment/lib/entities/employee/employee.entity.d.ts +3 -0
- package/organization-managment/lib/entities/employee/employee.module.d.ts +6 -0
- package/organization-managment/lib/entities/employee/employee.service.d.ts +10 -0
- package/organization-managment/lib/entities/employee/employee.types.d.ts +7 -0
- package/organization-managment/lib/entities/employee/index.d.ts +3 -0
- package/organization-managment/lib/entities/employment-type/employment-type.entity.d.ts +3 -0
- package/organization-managment/lib/entities/employment-type/employment-type.module.d.ts +6 -0
- package/organization-managment/lib/entities/employment-type/employment-type.service.d.ts +10 -0
- package/organization-managment/lib/entities/employment-type/employment-type.types.d.ts +4 -0
- package/organization-managment/lib/entities/employment-type/index.d.ts +3 -0
- package/organization-managment/lib/entities/index.d.ts +8 -5
- package/organization-managment/lib/entities/position/index.d.ts +3 -0
- package/organization-managment/lib/menu.provider.d.ts +1 -0
- package/organization-managment/lib/organization-managment.module.d.ts +7 -5
- package/organization-managment/lib/pages/org-chart/org-chart.page.d.ts +8 -0
- package/package.json +5 -5
- package/platform-management/lib/entities/app-version/check-version.d.ts +11 -0
- package/platform-management/lib/entities/app-version/workflow/test/test.component.d.ts +13 -4
- package/platform-management/lib/platform-management.module.d.ts +5 -0
- package/fesm2022/acorex-modules-auth-acorex-modules-auth-BukQhL3i.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-app-chooser.component-Co9UVNs7.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-master.layout-Bql93CSW.mjs +0 -23
- package/fesm2022/acorex-modules-auth-master.layout-Bql93CSW.mjs.map +0 -1
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CFT3i6iA.mjs +0 -83
- package/fesm2022/acorex-modules-auth-tenant-chooser.component-CFT3i6iA.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-vh_xdN7Z.mjs +0 -126
- package/fesm2022/acorex-modules-form-template-management-template-picker.component-vh_xdN7Z.mjs.map +0 -1
- package/fesm2022/acorex-modules-form-template-management-template.entity-C1xoo-tl.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-chart-design.page-eE-nOaMw.mjs +0 -305
- package/fesm2022/acorex-modules-organization-managment-chart-design.page-eE-nOaMw.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-department.entity-6imtSXqS.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-employment.entity-BYwBhrym.mjs.map +0 -1
- package/fesm2022/acorex-modules-organization-managment-position.entity-CJNG3UPf.mjs.map +0 -1
- package/organization-managment/lib/entities/employment/employment.service.d.ts +0 -10
- package/organization-managment/lib/entities/employment/employment.types.d.ts +0 -4
- package/organization-managment/lib/pages/chart-design/add-item/add-item.component.d.ts +0 -14
- package/organization-managment/lib/pages/chart-design/chart-design.page.d.ts +0 -26
- package/organization-managment/lib/pages/chart-design/chart-design.service.d.ts +0 -23
- package/organization-managment/lib/pages/chart-design/chart.type.d.ts +0 -9
- package/organization-managment/lib/workflows/chart.workflow.d.ts +0 -12
- /package/organization-managment/lib/entities/{employment/employment.entity.d.ts → branch/branch.entity.d.ts} +0 -0
package/fesm2022/acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs
ADDED
@@ -0,0 +1,126 @@
|
|
1
|
+
import * as i4 from '@acorex/components/button';
|
2
|
+
import { AXButtonModule } from '@acorex/components/button';
|
3
|
+
import * as i2 from '@acorex/components/common';
|
4
|
+
import { AXCommonModule } from '@acorex/components/common';
|
5
|
+
import * as i5 from '@acorex/components/decorators';
|
6
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
7
|
+
import { AXBasePageComponent } from '@acorex/components/page';
|
8
|
+
import * as i7 from '@acorex/components/search-box';
|
9
|
+
import { AXSearchBoxModule } from '@acorex/components/search-box';
|
10
|
+
import * as i6 from '@acorex/components/tabs';
|
11
|
+
import { AXTabsModule } from '@acorex/components/tabs';
|
12
|
+
import { AXPSettingService, AXPSettingScope, AXPStickyDirective } from '@acorex/platform/common';
|
13
|
+
import * as i1 from '@angular/common';
|
14
|
+
import { CommonModule } from '@angular/common';
|
15
|
+
import * as i0 from '@angular/core';
|
16
|
+
import { inject, model, signal, computed, Component, ViewEncapsulation } from '@angular/core';
|
17
|
+
import * as i3 from '@angular/forms';
|
18
|
+
import { FormsModule } from '@angular/forms';
|
19
|
+
import { orderBy, uniqBy } from 'lodash-es';
|
20
|
+
|
21
|
+
class AXPTemplateWidgetPickerComponent extends AXBasePageComponent {
|
22
|
+
constructor() {
|
23
|
+
super(...arguments);
|
24
|
+
this.settingService = inject(AXPSettingService);
|
25
|
+
this.pinnedSettingKey = 'forms:templates:picker:pinned';
|
26
|
+
this.searchTerm = model('');
|
27
|
+
// Signals
|
28
|
+
this.widgets = [];
|
29
|
+
this.displayWidgets = signal([]);
|
30
|
+
// Signal to track selected widgets
|
31
|
+
this.selectedWidgets = signal([]);
|
32
|
+
// Computed for filtered and ordered widget list
|
33
|
+
this.orderedList = computed(() => {
|
34
|
+
const search = this.searchTerm().toLowerCase();
|
35
|
+
const selectedTabName = this.selectedTab().name;
|
36
|
+
return orderBy(this.displayWidgets().filter((w) => {
|
37
|
+
const matchesTab = selectedTabName === 'all' || w.group.name === selectedTabName;
|
38
|
+
const matchesSearch = !search || w.title.toLowerCase().includes(search) || w.description?.toLowerCase().includes(search);
|
39
|
+
return matchesTab && matchesSearch;
|
40
|
+
}), ['pinned', 'title'], ['desc', 'asc']);
|
41
|
+
});
|
42
|
+
// Pinned and regular lists
|
43
|
+
this.pinnedList = computed(() => this.orderedList().filter((c) => c.pinned));
|
44
|
+
this.regularList = computed(() => this.orderedList().filter((c) => !c.pinned));
|
45
|
+
this.tabs = computed(() => {
|
46
|
+
const uniqueOrderedWidgets = orderBy(uniqBy([{ name: 'all', title: 'All', order: 0 }, ...this.widgets.map(c => c.group)], (c) => c.name // or another property to ensure uniqueness
|
47
|
+
), (c) => c.order);
|
48
|
+
return uniqueOrderedWidgets;
|
49
|
+
});
|
50
|
+
this.currentTabIndex = signal(0);
|
51
|
+
this.selectedTab = computed(() => this.tabs()[this.currentTabIndex()]);
|
52
|
+
}
|
53
|
+
async ngOnInit() {
|
54
|
+
super.ngOnInit();
|
55
|
+
const pinnedWidgets = (await this.settingService.get(this.pinnedSettingKey)) || [];
|
56
|
+
this.displayWidgets.set(this.widgets.map((c) => ({ ...c, pinned: pinnedWidgets.includes(c.id), icon: c.icon ?? 'fa-solid fa-file-invoice' })));
|
57
|
+
}
|
58
|
+
handleTabChange(event) {
|
59
|
+
const indx = event.index;
|
60
|
+
if (this.currentTabIndex() != indx) {
|
61
|
+
this.currentTabIndex.set(indx);
|
62
|
+
}
|
63
|
+
}
|
64
|
+
handleClick(event, widget) {
|
65
|
+
if (event.ctrlKey) {
|
66
|
+
const currentSelection = this.selectedWidgets();
|
67
|
+
const isAlreadySelected = currentSelection.some((w) => w === widget);
|
68
|
+
if (isAlreadySelected) {
|
69
|
+
// Deselect widget if already selected
|
70
|
+
this.selectedWidgets.set(currentSelection.filter((w) => w !== widget));
|
71
|
+
}
|
72
|
+
else {
|
73
|
+
// Add widget to selection
|
74
|
+
this.selectedWidgets.set([...currentSelection, widget]);
|
75
|
+
}
|
76
|
+
}
|
77
|
+
else {
|
78
|
+
// If CTRL is not pressed, select only the clicked widget
|
79
|
+
this.close({ widgets: [widget] });
|
80
|
+
}
|
81
|
+
}
|
82
|
+
async handlePinClick(e, widget) {
|
83
|
+
e.stopPropagation();
|
84
|
+
widget.pinned = !widget.pinned;
|
85
|
+
// Get the current list of pinned widgets from settings
|
86
|
+
let pinnedWidgets = (await this.settingService.get(this.pinnedSettingKey)) || [];
|
87
|
+
// Update the list of pinned widgets based on the pinned status
|
88
|
+
if (widget.pinned) {
|
89
|
+
if (!pinnedWidgets.includes(widget.id)) {
|
90
|
+
pinnedWidgets.push(widget.id);
|
91
|
+
}
|
92
|
+
}
|
93
|
+
else {
|
94
|
+
pinnedWidgets = pinnedWidgets.filter((name) => name !== widget.id);
|
95
|
+
}
|
96
|
+
// Save the updated list of pinned widgets
|
97
|
+
await this.settingService.scope(AXPSettingScope.User).set(this.pinnedSettingKey, pinnedWidgets);
|
98
|
+
// Trigger a re-render of the widgets
|
99
|
+
this.displayWidgets.set([...this.displayWidgets()]);
|
100
|
+
}
|
101
|
+
// Check if a widget is selected
|
102
|
+
isWidgetSelected(widget) {
|
103
|
+
return this.selectedWidgets().includes(widget);
|
104
|
+
}
|
105
|
+
handleConfirmSelection() {
|
106
|
+
this.close({ widgets: this.selectedWidgets() });
|
107
|
+
}
|
108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPTemplateWidgetPickerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXPTemplateWidgetPickerComponent, isStandalone: true, selector: "ng-component", inputs: { searchTerm: { classPropertyName: "searchTerm", publicName: "searchTerm", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { searchTerm: "searchTermChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs();track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface-lowest ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 dark:hover:ax-bg-primary-800 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-on-surface group-hover:ax-bg-primary-200\"\n [class.ax-bg-primary-200]=\"isWidgetSelected(w)\">\n <i [ngClass]=\"w.icon\" class=\"ax-text-lg group-hover:ax-text-primary-700 ax-text-on-surface-fore\"\n [class.ax-text-primary-700]=\"isWidgetSelected(w)\"></i>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1 ax-flex-1\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <div class=\"ax-font-semibold ax-text-sm\">{{w.title}}</div>\n <div (click)=\"handlePinClick($event,w)\">\n @if (w.pinned) {\n <i class=\"fa-solid fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45\"></i>\n }\n @else {\n <i\n class=\"fa-light fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45 ax-invisible group-hover:ax-visible\"></i>\n }\n </div>\n </div>\n <span class=\"ax-text-xs ax-text-neutral-400 ax-truncate\">\n {{w.description}}\n </span>\n </div>\n </div>\n </ng-template>\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of pinnedList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n @if(pinnedList().length)\n {\n <hr class=\"ax-my-4 ax-border-dashed\">\n }\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of regularList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n </div>\n </div>\n</div>\n@if(selectedWidgets().length)\n{\n<ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" color=\"primary\" text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"></ax-button>\n </ax-suffix>\n</ax-footer>\n}", styles: [".selected-widget{border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-primary-500),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-primary-100),var(--tw-bg-opacity, 1))}.selected-widget i{--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity, 1))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i2.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i5.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i5.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i6.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i6.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i7.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "directive", type: AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
110
|
+
}
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXPTemplateWidgetPickerComponent, decorators: [{
|
112
|
+
type: Component,
|
113
|
+
args: [{ imports: [
|
114
|
+
CommonModule,
|
115
|
+
AXCommonModule,
|
116
|
+
FormsModule,
|
117
|
+
AXButtonModule,
|
118
|
+
AXDecoratorModule,
|
119
|
+
AXTabsModule,
|
120
|
+
AXSearchBoxModule,
|
121
|
+
AXPStickyDirective,
|
122
|
+
], encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs();track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface-lowest ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 dark:hover:ax-bg-primary-800 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-on-surface group-hover:ax-bg-primary-200\"\n [class.ax-bg-primary-200]=\"isWidgetSelected(w)\">\n <i [ngClass]=\"w.icon\" class=\"ax-text-lg group-hover:ax-text-primary-700 ax-text-on-surface-fore\"\n [class.ax-text-primary-700]=\"isWidgetSelected(w)\"></i>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1 ax-flex-1\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <div class=\"ax-font-semibold ax-text-sm\">{{w.title}}</div>\n <div (click)=\"handlePinClick($event,w)\">\n @if (w.pinned) {\n <i class=\"fa-solid fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45\"></i>\n }\n @else {\n <i\n class=\"fa-light fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45 ax-invisible group-hover:ax-visible\"></i>\n }\n </div>\n </div>\n <span class=\"ax-text-xs ax-text-neutral-400 ax-truncate\">\n {{w.description}}\n </span>\n </div>\n </div>\n </ng-template>\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of pinnedList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n @if(pinnedList().length)\n {\n <hr class=\"ax-my-4 ax-border-dashed\">\n }\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of regularList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n </div>\n </div>\n</div>\n@if(selectedWidgets().length)\n{\n<ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" color=\"primary\" text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"></ax-button>\n </ax-suffix>\n</ax-footer>\n}", styles: [".selected-widget{border-width:1px;--tw-border-opacity: 1;border-color:rgba(var(--ax-sys-color-primary-500),var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgba(var(--ax-sys-color-primary-100),var(--tw-bg-opacity, 1))}.selected-widget i{--tw-text-opacity: 1;color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity, 1))}\n"] }]
|
123
|
+
}] });
|
124
|
+
|
125
|
+
export { AXPTemplateWidgetPickerComponent };
|
126
|
+
//# sourceMappingURL=acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs.map
|
package/fesm2022/acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/components/widgets/template-picker/template-picker.component.ts","../../../../libs/modules/form-template-management/src/lib/components/widgets/template-picker/template-picker.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXCommonModule } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXTabsModule, AXTabStripChangedEvent } from '@acorex/components/tabs';\nimport { AXPSettingScope, AXPSettingService, AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPWidgetGroup } from '@acorex/platform/layout/builder';\nimport { CommonModule } from '@angular/common';\nimport { Component, computed, inject, model, signal, ViewEncapsulation } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { orderBy, uniqBy } from 'lodash-es';\nimport { AXPTemplateWidgetListItem } from './template.provider';\n\nexport interface AXPDisplayWidgetProvided extends AXPTemplateWidgetListItem {\n pinned: boolean;\n}\n\n@Component({\n imports: [\n CommonModule,\n AXCommonModule,\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTabsModule,\n AXSearchBoxModule,\n AXPStickyDirective,\n ],\n templateUrl: './template-picker.component.html',\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./template-picker.component.scss']\n})\nexport class AXPTemplateWidgetPickerComponent extends AXBasePageComponent {\n private settingService = inject(AXPSettingService);\n\n private readonly pinnedSettingKey = 'forms:templates:picker:pinned';\n\n protected searchTerm = model('');\n\n // Signals\n private widgets: AXPDisplayWidgetProvided[] = [];\n private displayWidgets = signal<AXPDisplayWidgetProvided[]>([]);\n\n // Signal to track selected widgets\n protected selectedWidgets = signal<AXPDisplayWidgetProvided[]>([]);\n\n // Computed for filtered and ordered widget list\n private orderedList = computed(() => {\n const search = this.searchTerm().toLowerCase();\n const selectedTabName = this.selectedTab().name;\n\n return orderBy(\n this.displayWidgets().filter((w) => {\n const matchesTab = selectedTabName === 'all' || w.group.name === selectedTabName;\n const matchesSearch =\n !search || w.title.toLowerCase().includes(search) || w.description?.toLowerCase().includes(search);\n return matchesTab && matchesSearch;\n }),\n ['pinned', 'title'],\n ['desc', 'asc']\n );\n });\n\n // Pinned and regular lists\n protected pinnedList = computed(() => this.orderedList().filter((c) => c.pinned));\n protected regularList = computed(() => this.orderedList().filter((c) => !c.pinned));\n\n protected tabs = computed<AXPWidgetGroup[]>(() => {\n const uniqueOrderedWidgets = orderBy(\n uniqBy(\n [{ name: 'all', title: 'All', order: 0 }, ...this.widgets.map(c => c.group)],\n (c) => c.name // or another property to ensure uniqueness\n ),\n (c) => c.order\n );\n return uniqueOrderedWidgets;\n })\n protected currentTabIndex = signal(0);\n protected selectedTab = computed(() => this.tabs()[this.currentTabIndex()]);\n\n protected override async ngOnInit() {\n super.ngOnInit();\n const pinnedWidgets = (await this.settingService.get<string[]>(this.pinnedSettingKey)) || [];\n this.displayWidgets.set(this.widgets.map((c) => ({ ...c, pinned: pinnedWidgets.includes(c.id), icon: c.icon ?? 'fa-solid fa-file-invoice' })));\n }\n\n protected handleTabChange(event: AXTabStripChangedEvent): void {\n const indx = event.index;\n if (this.currentTabIndex() != indx) {\n this.currentTabIndex.set(indx);\n }\n }\n\n protected handleClick(event: MouseEvent, widget: AXPDisplayWidgetProvided) {\n if (event.ctrlKey) {\n const currentSelection = this.selectedWidgets();\n const isAlreadySelected = currentSelection.some((w) => w === widget);\n\n if (isAlreadySelected) {\n // Deselect widget if already selected\n this.selectedWidgets.set(currentSelection.filter((w) => w !== widget));\n } else {\n // Add widget to selection\n this.selectedWidgets.set([...currentSelection, widget]);\n }\n } else {\n // If CTRL is not pressed, select only the clicked widget\n this.close({ widgets: [widget] });\n }\n }\n\n protected async handlePinClick(e: MouseEvent, widget: AXPDisplayWidgetProvided) {\n e.stopPropagation();\n widget.pinned = !widget.pinned;\n // Get the current list of pinned widgets from settings\n let pinnedWidgets = (await this.settingService.get<string[]>(this.pinnedSettingKey)) || [];\n\n // Update the list of pinned widgets based on the pinned status\n if (widget.pinned) {\n if (!pinnedWidgets.includes(widget.id)) {\n pinnedWidgets.push(widget.id);\n }\n } else {\n pinnedWidgets = pinnedWidgets.filter((name) => name !== widget.id);\n }\n\n // Save the updated list of pinned widgets\n await this.settingService.scope(AXPSettingScope.User).set(this.pinnedSettingKey, pinnedWidgets);\n\n // Trigger a re-render of the widgets\n this.displayWidgets.set([...this.displayWidgets()]);\n }\n\n // Check if a widget is selected\n protected isWidgetSelected(widget: AXPDisplayWidgetProvided): boolean {\n return this.selectedWidgets().includes(widget);\n }\n\n protected handleConfirmSelection(): void {\n this.close({ widgets: this.selectedWidgets() });\n }\n}\n","<div class=\"ax-flex ax-flex-col lg:ax-h-[75vh]\">\n <div>\n <ax-tabs [look]=\"'with-line'\" (onActiveTabChanged)=\"handleTabChange($event)\">\n @for(w of tabs();track $index)\n {\n <ax-tab-item [text]=\"w.title\" [key]=\"$index.toString()\"\n [active]=\"currentTabIndex() === $index\"></ax-tab-item>\n }\n </ax-tabs>\n </div>\n <div class=\"ax-overflow-auto\" #content>\n <div class=\"ax-p-4 ax-sticky ax-top-0 ax-z-10 ax-transition-all \" #sticky=\"axpSticky\"\n [axpSticky]=\"'ax-bg-surface-lowest ax-shadow-xl'\" [stickyParent]=\"content\" [stickyOffset]=\"10\">\n <ax-search-box look=\"fill\" placeholder=\"e.g. Button, Text, ...\" [(ngModel)]=\"searchTerm\" [delayTime]=\"300\"\n [axAutoFocus]=\"true\">\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n <div class=\"ax-flex ax-flex-col ax-p-4 ax-pt-0\">\n <ng-template #itemTpl let-w>\n <div (click)=\"handleClick($event,w)\"\n class=\"ax-py-2 ax-px-3 ax-rounded-md ax-flex ax-gap-3 ax-items-center ax-group hover:ax-bg-primary-100 dark:hover:ax-bg-primary-800 ax-cursor-pointer\"\n [class.ax-bg-primary-100]=\"isWidgetSelected(w)\">\n <div class=\"ax-w-10 ax-h-10 ax-flex ax-items-center ax-justify-center ax-rounded-md ax-border ax-border-neutral-200 ax-text-neutral-500 ax-bg-on-surface group-hover:ax-bg-primary-200\"\n [class.ax-bg-primary-200]=\"isWidgetSelected(w)\">\n <i [ngClass]=\"w.icon\" class=\"ax-text-lg group-hover:ax-text-primary-700 ax-text-on-surface-fore\"\n [class.ax-text-primary-700]=\"isWidgetSelected(w)\"></i>\n </div>\n <div class=\"ax-flex ax-flex-col ax-gap-1 ax-flex-1\">\n <div class=\"ax-flex ax-items-center ax-gap-2\">\n <div class=\"ax-font-semibold ax-text-sm\">{{w.title}}</div>\n <div (click)=\"handlePinClick($event,w)\">\n @if (w.pinned) {\n <i class=\"fa-solid fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45\"></i>\n }\n @else {\n <i\n class=\"fa-light fa-thumbtack ax-text-sm ax-text-neutral-500 ax-rotate-45 ax-invisible group-hover:ax-visible\"></i>\n }\n </div>\n </div>\n <span class=\"ax-text-xs ax-text-neutral-400 ax-truncate\">\n {{w.description}}\n </span>\n </div>\n </div>\n </ng-template>\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of pinnedList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n @if(pinnedList().length)\n {\n <hr class=\"ax-my-4 ax-border-dashed\">\n }\n <div class=\"ax-grid ax-grid-cols-2 ax-gap-2 \">\n @for(w of regularList();track $index)\n {\n <ng-container *ngTemplateOutlet=\"itemTpl;context:{ $implicit: w}\"></ng-container>\n }\n </div>\n </div>\n </div>\n</div>\n@if(selectedWidgets().length)\n{\n<ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" color=\"primary\" text=\"{{ selectedWidgets().length }} Selected\"\n (onClick)=\"handleConfirmSelection()\"></ax-button>\n </ax-suffix>\n</ax-footer>\n}"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAiCM,MAAO,gCAAiC,SAAQ,mBAAmB,CAAA;AAfzE,IAAA,WAAA,GAAA;;AAgBU,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAEjC,IAAgB,CAAA,gBAAA,GAAG,+BAA+B;AAEzD,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC;;QAGxB,IAAO,CAAA,OAAA,GAA+B,EAAE;AACxC,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAA6B,EAAE,CAAC;;AAGrD,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAA6B,EAAE,CAAC;;AAG1D,QAAA,IAAA,CAAA,WAAW,GAAG,QAAQ,CAAC,MAAK;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE;YAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI;AAE/C,YAAA,OAAO,OAAO,CACZ,IAAI,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAI;AACjC,gBAAA,MAAM,UAAU,GAAG,eAAe,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe;AAChF,gBAAA,MAAM,aAAa,GACjB,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACpG,OAAO,UAAU,IAAI,aAAa;AACpC,aAAC,CAAC,EACF,CAAC,QAAQ,EAAE,OAAO,CAAC,EACnB,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB;AACH,SAAC,CAAC;;QAGQ,IAAU,CAAA,UAAA,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;QACvE,IAAW,CAAA,WAAA,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,QAAA,IAAA,CAAA,IAAI,GAAG,QAAQ,CAAmB,MAAK;YAC/C,MAAM,oBAAoB,GAAG,OAAO,CAClC,MAAM,CACJ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAC5E,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI;aACd,EACD,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CACf;AACD,YAAA,OAAO,oBAAoB;AAC7B,SAAC,CAAC;AACQ,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,CAAC,CAAC;AAC3B,QAAA,IAAA,CAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;AA+D5E;AA7DoB,IAAA,MAAM,QAAQ,GAAA;QAC/B,KAAK,CAAC,QAAQ,EAAE;AAChB,QAAA,MAAM,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAW,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE;AAC5F,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,0BAA0B,EAAE,CAAC,CAAC,CAAC;;AAGtI,IAAA,eAAe,CAAC,KAA6B,EAAA;AACrD,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK;AACxB,QAAA,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE;AAClC,YAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;;;IAIxB,WAAW,CAAC,KAAiB,EAAE,MAAgC,EAAA;AACvE,QAAA,IAAI,KAAK,CAAC,OAAO,EAAE;AACjB,YAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,EAAE;AAC/C,YAAA,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC;YAEpE,IAAI,iBAAiB,EAAE;;AAErB,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,CAAC;;iBACjE;;AAEL,gBAAA,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,gBAAgB,EAAE,MAAM,CAAC,CAAC;;;aAEpD;;YAEL,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;;;AAI3B,IAAA,MAAM,cAAc,CAAC,CAAa,EAAE,MAAgC,EAAA;QAC5E,CAAC,CAAC,eAAe,EAAE;AACnB,QAAA,MAAM,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM;;AAE9B,QAAA,IAAI,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAW,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE;;AAG1F,QAAA,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;AACtC,gBAAA,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;;;aAE1B;AACL,YAAA,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;;;AAIpE,QAAA,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC;;AAG/F,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;;;AAI3C,IAAA,gBAAgB,CAAC,MAAgC,EAAA;QACzD,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;;IAGtC,sBAAsB,GAAA;AAC9B,QAAA,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;;8GA3GtC,gCAAgC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gCAAgC,+RCjC7C,21HA0EC,EAAA,MAAA,EAAA,CAAA,4VAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDtDG,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACZ,cAAc,EACd,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,cAAc,iXACd,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,+BAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,QAAA,EAAA,+IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,WAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,gBAAA,EAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,SAAA,EAAA,QAAA,EAAA,SAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAiB,qYACjB,kBAAkB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,cAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAMT,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAf5C,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,OAAA,EAAA;wBACP,YAAY;wBACZ,cAAc;wBACd,WAAW;wBACX,cAAc;wBACd,iBAAiB;wBACjB,YAAY;wBACZ,iBAAiB;wBACjB,kBAAkB;qBACnB,EAEc,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,21HAAA,EAAA,MAAA,EAAA,CAAA,4VAAA,CAAA,EAAA;;;;;"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { AXPEntityQueryType, AXPEntityCommandScope } from '@acorex/platform/common';
|
1
|
+
import { AXPEntityQueryType, AXPEntityCommandScope, createAllQueryView, createQueryView } from '@acorex/platform/common';
|
2
2
|
import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
|
3
3
|
import { AXMFormTemplateManagementTemplateEntityService, RootConfig, AXMFormTemplateTypes } from './acorex-modules-form-template-management.mjs';
|
4
4
|
|
@@ -389,6 +389,13 @@ async function factory(injector) {
|
|
389
389
|
type: 'create',
|
390
390
|
scope: AXPEntityCommandScope.TypeLevel,
|
391
391
|
},
|
392
|
+
{
|
393
|
+
title: `t("design", { scope: "common" })`,
|
394
|
+
command: 'design-form-template',
|
395
|
+
priority: 'primary',
|
396
|
+
type: 'design',
|
397
|
+
scope: AXPEntityCommandScope.Individual,
|
398
|
+
},
|
392
399
|
{
|
393
400
|
title: 't("delete", { scope: "common" })',
|
394
401
|
command: 'delete-entity',
|
@@ -419,19 +426,8 @@ async function factory(injector) {
|
|
419
426
|
},
|
420
427
|
],
|
421
428
|
views: [
|
422
|
-
{
|
423
|
-
|
424
|
-
title: 't("allItem", { scope: "common" })',
|
425
|
-
fixed: true,
|
426
|
-
columns: [],
|
427
|
-
conditions: [],
|
428
|
-
sorts: [{ name: 'title', dir: 'asc' }],
|
429
|
-
},
|
430
|
-
{
|
431
|
-
name: 'forms',
|
432
|
-
title: `t("forms", { scope: "${i18n}" })`,
|
433
|
-
fixed: true,
|
434
|
-
columns: [],
|
429
|
+
createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] }),
|
430
|
+
createQueryView('forms', `t("forms", { scope: "${i18n}" })`, true, {
|
435
431
|
conditions: [
|
436
432
|
{
|
437
433
|
name: 'type.value',
|
@@ -439,15 +435,10 @@ async function factory(injector) {
|
|
439
435
|
type: 'equal',
|
440
436
|
},
|
441
437
|
value: 10,
|
442
|
-
}
|
443
|
-
]
|
444
|
-
|
445
|
-
},
|
446
|
-
{
|
447
|
-
name: 'widgets',
|
448
|
-
title: `t("widgets", { scope: "${i18n}" })`,
|
449
|
-
fixed: true,
|
450
|
-
columns: [],
|
438
|
+
}
|
439
|
+
]
|
440
|
+
}),
|
441
|
+
createQueryView('widgets', `t("widgets", { scope: "${i18n}" })`, true, {
|
451
442
|
conditions: [
|
452
443
|
{
|
453
444
|
name: 'type.value',
|
@@ -455,10 +446,9 @@ async function factory(injector) {
|
|
455
446
|
type: 'equal',
|
456
447
|
},
|
457
448
|
value: 20,
|
458
|
-
}
|
459
|
-
]
|
460
|
-
|
461
|
-
},
|
449
|
+
}
|
450
|
+
]
|
451
|
+
}),
|
462
452
|
],
|
463
453
|
},
|
464
454
|
},
|
@@ -468,4 +458,4 @@ async function factory(injector) {
|
|
468
458
|
}
|
469
459
|
|
470
460
|
export { factory };
|
471
|
-
//# sourceMappingURL=acorex-modules-form-template-management-template.entity-
|
461
|
+
//# sourceMappingURL=acorex-modules-form-template-management-template.entity-BpApQcvG.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-modules-form-template-management-template.entity-BpApQcvG.mjs","sources":["../../../../libs/modules/form-template-management/src/lib/entities/template/template.entity.ts"],"sourcesContent":["import { AXPEntity, AXPEntityCommandScope, AXPEntityQueryType, createAllQueryView, createQueryView } from '@acorex/platform/common';\nimport { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';\nimport { Injector } from '@angular/core';\n\nimport { RootConfig } from '../../const';\nimport { AXMFormTemplateManagementTemplateEntityService } from './template.service';\nimport { AXMFormTemplateTypes } from './template.types';\n\nexport async function factory(injector: Injector): Promise<AXPEntity | null> {\n const dataService = injector.get(AXMFormTemplateManagementTemplateEntityService);\n const i18n = RootConfig.config.i18n;\n\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.template.name,\n source: '',\n title: RootConfig.entities.template.title,\n formats: {\n individual: `t(\"template\",{scope:\"${i18n}\"})`,\n plural: `t(\"templates\",{scope:\"${i18n}\"})`,\n searchResult: {\n title: '{{ title }}',\n description: RootConfig.module.title,\n },\n },\n relatedEntities: [],\n groups: [\n {\n id: 'section',\n title: `t(\"information\",{scope:\"common\"})`,\n },\n ],\n properties: [\n {\n name: 'documentId',\n title: `t(\"document-id\",{scope:\"${i18n}\"})`,\n groupId: 'section',\n options: {\n filter: {\n inline: { enabled: true },\n },\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'title',\n title: `t(\"title\",{scope:\"common\"})`,\n groupId: 'section',\n options: {\n filter: {\n inline: { enabled: true },\n },\n sort: {\n enabled: true,\n },\n },\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'categoryId',\n title: `t(\"categoryId\",{scope:\"${i18n}\"})`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: `${RootConfig.module.name}.${RootConfig.entities.category.name}`,\n expose: [\n { source: 'id', target: 'categoryId' },\n { source: 'title', target: 'category.title' },\n ],\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'type',\n title: `t(\"template-type\",{scope:\"${i18n}\"})`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'id',\n textField: 'title',\n defaultValue: AXMFormTemplateTypes.Form,\n dataSource: [AXMFormTemplateTypes.Form, AXMFormTemplateTypes.Widget],\n multiple: false,\n },\n },\n },\n validations: [\n {\n rule: 'required',\n },\n ],\n },\n {\n name: 'template',\n title: `t(\"template\",{scope:\"${i18n}\"})`,\n groupId: 'section',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.templateDesigner,\n },\n },\n },\n {\n name: 'isArchived',\n title: `t(\"isArchived\",{scope:\"${i18n}\"})`,\n groupId: 'application',\n schema: {\n dataType: 'boolean',\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n },\n ],\n columns: [\n { name: 'documentId' },\n { name: 'title' },\n { name: 'type' },\n { name: 'categoryId', options: { dataPath: 'category.title' } },\n { name: 'isArchived' },\n ],\n commands: {\n create: {\n execute: async (data: any) => {\n const res = await dataService.insertOne(data);\n return { id: res };\n },\n },\n delete: {\n execute: async (id: any) => {\n return await dataService.deleteOne(id);\n },\n },\n update: {\n execute: async (data: any) => {\n return await dataService.updateOne(data.id, data);\n },\n },\n },\n queries: {\n byKey: {\n execute: async (id: string) => {\n return await dataService.getOne(id);\n },\n type: AXPEntityQueryType.Single,\n },\n list: {\n execute: async (e: any) => {\n return await dataService.query({ skip: e.skip, take: e.take, filter: e.filter });\n },\n type: AXPEntityQueryType.List,\n },\n },\n interfaces: {\n master: {\n create: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n order: 10,\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'categoryId',\n layout: {\n order: 20,\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n update: {\n sections: [\n {\n id: 'section',\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'categoryId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n ],\n },\n single: {\n title: '{{title}} {{documentId}}',\n sections: [\n {\n id: 'section',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n {\n id: 'template',\n layout: {\n positions: {\n lg: {\n colSpan: 12,\n },\n },\n },\n },\n ],\n properties: [\n {\n name: 'documentId',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'title',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'type',\n layout: {\n positions: {\n lg: {\n colSpan: 6,\n },\n },\n },\n },\n {\n name: 'categoryId',\n layout: {\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n {\n name: 'template',\n layout: {\n label: {\n visible: false,\n },\n positions: {\n lg: {\n colSpan: 4,\n },\n },\n },\n },\n ],\n actions: [\n {\n command: 'archive-entity',\n priority: 'secondary',\n scope: AXPEntityCommandScope.Individual,\n type: 'archive',\n title: `t(\"archive\", { scope: \"common\" })`,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n ],\n },\n list: {\n actions: [\n {\n title: `t(\"create\", { scope: \"common\" })`,\n command: 'create-form-template',\n priority: 'primary',\n type: 'create',\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n title: `t(\"design\", { scope: \"common\" })`,\n command: 'design-form-template',\n priority: 'primary',\n type: 'design',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'primary',\n type: 'delete',\n scope: AXPEntityCommandScope.Selected,\n },\n {\n title: 't(\"detail\", { scope: \"common\" })',\n command: 'open-entity',\n priority: 'secondary',\n type: 'view',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n title: 't(\"delete\", { scope: \"common\" })',\n command: 'delete-entity',\n priority: 'secondary',\n type: 'delete',\n scope: AXPEntityCommandScope.Individual,\n },\n {\n command: 'archive-entity',\n priority: 'secondary',\n scope: AXPEntityCommandScope.Selected,\n type: 'archive',\n title: `t(\"archive\", { scope: \"common\" })`,\n },\n ],\n views: [\n createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] }),\n createQueryView('forms', `t(\"forms\", { scope: \"${i18n}\" })`, true,\n {\n conditions: [\n {\n name: 'type.value',\n operator: {\n type: 'equal',\n },\n value: 10,\n }\n ]\n }),\n createQueryView('widgets', `t(\"widgets\", { scope: \"${i18n}\" })`, true,\n {\n conditions: [\n {\n name: 'type.value',\n operator: {\n type: 'equal',\n },\n value: 20,\n }\n ]\n }),\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n"],"names":[],"mappings":"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"}
|
@@ -51,7 +51,7 @@ class AXPTemplateWidgetProviderService {
|
|
51
51
|
return null;
|
52
52
|
}
|
53
53
|
async chooseTemplate() {
|
54
|
-
const com = await import('./acorex-modules-form-template-management-template-picker.component-
|
54
|
+
const com = await import('./acorex-modules-form-template-management-template-picker.component-DW0iMqAA.mjs').then((c) => c.AXPTemplateWidgetPickerComponent);
|
55
55
|
const widgets = await this.items({
|
56
56
|
skip: 0,
|
57
57
|
take: 100,
|
@@ -397,18 +397,18 @@ const RootConfig = {
|
|
397
397
|
route: 'form-template-management',
|
398
398
|
name: 'FormTemplateManagement',
|
399
399
|
title: `t('module-name', {scope:"${config.i18n}"})`,
|
400
|
-
icon: 'fa-
|
400
|
+
icon: 'fa-light fa-file-invoice'
|
401
401
|
},
|
402
402
|
entities: {
|
403
403
|
category: {
|
404
404
|
name: 'Category',
|
405
405
|
title: 't("category", { scope: "common" })',
|
406
|
-
icon: 'fa-
|
406
|
+
icon: 'fa-light fa-list'
|
407
407
|
},
|
408
408
|
template: {
|
409
409
|
name: 'Template',
|
410
410
|
title: `t("template",{scope:"${config.i18n}"})`,
|
411
|
-
icon: 'fa-
|
411
|
+
icon: 'fa-light fa-file-code'
|
412
412
|
}
|
413
413
|
},
|
414
414
|
};
|
@@ -511,7 +511,7 @@ class AXMEntityProvider {
|
|
511
511
|
case RootConfig.entities.category.name:
|
512
512
|
return (await import('./acorex-modules-form-template-management-category.entity-BcfMw_wb.mjs')).factory(this.injector);
|
513
513
|
case RootConfig.entities.template.name:
|
514
|
-
return (await import('./acorex-modules-form-template-management-template.entity-
|
514
|
+
return (await import('./acorex-modules-form-template-management-template.entity-BpApQcvG.mjs')).factory(this.injector);
|
515
515
|
}
|
516
516
|
}
|
517
517
|
return null;
|
@@ -533,7 +533,7 @@ class AXMMenuProvider {
|
|
533
533
|
context.addItems([
|
534
534
|
{
|
535
535
|
priority: 9001,
|
536
|
-
text: `t('
|
536
|
+
text: `t('root-menu', {scope:"${scope}"})`,
|
537
537
|
icon: module.icon,
|
538
538
|
children: [
|
539
539
|
{
|