@skf-design-system/ui-components 1.0.2-beta.5 → 1.0.2-beta.7

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 (124) hide show
  1. package/README.md +18 -0
  2. package/dist/components/accordion/accordion.component.d.ts +1 -1
  3. package/dist/components/accordion/accordion.component.js +2 -2
  4. package/dist/components/alert/alert.component.d.ts +3 -2
  5. package/dist/components/alert/alert.component.js +39 -33
  6. package/dist/components/button/button.styles.js +3 -3
  7. package/dist/components/checkbox/checkbox.component.d.ts +4 -2
  8. package/dist/components/checkbox/checkbox.component.js +73 -65
  9. package/dist/components/checkbox/checkbox.styles.js +1 -1
  10. package/dist/components/datepicker/datepicker-calendar.component.d.ts +4 -0
  11. package/dist/components/datepicker/datepicker-calendar.component.js +134 -127
  12. package/dist/components/datepicker/datepicker-popup.component.d.ts +4 -0
  13. package/dist/components/datepicker/datepicker-popup.component.js +100 -88
  14. package/dist/components/datepicker/datepicker.component.d.ts +4 -2
  15. package/dist/components/datepicker/datepicker.component.js +151 -140
  16. package/dist/components/dialog/dialog.component.d.ts +3 -2
  17. package/dist/components/dialog/dialog.component.js +39 -37
  18. package/dist/components/divider/divider.component.d.ts +3 -0
  19. package/dist/components/divider/divider.component.js +43 -22
  20. package/dist/components/divider/divider.styles.js +9 -9
  21. package/dist/components/drawer/drawer.component.d.ts +11 -4
  22. package/dist/components/drawer/drawer.component.js +77 -55
  23. package/dist/components/drawer/drawer.styles.js +47 -40
  24. package/dist/components/header/header.component.d.ts +4 -2
  25. package/dist/components/header/header.component.js +66 -57
  26. package/dist/components/header/header.styles.js +2 -2
  27. package/dist/components/icon/icon.component.js +7 -7
  28. package/dist/components/icon/icon.styles.js +2 -2
  29. package/dist/components/input/input.component.d.ts +4 -8
  30. package/dist/components/input/input.component.js +147 -147
  31. package/dist/components/input/input.controllers.d.ts +0 -1
  32. package/dist/components/input/input.controllers.js +12 -12
  33. package/dist/components/link/link.component.d.ts +15 -18
  34. package/dist/components/link/link.component.js +105 -107
  35. package/dist/components/link/link.styles.js +53 -45
  36. package/dist/components/loader/loader.component.d.ts +5 -3
  37. package/dist/components/loader/loader.component.js +39 -28
  38. package/dist/components/loader/loader.styles.js +6 -10
  39. package/dist/components/menu/menu-item.component.d.ts +1 -1
  40. package/dist/components/menu/menu-item.component.js +8 -8
  41. package/dist/components/menu/menu-item.styles.js +13 -9
  42. package/dist/components/menu/menu.component.d.ts +5 -2
  43. package/dist/components/menu/menu.component.js +8 -8
  44. package/dist/components/nav/nav-item.component.d.ts +4 -0
  45. package/dist/components/nav/nav-item.component.js +44 -25
  46. package/dist/components/nav/nav-item.styles.js +29 -25
  47. package/dist/components/nav/nav.component.d.ts +9 -0
  48. package/dist/components/nav/nav.component.js +47 -21
  49. package/dist/components/nav/nav.styles.js +15 -9
  50. package/dist/components/popover/popover.component.d.ts +10 -3
  51. package/dist/components/popover/popover.component.js +30 -22
  52. package/dist/components/progress/progress.component.d.ts +2 -0
  53. package/dist/components/progress/progress.component.js +38 -29
  54. package/dist/components/progress/progress.styles.js +4 -4
  55. package/dist/components/radio/radio.component.d.ts +4 -2
  56. package/dist/components/radio/radio.component.js +91 -83
  57. package/dist/components/radio/radio.styles.js +1 -1
  58. package/dist/components/segmented-button/segmented-button-item.component.js +1 -1
  59. package/dist/components/segmented-button/segmented-button-item.styles.js +1 -1
  60. package/dist/components/select/select-option-group.component.d.ts +4 -0
  61. package/dist/components/select/select-option-group.component.js +37 -18
  62. package/dist/components/select/select-option-group.style.js +12 -6
  63. package/dist/components/select/select-option.component.d.ts +7 -2
  64. package/dist/components/select/select-option.component.js +70 -53
  65. package/dist/components/select/select-option.styles.js +43 -31
  66. package/dist/components/select/select.component.d.ts +18 -10
  67. package/dist/components/select/select.component.js +175 -132
  68. package/dist/components/select/select.controllers.js +2 -1
  69. package/dist/components/select/select.styles.js +8 -2
  70. package/dist/components/stepper/stepper-item.component.d.ts +1 -1
  71. package/dist/components/stepper/stepper-item.component.js +26 -23
  72. package/dist/components/stepper/stepper-item.styles.js +4 -4
  73. package/dist/components/switch/switch.component.d.ts +4 -2
  74. package/dist/components/switch/switch.component.js +64 -56
  75. package/dist/components/switch/switch.styles.js +1 -1
  76. package/dist/components/tabs/tab-panel.component.d.ts +1 -1
  77. package/dist/components/tabs/tab-panel.component.js +19 -16
  78. package/dist/components/tabs/tab.component.d.ts +1 -1
  79. package/dist/components/tabs/tab.component.js +17 -14
  80. package/dist/components/tabs/tab.styles.js +2 -2
  81. package/dist/components/tag/tag.component.d.ts +3 -0
  82. package/dist/components/tag/tag.component.js +50 -41
  83. package/dist/components/textarea/textarea.component.d.ts +4 -2
  84. package/dist/components/textarea/textarea.component.js +127 -118
  85. package/dist/components/toast/toast-item.styles.js +13 -10
  86. package/dist/components/toast/toast.component.js +9 -9
  87. package/dist/components/toast/toast.singleton.d.ts +1 -1
  88. package/dist/components/toast/toast.singleton.js +18 -18
  89. package/dist/components/tooltip/tooltip.component.d.ts +9 -2
  90. package/dist/components/tooltip/tooltip.component.js +13 -7
  91. package/dist/custom-elements.json +1305 -946
  92. package/dist/index.d.ts +2 -2
  93. package/dist/index.js +20 -20
  94. package/dist/internal/base-classes/popover/popover.base.d.ts +24 -5
  95. package/dist/internal/base-classes/popover/popover.base.js +28 -29
  96. package/dist/internal/base-classes/popover/popover.styles.js +4 -5
  97. package/dist/internal/components/hint/hint.component.d.ts +4 -0
  98. package/dist/internal/components/hint/hint.component.js +47 -20
  99. package/dist/internal/components/hint/hint.styles.js +29 -25
  100. package/dist/internal/controllers/popover.controller.d.ts +2 -0
  101. package/dist/internal/helpers/uuid.d.ts +8 -10
  102. package/dist/internal/helpers/uuid.js +4 -11
  103. package/dist/internal/helpers/watch.d.ts +1 -1
  104. package/dist/internal/templates/asterisk.d.ts +1 -1
  105. package/dist/internal/templates/asterisk.js +4 -4
  106. package/dist/internal/types.d.ts +4 -0
  107. package/dist/styles/global-alt.css +1 -1
  108. package/dist/styles/global.css +1 -1
  109. package/dist/translations/en.d.ts +3 -0
  110. package/dist/translations/en.js +27 -0
  111. package/dist/translations/es.d.ts +3 -0
  112. package/dist/translations/es.js +27 -0
  113. package/dist/translations/index.d.ts +4 -0
  114. package/dist/translations/pt.d.ts +3 -0
  115. package/dist/translations/pt.js +27 -0
  116. package/dist/translations/sv.d.ts +3 -0
  117. package/dist/translations/sv.js +27 -0
  118. package/dist/types/jsx/custom-element-jsx.d.ts +243 -128
  119. package/dist/types/vue/index.d.ts +136 -127
  120. package/dist/utilities/localize.d.ts +28 -0
  121. package/dist/utilities/localize.js +13 -0
  122. package/dist/vscode.html-custom-data.json +168 -177
  123. package/dist/web-types.json +411 -381
  124. package/package.json +34 -41
