ngx-histaff-alpha 6.7.0 → 6.7.2

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 (70) hide show
  1. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-Dj2bR7iS.mjs → ngx-histaff-alpha-ai-hint-for-table.component-C6gNt7ID.mjs} +2 -2
  2. package/fesm2022/{ngx-histaff-alpha-ai-hint-for-table.component-Dj2bR7iS.mjs.map → ngx-histaff-alpha-ai-hint-for-table.component-C6gNt7ID.mjs.map} +1 -1
  3. package/fesm2022/{ngx-histaff-alpha-core-form-design.component-Cam7V7oB.mjs → ngx-histaff-alpha-core-form-design.component-CgJL6bNn.mjs} +24 -12
  4. package/fesm2022/ngx-histaff-alpha-core-form-design.component-CgJL6bNn.mjs.map +1 -0
  5. package/fesm2022/{ngx-histaff-alpha-core-sys-action.component-D5fT6yqc.mjs → ngx-histaff-alpha-core-sys-action.component-TvSEbkRY.mjs} +2 -2
  6. package/fesm2022/{ngx-histaff-alpha-core-sys-action.component-D5fT6yqc.mjs.map → ngx-histaff-alpha-core-sys-action.component-TvSEbkRY.mjs.map} +1 -1
  7. package/fesm2022/{ngx-histaff-alpha-core-template-editor.component-BKr8PErZ.mjs → ngx-histaff-alpha-core-template-editor.component-BO2iHdtr.mjs} +2 -2
  8. package/fesm2022/{ngx-histaff-alpha-core-template-editor.component-BKr8PErZ.mjs.map → ngx-histaff-alpha-core-template-editor.component-BO2iHdtr.mjs.map} +1 -1
  9. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-BziGvhu7.mjs → ngx-histaff-alpha-core-toast-loading.component-D6L2vvEy.mjs} +2 -2
  10. package/fesm2022/{ngx-histaff-alpha-core-toast-loading.component-BziGvhu7.mjs.map → ngx-histaff-alpha-core-toast-loading.component-D6L2vvEy.mjs.map} +1 -1
  11. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-BIx0TovN.mjs → ngx-histaff-alpha-core-workflow-consume.component-B60KkHBd.mjs} +2 -2
  12. package/fesm2022/{ngx-histaff-alpha-core-workflow-consume.component-BIx0TovN.mjs.map → ngx-histaff-alpha-core-workflow-consume.component-B60KkHBd.mjs.map} +1 -1
  13. package/fesm2022/{ngx-histaff-alpha-db-settings.component-B7J6Vmhl.mjs → ngx-histaff-alpha-db-settings.component-7YXahcx6.mjs} +5 -5
  14. package/fesm2022/{ngx-histaff-alpha-db-settings.component-B7J6Vmhl.mjs.map → ngx-histaff-alpha-db-settings.component-7YXahcx6.mjs.map} +1 -1
  15. package/fesm2022/{ngx-histaff-alpha-design-wrapper.component-C8741lk_.mjs → ngx-histaff-alpha-design-wrapper.component-afSKU7r-.mjs} +12 -5
  16. package/fesm2022/ngx-histaff-alpha-design-wrapper.component-afSKU7r-.mjs.map +1 -0
  17. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BPX0_yrT.mjs → ngx-histaff-alpha-design-wrapper.route-g5HQJs3l.mjs} +5 -5
  18. package/fesm2022/{ngx-histaff-alpha-design-wrapper.route-BPX0_yrT.mjs.map → ngx-histaff-alpha-design-wrapper.route-g5HQJs3l.mjs.map} +1 -1
  19. package/fesm2022/{ngx-histaff-alpha-hrm-schema.component-CErIMXQv.mjs → ngx-histaff-alpha-hrm-schema.component-DOjUVwDx.mjs} +2 -2
  20. package/fesm2022/{ngx-histaff-alpha-hrm-schema.component-CErIMXQv.mjs.map → ngx-histaff-alpha-hrm-schema.component-DOjUVwDx.mjs.map} +1 -1
  21. package/fesm2022/{ngx-histaff-alpha-live-form.component-R3sLrUSc.mjs → ngx-histaff-alpha-live-form.component-ClikowUy.mjs} +30 -6
  22. package/fesm2022/ngx-histaff-alpha-live-form.component-ClikowUy.mjs.map +1 -0
  23. package/fesm2022/{ngx-histaff-alpha-ngx-histaff-alpha-Dn5Nu0X2.mjs → ngx-histaff-alpha-ngx-histaff-alpha-Ch_L3NjN.mjs} +602 -175
  24. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-Ch_L3NjN.mjs.map +1 -0
  25. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-C-NEp41J.mjs → ngx-histaff-alpha-simple-chat.component-CyXzjXRl.mjs} +2 -2
  26. package/fesm2022/{ngx-histaff-alpha-simple-chat.component-C-NEp41J.mjs.map → ngx-histaff-alpha-simple-chat.component-CyXzjXRl.mjs.map} +1 -1
  27. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client-edit.component-DZ4p_Fxr.mjs → ngx-histaff-alpha-sys-smtp-client-edit.component-CPtDVzH6.mjs} +2 -2
  28. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client-edit.component-DZ4p_Fxr.mjs.map → ngx-histaff-alpha-sys-smtp-client-edit.component-CPtDVzH6.mjs.map} +1 -1
  29. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client.component-BSNdC0fI.mjs → ngx-histaff-alpha-sys-smtp-client.component-D-eR59PP.mjs} +2 -2
  30. package/fesm2022/{ngx-histaff-alpha-sys-smtp-client.component-BSNdC0fI.mjs.map → ngx-histaff-alpha-sys-smtp-client.component-D-eR59PP.mjs.map} +1 -1
  31. package/fesm2022/{ngx-histaff-alpha-template-list.component-B4eqR8Au.mjs → ngx-histaff-alpha-template-list.component-D3y6Ikg6.mjs} +2 -2
  32. package/fesm2022/{ngx-histaff-alpha-template-list.component-B4eqR8Au.mjs.map → ngx-histaff-alpha-template-list.component-D3y6Ikg6.mjs.map} +1 -1
  33. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-D8f2uMmY.mjs → ngx-histaff-alpha-tracker-studio.component-B33444ca.mjs} +2 -2
  34. package/fesm2022/{ngx-histaff-alpha-tracker-studio.component-D8f2uMmY.mjs.map → ngx-histaff-alpha-tracker-studio.component-B33444ca.mjs.map} +1 -1
  35. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-E74A5t9G.mjs → ngx-histaff-alpha-wf-form-assign.component-CjUVdHfA.mjs} +2 -2
  36. package/fesm2022/{ngx-histaff-alpha-wf-form-assign.component-E74A5t9G.mjs.map → ngx-histaff-alpha-wf-form-assign.component-CjUVdHfA.mjs.map} +1 -1
  37. package/fesm2022/{ngx-histaff-alpha-wf-global-config.component-BDTnGgs7.mjs → ngx-histaff-alpha-wf-global-config.component-C6E99R89.mjs} +12 -12
  38. package/fesm2022/{ngx-histaff-alpha-wf-global-config.component-BDTnGgs7.mjs.map → ngx-histaff-alpha-wf-global-config.component-C6E99R89.mjs.map} +1 -1
  39. package/fesm2022/{ngx-histaff-alpha-wf-instance-status.component-DSz84k3j.mjs → ngx-histaff-alpha-wf-instance-status.component-inD8KWzd.mjs} +7 -6
  40. package/fesm2022/ngx-histaff-alpha-wf-instance-status.component-inD8KWzd.mjs.map +1 -0
  41. package/fesm2022/{ngx-histaff-alpha-wf-instance-step-react.component-C2ZQHv56.mjs → ngx-histaff-alpha-wf-instance-step-react.component-BwozfTka.mjs} +25 -4
  42. package/fesm2022/ngx-histaff-alpha-wf-instance-step-react.component-BwozfTka.mjs.map +1 -0
  43. package/fesm2022/{ngx-histaff-alpha-wf-lab.component-i6ic1Lf3.mjs → ngx-histaff-alpha-wf-lab.component-Ifhq99S9.mjs} +3 -3
  44. package/fesm2022/ngx-histaff-alpha-wf-lab.component-Ifhq99S9.mjs.map +1 -0
  45. package/fesm2022/ngx-histaff-alpha.mjs +1 -1
  46. package/lib/app/libraries/alert/alert/alert.model.d.ts +1 -0
  47. package/lib/app/libraries/alert/alert.service.d.ts +3 -1
  48. package/lib/app/libraries/core-date-picker/core-date-picker/core-date-picker.component.d.ts +27 -2
  49. package/lib/app/libraries/core-dom-decision-editor/core-dom-decision-editor.component.d.ts +6 -1
  50. package/lib/app/libraries/core-dom-decision-editor/dom-decision-context.service.d.ts +9 -0
  51. package/lib/app/libraries/core-dom-decision-editor/dom-entity-token/dom-entity-token.component.d.ts +8 -0
  52. package/lib/app/libraries/core-dom-decision-editor/dom-oid-factory/dom-oid-factory.component.d.ts +19 -0
  53. package/lib/app/libraries/core-dom-decision-editor/enum-interfaces/entity-token.d.ts +9 -0
  54. package/lib/app/libraries/core-dom-decision-editor/intent-composer/intent-composer.component.d.ts +2 -1
  55. package/lib/app/libraries/core-form/core-form/enum-interfaces.d.ts +1 -0
  56. package/lib/app/libraries/core-form-design/field-setting/type-specific/datepicker-props/datepicker-props.component.d.ts +3 -0
  57. package/lib/app/libraries/core-form-design/live-form/live-form.component.d.ts +1 -0
  58. package/lib/app/libraries/core-workflow-builder/core-workflow.service.d.ts +1 -1
  59. package/lib/app/libraries/core-workflow-builder/interfaces/IWorkflowReactContext.d.ts +2 -0
  60. package/lib/app/libraries/core-workflow-builder/interfaces/IWorkflowStepProgressActor.d.ts +10 -1
  61. package/lib/app/libraries/core-workflow-builder/wf-instance-step-react/wf-instance-step-react.component.d.ts +1 -0
  62. package/lib/app/libraries/services/core-datetime.service.d.ts +37 -0
  63. package/package.json +2 -2
  64. package/fesm2022/ngx-histaff-alpha-core-form-design.component-Cam7V7oB.mjs.map +0 -1
  65. package/fesm2022/ngx-histaff-alpha-design-wrapper.component-C8741lk_.mjs.map +0 -1
  66. package/fesm2022/ngx-histaff-alpha-live-form.component-R3sLrUSc.mjs.map +0 -1
  67. package/fesm2022/ngx-histaff-alpha-ngx-histaff-alpha-Dn5Nu0X2.mjs.map +0 -1
  68. package/fesm2022/ngx-histaff-alpha-wf-instance-status.component-DSz84k3j.mjs.map +0 -1
  69. package/fesm2022/ngx-histaff-alpha-wf-instance-step-react.component-C2ZQHv56.mjs.map +0 -1
  70. package/fesm2022/ngx-histaff-alpha-wf-lab.component-i6ic1Lf3.mjs.map +0 -1
