@feedmepos/mf-hrm-portal 2.0.25 → 2.1.0-dev.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.
- package/dist/AuditLogList-AGlAsWwd.js +1608 -0
- package/dist/ConditionFormHost.vue_vue_type_script_setup_true_lang-BYHKFwRm.js +383 -0
- package/dist/EmployeeList-KvjoGI87.js +884 -0
- package/dist/{Main-C6YMg19H.js → Main-BLh16xRg.js} +187 -184
- package/dist/{Main-DQg87aB2.js → Main-D3TSdtSE.js} +7 -7
- package/dist/{Main-CyqPnLTe.js → Main-Dn1TfDRj.js} +1033 -1029
- package/dist/PermissionSetList-Ds69m9UU.js +392 -0
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-Bk6ub3Dv.js +4030 -0
- package/dist/{PortalUserSearcher.vue_vue_type_style_index_0_scoped_a439fdd8_lang-DWeS7VXx.js → PortalUserSearcher.vue_vue_type_style_index_0_scoped_a439fdd8_lang-BHxCP_uW.js} +1 -1
- package/dist/ResponsiveFabButton.vue_vue_type_script_setup_true_lang-QrqYEy8i.js +42 -0
- package/dist/RoleList-v8McRCnz.js +684 -0
- package/dist/Skeleton.vue_vue_type_script_setup_true_lang-B4PxNMwq.js +16 -0
- package/dist/{index.vue_vue_type_script_setup_true_lang-Vc5ARO29.js → TableEmptyState.vue_vue_type_script_setup_true_lang-Ci_MVqGK.js} +54 -20
- package/dist/TeamMemberList-BYQnNIhT.js +1169 -0
- package/dist/{TimesheetList-DzeE73Ns.js → TimesheetList-C1OWa6kf.js} +139 -133
- package/dist/{TimesheetList.vue_vue_type_style_index_0_scoped_91afda4e_lang-CTQs7MIl.js → TimesheetList.vue_vue_type_style_index_0_scoped_2c7a177a_lang-CLu9gzzi.js} +2 -2
- package/dist/{app-Df4eEEIU.js → app-CJouCBgi.js} +5248 -2273
- package/dist/app.js +1 -1
- package/dist/{dayjs.min-DmGoh5hw.js → dayjs.min-DUugkgDM.js} +1 -1
- package/dist/{employee-zWTRoOkw.js → employee-D5rEVmge.js} +3 -3
- package/dist/{iteration-DTV3udF0.js → iteration-QRRNYlps.js} +3 -3
- package/dist/{lodash-LInzVEDS.js → lodash-BlZhpHhM.js} +1 -1
- package/dist/rule-Dy7eMChN.js +1053 -0
- package/dist/src/api/audit-log/index.d.ts +6 -0
- package/dist/src/components/CheckboxInput.vue.d.ts +1 -1
- package/dist/src/components/button/ResponsiveFabButton.vue.d.ts +7 -1
- package/dist/src/components/table/EmptyDataTemplate/index.vue.d.ts +4 -1
- package/dist/src/components/table/TableEmptyState.vue.d.ts +31 -0
- package/dist/src/composables/useBasePermission.d.ts +1 -0
- package/dist/src/composables/useConditionDraft.d.ts +40 -0
- package/dist/src/composables/useCoverConditionOverride.d.ts +61 -0
- package/dist/src/helpers/business-timezone.d.ts +22 -0
- package/dist/src/helpers/permission-set.d.ts +4 -2
- package/dist/src/helpers/rule.d.ts +2 -1
- package/dist/src/stores/permission-set.d.ts +12 -3
- package/dist/src/types/audit-log.d.ts +1 -1
- package/dist/src/views/audit-log/event-line.d.ts +13 -0
- package/dist/src/views/audit-log/locales/index.d.ts +296 -0
- package/dist/src/views/audit-log/snapshot-diff.d.ts +11 -0
- package/dist/src/views/hr/employee/EmployeeList.vue.d.ts +1 -0
- package/dist/src/views/team/components/BasePermission.vue.d.ts +13 -0
- package/dist/src/views/team/condition-builders/ConditionFormHost.vue.d.ts +22 -0
- package/dist/src/views/team/condition-builders/ConditionFormRenderer.vue.d.ts +23 -0
- package/dist/src/views/team/condition-builders/component-map.d.ts +4 -0
- package/dist/src/views/team/condition-builders/condition-form-dedupe.d.ts +23 -0
- package/dist/src/views/team/locales/index.d.ts +68 -0
- package/dist/style.css +1 -1
- package/dist/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{useAppStore-BlQSL2ZO.js → useAppStore-CtMoad7V.js} +1 -1
- package/dist/useDebounce-B8ZPVS5C.js +15 -0
- package/dist/{useLoading-NkUvAr71.js → useLoading-CNqlchYO.js} +1 -1
- package/dist/{useReportPermissions-R-eg1L2r.js → useReportPermissions-C5wGC9bf.js} +3 -3
- package/package.json +2 -2
- package/dist/AuditLogList-BWwgm5wH.js +0 -1145
- package/dist/CollapsibleWrapper.vue_vue_type_script_setup_true_lang-BLJlmPVa.js +0 -58
- package/dist/EmployeeList-aRGYYmxf.js +0 -851
- package/dist/PermissionSetList-BfKgFFUh.js +0 -356
- package/dist/PortalPermissionEditor.vue_vue_type_script_setup_true_lang-CNEAlTnY.js +0 -3457
- package/dist/ResponsiveFabButton.vue_vue_type_script_setup_true_lang-Cn-3MRBO.js +0 -38
- package/dist/RoleList-CtcVwAPE.js +0 -566
- package/dist/TeamMemberList-DU1jYeql.js +0 -1130
- package/dist/rule-O-E9JWJz.js +0 -995
- package/dist/useDebounce-CWb5QR9G.js +0 -28
|
@@ -19,6 +19,9 @@ export declare const i18nMessages: {
|
|
|
19
19
|
dateRange: {
|
|
20
20
|
placeholder: string;
|
|
21
21
|
};
|
|
22
|
+
search: {
|
|
23
|
+
placeholder: string;
|
|
24
|
+
};
|
|
22
25
|
user: {
|
|
23
26
|
feedmeAdmin: string;
|
|
24
27
|
};
|
|
@@ -134,6 +137,77 @@ export declare const i18nMessages: {
|
|
|
134
137
|
requestPath: string;
|
|
135
138
|
requestBody: string;
|
|
136
139
|
};
|
|
140
|
+
operation: {
|
|
141
|
+
toggle: string;
|
|
142
|
+
rowHint: string;
|
|
143
|
+
unlabeled: string;
|
|
144
|
+
badge: string;
|
|
145
|
+
sheetHeader: string;
|
|
146
|
+
entity: string;
|
|
147
|
+
duration: string;
|
|
148
|
+
durationValue: string;
|
|
149
|
+
error: string;
|
|
150
|
+
changes: string;
|
|
151
|
+
showData: string;
|
|
152
|
+
added: string;
|
|
153
|
+
removed: string;
|
|
154
|
+
updated: string;
|
|
155
|
+
before: string;
|
|
156
|
+
after: string;
|
|
157
|
+
noChanges: string;
|
|
158
|
+
wholeValue: string;
|
|
159
|
+
};
|
|
160
|
+
event: {
|
|
161
|
+
sentence: {
|
|
162
|
+
"audit-log": {
|
|
163
|
+
view: string;
|
|
164
|
+
};
|
|
165
|
+
restaurant: {
|
|
166
|
+
list: string;
|
|
167
|
+
};
|
|
168
|
+
"permission-assignment": {
|
|
169
|
+
manage: string;
|
|
170
|
+
list: string;
|
|
171
|
+
view: string;
|
|
172
|
+
};
|
|
173
|
+
"permission-set": {
|
|
174
|
+
manage: string;
|
|
175
|
+
list: string;
|
|
176
|
+
view: string;
|
|
177
|
+
};
|
|
178
|
+
"portal-user": {
|
|
179
|
+
list: string;
|
|
180
|
+
"list-page": string;
|
|
181
|
+
view: string;
|
|
182
|
+
create: string;
|
|
183
|
+
update: string;
|
|
184
|
+
delete: string;
|
|
185
|
+
};
|
|
186
|
+
"pos-user": {
|
|
187
|
+
list: string;
|
|
188
|
+
"list-page": string;
|
|
189
|
+
create: string;
|
|
190
|
+
"sync-meta": string;
|
|
191
|
+
update: string;
|
|
192
|
+
migrate: string;
|
|
193
|
+
"generate-passcode": string;
|
|
194
|
+
};
|
|
195
|
+
"pos-master-user": {
|
|
196
|
+
create: string;
|
|
197
|
+
update: string;
|
|
198
|
+
delete: string;
|
|
199
|
+
};
|
|
200
|
+
"pos-role": {
|
|
201
|
+
list: string;
|
|
202
|
+
create: string;
|
|
203
|
+
update: string;
|
|
204
|
+
};
|
|
205
|
+
timesheet: {
|
|
206
|
+
view: string;
|
|
207
|
+
update: string;
|
|
208
|
+
};
|
|
209
|
+
};
|
|
210
|
+
};
|
|
137
211
|
};
|
|
138
212
|
};
|
|
139
213
|
'zh-CN': {
|
|
@@ -154,6 +228,9 @@ export declare const i18nMessages: {
|
|
|
154
228
|
dateRange: {
|
|
155
229
|
placeholder: string;
|
|
156
230
|
};
|
|
231
|
+
search: {
|
|
232
|
+
placeholder: string;
|
|
233
|
+
};
|
|
157
234
|
user: {
|
|
158
235
|
feedmeAdmin: string;
|
|
159
236
|
};
|
|
@@ -270,6 +347,77 @@ export declare const i18nMessages: {
|
|
|
270
347
|
requestPath: string;
|
|
271
348
|
requestBody: string;
|
|
272
349
|
};
|
|
350
|
+
operation: {
|
|
351
|
+
toggle: string;
|
|
352
|
+
rowHint: string;
|
|
353
|
+
unlabeled: string;
|
|
354
|
+
badge: string;
|
|
355
|
+
sheetHeader: string;
|
|
356
|
+
entity: string;
|
|
357
|
+
duration: string;
|
|
358
|
+
durationValue: string;
|
|
359
|
+
error: string;
|
|
360
|
+
changes: string;
|
|
361
|
+
showData: string;
|
|
362
|
+
added: string;
|
|
363
|
+
removed: string;
|
|
364
|
+
updated: string;
|
|
365
|
+
before: string;
|
|
366
|
+
after: string;
|
|
367
|
+
noChanges: string;
|
|
368
|
+
wholeValue: string;
|
|
369
|
+
};
|
|
370
|
+
event: {
|
|
371
|
+
sentence: {
|
|
372
|
+
"audit-log": {
|
|
373
|
+
view: string;
|
|
374
|
+
};
|
|
375
|
+
restaurant: {
|
|
376
|
+
list: string;
|
|
377
|
+
};
|
|
378
|
+
"permission-assignment": {
|
|
379
|
+
manage: string;
|
|
380
|
+
list: string;
|
|
381
|
+
view: string;
|
|
382
|
+
};
|
|
383
|
+
"permission-set": {
|
|
384
|
+
manage: string;
|
|
385
|
+
list: string;
|
|
386
|
+
view: string;
|
|
387
|
+
};
|
|
388
|
+
"portal-user": {
|
|
389
|
+
list: string;
|
|
390
|
+
"list-page": string;
|
|
391
|
+
view: string;
|
|
392
|
+
create: string;
|
|
393
|
+
update: string;
|
|
394
|
+
delete: string;
|
|
395
|
+
};
|
|
396
|
+
"pos-user": {
|
|
397
|
+
list: string;
|
|
398
|
+
"list-page": string;
|
|
399
|
+
create: string;
|
|
400
|
+
"sync-meta": string;
|
|
401
|
+
update: string;
|
|
402
|
+
migrate: string;
|
|
403
|
+
"generate-passcode": string;
|
|
404
|
+
};
|
|
405
|
+
"pos-master-user": {
|
|
406
|
+
create: string;
|
|
407
|
+
update: string;
|
|
408
|
+
delete: string;
|
|
409
|
+
};
|
|
410
|
+
"pos-role": {
|
|
411
|
+
list: string;
|
|
412
|
+
create: string;
|
|
413
|
+
update: string;
|
|
414
|
+
};
|
|
415
|
+
timesheet: {
|
|
416
|
+
view: string;
|
|
417
|
+
update: string;
|
|
418
|
+
};
|
|
419
|
+
};
|
|
420
|
+
};
|
|
273
421
|
};
|
|
274
422
|
};
|
|
275
423
|
'th-TH': {
|
|
@@ -290,6 +438,9 @@ export declare const i18nMessages: {
|
|
|
290
438
|
dateRange: {
|
|
291
439
|
placeholder: string;
|
|
292
440
|
};
|
|
441
|
+
search: {
|
|
442
|
+
placeholder: string;
|
|
443
|
+
};
|
|
293
444
|
user: {
|
|
294
445
|
feedmeAdmin: string;
|
|
295
446
|
};
|
|
@@ -406,6 +557,77 @@ export declare const i18nMessages: {
|
|
|
406
557
|
requestPath: string;
|
|
407
558
|
requestBody: string;
|
|
408
559
|
};
|
|
560
|
+
operation: {
|
|
561
|
+
toggle: string;
|
|
562
|
+
rowHint: string;
|
|
563
|
+
unlabeled: string;
|
|
564
|
+
badge: string;
|
|
565
|
+
sheetHeader: string;
|
|
566
|
+
entity: string;
|
|
567
|
+
duration: string;
|
|
568
|
+
durationValue: string;
|
|
569
|
+
error: string;
|
|
570
|
+
changes: string;
|
|
571
|
+
showData: string;
|
|
572
|
+
added: string;
|
|
573
|
+
removed: string;
|
|
574
|
+
updated: string;
|
|
575
|
+
before: string;
|
|
576
|
+
after: string;
|
|
577
|
+
noChanges: string;
|
|
578
|
+
wholeValue: string;
|
|
579
|
+
};
|
|
580
|
+
event: {
|
|
581
|
+
sentence: {
|
|
582
|
+
"audit-log": {
|
|
583
|
+
view: string;
|
|
584
|
+
};
|
|
585
|
+
restaurant: {
|
|
586
|
+
list: string;
|
|
587
|
+
};
|
|
588
|
+
"permission-assignment": {
|
|
589
|
+
manage: string;
|
|
590
|
+
list: string;
|
|
591
|
+
view: string;
|
|
592
|
+
};
|
|
593
|
+
"permission-set": {
|
|
594
|
+
manage: string;
|
|
595
|
+
list: string;
|
|
596
|
+
view: string;
|
|
597
|
+
};
|
|
598
|
+
"portal-user": {
|
|
599
|
+
list: string;
|
|
600
|
+
"list-page": string;
|
|
601
|
+
view: string;
|
|
602
|
+
create: string;
|
|
603
|
+
update: string;
|
|
604
|
+
delete: string;
|
|
605
|
+
};
|
|
606
|
+
"pos-user": {
|
|
607
|
+
list: string;
|
|
608
|
+
"list-page": string;
|
|
609
|
+
create: string;
|
|
610
|
+
"sync-meta": string;
|
|
611
|
+
update: string;
|
|
612
|
+
migrate: string;
|
|
613
|
+
"generate-passcode": string;
|
|
614
|
+
};
|
|
615
|
+
"pos-master-user": {
|
|
616
|
+
create: string;
|
|
617
|
+
update: string;
|
|
618
|
+
delete: string;
|
|
619
|
+
};
|
|
620
|
+
"pos-role": {
|
|
621
|
+
list: string;
|
|
622
|
+
create: string;
|
|
623
|
+
update: string;
|
|
624
|
+
};
|
|
625
|
+
timesheet: {
|
|
626
|
+
view: string;
|
|
627
|
+
update: string;
|
|
628
|
+
};
|
|
629
|
+
};
|
|
630
|
+
};
|
|
409
631
|
};
|
|
410
632
|
};
|
|
411
633
|
'zh-Hant': {
|
|
@@ -426,6 +648,9 @@ export declare const i18nMessages: {
|
|
|
426
648
|
dateRange: {
|
|
427
649
|
placeholder: string;
|
|
428
650
|
};
|
|
651
|
+
search: {
|
|
652
|
+
placeholder: string;
|
|
653
|
+
};
|
|
429
654
|
user: {
|
|
430
655
|
feedmeAdmin: string;
|
|
431
656
|
};
|
|
@@ -542,6 +767,77 @@ export declare const i18nMessages: {
|
|
|
542
767
|
requestPath: string;
|
|
543
768
|
requestBody: string;
|
|
544
769
|
};
|
|
770
|
+
operation: {
|
|
771
|
+
toggle: string;
|
|
772
|
+
rowHint: string;
|
|
773
|
+
unlabeled: string;
|
|
774
|
+
badge: string;
|
|
775
|
+
sheetHeader: string;
|
|
776
|
+
entity: string;
|
|
777
|
+
duration: string;
|
|
778
|
+
durationValue: string;
|
|
779
|
+
error: string;
|
|
780
|
+
changes: string;
|
|
781
|
+
showData: string;
|
|
782
|
+
added: string;
|
|
783
|
+
removed: string;
|
|
784
|
+
updated: string;
|
|
785
|
+
before: string;
|
|
786
|
+
after: string;
|
|
787
|
+
noChanges: string;
|
|
788
|
+
wholeValue: string;
|
|
789
|
+
};
|
|
790
|
+
event: {
|
|
791
|
+
sentence: {
|
|
792
|
+
"audit-log": {
|
|
793
|
+
view: string;
|
|
794
|
+
};
|
|
795
|
+
restaurant: {
|
|
796
|
+
list: string;
|
|
797
|
+
};
|
|
798
|
+
"permission-assignment": {
|
|
799
|
+
manage: string;
|
|
800
|
+
list: string;
|
|
801
|
+
view: string;
|
|
802
|
+
};
|
|
803
|
+
"permission-set": {
|
|
804
|
+
manage: string;
|
|
805
|
+
list: string;
|
|
806
|
+
view: string;
|
|
807
|
+
};
|
|
808
|
+
"portal-user": {
|
|
809
|
+
list: string;
|
|
810
|
+
"list-page": string;
|
|
811
|
+
view: string;
|
|
812
|
+
create: string;
|
|
813
|
+
update: string;
|
|
814
|
+
delete: string;
|
|
815
|
+
};
|
|
816
|
+
"pos-user": {
|
|
817
|
+
list: string;
|
|
818
|
+
"list-page": string;
|
|
819
|
+
create: string;
|
|
820
|
+
"sync-meta": string;
|
|
821
|
+
update: string;
|
|
822
|
+
migrate: string;
|
|
823
|
+
"generate-passcode": string;
|
|
824
|
+
};
|
|
825
|
+
"pos-master-user": {
|
|
826
|
+
create: string;
|
|
827
|
+
update: string;
|
|
828
|
+
delete: string;
|
|
829
|
+
};
|
|
830
|
+
"pos-role": {
|
|
831
|
+
list: string;
|
|
832
|
+
create: string;
|
|
833
|
+
update: string;
|
|
834
|
+
};
|
|
835
|
+
timesheet: {
|
|
836
|
+
view: string;
|
|
837
|
+
update: string;
|
|
838
|
+
};
|
|
839
|
+
};
|
|
840
|
+
};
|
|
545
841
|
};
|
|
546
842
|
};
|
|
547
843
|
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type SnapshotDiffType = 'added' | 'removed' | 'changed';
|
|
2
|
+
export interface SnapshotDiffRow {
|
|
3
|
+
/** e.g. "name", "permissions[business::unitCostHistory]", "roles[0].roleId" */
|
|
4
|
+
path: string;
|
|
5
|
+
type: SnapshotDiffType;
|
|
6
|
+
/** null = value absent on the before side (render as em dash by caller) */
|
|
7
|
+
before: string | null;
|
|
8
|
+
/** null = value absent on the after side */
|
|
9
|
+
after: string | null;
|
|
10
|
+
}
|
|
11
|
+
export declare function computeSnapshotDiff(before: unknown, after: unknown): SnapshotDiffRow[];
|
|
@@ -41,5 +41,6 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
41
41
|
since: string;
|
|
42
42
|
})[]>;
|
|
43
43
|
exportEmployees: typeof exportEmployees;
|
|
44
|
+
getHasPaginationFooter: () => boolean;
|
|
44
45
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
45
46
|
export default _default;
|
|
@@ -5,10 +5,23 @@ declare var __VLS_21: `checkbox-${string}-append`, __VLS_22: {
|
|
|
5
5
|
option: {
|
|
6
6
|
label: string;
|
|
7
7
|
value: string;
|
|
8
|
+
optionKey: string;
|
|
8
9
|
};
|
|
10
|
+
isEffectiveSelected: boolean;
|
|
11
|
+
isCoveredByCover: boolean;
|
|
12
|
+
}, __VLS_25: `checkbox-${string}-icon`, __VLS_26: {
|
|
13
|
+
option: {
|
|
14
|
+
label: string;
|
|
15
|
+
value: string;
|
|
16
|
+
optionKey: string;
|
|
17
|
+
};
|
|
18
|
+
isEffectiveSelected: boolean;
|
|
19
|
+
isCoveredByCover: boolean;
|
|
9
20
|
};
|
|
10
21
|
type __VLS_Slots = {} & {
|
|
11
22
|
[K in NonNullable<typeof __VLS_21>]?: (props: typeof __VLS_22) => any;
|
|
23
|
+
} & {
|
|
24
|
+
[K in NonNullable<typeof __VLS_25>]?: (props: typeof __VLS_26) => any;
|
|
12
25
|
};
|
|
13
26
|
declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
14
27
|
modelValue: {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ConditionBuilder } from '@feedmepos/hrm-permission/condition-builder';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
builder: ConditionBuilder;
|
|
4
|
+
modelValue: unknown;
|
|
5
|
+
disable?: boolean;
|
|
6
|
+
optionProviders?: Record<string, Array<{
|
|
7
|
+
value: string;
|
|
8
|
+
label: string;
|
|
9
|
+
}>>;
|
|
10
|
+
};
|
|
11
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
12
|
+
"update:modelValue": (value: unknown) => any;
|
|
13
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
14
|
+
"onUpdate:modelValue"?: ((value: unknown) => any) | undefined;
|
|
15
|
+
}>, {
|
|
16
|
+
optionProviders: Record<string, Array<{
|
|
17
|
+
value: string;
|
|
18
|
+
label: string;
|
|
19
|
+
}>>;
|
|
20
|
+
disable: boolean;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
export default _default;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ConditionFormConfig, ConditionFormState } from '@feedmepos/hrm-permission/condition-builder';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
config: ConditionFormConfig;
|
|
4
|
+
modelValue: ConditionFormState;
|
|
5
|
+
disabled?: boolean;
|
|
6
|
+
/** name → option list, for fields whose options use `{ provider }`. */
|
|
7
|
+
optionProviders?: Record<string, Array<{
|
|
8
|
+
value: string;
|
|
9
|
+
label: string;
|
|
10
|
+
}>>;
|
|
11
|
+
};
|
|
12
|
+
declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
13
|
+
"update:modelValue": (value: ConditionFormState) => any;
|
|
14
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
15
|
+
"onUpdate:modelValue"?: ((value: ConditionFormState) => any) | undefined;
|
|
16
|
+
}>, {
|
|
17
|
+
disabled: boolean;
|
|
18
|
+
optionProviders: Record<string, Array<{
|
|
19
|
+
value: string;
|
|
20
|
+
label: string;
|
|
21
|
+
}>>;
|
|
22
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
23
|
+
export default _default;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type Component } from 'vue';
|
|
2
|
+
/** Resolve a form component key to a cached async component, or undefined when no
|
|
3
|
+
* component is registered for that key (the host then renders nothing). */
|
|
4
|
+
export declare function resolveBuilderComponent(key: string): Component | undefined;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ConditionFormState } from '@feedmepos/hrm-permission/condition-builder';
|
|
2
|
+
/**
|
|
3
|
+
* Pure decision extracted from `ConditionFormRenderer.vue`'s `setField`, so
|
|
4
|
+
* it can be unit-tested without mounting the component (this repo's vitest
|
|
5
|
+
* setup has no `@vue/test-utils` / jsdom-environment component-mounting
|
|
6
|
+
* infrastructure yet — see the composable spec's notes on jsdom gaps).
|
|
7
|
+
*
|
|
8
|
+
* Some `FmRadio` / `FmCheckbox` fields (ui-library) fire their change
|
|
9
|
+
* handler twice per click — the click handler lives on a `<label>` wrapping
|
|
10
|
+
* the native input, so one click fires the handler once directly and once
|
|
11
|
+
* via the browser's synthetic click bubbling back through the label — which
|
|
12
|
+
* would otherwise make `setField` emit `update:modelValue` twice with an
|
|
13
|
+
* identical value. Comparing the freshly-computed next state against the
|
|
14
|
+
* last emitted (or last committed) state collapses that into a single
|
|
15
|
+
* emission, while still emitting for any genuinely new value.
|
|
16
|
+
*
|
|
17
|
+
* Uses lodash `isEqual` (already this app's idiom for comparing plain
|
|
18
|
+
* records — see `AddMemberForm.vue`, `PermissionSetForm.vue`, `RoleForm.vue`)
|
|
19
|
+
* rather than a `JSON.stringify` comparison, since these flat
|
|
20
|
+
* `{ key: value }` form records can hold arrays (multiselect) and key order
|
|
21
|
+
* is not guaranteed to be stable across the spread in `setField`.
|
|
22
|
+
*/
|
|
23
|
+
export declare function shouldEmitConditionFormUpdate(next: ConditionFormState, lastEmitted: ConditionFormState): boolean;
|
|
@@ -84,6 +84,17 @@ export declare const i18nMessages: {
|
|
|
84
84
|
allowedCount: string;
|
|
85
85
|
columnName: string;
|
|
86
86
|
columnManage: string;
|
|
87
|
+
conditionTitle: string;
|
|
88
|
+
conditionCover: {
|
|
89
|
+
inherit: string;
|
|
90
|
+
custom: string;
|
|
91
|
+
confirmTitle: string;
|
|
92
|
+
confirmMessage: string;
|
|
93
|
+
override: string;
|
|
94
|
+
keep: string;
|
|
95
|
+
};
|
|
96
|
+
conditionApply: string;
|
|
97
|
+
conditionButtonTitle: string;
|
|
87
98
|
};
|
|
88
99
|
masterUser: {
|
|
89
100
|
title: string;
|
|
@@ -139,6 +150,12 @@ export declare const i18nMessages: {
|
|
|
139
150
|
nameRequired: string;
|
|
140
151
|
includedSets: string;
|
|
141
152
|
includedSetsPlaceholder: string;
|
|
153
|
+
overrideInherited: {
|
|
154
|
+
title: string;
|
|
155
|
+
message: string;
|
|
156
|
+
override: string;
|
|
157
|
+
keepCurrent: string;
|
|
158
|
+
};
|
|
142
159
|
};
|
|
143
160
|
categoryLabels: {
|
|
144
161
|
General: string;
|
|
@@ -315,6 +332,17 @@ export declare const i18nMessages: {
|
|
|
315
332
|
allowedCount: string;
|
|
316
333
|
columnName: string;
|
|
317
334
|
columnManage: string;
|
|
335
|
+
conditionTitle: string;
|
|
336
|
+
conditionCover: {
|
|
337
|
+
inherit: string;
|
|
338
|
+
custom: string;
|
|
339
|
+
confirmTitle: string;
|
|
340
|
+
confirmMessage: string;
|
|
341
|
+
override: string;
|
|
342
|
+
keep: string;
|
|
343
|
+
};
|
|
344
|
+
conditionApply: string;
|
|
345
|
+
conditionButtonTitle: string;
|
|
318
346
|
};
|
|
319
347
|
masterUser: {
|
|
320
348
|
title: string;
|
|
@@ -370,6 +398,12 @@ export declare const i18nMessages: {
|
|
|
370
398
|
nameRequired: string;
|
|
371
399
|
includedSets: string;
|
|
372
400
|
includedSetsPlaceholder: string;
|
|
401
|
+
overrideInherited: {
|
|
402
|
+
title: string;
|
|
403
|
+
message: string;
|
|
404
|
+
override: string;
|
|
405
|
+
keepCurrent: string;
|
|
406
|
+
};
|
|
373
407
|
};
|
|
374
408
|
categoryLabels: {
|
|
375
409
|
General: string;
|
|
@@ -546,6 +580,17 @@ export declare const i18nMessages: {
|
|
|
546
580
|
allowedCount: string;
|
|
547
581
|
columnName: string;
|
|
548
582
|
columnManage: string;
|
|
583
|
+
conditionTitle: string;
|
|
584
|
+
conditionCover: {
|
|
585
|
+
inherit: string;
|
|
586
|
+
custom: string;
|
|
587
|
+
confirmTitle: string;
|
|
588
|
+
confirmMessage: string;
|
|
589
|
+
override: string;
|
|
590
|
+
keep: string;
|
|
591
|
+
};
|
|
592
|
+
conditionApply: string;
|
|
593
|
+
conditionButtonTitle: string;
|
|
549
594
|
};
|
|
550
595
|
masterUser: {
|
|
551
596
|
title: string;
|
|
@@ -601,6 +646,12 @@ export declare const i18nMessages: {
|
|
|
601
646
|
nameRequired: string;
|
|
602
647
|
includedSets: string;
|
|
603
648
|
includedSetsPlaceholder: string;
|
|
649
|
+
overrideInherited: {
|
|
650
|
+
title: string;
|
|
651
|
+
message: string;
|
|
652
|
+
override: string;
|
|
653
|
+
keepCurrent: string;
|
|
654
|
+
};
|
|
604
655
|
};
|
|
605
656
|
categoryLabels: {
|
|
606
657
|
General: string;
|
|
@@ -777,6 +828,17 @@ export declare const i18nMessages: {
|
|
|
777
828
|
allowedCount: string;
|
|
778
829
|
columnName: string;
|
|
779
830
|
columnManage: string;
|
|
831
|
+
conditionTitle: string;
|
|
832
|
+
conditionCover: {
|
|
833
|
+
inherit: string;
|
|
834
|
+
custom: string;
|
|
835
|
+
confirmTitle: string;
|
|
836
|
+
confirmMessage: string;
|
|
837
|
+
override: string;
|
|
838
|
+
keep: string;
|
|
839
|
+
};
|
|
840
|
+
conditionApply: string;
|
|
841
|
+
conditionButtonTitle: string;
|
|
780
842
|
};
|
|
781
843
|
masterUser: {
|
|
782
844
|
title: string;
|
|
@@ -839,6 +901,12 @@ export declare const i18nMessages: {
|
|
|
839
901
|
nameRequired: string;
|
|
840
902
|
includedSets: string;
|
|
841
903
|
includedSetsPlaceholder: string;
|
|
904
|
+
overrideInherited: {
|
|
905
|
+
title: string;
|
|
906
|
+
message: string;
|
|
907
|
+
override: string;
|
|
908
|
+
keepCurrent: string;
|
|
909
|
+
};
|
|
842
910
|
};
|
|
843
911
|
categoryLabels: {
|
|
844
912
|
General: string;
|
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.employee-list-table[data-v-
|
|
1
|
+
.employee-list-table[data-v-9cf34375] [class~=gap-24]>div:first-child{display:none}.timesheet-user-view[data-v-2c7a177a] .basis-72{display:none}.user-info-icon[data-v-a439fdd8]{flex-shrink:0;cursor:pointer;font-size:.75rem;font-weight:600;line-height:1rem;letter-spacing:.02em;text-decoration-line:none;color:var(--fm-color-neutral-white);display:flex;align-items:center;justify-content:center;background:linear-gradient(201deg,#fc9b40 10.3%,#ff6052 98.36%)}.user-info-icon--md[data-v-a439fdd8]{height:2.25rem;width:2.25rem;border-radius:8px}.user-info-icon--lg[data-v-a439fdd8]{height:48px;width:48px;border-radius:16px}.profile-menu[data-v-a439fdd8]{width:280px;padding-top:12px;padding-bottom:12px}.profile-menu--profile[data-v-a439fdd8]>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(8px * var(--tw-space-x-reverse));margin-left:calc(8px * calc(1 - var(--tw-space-x-reverse)))}.profile-menu--profile[data-v-a439fdd8]{padding:16px 16px 12px;border-radius:8px;display:flex;align-items:center;border-width:1px;border-color:var(--fm-color-neutral-gray-200)}.profile-menu--profile .profile-displayName[data-v-a439fdd8]{font-size:1rem;font-weight:400;line-height:1.25rem;letter-spacing:.005em;text-decoration-line:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu--profile .profile-email[data-v-a439fdd8],.profile-menu--profile .profile-phone[data-v-a439fdd8]{font-size:.875rem;font-weight:400;line-height:1.125rem;letter-spacing:.0125em;text-decoration-line:none;color:var(--fm-color-neutral-gray-300);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-log-list-table[data-v-c4118552] [class~=gap-24]>div:first-child{display:none}.audit-log-list-table[data-v-c4118552] tr:has(.audit-op-marker){background-color:var(--fm-color-neutral-gray-100);border-top:1px solid var(--fm-color-neutral-gray-200)}.audit-log-list-table[data-v-c4118552] tr:has(.audit-op-marker):hover{background-color:#e8e8ed}.audit-log-action-label[data-v-c4118552]{display:block;width:100%;max-width:100%;max-height:6.25rem;overflow-y:auto;white-space:pre-line;word-break:break-word;line-height:1.25rem;scrollbar-width:none;-ms-overflow-style:none}.audit-log-action-label[data-v-c4118552]::-webkit-scrollbar{display:none}.audit-log-operation-label-detail[data-v-c4118552]{max-height:6.875rem;overflow-y:auto;white-space:pre-line;word-break:break-word;line-height:1.375rem;scrollbar-width:none;-ms-overflow-style:none}.audit-log-operation-label-detail[data-v-c4118552]::-webkit-scrollbar{display:none}
|