@@ -15,13 +15,13 @@ import type { SkfDialog, CustomEvent } from "../../components/dialog/dialog.comp
15
15
  import type { SkfDivider } from "../../components/divider/divider.component.js";
16
16
  import type { SkfDrawer, CustomEvent } from "../../components/drawer/drawer.component.js";
17
17
  import type { SkfLogo } from "../../components/logo/logo.component.js";
18
+ import type { SkfLink, CustomEvent } from "../../components/link/link.component.js";
19
+ import type { SkfNavItem } from "../../components/nav-item/nav-item.component.js";
18
20
  import type { SkfNav } from "../../components/nav/nav.component.js";
19
21
  import type { SkfHeader } from "../../components/header/header.component.js";
20
22
  import type { SkfInput, CustomEvent } from "../../components/input/input.component.js";
21
- import type { SkfLink } from "../../components/link/link.component.js";
22
- import type { SkfMenuItem } from "../../components/menu-item/menu-item.component.js";
23
+ import type { SkfMenuItem, CustomEvent } from "../../components/menu-item/menu-item.component.js";
23
24
  import type { SkfMenu, CustomEvent } from "../../components/menu/menu.component.js";
24
- import type { SkfNavItem } from "../../components/nav-item/nav-item.component.js";
25
25
  import type { SkfPopover, CustomEvent } from "../../components/popover/popover.component.js";
26
26
  import type { SkfProgress } from "../../components/progress/progress.component.js";
27
27
  import type { SkfRadio, Event } from "../../components/radio/radio.component.js";
@@ -43,7 +43,7 @@ import type { SkfTab, CustomEvent } from "../../components/tab/tab.component.js"
43
43
  import type { SkfTextArea } from "../../components/textarea/textarea.component.js";
44
44
  import type { SkfToastWrapper } from "../../components/toast-wrapper/toast-wrapper.component.js";
45
45
  import type { SkfToast } from "../../components/toast/toast.component.js";
46
- import type { SkfTooltip } from "../../components/tooltip/tooltip.component.js";
46
+ import type { SkfTooltip, CustomEvent } from "../../components/tooltip/tooltip.component.js";
47
47
 