@@ -0,0 +1,19 @@
1
+ import { ICoreTreeReferenceNode } from '../../core-tree-reference/core-tree-reference.component';
2
+ import { CoreFormControlBaseComponent } from '../../core-form-control-base/core-form-control-base.component';
3
+ import { IEntityToken } from '../enum-interfaces/entity-token';
4
+ import * as i0 from "@angular/core";
5
+ export declare class DomOIdFactoryComponent extends CoreFormControlBaseComponent {
6
+ private ctx;
7
+ $tokens: import("@angular/core").Signal<IEntityToken[]>;
8
+ $loading: import("@angular/core").WritableSignal<boolean>;
9
+ $searchText: import("@angular/core").WritableSignal<string>;
10
+ $displayName: import("@angular/core").WritableSignal<string>;
11
+ $open: import("@angular/core").WritableSignal<boolean>;
12
+ MOCK_DATA: readonly ICoreTreeReferenceNode[];
13
+ onTokenPicked(t: IEntityToken): void;
14
+ onSearchTextChange(e: string): void;
15
+ onPopupToggle(): void;
16
+ onTreeItemSelected(e: ICoreTreeReferenceNode): void;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<DomOIdFactoryComponent, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<DomOIdFactoryComponent, "dom-oid-factory", never, {}, {}, never, never, true, never>;
19
+ }
@@ -0,0 +1,9 @@
1
+ export interface IEntityToken {
2
+ token: string;
3
+ entityType: 'O' | 'S' | 'P';
4
+ uuid: string;
5
+ producedBySeq: number;
6
+ humanSnapshot: HumanSnapshot;
7
+ }
8
+ export type HumanSnapshot = Partial<Record<HumanReadableInputKey, string>>;
9
+ export type HumanReadableInputKey = 'CODE' | 'SHORT_CODE' | 'ORIGINAL_NAME' | 'TREE_NAME' | 'ROLE' | 'NOTE';
@@ -10,7 +10,7 @@ import { MultiLanguageService } from '../../../services/multi-language.service';
10
10
  import * as i0 from "@angular/core";
