@invopop/popui 0.1.14 → 0.1.15

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 (93) hide show
  1. package/dist/BaseButton.svelte +25 -103
  2. package/dist/BaseCard.svelte +35 -30
  3. package/dist/BaseCounter.svelte +11 -8
  4. package/dist/BaseTable.svelte +6 -8
  5. package/dist/BaseTableActions.svelte +2 -2
  6. package/dist/BaseTableCellContent.svelte +2 -2
  7. package/dist/BaseTableHeaderContent.svelte +2 -2
  8. package/dist/Breadcrumb.svelte +40 -0
  9. package/dist/Breadcrumb.svelte.d.ts +4 -0
  10. package/dist/Breadcrumbs.svelte +5 -30
  11. package/dist/ButtonFile.svelte +35 -30
  12. package/dist/ButtonUuidCopy.svelte +2 -2
  13. package/dist/CardCheckbox.svelte +25 -21
  14. package/dist/CardRelation.svelte +12 -16
  15. package/dist/CompanySelector.svelte +35 -7
  16. package/dist/DataListItem.svelte +14 -10
  17. package/dist/DatePicker.svelte +9 -9
  18. package/dist/DrawerContext.svelte +112 -10
  19. package/dist/DrawerContextItem.svelte +19 -29
  20. package/dist/DrawerContextSeparator.svelte +1 -1
  21. package/dist/DrawerContextWorkspace.svelte +7 -7
  22. package/dist/DropdownSelect.svelte +40 -14
  23. package/dist/EmptyState.svelte +40 -0
  24. package/dist/EmptyState.svelte.d.ts +4 -0
  25. package/dist/EmptyStateIllustration.svelte.d.ts +0 -1
  26. package/dist/FeedEvents.svelte +9 -5
  27. package/dist/FeedIconEvent.svelte +1 -1
  28. package/dist/FeedItem.svelte +8 -8
  29. package/dist/FeedItemDetail.svelte +7 -5
  30. package/dist/GlobalSearch.svelte +13 -12
  31. package/dist/InputCheckbox.svelte +2 -5
  32. package/dist/InputError.svelte +4 -9
  33. package/dist/InputLabel.svelte +3 -1
  34. package/dist/InputRadio.svelte +26 -11
  35. package/dist/InputSearch.svelte +8 -8
  36. package/dist/InputSelect.svelte +32 -31
  37. package/dist/InputText.svelte +32 -24
  38. package/dist/InputTextarea.svelte +25 -19
  39. package/dist/InputToggle.svelte +24 -18
  40. package/dist/Notification.svelte +55 -24
  41. package/dist/ProfileAvatar.svelte +41 -14
  42. package/dist/SeparatorHorizontal.svelte +2 -2
  43. package/dist/ShortcutWrapper.svelte +14 -5
  44. package/dist/StatusLabel.svelte +4 -5
  45. package/dist/StepIconList.svelte +7 -9
  46. package/dist/TagBeta.svelte +26 -14
  47. package/dist/TagStatus.svelte +33 -48
  48. package/dist/TitleMain.svelte +1 -1
  49. package/dist/TitleSection.svelte +1 -1
  50. package/dist/UuidCopy.svelte +4 -4
  51. package/dist/alert-dialog/alert-dialog-action.svelte +5 -3
  52. package/dist/alert-dialog/alert-dialog-cancel.svelte +4 -2
  53. package/dist/alert-dialog/alert-dialog-content.svelte +1 -1
  54. package/dist/alert-dialog/alert-dialog-description.svelte +1 -1
  55. package/dist/alert-dialog/alert-dialog-footer.svelte +1 -1
  56. package/dist/alert-dialog/alert-dialog-header.svelte +1 -1
  57. package/dist/alert-dialog/alert-dialog-title.svelte +1 -1
  58. package/dist/button/button.svelte +183 -24
  59. package/dist/button/button.svelte.d.ts +48 -26
  60. package/dist/index.d.ts +2 -7
  61. package/dist/index.js +2 -12
  62. package/dist/range-calendar/range-calendar-cell.svelte +1 -1
  63. package/dist/range-calendar/range-calendar-day.svelte +10 -8
  64. package/dist/range-calendar/range-calendar-head-cell.svelte +1 -1
  65. package/dist/range-calendar/range-calendar-next-button.svelte +3 -3
  66. package/dist/range-calendar/range-calendar-prev-button.svelte +3 -3
  67. package/dist/range-calendar/range-calendar.svelte +1 -1
  68. package/dist/svg/CheckBadge.svelte +18 -0
  69. package/dist/svg/CheckBadge.svelte.d.ts +26 -0
  70. package/dist/svg/IconEmpty.svelte +78 -106
  71. package/dist/table/table-body.svelte +1 -1
  72. package/dist/table/table-cell.svelte +1 -1
  73. package/dist/table/table-footer.svelte +1 -1
  74. package/dist/table/table-head.svelte +1 -1
  75. package/dist/table/table-header.svelte +1 -1
  76. package/dist/table/table-row.svelte +1 -1
  77. package/dist/tabs/tabs-list.svelte +1 -1
  78. package/dist/tailwind.theme.css +969 -0
  79. package/dist/tooltip/tooltip-content.svelte +2 -2
  80. package/dist/types.d.ts +36 -42
  81. package/package.json +2 -2
  82. package/dist/CounterWorkflow.svelte +0 -19
  83. package/dist/CounterWorkflow.svelte.d.ts +0 -4
  84. package/dist/EmptyStateIcon.svelte +0 -52
  85. package/dist/EmptyStateIcon.svelte.d.ts +0 -4
  86. package/dist/FormLayoutModal.svelte +0 -14
  87. package/dist/FormLayoutModal.svelte.d.ts +0 -4
  88. package/dist/ProfileSelector.svelte +0 -41
  89. package/dist/ProfileSelector.svelte.d.ts +0 -4
  90. package/dist/SectionLayout.svelte +0 -13
  91. package/dist/SectionLayout.svelte.d.ts +0 -4
  92. package/dist/tw.theme.d.ts +0 -171
  93. package/dist/tw.theme.js +0 -188
