@skf-design-system/ui-components 1.0.1-beta.1 → 1.0.2-beta.1

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 (299) hide show
  1. package/README.md +13 -26
  2. package/dist/components/accordion/accordion-item.component.d.ts +36 -0
  3. package/dist/components/accordion/accordion-item.component.js +87 -0
  4. package/dist/components/accordion/accordion-item.d.ts +3 -3
  5. package/dist/components/accordion/accordion-item.js +4 -5
  6. package/dist/components/accordion/accordion-item.styles.js +77 -0
  7. package/dist/components/accordion/accordion.component.d.ts +9 -13
  8. package/dist/components/accordion/accordion.component.js +12 -13
  9. package/dist/components/accordion/accordion.d.ts +0 -1
  10. package/dist/components/accordion/accordion.js +0 -2
  11. package/dist/components/alert/alert.component.d.ts +6 -10
  12. package/dist/components/alert/alert.component.js +15 -16
  13. package/dist/components/alert/alert.styles.js +0 -5
  14. package/dist/components/breadcrumb/breadcrumb-item.component.js +61 -0
  15. package/dist/components/breadcrumb/breadcrumb-item.js +6 -0
  16. package/dist/components/breadcrumb/breadcrumb-item.styles.js +62 -0
  17. package/dist/components/breadcrumb/breadcrumb.component.d.ts +2 -2
  18. package/dist/components/breadcrumb/breadcrumb.component.js +60 -0
  19. package/dist/components/breadcrumb/breadcrumb.js +6 -0
  20. package/dist/components/breadcrumb/breadcrumb.styles.js +22 -0
  21. package/dist/components/button/button.component.d.ts +13 -10
  22. package/dist/components/button/button.component.js +83 -76
  23. package/dist/components/button/button.styles.d.ts +1 -2
  24. package/dist/components/button/button.styles.js +1 -1
  25. package/dist/components/card/card.component.d.ts +1 -1
  26. package/dist/components/card/card.component.js +18 -30
  27. package/dist/components/card/card.styles.js +25 -28
  28. package/dist/components/checkbox/checkbox.component.d.ts +16 -14
  29. package/dist/components/checkbox/checkbox.component.js +5 -5
  30. package/dist/components/checkbox/checkbox.styles.d.ts +1 -2
  31. package/dist/components/checkbox/checkbox.styles.js +1 -5
  32. package/dist/components/date-picker/datepicker.calendar.component.d.ts +5 -0
  33. package/dist/components/date-picker/datepicker.calendar.component.js +128 -95
  34. package/dist/components/date-picker/datepicker.calendar.styles.js +35 -25
  35. package/dist/components/date-picker/datepicker.component.d.ts +5 -0
  36. package/dist/components/date-picker/datepicker.component.js +117 -97
  37. package/dist/components/date-picker/datepicker.helpers.d.ts +3 -2
  38. package/dist/components/date-picker/datepicker.helpers.js +46 -39
  39. package/dist/components/date-picker/datepicker.styles.js +14 -26
  40. package/dist/components/date-picker-input/datepicker-input.component.d.ts +14 -5
  41. package/dist/components/date-picker-input/datepicker-input.component.js +264 -219
  42. package/dist/components/date-picker-input/datepicker-input.helpers.d.ts +36 -2
  43. package/dist/components/date-picker-input/datepicker-input.helpers.js +25 -23
  44. package/dist/components/date-picker-input/datepicker-input.styles.js +6 -10
  45. package/dist/components/dialog/dialog.component.d.ts +20 -29
  46. package/dist/components/dialog/dialog.component.js +85 -75
  47. package/dist/components/dialog/dialog.styles.js +4 -4
  48. package/dist/components/divider/divider.component.d.ts +4 -8
  49. package/dist/components/divider/divider.component.js +24 -46
  50. package/dist/components/divider/divider.styles.js +34 -30
  51. package/dist/components/drawer/drawer.component.d.ts +61 -0
  52. package/dist/components/drawer/drawer.component.js +125 -0
  53. package/dist/components/drawer/drawer.d.ts +8 -0
  54. package/dist/components/drawer/drawer.js +6 -0
  55. package/dist/components/drawer/drawer.styles.js +71 -0
  56. package/dist/components/header/header.component.d.ts +46 -0
  57. package/dist/components/header/header.component.js +116 -0
  58. package/dist/components/header/header.d.ts +8 -0
  59. package/dist/components/header/header.js +6 -0
  60. package/dist/components/header/header.styles.js +68 -0
  61. package/dist/components/heading/heading.component.d.ts +3 -11
  62. package/dist/components/heading/heading.component.js +24 -23
  63. package/dist/components/heading/heading.styles.d.ts +1 -2
  64. package/dist/components/heading/heading.styles.js +1 -1
  65. package/dist/components/icon/icon.component.d.ts +11 -17
  66. package/dist/components/icon/icon.component.js +2 -2
  67. package/dist/components/icon/icon.styles.d.ts +1 -2
  68. package/dist/components/icon/icon.styles.js +1 -1
  69. package/dist/components/input/input.component.d.ts +30 -31
  70. package/dist/components/input/input.component.js +138 -125
  71. package/dist/components/input/input.controllers.d.ts +20 -6
  72. package/dist/components/input/input.controllers.js +14 -10
  73. package/dist/components/link/link.component.d.ts +12 -14
  74. package/dist/components/link/link.component.js +35 -34
  75. package/dist/components/link/link.styles.d.ts +1 -2
  76. package/dist/components/link/link.styles.js +24 -20
  77. package/dist/components/loader/loader.component.d.ts +1 -1
  78. package/dist/components/loader/loader.component.js +36 -40
  79. package/dist/components/loader/loader.styles.d.ts +1 -2
  80. package/dist/components/loader/loader.styles.js +40 -32
  81. package/dist/components/logo/logo.component.d.ts +4 -5
  82. package/dist/components/logo/logo.component.js +1 -1
  83. package/dist/components/menu/menu-item.component.d.ts +13 -0
  84. package/dist/components/{menu-item → menu}/menu-item.component.js +3 -3
  85. package/dist/components/menu/menu.component.d.ts +10 -8
  86. package/dist/components/menu/menu.component.js +8 -10
  87. package/dist/components/nav/nav-item.component.d.ts +18 -0
  88. package/dist/components/nav/nav-item.component.js +38 -0
  89. package/dist/components/nav/nav-item.d.ts +8 -0
  90. package/dist/components/nav/nav-item.js +6 -0
  91. package/dist/components/nav/nav-item.styles.js +39 -0
  92. package/dist/components/nav/nav.component.d.ts +17 -0
  93. package/dist/components/nav/nav.component.js +34 -0
  94. package/dist/components/nav/nav.d.ts +8 -0
  95. package/dist/components/nav/nav.js +6 -0
  96. package/dist/components/nav/nav.styles.d.ts +1 -0
  97. package/dist/components/nav/nav.styles.js +17 -0
  98. package/dist/components/popover/popover.component.d.ts +11 -8
  99. package/dist/components/popover/popover.component.js +24 -26
  100. package/dist/components/progress/progress.component.d.ts +2 -2
  101. package/dist/components/progress/progress.component.js +31 -37
  102. package/dist/components/progress/progress.styles.js +40 -35
  103. package/dist/components/radio/radio.component.d.ts +19 -13
  104. package/dist/components/radio/radio.component.js +12 -12
  105. package/dist/components/radio/radio.styles.d.ts +1 -2
  106. package/dist/components/radio/radio.styles.js +1 -1
  107. package/dist/components/segmented-button/segmented-button-item.component.d.ts +36 -0
  108. package/dist/components/segmented-button/segmented-button-item.component.js +56 -0
  109. package/dist/components/segmented-button/segmented-button-item.d.ts +8 -0
  110. package/dist/components/segmented-button/segmented-button-item.js +6 -0
  111. package/dist/components/segmented-button/segmented-button-item.styles.d.ts +1 -0
  112. package/dist/components/segmented-button/segmented-button-item.styles.js +62 -0
  113. package/dist/components/segmented-button/segmented-button.component.d.ts +30 -0
  114. package/dist/components/segmented-button/segmented-button.component.js +73 -0
  115. package/dist/components/segmented-button/segmented-button.d.ts +8 -0
  116. package/dist/components/segmented-button/segmented-button.js +6 -0
  117. package/dist/components/segmented-button/segmented-button.styles.d.ts +1 -0
  118. package/dist/components/segmented-button/segmented-button.styles.js +16 -0
  119. package/dist/components/{select-option-group → select}/select-option-group.component.js +1 -1
  120. package/dist/components/select/select-option-group.style.d.ts +1 -0
  121. package/dist/components/{select-option → select}/select-option.component.d.ts +7 -8
  122. package/dist/components/{select-option → select}/select-option.component.js +15 -15
  123. package/dist/components/select/select-option.controllers.d.ts +15 -0
  124. package/dist/components/select/select-option.styles.d.ts +1 -0
  125. package/dist/components/select/select.component.d.ts +16 -15
  126. package/dist/components/select/select.component.js +19 -19
  127. package/dist/components/select/select.controllers.d.ts +21 -10
  128. package/dist/components/select/select.controllers.js +31 -23
  129. package/dist/components/select/select.stories.icons.d.ts +7 -0
  130. package/dist/components/{stepper-item → stepper}/stepper-item.component.js +8 -8
  131. package/dist/components/stepper/stepper-item.styles.d.ts +1 -0
  132. package/dist/components/stepper/stepper.component.d.ts +4 -3
  133. package/dist/components/stepper/stepper.component.js +15 -15
  134. package/dist/components/stepper/stepper.helpers.d.ts +1 -1
  135. package/dist/components/switch/switch.component.d.ts +7 -6
  136. package/dist/components/switch/switch.component.js +21 -21
  137. package/dist/components/tab/tab.component.js +1 -1
  138. package/dist/components/tab-group/tab-group.component.js +1 -1
  139. package/dist/components/tab-panel/tab-panel.component.js +1 -1
  140. package/dist/components/tag/tag.component.d.ts +14 -16
  141. package/dist/components/tag/tag.component.js +36 -39
  142. package/dist/components/textarea/textarea.component.d.ts +10 -11
  143. package/dist/components/textarea/textarea.component.js +65 -67
  144. package/dist/components/{toast-item → toast}/toast-item.d.ts +2 -0
  145. package/dist/components/{toast-item → toast}/toast-item.js +4 -0
  146. package/dist/components/{toast-wrapper → toast}/toast-wrapper.component.js +1 -1
  147. package/dist/components/toast/toast-wrapper.styles.d.ts +1 -0
  148. package/dist/components/toast/toast.component.d.ts +6 -5
  149. package/dist/components/toast/toast.component.js +15 -15
  150. package/dist/components/toast/toast.singleton.d.ts +4 -4
  151. package/dist/components/toast/toast.singleton.js +12 -12
  152. package/dist/components/tooltip/tooltip.component.d.ts +7 -7
  153. package/dist/components/tooltip/tooltip.component.js +16 -11
  154. package/dist/custom-elements.json +2718 -2073
  155. package/dist/index.d.ts +16 -6
  156. package/dist/index.js +103 -75
  157. package/dist/internal/base-classes/popover/popover.base.d.ts +24 -9
  158. package/dist/internal/base-classes/popover/popover.base.js +138 -77
  159. package/dist/internal/base-classes/popover/popover.styles.js +14 -1
  160. package/dist/internal/components/hint/hint.component.d.ts +2 -2
  161. package/dist/internal/components/hint/hint.component.js +2 -2
  162. package/dist/internal/components/hint/hint.styles.d.ts +1 -2
  163. package/dist/internal/components/hint/hint.styles.js +1 -1
  164. package/dist/internal/constants/iconSeverity.d.ts +3 -2
  165. package/dist/internal/constants/iconSeverity.js +2 -3
  166. package/dist/internal/controllers/elementOverflowController.d.ts +13 -0
  167. package/dist/internal/controllers/popover.controller.d.ts +12 -7
  168. package/dist/internal/controllers/popover.controller.js +9 -14
  169. package/dist/internal/helpers/hintSeverity.d.ts +2 -2
  170. package/dist/internal/helpers/hintSeverity.js +1 -1
  171. package/dist/internal/helpers/utilityTypes.d.ts +1 -1
  172. package/dist/internal/helpers/uuid.d.ts +15 -0
  173. package/dist/internal/helpers/uuid.js +14 -0
  174. package/dist/internal/storybook/styles.d.ts +1 -0
  175. package/dist/internal/types/formField.d.ts +1 -1
  176. package/dist/internal/types.d.ts +18 -0
  177. package/dist/styles/component.styles.d.ts +1 -2
  178. package/dist/styles/component.styles.js +1 -1
  179. package/dist/styles/form-field.styles.js +11 -6
  180. package/dist/styles/global.css +1 -1
  181. package/dist/types/jsx/custom-element-jsx.d.ts +673 -1310
  182. package/dist/types/vue/index.d.ts +456 -319
  183. package/dist/vscode.html-custom-data.json +402 -1080
  184. package/dist/web-types.json +986 -767
  185. package/package.json +44 -55
  186. package/dist/components/collapse/collapse.component.d.ts +0 -40
  187. package/dist/components/collapse/collapse.component.js +0 -86
  188. package/dist/components/collapse/collapse.d.ts +0 -8
  189. package/dist/components/collapse/collapse.js +0 -6
  190. package/dist/components/collapse/collapse.styles.d.ts +0 -2
  191. package/dist/components/collapse/collapse.styles.js +0 -77
  192. package/dist/components/menu-item/menu-item.component.d.ts +0 -25
  193. package/dist/components/select-option/select-option.controllers.d.ts +0 -9
  194. package/dist/internal/constants/heading.d.ts +0 -2
  195. package/dist/react/index.d.ts +0 -36
  196. package/dist/react/index.js +0 -36
  197. package/dist/react/skf-accordion/index.d.ts +0 -3
  198. package/dist/react/skf-accordion/index.js +0 -13
  199. package/dist/react/skf-alert/index.d.ts +0 -9
  200. package/dist/react/skf-alert/index.js +0 -17
  201. package/dist/react/skf-breadcrumb/index.d.ts +0 -9
  202. package/dist/react/skf-breadcrumb/index.js +0 -17
  203. package/dist/react/skf-breadcrumb-item/index.d.ts +0 -3
  204. package/dist/react/skf-breadcrumb-item/index.js +0 -13
  205. package/dist/react/skf-button/index.d.ts +0 -9
  206. package/dist/react/skf-button/index.js +0 -17
  207. package/dist/react/skf-card/index.d.ts +0 -3
  208. package/dist/react/skf-card/index.js +0 -13
  209. package/dist/react/skf-checkbox/index.d.ts +0 -9
  210. package/dist/react/skf-checkbox/index.js +0 -17
  211. package/dist/react/skf-collapse/index.d.ts +0 -9
  212. package/dist/react/skf-collapse/index.js +0 -17
  213. package/dist/react/skf-datepicker/index.d.ts +0 -12
  214. package/dist/react/skf-datepicker/index.js +0 -18
  215. package/dist/react/skf-dialog/index.d.ts +0 -15
  216. package/dist/react/skf-dialog/index.js +0 -19
  217. package/dist/react/skf-divider/index.d.ts +0 -3
  218. package/dist/react/skf-divider/index.js +0 -13
  219. package/dist/react/skf-heading/index.d.ts +0 -3
  220. package/dist/react/skf-heading/index.js +0 -13
  221. package/dist/react/skf-icon/index.d.ts +0 -3
  222. package/dist/react/skf-icon/index.js +0 -13
  223. package/dist/react/skf-input/index.d.ts +0 -12
  224. package/dist/react/skf-input/index.js +0 -18
  225. package/dist/react/skf-link/index.d.ts +0 -3
  226. package/dist/react/skf-link/index.js +0 -13
  227. package/dist/react/skf-loader/index.d.ts +0 -3
  228. package/dist/react/skf-loader/index.js +0 -13
  229. package/dist/react/skf-logo/index.d.ts +0 -3
  230. package/dist/react/skf-logo/index.js +0 -13
  231. package/dist/react/skf-menu/index.d.ts +0 -12
  232. package/dist/react/skf-menu/index.js +0 -18
  233. package/dist/react/skf-menu-item/index.d.ts +0 -27
  234. package/dist/react/skf-menu-item/index.js +0 -23
  235. package/dist/react/skf-popover/index.d.ts +0 -12
  236. package/dist/react/skf-popover/index.js +0 -18
  237. package/dist/react/skf-progress/index.d.ts +0 -3
  238. package/dist/react/skf-progress/index.js +0 -13
  239. package/dist/react/skf-radio/index.d.ts +0 -9
  240. package/dist/react/skf-radio/index.js +0 -17
  241. package/dist/react/skf-select/index.d.ts +0 -21
  242. package/dist/react/skf-select/index.js +0 -21
  243. package/dist/react/skf-select-option/index.d.ts +0 -9
  244. package/dist/react/skf-select-option/index.js +0 -17
  245. package/dist/react/skf-select-option-group/index.d.ts +0 -3
  246. package/dist/react/skf-select-option-group/index.js +0 -13
  247. package/dist/react/skf-stepper/index.d.ts +0 -9
  248. package/dist/react/skf-stepper/index.js +0 -17
  249. package/dist/react/skf-stepper-item/index.d.ts +0 -9
  250. package/dist/react/skf-stepper-item/index.js +0 -17
  251. package/dist/react/skf-switch/index.d.ts +0 -3
  252. package/dist/react/skf-switch/index.js +0 -13
  253. package/dist/react/skf-tab/index.d.ts +0 -12
  254. package/dist/react/skf-tab/index.js +0 -18
  255. package/dist/react/skf-tab-group/index.d.ts +0 -3
  256. package/dist/react/skf-tab-group/index.js +0 -13
  257. package/dist/react/skf-tab-panel/index.d.ts +0 -3
  258. package/dist/react/skf-tab-panel/index.js +0 -13
  259. package/dist/react/skf-tag/index.d.ts +0 -3
  260. package/dist/react/skf-tag/index.js +0 -13
  261. package/dist/react/skf-textarea/index.d.ts +0 -12
  262. package/dist/react/skf-textarea/index.js +0 -18
  263. package/dist/react/skf-toast/index.d.ts +0 -3
  264. package/dist/react/skf-toast/index.js +0 -13
  265. package/dist/react/skf-toast-wrapper/index.d.ts +0 -3
  266. package/dist/react/skf-toast-wrapper/index.js +0 -13
  267. package/dist/react/skf-tooltip/index.d.ts +0 -12
  268. package/dist/react/skf-tooltip/index.js +0 -18
  269. /package/dist/components/{breadcrumb-item/breadcrumb-item.styles.d.ts → accordion/accordion-item.styles.d.ts} +0 -0
  270. /package/dist/components/{collapse/collapse.test.d.ts → accordion/accordion-item.test.d.ts} +0 -0
  271. /package/dist/components/{breadcrumb-item → breadcrumb}/breadcrumb-item.component.d.ts +0 -0
  272. /package/dist/components/{breadcrumb-item → breadcrumb}/breadcrumb-item.d.ts +0 -0
  273. /package/dist/components/{menu-item/menu-item.styles.d.ts → breadcrumb/breadcrumb-item.styles.d.ts} +0 -0
  274. /package/dist/components/{select-option-group/select-option-group.style.d.ts → drawer/drawer.styles.d.ts} +0 -0
  275. /package/dist/components/{select-option/select-option.styles.d.ts → header/header.styles.d.ts} +0 -0
  276. /package/dist/components/{menu-item → menu}/menu-item.d.ts +0 -0
  277. /package/dist/components/{menu-item → menu}/menu-item.js +0 -0
  278. /package/dist/components/{stepper-item/stepper-item.styles.d.ts → menu/menu-item.styles.d.ts} +0 -0
  279. /package/dist/components/{menu-item → menu}/menu-item.styles.js +0 -0
  280. /package/dist/components/{toast-wrapper/toast-wrapper.styles.d.ts → nav/nav-item.styles.d.ts} +0 -0
  281. /package/dist/components/{select-option-group → select}/select-option-group.component.d.ts +0 -0
  282. /package/dist/components/{select-option-group → select}/select-option-group.d.ts +0 -0
  283. /package/dist/components/{select-option-group → select}/select-option-group.js +0 -0
  284. /package/dist/components/{select-option-group → select}/select-option-group.style.js +0 -0
  285. /package/dist/components/{select-option → select}/select-option.d.ts +0 -0
  286. /package/dist/components/{select-option → select}/select-option.js +0 -0
  287. /package/dist/components/{select-option → select}/select-option.styles.js +0 -0
  288. /package/dist/components/{stepper-item → stepper}/stepper-item.component.d.ts +0 -0
  289. /package/dist/components/{stepper-item → stepper}/stepper-item.d.ts +0 -0
  290. /package/dist/components/{stepper-item → stepper}/stepper-item.js +0 -0
  291. /package/dist/components/{stepper-item → stepper}/stepper-item.styles.js +0 -0
  292. /package/dist/components/{toast-item → toast}/toast-item.component.d.ts +0 -0
  293. /package/dist/components/{toast-item → toast}/toast-item.component.js +0 -0
  294. /package/dist/components/{toast-item → toast}/toast-item.styles.d.ts +0 -0
  295. /package/dist/components/{toast-item → toast}/toast-item.styles.js +0 -0
  296. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.component.d.ts +0 -0
  297. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.d.ts +0 -0
  298. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.js +0 -0
  299. /package/dist/components/{toast-wrapper → toast}/toast-wrapper.styles.js +0 -0
