@acorex/platform 18.0.6 → 18.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/auth/lib/auth.strategy.d.ts +1 -1
  2. package/auth/lib/session.service.d.ts +0 -1
  3. package/common/lib/data/data-provider.types.d.ts +1 -1
  4. package/common/lib/schema/entity/entity.class.d.ts +1 -0
  5. package/common/lib/schema/widgets/lookup/lookup-widget-column.component.d.ts +1 -1
  6. package/common/lib/schema/widgets/lookup/lookup-widget-edit.component.d.ts +3 -1
  7. package/common/lib/schema/widgets/phone/phone-widget-edit.component.d.ts +3 -1
  8. package/esm2022/auth/lib/auth.guard.mjs +4 -4
  9. package/esm2022/auth/lib/auth.strategy.mjs +1 -1
  10. package/esm2022/auth/lib/session.service.mjs +14 -15
  11. package/esm2022/common/lib/data/data-provider.types.mjs +1 -1
  12. package/esm2022/common/lib/schema/entity/entity.class.mjs +1 -1
  13. package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-edit.component.mjs +2 -2
  14. package/esm2022/common/lib/schema/widgets/avatar/avatar-widget-view.component.mjs +2 -2
  15. package/esm2022/common/lib/schema/widgets/common-widget-filter/boolean-widget-filter.component.mjs +1 -1
  16. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-edit.component.mjs +2 -2
  17. package/esm2022/common/lib/schema/widgets/dateTime/dateTime-widget-filter.component.mjs +2 -2
  18. package/esm2022/common/lib/schema/widgets/email/email-widget-edit.component.mjs +2 -2
  19. package/esm2022/common/lib/schema/widgets/file/file-widget-filter.component.mjs +2 -2
  20. package/esm2022/common/lib/schema/widgets/gallery/gallery-widget-filter.component.mjs +2 -2
  21. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-column.component.mjs +3 -3
  22. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-edit.component.mjs +23 -19
  23. package/esm2022/common/lib/schema/widgets/lookup/lookup-widget-filter.component.mjs +2 -2
  24. package/esm2022/common/lib/schema/widgets/messenger/messenger-widget-edit.component.mjs +1 -1
  25. package/esm2022/common/lib/schema/widgets/phone/phone-widget-edit.component.mjs +8 -4
  26. package/esm2022/common/lib/schema/widgets/selection-list/selection-list-widget-filter.component.mjs +2 -2
  27. package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +56 -61
  28. package/esm2022/layout/entity/lib/entity-master-single.viewmodel.mjs +4 -2
  29. package/esm2022/layout/entity/lib/entity.module.mjs +16 -19
  30. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.mjs +62 -55
  31. package/esm2022/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.mjs +83 -61
  32. package/esm2022/layout/entity/lib/workflows/create-entity.workflow.mjs +10 -8
  33. package/esm2022/layouts/lib/admin/admin.module.mjs +9 -2
  34. package/esm2022/layouts/lib/admin/entity-layout/entity-create-view/entity-create-view.component.mjs +6 -3
  35. package/esm2022/layouts/lib/admin/entity-layout/entity-details-view/entity-details-view.component.mjs +7 -5
  36. package/esm2022/layouts/lib/admin/entity-layout/entity-import-view/entity-import-view.component.mjs +91 -0
  37. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/entity-custom-view/entity-custom-view.component.mjs +4 -3
  38. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-columns/list-view-option-columns.component.mjs +4 -3
  39. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-conditions.component.mjs +4 -3
  40. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-conditions/list-view-option-filter-operator.component.mjs +1 -1
  41. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/components/list-view-option-sorting/list-view-option-sorting.component.mjs +4 -3
  42. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.mjs +18 -6
  43. package/esm2022/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.mjs +9 -5
  44. package/esm2022/layouts/lib/admin/entity-layout/entity-modify-view/entity-modify-view.component.mjs +6 -3
  45. package/esm2022/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.mjs +5 -3
  46. package/esm2022/layouts/lib/admin/entity-layout/workflows/import-entity.workflow.mjs +77 -0
  47. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +8 -5
  48. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.mjs +29 -13
  49. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.mjs +17 -13
  50. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-sorting/list-view-option-sorting.component.mjs +13 -9
  51. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-modify-view/entity-master-modify-view.component.mjs +8 -5
  52. package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.mjs +8 -5
  53. package/esm2022/widgets/lib/editors/date-time-box-widget/date-time-box-widget-edit.component.mjs +2 -2
  54. package/esm2022/widgets/lib/editors/email-box-widget/email-box-widget-edit.component.mjs +2 -2
  55. package/esm2022/widgets/lib/editors/link-widget/index.mjs +8 -0
  56. package/esm2022/widgets/lib/editors/link-widget/link-widget-column.component.mjs +19 -0
  57. package/esm2022/widgets/lib/editors/link-widget/link-widget-designer.component.mjs +19 -0
  58. package/esm2022/widgets/lib/editors/link-widget/link-widget-edit.component.mjs +391 -0
  59. package/esm2022/widgets/lib/editors/link-widget/link-widget-filter.component.mjs +20 -0
  60. package/esm2022/widgets/lib/editors/link-widget/link-widget-print.component.mjs +19 -0
  61. package/esm2022/widgets/lib/editors/link-widget/link-widget-view.component.mjs +120 -0
  62. package/esm2022/widgets/lib/editors/link-widget/link-widget.config.mjs +24 -0
  63. package/esm2022/widgets/lib/editors/number-box-widget/number-box-widget-edit.component.mjs +10 -7
  64. package/esm2022/widgets/lib/editors/phone-box-widget/phone-box-widget-edit.component.mjs +5 -3
  65. package/esm2022/widgets/lib/editors/select-box-widget/select-box-widget-edit.component.mjs +2 -2
  66. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.mjs +13 -3
  67. package/esm2022/widgets/lib/editors/signature-pad-widget/signature-pad-widget-view.component.mjs +3 -3
  68. package/esm2022/widgets/lib/widgets.module.mjs +4 -1
  69. package/fesm2022/acorex-platform-auth.mjs +14 -15
  70. package/fesm2022/acorex-platform-auth.mjs.map +1 -1
  71. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-B8txzrTw.mjs → acorex-platform-common-avatar-widget-edit.component-BtnVjoMi.mjs} +2 -2
  72. package/fesm2022/{acorex-platform-common-avatar-widget-edit.component-B8txzrTw.mjs.map → acorex-platform-common-avatar-widget-edit.component-BtnVjoMi.mjs.map} +1 -1
  73. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-B3Ubyw3X.mjs → acorex-platform-common-avatar-widget-view.component-0-hGLYLK.mjs} +2 -2
  74. package/fesm2022/{acorex-platform-common-avatar-widget-view.component-B3Ubyw3X.mjs.map → acorex-platform-common-avatar-widget-view.component-0-hGLYLK.mjs.map} +1 -1
  75. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CcJ5Vj4q.mjs → acorex-platform-common-boolean-widget-filter.component-CMkjO_x1.mjs} +2 -2
  76. package/fesm2022/{acorex-platform-common-boolean-widget-filter.component-CcJ5Vj4q.mjs.map → acorex-platform-common-boolean-widget-filter.component-CMkjO_x1.mjs.map} +1 -1
  77. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DRsoJMVG.mjs → acorex-platform-common-dateTime-widget-edit.component-DdqtbOY1.mjs} +2 -2
  78. package/fesm2022/{acorex-platform-common-dateTime-widget-edit.component-DRsoJMVG.mjs.map → acorex-platform-common-dateTime-widget-edit.component-DdqtbOY1.mjs.map} +1 -1
  79. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-uB7iwji0.mjs → acorex-platform-common-dateTime-widget-filter.component-BjtIJkeC.mjs} +2 -2
  80. package/fesm2022/{acorex-platform-common-dateTime-widget-filter.component-uB7iwji0.mjs.map → acorex-platform-common-dateTime-widget-filter.component-BjtIJkeC.mjs.map} +1 -1
  81. package/fesm2022/{acorex-platform-common-email-widget-edit.component-CY-Nu0xD.mjs → acorex-platform-common-email-widget-edit.component-CLl0gmdM.mjs} +2 -2
  82. package/fesm2022/{acorex-platform-common-email-widget-edit.component-CY-Nu0xD.mjs.map → acorex-platform-common-email-widget-edit.component-CLl0gmdM.mjs.map} +1 -1
  83. package/fesm2022/{acorex-platform-common-file-widget-filter.component-qL-PznYm.mjs → acorex-platform-common-file-widget-filter.component-DqYmxdx_.mjs} +2 -2
  84. package/fesm2022/{acorex-platform-common-file-widget-filter.component-qL-PznYm.mjs.map → acorex-platform-common-file-widget-filter.component-DqYmxdx_.mjs.map} +1 -1
  85. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-Bvy3nmy6.mjs → acorex-platform-common-gallery-widget-filter.component-Btrq4HP9.mjs} +2 -2
  86. package/fesm2022/{acorex-platform-common-gallery-widget-filter.component-Bvy3nmy6.mjs.map → acorex-platform-common-gallery-widget-filter.component-Btrq4HP9.mjs.map} +1 -1
  87. package/fesm2022/{acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs → acorex-platform-common-lookup-widget-column.component-CtvP7V_w.mjs} +3 -3
  88. package/fesm2022/acorex-platform-common-lookup-widget-column.component-CtvP7V_w.mjs.map +1 -0
  89. package/fesm2022/{acorex-platform-common-lookup-widget-edit.component-CpzTuRyJ.mjs → acorex-platform-common-lookup-widget-edit.component-JjtWsg2g.mjs} +23 -19
  90. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-JjtWsg2g.mjs.map +1 -0
  91. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-i8oRoMWh.mjs → acorex-platform-common-lookup-widget-filter.component-B4C5JB_p.mjs} +2 -2
  92. package/fesm2022/{acorex-platform-common-lookup-widget-filter.component-i8oRoMWh.mjs.map → acorex-platform-common-lookup-widget-filter.component-B4C5JB_p.mjs.map} +1 -1
  93. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-WHM8ANuQ.mjs → acorex-platform-common-messenger-widget-edit.component-BjqtP0ls.mjs} +2 -2
  94. package/fesm2022/{acorex-platform-common-messenger-widget-edit.component-WHM8ANuQ.mjs.map → acorex-platform-common-messenger-widget-edit.component-BjqtP0ls.mjs.map} +1 -1
  95. package/fesm2022/{acorex-platform-common-phone-widget-edit.component-BdxXFoxc.mjs → acorex-platform-common-phone-widget-edit.component-Dj_tdhZw.mjs} +8 -4
  96. package/fesm2022/acorex-platform-common-phone-widget-edit.component-Dj_tdhZw.mjs.map +1 -0
  97. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-NDAFZhfE.mjs → acorex-platform-common-selection-list-widget-filter.component-hbxBcirf.mjs} +2 -2
  98. package/fesm2022/{acorex-platform-common-selection-list-widget-filter.component-NDAFZhfE.mjs.map → acorex-platform-common-selection-list-widget-filter.component-hbxBcirf.mjs.map} +1 -1
  99. package/fesm2022/acorex-platform-common.mjs +15 -15
  100. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  101. package/fesm2022/acorex-platform-layout-entity.mjs +309 -289
  102. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  103. package/fesm2022/acorex-platform-layouts-entity-create-view.component-DgPPnU8S.mjs +110 -0
  104. package/fesm2022/acorex-platform-layouts-entity-create-view.component-DgPPnU8S.mjs.map +1 -0
  105. package/fesm2022/acorex-platform-layouts-entity-import-view.component-V50y5Jjs.mjs +93 -0
  106. package/fesm2022/acorex-platform-layouts-entity-import-view.component-V50y5Jjs.mjs.map +1 -0
  107. package/fesm2022/{acorex-platform-layouts-entity-modify-view.component-C-dS2HFl.mjs → acorex-platform-layouts-entity-modify-view.component-Bwz4yVpK.mjs} +6 -3
  108. package/fesm2022/acorex-platform-layouts-entity-modify-view.component-Bwz4yVpK.mjs.map +1 -0
  109. package/fesm2022/acorex-platform-layouts.mjs +130 -35
  110. package/fesm2022/acorex-platform-layouts.mjs.map +1 -1
  111. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-qOxuoK6c.mjs +99 -0
  112. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-qOxuoK6c.mjs.map +1 -0
  113. package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-DHmUvWx8.mjs → acorex-platform-themes-default-entity-master-modify-view.component-BJcpG94Q.mjs} +9 -6
  114. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BJcpG94Q.mjs.map +1 -0
  115. package/fesm2022/acorex-platform-themes-default.mjs +50 -31
  116. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  117. package/fesm2022/acorex-platform-widgets.mjs +628 -14
  118. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  119. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +7 -6
  120. package/layout/entity/lib/entity-master-single.viewmodel.d.ts +1 -0
  121. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +5 -4
  122. package/layout/entity/lib/workflows/create-entity.workflow.d.ts +1 -0
  123. package/layouts/lib/admin/entity-layout/entity-import-view/entity-import-view.component.d.ts +27 -0
  124. package/layouts/lib/admin/entity-layout/entity-list-view/entity-list-view.component.d.ts +2 -0
  125. package/layouts/lib/admin/entity-layout/entity-list-view/list-view.module.d.ts +2 -1
  126. package/layouts/lib/admin/entity-layout/workflows/create-entity.workflow.d.ts +1 -0
  127. package/layouts/lib/admin/entity-layout/workflows/import-entity.workflow.d.ts +27 -0
  128. package/package.json +4 -1
  129. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +3 -0
  130. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/list-view-option-columns/list-view-option-columns.component.d.ts +1 -1
  131. package/widgets/lib/editors/link-widget/index.d.ts +7 -0
  132. package/widgets/lib/editors/link-widget/link-widget-column.component.d.ts +6 -0
  133. package/widgets/lib/editors/link-widget/link-widget-designer.component.d.ts +6 -0
  134. package/widgets/lib/editors/link-widget/link-widget-edit.component.d.ts +45 -0
  135. package/widgets/lib/editors/link-widget/link-widget-filter.component.d.ts +6 -0
  136. package/widgets/lib/editors/link-widget/link-widget-print.component.d.ts +6 -0
  137. package/widgets/lib/editors/link-widget/link-widget-view.component.d.ts +13 -0
  138. package/widgets/lib/editors/link-widget/link-widget.config.d.ts +2 -0
  139. package/widgets/lib/editors/number-box-widget/number-box-widget-edit.component.d.ts +4 -1
  140. package/widgets/lib/editors/signature-pad-widget/signature-pad-widget-edit.component.d.ts +2 -0
  141. package/fesm2022/acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs.map +0 -1
  142. package/fesm2022/acorex-platform-common-lookup-widget-edit.component-CpzTuRyJ.mjs.map +0 -1
  143. package/fesm2022/acorex-platform-common-phone-widget-edit.component-BdxXFoxc.mjs.map +0 -1
  144. package/fesm2022/acorex-platform-layouts-entity-create-view.component-Bxkv579D.mjs +0 -107
  145. package/fesm2022/acorex-platform-layouts-entity-create-view.component-Bxkv579D.mjs.map +0 -1
  146. package/fesm2022/acorex-platform-layouts-entity-modify-view.component-C-dS2HFl.mjs.map +0 -1
  147. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CTlj-QBs.mjs +0 -96
  148. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-CTlj-QBs.mjs.map +0 -1
  149. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-DHmUvWx8.mjs.map +0 -1
