@byline/ui 1.10.2 → 1.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.
Files changed (182) hide show
  1. package/dist/components/accordion/accordion.js +5 -5
  2. package/dist/components/accordion/accordion_module.css +6 -6
  3. package/dist/components/avatar/avatar.js +4 -4
  4. package/dist/components/avatar/avatar_module.css +4 -4
  5. package/dist/components/badge/badge.js +1 -1
  6. package/dist/components/badge/badge_module.css +8 -8
  7. package/dist/components/button/button-group_module.css +2 -2
  8. package/dist/components/button/button.js +1 -1
  9. package/dist/components/button/button_module.css +38 -38
  10. package/dist/components/button/combo-button_module.css +6 -6
  11. package/dist/components/button/control-buttons.js +1 -1
  12. package/dist/components/button/control-buttons_module.css +1 -1
  13. package/dist/components/button/copy-button.js +2 -2
  14. package/dist/components/button/copy-button_module.css +7 -7
  15. package/dist/components/card/card.js +6 -6
  16. package/dist/components/card/card_module.css +9 -9
  17. package/dist/components/chips/chip.js +5 -5
  18. package/dist/components/chips/chip_module.css +35 -35
  19. package/dist/components/container/container.js +1 -1
  20. package/dist/components/container/container_module.css +4 -4
  21. package/dist/components/dropdown/dropdown.js +8 -8
  22. package/dist/components/dropdown/dropdown_module.css +8 -8
  23. package/dist/components/hamburger/hamburger.js +3 -3
  24. package/dist/components/hamburger/hamburger_module.css +16 -16
  25. package/dist/components/inputs/autocomplete.js +9 -9
  26. package/dist/components/inputs/autocomplete_module.css +36 -36
  27. package/dist/components/inputs/checkbox-group.js +1 -1
  28. package/dist/components/inputs/checkbox-group_module.css +1 -1
  29. package/dist/components/inputs/checkbox.js +5 -5
  30. package/dist/components/inputs/checkbox_module.css +31 -31
  31. package/dist/components/inputs/error-text_module.css +4 -4
  32. package/dist/components/inputs/help-text.js +1 -1
  33. package/dist/components/inputs/help-text_module.css +4 -4
  34. package/dist/components/inputs/input-adornment.js +1 -1
  35. package/dist/components/inputs/input-adornment_module.css +3 -3
  36. package/dist/components/inputs/input.js +5 -5
  37. package/dist/components/inputs/input_module.css +38 -38
  38. package/dist/components/inputs/label_module.css +2 -2
  39. package/dist/components/inputs/radio-group.js +1 -1
  40. package/dist/components/inputs/radio-group_module.css +18 -18
  41. package/dist/components/inputs/select.js +3 -3
  42. package/dist/components/inputs/select_module.css +8 -8
  43. package/dist/components/inputs/text-area.js +1 -1
  44. package/dist/components/inputs/text-area_module.css +3 -3
  45. package/dist/components/notifications/alert.js +10 -10
  46. package/dist/components/notifications/alert_module.css +16 -16
  47. package/dist/components/notifications/toast.js +7 -7
  48. package/dist/components/notifications/toast_module.css +24 -24
  49. package/dist/components/pager/pagination.js +2 -2
  50. package/dist/components/pager/pagination_module.css +6 -6
  51. package/dist/components/scroll-area/scroll-area.js +7 -7
  52. package/dist/components/scroll-area/scroll-area_module.css +9 -9
  53. package/dist/components/scroll-to-top/scroll-to-top.js +2 -2
  54. package/dist/components/scroll-to-top/scroll-to-top_module.css +9 -9
  55. package/dist/components/section/section.js +1 -1
  56. package/dist/components/section/section_module.css +1 -1
  57. package/dist/components/shimmer/shimmer_module.css +6 -6
  58. package/dist/components/table/table.js +8 -8
  59. package/dist/components/table/table_module.css +15 -15
  60. package/dist/components/tabs/tabs.js +4 -4
  61. package/dist/components/tabs/tabs_module.css +9 -9
  62. package/dist/components/tooltip/tooltip.js +2 -2
  63. package/dist/components/tooltip/tooltip_module.css +6 -6
  64. package/dist/fields/checkbox/checkbox-field.js +2 -1
  65. package/dist/fields/checkbox/checkbox-field.module.js +6 -0
  66. package/dist/fields/checkbox/checkbox-field_module.css +4 -0
  67. package/dist/forms/form-context.d.ts +1 -0
  68. package/dist/forms/form-context.js +3 -2
  69. package/dist/loaders/ellipses.js +2 -2
  70. package/dist/loaders/ellipses_module.css +2 -2
  71. package/dist/loaders/ring.js +2 -2
  72. package/dist/loaders/ring_module.css +2 -2
  73. package/dist/loaders/spinner.js +3 -3
  74. package/dist/loaders/spinner_module.css +3 -3
  75. package/dist/styles/styles.css +12 -0
  76. package/dist/widgets/datepicker/datepicker.js +11 -11
  77. package/dist/widgets/datepicker/datepicker_module.css +21 -21
  78. package/dist/widgets/drawer/drawer-container.js +1 -1
  79. package/dist/widgets/drawer/drawer-content.js +1 -1
  80. package/dist/widgets/drawer/drawer-header.js +1 -1
  81. package/dist/widgets/drawer/drawer-top-actions.js +1 -1
  82. package/dist/widgets/drawer/drawer.js +2 -2
  83. package/dist/widgets/drawer/drawer_module.css +11 -11
  84. package/dist/widgets/modal/modal-actions.js +1 -1
  85. package/dist/widgets/modal/modal-container.js +1 -1
  86. package/dist/widgets/modal/modal-content.js +1 -1
  87. package/dist/widgets/modal/modal-header.js +1 -1
  88. package/dist/widgets/modal/modal.js +2 -2
  89. package/dist/widgets/modal/modal_module.css +12 -12
  90. package/dist/widgets/search/search.js +6 -0
  91. package/dist/widgets/timeline/timeline_module.css +10 -10
  92. package/package.json +4 -4
  93. package/src/components/accordion/accordion.module.css +4 -4
  94. package/src/components/accordion/accordion.tsx +5 -5
  95. package/src/components/avatar/avatar.module.css +4 -4
  96. package/src/components/avatar/avatar.tsx +4 -4
  97. package/src/components/badge/badge.module.css +8 -8
  98. package/src/components/badge/badge.tsx +2 -2
  99. package/src/components/button/button-group.module.css +2 -2
  100. package/src/components/button/button.module.css +50 -50
  101. package/src/components/button/button.tsx +4 -4
  102. package/src/components/button/combo-button.module.css +7 -7
  103. package/src/components/button/control-buttons.module.css +5 -5
  104. package/src/components/button/control-buttons.tsx +1 -1
  105. package/src/components/button/copy-button.module.css +7 -7
  106. package/src/components/button/copy-button.tsx +5 -5
  107. package/src/components/card/card.module.css +9 -9
  108. package/src/components/card/card.tsx +6 -6
  109. package/src/components/chips/chip.module.css +45 -45
  110. package/src/components/chips/chip.tsx +8 -12
  111. package/src/components/container/container.module.css +4 -4
  112. package/src/components/container/container.tsx +1 -1
  113. package/src/components/dropdown/dropdown.module.css +7 -7
  114. package/src/components/dropdown/dropdown.tsx +8 -8
  115. package/src/components/hamburger/hamburger.module.css +16 -16
  116. package/src/components/hamburger/hamburger.tsx +3 -3
  117. package/src/components/inputs/autocomplete.module.css +42 -42
  118. package/src/components/inputs/autocomplete.tsx +12 -14
  119. package/src/components/inputs/checkbox-group.module.css +1 -1
  120. package/src/components/inputs/checkbox-group.tsx +1 -1
  121. package/src/components/inputs/checkbox.module.css +33 -33
  122. package/src/components/inputs/checkbox.tsx +8 -11
  123. package/src/components/inputs/error-text.module.css +4 -4
  124. package/src/components/inputs/help-text.module.css +4 -4
  125. package/src/components/inputs/help-text.tsx +1 -3
  126. package/src/components/inputs/input-adornment.module.css +3 -3
  127. package/src/components/inputs/input-adornment.tsx +2 -2
  128. package/src/components/inputs/input.module.css +45 -45
  129. package/src/components/inputs/input.tsx +8 -12
  130. package/src/components/inputs/label.module.css +2 -2
  131. package/src/components/inputs/radio-group.module.css +17 -17
  132. package/src/components/inputs/radio-group.tsx +1 -1
  133. package/src/components/inputs/select.module.css +8 -8
  134. package/src/components/inputs/select.tsx +3 -3
  135. package/src/components/inputs/text-area.module.css +4 -4
  136. package/src/components/inputs/text-area.tsx +3 -3
  137. package/src/components/notifications/alert.module.css +16 -16
  138. package/src/components/notifications/alert.tsx +11 -11
  139. package/src/components/notifications/toast.module.css +26 -26
  140. package/src/components/notifications/toast.tsx +7 -9
  141. package/src/components/pager/pagination.module.css +6 -6
  142. package/src/components/pager/pagination.tsx +2 -2
  143. package/src/components/scroll-area/scroll-area.module.css +5 -5
  144. package/src/components/scroll-area/scroll-area.tsx +7 -7
  145. package/src/components/scroll-to-top/scroll-to-top.module.css +9 -9
  146. package/src/components/scroll-to-top/scroll-to-top.tsx +2 -2
  147. package/src/components/section/section.module.css +1 -1
  148. package/src/components/section/section.tsx +1 -1
  149. package/src/components/shimmer/shimmer.module.css +6 -6
  150. package/src/components/table/table.module.css +15 -15
  151. package/src/components/table/table.tsx +8 -8
  152. package/src/components/tabs/tabs.module.css +4 -4
  153. package/src/components/tabs/tabs.tsx +4 -4
  154. package/src/components/tooltip/tooltip.module.css +2 -2
  155. package/src/components/tooltip/tooltip.tsx +2 -2
  156. package/src/fields/checkbox/checkbox-field.module.css +4 -0
  157. package/src/fields/checkbox/checkbox-field.tsx +2 -1
  158. package/src/forms/form-context.tsx +10 -2
  159. package/src/icons/source/icon-infonomic.svg +2 -2
  160. package/src/loaders/ellipses.module.css +2 -2
  161. package/src/loaders/ellipses.tsx +2 -2
  162. package/src/loaders/ring.module.css +2 -2
  163. package/src/loaders/ring.tsx +2 -2
  164. package/src/loaders/spinner.module.css +3 -3
  165. package/src/loaders/spinner.tsx +3 -6
  166. package/src/styles/styles.css +12 -0
  167. package/src/widgets/datepicker/datepicker.module.css +15 -15
  168. package/src/widgets/datepicker/datepicker.tsx +11 -21
  169. package/src/widgets/drawer/drawer-container.tsx +1 -1
  170. package/src/widgets/drawer/drawer-content.tsx +1 -1
  171. package/src/widgets/drawer/drawer-header.tsx +1 -1
  172. package/src/widgets/drawer/drawer-top-actions.tsx +1 -1
  173. package/src/widgets/drawer/drawer.module.css +11 -11
  174. package/src/widgets/drawer/drawer.tsx +2 -2
  175. package/src/widgets/modal/modal-actions.tsx +1 -1
  176. package/src/widgets/modal/modal-container.tsx +1 -1
  177. package/src/widgets/modal/modal-content.tsx +1 -1
  178. package/src/widgets/modal/modal-header.tsx +1 -1
  179. package/src/widgets/modal/modal.module.css +12 -12
  180. package/src/widgets/modal/modal.tsx +2 -2
  181. package/src/widgets/search/search.tsx +2 -0
  182. package/src/widgets/timeline/timeline.module.css +10 -10