@@ -1,51 +1,52 @@
1
1
  import "../icon/icon.js";
2
- import { FormBase as b } from "../../internal/components/formBase.js";
2
+ import { FormBase as c } from "../../internal/components/formBase.js";
3
3
  import "../../internal/components/hint/hint.js";
4
- import { hintSeverity as v } from "../../internal/helpers/hintSeverity.js";
4
+ import { hintSeverity as b } from "../../internal/helpers/hintSeverity.js";
5
5
  import { watch as y } from "../../internal/helpers/watch.js";
6
6
  import { Asterisk as f } from "../../internal/templates/asterisk.js";
7
- import _ from "../../styles/component.styles.js";
7
+ import { componentStyles as _ } from "../../styles/component.styles.js";
8
8
  import { html as h, nothing as u } from "lit";
9
- import { property as i, state as c, query as $, queryAssignedNodes as g } from "lit/decorators.js";
10
- import { ifDefined as n } from "lit/directives/if-defined.js";
9
+ import { state as p, property as s, query as $, queryAssignedNodes as g } from "lit/decorators.js";
10
+ import { ifDefined as o } from "lit/directives/if-defined.js";
11
11
  import { live as w } from "lit/directives/live.js";
12
12
  import { InputNumberController as E, InputPasswordController as C } from "./input.controllers.js";
