@camunda/design-system 0.4.0 → 0.4.1
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/carbon-compat/modal.d.ts +2 -2
- package/dist/carbon-compat/modal.d.ts.map +1 -1
- package/dist/carbon-compat/modal.js +61 -25
- package/dist/carbon-compat/modal.js.map +1 -1
- package/dist/carbon-compat/multi-select.d.ts +2 -2
- package/dist/carbon-compat/multi-select.d.ts.map +1 -1
- package/dist/carbon-compat/multi-select.js.map +1 -1
- package/dist/carbon-compat/progress-bar.d.ts +15 -2
- package/dist/carbon-compat/progress-bar.d.ts.map +1 -1
- package/dist/carbon-compat/progress-bar.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as React from
|
|
2
|
-
import type { ComposedModalProps as CarbonComposedModalProps, ModalFooterProps as CarbonModalFooterProps, ModalHeaderProps as CarbonModalHeaderProps, ModalProps as CarbonModalProps } from
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ComposedModalProps as CarbonComposedModalProps, ModalFooterProps as CarbonModalFooterProps, ModalHeaderProps as CarbonModalHeaderProps, ModalProps as CarbonModalProps } from "@carbon/react";
|
|
3
3
|
export type ModalProps = CarbonModalProps;
|
|
4
4
|
export type ComposedModalProps = CarbonComposedModalProps;
|
|
5
5
|
export type ModalHeaderProps = CarbonModalHeaderProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../carbon-compat/modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../carbon-compat/modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAkB/B,OAAO,KAAK,EACV,kBAAkB,IAAI,wBAAwB,EAC9C,gBAAgB,IAAI,sBAAsB,EAC1C,gBAAgB,IAAI,sBAAsB,EAC1C,UAAU,IAAI,gBAAgB,EAC/B,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,UAAU,GAAG,gBAAgB,CAAC;AAC1C,MAAM,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AACtD,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AAkBtD,iBAAS,KAAK,CAAC,KAAK,EAAE,UAAU,qBAqL/B;AAED,iBAAS,aAAa,CAAC,KAAK,EAAE,kBAAkB,qBA8C/C;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,qBAmC3C;AAED,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AACF,iBAAS,SAAS,CAChB,KAAK,EAAE,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,qBAShE;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,qBAqD3C;AAED,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import * as React from
|
|
3
|
-
import { AlertDialog,
|
|
4
|
-
import { Button
|
|
5
|
-
import { Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle, } from
|
|
6
|
-
import { cn, warnDroppedProps } from
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import { AlertDialog, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from "../src/components/ui/alert-dialog.js";
|
|
4
|
+
import { Button } from "../src/components/ui/button.js";
|
|
5
|
+
import { Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle, } from "../src/components/ui/dialog.js";
|
|
6
|
+
import { cn, warnDroppedProps } from "../src/lib/utils.js";
|
|
7
7
|
function bridgeOnOpenChange(onClose) {
|
|
8
8
|
if (!onClose)
|
|
9
9
|
return undefined;
|
|
@@ -14,46 +14,82 @@ function bridgeOnOpenChange(onClose) {
|
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
16
|
function Modal(props) {
|
|
17
|
-
const { alert, children, className, closeButtonLabel, danger, decorator, hasScrollingContent, id, isFullWidth, launcherButtonRef, loadingDescription, loadingIconDescription, loadingStatus, modalAriaLabel, modalHeading, modalLabel, onLoadingSuccess, onRequestClose, onRequestSubmit, onSecondarySubmit, open, passiveModal, preventCloseOnClickOutside, primaryButtonDisabled, primaryButtonText, secondaryButtonText, secondaryButtons, selectorPrimaryFocus, selectorsFloatingMenus, shouldSubmitOnEnter, size, slug,
|
|
18
|
-
warnDroppedProps(
|
|
19
|
-
alert,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
const { alert, children, className, closeButtonLabel, danger, decorator, hasScrollingContent, id, isFullWidth, launcherButtonRef, loadingDescription, loadingIconDescription, loadingStatus, modalAriaLabel, modalHeading, modalLabel, onLoadingSuccess, onRequestClose, onRequestSubmit, onSecondarySubmit, open, passiveModal, preventCloseOnClickOutside, primaryButtonDisabled, primaryButtonText, secondaryButtonText, secondaryButtons, selectorPrimaryFocus, selectorsFloatingMenus, shouldSubmitOnEnter, size, slug, "aria-label": ariaLabel, ...rest } = props;
|
|
18
|
+
warnDroppedProps("Modal", {
|
|
19
|
+
alert,
|
|
20
|
+
closeButtonLabel,
|
|
21
|
+
decorator,
|
|
22
|
+
hasScrollingContent,
|
|
23
|
+
isFullWidth,
|
|
24
|
+
launcherButtonRef,
|
|
25
|
+
loadingDescription,
|
|
26
|
+
loadingIconDescription,
|
|
27
|
+
loadingStatus,
|
|
28
|
+
onLoadingSuccess,
|
|
29
|
+
preventCloseOnClickOutside,
|
|
30
|
+
secondaryButtons,
|
|
31
|
+
selectorPrimaryFocus,
|
|
32
|
+
selectorsFloatingMenus,
|
|
33
|
+
shouldSubmitOnEnter,
|
|
34
|
+
size,
|
|
35
|
+
slug,
|
|
23
36
|
});
|
|
24
37
|
const onOpenChange = bridgeOnOpenChange(onRequestClose);
|
|
25
38
|
const handleSecondary = onSecondarySubmit ?? onRequestClose;
|
|
26
39
|
if (danger) {
|
|
27
|
-
return (_jsx(AlertDialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(AlertDialogContent, { id: id, "aria-label": ariaLabel ?? modalAriaLabel, className: className, ...rest, children: [(modalLabel || modalHeading) && (_jsxs(AlertDialogHeader, { children: [modalLabel ? _jsx("span", { className: "text-sm text-muted-foreground", children: modalLabel }) : null, modalHeading ? (_jsx(AlertDialogTitle, { children: modalHeading })) : (_jsx(AlertDialogTitle, { className: "sr-only", children: ariaLabel ?? modalAriaLabel ??
|
|
40
|
+
return (_jsx(AlertDialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(AlertDialogContent, { id: id, "aria-label": ariaLabel ?? modalAriaLabel, className: className, ...rest, children: [(modalLabel || modalHeading) && (_jsxs(AlertDialogHeader, { children: [modalLabel ? (_jsx("span", { className: "text-sm text-muted-foreground", children: modalLabel })) : null, modalHeading ? (_jsx(AlertDialogTitle, { children: modalHeading })) : (_jsx(AlertDialogTitle, { className: "sr-only", children: ariaLabel ?? modalAriaLabel ?? "Confirm action" }))] })), children ? (_jsx(AlertDialogDescription, { asChild: true, children: _jsx("div", { children: children }) })) : null, !passiveModal &&
|
|
41
|
+
(primaryButtonText !== undefined ||
|
|
42
|
+
secondaryButtonText !== undefined) ? (_jsxs(AlertDialogFooter, { children: [secondaryButtonText !== undefined ? (_jsx(Button, { variant: "outline", onClick: handleSecondary, children: secondaryButtonText })) : null, primaryButtonText !== undefined ? (_jsx(Button, { variant: "destructive", disabled: primaryButtonDisabled, onClick: onRequestSubmit, children: primaryButtonText })) : null] })) : null] }) }));
|
|
28
43
|
}
|
|
29
|
-
return (_jsx(Dialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(DialogContent, { id: id, "aria-label": ariaLabel ?? modalAriaLabel, className: className, ...rest, children: [(modalLabel || modalHeading) && (_jsxs(DialogHeader, { children: [modalLabel ? _jsx("span", { className: "text-sm text-muted-foreground", children: modalLabel }) : null, modalHeading ? _jsx(DialogTitle, { children: modalHeading }) : null] })), children ? _jsx("div", { children: children }) : null, !passiveModal &&
|
|
44
|
+
return (_jsx(Dialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(DialogContent, { id: id, "aria-label": ariaLabel ?? modalAriaLabel, className: className, ...rest, children: [(modalLabel || modalHeading) && (_jsxs(DialogHeader, { children: [modalLabel ? (_jsx("span", { className: "text-sm text-muted-foreground", children: modalLabel })) : null, modalHeading ? _jsx(DialogTitle, { children: modalHeading }) : null] })), children ? _jsx("div", { children: children }) : null, !passiveModal &&
|
|
45
|
+
(primaryButtonText !== undefined ||
|
|
46
|
+
secondaryButtonText !== undefined) ? (_jsxs(DialogFooter, { children: [secondaryButtonText !== undefined ? (_jsx(Button, { variant: "outline", onClick: handleSecondary, children: secondaryButtonText })) : null, primaryButtonText !== undefined ? (_jsx(Button, { variant: "default", disabled: primaryButtonDisabled, onClick: onRequestSubmit, children: primaryButtonText })) : null] })) : null] }) }));
|
|
30
47
|
}
|
|
31
48
|
function ComposedModal(props) {
|
|
32
|
-
const { children, className, containerClassName, danger, decorator, isFullWidth, launcherButtonRef, onClose, onKeyDown, open, preventCloseOnClickOutside, selectorPrimaryFocus, selectorsFloatingMenus, size, slug,
|
|
33
|
-
warnDroppedProps(
|
|
34
|
-
danger,
|
|
35
|
-
|
|
49
|
+
const { children, className, containerClassName, danger, decorator, isFullWidth, launcherButtonRef, onClose, onKeyDown, open, preventCloseOnClickOutside, selectorPrimaryFocus, selectorsFloatingMenus, size, slug, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...rest } = props;
|
|
50
|
+
warnDroppedProps("ComposedModal", {
|
|
51
|
+
danger,
|
|
52
|
+
decorator,
|
|
53
|
+
isFullWidth,
|
|
54
|
+
launcherButtonRef,
|
|
55
|
+
onKeyDown,
|
|
56
|
+
preventCloseOnClickOutside,
|
|
57
|
+
selectorPrimaryFocus,
|
|
58
|
+
selectorsFloatingMenus,
|
|
59
|
+
size,
|
|
60
|
+
slug,
|
|
36
61
|
});
|
|
37
62
|
const onOpenChange = bridgeOnOpenChange(onClose);
|
|
38
63
|
return (_jsx(Dialog, { open: open, onOpenChange: onOpenChange, children: _jsx(DialogContent, { "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, className: cn(containerClassName, className), ...rest, children: children }) }));
|
|
39
64
|
}
|
|
40
65
|
function ModalHeader(props) {
|
|
41
66
|
const { buttonOnClick, children, className, closeClassName, closeIconClassName, closeModal, iconDescription, label, labelClassName, title, titleClassName, ...rest } = props;
|
|
42
|
-
warnDroppedProps(
|
|
43
|
-
|
|
67
|
+
warnDroppedProps("ModalHeader", {
|
|
68
|
+
buttonOnClick,
|
|
69
|
+
closeClassName,
|
|
70
|
+
closeIconClassName,
|
|
71
|
+
closeModal,
|
|
72
|
+
iconDescription,
|
|
73
|
+
});
|
|
74
|
+
return (_jsxs(DialogHeader, { className: className, ...rest, children: [label !== undefined ? (_jsx("span", { className: cn("text-sm text-muted-foreground", labelClassName), children: label })) : null, title !== undefined ? (_jsx(DialogTitle, { className: titleClassName, children: title })) : null, children] }));
|
|
44
75
|
}
|
|
45
76
|
function ModalBody(props) {
|
|
46
77
|
const { children, className, hasForm, hasScrollingContent, ...rest } = props;
|
|
47
|
-
warnDroppedProps(
|
|
48
|
-
return _jsx("div", { className: cn(
|
|
78
|
+
warnDroppedProps("ModalBody", { hasForm, hasScrollingContent });
|
|
79
|
+
return (_jsx("div", { className: cn("grid gap-4", className), ...rest, children: children }));
|
|
49
80
|
}
|
|
50
81
|
function ModalFooter(props) {
|
|
51
82
|
const { children, className, closeModal, danger, inputref, loadingDescription, loadingIconDescription, loadingStatus, onLoadingSuccess, onRequestClose, onRequestSubmit, primaryButtonDisabled, primaryButtonText, primaryClassName, secondaryButtonText, secondaryButtons, secondaryClassName, } = props;
|
|
52
|
-
warnDroppedProps(
|
|
53
|
-
closeModal,
|
|
54
|
-
|
|
83
|
+
warnDroppedProps("ModalFooter", {
|
|
84
|
+
closeModal,
|
|
85
|
+
inputref,
|
|
86
|
+
loadingDescription,
|
|
87
|
+
loadingIconDescription,
|
|
88
|
+
loadingStatus,
|
|
89
|
+
onLoadingSuccess,
|
|
90
|
+
secondaryButtons,
|
|
55
91
|
});
|
|
56
|
-
return (_jsxs(DialogFooter, { className: className, children: [secondaryButtonText !== undefined ? (_jsx(Button, { variant: "outline", className: secondaryClassName, onClick: onRequestClose, children: secondaryButtonText })) : null, primaryButtonText !== undefined ? (_jsx(Button, { variant: danger ?
|
|
92
|
+
return (_jsxs(DialogFooter, { className: className, children: [secondaryButtonText !== undefined ? (_jsx(Button, { variant: "outline", className: secondaryClassName, onClick: onRequestClose, children: secondaryButtonText })) : null, primaryButtonText !== undefined ? (_jsx(Button, { variant: danger ? "destructive" : "default", className: primaryClassName, disabled: primaryButtonDisabled, onClick: onRequestSubmit, children: primaryButtonText })) : null, children] }));
|
|
57
93
|
}
|
|
58
94
|
export { ComposedModal, Modal, ModalBody, ModalFooter, ModalHeader };
|
|
59
95
|
//# sourceMappingURL=modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal.js","sourceRoot":"","sources":["../../carbon-compat/modal.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"modal.js","sourceRoot":"","sources":["../../carbon-compat/modal.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAaxD,SAAS,kBAAkB,CACzB,OAIa;IAEb,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,CAAC,IAAa,EAAE,EAAE;QACvB,IAAI,IAAI;YAAE,OAAO;QAChB,OAA6C,CAC5C,EAAmC,CACpC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,KAAiB;IAC9B,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,EAAE,EACF,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,IAAI,EACJ,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,IAAI,EACJ,IAAI,EACJ,YAAY,EAAE,SAAS,EACvB,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,gBAAgB,CAAC,OAAO,EAAE;QACxB,KAAK;QACL,gBAAgB;QAChB,SAAS;QACT,mBAAmB;QACnB,WAAW;QACX,iBAAiB;QACjB,kBAAkB;QAClB,sBAAsB;QACtB,aAAa;QACb,gBAAgB;QAChB,0BAA0B;QAC1B,gBAAgB;QAChB,oBAAoB;QACpB,sBAAsB;QACtB,mBAAmB;QACnB,IAAI;QACJ,IAAI;KACL,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;IACxD,MAAM,eAAe,GAAG,iBAAiB,IAAI,cAAc,CAAC;IAE5D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CACL,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,YACjD,MAAC,kBAAkB,IACjB,EAAE,EAAE,EAAE,gBACM,SAAS,IAAI,cAAc,EACvC,SAAS,EAAE,SAAS,KACf,IAAwD,aAE5D,CAAC,UAAU,IAAI,YAAY,CAAC,IAAI,CAC/B,MAAC,iBAAiB,eACf,UAAU,CAAC,CAAC,CAAC,CACZ,eAAM,SAAS,EAAC,+BAA+B,YAC5C,UAAU,GACN,CACR,CAAC,CAAC,CAAC,IAAI,EACP,YAAY,CAAC,CAAC,CAAC,CACd,KAAC,gBAAgB,cAAE,YAAY,GAAoB,CACpD,CAAC,CAAC,CAAC,CACF,KAAC,gBAAgB,IAAC,SAAS,EAAC,SAAS,YAClC,SAAS,IAAI,cAAc,IAAI,gBAAgB,GAC/B,CACpB,IACiB,CACrB,EACA,QAAQ,CAAC,CAAC,CAAC,CACV,KAAC,sBAAsB,IAAC,OAAO,kBAC7B,wBAAM,QAAQ,GAAO,GACE,CAC1B,CAAC,CAAC,CAAC,IAAI,EACP,CAAC,YAAY;wBACd,CAAC,iBAAiB,KAAK,SAAS;4BAC9B,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CACrC,MAAC,iBAAiB,eAUf,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CACnC,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,OAAO,EACL,eAA6D,YAG9D,mBAAmB,GACb,CACV,CAAC,CAAC,CAAC,IAAI,EACP,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CACjC,KAAC,MAAM,IACL,OAAO,EAAC,aAAa,EACrB,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EACL,eAA6D,YAG9D,iBAAiB,GACX,CACV,CAAC,CAAC,CAAC,IAAI,IACU,CACrB,CAAC,CAAC,CAAC,IAAI,IACW,GACT,CACf,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,MAAM,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,YAC5C,MAAC,aAAa,IACZ,EAAE,EAAE,EAAE,gBACM,SAAS,IAAI,cAAc,EACvC,SAAS,EAAE,SAAS,KACf,IAAmD,aAEvD,CAAC,UAAU,IAAI,YAAY,CAAC,IAAI,CAC/B,MAAC,YAAY,eACV,UAAU,CAAC,CAAC,CAAC,CACZ,eAAM,SAAS,EAAC,+BAA+B,YAC5C,UAAU,GACN,CACR,CAAC,CAAC,CAAC,IAAI,EACP,YAAY,CAAC,CAAC,CAAC,KAAC,WAAW,cAAE,YAAY,GAAe,CAAC,CAAC,CAAC,IAAI,IACnD,CAChB,EACA,QAAQ,CAAC,CAAC,CAAC,wBAAM,QAAQ,GAAO,CAAC,CAAC,CAAC,IAAI,EACvC,CAAC,YAAY;oBACd,CAAC,iBAAiB,KAAK,SAAS;wBAC9B,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CACrC,MAAC,YAAY,eACV,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CACnC,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,OAAO,EACL,eAA6D,YAG9D,mBAAmB,GACb,CACV,CAAC,CAAC,CAAC,IAAI,EACP,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CACjC,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EACL,eAA6D,YAG9D,iBAAiB,GACX,CACV,CAAC,CAAC,CAAC,IAAI,IACK,CAChB,CAAC,CAAC,CAAC,IAAI,IACM,GACT,CACV,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAyB;IAC9C,MAAM,EACJ,QAAQ,EACR,SAAS,EACT,kBAAkB,EAClB,MAAM,EACN,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,IAAI,EACJ,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,IAAI,EACJ,IAAI,EACJ,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IACV,gBAAgB,CAAC,eAAe,EAAE;QAChC,MAAM;QACN,SAAS;QACT,WAAW;QACX,iBAAiB;QACjB,SAAS;QACT,0BAA0B;QAC1B,oBAAoB;QACpB,sBAAsB;QACtB,IAAI;QACJ,IAAI;KACL,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACjD,OAAO,CACL,KAAC,MAAM,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,YAC5C,KAAC,aAAa,kBACA,SAAS,qBACJ,cAAc,EAC/B,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,SAAS,CAAC,KACvC,IAAmD,YAEvD,QAAQ,GACK,GACT,CACV,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,EACJ,aAAa,EACb,QAAQ,EACR,SAAS,EACT,cAAc,EACd,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,KAAK,EACL,cAAc,EACd,KAAK,EACL,cAAc,EACd,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IACV,gBAAgB,CAAC,aAAa,EAAE;QAC9B,aAAa;QACb,cAAc;QACd,kBAAkB;QAClB,UAAU;QACV,eAAe;KAChB,CAAC,CAAC;IACH,OAAO,CACL,MAAC,YAAY,IAAC,SAAS,EAAE,SAAS,KAAM,IAAI,aACzC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CACrB,eAAM,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,cAAc,CAAC,YACjE,KAAK,GACD,CACR,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CACrB,KAAC,WAAW,IAAC,SAAS,EAAE,cAAc,YAAG,KAAK,GAAe,CAC9D,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,IACI,CAChB,CAAC;AACJ,CAAC;AAQD,SAAS,SAAS,CAChB,KAA+D;IAE/D,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAC7E,gBAAgB,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAChE,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,KAAM,IAAI,YAClD,QAAQ,GACL,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,EACJ,QAAQ,EACR,SAAS,EACT,UAAU,EACV,MAAM,EACN,QAAQ,EACR,kBAAkB,EAClB,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,GACnB,GAAG,KAAK,CAAC;IACV,gBAAgB,CAAC,aAAa,EAAE;QAC9B,UAAU;QACV,QAAQ;QACR,kBAAkB;QAClB,sBAAsB;QACtB,aAAa;QACb,gBAAgB;QAChB,gBAAgB;KACjB,CAAC,CAAC;IACH,OAAO,CACL,MAAC,YAAY,IAAC,SAAS,EAAE,SAAS,aAC/B,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,CACnC,KAAC,MAAM,IACL,OAAO,EAAC,SAAS,EACjB,SAAS,EAAE,kBAAkB,EAC7B,OAAO,EAAE,cAAc,YAEtB,mBAAmB,GACb,CACV,CAAC,CAAC,CAAC,IAAI,EACP,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,CACjC,KAAC,MAAM,IACL,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,EAC3C,SAAS,EAAE,gBAAgB,EAC3B,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,eAAe,YAEvB,iBAAiB,GACX,CACV,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,IACI,CAChB,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
type AnyItem = Record<string, unknown>;
|
|
3
|
-
export interface MultiSelectProps<ItemType = AnyItem> {
|
|
2
|
+
type AnyItem = string | Record<string, unknown>;
|
|
3
|
+
export interface MultiSelectProps<ItemType extends AnyItem = AnyItem> {
|
|
4
4
|
id?: string;
|
|
5
5
|
items: ItemType[];
|
|
6
6
|
itemToString?: (item: ItemType | null) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-select.d.ts","sourceRoot":"","sources":["../../carbon-compat/multi-select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"multi-select.d.ts","sourceRoot":"","sources":["../../carbon-compat/multi-select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAGhD,MAAM,WAAW,gBAAgB,CAAC,QAAQ,SAAS,OAAO,GAAG,OAAO;IAClE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,KAAK,MAAM,CAAC;IACjD,oBAAoB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,aAAa,EAAE,QAAQ,EAAE,CAAA;KAAE,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAWD,iBAAS,WAAW,CAAC,QAAQ,SAAS,OAAO,EAAE,EAC7C,EAAE,EACF,KAAK,EACL,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,QAAQ,EACR,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,YAAY,EACzB,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,WAAW,EACvB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,KAAK,EACX,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,EACrB,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,OAAO,EACf,cAAc,EAAE,eAAe,EAC/B,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,kBAAkB,EACrC,cAAc,EAAE,eAAe,EAC/B,eAAe,EAAE,gBAAgB,EACjC,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,EACrB,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,gBAAgB,EAC3B,GAAG,IAAI,EACR,EAAE,gBAAgB,CAAC,QAAQ,CAAC,qBAyD5B;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-select.js","sourceRoot":"","sources":["../../carbon-compat/multi-select.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"multi-select.js","sourceRoot":"","sources":["../../carbon-compat/multi-select.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAyCjF,SAAS,mBAAmB,CAAC,IAAoB;IAC/C,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC;IACzE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAED,6FAA6F;AAC7F,0GAA0G;AAC1G,SAAS,WAAW,CAA2B,EAC7C,EAAE,EACF,KAAK,EACL,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,QAAQ,EACR,OAAO,EAAE,QAAQ,EACjB,WAAW,EAAE,YAAY,EACzB,IAAI,EAAE,KAAK,EACX,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,WAAW,EACvB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,KAAK,EACX,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,EACrB,YAAY,EAAE,aAAa,EAC3B,MAAM,EAAE,OAAO,EACf,cAAc,EAAE,eAAe,EAC/B,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,kBAAkB,EACrC,cAAc,EAAE,eAAe,EAC/B,eAAe,EAAE,gBAAgB,EACjC,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,EACrB,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,gBAAgB,EAC3B,GAAG,IAAI,EACoB;IAC3B,gBAAgB,CAAC,aAAa,EAAE;QAC9B,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,YAAY;QACzB,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,WAAW;QACvB,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,UAAU;QACrB,SAAS,EAAE,UAAU;QACrB,YAAY,EAAE,aAAa;QAC3B,MAAM,EAAE,OAAO;QACf,cAAc,EAAE,eAAe;QAC/B,IAAI,EAAE,KAAK;QACX,iBAAiB,EAAE,kBAAkB;QACrC,cAAc,EAAE,eAAe;QAC/B,GAAI,IAAgC;KACrC,CAAC,CAAC;IAEH,MAAM,QAAQ,GACZ,YAAY;QACX,mBAAoE,CAAC;IAExE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC;QACrB,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC;KACtB,CAAC,CAAC,CAAC;IAEJ,MAAM,YAAY,GAAG,oBAAoB,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzE,SAAS,iBAAiB,CAAC,MAAgB;QACzC,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,aAAa,GAAG,MAAM;aACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aACtD,MAAM,CAAC,CAAC,IAAI,EAAoB,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;QAC1D,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,qBAAqB,aACjC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CACzB,gBAAO,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,qBAAqB,YAChD,SAAS,GACJ,CACT,CAAC,CAAC,CAAC,IAAI,EACR,KAAC,aAAa,IACZ,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,SAAS,EAClB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,iBAAiB,EAChC,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,KAAK,GACjB,IACE,CACP,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1,5 +1,18 @@
|
|
|
1
|
-
import
|
|
2
|
-
export type
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
export type ProgressBarStatus = "active" | "finished" | "error";
|
|
3
|
+
export type ProgressBarSize = "small" | "big";
|
|
4
|
+
export type ProgressBarType = "default" | "inline" | "indented";
|
|
5
|
+
export interface ProgressBarProps {
|
|
6
|
+
className?: string;
|
|
7
|
+
helperText?: ReactNode;
|
|
8
|
+
hideLabel?: boolean;
|
|
9
|
+
label?: ReactNode;
|
|
10
|
+
max?: number;
|
|
11
|
+
size?: ProgressBarSize;
|
|
12
|
+
status?: ProgressBarStatus;
|
|
13
|
+
type?: ProgressBarType;
|
|
14
|
+
value?: number;
|
|
15
|
+
}
|
|
3
16
|
/**
|
|
4
17
|
* ProgressBar — Carbon-shaped adapter wrapping shadcn `Progress`.
|
|
5
18
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-bar.d.ts","sourceRoot":"","sources":["../../carbon-compat/progress-bar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"progress-bar.d.ts","sourceRoot":"","sources":["../../carbon-compat/progress-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAU9C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;AAChE,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,KAAK,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEhE,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;GAaG;AACH,iBAAS,WAAW,CAAC,EACnB,KAAK,EACL,GAAS,EACT,KAAK,EACL,UAAU,EACV,SAAS,EACT,IAAY,EACZ,MAAiB,EACjB,IAAI,EACJ,SAAS,GACV,EAAE,gBAAgB,+BAkClB;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-bar.js","sourceRoot":"","sources":["../../carbon-compat/progress-bar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"progress-bar.js","sourceRoot":"","sources":["../../carbon-compat/progress-bar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAkB,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAuBxD;;;;;;;;;;;;;GAaG;AACH,SAAS,WAAW,CAAC,EACnB,KAAK,EACL,GAAG,GAAG,GAAG,EACT,KAAK,EACL,UAAU,EACV,SAAS,EACT,IAAI,GAAG,KAAK,EACZ,MAAM,GAAG,QAAQ,EACjB,IAAI,EACJ,SAAS,GACQ;IACjB,gBAAgB,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,UAAU,GACd,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IAExB,OAAO,CACL,4BACY,4BAA4B,iBACzB,MAAM,EACnB,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,aAE/C,eACE,EAAE,EAAE,OAAO,EACX,SAAS,EAAE,EAAE,CACX,qCAAqC,EACrC,SAAS,IAAI,SAAS,CACvB,YAEA,KAAK,GACD,EACP,KAAC,QAAQ,IACP,KAAK,EAAE,UAAU,qBACA,OAAO,EACxB,SAAS,EAAE,EAAE,CACX,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAChC,MAAM,KAAK,OAAO,IAAI,mBAAmB,CAC1C,GACD,EACD,UAAU,IAAI,CACb,eAAM,SAAS,EAAC,+BAA+B,YAAE,UAAU,GAAQ,CACpE,IACG,CACP,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camunda/design-system",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "Camunda's AI-first design system. shadcn + Tailwind components, design tokens aligned to Camunda's identity, and AI tooling for component authoring + migration.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
"@changesets/changelog-github": "^0.7.0",
|
|
107
107
|
"@changesets/cli": "^2.31.0",
|
|
108
108
|
"@eslint/js": "9.39.4",
|
|
109
|
-
"@playwright/test": "
|
|
109
|
+
"@playwright/test": "1.60.0",
|
|
110
110
|
"@storybook/addon-a11y": "10.4.1",
|
|
111
111
|
"@storybook/addon-docs": "10.4.1",
|
|
112
112
|
"@storybook/addon-links": "10.4.1",
|