@cerberus-design/react 0.10.4 → 0.11.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/build/legacy/_tsup-dts-rollup.d.cts +244 -2
- package/build/legacy/components/Admonition.cjs +419 -0
- package/build/legacy/components/Admonition.cjs.map +1 -0
- package/build/legacy/components/AnimatingUploadIcon.cjs +124 -0
- package/build/legacy/components/AnimatingUploadIcon.cjs.map +1 -0
- package/build/legacy/components/Avatar.cjs +110 -13
- package/build/legacy/components/Avatar.cjs.map +1 -1
- package/build/legacy/components/Checkbox.cjs +107 -10
- package/build/legacy/components/Checkbox.cjs.map +1 -1
- package/build/legacy/components/CircularProgress.cjs +19 -5
- package/build/legacy/components/CircularProgress.cjs.map +1 -1
- package/build/legacy/components/Fieldset.cjs +66 -0
- package/build/legacy/components/Fieldset.cjs.map +1 -0
- package/build/legacy/components/FieldsetLabel.cjs +49 -0
- package/build/legacy/components/FieldsetLabel.cjs.map +1 -0
- package/build/legacy/components/FileStatus.cjs +138 -39
- package/build/legacy/components/FileStatus.cjs.map +1 -1
- package/build/legacy/components/FileUploader.cjs +120 -22
- package/build/legacy/components/FileUploader.cjs.map +1 -1
- package/build/legacy/components/Input.cjs +108 -11
- package/build/legacy/components/Input.cjs.map +1 -1
- package/build/legacy/components/Label.cjs +1 -1
- package/build/legacy/components/Label.cjs.map +1 -1
- package/build/legacy/components/Legend.cjs +95 -0
- package/build/legacy/components/Legend.cjs.map +1 -0
- package/build/legacy/components/ModalHeader.cjs +2 -2
- package/build/legacy/components/ModalHeader.cjs.map +1 -1
- package/build/legacy/components/Notification.cjs +109 -12
- package/build/legacy/components/Notification.cjs.map +1 -1
- package/build/legacy/components/Radio.cjs +27 -14
- package/build/legacy/components/Radio.cjs.map +1 -1
- package/build/legacy/components/Select.cjs +111 -14
- package/build/legacy/components/Select.cjs.map +1 -1
- package/build/legacy/components/Tag.cjs +106 -9
- package/build/legacy/components/Tag.cjs.map +1 -1
- package/build/legacy/components/Th.cjs +4 -1
- package/build/legacy/components/Th.cjs.map +1 -1
- package/build/legacy/components/Toggle.cjs +108 -11
- package/build/legacy/components/Toggle.cjs.map +1 -1
- package/build/legacy/config/cerbIcons.cjs +102 -5
- package/build/legacy/config/cerbIcons.cjs.map +1 -1
- package/build/legacy/config/defineIcons.cjs +102 -5
- package/build/legacy/config/defineIcons.cjs.map +1 -1
- package/build/legacy/context/confirm-modal.cjs +141 -40
- package/build/legacy/context/confirm-modal.cjs.map +1 -1
- package/build/legacy/context/notification-center.cjs +129 -32
- package/build/legacy/context/notification-center.cjs.map +1 -1
- package/build/legacy/context/prompt-modal.cjs +178 -66
- package/build/legacy/context/prompt-modal.cjs.map +1 -1
- package/build/legacy/hooks/useModal.cjs +6 -2
- package/build/legacy/hooks/useModal.cjs.map +1 -1
- package/build/legacy/index.cjs +793 -442
- package/build/legacy/index.cjs.map +1 -1
- package/build/modern/_tsup-dts-rollup.d.ts +244 -2
- package/build/modern/{chunk-S7XGIQY6.js → chunk-243VUIA6.js} +2 -2
- package/build/modern/{chunk-LKFXUM3Z.js → chunk-3NE6C66J.js} +36 -25
- package/build/modern/{chunk-LKFXUM3Z.js.map → chunk-3NE6C66J.js.map} +1 -1
- package/build/modern/chunk-3ZDFQO25.js +31 -0
- package/build/modern/chunk-3ZDFQO25.js.map +1 -0
- package/build/modern/{chunk-YLPSE5Z2.js → chunk-6QHOKCV3.js} +11 -6
- package/build/modern/chunk-6QHOKCV3.js.map +1 -0
- package/build/modern/chunk-6TTN2JMY.js +54 -0
- package/build/modern/chunk-6TTN2JMY.js.map +1 -0
- package/build/modern/{chunk-OW62FLJ6.js → chunk-7T3JIGM7.js} +8 -4
- package/build/modern/chunk-7T3JIGM7.js.map +1 -0
- package/build/modern/{chunk-7K6PZBHN.js → chunk-CO4BKT7K.js} +5 -2
- package/build/modern/{chunk-7K6PZBHN.js.map → chunk-CO4BKT7K.js.map} +1 -1
- package/build/modern/{chunk-NBG2OSYI.js → chunk-FT7DFRHQ.js} +2 -2
- package/build/modern/chunk-FTPZHG6J.js +46 -0
- package/build/modern/{chunk-LJYCFFX7.js.map → chunk-FTPZHG6J.js.map} +1 -1
- package/build/modern/{chunk-JCGWTIR4.js → chunk-HCB5NQ5J.js} +5 -4
- package/build/modern/chunk-HCB5NQ5J.js.map +1 -0
- package/build/modern/chunk-HVKM54BA.js +100 -0
- package/build/modern/chunk-HVKM54BA.js.map +1 -0
- package/build/modern/{chunk-CMUFJU4S.js → chunk-KLUBAM4U.js} +2 -2
- package/build/modern/{chunk-AUAPBPGW.js → chunk-MDIUFBDX.js} +2 -2
- package/build/modern/{chunk-I35HMGJQ.js → chunk-NMF2HYWO.js} +2 -2
- package/build/modern/{chunk-I35HMGJQ.js.map → chunk-NMF2HYWO.js.map} +1 -1
- package/build/modern/{chunk-O6JYYVO7.js → chunk-PA5EB7EO.js} +2 -2
- package/build/modern/chunk-PZAZKQMO.js +25 -0
- package/build/modern/chunk-PZAZKQMO.js.map +1 -0
- package/build/modern/{chunk-EZNGCXVJ.js → chunk-RDQHHCFR.js} +5 -5
- package/build/modern/{chunk-BDCFYW34.js → chunk-TMR7JGMP.js} +12 -9
- package/build/modern/chunk-TMR7JGMP.js.map +1 -0
- package/build/modern/{chunk-WZOYPFUU.js → chunk-UJKS4DDN.js} +2 -2
- package/build/modern/{chunk-WLEX22KS.js → chunk-ULYQLKWA.js} +3 -3
- package/build/modern/{chunk-WLEX22KS.js.map → chunk-ULYQLKWA.js.map} +1 -1
- package/build/modern/{chunk-6YUB3ITX.js → chunk-X4Y4WTRU.js} +10 -10
- package/build/modern/{chunk-UXHAFEBA.js → chunk-YMJMB6OP.js} +5 -3
- package/build/modern/chunk-YMJMB6OP.js.map +1 -0
- package/build/modern/{chunk-GMG3B34U.js → chunk-YWCTMLLO.js} +2 -2
- package/build/modern/chunk-ZW3FFE37.js +138 -0
- package/build/modern/chunk-ZW3FFE37.js.map +1 -0
- package/build/modern/{chunk-477G5ZEL.js → chunk-ZX6DBC2Z.js} +2 -2
- package/build/modern/components/Admonition.js +17 -0
- package/build/modern/components/Admonition.js.map +1 -0
- package/build/modern/components/AnimatingUploadIcon.js +7 -0
- package/build/modern/components/AnimatingUploadIcon.js.map +1 -0
- package/build/modern/components/Avatar.js +4 -3
- package/build/modern/components/Checkbox.js +4 -3
- package/build/modern/components/CircularProgress.js +2 -1
- package/build/modern/components/Fieldset.js +9 -0
- package/build/modern/components/Fieldset.js.map +1 -0
- package/build/modern/components/FieldsetLabel.js +7 -0
- package/build/modern/components/FieldsetLabel.js.map +1 -0
- package/build/modern/components/FileStatus.js +5 -4
- package/build/modern/components/FileUploader.js +5 -4
- package/build/modern/components/Input.js +4 -3
- package/build/modern/components/Label.js +1 -1
- package/build/modern/components/Legend.js +10 -0
- package/build/modern/components/Legend.js.map +1 -0
- package/build/modern/components/ModalHeader.js +1 -1
- package/build/modern/components/Notification.js +4 -3
- package/build/modern/components/Radio.js +1 -1
- package/build/modern/components/Select.js +4 -3
- package/build/modern/components/Tag.js +4 -3
- package/build/modern/components/Th.js +1 -1
- package/build/modern/components/Toggle.js +4 -3
- package/build/modern/config/cerbIcons.js +2 -1
- package/build/modern/config/defineIcons.js +3 -2
- package/build/modern/context/confirm-modal.js +8 -7
- package/build/modern/context/notification-center.js +6 -5
- package/build/modern/context/prompt-modal.js +10 -9
- package/build/modern/hooks/useModal.js +1 -1
- package/build/modern/index.js +86 -65
- package/build/modern/index.js.map +1 -1
- package/package.json +3 -3
- package/src/components/Admonition.tsx +186 -0
- package/src/components/AnimatingUploadIcon.tsx +83 -0
- package/src/components/CircularProgress.tsx +20 -12
- package/src/components/Fieldset.tsx +65 -0
- package/src/components/FieldsetLabel.tsx +59 -0
- package/src/components/FileStatus.tsx +2 -0
- package/src/components/FileUploader.tsx +6 -1
- package/src/components/Label.tsx +1 -1
- package/src/components/Legend.tsx +87 -0
- package/src/components/ModalHeader.tsx +2 -2
- package/src/components/Radio.tsx +10 -1
- package/src/components/Th.tsx +3 -0
- package/src/config/cerbIcons.ts +10 -8
- package/src/context/prompt-modal.tsx +8 -1
- package/src/hooks/useModal.ts +19 -4
- package/src/index.ts +4 -0
- package/build/modern/chunk-BDCFYW34.js.map +0 -1
- package/build/modern/chunk-JCGWTIR4.js.map +0 -1
- package/build/modern/chunk-LJYCFFX7.js +0 -33
- package/build/modern/chunk-OW62FLJ6.js.map +0 -1
- package/build/modern/chunk-UXHAFEBA.js.map +0 -1
- package/build/modern/chunk-YLPSE5Z2.js.map +0 -1
- /package/build/modern/{chunk-S7XGIQY6.js.map → chunk-243VUIA6.js.map} +0 -0
- /package/build/modern/{chunk-NBG2OSYI.js.map → chunk-FT7DFRHQ.js.map} +0 -0
- /package/build/modern/{chunk-CMUFJU4S.js.map → chunk-KLUBAM4U.js.map} +0 -0
- /package/build/modern/{chunk-AUAPBPGW.js.map → chunk-MDIUFBDX.js.map} +0 -0
- /package/build/modern/{chunk-O6JYYVO7.js.map → chunk-PA5EB7EO.js.map} +0 -0
- /package/build/modern/{chunk-EZNGCXVJ.js.map → chunk-RDQHHCFR.js.map} +0 -0
- /package/build/modern/{chunk-WZOYPFUU.js.map → chunk-UJKS4DDN.js.map} +0 -0
- /package/build/modern/{chunk-6YUB3ITX.js.map → chunk-X4Y4WTRU.js.map} +0 -0
- /package/build/modern/{chunk-GMG3B34U.js.map → chunk-YWCTMLLO.js.map} +0 -0
- /package/build/modern/{chunk-477G5ZEL.js.map → chunk-ZX6DBC2Z.js.map} +0 -0
|
@@ -62,6 +62,102 @@ function IndeterminateIcon(props) {
|
|
|
62
62
|
);
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
+
// src/components/AnimatingUploadIcon.tsx
|
|
66
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
67
|
+
function AnimatingUploadIcon(props) {
|
|
68
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
69
|
+
"svg",
|
|
70
|
+
{
|
|
71
|
+
"aria-hidden": "true",
|
|
72
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
73
|
+
width: props.size ?? "1em",
|
|
74
|
+
height: props.size ?? "1em",
|
|
75
|
+
viewBox: "0 0 24 24",
|
|
76
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
77
|
+
"g",
|
|
78
|
+
{
|
|
79
|
+
fill: "none",
|
|
80
|
+
stroke: "currentColor",
|
|
81
|
+
strokeLinecap: "square",
|
|
82
|
+
strokeLinejoin: "round",
|
|
83
|
+
strokeWidth: 1.5,
|
|
84
|
+
children: [
|
|
85
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
86
|
+
"path",
|
|
87
|
+
{
|
|
88
|
+
"data-name": "animating-trail",
|
|
89
|
+
strokeDasharray: "2 4",
|
|
90
|
+
strokeDashoffset: 6,
|
|
91
|
+
d: "M12 21c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9",
|
|
92
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
93
|
+
"animate",
|
|
94
|
+
{
|
|
95
|
+
attributeName: "stroke-dashoffset",
|
|
96
|
+
dur: "0.45s",
|
|
97
|
+
repeatCount: "indefinite",
|
|
98
|
+
values: "6;0"
|
|
99
|
+
}
|
|
100
|
+
)
|
|
101
|
+
}
|
|
102
|
+
),
|
|
103
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
104
|
+
"path",
|
|
105
|
+
{
|
|
106
|
+
"data-name": "half-circle",
|
|
107
|
+
strokeDasharray: 32,
|
|
108
|
+
strokeDashoffset: 32,
|
|
109
|
+
d: "M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9",
|
|
110
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
111
|
+
"animate",
|
|
112
|
+
{
|
|
113
|
+
fill: "freeze",
|
|
114
|
+
attributeName: "stroke-dashoffset",
|
|
115
|
+
begin: "0.075s",
|
|
116
|
+
dur: "0.3s",
|
|
117
|
+
values: "32;0"
|
|
118
|
+
}
|
|
119
|
+
)
|
|
120
|
+
}
|
|
121
|
+
),
|
|
122
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
123
|
+
"svg",
|
|
124
|
+
{
|
|
125
|
+
"aria-hidden": "true",
|
|
126
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
127
|
+
width: "0.8em",
|
|
128
|
+
height: "0.8em",
|
|
129
|
+
x: "27%",
|
|
130
|
+
y: "27%",
|
|
131
|
+
viewBox: "0 0 24 24",
|
|
132
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
133
|
+
"polygon",
|
|
134
|
+
{
|
|
135
|
+
fill: "currentColor",
|
|
136
|
+
stroke: "currentColor",
|
|
137
|
+
strokeWidth: 0.8,
|
|
138
|
+
opacity: "1",
|
|
139
|
+
points: "3.7,6.7 7.5,2.9 7.5,15 8.5,15 8.5,2.9 12.3,6.7 13,6 8,1 3,6 ",
|
|
140
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
141
|
+
"animate",
|
|
142
|
+
{
|
|
143
|
+
fill: "freeze",
|
|
144
|
+
attributeName: "opacity",
|
|
145
|
+
values: "1;0;1",
|
|
146
|
+
dur: "2s",
|
|
147
|
+
repeatCount: "indefinite"
|
|
148
|
+
}
|
|
149
|
+
)
|
|
150
|
+
}
|
|
151
|
+
)
|
|
152
|
+
}
|
|
153
|
+
)
|
|
154
|
+
]
|
|
155
|
+
}
|
|
156
|
+
)
|
|
157
|
+
}
|
|
158
|
+
);
|
|
159
|
+
}
|
|
160
|
+
|
|
65
161
|
// src/config/cerbIcons.ts
|
|
66
162
|
var defaultIcons = {
|
|
67
163
|
avatar: import_icons.UserFilled,
|
|
@@ -70,12 +166,13 @@ var defaultIcons = {
|
|
|
70
166
|
confirmModal: import_icons.Information,
|
|
71
167
|
delete: import_icons.TrashCan,
|
|
72
168
|
promptModal: import_icons.Information,
|
|
73
|
-
|
|
169
|
+
waitingFileUploader: import_icons.CloudUpload,
|
|
170
|
+
fileUploader: AnimatingUploadIcon,
|
|
74
171
|
indeterminate: IndeterminateIcon,
|
|
75
|
-
infoNotification: import_icons.
|
|
76
|
-
successNotification: import_icons.
|
|
77
|
-
warningNotification: import_icons.
|
|
78
|
-
dangerNotification: import_icons.
|
|
172
|
+
infoNotification: import_icons.Information,
|
|
173
|
+
successNotification: import_icons.CheckmarkOutline,
|
|
174
|
+
warningNotification: import_icons.WarningAlt,
|
|
175
|
+
dangerNotification: import_icons.WarningFilled,
|
|
79
176
|
invalid: import_icons.WarningFilled,
|
|
80
177
|
invalidAlt: import_icons.Warning,
|
|
81
178
|
redo: import_icons.Restart,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/config/cerbIcons.ts","../../../src/config/icons/checkbox.icons.tsx"],"sourcesContent":["import {\n Checkmark,\n
|
|
1
|
+
{"version":3,"sources":["../../../src/config/cerbIcons.ts","../../../src/config/icons/checkbox.icons.tsx","../../../src/components/AnimatingUploadIcon.tsx"],"sourcesContent":["import {\n Checkmark,\n CheckmarkOutline,\n ChevronDown,\n CloseFilled,\n CloudUpload,\n Information,\n Restart,\n TrashCan,\n UserFilled,\n Warning,\n WarningAlt,\n WarningFilled,\n type CarbonIconType,\n} from '@cerberus/icons'\nimport type { ElementType } from 'react'\nimport { CheckmarkIcon, IndeterminateIcon } from './icons/checkbox.icons'\nimport { AnimatingUploadIcon } from '../components/AnimatingUploadIcon'\n\nexport type IconType = CarbonIconType | ElementType\n\nexport interface DefinedIcons {\n avatar?: IconType\n checkbox?: IconType\n close?: IconType\n confirmModal?: IconType\n delete?: IconType\n promptModal?: IconType\n waitingFileUploader?: IconType\n fileUploader?: IconType\n indeterminate?: IconType\n infoNotification?: IconType\n successNotification?: IconType\n warningNotification?: IconType\n dangerNotification?: IconType\n invalid: IconType\n invalidAlt?: IconType\n redo?: IconType\n selectArrow?: IconType\n toggleChecked?: IconType\n}\n\nexport const defaultIcons: DefinedIcons = {\n avatar: UserFilled,\n checkbox: CheckmarkIcon,\n close: CloseFilled,\n confirmModal: Information,\n delete: TrashCan,\n promptModal: Information,\n waitingFileUploader: CloudUpload,\n fileUploader: AnimatingUploadIcon,\n indeterminate: IndeterminateIcon,\n infoNotification: Information,\n successNotification: CheckmarkOutline,\n warningNotification: WarningAlt,\n dangerNotification: WarningFilled,\n invalid: WarningFilled,\n invalidAlt: Warning,\n redo: Restart,\n selectArrow: ChevronDown,\n toggleChecked: Checkmark,\n}\n","import type { SVGProps } from 'react'\n\n/**\n * This module contains substitute icons for the Checkbox component.\n * @module\n */\n\ninterface CheckboxIconProps extends SVGProps<SVGSVGElement> {}\n\n/**\n * Checkmark icon for Checkbox component\n */\nexport function CheckmarkIcon(props: CheckboxIconProps) {\n return (\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n role=\"img\"\n viewBox=\"0 0 24 24\"\n {...props}\n >\n <path\n fill=\"currentColor\"\n d=\"M9.714 18 4 12.335l1.818-1.764 3.896 3.824L18.181 6 20 7.803 9.714 18Z\"\n />\n </svg>\n )\n}\n\ninterface IndeterminateIconProps extends SVGProps<SVGSVGElement> {}\n\n/**\n * Indeterminate icon for Checkbox component\n */\nexport function IndeterminateIcon(props: IndeterminateIconProps) {\n return (\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n {...props}\n >\n <path fill=\"currentColor\" d=\"M4 11h16v2.667H4z\" />\n </svg>\n )\n}\n","import { type CarbonIconProps } from '@cerberus/icons'\n\n/**\n * This module contains an animating icon to use for the FileStatus component.\n * @module\n */\n\nexport type AnimatingUploadIconProps = CarbonIconProps\n\nexport function AnimatingUploadIcon(props: AnimatingUploadIconProps) {\n return (\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width={props.size ?? '1em'}\n height={props.size ?? '1em'}\n viewBox=\"0 0 24 24\"\n >\n <g\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"square\"\n strokeLinejoin=\"round\"\n strokeWidth={1.5}\n >\n <path\n data-name=\"animating-trail\"\n strokeDasharray=\"2 4\"\n strokeDashoffset={6}\n d=\"M12 21c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9\"\n >\n <animate\n attributeName=\"stroke-dashoffset\"\n dur=\"0.45s\"\n repeatCount=\"indefinite\"\n values=\"6;0\"\n ></animate>\n </path>\n\n <path\n data-name=\"half-circle\"\n strokeDasharray={32}\n strokeDashoffset={32}\n d=\"M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9\"\n >\n <animate\n fill=\"freeze\"\n attributeName=\"stroke-dashoffset\"\n begin=\"0.075s\"\n dur=\"0.3s\"\n values=\"32;0\"\n ></animate>\n </path>\n\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"0.8em\"\n height=\"0.8em\"\n x=\"27%\"\n y=\"27%\"\n viewBox=\"0 0 24 24\"\n >\n <polygon\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth={0.8}\n opacity=\"1\"\n points=\"3.7,6.7 7.5,2.9 7.5,15 8.5,15 8.5,2.9 12.3,6.7 13,6 8,1 3,6 \"\n >\n <animate\n fill=\"freeze\"\n attributeName=\"opacity\"\n values=\"1;0;1\"\n dur=\"2s\"\n repeatCount=\"indefinite\"\n ></animate>\n </polygon>\n </svg>\n </g>\n </svg>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAcO;;;ACQD;AAVC,SAAS,cAAc,OAA0B;AACtD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAY;AAAA,MACZ,OAAM;AAAA,MACN,MAAK;AAAA,MACL,MAAK;AAAA,MACL,SAAQ;AAAA,MACP,GAAG;AAAA,MAEJ;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,GAAE;AAAA;AAAA,MACJ;AAAA;AAAA,EACF;AAEJ;AAOO,SAAS,kBAAkB,OAA+B;AAC/D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAY;AAAA,MACZ,OAAM;AAAA,MACN,MAAK;AAAA,MACL,MAAK;AAAA,MACL,SAAQ;AAAA,MACP,GAAG;AAAA,MAEJ,sDAAC,UAAK,MAAK,gBAAe,GAAE,qBAAoB;AAAA;AAAA,EAClD;AAEJ;;;AC9BM,IAAAA,sBAAA;AATC,SAAS,oBAAoB,OAAiC;AACnE,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAY;AAAA,MACZ,OAAM;AAAA,MACN,OAAO,MAAM,QAAQ;AAAA,MACrB,QAAQ,MAAM,QAAQ;AAAA,MACtB,SAAQ;AAAA,MAER;AAAA,QAAC;AAAA;AAAA,UACC,MAAK;AAAA,UACL,QAAO;AAAA,UACP,eAAc;AAAA,UACd,gBAAe;AAAA,UACf,aAAa;AAAA,UAEb;AAAA;AAAA,cAAC;AAAA;AAAA,gBACC,aAAU;AAAA,gBACV,iBAAgB;AAAA,gBAChB,kBAAkB;AAAA,gBAClB,GAAE;AAAA,gBAEF;AAAA,kBAAC;AAAA;AAAA,oBACC,eAAc;AAAA,oBACd,KAAI;AAAA,oBACJ,aAAY;AAAA,oBACZ,QAAO;AAAA;AAAA,gBACR;AAAA;AAAA,YACH;AAAA,YAEA;AAAA,cAAC;AAAA;AAAA,gBACC,aAAU;AAAA,gBACV,iBAAiB;AAAA,gBACjB,kBAAkB;AAAA,gBAClB,GAAE;AAAA,gBAEF;AAAA,kBAAC;AAAA;AAAA,oBACC,MAAK;AAAA,oBACL,eAAc;AAAA,oBACd,OAAM;AAAA,oBACN,KAAI;AAAA,oBACJ,QAAO;AAAA;AAAA,gBACR;AAAA;AAAA,YACH;AAAA,YAEA;AAAA,cAAC;AAAA;AAAA,gBACC,eAAY;AAAA,gBACZ,OAAM;AAAA,gBACN,OAAM;AAAA,gBACN,QAAO;AAAA,gBACP,GAAE;AAAA,gBACF,GAAE;AAAA,gBACF,SAAQ;AAAA,gBAER;AAAA,kBAAC;AAAA;AAAA,oBACC,MAAK;AAAA,oBACL,QAAO;AAAA,oBACP,aAAa;AAAA,oBACb,SAAQ;AAAA,oBACR,QAAO;AAAA,oBAEP;AAAA,sBAAC;AAAA;AAAA,wBACC,MAAK;AAAA,wBACL,eAAc;AAAA,wBACd,QAAO;AAAA,wBACP,KAAI;AAAA,wBACJ,aAAY;AAAA;AAAA,oBACb;AAAA;AAAA,gBACH;AAAA;AAAA,YACF;AAAA;AAAA;AAAA,MACF;AAAA;AAAA,EACF;AAEJ;;;AFxCO,IAAM,eAA6B;AAAA,EACxC,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AAAA,EACP,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,cAAc;AAAA,EACd,eAAe;AAAA,EACf,kBAAkB;AAAA,EAClB,qBAAqB;AAAA,EACrB,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,MAAM;AAAA,EACN,aAAa;AAAA,EACb,eAAe;AACjB;","names":["import_jsx_runtime"]}
|
|
@@ -65,6 +65,102 @@ function IndeterminateIcon(props) {
|
|
|
65
65
|
);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
+
// src/components/AnimatingUploadIcon.tsx
|
|
69
|
+
var import_jsx_runtime2 = require("react/jsx-runtime");
|
|
70
|
+
function AnimatingUploadIcon(props) {
|
|
71
|
+
return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
72
|
+
"svg",
|
|
73
|
+
{
|
|
74
|
+
"aria-hidden": "true",
|
|
75
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
76
|
+
width: props.size ?? "1em",
|
|
77
|
+
height: props.size ?? "1em",
|
|
78
|
+
viewBox: "0 0 24 24",
|
|
79
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
|
80
|
+
"g",
|
|
81
|
+
{
|
|
82
|
+
fill: "none",
|
|
83
|
+
stroke: "currentColor",
|
|
84
|
+
strokeLinecap: "square",
|
|
85
|
+
strokeLinejoin: "round",
|
|
86
|
+
strokeWidth: 1.5,
|
|
87
|
+
children: [
|
|
88
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
89
|
+
"path",
|
|
90
|
+
{
|
|
91
|
+
"data-name": "animating-trail",
|
|
92
|
+
strokeDasharray: "2 4",
|
|
93
|
+
strokeDashoffset: 6,
|
|
94
|
+
d: "M12 21c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9",
|
|
95
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
96
|
+
"animate",
|
|
97
|
+
{
|
|
98
|
+
attributeName: "stroke-dashoffset",
|
|
99
|
+
dur: "0.45s",
|
|
100
|
+
repeatCount: "indefinite",
|
|
101
|
+
values: "6;0"
|
|
102
|
+
}
|
|
103
|
+
)
|
|
104
|
+
}
|
|
105
|
+
),
|
|
106
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
107
|
+
"path",
|
|
108
|
+
{
|
|
109
|
+
"data-name": "half-circle",
|
|
110
|
+
strokeDasharray: 32,
|
|
111
|
+
strokeDashoffset: 32,
|
|
112
|
+
d: "M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9",
|
|
113
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
114
|
+
"animate",
|
|
115
|
+
{
|
|
116
|
+
fill: "freeze",
|
|
117
|
+
attributeName: "stroke-dashoffset",
|
|
118
|
+
begin: "0.075s",
|
|
119
|
+
dur: "0.3s",
|
|
120
|
+
values: "32;0"
|
|
121
|
+
}
|
|
122
|
+
)
|
|
123
|
+
}
|
|
124
|
+
),
|
|
125
|
+
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
126
|
+
"svg",
|
|
127
|
+
{
|
|
128
|
+
"aria-hidden": "true",
|
|
129
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
130
|
+
width: "0.8em",
|
|
131
|
+
height: "0.8em",
|
|
132
|
+
x: "27%",
|
|
133
|
+
y: "27%",
|
|
134
|
+
viewBox: "0 0 24 24",
|
|
135
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
136
|
+
"polygon",
|
|
137
|
+
{
|
|
138
|
+
fill: "currentColor",
|
|
139
|
+
stroke: "currentColor",
|
|
140
|
+
strokeWidth: 0.8,
|
|
141
|
+
opacity: "1",
|
|
142
|
+
points: "3.7,6.7 7.5,2.9 7.5,15 8.5,15 8.5,2.9 12.3,6.7 13,6 8,1 3,6 ",
|
|
143
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
|
144
|
+
"animate",
|
|
145
|
+
{
|
|
146
|
+
fill: "freeze",
|
|
147
|
+
attributeName: "opacity",
|
|
148
|
+
values: "1;0;1",
|
|
149
|
+
dur: "2s",
|
|
150
|
+
repeatCount: "indefinite"
|
|
151
|
+
}
|
|
152
|
+
)
|
|
153
|
+
}
|
|
154
|
+
)
|
|
155
|
+
}
|
|
156
|
+
)
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
)
|
|
160
|
+
}
|
|
161
|
+
);
|
|
162
|
+
}
|
|
163
|
+
|
|
68
164
|
// src/config/cerbIcons.ts
|
|
69
165
|
var defaultIcons = {
|
|
70
166
|
avatar: import_icons.UserFilled,
|
|
@@ -73,12 +169,13 @@ var defaultIcons = {
|
|
|
73
169
|
confirmModal: import_icons.Information,
|
|
74
170
|
delete: import_icons.TrashCan,
|
|
75
171
|
promptModal: import_icons.Information,
|
|
76
|
-
|
|
172
|
+
waitingFileUploader: import_icons.CloudUpload,
|
|
173
|
+
fileUploader: AnimatingUploadIcon,
|
|
77
174
|
indeterminate: IndeterminateIcon,
|
|
78
|
-
infoNotification: import_icons.
|
|
79
|
-
successNotification: import_icons.
|
|
80
|
-
warningNotification: import_icons.
|
|
81
|
-
dangerNotification: import_icons.
|
|
175
|
+
infoNotification: import_icons.Information,
|
|
176
|
+
successNotification: import_icons.CheckmarkOutline,
|
|
177
|
+
warningNotification: import_icons.WarningAlt,
|
|
178
|
+
dangerNotification: import_icons.WarningFilled,
|
|
82
179
|
invalid: import_icons.WarningFilled,
|
|
83
180
|
invalidAlt: import_icons.Warning,
|
|
84
181
|
redo: import_icons.Restart,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/config/defineIcons.ts","../../../src/config/cerbIcons.ts","../../../src/config/icons/checkbox.icons.tsx"],"sourcesContent":["import { defaultIcons, type DefinedIcons } from './cerbIcons'\n\nfunction _validateIconsProperties(icons: DefinedIcons) {\n if (!icons.invalid) {\n throw new Error(\n 'The an invalid property must be defined in your custom icons library.',\n )\n }\n}\n\nexport function defineIcons(icons: DefinedIcons): Required<DefinedIcons> {\n _validateIconsProperties(icons)\n $cerberusIcons = {\n ...defaultIcons,\n ...icons,\n } as Required<DefinedIcons>\n return $cerberusIcons\n}\n\n// Default icons\n\nexport let $cerberusIcons = defaultIcons as Required<DefinedIcons>\n","import {\n Checkmark,\n
|
|
1
|
+
{"version":3,"sources":["../../../src/config/defineIcons.ts","../../../src/config/cerbIcons.ts","../../../src/config/icons/checkbox.icons.tsx","../../../src/components/AnimatingUploadIcon.tsx"],"sourcesContent":["import { defaultIcons, type DefinedIcons } from './cerbIcons'\n\nfunction _validateIconsProperties(icons: DefinedIcons) {\n if (!icons.invalid) {\n throw new Error(\n 'The an invalid property must be defined in your custom icons library.',\n )\n }\n}\n\nexport function defineIcons(icons: DefinedIcons): Required<DefinedIcons> {\n _validateIconsProperties(icons)\n $cerberusIcons = {\n ...defaultIcons,\n ...icons,\n } as Required<DefinedIcons>\n return $cerberusIcons\n}\n\n// Default icons\n\nexport let $cerberusIcons = defaultIcons as Required<DefinedIcons>\n","import {\n Checkmark,\n CheckmarkOutline,\n ChevronDown,\n CloseFilled,\n CloudUpload,\n Information,\n Restart,\n TrashCan,\n UserFilled,\n Warning,\n WarningAlt,\n WarningFilled,\n type CarbonIconType,\n} from '@cerberus/icons'\nimport type { ElementType } from 'react'\nimport { CheckmarkIcon, IndeterminateIcon } from './icons/checkbox.icons'\nimport { AnimatingUploadIcon } from '../components/AnimatingUploadIcon'\n\nexport type IconType = CarbonIconType | ElementType\n\nexport interface DefinedIcons {\n avatar?: IconType\n checkbox?: IconType\n close?: IconType\n confirmModal?: IconType\n delete?: IconType\n promptModal?: IconType\n waitingFileUploader?: IconType\n fileUploader?: IconType\n indeterminate?: IconType\n infoNotification?: IconType\n successNotification?: IconType\n warningNotification?: IconType\n dangerNotification?: IconType\n invalid: IconType\n invalidAlt?: IconType\n redo?: IconType\n selectArrow?: IconType\n toggleChecked?: IconType\n}\n\nexport const defaultIcons: DefinedIcons = {\n avatar: UserFilled,\n checkbox: CheckmarkIcon,\n close: CloseFilled,\n confirmModal: Information,\n delete: TrashCan,\n promptModal: Information,\n waitingFileUploader: CloudUpload,\n fileUploader: AnimatingUploadIcon,\n indeterminate: IndeterminateIcon,\n infoNotification: Information,\n successNotification: CheckmarkOutline,\n warningNotification: WarningAlt,\n dangerNotification: WarningFilled,\n invalid: WarningFilled,\n invalidAlt: Warning,\n redo: Restart,\n selectArrow: ChevronDown,\n toggleChecked: Checkmark,\n}\n","import type { SVGProps } from 'react'\n\n/**\n * This module contains substitute icons for the Checkbox component.\n * @module\n */\n\ninterface CheckboxIconProps extends SVGProps<SVGSVGElement> {}\n\n/**\n * Checkmark icon for Checkbox component\n */\nexport function CheckmarkIcon(props: CheckboxIconProps) {\n return (\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n role=\"img\"\n viewBox=\"0 0 24 24\"\n {...props}\n >\n <path\n fill=\"currentColor\"\n d=\"M9.714 18 4 12.335l1.818-1.764 3.896 3.824L18.181 6 20 7.803 9.714 18Z\"\n />\n </svg>\n )\n}\n\ninterface IndeterminateIconProps extends SVGProps<SVGSVGElement> {}\n\n/**\n * Indeterminate icon for Checkbox component\n */\nexport function IndeterminateIcon(props: IndeterminateIconProps) {\n return (\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n role=\"img\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n {...props}\n >\n <path fill=\"currentColor\" d=\"M4 11h16v2.667H4z\" />\n </svg>\n )\n}\n","import { type CarbonIconProps } from '@cerberus/icons'\n\n/**\n * This module contains an animating icon to use for the FileStatus component.\n * @module\n */\n\nexport type AnimatingUploadIconProps = CarbonIconProps\n\nexport function AnimatingUploadIcon(props: AnimatingUploadIconProps) {\n return (\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width={props.size ?? '1em'}\n height={props.size ?? '1em'}\n viewBox=\"0 0 24 24\"\n >\n <g\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"square\"\n strokeLinejoin=\"round\"\n strokeWidth={1.5}\n >\n <path\n data-name=\"animating-trail\"\n strokeDasharray=\"2 4\"\n strokeDashoffset={6}\n d=\"M12 21c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9\"\n >\n <animate\n attributeName=\"stroke-dashoffset\"\n dur=\"0.45s\"\n repeatCount=\"indefinite\"\n values=\"6;0\"\n ></animate>\n </path>\n\n <path\n data-name=\"half-circle\"\n strokeDasharray={32}\n strokeDashoffset={32}\n d=\"M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9\"\n >\n <animate\n fill=\"freeze\"\n attributeName=\"stroke-dashoffset\"\n begin=\"0.075s\"\n dur=\"0.3s\"\n values=\"32;0\"\n ></animate>\n </path>\n\n <svg\n aria-hidden=\"true\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"0.8em\"\n height=\"0.8em\"\n x=\"27%\"\n y=\"27%\"\n viewBox=\"0 0 24 24\"\n >\n <polygon\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth={0.8}\n opacity=\"1\"\n points=\"3.7,6.7 7.5,2.9 7.5,15 8.5,15 8.5,2.9 12.3,6.7 13,6 8,1 3,6 \"\n >\n <animate\n fill=\"freeze\"\n attributeName=\"opacity\"\n values=\"1;0;1\"\n dur=\"2s\"\n repeatCount=\"indefinite\"\n ></animate>\n </polygon>\n </svg>\n </g>\n </svg>\n )\n}\n"],"mappings":"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","names":["import_jsx_runtime"]}
|
|
@@ -103,6 +103,102 @@ function IndeterminateIcon(props) {
|
|
|
103
103
|
);
|
|
104
104
|
}
|
|
105
105
|
|
|
106
|
+
// src/components/AnimatingUploadIcon.tsx
|
|
107
|
+
var import_jsx_runtime3 = require("react/jsx-runtime");
|
|
108
|
+
function AnimatingUploadIcon(props) {
|
|
109
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
110
|
+
"svg",
|
|
111
|
+
{
|
|
112
|
+
"aria-hidden": "true",
|
|
113
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
114
|
+
width: props.size ?? "1em",
|
|
115
|
+
height: props.size ?? "1em",
|
|
116
|
+
viewBox: "0 0 24 24",
|
|
117
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
|
|
118
|
+
"g",
|
|
119
|
+
{
|
|
120
|
+
fill: "none",
|
|
121
|
+
stroke: "currentColor",
|
|
122
|
+
strokeLinecap: "square",
|
|
123
|
+
strokeLinejoin: "round",
|
|
124
|
+
strokeWidth: 1.5,
|
|
125
|
+
children: [
|
|
126
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
127
|
+
"path",
|
|
128
|
+
{
|
|
129
|
+
"data-name": "animating-trail",
|
|
130
|
+
strokeDasharray: "2 4",
|
|
131
|
+
strokeDashoffset: 6,
|
|
132
|
+
d: "M12 21c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9",
|
|
133
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
134
|
+
"animate",
|
|
135
|
+
{
|
|
136
|
+
attributeName: "stroke-dashoffset",
|
|
137
|
+
dur: "0.45s",
|
|
138
|
+
repeatCount: "indefinite",
|
|
139
|
+
values: "6;0"
|
|
140
|
+
}
|
|
141
|
+
)
|
|
142
|
+
}
|
|
143
|
+
),
|
|
144
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
145
|
+
"path",
|
|
146
|
+
{
|
|
147
|
+
"data-name": "half-circle",
|
|
148
|
+
strokeDasharray: 32,
|
|
149
|
+
strokeDashoffset: 32,
|
|
150
|
+
d: "M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9",
|
|
151
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
152
|
+
"animate",
|
|
153
|
+
{
|
|
154
|
+
fill: "freeze",
|
|
155
|
+
attributeName: "stroke-dashoffset",
|
|
156
|
+
begin: "0.075s",
|
|
157
|
+
dur: "0.3s",
|
|
158
|
+
values: "32;0"
|
|
159
|
+
}
|
|
160
|
+
)
|
|
161
|
+
}
|
|
162
|
+
),
|
|
163
|
+
/* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
164
|
+
"svg",
|
|
165
|
+
{
|
|
166
|
+
"aria-hidden": "true",
|
|
167
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
168
|
+
width: "0.8em",
|
|
169
|
+
height: "0.8em",
|
|
170
|
+
x: "27%",
|
|
171
|
+
y: "27%",
|
|
172
|
+
viewBox: "0 0 24 24",
|
|
173
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
174
|
+
"polygon",
|
|
175
|
+
{
|
|
176
|
+
fill: "currentColor",
|
|
177
|
+
stroke: "currentColor",
|
|
178
|
+
strokeWidth: 0.8,
|
|
179
|
+
opacity: "1",
|
|
180
|
+
points: "3.7,6.7 7.5,2.9 7.5,15 8.5,15 8.5,2.9 12.3,6.7 13,6 8,1 3,6 ",
|
|
181
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
182
|
+
"animate",
|
|
183
|
+
{
|
|
184
|
+
fill: "freeze",
|
|
185
|
+
attributeName: "opacity",
|
|
186
|
+
values: "1;0;1",
|
|
187
|
+
dur: "2s",
|
|
188
|
+
repeatCount: "indefinite"
|
|
189
|
+
}
|
|
190
|
+
)
|
|
191
|
+
}
|
|
192
|
+
)
|
|
193
|
+
}
|
|
194
|
+
)
|
|
195
|
+
]
|
|
196
|
+
}
|
|
197
|
+
)
|
|
198
|
+
}
|
|
199
|
+
);
|
|
200
|
+
}
|
|
201
|
+
|
|
106
202
|
// src/config/cerbIcons.ts
|
|
107
203
|
var defaultIcons = {
|
|
108
204
|
avatar: import_icons.UserFilled,
|
|
@@ -111,12 +207,13 @@ var defaultIcons = {
|
|
|
111
207
|
confirmModal: import_icons.Information,
|
|
112
208
|
delete: import_icons.TrashCan,
|
|
113
209
|
promptModal: import_icons.Information,
|
|
114
|
-
|
|
210
|
+
waitingFileUploader: import_icons.CloudUpload,
|
|
211
|
+
fileUploader: AnimatingUploadIcon,
|
|
115
212
|
indeterminate: IndeterminateIcon,
|
|
116
|
-
infoNotification: import_icons.
|
|
117
|
-
successNotification: import_icons.
|
|
118
|
-
warningNotification: import_icons.
|
|
119
|
-
dangerNotification: import_icons.
|
|
213
|
+
infoNotification: import_icons.Information,
|
|
214
|
+
successNotification: import_icons.CheckmarkOutline,
|
|
215
|
+
warningNotification: import_icons.WarningAlt,
|
|
216
|
+
dangerNotification: import_icons.WarningFilled,
|
|
120
217
|
invalid: import_icons.WarningFilled,
|
|
121
218
|
invalidAlt: import_icons.Warning,
|
|
122
219
|
redo: import_icons.Restart,
|
|
@@ -168,9 +265,9 @@ function Show(props) {
|
|
|
168
265
|
var import_css2 = require("@cerberus/styled-system/css");
|
|
169
266
|
var import_recipes2 = require("@cerberus/styled-system/recipes");
|
|
170
267
|
var import_react2 = require("react");
|
|
171
|
-
var
|
|
268
|
+
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
172
269
|
function ModalEl(props, ref) {
|
|
173
|
-
return /* @__PURE__ */ (0,
|
|
270
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
174
271
|
"dialog",
|
|
175
272
|
{
|
|
176
273
|
...props,
|
|
@@ -185,29 +282,33 @@ var Modal = (0, import_react2.forwardRef)(ModalEl);
|
|
|
185
282
|
var import_react3 = require("react");
|
|
186
283
|
function useModal() {
|
|
187
284
|
const modalRef = (0, import_react3.useRef)(null);
|
|
285
|
+
const [isOpen, setIsOpen] = (0, import_react3.useState)(false);
|
|
188
286
|
const show = (0, import_react3.useCallback)(() => {
|
|
189
287
|
var _a;
|
|
190
288
|
(_a = modalRef.current) == null ? void 0 : _a.showModal();
|
|
289
|
+
setIsOpen(true);
|
|
191
290
|
}, []);
|
|
192
291
|
const close = (0, import_react3.useCallback)(() => {
|
|
193
292
|
var _a;
|
|
194
293
|
(_a = modalRef.current) == null ? void 0 : _a.close();
|
|
294
|
+
setIsOpen(false);
|
|
195
295
|
}, []);
|
|
196
296
|
return (0, import_react3.useMemo)(() => {
|
|
197
297
|
return {
|
|
198
298
|
modalRef,
|
|
199
299
|
show,
|
|
200
|
-
close
|
|
300
|
+
close,
|
|
301
|
+
isOpen
|
|
201
302
|
};
|
|
202
|
-
}, [modalRef, show, close]);
|
|
303
|
+
}, [modalRef, show, close, isOpen]);
|
|
203
304
|
}
|
|
204
305
|
|
|
205
306
|
// src/components/ModalHeader.tsx
|
|
206
307
|
var import_css3 = require("@cerberus/styled-system/css");
|
|
207
308
|
var import_patterns = require("@cerberus/styled-system/patterns");
|
|
208
|
-
var
|
|
309
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
209
310
|
function ModalHeader(props) {
|
|
210
|
-
return /* @__PURE__ */ (0,
|
|
311
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
211
312
|
"div",
|
|
212
313
|
{
|
|
213
314
|
...props,
|
|
@@ -215,8 +316,8 @@ function ModalHeader(props) {
|
|
|
215
316
|
props.className,
|
|
216
317
|
(0, import_patterns.vstack)({
|
|
217
318
|
alignItems: "flex-start",
|
|
218
|
-
gap: "
|
|
219
|
-
mb: "
|
|
319
|
+
gap: "md",
|
|
320
|
+
mb: "md"
|
|
220
321
|
})
|
|
221
322
|
)
|
|
222
323
|
}
|
|
@@ -226,24 +327,24 @@ function ModalHeader(props) {
|
|
|
226
327
|
// src/components/ModalHeading.tsx
|
|
227
328
|
var import_css4 = require("@cerberus/styled-system/css");
|
|
228
329
|
var import_recipes3 = require("@cerberus/styled-system/recipes");
|
|
229
|
-
var
|
|
330
|
+
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
230
331
|
function ModalHeading(props) {
|
|
231
|
-
return /* @__PURE__ */ (0,
|
|
332
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("p", { ...props, className: (0, import_css4.cx)(props.className, (0, import_recipes3.modal)().heading) });
|
|
232
333
|
}
|
|
233
334
|
|
|
234
335
|
// src/components/ModalDescription.tsx
|
|
235
336
|
var import_css5 = require("@cerberus/styled-system/css");
|
|
236
337
|
var import_recipes4 = require("@cerberus/styled-system/recipes");
|
|
237
|
-
var
|
|
338
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
238
339
|
function ModalDescription(props) {
|
|
239
|
-
return /* @__PURE__ */ (0,
|
|
340
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { ...props, className: (0, import_css5.cx)(props.className, (0, import_recipes4.modal)().description) });
|
|
240
341
|
}
|
|
241
342
|
|
|
242
343
|
// src/components/Avatar.tsx
|
|
243
344
|
var import_css6 = require("@cerberus/styled-system/css");
|
|
244
345
|
var import_patterns2 = require("@cerberus/styled-system/patterns");
|
|
245
346
|
var import_recipes5 = require("@cerberus/styled-system/recipes");
|
|
246
|
-
var
|
|
347
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
247
348
|
function Avatar(props) {
|
|
248
349
|
const {
|
|
249
350
|
ariaLabel,
|
|
@@ -258,7 +359,7 @@ function Avatar(props) {
|
|
|
258
359
|
} = props;
|
|
259
360
|
const { avatar: AvatarIcon } = $cerberusIcons;
|
|
260
361
|
const initials = (ariaLabel || "").split(" ").map((word) => word[0]).join("").slice(0, 2);
|
|
261
|
-
return /* @__PURE__ */ (0,
|
|
362
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
262
363
|
"div",
|
|
263
364
|
{
|
|
264
365
|
...nativeProps,
|
|
@@ -267,19 +368,19 @@ function Avatar(props) {
|
|
|
267
368
|
(0, import_recipes5.avatar)({ gradient, size }),
|
|
268
369
|
(0, import_patterns2.circle)()
|
|
269
370
|
),
|
|
270
|
-
children: /* @__PURE__ */ (0,
|
|
371
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
271
372
|
Show,
|
|
272
373
|
{
|
|
273
374
|
when: Boolean(src) || Boolean(as),
|
|
274
|
-
fallback: /* @__PURE__ */ (0,
|
|
375
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
275
376
|
Show,
|
|
276
377
|
{
|
|
277
378
|
when: Boolean(initials),
|
|
278
|
-
fallback: /* @__PURE__ */ (0,
|
|
379
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
279
380
|
Show,
|
|
280
381
|
{
|
|
281
382
|
when: Boolean(icon),
|
|
282
|
-
fallback: /* @__PURE__ */ (0,
|
|
383
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
283
384
|
AvatarIcon,
|
|
284
385
|
{
|
|
285
386
|
size: iconSizeMap[size]
|
|
@@ -291,11 +392,11 @@ function Avatar(props) {
|
|
|
291
392
|
children: initials
|
|
292
393
|
}
|
|
293
394
|
),
|
|
294
|
-
children: /* @__PURE__ */ (0,
|
|
395
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
295
396
|
Show,
|
|
296
397
|
{
|
|
297
398
|
when: Boolean(as),
|
|
298
|
-
fallback: /* @__PURE__ */ (0,
|
|
399
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
299
400
|
"img",
|
|
300
401
|
{
|
|
301
402
|
alt: props.ariaLabel,
|
|
@@ -331,7 +432,7 @@ var iconSizeMap = {
|
|
|
331
432
|
};
|
|
332
433
|
|
|
333
434
|
// src/context/confirm-modal.tsx
|
|
334
|
-
var
|
|
435
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
335
436
|
var ConfirmModalContext = (0, import_react4.createContext)(null);
|
|
336
437
|
function ConfirmModal(props) {
|
|
337
438
|
const { modalRef, show, close } = useModal();
|
|
@@ -371,36 +472,36 @@ function ConfirmModal(props) {
|
|
|
371
472
|
}),
|
|
372
473
|
[handleShow]
|
|
373
474
|
);
|
|
374
|
-
return /* @__PURE__ */ (0,
|
|
475
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(ConfirmModalContext.Provider, { value, children: [
|
|
375
476
|
props.children,
|
|
376
|
-
/* @__PURE__ */ (0,
|
|
377
|
-
/* @__PURE__ */ (0,
|
|
378
|
-
/* @__PURE__ */ (0,
|
|
477
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Modal, { onKeyDown: focusTrap, ref: modalRef, children: [
|
|
478
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(ModalHeader, { children: [
|
|
479
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
379
480
|
"div",
|
|
380
481
|
{
|
|
381
482
|
className: (0, import_patterns3.hstack)({
|
|
382
483
|
justify: "center",
|
|
383
484
|
w: "full"
|
|
384
485
|
}),
|
|
385
|
-
children: /* @__PURE__ */ (0,
|
|
486
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
386
487
|
Show,
|
|
387
488
|
{
|
|
388
489
|
when: palette === "danger",
|
|
389
|
-
fallback: /* @__PURE__ */ (0,
|
|
490
|
+
fallback: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
390
491
|
Avatar,
|
|
391
492
|
{
|
|
392
493
|
ariaLabel: "",
|
|
393
494
|
gradient: "charon-light",
|
|
394
|
-
icon: /* @__PURE__ */ (0,
|
|
495
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ConfirmIcon, { size: 24 }),
|
|
395
496
|
src: ""
|
|
396
497
|
}
|
|
397
498
|
),
|
|
398
|
-
children: /* @__PURE__ */ (0,
|
|
499
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
399
500
|
Avatar,
|
|
400
501
|
{
|
|
401
502
|
ariaLabel: "",
|
|
402
503
|
gradient: "hades-dark",
|
|
403
|
-
icon: /* @__PURE__ */ (0,
|
|
504
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ConfirmIcon, { size: 24 }),
|
|
404
505
|
src: ""
|
|
405
506
|
}
|
|
406
507
|
)
|
|
@@ -408,17 +509,17 @@ function ConfirmModal(props) {
|
|
|
408
509
|
)
|
|
409
510
|
}
|
|
410
511
|
),
|
|
411
|
-
/* @__PURE__ */ (0,
|
|
412
|
-
/* @__PURE__ */ (0,
|
|
512
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ModalHeading, { children: content == null ? void 0 : content.heading }),
|
|
513
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ModalDescription, { children: content == null ? void 0 : content.description })
|
|
413
514
|
] }),
|
|
414
|
-
/* @__PURE__ */ (0,
|
|
515
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
415
516
|
"div",
|
|
416
517
|
{
|
|
417
518
|
className: (0, import_patterns3.hstack)({
|
|
418
519
|
gap: "4"
|
|
419
520
|
}),
|
|
420
521
|
children: [
|
|
421
|
-
/* @__PURE__ */ (0,
|
|
522
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
422
523
|
Button,
|
|
423
524
|
{
|
|
424
525
|
autoFocus: true,
|
|
@@ -432,7 +533,7 @@ function ConfirmModal(props) {
|
|
|
432
533
|
children: content == null ? void 0 : content.actionText
|
|
433
534
|
}
|
|
434
535
|
),
|
|
435
|
-
/* @__PURE__ */ (0,
|
|
536
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
436
537
|
Button,
|
|
437
538
|
{
|
|
438
539
|
className: (0, import_css7.css)({
|