48
48
  /**
49
49
  * This type can be used to create scoped tags for your components.
@@ -105,7 +105,113 @@ type BaseProps = {
105
105
  translate?: "yes" | "no";
106
106
  };
107
107
 
108
- type BaseEvents = {};
108
+ type BaseEvents = {
109
+ // Mouse Events
110
+
111
+ /** Triggered when the element is clicked by the user by mouse or keyboard. */
112
+ onClick?: (event: MouseEvent) => void;
113
+ /** Fired when the context menu is triggered, often by right-clicking. */
114
+ onContextMenu?: (event: MouseEvent) => void;
115
+ /** Fired when the element is double-clicked. */
116
+ onDoubleClick?: (event: MouseEvent) => void;
117
+ /** Fired repeatedly as the draggable element is being dragged. */
118
+ onDrag?: (event: DragEvent) => void;
119
+ /** Fired when the dragging of a draggable element is finished. */
120
+ onDragEnd?: (event: DragEvent) => void;
121
+ /** Fired when a dragged element or text selection enters a valid drop target. */
122
+ onDragEnter?: (event: DragEvent) => void;
123
+ /** Fired when a dragged element or text selection leaves a valid drop target. */
124
+ onDragExit?: (event: DragEvent) => void;
125
+ /** Fired when a dragged element or text selection leaves a valid drop target. */
126
+ onDragLeave?: (event: DragEvent) => void;
127
+ /** Fired when an element or text selection is being dragged over a valid drop target (every few hundred milliseconds). */
128
+ onDragOver?: (event: DragEvent) => void;
129
+ /** Fired when a draggable element starts being dragged. */
130
+ onDragStart?: (event: DragEvent) => void;
131
+ /** Fired when a dragged element is dropped onto a drop target. */
132
+ onDrop?: (event: DragEvent) => void;
133
+ /** Fired when a mouse button is pressed down on the element. */
134
+ onMouseDown?: (event: MouseEvent) => void;
135
+ /** Fired when the mouse cursor enters the element. */
136
+ onMouseEnter?: (event: MouseEvent) => void;
137
+ /** Triggered when the mouse cursor leaves the element. */
138
+ onMouseLeave?: (event: MouseEvent) => void;
139
+ /** Fired at an element when a pointing device (usually a mouse) is moved while the cursor's hotspot is inside it. */
140
+ onMouseMove?: (event: MouseEvent) => void;
141
+ /** Fired at an Element when a pointing device (usually a mouse) is used to move the cursor so that it is no longer contained within the element or one of its children. */
142
+ onMouseOut?: (event: MouseEvent) => void;
143
+ /** Fired at an Element when a pointing device (such as a mouse or trackpad) is used to move the cursor onto the element or one of its child elements. */
144
+ onMouseOver?: (event: MouseEvent) => void;
145
+ /** Fired when a mouse button is released on the element. */
146
+ onMouseUp?: (event: MouseEvent) => void;
147
+
148
+ // Keyboard Events
149
+
150
+ /** Fired when a key is pressed down. */
151
+ onKeyDown?: (event: KeyboardEvent) => void;
152
+ /** Fired when a key is released.. */
153
+ onKeyUp?: (event: KeyboardEvent) => void;
154
+ /** Fired when a key is pressed down. */
155
+ onKeyPressed?: (event: KeyboardEvent) => void;
156
+
157
+ // Focus Events
158
+
159
+ /** Fired when the element receives focus, often triggered by tab navigation. */
160
+ onFocus?: (event: FocusEvent) => void;
161
+ /** Fired when the element loses focus. */
162
+ onBlur?: (event: FocusEvent) => void;
163
+
164
+ // Form Events
165
+
166
+ /** Fired when the value of an input element changes, such as with text inputs or select elements. */
167
+ onChange?: (event: Event) => void;
168
+ /** Fires when the value of an <input>, <select>, or <textarea> element has been changed. */
169
+ onInput?: (event: Event) => void;
170
+ /** Fired when a form is submitted, usually on pressing Enter in a text input. */
171
+ onSubmit?: (event: Event) => void;
172
+ /** Fired when a form is reset. */
173
+ onReset?: (event: Event) => void;
174
+
175
+ // UI Events
176
+
177
+ /** Fired when the content of an element is scrolled. */
178
+ onScroll?: (event: UIEvent) => void;
179
+
180
+ // Wheel Events
181
+
182
+ /** Fired when the mouse wheel is scrolled while the element is focused. */
183
+ onWheel?: (event: WheelEvent) => void;
184
+
185
+ // Animation Events
186
+
187
+ /** Fired when a CSS animation starts. */
188
+ onAnimationStart?: (event: AnimationEvent) => void;
189
+ /** Fired when a CSS animation completes. */
190
+ onAnimationEnd?: (event: AnimationEvent) => void;
191
+ /** Fired when a CSS animation completes one iteration. */
192
+ onAnimationIteration?: (event: AnimationEvent) => void;
193
+
194
+ // Transition Events
195
+
196
+ /** Fired when a CSS transition has completed. */
197
+ onTransitionEnd?: (event: TransitionEvent) => void;
198
+
199
+ // Media Events
200
+
201
+ /** Fired when an element (usually an image) finishes loading */
202
+ onLoad?: (event: Event) => void;
203
+ /** Fired when an error occurs during the loading of an element, like an image not being found. */
204
+ onError?: (event: Event) => void;
205
+
206
+ // Clipboard Events
207
+
208
+ /** Fires when the user initiates a copy action through the browser's user interface. */
209
+ onCopy?: (event: ClipboardEvent) => void;
210
+ /** Fired when the user has initiated a "cut" action through the browser's user interface. */
211
+ onCut?: (event: ClipboardEvent) => void;
212
+ /** Fired when the user has initiated a "paste" action through the browser's user interface. */
213
+ onPaste?: (event: ClipboardEvent) => void;
214
+ };
109
215
 
