@pathscale/ui 2.11.9 → 2.11.11

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 (113) hide show
  1. package/dist/components/accordion/Accordion.generated.js +34 -5
  2. package/dist/components/address/Address.generated.js +17 -1
  3. package/dist/components/alert/Alert.generated.js +11 -1
  4. package/dist/components/auth-card/AuthCard.generated.js +8 -1
  5. package/dist/components/auth-field-group/AuthFieldGroup.generated.js +5 -1
  6. package/dist/components/auth-footer-links/AuthFooterLinks.generated.js +5 -1
  7. package/dist/components/auth-message/AuthMessage.generated.js +5 -1
  8. package/dist/components/auth-powered-by/AuthPoweredBy.generated.js +8 -1
  9. package/dist/components/auth-submit-button/AuthSubmitButton.generated.js +10 -1
  10. package/dist/components/avatar/Avatar.generated.js +12 -2
  11. package/dist/components/breadcrumb/Breadcrumb.generated.js +11 -2
  12. package/dist/components/button/Button.css +10 -2
  13. package/dist/components/button/Button.generated.js +14 -1
  14. package/dist/components/button-group/ButtonGroup.generated.js +9 -1
  15. package/dist/components/card/Card.generated.js +26 -4
  16. package/dist/components/chatbubble/ChatBubble.generated.js +4 -1
  17. package/dist/components/chatbubble/ChatBubbleAvatar.generated.js +6 -1
  18. package/dist/components/chatbubble/ChatBubbleMessage.generated.js +4 -1
  19. package/dist/components/checkbox/Checkbox.generated.js +11 -1
  20. package/dist/components/checkbox-group/CheckboxGroup.generated.js +12 -1
  21. package/dist/components/close-button/CloseButton.generated.js +8 -1
  22. package/dist/components/collapsible/Collapsible.generated.js +31 -6
  23. package/dist/components/color-area/ColorArea.generated.js +6 -1
  24. package/dist/components/color-field/ColorField.generated.js +9 -1
  25. package/dist/components/color-picker/ColorPicker.generated.js +20 -4
  26. package/dist/components/color-slider/ColorSlider.generated.js +8 -1
  27. package/dist/components/color-swatch/ColorSwatch.generated.js +11 -1
  28. package/dist/components/color-swatch-picker/ColorSwatchPicker.generated.js +8 -1
  29. package/dist/components/color-wheel-flower/ColorWheelFlower.css +0 -1
  30. package/dist/components/color-wheel-flower/ColorWheelFlower.generated.js +7 -1
  31. package/dist/components/combo-box/ComboBox.generated.js +53 -6
  32. package/dist/components/composer/Composer.generated.js +24 -1
  33. package/dist/components/data-grid/DataGrid.generated.js +17 -1
  34. package/dist/components/date-field/DateField.generated.js +27 -4
  35. package/dist/components/dialog/Dialog.generated.js +60 -10
  36. package/dist/components/dock/Dock.generated.js +27 -1
  37. package/dist/components/drawer/Drawer.generated.js +74 -11
  38. package/dist/components/dropdown/Dropdown.generated.js +22 -3
  39. package/dist/components/empty/Empty.generated.js +20 -5
  40. package/dist/components/fieldset/Fieldset.generated.js +8 -2
  41. package/dist/components/flex/Flex.generated.js +20 -1
  42. package/dist/components/footer/Footer.generated.js +7 -1
  43. package/dist/components/footer/FooterTitle.generated.js +4 -1
  44. package/dist/components/form/FieldErrorMessage.generated.js +4 -1
  45. package/dist/components/form/Form.generated.js +5 -1
  46. package/dist/components/form/FormField.generated.js +8 -1
  47. package/dist/components/form/FormSubmitButton.generated.js +4 -1
  48. package/dist/components/grid/Grid.generated.js +10 -1
  49. package/dist/components/icon/Icon.generated.js +7 -1
  50. package/dist/components/inline-edit/InlineEdit.generated.js +11 -1
  51. package/dist/components/input/Input.generated.js +31 -4
  52. package/dist/components/input-otp/InputOTP.generated.js +30 -4
  53. package/dist/components/join/Join.generated.js +6 -1
  54. package/dist/components/kbd/Kbd.generated.js +13 -3
  55. package/dist/components/label/Label.generated.js +8 -1
  56. package/dist/components/language-switcher/LanguageSwitcher.generated.d.ts +2 -2
  57. package/dist/components/language-switcher/LanguageSwitcher.generated.js +97 -49
  58. package/dist/components/language-switcher/LanguageSwitcher.recipe.d.ts +1 -0
  59. package/dist/components/language-switcher/LanguageSwitcher.recipe.js +8 -2
  60. package/dist/components/language-switcher/createI18n.js +0 -2
  61. package/dist/components/link/Link.generated.js +7 -1
  62. package/dist/components/list-box/ListBox.generated.js +16 -1
  63. package/dist/components/list-box/ListBoxItem.generated.js +13 -2
  64. package/dist/components/list-box/ListBoxSection.generated.js +5 -1
  65. package/dist/components/menu/Menu.generated.js +16 -1
  66. package/dist/components/menu/MenuItem.generated.js +20 -3
  67. package/dist/components/menu/MenuSection.generated.js +5 -1
  68. package/dist/components/metal-border/MetalBorder.generated.js +12 -1
  69. package/dist/components/meter/Meter.generated.js +15 -1
  70. package/dist/components/navbar/Navbar.generated.js +6 -1
  71. package/dist/components/navbar/NavbarRow.generated.js +7 -1
  72. package/dist/components/navbar/NavbarSection.generated.js +5 -1
  73. package/dist/components/navbar/NavbarStack.generated.js +6 -1
  74. package/dist/components/noise-background/NoiseBackground.generated.js +13 -1
  75. package/dist/components/pagination/Pagination.generated.js +7 -1
  76. package/dist/components/panel-toggle/PanelToggle.generated.js +8 -1
  77. package/dist/components/password-field/PasswordField.generated.js +25 -1
  78. package/dist/components/password-requirements/PasswordRequirements.generated.js +7 -1
  79. package/dist/components/popover/Popover.generated.js +36 -6
  80. package/dist/components/progress/Progress.generated.js +13 -1
  81. package/dist/components/radial-progress/RadialProgress.generated.js +12 -1
  82. package/dist/components/radio/Radio.generated.js +8 -1
  83. package/dist/components/radio-group/RadioGroup.generated.js +16 -1
  84. package/dist/components/scroll-area/ScrollArea.generated.js +11 -1
  85. package/dist/components/select/Select.generated.js +39 -4
  86. package/dist/components/separator/Separator.generated.js +5 -1
  87. package/dist/components/skeleton/Skeleton.generated.js +10 -1
  88. package/dist/components/spinner/Spinner.generated.js +7 -1
  89. package/dist/components/switch/Switch.generated.js +10 -1
  90. package/dist/components/table/ExpandToggle.generated.js +8 -1
  91. package/dist/components/table/InlineConfirm.generated.js +11 -1
  92. package/dist/components/table/MobileListView.generated.js +11 -1
  93. package/dist/components/table/SortIcon.generated.js +8 -1
  94. package/dist/components/table/TableColumn.generated.js +6 -1
  95. package/dist/components/table/TableContent.generated.js +5 -1
  96. package/dist/components/table/TableExpandedRow.generated.js +7 -1
  97. package/dist/components/table/TablePageSize.generated.js +9 -1
  98. package/dist/components/table/TableRoot.generated.js +4 -1
  99. package/dist/components/table/VirtualSpacerRow.generated.js +5 -1
  100. package/dist/components/tabs/Tabs.generated.js +22 -4
  101. package/dist/components/text/Text.generated.js +11 -1
  102. package/dist/components/textarea/Textarea.generated.js +8 -1
  103. package/dist/components/time-field/TimeField.generated.js +27 -4
  104. package/dist/components/toast/Toast.generated.js +43 -6
  105. package/dist/components/toast/index.d.ts +1 -1
  106. package/dist/components/toast/index.js +1 -1
  107. package/dist/components/toolbar/Toolbar.generated.js +5 -1
  108. package/dist/components/tooltip/Tooltip.generated.js +25 -4
  109. package/dist/index.d.ts +1 -1
  110. package/dist/index.js +1 -2
  111. package/dist/layouts.manifest.json +1 -1
  112. package/dist/purge-manifest.json +2 -1
  113. package/package.json +1 -1
