@objectstack/plugin-approvals 17.3.0 → 17.4.0
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/CHANGELOG.md +253 -0
- package/dist/index.d.mts +890 -348
- package/dist/index.d.ts +890 -348
- package/dist/index.js +582 -16
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +583 -18
- package/dist/index.mjs.map +1 -1
- package/package.json +17 -12
package/dist/index.d.ts
CHANGED
|
@@ -422,7 +422,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
422
422
|
nameField?: string | undefined;
|
|
423
423
|
displayNameField?: string | undefined;
|
|
424
424
|
titleFormat?: string | {
|
|
425
|
-
dialect: "
|
|
425
|
+
dialect: "template";
|
|
426
426
|
source?: string | undefined;
|
|
427
427
|
ast?: unknown;
|
|
428
428
|
meta?: {
|
|
@@ -484,7 +484,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
484
484
|
}) | undefined;
|
|
485
485
|
name?: string | undefined;
|
|
486
486
|
tree?: {
|
|
487
|
-
[x: string]: unknown;
|
|
488
487
|
parentField?: string | undefined;
|
|
489
488
|
labelField?: string | undefined;
|
|
490
489
|
fields?: string[] | undefined;
|
|
@@ -495,6 +494,68 @@ declare const SysApprovalRequest: Omit<{
|
|
|
495
494
|
defaultValue?: never;
|
|
496
495
|
}) | undefined;
|
|
497
496
|
inlineEdit?: boolean | undefined;
|
|
497
|
+
emptyState?: {
|
|
498
|
+
title?: string | (Record<string, string> & {
|
|
499
|
+
key?: never;
|
|
500
|
+
defaultValue?: never;
|
|
501
|
+
}) | undefined;
|
|
502
|
+
message?: string | (Record<string, string> & {
|
|
503
|
+
key?: never;
|
|
504
|
+
defaultValue?: never;
|
|
505
|
+
}) | undefined;
|
|
506
|
+
icon?: string | undefined;
|
|
507
|
+
} | undefined;
|
|
508
|
+
bulkActions?: string[] | undefined;
|
|
509
|
+
bulkActionDefs?: {
|
|
510
|
+
name: string;
|
|
511
|
+
operation: "delete" | "update" | "custom";
|
|
512
|
+
label?: string | undefined;
|
|
513
|
+
icon?: string | undefined;
|
|
514
|
+
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
515
|
+
execution?: "aggregate" | "perRecord" | undefined;
|
|
516
|
+
patch?: Record<string, unknown> | undefined;
|
|
517
|
+
params?: {
|
|
518
|
+
[x: string]: unknown;
|
|
519
|
+
name: string;
|
|
520
|
+
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
521
|
+
label?: string | undefined;
|
|
522
|
+
help?: string | undefined;
|
|
523
|
+
required?: boolean | undefined;
|
|
524
|
+
default?: unknown;
|
|
525
|
+
options?: {
|
|
526
|
+
[x: string]: unknown;
|
|
527
|
+
label: string;
|
|
528
|
+
value: string | number | boolean;
|
|
529
|
+
}[] | undefined;
|
|
530
|
+
object?: string | undefined;
|
|
531
|
+
labelField?: string | undefined;
|
|
532
|
+
multiple?: boolean | undefined;
|
|
533
|
+
placeholder?: string | undefined;
|
|
534
|
+
}[] | undefined;
|
|
535
|
+
confirmText?: string | undefined;
|
|
536
|
+
confirmLabel?: string | undefined;
|
|
537
|
+
visible?: string | {
|
|
538
|
+
dialect: "cel" | "cron" | "template";
|
|
539
|
+
source?: string | undefined;
|
|
540
|
+
ast?: unknown;
|
|
541
|
+
meta?: {
|
|
542
|
+
rationale?: string | undefined;
|
|
543
|
+
generatedBy?: string | undefined;
|
|
544
|
+
} | undefined;
|
|
545
|
+
} | undefined;
|
|
546
|
+
requiredPermissions?: string[] | undefined;
|
|
547
|
+
maxRecords?: number | undefined;
|
|
548
|
+
batchSize?: number | undefined;
|
|
549
|
+
}[] | undefined;
|
|
550
|
+
rowActions?: string[] | undefined;
|
|
551
|
+
navigation?: {
|
|
552
|
+
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
553
|
+
view?: string | undefined;
|
|
554
|
+
preventNavigation?: boolean | undefined;
|
|
555
|
+
openNewTab?: boolean | undefined;
|
|
556
|
+
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
557
|
+
width?: string | number | undefined;
|
|
558
|
+
} | undefined;
|
|
498
559
|
data?: {
|
|
499
560
|
provider: "object";
|
|
500
561
|
object: string;
|
|
@@ -523,14 +584,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
523
584
|
schema?: Record<string, unknown> | undefined;
|
|
524
585
|
} | undefined;
|
|
525
586
|
pageName?: string | undefined;
|
|
526
|
-
navigation?: {
|
|
527
|
-
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
528
|
-
view?: string | undefined;
|
|
529
|
-
preventNavigation?: boolean | undefined;
|
|
530
|
-
openNewTab?: boolean | undefined;
|
|
531
|
-
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
532
|
-
width?: string | number | undefined;
|
|
533
|
-
} | undefined;
|
|
534
587
|
sharing?: {
|
|
535
588
|
type?: "personal" | "collaborative" | undefined;
|
|
536
589
|
lockedBy?: string | undefined;
|
|
@@ -561,60 +614,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
561
614
|
isDefault?: boolean | undefined;
|
|
562
615
|
visible?: boolean | undefined;
|
|
563
616
|
}[] | undefined;
|
|
564
|
-
emptyState?: {
|
|
565
|
-
title?: string | (Record<string, string> & {
|
|
566
|
-
key?: never;
|
|
567
|
-
defaultValue?: never;
|
|
568
|
-
}) | undefined;
|
|
569
|
-
message?: string | (Record<string, string> & {
|
|
570
|
-
key?: never;
|
|
571
|
-
defaultValue?: never;
|
|
572
|
-
}) | undefined;
|
|
573
|
-
icon?: string | undefined;
|
|
574
|
-
} | undefined;
|
|
575
|
-
bulkActions?: string[] | undefined;
|
|
576
|
-
bulkActionDefs?: {
|
|
577
|
-
name: string;
|
|
578
|
-
operation: "delete" | "update" | "custom";
|
|
579
|
-
label?: string | undefined;
|
|
580
|
-
icon?: string | undefined;
|
|
581
|
-
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
582
|
-
execution?: "aggregate" | "perRecord" | undefined;
|
|
583
|
-
patch?: Record<string, unknown> | undefined;
|
|
584
|
-
params?: {
|
|
585
|
-
[x: string]: unknown;
|
|
586
|
-
name: string;
|
|
587
|
-
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
588
|
-
label?: string | undefined;
|
|
589
|
-
help?: string | undefined;
|
|
590
|
-
required?: boolean | undefined;
|
|
591
|
-
default?: unknown;
|
|
592
|
-
options?: {
|
|
593
|
-
[x: string]: unknown;
|
|
594
|
-
label: string;
|
|
595
|
-
value: string | number | boolean;
|
|
596
|
-
}[] | undefined;
|
|
597
|
-
object?: string | undefined;
|
|
598
|
-
labelField?: string | undefined;
|
|
599
|
-
multiple?: boolean | undefined;
|
|
600
|
-
placeholder?: string | undefined;
|
|
601
|
-
}[] | undefined;
|
|
602
|
-
confirmText?: string | undefined;
|
|
603
|
-
confirmLabel?: string | undefined;
|
|
604
|
-
visible?: string | {
|
|
605
|
-
dialect: "cel" | "cron" | "template";
|
|
606
|
-
source?: string | undefined;
|
|
607
|
-
ast?: unknown;
|
|
608
|
-
meta?: {
|
|
609
|
-
rationale?: string | undefined;
|
|
610
|
-
generatedBy?: string | undefined;
|
|
611
|
-
} | undefined;
|
|
612
|
-
} | undefined;
|
|
613
|
-
requiredPermissions?: string[] | undefined;
|
|
614
|
-
maxRecords?: number | undefined;
|
|
615
|
-
batchSize?: number | undefined;
|
|
616
|
-
}[] | undefined;
|
|
617
|
-
rowActions?: string[] | undefined;
|
|
618
617
|
responsive?: undefined;
|
|
619
618
|
performance?: undefined;
|
|
620
619
|
striped?: undefined;
|
|
@@ -672,7 +671,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
672
671
|
scale?: "month" | "day" | "week" | "year" | "hour" | "quarter" | undefined;
|
|
673
672
|
} | undefined;
|
|
674
673
|
gantt?: {
|
|
675
|
-
[x: string]: unknown;
|
|
676
674
|
startDateField: string;
|
|
677
675
|
endDateField: string;
|
|
678
676
|
titleField: string;
|
|
@@ -702,6 +700,31 @@ declare const SysApprovalRequest: Omit<{
|
|
|
702
700
|
}[] | undefined;
|
|
703
701
|
autoZoomToFilter?: boolean | undefined;
|
|
704
702
|
viewMode?: "month" | "day" | "week" | "year" | "quarter" | undefined;
|
|
703
|
+
borderColorField?: string | undefined;
|
|
704
|
+
lockField?: string | undefined;
|
|
705
|
+
objectField?: string | undefined;
|
|
706
|
+
summaryExtent?: "children" | "self" | undefined;
|
|
707
|
+
defaultCollapsedDepth?: number | undefined;
|
|
708
|
+
dependencyTypes?: boolean | undefined;
|
|
709
|
+
timeZone?: string | undefined;
|
|
710
|
+
exportFileName?: string | undefined;
|
|
711
|
+
interactions?: {
|
|
712
|
+
move?: boolean | undefined;
|
|
713
|
+
resize?: boolean | undefined;
|
|
714
|
+
progress?: boolean | undefined;
|
|
715
|
+
link?: boolean | undefined;
|
|
716
|
+
} | undefined;
|
|
717
|
+
timeSegments?: {
|
|
718
|
+
bands: {
|
|
719
|
+
label: string;
|
|
720
|
+
start: string;
|
|
721
|
+
end: string;
|
|
722
|
+
key?: string | undefined;
|
|
723
|
+
color?: string | undefined;
|
|
724
|
+
}[];
|
|
725
|
+
dayStart?: string | undefined;
|
|
726
|
+
showMidnight?: boolean | undefined;
|
|
727
|
+
} | undefined;
|
|
705
728
|
} | undefined;
|
|
706
729
|
chart?: {
|
|
707
730
|
dataset: string;
|
|
@@ -1135,6 +1158,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1135
1158
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
1136
1159
|
readonly _packageId?: string | undefined;
|
|
1137
1160
|
readonly _packageVersion?: string | undefined;
|
|
1161
|
+
readonly precision?: number | undefined;
|
|
1138
1162
|
readonly name?: string | undefined;
|
|
1139
1163
|
readonly lookupFilters?: {
|
|
1140
1164
|
field: string;
|
|
@@ -1161,7 +1185,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1161
1185
|
} | undefined;
|
|
1162
1186
|
readonly reference?: string | undefined;
|
|
1163
1187
|
readonly label?: string | undefined;
|
|
1164
|
-
readonly precision?: number | undefined;
|
|
1165
1188
|
readonly scale?: number | undefined;
|
|
1166
1189
|
readonly step?: number | undefined;
|
|
1167
1190
|
readonly displayField?: string | undefined;
|
|
@@ -1264,7 +1287,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1264
1287
|
readonly widget?: string | undefined;
|
|
1265
1288
|
readonly internal?: boolean | undefined;
|
|
1266
1289
|
readonly requiredPermissions?: string[] | undefined;
|
|
1267
|
-
readonly maskingRule?: "
|
|
1290
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
1268
1291
|
keepHead: number;
|
|
1269
1292
|
keepTail: number;
|
|
1270
1293
|
} | undefined;
|
|
@@ -1334,6 +1357,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1334
1357
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
1335
1358
|
readonly _packageId?: string | undefined;
|
|
1336
1359
|
readonly _packageVersion?: string | undefined;
|
|
1360
|
+
readonly precision?: number | undefined;
|
|
1337
1361
|
readonly name?: string | undefined;
|
|
1338
1362
|
readonly lookupFilters?: {
|
|
1339
1363
|
field: string;
|
|
@@ -1360,7 +1384,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1360
1384
|
} | undefined;
|
|
1361
1385
|
readonly reference?: string | undefined;
|
|
1362
1386
|
readonly label?: string | undefined;
|
|
1363
|
-
readonly precision?: number | undefined;
|
|
1364
1387
|
readonly scale?: number | undefined;
|
|
1365
1388
|
readonly step?: number | undefined;
|
|
1366
1389
|
readonly displayField?: string | undefined;
|
|
@@ -1463,7 +1486,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1463
1486
|
readonly widget?: string | undefined;
|
|
1464
1487
|
readonly internal?: boolean | undefined;
|
|
1465
1488
|
readonly requiredPermissions?: string[] | undefined;
|
|
1466
|
-
readonly maskingRule?: "
|
|
1489
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
1467
1490
|
keepHead: number;
|
|
1468
1491
|
keepTail: number;
|
|
1469
1492
|
} | undefined;
|
|
@@ -1524,6 +1547,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1524
1547
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
1525
1548
|
readonly _packageId?: string | undefined;
|
|
1526
1549
|
readonly _packageVersion?: string | undefined;
|
|
1550
|
+
readonly precision?: number | undefined;
|
|
1527
1551
|
readonly name?: string | undefined;
|
|
1528
1552
|
readonly lookupFilters?: {
|
|
1529
1553
|
field: string;
|
|
@@ -1550,7 +1574,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1550
1574
|
} | undefined;
|
|
1551
1575
|
readonly reference?: string | undefined;
|
|
1552
1576
|
readonly label?: string | undefined;
|
|
1553
|
-
readonly precision?: number | undefined;
|
|
1554
1577
|
readonly scale?: number | undefined;
|
|
1555
1578
|
readonly step?: number | undefined;
|
|
1556
1579
|
readonly displayField?: string | undefined;
|
|
@@ -1653,7 +1676,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1653
1676
|
readonly widget?: string | undefined;
|
|
1654
1677
|
readonly internal?: boolean | undefined;
|
|
1655
1678
|
readonly requiredPermissions?: string[] | undefined;
|
|
1656
|
-
readonly maskingRule?: "
|
|
1679
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
1657
1680
|
keepHead: number;
|
|
1658
1681
|
keepTail: number;
|
|
1659
1682
|
} | undefined;
|
|
@@ -1714,6 +1737,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1714
1737
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
1715
1738
|
readonly _packageId?: string | undefined;
|
|
1716
1739
|
readonly _packageVersion?: string | undefined;
|
|
1740
|
+
readonly precision?: number | undefined;
|
|
1717
1741
|
readonly name?: string | undefined;
|
|
1718
1742
|
readonly lookupFilters?: {
|
|
1719
1743
|
field: string;
|
|
@@ -1740,7 +1764,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1740
1764
|
} | undefined;
|
|
1741
1765
|
readonly reference?: string | undefined;
|
|
1742
1766
|
readonly label?: string | undefined;
|
|
1743
|
-
readonly precision?: number | undefined;
|
|
1744
1767
|
readonly scale?: number | undefined;
|
|
1745
1768
|
readonly step?: number | undefined;
|
|
1746
1769
|
readonly displayField?: string | undefined;
|
|
@@ -1843,7 +1866,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1843
1866
|
readonly widget?: string | undefined;
|
|
1844
1867
|
readonly internal?: boolean | undefined;
|
|
1845
1868
|
readonly requiredPermissions?: string[] | undefined;
|
|
1846
|
-
readonly maskingRule?: "
|
|
1869
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
1847
1870
|
keepHead: number;
|
|
1848
1871
|
keepTail: number;
|
|
1849
1872
|
} | undefined;
|
|
@@ -1912,6 +1935,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1912
1935
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
1913
1936
|
readonly _packageId?: string | undefined;
|
|
1914
1937
|
readonly _packageVersion?: string | undefined;
|
|
1938
|
+
readonly precision?: number | undefined;
|
|
1915
1939
|
readonly name?: string | undefined;
|
|
1916
1940
|
readonly lookupFilters?: {
|
|
1917
1941
|
field: string;
|
|
@@ -1938,7 +1962,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
1938
1962
|
} | undefined;
|
|
1939
1963
|
readonly reference?: string | undefined;
|
|
1940
1964
|
readonly label?: string | undefined;
|
|
1941
|
-
readonly precision?: number | undefined;
|
|
1942
1965
|
readonly scale?: number | undefined;
|
|
1943
1966
|
readonly step?: number | undefined;
|
|
1944
1967
|
readonly displayField?: string | undefined;
|
|
@@ -2041,7 +2064,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2041
2064
|
readonly widget?: string | undefined;
|
|
2042
2065
|
readonly internal?: boolean | undefined;
|
|
2043
2066
|
readonly requiredPermissions?: string[] | undefined;
|
|
2044
|
-
readonly maskingRule?: "
|
|
2067
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
2045
2068
|
keepHead: number;
|
|
2046
2069
|
keepTail: number;
|
|
2047
2070
|
} | undefined;
|
|
@@ -2102,6 +2125,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2102
2125
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
2103
2126
|
readonly _packageId?: string | undefined;
|
|
2104
2127
|
readonly _packageVersion?: string | undefined;
|
|
2128
|
+
readonly precision?: number | undefined;
|
|
2105
2129
|
readonly name?: string | undefined;
|
|
2106
2130
|
readonly lookupFilters?: {
|
|
2107
2131
|
field: string;
|
|
@@ -2128,7 +2152,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2128
2152
|
} | undefined;
|
|
2129
2153
|
readonly reference?: string | undefined;
|
|
2130
2154
|
readonly label?: string | undefined;
|
|
2131
|
-
readonly precision?: number | undefined;
|
|
2132
2155
|
readonly scale?: number | undefined;
|
|
2133
2156
|
readonly step?: number | undefined;
|
|
2134
2157
|
readonly displayField?: string | undefined;
|
|
@@ -2231,7 +2254,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2231
2254
|
readonly widget?: string | undefined;
|
|
2232
2255
|
readonly internal?: boolean | undefined;
|
|
2233
2256
|
readonly requiredPermissions?: string[] | undefined;
|
|
2234
|
-
readonly maskingRule?: "
|
|
2257
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
2235
2258
|
keepHead: number;
|
|
2236
2259
|
keepTail: number;
|
|
2237
2260
|
} | undefined;
|
|
@@ -2292,6 +2315,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2292
2315
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
2293
2316
|
readonly _packageId?: string | undefined;
|
|
2294
2317
|
readonly _packageVersion?: string | undefined;
|
|
2318
|
+
readonly precision?: number | undefined;
|
|
2295
2319
|
readonly name?: string | undefined;
|
|
2296
2320
|
readonly lookupFilters?: {
|
|
2297
2321
|
field: string;
|
|
@@ -2318,7 +2342,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2318
2342
|
} | undefined;
|
|
2319
2343
|
readonly reference?: string | undefined;
|
|
2320
2344
|
readonly label?: string | undefined;
|
|
2321
|
-
readonly precision?: number | undefined;
|
|
2322
2345
|
readonly scale?: number | undefined;
|
|
2323
2346
|
readonly step?: number | undefined;
|
|
2324
2347
|
readonly displayField?: string | undefined;
|
|
@@ -2421,7 +2444,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2421
2444
|
readonly widget?: string | undefined;
|
|
2422
2445
|
readonly internal?: boolean | undefined;
|
|
2423
2446
|
readonly requiredPermissions?: string[] | undefined;
|
|
2424
|
-
readonly maskingRule?: "
|
|
2447
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
2425
2448
|
keepHead: number;
|
|
2426
2449
|
keepTail: number;
|
|
2427
2450
|
} | undefined;
|
|
@@ -2482,6 +2505,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2482
2505
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
2483
2506
|
readonly _packageId?: string | undefined;
|
|
2484
2507
|
readonly _packageVersion?: string | undefined;
|
|
2508
|
+
readonly precision?: number | undefined;
|
|
2485
2509
|
readonly name?: string | undefined;
|
|
2486
2510
|
readonly lookupFilters?: {
|
|
2487
2511
|
field: string;
|
|
@@ -2508,7 +2532,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2508
2532
|
} | undefined;
|
|
2509
2533
|
readonly reference?: string | undefined;
|
|
2510
2534
|
readonly label?: string | undefined;
|
|
2511
|
-
readonly precision?: number | undefined;
|
|
2512
2535
|
readonly scale?: number | undefined;
|
|
2513
2536
|
readonly step?: number | undefined;
|
|
2514
2537
|
readonly displayField?: string | undefined;
|
|
@@ -2611,7 +2634,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2611
2634
|
readonly widget?: string | undefined;
|
|
2612
2635
|
readonly internal?: boolean | undefined;
|
|
2613
2636
|
readonly requiredPermissions?: string[] | undefined;
|
|
2614
|
-
readonly maskingRule?: "
|
|
2637
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
2615
2638
|
keepHead: number;
|
|
2616
2639
|
keepTail: number;
|
|
2617
2640
|
} | undefined;
|
|
@@ -2672,6 +2695,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2672
2695
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
2673
2696
|
readonly _packageId?: string | undefined;
|
|
2674
2697
|
readonly _packageVersion?: string | undefined;
|
|
2698
|
+
readonly precision?: number | undefined;
|
|
2675
2699
|
readonly name?: string | undefined;
|
|
2676
2700
|
readonly lookupFilters?: {
|
|
2677
2701
|
field: string;
|
|
@@ -2698,7 +2722,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2698
2722
|
} | undefined;
|
|
2699
2723
|
readonly reference?: string | undefined;
|
|
2700
2724
|
readonly label?: string | undefined;
|
|
2701
|
-
readonly precision?: number | undefined;
|
|
2702
2725
|
readonly scale?: number | undefined;
|
|
2703
2726
|
readonly step?: number | undefined;
|
|
2704
2727
|
readonly displayField?: string | undefined;
|
|
@@ -2801,7 +2824,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2801
2824
|
readonly widget?: string | undefined;
|
|
2802
2825
|
readonly internal?: boolean | undefined;
|
|
2803
2826
|
readonly requiredPermissions?: string[] | undefined;
|
|
2804
|
-
readonly maskingRule?: "
|
|
2827
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
2805
2828
|
keepHead: number;
|
|
2806
2829
|
keepTail: number;
|
|
2807
2830
|
} | undefined;
|
|
@@ -2862,6 +2885,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2862
2885
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
2863
2886
|
readonly _packageId?: string | undefined;
|
|
2864
2887
|
readonly _packageVersion?: string | undefined;
|
|
2888
|
+
readonly precision?: number | undefined;
|
|
2865
2889
|
readonly name?: string | undefined;
|
|
2866
2890
|
readonly lookupFilters?: {
|
|
2867
2891
|
field: string;
|
|
@@ -2888,7 +2912,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2888
2912
|
} | undefined;
|
|
2889
2913
|
readonly reference?: string | undefined;
|
|
2890
2914
|
readonly label?: string | undefined;
|
|
2891
|
-
readonly precision?: number | undefined;
|
|
2892
2915
|
readonly scale?: number | undefined;
|
|
2893
2916
|
readonly step?: number | undefined;
|
|
2894
2917
|
readonly displayField?: string | undefined;
|
|
@@ -2991,7 +3014,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
2991
3014
|
readonly widget?: string | undefined;
|
|
2992
3015
|
readonly internal?: boolean | undefined;
|
|
2993
3016
|
readonly requiredPermissions?: string[] | undefined;
|
|
2994
|
-
readonly maskingRule?: "
|
|
3017
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
2995
3018
|
keepHead: number;
|
|
2996
3019
|
keepTail: number;
|
|
2997
3020
|
} | undefined;
|
|
@@ -3052,6 +3075,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3052
3075
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
3053
3076
|
readonly _packageId?: string | undefined;
|
|
3054
3077
|
readonly _packageVersion?: string | undefined;
|
|
3078
|
+
readonly precision?: number | undefined;
|
|
3055
3079
|
readonly name?: string | undefined;
|
|
3056
3080
|
readonly lookupFilters?: {
|
|
3057
3081
|
field: string;
|
|
@@ -3078,7 +3102,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3078
3102
|
} | undefined;
|
|
3079
3103
|
readonly reference?: string | undefined;
|
|
3080
3104
|
readonly label?: string | undefined;
|
|
3081
|
-
readonly precision?: number | undefined;
|
|
3082
3105
|
readonly scale?: number | undefined;
|
|
3083
3106
|
readonly step?: number | undefined;
|
|
3084
3107
|
readonly displayField?: string | undefined;
|
|
@@ -3181,7 +3204,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3181
3204
|
readonly widget?: string | undefined;
|
|
3182
3205
|
readonly internal?: boolean | undefined;
|
|
3183
3206
|
readonly requiredPermissions?: string[] | undefined;
|
|
3184
|
-
readonly maskingRule?: "
|
|
3207
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
3185
3208
|
keepHead: number;
|
|
3186
3209
|
keepTail: number;
|
|
3187
3210
|
} | undefined;
|
|
@@ -3242,6 +3265,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3242
3265
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
3243
3266
|
readonly _packageId?: string | undefined;
|
|
3244
3267
|
readonly _packageVersion?: string | undefined;
|
|
3268
|
+
readonly precision?: number | undefined;
|
|
3245
3269
|
readonly name?: string | undefined;
|
|
3246
3270
|
readonly lookupFilters?: {
|
|
3247
3271
|
field: string;
|
|
@@ -3268,7 +3292,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3268
3292
|
} | undefined;
|
|
3269
3293
|
readonly reference?: string | undefined;
|
|
3270
3294
|
readonly label?: string | undefined;
|
|
3271
|
-
readonly precision?: number | undefined;
|
|
3272
3295
|
readonly scale?: number | undefined;
|
|
3273
3296
|
readonly step?: number | undefined;
|
|
3274
3297
|
readonly displayField?: string | undefined;
|
|
@@ -3371,7 +3394,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3371
3394
|
readonly widget?: string | undefined;
|
|
3372
3395
|
readonly internal?: boolean | undefined;
|
|
3373
3396
|
readonly requiredPermissions?: string[] | undefined;
|
|
3374
|
-
readonly maskingRule?: "
|
|
3397
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
3375
3398
|
keepHead: number;
|
|
3376
3399
|
keepTail: number;
|
|
3377
3400
|
} | undefined;
|
|
@@ -3432,6 +3455,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3432
3455
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
3433
3456
|
readonly _packageId?: string | undefined;
|
|
3434
3457
|
readonly _packageVersion?: string | undefined;
|
|
3458
|
+
readonly precision?: number | undefined;
|
|
3435
3459
|
readonly name?: string | undefined;
|
|
3436
3460
|
readonly lookupFilters?: {
|
|
3437
3461
|
field: string;
|
|
@@ -3458,7 +3482,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3458
3482
|
} | undefined;
|
|
3459
3483
|
readonly reference?: string | undefined;
|
|
3460
3484
|
readonly label?: string | undefined;
|
|
3461
|
-
readonly precision?: number | undefined;
|
|
3462
3485
|
readonly scale?: number | undefined;
|
|
3463
3486
|
readonly step?: number | undefined;
|
|
3464
3487
|
readonly displayField?: string | undefined;
|
|
@@ -3561,7 +3584,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3561
3584
|
readonly widget?: string | undefined;
|
|
3562
3585
|
readonly internal?: boolean | undefined;
|
|
3563
3586
|
readonly requiredPermissions?: string[] | undefined;
|
|
3564
|
-
readonly maskingRule?: "
|
|
3587
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
3565
3588
|
keepHead: number;
|
|
3566
3589
|
keepTail: number;
|
|
3567
3590
|
} | undefined;
|
|
@@ -3622,6 +3645,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3622
3645
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
3623
3646
|
readonly _packageId?: string | undefined;
|
|
3624
3647
|
readonly _packageVersion?: string | undefined;
|
|
3648
|
+
readonly precision?: number | undefined;
|
|
3625
3649
|
readonly name?: string | undefined;
|
|
3626
3650
|
readonly lookupFilters?: {
|
|
3627
3651
|
field: string;
|
|
@@ -3648,7 +3672,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3648
3672
|
} | undefined;
|
|
3649
3673
|
readonly reference?: string | undefined;
|
|
3650
3674
|
readonly label?: string | undefined;
|
|
3651
|
-
readonly precision?: number | undefined;
|
|
3652
3675
|
readonly scale?: number | undefined;
|
|
3653
3676
|
readonly step?: number | undefined;
|
|
3654
3677
|
readonly displayField?: string | undefined;
|
|
@@ -3751,7 +3774,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3751
3774
|
readonly widget?: string | undefined;
|
|
3752
3775
|
readonly internal?: boolean | undefined;
|
|
3753
3776
|
readonly requiredPermissions?: string[] | undefined;
|
|
3754
|
-
readonly maskingRule?: "
|
|
3777
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
3755
3778
|
keepHead: number;
|
|
3756
3779
|
keepTail: number;
|
|
3757
3780
|
} | undefined;
|
|
@@ -3812,6 +3835,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3812
3835
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
3813
3836
|
readonly _packageId?: string | undefined;
|
|
3814
3837
|
readonly _packageVersion?: string | undefined;
|
|
3838
|
+
readonly precision?: number | undefined;
|
|
3815
3839
|
readonly name?: string | undefined;
|
|
3816
3840
|
readonly lookupFilters?: {
|
|
3817
3841
|
field: string;
|
|
@@ -3838,7 +3862,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3838
3862
|
} | undefined;
|
|
3839
3863
|
readonly reference?: string | undefined;
|
|
3840
3864
|
readonly label?: string | undefined;
|
|
3841
|
-
readonly precision?: number | undefined;
|
|
3842
3865
|
readonly scale?: number | undefined;
|
|
3843
3866
|
readonly step?: number | undefined;
|
|
3844
3867
|
readonly displayField?: string | undefined;
|
|
@@ -3941,7 +3964,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
3941
3964
|
readonly widget?: string | undefined;
|
|
3942
3965
|
readonly internal?: boolean | undefined;
|
|
3943
3966
|
readonly requiredPermissions?: string[] | undefined;
|
|
3944
|
-
readonly maskingRule?: "
|
|
3967
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
3945
3968
|
keepHead: number;
|
|
3946
3969
|
keepTail: number;
|
|
3947
3970
|
} | undefined;
|
|
@@ -4002,6 +4025,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
4002
4025
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
4003
4026
|
readonly _packageId?: string | undefined;
|
|
4004
4027
|
readonly _packageVersion?: string | undefined;
|
|
4028
|
+
readonly precision?: number | undefined;
|
|
4005
4029
|
readonly name?: string | undefined;
|
|
4006
4030
|
readonly lookupFilters?: {
|
|
4007
4031
|
field: string;
|
|
@@ -4028,7 +4052,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
4028
4052
|
} | undefined;
|
|
4029
4053
|
readonly reference?: string | undefined;
|
|
4030
4054
|
readonly label?: string | undefined;
|
|
4031
|
-
readonly precision?: number | undefined;
|
|
4032
4055
|
readonly scale?: number | undefined;
|
|
4033
4056
|
readonly step?: number | undefined;
|
|
4034
4057
|
readonly displayField?: string | undefined;
|
|
@@ -4131,7 +4154,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
4131
4154
|
readonly widget?: string | undefined;
|
|
4132
4155
|
readonly internal?: boolean | undefined;
|
|
4133
4156
|
readonly requiredPermissions?: string[] | undefined;
|
|
4134
|
-
readonly maskingRule?: "
|
|
4157
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
4135
4158
|
keepHead: number;
|
|
4136
4159
|
keepTail: number;
|
|
4137
4160
|
} | undefined;
|
|
@@ -4192,6 +4215,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
4192
4215
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
4193
4216
|
readonly _packageId?: string | undefined;
|
|
4194
4217
|
readonly _packageVersion?: string | undefined;
|
|
4218
|
+
readonly precision?: number | undefined;
|
|
4195
4219
|
readonly name?: string | undefined;
|
|
4196
4220
|
readonly lookupFilters?: {
|
|
4197
4221
|
field: string;
|
|
@@ -4218,7 +4242,6 @@ declare const SysApprovalRequest: Omit<{
|
|
|
4218
4242
|
} | undefined;
|
|
4219
4243
|
readonly reference?: string | undefined;
|
|
4220
4244
|
readonly label?: string | undefined;
|
|
4221
|
-
readonly precision?: number | undefined;
|
|
4222
4245
|
readonly scale?: number | undefined;
|
|
4223
4246
|
readonly step?: number | undefined;
|
|
4224
4247
|
readonly displayField?: string | undefined;
|
|
@@ -4321,7 +4344,7 @@ declare const SysApprovalRequest: Omit<{
|
|
|
4321
4344
|
readonly widget?: string | undefined;
|
|
4322
4345
|
readonly internal?: boolean | undefined;
|
|
4323
4346
|
readonly requiredPermissions?: string[] | undefined;
|
|
4324
|
-
readonly maskingRule?: "
|
|
4347
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
4325
4348
|
keepHead: number;
|
|
4326
4349
|
keepTail: number;
|
|
4327
4350
|
} | undefined;
|
|
@@ -4906,7 +4929,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
4906
4929
|
nameField?: string | undefined;
|
|
4907
4930
|
displayNameField?: string | undefined;
|
|
4908
4931
|
titleFormat?: string | {
|
|
4909
|
-
dialect: "
|
|
4932
|
+
dialect: "template";
|
|
4910
4933
|
source?: string | undefined;
|
|
4911
4934
|
ast?: unknown;
|
|
4912
4935
|
meta?: {
|
|
@@ -4968,7 +4991,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
4968
4991
|
}) | undefined;
|
|
4969
4992
|
name?: string | undefined;
|
|
4970
4993
|
tree?: {
|
|
4971
|
-
[x: string]: unknown;
|
|
4972
4994
|
parentField?: string | undefined;
|
|
4973
4995
|
labelField?: string | undefined;
|
|
4974
4996
|
fields?: string[] | undefined;
|
|
@@ -4979,6 +5001,68 @@ declare const SysApprovalAction: Omit<{
|
|
|
4979
5001
|
defaultValue?: never;
|
|
4980
5002
|
}) | undefined;
|
|
4981
5003
|
inlineEdit?: boolean | undefined;
|
|
5004
|
+
emptyState?: {
|
|
5005
|
+
title?: string | (Record<string, string> & {
|
|
5006
|
+
key?: never;
|
|
5007
|
+
defaultValue?: never;
|
|
5008
|
+
}) | undefined;
|
|
5009
|
+
message?: string | (Record<string, string> & {
|
|
5010
|
+
key?: never;
|
|
5011
|
+
defaultValue?: never;
|
|
5012
|
+
}) | undefined;
|
|
5013
|
+
icon?: string | undefined;
|
|
5014
|
+
} | undefined;
|
|
5015
|
+
bulkActions?: string[] | undefined;
|
|
5016
|
+
bulkActionDefs?: {
|
|
5017
|
+
name: string;
|
|
5018
|
+
operation: "delete" | "update" | "custom";
|
|
5019
|
+
label?: string | undefined;
|
|
5020
|
+
icon?: string | undefined;
|
|
5021
|
+
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
5022
|
+
execution?: "aggregate" | "perRecord" | undefined;
|
|
5023
|
+
patch?: Record<string, unknown> | undefined;
|
|
5024
|
+
params?: {
|
|
5025
|
+
[x: string]: unknown;
|
|
5026
|
+
name: string;
|
|
5027
|
+
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
5028
|
+
label?: string | undefined;
|
|
5029
|
+
help?: string | undefined;
|
|
5030
|
+
required?: boolean | undefined;
|
|
5031
|
+
default?: unknown;
|
|
5032
|
+
options?: {
|
|
5033
|
+
[x: string]: unknown;
|
|
5034
|
+
label: string;
|
|
5035
|
+
value: string | number | boolean;
|
|
5036
|
+
}[] | undefined;
|
|
5037
|
+
object?: string | undefined;
|
|
5038
|
+
labelField?: string | undefined;
|
|
5039
|
+
multiple?: boolean | undefined;
|
|
5040
|
+
placeholder?: string | undefined;
|
|
5041
|
+
}[] | undefined;
|
|
5042
|
+
confirmText?: string | undefined;
|
|
5043
|
+
confirmLabel?: string | undefined;
|
|
5044
|
+
visible?: string | {
|
|
5045
|
+
dialect: "cel" | "cron" | "template";
|
|
5046
|
+
source?: string | undefined;
|
|
5047
|
+
ast?: unknown;
|
|
5048
|
+
meta?: {
|
|
5049
|
+
rationale?: string | undefined;
|
|
5050
|
+
generatedBy?: string | undefined;
|
|
5051
|
+
} | undefined;
|
|
5052
|
+
} | undefined;
|
|
5053
|
+
requiredPermissions?: string[] | undefined;
|
|
5054
|
+
maxRecords?: number | undefined;
|
|
5055
|
+
batchSize?: number | undefined;
|
|
5056
|
+
}[] | undefined;
|
|
5057
|
+
rowActions?: string[] | undefined;
|
|
5058
|
+
navigation?: {
|
|
5059
|
+
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
5060
|
+
view?: string | undefined;
|
|
5061
|
+
preventNavigation?: boolean | undefined;
|
|
5062
|
+
openNewTab?: boolean | undefined;
|
|
5063
|
+
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
5064
|
+
width?: string | number | undefined;
|
|
5065
|
+
} | undefined;
|
|
4982
5066
|
data?: {
|
|
4983
5067
|
provider: "object";
|
|
4984
5068
|
object: string;
|
|
@@ -5007,14 +5091,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
5007
5091
|
schema?: Record<string, unknown> | undefined;
|
|
5008
5092
|
} | undefined;
|
|
5009
5093
|
pageName?: string | undefined;
|
|
5010
|
-
navigation?: {
|
|
5011
|
-
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
5012
|
-
view?: string | undefined;
|
|
5013
|
-
preventNavigation?: boolean | undefined;
|
|
5014
|
-
openNewTab?: boolean | undefined;
|
|
5015
|
-
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
5016
|
-
width?: string | number | undefined;
|
|
5017
|
-
} | undefined;
|
|
5018
5094
|
sharing?: {
|
|
5019
5095
|
type?: "personal" | "collaborative" | undefined;
|
|
5020
5096
|
lockedBy?: string | undefined;
|
|
@@ -5045,60 +5121,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
5045
5121
|
isDefault?: boolean | undefined;
|
|
5046
5122
|
visible?: boolean | undefined;
|
|
5047
5123
|
}[] | undefined;
|
|
5048
|
-
emptyState?: {
|
|
5049
|
-
title?: string | (Record<string, string> & {
|
|
5050
|
-
key?: never;
|
|
5051
|
-
defaultValue?: never;
|
|
5052
|
-
}) | undefined;
|
|
5053
|
-
message?: string | (Record<string, string> & {
|
|
5054
|
-
key?: never;
|
|
5055
|
-
defaultValue?: never;
|
|
5056
|
-
}) | undefined;
|
|
5057
|
-
icon?: string | undefined;
|
|
5058
|
-
} | undefined;
|
|
5059
|
-
bulkActions?: string[] | undefined;
|
|
5060
|
-
bulkActionDefs?: {
|
|
5061
|
-
name: string;
|
|
5062
|
-
operation: "delete" | "update" | "custom";
|
|
5063
|
-
label?: string | undefined;
|
|
5064
|
-
icon?: string | undefined;
|
|
5065
|
-
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
5066
|
-
execution?: "aggregate" | "perRecord" | undefined;
|
|
5067
|
-
patch?: Record<string, unknown> | undefined;
|
|
5068
|
-
params?: {
|
|
5069
|
-
[x: string]: unknown;
|
|
5070
|
-
name: string;
|
|
5071
|
-
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
5072
|
-
label?: string | undefined;
|
|
5073
|
-
help?: string | undefined;
|
|
5074
|
-
required?: boolean | undefined;
|
|
5075
|
-
default?: unknown;
|
|
5076
|
-
options?: {
|
|
5077
|
-
[x: string]: unknown;
|
|
5078
|
-
label: string;
|
|
5079
|
-
value: string | number | boolean;
|
|
5080
|
-
}[] | undefined;
|
|
5081
|
-
object?: string | undefined;
|
|
5082
|
-
labelField?: string | undefined;
|
|
5083
|
-
multiple?: boolean | undefined;
|
|
5084
|
-
placeholder?: string | undefined;
|
|
5085
|
-
}[] | undefined;
|
|
5086
|
-
confirmText?: string | undefined;
|
|
5087
|
-
confirmLabel?: string | undefined;
|
|
5088
|
-
visible?: string | {
|
|
5089
|
-
dialect: "cel" | "cron" | "template";
|
|
5090
|
-
source?: string | undefined;
|
|
5091
|
-
ast?: unknown;
|
|
5092
|
-
meta?: {
|
|
5093
|
-
rationale?: string | undefined;
|
|
5094
|
-
generatedBy?: string | undefined;
|
|
5095
|
-
} | undefined;
|
|
5096
|
-
} | undefined;
|
|
5097
|
-
requiredPermissions?: string[] | undefined;
|
|
5098
|
-
maxRecords?: number | undefined;
|
|
5099
|
-
batchSize?: number | undefined;
|
|
5100
|
-
}[] | undefined;
|
|
5101
|
-
rowActions?: string[] | undefined;
|
|
5102
5124
|
responsive?: undefined;
|
|
5103
5125
|
performance?: undefined;
|
|
5104
5126
|
striped?: undefined;
|
|
@@ -5156,7 +5178,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
5156
5178
|
scale?: "month" | "day" | "week" | "year" | "hour" | "quarter" | undefined;
|
|
5157
5179
|
} | undefined;
|
|
5158
5180
|
gantt?: {
|
|
5159
|
-
[x: string]: unknown;
|
|
5160
5181
|
startDateField: string;
|
|
5161
5182
|
endDateField: string;
|
|
5162
5183
|
titleField: string;
|
|
@@ -5186,6 +5207,31 @@ declare const SysApprovalAction: Omit<{
|
|
|
5186
5207
|
}[] | undefined;
|
|
5187
5208
|
autoZoomToFilter?: boolean | undefined;
|
|
5188
5209
|
viewMode?: "month" | "day" | "week" | "year" | "quarter" | undefined;
|
|
5210
|
+
borderColorField?: string | undefined;
|
|
5211
|
+
lockField?: string | undefined;
|
|
5212
|
+
objectField?: string | undefined;
|
|
5213
|
+
summaryExtent?: "children" | "self" | undefined;
|
|
5214
|
+
defaultCollapsedDepth?: number | undefined;
|
|
5215
|
+
dependencyTypes?: boolean | undefined;
|
|
5216
|
+
timeZone?: string | undefined;
|
|
5217
|
+
exportFileName?: string | undefined;
|
|
5218
|
+
interactions?: {
|
|
5219
|
+
move?: boolean | undefined;
|
|
5220
|
+
resize?: boolean | undefined;
|
|
5221
|
+
progress?: boolean | undefined;
|
|
5222
|
+
link?: boolean | undefined;
|
|
5223
|
+
} | undefined;
|
|
5224
|
+
timeSegments?: {
|
|
5225
|
+
bands: {
|
|
5226
|
+
label: string;
|
|
5227
|
+
start: string;
|
|
5228
|
+
end: string;
|
|
5229
|
+
key?: string | undefined;
|
|
5230
|
+
color?: string | undefined;
|
|
5231
|
+
}[];
|
|
5232
|
+
dayStart?: string | undefined;
|
|
5233
|
+
showMidnight?: boolean | undefined;
|
|
5234
|
+
} | undefined;
|
|
5189
5235
|
} | undefined;
|
|
5190
5236
|
chart?: {
|
|
5191
5237
|
dataset: string;
|
|
@@ -5594,6 +5640,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
5594
5640
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
5595
5641
|
readonly _packageId?: string | undefined;
|
|
5596
5642
|
readonly _packageVersion?: string | undefined;
|
|
5643
|
+
readonly precision?: number | undefined;
|
|
5597
5644
|
readonly name?: string | undefined;
|
|
5598
5645
|
readonly lookupFilters?: {
|
|
5599
5646
|
field: string;
|
|
@@ -5620,7 +5667,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
5620
5667
|
} | undefined;
|
|
5621
5668
|
readonly reference?: string | undefined;
|
|
5622
5669
|
readonly label?: string | undefined;
|
|
5623
|
-
readonly precision?: number | undefined;
|
|
5624
5670
|
readonly scale?: number | undefined;
|
|
5625
5671
|
readonly step?: number | undefined;
|
|
5626
5672
|
readonly displayField?: string | undefined;
|
|
@@ -5723,7 +5769,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
5723
5769
|
readonly widget?: string | undefined;
|
|
5724
5770
|
readonly internal?: boolean | undefined;
|
|
5725
5771
|
readonly requiredPermissions?: string[] | undefined;
|
|
5726
|
-
readonly maskingRule?: "
|
|
5772
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
5727
5773
|
keepHead: number;
|
|
5728
5774
|
keepTail: number;
|
|
5729
5775
|
} | undefined;
|
|
@@ -5801,6 +5847,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
5801
5847
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
5802
5848
|
readonly _packageId?: string | undefined;
|
|
5803
5849
|
readonly _packageVersion?: string | undefined;
|
|
5850
|
+
readonly precision?: number | undefined;
|
|
5804
5851
|
readonly name?: string | undefined;
|
|
5805
5852
|
readonly lookupFilters?: {
|
|
5806
5853
|
field: string;
|
|
@@ -5827,7 +5874,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
5827
5874
|
} | undefined;
|
|
5828
5875
|
readonly reference?: string | undefined;
|
|
5829
5876
|
readonly label?: string | undefined;
|
|
5830
|
-
readonly precision?: number | undefined;
|
|
5831
5877
|
readonly scale?: number | undefined;
|
|
5832
5878
|
readonly step?: number | undefined;
|
|
5833
5879
|
readonly displayField?: string | undefined;
|
|
@@ -5930,7 +5976,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
5930
5976
|
readonly widget?: string | undefined;
|
|
5931
5977
|
readonly internal?: boolean | undefined;
|
|
5932
5978
|
readonly requiredPermissions?: string[] | undefined;
|
|
5933
|
-
readonly maskingRule?: "
|
|
5979
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
5934
5980
|
keepHead: number;
|
|
5935
5981
|
keepTail: number;
|
|
5936
5982
|
} | undefined;
|
|
@@ -5991,6 +6037,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
5991
6037
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
5992
6038
|
readonly _packageId?: string | undefined;
|
|
5993
6039
|
readonly _packageVersion?: string | undefined;
|
|
6040
|
+
readonly precision?: number | undefined;
|
|
5994
6041
|
readonly name?: string | undefined;
|
|
5995
6042
|
readonly lookupFilters?: {
|
|
5996
6043
|
field: string;
|
|
@@ -6017,7 +6064,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
6017
6064
|
} | undefined;
|
|
6018
6065
|
readonly reference?: string | undefined;
|
|
6019
6066
|
readonly label?: string | undefined;
|
|
6020
|
-
readonly precision?: number | undefined;
|
|
6021
6067
|
readonly scale?: number | undefined;
|
|
6022
6068
|
readonly step?: number | undefined;
|
|
6023
6069
|
readonly displayField?: string | undefined;
|
|
@@ -6120,7 +6166,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6120
6166
|
readonly widget?: string | undefined;
|
|
6121
6167
|
readonly internal?: boolean | undefined;
|
|
6122
6168
|
readonly requiredPermissions?: string[] | undefined;
|
|
6123
|
-
readonly maskingRule?: "
|
|
6169
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
6124
6170
|
keepHead: number;
|
|
6125
6171
|
keepTail: number;
|
|
6126
6172
|
} | undefined;
|
|
@@ -6181,6 +6227,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6181
6227
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
6182
6228
|
readonly _packageId?: string | undefined;
|
|
6183
6229
|
readonly _packageVersion?: string | undefined;
|
|
6230
|
+
readonly precision?: number | undefined;
|
|
6184
6231
|
readonly name?: string | undefined;
|
|
6185
6232
|
readonly lookupFilters?: {
|
|
6186
6233
|
field: string;
|
|
@@ -6207,7 +6254,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
6207
6254
|
} | undefined;
|
|
6208
6255
|
readonly reference?: string | undefined;
|
|
6209
6256
|
readonly label?: string | undefined;
|
|
6210
|
-
readonly precision?: number | undefined;
|
|
6211
6257
|
readonly scale?: number | undefined;
|
|
6212
6258
|
readonly step?: number | undefined;
|
|
6213
6259
|
readonly displayField?: string | undefined;
|
|
@@ -6310,7 +6356,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6310
6356
|
readonly widget?: string | undefined;
|
|
6311
6357
|
readonly internal?: boolean | undefined;
|
|
6312
6358
|
readonly requiredPermissions?: string[] | undefined;
|
|
6313
|
-
readonly maskingRule?: "
|
|
6359
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
6314
6360
|
keepHead: number;
|
|
6315
6361
|
keepTail: number;
|
|
6316
6362
|
} | undefined;
|
|
@@ -6379,6 +6425,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6379
6425
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
6380
6426
|
readonly _packageId?: string | undefined;
|
|
6381
6427
|
readonly _packageVersion?: string | undefined;
|
|
6428
|
+
readonly precision?: number | undefined;
|
|
6382
6429
|
readonly name?: string | undefined;
|
|
6383
6430
|
readonly lookupFilters?: {
|
|
6384
6431
|
field: string;
|
|
@@ -6405,7 +6452,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
6405
6452
|
} | undefined;
|
|
6406
6453
|
readonly reference?: string | undefined;
|
|
6407
6454
|
readonly label?: string | undefined;
|
|
6408
|
-
readonly precision?: number | undefined;
|
|
6409
6455
|
readonly scale?: number | undefined;
|
|
6410
6456
|
readonly step?: number | undefined;
|
|
6411
6457
|
readonly displayField?: string | undefined;
|
|
@@ -6508,7 +6554,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6508
6554
|
readonly widget?: string | undefined;
|
|
6509
6555
|
readonly internal?: boolean | undefined;
|
|
6510
6556
|
readonly requiredPermissions?: string[] | undefined;
|
|
6511
|
-
readonly maskingRule?: "
|
|
6557
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
6512
6558
|
keepHead: number;
|
|
6513
6559
|
keepTail: number;
|
|
6514
6560
|
} | undefined;
|
|
@@ -6569,6 +6615,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6569
6615
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
6570
6616
|
readonly _packageId?: string | undefined;
|
|
6571
6617
|
readonly _packageVersion?: string | undefined;
|
|
6618
|
+
readonly precision?: number | undefined;
|
|
6572
6619
|
readonly name?: string | undefined;
|
|
6573
6620
|
readonly lookupFilters?: {
|
|
6574
6621
|
field: string;
|
|
@@ -6595,7 +6642,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
6595
6642
|
} | undefined;
|
|
6596
6643
|
readonly reference?: string | undefined;
|
|
6597
6644
|
readonly label?: string | undefined;
|
|
6598
|
-
readonly precision?: number | undefined;
|
|
6599
6645
|
readonly scale?: number | undefined;
|
|
6600
6646
|
readonly step?: number | undefined;
|
|
6601
6647
|
readonly displayField?: string | undefined;
|
|
@@ -6698,7 +6744,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6698
6744
|
readonly widget?: string | undefined;
|
|
6699
6745
|
readonly internal?: boolean | undefined;
|
|
6700
6746
|
readonly requiredPermissions?: string[] | undefined;
|
|
6701
|
-
readonly maskingRule?: "
|
|
6747
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
6702
6748
|
keepHead: number;
|
|
6703
6749
|
keepTail: number;
|
|
6704
6750
|
} | undefined;
|
|
@@ -6777,6 +6823,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6777
6823
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
6778
6824
|
readonly _packageId?: string | undefined;
|
|
6779
6825
|
readonly _packageVersion?: string | undefined;
|
|
6826
|
+
readonly precision?: number | undefined;
|
|
6780
6827
|
readonly name?: string | undefined;
|
|
6781
6828
|
readonly lookupFilters?: {
|
|
6782
6829
|
field: string;
|
|
@@ -6803,7 +6850,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
6803
6850
|
} | undefined;
|
|
6804
6851
|
readonly reference?: string | undefined;
|
|
6805
6852
|
readonly label?: string | undefined;
|
|
6806
|
-
readonly precision?: number | undefined;
|
|
6807
6853
|
readonly scale?: number | undefined;
|
|
6808
6854
|
readonly step?: number | undefined;
|
|
6809
6855
|
readonly displayField?: string | undefined;
|
|
@@ -6906,7 +6952,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6906
6952
|
readonly widget?: string | undefined;
|
|
6907
6953
|
readonly internal?: boolean | undefined;
|
|
6908
6954
|
readonly requiredPermissions?: string[] | undefined;
|
|
6909
|
-
readonly maskingRule?: "
|
|
6955
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
6910
6956
|
keepHead: number;
|
|
6911
6957
|
keepTail: number;
|
|
6912
6958
|
} | undefined;
|
|
@@ -6967,6 +7013,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
6967
7013
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
6968
7014
|
readonly _packageId?: string | undefined;
|
|
6969
7015
|
readonly _packageVersion?: string | undefined;
|
|
7016
|
+
readonly precision?: number | undefined;
|
|
6970
7017
|
readonly name?: string | undefined;
|
|
6971
7018
|
readonly lookupFilters?: {
|
|
6972
7019
|
field: string;
|
|
@@ -6993,7 +7040,6 @@ declare const SysApprovalAction: Omit<{
|
|
|
6993
7040
|
} | undefined;
|
|
6994
7041
|
readonly reference?: string | undefined;
|
|
6995
7042
|
readonly label?: string | undefined;
|
|
6996
|
-
readonly precision?: number | undefined;
|
|
6997
7043
|
readonly scale?: number | undefined;
|
|
6998
7044
|
readonly step?: number | undefined;
|
|
6999
7045
|
readonly displayField?: string | undefined;
|
|
@@ -7096,7 +7142,7 @@ declare const SysApprovalAction: Omit<{
|
|
|
7096
7142
|
readonly widget?: string | undefined;
|
|
7097
7143
|
readonly internal?: boolean | undefined;
|
|
7098
7144
|
readonly requiredPermissions?: string[] | undefined;
|
|
7099
|
-
readonly maskingRule?: "
|
|
7145
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
7100
7146
|
keepHead: number;
|
|
7101
7147
|
keepTail: number;
|
|
7102
7148
|
} | undefined;
|
|
@@ -7529,7 +7575,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7529
7575
|
nameField?: string | undefined;
|
|
7530
7576
|
displayNameField?: string | undefined;
|
|
7531
7577
|
titleFormat?: string | {
|
|
7532
|
-
dialect: "
|
|
7578
|
+
dialect: "template";
|
|
7533
7579
|
source?: string | undefined;
|
|
7534
7580
|
ast?: unknown;
|
|
7535
7581
|
meta?: {
|
|
@@ -7591,7 +7637,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7591
7637
|
}) | undefined;
|
|
7592
7638
|
name?: string | undefined;
|
|
7593
7639
|
tree?: {
|
|
7594
|
-
[x: string]: unknown;
|
|
7595
7640
|
parentField?: string | undefined;
|
|
7596
7641
|
labelField?: string | undefined;
|
|
7597
7642
|
fields?: string[] | undefined;
|
|
@@ -7602,6 +7647,68 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7602
7647
|
defaultValue?: never;
|
|
7603
7648
|
}) | undefined;
|
|
7604
7649
|
inlineEdit?: boolean | undefined;
|
|
7650
|
+
emptyState?: {
|
|
7651
|
+
title?: string | (Record<string, string> & {
|
|
7652
|
+
key?: never;
|
|
7653
|
+
defaultValue?: never;
|
|
7654
|
+
}) | undefined;
|
|
7655
|
+
message?: string | (Record<string, string> & {
|
|
7656
|
+
key?: never;
|
|
7657
|
+
defaultValue?: never;
|
|
7658
|
+
}) | undefined;
|
|
7659
|
+
icon?: string | undefined;
|
|
7660
|
+
} | undefined;
|
|
7661
|
+
bulkActions?: string[] | undefined;
|
|
7662
|
+
bulkActionDefs?: {
|
|
7663
|
+
name: string;
|
|
7664
|
+
operation: "delete" | "update" | "custom";
|
|
7665
|
+
label?: string | undefined;
|
|
7666
|
+
icon?: string | undefined;
|
|
7667
|
+
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
7668
|
+
execution?: "aggregate" | "perRecord" | undefined;
|
|
7669
|
+
patch?: Record<string, unknown> | undefined;
|
|
7670
|
+
params?: {
|
|
7671
|
+
[x: string]: unknown;
|
|
7672
|
+
name: string;
|
|
7673
|
+
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
7674
|
+
label?: string | undefined;
|
|
7675
|
+
help?: string | undefined;
|
|
7676
|
+
required?: boolean | undefined;
|
|
7677
|
+
default?: unknown;
|
|
7678
|
+
options?: {
|
|
7679
|
+
[x: string]: unknown;
|
|
7680
|
+
label: string;
|
|
7681
|
+
value: string | number | boolean;
|
|
7682
|
+
}[] | undefined;
|
|
7683
|
+
object?: string | undefined;
|
|
7684
|
+
labelField?: string | undefined;
|
|
7685
|
+
multiple?: boolean | undefined;
|
|
7686
|
+
placeholder?: string | undefined;
|
|
7687
|
+
}[] | undefined;
|
|
7688
|
+
confirmText?: string | undefined;
|
|
7689
|
+
confirmLabel?: string | undefined;
|
|
7690
|
+
visible?: string | {
|
|
7691
|
+
dialect: "cel" | "cron" | "template";
|
|
7692
|
+
source?: string | undefined;
|
|
7693
|
+
ast?: unknown;
|
|
7694
|
+
meta?: {
|
|
7695
|
+
rationale?: string | undefined;
|
|
7696
|
+
generatedBy?: string | undefined;
|
|
7697
|
+
} | undefined;
|
|
7698
|
+
} | undefined;
|
|
7699
|
+
requiredPermissions?: string[] | undefined;
|
|
7700
|
+
maxRecords?: number | undefined;
|
|
7701
|
+
batchSize?: number | undefined;
|
|
7702
|
+
}[] | undefined;
|
|
7703
|
+
rowActions?: string[] | undefined;
|
|
7704
|
+
navigation?: {
|
|
7705
|
+
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
7706
|
+
view?: string | undefined;
|
|
7707
|
+
preventNavigation?: boolean | undefined;
|
|
7708
|
+
openNewTab?: boolean | undefined;
|
|
7709
|
+
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
7710
|
+
width?: string | number | undefined;
|
|
7711
|
+
} | undefined;
|
|
7605
7712
|
data?: {
|
|
7606
7713
|
provider: "object";
|
|
7607
7714
|
object: string;
|
|
@@ -7630,14 +7737,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7630
7737
|
schema?: Record<string, unknown> | undefined;
|
|
7631
7738
|
} | undefined;
|
|
7632
7739
|
pageName?: string | undefined;
|
|
7633
|
-
navigation?: {
|
|
7634
|
-
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
7635
|
-
view?: string | undefined;
|
|
7636
|
-
preventNavigation?: boolean | undefined;
|
|
7637
|
-
openNewTab?: boolean | undefined;
|
|
7638
|
-
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
7639
|
-
width?: string | number | undefined;
|
|
7640
|
-
} | undefined;
|
|
7641
7740
|
sharing?: {
|
|
7642
7741
|
type?: "personal" | "collaborative" | undefined;
|
|
7643
7742
|
lockedBy?: string | undefined;
|
|
@@ -7668,60 +7767,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7668
7767
|
isDefault?: boolean | undefined;
|
|
7669
7768
|
visible?: boolean | undefined;
|
|
7670
7769
|
}[] | undefined;
|
|
7671
|
-
emptyState?: {
|
|
7672
|
-
title?: string | (Record<string, string> & {
|
|
7673
|
-
key?: never;
|
|
7674
|
-
defaultValue?: never;
|
|
7675
|
-
}) | undefined;
|
|
7676
|
-
message?: string | (Record<string, string> & {
|
|
7677
|
-
key?: never;
|
|
7678
|
-
defaultValue?: never;
|
|
7679
|
-
}) | undefined;
|
|
7680
|
-
icon?: string | undefined;
|
|
7681
|
-
} | undefined;
|
|
7682
|
-
bulkActions?: string[] | undefined;
|
|
7683
|
-
bulkActionDefs?: {
|
|
7684
|
-
name: string;
|
|
7685
|
-
operation: "delete" | "update" | "custom";
|
|
7686
|
-
label?: string | undefined;
|
|
7687
|
-
icon?: string | undefined;
|
|
7688
|
-
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
7689
|
-
execution?: "aggregate" | "perRecord" | undefined;
|
|
7690
|
-
patch?: Record<string, unknown> | undefined;
|
|
7691
|
-
params?: {
|
|
7692
|
-
[x: string]: unknown;
|
|
7693
|
-
name: string;
|
|
7694
|
-
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
7695
|
-
label?: string | undefined;
|
|
7696
|
-
help?: string | undefined;
|
|
7697
|
-
required?: boolean | undefined;
|
|
7698
|
-
default?: unknown;
|
|
7699
|
-
options?: {
|
|
7700
|
-
[x: string]: unknown;
|
|
7701
|
-
label: string;
|
|
7702
|
-
value: string | number | boolean;
|
|
7703
|
-
}[] | undefined;
|
|
7704
|
-
object?: string | undefined;
|
|
7705
|
-
labelField?: string | undefined;
|
|
7706
|
-
multiple?: boolean | undefined;
|
|
7707
|
-
placeholder?: string | undefined;
|
|
7708
|
-
}[] | undefined;
|
|
7709
|
-
confirmText?: string | undefined;
|
|
7710
|
-
confirmLabel?: string | undefined;
|
|
7711
|
-
visible?: string | {
|
|
7712
|
-
dialect: "cel" | "cron" | "template";
|
|
7713
|
-
source?: string | undefined;
|
|
7714
|
-
ast?: unknown;
|
|
7715
|
-
meta?: {
|
|
7716
|
-
rationale?: string | undefined;
|
|
7717
|
-
generatedBy?: string | undefined;
|
|
7718
|
-
} | undefined;
|
|
7719
|
-
} | undefined;
|
|
7720
|
-
requiredPermissions?: string[] | undefined;
|
|
7721
|
-
maxRecords?: number | undefined;
|
|
7722
|
-
batchSize?: number | undefined;
|
|
7723
|
-
}[] | undefined;
|
|
7724
|
-
rowActions?: string[] | undefined;
|
|
7725
7770
|
responsive?: undefined;
|
|
7726
7771
|
performance?: undefined;
|
|
7727
7772
|
striped?: undefined;
|
|
@@ -7779,7 +7824,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7779
7824
|
scale?: "month" | "day" | "week" | "year" | "hour" | "quarter" | undefined;
|
|
7780
7825
|
} | undefined;
|
|
7781
7826
|
gantt?: {
|
|
7782
|
-
[x: string]: unknown;
|
|
7783
7827
|
startDateField: string;
|
|
7784
7828
|
endDateField: string;
|
|
7785
7829
|
titleField: string;
|
|
@@ -7809,6 +7853,31 @@ declare const SysApprovalApprover: Omit<{
|
|
|
7809
7853
|
}[] | undefined;
|
|
7810
7854
|
autoZoomToFilter?: boolean | undefined;
|
|
7811
7855
|
viewMode?: "month" | "day" | "week" | "year" | "quarter" | undefined;
|
|
7856
|
+
borderColorField?: string | undefined;
|
|
7857
|
+
lockField?: string | undefined;
|
|
7858
|
+
objectField?: string | undefined;
|
|
7859
|
+
summaryExtent?: "children" | "self" | undefined;
|
|
7860
|
+
defaultCollapsedDepth?: number | undefined;
|
|
7861
|
+
dependencyTypes?: boolean | undefined;
|
|
7862
|
+
timeZone?: string | undefined;
|
|
7863
|
+
exportFileName?: string | undefined;
|
|
7864
|
+
interactions?: {
|
|
7865
|
+
move?: boolean | undefined;
|
|
7866
|
+
resize?: boolean | undefined;
|
|
7867
|
+
progress?: boolean | undefined;
|
|
7868
|
+
link?: boolean | undefined;
|
|
7869
|
+
} | undefined;
|
|
7870
|
+
timeSegments?: {
|
|
7871
|
+
bands: {
|
|
7872
|
+
label: string;
|
|
7873
|
+
start: string;
|
|
7874
|
+
end: string;
|
|
7875
|
+
key?: string | undefined;
|
|
7876
|
+
color?: string | undefined;
|
|
7877
|
+
}[];
|
|
7878
|
+
dayStart?: string | undefined;
|
|
7879
|
+
showMidnight?: boolean | undefined;
|
|
7880
|
+
} | undefined;
|
|
7812
7881
|
} | undefined;
|
|
7813
7882
|
chart?: {
|
|
7814
7883
|
dataset: string;
|
|
@@ -8149,6 +8218,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8149
8218
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
8150
8219
|
readonly _packageId?: string | undefined;
|
|
8151
8220
|
readonly _packageVersion?: string | undefined;
|
|
8221
|
+
readonly precision?: number | undefined;
|
|
8152
8222
|
readonly name?: string | undefined;
|
|
8153
8223
|
readonly lookupFilters?: {
|
|
8154
8224
|
field: string;
|
|
@@ -8175,7 +8245,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8175
8245
|
} | undefined;
|
|
8176
8246
|
readonly reference?: string | undefined;
|
|
8177
8247
|
readonly label?: string | undefined;
|
|
8178
|
-
readonly precision?: number | undefined;
|
|
8179
8248
|
readonly scale?: number | undefined;
|
|
8180
8249
|
readonly step?: number | undefined;
|
|
8181
8250
|
readonly displayField?: string | undefined;
|
|
@@ -8278,7 +8347,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8278
8347
|
readonly widget?: string | undefined;
|
|
8279
8348
|
readonly internal?: boolean | undefined;
|
|
8280
8349
|
readonly requiredPermissions?: string[] | undefined;
|
|
8281
|
-
readonly maskingRule?: "
|
|
8350
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
8282
8351
|
keepHead: number;
|
|
8283
8352
|
keepTail: number;
|
|
8284
8353
|
} | undefined;
|
|
@@ -8356,6 +8425,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8356
8425
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
8357
8426
|
readonly _packageId?: string | undefined;
|
|
8358
8427
|
readonly _packageVersion?: string | undefined;
|
|
8428
|
+
readonly precision?: number | undefined;
|
|
8359
8429
|
readonly name?: string | undefined;
|
|
8360
8430
|
readonly lookupFilters?: {
|
|
8361
8431
|
field: string;
|
|
@@ -8382,7 +8452,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8382
8452
|
} | undefined;
|
|
8383
8453
|
readonly reference?: string | undefined;
|
|
8384
8454
|
readonly label?: string | undefined;
|
|
8385
|
-
readonly precision?: number | undefined;
|
|
8386
8455
|
readonly scale?: number | undefined;
|
|
8387
8456
|
readonly step?: number | undefined;
|
|
8388
8457
|
readonly displayField?: string | undefined;
|
|
@@ -8485,7 +8554,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8485
8554
|
readonly widget?: string | undefined;
|
|
8486
8555
|
readonly internal?: boolean | undefined;
|
|
8487
8556
|
readonly requiredPermissions?: string[] | undefined;
|
|
8488
|
-
readonly maskingRule?: "
|
|
8557
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
8489
8558
|
keepHead: number;
|
|
8490
8559
|
keepTail: number;
|
|
8491
8560
|
} | undefined;
|
|
@@ -8546,6 +8615,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8546
8615
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
8547
8616
|
readonly _packageId?: string | undefined;
|
|
8548
8617
|
readonly _packageVersion?: string | undefined;
|
|
8618
|
+
readonly precision?: number | undefined;
|
|
8549
8619
|
readonly name?: string | undefined;
|
|
8550
8620
|
readonly lookupFilters?: {
|
|
8551
8621
|
field: string;
|
|
@@ -8572,7 +8642,6 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8572
8642
|
} | undefined;
|
|
8573
8643
|
readonly reference?: string | undefined;
|
|
8574
8644
|
readonly label?: string | undefined;
|
|
8575
|
-
readonly precision?: number | undefined;
|
|
8576
8645
|
readonly scale?: number | undefined;
|
|
8577
8646
|
readonly step?: number | undefined;
|
|
8578
8647
|
readonly displayField?: string | undefined;
|
|
@@ -8675,7 +8744,7 @@ declare const SysApprovalApprover: Omit<{
|
|
|
8675
8744
|
readonly widget?: string | undefined;
|
|
8676
8745
|
readonly internal?: boolean | undefined;
|
|
8677
8746
|
readonly requiredPermissions?: string[] | undefined;
|
|
8678
|
-
readonly maskingRule?: "
|
|
8747
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
8679
8748
|
keepHead: number;
|
|
8680
8749
|
keepTail: number;
|
|
8681
8750
|
} | undefined;
|
|
@@ -9111,7 +9180,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9111
9180
|
nameField?: string | undefined;
|
|
9112
9181
|
displayNameField?: string | undefined;
|
|
9113
9182
|
titleFormat?: string | {
|
|
9114
|
-
dialect: "
|
|
9183
|
+
dialect: "template";
|
|
9115
9184
|
source?: string | undefined;
|
|
9116
9185
|
ast?: unknown;
|
|
9117
9186
|
meta?: {
|
|
@@ -9173,7 +9242,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9173
9242
|
}) | undefined;
|
|
9174
9243
|
name?: string | undefined;
|
|
9175
9244
|
tree?: {
|
|
9176
|
-
[x: string]: unknown;
|
|
9177
9245
|
parentField?: string | undefined;
|
|
9178
9246
|
labelField?: string | undefined;
|
|
9179
9247
|
fields?: string[] | undefined;
|
|
@@ -9184,6 +9252,68 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9184
9252
|
defaultValue?: never;
|
|
9185
9253
|
}) | undefined;
|
|
9186
9254
|
inlineEdit?: boolean | undefined;
|
|
9255
|
+
emptyState?: {
|
|
9256
|
+
title?: string | (Record<string, string> & {
|
|
9257
|
+
key?: never;
|
|
9258
|
+
defaultValue?: never;
|
|
9259
|
+
}) | undefined;
|
|
9260
|
+
message?: string | (Record<string, string> & {
|
|
9261
|
+
key?: never;
|
|
9262
|
+
defaultValue?: never;
|
|
9263
|
+
}) | undefined;
|
|
9264
|
+
icon?: string | undefined;
|
|
9265
|
+
} | undefined;
|
|
9266
|
+
bulkActions?: string[] | undefined;
|
|
9267
|
+
bulkActionDefs?: {
|
|
9268
|
+
name: string;
|
|
9269
|
+
operation: "delete" | "update" | "custom";
|
|
9270
|
+
label?: string | undefined;
|
|
9271
|
+
icon?: string | undefined;
|
|
9272
|
+
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
9273
|
+
execution?: "aggregate" | "perRecord" | undefined;
|
|
9274
|
+
patch?: Record<string, unknown> | undefined;
|
|
9275
|
+
params?: {
|
|
9276
|
+
[x: string]: unknown;
|
|
9277
|
+
name: string;
|
|
9278
|
+
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
9279
|
+
label?: string | undefined;
|
|
9280
|
+
help?: string | undefined;
|
|
9281
|
+
required?: boolean | undefined;
|
|
9282
|
+
default?: unknown;
|
|
9283
|
+
options?: {
|
|
9284
|
+
[x: string]: unknown;
|
|
9285
|
+
label: string;
|
|
9286
|
+
value: string | number | boolean;
|
|
9287
|
+
}[] | undefined;
|
|
9288
|
+
object?: string | undefined;
|
|
9289
|
+
labelField?: string | undefined;
|
|
9290
|
+
multiple?: boolean | undefined;
|
|
9291
|
+
placeholder?: string | undefined;
|
|
9292
|
+
}[] | undefined;
|
|
9293
|
+
confirmText?: string | undefined;
|
|
9294
|
+
confirmLabel?: string | undefined;
|
|
9295
|
+
visible?: string | {
|
|
9296
|
+
dialect: "cel" | "cron" | "template";
|
|
9297
|
+
source?: string | undefined;
|
|
9298
|
+
ast?: unknown;
|
|
9299
|
+
meta?: {
|
|
9300
|
+
rationale?: string | undefined;
|
|
9301
|
+
generatedBy?: string | undefined;
|
|
9302
|
+
} | undefined;
|
|
9303
|
+
} | undefined;
|
|
9304
|
+
requiredPermissions?: string[] | undefined;
|
|
9305
|
+
maxRecords?: number | undefined;
|
|
9306
|
+
batchSize?: number | undefined;
|
|
9307
|
+
}[] | undefined;
|
|
9308
|
+
rowActions?: string[] | undefined;
|
|
9309
|
+
navigation?: {
|
|
9310
|
+
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
9311
|
+
view?: string | undefined;
|
|
9312
|
+
preventNavigation?: boolean | undefined;
|
|
9313
|
+
openNewTab?: boolean | undefined;
|
|
9314
|
+
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
9315
|
+
width?: string | number | undefined;
|
|
9316
|
+
} | undefined;
|
|
9187
9317
|
data?: {
|
|
9188
9318
|
provider: "object";
|
|
9189
9319
|
object: string;
|
|
@@ -9212,14 +9342,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9212
9342
|
schema?: Record<string, unknown> | undefined;
|
|
9213
9343
|
} | undefined;
|
|
9214
9344
|
pageName?: string | undefined;
|
|
9215
|
-
navigation?: {
|
|
9216
|
-
mode?: "none" | "page" | "modal" | "split" | "drawer" | "popover" | "new_window" | undefined;
|
|
9217
|
-
view?: string | undefined;
|
|
9218
|
-
preventNavigation?: boolean | undefined;
|
|
9219
|
-
openNewTab?: boolean | undefined;
|
|
9220
|
-
size?: "full" | "md" | "auto" | "sm" | "lg" | "xl" | undefined;
|
|
9221
|
-
width?: string | number | undefined;
|
|
9222
|
-
} | undefined;
|
|
9223
9345
|
sharing?: {
|
|
9224
9346
|
type?: "personal" | "collaborative" | undefined;
|
|
9225
9347
|
lockedBy?: string | undefined;
|
|
@@ -9250,60 +9372,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9250
9372
|
isDefault?: boolean | undefined;
|
|
9251
9373
|
visible?: boolean | undefined;
|
|
9252
9374
|
}[] | undefined;
|
|
9253
|
-
emptyState?: {
|
|
9254
|
-
title?: string | (Record<string, string> & {
|
|
9255
|
-
key?: never;
|
|
9256
|
-
defaultValue?: never;
|
|
9257
|
-
}) | undefined;
|
|
9258
|
-
message?: string | (Record<string, string> & {
|
|
9259
|
-
key?: never;
|
|
9260
|
-
defaultValue?: never;
|
|
9261
|
-
}) | undefined;
|
|
9262
|
-
icon?: string | undefined;
|
|
9263
|
-
} | undefined;
|
|
9264
|
-
bulkActions?: string[] | undefined;
|
|
9265
|
-
bulkActionDefs?: {
|
|
9266
|
-
name: string;
|
|
9267
|
-
operation: "delete" | "update" | "custom";
|
|
9268
|
-
label?: string | undefined;
|
|
9269
|
-
icon?: string | undefined;
|
|
9270
|
-
variant?: "primary" | "secondary" | "outline" | "danger" | "ghost" | undefined;
|
|
9271
|
-
execution?: "aggregate" | "perRecord" | undefined;
|
|
9272
|
-
patch?: Record<string, unknown> | undefined;
|
|
9273
|
-
params?: {
|
|
9274
|
-
[x: string]: unknown;
|
|
9275
|
-
name: string;
|
|
9276
|
-
type: "number" | "boolean" | "user" | "date" | "record" | "file" | "code" | "url" | "email" | "datetime" | "time" | "formula" | "text" | "textarea" | "phone" | "password" | "secret" | "markdown" | "html" | "richtext" | "currency" | "percent" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "signature" | "qrcode" | "progress" | "tags" | "vector";
|
|
9277
|
-
label?: string | undefined;
|
|
9278
|
-
help?: string | undefined;
|
|
9279
|
-
required?: boolean | undefined;
|
|
9280
|
-
default?: unknown;
|
|
9281
|
-
options?: {
|
|
9282
|
-
[x: string]: unknown;
|
|
9283
|
-
label: string;
|
|
9284
|
-
value: string | number | boolean;
|
|
9285
|
-
}[] | undefined;
|
|
9286
|
-
object?: string | undefined;
|
|
9287
|
-
labelField?: string | undefined;
|
|
9288
|
-
multiple?: boolean | undefined;
|
|
9289
|
-
placeholder?: string | undefined;
|
|
9290
|
-
}[] | undefined;
|
|
9291
|
-
confirmText?: string | undefined;
|
|
9292
|
-
confirmLabel?: string | undefined;
|
|
9293
|
-
visible?: string | {
|
|
9294
|
-
dialect: "cel" | "cron" | "template";
|
|
9295
|
-
source?: string | undefined;
|
|
9296
|
-
ast?: unknown;
|
|
9297
|
-
meta?: {
|
|
9298
|
-
rationale?: string | undefined;
|
|
9299
|
-
generatedBy?: string | undefined;
|
|
9300
|
-
} | undefined;
|
|
9301
|
-
} | undefined;
|
|
9302
|
-
requiredPermissions?: string[] | undefined;
|
|
9303
|
-
maxRecords?: number | undefined;
|
|
9304
|
-
batchSize?: number | undefined;
|
|
9305
|
-
}[] | undefined;
|
|
9306
|
-
rowActions?: string[] | undefined;
|
|
9307
9375
|
responsive?: undefined;
|
|
9308
9376
|
performance?: undefined;
|
|
9309
9377
|
striped?: undefined;
|
|
@@ -9361,7 +9429,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9361
9429
|
scale?: "month" | "day" | "week" | "year" | "hour" | "quarter" | undefined;
|
|
9362
9430
|
} | undefined;
|
|
9363
9431
|
gantt?: {
|
|
9364
|
-
[x: string]: unknown;
|
|
9365
9432
|
startDateField: string;
|
|
9366
9433
|
endDateField: string;
|
|
9367
9434
|
titleField: string;
|
|
@@ -9391,6 +9458,31 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9391
9458
|
}[] | undefined;
|
|
9392
9459
|
autoZoomToFilter?: boolean | undefined;
|
|
9393
9460
|
viewMode?: "month" | "day" | "week" | "year" | "quarter" | undefined;
|
|
9461
|
+
borderColorField?: string | undefined;
|
|
9462
|
+
lockField?: string | undefined;
|
|
9463
|
+
objectField?: string | undefined;
|
|
9464
|
+
summaryExtent?: "children" | "self" | undefined;
|
|
9465
|
+
defaultCollapsedDepth?: number | undefined;
|
|
9466
|
+
dependencyTypes?: boolean | undefined;
|
|
9467
|
+
timeZone?: string | undefined;
|
|
9468
|
+
exportFileName?: string | undefined;
|
|
9469
|
+
interactions?: {
|
|
9470
|
+
move?: boolean | undefined;
|
|
9471
|
+
resize?: boolean | undefined;
|
|
9472
|
+
progress?: boolean | undefined;
|
|
9473
|
+
link?: boolean | undefined;
|
|
9474
|
+
} | undefined;
|
|
9475
|
+
timeSegments?: {
|
|
9476
|
+
bands: {
|
|
9477
|
+
label: string;
|
|
9478
|
+
start: string;
|
|
9479
|
+
end: string;
|
|
9480
|
+
key?: string | undefined;
|
|
9481
|
+
color?: string | undefined;
|
|
9482
|
+
}[];
|
|
9483
|
+
dayStart?: string | undefined;
|
|
9484
|
+
showMidnight?: boolean | undefined;
|
|
9485
|
+
} | undefined;
|
|
9394
9486
|
} | undefined;
|
|
9395
9487
|
chart?: {
|
|
9396
9488
|
dataset: string;
|
|
@@ -9752,6 +9844,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9752
9844
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
9753
9845
|
readonly _packageId?: string | undefined;
|
|
9754
9846
|
readonly _packageVersion?: string | undefined;
|
|
9847
|
+
readonly precision?: number | undefined;
|
|
9755
9848
|
readonly name?: string | undefined;
|
|
9756
9849
|
readonly lookupFilters?: {
|
|
9757
9850
|
field: string;
|
|
@@ -9778,7 +9871,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9778
9871
|
} | undefined;
|
|
9779
9872
|
readonly reference?: string | undefined;
|
|
9780
9873
|
readonly label?: string | undefined;
|
|
9781
|
-
readonly precision?: number | undefined;
|
|
9782
9874
|
readonly scale?: number | undefined;
|
|
9783
9875
|
readonly step?: number | undefined;
|
|
9784
9876
|
readonly displayField?: string | undefined;
|
|
@@ -9881,7 +9973,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9881
9973
|
readonly widget?: string | undefined;
|
|
9882
9974
|
readonly internal?: boolean | undefined;
|
|
9883
9975
|
readonly requiredPermissions?: string[] | undefined;
|
|
9884
|
-
readonly maskingRule?: "
|
|
9976
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
9885
9977
|
keepHead: number;
|
|
9886
9978
|
keepTail: number;
|
|
9887
9979
|
} | undefined;
|
|
@@ -9960,6 +10052,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9960
10052
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
9961
10053
|
readonly _packageId?: string | undefined;
|
|
9962
10054
|
readonly _packageVersion?: string | undefined;
|
|
10055
|
+
readonly precision?: number | undefined;
|
|
9963
10056
|
readonly name?: string | undefined;
|
|
9964
10057
|
readonly lookupFilters?: {
|
|
9965
10058
|
field: string;
|
|
@@ -9986,7 +10079,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
9986
10079
|
} | undefined;
|
|
9987
10080
|
readonly reference?: string | undefined;
|
|
9988
10081
|
readonly label?: string | undefined;
|
|
9989
|
-
readonly precision?: number | undefined;
|
|
9990
10082
|
readonly scale?: number | undefined;
|
|
9991
10083
|
readonly step?: number | undefined;
|
|
9992
10084
|
readonly displayField?: string | undefined;
|
|
@@ -10089,7 +10181,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10089
10181
|
readonly widget?: string | undefined;
|
|
10090
10182
|
readonly internal?: boolean | undefined;
|
|
10091
10183
|
readonly requiredPermissions?: string[] | undefined;
|
|
10092
|
-
readonly maskingRule?: "
|
|
10184
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
10093
10185
|
keepHead: number;
|
|
10094
10186
|
keepTail: number;
|
|
10095
10187
|
} | undefined;
|
|
@@ -10150,6 +10242,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10150
10242
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
10151
10243
|
readonly _packageId?: string | undefined;
|
|
10152
10244
|
readonly _packageVersion?: string | undefined;
|
|
10245
|
+
readonly precision?: number | undefined;
|
|
10153
10246
|
readonly name?: string | undefined;
|
|
10154
10247
|
readonly lookupFilters?: {
|
|
10155
10248
|
field: string;
|
|
@@ -10176,7 +10269,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10176
10269
|
} | undefined;
|
|
10177
10270
|
readonly reference?: string | undefined;
|
|
10178
10271
|
readonly label?: string | undefined;
|
|
10179
|
-
readonly precision?: number | undefined;
|
|
10180
10272
|
readonly scale?: number | undefined;
|
|
10181
10273
|
readonly step?: number | undefined;
|
|
10182
10274
|
readonly displayField?: string | undefined;
|
|
@@ -10279,7 +10371,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10279
10371
|
readonly widget?: string | undefined;
|
|
10280
10372
|
readonly internal?: boolean | undefined;
|
|
10281
10373
|
readonly requiredPermissions?: string[] | undefined;
|
|
10282
|
-
readonly maskingRule?: "
|
|
10374
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
10283
10375
|
keepHead: number;
|
|
10284
10376
|
keepTail: number;
|
|
10285
10377
|
} | undefined;
|
|
@@ -10340,6 +10432,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10340
10432
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
10341
10433
|
readonly _packageId?: string | undefined;
|
|
10342
10434
|
readonly _packageVersion?: string | undefined;
|
|
10435
|
+
readonly precision?: number | undefined;
|
|
10343
10436
|
readonly name?: string | undefined;
|
|
10344
10437
|
readonly lookupFilters?: {
|
|
10345
10438
|
field: string;
|
|
@@ -10366,7 +10459,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10366
10459
|
} | undefined;
|
|
10367
10460
|
readonly reference?: string | undefined;
|
|
10368
10461
|
readonly label?: string | undefined;
|
|
10369
|
-
readonly precision?: number | undefined;
|
|
10370
10462
|
readonly scale?: number | undefined;
|
|
10371
10463
|
readonly step?: number | undefined;
|
|
10372
10464
|
readonly displayField?: string | undefined;
|
|
@@ -10469,7 +10561,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10469
10561
|
readonly widget?: string | undefined;
|
|
10470
10562
|
readonly internal?: boolean | undefined;
|
|
10471
10563
|
readonly requiredPermissions?: string[] | undefined;
|
|
10472
|
-
readonly maskingRule?: "
|
|
10564
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
10473
10565
|
keepHead: number;
|
|
10474
10566
|
keepTail: number;
|
|
10475
10567
|
} | undefined;
|
|
@@ -10539,6 +10631,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10539
10631
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
10540
10632
|
readonly _packageId?: string | undefined;
|
|
10541
10633
|
readonly _packageVersion?: string | undefined;
|
|
10634
|
+
readonly precision?: number | undefined;
|
|
10542
10635
|
readonly name?: string | undefined;
|
|
10543
10636
|
readonly lookupFilters?: {
|
|
10544
10637
|
field: string;
|
|
@@ -10565,7 +10658,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10565
10658
|
} | undefined;
|
|
10566
10659
|
readonly reference?: string | undefined;
|
|
10567
10660
|
readonly label?: string | undefined;
|
|
10568
|
-
readonly precision?: number | undefined;
|
|
10569
10661
|
readonly scale?: number | undefined;
|
|
10570
10662
|
readonly step?: number | undefined;
|
|
10571
10663
|
readonly displayField?: string | undefined;
|
|
@@ -10668,7 +10760,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10668
10760
|
readonly widget?: string | undefined;
|
|
10669
10761
|
readonly internal?: boolean | undefined;
|
|
10670
10762
|
readonly requiredPermissions?: string[] | undefined;
|
|
10671
|
-
readonly maskingRule?: "
|
|
10763
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
10672
10764
|
keepHead: number;
|
|
10673
10765
|
keepTail: number;
|
|
10674
10766
|
} | undefined;
|
|
@@ -10729,6 +10821,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10729
10821
|
readonly _provenance?: "package" | "env-forced" | "org" | undefined;
|
|
10730
10822
|
readonly _packageId?: string | undefined;
|
|
10731
10823
|
readonly _packageVersion?: string | undefined;
|
|
10824
|
+
readonly precision?: number | undefined;
|
|
10732
10825
|
readonly name?: string | undefined;
|
|
10733
10826
|
readonly lookupFilters?: {
|
|
10734
10827
|
field: string;
|
|
@@ -10755,7 +10848,6 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10755
10848
|
} | undefined;
|
|
10756
10849
|
readonly reference?: string | undefined;
|
|
10757
10850
|
readonly label?: string | undefined;
|
|
10758
|
-
readonly precision?: number | undefined;
|
|
10759
10851
|
readonly scale?: number | undefined;
|
|
10760
10852
|
readonly step?: number | undefined;
|
|
10761
10853
|
readonly displayField?: string | undefined;
|
|
@@ -10858,7 +10950,7 @@ declare const SysApprovalDelegation: Omit<{
|
|
|
10858
10950
|
readonly widget?: string | undefined;
|
|
10859
10951
|
readonly internal?: boolean | undefined;
|
|
10860
10952
|
readonly requiredPermissions?: string[] | undefined;
|
|
10861
|
-
readonly maskingRule?: "
|
|
10953
|
+
readonly maskingRule?: "email" | "name" | "phone" | "id_card" | "bank_account" | {
|
|
10862
10954
|
keepHead: number;
|
|
10863
10955
|
keepTail: number;
|
|
10864
10956
|
} | undefined;
|
|
@@ -11050,6 +11142,70 @@ interface ApprovalResumeSurface {
|
|
|
11050
11142
|
* engine that does not implement it simply gets no pre-flight.
|
|
11051
11143
|
*/
|
|
11052
11144
|
hasSuspendedRun?(runId: string): Promise<boolean>;
|
|
11145
|
+
/**
|
|
11146
|
+
* [#15389] Where each suspended run is currently parked. Read by
|
|
11147
|
+
* {@link ApprovalService.continueRestoredRun} to prove the pause it was asked
|
|
11148
|
+
* to continue is the one THIS request's recorded outcome was issued at, and
|
|
11149
|
+
* not merely some live pause on the same run — `hasSuspendedRun` answers a
|
|
11150
|
+
* boolean and cannot tell the two apart. Which node that is depends on the signal, not
|
|
11151
|
+
* only on the row: see {@link ApprovalService.expectedPauseNode}.
|
|
11152
|
+
*
|
|
11153
|
+
* ⚠️ Declares a method `AutomationEngine` ALREADY implements publicly
|
|
11154
|
+
* (`listSuspendedRunsDurable`); it widens no engine surface. Durable-first,
|
|
11155
|
+
* so it sees a pause parked by another replica or before a restart.
|
|
11156
|
+
*
|
|
11157
|
+
* Optional, and its absence is FAIL-CLOSED: a caller that cannot prove node
|
|
11158
|
+
* identity refuses the continuation rather than proceeding on the weaker
|
|
11159
|
+
* check. The engine degrades a store outage to its in-memory list rather
|
|
11160
|
+
* than throwing, and that degradation is safe HERE for the same reason — a
|
|
11161
|
+
* pause it cannot see is a pause this verb will not act on.
|
|
11162
|
+
*/
|
|
11163
|
+
listSuspendedRunsDurable?(): Promise<Array<{
|
|
11164
|
+
runId: string;
|
|
11165
|
+
flowName: string;
|
|
11166
|
+
nodeId: string;
|
|
11167
|
+
correlation?: string;
|
|
11168
|
+
}>>;
|
|
11169
|
+
/**
|
|
11170
|
+
* [#15358] Whether the consumed suspension behind a `failed` run SURVIVES —
|
|
11171
|
+
* i.e. whether the engine's `restoreConsumedSuspension` would re-arm it.
|
|
11172
|
+
* Read by {@link ApprovalService.inspectStrandedRequests}, for `failed` rows
|
|
11173
|
+
* only, to tell the #13909 strand (repairable) from a cascade-failed
|
|
11174
|
+
* ancestor — the `failAncestors` shape the engine itself calls NOT stranded,
|
|
11175
|
+
* because `failSuspendedRun` consumed the ancestor's pause and journalled
|
|
11176
|
+
* nothing, so no verb re-arms it (#15222's shape). {@link getRun} answers
|
|
11177
|
+
* `status: 'failed'` for both: the discriminator is deliberately NOT on
|
|
11178
|
+
* `ExecutionLogEntry`, which `GET /automation/:name/runs/:runId` serves
|
|
11179
|
+
* verbatim. Ruled B′ on #15358 (2026-09-07): it is published as a dedicated
|
|
11180
|
+
* read-only engine member, never on the wire.
|
|
11181
|
+
*
|
|
11182
|
+
* ⚠️ Declares a method `AutomationEngine` ALREADY implements publicly
|
|
11183
|
+
* (`inspectConsumedSuspension`); it widens no engine surface. It answers
|
|
11184
|
+
* from the same two witnesses the restore verb reads — this process's hot
|
|
11185
|
+
* journal and the durable row — so what it calls repairable IS what that
|
|
11186
|
+
* verb restores. The three negatives are distinct on purpose (see
|
|
11187
|
+
* {@link StrandedRunState}); the middle one, `'SNAPSHOT_DROPPED'`, is a
|
|
11188
|
+
* strand the store could not persist, repairable only by the process that
|
|
11189
|
+
* stranded it while that process lives.
|
|
11190
|
+
*
|
|
11191
|
+
* Optional, and its absence is FAIL-CLOSED for a report: a `failed` row the
|
|
11192
|
+
* engine cannot be asked about is reported as today's undifferentiated
|
|
11193
|
+
* `'failed'` — ⛔ never as `'unrepairable'` (that calls the repairable row
|
|
11194
|
+
* dead: the #15555 false-negative harm, one surface over) and ⛔ never
|
|
11195
|
+
* skipped (that hides the row). Absence of the discriminator is not
|
|
11196
|
+
* evidence of anything. Rejects when a store cannot be read; the inspection
|
|
11197
|
+
* counts such a row `undetermined` — but ⛔ unlike a thrown
|
|
11198
|
+
* {@link hasSuspendedRun} it does NOT drop the row, because this oracle is
|
|
11199
|
+
* asked only WHICH shape a row already known to be stranded is (#16709).
|
|
11200
|
+
* A host that resolves a malformed verdict is treated the same way, and
|
|
11201
|
+
* costs no OTHER row its answer.
|
|
11202
|
+
*/
|
|
11203
|
+
inspectConsumedSuspension?(runId: string): Promise<{
|
|
11204
|
+
repairable: true;
|
|
11205
|
+
} | {
|
|
11206
|
+
repairable: false;
|
|
11207
|
+
reason: 'RUN_SUSPENDED' | 'SNAPSHOT_DROPPED' | 'NO_CONSUMED_SUSPENSION';
|
|
11208
|
+
}>;
|
|
11053
11209
|
}
|
|
11054
11210
|
/**
|
|
11055
11211
|
* Optional messaging surface (ADR-0012 `messaging` service). When attached,
|
|
@@ -11071,26 +11227,112 @@ interface ApprovalMessagingSurface {
|
|
|
11071
11227
|
}): Promise<unknown>;
|
|
11072
11228
|
}
|
|
11073
11229
|
/**
|
|
11074
|
-
* WHY a terminal request's run is unrecoverable — the
|
|
11075
|
-
* reports, which have different causes and different remedies (#13909
|
|
11230
|
+
* WHY a terminal request's run is unrecoverable — the shapes the inspection
|
|
11231
|
+
* reports, which have different causes and different remedies (#13909;
|
|
11232
|
+
* split three ways by the #15358 B′ ruling, 2026-09-07).
|
|
11076
11233
|
*
|
|
11077
11234
|
* - `missing` — `getRun` finds no history row at all (#4469's original shape):
|
|
11078
11235
|
* the run was lost before it could record anything, typically a pause that
|
|
11079
11236
|
* never reached a durable store and did not survive a restart.
|
|
11080
|
-
*
|
|
11081
|
-
*
|
|
11082
|
-
*
|
|
11083
|
-
*
|
|
11084
|
-
*
|
|
11085
|
-
*
|
|
11086
|
-
*
|
|
11237
|
+
*
|
|
11238
|
+
* The other four all describe a run that DID record a terminal `failed` row.
|
|
11239
|
+
* The engine consumes a suspension *before* running the downstream nodes
|
|
11240
|
+
* (`AutomationEngine.resumeInternal`: `forgetSuspendedRun(run, 'resumed')`
|
|
11241
|
+
* precedes `traverseNext`), so a downstream node that merely THREW threw with
|
|
11242
|
+
* the pause already gone — the catch arm recorded `failed` and there is no
|
|
11243
|
+
* suspension left to resume. The decision is durable and the flow stopped
|
|
11244
|
+
* mid-continuation. What differs is whether anything can put the pause back,
|
|
11245
|
+
* and `status` alone cannot say — the three differentiated members come from
|
|
11246
|
+
* the engine's own consumed-suspension witnesses
|
|
11247
|
+
* ({@link ApprovalResumeSurface.inspectConsumedSuspension}):
|
|
11248
|
+
*
|
|
11249
|
+
* - `repairable` — the engine holds the consumed suspension (in its journal
|
|
11250
|
+
* or on the durable row): the #13909 strand. `restoreConsumedSuspension`
|
|
11251
|
+
* re-arms it and {@link ApprovalService.continueRestoredRun} re-issues the
|
|
11252
|
+
* decision. The remedy is a repair.
|
|
11253
|
+
* - `snapshot_dropped` — the run DID strand, but the store could not persist
|
|
11254
|
+
* the snapshot (over its row budget) and the engine asked holds no hot
|
|
11255
|
+
* copy. Repairable only by the process that stranded it, while that process
|
|
11256
|
+
* lives; the restore verb refuses it elsewhere naming the budget. ⛔ Not
|
|
11257
|
+
* folded into either neighbour: as `repairable` it over-reports, as
|
|
11258
|
+
* `unrepairable` it is #15555's false negative. Reported as what it is.
|
|
11259
|
+
* - `unrepairable` — the engine holds NO consumed suspension: the run was
|
|
11260
|
+
* cascade-failed (`failAncestors` → `failSuspendedRun`, which consumes the
|
|
11261
|
+
* ancestor's pause and journals nothing — #15222's shape, the one the
|
|
11262
|
+
* engine's own words call not a strand), never paused at all, or did
|
|
11263
|
+
* strand and its snapshot is no longer held (the journal evicted a copy
|
|
11264
|
+
* whose write never landed; the run was restored and then finished; a
|
|
11265
|
+
* store class without `loadTerminal`, after a restart) — the engine's
|
|
11266
|
+
* `NO_CONSUMED_SUSPENSION` covers all three and does not say which. The
|
|
11267
|
+
* label is faithful to the verb: nothing re-arms it; the remedy is a new
|
|
11268
|
+
* run, not a restore.
|
|
11269
|
+
* - `failed` — the engine COULD NOT BE ASKED which of the three it is, or
|
|
11270
|
+
* was asked and could not answer. Three ways in: the attached surface has
|
|
11271
|
+
* no `inspectConsumedSuspension` (an engine build older than this plugin,
|
|
11272
|
+
* or a test double); the read THREW (a store outage); or the host resolved
|
|
11273
|
+
* a malformed verdict, violating its own declared surface (#16709). Today's
|
|
11274
|
+
* undifferentiated label, kept on purpose as the fail-closed fallback
|
|
11275
|
+
* (#15358 ruling, item 1): a failure to differentiate is not evidence, so
|
|
11276
|
+
* the row is reported and its repairability left unstated — ⛔ never
|
|
11277
|
+
* `unrepairable`, ⛔ never dropped from the report.
|
|
11087
11278
|
*
|
|
11088
11279
|
* ⚠️ This names the shapes for the REPORT only. It is not a run state: the
|
|
11089
11280
|
* engine's own vocabulary is still `'completed' | 'paused' | 'failed'`
|
|
11090
11281
|
* (`AutomationResult.status`) and nothing persists or queries "stranded".
|
|
11091
11282
|
* Giving the condition a platform-level name is #13909's own deliverable.
|
|
11092
11283
|
*/
|
|
11093
|
-
type StrandedRunState = 'missing' | 'failed';
|
|
11284
|
+
type StrandedRunState = 'missing' | 'failed' | 'repairable' | 'snapshot_dropped' | 'unrepairable';
|
|
11285
|
+
/**
|
|
11286
|
+
* The continuation an approvals door already issued once, kept so it can be
|
|
11287
|
+
* issued AGAIN after an operator re-arms the pause it was refused on (#15389).
|
|
11288
|
+
*
|
|
11289
|
+
* Stashed under `__strandedContinuation` in `sys_approval_request`
|
|
11290
|
+
* `node_config_json` — the same private side-channel `__decisionOutputs`
|
|
11291
|
+
* already uses, rather than a new column: this is recovery bookkeeping for a
|
|
11292
|
+
* rare failure path, not part of the authored node config, and every reader of
|
|
11293
|
+
* that JSON reads named fields.
|
|
11294
|
+
*/
|
|
11295
|
+
interface StrandedContinuationSignal {
|
|
11296
|
+
/** The `approve` / `reject` / `revise` / `resubmit` edge the outcome walks. */
|
|
11297
|
+
branchLabel?: string;
|
|
11298
|
+
/** The exact flow-variable payload the original resume carried. */
|
|
11299
|
+
output?: Record<string, unknown>;
|
|
11300
|
+
/** Outcome label for the {@link strandedDecisionFailure} envelope. */
|
|
11301
|
+
decision: string;
|
|
11302
|
+
/** How the original door described the outcome in prose, e.g. `the reject decision`. */
|
|
11303
|
+
what: string;
|
|
11304
|
+
}
|
|
11305
|
+
/**
|
|
11306
|
+
* Outcome of {@link ApprovalService.continueRestoredRun} (#15389).
|
|
11307
|
+
*
|
|
11308
|
+
* ⚠️ Deliberately its own shape rather than a reuse of `ApprovalDecisionResult`:
|
|
11309
|
+
* that contract is the subject of an OPEN maintainer ruling on #15556, and this
|
|
11310
|
+
* card must not pre-empt it. Nothing here changes what `decide` answers.
|
|
11311
|
+
*/
|
|
11312
|
+
interface ApprovalContinuationResult {
|
|
11313
|
+
/** True when the restored pause was consumed and the flow moved on. */
|
|
11314
|
+
resumed: boolean;
|
|
11315
|
+
/** The run this continued — the one the request has always named. */
|
|
11316
|
+
runId: string;
|
|
11317
|
+
/** The outcome that was replayed, exactly as it was first recorded. */
|
|
11318
|
+
decision: string;
|
|
11319
|
+
/** The edge it walked. */
|
|
11320
|
+
branchLabel?: string;
|
|
11321
|
+
/**
|
|
11322
|
+
* Where the replayed signal came from, so a caller can tell an EXACT replay
|
|
11323
|
+
* from an inferred one:
|
|
11324
|
+
*
|
|
11325
|
+
* - `journal` — the failing door stashed the literal signal it sent, so this
|
|
11326
|
+
* is a byte-for-byte re-issue.
|
|
11327
|
+
* - `reconstructed` — no stash (the strand predates that journalling, or its
|
|
11328
|
+
* write failed), so the signal was rebuilt from the row's recorded outcome.
|
|
11329
|
+
* Exact for every status this verb accepts; the one shape it CANNOT rebuild
|
|
11330
|
+
* is refused rather than guessed (see the method's `AMBIGUOUS_RECORDED_OUTCOME`).
|
|
11331
|
+
*/
|
|
11332
|
+
source: 'journal' | 'reconstructed';
|
|
11333
|
+
/** Set only on the tolerated non-failure: a concurrent resume already had it. */
|
|
11334
|
+
resumeError?: string;
|
|
11335
|
+
}
|
|
11094
11336
|
/**
|
|
11095
11337
|
* One terminal request whose owning flow run is unrecoverable (#4469) — the
|
|
11096
11338
|
* decision was recorded and the flow never moved. Reporting shape only: the
|
|
@@ -11104,14 +11346,18 @@ interface StrandedApprovalRequest {
|
|
|
11104
11346
|
/**
|
|
11105
11347
|
* The `flow_run_id` that resolves to no live suspension and no recoverable
|
|
11106
11348
|
* run — see `runState`: no history row at all (`missing`), or a terminal
|
|
11107
|
-
* `failed` row (`
|
|
11349
|
+
* `failed` row (`repairable` / `snapshot_dropped` / `unrepairable`, or
|
|
11350
|
+
* `failed` when the engine could not say which).
|
|
11108
11351
|
*/
|
|
11109
11352
|
runId: string;
|
|
11110
11353
|
/**
|
|
11111
11354
|
* Which unrecoverable shape this is — see {@link StrandedRunState}. Carried
|
|
11112
|
-
* because the
|
|
11113
|
-
* read
|
|
11114
|
-
*
|
|
11355
|
+
* because the shapes need different remedies: a `missing` run has no history
|
|
11356
|
+
* to read; a `repairable` one is put back by `restoreConsumedSuspension` and
|
|
11357
|
+
* continued by {@link ApprovalService.continueRestoredRun}; an
|
|
11358
|
+
* `unrepairable` one (#15222's cascade-failed ancestor) is refused by that
|
|
11359
|
+
* verb and needs a new run. An operator reading `'failed'` has to ask the
|
|
11360
|
+
* engine directly.
|
|
11115
11361
|
*/
|
|
11116
11362
|
runState: StrandedRunState;
|
|
11117
11363
|
flowName?: string;
|
|
@@ -11554,7 +11800,53 @@ declare class ApprovalService implements IApprovalService {
|
|
|
11554
11800
|
* unchanged — only rows belonging to no org at all become visible.
|
|
11555
11801
|
*/
|
|
11556
11802
|
private businessUnitOrgScope;
|
|
11557
|
-
/**
|
|
11803
|
+
/**
|
|
11804
|
+
* Tenant scope for the `sys_business_unit_member` read — a STRICT equality,
|
|
11805
|
+
* deliberately NOT {@link businessUnitOrgScope} (#14946).
|
|
11806
|
+
*
|
|
11807
|
+
* The two screens answer different questions. The UNIT is the anchor the
|
|
11808
|
+
* approver NAMES, and a seeded unit carries `organization_id = null` by
|
|
11809
|
+
* construction (a seed cannot know the id the runtime mints at boot), so
|
|
11810
|
+
* #3807 admits the null there on purpose. The MEMBER rows are the SET BEING
|
|
11811
|
+
* ROUTED TO — enumerated by the platform, never named by anyone — and a
|
|
11812
|
+
* seeded unit id exists identically in every tenant. Before this screen the
|
|
11813
|
+
* member read carried no organization predicate at all, under
|
|
11814
|
+
* {@link SYSTEM_CTX} which carries no tenant either, so tenant A's request
|
|
11815
|
+
* resolved the shared unit and then collected EVERY tenant's membership rows
|
|
11816
|
+
* hanging off it: approval authority over A's record, routed to B's users.
|
|
11817
|
+
*
|
|
11818
|
+
* Why the null arm is NOT copied here — measured on this tree:
|
|
11819
|
+
* - `sys_business_unit_member` declares no `organization_id`; the column
|
|
11820
|
+
* is injected (`applySystemFields`) and the tenancy census lists it in;
|
|
11821
|
+
* - REST / session writes fill it (`SqlDriver.injectTenantOnInsert`);
|
|
11822
|
+
* - seed replay does NOT (`seed-loader.ts` withholds its `fallbackOrgId`
|
|
11823
|
+
* from every `sys_` object), and elevated system-context writes do NOT
|
|
11824
|
+
* (`unclassified` in `PLATFORM_OBJECT_TENANCY`, tracked as #14570).
|
|
11825
|
+
* So a NULL on a member row means UNKNOWN tenancy, not "platform-global",
|
|
11826
|
+
* and unknown tenancy is not a member of this organization. This is the
|
|
11827
|
+
* ruling `plugin-sharing`'s `memberScope` already applies to the same rows
|
|
11828
|
+
* (#14547 / #14949), and the posture this file already takes for
|
|
11829
|
+
* `sys_team_member` and `sys_user_position`.
|
|
11830
|
+
*
|
|
11831
|
+
* The cost is declared, not hidden: an organization whose MEMBERSHIP rows
|
|
11832
|
+
* were seeded or system-written expands to nobody even on a unit it can
|
|
11833
|
+
* see. That is not silent — the graph-type fallback in `expandApprover`
|
|
11834
|
+
* warns `expanded to nobody` (#3807) and `onEmptyApprovers` governs the
|
|
11835
|
+
* request as for any unstaffed target — and the repair is to stamp the
|
|
11836
|
+
* membership rows, never to widen this screen. ⛔ Do not "unify" the two
|
|
11837
|
+
* screens: one method serving both re-opens whichever half it does not
|
|
11838
|
+
* implement.
|
|
11839
|
+
*/
|
|
11840
|
+
private businessUnitMemberScope;
|
|
11841
|
+
/**
|
|
11842
|
+
* Recursive department — walks `sys_business_unit.parent_business_unit_id`.
|
|
11843
|
+
*
|
|
11844
|
+
* Two tenant screens, and they are different on purpose: the UNIT rows
|
|
11845
|
+
* (seed check and descent) go through the null-inclusive
|
|
11846
|
+
* {@link businessUnitOrgScope}; the MEMBER read goes through the strict
|
|
11847
|
+
* {@link businessUnitMemberScope}. `organizationId` is the DIRECTORY
|
|
11848
|
+
* organization the approver resolves in (ADR-0105 D9), for both.
|
|
11849
|
+
*/
|
|
11558
11850
|
private expandBusinessUnitUsers;
|
|
11559
11851
|
/**
|
|
11560
11852
|
* Position holders (ADR-0090 D3): `sys_user_position` is the platform-owned
|
|
@@ -11837,6 +12129,20 @@ declare class ApprovalService implements IApprovalService {
|
|
|
11837
12129
|
private serviceResume;
|
|
11838
12130
|
/** The engine failure code behind a {@link serviceResume} rejection, if any. */
|
|
11839
12131
|
private static resumeCodeOf;
|
|
12132
|
+
/**
|
|
12133
|
+
* The engine's own run-state discriminator behind a {@link serviceResume}
|
|
12134
|
+
* rejection — `AutomationResult.status` — if the engine reported one
|
|
12135
|
+
* (#13807).
|
|
12136
|
+
*
|
|
12137
|
+
* Read as a SIBLING of {@link resumeCodeOf}, never as a substitute: the two
|
|
12138
|
+
* answer different questions and the stranded exit proves they are not
|
|
12139
|
+
* interchangeable. It reports `status: 'stranded'` and **no `code` at all**
|
|
12140
|
+
* (`service-automation` `engine.ts`, the resume catch arm), so a door that
|
|
12141
|
+
* reads only the code sees an unnamed failure and cannot tell a repairable
|
|
12142
|
+
* strand from a dead run — which is how the platform's own repairability
|
|
12143
|
+
* signal had a producer and zero consumers until this call site.
|
|
12144
|
+
*/
|
|
12145
|
+
private static resumeStatusOf;
|
|
11840
12146
|
/**
|
|
11841
12147
|
* Refuse an operation whose whole point is to advance a flow run when that
|
|
11842
12148
|
* run no longer exists — BEFORE anything is written down (#4420).
|
|
@@ -11902,8 +12208,31 @@ declare class ApprovalService implements IApprovalService {
|
|
|
11902
12208
|
* which cannot throw without breaking every standalone deployment — it
|
|
11903
12209
|
* reports through `resumeError` instead.
|
|
11904
12210
|
*
|
|
12211
|
+
* ## The throw is truthful, not merely loud (#13807)
|
|
12212
|
+
*
|
|
12213
|
+
* Maintainer ruling 2026-09-04 (decision batch #37, option B): this door
|
|
12214
|
+
* KEEPS its status code — the effect landing while the run strands is still
|
|
12215
|
+
* a failure and must still be reported as one — and stops discarding what
|
|
12216
|
+
* the engine said. ⛔ Not "return 200", which the card forbids; ⛔ not
|
|
12217
|
+
* atomic, because rolling a real human decision back is excluded by the
|
|
12218
|
+
* #13937 shape-4 ruling, which binds this door's own writes too (a machine
|
|
12219
|
+
* that re-armed strandings by itself would re-run the node that threw,
|
|
12220
|
+
* forever, with nobody deciding it should).
|
|
12221
|
+
*
|
|
12222
|
+
* So the error carries {@link StrandedDecisionDetails} beside its prose:
|
|
12223
|
+
* `finalized` (the decision stands), `decision`, `runId`, and `repairable`
|
|
12224
|
+
* derived from the engine's `'stranded'` discriminator. Before this a caller
|
|
12225
|
+
* had a 500 and a sentence — and 500 alone reads as "the rejection did not
|
|
12226
|
+
* happen", which is the misreading that makes a caller retry or escalate
|
|
12227
|
+
* against a decision that IS durable.
|
|
12228
|
+
*
|
|
11905
12229
|
* @param what - how the recorded outcome reads in the error, e.g.
|
|
11906
12230
|
* `"the approve decision"`.
|
|
12231
|
+
* @param decision - the outcome label for the machine-readable envelope
|
|
12232
|
+
* (`'approve'` / `'reject'` / `'revise'` / `'resubmit'`). Passed
|
|
12233
|
+
* explicitly rather than parsed back out of `what` or the signal: the
|
|
12234
|
+
* prose is for humans and `output` is the flow's, and neither is a place
|
|
12235
|
+
* to keep a wire value.
|
|
11907
12236
|
*/
|
|
11908
12237
|
private resumeRecordedOutcome;
|
|
11909
12238
|
/**
|
|
@@ -11922,7 +12251,7 @@ declare class ApprovalService implements IApprovalService {
|
|
|
11922
12251
|
*/
|
|
11923
12252
|
decide(requestId: string, input: ApprovalDecisionInput, context: ExecutionContext): Promise<ApprovalDecisionResult>;
|
|
11924
12253
|
/**
|
|
11925
|
-
* Withdraw
|
|
12254
|
+
* Withdraw an undecided request. Finalises the row as
|
|
11926
12255
|
* `recalled`, releases the record lock (keyed on pending status), mirrors
|
|
11927
12256
|
* the status field when configured, and resumes the owning flow run down
|
|
11928
12257
|
* the `reject` branch with `output.decision = 'recall'` — leaving the run
|
|
@@ -12208,8 +12537,25 @@ declare class ApprovalService implements IApprovalService {
|
|
|
12208
12537
|
* ⚠️ The widening does NOT reverse the conservatism: `completed`, `cancelled`
|
|
12209
12538
|
* and `paused` are each still skipped, for reasons named one at a time in
|
|
12210
12539
|
* `classifyStrandedRunState`, and an unrecognised status is skipped too.
|
|
12211
|
-
* What the widening buys is that a `failed` run is now reported
|
|
12212
|
-
*
|
|
12540
|
+
* What the widening buys is that a `failed` run is now reported instead of
|
|
12541
|
+
* counted as healthy.
|
|
12542
|
+
*
|
|
12543
|
+
* **A THIRD oracle tells the `failed` rows apart (#15358).** `status ===
|
|
12544
|
+
* 'failed'` over-reports in one specific direction: a cascade-failed run
|
|
12545
|
+
* — an ancestor `failAncestors` failed while it was parked at its `subflow`
|
|
12546
|
+
* node, whose pause `failSuspendedRun` consumed and journalled nothing — has
|
|
12547
|
+
* the same terminal row as the #13909 strand, and `restoreConsumedSuspension`
|
|
12548
|
+
* refuses it. The engine's discriminator (the consumed-suspension snapshot)
|
|
12549
|
+
* is deliberately NOT on the object `getRun` answers, so it is asked through
|
|
12550
|
+
* a dedicated read-only member, `inspectConsumedSuspension`, and only for
|
|
12551
|
+
* `failed` rows: the answer splits `'failed'` into `'repairable'`,
|
|
12552
|
+
* `'snapshot_dropped'` and `'unrepairable'` (see {@link StrandedRunState}).
|
|
12553
|
+
* A surface without that member leaves the row `'failed'` — reported,
|
|
12554
|
+
* undifferentiated — because absence of the discriminator is not evidence
|
|
12555
|
+
* of anything. So does a read that THREW or answered a malformed verdict
|
|
12556
|
+
* (#16709): by the time this oracle is asked the row is already known to be
|
|
12557
|
+
* stranded, so a failure to differentiate it is not a reason to drop it from
|
|
12558
|
+
* a report — it is counted `undetermined` as telemetry AND reported.
|
|
12213
12559
|
*
|
|
12214
12560
|
* ⚠️ **What this can and cannot size.** It makes the condition *visible* in a
|
|
12215
12561
|
* deployment; it is not itself a census, and it says nothing about this
|
|
@@ -12229,9 +12575,205 @@ declare class ApprovalService implements IApprovalService {
|
|
|
12229
12575
|
}): Promise<{
|
|
12230
12576
|
scanned: number;
|
|
12231
12577
|
stranded: StrandedApprovalRequest[];
|
|
12232
|
-
/**
|
|
12578
|
+
/**
|
|
12579
|
+
* Reads that could not be MADE — telemetry, ⛔ never a verdict and ⛔ never
|
|
12580
|
+
* a "healthy" number. A thrown first or second oracle SKIPS its row
|
|
12581
|
+
* (whether that row is stranded at all is then unknown, and a storage
|
|
12582
|
+
* outage must not be published as a lost run); a thrown or malformed THIRD
|
|
12583
|
+
* read leaves its row in `stranded` as the undifferentiated `'failed'` and
|
|
12584
|
+
* is counted here as well — the row is known to be stranded, only its
|
|
12585
|
+
* shape could not be told (#16709). So this counter and `stranded.length`
|
|
12586
|
+
* overlap on purpose, and neither one alone sizes the scan's blind spot.
|
|
12587
|
+
*/
|
|
12233
12588
|
undetermined: number;
|
|
12234
12589
|
}>;
|
|
12590
|
+
/**
|
|
12591
|
+
* Stash the continuation a door just failed to deliver, so it can be issued
|
|
12592
|
+
* again after the pause is re-armed (#15389).
|
|
12593
|
+
*
|
|
12594
|
+
* `AutomationEngine.restoreConsumedSuspension` puts a stranded approval run
|
|
12595
|
+
* back on its pause and tells the operator to *re-issue the continuation* —
|
|
12596
|
+
* but for an `approval` node the only issuers are this service's doors, and
|
|
12597
|
+
* every one of them guards on a `pending` request that the stranding call
|
|
12598
|
+
* itself just made terminal. Re-opening the row is excluded (it would let a
|
|
12599
|
+
* decided request be decided again), so what is kept instead is the SIGNAL:
|
|
12600
|
+
* the exact `branchLabel` + `output` the failed resume carried.
|
|
12601
|
+
*
|
|
12602
|
+
* ⚠️ Best-effort by construction, and it must stay that way: the decision is
|
|
12603
|
+
* already durable and its caller is already owed a `RESUME_FAILED` throw. A
|
|
12604
|
+
* failure to write recovery bookkeeping must not replace that throw with a
|
|
12605
|
+
* storage error — {@link ApprovalService.continueRestoredRun} rebuilds the
|
|
12606
|
+
* signal from the row when the stash is absent, so this failing costs
|
|
12607
|
+
* fidelity on one shape, not the repair path.
|
|
12608
|
+
*/
|
|
12609
|
+
private journalStrandedContinuation;
|
|
12610
|
+
/**
|
|
12611
|
+
* The continuation to re-issue for a request whose recorded outcome stranded
|
|
12612
|
+
* its run — the journalled one when there is one, otherwise rebuilt from the
|
|
12613
|
+
* row (#15389).
|
|
12614
|
+
*
|
|
12615
|
+
* ## Why a rebuild path exists at all
|
|
12616
|
+
*
|
|
12617
|
+
* The journal only covers runs stranded by a build that HAS it. The card is
|
|
12618
|
+
* explicitly about *"the runs already in this state"*, and one of those can
|
|
12619
|
+
* still be restored whenever the durable run-history row carried its
|
|
12620
|
+
* suspension snapshot — so a repair verb that only served future strands
|
|
12621
|
+
* would miss the population the card was filed for.
|
|
12622
|
+
*
|
|
12623
|
+
* ## Which statuses it rebuilds, which it discriminates, and which it refuses
|
|
12624
|
+
*
|
|
12625
|
+
* ⛔ A status is NOT the same thing as a continuation. Three of the four
|
|
12626
|
+
* terminal statuses have more than one writer or more than one issuer, so
|
|
12627
|
+
* "one status, one signal" is false and is not what this relies on. Each row
|
|
12628
|
+
* below states its own population and its own discriminator:
|
|
12629
|
+
*
|
|
12630
|
+
* | status | writers / issuers | rebuilt as | how it is decided |
|
|
12631
|
+
* |---|---|---|---|
|
|
12632
|
+
* | `approved` | 1 (`decide`; escalation auto-approve routes through it) | `approve` | unambiguous |
|
|
12633
|
+
* | `rejected` | 2 (`decide`; ADR-0044 revision-limit auto-reject) | `reject`, or REFUSED | a `revise` action row means the auto-reject arm is possible |
|
|
12634
|
+
* | `returned` | 1 writer, 2 issuers (`sendBack` → `revise`; a later `resubmit` → `resubmit`, writing no status) | `resubmit` or `revise` | a `resubmit` action row, whose sole writer is `resubmit` |
|
|
12635
|
+
* | `recalled` | 2 writers, 3 behaviours, 2 issuing NO continuation | REFUSED | nothing on the row distinguishes them |
|
|
12636
|
+
*
|
|
12637
|
+
* ⚠️ **Both refusals are deliberate and neither is best-effort.** The failure
|
|
12638
|
+
* mode of a wrong rebuild is a flow advanced down a branch nobody chose —
|
|
12639
|
+
* strictly worse than the dead end this verb exists to open. Where the signal
|
|
12640
|
+
* cannot be proved, this refuses and names what the operator can do instead;
|
|
12641
|
+
* the journal is what makes both shapes recoverable going forward.
|
|
12642
|
+
*
|
|
12643
|
+
* ⛔ `pending` and `cancelled` are refused outright: neither names a recorded
|
|
12644
|
+
* outcome to replay. A `pending` request's continuation is an ordinary
|
|
12645
|
+
* decision through the front door, which is exactly the guard this verb
|
|
12646
|
+
* exists to avoid weakening.
|
|
12647
|
+
*/
|
|
12648
|
+
private resolveRecordedContinuation;
|
|
12649
|
+
/**
|
|
12650
|
+
* WHERE the pause a recorded continuation was refused on actually sits
|
|
12651
|
+
* (#15389) — the expected node guard 3 compares the run's parked node against.
|
|
12652
|
+
*
|
|
12653
|
+
* ⚠️ This is signal-aware, and that is the whole point of it. "This request's
|
|
12654
|
+
* own node" is the right answer for three of the four signals and the WRONG
|
|
12655
|
+
* answer for the fourth:
|
|
12656
|
+
*
|
|
12657
|
+
* | signal | issued from | why |
|
|
12658
|
+
* |---|---|---|
|
|
12659
|
+
* | `approve` / `reject` | the request's own approval node | the decision is taken at the pause it gates |
|
|
12660
|
+
* | `revise` (send-back) | the request's own approval node | send-back resumes that same pause down the `revise` edge |
|
|
12661
|
+
* | `recall` | the request's own approval node | recall-on-pending resumes that same pause down `reject` |
|
|
12662
|
+
* | `resubmit` | the **revise window** the request's `revise` edge leads to | by construction: a resubmit is only reachable AFTER a send-back moved the run there, and it resumes THAT pause down the `resubmit` back-edge |
|
|
12663
|
+
*
|
|
12664
|
+
* Measured before this existed: a `returned` row whose resubmit stranded was
|
|
12665
|
+
* refused by guard 3 on both the journal and the rebuild paths — the pause
|
|
12666
|
+
* re-armed at the revise window while the row's `flow_node_id` still read the
|
|
12667
|
+
* approval node — and the refusal told the operator the pause was not this
|
|
12668
|
+
* request's when it was exactly this request's. A refusal may ship; a refusal
|
|
12669
|
+
* that names a cause the code did not take may not.
|
|
12670
|
+
*
|
|
12671
|
+
* ⛔ It stays FAIL-CLOSED: the revise window is derived from the flow
|
|
12672
|
+
* definition the same way {@link ApprovalService.assertReviseEdge} derives it
|
|
12673
|
+
* — a `revise` out-edge of this request's node into a node the flow declares
|
|
12674
|
+
* as `{@link APPROVAL_REVISE_NODE_TYPE}`, which is the pause only this service
|
|
12675
|
+
* can continue. No engine, no flow, no such edge, or more than one candidate
|
|
12676
|
+
* ⇒ refuse. It needs no automation surface `assertReviseEdge` did not already
|
|
12677
|
+
* use (`getFlow`), and no engine change.
|
|
12678
|
+
*
|
|
12679
|
+
* ⚠️ It does not widen what guard 3 admits beyond that one signal: for every
|
|
12680
|
+
* other decision the answer is byte-identical to the row's own node.
|
|
12681
|
+
*
|
|
12682
|
+
* ⛔ It is NOT what keeps the recall-in-revise-window shape (row `recalled`,
|
|
12683
|
+
* run at the revise window) refused, and an earlier revision of this comment
|
|
12684
|
+
* claimed it was — on the reasoning that such a row's journalled signal is
|
|
12685
|
+
* `recall` rather than `resubmit`. That is false: a recall taken inside the
|
|
12686
|
+
* revise window calls `cancelRun` and journals NOTHING, so the journal on
|
|
12687
|
+
* such a row is whatever an EARLIER strand left there — a `resubmit`, most
|
|
12688
|
+
* often, since the resubmit is what the window exists to receive. Measured:
|
|
12689
|
+
* with the journal returned before the row's status was looked at, that
|
|
12690
|
+
* stale `resubmit` reached this method, was answered with the revise window,
|
|
12691
|
+
* matched the parked node, and opened a fresh `pending` round on a withdrawn
|
|
12692
|
+
* request. What refuses it is the journal/status compatibility check in
|
|
12693
|
+
* {@link ApprovalService.resolveRecordedContinuation} — see
|
|
12694
|
+
* {@link CONTINUATIONS_A_STATUS_CAN_ISSUE} — which runs BEFORE this method
|
|
12695
|
+
* and never hands it a signal the row's status cannot have issued.
|
|
12696
|
+
*/
|
|
12697
|
+
private expectedPauseNode;
|
|
12698
|
+
/**
|
|
12699
|
+
* Re-issue the continuation for a run an operator has re-armed with
|
|
12700
|
+
* `AutomationEngine.restoreConsumedSuspension` — the missing half of that
|
|
12701
|
+
* repair verb, for approvals (#15389).
|
|
12702
|
+
*
|
|
12703
|
+
* ## The dead end this exits
|
|
12704
|
+
*
|
|
12705
|
+
* A decision whose downstream node throws strands the run: the suspension is
|
|
12706
|
+
* consumed, the decision is durable, and the caller gets `RESUME_FAILED`
|
|
12707
|
+
* carrying `repairable: true`. `restoreConsumedSuspension` then genuinely
|
|
12708
|
+
* re-arms the pause — measured `restored: true`, `hasSuspendedRun` back to
|
|
12709
|
+
* `true` — and its own reason string tells the operator to *re-issue the
|
|
12710
|
+
* continuation*. For an `approval` node there was then nobody who could:
|
|
12711
|
+
*
|
|
12712
|
+
* - `decide` / `recall` / `sendBack` / `resubmit` all guard on a `pending`
|
|
12713
|
+
* request, and the row is terminal — written by the very call that
|
|
12714
|
+
* stranded the run;
|
|
12715
|
+
* - the generic `engine.resume` refuses, because the `approval` node
|
|
12716
|
+
* declares `resumeAuthority: 'service'` and the #3801 gate turns away any
|
|
12717
|
+
* resume that is not the tail of a decision this service authorized.
|
|
12718
|
+
*
|
|
12719
|
+
* So the only verb left was `cancelRun`, which discards the branch's
|
|
12720
|
+
* downstream work. Measured on the real engine and the real door: the
|
|
12721
|
+
* restored pause IS resumable, and a `resumeAuthority`-marked resume walks
|
|
12722
|
+
* the reject branch to completion. Nothing was missing in the engine — what
|
|
12723
|
+
* was missing was an ISSUER on this side. This is that issuer.
|
|
12724
|
+
*
|
|
12725
|
+
* ## What it deliberately does NOT do
|
|
12726
|
+
*
|
|
12727
|
+
* ⛔ It does not re-open, re-decide, or rewrite the request row: all four
|
|
12728
|
+
* `pending` guards stay exactly as they are, and no status, mirror field or
|
|
12729
|
+
* audit row is written. A person decided this once; this replays what they
|
|
12730
|
+
* decided onto the pause that was put back, and replays nothing else.
|
|
12731
|
+
* ⛔ It does not relax `resumeAuthority: 'service'` — the resume goes through
|
|
12732
|
+
* {@link ApprovalService.serviceResume} like every other, so the marker is
|
|
12733
|
+
* still stamped in exactly one place.
|
|
12734
|
+
* ⛔ It grants no capability that in-process code did not already have:
|
|
12735
|
+
* `RESUME_AUTHORITY_SERVICE` is importable by anything in the host, so the
|
|
12736
|
+
* raw form of this call was always available. What this adds is the GUARDED
|
|
12737
|
+
* form, and the guards are the substance of it — three, each with its own
|
|
12738
|
+
* reverse-control pin, because the raw marker is not a guard and an
|
|
12739
|
+
* unguarded repair verb advances flows nobody decided:
|
|
12740
|
+
*
|
|
12741
|
+
* 1. {@link assertLatestForRun} — this request is still the newest on its
|
|
12742
|
+
* run, so a superseded row cannot drive a later round or a later node;
|
|
12743
|
+
* 2. `hasSuspendedRun` — a pause exists at all (strict: an unreadable store
|
|
12744
|
+
* throws rather than reading as "not suspended");
|
|
12745
|
+
* 3. node identity — that pause is parked where THIS request's recorded
|
|
12746
|
+
* outcome was issued from: its own approval node for `approve`,
|
|
12747
|
+
* `reject`, `revise` and `recall`, and — for a `resubmit`, which is only
|
|
12748
|
+
* reachable from a revise window — the `approval_revise` node its own
|
|
12749
|
+
* `revise` edge leads to. {@link ApprovalService.expectedPauseNode}
|
|
12750
|
+
* derives it, fail-closed.
|
|
12751
|
+
*
|
|
12752
|
+
* Guard 3 is not redundant with guard 2: existence is not identity, and a
|
|
12753
|
+
* boolean cannot tell this request's re-armed pause from any other live
|
|
12754
|
+
* pause on the same run.
|
|
12755
|
+
*
|
|
12756
|
+
* ## Posture, and why it takes no `ExecutionContext`
|
|
12757
|
+
*
|
|
12758
|
+
* Deliberately shaped like the engine verb it completes: an in-process
|
|
12759
|
+
* operator repair, reachable from a host or a console script, with no REST
|
|
12760
|
+
* route and no entry in the spec `ApprovalService` contract — exactly as
|
|
12761
|
+
* `restoreConsumedSuspension` is a class method on `AutomationEngine` and
|
|
12762
|
+
* appears in no contract. It authorizes nothing new: the decision it replays
|
|
12763
|
+
* was authorized and recorded when it was made, and re-authorizing it here
|
|
12764
|
+
* against a present-day actor would be a different and wrong question (the
|
|
12765
|
+
* original approver may be long gone). `requestedBy` / `reason` ride the log
|
|
12766
|
+
* for the same reason they do on the restore.
|
|
12767
|
+
*
|
|
12768
|
+
* @returns what was replayed and whether the run moved — never a silent
|
|
12769
|
+
* `false`. A resume that fails again throws the same `RESUME_FAILED`
|
|
12770
|
+
* envelope the original decision did, `repairable` and all, so a second
|
|
12771
|
+
* restore-and-continue is possible.
|
|
12772
|
+
*/
|
|
12773
|
+
continueRestoredRun(requestId: string, options?: {
|
|
12774
|
+
requestedBy?: string;
|
|
12775
|
+
reason?: string;
|
|
12776
|
+
}): Promise<ApprovalContinuationResult>;
|
|
12235
12777
|
releaseDeadRunRequests(): Promise<{
|
|
12236
12778
|
scanned: number;
|
|
12237
12779
|
released: number;
|
|
@@ -12701,4 +13243,4 @@ declare const APPROVAL_REVISE_CORRELATION_PREFIX = "approval_revise:";
|
|
|
12701
13243
|
*/
|
|
12702
13244
|
declare function registerApprovalReviseNode(automation: ApprovalAutomationSurface, logger?: MinimalLogger): void;
|
|
12703
13245
|
|
|
12704
|
-
export { APPROVAL_REVISE_CORRELATION_PREFIX, type ApprovalAutomationSurface, type ApprovalClock, type ApprovalEngine, type ApprovalNodeAutoOutcome, type ApprovalResumeSurface, ApprovalService, type ApprovalServiceOptions, type ApprovalsPluginOptions, ApprovalsServicePlugin, type ApproverExpressionContext, type StrandedApprovalRequest, type StrandedRunState, SysApprovalAction, SysApprovalApprover, SysApprovalDelegation, SysApprovalRequest, registerApprovalNode, registerApprovalReviseNode };
|
|
13246
|
+
export { APPROVAL_REVISE_CORRELATION_PREFIX, type ApprovalAutomationSurface, type ApprovalClock, type ApprovalContinuationResult, type ApprovalEngine, type ApprovalNodeAutoOutcome, type ApprovalResumeSurface, ApprovalService, type ApprovalServiceOptions, type ApprovalsPluginOptions, ApprovalsServicePlugin, type ApproverExpressionContext, type StrandedApprovalRequest, type StrandedContinuationSignal, type StrandedRunState, SysApprovalAction, SysApprovalApprover, SysApprovalDelegation, SysApprovalRequest, registerApprovalNode, registerApprovalReviseNode };
|