@acorex/modules 20.2.1 → 20.2.3
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/content-management/index.d.ts +48 -3
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CdZ9BHOa.mjs → acorex-modules-auth-acorex-modules-auth-BBGqLgJC.mjs} +10 -10
- package/fesm2022/{acorex-modules-auth-acorex-modules-auth-CdZ9BHOa.mjs.map → acorex-modules-auth-acorex-modules-auth-BBGqLgJC.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-app-chooser.component-D4ehfpnB.mjs → acorex-modules-auth-app-chooser.component-B7Nv62Jj.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-app-chooser.component-D4ehfpnB.mjs.map → acorex-modules-auth-app-chooser.component-B7Nv62Jj.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-login.module-BHRC357P.mjs → acorex-modules-auth-login.module-DmEDBKqL.mjs} +4 -4
- package/fesm2022/{acorex-modules-auth-login.module-BHRC357P.mjs.map → acorex-modules-auth-login.module-DmEDBKqL.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-master.layout-DAYMmpBW.mjs → acorex-modules-auth-master.layout-B8L2FPDN.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-master.layout-DAYMmpBW.mjs.map → acorex-modules-auth-master.layout-B8L2FPDN.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-oauth-callback.component-B0Q3w45s.mjs → acorex-modules-auth-oauth-callback.component-BRJu8jom.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-oauth-callback.component-B0Q3w45s.mjs.map → acorex-modules-auth-oauth-callback.component-BRJu8jom.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-password.component-BJpxtJYh.mjs → acorex-modules-auth-password.component-Bh0uhx6-.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-password.component-BJpxtJYh.mjs.map → acorex-modules-auth-password.component-Bh0uhx6-.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth-password.component-FNLwhWMe.mjs +226 -0
- package/fesm2022/acorex-modules-auth-password.component-FNLwhWMe.mjs.map +1 -0
- package/fesm2022/{acorex-modules-auth-routes-hvqL2dCH.mjs → acorex-modules-auth-routes-xqc264U-.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-routes-hvqL2dCH.mjs.map → acorex-modules-auth-routes-xqc264U-.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-two-factor.module-kPuT8yUw.mjs → acorex-modules-auth-two-factor.module-C8jrenEW.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-two-factor.module-kPuT8yUw.mjs.map → acorex-modules-auth-two-factor.module-C8jrenEW.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-auth-user-sessions.component-Chx_jTSJ.mjs → acorex-modules-auth-user-sessions.component-Cu1SCNnF.mjs} +2 -2
- package/fesm2022/{acorex-modules-auth-user-sessions.component-Chx_jTSJ.mjs.map → acorex-modules-auth-user-sessions.component-Cu1SCNnF.mjs.map} +1 -1
- package/fesm2022/acorex-modules-auth.mjs +1 -1
- package/fesm2022/acorex-modules-content-management.mjs +322 -13
- package/fesm2022/acorex-modules-content-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-data-management.mjs +0 -1
- package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-document-management-acorex-modules-document-management-C4G6L94e.mjs → acorex-modules-document-management-acorex-modules-document-management-BvIGh15O.mjs} +38 -22
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-BvIGh15O.mjs.map +1 -0
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-CbDcYxEZ.mjs → acorex-modules-document-management-attachment-widget.component-ClgS3Q8D.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-attachment-widget.component-CbDcYxEZ.mjs.map → acorex-modules-document-management-attachment-widget.component-ClgS3Q8D.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-BCs4aZKn.mjs → acorex-modules-document-management-create-folder-dialog.component-BWMANjYL.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-create-folder-dialog.component-BCs4aZKn.mjs.map → acorex-modules-document-management-create-folder-dialog.component-BWMANjYL.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-details-view.component-v1VroVv-.mjs → acorex-modules-document-management-details-view.component-BmJB8bb8.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-details-view.component-v1VroVv-.mjs.map → acorex-modules-document-management-details-view.component-BmJB8bb8.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-C5gJtH7_.mjs → acorex-modules-document-management-drive-choose.component-DoUkm43Y.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-drive-choose.component-C5gJtH7_.mjs.map → acorex-modules-document-management-drive-choose.component-DoUkm43Y.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-drive.component-D5OwpnAP.mjs → acorex-modules-document-management-drive.component-R1V4W9u3.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-drive.component-D5OwpnAP.mjs.map → acorex-modules-document-management-drive.component-R1V4W9u3.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DkHt-dTD.mjs → acorex-modules-document-management-large-icons-view.component-C-9UNa_X.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-icons-view.component-DkHt-dTD.mjs.map → acorex-modules-document-management-large-icons-view.component-C-9UNa_X.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-D2nA00k3.mjs → acorex-modules-document-management-large-tiles-view.component-DL3PEFfv.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-large-tiles-view.component-D2nA00k3.mjs.map → acorex-modules-document-management-large-tiles-view.component-DL3PEFfv.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-list-view.component-RaW67V7O.mjs → acorex-modules-document-management-list-view.component-BGUDmglV.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-list-view.component-RaW67V7O.mjs.map → acorex-modules-document-management-list-view.component-BGUDmglV.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-B6nu7fmX.mjs → acorex-modules-document-management-permission-definition.provider-Cbwf5Ved.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-permission-definition.provider-B6nu7fmX.mjs.map → acorex-modules-document-management-permission-definition.provider-Cbwf5Ved.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component--6V1Zaoz.mjs → acorex-modules-document-management-rename-node-dialog.component-DXiQj-Hb.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-rename-node-dialog.component--6V1Zaoz.mjs.map → acorex-modules-document-management-rename-node-dialog.component-DXiQj-Hb.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-Cl1MKsX9.mjs → acorex-modules-document-management-small-icons-view.component-C8RZC3TM.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-icons-view.component-Cl1MKsX9.mjs.map → acorex-modules-document-management-small-icons-view.component-C8RZC3TM.mjs.map} +1 -1
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-xoO1Loxt.mjs → acorex-modules-document-management-small-tiles-view.component-B70rSvao.mjs} +2 -2
- package/fesm2022/{acorex-modules-document-management-small-tiles-view.component-xoO1Loxt.mjs.map → acorex-modules-document-management-small-tiles-view.component-B70rSvao.mjs.map} +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +1 -1
- package/fesm2022/{acorex-modules-issue-management-acorex-modules-issue-management-CTFlKzqy.mjs → acorex-modules-help-desk-acorex-modules-help-desk-8iEAzfh5.mjs} +77 -30
- package/fesm2022/acorex-modules-help-desk-acorex-modules-help-desk-8iEAzfh5.mjs.map +1 -0
- package/fesm2022/acorex-modules-help-desk-capture-screen.component-BiJX9lxr.mjs +28 -0
- package/fesm2022/acorex-modules-help-desk-capture-screen.component-BiJX9lxr.mjs.map +1 -0
- package/fesm2022/acorex-modules-help-desk.mjs +2 -0
- package/fesm2022/acorex-modules-help-desk.mjs.map +1 -0
- package/fesm2022/{acorex-modules-platform-management-list-version.component-DTfLeVbH.mjs → acorex-modules-platform-management-list-version.component-kFe_wuWc.mjs} +3 -3
- package/fesm2022/{acorex-modules-platform-management-list-version.component-DTfLeVbH.mjs.map → acorex-modules-platform-management-list-version.component-kFe_wuWc.mjs.map} +1 -1
- package/fesm2022/acorex-modules-platform-management.mjs +12 -232
- package/fesm2022/acorex-modules-platform-management.mjs.map +1 -1
- package/help-desk/README.md +3 -0
- package/{issue-management → help-desk}/index.d.ts +12 -12
- package/package.json +5 -5
- package/platform-management/index.d.ts +1 -12
- package/fesm2022/acorex-modules-auth-password.component-NAY46d_2.mjs +0 -226
- package/fesm2022/acorex-modules-auth-password.component-NAY46d_2.mjs.map +0 -1
- package/fesm2022/acorex-modules-document-management-acorex-modules-document-management-C4G6L94e.mjs.map +0 -1
- package/fesm2022/acorex-modules-issue-management-acorex-modules-issue-management-CTFlKzqy.mjs.map +0 -1
- package/fesm2022/acorex-modules-issue-management-capture-screen.component-DDvum8EG.mjs +0 -28
- package/fesm2022/acorex-modules-issue-management-capture-screen.component-DDvum8EG.mjs.map +0 -1
- package/fesm2022/acorex-modules-issue-management.mjs +0 -2
- package/fesm2022/acorex-modules-issue-management.mjs.map +0 -1
- package/fesm2022/acorex-modules-platform-management-list-terms.component-B1gl5xfT.mjs +0 -93
- package/fesm2022/acorex-modules-platform-management-list-terms.component-B1gl5xfT.mjs.map +0 -1
- package/issue-management/README.md +0 -3
|
@@ -1,15 +1,39 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, Injector, Injectable, signal, Component, NgModule } from '@angular/core';
|
|
3
|
-
import { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';
|
|
4
|
-
import { AXPSearchCommandProvider, AXPFileStorageService, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, createAllQueryView, createQueryView, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';
|
|
5
|
-
import { AXPEntityService, AXMEntityCrudServiceImpl, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
|
|
6
|
-
import * as
|
|
7
|
-
import { AXPComponentSlotModule } from '@acorex/platform/layout/components';
|
|
8
|
-
import { AXP_DATASOURCE_DEFINITION_PROVIDER } from '@acorex/platform/core';
|
|
2
|
+
import { inject, Injector, Injectable, signal, Component, NgModule, HostListener } from '@angular/core';
|
|
3
|
+
import { AXPSessionService, AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';
|
|
4
|
+
import { AXPSearchCommandProvider, AXPFileStorageService, AXPSettingService, AXP_MENU_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER, AXP_SEARCH_PROVIDER, createAllQueryView, createQueryView, AXPEntityCommandScope, AXPEntityQueryType } from '@acorex/platform/common';
|
|
5
|
+
import { AXPEntityService, AXMEntityCrudServiceImpl, AXP_ENTITY_DEFINITION_LOADER, AXP_ENTITY_CONFIG_TOKEN } from '@acorex/platform/layout/entity';
|
|
6
|
+
import * as i3$1 from '@acorex/platform/layout/components';
|
|
7
|
+
import { AXPComponentSlotModule, AXPThemeLayoutBlockComponent } from '@acorex/platform/layout/components';
|
|
8
|
+
import { AXPPlatformScope, AXPAppStartUpService, AXP_DATASOURCE_DEFINITION_PROVIDER } from '@acorex/platform/core';
|
|
9
9
|
import { AXDataSource } from '@acorex/cdk/common';
|
|
10
10
|
import { AXPWidgetsCatalog } from '@acorex/platform/layout/builder';
|
|
11
11
|
import { AXSafePipe } from '@acorex/core/pipes';
|
|
12
|
+
import { ROUTES } from '@angular/router';
|
|
13
|
+
import * as i2$1 from '@acorex/platform/workflow';
|
|
14
|
+
import { AXPWorkflowAction, AXPWorkflowService, AXPWorkflowModule } from '@acorex/platform/workflow';
|
|
15
|
+
import { AXPopupService } from '@acorex/components/popup';
|
|
16
|
+
import * as i4 from '@acorex/components/button';
|
|
17
|
+
import { AXButtonModule } from '@acorex/components/button';
|
|
18
|
+
import * as i2 from '@acorex/components/check-box';
|
|
19
|
+
import { AXCheckBoxModule } from '@acorex/components/check-box';
|
|
20
|
+
import * as i3 from '@acorex/components/decorators';
|
|
21
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
22
|
+
import * as i1 from '@acorex/components/label';
|
|
23
|
+
import { AXLabelModule } from '@acorex/components/label';
|
|
24
|
+
import { AXBasePageComponent } from '@acorex/components/page';
|
|
25
|
+
import * as i6 from '@acorex/core/translation';
|
|
26
|
+
import { AXTranslationModule } from '@acorex/core/translation';
|
|
27
|
+
import * as i5 from '@angular/common';
|
|
28
|
+
import { CommonModule } from '@angular/common';
|
|
12
29
|
import { AXPWidgetsList } from '@acorex/modules/common';
|
|
30
|
+
import * as i3$2 from '@acorex/cdk/outline';
|
|
31
|
+
import { AXOutlineModule } from '@acorex/cdk/outline';
|
|
32
|
+
import * as i2$2 from '@acorex/components/side-menu';
|
|
33
|
+
import { AXSideMenuModule } from '@acorex/components/side-menu';
|
|
34
|
+
import * as i5$1 from '@acorex/core/format';
|
|
35
|
+
import { AXFormatModule } from '@acorex/core/format';
|
|
36
|
+
import { AXPPageLayoutBaseComponent, AXPPageLayoutComponent, AXPPageLayoutBase } from '@acorex/platform/layout/views';
|
|
13
37
|
|
|
14
38
|
const config = {
|
|
15
39
|
i18n: 'content-management',
|
|
@@ -49,10 +73,12 @@ const RootConfig = {
|
|
|
49
73
|
class AXMMenuProvider {
|
|
50
74
|
constructor() {
|
|
51
75
|
this.entityService = inject(AXPEntityService);
|
|
76
|
+
this.sessionService = inject(AXPSessionService);
|
|
52
77
|
}
|
|
53
78
|
async provide(context) {
|
|
54
79
|
const scope = RootConfig.config.i18n;
|
|
55
80
|
const module = RootConfig.module;
|
|
81
|
+
const appName = this.sessionService.application?.name;
|
|
56
82
|
context.addItems([
|
|
57
83
|
{
|
|
58
84
|
priority: 9002,
|
|
@@ -84,6 +110,15 @@ class AXMMenuProvider {
|
|
|
84
110
|
],
|
|
85
111
|
},
|
|
86
112
|
]);
|
|
113
|
+
context.find('app-help').addItems([
|
|
114
|
+
{
|
|
115
|
+
name: 'app-terms',
|
|
116
|
+
text: `t('terms-conditions',{scope: "${scope}"})`,
|
|
117
|
+
icon: 'fa-light fa-circle-info',
|
|
118
|
+
path: `${appName}/terms`,
|
|
119
|
+
priority: 100031,
|
|
120
|
+
},
|
|
121
|
+
]);
|
|
87
122
|
}
|
|
88
123
|
}
|
|
89
124
|
|
|
@@ -341,10 +376,167 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
341
376
|
type: Injectable
|
|
342
377
|
}], ctorParameters: () => [] });
|
|
343
378
|
|
|
379
|
+
class AXMNotifyAppTermComponent extends AXBasePageComponent {
|
|
380
|
+
constructor() {
|
|
381
|
+
super(...arguments);
|
|
382
|
+
this.isConfirm = false;
|
|
383
|
+
this.i18n = RootConfig.config.i18n;
|
|
384
|
+
}
|
|
385
|
+
transformContent(content) {
|
|
386
|
+
return content.replace(/\n/g, '<br>');
|
|
387
|
+
}
|
|
388
|
+
send() {
|
|
389
|
+
this.close({ data: this.data });
|
|
390
|
+
}
|
|
391
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMNotifyAppTermComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
392
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXMNotifyAppTermComponent, isStandalone: true, selector: "axm-notify-app", usesInheritance: true, ngImport: i0, template: "@for (item of data; track $index) {\n<ax-content class=\"ax-block ax-px-4 ax-py-4 ax-font-bold\">{{ item.title }}</ax-content>\n<ax-content class=\"ax-block ax-px-4 ax-pb-4 ax-text-base/6\" [innerHTML]=\"transformContent(item.content) | safe : 'html'\"></ax-content>\n}\n<ax-footer class=\"ax-flex ax-items-center ax-justify-between ax-p-2\">\n <ax-check-box [(value)]=\"isConfirm\">\n <ax-label>{{ 'agreeTerm' | translate : { scope: i18n } | async }}</ax-label>\n </ax-check-box>\n <ax-button (click)=\"send()\" [text]=\"'okay' | translate | async\" [disabled]=\"!isConfirm\" color=\"primary\"></ax-button>\n</ax-footer>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXCheckBoxModule }, { kind: "component", type: i2.AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "color", "value", "name", "id", "checked", "isLoading", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i3.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i4.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AXSafePipe, name: "safe" }] }); }
|
|
393
|
+
}
|
|
394
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMNotifyAppTermComponent, decorators: [{
|
|
395
|
+
type: Component,
|
|
396
|
+
args: [{ selector: 'axm-notify-app', imports: [
|
|
397
|
+
CommonModule,
|
|
398
|
+
AXLabelModule,
|
|
399
|
+
AXCheckBoxModule,
|
|
400
|
+
AXDecoratorModule,
|
|
401
|
+
AXButtonModule,
|
|
402
|
+
AXTranslationModule,
|
|
403
|
+
AXSafePipe,
|
|
404
|
+
], template: "@for (item of data; track $index) {\n<ax-content class=\"ax-block ax-px-4 ax-py-4 ax-font-bold\">{{ item.title }}</ax-content>\n<ax-content class=\"ax-block ax-px-4 ax-pb-4 ax-text-base/6\" [innerHTML]=\"transformContent(item.content) | safe : 'html'\"></ax-content>\n}\n<ax-footer class=\"ax-flex ax-items-center ax-justify-between ax-p-2\">\n <ax-check-box [(value)]=\"isConfirm\">\n <ax-label>{{ 'agreeTerm' | translate : { scope: i18n } | async }}</ax-label>\n </ax-check-box>\n <ax-button (click)=\"send()\" [text]=\"'okay' | translate | async\" [disabled]=\"!isConfirm\" color=\"primary\"></ax-button>\n</ax-footer>" }]
|
|
405
|
+
}] });
|
|
406
|
+
|
|
407
|
+
class AXMNotifyNewTermPopupAction extends AXPWorkflowAction {
|
|
408
|
+
constructor() {
|
|
409
|
+
super(...arguments);
|
|
410
|
+
this.popupService = inject(AXPopupService);
|
|
411
|
+
}
|
|
412
|
+
async execute(context) {
|
|
413
|
+
const data = context.getVariable();
|
|
414
|
+
await this.popupService.open(AXMNotifyAppTermComponent, {
|
|
415
|
+
title: 'New Terms And Conditions',
|
|
416
|
+
data: { data },
|
|
417
|
+
closeButton: false,
|
|
418
|
+
});
|
|
419
|
+
}
|
|
420
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMNotifyNewTermPopupAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
421
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMNotifyNewTermPopupAction }); }
|
|
422
|
+
}
|
|
423
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMNotifyNewTermPopupAction, decorators: [{
|
|
424
|
+
type: Injectable
|
|
425
|
+
}] });
|
|
426
|
+
class AXMTermUpdateSettingAction extends AXPWorkflowAction {
|
|
427
|
+
constructor() {
|
|
428
|
+
super(...arguments);
|
|
429
|
+
this.settingService = inject(AXPSettingService);
|
|
430
|
+
}
|
|
431
|
+
async execute(context) {
|
|
432
|
+
const dataList = context.getVariable();
|
|
433
|
+
for (const data of dataList) {
|
|
434
|
+
await this.settingService.scope(AXPPlatformScope.User).set(`is-confirm-term-${data.id}`, true);
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMTermUpdateSettingAction, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
438
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMTermUpdateSettingAction }); }
|
|
439
|
+
}
|
|
440
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMTermUpdateSettingAction, decorators: [{
|
|
441
|
+
type: Injectable
|
|
442
|
+
}] });
|
|
443
|
+
const AXMNewTermWorkflow = {
|
|
444
|
+
startStepId: 'show-popup',
|
|
445
|
+
steps: {
|
|
446
|
+
'show-popup': {
|
|
447
|
+
action: 'AXMNotifyNewTermPopupAction',
|
|
448
|
+
nextSteps: [
|
|
449
|
+
{
|
|
450
|
+
conditions: [],
|
|
451
|
+
nextStepId: 'first-time-add-to-setting',
|
|
452
|
+
},
|
|
453
|
+
],
|
|
454
|
+
},
|
|
455
|
+
'first-time-add-to-setting': {
|
|
456
|
+
action: 'AXMTermUpdateSettingAction',
|
|
457
|
+
},
|
|
458
|
+
},
|
|
459
|
+
};
|
|
460
|
+
|
|
461
|
+
var AXPApplicationTermsSettings;
|
|
462
|
+
(function (AXPApplicationTermsSettings) {
|
|
463
|
+
AXPApplicationTermsSettings["ApplicationTerms"] = "general:startup:application-terms";
|
|
464
|
+
})(AXPApplicationTermsSettings || (AXPApplicationTermsSettings = {}));
|
|
465
|
+
|
|
466
|
+
class AppTermsCheckService {
|
|
467
|
+
constructor() {
|
|
468
|
+
this.settingsService = inject(AXPSettingService);
|
|
469
|
+
this.workflowService = inject(AXPWorkflowService);
|
|
470
|
+
this.appTermService = inject(AXMAppTermService);
|
|
471
|
+
this.appInitService = inject(AXPAppStartUpService);
|
|
472
|
+
this.sessionService = inject(AXPSessionService);
|
|
473
|
+
this.appInitService.registerTask({
|
|
474
|
+
name: 'Terms',
|
|
475
|
+
statusText: 'Check New Terms And Conditions...',
|
|
476
|
+
priority: 6,
|
|
477
|
+
run: async () => {
|
|
478
|
+
this.sessionService.application$.subscribe(async (app) => {
|
|
479
|
+
if (app != null) {
|
|
480
|
+
const filterTerms = [];
|
|
481
|
+
const terms = await this.appTermService.query();
|
|
482
|
+
for (const term of terms.items) {
|
|
483
|
+
const isConfirm = await this.settingsService
|
|
484
|
+
.scope(AXPPlatformScope.User)
|
|
485
|
+
.get(`is-confirm-term-${term.id}`);
|
|
486
|
+
const isEnableToShow = await this.settingsService
|
|
487
|
+
.scope(AXPPlatformScope.User)
|
|
488
|
+
.get(AXPApplicationTermsSettings.ApplicationTerms);
|
|
489
|
+
if (!isConfirm && isEnableToShow) {
|
|
490
|
+
filterTerms.push(term);
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
if (filterTerms.length > 0) {
|
|
494
|
+
setTimeout(() => {
|
|
495
|
+
this.workflowService.execute('new-term', filterTerms);
|
|
496
|
+
}, 500);
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
});
|
|
500
|
+
},
|
|
501
|
+
});
|
|
502
|
+
}
|
|
503
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AppTermsCheckService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
504
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AppTermsCheckService }); }
|
|
505
|
+
}
|
|
506
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AppTermsCheckService, decorators: [{
|
|
507
|
+
type: Injectable
|
|
508
|
+
}], ctorParameters: () => [] });
|
|
509
|
+
|
|
344
510
|
class AXMContentManagementModule {
|
|
345
|
-
|
|
346
|
-
|
|
511
|
+
/**
|
|
512
|
+
* @ignore
|
|
513
|
+
*/
|
|
514
|
+
constructor(appTermsCheck) { }
|
|
515
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMContentManagementModule, deps: [{ token: AppTermsCheckService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
516
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.1.6", ngImport: i0, type: AXMContentManagementModule, imports: [i2$1.AXPWorkflowModule, i3$1.AXPComponentSlotModule] }); }
|
|
347
517
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMContentManagementModule, providers: [
|
|
518
|
+
{
|
|
519
|
+
provide: ROUTES,
|
|
520
|
+
multi: true,
|
|
521
|
+
useFactory: () => {
|
|
522
|
+
const config = inject(AXP_ENTITY_CONFIG_TOKEN);
|
|
523
|
+
const routes = [
|
|
524
|
+
{
|
|
525
|
+
path: ':app/terms',
|
|
526
|
+
loadComponent: () => {
|
|
527
|
+
return config.viewers.root();
|
|
528
|
+
},
|
|
529
|
+
children: [
|
|
530
|
+
{
|
|
531
|
+
path: '',
|
|
532
|
+
loadComponent: () => Promise.resolve().then(function () { return listTerms_component; }).then((c) => c.AXMListTermsComponent),
|
|
533
|
+
},
|
|
534
|
+
],
|
|
535
|
+
},
|
|
536
|
+
];
|
|
537
|
+
return routes;
|
|
538
|
+
},
|
|
539
|
+
},
|
|
348
540
|
{
|
|
349
541
|
provide: AXP_MENU_PROVIDER,
|
|
350
542
|
useClass: AXMMenuProvider,
|
|
@@ -387,7 +579,17 @@ class AXMContentManagementModule {
|
|
|
387
579
|
useClass: AXMPromotionDataSourceDefinition,
|
|
388
580
|
multi: true,
|
|
389
581
|
},
|
|
390
|
-
|
|
582
|
+
AppTermsCheckService
|
|
583
|
+
], imports: [AXPWorkflowModule.forChild({
|
|
584
|
+
actions: {
|
|
585
|
+
AXMNotifyNewTermPopupAction,
|
|
586
|
+
AXMTermUpdateSettingAction,
|
|
587
|
+
},
|
|
588
|
+
workflows: {
|
|
589
|
+
'new-term': AXMNewTermWorkflow,
|
|
590
|
+
},
|
|
591
|
+
}),
|
|
592
|
+
AXPComponentSlotModule.forChild({
|
|
391
593
|
'side-menu-footer': [
|
|
392
594
|
{
|
|
393
595
|
name: 'side-menu-footer-promotion',
|
|
@@ -413,6 +615,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
413
615
|
type: NgModule,
|
|
414
616
|
args: [{
|
|
415
617
|
imports: [
|
|
618
|
+
AXPWorkflowModule.forChild({
|
|
619
|
+
actions: {
|
|
620
|
+
AXMNotifyNewTermPopupAction,
|
|
621
|
+
AXMTermUpdateSettingAction,
|
|
622
|
+
},
|
|
623
|
+
workflows: {
|
|
624
|
+
'new-term': AXMNewTermWorkflow,
|
|
625
|
+
},
|
|
626
|
+
}),
|
|
416
627
|
AXPComponentSlotModule.forChild({
|
|
417
628
|
'side-menu-footer': [
|
|
418
629
|
{
|
|
@@ -438,6 +649,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
438
649
|
exports: [],
|
|
439
650
|
declarations: [],
|
|
440
651
|
providers: [
|
|
652
|
+
{
|
|
653
|
+
provide: ROUTES,
|
|
654
|
+
multi: true,
|
|
655
|
+
useFactory: () => {
|
|
656
|
+
const config = inject(AXP_ENTITY_CONFIG_TOKEN);
|
|
657
|
+
const routes = [
|
|
658
|
+
{
|
|
659
|
+
path: ':app/terms',
|
|
660
|
+
loadComponent: () => {
|
|
661
|
+
return config.viewers.root();
|
|
662
|
+
},
|
|
663
|
+
children: [
|
|
664
|
+
{
|
|
665
|
+
path: '',
|
|
666
|
+
loadComponent: () => Promise.resolve().then(function () { return listTerms_component; }).then((c) => c.AXMListTermsComponent),
|
|
667
|
+
},
|
|
668
|
+
],
|
|
669
|
+
},
|
|
670
|
+
];
|
|
671
|
+
return routes;
|
|
672
|
+
},
|
|
673
|
+
},
|
|
441
674
|
{
|
|
442
675
|
provide: AXP_MENU_PROVIDER,
|
|
443
676
|
useClass: AXMMenuProvider,
|
|
@@ -480,9 +713,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImpor
|
|
|
480
713
|
useClass: AXMPromotionDataSourceDefinition,
|
|
481
714
|
multi: true,
|
|
482
715
|
},
|
|
716
|
+
AppTermsCheckService
|
|
483
717
|
]
|
|
484
718
|
}]
|
|
485
|
-
}] });
|
|
719
|
+
}], ctorParameters: () => [{ type: AppTermsCheckService }] });
|
|
486
720
|
|
|
487
721
|
/**
|
|
488
722
|
* Deeply sanitizes an object for storage in IndexedDB by removing non-serializable content
|
|
@@ -2225,11 +2459,86 @@ var glossary_entity = /*#__PURE__*/Object.freeze({
|
|
|
2225
2459
|
glossaryEntityFactory: glossaryEntityFactory
|
|
2226
2460
|
});
|
|
2227
2461
|
|
|
2228
|
-
|
|
2462
|
+
class AXMListTermsComponent extends AXPPageLayoutBaseComponent {
|
|
2463
|
+
constructor() {
|
|
2464
|
+
super(...arguments);
|
|
2465
|
+
this.service = inject(AXMAppTermService);
|
|
2466
|
+
this.terms = [];
|
|
2467
|
+
this.loaded = signal(false, ...(ngDevMode ? [{ debugName: "loaded" }] : []));
|
|
2468
|
+
this.showScrollSide = signal(true, ...(ngDevMode ? [{ debugName: "showScrollSide" }] : []));
|
|
2469
|
+
}
|
|
2470
|
+
ngAfterViewInit() {
|
|
2471
|
+
this.checkScroll();
|
|
2472
|
+
}
|
|
2473
|
+
onResize() {
|
|
2474
|
+
this.checkScroll();
|
|
2475
|
+
}
|
|
2476
|
+
checkScroll() {
|
|
2477
|
+
const contentElement = document.getElementById('contentDiv');
|
|
2478
|
+
if (contentElement != null) {
|
|
2479
|
+
this.showScrollSide.set(contentElement.offsetHeight > window.innerHeight - 140);
|
|
2480
|
+
}
|
|
2481
|
+
}
|
|
2482
|
+
async ngOnInit() {
|
|
2483
|
+
super.ngOnInit();
|
|
2484
|
+
const result = await this.service.query({
|
|
2485
|
+
skip: 0,
|
|
2486
|
+
take: 1000,
|
|
2487
|
+
});
|
|
2488
|
+
this.terms = result.items.map((term) => {
|
|
2489
|
+
return {
|
|
2490
|
+
...term,
|
|
2491
|
+
content: term.content.replace(/\n/g, '<br>'),
|
|
2492
|
+
};
|
|
2493
|
+
});
|
|
2494
|
+
this.loaded.set(true);
|
|
2495
|
+
setTimeout(() => this.checkScroll(), 50);
|
|
2496
|
+
}
|
|
2497
|
+
getPageTitle() {
|
|
2498
|
+
return `t("app-term.page-title", {scope:"${RootConfig.config.i18n}"})`;
|
|
2499
|
+
}
|
|
2500
|
+
getPageDescription() {
|
|
2501
|
+
return `t("app-term.page-description", {scope:"${RootConfig.config.i18n}"})`;
|
|
2502
|
+
}
|
|
2503
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMListTermsComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2504
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.6", type: AXMListTermsComponent, isStandalone: true, selector: "ng-component", host: { listeners: { "window:resize": "onResize()" } }, providers: [
|
|
2505
|
+
{
|
|
2506
|
+
provide: AXPPageLayoutBase,
|
|
2507
|
+
useExisting: AXMListTermsComponent,
|
|
2508
|
+
},
|
|
2509
|
+
], usesInheritance: true, ngImport: i0, template: "<axp-page-layout *translate=\"let t\">\n @if(loaded()){\n <axp-page-content id=\"contentDiv\" axOutlineContainer target=\"h2\" [scrollableElementId]=\"'axp-page-layout'\"\n [activationOffset]=\"120\" class=\"ax-flex ax-flex-row\">\n <div class=\"ax-flex ax-flex-col\">\n @for (term of terms; track term.id) {\n <div class=\"ax-flex ax-flex-col\">\n <h2 class=\"ax-px-4 ax-font-semibold ax-text-xl\">{{ term.title }}</h2>\n <p class=\"ax-px-4 ax-text-sm ax-leading-5 ax-opacity-65\">\n {{ term.effectiveDate | format : 'datetime' | async }}\n </p>\n <div class=\"ax-pt-3 ax-pb-6 ax-px-4 ax-text-base/6\" [innerHTML]=\"term.content | safe:'html'\"></div>\n </div>\n }\n </div>\n @if(showScrollSide()){\n <div class=\"ax-hidden lg:ax-block ax-min-w-60\">\n <ax-side-menu axOutlineSideMenu look=\"with-line\" class=\"ax-w-full ax-sticky ax-top-24\"></ax-side-menu>\n </div>\n }\n </axp-page-content>\n }\n</axp-page-layout>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXFormatModule }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "directive", type: i6.AXTranslatorDirective, selector: "[translate]" }, { kind: "ngmodule", type: AXSideMenuModule }, { kind: "component", type: i2$2.AXSideMenuComponent, selector: "ax-side-menu", inputs: ["items", "look", "location"], outputs: ["itemsChange"] }, { kind: "directive", type: i2$2.AXOutlineSideMenuDirective, selector: "[axOutlineSideMenu]", exportAs: ["axOutlineSideMenu"] }, { kind: "ngmodule", type: AXOutlineModule }, { kind: "directive", type: i3$2.AXOutlineContainerDirective, selector: "[axOutlineContainer]", inputs: ["target", "smoothScroll", "showHashItem", "activationOffset", "copyUrlOnClick", "activateLastAtBottom", "scrollableElementId"], exportAs: ["axOutlineContainer"] }, { kind: "component", type: AXPPageLayoutComponent, selector: "axp-page-layout" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.AXFormatPipe, name: "format" }, { kind: "pipe", type: AXSafePipe, name: "safe" }] }); }
|
|
2510
|
+
}
|
|
2511
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.6", ngImport: i0, type: AXMListTermsComponent, decorators: [{
|
|
2512
|
+
type: Component,
|
|
2513
|
+
args: [{ imports: [
|
|
2514
|
+
CommonModule,
|
|
2515
|
+
AXDecoratorModule,
|
|
2516
|
+
AXFormatModule,
|
|
2517
|
+
AXPThemeLayoutBlockComponent,
|
|
2518
|
+
AXTranslationModule,
|
|
2519
|
+
AXSideMenuModule,
|
|
2520
|
+
AXOutlineModule,
|
|
2521
|
+
AXPPageLayoutComponent,
|
|
2522
|
+
AXSafePipe,
|
|
2523
|
+
], providers: [
|
|
2524
|
+
{
|
|
2525
|
+
provide: AXPPageLayoutBase,
|
|
2526
|
+
useExisting: AXMListTermsComponent,
|
|
2527
|
+
},
|
|
2528
|
+
], template: "<axp-page-layout *translate=\"let t\">\n @if(loaded()){\n <axp-page-content id=\"contentDiv\" axOutlineContainer target=\"h2\" [scrollableElementId]=\"'axp-page-layout'\"\n [activationOffset]=\"120\" class=\"ax-flex ax-flex-row\">\n <div class=\"ax-flex ax-flex-col\">\n @for (term of terms; track term.id) {\n <div class=\"ax-flex ax-flex-col\">\n <h2 class=\"ax-px-4 ax-font-semibold ax-text-xl\">{{ term.title }}</h2>\n <p class=\"ax-px-4 ax-text-sm ax-leading-5 ax-opacity-65\">\n {{ term.effectiveDate | format : 'datetime' | async }}\n </p>\n <div class=\"ax-pt-3 ax-pb-6 ax-px-4 ax-text-base/6\" [innerHTML]=\"term.content | safe:'html'\"></div>\n </div>\n }\n </div>\n @if(showScrollSide()){\n <div class=\"ax-hidden lg:ax-block ax-min-w-60\">\n <ax-side-menu axOutlineSideMenu look=\"with-line\" class=\"ax-w-full ax-sticky ax-top-24\"></ax-side-menu>\n </div>\n }\n </axp-page-content>\n }\n</axp-page-layout>" }]
|
|
2529
|
+
}], propDecorators: { onResize: [{
|
|
2530
|
+
type: HostListener,
|
|
2531
|
+
args: ['window:resize']
|
|
2532
|
+
}] } });
|
|
2533
|
+
|
|
2534
|
+
var listTerms_component = /*#__PURE__*/Object.freeze({
|
|
2535
|
+
__proto__: null,
|
|
2536
|
+
AXMListTermsComponent: AXMListTermsComponent
|
|
2537
|
+
});
|
|
2229
2538
|
|
|
2230
2539
|
/**
|
|
2231
2540
|
* Generated bundle index. Do not edit.
|
|
2232
2541
|
*/
|
|
2233
2542
|
|
|
2234
|
-
export { AXMAppPromotionService, AXMAppTermService, AXMAppTermServiceImpl, AXMContentManagementModule, AXMEntityProvider, AXMGlossaryService, AXMGlossaryServiceImpl, AXMMenuProvider, AXMPromotionDataSourceDefinition, AXMPromotionServiceImpl, AXMPromotionSlotComponent, AXMSearchCommandProvider, AXMSettingProvider, RootConfig, appTermEntityEntityFactory, glossaryEntityFactory, promotionEntityFactory };
|
|
2543
|
+
export { AXMAppPromotionService, AXMAppTermService, AXMAppTermServiceImpl, AXMContentManagementModule, AXMEntityProvider, AXMGlossaryService, AXMGlossaryServiceImpl, AXMListTermsComponent, AXMMenuProvider, AXMNotifyAppTermComponent, AXMPromotionDataSourceDefinition, AXMPromotionServiceImpl, AXMPromotionSlotComponent, AXMSearchCommandProvider, AXMSettingProvider, RootConfig, appTermEntityEntityFactory, glossaryEntityFactory, promotionEntityFactory };
|
|
2235
2544
|
//# sourceMappingURL=acorex-modules-content-management.mjs.map
|