@wipco/sdui 0.26.0 → 0.28.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/dist/chunk-KBLFOC37.js +1242 -0
- package/dist/chunk-SAPJVLZM.js +599 -0
- package/dist/chunk-ZDRERW4G.js +359 -0
- package/dist/meta.d.ts +7 -1
- package/dist/meta.js +324 -1
- package/dist/widgets/ApprovalLineEditor.d.ts +43 -0
- package/dist/widgets/ApprovalLineEditor.js +7 -0
- package/dist/widgets/ApprovalOverridesEditor.d.ts +42 -0
- package/dist/widgets/ApprovalOverridesEditor.js +9 -0
- package/dist/widgets/OrgChartBoard.d.ts +72 -0
- package/dist/widgets/OrgChartBoard.js +6 -0
- package/dist/widgets/index.d.ts +12 -3
- package/dist/widgets/index.js +25 -16
- package/package.json +13 -1
package/dist/meta.js
CHANGED
|
@@ -3416,6 +3416,326 @@ var RankBoardMeta = {
|
|
|
3416
3416
|
},
|
|
3417
3417
|
resize: { kind: "none" }
|
|
3418
3418
|
};
|
|
3419
|
+
var customApproverItem = [
|
|
3420
|
+
{ name: "id", kind: "string", label: "\uC2DD\uBCC4\uC790", required: true },
|
|
3421
|
+
{ name: "name", kind: "string", label: "\uD45C\uC2DC\uBA85", required: true },
|
|
3422
|
+
{
|
|
3423
|
+
name: "type",
|
|
3424
|
+
kind: "enum",
|
|
3425
|
+
label: "\uC885\uB958",
|
|
3426
|
+
required: true,
|
|
3427
|
+
options: [
|
|
3428
|
+
{ value: "user", label: "\uC9C1\uC6D0" },
|
|
3429
|
+
{ value: "group", label: "\uBD80\uC11C\xB7\uADF8\uB8F9" }
|
|
3430
|
+
]
|
|
3431
|
+
}
|
|
3432
|
+
];
|
|
3433
|
+
var approvalLineStepItem = [
|
|
3434
|
+
{ name: "id", kind: "string", label: "\uC2A4\uD15D id", required: true },
|
|
3435
|
+
{
|
|
3436
|
+
name: "type",
|
|
3437
|
+
kind: "enum",
|
|
3438
|
+
label: "\uC720\uD615",
|
|
3439
|
+
description: "\uC5C6\uC73C\uBA74 \uBC31\uC5D4\uB4DC\uAC00 custom\uC73C\uB85C \uCDE8\uAE09\uD55C\uB2E4(\uB9C8\uC774\uADF8\uB808\uC774\uC158 \uC774\uAD00 \uC2A4\uD15D \uD638\uD658).",
|
|
3440
|
+
options: [
|
|
3441
|
+
{ value: "team_leader", label: "\uD300\uC7A5" },
|
|
3442
|
+
{ value: "division_head", label: "\uBCF8\uBD80\uC7A5\xB7\uC2E4\uC7A5" },
|
|
3443
|
+
{ value: "custom", label: "\uC0AC\uC6A9\uC790 \uC9C0\uC815" }
|
|
3444
|
+
]
|
|
3445
|
+
},
|
|
3446
|
+
{
|
|
3447
|
+
name: "name",
|
|
3448
|
+
kind: "string",
|
|
3449
|
+
label: "\uD45C\uC2DC\uBA85",
|
|
3450
|
+
description: "\uBC31\uC5D4\uB4DC\uAC00 \uACB0\uC7AC \uB2E8\uACC4 \uC124\uBA85\uC73C\uB85C \uADF8\uB300\uB85C \uC4F4\uB2E4. \uC5C6\uC73C\uBA74 type\uC73C\uB85C \uB300\uC2E0\uD55C\uB2E4."
|
|
3451
|
+
},
|
|
3452
|
+
{
|
|
3453
|
+
name: "order",
|
|
3454
|
+
kind: "number",
|
|
3455
|
+
label: "\uC21C\uBC88",
|
|
3456
|
+
required: true,
|
|
3457
|
+
description: "1\uBD80\uD130. \uD3B8\uC9D1\uAE30\uAC00 \uAC12\uC744 \uBC14\uAFC0 \uB54C\uB9C8\uB2E4 1..n\uC73C\uB85C \uC815\uADDC\uD654\uD55C\uB2E4."
|
|
3458
|
+
},
|
|
3459
|
+
{
|
|
3460
|
+
name: "customApprovers",
|
|
3461
|
+
kind: "array",
|
|
3462
|
+
label: "\uC9C0\uC815 \uACB0\uC7AC\uC790",
|
|
3463
|
+
description: "type\uC774 custom\uC77C \uB54C\uB9CC \uC758\uBBF8\uAC00 \uC788\uB2E4. \uC2A4\uD399 \uB9AC\uD130\uB7F4\uC5D0\uB294 \uD55C \uBC88\uB3C4 \uB4F1\uC7A5\uD558\uC9C0 \uC54A\uC558\uACE0, \uD615\uD0DC\uC758 \uADFC\uAC70\uB294 \uC800\uC7A5 JSON \uACC4\uC57D\uC774\uB2E4.",
|
|
3464
|
+
item: customApproverItem
|
|
3465
|
+
}
|
|
3466
|
+
];
|
|
3467
|
+
var ApprovalLineEditorMeta = {
|
|
3468
|
+
name: "ApprovalLineEditor",
|
|
3469
|
+
label: "\uAE30\uBCF8 \uACB0\uC7AC\uC120 \uD3B8\uC9D1\uAE30",
|
|
3470
|
+
category: "input",
|
|
3471
|
+
icon: "route",
|
|
3472
|
+
description: "\uACB0\uC7AC \uB2E8\uACC4\uB97C \uCD94\uAC00\xB7\uC0AD\uC81C\xB7\uC7AC\uC815\uB82C\uD558\uB294 controlled \uD3B8\uC9D1\uAE30. \uC800\uC7A5 JSON(approval_forms.default_steps)\uC758 \uD0A4\uB97C \uADF8\uB300\uB85C \uC4F4\uB2E4.",
|
|
3473
|
+
props: [
|
|
3474
|
+
{
|
|
3475
|
+
name: "value",
|
|
3476
|
+
kind: "array",
|
|
3477
|
+
label: "\uACB0\uC7AC\uC120",
|
|
3478
|
+
required: true,
|
|
3479
|
+
bindable: true,
|
|
3480
|
+
description: "\uC2A4\uD15D \uBC30\uC5F4. \uC2E4\uCE21 4/4\uAC00 \uC804\uBD80 $state \uBC14\uC778\uB529\uC774\uB2E4.",
|
|
3481
|
+
group: "data",
|
|
3482
|
+
item: approvalLineStepItem
|
|
3483
|
+
},
|
|
3484
|
+
{
|
|
3485
|
+
name: "onChange",
|
|
3486
|
+
kind: "action",
|
|
3487
|
+
label: "\uACB0\uC7AC\uC120 \uBCC0\uACBD",
|
|
3488
|
+
required: true,
|
|
3489
|
+
eventArg: "order\uB97C 1..n\uC73C\uB85C \uC815\uADDC\uD654\uD55C \uC2A4\uD15D \uBC30\uC5F4",
|
|
3490
|
+
group: "behavior"
|
|
3491
|
+
},
|
|
3492
|
+
// 실측 4/4 — 전부 setState + fromEvent
|
|
3493
|
+
{
|
|
3494
|
+
name: "options",
|
|
3495
|
+
kind: "array",
|
|
3496
|
+
label: "\uACB0\uC7AC\uC790 \uD6C4\uBCF4",
|
|
3497
|
+
bindable: true,
|
|
3498
|
+
description: "\uAC80\uC0C9 \uACBD\uB85C\uAC00 \uC5C6\uC744 \uB54C \uB85C\uCEEC \uAC80\uC0C9 \uB300\uC0C1.",
|
|
3499
|
+
group: "data",
|
|
3500
|
+
item: customApproverItem
|
|
3501
|
+
},
|
|
3502
|
+
// 실측 4/4 (원소 28개)
|
|
3503
|
+
{
|
|
3504
|
+
name: "searchEndpoint",
|
|
3505
|
+
kind: "string",
|
|
3506
|
+
label: "\uACB0\uC7AC\uC790 \uAC80\uC0C9 \uACBD\uB85C",
|
|
3507
|
+
description: "GET {\uACBD\uB85C}?q=\u2026 \uB85C \uC9C1\uC6D0\xB7\uBD80\uC11C\uB97C \uD1B5\uD569 \uAC80\uC0C9\uD55C\uB2E4. \uC5C6\uC73C\uBA74 options\uB85C \uB85C\uCEEC \uAC80\uC0C9\uB9CC \uD55C\uB2E4.",
|
|
3508
|
+
group: "data",
|
|
3509
|
+
advanced: true
|
|
3510
|
+
},
|
|
3511
|
+
// 실측 0/4 — 구현에는 있다
|
|
3512
|
+
{
|
|
3513
|
+
name: "groupSearchEndpoint",
|
|
3514
|
+
kind: "string",
|
|
3515
|
+
label: "\uBD80\uC11C \uAC80\uC0C9 \uACBD\uB85C",
|
|
3516
|
+
description: "\uC8FC\uBA74 searchEndpoint\uC640 \uBCD1\uB82C\uB85C \uC870\uD68C\uD574 \uACB0\uACFC\uB97C \uD569\uCE5C\uB2E4(v2\uC758 /employees + /departments \uBCD1\uB82C \uAC80\uC0C9\uACFC \uAC19\uC740 \uBAA8\uC591). \uC774 \uACBD\uB85C\uC758 \uC751\uB2F5\uC740 \uC804\uBD80 \uADF8\uB8F9\uC73C\uB85C \uCDE8\uAE09\uD55C\uB2E4.",
|
|
3517
|
+
group: "data",
|
|
3518
|
+
advanced: true
|
|
3519
|
+
},
|
|
3520
|
+
{ name: "disabled", kind: "boolean", label: "\uBE44\uD65C\uC131", default: false, bindable: true, group: "behavior" }
|
|
3521
|
+
// 실측 0/4
|
|
3522
|
+
],
|
|
3523
|
+
children: { accepts: false },
|
|
3524
|
+
dom: { element: "div" },
|
|
3525
|
+
// 실측: 루트가 <div class="wp-col">
|
|
3526
|
+
// 프리셋에 searchEndpoint를 넣지 않는다 — 소스가 `if (searchEndpoint)`로 감싸고 있어
|
|
3527
|
+
// 미지정이면 fetch 경로 자체가 없다. default에 2스텝을 넣어 빈 상태가 아닌 모습을 보여 준다.
|
|
3528
|
+
preset: {
|
|
3529
|
+
component: "ApprovalLineEditor",
|
|
3530
|
+
props: {
|
|
3531
|
+
value: {
|
|
3532
|
+
$state: "approvalLineForm.defaultSteps",
|
|
3533
|
+
default: [
|
|
3534
|
+
{ id: "st1", name: "\uD300\uC7A5", type: "team_leader", order: 1 },
|
|
3535
|
+
{ id: "st2", name: "\uBCF8\uBD80\uC7A5", type: "division_head", order: 2 }
|
|
3536
|
+
]
|
|
3537
|
+
},
|
|
3538
|
+
onChange: { action: "setState", key: "approvalLineForm.defaultSteps", fromEvent: true },
|
|
3539
|
+
options: [
|
|
3540
|
+
{ id: "u1", name: "\uAE40\uB3C4\uD604", type: "user" },
|
|
3541
|
+
{ id: "u2", name: "\uC774\uC11C\uC5F0", type: "user" },
|
|
3542
|
+
{ id: "g1", name: "\uC778\uC0AC\uD300", type: "group" }
|
|
3543
|
+
]
|
|
3544
|
+
}
|
|
3545
|
+
},
|
|
3546
|
+
resize: { kind: "none" }
|
|
3547
|
+
};
|
|
3548
|
+
var ApprovalOverridesEditorMeta = {
|
|
3549
|
+
name: "ApprovalOverridesEditor",
|
|
3550
|
+
label: "\uACB0\uC7AC\uC120 \uC624\uBC84\uB77C\uC774\uB4DC \uD3B8\uC9D1\uAE30",
|
|
3551
|
+
category: "input",
|
|
3552
|
+
icon: "layers",
|
|
3553
|
+
description: "\uC9C1\uCC45\xB7\uC9C1\uAE09\uBCC4\uB85C \uAE30\uBCF8 \uACB0\uC7AC\uC120 \uB300\uC2E0 \uC801\uC6A9\uD560 \uACB0\uC7AC\uB77C\uC778 \uBAA9\uB85D. \uC9C1\uCC45\uACFC \uC9C1\uAE09\uC740 OR\uC774\uACE0, \uC704\uC5D0\uC11C\uBD80\uD130 \uBA3C\uC800 \uB9DE\uB294 \uAC83\uC774 \uC6B0\uC120\uD55C\uB2E4.",
|
|
3554
|
+
props: [
|
|
3555
|
+
{
|
|
3556
|
+
name: "value",
|
|
3557
|
+
kind: "array",
|
|
3558
|
+
label: "\uC624\uBC84\uB77C\uC774\uB4DC \uBAA9\uB85D",
|
|
3559
|
+
required: true,
|
|
3560
|
+
bindable: true,
|
|
3561
|
+
description: "\uC2E4\uCE21 2/2\uAC00 \uC804\uBD80 $state \uBC14\uC778\uB529\uC774\uACE0 default\uAC00 \uBE48 \uBC30\uC5F4\uC774\uB2E4. \uC6D0\uC18C \uB9AC\uD130\uB7F4\uC740 \uC2A4\uD399\uC5D0 \uD55C \uAC74\uB3C4 \uC5C6\uC5B4 \uD615\uD0DC\uC758 \uADFC\uAC70\uB294 \uC800\uC7A5 JSON \uACC4\uC57D(approval_forms.line_overrides)\uC774\uB2E4.",
|
|
3562
|
+
group: "data",
|
|
3563
|
+
item: [
|
|
3564
|
+
{ name: "id", kind: "string", label: "\uC2DD\uBCC4\uC790", required: true },
|
|
3565
|
+
{ name: "name", kind: "string", label: "\uADDC\uCE59 \uC774\uB984", required: true },
|
|
3566
|
+
{ name: "jobTitles", kind: "array", label: "\uC801\uC6A9 \uC9C1\uCC45", item: [], itemKind: "string" },
|
|
3567
|
+
{ name: "grades", kind: "array", label: "\uC801\uC6A9 \uC9C1\uAE09", item: [], itemKind: "string" },
|
|
3568
|
+
{
|
|
3569
|
+
name: "entityTypes",
|
|
3570
|
+
kind: "array",
|
|
3571
|
+
label: "\uC801\uC6A9 \uC5C5\uBB34\uC720\uD615(\uB808\uAC70\uC2DC)",
|
|
3572
|
+
description: '\uB808\uAC70\uC2DC \uC774\uAD00 \uD0A4 \u2014 UI\uAC00 \uD3B8\uC9D1\uD558\uC9C0 \uC54A\uACE0 spread\uB85C \uBCF4\uC874\uB9CC \uD55C\uB2E4. \uB2E4\uB9CC \uC801\uC6A9 \uC870\uAC74\uC774\uB77C, \uC9C1\uCC45\xB7\uC9C1\uAE09\uC774 \uBAA8\uB450 \uBE44\uC5C8\uC744 \uB54C \uC774 \uAC12\uC758 \uC720\uBB34\uB85C "\uC804 \uC9C1\uC6D0 \uC801\uC6A9"\uACFC "\uB9E4\uCE6D \uC548 \uB428"\uC774 \uAC08\uB9B0\uB2E4.',
|
|
3573
|
+
item: [],
|
|
3574
|
+
itemKind: "string",
|
|
3575
|
+
advanced: true
|
|
3576
|
+
},
|
|
3577
|
+
{ name: "steps", kind: "array", label: "\uACB0\uC7AC\uC120", item: approvalLineStepItem }
|
|
3578
|
+
]
|
|
3579
|
+
},
|
|
3580
|
+
{
|
|
3581
|
+
name: "onChange",
|
|
3582
|
+
kind: "action",
|
|
3583
|
+
label: "\uC624\uBC84\uB77C\uC774\uB4DC \uBCC0\uACBD",
|
|
3584
|
+
required: true,
|
|
3585
|
+
eventArg: "\uBCC0\uACBD\uB41C \uC624\uBC84\uB77C\uC774\uB4DC \uBC30\uC5F4(\uC54C \uC218 \uC5C6\uB294 \uD0A4\uB294 \uADF8\uB300\uB85C \uBCF4\uC874\uB41C\uB2E4)",
|
|
3586
|
+
group: "behavior"
|
|
3587
|
+
},
|
|
3588
|
+
// 실측 2/2
|
|
3589
|
+
{
|
|
3590
|
+
name: "jobTitleOptions",
|
|
3591
|
+
kind: "array",
|
|
3592
|
+
label: "\uC9C1\uCC45 \uD6C4\uBCF4",
|
|
3593
|
+
required: true,
|
|
3594
|
+
bindable: true,
|
|
3595
|
+
description: "\uC9C1\uC6D0 \uB370\uC774\uD130\uC5D0\uC11C distinct\uB85C \uBF51\uC740 \uBB38\uC790\uC5F4 \uBAA9\uB85D.",
|
|
3596
|
+
group: "data",
|
|
3597
|
+
item: [],
|
|
3598
|
+
itemKind: "string"
|
|
3599
|
+
},
|
|
3600
|
+
// 실측 2/2 (원소 10개)
|
|
3601
|
+
{
|
|
3602
|
+
name: "gradeOptions",
|
|
3603
|
+
kind: "array",
|
|
3604
|
+
label: "\uC9C1\uAE09 \uD6C4\uBCF4",
|
|
3605
|
+
required: true,
|
|
3606
|
+
bindable: true,
|
|
3607
|
+
group: "data",
|
|
3608
|
+
item: [],
|
|
3609
|
+
itemKind: "string"
|
|
3610
|
+
},
|
|
3611
|
+
// 실측 2/2 (원소 15개)
|
|
3612
|
+
{
|
|
3613
|
+
name: "searchOptions",
|
|
3614
|
+
kind: "array",
|
|
3615
|
+
label: "\uACB0\uC7AC\uC790 \uD6C4\uBCF4",
|
|
3616
|
+
bindable: true,
|
|
3617
|
+
description: "\uC911\uCCA9\uB41C \uACB0\uC7AC\uC120 \uD3B8\uC9D1\uAE30\uB85C \uADF8\uB300\uB85C \uC804\uB2EC\uB41C\uB2E4. \uAC80\uC0C9 \uACBD\uB85C\uAC00 \uC5C6\uC744 \uB54C\uC758 \uB85C\uCEEC \uAC80\uC0C9 \uB300\uC0C1.",
|
|
3618
|
+
group: "data",
|
|
3619
|
+
item: customApproverItem
|
|
3620
|
+
},
|
|
3621
|
+
// 실측 2/2 (원소 15개)
|
|
3622
|
+
{
|
|
3623
|
+
name: "facetsEndpoint",
|
|
3624
|
+
kind: "string",
|
|
3625
|
+
label: "\uC9C1\uCC45\xB7\uC9C1\uAE09 \uC635\uC158 \uACBD\uB85C",
|
|
3626
|
+
description: "\uC9C1\uC6D0 \uBAA9\uB85D \uACBD\uB85C(\uC608: /employees?limit=500). \uC751\uB2F5\uC758 job_title\xB7grade\uB97C distinct \uCD94\uCD9C\uD574 \uC815\uC801 \uC635\uC158 \uBAA9\uB85D\uC5D0 \uD569\uCE5C\uB2E4 \u2014 v2\uAC00 \uD3B8\uC9D1\uAE30\uC5D0\uC11C \uC9C1\uC811 \uD558\uB358 \uC870\uD68C\uB2E4.",
|
|
3627
|
+
group: "data",
|
|
3628
|
+
advanced: true
|
|
3629
|
+
},
|
|
3630
|
+
{
|
|
3631
|
+
name: "searchEndpoint",
|
|
3632
|
+
kind: "string",
|
|
3633
|
+
label: "\uACB0\uC7AC\uC790 \uAC80\uC0C9 \uACBD\uB85C",
|
|
3634
|
+
description: "\uC911\uCCA9\uB41C \uACB0\uC7AC\uC120 \uD3B8\uC9D1\uAE30\uB85C \uADF8\uB300\uB85C \uC804\uB2EC\uB41C\uB2E4.",
|
|
3635
|
+
group: "data",
|
|
3636
|
+
advanced: true
|
|
3637
|
+
},
|
|
3638
|
+
// 실측 0/2
|
|
3639
|
+
{
|
|
3640
|
+
name: "groupSearchEndpoint",
|
|
3641
|
+
kind: "string",
|
|
3642
|
+
label: "\uBD80\uC11C \uAC80\uC0C9 \uACBD\uB85C",
|
|
3643
|
+
description: "\uC911\uCCA9\uB41C \uACB0\uC7AC\uC120 \uD3B8\uC9D1\uAE30\uB85C \uADF8\uB300\uB85C \uC804\uB2EC\uB41C\uB2E4 \u2014 searchEndpoint\uC640 \uBCD1\uB82C \uC870\uD68C.",
|
|
3644
|
+
group: "data",
|
|
3645
|
+
advanced: true
|
|
3646
|
+
},
|
|
3647
|
+
{ name: "disabled", kind: "boolean", label: "\uBE44\uD65C\uC131", default: false, bindable: true, group: "behavior" }
|
|
3648
|
+
// 실측 0/2
|
|
3649
|
+
],
|
|
3650
|
+
children: { accepts: false },
|
|
3651
|
+
dom: { element: "div" },
|
|
3652
|
+
// 실측: 루트가 <div class="wp-col">
|
|
3653
|
+
// searchEndpoint 금지는 ApprovalLineEditor와 같은 이유다 — 중첩 편집기로 그대로 내려간다.
|
|
3654
|
+
preset: {
|
|
3655
|
+
component: "ApprovalOverridesEditor",
|
|
3656
|
+
props: {
|
|
3657
|
+
value: { $state: "approvalLineForm.lineOverrides", default: [] },
|
|
3658
|
+
onChange: { action: "setState", key: "approvalLineForm.lineOverrides", fromEvent: true },
|
|
3659
|
+
jobTitleOptions: ["\uBCF8\uBD80\uC7A5", "\uD300\uC7A5", "\uD30C\uD2B8\uC7A5"],
|
|
3660
|
+
gradeOptions: ["\uC0AC\uC6D0", "\uB300\uB9AC", "\uACFC\uC7A5", "\uBD80\uC7A5"],
|
|
3661
|
+
searchOptions: [
|
|
3662
|
+
{ id: "u1", name: "\uAE40\uB3C4\uD604", type: "user" },
|
|
3663
|
+
{ id: "g1", name: "\uC778\uC0AC\uD300", type: "group" }
|
|
3664
|
+
]
|
|
3665
|
+
}
|
|
3666
|
+
},
|
|
3667
|
+
resize: { kind: "none" }
|
|
3668
|
+
};
|
|
3669
|
+
var OrgChartBoardMeta = {
|
|
3670
|
+
name: "OrgChartBoard",
|
|
3671
|
+
label: "\uC870\uC9C1\uB3C4 \uBCF4\uB4DC",
|
|
3672
|
+
category: "display",
|
|
3673
|
+
icon: "git-branch",
|
|
3674
|
+
description: "\uC2E4\uB370\uC774\uD130 \uC870\uC9C1\uB3C4 \uCE94\uBC84\uC2A4(v2 \uC774\uC2DD). /employees\xB7/departments?include=paths\xB7/job-positions 3\uC6D0\uC744 \uC2A4\uC2A4\uB85C \uD398\uC774\uC9C0 \uC218\uC9D1\uD574 \uB9AC\uB354\uC2ED \uC2A4\uD0DD\xB7\uBCF8\uBD80 \uC0C9 \uD5E4\uB354\xB7\uC138\uB85C\uC4F0\uAE30 \uD300 \uB77C\uBCA8\xB72\uC5F4 \uAD6C\uC131\uC6D0 \uADF8\uB9AC\uB4DC\uB85C \uADF8\uB9B0\uB2E4(\uBD80\uC11C\xB7\uC9C1\uC704 \uC870\uD68C\uB294 \uC2E4\uD328 \uD5C8\uC6A9). \uAD6C\uC131\uC6D0 \uC815\uB82C\uC740 \uC9C1\uCC45\u2192\uC9C1\uC704 \uB9C8\uC2A4\uD130 rank_order(\uCD5C\uC7A5 \uD3EC\uD568 \uB9E4\uCE6D)\u2192GRADE_ORDER \uD3F4\uBC31\u2192level\u2192\uC774\uB984. \uD720 \uC90C\xB7\uB4DC\uB798\uADF8 \uD32C\xB7\uC804\uCCB4\uD654\uBA74 \uB0B4\uC7A5, \uBBF8\uC9C0\uC815 \uADF8\uB8F9\uC740 \uC228\uAE34\uB2E4.",
|
|
3675
|
+
props: [
|
|
3676
|
+
{
|
|
3677
|
+
name: "onMemberClick",
|
|
3678
|
+
kind: "action",
|
|
3679
|
+
label: "\uC0AC\uC6D0 \uCE74\uB4DC \uD074\uB9AD",
|
|
3680
|
+
eventArg: "\uC0AC\uC6D0 \uD589(snake_case \uC6D0\uBB38 \u2014 id\xB7name\xB7grade\xB7job_title\xB7department_id \u2026)",
|
|
3681
|
+
description: "\uBE44\uC6B0\uBA74 \uC704\uC82F\uC774 /hr/personal-card/{id}\uB85C \uC9C1\uC811 \uC774\uB3D9\uD55C\uB2E4.",
|
|
3682
|
+
group: "behavior"
|
|
3683
|
+
},
|
|
3684
|
+
{
|
|
3685
|
+
name: "height",
|
|
3686
|
+
kind: "string",
|
|
3687
|
+
label: "\uCE94\uBC84\uC2A4 \uB192\uC774",
|
|
3688
|
+
default: "72vh",
|
|
3689
|
+
description: "px \uC22B\uC790 \uB610\uB294 CSS \uAE38\uC774. \uCD5C\uC18C 620px\uB294 \uC704\uC82F\uC774 \uBCF4\uC7A5\uD55C\uB2E4.",
|
|
3690
|
+
group: "appearance",
|
|
3691
|
+
advanced: true
|
|
3692
|
+
},
|
|
3693
|
+
{
|
|
3694
|
+
name: "employeesEndpoint",
|
|
3695
|
+
kind: "string",
|
|
3696
|
+
label: "\uC0AC\uC6D0 \uBAA9\uB85D \uACBD\uB85C",
|
|
3697
|
+
description: "\uC751\uB2F5\uC740 {data:[\u2026], total}. \uD589\uC5D0\uC11C id\xB7name\xB7grade\xB7job_title\xB7department_id \uB97C \uC77D\uB294\uB2E4(\uC2A4\uB124\uC774\uD06C\xB7\uCE74\uBA5C \uAD00\uC6A9 \uC218\uC6A9). \uAE30\uBCF8 '/employees'.",
|
|
3698
|
+
group: "data",
|
|
3699
|
+
advanced: true
|
|
3700
|
+
},
|
|
3701
|
+
{
|
|
3702
|
+
name: "departmentsEndpoint",
|
|
3703
|
+
kind: "string",
|
|
3704
|
+
label: "\uBD80\uC11C \uBAA9\uB85D \uACBD\uB85C",
|
|
3705
|
+
description: "\uAE30\uBCF8 '/departments?include=paths' \u2014 \uACBD\uB85C \uC815\uBCF4\uAC00 \uC788\uC5B4\uC57C \uACC4\uCE35\uC774 \uC120\uB2E4.",
|
|
3706
|
+
group: "data",
|
|
3707
|
+
advanced: true
|
|
3708
|
+
},
|
|
3709
|
+
{
|
|
3710
|
+
name: "positionsEndpoint",
|
|
3711
|
+
kind: "string",
|
|
3712
|
+
label: "\uC9C1\uC704 \uB9C8\uC2A4\uD130 \uACBD\uB85C",
|
|
3713
|
+
description: "\uC11C\uC5F4 \uC815\uB82C\uC5D0 \uC4F4\uB2E4. \uC2E4\uD328\uD574\uB3C4 \uC774\uB984\uC21C\uC73C\uB85C \uB5A8\uC5B4\uC9C4\uB2E4. \uAE30\uBCF8 '/job-positions'.",
|
|
3714
|
+
group: "data",
|
|
3715
|
+
advanced: true
|
|
3716
|
+
}
|
|
3717
|
+
],
|
|
3718
|
+
children: { accepts: false },
|
|
3719
|
+
dom: { element: "div" },
|
|
3720
|
+
preset: {
|
|
3721
|
+
component: "OrgChartBoard",
|
|
3722
|
+
props: {
|
|
3723
|
+
onMemberClick: [
|
|
3724
|
+
{ action: "setState", key: "orgMember", fromEvent: true },
|
|
3725
|
+
{
|
|
3726
|
+
action: "navigate",
|
|
3727
|
+
to: {
|
|
3728
|
+
$calc: {
|
|
3729
|
+
op: "concat",
|
|
3730
|
+
args: ["/hr/personal-card/", { $state: "orgMember.id", default: "" }]
|
|
3731
|
+
}
|
|
3732
|
+
}
|
|
3733
|
+
}
|
|
3734
|
+
]
|
|
3735
|
+
}
|
|
3736
|
+
},
|
|
3737
|
+
resize: { kind: "none" }
|
|
3738
|
+
};
|
|
3419
3739
|
var AutocompleteFieldMeta = {
|
|
3420
3740
|
name: "AutocompleteField",
|
|
3421
3741
|
label: "\uC790\uB3D9\uC644\uC131",
|
|
@@ -4833,7 +5153,10 @@ var StripMeta = {
|
|
|
4833
5153
|
resize: { kind: "none" }
|
|
4834
5154
|
};
|
|
4835
5155
|
var widgetComponentMeta = {
|
|
5156
|
+
ApprovalLineEditor: ApprovalLineEditorMeta,
|
|
5157
|
+
ApprovalOverridesEditor: ApprovalOverridesEditorMeta,
|
|
4836
5158
|
ApprovalStepper: ApprovalStepperMeta,
|
|
5159
|
+
OrgChartBoard: OrgChartBoardMeta,
|
|
4837
5160
|
RankBoard: RankBoardMeta,
|
|
4838
5161
|
AutocompleteField: AutocompleteFieldMeta,
|
|
4839
5162
|
ColumnBoard: ColumnBoardMeta,
|
|
@@ -4892,4 +5215,4 @@ function paletteGroups(catalog = allComponentMeta) {
|
|
|
4892
5215
|
})).filter((group) => group.items.length > 0);
|
|
4893
5216
|
}
|
|
4894
5217
|
|
|
4895
|
-
export { ActionsMeta, AlertMeta, ApprovalStepperMeta, AutocompleteFieldMeta, AvatarMeta, BadgeMeta, BreadcrumbMeta, ButtonMeta, CanMeta, CardMeta, ChartMeta, CheckboxMeta, ColMeta, ColumnBoardMeta, DatePickerMeta, DateRangePickerMeta, DialogMeta, DiffViewMeta, DisclosureMeta, DividerMeta, EmptyStateMeta, EventCalendarMeta, FieldMeta, ForEachMeta, FormMeta, FragmentMeta, GridMeta, IconButtonMeta, IconMeta, ImageLightboxMeta, InlineEditMeta, InputMeta, JsonFieldMeta, KeyValueListMeta, LiveClockMeta, MapPreviewMeta, OrgChartMeta, PageHeadMeta, PaginationMeta, PeriodFilterMeta, PrintSheetMeta, ProgressBarMeta, RadioMeta, RankBoardMeta, RecordSheetMeta, RemoteSearchResultsMeta, RowMeta, SDUI_CATEGORIES, SELF_AXIS_PROPS, SearchResultsMeta, SearchableMultiPickerMeta, SectionMeta, SecureScreenMeta, SegmentedControlMeta, SelectMeta, ShowMeta, SidebarNavMeta, SortHandleMeta, SortableListMeta, SpacerMeta, SpinnerMeta, StackedMeterMeta, StatCardMeta, StripMeta, SummaryTableMeta, SwitchMeta, TableMeta, TabsMeta, TagMeta, TagMultiSelectMeta, TextMeta, TextareaMeta, TimePickerMeta, TimelineMeta, ToastMeta, TooltipMeta, TreePickerMeta, TreeViewMeta, allComponentMeta, builtinComponentMeta, coreComponentMeta, dsComponentMeta, getComponentMeta, paletteGroups, richComponentMeta, slotNamesOf, widgetComponentMeta, withSelfAxis, withSelfAxisAll };
|
|
5218
|
+
export { ActionsMeta, AlertMeta, ApprovalLineEditorMeta, ApprovalOverridesEditorMeta, ApprovalStepperMeta, AutocompleteFieldMeta, AvatarMeta, BadgeMeta, BreadcrumbMeta, ButtonMeta, CanMeta, CardMeta, ChartMeta, CheckboxMeta, ColMeta, ColumnBoardMeta, DatePickerMeta, DateRangePickerMeta, DialogMeta, DiffViewMeta, DisclosureMeta, DividerMeta, EmptyStateMeta, EventCalendarMeta, FieldMeta, ForEachMeta, FormMeta, FragmentMeta, GridMeta, IconButtonMeta, IconMeta, ImageLightboxMeta, InlineEditMeta, InputMeta, JsonFieldMeta, KeyValueListMeta, LiveClockMeta, MapPreviewMeta, OrgChartBoardMeta, OrgChartMeta, PageHeadMeta, PaginationMeta, PeriodFilterMeta, PrintSheetMeta, ProgressBarMeta, RadioMeta, RankBoardMeta, RecordSheetMeta, RemoteSearchResultsMeta, RowMeta, SDUI_CATEGORIES, SELF_AXIS_PROPS, SearchResultsMeta, SearchableMultiPickerMeta, SectionMeta, SecureScreenMeta, SegmentedControlMeta, SelectMeta, ShowMeta, SidebarNavMeta, SortHandleMeta, SortableListMeta, SpacerMeta, SpinnerMeta, StackedMeterMeta, StatCardMeta, StripMeta, SummaryTableMeta, SwitchMeta, TableMeta, TabsMeta, TagMeta, TagMultiSelectMeta, TextMeta, TextareaMeta, TimePickerMeta, TimelineMeta, ToastMeta, TooltipMeta, TreePickerMeta, TreeViewMeta, allComponentMeta, builtinComponentMeta, coreComponentMeta, dsComponentMeta, getComponentMeta, paletteGroups, richComponentMeta, slotNamesOf, widgetComponentMeta, withSelfAxis, withSelfAxisAll };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { S as SduiBoxProps } from '../layout-B1QrIBm6.js';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
|
|
4
|
+
/** 저장 JSON 계약(approval-line) — 키 이름 변경 금지. */
|
|
5
|
+
interface CustomApprover {
|
|
6
|
+
id: string;
|
|
7
|
+
name: string;
|
|
8
|
+
type: 'user' | 'group';
|
|
9
|
+
}
|
|
10
|
+
/** 저장 JSON 계약(approval-line) — 키 이름 변경 금지. */
|
|
11
|
+
interface ApprovalLineStep {
|
|
12
|
+
id: string;
|
|
13
|
+
/** 없으면 백엔드가 custom으로 취급한다(마이그레이션 이관 스텝 호환). */
|
|
14
|
+
type?: 'team_leader' | 'division_head' | 'custom';
|
|
15
|
+
/** 스텝 표시명 — 백엔드가 결재 단계 설명으로 그대로 쓴다(없으면 type). */
|
|
16
|
+
name?: string;
|
|
17
|
+
customApprovers?: CustomApprover[];
|
|
18
|
+
order: number;
|
|
19
|
+
}
|
|
20
|
+
interface ApprovalLineEditorProps {
|
|
21
|
+
value: ApprovalLineStep[];
|
|
22
|
+
onChange: (steps: ApprovalLineStep[]) => void;
|
|
23
|
+
/** 직원·부서 통합 검색 경로 — GET {endpoint}?q=… (어댑터 fetch). */
|
|
24
|
+
searchEndpoint?: string;
|
|
25
|
+
/**
|
|
26
|
+
* 부서(그룹) 검색 경로 — 주면 searchEndpoint 와 **병렬로** 조회해 결과를 합친다.
|
|
27
|
+
* v2 원본이 이 모양이다: `/employees?q=` 와 `/departments?q=` 를 동시에 던져
|
|
28
|
+
* 사용자·그룹을 한 목록으로 보여 준다(approval-step-editor.tsx:167-168).
|
|
29
|
+
* 이 경로의 응답은 전부 `type:'group'` 으로 정규화한다 — 부서 행에는 type 필드가
|
|
30
|
+
* 없어 기본값(user)으로 잘못 접히기 때문이다.
|
|
31
|
+
*/
|
|
32
|
+
groupSearchEndpoint?: string;
|
|
33
|
+
/** 정적 데모 폴백 — searchEndpoint가 없을 때 로컬 검색 대상. */
|
|
34
|
+
options?: CustomApprover[];
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
}
|
|
37
|
+
declare const stepTypeIcon: (type: ApprovalLineStep["type"]) => "user" | "users" | "building-2";
|
|
38
|
+
/** 스텝 표시 라벨 — 운영자가 붙인 이름 > 유형 > 커스텀 결재자 나열(30자 말줄임). */
|
|
39
|
+
declare const stepLabel: (step: ApprovalLineStep) => string;
|
|
40
|
+
/** 바깥에서 온 `style`·`className`을 뿌리에 얹어 내보낸다 — 자기 축(폭·여백)이 닿게 하는 통로. */
|
|
41
|
+
declare const ApprovalLineEditor: React__default.FC<ApprovalLineEditorProps & SduiBoxProps>;
|
|
42
|
+
|
|
43
|
+
export { ApprovalLineEditor, type ApprovalLineEditorProps, type ApprovalLineStep, type CustomApprover, stepLabel, stepTypeIcon };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { ApprovalLineEditor, stepLabel, stepTypeIcon } from '../chunk-SAPJVLZM.js';
|
|
2
|
+
import '../chunk-BD75U73S.js';
|
|
3
|
+
import '../chunk-DVOPZFQS.js';
|
|
4
|
+
import '../chunk-EFMKWPZ3.js';
|
|
5
|
+
import '../chunk-XQPTSEJC.js';
|
|
6
|
+
import '../chunk-WIDDHR7L.js';
|
|
7
|
+
import '../chunk-SAN4IX6N.js';
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { S as SduiBoxProps } from '../layout-B1QrIBm6.js';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
import { ApprovalLineStep, CustomApprover } from './ApprovalLineEditor.js';
|
|
4
|
+
|
|
5
|
+
/** 저장 JSON 계약(approval-line) — 키 이름 변경 금지. */
|
|
6
|
+
interface ApprovalLineOverride {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
jobTitles: string[];
|
|
10
|
+
grades: string[];
|
|
11
|
+
/** 레거시 이관 키(적용 업무유형) — 편집 금지, spread로 보존만 한다. */
|
|
12
|
+
entityTypes?: string[];
|
|
13
|
+
steps: ApprovalLineStep[];
|
|
14
|
+
}
|
|
15
|
+
interface ApprovalOverridesEditorProps {
|
|
16
|
+
value: ApprovalLineOverride[];
|
|
17
|
+
onChange: (value: ApprovalLineOverride[]) => void;
|
|
18
|
+
/** 선택 가능한 직책 목록(직원 데이터에서 distinct 추출한 문자열). */
|
|
19
|
+
jobTitleOptions: string[];
|
|
20
|
+
/** 선택 가능한 직급 목록. */
|
|
21
|
+
gradeOptions: string[];
|
|
22
|
+
/**
|
|
23
|
+
* 직책·직급 옵션을 스스로 끌어올 직원 목록 경로(예: `/employees?limit=500`).
|
|
24
|
+
* v2 는 편집기가 직접 `/employees` 를 distinct 추출했다(approval-line-overrides-
|
|
25
|
+
* editor.tsx) — 같은 방식이다. 주면 응답의 `job_title`·`grade` 를 모아
|
|
26
|
+
* jobTitleOptions/gradeOptions **에 합친다**(대체가 아니라 합집합 — 정적 폴백이
|
|
27
|
+
* 캔버스 샌드박스에서 살아남아야 한다). 실패는 조용히 무시한다: 폴백 목록이
|
|
28
|
+
* 그대로 남고, 저장된 값은 withSelected 가 어차피 살린다.
|
|
29
|
+
*/
|
|
30
|
+
facetsEndpoint?: string;
|
|
31
|
+
/** 결재자 통합 검색 경로 — 중첩 결재선 편집기로 전달. */
|
|
32
|
+
searchEndpoint?: string;
|
|
33
|
+
/** 부서(그룹) 검색 경로 — 중첩 결재선 편집기로 전달. */
|
|
34
|
+
groupSearchEndpoint?: string;
|
|
35
|
+
/** 정적 데모 폴백 결재자 목록 — 중첩 결재선 편집기로 전달. */
|
|
36
|
+
searchOptions?: CustomApprover[];
|
|
37
|
+
disabled?: boolean;
|
|
38
|
+
}
|
|
39
|
+
/** 바깥에서 온 `style`·`className`을 뿌리에 얹어 내보낸다 — 자기 축(폭·여백)이 닿게 하는 통로. */
|
|
40
|
+
declare const ApprovalOverridesEditor: React__default.FC<ApprovalOverridesEditorProps & SduiBoxProps>;
|
|
41
|
+
|
|
42
|
+
export { type ApprovalLineOverride, ApprovalOverridesEditor, type ApprovalOverridesEditorProps };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { ApprovalOverridesEditor } from '../chunk-ZDRERW4G.js';
|
|
2
|
+
import '../chunk-QDEZXA34.js';
|
|
3
|
+
import '../chunk-SAPJVLZM.js';
|
|
4
|
+
import '../chunk-BD75U73S.js';
|
|
5
|
+
import '../chunk-DVOPZFQS.js';
|
|
6
|
+
import '../chunk-EFMKWPZ3.js';
|
|
7
|
+
import '../chunk-XQPTSEJC.js';
|
|
8
|
+
import '../chunk-WIDDHR7L.js';
|
|
9
|
+
import '../chunk-SAN4IX6N.js';
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { S as SduiBoxProps } from '../layout-B1QrIBm6.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* OrgChartBoard — 실데이터 조직도 보드(v2 organization-chart.tsx 1522줄 직이식).
|
|
6
|
+
*
|
|
7
|
+
* 라이브러리 OrgChart(단순 상하 트리)로는 v2 개편 화면(리더십 스택·노드 내 사원 카드·
|
|
8
|
+
* 세로쓰기 팀 라벨·세대 홀짝 레이아웃·마스터 직위 서열 정렬)을 표현할 수 없어
|
|
9
|
+
* ERP 위젯으로 옮겼다. 데이터도 스펙($state/$calc)에는 3원 조인·트리 조립 어휘가
|
|
10
|
+
* 없으므로 위젯이 스스로 불러온다(PermissionMatrixEditor의 "묶기 연산은 위젯" 원칙).
|
|
11
|
+
*
|
|
12
|
+
* 데이터 3원(전부 페이지 수집, limit=500):
|
|
13
|
+
* - GET /employees — 필수. 실패하면 화면 전체가 오류 상태.
|
|
14
|
+
* - GET /departments?include=paths — **실패 허용**: 사원의 department 참조로 그룹을 합성.
|
|
15
|
+
* - GET /job-positions — **실패 허용**: 정렬 보조일 뿐(마스터 없으면 GRADE_ORDER).
|
|
16
|
+
*
|
|
17
|
+
* v3 서버 응답은 snake_case이고 v2와 필드가 다르다(실측):
|
|
18
|
+
* - 사원: position 없음 → 직위 = `grade`, 직책 = `job_title`. groups/teamGroup 없음 →
|
|
19
|
+
* 소속 = `department_id ?? department.id`(v2 규칙의 잔여 폴백만 남음).
|
|
20
|
+
* - 부서: {id, name, parent_id, path}. 직위: {name, rank_order, sort_order, is_active}.
|
|
21
|
+
*
|
|
22
|
+
* 구성원 정렬(v2 compareMembers 그대로): 직책 서열(DUTY_ORDER) → 직위 서열
|
|
23
|
+
* (마스터 rank_order 항상 우선, 최장 포함 매칭 — "부사장"≠"사장", 한쪽만 마스터에
|
|
24
|
+
* 있으면 그쪽이 위, 둘 다 없으면 GRADE_ORDER 폴백) → level 내림차순 → 이름(ko).
|
|
25
|
+
* rank map은 미사용(is_active=false) 직위 포함 전건이다.
|
|
26
|
+
*
|
|
27
|
+
* 사원 카드 클릭 → `onMemberClick(사원 행)` — 스펙에서 setState(fromEvent)+navigate
|
|
28
|
+
* 체인으로 /hr/personal-card/{id}에 잇는다. 프롭이 없으면 location.assign 폴백.
|
|
29
|
+
*/
|
|
30
|
+
interface OrgGroupRow {
|
|
31
|
+
id: string;
|
|
32
|
+
name: string;
|
|
33
|
+
parent_id?: string | null;
|
|
34
|
+
path?: string | null;
|
|
35
|
+
}
|
|
36
|
+
interface OrgEmployeeRow {
|
|
37
|
+
id: string;
|
|
38
|
+
name: string;
|
|
39
|
+
/** 직위 문자열(직위 마스터 name의 사본) — v2의 position/grade에 해당 */
|
|
40
|
+
grade?: string | null;
|
|
41
|
+
/** 직책(팀장·본부장 등) */
|
|
42
|
+
job_title?: string | null;
|
|
43
|
+
level?: number | null;
|
|
44
|
+
department_id?: string | null;
|
|
45
|
+
department?: {
|
|
46
|
+
id?: string | null;
|
|
47
|
+
name?: string | null;
|
|
48
|
+
parent_id?: string | null;
|
|
49
|
+
} | null;
|
|
50
|
+
image?: string | null;
|
|
51
|
+
/** 이벤트 인자로 원문 행을 그대로 넘긴다(스펙이 다른 키도 쓸 수 있게) */
|
|
52
|
+
[key: string]: unknown;
|
|
53
|
+
}
|
|
54
|
+
interface OrgChartBoardProps {
|
|
55
|
+
/** 사원 카드 클릭 — 인자는 사원 행(id·name·grade·job_title·department_id …). */
|
|
56
|
+
onMemberClick?: (member: OrgEmployeeRow) => void;
|
|
57
|
+
/** 캔버스 높이(px 숫자 또는 CSS 길이). 기본 72vh(최소 620px). */
|
|
58
|
+
height?: number | string;
|
|
59
|
+
/**
|
|
60
|
+
* 사원 목록 경로. 응답은 `{data:[…], total}` 이고 행에서 읽는 키는
|
|
61
|
+
* id·name·grade·job_title·department_id 다(스네이크·카멜 양쪽 관용 수용).
|
|
62
|
+
*/
|
|
63
|
+
employeesEndpoint?: string;
|
|
64
|
+
/** 부서(그룹) 목록 경로. 경로 정보를 함께 주는 질의를 기본값에 담았다. */
|
|
65
|
+
departmentsEndpoint?: string;
|
|
66
|
+
/** 직위 마스터 경로 — 서열 정렬에 쓴다. 실패해도 이름순으로 떨어진다. */
|
|
67
|
+
positionsEndpoint?: string;
|
|
68
|
+
}
|
|
69
|
+
/** 바깥 style·className을 뿌리에 얹는다 — 자기 축(폭·여백) 통로. */
|
|
70
|
+
declare const OrgChartBoard: React.FC<OrgChartBoardProps & SduiBoxProps>;
|
|
71
|
+
|
|
72
|
+
export { OrgChartBoard, type OrgChartBoardProps, type OrgEmployeeRow, type OrgGroupRow };
|
package/dist/widgets/index.d.ts
CHANGED
|
@@ -24,6 +24,8 @@ import { PrintSheetProps } from './PrintSheet.js';
|
|
|
24
24
|
export { PrintSheet } from './PrintSheet.js';
|
|
25
25
|
import { PeriodFilterProps } from './PeriodFilter.js';
|
|
26
26
|
export { Period, PeriodFilter, PeriodMode, PeriodModeItem } from './PeriodFilter.js';
|
|
27
|
+
import { OrgChartBoardProps } from './OrgChartBoard.js';
|
|
28
|
+
export { OrgChartBoard } from './OrgChartBoard.js';
|
|
27
29
|
import { OrgChartProps } from './OrgChart.js';
|
|
28
30
|
export { OrgChart, OrgNode } from './OrgChart.js';
|
|
29
31
|
import { LiveClockProps } from './LiveClock.js';
|
|
@@ -42,10 +44,14 @@ import { DiffViewProps } from './DiffView.js';
|
|
|
42
44
|
export { DiffField, DiffList, DiffView } from './DiffView.js';
|
|
43
45
|
import { ColumnBoardProps } from './ColumnBoard.js';
|
|
44
46
|
export { ColumnBoard, ColumnBoardColumn, ColumnBoardItem, ColumnBoardTone } from './ColumnBoard.js';
|
|
45
|
-
import * as React from 'react';
|
|
46
|
-
import { S as SduiBoxProps } from '../layout-B1QrIBm6.js';
|
|
47
47
|
import { ApprovalStepperProps } from './ApprovalStepper.js';
|
|
48
48
|
export { ApprovalStepper, ApprovalStepperStep } from './ApprovalStepper.js';
|
|
49
|
+
import { ApprovalOverridesEditorProps } from './ApprovalOverridesEditor.js';
|
|
50
|
+
export { ApprovalLineOverride, ApprovalOverridesEditor } from './ApprovalOverridesEditor.js';
|
|
51
|
+
import * as React from 'react';
|
|
52
|
+
import { S as SduiBoxProps } from '../layout-B1QrIBm6.js';
|
|
53
|
+
import { ApprovalLineEditorProps } from './ApprovalLineEditor.js';
|
|
54
|
+
export { ApprovalLineEditor, ApprovalLineStep, CustomApprover } from './ApprovalLineEditor.js';
|
|
49
55
|
export { AutocompleteField, AutocompleteFieldProps, AutocompleteOption, AutocompleteSearchFn, AutocompleteSearchResult, toAutocompleteOptions } from './AutocompleteField.js';
|
|
50
56
|
|
|
51
57
|
/**
|
|
@@ -56,6 +62,8 @@ export { AutocompleteField, AutocompleteFieldProps, AutocompleteOption, Autocomp
|
|
|
56
62
|
* `SduiWidgetComponentName`이 어휘 목록이 되게 한다.
|
|
57
63
|
*/
|
|
58
64
|
declare const widgetComponents: {
|
|
65
|
+
ApprovalLineEditor: React.FC<ApprovalLineEditorProps & SduiBoxProps>;
|
|
66
|
+
ApprovalOverridesEditor: React.FC<ApprovalOverridesEditorProps & SduiBoxProps>;
|
|
59
67
|
ApprovalStepper: React.FC<ApprovalStepperProps & SduiBoxProps>;
|
|
60
68
|
ColumnBoard: React.FC<ColumnBoardProps & SduiBoxProps>;
|
|
61
69
|
DiffView: React.FC<DiffViewProps & SduiBoxProps>;
|
|
@@ -66,6 +74,7 @@ declare const widgetComponents: {
|
|
|
66
74
|
JsonField: React.FC<JsonFieldProps & SduiBoxProps>;
|
|
67
75
|
LiveClock: React.FC<LiveClockProps & SduiBoxProps>;
|
|
68
76
|
OrgChart: React.FC<OrgChartProps & SduiBoxProps>;
|
|
77
|
+
OrgChartBoard: React.FC<OrgChartBoardProps & SduiBoxProps>;
|
|
69
78
|
PeriodFilter: React.FC<PeriodFilterProps & SduiBoxProps>;
|
|
70
79
|
PrintSheet: React.FC<PrintSheetProps & SduiBoxProps>;
|
|
71
80
|
RankBoard: React.FC<RankBoardProps & SduiBoxProps>;
|
|
@@ -83,4 +92,4 @@ declare const widgetComponents: {
|
|
|
83
92
|
/** 위젯 어휘의 컴포넌트 이름 union — 메타데이터 대조에 쓴다(`@wipco/sdui/meta`). */
|
|
84
93
|
type SduiWidgetComponentName = keyof typeof widgetComponents;
|
|
85
94
|
|
|
86
|
-
export { ApprovalStepperProps, ColumnBoardProps, DiffViewProps, DisclosureProps, EventCalendarProps, ImageLightboxProps, InlineEditProps, JsonFieldProps, LiveClockProps, OrgChartProps, PeriodFilterProps, PrintSheetProps, RankBoardProps, RecordSheetProps, type SduiWidgetComponentName, SearchableMultiPickerProps, SecureScreenProps, StackedMeterProps, StripProps, SummaryTableProps, TagMultiSelectProps, TimelineProps, TreePickerProps, TreeViewProps, widgetComponents };
|
|
95
|
+
export { ApprovalLineEditorProps, ApprovalOverridesEditorProps, ApprovalStepperProps, ColumnBoardProps, DiffViewProps, DisclosureProps, EventCalendarProps, ImageLightboxProps, InlineEditProps, JsonFieldProps, LiveClockProps, OrgChartBoardProps, OrgChartProps, PeriodFilterProps, PrintSheetProps, RankBoardProps, RecordSheetProps, type SduiWidgetComponentName, SearchableMultiPickerProps, SecureScreenProps, StackedMeterProps, StripProps, SummaryTableProps, TagMultiSelectProps, TimelineProps, TreePickerProps, TreeViewProps, widgetComponents };
|