@@ -2,77 +2,236 @@
2
2
  import { cn, type WithElementRef } from '../utils.js'
3
3
  import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements'
4
4
  import { type VariantProps, tv } from 'tailwind-variants'
5
+ import type { IconSource } from '@steeze-ui/svelte-icon'
6
+
5
7
  export const buttonVariants = tv({
6
- base: 'cursor-pointer ring-workspace-accent-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 flex items-center justify-center font-medium font-sans relative group tracking-tight rounded-md text-base text-neutral-800 box-border',
8
+ base: 'inline-flex items-center justify-center font-medium text-base whitespace-nowrap rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-workspace-accent focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-30 relative overflow-hidden',
7
9
  variants: {
8
10
  variant: {
9
- default: 'bg-white text-neutral-800 hover:bg-primary/90',
10
- destructive:
11
- 'ring-danger-200 bg-danger-500 border border-danger-500 hover:bg-danger-600 hover:border-danger-600 active:bg-danger-700 active:border-danger-700 text-white',
12
- outline:
13
- 'border-neutral-200 bg-white hover:border-neutral-300 border shadow-button active:shadow-button-active',
14
11
  primary:
15
- 'bg-workspace-accent-500 hover:bg-workspace-accent-600 active:bg-workspace-accent-700 text-white',
12
+ 'bg-background-accent text-foreground-inverse border border-border-accent shadow-button-default hover:bg-background-accent-hover active:bg-background-accent-press active:shadow-button-pressed [&_svg]:text-icon-inverse',
13
+ danger:
14
+ 'bg-background-default-tertiary text-foreground-critical border border-border shadow-button-default hover:bg-background-critical-bold hover:text-foreground-inverse hover:border-background-critical-bold active:bg-background-critical-bold active:text-foreground-inverse active:border-background-critical-bold active:shadow-[0px_4px_4px_-1px_inset_rgba(11,11,16,0.16)] [&_svg]:text-icon-critical hover:[&_svg]:text-icon-inverse active:[&_svg]:text-icon-inverse',
15
+ outline:
16
+ 'bg-background text-foreground border border-border shadow-button-default hover:border-border-default-secondary-hover active:bg-background-default-secondary active:shadow-button-pressed [&_svg]:text-icon',
17
+ ghost:
18
+ 'bg-transparent text-foreground hover:bg-background-default-secondary active:bg-background-default-tertiary [&_svg]:text-icon',
16
19
  secondary:
17
- 'bg-neutral-100 border border-neutral-100 hover:bg-neutral-200 hover:border-neutral-200 active:bg-neutral-300 active:border-neutral-300',
18
- ghost: 'hover:bg-accent hover:text-accent-foreground',
19
- link: 'text-primary underline-offset-4 hover:underline'
20
+ 'bg-background-default-tertiary text-foreground border border-border shadow-button-default hover:bg-background-default-tertiary-hover active:bg-background-default-tertiary-press active:shadow-button-pressed [&_svg]:text-icon',
21
+ default:
22
+ 'bg-background text-foreground border border-border shadow-button-default hover:bg-background-default-secondary active:bg-background-default-tertiary active:shadow-button-pressed [&_svg]:text-icon',
23
+ dark: 'bg-transparent text-foreground-inverse border border-border-inverse hover:bg-background-inverse-secondary active:bg-background-inverse-tertiary [&_svg]:text-icon-inverse'
20
24
  },
21
25
  size: {
22
- default: 'h-7 px-2 py-1',
23
- sm: 'h-9 rounded-md px-3',
24
- lg: 'h-11 rounded-md px-8',
25
- icon: 'h-7 p-1.5',
26
- 'icon-sm': 'size-6 p-1 active:pt-[5px] active:pb-[3px]'
26
+ sm: 'h-6',
27
+ md: 'h-7',
28
+ lg: 'h-8'
29
+ },
30
+ iconOnly: {
31
+ true: '',
32
+ false: ''
33
+ },
34
+ hasIcon: {
35
+ true: '',
36
+ false: ''
27
37
  }
28
38
  },
39
+ compoundVariants: [
40
+ // Icon-only padding (varies by size) - must come first to avoid conflicts
41
+ {
42
+ size: 'sm',
43
+ iconOnly: true,
44
+ class: '!p-1'
45
+ },
46
+ {
47
+ size: 'md',
48
+ iconOnly: true,
49
+ class: '!p-1.5'
50
+ },
51
+ {
52
+ size: 'lg',
53
+ iconOnly: true,
54
+ class: '!p-2'
55
+ },
56
+ // Vertical padding for buttons with text
57
+ {
58
+ size: ['sm', 'md'],
59
+ iconOnly: false,
60
+ class: 'py-1'
61
+ },
62
+ {
63
+ size: 'lg',
64
+ iconOnly: false,
65
+ class: 'py-1.5'
66
+ },
67
+ // No icon - symmetric padding
68
+ {
69
+ size: ['sm', 'md'],
70
+ iconOnly: false,
71
+ hasIcon: false,
72
+ class: 'px-2'
73
+ },
74
+ {
75
+ size: 'lg',
76
+ iconOnly: false,
77
+ hasIcon: false,
78
+ class: 'px-3'
79
+ },
80
+ // Icon-left - asymmetric padding (less on icon side)
81
+ {
82
+ size: ['sm', 'md'],
83
+ iconOnly: false,
84
+ hasIcon: true,
85
+ class: 'pl-1.5 pr-2'
86
+ },
87
+ {
88
+ size: 'lg',
89
+ iconOnly: false,
90
+ hasIcon: true,
91
+ class: 'pl-2 pr-3'
92
+ },
93
+ // Icon-only uses bold icon variants
94
+ {
95
+ variant: ['secondary', 'default', 'outline', 'ghost'],
96
+ iconOnly: true,
97
+ class: '[&_svg]:!text-icon-default-bold'
98
+ },
99
+ {
100
+ variant: 'primary',
101
+ iconOnly: true,
102
+ class: '[&_svg]:!text-icon-inverse-bold'
103
+ },
104
+ {
105
+ variant: 'dark',
106
+ iconOnly: true,
107
+ class: '[&_svg]:!text-icon-inverse-bold'
108
+ }
109
+ ],
29
110
  defaultVariants: {
30
- variant: 'default',
31
- size: 'default'
111
+ variant: 'primary',
112
+ size: 'lg',
113
+ iconOnly: false,
114
+ hasIcon: false
32
115
  }
33
116
  })
