@cerberus-design/react 0.18.0 → 0.18.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.
Files changed (52) hide show
  1. package/build/legacy/_tsup-dts-rollup.d.cts +10 -5
  2. package/build/legacy/components/CircularProgress.cjs +15 -37
  3. package/build/legacy/components/CircularProgress.cjs.map +1 -1
  4. package/build/legacy/index.cjs +259 -280
  5. package/build/legacy/index.cjs.map +1 -1
  6. package/build/modern/_tsup-dts-rollup.d.ts +10 -5
  7. package/build/modern/{chunk-JFSCSAHD.js → chunk-25S67KZH.js} +4 -4
  8. package/build/modern/{chunk-H2HP63H4.js → chunk-CJVKAGCJ.js} +4 -4
  9. package/build/modern/{chunk-Q3LUIS3M.js → chunk-IE2HWT3I.js} +16 -37
  10. package/build/modern/chunk-IE2HWT3I.js.map +1 -0
  11. package/build/modern/{chunk-TGY3RICC.js → chunk-KABRV6TB.js} +4 -4
  12. package/build/modern/{chunk-SDV6XUM6.js → chunk-RF4VKGOQ.js} +2 -2
  13. package/build/modern/{chunk-NYRNXRTZ.js → chunk-TS7PAQPV.js} +4 -4
  14. package/build/modern/{chunk-STCGFGTK.js → chunk-TV346AYO.js} +4 -4
  15. package/build/modern/{chunk-6DU5QBPR.js → chunk-UCVB2VOI.js} +4 -4
  16. package/build/modern/components/CircularProgress.js +1 -2
  17. package/build/modern/components/FileStatus.js +4 -4
  18. package/build/modern/components/Tag.js +2 -2
  19. package/build/modern/components/combobox/combobox.js +2 -2
  20. package/build/modern/components/combobox/index.js +2 -2
  21. package/build/modern/components/cta-dialog/index.js +3 -3
  22. package/build/modern/components/cta-dialog/provider.js +3 -3
  23. package/build/modern/components/date-picker/calendar.js +2 -2
  24. package/build/modern/components/date-picker/day-view.js +2 -2
  25. package/build/modern/components/date-picker/index.js +8 -8
  26. package/build/modern/components/date-picker/month-view.js +2 -2
  27. package/build/modern/components/date-picker/view-control-group.js +2 -2
  28. package/build/modern/components/date-picker/year-view.js +2 -2
  29. package/build/modern/components/deprecated/Label.js +1 -1
  30. package/build/modern/components/deprecated/NavMenuTrigger.js +2 -2
  31. package/build/modern/components/dialog/index.js +3 -3
  32. package/build/modern/components/field/index.js +3 -3
  33. package/build/modern/components/notifications/center.js +3 -3
  34. package/build/modern/components/notifications/index.js +4 -4
  35. package/build/modern/components/notifications/match-icon.js +2 -2
  36. package/build/modern/components/select/index.js +2 -2
  37. package/build/modern/components/select/select.js +2 -2
  38. package/build/modern/context/confirm-modal.js +3 -3
  39. package/build/modern/context/prompt-modal.js +4 -4
  40. package/build/modern/index.js +60 -60
  41. package/package.json +5 -6
  42. package/src/components/CircularProgress.tsx +26 -38
  43. package/build/modern/chunk-Q3LUIS3M.js.map +0 -1
  44. package/src/.DS_Store +0 -0
  45. package/src/components/.DS_Store +0 -0
  46. /package/build/modern/{chunk-JFSCSAHD.js.map → chunk-25S67KZH.js.map} +0 -0
  47. /package/build/modern/{chunk-H2HP63H4.js.map → chunk-CJVKAGCJ.js.map} +0 -0
  48. /package/build/modern/{chunk-TGY3RICC.js.map → chunk-KABRV6TB.js.map} +0 -0
  49. /package/build/modern/{chunk-SDV6XUM6.js.map → chunk-RF4VKGOQ.js.map} +0 -0
  50. /package/build/modern/{chunk-NYRNXRTZ.js.map → chunk-TS7PAQPV.js.map} +0 -0
  51. /package/build/modern/{chunk-STCGFGTK.js.map → chunk-TV346AYO.js.map} +0 -0
  52. /package/build/modern/{chunk-6DU5QBPR.js.map → chunk-UCVB2VOI.js.map} +0 -0