@@ -69,7 +69,10 @@ const __solidLayoutFieldGroup = (_stable, p)=>{
69
69
  const FieldGroup = defineComponent({
70
70
  recipe: componentRecipe,
71
71
  layout: __solidLayoutFieldGroup,
72
- embedded: true
72
+ embedded: true,
73
+ behaviour: [
74
+ "children"
75
+ ]
73
76
  });
74
77
  const __solidLayoutFieldsetActions = (_stable, p)=>{
75
78
  const others = omit(p, "children", "class", "dataTheme", "style");
@@ -91,7 +94,10 @@ const __solidLayoutFieldsetActions = (_stable, p)=>{
91
94
  const FieldsetActions = defineComponent({
92
95
  recipe: componentRecipe,
93
96
  layout: __solidLayoutFieldsetActions,
94
- embedded: true
97
+ embedded: true,
98
+ behaviour: [
99
+ "children"
100
+ ]
95
101
  });
96
102
  const Fieldset = Object.assign(FieldsetRoot, {
97
103
  Root: FieldsetRoot,
@@ -26,7 +26,26 @@ const __solidLayoutFlex = (_stable, p)=>{
26
26
  const Flex = defineComponent({
27
27
  recipe: componentRecipe,
28
28
  layout: __solidLayoutFlex,
29
- embedded: true
29
+ embedded: true,
30
+ behaviour: [
31
+ "as",
32
+ "direction",
33
+ "justify",
34
+ "align",
35
+ "wrap",
36
+ "gap",
37
+ "gapX",
38
+ "gapY",
39
+ "paddingInline",
40
+ "paddingBlock",
41
+ "width",
42
+ "height",
43
+ "minWidth",
44
+ "minHeight",
45
+ "grow",
46
+ "shrink",
47
+ "basis"
48
+ ]
30
49
  });
31
50
  const Flex_generated = Flex;
32
51
  export default Flex_generated;
@@ -23,7 +23,13 @@ const __solidLayoutFooter = (_stable, p)=>{
23
23
  const Footer = defineComponent({
24
24
  recipe: componentRecipe,
25
25
  layout: __solidLayoutFooter,
26
- embedded: true
26
+ embedded: true,
27
+ behaviour: [
28
+ "children",
29
+ "center",
30
+ "horizontal",
31
+ "vertical"
32
+ ]
27
33
  });
28
34
  const FooterNamespaces = Object.assign(Footer, {
29
35
  Title: FooterTitle
@@ -21,6 +21,9 @@ const __solidLayoutFooterTitle = (_stable, p)=>{
21
21
  const FooterTitle = defineComponent({
22
22
  recipe: componentRecipe,
23
23
  layout: __solidLayoutFooterTitle,
24
- embedded: true
24
+ embedded: true,
25
+ behaviour: [
26
+ "children"
27
+ ]
25
28
  });
26
29
  export { FooterTitle };
@@ -24,7 +24,10 @@ const __solidLayoutFieldErrorMessage = (_stable, p)=>createComponent(Show, {
24
24
  const FieldErrorMessage = defineComponent({
25
25
  recipe: componentRecipe,
26
26
  layout: __solidLayoutFieldErrorMessage,
27
- embedded: true
27
+ embedded: true,
28
+ behaviour: [
29
+ "message"
30
+ ]
28
31
  });
29
32
  const FieldErrorMessage_generated = FieldErrorMessage;
30
33
  export default FieldErrorMessage_generated;
@@ -64,7 +64,11 @@ const __solidLayoutFormWithContext = (_stable, p)=>{
64
64
  const FormWithContext = defineComponent({
65
65
  recipe: componentRecipe,
66
66
  layout: __solidLayoutFormWithContext,
67
- embedded: true
67
+ embedded: true,
68
+ behaviour: [
69
+ "form",
70
+ "onSubmit"
71
+ ]
68
72
  });
69
73
  const __solidLayoutForm = (_stable, p)=>{
70
74
  if ("form" in p && null != p.form) return createComponent(FormWithContext, p);
@@ -78,7 +78,14 @@ const __solidLayoutFormField = (_stable, p)=>{
78
78
  const FormField = defineComponent({
79
79
  recipe: componentRecipe,
80
80
  layout: __solidLayoutFormField,
81
- embedded: true
81
+ embedded: true,
82
+ behaviour: [
83
+ "name",
84
+ "label",
85
+ "inputProps",
86
+ "class",
87
+ "form"
88
+ ]
82
89
  });
83
90
  const FormField_generated = FormField;
84
91
  export default FormField_generated;
@@ -24,7 +24,10 @@ const __solidLayoutFormSubmitButton = (_stable, p)=>{
24
24
  const FormSubmitButton = defineComponent({
25
25
  recipe: componentRecipe,
26
26
  layout: __solidLayoutFormSubmitButton,
27
- embedded: true
27
+ embedded: true,
28
+ behaviour: [
29
+ "form"
30
+ ]
28
31
  });
29
32
  const FormSubmitButton_generated = FormSubmitButton;
30
33
  export default FormSubmitButton_generated;
@@ -28,7 +28,16 @@ const __solidLayoutGrid = (_stable, p)=>{
28
28
  const Grid = defineComponent({
29
29
  recipe: componentRecipe,
30
30
  layout: __solidLayoutGrid,
31
- embedded: true
31
+ embedded: true,
32
+ behaviour: [
33
+ "as",
34
+ "cols",
35
+ "rows",
36
+ "flow",
37
+ "gap",
38
+ "autoCols",
39
+ "autoRows"
40
+ ]
32
41
  });
33
42
  const Grid_generated = Grid;
34
43
  export default Grid_generated;
@@ -48,6 +48,12 @@ const __solidLayoutIconLayout = (_stable, p)=>(()=>{
48
48
  const IconLayout = defineComponent({
49
49
  recipe: icon,
50
50
  layout: __solidLayoutIconLayout,
51
- embedded: true
51
+ embedded: true,
52
+ behaviour: [
53
+ "src",
54
+ "width",
55
+ "height",
56
+ "flavor"
57
+ ]
52
58
  });
53
59
  export { IconLayout };
@@ -77,7 +77,17 @@ const __solidLayoutInlineEdit = (_stable, p)=>{
77
77
  const InlineEdit = defineComponent({
78
78
  recipe: componentRecipe,
79
79
  layout: __solidLayoutInlineEdit,
80
- embedded: true
80
+ embedded: true,
81
+ behaviour: [
82
+ "value",
83
+ "onCommit",
84
+ "label",
85
+ "trigger",
86
+ "children",
87
+ "fullWidth",
88
+ "disabled",
89
+ "fieldClass"
90
+ ]
81
91
  });
82
92
  const InlineEdit_generated = InlineEdit;
83
93
  delegateEvents([
@@ -41,7 +41,15 @@ const __solidLayoutInputRoot = (_stable, p)=>{
41
41
  const InputRoot = defineComponent({
42
42
  recipe: componentRecipe,
43
43
  layout: __solidLayoutInputRoot,
44
- embedded: true
44
+ embedded: true,
45
+ behaviour: [
46
+ "children",
47
+ "size",
48
+ "fullWidth",
49
+ "state",
50
+ "issues",
51
+ "dataTheme"
52
+ ]
45
53
  });
46
54
  const __solidLayoutInputField = (_stable, p)=>{
47
55
  const ctx = useContext(InputContext);
@@ -121,7 +129,17 @@ const __solidLayoutInputField = (_stable, p)=>{
121
129
  const InputField = defineComponent({
122
130
  recipe: componentRecipe,
123
131
  layout: __solidLayoutInputField,
124
- embedded: true
132
+ embedded: true,
133
+ behaviour: [
134
+ "size",
135
+ "state",
136
+ "disabled",
137
+ "issues",
138
+ "fullWidth",
139
+ "startIcon",
140
+ "endIcon",
141
+ "dataTheme"
142
+ ]
125
143
  });
126
144
  const __solidLayoutInputLabel = (_stable, p)=>{
127
145
  const ctx = useContext(InputContext);
@@ -164,7 +182,10 @@ const __solidLayoutInputHelper = (_stable, p)=>{
164
182
  const InputHelper = defineComponent({
165
183
  recipe: componentRecipe,
166
184
  layout: __solidLayoutInputHelper,
167
- embedded: true
185
+ embedded: true,
186
+ behaviour: [
187
+ "invalid"
188
+ ]
168
189
  });
169
190
  const __solidLayoutInputBase = (_stable, p)=>{
170
191
  const generatedId = createUniqueId();
@@ -253,7 +274,13 @@ const __solidLayoutInputBase = (_stable, p)=>{
253
274
  const InputBase = defineComponent({
254
275
  recipe: componentRecipe,
255
276
  layout: __solidLayoutInputBase,
256
- embedded: true
277
+ embedded: true,
278
+ behaviour: [
279
+ "id",
280
+ "label",
281
+ "helperText",
282
+ "errorMessage"
283
+ ]
257
284
  });
258
285
  const Input = Object.assign(InputBase, {
259
286
  Root: InputRoot,
@@ -238,7 +238,24 @@ const __solidLayoutInputOTPRoot = (_stable, p)=>{
238
238
  const InputOTPRoot = defineComponent({
239
239
  recipe: componentRecipe,
240
240
  layout: __solidLayoutInputOTPRoot,
241
- embedded: true
241
+ embedded: true,
242
+ behaviour: [
243
+ "children",
244
+ "value",
245
+ "defaultValue",
246
+ "onChange",
247
+ "onComplete",
248
+ "maxLength",
249
+ "variant",
250
+ "pattern",
251
+ "name",
252
+ "autoFocus",
253
+ "state",
254
+ "disabled",
255
+ "issues",
256
+ "inputClassName",
257
+ "inputmode"
258
+ ]
242
259
  });
243
260
  const __solidLayoutInputOTPGroup = (_stable, p)=>{
244
261
  const others = omit(p, "children", "class", "dataTheme", "style");
@@ -260,7 +277,10 @@ const __solidLayoutInputOTPGroup = (_stable, p)=>{
260
277
  const InputOTPGroup = defineComponent({
261
278
  recipe: componentRecipe,
262
279
  layout: __solidLayoutInputOTPGroup,
263
- embedded: true
280
+ embedded: true,
281
+ behaviour: [
282
+ "children"
283
+ ]
264
284
  });
265
285
  const __solidLayoutInputOTPSlot = (_stable, p)=>{
266
286
  const context = useContext(InputOTPContext);
@@ -333,7 +353,10 @@ const __solidLayoutInputOTPSlot = (_stable, p)=>{
333
353
  const InputOTPSlot = defineComponent({
334
354
  recipe: componentRecipe,
335
355
  layout: __solidLayoutInputOTPSlot,
336
- embedded: true
356
+ embedded: true,
357
+ behaviour: [
358
+ "index"
359
+ ]
337
360
  });
338
361
  const __solidLayoutInputOTPSeparator = (_stable, p)=>{
339
362
  const others = omit(p, "children", "class", "dataTheme", "style");
@@ -355,7 +378,10 @@ const __solidLayoutInputOTPSeparator = (_stable, p)=>{
355
378
  const InputOTPSeparator = defineComponent({
356
379
  recipe: componentRecipe,
357
380
  layout: __solidLayoutInputOTPSeparator,
358
- embedded: true
381
+ embedded: true,
382
+ behaviour: [
383
+ "children"
384
+ ]
359
385
  });
360
386
  const InputOTP = Object.assign(InputOTPRoot, {
361
387
  Root: InputOTPRoot,
@@ -30,7 +30,12 @@ const __solidLayoutJoin = (_stable, p)=>{
30
30
  const Join = defineComponent({
31
31
  recipe: componentRecipe,
32
32
  layout: __solidLayoutJoin,
33
- embedded: true
33
+ embedded: true,
34
+ behaviour: [
35
+ "responsive",
36
+ "vertical",
37
+ "horizontal"
38
+ ]
34
39
  });
35
40
  const Join_generated = Join;
36
41
  export default Join_generated;
@@ -77,7 +77,11 @@ const __solidLayoutKbdRoot = (_stable, p)=>{
77
77
  const KbdRoot = defineComponent({
78
78
  recipe: componentRecipe,
79
79
  layout: __solidLayoutKbdRoot,
80
- embedded: true
80
+ embedded: true,
81
+ behaviour: [
82
+ "children",
83
+ "variant"
84
+ ]
81
85
  });
82
86
  const __solidLayoutKbdAbbr = (_stable, p)=>{
83
87
  const others = omit(p, "class", "dataTheme", "style", "keyValue", "title");
@@ -105,7 +109,10 @@ const __solidLayoutKbdAbbr = (_stable, p)=>{
105
109
  const KbdAbbr = defineComponent({
106
110
  recipe: componentRecipe,
107
111
  layout: __solidLayoutKbdAbbr,
108
- embedded: true
112
+ embedded: true,
113
+ behaviour: [
114
+ "keyValue"
115
+ ]
109
116
  });
110
117
  const __solidLayoutKbdContent = (_stable, p)=>{
111
118
  const others = omit(p, "class", "dataTheme", "style", "children");
@@ -127,7 +134,10 @@ const __solidLayoutKbdContent = (_stable, p)=>{
127
134
  const KbdContent = defineComponent({
128
135
  recipe: componentRecipe,
129
136
  layout: __solidLayoutKbdContent,
130
- embedded: true
137
+ embedded: true,
138
+ behaviour: [
139
+ "children"
140
+ ]
131
141
  });
132
142
  const Kbd = Object.assign(KbdRoot, {
133
143
  Root: KbdRoot,
@@ -45,7 +45,14 @@ const __solidLayoutLabelRoot = (_stable, p)=>{
45
45
  const LabelRoot = defineComponent({
46
46
  recipe: componentRecipe,
47
47
  layout: __solidLayoutLabelRoot,
48
- embedded: true
48
+ embedded: true,
49
+ behaviour: [
50
+ "for",
51
+ "htmlFor",
52
+ "required",
53
+ "state",
54
+ "issues"
55
+ ]
49
56
  });
50
57
  const Label = Object.assign(LabelRoot, {
51
58
  Root: LabelRoot
@@ -1,10 +1,10 @@
1
1
  import type { Component as __LayoutComponent } from "solid-js";
2
2
  import "./LanguageSwitcher.css";
3
- import type { DropdownAlign } from "../dropdown";
3
+ import { type DropdownAlign } from "../dropdown";
4
4
  import type { UIBaseProps } from "../vocabulary";
5
5
  import type { I18nStore } from "./createI18n";
6
6
  export interface LanguageSwitcherProps extends UIBaseProps {
7
- /** Stable identity for the native language control. */
7
+ /** Stable identity for the language control. */
8
8
  id?: string;
9
9
  /**
10
10
  * The i18n store to use for language state
@@ -1,72 +1,120 @@
1
- import { createComponent, effect, insert, mergeProps, spread, template } from "@solidjs/web";
1
+ import { createComponent, insert, memo, mergeProps, spread, template } from "@solidjs/web";
2
2
  import { defineComponent } from "solid-layouts/solid-2/application-boundary";
3
3
  import "./LanguageSwitcher.css";
4
- import { For, omit } from "solid-js";
4
+ import { For, Show, createSignal, omit } from "solid-js";
5
5
  import { twMerge } from "../../lib/twMerge.js";
6
+ import dropdown from "../dropdown/index.js";
7
+ import icon from "../icon/index.js";
6
8
  import { CLASSES, componentRecipe } from "./LanguageSwitcher.recipe.js";
7
- var _tmpl$ = /*#__PURE__*/ template("<select>"), _tmpl$2 = /*#__PURE__*/ template("<option>");
9
+ var _tmpl$ = /*#__PURE__*/ template("<span>");
8
10
  const __solidLayoutLanguageSwitcher = (_stable, p)=>{
9
11
  const others = omit(p, "i18n", "class", "style", "aria-label", "currentLanguageLabel", "optionsLabel", "loadingLabel", "align", "onLanguageChange");
10
12
  const currentLanguageName = ()=>p.i18n.languageNames[p.i18n.locale];
13
+ const isSelected = (lang)=>p.i18n.locale === lang;
14
+ const [open, setOpen] = createSignal(false);
11
15
  const handleSelect = async (lang)=>{
12
16
  await p.i18n.setLocale(lang);
13
17
  p.onLanguageChange?.(lang);
14
18
  };
15
- const classes = ()=>twMerge(CLASSES.base, CLASSES.trigger, p.class);
16
- const move = (direction)=>{
17
- const languages = p.i18n.languages;
18
- const current = languages.findIndex((language)=>language.code === p.i18n.locale);
19
- const next = (Math.max(0, current) + direction + languages.length) % languages.length;
20
- const language = languages[next];
21
- if (language) handleSelect(language.code);
22
- };
23
- var _el$ = _tmpl$();
24
- spread(_el$, mergeProps(others, ()=>({
19
+ const classes = ()=>twMerge(CLASSES.base, p.class);
20
+ return createComponent(dropdown.Root, mergeProps(others, ()=>({
25
21
  class: classes()
26
22
  }), {
27
- get style () {
28
- return p.style;
29
- },
30
- get value () {
31
- return p.i18n.locale;
23
+ get open () {
24
+ return open();
32
25
  },
26
+ onOpenChange: setOpen,
33
27
  get disabled () {
34
28
  return p.i18n.isLoading;
35
29
  },
36
- get ["aria-busy"] () {
37
- return p.i18n.isLoading ? "true" : void 0;
38
- },
39
- get ["aria-label"] () {
40
- return `${p.currentLanguageLabel ?? "Current language"}: ${currentLanguageName()}`;
41
- },
42
- get title () {
43
- return p.optionsLabel ?? p["aria-label"] ?? "Language selector";
30
+ get style () {
31
+ return p.style;
44
32
  },
45
- onChange: (event)=>void handleSelect(event.currentTarget.value),
46
- onKeyDown: (event)=>{
47
- if ("ArrowDown" === event.key) {
48
- event.preventDefault();
49
- move(1);
50
- } else if ("ArrowUp" === event.key) {
51
- event.preventDefault();
52
- move(-1);
53
- }
33
+ get children () {
34
+ return [
35
+ createComponent(dropdown.Trigger, mergeProps(()=>({
36
+ class: CLASSES.trigger
37
+ }), {
38
+ get ["aria-busy"] () {
39
+ return p.i18n.isLoading ? "true" : void 0;
40
+ },
41
+ get ["aria-label"] () {
42
+ return `${p.currentLanguageLabel ?? "Current language"}: ${currentLanguageName()}`;
43
+ },
44
+ get title () {
45
+ return p.optionsLabel ?? p["aria-label"] ?? "Language selector";
46
+ },
47
+ get children () {
48
+ return createComponent(Show, {
49
+ get when () {
50
+ return !p.i18n.isLoading;
51
+ },
52
+ get fallback () {
53
+ return createComponent(icon, mergeProps({
54
+ src: "icon-[mdi--loading]"
55
+ }, ()=>({
56
+ class: CLASSES.loadingIcon
57
+ }), {
58
+ width: 16,
59
+ height: 16,
60
+ get ["aria-label"] () {
61
+ return p.loadingLabel ?? "Loading language";
62
+ }
63
+ }));
64
+ },
65
+ get children () {
66
+ var _el$ = _tmpl$();
67
+ spread(_el$, mergeProps({
68
+ "data-slot": "language-current"
69
+ }, ()=>({
70
+ class: CLASSES.locale
71
+ }), {
72
+ "aria-hidden": "true"
73
+ }), true);
74
+ insert(_el$, ()=>p.i18n.locale.toUpperCase());
75
+ return _el$;
76
+ }
77
+ });
78
+ }
79
+ })),
80
+ createComponent(dropdown.Menu, mergeProps(()=>({
81
+ class: CLASSES.menu
82
+ }), {
83
+ get align () {
84
+ return p.align;
85
+ },
86
+ get ["aria-label"] () {
87
+ return p.optionsLabel ?? "Language options";
88
+ },
89
+ get children () {
90
+ return createComponent(For, {
91
+ get each () {
92
+ return p.i18n.languages;
93
+ },
94
+ children: (lang)=>createComponent(dropdown.Item, mergeProps({
95
+ get id () {
96
+ return memo(()=>!!p.id)() ? `${p.id}-option-${lang.code}` : void 0;
97
+ },
98
+ onClick: ()=>void handleSelect(lang.code),
99
+ get ["aria-label"] () {
100
+ return lang.name;
101
+ }
102
+ }, ()=>({
103
+ class: twMerge(CLASSES.item, isSelected(lang.code) && CLASSES.itemSelected)
104
+ }), {
105
+ get ["aria-current"] () {
106
+ return isSelected(lang.code) ? "true" : void 0;
107
+ },
108
+ get children () {
109
+ return lang.name;
110
+ }
111
+ }))
112
+ });
113
+ }
114
+ }))
115
+ ];
54
116
  }
55
- }), true);
56
- insert(_el$, createComponent(For, {
57
- get each () {
58
- return p.i18n.languages;
59
- },
60
- children: (lang)=>(()=>{
61
- var _el$2 = _tmpl$2();
62
- insert(_el$2, ()=>lang.name);
63
- effect(()=>lang.code, (_v$)=>{
64
- _el$2.value = _v$;
65
- });
66
- return _el$2;
67
- })()
68
117
  }));
69
- return _el$;
70
118
  };
71
119
  const LanguageSwitcher = defineComponent({
72
120
  recipe: componentRecipe,
@@ -11,5 +11,6 @@ export declare const componentRecipe: import("solid-layouts/solid-2").Recipe<{
11
11
  readonly component: "language-switcher";
12
12
  readonly slots: {
13
13
  readonly root: {};
14
+ readonly "language-current": {};
14
15
  };
15
16
  }>;
@@ -11,18 +11,24 @@ const CLASSES = {
11
11
  const componentRecipe = recipe({
12
12
  component: "language-switcher",
13
13
  slots: {
14
- root: {}
14
+ root: {},
15
+ "language-current": {}
15
16
  },
16
17
  _layouts: {
17
18
  slots: {
18
19
  root: {
19
20
  base: "",
20
21
  axes: {}
22
+ },
23
+ "language-current": {
24
+ base: "",
25
+ axes: {}
21
26
  }
22
27
  },
23
28
  stateKeys: [],
24
29
  slotIds: {
25
- root: 0
30
+ root: 1,
31
+ "language-current": 0
26
32
  }
27
33
  }
28
34
  });
@@ -25,9 +25,7 @@ function createI18n(options) {
25
25
  if (lang === localeSignal() && Object.keys(translations()).length > 0) return;
26
26
  setIsLoading(true);
27
27
  try {
28
- const minDelay = new Promise((resolve)=>setTimeout(resolve, 100));
29
28
  let data;
30
- await minDelay;
31
29
  data = lang === defaultLanguage && Object.keys(initialTranslations).length > 0 ? initialTranslations : loadTranslations ? await loadTranslations(lang) : initialTranslations;
32
30
  setTranslations(data);
33
31
  setLocaleSignal(lang);
@@ -58,7 +58,13 @@ const __solidLayoutLinkRoot = (_stable, p)=>{
58
58
  const LinkRoot = defineComponent({
59
59
  recipe: componentRecipe,
60
60
  layout: __solidLayoutLinkRoot,
61
- embedded: true
61
+ embedded: true,
62
+ behaviour: [
63
+ "variant",
64
+ "underline",
65
+ "isExternal",
66
+ "state"
67
+ ]
62
68
  });
63
69
  const __solidLayoutLinkIcon = (_stable, p)=>{
64
70
  const others = omit(p, "class", "children", "dataTheme", "style");
@@ -201,7 +201,22 @@ const __solidLayoutListBoxRoot = (_stable, p)=>{
201
201
  const ListBoxRoot = defineComponent({
202
202
  recipe: componentRecipe,
203
203
  layout: __solidLayoutListBoxRoot,
204
- embedded: true
204
+ embedded: true,
205
+ behaviour: [
206
+ "children",
207
+ "items",
208
+ "renderEmpty",
209
+ "variant",
210
+ "selectionMode",
211
+ "selectedKeys",
212
+ "defaultSelectedKeys",
213
+ "disabledKeys",
214
+ "disallowEmptySelection",
215
+ "onSelectionChange",
216
+ "onAction",
217
+ "state",
218
+ "disabled"
219
+ ]
205
220
  });
206
221
  const ListBox_generated = ListBoxRoot;
207
222
  export default ListBox_generated;