fluentui-svelte 0.6.0 → 0.7.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/dist/components/app-surface/app-surface.svelte +96 -0
- package/dist/components/app-surface/app-surface.svelte.d.ts +22 -0
- package/dist/components/app-surface/docs/llms.md +73 -0
- package/dist/components/app-surface/types.d.ts +19 -0
- package/dist/components/app-surface/types.js +1 -0
- package/dist/components/app-window/app-window.d.ts +3 -0
- package/dist/components/app-window/app-window.js +3 -0
- package/dist/components/app-window/app-window.svelte +193 -0
- package/dist/components/app-window/app-window.svelte.d.ts +25 -0
- package/dist/components/app-window/docs/llms.md +119 -0
- package/dist/components/app-window/types.d.ts +66 -0
- package/dist/components/app-window/types.js +1 -0
- package/dist/components/auto-suggest-box/auto-suggest-box.svelte +47 -31
- package/dist/components/auto-suggest-box/auto-suggest-box.svelte.d.ts +2 -2
- package/dist/components/auto-suggest-box/docs/llms.md +34 -33
- package/dist/components/auto-suggest-box/option.svelte +6 -4
- package/dist/components/auto-suggest-box/types.d.ts +13 -16
- package/dist/components/avatar/avatar.svelte +4 -3
- package/dist/components/avatar/docs/llms.md +1 -1
- package/dist/components/avatar/type.d.ts +1 -1
- package/dist/components/badge/badge-icon.svelte +2 -2
- package/dist/components/badge/badge.svelte +2 -2
- package/dist/components/badge/docs/llms.md +2 -2
- package/dist/components/badge/types.d.ts +2 -2
- package/dist/components/breadcrumb/breadcrumb-button.svelte +2 -2
- package/dist/components/breadcrumb/breadcrumb-divider.svelte +2 -2
- package/dist/components/breadcrumb/breadcrumb-item.svelte +2 -2
- package/dist/components/breadcrumb/breadcrumb.svelte +10 -5
- package/dist/components/breadcrumb/docs/llms.md +11 -11
- package/dist/components/breadcrumb/types.d.ts +7 -7
- package/dist/components/button/button.svelte +2 -2
- package/dist/components/button/docs/llms.md +17 -17
- package/dist/components/button/split-button.svelte +7 -7
- package/dist/components/button/types.d.ts +5 -5
- package/dist/components/calendar-date-picker/calendar-date-picker.svelte +98 -10
- package/dist/components/calendar-date-picker/calendar-date-picker.svelte.d.ts +1 -1
- package/dist/components/calendar-date-picker/docs/llms.md +19 -14
- package/dist/components/calendar-date-picker/types.d.ts +22 -8
- package/dist/components/calendar-view/calendar-view-days.svelte +3 -2
- package/dist/components/calendar-view/calendar-view-grid.js +8 -3
- package/dist/components/calendar-view/calendar-view-item.svelte +10 -4
- package/dist/components/calendar-view/calendar-view-months.svelte +3 -2
- package/dist/components/calendar-view/calendar-view-years.svelte +3 -2
- package/dist/components/calendar-view/calendar-view.svelte +11 -4
- package/dist/components/calendar-view/calendar-view.svelte.js +5 -0
- package/dist/components/calendar-view/docs/llms.md +20 -19
- package/dist/components/calendar-view/types.d.ts +6 -1
- package/dist/components/card/card-footer.svelte +2 -2
- package/dist/components/card/card-header.svelte +5 -4
- package/dist/components/card/card-preview.svelte +13 -2
- package/dist/components/card/card.svelte +5 -5
- package/dist/components/card/docs/llms.md +22 -21
- package/dist/components/card/types.d.ts +8 -4
- package/dist/components/checkbox/checkbox.svelte +47 -26
- package/dist/components/checkbox/checkbox.svelte.d.ts +3 -24
- package/dist/components/checkbox/docs/llms.md +24 -23
- package/dist/components/checkbox/types.d.ts +10 -23
- package/dist/components/date-picker/date-picker.svelte +98 -27
- package/dist/components/date-picker/date-picker.svelte.d.ts +1 -1
- package/dist/components/date-picker/docs/llms.md +23 -20
- package/dist/components/date-picker/types.d.ts +24 -15
- package/dist/components/dialog/dialog-actions.svelte +2 -2
- package/dist/components/dialog/dialog-content.svelte +2 -2
- package/dist/components/dialog/dialog-surface.svelte +102 -9
- package/dist/components/dialog/dialog-title.svelte +2 -2
- package/dist/components/dialog/dialog-trigger.svelte +2 -2
- package/dist/components/dialog/dialog.svelte +22 -11
- package/dist/components/dialog/docs/llms.md +56 -19
- package/dist/components/dialog/types.d.ts +25 -7
- package/dist/components/divider/divider.svelte +6 -4
- package/dist/components/divider/types.d.ts +1 -1
- package/dist/components/dropdown/docs/llms.md +30 -28
- package/dist/components/dropdown/dropdown-option.svelte +17 -5
- package/dist/components/dropdown/dropdown.svelte +182 -84
- package/dist/components/dropdown/dropdown.svelte.d.ts +1 -1
- package/dist/components/dropdown/types.d.ts +26 -20
- package/dist/components/dropdown-select/docs/llms.md +24 -22
- package/dist/components/dropdown-select/dropdown-select-option.svelte +2 -2
- package/dist/components/dropdown-select/dropdown-select.svelte +42 -7
- package/dist/components/dropdown-select/types.d.ts +4 -4
- package/dist/components/expander/docs/llms.md +3 -3
- package/dist/components/expander/expander.svelte +13 -8
- package/dist/components/expander/types.d.ts +5 -5
- package/dist/components/flyout/docs/llms.md +1 -1
- package/dist/components/flyout/flyout.svelte +17 -6
- package/dist/components/flyout/types.d.ts +1 -1
- package/dist/components/hyperlink/docs/llms.md +6 -6
- package/dist/components/hyperlink/hyperlink.svelte +13 -4
- package/dist/components/hyperlink/types.d.ts +1 -1
- package/dist/components/info-bar/docs/llms.md +11 -10
- package/dist/components/info-bar/info-bar.svelte +3 -2
- package/dist/components/info-bar/types.d.ts +4 -0
- package/dist/components/label/docs/llms.md +75 -22
- package/dist/components/label/label-context.d.ts +14 -0
- package/dist/components/label/label-context.js +10 -0
- package/dist/components/label/label.svelte +153 -30
- package/dist/components/label/label.svelte.d.ts +1 -1
- package/dist/components/label/types.d.ts +48 -4
- package/dist/components/list-view/docs/llms.md +103 -33
- package/dist/components/list-view/list-view-item-branch.svelte +257 -0
- package/dist/components/list-view/list-view-item-branch.svelte.d.ts +4 -0
- package/dist/components/list-view/list-view-item.svelte +164 -46
- package/dist/components/list-view/list-view-item.svelte.d.ts +5 -5
- package/dist/components/list-view/list-view.svelte +73 -25
- package/dist/components/list-view/types.d.ts +71 -8
- package/dist/components/list-view/utils.d.ts +10 -0
- package/dist/components/list-view/utils.js +17 -1
- package/dist/components/menu/docs/llms.md +98 -15
- package/dist/components/menu/menu-command-bar-item.svelte +61 -0
- package/dist/components/menu/menu-command-bar-item.svelte.d.ts +14 -0
- package/dist/components/menu/menu-command-bar.svelte +218 -0
- package/dist/components/menu/menu-command-bar.svelte.d.ts +21 -0
- package/dist/components/menu/menu-group.svelte +6 -3
- package/dist/components/menu/menu-item-checkbox.svelte +5 -4
- package/dist/components/menu/menu-item-radio.svelte +5 -4
- package/dist/components/menu/menu-item-switch.svelte +5 -4
- package/dist/components/menu/menu-item.svelte +5 -5
- package/dist/components/menu/menu-item.svelte.d.ts +2 -3
- package/dist/components/menu/menu-list.svelte +10 -1
- package/dist/components/menu/menu-popover.svelte +9 -5
- package/dist/components/menu/menu-trigger.svelte +2 -1
- package/dist/components/menu/menu.svelte.js +1 -0
- package/dist/components/menu/types.d.ts +62 -7
- package/dist/components/number-box/docs/llms.md +6 -4
- package/dist/components/number-box/number-box.svelte +35 -29
- package/dist/components/number-box/number-box.svelte.d.ts +1 -1
- package/dist/components/number-box/types.d.ts +1 -1
- package/dist/components/persona/docs/llms.md +29 -25
- package/dist/components/persona/persona.svelte +8 -6
- package/dist/components/persona/types.d.ts +4 -3
- package/dist/components/progress-bar/docs/llms.md +13 -13
- package/dist/components/progress-bar/progress-bar.svelte +6 -6
- package/dist/components/progress-bar/types.d.ts +4 -4
- package/dist/components/progress-ring/docs/llms.md +14 -14
- package/dist/components/progress-ring/progress-ring.svelte +5 -5
- package/dist/components/progress-ring/types.d.ts +3 -3
- package/dist/components/radio-button/docs/llms.md +11 -8
- package/dist/components/radio-button/radio-button.svelte +38 -12
- package/dist/components/radio-button/radio-button.svelte.d.ts +1 -1
- package/dist/components/radio-button/types.d.ts +11 -8
- package/dist/components/rating/docs/llms.md +15 -14
- package/dist/components/rating/rating.svelte +66 -29
- package/dist/components/rating/rating.svelte.d.ts +1 -1
- package/dist/components/rating/types.d.ts +8 -8
- package/dist/components/side-nav/docs/llms.md +110 -0
- package/dist/components/side-nav/side-nav-branch.svelte +43 -0
- package/dist/components/side-nav/side-nav-branch.svelte.d.ts +4 -0
- package/dist/components/side-nav/side-nav-item.svelte +75 -0
- package/dist/components/side-nav/side-nav-item.svelte.d.ts +25 -0
- package/dist/components/side-nav/side-nav-list.svelte +32 -0
- package/dist/components/side-nav/side-nav-list.svelte.d.ts +7 -0
- package/dist/components/side-nav/side-nav.d.ts +2 -0
- package/dist/components/side-nav/side-nav.js +2 -0
- package/dist/components/side-nav/side-nav.svelte +355 -0
- package/dist/components/side-nav/side-nav.svelte.d.ts +24 -0
- package/dist/components/side-nav/types.d.ts +149 -0
- package/dist/components/side-nav/types.js +1 -0
- package/dist/components/skeleton/docs/llms.md +1 -1
- package/dist/components/skeleton/skeleton.svelte +2 -2
- package/dist/components/skeleton/types.d.ts +1 -1
- package/dist/components/slider/docs/llms.md +31 -28
- package/dist/components/slider/slider.svelte +126 -61
- package/dist/components/slider/slider.svelte.d.ts +1 -3
- package/dist/components/slider/types.d.ts +21 -14
- package/dist/components/tab-view/docs/llms.md +7 -7
- package/dist/components/tab-view/tab-view-tab.svelte +16 -14
- package/dist/components/tab-view/tab-view.svelte +16 -9
- package/dist/components/tab-view/types.d.ts +6 -6
- package/dist/components/table/docs/llms.md +38 -33
- package/dist/components/table/table-body.svelte +2 -2
- package/dist/components/table/table-cell-actions.svelte +8 -2
- package/dist/components/table/table-cell-layout.svelte +2 -2
- package/dist/components/table/table-cell.svelte +2 -2
- package/dist/components/table/table-header-cell.svelte +2 -2
- package/dist/components/table/table-header.svelte +2 -2
- package/dist/components/table/table-row.svelte +2 -2
- package/dist/components/table/table-selection-cell.svelte +6 -6
- package/dist/components/table/table.svelte +2 -2
- package/dist/components/table/types.d.ts +11 -11
- package/dist/components/tag/docs/llms.md +26 -26
- package/dist/components/tag/tag-group.svelte +2 -2
- package/dist/components/tag/tag.svelte +13 -12
- package/dist/components/tag/types.d.ts +6 -4
- package/dist/components/tag-picker/docs/llms.md +61 -55
- package/dist/components/tag-picker/option-group.svelte +17 -4
- package/dist/components/tag-picker/option-group.svelte.d.ts +1 -1
- package/dist/components/tag-picker/option.svelte +15 -4
- package/dist/components/tag-picker/tag-picker.svelte +137 -65
- package/dist/components/tag-picker/tag-picker.svelte.d.ts +2 -2
- package/dist/components/tag-picker/types.d.ts +36 -16
- package/dist/components/text-box/docs/llms.md +31 -4
- package/dist/components/text-box/text-box-button.svelte +3 -3
- package/dist/components/text-box/text-box-button.svelte.d.ts +1 -1
- package/dist/components/text-box/text-box.svelte +41 -14
- package/dist/components/text-box/types.d.ts +5 -5
- package/dist/components/textarea/docs/llms.md +4 -3
- package/dist/components/textarea/textarea.svelte +14 -6
- package/dist/components/textarea/types.d.ts +2 -4
- package/dist/components/time-picker/docs/llms.md +18 -15
- package/dist/components/time-picker/time-picker.svelte +133 -33
- package/dist/components/time-picker/time-picker.svelte.d.ts +1 -1
- package/dist/components/time-picker/types.d.ts +23 -13
- package/dist/components/title-bar/docs/llms.md +382 -0
- package/dist/components/title-bar/title-bar-left-controls.svelte +215 -0
- package/dist/components/title-bar/title-bar-left-controls.svelte.d.ts +22 -0
- package/dist/components/title-bar/title-bar-right-controls.svelte +190 -0
- package/dist/components/title-bar/title-bar-right-controls.svelte.d.ts +27 -0
- package/dist/components/title-bar/title-bar.d.ts +3 -0
- package/dist/components/title-bar/title-bar.js +4 -0
- package/dist/components/title-bar/title-bar.svelte +224 -0
- package/dist/components/title-bar/title-bar.svelte.d.ts +26 -0
- package/dist/components/title-bar/types.d.ts +165 -0
- package/dist/components/title-bar/types.js +1 -0
- package/dist/components/toggle-switch/docs/llms.md +11 -9
- package/dist/components/toggle-switch/toggle-switch.svelte +23 -14
- package/dist/components/toggle-switch/toggle-switch.svelte.d.ts +1 -1
- package/dist/components/toggle-switch/types.d.ts +12 -10
- package/dist/components/tooltip/docs/llms.md +1 -1
- package/dist/components/tooltip/tooltip.svelte +5 -4
- package/dist/components/tooltip/types.d.ts +1 -1
- package/dist/components/top-nav/docs/llms.md +1 -1
- package/dist/components/top-nav/top-nav-item.svelte +2 -2
- package/dist/components/top-nav/top-nav.svelte +2 -2
- package/dist/components/top-nav/types.d.ts +2 -2
- package/dist/components/tree-view/docs/llms.md +11 -11
- package/dist/components/tree-view/tree-view-item-content.svelte +3 -3
- package/dist/components/tree-view/tree-view-item.svelte +13 -5
- package/dist/components/tree-view/tree-view.svelte +20 -5
- package/dist/components/tree-view/tree-view.svelte.d.ts +1 -1
- package/dist/components/tree-view/tree-view.svelte.js +31 -3
- package/dist/components/tree-view/types.d.ts +7 -3
- package/dist/index.d.ts +18 -0
- package/dist/index.js +20 -0
- package/dist/internal/components/dynamic-carousel/dynamic-carousel.svelte +26 -5
- package/dist/internal/components/dynamic-carousel/dynamic-carousel.svelte.d.ts +2 -0
- package/dist/internal/index.d.ts +1 -0
- package/dist/internal/index.js +1 -0
- package/dist/internal/native-field.svelte.d.ts +44 -0
- package/dist/internal/native-field.svelte.js +85 -0
- package/dist/internal/utils.d.ts +16 -2
- package/dist/internal/utils.js +25 -3
- package/dist/types/index.d.ts +3 -3
- package/package.json +50 -36
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export { default as AppSurface } from './components/app-surface/app-surface.svelte';
|
|
2
|
+
export type { AppSurfaceProps } from './components/app-surface/types.js';
|
|
3
|
+
export { default as AppWindow } from './components/app-window/app-window.svelte';
|
|
4
|
+
export { getAppWindowContext } from './components/app-window/app-window.ts';
|
|
5
|
+
export type { AppWindowProps, AppWindowContext, AppWindowPart, AppWindowSideNav, AppWindowGlobalNav } from './components/app-window/types.js';
|
|
1
6
|
export { default as AutoSuggestBox } from './components/auto-suggest-box/auto-suggest-box.svelte';
|
|
2
7
|
export { default as AutoSuggestBoxOption } from './components/auto-suggest-box/option.svelte';
|
|
3
8
|
export { default as Avatar } from './components/avatar/avatar.svelte';
|
|
@@ -24,6 +29,7 @@ export { default as CalendarDatePicker } from './components/calendar-date-picker
|
|
|
24
29
|
export { default as Checkbox } from './components/checkbox/checkbox.svelte';
|
|
25
30
|
export { default as DatePicker } from './components/date-picker/date-picker.svelte';
|
|
26
31
|
export { default as Dialog } from './components/dialog/dialog.svelte';
|
|
32
|
+
export type { DialogAnimation, DialogDuration, DialogPosition, DialogProps } from './components/dialog/types.js';
|
|
27
33
|
export { default as DialogTitle } from './components/dialog/dialog-title.svelte';
|
|
28
34
|
export { default as DialogContent } from './components/dialog/dialog-content.svelte';
|
|
29
35
|
export { default as DialogActions } from './components/dialog/dialog-actions.svelte';
|
|
@@ -41,6 +47,8 @@ export { default as InfoBar } from './components/info-bar/info-bar.svelte';
|
|
|
41
47
|
export { default as Label } from './components/label/label.svelte';
|
|
42
48
|
export { default as ListView } from './components/list-view/list-view.svelte';
|
|
43
49
|
export { default as ListViewItem } from './components/list-view/list-view-item.svelte';
|
|
50
|
+
export { default as ListViewItemBranch } from './components/list-view/list-view-item-branch.svelte';
|
|
51
|
+
export type { ListViewProps, ListViewItemProps, ListViewItemBranchProps, ListViewDOM, ListViewItemDOM, SelectionMode, NavigationMode } from './components/list-view/types.ts';
|
|
44
52
|
export { default as Menu } from './components/menu/menu.svelte';
|
|
45
53
|
export { default as MenuItem } from './components/menu/menu-item.svelte';
|
|
46
54
|
export { default as MenuDivider } from './components/menu/menu-divider.svelte';
|
|
@@ -51,6 +59,8 @@ export { default as MenuList } from './components/menu/menu-list.svelte';
|
|
|
51
59
|
export { default as MenuItemCheckbox } from './components/menu/menu-item-checkbox.svelte';
|
|
52
60
|
export { default as MenuItemRadio } from './components/menu/menu-item-radio.svelte';
|
|
53
61
|
export { default as MenuItemSwitch } from './components/menu/menu-item-switch.svelte';
|
|
62
|
+
export { default as MenuCommandBar } from './components/menu/menu-command-bar.svelte';
|
|
63
|
+
export { default as MenuCommandBarItem } from './components/menu/menu-command-bar-item.svelte';
|
|
54
64
|
export { default as ContextMenuTrigger } from './components/menu/context-menu-trigger.svelte';
|
|
55
65
|
export { default as NumberBox } from './components/number-box/number-box.svelte';
|
|
56
66
|
export { default as Persona } from './components/persona/persona.svelte';
|
|
@@ -81,6 +91,14 @@ export { default as TextArea } from './components/textarea/textarea.svelte';
|
|
|
81
91
|
export { default as TextBox } from './components/text-box/text-box.svelte';
|
|
82
92
|
export { default as TextBoxButton } from './components/text-box/text-box-button.svelte';
|
|
83
93
|
export { default as TimePicker } from './components/time-picker/time-picker.svelte';
|
|
94
|
+
export { default as SideNav } from './components/side-nav/side-nav.svelte';
|
|
95
|
+
export { default as SideNavItem } from './components/side-nav/side-nav-item.svelte';
|
|
96
|
+
export { default as SideNavBranch } from './components/side-nav/side-nav-branch.svelte';
|
|
97
|
+
export type { SideNavProps, SideNavItemProps, SideNavBranchProps, SideNavContent, SideNavRenderState, SideNavListViewProps } from './components/side-nav/types.ts';
|
|
98
|
+
export { default as TitleBar } from './components/title-bar/title-bar.svelte';
|
|
99
|
+
export { default as TitleBarLeftControls } from './components/title-bar/title-bar-left-controls.svelte';
|
|
100
|
+
export { default as TitleBarRightControls } from './components/title-bar/title-bar-right-controls.svelte';
|
|
101
|
+
export type { TitleBarProps, TitleBarLeftControlsProps, TitleBarRightControlsProps } from './components/title-bar/types.js';
|
|
84
102
|
export { default as ToggleSwitch } from './components/toggle-switch/toggle-switch.svelte';
|
|
85
103
|
export { default as TopNav } from './components/top-nav/top-nav.svelte';
|
|
86
104
|
export { default as TopNavItem } from './components/top-nav/top-nav-item.svelte';
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
// Start AppSurface Component
|
|
2
|
+
export { default as AppSurface } from './components/app-surface/app-surface.svelte';
|
|
3
|
+
// End AppSurface Component
|
|
4
|
+
// Start AppWindow Component
|
|
5
|
+
export { default as AppWindow } from './components/app-window/app-window.svelte';
|
|
6
|
+
export { getAppWindowContext } from "./components/app-window/app-window.js";
|
|
7
|
+
// End AppWindow Component
|
|
1
8
|
// Start AutoSuggestBox Component
|
|
2
9
|
export { default as AutoSuggestBox } from './components/auto-suggest-box/auto-suggest-box.svelte';
|
|
3
10
|
export { default as AutoSuggestBoxOption } from './components/auto-suggest-box/option.svelte';
|
|
@@ -80,6 +87,7 @@ export { default as Label } from './components/label/label.svelte';
|
|
|
80
87
|
// Start ListView Component
|
|
81
88
|
export { default as ListView } from './components/list-view/list-view.svelte';
|
|
82
89
|
export { default as ListViewItem } from './components/list-view/list-view-item.svelte';
|
|
90
|
+
export { default as ListViewItemBranch } from './components/list-view/list-view-item-branch.svelte';
|
|
83
91
|
// End ListView Component
|
|
84
92
|
// Start Menu Component
|
|
85
93
|
export { default as Menu } from './components/menu/menu.svelte';
|
|
@@ -92,6 +100,8 @@ export { default as MenuList } from './components/menu/menu-list.svelte';
|
|
|
92
100
|
export { default as MenuItemCheckbox } from './components/menu/menu-item-checkbox.svelte';
|
|
93
101
|
export { default as MenuItemRadio } from './components/menu/menu-item-radio.svelte';
|
|
94
102
|
export { default as MenuItemSwitch } from './components/menu/menu-item-switch.svelte';
|
|
103
|
+
export { default as MenuCommandBar } from './components/menu/menu-command-bar.svelte';
|
|
104
|
+
export { default as MenuCommandBarItem } from './components/menu/menu-command-bar-item.svelte';
|
|
95
105
|
export { default as ContextMenuTrigger } from './components/menu/context-menu-trigger.svelte';
|
|
96
106
|
// End Menu Component
|
|
97
107
|
// Start NumberBox Component
|
|
@@ -152,6 +162,16 @@ export { default as TextBoxButton } from './components/text-box/text-box-button.
|
|
|
152
162
|
// Start TimePicker Component
|
|
153
163
|
export { default as TimePicker } from './components/time-picker/time-picker.svelte';
|
|
154
164
|
// End TimePicker Component
|
|
165
|
+
// Start SideNav Component
|
|
166
|
+
export { default as SideNav } from './components/side-nav/side-nav.svelte';
|
|
167
|
+
export { default as SideNavItem } from './components/side-nav/side-nav-item.svelte';
|
|
168
|
+
export { default as SideNavBranch } from './components/side-nav/side-nav-branch.svelte';
|
|
169
|
+
// End SideNav Component
|
|
170
|
+
// Start TitleBar Component
|
|
171
|
+
export { default as TitleBar } from './components/title-bar/title-bar.svelte';
|
|
172
|
+
export { default as TitleBarLeftControls } from './components/title-bar/title-bar-left-controls.svelte';
|
|
173
|
+
export { default as TitleBarRightControls } from './components/title-bar/title-bar-right-controls.svelte';
|
|
174
|
+
// End TitleBar Component
|
|
155
175
|
// Start ToggleSwitch Component
|
|
156
176
|
export { default as ToggleSwitch } from './components/toggle-switch/toggle-switch.svelte';
|
|
157
177
|
// End ToggleSwitch Component
|
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
import CaretDownFilled from 'fluentui-icons-svelte/CaretDownFilled.svelte';
|
|
4
4
|
import CaretUpFilled from 'fluentui-icons-svelte/CaretUpFilled.svelte';
|
|
5
5
|
import { Button } from '../../../index.js';
|
|
6
|
+
import { PREFIX } from '../../constants.js';
|
|
6
7
|
import { on } from 'svelte/events';
|
|
7
8
|
|
|
8
9
|
let {
|
|
10
|
+
label,
|
|
9
11
|
values = Array.from({ length: 12 }, (_, i) => (i + 1).toString().padStart(2, '0')),
|
|
10
12
|
selectedIndex = $bindable(0),
|
|
11
13
|
disabledIndices = [],
|
|
@@ -16,6 +18,8 @@
|
|
|
16
18
|
inertia = true,
|
|
17
19
|
children
|
|
18
20
|
}: {
|
|
21
|
+
/** The accessible name of the listbox, such as the field it picks. */
|
|
22
|
+
label: string;
|
|
19
23
|
values?: string[];
|
|
20
24
|
selectedIndex?: number;
|
|
21
25
|
/** Real (0-based, unwrapped) indices the carousel must never rest on. */
|
|
@@ -30,6 +34,10 @@
|
|
|
30
34
|
children?: Snippet<[{ value: string; index: number; selected: boolean }]>;
|
|
31
35
|
} = $props();
|
|
32
36
|
|
|
37
|
+
// Picker columns render side by side, so the option ids need a prefix of their own.
|
|
38
|
+
const UID = $props.id();
|
|
39
|
+
const ITEM_ID = `${PREFIX}carousel-${UID}-item`;
|
|
40
|
+
|
|
33
41
|
// Reactive state — read by the template and deriveds.
|
|
34
42
|
let scrolling = $state(false);
|
|
35
43
|
// Continuous position for smooth scrolling (in item units, unbounded for infinite scroll).
|
|
@@ -301,7 +309,14 @@
|
|
|
301
309
|
</script>
|
|
302
310
|
|
|
303
311
|
<div class="fs-dynamic-carousel" style:--item-height="{itemHeight}px" style:--container-height="{containerHeight}px">
|
|
304
|
-
|
|
312
|
+
<!-- The arrows are for the pointer: the listbox moves with ArrowUp/ArrowDown. -->
|
|
313
|
+
<Button
|
|
314
|
+
class="fs-dynamic-carousel-btn"
|
|
315
|
+
appearance="subtle"
|
|
316
|
+
tabindex={-1}
|
|
317
|
+
aria-hidden="true"
|
|
318
|
+
onclick={() => moveBy(-1)}
|
|
319
|
+
>
|
|
305
320
|
<CaretUpFilled />
|
|
306
321
|
</Button>
|
|
307
322
|
<div
|
|
@@ -310,13 +325,13 @@
|
|
|
310
325
|
onkeydown={handleKeydown}
|
|
311
326
|
role="listbox"
|
|
312
327
|
tabindex="0"
|
|
313
|
-
aria-label=
|
|
314
|
-
aria-activedescendant="
|
|
328
|
+
aria-label={label}
|
|
329
|
+
aria-activedescendant="{ITEM_ID}-{centerIndex}"
|
|
315
330
|
>
|
|
316
331
|
<div class="fs-dynamic-carousel-track">
|
|
317
332
|
{#each virtualItems as item (item.key)}
|
|
318
333
|
<div
|
|
319
|
-
id="
|
|
334
|
+
id="{ITEM_ID}-{item.key}"
|
|
320
335
|
class={[
|
|
321
336
|
'fs-dynamic-carousel-item',
|
|
322
337
|
item.realIndex === currentSelectedIndex && 'selected',
|
|
@@ -352,7 +367,13 @@
|
|
|
352
367
|
{/each}
|
|
353
368
|
</div>
|
|
354
369
|
</div>
|
|
355
|
-
<Button
|
|
370
|
+
<Button
|
|
371
|
+
class="fs-dynamic-carousel-btn"
|
|
372
|
+
appearance="subtle"
|
|
373
|
+
tabindex={-1}
|
|
374
|
+
aria-hidden="true"
|
|
375
|
+
onclick={() => moveBy(1)}
|
|
376
|
+
>
|
|
356
377
|
<CaretDownFilled />
|
|
357
378
|
</Button>
|
|
358
379
|
</div>
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { Snippet } from 'svelte';
|
|
2
2
|
type $$ComponentProps = {
|
|
3
|
+
/** The accessible name of the listbox, such as the field it picks. */
|
|
4
|
+
label: string;
|
|
3
5
|
values?: string[];
|
|
4
6
|
selectedIndex?: number;
|
|
5
7
|
/** Real (0-based, unwrapped) indices the carousel must never rest on. */
|
package/dist/internal/index.d.ts
CHANGED
package/dist/internal/index.js
CHANGED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { AriaAttributes } from 'svelte/elements';
|
|
2
|
+
type Field = HTMLInputElement | HTMLSelectElement;
|
|
3
|
+
type PointerEventName = 'click' | 'dblclick' | 'auxclick' | 'contextmenu' | `mouse${string}` | `pointer${string}` | `touch${string}` | `drag${string}` | 'drop' | 'wheel';
|
|
4
|
+
type KeyboardFocusEventName = `key${string}` | 'focus' | 'blur' | 'focusin' | 'focusout';
|
|
5
|
+
type Handlers<E extends string> = `on${E}` | `on${E}capture`;
|
|
6
|
+
/** The attributes of a field nobody sees: its look and its pointer events belong to what is drawn instead. */
|
|
7
|
+
export type HiddenInputAttributes<T> = Omit<T, Handlers<PointerEventName>>;
|
|
8
|
+
/**
|
|
9
|
+
* The attributes of the native field a custom control stands in front of. People point at, type into
|
|
10
|
+
* and focus the visible control, so `class`, `style` and those events go through its own attributes,
|
|
11
|
+
* and `onfocus` and `onblur` are moved onto it.
|
|
12
|
+
*/
|
|
13
|
+
export type NativeFieldAttributes<T> = Omit<HiddenInputAttributes<T>, Handlers<KeyboardFocusEventName>> & {
|
|
14
|
+
/** Called when the visible control takes the focus. */
|
|
15
|
+
onfocus?: (event: FocusEvent) => void;
|
|
16
|
+
/** Called when the visible control loses the focus. */
|
|
17
|
+
onblur?: (event: FocusEvent) => void;
|
|
18
|
+
};
|
|
19
|
+
type FieldAria = Pick<AriaAttributes, 'aria-labelledby' | 'aria-label' | 'aria-describedby' | 'aria-errormessage' | 'aria-required' | 'aria-invalid'>;
|
|
20
|
+
/**
|
|
21
|
+
* The native field a custom control stands in front of, so that forms submit, validate and reset it.
|
|
22
|
+
* Assistive technologies meet the visible control instead, so the field hides from them, except while
|
|
23
|
+
* the browser reports it invalid: the field then holds the focus and the validation message, which
|
|
24
|
+
* moving the focus would close, and it is announced. The first key pressed there goes on from the
|
|
25
|
+
* visible control.
|
|
26
|
+
*/
|
|
27
|
+
export declare class NativeField {
|
|
28
|
+
#private;
|
|
29
|
+
/** A submission found the field invalid, and it was neither fixed nor reset since. */
|
|
30
|
+
invalid: boolean;
|
|
31
|
+
/** The browser is reporting the field: it has the focus and shows the validation message. */
|
|
32
|
+
reported: boolean;
|
|
33
|
+
/** `label` is the Label the field is inside, which names the visible control before its labels can be read. */
|
|
34
|
+
constructor(field: () => Field | null | undefined, control: () => HTMLElement | null | undefined, label?: {
|
|
35
|
+
labelId: string;
|
|
36
|
+
} | null);
|
|
37
|
+
/**
|
|
38
|
+
* The labels and ARIA of the field name and describe it.
|
|
39
|
+
*/
|
|
40
|
+
aria(attributes: FieldAria & {
|
|
41
|
+
required?: boolean | null;
|
|
42
|
+
}, own?: FieldAria, role?: 'button' | 'combobox'): FieldAria;
|
|
43
|
+
}
|
|
44
|
+
export {};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { on } from 'svelte/events';
|
|
2
|
+
import { labelIds } from "./utils.js";
|
|
3
|
+
/** The keys that open a picker from its button. */
|
|
4
|
+
const ACTIVATION_KEYS = ['Enter', ' ', 'ArrowDown', 'ArrowUp'];
|
|
5
|
+
/** The field the browser focuses and reports when a submission fails. */
|
|
6
|
+
const firstInvalid = (form) => Array.from(form.elements).find((element) => {
|
|
7
|
+
const field = element;
|
|
8
|
+
return field.willValidate && !field.validity.valid;
|
|
9
|
+
});
|
|
10
|
+
/**
|
|
11
|
+
* The native field a custom control stands in front of, so that forms submit, validate and reset it.
|
|
12
|
+
* Assistive technologies meet the visible control instead, so the field hides from them, except while
|
|
13
|
+
* the browser reports it invalid: the field then holds the focus and the validation message, which
|
|
14
|
+
* moving the focus would close, and it is announced. The first key pressed there goes on from the
|
|
15
|
+
* visible control.
|
|
16
|
+
*/
|
|
17
|
+
export class NativeField {
|
|
18
|
+
/** A submission found the field invalid, and it was neither fixed nor reset since. */
|
|
19
|
+
invalid = $state(false);
|
|
20
|
+
/** The browser is reporting the field: it has the focus and shows the validation message. */
|
|
21
|
+
reported = $state(false);
|
|
22
|
+
#field;
|
|
23
|
+
#label;
|
|
24
|
+
/** `label` is the Label the field is inside, which names the visible control before its labels can be read. */
|
|
25
|
+
constructor(field, control, label = null) {
|
|
26
|
+
this.#field = field;
|
|
27
|
+
this.#label = label;
|
|
28
|
+
$effect(() => {
|
|
29
|
+
const element = field();
|
|
30
|
+
if (!element)
|
|
31
|
+
return;
|
|
32
|
+
const offs = [
|
|
33
|
+
on(element, 'invalid', () => {
|
|
34
|
+
this.invalid = true;
|
|
35
|
+
if (element.form && firstInvalid(element.form) !== element)
|
|
36
|
+
return;
|
|
37
|
+
// The browser focuses the field right after this event, and the focus must not land
|
|
38
|
+
// on something hidden from assistive technologies.
|
|
39
|
+
element.removeAttribute('aria-hidden');
|
|
40
|
+
this.reported = true;
|
|
41
|
+
// `checkValidity` reports nothing, so a field it found invalid hides again.
|
|
42
|
+
setTimeout(() => {
|
|
43
|
+
if (document.activeElement !== element)
|
|
44
|
+
this.reported = false;
|
|
45
|
+
});
|
|
46
|
+
}),
|
|
47
|
+
on(element, 'change', () => {
|
|
48
|
+
if (this.invalid)
|
|
49
|
+
this.invalid = !element.validity.valid;
|
|
50
|
+
}),
|
|
51
|
+
on(element, 'blur', () => (this.reported = false)),
|
|
52
|
+
on(element, 'keydown', (event) => {
|
|
53
|
+
if (event.key === 'Tab')
|
|
54
|
+
return;
|
|
55
|
+
event.preventDefault();
|
|
56
|
+
const target = control();
|
|
57
|
+
target?.focus();
|
|
58
|
+
if (ACTIVATION_KEYS.includes(event.key))
|
|
59
|
+
target?.click();
|
|
60
|
+
})
|
|
61
|
+
];
|
|
62
|
+
if (element.form)
|
|
63
|
+
offs.push(on(element.form, 'reset', () => (this.invalid = false)));
|
|
64
|
+
return () => offs.forEach((off) => off());
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* The labels and ARIA of the field name and describe it.
|
|
69
|
+
*/
|
|
70
|
+
aria(attributes, own = {}, role = 'combobox') {
|
|
71
|
+
const naming = {
|
|
72
|
+
'aria-labelledby': own['aria-labelledby'] ?? attributes['aria-labelledby'] ?? labelIds(this.#field()) ?? this.#label?.labelId,
|
|
73
|
+
'aria-label': own['aria-label'] ?? attributes['aria-label'],
|
|
74
|
+
'aria-describedby': own['aria-describedby'] ?? attributes['aria-describedby']
|
|
75
|
+
};
|
|
76
|
+
if (role === 'button')
|
|
77
|
+
return naming;
|
|
78
|
+
return {
|
|
79
|
+
...naming,
|
|
80
|
+
'aria-required': own['aria-required'] ?? (attributes.required ? true : undefined),
|
|
81
|
+
'aria-invalid': own['aria-invalid'] ?? (this.invalid || attributes['aria-invalid'] || undefined),
|
|
82
|
+
'aria-errormessage': own['aria-errormessage'] ?? attributes['aria-errormessage']
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
}
|
package/dist/internal/utils.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
/** Converts
|
|
1
|
+
/** Converts pixels to rem using the current root font size, or 16px during SSR. An explicit base overrides detection. */
|
|
2
2
|
export declare const pxToRem: (px: number | string | (() => number | string), base?: number) => string;
|
|
3
|
+
/** A number is a length in pixels, converted to rem; a string is any CSS length and is used as it is. */
|
|
4
|
+
export declare const toLength: (value: number | string) => string;
|
|
3
5
|
/** Rounds a pixel value to the nearest physical pixel based on the device pixel ratio. */
|
|
4
6
|
export declare const roundByDPR: (value: number, element?: Element) => number;
|
|
5
7
|
/** Converts a kebab-case string to Title Case (e.g. `'my-label'` → `'My Label'`). */
|
|
@@ -10,11 +12,23 @@ type EventHandler<E extends Event> = (this: unknown, event: E) => void;
|
|
|
10
12
|
export declare function once<E extends Event>(fn: EventHandler<E> | null): EventHandler<E>;
|
|
11
13
|
/** Wraps a handler to call `preventDefault()` before invoking it. */
|
|
12
14
|
export declare function preventDefault<E extends Event = Event>(fn: EventHandler<E>): EventHandler<E>;
|
|
15
|
+
/** Method syntax keeps `event` bivariant, so handlers typed with a narrower `currentTarget` are accepted. */
|
|
16
|
+
type BivariantHandler<E extends Event> = {
|
|
17
|
+
bivarianceHack(event: E): unknown;
|
|
18
|
+
}['bivarianceHack'];
|
|
13
19
|
/**
|
|
14
20
|
* Dispatches an event to a list of callbacks.
|
|
15
21
|
* If any blocker in `blockers` is true, calls `preventDefault()` and skips the callbacks.
|
|
16
22
|
*/
|
|
17
|
-
export declare const invokeHandlers: <T extends Event>(e: T, blockers?: boolean | (boolean | undefined)[], callbacks?: Array<
|
|
23
|
+
export declare const invokeHandlers: <T extends Event>(e: T, blockers?: boolean | (boolean | undefined)[], callbacks?: Array<BivariantHandler<NoInfer<T>> | false | null | undefined>) => void;
|
|
24
|
+
/**
|
|
25
|
+
* A custom control sets the value of its native field programmatically, which fires no event.
|
|
26
|
+
* Once the field shows the new value, this fires the events when a user edit of the field would.
|
|
27
|
+
* Call it from event handlers only: `flushSync` cannot run inside an effect.
|
|
28
|
+
*/
|
|
29
|
+
export declare function dispatchFieldEvents(field: EventTarget | null | undefined, types?: ('input' | 'change')[]): void;
|
|
30
|
+
/** The ids of the labels of a native field, so the visible control that stands in for it is named by them. */
|
|
31
|
+
export declare const labelIds: (field: HTMLInputElement | HTMLSelectElement | null | undefined) => string | undefined;
|
|
18
32
|
/** Returns `true` if the object has no own enumerable keys (also handles `null`/`undefined`). */
|
|
19
33
|
export declare const isObjectEmpty: (obj: Record<string, unknown> | null | undefined) => boolean;
|
|
20
34
|
/** Returns the value of a CSS custom property as milliseconds. */
|
package/dist/internal/utils.js
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { flushSync } from 'svelte';
|
|
2
|
+
/** Converts pixels to rem using the current root font size, or 16px during SSR. An explicit base overrides detection. */
|
|
3
|
+
export const pxToRem = (px, base) => {
|
|
3
4
|
if (typeof px === 'function') {
|
|
4
5
|
px = px();
|
|
5
6
|
}
|
|
6
|
-
|
|
7
|
+
const rootSize = base ??
|
|
8
|
+
(typeof window === 'undefined'
|
|
9
|
+
? 16
|
|
10
|
+
: parseFloat(window.getComputedStyle(window.document.documentElement).fontSize));
|
|
11
|
+
const resolvedBase = Number.isFinite(rootSize) && rootSize > 0 ? rootSize : 16;
|
|
12
|
+
return `${(typeof px === 'string' ? parseFloat(px) : px) / resolvedBase}rem`;
|
|
7
13
|
};
|
|
14
|
+
/** A number is a length in pixels, converted to rem; a string is any CSS length and is used as it is. */
|
|
15
|
+
export const toLength = (value) => (typeof value === 'number' ? pxToRem(value) : value);
|
|
8
16
|
/** Rounds a pixel value to the nearest physical pixel based on the device pixel ratio. */
|
|
9
17
|
export const roundByDPR = (value, element) => {
|
|
10
18
|
const dpr = element?.ownerDocument.defaultView?.devicePixelRatio || window.devicePixelRatio || 1;
|
|
@@ -51,6 +59,20 @@ export const invokeHandlers = (e, blockers = [], callbacks = []) => {
|
|
|
51
59
|
cb(e);
|
|
52
60
|
}
|
|
53
61
|
};
|
|
62
|
+
/**
|
|
63
|
+
* A custom control sets the value of its native field programmatically, which fires no event.
|
|
64
|
+
* Once the field shows the new value, this fires the events when a user edit of the field would.
|
|
65
|
+
* Call it from event handlers only: `flushSync` cannot run inside an effect.
|
|
66
|
+
*/
|
|
67
|
+
export function dispatchFieldEvents(field, types = ['input', 'change']) {
|
|
68
|
+
flushSync();
|
|
69
|
+
for (const type of types)
|
|
70
|
+
field?.dispatchEvent(new Event(type, { bubbles: true }));
|
|
71
|
+
}
|
|
72
|
+
/** The ids of the labels of a native field, so the visible control that stands in for it is named by them. */
|
|
73
|
+
export const labelIds = (field) => Array.from(field?.labels ?? [], (label) => label.id)
|
|
74
|
+
.filter(Boolean)
|
|
75
|
+
.join(' ') || undefined;
|
|
54
76
|
/** Returns `true` if the object has no own enumerable keys (also handles `null`/`undefined`). */
|
|
55
77
|
export const isObjectEmpty = (obj) => Object.keys(obj || {}).length === 0;
|
|
56
78
|
/** Returns the value of a CSS custom property as milliseconds. */
|
package/dist/types/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ export type NoUndefinedField<T> = {
|
|
|
4
4
|
[P in keyof T]-?: P extends Record<P, infer V> ? NoUndefinedField<NonNullable<V>> : NonNullable<T[P]>;
|
|
5
5
|
};
|
|
6
6
|
/** Omits all keys from `T` whose name starts with the prefix `K`. */
|
|
7
|
-
export type OmitByWord<T, K extends string> = {
|
|
8
|
-
[P in keyof T as P extends `${K}${string}` ? never : P]: T[P];
|
|
7
|
+
export type OmitByWord<T, K extends string, Excluded extends PropertyKey = never> = {
|
|
8
|
+
[P in keyof T as P extends Excluded ? never : P extends `${K}${string}` ? never : P]: T[P];
|
|
9
9
|
};
|
|
10
10
|
/** Picks only the keys from `T` whose name starts with the prefix `K`. */
|
|
11
11
|
export type PickByWord<T, K extends string> = {
|
|
@@ -33,7 +33,7 @@ export type THEME = 'light' | 'dark' | 'system';
|
|
|
33
33
|
* @see https://github.com/sveltejs/svelte/issues/16046
|
|
34
34
|
* @see https://github.com/sveltejs/svelte/issues/16839
|
|
35
35
|
*/
|
|
36
|
-
export type PolymorphicProps<T extends keyof SvelteHTMLElements> = OmitByWord<SvelteHTMLElements[T], 'on:' | 'aria'> & AriaAttributes;
|
|
36
|
+
export type PolymorphicProps<T extends keyof SvelteHTMLElements, Excluded extends PropertyKey = never> = OmitByWord<SvelteHTMLElements[T], 'on:' | 'aria', Excluded> & AriaAttributes;
|
|
37
37
|
/** Library maturity/status shown as a badge in the navigation. Not part of SEO/GEO. */
|
|
38
38
|
export type ComponentStatus = 'New' | 'Beta' | 'WIP' | 'AI' | 'Experimental' | 'Prototype' | 'Empty';
|
|
39
39
|
/** Open Graph metadata (https://ogp.me). Used to build `<meta property="og:*">` tags. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fluentui-svelte",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Modern Fluent UI 2 Components for Svelte 5",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Jorge Acosta",
|
|
@@ -70,70 +70,84 @@
|
|
|
70
70
|
"@floating-ui/dom": "^1.8.0",
|
|
71
71
|
"fluentui-icons-svelte": "^1.2.0",
|
|
72
72
|
"mode-watcher": "^1.1.0",
|
|
73
|
-
"runed": "^0.
|
|
73
|
+
"runed": "^0.38.0",
|
|
74
74
|
"tabspot": "^0.8.0"
|
|
75
75
|
},
|
|
76
76
|
"peerDependencies": {
|
|
77
77
|
"svelte": "^5.0.0"
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
|
-
"@changesets/changelog-github": "^1.0.
|
|
81
|
-
"@changesets/cli": "^3.0.
|
|
80
|
+
"@changesets/changelog-github": "^1.0.1",
|
|
81
|
+
"@changesets/cli": "^3.0.3",
|
|
82
82
|
"@eslint/js": "^10.0.1",
|
|
83
|
-
"@humanspeak/svelte-virtual-list": "^0.5.
|
|
84
|
-
"@inlang/paraglide-js": "^2.
|
|
83
|
+
"@humanspeak/svelte-virtual-list": "^0.5.15",
|
|
84
|
+
"@inlang/paraglide-js": "^2.29.3",
|
|
85
85
|
"@inlang/paraglide-js-svelte": "^1.0.4",
|
|
86
86
|
"@jlacostaec/paraglide-markup-svelte": "0.1.0",
|
|
87
87
|
"@jlacostaec/propsmith": "^0.2.0",
|
|
88
|
-
"@playwright/test": "^1.
|
|
89
|
-
"@sveltejs/adapter-auto": "^
|
|
90
|
-
"@sveltejs/adapter-cloudflare": "^
|
|
91
|
-
"@sveltejs/
|
|
92
|
-
"@sveltejs/
|
|
93
|
-
"@sveltejs/
|
|
94
|
-
"@
|
|
95
|
-
"@
|
|
96
|
-
"
|
|
88
|
+
"@playwright/test": "^1.64.1",
|
|
89
|
+
"@sveltejs/adapter-auto": "^8.0.0",
|
|
90
|
+
"@sveltejs/adapter-cloudflare": "^8.0.2",
|
|
91
|
+
"@sveltejs/enhanced-img": "^1.0.0",
|
|
92
|
+
"@sveltejs/kit": "^3.1.1",
|
|
93
|
+
"@sveltejs/package": "^3.0.2",
|
|
94
|
+
"@sveltejs/vite-plugin-svelte": "^7.3.1",
|
|
95
|
+
"@types/node": "^26.6.6",
|
|
96
|
+
"@vitest/browser-playwright": "^5.1.0",
|
|
97
|
+
"eslint": "^10.14.0",
|
|
97
98
|
"eslint-config-prettier": "^10.1.8",
|
|
98
|
-
"eslint-plugin-svelte": "^3.23.
|
|
99
|
-
"globals": "^17.
|
|
99
|
+
"eslint-plugin-svelte": "^3.23.1",
|
|
100
|
+
"globals": "^17.14.0",
|
|
100
101
|
"mdsvex": "^0.12.8",
|
|
101
102
|
"panzoom": "^9.4.4",
|
|
102
|
-
"playwright": "^1.
|
|
103
|
-
"prettier": "^3.9.
|
|
103
|
+
"playwright": "^1.64.1",
|
|
104
|
+
"prettier": "^3.9.10",
|
|
104
105
|
"prettier-plugin-svelte": "^4.1.1",
|
|
105
|
-
"publint": "^0.3.
|
|
106
|
+
"publint": "^0.3.25",
|
|
106
107
|
"rehype-class-names": "^2.0.0",
|
|
107
108
|
"rehype-slug": "^6.0.0",
|
|
108
|
-
"shiki": "^4.
|
|
109
|
+
"shiki": "^4.6.0",
|
|
109
110
|
"simplex-noise": "^4.0.3",
|
|
110
|
-
"svelte": "^5.
|
|
111
|
-
"svelte-check": "^4.7.
|
|
111
|
+
"svelte": "^5.57.3",
|
|
112
|
+
"svelte-check": "^4.7.8",
|
|
113
|
+
"svelte-meta-tags": "^5.0.3",
|
|
112
114
|
"typescript": "6.0.3",
|
|
113
|
-
"typescript-eslint": "^8.
|
|
114
|
-
"vite": "^8.
|
|
115
|
-
"vitest": "^
|
|
116
|
-
"vitest-browser-svelte": "^3.
|
|
117
|
-
"wrangler": "^4.
|
|
115
|
+
"typescript-eslint": "^8.72.1",
|
|
116
|
+
"vite": "^8.3.5",
|
|
117
|
+
"vitest": "^5.1.0",
|
|
118
|
+
"vitest-browser-svelte": "^3.1.0",
|
|
119
|
+
"wrangler": "^4.156.2"
|
|
120
|
+
},
|
|
121
|
+
"imports": {
|
|
122
|
+
"#lib": "./src/lib/index.js",
|
|
123
|
+
"#lib/*": "./src/lib/*",
|
|
124
|
+
"#types": "./src/lib/types/index.js",
|
|
125
|
+
"#internal": "./src/lib/internal/index.js",
|
|
126
|
+
"#components/*": "./src/lib/components/*",
|
|
127
|
+
"#css/*": "./src/lib/css/*",
|
|
128
|
+
"#site/*": "./src/site/*",
|
|
129
|
+
"#i18n/*": "./src/i18n/*",
|
|
130
|
+
"#constants": "./src/lib/internal/constants.js"
|
|
118
131
|
},
|
|
119
132
|
"engines": {
|
|
120
133
|
"node": ">=24"
|
|
121
134
|
},
|
|
122
135
|
"scripts": {
|
|
123
136
|
"dev": "pnpm urls && vite dev",
|
|
124
|
-
"build:site": "pnpm urls && vite build && pnpm prepare",
|
|
125
|
-
"build": "pnpm urls && vite build && npm run prepack",
|
|
126
|
-
"preview": "
|
|
127
|
-
"
|
|
128
|
-
"check
|
|
137
|
+
"build:site": "pnpm urls && pnpm check && vite build && pnpm prepare",
|
|
138
|
+
"build": "pnpm urls && pnpm check && vite build && npm run prepack",
|
|
139
|
+
"preview": "wrangler pages dev",
|
|
140
|
+
"i18n": "paraglide-js compile --project ./project.inlang --outdir ./src/i18n --strategy url cookie baseLocale --emit-ts-declarations --silent",
|
|
141
|
+
"check": "pnpm i18n && wrangler types --check && svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
142
|
+
"check:watch": "pnpm i18n && wrangler types --check && svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
|
129
143
|
"lint": "prettier --check . && eslint .",
|
|
130
144
|
"format": "prettier --write .",
|
|
131
145
|
"test:unit": "vitest",
|
|
132
|
-
"test": "
|
|
146
|
+
"test": "pnpm run test:unit -- --run && npm run test:e2e",
|
|
133
147
|
"test:e2e": "playwright install && playwright test",
|
|
134
|
-
"deploy": "pnpm run build:site && wrangler
|
|
148
|
+
"deploy": "pnpm run build:site && wrangler deploy",
|
|
135
149
|
"urls": "node scripts/gen-urls.js",
|
|
136
|
-
"cf-typegen": "wrangler types
|
|
150
|
+
"cf-typegen": "wrangler types",
|
|
137
151
|
"changeset:version": "changeset version && git add --all",
|
|
138
152
|
"changeset:publish": "changeset publish"
|
|
139
153
|
}
|