@@ -1,12 +1,11 @@
1
1
  import "../../chunk-IOLYX3SY.js";
2
- import "../../chunk-MV2AU6UV.js";
3
2
  import {
4
3
  NotificationCenter,
5
4
  toaster,
6
5
  useNotificationCenter
7
- } from "../../chunk-SDV6XUM6.js";
6
+ } from "../../chunk-RF4VKGOQ.js";
8
7
  import "../../chunk-5HEU3SYR.js";
9
- import "../../chunk-NYRNXRTZ.js";
8
+ import "../../chunk-TS7PAQPV.js";
10
9
  import {
11
10
  NotificationParts
12
11
  } from "../../chunk-MTD4JSHT.js";
@@ -18,9 +17,10 @@ import {
18
17
  NotificationProvider,
19
18
  NotificationRoot
20
19
  } from "../../chunk-SZOV7M64.js";
20
+ import "../../chunk-MV2AU6UV.js";
21
21
  import "../../chunk-GB7W3YNU.js";
22
- import "../../chunk-AUI74W7J.js";
23
22
  import "../../chunk-GITT5645.js";
23
+ import "../../chunk-AUI74W7J.js";
24
24
  import "../../chunk-VEAC4I3F.js";
25
25
  export {
26
26
  NotificationActionTrigger,
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import {
3
3
  MatchNotificationIcon
4
- } from "../../chunk-NYRNXRTZ.js";
5
- import "../../chunk-AUI74W7J.js";
4
+ } from "../../chunk-TS7PAQPV.js";
6
5
  import "../../chunk-GITT5645.js";
6
+ import "../../chunk-AUI74W7J.js";
7
7
  export {
8
8
  MatchNotificationIcon
9
9
  };
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  Option,
8
8
  Select
9
- } from "../../chunk-H2HP63H4.js";
9
+ } from "../../chunk-CJVKAGCJ.js";
10
10
  import {
11
11
  SelectParts
12
12
  } from "../../chunk-YOYCS3MD.js";
@@ -29,8 +29,8 @@ import {
29
29
  createSelectCollection
30
30
  } from "../../chunk-5MUUKSLF.js";
31
31
  import "../../chunk-GITT5645.js";
32
- import "../../chunk-VEAC4I3F.js";
33
32
  import "../../chunk-53YVHIGJ.js";
33
+ import "../../chunk-VEAC4I3F.js";
34
34
  export {
35
35
  Option,
36
36
  OptionGroup,
@@ -2,12 +2,12 @@
2
2
  import {
3
3
  Option,
4
4
  Select
5
- } from "../../chunk-H2HP63H4.js";
5
+ } from "../../chunk-CJVKAGCJ.js";
6
6
  import "../../chunk-YOYCS3MD.js";
7
7
  import "../../chunk-5MUUKSLF.js";
8
8
  import "../../chunk-GITT5645.js";
9
- import "../../chunk-VEAC4I3F.js";
10
9
  import "../../chunk-53YVHIGJ.js";