117
+
34
118
  export type ButtonVariant = VariantProps<typeof buttonVariants>['variant']
35
119
  export type ButtonSize = VariantProps<typeof buttonVariants>['size']
36
120
  export type ButtonProps = WithElementRef<HTMLButtonAttributes> &
37
121
  WithElementRef<HTMLAnchorAttributes> & {
38
122
  variant?: ButtonVariant
39
123
  size?: ButtonSize
124
+ icon?: IconSource
125
+ iconPosition?: 'left' | 'right'
126
+ iconClass?: string
40
127
  }
41
128
  </script>
42
129
 
43
130
  <script lang="ts">
131
+ import { Icon } from '@steeze-ui/svelte-icon'
132
+
44
133
  let {
45
134
  class: className,
46
- variant = 'default',
47
- size = 'default',
135
+ variant = 'primary',
136
+ size = 'lg',
137
+ icon,
138
+ iconPosition = 'left',
139
+ iconClass = '',
48
140
  ref = $bindable(null),
49
141
  href = undefined,
50
142
  type = 'button',
51
143
  disabled,
52
- children
144
+ children,
145
+ onclick,
146
+ ...rest
53
147
  }: ButtonProps = $props()
148
+
149
+ let iconOnly = $derived(!children)
150
+ let hasIcon = $derived(!!icon && !iconOnly)
151
+
152
+ let iconSize = $derived(
153
+ {
154
+ sm: 'size-3',
155
+ md: 'size-4',
156
+ lg: 'size-4'
157
+ }[size]
158
+ )
159
+
160
+ // For icon-right, we need to reverse the padding
161
+ let paddingClass = $derived(
162
+ iconPosition === 'right' && hasIcon ? (size === 'lg' ? 'pl-3 pr-2' : 'pl-2 pr-1.5') : ''
163
+ )
54
164
  </script>
55
165
 