13
13
  import A from "./input.styles.js";
14
- var S = Object.defineProperty, L = Object.getOwnPropertyDescriptor, e = (m, s, r, a) => {
15
- for (var o = a > 1 ? void 0 : a ? L(s, r) : s, l = m.length - 1, d; l >= 0; l--)
16
- (d = m[l]) && (o = (a ? d(s, r, o) : d(o)) || o);
17
- return a && o && S(s, r, o), o;
14
+ var L = Object.defineProperty, P = Object.getOwnPropertyDescriptor, e = (v, t, r, a) => {
15
+ for (var n = a > 1 ? void 0 : a ? P(t, r) : t, l = v.length - 1, d; l >= 0; l--)
16
+ (d = v[l]) && (n = (a ? d(t, r, n) : d(n)) || n);
17
+ return a && n && L(t, r, n), n;
18
18
  };
19
- const p = class p extends b {
19
+ const m = class m extends c {
20
20
  constructor() {
21
- super(...arguments), this.buttonAriaLabelClear = "Clear input", this.buttonAriaLabelHide = "Hide password", this.buttonAriaLabelShow = "Show password", this.inputmode = "text", this.size = "md", this.type = "text", this.validateOn = "change", this.value = "", this.invalid = !1, this._buttonDown = !1, this._numberController = new E(this), this._passwordController = new C(this), this._handleInput = () => {
22
- this.value = this.$input.value || "", this.validateOn === "input" && (this._pristine = !1, this.validateInput());
23
- }, this._resetValue = (s) => {
24
- var r;
25
- s.stopPropagation(), this.value = ((r = this.getAttribute("value")) == null ? void 0 : r.trim()) ?? "", this._internals.setFormValue(this.value), this.$input.focus();
26
- }, this._handlePressStart = (s) => {
27
- this._buttonDown = !0, this.type === "number" && this._numberController.handleActionBtnLongPressStart(s);
21
+ super(...arguments), this._value = "", this.buttonAriaLabelClear = "Clear input", this.buttonAriaLabelHide = "Hide password", this.buttonAriaLabelShow = "Show password", this.debug = !1, this.hideLabel = !1, this.inputmode = "text", this.readonly = !1, this.showValid = !1, this.size = "md", this.type = "text", this.validateOn = "change", this.invalid = !1, this._buttonDown = !1, this._numberController = new E(this), this._passwordController = new C(this), this._handleInput = () => {
22
+ var t;
23
+ this._value = ((t = this.$input) == null ? void 0 : t.value) ?? "", this.validateOn === "input" && (this._pristine = !1, this.validateInput());
24
+ }, this._resetValue = (t) => {
25
+ var r, a;
26
+ t.stopPropagation(), this.value = ((r = this.getAttribute("value")) == null ? void 0 : r.trim()) ?? "", this._value = this.value, this._internals.setFormValue(this.value), (a = this.$input) == null || a.focus();
27
+ }, this._handlePressStart = (t) => {
28
+ this._buttonDown = !0, this.type === "number" && this._numberController.handleActionBtnLongPressStart(t);
28
29
  }, this._handlePressEnd = () => {
29
30
  this._buttonDown = !1, this.type === "number" && this._numberController.handleActionBtnLongPressEnd();
30
- }, this._renderNumberButton = (s) => h`
31
+ }, this._renderNumberButton = (t) => h`
31
32
  <button
32
33
  ?disabled=${this.disabled}
33
34
  @click=${(r) => {
34
- this._numberController.handleActionBtnClick(r, s);
35
+ this._numberController.handleActionBtnClick(r, t);
35
36
  }}
36
37
  @mousedown=${this._handlePressStart}
37
38
  @mouseup=${this._handlePressEnd}
38
39
  @mouseleave=${this._handlePressEnd}
39
- aria-label="${s === "inc" ? "Increment" : "Decrement"}"
40
+ aria-label="${t === "inc" ? "Increment" : "Decrement"}"
40
41
  class="number skf-icon-host"
41
42
  type="button"
42
43
  >
43
- <skf-icon name="${s === "inc" ? "chevronUp" : "chevronDown"}" size="sm"></skf-icon>
44
+ <skf-icon name="${t === "inc" ? "chevronUp" : "chevronDown"}" size="sm"></skf-icon>
44
45
  </button>
45
46
  `, this._renderPasswordButton = () => h`
46
47
  <button
47
48
  @click=${this._passwordController.toggleVisibility}
48
- aria-label=${n(this._passwordController._buttonAriaLabel)}
49
+ aria-label=${o(this._passwordController._buttonAriaLabel)}
49
50
  class="password skf-icon-host"
50
51
  type="button"
51
52
  @mousedown="${this._handlePressStart}"
@@ -60,31 +61,41 @@ const p = class p extends b {
60
61
  @mousedown=${this._handlePressStart}
61
62
  @mouseup=${this._handlePressEnd}
62
63
  @mouseleave=${this._handlePressEnd}
63
- aria-label=${n(this.buttonAriaLabelClear)}
64
+ aria-label=${o(this.buttonAriaLabelClear)}
64
65
  class="search skf-icon-host"
65
66
  type="button"
66
67
  >
67
68
  <skf-icon name="close" size="sm"></skf-icon>
68
69
  </button>
69
70
  `, this._onBlur = () => {
70
- this._buttonDown && this.$input.focus();
71
+ var t;
72
+ this._buttonDown && ((t = this.$input) == null || t.focus());
71
73
  };
72
74
  }
73
- set customInvalid(s) {
74
- this.customError = s || "";
75
+ set customInvalid(t) {
76
+ this.customError = t ?? "";
75
77
  }
76
78
  get customInvalid() {
77
79
  return this.customError;
78
80
  }
81
+ set value(t) {
82
+ this.$input && (this.$input.value = t, this._value = t, this._internals.setFormValue(t), this.validateInput());
83
+ }
84
+ get value() {
85
+ var t;
86
+ return ((t = this.$input) == null ? void 0 : t.value) ?? "";
87
+ }
79
88
  firstUpdated() {
80
- this.$input.addEventListener("change", () => {
81
- this.validateOn === "change" && (this.validateOn = "input", this._pristine = !1), this._internals.setFormValue(this.$input.value || ""), this.emitEvent("change"), this.validateInput();
82
- }), this.addEventListener("invalid", (s) => {
83
- this._pristine = !1, this.invalid = !0, this.customErrorDisplay && s.preventDefault();
89
+ var t;
90
+ (t = this.$input) == null || t.addEventListener("change", () => {
91
+ var r;
92
+ this.validateOn === "change" && (this.validateOn = "input", this._pristine = !1), this._internals.setFormValue(((r = this.$input) == null ? void 0 : r.value) ?? ""), this.emitEvent("change"), this.validateInput();
93
+ }), this.addEventListener("invalid", (r) => {
94
+ this._pristine = !1, this.invalid = !0, this.customErrorDisplay && r.preventDefault();
84
95
  }), this.addEventListener("reset", this._resetValue), this.validateInput();
85
96
  }
86
- willUpdate(s) {
87
- if (s.has("invalid"))
97
+ willUpdate(t) {
98
+ if (t.has("invalid"))
88
99
  if (this.invalid) {
89
100
  this.setAttribute("invalid", ""), this.showValid || this.removeAttribute("valid");
90
101
  const r = this._internals.validationMessage;
@@ -93,10 +104,10 @@ const p = class p extends b {
93
104
  this.removeAttribute("invalid"), !this._pristine && this.showValid && this.setAttribute("valid", "true"), this.hint = this.getAttribute("hint") ?? "";
94
105
  }
95
106
  valueChanged() {
96
- this._internals.setFormValue(this.value), console.log("updated internals", this.$input.value), this.validateInput();
107
+ this._internals.setFormValue(this.value), this.validateInput();
97
108
  }
98
- attributeChangedCallback(s, r, a) {
99
- if (super.attributeChangedCallback(s, r, a), s === "value" && this._internals.setFormValue(a), s === "custom-invalid")
109
+ attributeChangedCallback(t, r, a) {
110
+ if (super.attributeChangedCallback(t, r, a), t === "value" && this._internals.setFormValue(a), t === "custom-invalid")
100
111
  if (typeof a == "string") {
101
112
  const l = this.withFallback(a);
102
113
  this._pristine = !1, this._internals.setValidity({ customError: !0 }, l), this.invalid = !0, this.hint = l, this.checkValidity();
@@ -105,7 +116,7 @@ const p = class p extends b {
105
116
  }
106
117
  /** @internal */
107
118
  validateInput() {
108
- if (this._internals.validity.customError) return;
119
+ if (this._internals.validity.customError || !this.$input) return;
109
120
  const r = this.$input.validity;
110
121
  if (this.invalid = !1, r.valid)
111
122
  this._internals.setValidity({ customError: this._internals.validity.customError });
@@ -113,12 +124,12 @@ const p = class p extends b {
113
124
  this.invalid = !this._pristine && !r.valid;
114
125
  let a;
115
126
  for (a in r) {
116
- const o = `data-${a.toString()}`;
117
- if (r[a] && !this.hasAttribute(o) && this.debug && console.log(
118
- `Add custom message on ${this.localName} using attribute: ${o.toUpperCase()}="Your custom message"`
127
+ const n = `data-${a.toString()}`;
128
+ if (r[a] && !this.hasAttribute(n) && this.debug && console.log(
129
+ `Add custom message on ${this.localName} using attribute: ${n.toUpperCase()}="Your custom message"`
119
130
  ), r[a]) {
120
131
  this.validationError = a.toString();
121
- const l = this.hasAttribute(o) ? this.getAttribute(o) : this.$input.validationMessage;
132
+ const l = this.hasAttribute(n) ? this.getAttribute(n) : this.$input.validationMessage;
122
133
  this._internals.setValidity(
123
134
  { [this.validationError]: !0, customError: this._internals.validity.customError },
124
135
  this.withFallback(l)
@@ -128,20 +139,20 @@ const p = class p extends b {
128
139
  }
129
140
  }
130
141
  render() {
131
- var r, a, o, l;
132
- const s = (this._defaultSlot.length === 0 || !((a = (r = this._defaultSlot[0]) == null ? void 0 : r.textContent) != null && a.trim())) && !this.label;
142
+ var r, a, n, l;
143
+ const t = (this._defaultSlot.length === 0 || !((a = (r = this._defaultSlot[0]) == null ? void 0 : r.textContent) != null && a.trim())) && !this.label;
133
144
  return h`
134
145
  <div id="root">
135
146
  <label>
136
- <div class=${this.hideLabel ? "visually-hidden" : ""} ?hidden=${s} id="label">
147
+ <div class=${this.hideLabel ? "visually-hidden" : ""} ?hidden=${t} id="label">
137
148
  <slot>${this.label}</slot>
138
149
  ${this.required ? f(this.requiredLabel) : null}
139
150
  </div>
140
151
  <div id="input">
141
152
  ${this.type === "search" ? h`<skf-icon class="skf-icon-host" name="search" size="sm"></skf-icon>` : u}
142
153
  <div
143
- data-leading=${n(this.leading)}
144
- data-trailing=${n(this.trailing)}
154
+ data-leading=${o(this.leading)}
155
+ data-trailing=${o(this.trailing)}
145
156
  id="affix"
146
157
  >
147
158
  <input
@@ -151,21 +162,20 @@ const p = class p extends b {
151
162
  .value=${w(this.value)}
152
163
  @blur=${this._onBlur}
153
164
  @input=${this._handleInput}
154
- autocomplete=${this.autocomplete}
155
- aria-describedby=${n((o = this.hint) != null && o.trim() ? "hint" : u)}
156
- aria-errormessage=${n((l = this.hint) != null && l.trim() ? "hint" : u)}
165
+ .autocomplete=${this.autocomplete}
166
+ aria-describedby=${o((n = this.hint) != null && n.trim() ? "hint" : u)}
167
+ aria-errormessage=${o((l = this.hint) != null && l.trim() ? "hint" : u)}
157
168
  aria-invalid=${!!this.invalid}
158
- autocomplete="off"
159
169
  data-testid="field-input"
160
- inputmode=${n(this.inputMode)}
161
- max=${n(this.max)}
162
- maxlength=${n(this.maxLength)}
163
- min=${n(this.min)}
164
- minlength=${n(this.minLength)}
165
- name=${n(this.name)}
166
- pattern=${n(this.pattern)}
167
- placeholder=${n(this.placeholder)}
168
- type=${n(
170
+ inputmode=${o(this.inputMode)}
171
+ max=${o(this.max)}
172
+ maxlength=${o(this.maxLength)}
173
+ min=${o(this.min)}
174
+ minlength=${o(this.minLength)}
175
+ name=${o(this.name)}
176
+ pattern=${o(this.pattern)}
177
+ placeholder=${o(this.placeholder)}
178
+ type=${o(
169
179
  this.type === "password" ? this._passwordController._type : this.type
170
180
  )}
171
181
  />
@@ -176,119 +186,122 @@ const p = class p extends b {
176
186
  </div>
177
187
  ` : u}
178
188
  ${this.type === "password" ? this._renderPasswordButton() : u}
179
- ${this.type === "search" && this.value.length > 0 ? this._renderSearchButton() : u}
189
+ ${this.type === "search" && this._value.length > 0 ? this._renderSearchButton() : u}
180
190
  </div>
181
191
  </label>
182
192
  ${this.hint && h`
183
193
  <skf-hint
184
194
  aria-live=${this.invalid ? "assertive" : "polite"}
185
195
  id="hint"
186
- severity=${n(v(this.severity, this.invalid))}
187
- >${this.customInvalid ? this.customInvalid : this.hint}
196
+ severity=${o(b(this.invalid, this.severity))}
197
+ >${this.customInvalid ?? this.hint}
188
198
  </skf-hint>
189
199
  `}
190
200
  </div>
191
201
  `;
192
202
  }
193
203
  };
194
- p.styles = [_, A];
195
- let t = p;
204
+ m.styles = [_, A];
205
+ let i = m;
206
+ e([
207
+ p()
208
+ ], i.prototype, "_value", 2);
196
209
  e([
197
- i({ type: String })
198
- ], t.prototype, "autocomplete", 2);
210
+ s()
211
+ ], i.prototype, "autocomplete", 2);
199
212
  e([
200
- i({ attribute: "button-aria-label-clear" })
201
- ], t.prototype, "buttonAriaLabelClear", 2);
213
+ s({ attribute: "button-aria-label-clear" })
214
+ ], i.prototype, "buttonAriaLabelClear", 2);
202
215
  e([
203
- i({ attribute: "button-aria-label-hide" })
204
- ], t.prototype, "buttonAriaLabelHide", 2);
216
+ s({ attribute: "button-aria-label-hide" })
217
+ ], i.prototype, "buttonAriaLabelHide", 2);
205
218
  e([
206
- i({ attribute: "button-aria-label-show" })
207
- ], t.prototype, "buttonAriaLabelShow", 2);
219
+ s({ attribute: "button-aria-label-show" })
220
+ ], i.prototype, "buttonAriaLabelShow", 2);
208
221
  e([
209
- i({ attribute: "custom-invalid", reflect: !0 })
210
- ], t.prototype, "customInvalid", 1);
222
+ s({ attribute: "custom-invalid", reflect: !0 })
223
+ ], i.prototype, "customInvalid", 1);
211
224
  e([
212
- i({ type: Boolean })
213
- ], t.prototype, "debug", 2);
225
+ s({ type: Boolean })
226
+ ], i.prototype, "debug", 2);
214
227
  e([
215
- i({ type: Boolean, attribute: "hide-label" })
216
- ], t.prototype, "hideLabel", 2);
228
+ s({ type: Boolean, attribute: "hide-label" })
229
+ ], i.prototype, "hideLabel", 2);
217
230
  e([
218
- i()
219
- ], t.prototype, "hint", 2);
231
+ s()
232
+ ], i.prototype, "hint", 2);
220
233
  e([
221
- i({ type: String })
222
- ], t.prototype, "inputmode", 2);
234
+ s()
235
+ ], i.prototype, "inputmode", 2);
223
236
  e([
224
- i()
225
- ], t.prototype, "label", 2);
237
+ s()
238
+ ], i.prototype, "label", 2);
226
239
  e([
227
- i()
228
- ], t.prototype, "leading", 2);
240
+ s()
241
+ ], i.prototype, "leading", 2);
229
242
  e([
230
- i()
231
- ], t.prototype, "max", 2);
243
+ s()
244
+ ], i.prototype, "max", 2);
232
245
  e([
233
- i({ type: Number, attribute: "maxlength" })
234
- ], t.prototype, "maxLength", 2);
246
+ s({ type: Number, attribute: "maxlength" })
247
+ ], i.prototype, "maxLength", 2);
235
248
  e([
236
- i()
237
- ], t.prototype, "min", 2);
249
+ s()
250
+ ], i.prototype, "min", 2);
238
251
  e([
239
- i({ type: Number, attribute: "minlength" })
240
- ], t.prototype, "minLength", 2);
252
+ s({ type: Number, attribute: "minlength" })
253
+ ], i.prototype, "minLength", 2);
241
254
  e([
242
- i({ reflect: !0 })
243
- ], t.prototype, "name", 2);
255
+ s({ reflect: !0 })
256
+ ], i.prototype, "name", 2);
244
257
  e([
245
- i()
246
- ], t.prototype, "pattern", 2);
258
+ s()
259
+ ], i.prototype, "pattern", 2);
247
260
  e([
248
- i()
249
- ], t.prototype, "placeholder", 2);
261
+ s()
262
+ ], i.prototype, "placeholder", 2);
250
263
  e([
251
- i({ type: Boolean })
252
- ], t.prototype, "readonly", 2);
264
+ s({ type: Boolean })
265
+ ], i.prototype, "readonly", 2);
253
266
  e([
254
- i({ attribute: "required-label" })
255
- ], t.prototype, "requiredLabel", 2);
267
+ s({ attribute: "required-label" })
268
+ ], i.prototype, "requiredLabel", 2);
256
269
  e([
257
- i({ reflect: !0 })
258
- ], t.prototype, "severity", 2);
270
+ s({ reflect: !0 })
271
+ ], i.prototype, "severity", 2);
259
272
  e([
260
- i({ type: Boolean, attribute: "show-valid" })
261
- ], t.prototype, "showValid", 2);
273
+ s({ type: Boolean, attribute: "show-valid" })
274
+ ], i.prototype, "showValid", 2);
262
275
  e([
263
- i({ reflect: !0 })
264
- ], t.prototype, "size", 2);
276
+ s({ reflect: !0 })
277
+ ], i.prototype, "size", 2);
265
278
  e([
266
- i()
267
- ], t.prototype, "trailing", 2);
279
+ s()
280
+ ], i.prototype, "trailing", 2);
268
281
  e([
269
- i()
270
- ], t.prototype, "type", 2);
282
+ s()
283
+ ], i.prototype, "type", 2);
271
284
  e([
272
- i({ type: String, attribute: "validate-on" })
273
- ], t.prototype, "validateOn", 2);
285
+ s({ attribute: "validate-on" })
286
+ ], i.prototype, "validateOn", 2);
274
287
  e([
275
- i({ reflect: !0 })
276
- ], t.prototype, "value", 2);
288
+ s({})
289
+ ], i.prototype, "value", 1);
277
290
  e([
278
- c()
279
- ], t.prototype, "invalid", 2);
291
+ p()
292
+ ], i.prototype, "invalid", 2);
280
293
  e([
281
- c()
282
- ], t.prototype, "_buttonDown", 2);
294
+ p()
295
+ ], i.prototype, "_buttonDown", 2);
283
296
  e([
284
297
  $("input")
285
- ], t.prototype, "$input", 2);
298
+ ], i.prototype, "$input", 2);
286
299
  e([
287
300
  g({ flatten: !0 })
288
- ], t.prototype, "_defaultSlot", 2);
301
+ ], i.prototype, "_defaultSlot", 2);
289
302
  e([
290
303
  y("value", { waitUntilFirstUpdate: !0, afterUpdate: !0 })
291
- ], t.prototype, "valueChanged", 1);
304
+ ], i.prototype, "valueChanged", 1);
292
305
  export {
293
- t as SkfInput
306
+ i as SkfInput
294
307
  };