@@ -14,7 +14,7 @@ function Table({
14
14
  }: TableProps & {
15
15
  ref?: React.RefObject<HTMLTableElement>
16
16
  }): React.JSX.Element {
17
- const classes = cx(styles.table, 'infonomic-table', className)
17
+ const classes = cx(styles.table, 'byline-table', className)
18
18
 
19
19
  return (
20
20
  <table ref={ref} className={classes} {...rest}>
@@ -33,10 +33,10 @@ function Container({
33
33
  }: TableContainerProps & {
34
34
  ref?: React.RefObject<HTMLDivElement>
35
35
  }) {
36
- const classes = cx(styles['table-container'], 'infonomic-table-container', className)
36
+ const classes = cx(styles['table-container'], 'byline-table-container', className)
37
37
  return (
38
38
  <div ref={ref} className={classes} {...rest}>
39
- <div className={cx('infonomic-table-scroller', styles['table-scroller'])}>{children}</div>
39
+ <div className={cx('byline-table-scroller', styles['table-scroller'])}>{children}</div>
40
40
  </div>
41
41
  )
42
42
  }
@@ -52,7 +52,7 @@ function Body({
52
52
  ref?: React.RefObject<HTMLTableSectionElement>
53
53
  }): React.JSX.Element {
54
54
  return (
55
- <tbody ref={ref} className={cx('infonomic-table-body', className)} {...rest}>
55
+ <tbody ref={ref} className={cx('byline-table-body', className)} {...rest}>
56
56
  {children}
57
57
  </tbody>
58
58
  )
@@ -68,7 +68,7 @@ function Header({
68
68
  }: TableHeaderProps & {
69
69
  ref?: React.RefObject<HTMLTableSectionElement>
70
70
  }): React.JSX.Element {
71
- const classes = cx(styles['table-header'], 'infonomic-table-header', className)
71
+ const classes = cx(styles['table-header'], 'byline-table-header', className)
72
72
 
73
73
  return (
74
74
  <thead ref={ref} className={classes} {...rest}>
@@ -87,7 +87,7 @@ function Row({
87
87
  }: TableRowProps & {
88
88
  ref?: React.RefObject<HTMLTableRowElement>
89
89
  }): React.JSX.Element {
90
- const classes = cx(styles['table-row'], 'infonomic-table-row', className)
90
+ const classes = cx(styles['table-row'], 'byline-table-row', className)
91
91
 
92
92
  return (
93
93
  <tr ref={ref} className={classes} {...rest}>
@@ -108,7 +108,7 @@ function HeadingCell({
108
108
  }): React.JSX.Element {
109
109
  const classes = cx(
110
110
  styles['table-heading-cell'],
111
- 'infonomic-table-heading-cell',
111
+ 'byline-table-heading-cell',
112
112
  'not-prose',
113
113
  className
114
114
  )
@@ -129,7 +129,7 @@ function Cell({
129
129
  }: TableCellProps & {
130
130
  ref?: React.RefObject<HTMLTableCellElement>
131
131
  }): React.JSX.Element {
132
- const classes = cx(styles['table-cell'], 'infonomic-table-cell', className)
132
+ const classes = cx(styles['table-cell'], 'byline-table-cell', className)
133
133
 
134
134
  return (
135
135
  <td ref={ref} className={classes} {...rest}>
@@ -11,7 +11,7 @@
11
11
 
12
12
  @layer byline-components {
13
13
  .tabs-root,
14
- :global(.infonomic-tabs-root) {
14
+ :global(.byline-tabs-root) {
15
15
  display: flex;
16
16
  padding: var(--spacing-8);
17
17
  flex-direction: column;
@@ -21,7 +21,7 @@
21
21
  }
22
22
 
23
23
  .tabs-list,
24
- :global(.infonomic-tabs-list) {
24
+ :global(.byline-tabs-list) {
25
25
  display: flex;
26
26
  width: 100%;
27
27
  gap: var(--gap-2);
@@ -36,7 +36,7 @@
36
36
  }
37
37
 
38
38
  .tabs-trigger,
39
- :global(.infonomic-tabs-trigger) {
39
+ :global(.byline-tabs-trigger) {
40
40
  align-items: center;
41
41
  justify-content: center;
42
42
  white-space: nowrap;
@@ -48,7 +48,7 @@
48
48
  }
49
49
 
50
50
  .tabs-content,
51
- :global(.infonomic-tabs-content) {
51
+ :global(.byline-tabs-content) {
52
52
  margin-top: var(--spacing-8);
53
53
  padding: 6px;
54
54
  outline: none;
@@ -16,7 +16,7 @@ const Tabs = ({
16
16
  }) => (
17
17
  <TabsPrimitive.Root
18
18
  ref={ref}
19
- className={cx(styles['tabs-root'], 'infonomic-tabs-root', className)}
19
+ className={cx(styles['tabs-root'], 'byline-tabs-root', className)}
20
20
  {...props}
21
21
  />
22
22
  )
@@ -31,7 +31,7 @@ const TabsList = ({
31
31
  }) => (
32
32
  <TabsPrimitive.List
33
33
  ref={ref}
34
- className={cx(styles['tabs-list'], 'infonomic-tabs-list', className)}
34
+ className={cx(styles['tabs-list'], 'byline-tabs-list', className)}
35
35
  {...props}
36
36
  />
37
37
  )
@@ -46,7 +46,7 @@ const TabsTrigger = ({
46
46
  }) => (
47
47
  <TabsPrimitive.Tab
48
48
  ref={ref}
49
- className={cx(styles['tabs-trigger'], 'infonomic-tabs-trigger', className)}
49
+ className={cx(styles['tabs-trigger'], 'byline-tabs-trigger', className)}
50
50
  {...props}
51
51
  />
52
52
  )
@@ -63,7 +63,7 @@ const TabsContent = ({
63
63
  <TabsPrimitive.Panel
64
64
  ref={ref}
65
65
  keepMounted={keepMounted}
66
- className={cx(styles['tabs-content'], 'infonomic-tabs-content', className)}
66
+ className={cx(styles['tabs-content'], 'byline-tabs-content', className)}
67
67
  {...props}
68
68
  />
69
69
  )
@@ -11,7 +11,7 @@
11
11
 
12
12
  @layer byline-components {
13
13
  .tooltip,
14
- :global(.infonomic-tooltip) {
14
+ :global(.byline-tooltip) {
15
15
  font-size: 0.75rem;
16
16
  line-height: 1;
17
17
  color: var(--surface-item-text);
@@ -46,7 +46,7 @@
46
46
  }
47
47
 
48
48
  .tooltip-arrow,
49
- :global(.infonomic-tooltip-arrow) {
49
+ :global(.byline-tooltip-arrow) {
50
50
  display: flex;
51
51
 
52
52
  &[data-side="top"] {
@@ -67,9 +67,9 @@ export const Tooltip = function Tooltip({
67
67
  <TooltipPrimitive.Trigger render={children} />
68
68
  <TooltipPrimitive.Portal>
69
69
  <TooltipPrimitive.Positioner ref={ref} side={side} sideOffset={sideOffset}>
70
- <TooltipPrimitive.Popup className={cx(styles.tooltip, 'infonomic-tooltip')}>
70
+ <TooltipPrimitive.Popup className={cx(styles.tooltip, 'byline-tooltip')}>
71
71
  <TooltipPrimitive.Arrow
72
- className={cx(styles['tooltip-arrow'], 'infonomic-tooltip-arrow')}
72
+ className={cx(styles['tooltip-arrow'], 'byline-tooltip-arrow')}
73
73
  >
74
74
  <ArrowSvg />
75
75
  </TooltipPrimitive.Arrow>
@@ -0,0 +1,4 @@
1
+ :global(.byline-field-checkbox),
2
+ .field-checkbox {
3
+ margin: 0;
4
+ }
@@ -10,6 +10,7 @@ import type { CheckboxField as FieldType } from '@byline/core'
10
10
 
11
11
  import { useFieldError, useFieldValue } from '../../forms/form-context'
12
12
  import { Checkbox } from '../../uikit.js'
13
+ import styles from './checkbox-field.module.css'
13
14
 
14
15
  export const CheckboxField = ({
15
16
  field,
@@ -32,7 +33,7 @@ export const CheckboxField = ({
32
33
  const checked = value ?? fieldValue ?? defaultValue ?? false
33
34
 
34
35
  return (
35
- <div className={`byline-field-checkbox ${field.name}`}>
36
+ <div className={`byline-field-checkbox ${field.name} ${styles['field-checkbox']}`}>
36
37
  <Checkbox
37
38
  id={id ?? fieldPath}
38
39
  name={field.name}
@@ -52,6 +52,7 @@ interface FormContextType {
52
52
  runFieldHooks: (fields: Field[]) => Promise<FormError[]>
53
53
  validateForm: (fields: Field[]) => FormError[]
54
54
  errors: FormError[]
55
+ getErrors: () => FormError[]
55
56
  clearErrors: () => void
56
57
  setFieldError: (field: string, message: string) => void
57
58
  clearFieldError: (field: string) => void
@@ -520,6 +521,7 @@ export const FormProvider = ({
520
521
  runFieldHooks,
521
522
  validateForm,
522
523
  errors: errorsRef.current,
524
+ getErrors: () => errorsRef.current,
523
525
  clearErrors,
524
526
  setFieldError,
525
527
  clearFieldError,
@@ -562,9 +564,15 @@ export const useFormStore = () => {
562
564
  }
563
565
 
564
566
  export const useFieldError = (name: string) => {
565
- const { errors, subscribeErrors } = useFormContext()
567
+ const { getErrors, subscribeErrors } = useFormContext()
568
+ // Seed from the live errors ref via getErrors() rather than the context's
569
+ // `errors` snapshot — the snapshot is bound at FormProvider's first render
570
+ // and goes stale as soon as validateForm replaces errorsRef.current. Fields
571
+ // mounted after validation has already run (e.g. switching to a tab whose
572
+ // error badge is non-zero) would otherwise initialise to undefined and miss
573
+ // the existing error until something else fires notifyErrorListeners.
566
574
  const [error, setError] = useState<string | undefined>(
567
- errors.find((e) => e.field === name)?.message
575
+ () => getErrors().find((e) => e.field === name)?.message
568
576
  )
569
577
 
570
578
  useEffect(() => {
@@ -1,4 +1,4 @@
1
- <svg data-name="infonomic-icon"
1
+ <svg data-name="byline-icon"
2
2
  xmlns="http://www.w3.org/2000/svg"
3
3
  xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512">
4
4
  <defs>
@@ -40,4 +40,4 @@
40
40
  <path d="M436.21,178.4c.68-1,4.69-7.09,4.85-7.34.46-.71,4.89-8.17,5.18-8.68,38.11-67.56,27.78-139,18.78-147C451.83,3.74,361.31,40.33,370.19,48.31,411.55,28.15,452,24.85,455.1,27.42c4.63,3.85,12.22,91.46-38.4,152.11-29,34.76-86.92,80-106.27,94.77-4.1,3.13-6,7-5.38,10.37,1.93,11.12,4.74,36.2-6.5,48-14.68,15.45-67,33-70.56,27.84s53.54-49.8,16.51-81.23c-4.91-4.16-9.69-5.83-14.54-8.22l.58-.05.08.86c-31.77-7.59-57.56,40.82-62.5,38.58-5.69-2.58,1.9-57.17,14.47-74.38a25.2,25.2,0,0,1,7.11-6.45h0s-17.83,4.52-25.59,34.08c-5.47,20.86-6.35,47.39-6.39,61.21,0,5.77-7.47,6.32-7.29-3,.21-10.48-1.76-23.93-13.51-34.46-20-17.94-44.4-5.17-51.67-.11-1.55,1.08-3.09-1.63-3.5-3.26-6.14-24.67-21.64-34.24-21.64-34.24C59.73,168.36,125.14,97.53,169.25,75.8A218.31,218.31,0,0,0,25,286.64c29.43,6.51,38.81,32.9,41.79,48.63,1.34,7.06,3,4,4.74.48,5.52-11.33,16.24-23.12,34.35-21.5,25.51,2.29,29.92,26.9,30.78,38.8.28,4,3.25,5.2,5.33,4,22.45-13.36,82.2-65.62,82.2-65.62s3.28-3.29,7.25-3.07a8,8,0,0,1,4.28,1.76c5.59,4.66.73,11.51.73,11.51s-40.77,68-49.88,92.51c-.84,2.26.9,4.77,4.86,4.34.36,0,.71-.26,1.1-.3h0a74.82,74.82,0,0,1,9.47-.1c12.43.51,28,5.08,33.2,23.71,4.87,17.5-4.8,30.19-15,37.66-3.17,2.33-5.87,4.55,1.33,4.59,16.07.09,44.17,4.42,55.85,32.33,10.5-1.64,20.94-3.29,31.4-7.33h0s-.22.12-.18.11c.68-.21,15.14-5,24.25-9.37.12-.05,0-.32.17-.33h0a207.63,207.63,0,0,0,55.56-35.75c29.25-24.79,41.58-41,54.6-74.54A218.22,218.22,0,0,0,436.21,178.4ZM313.13,451.63v.05c-15-9.82-32.77-7.85-41-6.17-2.87.59-2.95-1.67-2.27-3.09,9.28-19.34,1.95-38.85-10.07-46.69-15.18-9.89-37.53-4.54-38.94-6.1-2.62-2.9,3.69-11,3.69-11,24.4-4.56,55-18,77.92-30.55s21.36-43.67,18.56-54.36,5.37-13.79,5.37-13.79c35.34-23,76.85-65.66,97.22-87.62l-.12.21S488,363.72,313.13,451.63Z" fill="url(#e82ad6d9-f6de-470e-9cc8-5c1e25860ae0)"/>
41
41
  <path d="M171.89,307.66s16.44-49.68,27.18-55.37,48.65,7.88,46.05,11c-.65.78-2.63,1.43-5.49,2.1-8.55,2-24.91,4.13-36.35,10.09C188,283.41,171.82,315.53,171.89,307.66Z" fill="url(#a031a507-2f2b-46ac-8fd0-d46923b5cede)"/>
42
42
  <path d="M24.87,286.91C28.47,405.21,124.8,500,243.09,500A219.07,219.07,0,0,0,277,497.36c-12-27.17-39.24-31.58-55.11-31.67-7.2,0-4.49-2.26-1.32-4.61,10.18-7.55,19.87-20.33,15-38-6.87-24.9-31.94-24.79-43.83-23.48-4,.44-5.72-2.28-4.88-4.57,9.12-24.71,49.93-93.46,49.93-93.46s4.87-6.92-.73-11.63-11.54,1.32-11.54,1.32-59.83,52.8-82.31,66.29c-2.08,1.25-5,0-5.34-4-.86-12-5.28-36.88-30.82-39.2-18.14-1.65-28.87,10.26-34.4,21.71-1.73,3.57-3.4,6.65-4.74-.48-3-15.89-12.38-42.57-41.85-49.15Z" fill="url(#a9106638-56d4-4f79-8812-bed67cfca285)"/>
43
- </svg>
43
+ </svg>
@@ -11,7 +11,7 @@
11
11
 
12
12
  @layer byline-components {
13
13
  .loader-ellipsis,
14
- :global(.infonomic-loader-ellipsis) {
14
+ :global(.byline-loader-ellipsis) {
15
15
  --_size: var(--loader-ellipsis-size, 80px);
16
16
  --_color: var(--loader-ellipsis-color, var(--loader-color, currentColor));
17
17
  display: inline-block;
@@ -21,7 +21,7 @@
21
21
  }
22
22
 
23
23
  .loader-ellipsis-dot,
24
- :global(.infonomic-loader-ellipsis-dot) {
24
+ :global(.byline-loader-ellipsis-dot) {
25
25
  position: absolute;
26
26
  top: 41.25%;
27
27
  width: 16.25%;
@@ -27,13 +27,13 @@ export function LoaderEllipsis({
27
27
  <div
28
28
  // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
29
29
  key={index}
30
- className={cx('infonomic-loader-ellipsis-dot', styles['loader-ellipsis-dot'])}
30
+ className={cx('byline-loader-ellipsis-dot', styles['loader-ellipsis-dot'])}
31
31
  />
32
32
  ))
33
33
 
34
34
  return (
35
35
  <div
36
- className={cx('infonomic-loader-ellipsis', styles['loader-ellipsis'], className)}
36
+ className={cx('byline-loader-ellipsis', styles['loader-ellipsis'], className)}
37
37
  style={ellipsisStyle}
38
38
  {...rest}
39
39
  >
@@ -11,7 +11,7 @@
11
11
 
12
12
  @layer byline-components {
13
13
  .loader-ring,
14
- :global(.infonomic-loader-ring) {
14
+ :global(.byline-loader-ring) {
15
15
  --_size: var(--loader-ring-size, 60px);
16
16
  --_color: var(--loader-ring-color, var(--loader-color, currentColor));
17
17
  display: inline-block;
@@ -21,7 +21,7 @@
21
21
  }
22
22
 
23
23
  .loader-ring-arc,
24
- :global(.infonomic-loader-ring-arc) {
24
+ :global(.byline-loader-ring-arc) {
25
25
  box-sizing: border-box;
26
26
  display: block;
27
27
  position: absolute;
@@ -28,14 +28,14 @@ export function LoaderRing({
28
28
  <div
29
29
  // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
30
30
  key={index}
31
- className={cx('infonomic-loader-ring-arc', styles['loader-ring-arc'])}
31
+ className={cx('byline-loader-ring-arc', styles['loader-ring-arc'])}
32
32
  />
33
33
  )
34
34
  })
35
35
 
36
36
  return (
37
37
  <div
38
- className={cx('infonomic-loader-ring', styles['loader-ring'], className)}
38
+ className={cx('byline-loader-ring', styles['loader-ring'], className)}
39
39
  style={ringStyle}
40
40
  {...rest}
41
41
  >
@@ -11,7 +11,7 @@
11
11
 
12
12
  @layer byline-components {
13
13
  .loader-spinner,
14
- :global(.infonomic-loader-spinner) {
14
+ :global(.byline-loader-spinner) {
15
15
  --_size: var(--loader-spinner-size, 56px);
16
16
  --_color: var(--loader-spinner-color, var(--loader-color, currentColor));
17
17
  display: inline-block;
@@ -21,13 +21,13 @@
21
21
  }
22
22
 
23
23
  .loader-spinner-blade,
24
- :global(.infonomic-loader-spinner-blade) {
24
+ :global(.byline-loader-spinner-blade) {
25
25
  transform-origin: calc(var(--_size) * 0.5) calc(var(--_size) * 0.5714);
26
26
  animation: loader-spinner 1.2s linear infinite;
27
27
  }
28
28
 
29
29
  .loader-spinner-blade-inner,
30
- :global(.infonomic-loader-spinner-blade-inner) {
30
+ :global(.byline-loader-spinner-blade-inner) {
31
31
  display: block;
32
32
  position: absolute;
33
33
  top: 0;
@@ -18,13 +18,10 @@ export function LoaderSpinner({
18
18
  // biome-ignore lint/suspicious/noArrayIndexKey: <explanation>
19
19
  <div
20
20
  key={index}
21
- className={cx('infonomic-loader-spinner-blade', styles['loader-spinner-blade'])}
21
+ className={cx('byline-loader-spinner-blade', styles['loader-spinner-blade'])}
22
22
  >
23
23
  <div
24
- className={cx(
25
- 'infonomic-loader-spinner-blade-inner',
26
- styles['loader-spinner-blade-inner']
27
- )}
24
+ className={cx('byline-loader-spinner-blade-inner', styles['loader-spinner-blade-inner'])}
28
25
  />
29
26
  </div>
30
27
  )
@@ -42,7 +39,7 @@ export function LoaderSpinner({
42
39
 
43
40
  return (
44
41
  <div
45
- className={cx('infonomic-loader-spinner', styles['loader-spinner'], className)}
42
+ className={cx('byline-loader-spinner', styles['loader-spinner'], className)}
46
43
  style={spinnerStyle}
47
44
  {...rest}
48
45
  >
@@ -17,3 +17,15 @@
17
17
  .byline-ui {
18
18
  isolation: isolate;
19
19
  }
20
+
21
+ .sr-only {
22
+ position: absolute;
23
+ width: 1px;
24
+ height: 1px;
25
+ padding: 0;
26
+ margin: -1px;
27
+ overflow: hidden;
28
+ clip: rect(0, 0, 0, 0);
29
+ white-space: nowrap;
30
+ border-width: 0;
31
+ }
@@ -10,19 +10,19 @@
10
10
  byline-utilities;
11
11
  @layer byline-components {
12
12
  .container,
13
- :global(.infonomic-datepicker-container) {
13
+ :global(.byline-datepicker-container) {
14
14
  position: relative;
15
15
  }
16
16
 
17
17
  .input,
18
18
  .input-wrapper,
19
- :global(.infonomic-datepicker-input),
20
- :global(.infonomic-datepicker-input-wrapper) {
19
+ :global(.byline-datepicker-input),
20
+ :global(.byline-datepicker-input-wrapper) {
21
21
  width: 100%;
22
22
  }
23
23
 
24
24
  .content,
25
- :global(.infonomic-datepicker-content) {
25
+ :global(.byline-datepicker-content) {
26
26
  width: 100%;
27
27
  z-index: 50;
28
28
  border-radius: 4px;
@@ -66,14 +66,14 @@
66
66
  }
67
67
 
68
68
  .content-components,
69
- :global(.infonomic-datepicker-content-components) {
69
+ :global(.byline-datepicker-content-components) {
70
70
  display: flex;
71
71
  width: 100%;
72
72
  gap: var(--spacing-8);
73
73
  }
74
74
 
75
75
  .status-and-actions,
76
- :global(.infonomic-datepicker-status-and-actions) {
76
+ :global(.byline-datepicker-status-and-actions) {
77
77
  display: flex;
78
78
  flex-direction: column;
79
79
  justify-content: space-between;
@@ -82,7 +82,7 @@
82
82
  }
83
83
 
84
84
  .content-status,
85
- :global(.infonomic-datepicker-content-status) {
85
+ :global(.byline-datepicker-content-status) {
86
86
  display: flex;
87
87
  align-items: center;
88
88
  padding-left: var(--spacing-16);
@@ -93,7 +93,7 @@
93
93
  }
94
94
 
95
95
  .content-actions,
96
- :global(.infonomic-datepicker-content-actions) {
96
+ :global(.byline-datepicker-content-actions) {
97
97
  display: flex;
98
98
  flex-direction: row;
99
99
  justify-content: space-between;
@@ -105,18 +105,18 @@
105
105
  }
106
106
 
107
107
  .content-actions-button,
108
- :global(.infonomic-datepicker-content-actions-button) {
108
+ :global(.byline-datepicker-content-actions-button) {
109
109
  /* min-width: 100px; */
110
110
  --ring-color: var(--violet-7);
111
111
  }
112
112
 
113
113
  .arrow,
114
- :global(.infonomic-datepicker-arrow) {
114
+ :global(.byline-datepicker-arrow) {
115
115
  fill: var(--gray-50);
116
116
  }
117
117
 
118
118
  .close,
119
- :global(.infonomic-datepicker-close) {
119
+ :global(.byline-datepicker-close) {
120
120
  all: unset;
121
121
  font-family: inherit;
122
122
  border-radius: 100%;
@@ -140,19 +140,19 @@
140
140
  }
141
141
 
142
142
  .time-picker-container,
143
- :global(.infonomic-datepicker-time-picker-container) {
143
+ :global(.byline-datepicker-time-picker-container) {
144
144
  width: 80px;
145
145
  margin: 0.6rem 0.5rem 1rem 0;
146
146
  }
147
147
 
148
148
  .time-picker-scroll-area,
149
- :global(.infonomic-datepicker-time-picker-scroll-area) {
149
+ :global(.byline-datepicker-time-picker-scroll-area) {
150
150
  height: 280px;
151
151
  padding-right: var(--spacing-16);
152
152
  }
153
153
 
154
154
  .time-picker,
155
- :global(.infonomic-datepicker-time-picker) {
155
+ :global(.byline-datepicker-time-picker) {
156
156
  display: flex;
157
157
  padding-left: var(--spacing-4);
158
158
  padding-right: var(--spacing-4);
@@ -161,7 +161,7 @@
161
161
  }
162
162
 
163
163
  .time-picker-button,
164
- :global(.infonomic-datepicker-time-picker-button) {
164
+ :global(.byline-datepicker-time-picker-button) {
165
165
  width: 100%;
166
166
  }
167
167
 
@@ -136,7 +136,7 @@ export function DatePicker({
136
136
  })
137
137
 
138
138
  return (
139
- <div className={cx('infonomic-datepicker-container', styles.container, containerClassName)}>
139
+ <div className={cx('byline-datepicker-container', styles.container, containerClassName)}>
140
140
  <div style={{ display: 'flex', alignItems: 'center', gap: 'var(--spacing-8)' }}>
141
141
  <Input
142
142
  id={id}
@@ -148,9 +148,9 @@ export function DatePicker({
148
148
  intent={intent}
149
149
  inputSize={inputSize}
150
150
  ref={inputRef}
151
- className={cx('infonomic-datepicker-input', styles.input, inputClassName)}
151
+ className={cx('byline-datepicker-input', styles.input, inputClassName)}
152
152
  inputWrapperClassName={cx(
153
- 'infonomic-datepicker-input-wrapper',
153
+ 'byline-datepicker-input-wrapper',
154
154
  styles['input-wrapper'],
155
155
  inputWrapperClassName
156
156
  )}
@@ -207,13 +207,10 @@ export function DatePicker({
207
207
  <Popover.Portal>
208
208
  <Popover.Positioner sideOffset={5}>
209
209
  <Popover.Popup
210
- className={cx('infonomic-datepicker-content', styles.content, contentClassName)}
210
+ className={cx('byline-datepicker-content', styles.content, contentClassName)}
211
211
  >
212
212
  <div
213
- className={cx(
214
- 'infonomic-datepicker-content-components',
215
- styles['content-components']
216
- )}
213
+ className={cx('byline-datepicker-content-components', styles['content-components'])}
217
214
  >
218
215
  <div ref={calendarRef}>
219
216
  <Calendar
@@ -284,25 +281,18 @@ export function DatePicker({
284
281
  )}
285
282
  </div>
286
283
  <div
287
- className={cx(
288
- 'infonomic-datepicker-status-and-actions',
289
- styles['status-and-actions']
290
- )}
284
+ className={cx('byline-datepicker-status-and-actions', styles['status-and-actions'])}
291
285
  >
292
- <div
293
- className={cx('infonomic-datepicker-content-status', styles['content-status'])}
294
- >
286
+ <div className={cx('byline-datepicker-content-status', styles['content-status'])}>
295
287
  {date ? format(date, mode === 'datetime' ? 'PPPp' : 'PPP') : 'No date selected'}
296
288
  </div>
297
- <div
298
- className={cx('infonomic-datepicker-content-actions', styles['content-actions'])}
299
- >
289
+ <div className={cx('byline-datepicker-content-actions', styles['content-actions'])}>
300
290
  <div>
301
291
  <Button
302
292
  variant="outlined"
303
293
  size="sm"
304
294
  className={cx(
305
- 'infonomic-datepicker-content-actions-button',
295
+ 'byline-datepicker-content-actions-button',
306
296
  styles['content-actions-button']
307
297
  )}
308
298
  onClick={() => {
@@ -320,7 +310,7 @@ export function DatePicker({
320
310
  size="sm"
321
311
  intent="noeffect"
322
312
  className={cx(
323
- 'infonomic-datepicker-content-actions-button',
313
+ 'byline-datepicker-content-actions-button',
324
314
  styles['content-actions-button']
325
315
  )}
326
316
  onClick={() => {
@@ -333,7 +323,7 @@ export function DatePicker({
333
323
  variant="outlined"
334
324
  size="sm"
335
325
  className={cx(
336
- 'infonomic-datepicker-content-actions-button',
326
+ 'byline-datepicker-content-actions-button',
337
327
  styles['content-actions-button']
338
328
  )}
339
329
  onClick={() => {
@@ -22,7 +22,7 @@ export function DrawerContainer({
22
22
  return (
23
23
  <div
24
24
  ref={ref}
25
- className={cx('infonomic-drawer-container', styles['drawer-container'], className)}
25
+ className={cx('byline-drawer-container', styles['drawer-container'], className)}
26
26
  {...rest}
27
27
  >
28
28
  {children}
@@ -23,7 +23,7 @@ export function DrawerContent({
23
23
  <div
24
24
  ref={ref}
25
25
  {...rest}
26
- className={cx('infonomic-drawer-content', styles['drawer-content'], className)}
26
+ className={cx('byline-drawer-content', styles['drawer-content'], className)}
27
27
  >
28
28
  {children}
29
29
  </div>
@@ -19,7 +19,7 @@ export const DrawerHeader = function DrawerHeader({
19
19
  }: DrawerHeaderProps & {
20
20
  ref?: React.RefObject<HTMLDivElement>
21
21
  }) {
22
- const classes = cx('infonomic-drawer-header', styles['drawer-header'], className)
22
+ const classes = cx('byline-drawer-header', styles['drawer-header'], className)
23
23
  return (
24
24
  <div style={{ overflowWrap: 'anywhere' }} ref={ref} {...rest} className={classes}>
25
25
  {children}
@@ -19,7 +19,7 @@ export const DrawerTopActions = function DrawerHeader({
19
19
  }: DrawerTopActionProps & {
20
20
  ref?: React.RefObject<HTMLDivElement>
21
21
  }) {
22
- const classes = cx('infonomic-drawer-top-actions', styles['drawer-top-actions'], className)
22
+ const classes = cx('byline-drawer-top-actions', styles['drawer-top-actions'], className)
23
23
  return (
24
24
  <div style={{ whiteSpace: 'nowrap' }} ref={ref} {...rest} className={classes}>
25
25
  {children}