11
11
  export declare class IntentComposerComponent extends BaseComponent {
12
12
  mls: MultiLanguageService;
13
- MOCK_DATA: readonly import("../../core-tree-reference/core-tree-reference.component").ICoreTreeReferenceNode[];
13
+ MOCK_DATA: readonly import("ngx-histaff-alpha").ICoreTreeReferenceNode[];
14
14
  $descriptor: import("@angular/core").InputSignal<IIntentDescriptor>;
15
15
  $intentComposed: import("@angular/core").OutputEmitterRef<IIntentDraft>;
16
16
  $cancelled: import("@angular/core").OutputEmitterRef<void>;
@@ -34,6 +34,7 @@ export declare class IntentComposerComponent extends BaseComponent {
34
34
  private rebuildErrors;
35
35
  private buildFallbackErrorMessage;
36
36
  getErrorsOfField(fieldKey: string): IIntentInputError[];
37
+ private applyActionSpecificBehavior;
37
38
  static ɵfac: i0.ɵɵFactoryDeclaration<IntentComposerComponent, never>;
38
39
  static ɵcmp: i0.ɵɵComponentDeclaration<IntentComposerComponent, "intent-composer", never, { "$descriptor": { "alias": "$descriptor"; "required": true; "isSignal": true; }; }, { "$intentComposed": "$intentComposed"; "$cancelled": "$cancelled"; }, never, never, true, never>;
39
40
  }
@@ -179,6 +179,7 @@ interface ICoreDatePicker {
179
179
  rangeLimit?: ICoreDatePickerRange;
180
180
  popupAlign?: string;
181
181
  showPlaceholder?: boolean;
182
+ $rangePoint?: 'start' | 'inclusive-end';
182
183
  }
183
184
  interface ICoreGridBuffer {
184
185
  gridBufferFormSections?: ICoreFormSection[];
@@ -1,9 +1,12 @@
1
1
  import { EventEmitter } from '@angular/core';
2
2
  import { IFormBaseControl } from '../../../../core-form/core-form/enum-interfaces';
3
+ import { ICoreRadioOption } from '../../../../core-radio-group/core-radio-group/core-radio-group.component';
4
+ import { BehaviorSubject } from 'rxjs';
3
5
  import * as i0 from "@angular/core";
4
6
  export declare class DatepickerPropsComponent {
5
7
  control: IFormBaseControl;
6
8
  controlChange: EventEmitter<IFormBaseControl>;
9
+ options$: BehaviorSubject<ICoreRadioOption[]>;
7
10
  update(): void;
8
11
  static ɵfac: i0.ɵɵFactoryDeclaration<DatepickerPropsComponent, never>;
9
12
  static ɵcmp: i0.ɵɵComponentDeclaration<DatepickerPropsComponent, "datepicker-props", never, { "control": { "alias": "control"; "required": false; }; }, { "controlChange": "controlChange"; }, never, never, true, never>;
@@ -83,6 +83,7 @@ export declare class LiveFormComponent extends BaseComponent implements AfterVie
83
83
  onLiveSubmit(e: any): void;
84
84
  onClose(): void;
85
85
  addKickOffInjectedFields(): void;
86
+ addReactInjectedFields(): void;
86
87
  clearInjectedFields(): void;
87
88
  react(reactType: string): void;
88
89
  applyFormUi(sections: ICoreFormSection[], formUi: IStepFormConfig["formUi"]): ICoreFormSection[];
@@ -110,7 +110,7 @@ export declare class CoreWorkflowService {
110
110
  getPositionsByIds(payload: IIdsRequest): Observable<any>;
111
111
  initialDebugSubmit(request: IInitialDebugSubmitRequest): Observable<any>;
112
112
  initialSubmit(request: IGenerateWorkflowRoutingRequest): Observable<any>;
113
- react(unitedCorrelationIds: string, reactType: string, reason: string, updatedAttributes: any): Observable<any>;
113
+ react(unitedCorrelationIds: string, reactType: string, reason: string, updatedAttributes: any, delegationId: string | null): Observable<any>;
114
114
  inject(unitedCorrelationIds: string, injectType: string, reason: string, injectorEmployeeId?: number | undefined): Observable<any>;
115
115
  generatePreviewEmail(request: IRenderWorkflowEmailRequest): Observable<any>;
116
116
  static ɵfac: i0.ɵɵFactoryDeclaration<CoreWorkflowService, never>;
@@ -8,5 +8,7 @@ export interface IWorkflowReactContext {
8
8
  instance: IWorkflowInstance;
9
9
  step: IWorkflowStepProgress;
10
10
  actor: IWorkflowStepProgressActor;
11
+ actingActor?: any;
11
12
  stepFormConfig: IStepFormConfig;
13
+ delegationId?: string;
12
14
  }
@@ -4,16 +4,25 @@ export interface IWorkflowStepProgressActor {
4
4
  actorEmployeeId: number;
5
5
  actorFullname: string;
6
6
  actorEmail: string;
7
- status: string;
8
7
  actorEmployeeCode?: string;
9
8
  actorAvatar?: string;
10
9
  actorOrgName?: string;
11
10
  actorPositionName?: string;
12
11
  actorJobName?: string;
13
12
  isFemale?: boolean;
13
+ actingEmployeeId?: number;
14
+ actingFullname?: string;
15
+ actingEmail?: string;
16
+ actingEmployeeCode?: string;
17
+ actingAvatar?: string;
18
+ actingOrgName?: string;
19
+ actingPositionName?: string;
20
+ actingJobName?: string;
21
+ actingIsFemale?: boolean;
14
22
  reason?: string;
15
23
  commentedAt?: Date;
16
24
  votedAt?: Date;
25
+ status: string;
17
26
  createdDate: Date;
18
27
  createdBy?: string;
19
28
  }
@@ -12,6 +12,7 @@ export declare class WfInstanceStepReactComponent extends BaseComponent {
12
12
  private route;
13
13
  private appService;
14
14
  $id: import("@angular/core").WritableSignal<string>;
15
+ $delegationId: import("@angular/core").WritableSignal<string | undefined>;
15
16
  $loading: import("@angular/core").WritableSignal<boolean>;
16
17
  $context: import("@angular/core").WritableSignal<IWorkflowReactContext | null>;
17
18
  $reactMode: import("@angular/core").WritableSignal<boolean>;
@@ -42,6 +42,43 @@ export declare class CoreDatetimeService {
42
42
  isDateString(date: string): boolean;
43
43
  monthIdentityToMonthString(monthIdentity: IMonthIdentity): string;
44
44
  dateToMonthString(date: Date): string;
45
+ /**
46
+ * Interprets a Date as a civil calendar date in a specific IANA timezone.
47
+ *
48
+ * Purpose:
49
+ * - Given an absolute instant (JavaScript Date),
50
+ * re-interpret it as a calendar date (YYYY-MM-DD)
51
+ * as perceived in the provided IANA timezone.
52
+ *
53
+ * What this function DOES:
54
+ * - Uses Intl.DateTimeFormat with `timeZone` to extract
55
+ * year / month / day in the target timezone.
56
+ * - Re-materializes a new Date using those calendar parts
57
+ * in the browser's local runtime timezone.
58
+ *
59
+ * What this function DOES NOT do:
60
+ * - Does NOT apply business rules (e.g. start-of-day / end-of-day).
61
+ * - Does NOT modify hours, minutes, seconds explicitly.
62
+ * - Does NOT depend on range semantics (start / inclusive-end).
63
+ * - Does NOT mutate the input Date.
64
+ *
65
+ * Design notes:
66
+ * - JavaScript Date always represents an absolute instant.
67
+ * - "Date-only" values in business forms are civil concepts,
68
+ * not instants in time.
69
+ * - Timezone interpretation MUST be applied exactly once,
70
+ * at form boundaries (e.g. writeValue / onChange).
71
+ *
72
+ * Usage constraints:
73
+ * - This function is intended for form-layer normalization only.
74
+ * - It MUST be optional and backward-compatible.
75
+ * - Absence of timezone context MUST preserve legacy behavior.
76
+ *
77
+ * @param date Absolute Date (instant)
78
+ * @param timezoneId IANA Time Zone ID (e.g. "Asia/Ho_Chi_Minh")
79
+ * @returns Date representing the same civil day in local runtime timezone
80
+ */
81
+ interpretDateInTimezone(date: Date, timezoneId: string): Date;
45
82
  static ɵfac: i0.ɵɵFactoryDeclaration<CoreDatetimeService, never>;
46
83
  static ɵprov: i0.ɵɵInjectableDeclaration<CoreDatetimeService>;
47
84
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ngx-histaff-alpha",
3
- "version": "6.7.0",
4
- "description": "6.7.0: Feat(Expose core-tree-reference)",
3
+ "version": "6.7.2",
4
+ "description": "6.7.2: Feat(Dom)",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^19.0.1",
7
7
  "@angular/core": "^19.0.1"