@@ -1,17 +1,31 @@
1
1
  import type { Icon } from '@skf-design-system/ui-assets';
2
- import type { ReactiveController } from 'lit';
2
+ import type { ReactiveController, ReactiveControllerHost } from 'lit';
3
3
  import type { SkfInput } from './input.component.js';
4
- type InputControllerHost = SkfInput;
4
+ /**
5
+ * Workaround for storybook helper not being able to import types
6
+ * E.g type ControllerHost = SkfInput;
7
+ */
8
+ interface ControllerHostProps {
9
+ $input?: HTMLInputElement;
10
+ _internals: ElementInternals;
11
+ value: string;
12
+ validateInput: () => void;
13
+ buttonAriaLabelShow: string;
14
+ buttonAriaLabelHide: string;
15
+ _handleInput: () => void;
16
+ _manageRequired: () => void;
17
+ _setFormValue: (value: string) => void;
18
+ }
5
19
  /**
6
20
  * Number
7
21
  */
8
22
  export type IncrementDecrement = 'inc' | 'dec';
9
23
  export declare class InputNumberController implements ReactiveController {
10
- host: InputControllerHost;
24
+ host?: ReactiveControllerHost & Partial<ControllerHostProps>;
11
25
  private _longPressId?;
12
26
  private _repeaterId?;
13
27
  private _inputElement?;
14
- constructor(host: InputControllerHost);
28
+ constructor(host: ReactiveControllerHost);
15
29
  hostUpdated(): void;
16
30
  handleActionBtnClick: (_: Event, type: IncrementDecrement) => void;
17
31
  handleActionBtnLongPressStart: (e: Event) => void;
@@ -21,12 +35,12 @@ export declare class InputNumberController implements ReactiveController {
21
35
  * password
22
36
  */
23
37
  export declare class InputPasswordController implements ReactiveController {
24
- host: InputControllerHost;
38
+ host?: ReactiveControllerHost & Partial<ControllerHostProps>;
25
39
  _inputElement?: HTMLInputElement;
26
40
  _icon: Extract<Icon, 'visibility' | 'visibilityOff'>;
27
41
  _buttonAriaLabel: string;
28
42
  _type: Extract<SkfInput['type'], 'password' | 'text'>;
29
- constructor(host: InputControllerHost);
43
+ constructor(host: ReactiveControllerHost);
30
44
  hostUpdated(): void;
31
45
  handleFieldLoaded: () => void;
32
46
  toggleVisibility: () => void;
@@ -1,9 +1,9 @@
1
1
  class l {
2
2
  constructor(t) {
3
3
  this.handleActionBtnClick = (i, s) => {
4
- var n;
4
+ var h, n;
5
5
  const e = this._inputElement;
6
- e && (s === "inc" ? e.stepUp() : e.stepDown(), this.host.value = ((n = this._inputElement) == null ? void 0 : n.value) ?? "", this.host._internals.setFormValue(this.host.value), this.host.validateInput());
6
+ !e || !this.host || (s === "inc" ? e.stepUp() : e.stepDown(), this.host.value = ((h = this._inputElement) == null ? void 0 : h.value) ?? "", (n = this.host._internals) == null || n.setFormValue(this.host.value), this.host.validateInput && this.host.validateInput());
7
7
  }, this.handleActionBtnLongPressStart = (i) => {
8
8
  const s = i.target.getAttribute("aria-label") === "Increment" ? "inc" : "dec";
9
9
  this._longPressId = setTimeout(() => {
@@ -13,25 +13,29 @@ class l {
13
13
  }, 400);
14
14
  }, this.handleActionBtnLongPressEnd = () => {
15
15
  clearTimeout(this._longPressId), clearInterval(this._repeaterId);
16
- }, this.host = t, t.addController(this);
16
+ }, (this.host = t).addController(this);
17
17
  }
18
18
  hostUpdated() {
19
- this._inputElement = this.host.$input;
19
+ var t;
20
+ this._inputElement = (t = this.host) == null ? void 0 : t.$input;
20
21
  }
21
22
  }
22
- class o {
23
+ class a {
23
24
  constructor(t) {
24
25
  this._icon = "visibility", this._type = "password", this.handleFieldLoaded = () => {
25
- this._inputElement && (this.host.value = this._inputElement.value, this.host._handleInput());
26
+ var i;
27
+ !this._inputElement || !((i = this.host) != null && i._handleInput) || (this.host.value = this._inputElement.value, this.host._handleInput());
26
28
  }, this.toggleVisibility = () => {
27
- this._inputElement && (this.host._handleInput(), this._type === "text" ? (this._buttonAriaLabel = this.host.buttonAriaLabelShow, this._icon = "visibility", this._type = "password") : (this._buttonAriaLabel = this.host.buttonAriaLabelHide, this._icon = "visibilityOff", this._type = "text"), this.host.requestUpdate(), this._inputElement.value = this.host.value);
28
- }, this.host = t, t.addController(this), this._buttonAriaLabel = this.host.buttonAriaLabelShow;
29
+ var i;
30
+ !this._inputElement || !((i = this.host) != null && i._handleInput) || (this.host._handleInput(), this._type === "text" ? (this._buttonAriaLabel = this.host.buttonAriaLabelShow ?? "", this._icon = "visibility", this._type = "password") : (this._buttonAriaLabel = this.host.buttonAriaLabelHide ?? "", this._icon = "visibilityOff", this._type = "text"), this.host.requestUpdate(), this._inputElement.value = this.host.value ?? "");
31
+ }, (this.host = t).addController(this), this._buttonAriaLabel = this.host.buttonAriaLabelShow ?? "";
29
32
  }
30
33
  hostUpdated() {
31
- this._inputElement = this.host.$input;
34
+ var t;
35
+ this._inputElement = (t = this.host) == null ? void 0 : t.$input;
32
36
  }
33
37
  }
34
38
  export {
35
39
  l as InputNumberController,
36
- o as InputPasswordController
40
+ a as InputPasswordController
37
41
  };
@@ -1,13 +1,12 @@
1
- import type { SkfIcon } from '../icon/icon.component.js';
2
1
  import '../icon/icon.js';
3
2
  import { SkfElement } from '../../internal/components/skf-element.js';
3
+ import type { Icon } from '../../internal/types.js';
4
4
  import { type CSSResultGroup } from 'lit';
5
+ type SkfLinkType = HTMLButtonElement['type'];
5
6
  /**
6
7
  * The `<skf-link>` can be used as either a regular link or a link styled semantic button
7
8
  *
8
- * @documentation See [InVision DSM](https://skf.invisionapp.com/dsm/ab-skf/4-web-applications/nav/5fa7caf78c01200018354495/folder/619626129069cd5f9510528f) for design principles
9
- *
10
- * @property {function} onClick - If provided, custom function triggered by click where the second return parameter enables custom routing.
9
+ * @documentation See [zeroheight](https://zeroheight.com/****) for design principles
11
10
  *
12
11
  * @slot - The links' main content
13
12
  *
@@ -16,24 +15,25 @@ import { type CSSResultGroup } from 'lit';
16
15
  export declare class SkfLink extends SkfElement {
17
16
  static styles: CSSResultGroup;
18
17
  static classMap: {};
18
+ /** @internal */
19
19
  private _onClick?;
20
20
  /** Defines the semantic element to render */
21
21
  as: 'button' | 'a';
22
22
  /** Defines the text-color */
23
23
  color: 'primary' | 'inverse';
24
24
  /** If true, disables the link */
25
- disabled?: boolean;
25
+ disabled: boolean;
26
26
  /** If defined, downloads the url */
27
27
  download?: string;
28
28
  /** If defined, loads url on click */
29
29
  href?: string;
30
- /**
31
- * If defined, renders an icon before or after the text
32
- * @type { "arrowDown" | "arrowDownUp" | "arrowLeft" | "arrowRight" | "arrowUp" | "article" | "artificialIntelligence" | "asset" | "attachment" | "bandCursor" | "bands" | "batteryEmpty" | "batteryFull" | "batteryLow" | "bearingFault" | "book" | "bulb" | "burger" | "cPM" | "calendar" | "calendarBooked" | "calendarEmpty" | "calendarNotBooked" | "calendarRecurring" | "caretDown" | "caretUp" | "caretUpDown" | "chat" | "check" | "checkCircle" | "checkSmall" | "chevronDown" | "chevronLeft" | "chevronRight" | "chevronUp" | "chevronUpDown" | "close" | "closeAllFaults" | "closeFault" | "closeSmall" | "columnGraph" | "comment" | "connection1" | "connection2" | "connection3" | "connection4" | "danger" | "defectFrequencies" | "defectFrequenciesAlternative" | "doubleChevronLeft" | "doubleChevronRight" | "download" | "draft" | "draftFilled" | "draftOutlined" | "dragNDrop" | "drop" | "duplicate" | "edit" | "emailFilled" | "emailOutlined" | "exclamation" | "eye" | "eyeHidden" | "eyeVisible" | "filter" | "forbidden" | "fullScreen" | "fullScreenExit" | "functionalLocation" | "harmonicCursor" | "heatmap" | "hierarchy" | "history" | "historyAlt" | "hourglassFramedFilled" | "hourglassFramedOutlined" | "hourglassOutlined" | "hz" | "iMX" | "image" | "infoCircleFilled" | "infoCircleOutlined" | "integration" | "kebab" | "link" | "listGroup" | "listItem" | "locationPin" | "lock" | "logOut" | "meatballs" | "microphone" | "minus" | "minusSmall" | "noData" | "o" | "openInNew" | "overlayBaseline" | "pDF" | "paper" | "pause" | "pieChart" | "pin" | "play" | "plus" | "powerOff" | "printer" | "proCollect" | "recAction" | "received" | "refresh" | "reorder" | "replace" | "reply" | "rewalkableRoute" | "routes" | "search" | "send" | "sensorA" | "sensorB" | "settings" | "sidebandCursor" | "singleCursor" | "spectrum" | "starFilled" | "starOutlined" | "statusCircle" | "stop" | "structuralVibration" | "sync" | "timewave" | "trash" | "trend" | "trendingUp" | "undo" | "unknownCircle" | "unknownDiamond" | "unlink" | "unlock" | "unscheduledAction" | "upload" | "user" | "viewFull" | "viewHorizontal" | "viewVertical" | "warning" | "warningCircle" | "warningDiamond" | "zoomIn" | "zoomOut" }
33
- */
34
- icon?: SkfIcon['name'];
30
+ /** If defined, renders an icon before or after the text */
31
+ icon?: Icon;
35
32
  /** Defines the position of the icon in relation to the text */
36
33
  iconPlacement: 'left' | 'right';
34
+ /** If defined, accepts a function that runs on click. Forwards optional route as second argument. */
35
+ set onClick(onClickFn: ((event: Event, route?: string) => void) | undefined);
36
+ get onClick(): ((event: Event, route?: string) => void) | undefined;
37
37
  /** If defined, describes the relationship between a linked resource and the current document */
38
38
  rel?: string;
39
39
  /** If defined, used on conjunction with onClick property, second argument */
@@ -43,10 +43,7 @@ export declare class SkfLink extends SkfElement {
43
43
  /** If defined, specifies where to open the linked document */
44
44
  target?: '_blank' | '_parent' | '_self' | '_top';
45
45
  /** Defines the type of button */
46
- type: 'button' | 'submit' | 'reset';
47
- /** If defined, accepts a function that runs on click. Forwards optional route as second argument. */
48
- set onClick(onClickFn: ((event: Event, route?: string) => void) | undefined);
49
- get onClick(): ((event: Event, route?: string) => void) | undefined;
46
+ type: SkfLinkType;
50
47
  connectedCallback(): void;
51
48
  /** @internal */
52
49
  private _assertValidOnClick;
@@ -57,3 +54,4 @@ export declare class SkfLink extends SkfElement {
57
54
  private _renderIcon;
58
55
  render(): import("lit").TemplateResult;
59
56
  }
57
+ export {};