@@ -1,9 +1,9 @@
1
- import { Injector } from "@angular/core";
2
- import { ResolveFn } from "@angular/router";
3
- import { AXPEntityCommandTriggerViewModel, AXPEntityListViewColumnViewModel } from "./entity.viewmodel";
4
- import { AXDataSource } from "@acorex/components/common";
5
- import { AXPEntity, AXPQueryView, AXPBeardCrumb } from "@acorex/platform/common";
6
- import { Subject } from "rxjs";
1
+ import { AXDataSource } from '@acorex/components/common';
2
+ import { AXPBeardCrumb, AXPEntity, AXPQueryView } from '@acorex/platform/common';
3
+ import { Injector } from '@angular/core';
4
+ import { ResolveFn } from '@angular/router';
5
+ import { Subject } from 'rxjs';
6
+ import { AXPEntityCommandTriggerViewModel, AXPEntityListViewColumnViewModel } from './entity.viewmodel';
7
7
  import * as i0 from "@angular/core";
8
8
  export interface AXPEntityMasterListViewSortPropViewModel {
9
9
  name: string;
@@ -30,6 +30,7 @@ export declare class AXPEntityMasterListViewModel {
30
30
  private readonly session;
31
31
  private readonly workflow;
32
32
  private readonly destroyed;
33
+ private translateService;
33
34
  events$: Subject<{
34
35
  action: string;
35
36
  }>;
@@ -42,6 +42,7 @@ export declare class AXPEntityMasterSingleViewModel {
42
42
  private readonly formatService;
43
43
  private readonly workflow;
44
44
  private readonly destroyed;
45
+ private translateService;
45
46
  events$: Subject<{
46
47
  action: string;
47
48
  }>;
@@ -1,11 +1,11 @@
1
1
  import { AXClickEvent, AXDataSourceFilterOption, AXFocusEvent, AXHtmlEvent, AXValueChangedEvent } from '@acorex/components/common';
2
- import { AXPWidgetBase } from '@acorex/platform/layout/builder';
3
- import { Injector } from '@angular/core';
2
+ import { AXPopupService } from '@acorex/components/popup';
4
3
  import { AXTextBoxComponent } from '@acorex/components/text-box';
5
4
  import { AXFormatService } from '@acorex/core/format';
6
- import { AXPopupService } from '@acorex/components/popup';
7
- import { AXPLookupWidgetSelectorViewModel } from './lookup-widget-selector.viewmodel';
8
5
  import { AXPQueryFilter, AXPValidationRules } from '@acorex/platform/common';
6
+ import { AXPWidgetBase } from '@acorex/platform/layout/builder';
7
+ import { Injector } from '@angular/core';
8
+ import { AXPLookupWidgetSelectorViewModel } from './lookup-widget-selector.viewmodel';
9
9
  import * as i0 from "@angular/core";
10
10
  export declare class AXPLookupWidgetEditComponent extends AXPWidgetBase<any> {
11
11
  protected textField: string;
@@ -19,6 +19,7 @@ export declare class AXPLookupWidgetEditComponent extends AXPWidgetBase<any> {
19
19
  protected popupService: AXPopupService;
20
20
  private readonly builderService;
21
21
  private readonly destroyRef;
22
+ private translateService;
22
23
  private entityDef;
23
24
  protected conditions?: AXPQueryFilter[];
24
25
  protected displayText: import("@angular/core").WritableSignal<string>;
@@ -17,6 +17,7 @@ export declare class AXPEntityCreatePopupAction extends AXPWorkflowAction {
17
17
  private platform;
18
18
  private factory;
19
19
  private config;
20
+ private translateService;
20
21
  execute(context: AXPWorkflowContext): Promise<void>;
21
22
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPEntityCreatePopupAction, never>;
22
23
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPEntityCreatePopupAction>;
@@ -0,0 +1,27 @@
1
+ import { AXBasePageComponent } from '@acorex/components/page';
2
+ import { AXPDataProvider, AXPEntityConfig } from '@acorex/platform/common';
3
+ import { ElementRef, WritableSignal } from '@angular/core';
4
+ import { FormControl, FormGroup } from '@angular/forms';
5
+ import { AXPWorkflowService } from '@acorex/platform/workflow';
6
+ import * as i0 from "@angular/core";
7
+ export declare class AXPEntityImportViewComponent extends AXBasePageComponent {
8
+ fileInput: import("@angular/core").Signal<ElementRef<HTMLDivElement> | undefined>;
9
+ protected workflow: AXPWorkflowService;
10
+ protected dataService: AXPDataProvider;
11
+ protected entity: AXPEntityConfig;
12
+ protected submitLoading: WritableSignal<boolean>;
13
+ protected selectedFileInfo: WritableSignal<{
14
+ name: string;
15
+ size: string;
16
+ } | null>;
17
+ form: FormGroup<{
18
+ title: FormControl<string | null>;
19
+ file: FormControl<null>;
20
+ }>;
21
+ onFilePicked(event: Event): void;
22
+ protected handleCloseClick(): void;
23
+ protected handleUploadClick(): Promise<void>;
24
+ handleUploaderClick(): void;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPEntityImportViewComponent, never>;
26
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPEntityImportViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
27
+ }
@@ -38,6 +38,7 @@ export declare class AXPEntityListViewComponent {
38
38
  protected canDelete: boolean;
39
39
  protected canCreate: boolean;
40
40
  protected canUpdate: boolean;
41
+ protected canImport: boolean;
41
42
  protected focusedRow: any;
42
43
  viewsTemplate: TemplateRef<unknown>;
43
44
  grid: AXDataTableComponent;
@@ -56,6 +57,7 @@ export declare class AXPEntityListViewComponent {
56
57
  protected handleRowDbClick(e: AXDataTableRowDbClick): void;
57
58
  protected handleRowCommandClick(e: AXRowCommandItemClickEvent): Promise<void>;
58
59
  protected handleCreateClick(): void;
60
+ protected handleImportClick(): void;
59
61
  protected handleCommandClick(command: string): void;
60
62
  protected clearSelectedItems(): void;
61
63
  protected closeDrawer(name: string, collapsed: boolean): void;
@@ -34,8 +34,9 @@ import * as i32 from "@angular/cdk/drag-drop";
34
34
  import * as i33 from "@angular/cdk/portal";
35
35
  import * as i34 from "@acorex/platform/common";
36
36
  import * as i35 from "@acorex/platform/auth";
37
+ import * as i36 from "@acorex/core/translation";
37
38
  export declare class AXPListViewModule {
38
39
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPListViewModule, never>;
39
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPListViewModule, [typeof i1.AXPEntityListViewComponent, typeof i2.AXPEntityCreateCustomViewComponent, typeof i3.AXPListViewOptionsColumnsComponent, typeof i4.AXPListViewOptionConditionsComponent, typeof i5.AXPListViewOptionFilterOperatorComponent, typeof i6.AXPListViewOptionSortingComponent], [typeof i7.CommonModule, typeof i8.FormsModule, typeof i9.AXCommonModule, typeof i10.AXDataTableModule, typeof i11.AXButtonModule, typeof i12.AXDecoratorModule, typeof i13.AXBadgeModule, typeof i14.AXDropdownModule, typeof i15.AXPopoverModule, typeof i16.AXImageModule, typeof i17.AXSwitchModule, typeof i18.AXDrawerModule, typeof i19.AXLoadingModule, typeof i20.AXTabsModule, typeof i21.AXSelectBoxModule, typeof i22.AXFormModule, typeof i23.AXListModule, typeof i24.AXTextBoxModule, typeof i25.AXSearchBoxModule, typeof i26.AXLabelModule, typeof i27.AXCollapseModule, typeof i28.AXActionSheetModule, typeof i29.AXSelectionListModule, typeof i16.AXImageModule, typeof i30.AXDialogModule, typeof i31.AXDropdownButtonModule, typeof i32.CdkDropList, typeof i32.CdkDrag, typeof i32.CdkDragPlaceholder, typeof i32.CdkDragHandle, typeof i33.PortalModule, typeof i34.AXPSchemaModule, typeof i34.AXPCommonWidgetModule, typeof i35.AXPAuthModule], never>;
40
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXPListViewModule, [typeof i1.AXPEntityListViewComponent, typeof i2.AXPEntityCreateCustomViewComponent, typeof i3.AXPListViewOptionsColumnsComponent, typeof i4.AXPListViewOptionConditionsComponent, typeof i5.AXPListViewOptionFilterOperatorComponent, typeof i6.AXPListViewOptionSortingComponent], [typeof i7.CommonModule, typeof i8.FormsModule, typeof i9.AXCommonModule, typeof i10.AXDataTableModule, typeof i11.AXButtonModule, typeof i12.AXDecoratorModule, typeof i13.AXBadgeModule, typeof i14.AXDropdownModule, typeof i15.AXPopoverModule, typeof i16.AXImageModule, typeof i17.AXSwitchModule, typeof i18.AXDrawerModule, typeof i19.AXLoadingModule, typeof i20.AXTabsModule, typeof i21.AXSelectBoxModule, typeof i22.AXFormModule, typeof i23.AXListModule, typeof i24.AXTextBoxModule, typeof i25.AXSearchBoxModule, typeof i26.AXLabelModule, typeof i27.AXCollapseModule, typeof i28.AXActionSheetModule, typeof i29.AXSelectionListModule, typeof i16.AXImageModule, typeof i30.AXDialogModule, typeof i31.AXDropdownButtonModule, typeof i32.CdkDropList, typeof i32.CdkDrag, typeof i32.CdkDragPlaceholder, typeof i32.CdkDragHandle, typeof i33.PortalModule, typeof i34.AXPSchemaModule, typeof i34.AXPCommonWidgetModule, typeof i35.AXPAuthModule, typeof i36.AXTranslationModule], never>;
40
41
  static ɵinj: i0.ɵɵInjectorDeclaration<AXPListViewModule>;
41
42
  }
@@ -18,6 +18,7 @@ export declare class AXPEntityCreatePopupAction extends AXPWorkflowAction {
18
18
  private popupService;
19
19
  private platform;
20
20
  private entityCreateFactory;
21
+ private translateService;
21
22
  execute(context: AXPWorkflowContext): Promise<void>;
22
23
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPEntityCreatePopupAction, never>;
23
24
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPEntityCreatePopupAction>;
@@ -0,0 +1,27 @@
1
+ import { AXPWorkflow, AXPWorkflowAction, AXPWorkflowContext } from '@acorex/platform/workflow';
2
+ import * as i0 from "@angular/core";
3
+ export declare const AXPImportEntityEvent: {
4
+ (payload: {
5
+ module: string;
6
+ entity: string;
7
+ }): {
8
+ type: string;
9
+ payload: {
10
+ module: string;
11
+ entity: string;
12
+ };
13
+ };
14
+ type: string;
15
+ };
16
+ export declare class AXPEntityImportPopupAction extends AXPWorkflowAction {
17
+ private entityRegistery;
18
+ private popupService;
19
+ private platform;
20
+ execute(context: AXPWorkflowContext): Promise<void>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPEntityImportPopupAction, never>;
22
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPEntityImportPopupAction>;
23
+ }
24
+ export declare class AXPEntityImportSubmittedAction extends AXPWorkflowAction {
25
+ execute(context: AXPWorkflowContext): Promise<void>;
26
+ }
27
+ export declare const AXPImportEntityWorkflow: AXPWorkflow;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/platform",
3
- "version": "18.0.6",
3
+ "version": "18.0.7",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=18.0.0",
6
6
  "@angular/core": ">=18.0.0",
@@ -12,9 +12,12 @@
12
12
  "leaflet": "^1.9.4",
13
13
  "leaflet-draw": "^1.0.4",
14
14
  "lodash-es": "^4.17.21",
15
+ "@types/lodash-es": "^1.3.7",
15
16
  "memoizee": "^0.4.15",
16
17
  "oidc-client-ts": "^3.0.1",
17
18
  "quill": "^1.3.7",
19
+ "jspdf": "^2.5.1",
20
+ "html2canvas": "^1.4.1",
18
21
  "signature_pad": "^4.1.7",
19
22
  "@acorex/styles": ">=18.0.4",
20
23
  "@acorex/core": ">=18.0.4",
@@ -14,6 +14,7 @@ export declare class AXPEntityMasterListViewComponent {
14
14
  protected isSM: import("rxjs").Observable<boolean>;
15
15
  protected isOpen: import("rxjs").Observable<boolean>;
16
16
  protected focusedRow: any;
17
+ protected searchBarShown: import("@angular/core").WritableSignal<boolean>;
17
18
  grid: AXDataTableComponent;
18
19
  constructor(actionSheetService: AXActionSheetService, platform: AXPlatform);
19
20
  ngAfterViewInit(): void;
@@ -24,6 +25,8 @@ export declare class AXPEntityMasterListViewComponent {
24
25
  protected getDropdownRowItems: (rowData: unknown) => Promise<AXRowCommandItem[]>;
25
26
  protected handleRowCommandClick(e: AXRowCommandItemClickEvent): Promise<void>;
26
27
  protected handleSelectedRowsChange(rows: unknown[]): Promise<void>;
28
+ protected makeResponsive<t>(value: t): t | string;
29
+ protected toggleSearchBar(): void;
27
30
  ngOnDestroy(): void;
28
31
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPEntityMasterListViewComponent, never>;
29
32
  static ɵcmp: i0.ɵɵComponentDeclaration<AXPEntityMasterListViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
@@ -1,7 +1,7 @@
1
1
  import { AXValueChangedEvent } from '@acorex/components/common';
2
+ import { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';
2
3
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
3
4
  import { EventEmitter } from '@angular/core';
4
- import { AXPEntityMasterListViewModel } from '@acorex/platform/layout/entity';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class AXPListViewOptionsColumnsComponent {
7
7
  private store;
@@ -0,0 +1,7 @@
1
+ export * from './link-widget-view.component';
2
+ export * from './link-widget-edit.component';
3
+ export * from './link-widget-filter.component';
4
+ export * from './link-widget-column.component';
5
+ export * from './link-widget-print.component';
6
+ export * from './link-widget-designer.component';
7
+ export * from './link-widget.config';
@@ -0,0 +1,6 @@
1
+ import { AXPColumnWidgetBase } from '@acorex/platform/layout/builder';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPLinkWidgetColumnComponent extends AXPColumnWidgetBase<any> {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPLinkWidgetColumnComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPLinkWidgetColumnComponent, "ng-component", never, { "rawValue": { "alias": "rawValue"; "required": false; }; }, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { AXPWidgetBase } from '@acorex/platform/layout/builder';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPLinkWidgetDesignerComponent extends AXPWidgetBase<any> {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPLinkWidgetDesignerComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPLinkWidgetDesignerComponent, "ng-component", never, {}, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,45 @@
1
+ import { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';
2
+ import { AXTranslationService } from '@acorex/core/translation';
3
+ import { AXValidationService } from '@acorex/core/validation';
4
+ import { AXPValidationRules } from '@acorex/platform/common';
5
+ import { AXPWidgetBase } from '@acorex/platform/layout/builder';
6
+ import { Signal } from '@angular/core';
7
+ import * as i0 from "@angular/core";
8
+ export declare class AXPLinkWidgetEditComponent extends AXPWidgetBase<any> {
9
+ protected validationService: AXValidationService;
10
+ protected translateService: AXTranslationService;
11
+ protected multiple: boolean;
12
+ protected validationMessage?: string | null;
13
+ protected disabled: boolean;
14
+ protected clearButton: boolean;
15
+ protected hasLabel: boolean;
16
+ protected hasTitle: boolean;
17
+ protected labelTypes: string[];
18
+ protected linkTypes: string[];
19
+ protected dataSource: AXDataSource<any>;
20
+ protected internalValue: Signal<{
21
+ value: string;
22
+ label?: string;
23
+ title: string;
24
+ icon?: string;
25
+ protocol: 'http' | 'https' | 'related';
26
+ }[]>;
27
+ ngOnInit(): void;
28
+ private _validationRules;
29
+ get validationRules(): AXPValidationRules;
30
+ set validationRules(v: AXPValidationRules);
31
+ private getValueAsArrayOfObjects;
32
+ protected handleValueChange(e: AXValueChangedEvent, selectedIndex: number): void;
33
+ protected convertItem: (item: any, e: any) => any;
34
+ protected addItem(): void;
35
+ protected deleteItem(deletedIndex: number): void;
36
+ protected validateFn: (val: string) => Promise<{
37
+ rule: string;
38
+ result: boolean;
39
+ message: string;
40
+ value: string;
41
+ }>;
42
+ protected generateClasses(elementName: 'url' | 'title' | 'label'): Array<string>;
43
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPLinkWidgetEditComponent, never>;
44
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPLinkWidgetEditComponent, "ng-component", never, {}, {}, never, never, true, never>;
45
+ }
@@ -0,0 +1,6 @@
1
+ import { AXPWidgetBase } from '@acorex/platform/layout/builder';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPLinkWidgetFilterComponent extends AXPWidgetBase<any> {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPLinkWidgetFilterComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPLinkWidgetFilterComponent, "ng-component", never, {}, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { AXPWidgetBase } from '@acorex/platform/layout/builder';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPLinkWidgetPrintComponent extends AXPWidgetBase<any> {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPLinkWidgetPrintComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPLinkWidgetPrintComponent, "ng-component", never, {}, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,13 @@
1
+ import { AXPClipBoardService } from '@acorex/platform/common';
2
+ import { AXPWidgetBase } from '@acorex/platform/layout/builder';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXPLinkWidgetViewComponent extends AXPWidgetBase<any> {
5
+ protected clipboard: AXPClipBoardService;
6
+ protected multiple: boolean;
7
+ protected hasLabel: boolean;
8
+ protected target: 'self' | 'blank';
9
+ protected internalValue: import("@angular/core").Signal<any>;
10
+ private extractItem;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPLinkWidgetViewComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPLinkWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
13
+ }
@@ -0,0 +1,2 @@
1
+ import { AXPWidgetConfig } from '@acorex/platform/layout/builder';
2
+ export declare const AXPLinkWidget: AXPWidgetConfig;
@@ -8,6 +8,9 @@ export declare class AXPNumberBoxWidgetEditComponent extends AXPWidgetBase<any>
8
8
  protected clearButton: boolean;
9
9
  protected placeholder: string | null;
10
10
  protected disabled: boolean;
11
+ protected format: {
12
+ name: string;
13
+ };
11
14
  protected multiple: boolean;
12
15
  protected decimals: number;
13
16
  protected validationService: AXValidationService;
@@ -21,5 +24,5 @@ export declare class AXPNumberBoxWidgetEditComponent extends AXPWidgetBase<any>
21
24
  protected addItem(): void;
22
25
  protected deleteItem(i: number): void;
23
26
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPNumberBoxWidgetEditComponent, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPNumberBoxWidgetEditComponent, "ng-component", never, { "validationRules": { "alias": "validationRules"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPNumberBoxWidgetEditComponent, "ng-component", never, { "validationRules": { "alias": "validationRules"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "format": { "alias": "format"; "required": false; }; }, {}, never, never, true, never>;
25
28
  }
@@ -1,3 +1,4 @@
1
+ import { AXPlatform } from '@acorex/core/platform';
1
2
  import { AXPWidgetBase } from '@acorex/platform/layout/builder';
2
3
  import { ElementRef, WritableSignal } from '@angular/core';
3
4
  import SignaturePad from 'signature_pad';
@@ -6,6 +7,7 @@ export declare class AXPSignatureWidgetEditComponent extends AXPWidgetBase<any>
6
7
  padCanvas: ElementRef<HTMLCanvasElement>;
7
8
  protected signaturePad: SignaturePad;
8
9
  protected editMode: WritableSignal<boolean>;
10
+ protected platform: AXPlatform;
9
11
  ngOnInit(): Promise<void>;
10
12
  private changeModeEffect;
11
13
  initPad(): Promise<void>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-common-lookup-widget-column.component-Cl-vO5XW.mjs","sources":["../../../../libs/platform/common/src/lib/schema/widgets/lookup/lookup-widget-column.component.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { AXPWidgetBase } from '../../widget/widget-base';\n@Component({\n selector: 'axp-lookup-widget-column',\n template: '{{text}}',\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n inputs: ['context', 'multiple', 'width', 'textField', 'valueField', 'reference', 'referenceField', 'allowResizing', 'template'],\n})\nexport class AXPLookupWidgetColumnComponent extends AXPWidgetBase {\n protected multiple!: boolean;\n protected list: { id: string; text: string }[] = [];\n protected text!: string;\n protected template!: string;\n protected textField: string = 'title';\n protected valueField: string = 'id';\n\n override render() {\n const rawValue = this.rawValue;\n this.list = Array.isArray(rawValue) ? rawValue.map((c) => this.extractItem(c)) : [this.extractItem(rawValue)];\n //\n this.text = this.list.map((c) => c.text).join(', ');\n }\n\n private extractItem(item: any): any {\n return typeof item == 'object' && item\n ? {\n id: item[this.valueField],\n text: this.template ? this.formatService.format(this.template, 'string', item) : item[this.textField],\n }\n : {\n id: item,\n text: '',\n };\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAWM,MAAO,8BAA+B,SAAQ,aAAa,CAAA;AARjE,IAAA,WAAA,GAAA;;QAUY,IAAI,CAAA,IAAA,GAAmC,EAAE,CAAC;QAG1C,IAAS,CAAA,SAAA,GAAW,OAAO,CAAC;QAC5B,IAAU,CAAA,UAAA,GAAW,IAAI,CAAC;AAoBrC,KAAA;IAlBU,MAAM,GAAA;AACb,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;AAC/B,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;;QAE9G,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACrD;AAEO,IAAA,WAAW,CAAC,IAAS,EAAA;AAC3B,QAAA,OAAO,OAAO,IAAI,IAAI,QAAQ,IAAI,IAAI;AACpC,cAAE;AACE,gBAAA,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;AACzB,gBAAA,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;AACtG,aAAA;AACH,cAAE;AACE,gBAAA,EAAE,EAAE,IAAI;AACR,gBAAA,IAAI,EAAE,EAAE;aACT,CAAC;KACP;8GAzBU,8BAA8B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAA9B,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAN/B,UAAU,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAGV,YAAY,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAGX,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAR1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,OAAO,EAAE,CAAC,YAAY,CAAC;AACvB,oBAAA,MAAM,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,UAAU,CAAC;AAChI,iBAAA,CAAA;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-common-lookup-widget-edit.component-CpzTuRyJ.mjs","sources":["../../../../libs/platform/common/src/lib/schema/widgets/lookup/lookup-widget-edit.component.ts"],"sourcesContent":["import { AXDataSource, AXValueChangedEvent } from '@acorex/components/common';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPEntityRegistryService } from '../../entity';\nimport { AXPWidgetEditBase } from '../../widget/widget-base';\n@Component({\n selector: 'axp-lookup-widget-edit',\n template: `\n <ax-select-box\n [valueField]=\"valueField\"\n [textField]=\"textField\"\n [ngModel]=\"value\"\n [multiple]=\"multiple\"\n (onValueChanged)=\"handleChange($event)\"\n [dataSource]=\"dataSource || []\"\n >\n @for(vl of validations;track $index) {\n <ax-validation-rule [rule]=\"vl.rule\" [options]=\"vl.options\"></ax-validation-rule>\n }\n </ax-select-box>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, FormsModule, AXSelectBoxModule, AXFormModule],\n inputs: ['value', 'reference', 'valueField', 'textField', 'multiple', 'referenceField'],\n})\nexport class AXPLookupWidgetEditComponent extends AXPWidgetEditBase {\n protected reference!: string;\n protected multiple!: boolean;\n protected valueField: string = 'value';\n protected textField: string = 'text';\n private entityRegistery = inject(AXPEntityRegistryService);\n protected dataSource!: AXDataSource;\n\n async ngOnInit() {\n const entity = await this.entityRegistery.resolve(this.reference, this.reference);\n const referenceDataSource = new AXDataSource(entity.dataSource);\n referenceDataSource.filter({\n field: '',\n operator: {\n type: 'contains',\n },\n filters: [\n {\n field: 'isArchived',\n operator: {\n type: 'equal',\n negative: false,\n },\n value: false,\n },\n ],\n });\n this.dataSource = referenceDataSource;\n }\n\n protected handleChange(e: AXValueChangedEvent) {\n if (e.isUserInteraction) {\n if (this.multiple) {\n this.value = e.component.selectedItems;\n } else {\n this.value = e.component.selectedItems[0];\n }\n }\n }\n}\n"],"names":["i1"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-common-phone-widget-edit.component-BdxXFoxc.mjs","sources":["../../../../libs/platform/common/src/lib/schema/widgets/phone/phone-widget-edit.component.ts"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXValueChangedEvent } from '@acorex/components/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { MockDataService } from '@acorex/platform/mocks';\nimport { AXPWidgetEditBase } from '../../widget/widget-base';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, WritableSignal, effect, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n template: `\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n <ng-container *ngIf=\"multiple\">\n @for(item of convertedValue();track $index) {\n <ax-text-box\n [(ngModel)]=\"item.value\"\n (onValueChanged)=\"handlePhoneChange($event, item.id)\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-12]=\"!hasLabel\"\n >\n @for(vl of validations;track $index) {\n <ax-validation-rule [rule]=\"vl.rule\" [options]=\"vl.options\"></ax-validation-rule>\n }\n </ax-text-box>\n @if(hasLabel){\n <ax-select-box\n [dataSource]=\"phoneLabels\"\n [(ngModel)]=\"item.label\"\n (onValueChanged)=\"handleLabelChange($event, item.id)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-12\"\n >\n </ax-select-box>\n }\n <ax-button\n look=\"twotone\"\n color=\"danger\"\n (onClick)=\"handleRemoveItem(item)\"\n class=\"ax-col-start-11 ax-col-end-13 lg:ax-col-start-12 lg:ax-col-end-13 ax-justify-self-end\"\n >\n <ax-icon icon=\"fa-regular fa-xmark\"></ax-icon>\n </ax-button>\n }\n </ng-container>\n <ng-container *ngIf=\"!multiple\">\n <ax-text-box\n [(ngModel)]=\"convertedValue()[0].value\"\n (onValueChanged)=\"handlePhoneChange($event, convertedValue()[0].id)\"\n type=\"text\"\n class=\"ax-col-start-1 ax-col-end-13 lg:ax-col-end-8\"\n [class.lg:!ax-col-end-13]=\"!hasLabel\"\n >\n @for(vl of validations;track $index) {\n <ax-validation-rule [rule]=\"vl.rule\" [options]=\"vl.options\"></ax-validation-rule>\n }\n </ax-text-box>\n @if(hasLabel){\n <ax-select-box\n [dataSource]=\"phoneLabels\"\n [(ngModel)]=\"convertedValue()[0].label\"\n (onValueChanged)=\"handleLabelChange($event, convertedValue()[0].id)\"\n class=\"ax-col-start-1 ax-col-end-11 lg:ax-col-start-8 lg:ax-col-end-13\"\n >\n </ax-select-box>\n }\n </ng-container>\n\n <ax-button\n *ngIf=\"multiple\"\n [text]=\"convertedValue().length == 0 ? 'Add New' : 'Add Another'\"\n look=\"twotone\"\n (onClick)=\"handleAddItem()\"\n class=\"ax-col-start-8 lg:ax-col-start-10 2xl:ax-col-start-10 ax-col-end-13\"\n >\n <ax-prefix>\n <ax-icon class=\"fa-solid fa-add\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </div>\n `,\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXButtonModule, FormsModule, AXTextBoxModule, AXDecoratorModule, AXSelectBoxModule, AXFormModule],\n inputs: ['multiple', 'hasLabel'],\n})\nexport class AXPPhoneWidgetEditComponent extends AXPWidgetEditBase<any> {\n protected mockerService = inject(MockDataService);\n protected platform = inject(AXPlatform);\n\n protected multiple!: boolean;\n protected hasLabel!: boolean;\n protected convertedValue: WritableSignal<{ value: string; label?: string; id: string }[]> = signal([]);\n\n protected phoneLabels: string[] = ['Mobile', 'Home', 'Work', 'Other'];\n\n private changeValueEffect = effect(() => {\n if (this.multiple) {\n if (this.hasLabel) this.value = this.convertedValue().map((i) => ({ value: i.value, label: i.label }));\n else this.value = this.convertedValue().map((i) => i.value);\n } else {\n if (this.hasLabel) this.value = this.convertedValue().map((i) => ({ value: i.value, label: i.label }))[0];\n else this.value = this.convertedValue().map((i) => i.value)[0];\n }\n });\n\n protected handlePhoneChange(e: AXValueChangedEvent, id: string) {\n if (e.isUserInteraction) {\n this.convertedValue.update((prev) => prev.map((i) => (i.id === id ? { ...i, value: e.value } : i)));\n }\n }\n protected handleLabelChange(e: AXValueChangedEvent, id: string) {\n if (e.isUserInteraction) {\n this.convertedValue.update((prev) => prev.map((i) => (i.id === id ? { ...i, label: e.value } : i)));\n }\n }\n\n protected handleAddItem() {\n // this.value.push({ label: 'Primary', value: undefined });\n this.convertedValue.update((prev) => [...prev, { label: this.hasLabel ? 'Primary' : '', value: '', id: this.mockerService.uid() }]);\n }\n\n protected handleRemoveItem(item: any) {\n this.convertedValue.update((prev) => prev.filter((c) => c != item));\n }\n ngOnInit(): void {\n // Initialize with an empty array if there's no value or it's empty\n if (!this.value || this.value.length === 0) {\n this.initializeEmptyValue();\n return;\n }\n\n // Process the input based on `multiple` and `hasLabel`\n if (this.multiple) {\n this.handleMultipleValue();\n } else {\n this.handleSingleValue();\n }\n }\n\n private initializeEmptyValue(): void {\n this.convertedValue.set([{ value: '', label: '', id: this.mockerService.uid() }]);\n }\n\n private handleMultipleValue(): void {\n const newValue = this.value.map((item: any) => ({\n value: this.hasLabel ? item.value : item,\n label: this.hasLabel ? item.label : null,\n id: this.mockerService.uid(),\n }));\n this.convertedValue.set(newValue);\n }\n\n private handleSingleValue(): void {\n const newValue = [\n {\n value: this.hasLabel ? this.value.value : this.value,\n label: this.hasLabel ? this.value.label : null,\n id: this.mockerService.uid(),\n },\n ];\n this.convertedValue.set(newValue);\n }\n}\n"],"names":["i3","i5","i7"],"mappings":"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"}
@@ -1,107 +0,0 @@
1
- import * as i4$1 from '@acorex/components/button';
2
- import { AXButtonModule } from '@acorex/components/button';
3
- import * as i4 from '@acorex/components/decorators';
4
- import { AXDecoratorModule } from '@acorex/components/decorators';
5
- import { AXDialogModule } from '@acorex/components/dialog';
6
- import * as i14 from '@acorex/components/dropdown-button';
7
- import { AXDropdownButtonModule } from '@acorex/components/dropdown-button';
8
- import * as i2 from '@acorex/components/form';
9
- import { AXFormModule } from '@acorex/components/form';
10
- import * as i7 from '@acorex/components/label';
11
- import { AXLabelModule } from '@acorex/components/label';
12
- import * as i5 from '@acorex/components/loading';
13
- import { AXLoadingModule } from '@acorex/components/loading';
14
- import { AXBasePageComponent } from '@acorex/components/page';
15
- import { AXTabsModule } from '@acorex/components/tabs';
16
- import { AXTooltipModule } from '@acorex/components/tooltip';
17
- import * as i10 from '@acorex/platform/common';
18
- import { AXPSchemaModule, AXPStickyDirective } from '@acorex/platform/common';
19
- import * as i1 from '@angular/common';
20
- import { CommonModule } from '@angular/common';
21
- import * as i0 from '@angular/core';
22
- import { inject, signal, Component, ChangeDetectionStrategy } from '@angular/core';
23
- import { FormsModule } from '@angular/forms';
24
- import { AXValidationModule } from '@acorex/core/validation';
25
- import { AXDropdownModule } from '@acorex/components/dropdown';
26
- import { AXPWorkflowService } from '@acorex/platform/workflow';
27
-
28
- class AXPEntityCreateViewComponent extends AXBasePageComponent {
29
- constructor() {
30
- super(...arguments);
31
- this.workflow = inject(AXPWorkflowService);
32
- this.submitLoading = signal(false);
33
- }
34
- handleCloseClick() {
35
- this.close();
36
- }
37
- async handleBackClick() {
38
- await this.loader.back();
39
- }
40
- async handleNextClick(form) {
41
- const formResult = await form.validate();
42
- if (formResult.result) {
43
- await this.loader.next();
44
- }
45
- }
46
- async handleSaveClick(form) {
47
- const formResult = await form.validate();
48
- if (formResult.result) {
49
- if (this.entity.commands?.create) {
50
- this.submitLoading.set(true);
51
- const record = await this.entity.commands.create(this.loader.data);
52
- if (record) {
53
- this.close({ save: true, recordId: record.id, redirect: true });
54
- }
55
- this.submitLoading.set(false);
56
- }
57
- }
58
- }
59
- async handleSaveAndNewClick(form) {
60
- const formResult = await form.validate();
61
- if (formResult.result) {
62
- if (this.entity.commands?.create) {
63
- this.submitLoading.set(true);
64
- const record = await this.entity.commands.create(this.loader.data);
65
- if (record) {
66
- this.close({ save: true, recordId: record.id, redirect: false });
67
- }
68
- this.submitLoading.set(false);
69
- }
70
- this.workflow.execute('create-entity', {
71
- payload: {
72
- module: this.loader.entity.module,
73
- entity: this.loader.entity.name,
74
- },
75
- });
76
- }
77
- }
78
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityCreateViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
79
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXPEntityCreateViewComponent, isStandalone: true, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"ax-min-h-[25vh]\">\n @if((loader.hasSections$ | async)) {\n <ol\n class=\"ax-flex ax-items-center ax-w-full ax-space-x-2 ax-text-sm ax-font-medium ax-text-center ax-text-gray-500 ax-bg-white dark:ax-text-gray-400 sm:ax-text-base ax-p-4 sm:ax-space-x-4 rtl:ax-space-x-reverse ax-sticky ax-top-0 ax-z-10\"\n [axpSticky]=\"'ax-bg-surface ax-drop-shadow-lg'\" [stickyParent]=\"'.ax-popup-body-container'\">\n @for(section of (loader.sections$ | async); track section.name;let index = $index;let last = $last;let count=\n $count) {\n <li class=\"ax-flex ax-items-center\">\n <span\n class=\"ax-flex ax-items-center ax-justify-center ax-w-5 ax-h-5 ax-me-2 ax-text-xs ax-text-white ax-bg-neutral-500 ax-rounded-full ax-shrink-0\"\n [class.!ax-bg-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-bg-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\">\n {{ index + 1 }}\n </span>\n <p class=\"ax-font-normal\" [class.!ax-text-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-text-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\"\n [class.!ax-font-semibold]=\"(loader.section$ | async) == section\">\n {{ section.title }}\n </p>\n\n <i *ngIf=\"!last\" [class.!ax-text-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-text-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\"\n class=\"ax-text-xs ax-text-neutral-500 fa-solid fa-chevrons-right ax-ms-2 sm:ax-ms-4 rtl:ax-rotate-180\"></i>\n </li>\n }\n </ol>\n }\n\n <ax-form class=\"ax-flex ax-flex-col ax-gap-6 ax-p-4\" #form [messageStyle]=\"'bottom'\" [updateOn]=\"'blur'\">\n @for(section of (loader.section$ | async)?.sections; track section.name;) {\n <div class=\"ax-flex ax-flex-col ax-pb-4\">\n @if(((loader.section$ | async)?.sections?.length ?? 0) > 1) {\n <div class=\"ax-pb-4\">\n <span class=\"ax-font-bold ax-text-2xl\">{{ section.title }}</span>\n @if(section.description) {\n <p class=\"ax-text-sm ax-text-gray-500\">{{ section.description }}</p>\n }\n </div>\n }\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4 ax-py-2 first:ax-pt-0 last:ax-pb-0\">\n @for(name of section.properties; track name) {\n <ng-container *ngIf=\"loader.getProp(name) as prop\">\n <!-- lg:ax-col-span-6 -->\n <!-- lg:ax-col-start-1 -->\n <ax-form-field class=\"ax-col-span-12 ax-col-start-1 lg:ax-col-span-{{\n prop.layout?.positions?.default?.span || 12\n }} lg:ax-col-start-{{ prop.layout?.positions?.default?.start || 1 }} ax-flex ax-flex-col\">\n <ax-label class=\"ax-font-semibold ax-text-sm\" [required]=\"loader.isRequired(name)\">{{ prop.title\n }}</ax-label>\n <axp-widget-renderer [schema]=\"prop.schema\" [prop]=\"prop\" [mode]=\"'edit'\"\n [context]=\"loader.data\"></axp-widget-renderer>\n </ax-form-field>\n </ng-container>\n }\n </div>\n </div>\n }\n </ax-form>\n <ax-footer>\n <ax-prefix> </ax-prefix>\n <ax-suffix>\n @if((loader.hasSections$| async) && !(loader.isFirst$| async)) {\n <ax-button look=\"solid\" color=\"ghost\" text=\"Back\" (onClick)=\"handleBackClick()\"> </ax-button>\n } @else {\n <ax-button look=\"solid\" color=\"ghost\" text=\"Cancel\" (onClick)=\"handleCloseClick()\"> </ax-button>\n } @if((loader.isLast$ | async)) {\n <ax-dropdown-button [disabled]=\"submitLoading()\" color=\"primary\" text=\"Save\" look=\"solid\"\n (onClick)=\"handleSaveClick(form)\">\n <ax-loading *ngIf=\"submitLoading()\"></ax-loading>\n <ax-button-item-list>\n <ax-button-item text=\"Save & Create New\" (onClick)=\"handleSaveAndNewClick(form)\"> </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n\n } @else {\n <ax-button look=\"solid\" color=\"primary\" text=\"Continue\" (onClick)=\"handleNextClick(form)\"> </ax-button>\n }\n </ax-suffix>\n </ax-footer>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i2.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i2.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i4.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: AXButtonModule }, { kind: "component", type: i4$1.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: "component", type: i4$1.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i4$1.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDialogModule }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i5.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTabsModule }, { kind: "ngmodule", type: AXPSchemaModule }, { kind: "component", type: i10.AXPWidgetRendererComponent, selector: "axp-widget-renderer", inputs: ["context", "prop", "mode", "schema"] }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "ngmodule", type: AXValidationModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i7.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "ngmodule", type: AXDropdownButtonModule }, { kind: "component", type: i14.AXDropdownButtonComponent, selector: "ax-dropdown-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "type", "mode"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "lookChange", "colorChange", "disabledChange"] }, { kind: "directive", type:
80
- //
81
- AXPStickyDirective, selector: "[axpSticky]", inputs: ["axpSticky", "stickyOffset", "stickyParent", "stickyTarget"], outputs: ["isStickyChange"], exportAs: ["axpSticky"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
82
- }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXPEntityCreateViewComponent, decorators: [{
84
- type: Component,
85
- args: [{ imports: [
86
- CommonModule,
87
- FormsModule,
88
- AXFormModule,
89
- AXDecoratorModule,
90
- CommonModule,
91
- AXButtonModule,
92
- AXDialogModule,
93
- AXLoadingModule,
94
- AXTabsModule,
95
- AXPSchemaModule,
96
- AXTooltipModule,
97
- AXValidationModule,
98
- AXLabelModule,
99
- AXDropdownModule,
100
- AXDropdownButtonModule,
101
- //
102
- AXPStickyDirective,
103
- ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"ax-min-h-[25vh]\">\n @if((loader.hasSections$ | async)) {\n <ol\n class=\"ax-flex ax-items-center ax-w-full ax-space-x-2 ax-text-sm ax-font-medium ax-text-center ax-text-gray-500 ax-bg-white dark:ax-text-gray-400 sm:ax-text-base ax-p-4 sm:ax-space-x-4 rtl:ax-space-x-reverse ax-sticky ax-top-0 ax-z-10\"\n [axpSticky]=\"'ax-bg-surface ax-drop-shadow-lg'\" [stickyParent]=\"'.ax-popup-body-container'\">\n @for(section of (loader.sections$ | async); track section.name;let index = $index;let last = $last;let count=\n $count) {\n <li class=\"ax-flex ax-items-center\">\n <span\n class=\"ax-flex ax-items-center ax-justify-center ax-w-5 ax-h-5 ax-me-2 ax-text-xs ax-text-white ax-bg-neutral-500 ax-rounded-full ax-shrink-0\"\n [class.!ax-bg-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-bg-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\">\n {{ index + 1 }}\n </span>\n <p class=\"ax-font-normal\" [class.!ax-text-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-text-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\"\n [class.!ax-font-semibold]=\"(loader.section$ | async) == section\">\n {{ section.title }}\n </p>\n\n <i *ngIf=\"!last\" [class.!ax-text-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-text-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\"\n class=\"ax-text-xs ax-text-neutral-500 fa-solid fa-chevrons-right ax-ms-2 sm:ax-ms-4 rtl:ax-rotate-180\"></i>\n </li>\n }\n </ol>\n }\n\n <ax-form class=\"ax-flex ax-flex-col ax-gap-6 ax-p-4\" #form [messageStyle]=\"'bottom'\" [updateOn]=\"'blur'\">\n @for(section of (loader.section$ | async)?.sections; track section.name;) {\n <div class=\"ax-flex ax-flex-col ax-pb-4\">\n @if(((loader.section$ | async)?.sections?.length ?? 0) > 1) {\n <div class=\"ax-pb-4\">\n <span class=\"ax-font-bold ax-text-2xl\">{{ section.title }}</span>\n @if(section.description) {\n <p class=\"ax-text-sm ax-text-gray-500\">{{ section.description }}</p>\n }\n </div>\n }\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4 ax-py-2 first:ax-pt-0 last:ax-pb-0\">\n @for(name of section.properties; track name) {\n <ng-container *ngIf=\"loader.getProp(name) as prop\">\n <!-- lg:ax-col-span-6 -->\n <!-- lg:ax-col-start-1 -->\n <ax-form-field class=\"ax-col-span-12 ax-col-start-1 lg:ax-col-span-{{\n prop.layout?.positions?.default?.span || 12\n }} lg:ax-col-start-{{ prop.layout?.positions?.default?.start || 1 }} ax-flex ax-flex-col\">\n <ax-label class=\"ax-font-semibold ax-text-sm\" [required]=\"loader.isRequired(name)\">{{ prop.title\n }}</ax-label>\n <axp-widget-renderer [schema]=\"prop.schema\" [prop]=\"prop\" [mode]=\"'edit'\"\n [context]=\"loader.data\"></axp-widget-renderer>\n </ax-form-field>\n </ng-container>\n }\n </div>\n </div>\n }\n </ax-form>\n <ax-footer>\n <ax-prefix> </ax-prefix>\n <ax-suffix>\n @if((loader.hasSections$| async) && !(loader.isFirst$| async)) {\n <ax-button look=\"solid\" color=\"ghost\" text=\"Back\" (onClick)=\"handleBackClick()\"> </ax-button>\n } @else {\n <ax-button look=\"solid\" color=\"ghost\" text=\"Cancel\" (onClick)=\"handleCloseClick()\"> </ax-button>\n } @if((loader.isLast$ | async)) {\n <ax-dropdown-button [disabled]=\"submitLoading()\" color=\"primary\" text=\"Save\" look=\"solid\"\n (onClick)=\"handleSaveClick(form)\">\n <ax-loading *ngIf=\"submitLoading()\"></ax-loading>\n <ax-button-item-list>\n <ax-button-item text=\"Save & Create New\" (onClick)=\"handleSaveAndNewClick(form)\"> </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n\n } @else {\n <ax-button look=\"solid\" color=\"primary\" text=\"Continue\" (onClick)=\"handleNextClick(form)\"> </ax-button>\n }\n </ax-suffix>\n </ax-footer>\n</div>" }]
104
- }] });
105
-
106
- export { AXPEntityCreateViewComponent };
107
- //# sourceMappingURL=acorex-platform-layouts-entity-create-view.component-Bxkv579D.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-layouts-entity-create-view.component-Bxkv579D.mjs","sources":["../../../../libs/platform/layouts/src/lib/admin/entity-layout/entity-create-view/entity-create-view.component.ts","../../../../libs/platform/layouts/src/lib/admin/entity-layout/entity-create-view/entity-create-view.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXFormComponent, AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { AXPEntityConfig, AXPSchemaModule } from '@acorex/platform/common';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, WritableSignal, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXPEntityCreateViewLoader } from './entity-create-view.config';\n\nimport { AXValidationModule } from '@acorex/core/validation';\n\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXPStickyDirective } from '@acorex/platform/common';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\n\n@Component({\n templateUrl: './entity-create-view.component.html',\n imports: [\n CommonModule,\n FormsModule,\n AXFormModule,\n AXDecoratorModule,\n CommonModule,\n AXButtonModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXPSchemaModule,\n AXTooltipModule,\n AXValidationModule,\n AXLabelModule,\n AXDropdownModule,\n AXDropdownButtonModule,\n //\n AXPStickyDirective,\n ],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPEntityCreateViewComponent extends AXBasePageComponent {\n protected loader!: AXPEntityCreateViewLoader;\n protected entity!: AXPEntityConfig;\n protected workflow = inject(AXPWorkflowService);\n protected submitLoading: WritableSignal<boolean> = signal(false);\n\n protected handleCloseClick() {\n this.close();\n }\n\n protected async handleBackClick() {\n await this.loader.back();\n }\n\n protected async handleNextClick(form: AXFormComponent) {\n const formResult = await form.validate();\n if (formResult.result) {\n await this.loader.next();\n }\n }\n\n protected async handleSaveClick(form: AXFormComponent) {\n const formResult = await form.validate();\n if (formResult.result) {\n if (this.entity.commands?.create) {\n this.submitLoading.set(true);\n const record = await this.entity.commands.create(this.loader.data);\n if (record) {\n this.close({ save: true, recordId: record.id, redirect: true });\n }\n this.submitLoading.set(false);\n }\n }\n }\n\n protected async handleSaveAndNewClick(form: AXFormComponent) {\n const formResult = await form.validate();\n if (formResult.result) {\n if (this.entity.commands?.create) {\n this.submitLoading.set(true);\n const record = await this.entity.commands.create(this.loader.data);\n if (record) {\n this.close({ save: true, recordId: record.id, redirect: false });\n }\n this.submitLoading.set(false);\n }\n this.workflow.execute('create-entity', {\n payload: {\n module: this.loader.entity.module,\n entity: this.loader.entity.name,\n },\n });\n }\n }\n}\n","<div class=\"ax-min-h-[25vh]\">\n @if((loader.hasSections$ | async)) {\n <ol\n class=\"ax-flex ax-items-center ax-w-full ax-space-x-2 ax-text-sm ax-font-medium ax-text-center ax-text-gray-500 ax-bg-white dark:ax-text-gray-400 sm:ax-text-base ax-p-4 sm:ax-space-x-4 rtl:ax-space-x-reverse ax-sticky ax-top-0 ax-z-10\"\n [axpSticky]=\"'ax-bg-surface ax-drop-shadow-lg'\" [stickyParent]=\"'.ax-popup-body-container'\">\n @for(section of (loader.sections$ | async); track section.name;let index = $index;let last = $last;let count=\n $count) {\n <li class=\"ax-flex ax-items-center\">\n <span\n class=\"ax-flex ax-items-center ax-justify-center ax-w-5 ax-h-5 ax-me-2 ax-text-xs ax-text-white ax-bg-neutral-500 ax-rounded-full ax-shrink-0\"\n [class.!ax-bg-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-bg-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\">\n {{ index + 1 }}\n </span>\n <p class=\"ax-font-normal\" [class.!ax-text-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-text-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\"\n [class.!ax-font-semibold]=\"(loader.section$ | async) == section\">\n {{ section.title }}\n </p>\n\n <i *ngIf=\"!last\" [class.!ax-text-primary-500]=\"(loader.section$ | async) == section\"\n [class.!ax-text-success-500]=\"index < ((loader.currentIndex$ | async) || 0)\"\n class=\"ax-text-xs ax-text-neutral-500 fa-solid fa-chevrons-right ax-ms-2 sm:ax-ms-4 rtl:ax-rotate-180\"></i>\n </li>\n }\n </ol>\n }\n\n <ax-form class=\"ax-flex ax-flex-col ax-gap-6 ax-p-4\" #form [messageStyle]=\"'bottom'\" [updateOn]=\"'blur'\">\n @for(section of (loader.section$ | async)?.sections; track section.name;) {\n <div class=\"ax-flex ax-flex-col ax-pb-4\">\n @if(((loader.section$ | async)?.sections?.length ?? 0) > 1) {\n <div class=\"ax-pb-4\">\n <span class=\"ax-font-bold ax-text-2xl\">{{ section.title }}</span>\n @if(section.description) {\n <p class=\"ax-text-sm ax-text-gray-500\">{{ section.description }}</p>\n }\n </div>\n }\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4 ax-py-2 first:ax-pt-0 last:ax-pb-0\">\n @for(name of section.properties; track name) {\n <ng-container *ngIf=\"loader.getProp(name) as prop\">\n <!-- lg:ax-col-span-6 -->\n <!-- lg:ax-col-start-1 -->\n <ax-form-field class=\"ax-col-span-12 ax-col-start-1 lg:ax-col-span-{{\n prop.layout?.positions?.default?.span || 12\n }} lg:ax-col-start-{{ prop.layout?.positions?.default?.start || 1 }} ax-flex ax-flex-col\">\n <ax-label class=\"ax-font-semibold ax-text-sm\" [required]=\"loader.isRequired(name)\">{{ prop.title\n }}</ax-label>\n <axp-widget-renderer [schema]=\"prop.schema\" [prop]=\"prop\" [mode]=\"'edit'\"\n [context]=\"loader.data\"></axp-widget-renderer>\n </ax-form-field>\n </ng-container>\n }\n </div>\n </div>\n }\n </ax-form>\n <ax-footer>\n <ax-prefix> </ax-prefix>\n <ax-suffix>\n @if((loader.hasSections$| async) && !(loader.isFirst$| async)) {\n <ax-button look=\"solid\" color=\"ghost\" text=\"Back\" (onClick)=\"handleBackClick()\"> </ax-button>\n } @else {\n <ax-button look=\"solid\" color=\"ghost\" text=\"Cancel\" (onClick)=\"handleCloseClick()\"> </ax-button>\n } @if((loader.isLast$ | async)) {\n <ax-dropdown-button [disabled]=\"submitLoading()\" color=\"primary\" text=\"Save\" look=\"solid\"\n (onClick)=\"handleSaveClick(form)\">\n <ax-loading *ngIf=\"submitLoading()\"></ax-loading>\n <ax-button-item-list>\n <ax-button-item text=\"Save & Create New\" (onClick)=\"handleSaveAndNewClick(form)\"> </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n\n } @else {\n <ax-button look=\"solid\" color=\"primary\" text=\"Continue\" (onClick)=\"handleNextClick(form)\"> </ax-button>\n }\n </ax-suffix>\n </ax-footer>\n</div>"],"names":["i3","i4","i6","i8"],"mappings":"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"}