10
+ import "../../chunk-VEAC4I3F.js";
11
11
  export {
12
12
  Option,
13
13
  Select
@@ -4,21 +4,21 @@ import {
4
4
  useConfirmModal
5
5
  } from "../chunk-DHKSNGQX.js";
6
6
  import "../chunk-DJOYRUNT.js";
7
- import "../chunk-V6EAWUCQ.js";
8
7
  import "../chunk-F3XFJHGR.js";
9
8
  import "../chunk-Z2KBUTCO.js";
9
+ import "../chunk-V6EAWUCQ.js";
10
10
  import "../chunk-SSR3CWJZ.js";
11
11
  import "../chunk-GB7W3YNU.js";
12
- import "../chunk-AUI74W7J.js";
13
12
  import "../chunk-CF4TCMJI.js";
14
13
  import "../chunk-IUF74GEL.js";
15
14
  import "../chunk-UGFSACHC.js";
16
15
  import "../chunk-BL7G3577.js";
17
16
  import "../chunk-FQLMPEYX.js";
18
17
  import "../chunk-GITT5645.js";
19
- import "../chunk-VEAC4I3F.js";
20
18
  import "../chunk-UH6XSYYD.js";
21
19
  import "../chunk-53YVHIGJ.js";
20
+ import "../chunk-AUI74W7J.js";
21
+ import "../chunk-VEAC4I3F.js";
22
22
  export {
23
23
  ConfirmModal,
24
24
  useConfirmModal
@@ -4,16 +4,15 @@ import {
4
4
  usePromptModal
5
5
  } from "../chunk-P7DWMM56.js";
6
6
  import "../chunk-DJOYRUNT.js";
7
- import "../chunk-V6EAWUCQ.js";
8
7
  import "../chunk-F3XFJHGR.js";
9
8
  import "../chunk-Z2KBUTCO.js";
9
+ import "../chunk-V6EAWUCQ.js";
10
10
  import "../chunk-SSR3CWJZ.js";
11
11
  import "../chunk-GB7W3YNU.js";
12
- import "../chunk-AUI74W7J.js";
13
12
  import "../chunk-L64HQGLQ.js";
14
13
  import "../chunk-TYPULJMJ.js";
15
- import "../chunk-LEBDLXJE.js";
16
14
  import "../chunk-ILROS7ST.js";
15
+ import "../chunk-LEBDLXJE.js";
17
16
  import "../chunk-WEL43I6Y.js";
18
17
  import "../chunk-EMDNETC7.js";
19
18
  import "../chunk-VIKVLJGG.js";
@@ -23,9 +22,10 @@ import "../chunk-UGFSACHC.js";
23
22
  import "../chunk-BL7G3577.js";
24
23
  import "../chunk-FQLMPEYX.js";
25
24
  import "../chunk-GITT5645.js";
26
- import "../chunk-VEAC4I3F.js";
27
25
  import "../chunk-UH6XSYYD.js";
28
26
  import "../chunk-53YVHIGJ.js";
27
+ import "../chunk-AUI74W7J.js";
28
+ import "../chunk-VEAC4I3F.js";
29
29
  export {
30
30
  PromptModal,
31
31
  usePromptModal
@@ -47,7 +47,7 @@ import {
47
47
  import {
48
48
  Option,
49
49
  Select
50
- } from "./chunk-H2HP63H4.js";
50
+ } from "./chunk-CJVKAGCJ.js";
51
51
  import {
52
52
  SelectParts
53
53
  } from "./chunk-YOYCS3MD.js";
@@ -100,14 +100,13 @@ import {
100
100
  RatingRoot
101
101
  } from "./chunk-IL677ECW.js";
102
102
  import "./chunk-IOLYX3SY.js";
103
- import "./chunk-MV2AU6UV.js";
104
103
  import {
105
104
  NotificationCenter,
106
105
  toaster,
107
106
  useNotificationCenter
108
- } from "./chunk-SDV6XUM6.js";
107
+ } from "./chunk-RF4VKGOQ.js";
109
108
  import "./chunk-5HEU3SYR.js";
110
- import "./chunk-NYRNXRTZ.js";
109
+ import "./chunk-TS7PAQPV.js";
111
110
  import {
112
111
  NotificationParts
113
112
  } from "./chunk-MTD4JSHT.js";
@@ -119,6 +118,7 @@ import {
119
118
  NotificationProvider,
120
119
  NotificationRoot
121
120
  } from "./chunk-SZOV7M64.js";
121
+ import "./chunk-MV2AU6UV.js";
122
122
  import "./chunk-IDTAB2UJ.js";
123
123
  import {
124
124
  Fieldset
@@ -141,7 +141,7 @@ import {
141
141
  } from "./chunk-6KX5P5OU.js";
142
142
  import {
143
143
  NavMenuTrigger
144
- } from "./chunk-6DU5QBPR.js";
144
+ } from "./chunk-UCVB2VOI.js";
145
145
  import {
146
146
  FieldMessage
147
147
  } from "./chunk-T2NB3RBO.js";
@@ -158,19 +158,29 @@ import "./chunk-U3ISYEUF.js";
158
158
  import {
159
159
  RangePickerInput
160
160
  } from "./chunk-ADZRQNW3.js";
161
- import {
162
- DatePickerCalendar
163
- } from "./chunk-N6XHXPBI.js";
164
- import "./chunk-25P3FUUT.js";
165
- import "./chunk-RYRB5GPN.js";
166
161
  import {
167
162
  DatePicker
168
163
  } from "./chunk-CEJIKL6N.js";
169
- import "./chunk-KEGLWDD6.js";
170
164
  import {
171
165
  DatePickerInput
172
166
  } from "./chunk-NP73HOHI.js";
173
167
  import "./chunk-ZL7AX5EM.js";
168
+ import "./chunk-IKDXADLX.js";
169
+ import {
170
+ CTAModal,
171
+ useCTAModal
172
+ } from "./chunk-URJ6JHLG.js";
173
+ import "./chunk-4LSTU6WU.js";
174
+ import "./chunk-QD3WAARV.js";
175
+ import {
176
+ createCTAModalActions
177
+ } from "./chunk-PLHYOCY3.js";
178
+ import {
179
+ DatePickerCalendar
180
+ } from "./chunk-N6XHXPBI.js";
181
+ import "./chunk-25P3FUUT.js";
182
+ import "./chunk-RYRB5GPN.js";
183
+ import "./chunk-KEGLWDD6.js";
174
184
  import "./chunk-D6PFYSIP.js";
175
185
  import "./chunk-INVZVMY4.js";
176
186
  import {
@@ -202,20 +212,7 @@ import {
202
212
  DatePickerViewTrigger,
203
213
  DatePickerYearSelect
204
214
  } from "./chunk-RW3YEBDW.js";
205
- import "./chunk-IKDXADLX.js";
206
- import {
207
- CTAModal,
208
- useCTAModal
209
- } from "./chunk-URJ6JHLG.js";
210
- import "./chunk-4LSTU6WU.js";
211
- import "./chunk-QD3WAARV.js";
212
- import {
213
- createCTAModalActions
214
- } from "./chunk-PLHYOCY3.js";
215
215
  import "./chunk-TIJAFPHQ.js";
216
- import {
217
- Checkbox
218
- } from "./chunk-OY7BOKWW.js";
219
216
  import "./chunk-ML2IKLMJ.js";
220
217
  import {
221
218
  useStatefulCollection
@@ -240,7 +237,7 @@ import {
240
237
  } from "./chunk-5MUUKSLF.js";
241
238
  import {
242
239
  Combobox
243
- } from "./chunk-JFSCSAHD.js";
240
+ } from "./chunk-25S67KZH.js";
244
241
  import {
245
242
  ComboItemGroup
246
243
  } from "./chunk-2CZWHED6.js";
@@ -274,6 +271,9 @@ import "./chunk-CYC2YUKU.js";
274
271
  import {
275
272
  ButtonParts
276
273
  } from "./chunk-2IYWFZTK.js";
274
+ import {
275
+ Checkbox
276
+ } from "./chunk-OY7BOKWW.js";
277
277
  import "./chunk-NYEUNVKR.js";
278
278
  import {
279
279
  CheckboxParts
@@ -336,15 +336,15 @@ import {
336
336
  usePromptModal
337
337
  } from "./chunk-P7DWMM56.js";
338
338
  import "./chunk-DJOYRUNT.js";
339
- import {
340
- DialogParts
341
- } from "./chunk-V6EAWUCQ.js";
342
339
  import {
343
340
  DialogCloseIconTrigger
344
341
  } from "./chunk-F3XFJHGR.js";
345
342
  import {
346
343
  Dialog
347
344
  } from "./chunk-Z2KBUTCO.js";
345
+ import {
346
+ DialogParts
347
+ } from "./chunk-V6EAWUCQ.js";
348
348
  import {
349
349
  DialogBackdrop,
350
350
  DialogCloseTrigger,
@@ -376,12 +376,9 @@ import {
376
376
  formatMilitaryToISO,
377
377
  useDate
378
378
  } from "./chunk-MWRO5QYD.js";
379
- import {
380
- Spinner
381
- } from "./chunk-AUI74W7J.js";
382
379
  import {
383
380
  Tag
384
- } from "./chunk-STCGFGTK.js";
381
+ } from "./chunk-TV346AYO.js";
385
382
  import {
386
383
  Text
387
384
  } from "./chunk-L64HQGLQ.js";
@@ -392,29 +389,24 @@ import {
392
389
  For
393
390
  } from "./chunk-I5RGBB57.js";
394
391
  import {
395
- CircularProgress
396
- } from "./chunk-Q3LUIS3M.js";
397
- import {
398
- Droppable
399
- } from "./chunk-TKI2CKHH.js";
400
- import {
401
- FeatureFlag
402
- } from "./chunk-H4SH6ORP.js";
392
+ makeSystemConfig
393
+ } from "./chunk-KDDPAJMR.js";
403
394
  import {
404
- FeatureFlags,
405
- useFeatureFlags
406
- } from "./chunk-CJFW36DZ.js";
395
+ defineIcons
396
+ } from "./chunk-RT7OJ4X5.js";
397
+ import "./chunk-OCZCCOWW.js";
398
+ import "./chunk-36N4527B.js";
407
399
  import {
408
400
  FileStatus,
409
401
  processStatus
410
- } from "./chunk-TGY3RICC.js";
402
+ } from "./chunk-KABRV6TB.js";
411
403
  import "./chunk-TYPULJMJ.js";
412
- import {
413
- Field
414
- } from "./chunk-LEBDLXJE.js";
415
404
  import {
416
405
  FieldParts
417
406
  } from "./chunk-ILROS7ST.js";
407
+ import {
408
+ Field
409
+ } from "./chunk-LEBDLXJE.js";
418
410
  import {
419
411
  FieldErrorText,
420
412
  FieldHelperText,
@@ -432,9 +424,6 @@ import {
432
424
  import {
433
425
  FieldStatusIndicator
434
426
  } from "./chunk-VIKVLJGG.js";
435
- import {
436
- ProgressBar
437
- } from "./chunk-Q737W5KJ.js";
438
427
  import {
439
428
  FileUploader
440
429
  } from "./chunk-D7QIPJQC.js";
@@ -461,9 +450,6 @@ import {
461
450
  CerberusProvider,
462
451
  useCerberusContext
463
452
  } from "./chunk-GITT5645.js";
464
- import {
465
- Show
466
- } from "./chunk-VEAC4I3F.js";
467
453
  import {
468
454
  IconButton
469
455
  } from "./chunk-UH6XSYYD.js";
@@ -479,6 +465,12 @@ import {
479
465
  import {
480
466
  Portal
481
467
  } from "./chunk-53YVHIGJ.js";
468
+ import {
469
+ ProgressBar
470
+ } from "./chunk-Q737W5KJ.js";
471
+ import {
472
+ Spinner
473
+ } from "./chunk-AUI74W7J.js";
482
474
  import "./chunk-55J6XMHW.js";
483
475
  import {
484
476
  createNavTriggerProps
@@ -486,15 +478,23 @@ import {
486
478
  import {
487
479
  trapFocus
488
480
  } from "./chunk-FHNT274F.js";
481
+ import "./chunk-VV2G62UD.js";
489
482
  import {
490
- makeSystemConfig
491
- } from "./chunk-KDDPAJMR.js";
483
+ CircularProgress
484
+ } from "./chunk-IE2HWT3I.js";
492
485
  import {
493
- defineIcons
494
- } from "./chunk-RT7OJ4X5.js";
495
- import "./chunk-OCZCCOWW.js";
496
- import "./chunk-36N4527B.js";
497
- import "./chunk-VV2G62UD.js";
486
+ Droppable
487
+ } from "./chunk-TKI2CKHH.js";
488
+ import {
489
+ FeatureFlag
490
+ } from "./chunk-H4SH6ORP.js";
491
+ import {
492
+ FeatureFlags,
493
+ useFeatureFlags
494
+ } from "./chunk-CJFW36DZ.js";
495
+ import {
496
+ Show
497
+ } from "./chunk-VEAC4I3F.js";
498
498
 
499
499
  // src/index.ts
500
500
  export * from "@dnd-kit/core";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cerberus-design/react",
3
- "version": "0.18.0",
3
+ "version": "0.18.1",
4
4
  "description": "The Cerberus Design React component library.",
5
5
  "browserslist": "> 0.25%, not dead",
6
6
  "sideEffects": false,
@@ -8,25 +8,24 @@
8
8
  "main": "build/legacy/index.cjs",
9
9
  "module": "build/modern/index.js",
10
10
  "peerDependencies": {
11
- "@pandacss/dev": "^0.53.1",
11
+ "@pandacss/dev": "^0.53.2",
12
12
  "react": "*",
13
13
  "react-dom": "*"
14
14
  },
15
15
  "dependencies": {
16
- "@ark-ui/react": "^5.0.1",
16
+ "@ark-ui/react": "^5.1.0",
17
17
  "@dnd-kit/core": "^6.1.0"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@microsoft/api-extractor": "^7.46.2",
21
- "@pandacss/dev": "^0.53.1",
21
+ "@pandacss/dev": "^0.53.2",
22
22
  "@types/react": "^19.0.10",
23
23
  "@types/react-dom": "^19.0.4",
24
24
  "react": "^19.0.0",
25
25
  "react-dom": "^19.0.0",
26
26
  "tsup": "^8.4.0",
27
- "@cerberus/styled-system": "npm:@cerberus-design/styled-system@0.17.2",
28
27
  "@cerberus-design/configs": "0.0.0",
29
- "@cerberus-design/panda-preset": "0.18.0"
28
+ "@cerberus-design/panda-preset": "0.18.1"
30
29
  },
31
30
  "publishConfig": {
32
31
  "access": "public"
@@ -1,7 +1,4 @@
1
- 'use client'
2
-
3
- import { cq } from 'styled-system/patterns'
4
- import { css } from 'styled-system/css'
1
+ import { circularProgress } from 'styled-system/recipes'
5
2
  import type { SVGProps } from 'react'
6
3
  import { Show } from './Show'
7
4
 
@@ -35,6 +32,11 @@ export interface CircularProgressProps extends SVGProps<SVGSVGElement> {
35
32
  * The background style of the CircularProgress
36
33
  */
37
34
  bgStyle?: 'filled' | 'transparent'
35
+ /**
36
+ * The size of the CircularProgress
37
+ * @default '1.1em'
38
+ */
39
+ size?: string
38
40
  }
39
41
 
40
42
  /**
@@ -50,12 +52,22 @@ export interface CircularProgressProps extends SVGProps<SVGSVGElement> {
50
52
  * ```
51
53
  */
52
54
  export function CircularProgress(props: CircularProgressProps) {
55
+ const { size = '1.1em' } = props
56
+ const sizeProps = props.size
57
+ ? {
58
+ height: size,
59
+ width: size,
60
+ }
61
+ : {}
62
+
53
63
  const strokeW: number = 14
54
64
  const radius = `calc(50% * (1 - ${strokeW}/100))`
55
65
  const status: string = props.syntax ?? 'Done'
56
66
  const now: number = props.now >= 100 ? 100 : props.now
57
67
  const bgStyle: string = props.bgStyle ?? 'filled'
58
68
 
69
+ const styles = circularProgress()
70
+
59
71
  return (
60
72
  <div
61
73
  id={props.id}
@@ -63,26 +75,18 @@ export function CircularProgress(props: CircularProgressProps) {
63
75
  aria-valuemin={0}
64
76
  aria-valuemax={100}
65
77
  aria-valuenow={now}
66
- className={cq({
67
- alignSelf: 'stretch',
68
- flex: 1,
69
- m: '4px',
70
- position: 'relative',
71
- })}
78
+ className={styles.root}
72
79
  role="progressbar"
73
80
  >
74
81
  <svg
75
82
  data-complete={now === 100}
76
- className={css({
77
- display: 'block',
78
- rounded: 'full',
79
- transition: 'all 0.5s ease',
80
- })}
83
+ className={styles.group}
81
84
  fill="none"
82
85
  strokeLinecap="round"
83
86
  strokeWidth={strokeW}
84
87
  viewBox="0 0 100 100"
85
88
  xmlns="http://www.w3.org/2000/svg"
89
+ {...sizeProps}
86
90
  >
87
91
  <title>{props.title}</title>
88
92
  <desc>{`${now}% ${status}`}</desc>
@@ -101,33 +105,25 @@ export function CircularProgress(props: CircularProgressProps) {
101
105
 
102
106
  <Show when={bgStyle === 'filled'}>
103
107
  <circle
104
- className={css({
105
- fill: 'page.surface.initial',
106
- })}
108
+ className={styles.base}
107
109
  cx="50%"
108
110
  cy="50%"
109
111
  r={`calc(50% * (1 - ${strokeW}/100))`}
110
112
  pathLength="100"
111
113
  />
112
114
  </Show>
115
+
113
116
  <circle
114
- className={css({
115
- stroke: 'page.bg.100',
116
- })}
117
+ className={styles.track}
117
118
  cx="50%"
118
119
  cy="50%"
119
120
  r={radius}
120
121
  pathLength="100"
121
122
  />
123
+
122
124
  <circle
123
125
  data-complete={now === 100}
124
- className={css({
125
- stroke: 'url(#gradient)',
126
- transition: 'stroke-dashoffset, stroke 0.5s ease',
127
- _isComplete: {
128
- stroke: 'success.bg.initial',
129
- },
130
- })}
126
+ className={styles.path}
131
127
  cx="50%"
132
128
  cy="50%"
133
129
  fill="none"
@@ -140,11 +136,7 @@ export function CircularProgress(props: CircularProgressProps) {
140
136
 
141
137
  <g>
142
138
  <text
143
- className={css({
144
- fill: 'page.text.initial',
145
- fontFamily: 'mono',
146
- textStyle: '1.25rem',
147
- })}
139
+ className={styles.title}
148
140
  x="50%"
149
141
  y="47%"
150
142
  dominantBaseline="middle"
@@ -153,11 +145,7 @@ export function CircularProgress(props: CircularProgressProps) {
153
145
  {now}%
154
146
  </text>
155
147
  <text
156
- className={css({
157
- fill: 'page.text.100',
158
- fontSize: '0.5rem',
159
- fontWeight: 600,
160
- })}
148
+ className={styles.description}
161
149
  x="50%"
162
150
  y="59%"
163
151
  dominantBaseline="middle"
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/CircularProgress.tsx"],"sourcesContent":["'use client'\n\nimport { cq } from 'styled-system/patterns'\nimport { css } from 'styled-system/css'\nimport type { SVGProps } from 'react'\nimport { Show } from './Show'\n\n/**\n * This module contains the CircularProgress component.\n * @module\n */\n\nexport interface CircularProgressProps extends SVGProps<SVGSVGElement> {\n /**\n * A unique identifier for the progress bar. Required for accessibility.\n */\n id: string\n /**\n * A description label for the progress bar. Required for accessibility.\n */\n label: string\n /**\n * The current value of the CircularProgress\n */\n now: number\n /**\n * The title of the CircularProgress for a11y\n */\n title: string\n /**\n * What is shown below the now value (default: 'Done')\n */\n syntax?: string\n /**\n * The background style of the CircularProgress\n */\n bgStyle?: 'filled' | 'transparent'\n}\n\n/**\n * The CircularProgress component is used to display a loading indicator.\n * @param props - SVG element attributes\n * @param props.now - The current value of the CircularProgress\n * @param props.title - The title of the CircularProgress for a11y\n * @param props.label - What is shown below the now value (default: 'Done')\n * @see https://cerberus.digitalu.design/react/progress-indicators\n * @example\n * ```tsx\n * <CircularProgress now={24} title=\"Course completion\" label=\"done\" />\n * ```\n */\nexport function CircularProgress(props: CircularProgressProps) {\n const strokeW: number = 14\n const radius = `calc(50% * (1 - ${strokeW}/100))`\n const status: string = props.syntax ?? 'Done'\n const now: number = props.now >= 100 ? 100 : props.now\n const bgStyle: string = props.bgStyle ?? 'filled'\n\n return (\n <div\n id={props.id}\n aria-label={props.label}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-valuenow={now}\n className={cq({\n alignSelf: 'stretch',\n flex: 1,\n m: '4px',\n position: 'relative',\n })}\n role=\"progressbar\"\n >\n <svg\n data-complete={now === 100}\n className={css({\n display: 'block',\n rounded: 'full',\n transition: 'all 0.5s ease',\n })}\n fill=\"none\"\n strokeLinecap=\"round\"\n strokeWidth={strokeW}\n viewBox=\"0 0 100 100\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <title>{props.title}</title>\n <desc>{`${now}% ${status}`}</desc>\n <defs>\n <linearGradient id=\"gradient\">\n <stop\n offset=\"0%\"\n stopColor=\"var(--cerberus-colors-data-viz-progress-start)\"\n />\n <stop\n offset=\"100%\"\n stopColor=\"var(--cerberus-colors-data-viz-progress-end)\"\n />\n </linearGradient>\n </defs>\n\n <Show when={bgStyle === 'filled'}>\n <circle\n className={css({\n fill: 'page.surface.initial',\n })}\n cx=\"50%\"\n cy=\"50%\"\n r={`calc(50% * (1 - ${strokeW}/100))`}\n pathLength=\"100\"\n />\n </Show>\n <circle\n className={css({\n stroke: 'page.bg.100',\n })}\n cx=\"50%\"\n cy=\"50%\"\n r={radius}\n pathLength=\"100\"\n />\n <circle\n data-complete={now === 100}\n className={css({\n stroke: 'url(#gradient)',\n transition: 'stroke-dashoffset, stroke 0.5s ease',\n _isComplete: {\n stroke: 'success.bg.initial',\n },\n })}\n cx=\"50%\"\n cy=\"50%\"\n fill=\"none\"\n r={radius}\n pathLength=\"100\"\n strokeDasharray=\"100\"\n strokeDashoffset={100 - now}\n transform=\"rotate(-90 50 50)\"\n />\n\n <g>\n <text\n className={css({\n fill: 'page.text.initial',\n fontFamily: 'mono',\n textStyle: '1.25rem',\n })}\n x=\"50%\"\n y=\"47%\"\n dominantBaseline=\"middle\"\n textAnchor=\"middle\"\n >\n {now}%\n </text>\n <text\n className={css({\n fill: 'page.text.100',\n fontSize: '0.5rem',\n fontWeight: 600,\n })}\n x=\"50%\"\n y=\"59%\"\n dominantBaseline=\"middle\"\n textAnchor=\"middle\"\n >\n {status}\n </text>\n </g>\n </svg>\n </div>\n )\n}\n"],"mappings":"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","names":[]}
package/src/.DS_Store DELETED
Binary file
Binary file