166
+ {#snippet iconContent()}
167
+ {#if icon}
168
+ <div class={cn('relative z-10', iconClass && `[&_svg]:${iconClass}`)}>
169
+ <Icon src={icon} class={iconSize} />
170
+ </div>
171
+ {/if}
172
+ {/snippet}
173
+
174
+ {#snippet buttonContent()}
175
+ <div
176
+ class={cn(
177
+ 'inline-flex items-center transition-transform group-active:translate-y-px',
178
+ !iconOnly && 'gap-1'
179
+ )}
180
+ >
181
+ {#if icon && !children}
182
+ {@render iconContent()}
183
+ {:else if iconPosition === 'right'}
184
+ {#if children}
185
+ <span class="z-10">{@render children()}</span>
186
+ {/if}
187
+ {#if icon}
188
+ {@render iconContent()}
189
+ {/if}
190
+ {:else}
191
+ {#if icon}
192
+ {@render iconContent()}
193
+ {/if}
194
+ {#if children}
195
+ <span class="z-10">{@render children()}</span>
196
+ {/if}
197
+ {/if}
198
+ </div>
199
+ {/snippet}
200
+
56
201
  {#if href}
57
202
  <a
58
203
  bind:this={ref}
59
204
  data-slot="button"
60
- class={cn(buttonVariants({ variant, size }), className)}
205
+ class={cn(
206
+ buttonVariants({ variant, size, iconOnly, hasIcon }),
207
+ iconPosition === 'right' && 'flex-row-reverse',
208
+ paddingClass,
209
+ className
210
+ )}
61
211
  href={disabled ? undefined : href}
62
212
  aria-disabled={disabled}
63
213
  role={disabled ? 'link' : undefined}
64
214
  tabindex={disabled ? -1 : undefined}
215
+ {...rest}
65
216
  >
66
- {@render children?.()}
217
+ {@render buttonContent()}
67
218
  </a>
68
219
  {:else}
69
220
  <button
70
221
  bind:this={ref}
71
222
  data-slot="button"
72
- class={cn(buttonVariants({ variant, size }), className)}
223
+ class={cn(
224
+ buttonVariants({ variant, size, iconOnly, hasIcon }),
225
+ 'group',
226
+ iconPosition === 'right' && 'flex-row-reverse',
227
+ paddingClass,
228
+ className
229
+ )}
73
230
  {type}
74
231
  {disabled}
232
+ {onclick}
233
+ {...rest}
75
234
  >
76
- {@render children?.()}
235
+ {@render buttonContent()}
77
236
  </button>
78
237
  {/if}
@@ -1,63 +1,85 @@
1
1
  import { type WithElementRef } from '../utils.js';
2
2
  import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements';
3
3
  import { type VariantProps } from 'tailwind-variants';
4
+ import type { IconSource } from '@steeze-ui/svelte-icon';
4
5
  export declare const buttonVariants: import("tailwind-variants").TVReturnType<{
5
6
  variant: {
6
- default: string;
7
- destructive: string;
8
- outline: string;
9
7
  primary: string;
10
- secondary: string;
8
+ danger: string;
9
+ outline: string;
11
10
  ghost: string;
12
- link: string;
11
+ secondary: string;
12
+ default: string;
13
+ dark: string;
13
14
  };
14
15
  size: {
15
- default: string;
16
16
  sm: string;
17
+ md: string;
17
18
  lg: string;
18
- icon: string;
19
- 'icon-sm': string;
20
19
  };
21
- }, undefined, "cursor-pointer ring-workspace-accent-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 flex items-center justify-center font-medium font-sans relative group tracking-tight rounded-md text-base text-neutral-800 box-border", {
20
+ iconOnly: {
21
+ true: string;
22
+ false: string;
23
+ };
24
+ hasIcon: {
25
+ true: string;
26
+ false: string;
27
+ };
28
+ }, undefined, "inline-flex items-center justify-center font-medium text-base whitespace-nowrap rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-workspace-accent focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-30 relative overflow-hidden", {
22
29
  variant: {
23
- default: string;
24
- destructive: string;
25
- outline: string;
26
30
  primary: string;
27
- secondary: string;
31
+ danger: string;
32
+ outline: string;
28
33
  ghost: string;
29
- link: string;
34
+ secondary: string;
35
+ default: string;
36
+ dark: string;
30
37
  };
31
38
  size: {
32
- default: string;
33
39
  sm: string;
40
+ md: string;
34
41
  lg: string;
35
- icon: string;
36
- 'icon-sm': string;
42
+ };
43
+ iconOnly: {
44
+ true: string;
45
+ false: string;
46
+ };
47
+ hasIcon: {
48
+ true: string;
49
+ false: string;
37
50
  };
38
51
  }, undefined, import("tailwind-variants").TVReturnType<{
39
52
  variant: {
40
- default: string;
41
- destructive: string;
42
- outline: string;
43
53
  primary: string;
44
- secondary: string;
54
+ danger: string;
55
+ outline: string;
45
56
  ghost: string;
46
- link: string;
57
+ secondary: string;
58
+ default: string;
59
+ dark: string;
47
60
  };
48
61
  size: {
49
- default: string;
50
62
  sm: string;
63
+ md: string;
51
64
  lg: string;
52
- icon: string;
53
- 'icon-sm': string;
54
65
  };
55
- }, undefined, "cursor-pointer ring-workspace-accent-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 flex items-center justify-center font-medium font-sans relative group tracking-tight rounded-md text-base text-neutral-800 box-border", unknown, unknown, undefined>>;
66
+ iconOnly: {
67
+ true: string;
68
+ false: string;
69
+ };
70
+ hasIcon: {
71
+ true: string;
72
+ false: string;
73
+ };
74
+ }, undefined, "inline-flex items-center justify-center font-medium text-base whitespace-nowrap rounded-lg focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-workspace-accent focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-30 relative overflow-hidden", unknown, unknown, undefined>>;
56
75
  export type ButtonVariant = VariantProps<typeof buttonVariants>['variant'];
57
76
  export type ButtonSize = VariantProps<typeof buttonVariants>['size'];
58
77
  export type ButtonProps = WithElementRef<HTMLButtonAttributes> & WithElementRef<HTMLAnchorAttributes> & {
59
78
  variant?: ButtonVariant;
60
79
  size?: ButtonSize;
80
+ icon?: IconSource;
81
+ iconPosition?: 'left' | 'right';
82
+ iconClass?: string;
61
83
  };
62
84
  declare const Button: import("svelte").Component<ButtonProps, {}, "ref">;
63
85
  type Button = ReturnType<typeof Button>;
package/dist/index.d.ts CHANGED
@@ -13,15 +13,13 @@ import ButtonUuidCopy from './ButtonUuidCopy.svelte';
13
13
  import CardCheckbox from './CardCheckbox.svelte';
14
14
  import CardRelation from './CardRelation.svelte';
15
15
  import CompanySelector from './CompanySelector.svelte';
16
- import CounterWorkflow from './CounterWorkflow.svelte';
17
16
  import DataListItem from './DataListItem.svelte';
18
17
  import DatePicker from './DatePicker.svelte';
19
18
  import DrawerContext from './DrawerContext.svelte';
20
19
  import DrawerContextItem from './DrawerContextItem.svelte';
21
20
  import DrawerContextSeparator from './DrawerContextSeparator.svelte';
22
21
  import DropdownSelect from './DropdownSelect.svelte';
23
- import EmptyStateIcon from './EmptyStateIcon.svelte';
24
- import EmptyStateIllustration from './EmptyStateIllustration.svelte';
22
+ import EmptyState from './EmptyState.svelte';
25
23
  import FeedEvents from './FeedEvents.svelte';
26
24
  import FeedIconEvent from './FeedIconEvent.svelte';
27
25
  import FeedIconStatus from './FeedIconStatus.svelte';
@@ -42,9 +40,7 @@ import MenuItem from './MenuItem.svelte';
42
40
  import MenuItemCollapsible from './MenuItemCollapsible.svelte';
43
41
  import Notification from './Notification.svelte';
44
42
  import ProfileAvatar from './ProfileAvatar.svelte';
45
- import ProfileSelector from './ProfileSelector.svelte';
46
43
  import ProgressBar from './ProgressBar.svelte';
47
- import SectionLayout from './SectionLayout.svelte';
48
44
  import SeparatorHorizontal from './SeparatorHorizontal.svelte';
49
45
  import ShortcutWrapper from './ShortcutWrapper.svelte';
50
46
  import StatusLabel from './StatusLabel.svelte';
@@ -71,8 +67,7 @@ import { Tooltip } from './tooltip';
71
67
  import { TooltipContent } from './tooltip';
72
68
  import { TooltipTrigger } from './tooltip';
73
69
  import UuidCopy from './UuidCopy.svelte';
74
- import twTheme from './tw.theme.js';
75
70
  import { resolveIcon } from './helpers.js';
76
71
  import { getCountryName } from './helpers.js';
77
72
  import { getStatusType } from './helpers.js';
78
- export { AlertDialog, BaseButton, BaseCard, BaseCounter, BaseDropdown, BaseFlag, BaseTable, BaseTableActions, BaseTableHeaderContent, Breadcrumbs, ButtonFile, ButtonUuidCopy, CardCheckbox, CardRelation, CompanySelector, CounterWorkflow, DataListItem, DatePicker, DrawerContext, DrawerContextItem, DrawerContextSeparator, DropdownSelect, EmptyStateIcon, EmptyStateIllustration, FeedEvents, FeedIconEvent, FeedIconStatus, FeedItem, FeedItemDetail, FeedViewer, GlobalSearch, InputCheckbox, InputError, InputLabel, InputRadio, InputSearch, InputSelect, InputText, InputTextarea, InputToggle, MenuItem, MenuItemCollapsible, Notification, ProfileAvatar, ProfileSelector, ProgressBar, SectionLayout, SeparatorHorizontal, ShortcutWrapper, StatusLabel, StepIconList, Table, TableBody, TableCaption, TableFooter, TableHeader, TableRow, TableHead, TableCell, Tabs, TabsContent, TabsList, TabsTrigger, TagBeta, TagSearch, TagStatus, TitleMain, TitleSection, Toaster, Tooltip, TooltipContent, TooltipTrigger, UuidCopy, twTheme, resolveIcon, getCountryName, getStatusType };
73
+ export { AlertDialog, BaseButton, BaseCard, BaseCounter, BaseDropdown, BaseFlag, BaseTable, BaseTableActions, BaseTableHeaderContent, Breadcrumbs, ButtonFile, ButtonUuidCopy, CardCheckbox, CardRelation, CompanySelector, DataListItem, DatePicker, DrawerContext, DrawerContextItem, DrawerContextSeparator, DropdownSelect, EmptyState, FeedEvents, FeedIconEvent, FeedIconStatus, FeedItem, FeedItemDetail, FeedViewer, GlobalSearch, InputCheckbox, InputError, InputLabel, InputRadio, InputSearch, InputSelect, InputText, InputTextarea, InputToggle, MenuItem, MenuItemCollapsible, Notification, ProfileAvatar, ProgressBar, SeparatorHorizontal, ShortcutWrapper, StatusLabel, StepIconList, Table, TableBody, TableCaption, TableFooter, TableHeader, TableRow, TableHead, TableCell, Tabs, TabsContent, TabsList, TabsTrigger, TagBeta, TagSearch, TagStatus, TitleMain, TitleSection, Toaster, Tooltip, TooltipContent, TooltipTrigger, UuidCopy, resolveIcon, getCountryName, getStatusType };
package/dist/index.js CHANGED
@@ -13,15 +13,13 @@ import ButtonUuidCopy from './ButtonUuidCopy.svelte'
13
13
  import CardCheckbox from './CardCheckbox.svelte'
14
14
  import CardRelation from './CardRelation.svelte'
15
15
  import CompanySelector from './CompanySelector.svelte'
16
- import CounterWorkflow from './CounterWorkflow.svelte'
17
16
  import DataListItem from './DataListItem.svelte'
18
17
  import DatePicker from './DatePicker.svelte'
19
18
  import DrawerContext from './DrawerContext.svelte'
20
19
  import DrawerContextItem from './DrawerContextItem.svelte'
21
20
  import DrawerContextSeparator from './DrawerContextSeparator.svelte'
22
21
  import DropdownSelect from './DropdownSelect.svelte'
23
- import EmptyStateIcon from './EmptyStateIcon.svelte'
24
- import EmptyStateIllustration from './EmptyStateIllustration.svelte'
22
+ import EmptyState from './EmptyState.svelte'
25
23
  import FeedEvents from './FeedEvents.svelte'
26
24
  import FeedIconEvent from './FeedIconEvent.svelte'
27
25
  import FeedIconStatus from './FeedIconStatus.svelte'
@@ -42,9 +40,7 @@ import MenuItem from './MenuItem.svelte'
42
40
  import MenuItemCollapsible from './MenuItemCollapsible.svelte'
43
41
  import Notification from './Notification.svelte'
44
42
  import ProfileAvatar from './ProfileAvatar.svelte'
45
- import ProfileSelector from './ProfileSelector.svelte'
46
43
  import ProgressBar from './ProgressBar.svelte'
47
- import SectionLayout from './SectionLayout.svelte'
48
44
  import SeparatorHorizontal from './SeparatorHorizontal.svelte'
49
45
  import ShortcutWrapper from './ShortcutWrapper.svelte'
50
46
  import StatusLabel from './StatusLabel.svelte'
@@ -68,7 +64,6 @@ import TitleSection from './TitleSection.svelte'
68
64
  import { Toaster } from './sonner'
69
65
  import { Tooltip, TooltipContent, TooltipTrigger } from './tooltip'
70
66
  import UuidCopy from './UuidCopy.svelte'
71
- import twTheme from './tw.theme.js'
72
67
  import { resolveIcon, getCountryName, getStatusType } from './helpers.js'
73
68
 
74
69
  export {
@@ -87,15 +82,13 @@ export {
87
82
  CardCheckbox,
88
83
  CardRelation,
89
84
  CompanySelector,
90
- CounterWorkflow,
91
85
  DataListItem,
92
86
  DatePicker,
93
87
  DrawerContext,
94
88
  DrawerContextItem,
95
89
  DrawerContextSeparator,
96
90
  DropdownSelect,
97
- EmptyStateIcon,
98
- EmptyStateIllustration,
91
+ EmptyState,
99
92
  FeedEvents,
100
93
  FeedIconEvent,
101
94
  FeedIconStatus,
@@ -116,9 +109,7 @@ export {
116
109
  MenuItemCollapsible,
117
110
  Notification,
118
111
  ProfileAvatar,
119
- ProfileSelector,
120
112
  ProgressBar,
121
- SectionLayout,
122
113
  SeparatorHorizontal,
123
114
  ShortcutWrapper,
124
115
  StatusLabel,
@@ -145,7 +136,6 @@ export {
145
136
  TooltipContent,
146
137
  TooltipTrigger,
147
138
  UuidCopy,
148
- twTheme,
149
139
  resolveIcon,
150
140
  getCountryName,
151
141
  getStatusType
@@ -11,7 +11,7 @@
11
11
  <RangeCalendarPrimitive.Cell
12
12
  bind:ref
13
13
  class={cn(
14
- 'size-(--cell-size) [&:has([data-range-middle])]:bg-accent [&:has([data-selected])]:bg-accent relative p-0 text-center text-sm focus-within:z-20 data-[range-middle]:rounded-r-md [&:first-child[data-selected]_[data-bits-day]]:rounded-l-md [&:has([data-range-end])]:rounded-r-md [&:has([data-range-middle])]:rounded-none first:[&:has([data-range-middle])]:rounded-l-md last:[&:has([data-range-middle])]:rounded-r-md [&:has([data-range-start])]:rounded-l-md [&:last-child[data-selected]_[data-bits-day]]:rounded-r-md',
14
+ 'size-(--cell-size) [&:has([data-range-middle]:not([data-outside-month]))]:bg-background-default-secondary [&:has([data-selected]:not([data-outside-month]))]:bg-background-default-secondary relative p-0 text-center text-sm focus-within:z-20 data-[range-middle]:rounded-r-md [&:first-child[data-selected]_[data-bits-day]]:rounded-l-md [&:has([data-range-end])]:rounded-r-md [&:has([data-range-middle])]:rounded-none first:[&:has([data-range-middle])]:rounded-l-md last:[&:has([data-range-middle])]:rounded-r-md [&:has([data-range-start])]:rounded-l-md [&:last-child[data-selected]_[data-bits-day]]:rounded-r-md',
15
15
  className
16
16
  )}
17
17
  {...restProps}
@@ -13,23 +13,25 @@
13
13
  bind:ref
14
14
  class={cn(
15
15
  buttonVariants({ variant: 'ghost' }),
16
- 'size-(--cell-size) flex select-none flex-col items-center justify-center gap-1 whitespace-nowrap p-0 font-normal leading-none',
16
+ 'size-(--cell-size) flex select-none flex-col items-center justify-center gap-1 whitespace-nowrap p-0 font-medium leading-none rounded-[4px]',
17
17
  // today
18
- '[&[data-today]:not([data-selected]):not([data-outside-month])]:border-b [&[data-today]:not([data-selected]):not([data-outside-month])]:border-workspace-accent [&[data-today]:not([data-selected]):not([data-outside-month])]:rounded-none',
18
+ '[&[data-today]:not([data-selected]):not([data-outside-month])]:border-b [&[data-today]:not([data-selected]):not([data-outside-month])]:border-background-accent [&[data-today]:not([data-selected]):not([data-outside-month])]:rounded-none',
19
19
  // range Start
20
- 'data-[range-start]:bg-workspace-accent data-[range-start]:text-white data-[range-start]:font-semibold data-[range-start]:shadow-active',
20
+ 'data-[range-start]:bg-background-accent data-[range-start]:text-white data-[range-start]:font-semibold data-[range-start]:shadow-[0px_0px_0px_2px_rgba(22,153,88,0.12)]',
21
21
  // range middle
22
- 'data-[range-middle]:rounded-none data-[range-middle]:bg-neutral-100',
22
+ 'data-[range-middle]:rounded-none data-[range-middle]:bg-background-default-secondary',
23
23
  // range End
24
- 'data-[range-end]:bg-workspace-accent data-[range-end]:text-white data-[range-end]:font-semibold data-[range-end]:shadow-active',
25
- // Outside months
26
- '[&[data-outside-month]]:text-transparent [&[data-outside-month]]:bg-transparent [&[data-outside-month]]:shadow-none [&[data-outside-month]:not([data-selected])]:pointer-events-none',
24
+ 'data-[range-end]:bg-background-accent data-[range-end]:text-white data-[range-end]:font-semibold data-[range-end]:shadow-[0px_0px_0px_2px_rgba(22,153,88,0.12)]',
25
+ // Outside months - must come after range styles to override
26
+ '[&[data-outside-month]]:!text-transparent [&[data-outside-month]]:!bg-transparent [&[data-outside-month]]:!shadow-none [&[data-outside-month]:not([data-selected])]:pointer-events-none',
27
27
  // Disabled
28
- 'data-[disabled]:text-muted-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
28
+ 'data-[disabled]:text-foreground-default-tertiary data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
29
29
  // Unavailable
30
30
  'data-[unavailable]:line-through',
31
31
  // focus
32
32
  'focus:border-ring focus:ring-ring/50 focus:relative',
33
+ // Default text color
34
+ 'text-foreground-default-primary',
33
35
  // inner spans
34
36
  '[&>span]:text-xs [&>span]:opacity-70',
35
37
  className
@@ -11,7 +11,7 @@
11
11
  <RangeCalendarPrimitive.HeadCell
12
12
  bind:ref
13
13
  class={cn(
14
- 'text-[#989AA4] w-(--cell-size) h-(--cell-size) text-sm font-normal border-b border-neutral-100 flex items-center justify-center',
14
+ 'text-foreground-default-tertiary w-(--cell-size) h-(--cell-size) text-xs font-normal border-b border-border flex items-center justify-center',
15
15
  className
16
16
  )}
17
17
  {...restProps}
@@ -16,13 +16,13 @@
16
16
  </script>
17
17
 
18
18
  {#snippet Fallback()}
19
- <Icon src={ChevronRight} class="size-4" />
19
+ <Icon src={ChevronRight} class="size-4 shrink-0" />
20
20
  {/snippet}
21
21
  <RangeCalendarPrimitive.NextButton
22
22
  bind:ref
23
23
  class={cn(
24
- buttonVariants({ variant, size: 'icon-sm' }),
25
- 'select-none disabled:opacity-50 rtl:rotate-180',
24
+ buttonVariants({ variant, size: 'sm' }),
25
+ 'size-6 group select-none disabled:opacity-50 rtl:rotate-180',
26
26
  className
27
27
  )}
28
28
  children={children || Fallback}
@@ -16,13 +16,13 @@
16
16
  </script>
17
17
 
18
18
  {#snippet Fallback()}
19
- <Icon src={ChevronLeft} class="size-4" />
19
+ <Icon src={ChevronLeft} class="size-4 shrink-0" />
20
20
  {/snippet}
21
21
  <RangeCalendarPrimitive.PrevButton
22
22
  bind:ref
23
23
  class={cn(
24
- buttonVariants({ variant, size: 'icon-sm' }),
25
- 'select-none disabled:opacity-50 rtl:rotate-180',
24
+ buttonVariants({ variant, size: 'sm' }),
25
+ 'size-6 group select-none disabled:opacity-50 rtl:rotate-180',
26
26
  className
27
27
  )}
28
28
  children={children || Fallback}
@@ -44,7 +44,7 @@
44
44
  {weekdayFormat}
45
45
  {disableDaysOutsideMonth}
46
46
  class={cn(
47
- 'bg-white group/calendar px-3 pb-3 pt-2 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent',
47
+ 'bg-white group/calendar px-3 pb-2 pt-1 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent',
48
48
  className
49
49
  )}
50
50
  {locale}
@@ -0,0 +1,18 @@
1
+ <svg
2
+ width="26"
3
+ height="26"
4
+ viewBox="0 0 26 26"
5
+ fill="none"
6
+ xmlns="http://www.w3.org/2000/svg"
7
+ class="absolute top-[-16px] right-[-16px]"
8
+ >
9
+ <path
10
+ d="M13 1C6.3835 1 1 6.3835 1 13C1 19.6165 6.3835 25 13 25C19.6165 25 25 19.6165 25 13C25 6.3835 19.6165 1 13 1Z"
11
+ fill="#169958"
12
+ />
13
+ <circle cx="13" cy="13" r="10" stroke="white" stroke-opacity="0.4" stroke-width="0.6" />
14
+ <path
15
+ d="M18.1078 9.82205C15.7021 11.6837 13.6627 14.2538 12.0477 17.4584C11.8808 17.7912 11.5495 17.9999 11.1884 17.9999C10.83 18.004 10.4922 17.7885 10.3253 17.4517C9.58119 15.9471 8.7491 14.7239 7.78243 13.7123C7.40457 13.3176 7.40586 12.6764 7.78632 12.2831C8.16418 11.8898 8.78016 11.8898 9.15932 12.2871C9.90083 13.063 10.5699 13.9413 11.182 14.9435C12.7853 12.1888 14.7199 9.92443 16.9509 8.19887C17.3805 7.8675 17.9888 7.9591 18.3084 8.40766C18.628 8.85488 18.5387 9.48934 18.1078 9.82205Z"
16
+ fill="white"
17
+ />
18
+ </svg>
@@ -0,0 +1,26 @@
1
+ export default CheckBadge;
2
+ type CheckBadge = SvelteComponent<{
3
+ [x: string]: never;
4
+ }, {
5
+ [evt: string]: CustomEvent<any>;
6
+ }, {}> & {
7
+ $$bindings?: string | undefined;
8
+ };
9
+ declare const CheckBadge: $$__sveltets_2_IsomorphicComponent<{
10
+ [x: string]: never;
11
+ }, {
12
+ [evt: string]: CustomEvent<any>;
13
+ }, {}, {}, string>;
14
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
15
+ new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
16
+ $$bindings?: Bindings;
17
+ } & Exports;
18
+ (internal: unknown, props: {
19
+ $$events?: Events;
20
+ $$slots?: Slots;
21
+ }): Exports & {
22
+ $set?: any;
23
+ $on?: any;
24
+ };
25
+ z_$$bindings?: Bindings;
26
+ }