110
216
  export type SkfIconProps = {
111
217
  /** Sets the color of the icon */
@@ -152,10 +258,10 @@ export type SkfAccordionProps = {
152
258
  };
153
259
 
154
260
  export type SkfAlertProps = {
155
- /** Close button aria-label */
156
- "button-label"?: SkfAlert["buttonLabel"];
157
261
  /** If defined, displays leading icon */
158
262
  icon?: SkfAlert["icon"];
263
+ /** Sets the internal language of the component */
264
+ lang?: SkfAlert["lang"];
159
265
  /** If true, renders with an close button and sets aria-role to `status` */
160
266
  persistent?: SkfAlert["persistent"];
161
267
  /** If defined, gives the supplied appearance */
@@ -183,8 +289,6 @@ export type SkfBreadcrumbProps = {
183
289
  };
184
290
 
185
291
  export type SkfLoaderProps = {
186
- /** Defines the aria-label */
187
- "aria-label"?: SkfLoader["ariaLabel"];
188
292
  /** If true, inverts the color (to be used on colored backgrounds) */
189
293
  invert?: SkfLoader["invert"];
190
294
  /** Defines the size of the loader */
@@ -241,10 +345,10 @@ export type SkfCheckboxProps = {
241
345
  indeterminate?: SkfCheckbox["indeterminate"];
242
346
  /** If defined, sets the input's label. Alternatively, you can use the `label` attribute. */
243
347
  label?: SkfCheckbox["label"];
348
+ /** Sets the internal language of the component */
349
+ lang?: SkfCheckbox["lang"];
244
350
  /** If defined, adds name to the input-element */
245
351
  name?: SkfCheckbox["name"];
246
- /** If defined, renders an alternative A11y text for the asterisk */
247
- "required-label"?: SkfCheckbox["requiredLabel"];
248
352
  /** If defined, styles checkbox using provided severity */
249
353
  severity?: SkfCheckbox["severity"];
250
354
  /** If true, displays valid state after interaction */
@@ -265,6 +369,8 @@ export type SkfDatepickerCalendarProps = {
265
369
  firstDayOfWeek?: SkfDatepickerCalendar["firstDayOfWeek"];
266
370
  /** A comma-separated list of dates (yyyy-mm-dd format) that are not selectable. */
267
371
  "invalid-dates"?: SkfDatepickerCalendar["invalidDates"];
372
+ /** Sets the internal language of the component */
373
+ lang?: SkfDatepickerCalendar["lang"];
268
374
  /** */
269
375
  locale?: SkfDatepickerCalendar["locale"];
270
376
  /** */
@@ -292,6 +398,8 @@ export type SkfDatepickerProps = {
292
398
  id?: SkfDatepicker["id"];
293
399
  /** If defined, sets the input's label. Alternatively, you can use the `label` attribute. */
294
400
  label?: SkfDatepicker["label"];
401
+ /** Sets the internal language of the component */
402
+ lang?: SkfDatepicker["lang"];
295
403
  /** If true, hides the label visually */
296
404
  "hide-label"?: SkfDatepicker["hideLabel"];
297
405
  /** If defined, displays informational text below the field */
@@ -306,8 +414,6 @@ export type SkfDatepickerProps = {
306
414
  range?: SkfDatepicker["range"];
307
415
  /** If true, makes the element not mutable, meaning the user can not edit the control */
308
416
  readonly?: SkfDatepicker["readonly"];
309
- /** If defined, renders an alternative A11y text for the asterisk */
310
- "required-label"?: SkfDatepicker["requiredLabel"];
311
417
  /** Earliest selectable date. (yyyy-mm-dd format) */
312
418
  "selectable-from"?: SkfDatepicker["selectableFrom"];
313
419
  /** Latest selectable date. (yyyy-mm-dd format) */
@@ -332,12 +438,12 @@ export type SkfHeadingProps = {
332
438
  };
333
439
 
334
440
  export type SkfDialogProps = {
335
- /** If defined, sets the aria-label for the close button */
336
- "close-button-aria-label"?: SkfDialog["closeButtonAriaLabel"];
337
441
  /** Title for the modal/dialog */
338
442
  heading?: SkfDialog["heading"];
339
443
  /** If true, makes the dialog stretch edge to edge on screen */
340
444
  fullscreen?: SkfDialog["fullscreen"];
445
+ /** Sets the internal language of the component */
446
+ lang?: SkfDialog["lang"];
341
447
  /** If true, removes the close button */
342
448
  "no-close-button"?: SkfDialog["noCloseButton"];
343
449
  /** If defined, removes the inner padding */
@@ -363,10 +469,10 @@ export type SkfDividerProps = {
363
469
  };
364
470
 
365
471
  export type SkfDrawerProps = {
366
- /** If defined, sets the aria-label for the close button */
367
- "close-button-aria-label"?: SkfDrawer["closeButtonAriaLabel"];
368
472
  /** Heading for the Drawer */
369
473
  heading?: SkfDrawer["heading"];
474
+ /** Sets the internal language of the component */
475
+ lang?: SkfDrawer["lang"];
370
476
  /** Sets the max-width */
371
477
  size?: SkfDrawer["size"];
372
478
  /** If true, Drawer is open */
@@ -389,16 +495,55 @@ export type SkfLogoProps = {
389
495
  color?: SkfLogo["color"];
390
496
  };
391
497
 
392
- export type SkfNavProps = {
498
+ export type SkfLinkProps = {
499
+ /** Defines the semantic element to render */
500
+ as?: SkfLink["as"];
501
+ /** Defines the text-color */
502
+ color?: SkfLink["color"];
503
+ /** If true, disables the link */
504
+ disabled?: SkfLink["disabled"];
505
+ /** If defined, downloads the url */
506
+ download?: SkfLink["download"];
507
+ /** If defined, loads url on click */
508
+ href?: SkfLink["href"];
509
+ /** If defined, renders an icon before or after the text */
510
+ icon?: SkfLink["icon"];
511
+ /** If true, the icon is placed to the right in relation to the text */
512
+ "icon-right"?: SkfLink["iconRight"];
513
+ /** If defined, describes the relationship between a linked resource and the current document */
514
+ rel?: SkfLink["rel"];
515
+ /** If defined, used on conjunction with onClick property. **Notice!** Only applicable to as=button. */
516
+ route?: SkfLink["route"];
517
+ /** If true, fills the parents horizontal axis */
518
+ stretch?: SkfLink["stretch"];
519
+ /** If defined, specifies where to open the linked document */
520
+ target?: SkfLink["target"];
521
+
522
+ /** Fired when the link is clicked */
523
+ "onskf-link-click"?: (e: CustomEvent<CustomEvent>) => void;
524
+ };
525
+
526
+ export type SkfNavItemProps = {
527
+ /** */
528
+ href?: SkfNavItem["href"];
529
+ /** */
530
+ icon?: SkfNavItem["icon"];
393
531
  /** */
532
+ vertical?: SkfNavItem["vertical"];
533
+ };
534
+
535
+ export type SkfNavProps = {
536
+ /** Sets the internal language of the component */
537
+ lang?: SkfNav["lang"];
538
+ /** If true, the navigation will be displayed vertically */
394
539
  vertical?: SkfNav["vertical"];
395
540
  };
396
541
 
397
542
  export type SkfHeaderProps = {
398
543
  /** If true, sets header to display in compact mode only (hanburger menu and drawer) */
399
544
  compact?: SkfHeader["compact"];
400
- /** If defined, sets the aria-label for the hamburger button */
401
- "hamburger-aria-label"?: SkfHeader["hamburgerAriaLabel"];
545
+ /** Sets the internal language of the component */
546
+ lang?: SkfHeader["lang"];
402
547
  /** If defined, sets the app or site's name */
403
548
  "site-name"?: SkfHeader["siteName"];
404
549
  /** If defined, sets the site's base-url for the "logo-link" */
@@ -413,12 +558,6 @@ export type SkfInputProps = {
413
558
  /** Indicates whether the value of the control can be automatically completed by the browser. See
414
559
  [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/autocomplete) for details. */
415
560
  autocomplete?: SkfInput["autocomplete"];
416
- /** Custom aria-label for the clear button. **Notice!** Only applicable to type=search. */
417
- "button-aria-label-clear"?: SkfInput["buttonAriaLabelClear"];
418
- /** Custom aria-label for the visibility button. **Notice!** Only applicable to type=password. */
419
- "button-aria-label-hide"?: SkfInput["buttonAriaLabelHide"];
420
- /** Custom aria-label for the visibility button **Notice!** Only applicable to type=password. */
421
- "button-aria-label-show"?: SkfInput["buttonAriaLabelShow"];
422
561
  /** If defined, forces component to invalid state until removed. Its value is used as hint text. */
423
562
  "custom-invalid"?: SkfInput["customInvalid"];
424
563
  /** If true, outputs helping hints in console */
@@ -432,6 +571,8 @@ export type SkfInputProps = {
432
571
  inputmode?: SkfInput["inputmode"];
433
572
  /** If defined, sets the input's label. Alternatively, you can use the `label` attribute. */
434
573
  label?: SkfInput["label"];
574
+ /** Sets the internal language of the component */
575
+ lang?: SkfInput["lang"];
435
576
  /** If defined, displays a prefix/adornment before the input-element */
436
577
  leading?: SkfInput["leading"];
437
578
  /** If defined, sets the maximum value to accept for this input */
@@ -450,8 +591,6 @@ export type SkfInputProps = {
450
591
  placeholder?: SkfInput["placeholder"];
451
592
  /** If true, makes the element not mutable, meaning the user can not edit the control */
452
593
  readonly?: SkfInput["readonly"];
453
- /** If defined, renders an alternative A11y text for the asterisk */
454
- "required-label"?: SkfInput["requiredLabel"];
455
594
  /** If defined, displays provided severity state */
456
595
  severity?: SkfInput["severity"];
457
596
  /** If true, displays valid state after interaction */
@@ -473,35 +612,6 @@ export type SkfInputProps = {
473
612
  oninvalid?: (e: CustomEvent<CustomEvent>) => void;
474
613
  };
475
614
 
476
- export type SkfLinkProps = {
477
- /** Defines the semantic element to render */
478
- as?: SkfLink["as"];
479
- /** Defines the text-color */
480
- color?: SkfLink["color"];
481
- /** If true, disables the link */
482
- disabled?: SkfLink["disabled"];
483
- /** If defined, downloads the url */
484
- download?: SkfLink["download"];
485
- /** If defined, loads url on click */
486
- href?: SkfLink["href"];
487
- /** If defined, renders an icon before or after the text */
488
- icon?: SkfLink["icon"];
489
- /** Defines the position of the icon in relation to the text */
490
- "icon-placement"?: SkfLink["iconPlacement"];
491
- /** If defined, describes the relationship between a linked resource and the current document */
492
- rel?: SkfLink["rel"];
493
- /** If defined, used on conjunction with onClick property, second argument */
494
- route?: SkfLink["route"];
495
- /** If true, fills the parents horizontal axis */
496
- stretch?: SkfLink["stretch"];
497
- /** If defined, specifies where to open the linked document */
498
- target?: SkfLink["target"];
499
- /** Defines the type of button */
500
- type?: SkfLink["type"];
501
- /** If defined, accepts a function that runs on click. Forwards optional route as second argument. */
502
- onClick?: SkfLink["onClick"];
503
- };
504
-
505
615
  export type SkfMenuItemProps = {
506
616
  /** Defines the semantic element to render */
507
617
  as?: SkfMenuItem["as"];
@@ -515,22 +625,19 @@ export type SkfMenuItemProps = {
515
625
  href?: SkfMenuItem["href"];
516
626
  /** If defined, renders an icon before or after the text */
517
627
  icon?: SkfMenuItem["icon"];
518
- /** Defines the position of the icon in relation to the text */
519
- "icon-placement"?: SkfMenuItem["iconPlacement"];
628
+ /** If true, the icon is placed to the right in relation to the text */
629
+ "icon-right"?: SkfMenuItem["iconRight"];
520
630
  /** If defined, describes the relationship between a linked resource and the current document */
521
631
  rel?: SkfMenuItem["rel"];
522
- /** If defined, used on conjunction with onClick property, second argument */
632
+ /** If defined, used on conjunction with onClick property. **Notice!** Only applicable to as=button. */
523
633
  route?: SkfMenuItem["route"];
524
634
  /** If true, fills the parents horizontal axis */
525
635
  stretch?: SkfMenuItem["stretch"];
526
636
  /** If defined, specifies where to open the linked document */
527
637
  target?: SkfMenuItem["target"];
528
- /** Defines the type of button */
529
- type?: SkfMenuItem["type"];
530
- /** */
531
- role?: SkfMenuItem["role"];
532
- /** If defined, accepts a function that runs on click. Forwards optional route as second argument. */
533
- onClick?: SkfMenuItem["onClick"];
638
+
639
+ /** Fired when the link is clicked */
640
+ "onskf-link-click"?: (e: CustomEvent<CustomEvent>) => void;
534
641
  };
535
642
 
536
643
  export type SkfMenuProps = {
@@ -538,33 +645,32 @@ export type SkfMenuProps = {
538
645
  placement?: SkfMenu["undefined"];
539
646
  /** The id of the element the menu will be anchored to */
540
647
  anchor?: SkfMenu["undefined"];
541
-
648
+ /** Method that opens the menu */
649
+ "open()"?: SkfMenu["open()"];
650
+ /** Method that closes the menu */
651
+ "close()"?: SkfMenu["close()"];
542
652
  /** Fired when the menu is opened */
543
653
  "onskf-opened"?: (e: CustomEvent<CustomEvent>) => void;
544
654
  /** Fired when the menu is closed */
545
655
  "onskf-closed"?: (e: CustomEvent<CustomEvent>) => void;
546
656
  };
547
657
 
548
- export type SkfNavItemProps = {
549
- /** */
550
- href?: SkfNavItem["href"];
551
- /** */
552
- icon?: SkfNavItem["icon"];
553
- };
554
-
555
658
  export type SkfPopoverProps = {
556
659
  /** The placement of the popover */
557
660
  placement?: SkfPopover["undefined"];
558
- /** The id of the element the menu will be anchored to */
661
+ /** The id of the element the popover will be anchored to */
559
662
  anchor?: SkfPopover["undefined"];
560
663
  /** If defined, sets a custom offset for the popover */
561
664
  offset?: SkfPopover["offset"];
562
665
  /** If true, hides the arrow */
563
666
  hideArrow?: SkfPopover["hideArrow"];
564
-
565
- /** Fired when the menu is opened */
667
+ /** Method that opens the popover */
668
+ "open()"?: SkfPopover["open()"];
669
+ /** Method that closes the popover */
670
+ "close()"?: SkfPopover["close()"];
671
+ /** Fired when the popover is opened */
566
672
  "onskf-opened"?: (e: CustomEvent<CustomEvent>) => void;
567
- /** Fired when the menu is closed */
673
+ /** Fired when the popover is closed */
568
674
  "onskf-closed"?: (e: CustomEvent<CustomEvent>) => void;
569
675
  };
570
676
 
@@ -590,10 +696,10 @@ export type SkfRadioProps = {
590
696
  "custom-invalid"?: SkfRadio["customInvalid"];
591
697
  /** If defined, sets the input's label unless the default slot is used. Alternatively, you can use the `label` attribute. */
592
698
  label?: SkfRadio["label"];
699
+ /** Sets the internal language of the component */
700
+ lang?: SkfRadio["lang"];
593
701
  /** If defined, adds name to the input-element */
594
702
  name?: SkfRadio["name"];
595
- /** If defined, renders an alternative A11y text for the asterisk */
596
- "required-label"?: SkfRadio["requiredLabel"];
597
703
  /** Size of the Radio */
598
704
  size?: SkfRadio["size"];
599
705
  /** If defined, displays provided severity state */
@@ -627,6 +733,8 @@ export type SkfSegmentedButtonProps = {
627
733
  export type SkfSelectOptionGroupProps = {
628
734
  /** */
629
735
  label?: SkfSelectOptionGroup["label"];
736
+ /** */
737
+ small?: SkfSelectOptionGroup["small"];
630
738
  };
631
739
 
632
740
  export type SkfTagProps = {
@@ -636,6 +744,8 @@ export type SkfTagProps = {
636
744
  icon?: SkfTag["icon"];
637
745
  /** If defined, gives the supplied appearance */
638
746
  color?: SkfTag["color"];
747
+ /** Sets the internal language of the component */
748
+ lang?: SkfTag["lang"];
639
749
  /** If true, adds trailing button to remove tag */
640
750
  removable?: SkfTag["removable"];
641
751
  /** If defined, accepts a function that runs on click */
@@ -661,6 +771,8 @@ export type SkfSelectProps = {
661
771
  hint?: SkfSelect["hint"];
662
772
  /** If defined, displays provided label */
663
773
  label?: SkfSelect["label"];
774
+ /** Sets the internal language of the component */
775
+ lang?: SkfSelect["lang"];
664
776
  /** If defined, limits the number of selectable options */
665
777
  max?: SkfSelect["max"];
666
778
  /** If defined, sets the minimum number of required options */
@@ -669,8 +781,6 @@ export type SkfSelectProps = {
669
781
  multiple?: SkfSelect["multiple"];
670
782
  /** If defined, set name of the component */
671
783
  name?: SkfSelect["name"];
672
- /** If defined, renders an alternative A11y text for the asterisk */
673
- "required-label"?: SkfSelect["requiredLabel"];
674
784
  /** If defined, displays provided severity state */
675
785
  severity?: SkfSelect["severity"];
676
786
  /** If true, displays valid state after interaction */
@@ -681,7 +791,7 @@ export type SkfSelectProps = {
681
791
  selectedValues?: SkfSelect["selectedValues"];
682
792
  /** A readonly property that returns the selected slot(s) text content in a array */
683
793
  selectedOptionsText?: SkfSelect["selectedOptionsText"];
684
- /** Read only, returns the selected value. (if multiple: in a comma separated string) */
794
+ /** Returns the selected value. (if multiple: in a comma separated string). If set will default set corresponding option. */
685
795
  value?: SkfSelect["value"];
686
796
  /** */
687
797
  _selectedOptions?: SkfSelect["_selectedOptions"];
@@ -695,6 +805,8 @@ export type SkfSelectProps = {
695
805
  "onskf-select-dropdown"?: (e: CustomEvent<CustomEvent>) => void;
696
806
  /** {detail: {value: string | null, option: SkfSelectOption}} Fired when the select dropdown is toggled */
697
807
  "onskf-select-option-select"?: (e: CustomEvent<CustomEvent>) => void;
808
+ /** Fires when the calendar view is updated */
809
+ "onskf-update-calendar-view"?: (e: CustomEvent<CustomEvent>) => void;
698
810
  };
699
811
 
700
812
  export type SkfSelectOptionProps = {
@@ -708,14 +820,12 @@ export type SkfSelectOptionProps = {
708
820
  selected?: SkfSelectOption["selected"];
709
821
  /** If defined, sets a short label */
710
822
  "short-label"?: SkfSelectOption["shortLabel"];
711
- /** Returns or sets the tags value. If value is omitted, defaults to the tags text. */
823
+ /** Returns or sets the option value. If value is omitted, defaults to the tags slotted text. */
712
824
  value?: SkfSelectOption["value"];
713
825
  /** The option's label text (equivalent to the tags textContent) */
714
826
  text?: SkfSelectOption["text"];
715
827
  /** */
716
- role?: SkfSelectOption["role"];
717
- /** */
718
- _parent?: SkfSelectOption["_parent"];
828
+ small?: SkfSelectOption["small"];
719
829
  /** */
720
830
  _shortcutUpdate?: SkfSelectOption["_shortcutUpdate"];
721
831
  /** {detail: { value: string | null, option: SkfSelectOption }} Fires when the option is selected/deselected. */
@@ -729,8 +839,6 @@ export type SkfStepperItemProps = {
729
839
  completed?: SkfStepperItem["completed"];
730
840
  /** */
731
841
  _setInternalState?: SkfStepperItem["_setInternalState"];
732
- /** */
733
- role?: SkfStepperItem["role"];
734
842
  /** Dispatched when the stepper item is selected */
735
843
  "onskf-stepper-item-select"?: (e: CustomEvent<never>) => void;
736
844
  };
@@ -758,10 +866,10 @@ export type SkfSwitchProps = {
758
866
  "hide-label"?: SkfSwitch["hideLabel"];
759
867
  /** If defined, sets the input's label unless the default slot is used. Alternatively, you can use the `label` attribute. */
760
868
  label?: SkfSwitch["label"];
869
+ /** Sets the internal language of the component */
870
+ lang?: SkfSwitch["lang"];
761
871
  /** If defined, adds name to the input-element */
762
872
  name?: SkfSwitch["name"];
763
- /** If defined, renders an alternative A11y text for the asterisk */
764
- "required-label"?: SkfSwitch["requiredLabel"];
765
873
  /** Size of the Switch */
766
874
  size?: SkfSwitch["size"];
767
875
  /** The current value of the input field */
@@ -773,8 +881,6 @@ export type SkfTabPanelProps = {
773
881
  name?: SkfTabPanel["name"];
774
882
  /** */
775
883
  active?: SkfTabPanel["active"];
776
- /** */
777
- role?: SkfTabPanel["role"];
778
884
  };
779
885
 
780
886
  export type SkfTabsProps = {
@@ -797,8 +903,6 @@ export type SkfTabProps = {
797
903
  selected?: SkfTab["selected"];
798
904
  /** */
799
905
  variant?: SkfTab["variant"];
800
- /** */
801
- role?: SkfTab["role"];
802
906
  /** {detail: { selected: true, tab: SkfTab }} Fires when the tab is selected */
803
907
  "onskf-tab-select"?: (e: CustomEvent<CustomEvent>) => void;
804
908
  /** Fired when the component is clicked */
@@ -822,6 +926,8 @@ export type SkfTextAreaProps = {
822
926
  hint?: SkfTextArea["hint"];
823
927
  /** If defined, sets the input's label unless the default slot is used. Alternatively, you can use the `label` attribute. */
824
928
  label?: SkfTextArea["label"];
929
+ /** Sets the internal language of the component */
930
+ lang?: SkfTextArea["lang"];
825
931
  /** If defined, adds name to the input-element */
826
932
  name?: SkfTextArea["name"];
827
933
  /** If defined, sets the maximum character length to accept for this input */
@@ -832,8 +938,6 @@ export type SkfTextAreaProps = {
832
938
  placeholder?: SkfTextArea["placeholder"];
833
939
  /** If true, makes the element not mutable, meaning the user can not edit the control */
834
940
  readonly?: SkfTextArea["readonly"];
835
- /** If defined, renders an alternative A11y text for the asterisk */
836
- "required-label"?: SkfTextArea["requiredLabel"];
837
941
  /** If defined, sets the rows of the textarea */
838
942
  rows?: SkfTextArea["rows"];
839
943
  /** If defined, displays provided severity state */
@@ -879,17 +983,19 @@ export type SkfTooltipProps = {
879
983
  /** The id of the element the dropdown will be anchored to */
880
984
  anchor?: SkfTooltip["undefined"];
881
985
  /** */
882
- role?: SkfTooltip["role"];
883
- /** */
884
986
  offset?: SkfTooltip["offset"];
885
987
  /** */
886
988
  placement?: SkfTooltip["placement"];
887
989
  /** */
888
990
  variant?: SkfTooltip["variant"];
889
- /** Fired when the dropdown is opened */
890
- "onskf-opened"?: (e: CustomEvent<never>) => void;
891
- /** Fired when the dropdown is closed */
892
- "onskf-closed"?: (e: CustomEvent<never>) => void;
991
+ /** Method that opens the tooltip */
992
+ "open()"?: SkfTooltip["open()"];
993
+ /** Method that closes the tooltip */
994
+ "close()"?: SkfTooltip["close()"];
995
+ /** Fired when the tooltip is opened */
996
+ "onskf-opened"?: (e: CustomEvent<CustomEvent>) => void;
997
+ /** Fired when the tooltip is closed */
998
+ "onskf-closed"?: (e: CustomEvent<CustomEvent>) => void;
893
999
  };
894
1000
 
895
1001
  export type CustomElements = {
@@ -1111,6 +1217,30 @@ export type CustomElements = {
1111
1217
  */
1112
1218
  "skf-logo": Partial<SkfLogoProps & BaseProps & BaseEvents>;
1113
1219
 
1220
+ /**
1221
+ * The `<skf-link>` can be used as either a regular link or a semantic button. The button variant is
1222
+ * intended to be used for triggering javascript functions, not handling forms.
1223
+ * ---
1224
+ *
1225
+ *
1226
+ * ### **Events:**
1227
+ * - **skf-link-click** - Fired when the link is clicked
1228
+ *
1229
+ * ### **Slots:**
1230
+ * - _default_ - The links' main content
1231
+ */
1232
+ "skf-link": Partial<SkfLinkProps & BaseProps & BaseEvents>;
1233
+
1234
+ /**
1235
+ * The `<skf-nav>` is a component that displays a list of <nav-items>.
1236
+ * ---
1237
+ *
1238
+ *
1239
+ * ### **Slots:**
1240
+ * - _default_ - The component's main content
1241
+ */
1242
+ "skf-nav-item": Partial<SkfNavItemProps & BaseProps & BaseEvents>;
1243
+
1114
1244
  /**
1115
1245
  * The `<skf-nav>` is a component that displays a list of <nav-items>.
1116
1246
  * ---
@@ -1147,21 +1277,14 @@ export type CustomElements = {
1147
1277
  */
1148
1278
  "skf-input": Partial<SkfInputProps & BaseProps & BaseEvents>;
1149
1279
 
1150
- /**
1151
- * The `<skf-link>` can be used as either a regular link or a link styled semantic button
1152
- * ---
1153
- *
1154
- *
1155
- * ### **Slots:**
1156
- * - _default_ - The links' main content
1157
- */
1158
- "skf-link": Partial<SkfLinkProps & BaseProps & BaseEvents>;
1159
-
1160
1280
  /**
1161
1281
  * The `<skf-menu-item>` is used in conjunction with the `<skf-menu>` component
1162
1282
  * ---
1163
1283
  *
1164
1284
  *
1285
+ * ### **Events:**
1286
+ * - **skf-link-click** - Fired when the link is clicked
1287
+ *
1165
1288
  * ### **Slots:**
1166
1289
  * - _default_ - The component's main content
1167
1290
  */
@@ -1179,20 +1302,10 @@ export type CustomElements = {
1179
1302
  * - **skf-closed** - Fired when the menu is closed
1180
1303
  *
1181
1304
  * ### **Slots:**
1182
- * - _default_ - The menu popover content
1305
+ * - _default_ - The menu content
1183
1306
  */
1184
1307
  "skf-menu": Partial<SkfMenuProps & BaseProps & BaseEvents>;
1185
1308
 
1186
- /**
1187
- * The `<skf-nav>` is a component that displays a list of <nav-items>.
1188
- * ---
1189
- *
1190
- *
1191
- * ### **Slots:**
1192
- * - _default_ - The component's main content
1193
- */
1194
- "skf-nav-item": Partial<SkfNavItemProps & BaseProps & BaseEvents>;
1195
-
1196
1309
  /**
1197
1310
  * The `<skf-popover>` is a general purpose component that displays the slot content in a popover.
1198
1311
  *
@@ -1201,8 +1314,8 @@ export type CustomElements = {
1201
1314
  *
1202
1315
  *
1203
1316
  * ### **Events:**
1204
- * - **skf-opened** - Fired when the menu is opened
1205
- * - **skf-closed** - Fired when the menu is closed
1317
+ * - **skf-opened** - Fired when the popover is opened
1318
+ * - **skf-closed** - Fired when the popover is closed
1206
1319
  *
1207
1320
  * ### **Slots:**
1208
1321
  * - _default_ - The popover content
@@ -1289,6 +1402,7 @@ export type CustomElements = {
1289
1402
  * - **reset** - Fired when the form is reset
1290
1403
  * - **skf-select-dropdown** - {detail: {expanded: boolean}} Fired when the select dropdown is toggled
1291
1404
  * - **skf-select-option-select** - {detail: {value: string | null, option: SkfSelectOption}} Fired when the select dropdown is toggled
1405
+ * - **skf-update-calendar-view** - Fires when the calendar view is updated
1292
1406
  *
1293
1407
  * ### **Slots:**
1294
1408
  * - _default_ - The select's placeholder content
@@ -1297,6 +1411,7 @@ export type CustomElements = {
1297
1411
 
1298
1412
  /**
1299
1413
  * The `<skf-select-option>` is a component is used nested in a skf-select or skf-select-option-group.
1414
+ * It represents an individual option in a select dropdown.
1300
1415
  * ---
1301
1416
  *
1302
1417
  *
@@ -1422,8 +1537,8 @@ export type CustomElements = {
1422
1537
  *
1423
1538
  *
1424
1539
  * ### **Events:**
1425
- * - **skf-opened** - Fired when the dropdown is opened
1426
- * - **skf-closed** - Fired when the dropdown is closed
1540
+ * - **skf-opened** - Fired when the tooltip is opened
1541
+ * - **skf-closed** - Fired when the tooltip is closed
1427
1542
  *
1428
1543
  * ### **Slots:**
1429
1544
  * - _default_ - The tooltip popover content