@knime/kds-components 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/dist/accessories/Avatar/KdsAvatar.vue.d.ts +1 -1
  2. package/dist/accessories/Avatar/index.d.ts +3 -0
  3. package/dist/accessories/Avatar/index.d.ts.map +1 -0
  4. package/dist/accessories/ColorSwatch/enums.d.ts +11 -0
  5. package/dist/accessories/ColorSwatch/enums.d.ts.map +1 -0
  6. package/dist/accessories/ColorSwatch/index.d.ts +4 -0
  7. package/dist/accessories/ColorSwatch/index.d.ts.map +1 -0
  8. package/dist/accessories/ColorSwatch/types.d.ts +4 -3
  9. package/dist/accessories/ColorSwatch/types.d.ts.map +1 -1
  10. package/dist/accessories/Icon/enums.d.ts +19 -0
  11. package/dist/accessories/Icon/enums.d.ts.map +1 -0
  12. package/dist/accessories/Icon/index.d.ts +5 -0
  13. package/dist/accessories/Icon/index.d.ts.map +1 -0
  14. package/dist/accessories/Icon/types.d.ts +5 -6
  15. package/dist/accessories/Icon/types.d.ts.map +1 -1
  16. package/dist/accessories/LiveStatus/KdsLiveStatus.vue.d.ts +9 -0
  17. package/dist/accessories/LiveStatus/KdsLiveStatus.vue.d.ts.map +1 -0
  18. package/dist/accessories/LiveStatus/enums.d.ts +14 -0
  19. package/dist/accessories/LiveStatus/enums.d.ts.map +1 -0
  20. package/dist/accessories/LiveStatus/index.d.ts +4 -0
  21. package/dist/accessories/LiveStatus/index.d.ts.map +1 -0
  22. package/dist/accessories/LiveStatus/types.d.ts +23 -0
  23. package/dist/accessories/LiveStatus/types.d.ts.map +1 -0
  24. package/dist/accessories/LoadingSpinner/enums.d.ts +6 -0
  25. package/dist/accessories/LoadingSpinner/enums.d.ts.map +1 -0
  26. package/dist/accessories/LoadingSpinner/index.d.ts +4 -0
  27. package/dist/accessories/LoadingSpinner/index.d.ts.map +1 -0
  28. package/dist/accessories/LoadingSpinner/types.d.ts +3 -2
  29. package/dist/accessories/LoadingSpinner/types.d.ts.map +1 -1
  30. package/dist/accessories/index.d.ts +10 -9
  31. package/dist/accessories/index.d.ts.map +1 -1
  32. package/dist/buttons/KdsButton/KdsButton.vue.d.ts.map +1 -0
  33. package/dist/buttons/KdsButton/index.d.ts +3 -0
  34. package/dist/buttons/KdsButton/index.d.ts.map +1 -0
  35. package/dist/buttons/KdsButton/types.d.ts +40 -0
  36. package/dist/buttons/KdsButton/types.d.ts.map +1 -0
  37. package/dist/buttons/KdsInfoToggleButton/KdsInfoToggleButton.vue.d.ts.map +1 -0
  38. package/dist/buttons/KdsInfoToggleButton/index.d.ts +3 -0
  39. package/dist/buttons/KdsInfoToggleButton/index.d.ts.map +1 -0
  40. package/dist/buttons/KdsInfoToggleButton/types.d.ts +8 -0
  41. package/dist/buttons/KdsInfoToggleButton/types.d.ts.map +1 -0
  42. package/dist/buttons/KdsLinkButton/KdsLinkButton.vue.d.ts.map +1 -0
  43. package/dist/buttons/KdsLinkButton/index.d.ts +3 -0
  44. package/dist/buttons/KdsLinkButton/index.d.ts.map +1 -0
  45. package/dist/buttons/KdsLinkButton/types.d.ts +42 -0
  46. package/dist/buttons/KdsLinkButton/types.d.ts.map +1 -0
  47. package/dist/buttons/KdsProgressButton/KdsProgressButton.vue.d.ts.map +1 -0
  48. package/dist/buttons/KdsProgressButton/enums.d.ts +8 -0
  49. package/dist/buttons/KdsProgressButton/enums.d.ts.map +1 -0
  50. package/dist/buttons/KdsProgressButton/index.d.ts +4 -0
  51. package/dist/buttons/KdsProgressButton/index.d.ts.map +1 -0
  52. package/dist/buttons/KdsProgressButton/types.d.ts +17 -0
  53. package/dist/buttons/KdsProgressButton/types.d.ts.map +1 -0
  54. package/dist/buttons/KdsToggleButton/KdsToggleButton.vue.d.ts.map +1 -0
  55. package/dist/buttons/KdsToggleButton/enums.d.ts +6 -0
  56. package/dist/buttons/KdsToggleButton/enums.d.ts.map +1 -0
  57. package/dist/buttons/KdsToggleButton/index.d.ts +4 -0
  58. package/dist/buttons/KdsToggleButton/index.d.ts.map +1 -0
  59. package/dist/buttons/KdsToggleButton/types.d.ts +5 -0
  60. package/dist/buttons/KdsToggleButton/types.d.ts.map +1 -0
  61. package/dist/buttons/{KdsVariableToggleButton.vue.d.ts → KdsVariableToggleButton/KdsVariableToggleButton.vue.d.ts} +1 -1
  62. package/dist/buttons/KdsVariableToggleButton/KdsVariableToggleButton.vue.d.ts.map +1 -0
  63. package/dist/buttons/KdsVariableToggleButton/index.d.ts +3 -0
  64. package/dist/buttons/KdsVariableToggleButton/index.d.ts.map +1 -0
  65. package/dist/buttons/KdsVariableToggleButton/types.d.ts +16 -0
  66. package/dist/buttons/KdsVariableToggleButton/types.d.ts.map +1 -0
  67. package/dist/buttons/enums.d.ts +14 -0
  68. package/dist/buttons/enums.d.ts.map +1 -0
  69. package/dist/buttons/index.d.ts +14 -7
  70. package/dist/buttons/index.d.ts.map +1 -1
  71. package/dist/buttons/types.d.ts +9 -151
  72. package/dist/buttons/types.d.ts.map +1 -1
  73. package/dist/forms/Checkbox/enums.d.ts +12 -0
  74. package/dist/forms/Checkbox/enums.d.ts.map +1 -0
  75. package/dist/forms/Checkbox/index.d.ts +5 -0
  76. package/dist/forms/Checkbox/index.d.ts.map +1 -0
  77. package/dist/forms/Checkbox/types.d.ts +3 -2
  78. package/dist/forms/Checkbox/types.d.ts.map +1 -1
  79. package/dist/forms/KdsLabel.vue.d.ts.map +1 -1
  80. package/dist/forms/RadioButton/KdsRadioButtonGroup.vue.d.ts.map +1 -1
  81. package/dist/forms/RadioButton/KdsValueSwitch.vue.d.ts.map +1 -1
  82. package/dist/forms/RadioButton/ValueSwitchItem.vue.d.ts.map +1 -1
  83. package/dist/forms/RadioButton/enums.d.ts +16 -0
  84. package/dist/forms/RadioButton/enums.d.ts.map +1 -0
  85. package/dist/forms/RadioButton/index.d.ts +6 -0
  86. package/dist/forms/RadioButton/index.d.ts.map +1 -0
  87. package/dist/forms/RadioButton/types.d.ts +4 -3
  88. package/dist/forms/RadioButton/types.d.ts.map +1 -1
  89. package/dist/forms/index.d.ts +7 -12
  90. package/dist/forms/index.d.ts.map +1 -1
  91. package/dist/forms/inputs/BaseInput.vue.d.ts +6 -6
  92. package/dist/forms/inputs/BaseInput.vue.d.ts.map +1 -1
  93. package/dist/forms/inputs/NumberInput/KdsNumberInput.vue.d.ts.map +1 -1
  94. package/dist/forms/inputs/NumberInput/index.d.ts +2 -0
  95. package/dist/forms/inputs/NumberInput/index.d.ts.map +1 -0
  96. package/dist/forms/inputs/PatternInput/index.d.ts +2 -0
  97. package/dist/forms/inputs/PatternInput/index.d.ts.map +1 -0
  98. package/dist/forms/inputs/SearchInput/KdsSearchInput.vue.d.ts.map +1 -1
  99. package/dist/forms/inputs/SearchInput/index.d.ts +2 -0
  100. package/dist/forms/inputs/SearchInput/index.d.ts.map +1 -0
  101. package/dist/forms/inputs/TextInput/index.d.ts +2 -0
  102. package/dist/forms/inputs/TextInput/index.d.ts.map +1 -0
  103. package/dist/forms/inputs/Textarea/KdsTextarea.vue.d.ts.map +1 -1
  104. package/dist/forms/inputs/Textarea/index.d.ts +2 -0
  105. package/dist/forms/inputs/Textarea/index.d.ts.map +1 -0
  106. package/dist/forms/inputs/index.d.ts +7 -0
  107. package/dist/forms/inputs/index.d.ts.map +1 -0
  108. package/dist/index.css +595 -417
  109. package/dist/index.d.ts +2 -2
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +1199 -799
  112. package/dist/index.js.map +1 -1
  113. package/dist/overlays/Modal/KdsModal.vue.d.ts +6 -6
  114. package/dist/overlays/Modal/KdsModalLayout.vue.d.ts +1 -1
  115. package/dist/overlays/Modal/enums.d.ts +41 -0
  116. package/dist/overlays/Modal/enums.d.ts.map +1 -0
  117. package/dist/overlays/Modal/index.d.ts +7 -0
  118. package/dist/overlays/Modal/index.d.ts.map +1 -0
  119. package/dist/overlays/Modal/types.d.ts +9 -17
  120. package/dist/overlays/Modal/types.d.ts.map +1 -1
  121. package/dist/overlays/Modal/useKdsDynamicModal.d.ts +16 -16
  122. package/dist/overlays/Popover/KdsPopover.vue.d.ts.map +1 -1
  123. package/dist/overlays/Popover/enums.d.ts +8 -0
  124. package/dist/overlays/Popover/enums.d.ts.map +1 -0
  125. package/dist/overlays/Popover/index.d.ts +4 -0
  126. package/dist/overlays/Popover/index.d.ts.map +1 -0
  127. package/dist/overlays/Popover/types.d.ts +2 -2
  128. package/dist/overlays/Popover/types.d.ts.map +1 -1
  129. package/dist/overlays/index.d.ts +4 -7
  130. package/dist/overlays/index.d.ts.map +1 -1
  131. package/dist/structures/Card/KdsCard.vue.d.ts +60 -0
  132. package/dist/structures/Card/KdsCard.vue.d.ts.map +1 -0
  133. package/dist/structures/Card/enums.d.ts +7 -0
  134. package/dist/structures/Card/enums.d.ts.map +1 -0
  135. package/dist/structures/Card/index.d.ts +4 -0
  136. package/dist/structures/Card/index.d.ts.map +1 -0
  137. package/dist/structures/Card/types.d.ts +69 -0
  138. package/dist/structures/Card/types.d.ts.map +1 -0
  139. package/dist/structures/EmptyState/KdsEmptyState.vue.d.ts +145 -0
  140. package/dist/structures/EmptyState/KdsEmptyState.vue.d.ts.map +1 -0
  141. package/dist/structures/EmptyState/types.d.ts +11 -0
  142. package/dist/structures/EmptyState/types.d.ts.map +1 -0
  143. package/dist/structures/index.d.ts +5 -0
  144. package/dist/structures/index.d.ts.map +1 -0
  145. package/dist/util/enums.d.ts +7 -0
  146. package/dist/util/enums.d.ts.map +1 -0
  147. package/dist/util/index.d.ts +1 -0
  148. package/dist/util/index.d.ts.map +1 -1
  149. package/dist/util/useKdsDarkMode.d.ts +2 -1
  150. package/dist/util/useKdsDarkMode.d.ts.map +1 -1
  151. package/package.json +3 -3
  152. package/dist/EmptyState/KdsEmptyState.vue.d.ts +0 -165
  153. package/dist/EmptyState/KdsEmptyState.vue.d.ts.map +0 -1
  154. package/dist/EmptyState/types.d.ts +0 -11
  155. package/dist/EmptyState/types.d.ts.map +0 -1
  156. package/dist/accessories/Icon/constants.d.ts +0 -6
  157. package/dist/accessories/Icon/constants.d.ts.map +0 -1
  158. package/dist/buttons/KdsButton.vue.d.ts.map +0 -1
  159. package/dist/buttons/KdsInfoToggleButton.vue.d.ts.map +0 -1
  160. package/dist/buttons/KdsLinkButton.vue.d.ts.map +0 -1
  161. package/dist/buttons/KdsProgressButton.vue.d.ts.map +0 -1
  162. package/dist/buttons/KdsToggleButton.vue.d.ts.map +0 -1
  163. package/dist/buttons/KdsVariableToggleButton.vue.d.ts.map +0 -1
  164. package/dist/buttons/constants.d.ts +0 -3
  165. package/dist/buttons/constants.d.ts.map +0 -1
  166. package/dist/constants.d.ts +0 -2
  167. package/dist/constants.d.ts.map +0 -1
  168. package/dist/overlays/Modal/constants.d.ts +0 -21
  169. package/dist/overlays/Modal/constants.d.ts.map +0 -1
  170. package/dist/overlays/Popover/constants.d.ts +0 -2
  171. package/dist/overlays/Popover/constants.d.ts.map +0 -1
  172. package/dist/types.d.ts +0 -3
  173. package/dist/types.d.ts.map +0 -1
  174. /package/dist/buttons/{KdsButton.vue.d.ts → KdsButton/KdsButton.vue.d.ts} +0 -0
  175. /package/dist/buttons/{KdsInfoToggleButton.vue.d.ts → KdsInfoToggleButton/KdsInfoToggleButton.vue.d.ts} +0 -0
  176. /package/dist/buttons/{KdsLinkButton.vue.d.ts → KdsLinkButton/KdsLinkButton.vue.d.ts} +0 -0
  177. /package/dist/buttons/{KdsProgressButton.vue.d.ts → KdsProgressButton/KdsProgressButton.vue.d.ts} +0 -0
  178. /package/dist/buttons/{KdsToggleButton.vue.d.ts → KdsToggleButton/KdsToggleButton.vue.d.ts} +0 -0
package/dist/index.js CHANGED
@@ -1,339 +1,75 @@
1
- import { shallowRef, watch, defineComponent, toRef, createBlock, createElementBlock, unref, openBlock, resolveDynamicComponent, normalizeClass, computed, withCtx, renderSlot, createCommentVNode, toDisplayString, mergeProps, h, useSlots, getCurrentInstance, createElementVNode, normalizeStyle, ref, mergeModels, useModel, createVNode, useId, Fragment, renderList, onBeforeUpdate, nextTick, withModifiers, normalizeProps, guardReactiveProps, withDirectives, vModelText, mergeDefaults, useCssVars, useTemplateRef, createSlots, onBeforeUnmount } from 'vue';
2
- import { isDefined, useLocalStorage, useDark, usePreferredDark, useResizeObserver, useElementSize } from '@vueuse/core';
1
+ import { defineComponent, ref, watch, computed, createElementBlock, openBlock, createElementVNode, toDisplayString, normalizeStyle, shallowRef, toRef, createBlock, unref, resolveDynamicComponent, normalizeClass, createCommentVNode, withCtx, renderSlot, mergeProps, h, useSlots, getCurrentInstance, mergeModels, useModel, createVNode, useTemplateRef, useId, Fragment, renderList, onBeforeUpdate, nextTick, withModifiers, normalizeProps, guardReactiveProps, withDirectives, vModelText, mergeDefaults, useCssVars, createSlots, onBeforeUnmount, withKeys } from 'vue';
2
+ import { useLocalStorage, useDark, usePreferredDark, useResizeObserver, useElementSize, isDefined } from '@vueuse/core';
3
3
 
4
- import './index.css';const __variableDynamicImportRuntimeHelper = (glob$1, path$13, segs) => {
5
- const v = glob$1[path$13];
6
- if (v) return typeof v === "function" ? v() : Promise.resolve(v);
7
- return new Promise((_, reject) => {
8
- (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(reject.bind(null, /* @__PURE__ */ new Error("Unknown variable dynamic import: " + path$13 + (path$13.split("/").length !== segs ? ". Note that variables only represent file names one level deep." : ""))));
9
- });
10
- };
11
-
12
- const useIcon = ({
13
- name,
14
- folder
15
- }) => {
16
- const iconCache = /* @__PURE__ */ new Map();
17
- const iconComponent = shallowRef(null);
18
- watch(
19
- () => name.value,
20
- async (newName) => {
21
- if (iconCache.has(newName)) {
22
- iconComponent.value = iconCache.get(newName);
23
- return;
24
- }
25
- try {
26
- const module = await __variableDynamicImportRuntimeHelper((/* #__PURE__ */ Object.assign({"../../../node_modules/@knime/kds-styles/dist/img/icons/add-user.svg": () => import('./add-user-CKh821Ew.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/ai-general.svg": () => import('./ai-general-BLr5A_aB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/annotation-mode.svg": () => import('./annotation-mode-Bjz8Qppm.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrow-down.svg": () => import('./arrow-down-bUAuaj-3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrow-up.svg": () => import('./arrow-up-DijAlYdp.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrows-expand.svg": () => import('./arrows-expand-CnIMh7ew.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrows-move.svg": () => import('./arrows-move-CffWTJnH.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrows-order.svg": () => import('./arrows-order-BqV36RNU.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/back.svg": () => import('./back-Z2SKFWyw.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/bold.svg": () => import('./bold-DpdJk_QB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/calendar.svg": () => import('./calendar-CXPcZjcq.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/case-sensitive.svg": () => import('./case-sensitive-CuFLLxLY.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/center-aligned.svg": () => import('./center-aligned-DmzJR-NU.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/checkmark.svg": () => import('./checkmark-CZPkBFNO.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-down.svg": () => import('./chevron-down-DNWYMX6r.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-left-double.svg": () => import('./chevron-left-double-BXvJmoi2.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-left.svg": () => import('./chevron-left-o-UW2wMT.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-right-double.svg": () => import('./chevron-right-double-DfHg2w84.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-right.svg": () => import('./chevron-right-B24wRG6X.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-up.svg": () => import('./chevron-up-D1Rj9v1I.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-error.svg": () => import('./circle-error-BKcmt7Jv.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-info.svg": () => import('./circle-info-UvZ8z7Uk.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-question.svg": () => import('./circle-question-C49esbF6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-success.svg": () => import('./circle-success-Deiv-aEI.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-download.svg": () => import('./cloud-download-D3Swor59.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-knime.svg": () => import('./cloud-knime-Ck0CYEpC.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-pending-changes.svg": () => import('./cloud-pending-changes-BooMof3w.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-synced.svg": () => import('./cloud-synced-BLkZpZpi.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-upload.svg": () => import('./cloud-upload-1cKBYCE_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-workflow.svg": () => import('./cloud-workflow-bbXOzeON.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/code-block.svg": () => import('./code-block-DxROkcSh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/color-picker.svg": () => import('./color-picker-DKT2VkYj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/comment.svg": () => import('./comment-_ajO8mxh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/component.svg": () => import('./component-xJ6doeqN.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/connection.svg": () => import('./connection-CPQhki0y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/copy.svg": () => import('./copy-D_dQ00WJ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cursor.svg": () => import('./cursor-CWY-Sqb_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/data-app.svg": () => import('./data-app-wBNobXat.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/data-value-view.svg": () => import('./data-value-view-C07X6BM3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/date-time.svg": () => import('./date-time-D2BP5E5r.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-database.svg": () => import('./db-database-DxsIVO4X.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-schema.svg": () => import('./db-schema-Bv0_IT9E.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-table-view.svg": () => import('./db-table-view-B0xGvbnv.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-table.svg": () => import('./db-table-B7h4pOv1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/deploy.svg": () => import('./deploy-D2iGlU6g.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/detect.svg": () => import('./detect-Bsk4HlM_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/divider.svg": () => import('./divider-Syv30InM.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/duration.svg": () => import('./duration-DaP7U33c.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/edit.svg": () => import('./edit-Bo5vgzi3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/education.svg": () => import('./education-B3hKB2rv.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/error-panel.svg": () => import('./error-panel-CTRd3uUe.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/execute-all.svg": () => import('./execute-all-Cd4o8ar9.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/execute.svg": () => import('./execute-CaiPLywW.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/expand-panel.svg": () => import('./expand-panel-DOMlQ0h4.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/extension-community.svg": () => import('./extension-community-Dbck6In6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/extension.svg": () => import('./extension-0bpmRL2f.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/external-link.svg": () => import('./external-link-Da9nbkS3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/eye.svg": () => import('./eye-BaEvu1WZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/file-export.svg": () => import('./file-export-Cg1pIaBd.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/file-text.svg": () => import('./file-text-C64HMtpY.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/file.svg": () => import('./file-Pkm1PSyQ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/filter.svg": () => import('./filter-C91sigZW.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-default.svg": () => import('./flow-variable-default-DvWtfW9d.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-in-out.svg": () => import('./flow-variable-in-out-BnxZMi1-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-in.svg": () => import('./flow-variable-in-C30aVoZ6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-out.svg": () => import('./flow-variable-out-CSpUvaoJ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/folder-plus.svg": () => import('./folder-plus-DU8k1EXL.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/folder-workflow.svg": () => import('./folder-workflow-DjPcer5V.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/folder.svg": () => import('./folder-CbSKJZv-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/forum.svg": () => import('./forum-EjZCrpeY.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/function-catalog.svg": () => import('./function-catalog-BtaFW_Ag.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/home.svg": () => import('./home-iE7RmW5y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/import.svg": () => import('./import-B57fag-w.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/info.svg": () => import('./info-Ct2oj9rt.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/interval.svg": () => import('./interval-DdbkHCkr.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/italic.svg": () => import('./italic-D-X25dao.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/key.svg": () => import('./key-BVmvoGXA.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/layout-editor.svg": () => import('./layout-editor-CrJYLsDK.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/left-aligned.svg": () => import('./left-aligned-BbOktUi8.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/like.svg": () => import('./like-PH-Btifn.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/limit.svg": () => import('./limit-DhWVMRX6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/link.svg": () => import('./link-UgkqQsRt.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/linked-metanode.svg": () => import('./linked-metanode-HsMQlCgq.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list-bulletpoint.svg": () => import('./list-bulletpoint-BVaXqx4f.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list-number.svg": () => import('./list-number-CNqcTLYo.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list-thumbs.svg": () => import('./list-thumbs-M7r_75-H.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list.svg": () => import('./list-Byrs5aZs.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/local-filesystem.svg": () => import('./local-filesystem-hArfE0_N.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/lock.svg": () => import('./lock-C0pCLYaC.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/metanode.svg": () => import('./metanode-Cl_lQPOl.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/mini-map.svg": () => import('./mini-map-ivG9u5W4.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/minimize-dialog.svg": () => import('./minimize-dialog-CWg57-1w.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/minimize-side-panel.svg": () => import('./minimize-side-panel-Brx7aXNg.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/minus.svg": () => import('./minus-Bl_XdZTq.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/more-actions.svg": () => import('./more-actions-CUQHQnhr.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/node-stack.svg": () => import('./node-stack-BIw49e13.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/nodes-align-horiz.svg": () => import('./nodes-align-horiz-Bxl0AKfj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/nodes-align-vert.svg": () => import('./nodes-align-vert-D8h7LLpV.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/open-in-new-window.svg": () => import('./open-in-new-window-zf7vlHFV.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/pan-mode.svg": () => import('./pan-mode-DqMDNpGh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/parameter.svg": () => import('./parameter-BwgLWZ40.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/pending-changes.svg": () => import('./pending-changes-CYs0jWRx.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/placeholder.svg": () => import('./placeholder-6jSUL5uH.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/plus.svg": () => import('./plus-Cj7d9fzE.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/quote.svg": () => import('./quote-B_HXPGC-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/re-execution.svg": () => import('./re-execution-C4Ssn4oh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/redo.svg": () => import('./redo-DvRm89Y1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/regex.svg": () => import('./regex-v3KtSGhe.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/reload.svg": () => import('./reload-aBy3xEuk.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/rename.svg": () => import('./rename-CR6_WgYs.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/replace.svg": () => import('./replace-D6ui4Ubg.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/reset-all.svg": () => import('./reset-all-D3A6ORrn.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/resume-execution.svg": () => import('./resume-execution--1RD1SK-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/right-aligned.svg": () => import('./right-aligned-BQuVIUi8.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/rocket.svg": () => import('./rocket-CcUk0w4I.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/save-as.svg": () => import('./save-as-lIdGETry.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/save.svg": () => import('./save-BTSBDcKz.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/schedule.svg": () => import('./schedule-CuWWu-oZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/search.svg": () => import('./search-Bzzp4jaj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/secret-store.svg": () => import('./secret-store-CtLqpWMg.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/selected-cancel.svg": () => import('./selected-cancel-yt7eew8_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/selected-execution.svg": () => import('./selected-execution-Dt9jKAcj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/selected-reset.svg": () => import('./selected-reset-DlGgo4-Y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/send.svg": () => import('./send-C9YzInMZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/server-rack-workflow.svg": () => import('./server-rack-workflow-dCwu7vTW.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/service.svg": () => import('./service-BT3SUkgO.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/settings.svg": () => import('./settings-CGgJkEgj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/share.svg": () => import('./share-BdSOCq4T.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/shortcuts.svg": () => import('./shortcuts-Bu3KkyH3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/sort-ascending.svg": () => import('./sort-ascending-wLoBiuk_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/sort-descending.svg": () => import('./sort-descending-DZiglaz4.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/space-local.svg": () => import('./space-local-Df_W3Vix.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/space-private.svg": () => import('./space-private-BcygS3TM.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/space.svg": () => import('./space-hkXDtlC1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/stepwise-execution.svg": () => import('./stepwise-execution-DNdkTRdo.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/strikethrough.svg": () => import('./strikethrough-DaE8BLGf.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/team.svg": () => import('./team-D1-xShh0.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/text.svg": () => import('./text-DMmr6LRp.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/textstyles.svg": () => import('./textstyles-DHJzC-et.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/thumbs-down.svg": () => import('./thumbs-down-xRvAE_oG.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/thumbs-up.svg": () => import('./thumbs-up-9YwRlf60.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/time.svg": () => import('./time-Tei7g5mN.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/to-bottom.svg": () => import('./to-bottom-1s_2X-cB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/to-top.svg": () => import('./to-top-CtkBPtAa.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/trash.svg": () => import('./trash-CXGtMBy1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/trigger.svg": () => import('./trigger-wL8HC16Y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/underline.svg": () => import('./underline-B6XEgMkQ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/undo.svg": () => import('./undo-DaXvDNyj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/unlink.svg": () => import('./unlink-BY0X0cix.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/user.svg": () => import('./user-df6HsMaZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/version.svg": () => import('./version-B-5dHgvX.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/view-cards.svg": () => import('./view-cards-BTGqIH1C.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/warning.svg": () => import('./warning-BEoXGKC2.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/workflow.svg": () => import('./workflow-B6CQgLEB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/x-close.svg": () => import('./x-close-BU1wJ08h.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/audio-datatype.svg": () => import('./audio-datatype-BqJYr0fU.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/binary-object-datatype.svg": () => import('./binary-object-datatype-Du-zhxKy.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/bit-byte-vector-datatype.svg": () => import('./bit-byte-vector-datatype-DRoDVhzx.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/boolean-datatype.svg": () => import('./boolean-datatype-BLejL9wT.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/collection-list-datatype.svg": () => import('./collection-list-datatype-tv5ebdN1.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/collection-set-datatype.svg": () => import('./collection-set-datatype-BmEIjJCx.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/date-datatype.svg": () => import('./date-datatype-CbrXJIDR.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/date-time-local-datatype.svg": () => import('./date-time-local-datatype-Dn57eC5p.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/date-time-zoned-datatype.svg": () => import('./date-time-zoned-datatype-BC0SFQAD.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/default-extension-datatype.svg": () => import('./default-extension-datatype-EJXM_Ybz.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/document-datatype.svg": () => import('./document-datatype-BSz1qTHq.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/duration-date-based-datatype.svg": () => import('./duration-date-based-datatype-D6prx57n.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/duration-time-based-datatype.svg": () => import('./duration-time-based-datatype-4Ik-Vr8Q.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/geo-datatype.svg": () => import('./geo-datatype-CFu0R3vj.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/helm-datatype.svg": () => import('./helm-datatype-BWAUZ-Tt.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/image-png-datatype.svg": () => import('./image-png-datatype-XLrsdl_K.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/image-svg-datatype.svg": () => import('./image-svg-datatype-Sc-uI6FI.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/json-datatype.svg": () => import('./json-datatype-CK5bFgQy.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/labeling-datatype.svg": () => import('./labeling-datatype-DubVeYXo.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/linear-notation-molecule.svg": () => import('./linear-notation-molecule-B9JUyQef.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/message-datatype.svg": () => import('./message-datatype-BMeR1nv4.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/microscope.svg": () => import('./microscope-Cr49onew.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/model-pmml-datatype.svg": () => import('./model-pmml-datatype-IGnc5zXz.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/molecule.svg": () => import('./molecule-C9PFhX46.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/number-double-datatype.svg": () => import('./number-double-datatype-iI23azce.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/number-double-vector-datatype.svg": () => import('./number-double-vector-datatype-BtktW2zE.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/number-integer-datatype.svg": () => import('./number-integer-datatype-ncI7X7Aw.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/path-datatype.svg": () => import('./path-datatype-UYcAhyjv.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/string-datatype.svg": () => import('./string-datatype-BFdqZnvv.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/string-vector-datatype.svg": () => import('./string-vector-datatype-QXJ-Dq9M.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/subgraph-datatype.svg": () => import('./subgraph-datatype-BHUfkFAl.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/term-datatype.svg": () => import('./term-datatype-fRf65x34.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/test-tube.svg": () => import('./test-tube-dmblmo83.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/time-datatype.svg": () => import('./time-datatype-Dx_gZrr5.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/tool-datatype.svg": () => import('./tool-datatype-CscnJaLg.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/unknown-datatype.svg": () => import('./unknown-datatype-HVRhR0XQ.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/uri-datatype.svg": () => import('./uri-datatype-COo2A9Ig.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-boolean.svg": () => import('./variable-boolean-Del5rqMV.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-boolean.svg": () => import('./variable-collection-boolean-ClvKyQes.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-double.svg": () => import('./variable-collection-double-D9bZO46e.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-integer.svg": () => import('./variable-collection-integer-Bz4v0C4x.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-string.svg": () => import('./variable-collection-string-2mgywfSS.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-conda-environment.svg": () => import('./variable-conda-environment-Hrl_-hfW.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-credential.svg": () => import('./variable-credential-D_kLfXY5.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-integer.svg": () => import('./variable-integer-5fC6qM5I.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-number-double.svg": () => import('./variable-number-double-DwTKGyps.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-path.svg": () => import('./variable-path-DTYcIIg9.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-string.svg": () => import('./variable-string-BVXOfIgy.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-unknown.svg": () => import('./variable-unknown-DLlsEO5w.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/xml-datatype.svg": () => import('./xml-datatype-BymvkSrS.js')})), `../../../node_modules/@knime/kds-styles/dist/img/${folder}/${newName}.svg`, 10);
27
- iconCache.set(newName, module.default);
28
- iconComponent.value = module.default;
29
- } catch (_error) {
30
- iconComponent.value = null;
31
- }
32
- },
33
- { immediate: true }
34
- );
35
- return iconComponent;
4
+ import './index.css';const _hoisted_1$p = ["role", "title", "aria-hidden", "aria-label"];
5
+ const _hoisted_2$9 = ["src"];
6
+ const _hoisted_3$6 = {
7
+ key: 1,
8
+ class: "kds-avatar-initials",
9
+ "aria-hidden": "true"
36
10
  };
37
-
38
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
39
- __name: "KdsIcon",
11
+ const _sfc_main$y = /* @__PURE__ */ defineComponent({
12
+ __name: "KdsAvatar",
40
13
  props: {
41
- name: {},
42
- size: { default: "medium" }
14
+ initials: {},
15
+ src: { default: void 0 },
16
+ title: { default: void 0 }
43
17
  },
44
18
  setup(__props) {
45
19
  const props = __props;
46
- const iconComponent = useIcon({ name: toRef(props, "name"), folder: "icons" });
47
- return (_ctx, _cache) => {
48
- return unref(iconComponent) ? (openBlock(), createBlock(resolveDynamicComponent(unref(iconComponent)), {
49
- key: 0,
50
- class: normalizeClass(["kds-icon", props.size]),
51
- "aria-hidden": "true",
52
- focusable: "false"
53
- }, null, 8, ["class"])) : (openBlock(), createElementBlock("span", {
54
- key: 1,
55
- class: normalizeClass(["kds-icon", props.size]),
56
- "aria-hidden": "true",
57
- focusable: "false"
58
- }, null, 2));
59
- };
60
- }
61
- });
62
-
63
- const _export_sfc = (sfc, props) => {
64
- const target = sfc.__vccOpts || sfc;
65
- for (const [key, val] of props) {
66
- target[key] = val;
67
- }
68
- return target;
69
- };
70
-
71
- const KdsIcon = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-3a57d423"]]);
72
-
73
- const _hoisted_1$n = {
74
- key: 0,
75
- class: "label"
76
- };
77
- const _sfc_main$v = /* @__PURE__ */ defineComponent({
78
- __name: "BaseButton",
79
- props: {
80
- size: { default: "medium" },
81
- disabled: { type: Boolean, default: false },
82
- title: {},
83
- variant: {},
84
- label: {},
85
- leadingIcon: {},
86
- trailingIcon: {},
87
- ariaLabel: {},
88
- destructive: { type: Boolean, default: false },
89
- success: { type: Boolean, default: false },
90
- error: { type: Boolean, default: false },
91
- toggled: { type: Boolean, default: false },
92
- component: { default: "button" }
93
- },
94
- emits: ["click"],
95
- setup(__props, { emit: __emit }) {
96
- const props = __props;
97
- const emit = __emit;
98
- const classes = computed(() => [
99
- "button",
100
- props.size,
101
- props.variant,
102
- { destructive: props.destructive },
103
- { disabled: props.disabled },
104
- { toggled: props.toggled },
105
- { success: props.success },
106
- { error: props.error }
107
- ]);
108
- const iconSize = computed(() => {
109
- if (props.size === "xsmall") {
110
- return "small";
111
- } else {
112
- return props.size;
113
- }
114
- });
115
- function onClick(e) {
116
- if (!props.disabled) {
117
- emit("click", e);
20
+ const imageLoadFailed = ref(false);
21
+ watch(
22
+ () => props.src,
23
+ () => {
24
+ imageLoadFailed.value = false;
118
25
  }
119
- }
120
- return (_ctx, _cache) => {
121
- return openBlock(), createBlock(resolveDynamicComponent(__props.component), {
122
- class: normalizeClass(classes.value),
123
- disabled: props.disabled,
124
- title: props.title,
125
- "aria-label": props.ariaLabel,
126
- onClick: _cache[0] || (_cache[0] = ($event) => onClick($event))
127
- }, {
128
- default: withCtx(() => [
129
- renderSlot(_ctx.$slots, "leading", {}, () => [
130
- props.leadingIcon ? (openBlock(), createBlock(KdsIcon, {
131
- key: 0,
132
- name: props.leadingIcon,
133
- size: iconSize.value
134
- }, null, 8, ["name", "size"])) : createCommentVNode("", true)
135
- ], true),
136
- props.label ? (openBlock(), createElementBlock("span", _hoisted_1$n, toDisplayString(props.label), 1)) : createCommentVNode("", true),
137
- props.trailingIcon && props.label ? (openBlock(), createBlock(KdsIcon, {
138
- key: 1,
139
- name: props.trailingIcon,
140
- size: iconSize.value
141
- }, null, 8, ["name", "size"])) : createCommentVNode("", true)
142
- ]),
143
- _: 3
144
- }, 8, ["class", "disabled", "title", "aria-label"]);
145
- };
146
- }
147
- });
148
-
149
- const BaseButton = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-b0f9559f"]]);
150
-
151
- const _sfc_main$u = /* @__PURE__ */ defineComponent({
152
- __name: "KdsButton",
153
- props: {
154
- size: {},
155
- disabled: { type: Boolean },
156
- title: {},
157
- variant: { default: "filled" },
158
- label: {},
159
- leadingIcon: {},
160
- trailingIcon: {},
161
- ariaLabel: {},
162
- destructive: { type: Boolean }
163
- },
164
- emits: ["click"],
165
- setup(__props, { emit: __emit }) {
166
- const props = __props;
167
- const emit = __emit;
168
- return (_ctx, _cache) => {
169
- return openBlock(), createBlock(BaseButton, mergeProps(props, {
170
- onClick: _cache[0] || (_cache[0] = ($event) => emit("click", $event))
171
- }), null, 16);
26
+ );
27
+ const shouldShowImage = computed(
28
+ () => Boolean(props.src) && !imageLoadFailed.value
29
+ );
30
+ const onImageError = () => {
31
+ imageLoadFailed.value = true;
172
32
  };
173
- }
174
- });
175
-
176
- const getAppInstance = () => {
177
- const currentInstance = getCurrentInstance();
178
- return currentInstance?.appContext.app;
179
- };
180
- const resolveNuxtLinkComponent = () => {
181
- const app = getAppInstance();
182
- const nuxtLinkComponent = app?.component("NuxtLink");
183
- if (nuxtLinkComponent) {
184
- return nuxtLinkComponent;
185
- }
186
- const routerLinkComponent = app?.component("RouterLink");
187
- if (routerLinkComponent) {
188
- return routerLinkComponent;
189
- }
190
- const fallbackComponent = defineComponent({
191
- props: {
192
- to: {
193
- type: String,
194
- default: ""
195
- }
196
- },
197
- render() {
198
- return h("a", { href: this.to }, [useSlots().default?.()]);
199
- }
200
- });
201
- return fallbackComponent;
202
- };
203
-
204
- const _sfc_main$t = /* @__PURE__ */ defineComponent({
205
- __name: "KdsLinkButton",
206
- props: {
207
- size: {},
208
- disabled: { type: Boolean },
209
- title: {},
210
- variant: { default: "filled" },
211
- label: {},
212
- leadingIcon: {},
213
- trailingIcon: {},
214
- ariaLabel: {},
215
- destructive: { type: Boolean },
216
- to: {},
217
- download: { type: Boolean, default: void 0 },
218
- target: { default: null },
219
- rel: { default: null }
220
- },
221
- emits: ["click"],
222
- setup(__props, { emit: __emit }) {
223
- const props = __props;
224
- const component = computed(() => {
225
- if (props.disabled) {
226
- return "button";
227
- }
228
- return resolveNuxtLinkComponent();
229
- });
230
- const emit = __emit;
33
+ const accessibleTitle = computed(() => props.title?.trim() ?? "");
34
+ const hasTitle = computed(() => accessibleTitle.value.length > 0);
35
+ const displayedInitials = computed(
36
+ () => props.initials.trim().slice(0, 2).toUpperCase()
37
+ );
231
38
  return (_ctx, _cache) => {
232
- return openBlock(), createBlock(BaseButton, mergeProps(props, {
233
- component: component.value,
234
- onClick: _cache[0] || (_cache[0] = ($event) => emit("click", $event))
235
- }), null, 16, ["component"]);
39
+ return openBlock(), createElementBlock("div", {
40
+ class: "kds-avatar",
41
+ role: hasTitle.value ? "img" : "presentation",
42
+ title: hasTitle.value ? accessibleTitle.value : void 0,
43
+ "aria-hidden": !hasTitle.value ? "true" : void 0,
44
+ "aria-label": hasTitle.value ? accessibleTitle.value : void 0
45
+ }, [
46
+ shouldShowImage.value ? (openBlock(), createElementBlock("img", {
47
+ key: 0,
48
+ class: "kds-avatar-image",
49
+ src: props.src,
50
+ alt: "",
51
+ "aria-hidden": "true",
52
+ onError: onImageError
53
+ }, null, 40, _hoisted_2$9)) : (openBlock(), createElementBlock("div", _hoisted_3$6, [
54
+ createElementVNode("span", null, toDisplayString(displayedInitials.value), 1)
55
+ ]))
56
+ ], 8, _hoisted_1$p);
236
57
  };
237
58
  }
238
59
  });
239
60
 
240
- function isDefinedAndNotEmpty(obj, field) {
241
- return isDefined(obj[field]) && obj[field] !== "";
242
- }
243
-
244
- const _hoisted_1$m = { class: "kds-empty-state" };
245
- const _hoisted_2$8 = { class: "kds-empty-state-headline" };
246
- const _hoisted_3$6 = {
247
- key: 0,
248
- class: "kds-empty-state-description"
249
- };
250
- const _hoisted_4$4 = {
251
- key: 1,
252
- class: "kds-empty-state-action"
253
- };
254
- const _sfc_main$s = /* @__PURE__ */ defineComponent({
255
- __name: "KdsEmptyState",
256
- props: {
257
- headline: {},
258
- description: {},
259
- buttonLabel: {},
260
- buttonLeadingIcon: {},
261
- buttonTrailingIcon: {},
262
- buttonAriaLabel: {},
263
- buttonSize: {},
264
- buttonDisabled: { type: Boolean },
265
- buttonTitle: {},
266
- buttonVariant: {},
267
- buttonDestructive: { type: Boolean },
268
- buttonTo: {},
269
- buttonDownload: { type: Boolean },
270
- buttonTarget: {},
271
- buttonRel: {}
272
- },
273
- emits: ["buttonClick"],
274
- setup(__props, { emit: __emit }) {
275
- const props = __props;
276
- const emit = __emit;
277
- const hasButton = computed(() => {
278
- return isDefinedAndNotEmpty(props, "buttonLabel") || isDefinedAndNotEmpty(props, "buttonLeadingIcon");
279
- });
280
- const buttonType = computed(() => {
281
- if (isDefinedAndNotEmpty(props, "buttonTo")) {
282
- return _sfc_main$t;
283
- }
284
- return _sfc_main$u;
285
- });
286
- const mapProps = (mappings) => {
287
- return Object.fromEntries(
288
- mappings.map(([targetKey, sourceKey]) => [targetKey, props[sourceKey]]).filter(([, value]) => value !== void 0)
289
- );
290
- };
291
- const buttonProps = computed(() => {
292
- if (!hasButton.value) {
293
- return {};
294
- }
295
- const baseProps = mapProps([
296
- ["label", "buttonLabel"],
297
- ["leadingIcon", "buttonLeadingIcon"],
298
- ["trailingIcon", "buttonTrailingIcon"],
299
- ["ariaLabel", "buttonAriaLabel"],
300
- ["disabled", "buttonDisabled"],
301
- ["variant", "buttonVariant"],
302
- ["size", "buttonSize"],
303
- ["destructive", "buttonDestructive"],
304
- ["title", "buttonTitle"]
305
- ]);
306
- if (buttonType.value !== _sfc_main$t) {
307
- return baseProps;
308
- }
309
- return {
310
- ...baseProps,
311
- ...mapProps([
312
- ["to", "buttonTo"],
313
- ["target", "buttonTarget"],
314
- ["rel", "buttonRel"],
315
- ["download", "buttonDownload"]
316
- ])
317
- };
318
- });
319
- return (_ctx, _cache) => {
320
- return openBlock(), createElementBlock("div", _hoisted_1$m, [
321
- createElementVNode("p", _hoisted_2$8, toDisplayString(props.headline), 1),
322
- props.description ? (openBlock(), createElementBlock("p", _hoisted_3$6, toDisplayString(props.description), 1)) : createCommentVNode("", true),
323
- hasButton.value ? (openBlock(), createElementBlock("div", _hoisted_4$4, [
324
- (openBlock(), createBlock(resolveDynamicComponent(buttonType.value), mergeProps(buttonProps.value, {
325
- onClick: _cache[0] || (_cache[0] = ($event) => emit("buttonClick", $event))
326
- }), null, 16))
327
- ])) : createCommentVNode("", true)
328
- ]);
329
- };
61
+ const _export_sfc = (sfc, props) => {
62
+ const target = sfc.__vccOpts || sfc;
63
+ for (const [key, val] of props) {
64
+ target[key] = val;
330
65
  }
331
- });
66
+ return target;
67
+ };
332
68
 
333
- const KdsEmptyState = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-34b52d0e"]]);
69
+ const KdsAvatar = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__scopeId", "data-v-4a34a186"]]);
334
70
 
335
- const _hoisted_1$l = ["role", "title", "aria-hidden", "aria-label"];
336
- const _sfc_main$r = /* @__PURE__ */ defineComponent({
71
+ const _hoisted_1$o = ["role", "title", "aria-hidden", "aria-label"];
72
+ const _sfc_main$x = /* @__PURE__ */ defineComponent({
337
73
  __name: "KdsColorSwatch",
338
74
  props: {
339
75
  color: {},
@@ -367,71 +103,84 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
367
103
  style: normalizeStyle({ backgroundColor: backgroundColor.value }),
368
104
  "aria-hidden": hasTitle.value ? void 0 : "true",
369
105
  "aria-label": hasTitle.value ? accessibleTitle.value : void 0
370
- }, null, 12, _hoisted_1$l);
106
+ }, null, 12, _hoisted_1$o);
371
107
  };
372
108
  }
373
109
  });
374
110
 
375
- const KdsColorSwatch = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-c8fc7e8e"]]);
111
+ const KdsColorSwatch = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-c8fc7e8e"]]);
376
112
 
377
- const _hoisted_1$k = ["role", "title", "aria-hidden", "aria-label"];
378
- const _hoisted_2$7 = ["src"];
379
- const _hoisted_3$5 = {
380
- key: 1,
381
- class: "kds-avatar-initials",
382
- "aria-hidden": "true"
113
+ const kdsColorSwatchType = {
114
+ LEARNER: "learner",
115
+ MANIPULATOR: "manipulator",
116
+ PREDICTOR: "predictor",
117
+ SINK: "sink",
118
+ SOURCE: "source",
119
+ VISUALIZER: "visualizer",
120
+ OTHER: "other"
383
121
  };
384
- const _sfc_main$q = /* @__PURE__ */ defineComponent({
385
- __name: "KdsAvatar",
122
+ const kdsColorSwatchTypes = Object.values(kdsColorSwatchType);
123
+
124
+ const __variableDynamicImportRuntimeHelper = (glob$1, path$13, segs) => {
125
+ const v = glob$1[path$13];
126
+ if (v) return typeof v === "function" ? v() : Promise.resolve(v);
127
+ return new Promise((_, reject) => {
128
+ (typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(reject.bind(null, /* @__PURE__ */ new Error("Unknown variable dynamic import: " + path$13 + (path$13.split("/").length !== segs ? ". Note that variables only represent file names one level deep." : ""))));
129
+ });
130
+ };
131
+
132
+ const useIcon = ({
133
+ name,
134
+ folder
135
+ }) => {
136
+ const iconCache = /* @__PURE__ */ new Map();
137
+ const iconComponent = shallowRef(null);
138
+ watch(
139
+ () => name.value,
140
+ async (newName) => {
141
+ if (iconCache.has(newName)) {
142
+ iconComponent.value = iconCache.get(newName);
143
+ return;
144
+ }
145
+ try {
146
+ const module = await __variableDynamicImportRuntimeHelper((/* #__PURE__ */ Object.assign({"../../../node_modules/@knime/kds-styles/dist/img/icons/add-user.svg": () => import('./add-user-CKh821Ew.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/ai-general.svg": () => import('./ai-general-BLr5A_aB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/annotation-mode.svg": () => import('./annotation-mode-Bjz8Qppm.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrow-down.svg": () => import('./arrow-down-bUAuaj-3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrow-up.svg": () => import('./arrow-up-DijAlYdp.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrows-expand.svg": () => import('./arrows-expand-CnIMh7ew.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrows-move.svg": () => import('./arrows-move-CffWTJnH.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/arrows-order.svg": () => import('./arrows-order-BqV36RNU.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/back.svg": () => import('./back-Z2SKFWyw.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/bold.svg": () => import('./bold-DpdJk_QB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/calendar.svg": () => import('./calendar-CXPcZjcq.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/case-sensitive.svg": () => import('./case-sensitive-CuFLLxLY.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/center-aligned.svg": () => import('./center-aligned-DmzJR-NU.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/checkmark.svg": () => import('./checkmark-CZPkBFNO.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-down.svg": () => import('./chevron-down-DNWYMX6r.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-left-double.svg": () => import('./chevron-left-double-BXvJmoi2.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-left.svg": () => import('./chevron-left-o-UW2wMT.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-right-double.svg": () => import('./chevron-right-double-DfHg2w84.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-right.svg": () => import('./chevron-right-B24wRG6X.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/chevron-up.svg": () => import('./chevron-up-D1Rj9v1I.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-error.svg": () => import('./circle-error-BKcmt7Jv.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-info.svg": () => import('./circle-info-UvZ8z7Uk.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-question.svg": () => import('./circle-question-C49esbF6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/circle-success.svg": () => import('./circle-success-Deiv-aEI.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-download.svg": () => import('./cloud-download-D3Swor59.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-knime.svg": () => import('./cloud-knime-Ck0CYEpC.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-pending-changes.svg": () => import('./cloud-pending-changes-BooMof3w.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-synced.svg": () => import('./cloud-synced-BLkZpZpi.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-upload.svg": () => import('./cloud-upload-1cKBYCE_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cloud-workflow.svg": () => import('./cloud-workflow-bbXOzeON.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/code-block.svg": () => import('./code-block-DxROkcSh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/color-picker.svg": () => import('./color-picker-DKT2VkYj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/comment.svg": () => import('./comment-_ajO8mxh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/component.svg": () => import('./component-xJ6doeqN.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/connection.svg": () => import('./connection-CPQhki0y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/copy.svg": () => import('./copy-D_dQ00WJ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/cursor.svg": () => import('./cursor-CWY-Sqb_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/data-app.svg": () => import('./data-app-wBNobXat.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/data-value-view.svg": () => import('./data-value-view-C07X6BM3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/date-time.svg": () => import('./date-time-D2BP5E5r.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-database.svg": () => import('./db-database-DxsIVO4X.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-schema.svg": () => import('./db-schema-Bv0_IT9E.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-table-view.svg": () => import('./db-table-view-B0xGvbnv.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/db-table.svg": () => import('./db-table-B7h4pOv1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/deploy.svg": () => import('./deploy-D2iGlU6g.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/detect.svg": () => import('./detect-Bsk4HlM_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/divider.svg": () => import('./divider-Syv30InM.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/duration.svg": () => import('./duration-DaP7U33c.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/edit.svg": () => import('./edit-Bo5vgzi3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/education.svg": () => import('./education-B3hKB2rv.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/error-panel.svg": () => import('./error-panel-CTRd3uUe.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/execute-all.svg": () => import('./execute-all-Cd4o8ar9.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/execute.svg": () => import('./execute-CaiPLywW.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/expand-panel.svg": () => import('./expand-panel-DOMlQ0h4.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/extension-community.svg": () => import('./extension-community-Dbck6In6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/extension.svg": () => import('./extension-0bpmRL2f.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/external-link.svg": () => import('./external-link-Da9nbkS3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/eye.svg": () => import('./eye-BaEvu1WZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/file-export.svg": () => import('./file-export-Cg1pIaBd.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/file-text.svg": () => import('./file-text-C64HMtpY.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/file.svg": () => import('./file-Pkm1PSyQ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/filter.svg": () => import('./filter-C91sigZW.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-default.svg": () => import('./flow-variable-default-DvWtfW9d.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-in-out.svg": () => import('./flow-variable-in-out-BnxZMi1-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-in.svg": () => import('./flow-variable-in-C30aVoZ6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/flow-variable-out.svg": () => import('./flow-variable-out-CSpUvaoJ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/folder-plus.svg": () => import('./folder-plus-DU8k1EXL.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/folder-workflow.svg": () => import('./folder-workflow-DjPcer5V.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/folder.svg": () => import('./folder-CbSKJZv-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/forum.svg": () => import('./forum-EjZCrpeY.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/function-catalog.svg": () => import('./function-catalog-BtaFW_Ag.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/home.svg": () => import('./home-iE7RmW5y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/import.svg": () => import('./import-B57fag-w.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/info.svg": () => import('./info-Ct2oj9rt.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/interval.svg": () => import('./interval-DdbkHCkr.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/italic.svg": () => import('./italic-D-X25dao.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/key.svg": () => import('./key-BVmvoGXA.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/layout-editor.svg": () => import('./layout-editor-CrJYLsDK.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/left-aligned.svg": () => import('./left-aligned-BbOktUi8.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/like.svg": () => import('./like-PH-Btifn.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/limit.svg": () => import('./limit-DhWVMRX6.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/link.svg": () => import('./link-UgkqQsRt.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/linked-metanode.svg": () => import('./linked-metanode-HsMQlCgq.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list-bulletpoint.svg": () => import('./list-bulletpoint-BVaXqx4f.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list-number.svg": () => import('./list-number-CNqcTLYo.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list-thumbs.svg": () => import('./list-thumbs-M7r_75-H.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/list.svg": () => import('./list-Byrs5aZs.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/local-filesystem.svg": () => import('./local-filesystem-hArfE0_N.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/lock.svg": () => import('./lock-C0pCLYaC.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/metanode.svg": () => import('./metanode-Cl_lQPOl.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/mini-map.svg": () => import('./mini-map-ivG9u5W4.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/minimize-dialog.svg": () => import('./minimize-dialog-CWg57-1w.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/minimize-side-panel.svg": () => import('./minimize-side-panel-Brx7aXNg.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/minus.svg": () => import('./minus-Bl_XdZTq.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/more-actions.svg": () => import('./more-actions-CUQHQnhr.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/node-stack.svg": () => import('./node-stack-BIw49e13.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/nodes-align-horiz.svg": () => import('./nodes-align-horiz-Bxl0AKfj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/nodes-align-vert.svg": () => import('./nodes-align-vert-D8h7LLpV.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/open-in-new-window.svg": () => import('./open-in-new-window-zf7vlHFV.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/pan-mode.svg": () => import('./pan-mode-DqMDNpGh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/parameter.svg": () => import('./parameter-BwgLWZ40.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/pending-changes.svg": () => import('./pending-changes-CYs0jWRx.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/placeholder.svg": () => import('./placeholder-6jSUL5uH.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/plus.svg": () => import('./plus-Cj7d9fzE.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/quote.svg": () => import('./quote-B_HXPGC-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/re-execution.svg": () => import('./re-execution-C4Ssn4oh.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/redo.svg": () => import('./redo-DvRm89Y1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/regex.svg": () => import('./regex-v3KtSGhe.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/reload.svg": () => import('./reload-aBy3xEuk.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/rename.svg": () => import('./rename-CR6_WgYs.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/replace.svg": () => import('./replace-D6ui4Ubg.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/reset-all.svg": () => import('./reset-all-D3A6ORrn.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/resume-execution.svg": () => import('./resume-execution--1RD1SK-.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/right-aligned.svg": () => import('./right-aligned-BQuVIUi8.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/rocket.svg": () => import('./rocket-CcUk0w4I.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/save-as.svg": () => import('./save-as-lIdGETry.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/save.svg": () => import('./save-BTSBDcKz.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/schedule.svg": () => import('./schedule-CuWWu-oZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/search.svg": () => import('./search-Bzzp4jaj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/secret-store.svg": () => import('./secret-store-CtLqpWMg.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/selected-cancel.svg": () => import('./selected-cancel-yt7eew8_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/selected-execution.svg": () => import('./selected-execution-Dt9jKAcj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/selected-reset.svg": () => import('./selected-reset-DlGgo4-Y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/send.svg": () => import('./send-C9YzInMZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/server-rack-workflow.svg": () => import('./server-rack-workflow-dCwu7vTW.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/service.svg": () => import('./service-BT3SUkgO.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/settings.svg": () => import('./settings-CGgJkEgj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/share.svg": () => import('./share-BdSOCq4T.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/shortcuts.svg": () => import('./shortcuts-Bu3KkyH3.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/sort-ascending.svg": () => import('./sort-ascending-wLoBiuk_.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/sort-descending.svg": () => import('./sort-descending-DZiglaz4.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/space-local.svg": () => import('./space-local-Df_W3Vix.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/space-private.svg": () => import('./space-private-BcygS3TM.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/space.svg": () => import('./space-hkXDtlC1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/stepwise-execution.svg": () => import('./stepwise-execution-DNdkTRdo.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/strikethrough.svg": () => import('./strikethrough-DaE8BLGf.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/team.svg": () => import('./team-D1-xShh0.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/text.svg": () => import('./text-DMmr6LRp.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/textstyles.svg": () => import('./textstyles-DHJzC-et.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/thumbs-down.svg": () => import('./thumbs-down-xRvAE_oG.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/thumbs-up.svg": () => import('./thumbs-up-9YwRlf60.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/time.svg": () => import('./time-Tei7g5mN.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/to-bottom.svg": () => import('./to-bottom-1s_2X-cB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/to-top.svg": () => import('./to-top-CtkBPtAa.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/trash.svg": () => import('./trash-CXGtMBy1.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/trigger.svg": () => import('./trigger-wL8HC16Y.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/underline.svg": () => import('./underline-B6XEgMkQ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/undo.svg": () => import('./undo-DaXvDNyj.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/unlink.svg": () => import('./unlink-BY0X0cix.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/user.svg": () => import('./user-df6HsMaZ.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/version.svg": () => import('./version-B-5dHgvX.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/view-cards.svg": () => import('./view-cards-BTGqIH1C.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/warning.svg": () => import('./warning-BEoXGKC2.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/workflow.svg": () => import('./workflow-B6CQgLEB.js'),"../../../node_modules/@knime/kds-styles/dist/img/icons/x-close.svg": () => import('./x-close-BU1wJ08h.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/audio-datatype.svg": () => import('./audio-datatype-BqJYr0fU.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/binary-object-datatype.svg": () => import('./binary-object-datatype-Du-zhxKy.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/bit-byte-vector-datatype.svg": () => import('./bit-byte-vector-datatype-DRoDVhzx.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/boolean-datatype.svg": () => import('./boolean-datatype-BLejL9wT.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/collection-list-datatype.svg": () => import('./collection-list-datatype-tv5ebdN1.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/collection-set-datatype.svg": () => import('./collection-set-datatype-BmEIjJCx.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/date-datatype.svg": () => import('./date-datatype-CbrXJIDR.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/date-time-local-datatype.svg": () => import('./date-time-local-datatype-Dn57eC5p.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/date-time-zoned-datatype.svg": () => import('./date-time-zoned-datatype-BC0SFQAD.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/default-extension-datatype.svg": () => import('./default-extension-datatype-EJXM_Ybz.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/document-datatype.svg": () => import('./document-datatype-BSz1qTHq.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/duration-date-based-datatype.svg": () => import('./duration-date-based-datatype-D6prx57n.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/duration-time-based-datatype.svg": () => import('./duration-time-based-datatype-4Ik-Vr8Q.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/geo-datatype.svg": () => import('./geo-datatype-CFu0R3vj.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/helm-datatype.svg": () => import('./helm-datatype-BWAUZ-Tt.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/image-png-datatype.svg": () => import('./image-png-datatype-XLrsdl_K.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/image-svg-datatype.svg": () => import('./image-svg-datatype-Sc-uI6FI.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/json-datatype.svg": () => import('./json-datatype-CK5bFgQy.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/labeling-datatype.svg": () => import('./labeling-datatype-DubVeYXo.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/linear-notation-molecule.svg": () => import('./linear-notation-molecule-B9JUyQef.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/message-datatype.svg": () => import('./message-datatype-BMeR1nv4.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/microscope.svg": () => import('./microscope-Cr49onew.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/model-pmml-datatype.svg": () => import('./model-pmml-datatype-IGnc5zXz.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/molecule.svg": () => import('./molecule-C9PFhX46.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/number-double-datatype.svg": () => import('./number-double-datatype-iI23azce.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/number-double-vector-datatype.svg": () => import('./number-double-vector-datatype-BtktW2zE.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/number-integer-datatype.svg": () => import('./number-integer-datatype-ncI7X7Aw.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/path-datatype.svg": () => import('./path-datatype-UYcAhyjv.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/string-datatype.svg": () => import('./string-datatype-BFdqZnvv.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/string-vector-datatype.svg": () => import('./string-vector-datatype-QXJ-Dq9M.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/subgraph-datatype.svg": () => import('./subgraph-datatype-BHUfkFAl.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/term-datatype.svg": () => import('./term-datatype-fRf65x34.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/test-tube.svg": () => import('./test-tube-dmblmo83.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/time-datatype.svg": () => import('./time-datatype-Dx_gZrr5.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/tool-datatype.svg": () => import('./tool-datatype-CscnJaLg.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/unknown-datatype.svg": () => import('./unknown-datatype-HVRhR0XQ.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/uri-datatype.svg": () => import('./uri-datatype-COo2A9Ig.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-boolean.svg": () => import('./variable-boolean-Del5rqMV.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-boolean.svg": () => import('./variable-collection-boolean-ClvKyQes.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-double.svg": () => import('./variable-collection-double-D9bZO46e.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-integer.svg": () => import('./variable-collection-integer-Bz4v0C4x.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-collection-string.svg": () => import('./variable-collection-string-2mgywfSS.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-conda-environment.svg": () => import('./variable-conda-environment-Hrl_-hfW.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-credential.svg": () => import('./variable-credential-D_kLfXY5.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-integer.svg": () => import('./variable-integer-5fC6qM5I.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-number-double.svg": () => import('./variable-number-double-DwTKGyps.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-path.svg": () => import('./variable-path-DTYcIIg9.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-string.svg": () => import('./variable-string-BVXOfIgy.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/variable-unknown.svg": () => import('./variable-unknown-DLlsEO5w.js'),"../../../node_modules/@knime/kds-styles/dist/img/type-icons/xml-datatype.svg": () => import('./xml-datatype-BymvkSrS.js')})), `../../../node_modules/@knime/kds-styles/dist/img/${folder}/${newName}.svg`, 10);
147
+ iconCache.set(newName, module.default);
148
+ iconComponent.value = module.default;
149
+ } catch (_error) {
150
+ iconComponent.value = null;
151
+ }
152
+ },
153
+ { immediate: true }
154
+ );
155
+ return iconComponent;
156
+ };
157
+
158
+ const _sfc_main$w = /* @__PURE__ */ defineComponent({
159
+ __name: "KdsIcon",
386
160
  props: {
387
- initials: {},
388
- src: { default: void 0 },
389
- title: { default: void 0 }
161
+ name: {},
162
+ size: { default: "medium" }
390
163
  },
391
164
  setup(__props) {
392
165
  const props = __props;
393
- const imageLoadFailed = ref(false);
394
- watch(
395
- () => props.src,
396
- () => {
397
- imageLoadFailed.value = false;
398
- }
399
- );
400
- const shouldShowImage = computed(
401
- () => Boolean(props.src) && !imageLoadFailed.value
402
- );
403
- const onImageError = () => {
404
- imageLoadFailed.value = true;
405
- };
406
- const accessibleTitle = computed(() => props.title?.trim() ?? "");
407
- const hasTitle = computed(() => accessibleTitle.value.length > 0);
408
- const displayedInitials = computed(
409
- () => props.initials.trim().slice(0, 2).toUpperCase()
410
- );
166
+ const iconComponent = useIcon({ name: toRef(props, "name"), folder: "icons" });
411
167
  return (_ctx, _cache) => {
412
- return openBlock(), createElementBlock("div", {
413
- class: "kds-avatar",
414
- role: hasTitle.value ? "img" : "presentation",
415
- title: hasTitle.value ? accessibleTitle.value : void 0,
416
- "aria-hidden": !hasTitle.value ? "true" : void 0,
417
- "aria-label": hasTitle.value ? accessibleTitle.value : void 0
418
- }, [
419
- shouldShowImage.value ? (openBlock(), createElementBlock("img", {
420
- key: 0,
421
- class: "kds-avatar-image",
422
- src: props.src,
423
- alt: "",
424
- "aria-hidden": "true",
425
- onError: onImageError
426
- }, null, 40, _hoisted_2$7)) : (openBlock(), createElementBlock("div", _hoisted_3$5, [
427
- createElementVNode("span", null, toDisplayString(displayedInitials.value), 1)
428
- ]))
429
- ], 8, _hoisted_1$k);
168
+ return unref(iconComponent) ? (openBlock(), createBlock(resolveDynamicComponent(unref(iconComponent)), {
169
+ key: 0,
170
+ class: normalizeClass(["kds-icon", props.size]),
171
+ "aria-hidden": "true",
172
+ focusable: "false"
173
+ }, null, 8, ["class"])) : (openBlock(), createElementBlock("span", {
174
+ key: 1,
175
+ class: normalizeClass(["kds-icon", props.size]),
176
+ "aria-hidden": "true",
177
+ focusable: "false"
178
+ }, null, 2));
430
179
  };
431
180
  }
432
181
  });
433
182
 
434
- const KdsAvatar = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-4a34a186"]]);
183
+ const KdsIcon = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-3a57d423"]]);
435
184
 
436
185
  const ID_TO_ICON_MAP = {
437
186
  // Flow Variables
@@ -524,6 +273,164 @@ const ID_TO_ICON_MAP = {
524
273
  "jp.co.infocom.cheminfo.marvin.type.MrvValue": "microscope"
525
274
  };
526
275
 
276
+ const iconNames = [
277
+ "add-user",
278
+ "ai-general",
279
+ "annotation-mode",
280
+ "arrow-down",
281
+ "arrow-up",
282
+ "arrows-expand",
283
+ "arrows-move",
284
+ "arrows-order",
285
+ "back",
286
+ "bold",
287
+ "calendar",
288
+ "case-sensitive",
289
+ "center-aligned",
290
+ "checkmark",
291
+ "chevron-down",
292
+ "chevron-left-double",
293
+ "chevron-left",
294
+ "chevron-right-double",
295
+ "chevron-right",
296
+ "chevron-up",
297
+ "circle-error",
298
+ "circle-info",
299
+ "circle-question",
300
+ "circle-success",
301
+ "cloud-download",
302
+ "cloud-knime",
303
+ "cloud-pending-changes",
304
+ "cloud-synced",
305
+ "cloud-upload",
306
+ "cloud-workflow",
307
+ "code-block",
308
+ "color-picker",
309
+ "comment",
310
+ "component",
311
+ "connection",
312
+ "copy",
313
+ "cursor",
314
+ "data-app",
315
+ "data-value-view",
316
+ "date-time",
317
+ "db-database",
318
+ "db-schema",
319
+ "db-table-view",
320
+ "db-table",
321
+ "deploy",
322
+ "detect",
323
+ "divider",
324
+ "duration",
325
+ "edit",
326
+ "education",
327
+ "error-panel",
328
+ "execute-all",
329
+ "execute",
330
+ "expand-panel",
331
+ "extension-community",
332
+ "extension",
333
+ "external-link",
334
+ "eye",
335
+ "file-export",
336
+ "file-text",
337
+ "file",
338
+ "filter",
339
+ "flow-variable-default",
340
+ "flow-variable-in-out",
341
+ "flow-variable-in",
342
+ "flow-variable-out",
343
+ "folder-plus",
344
+ "folder-workflow",
345
+ "folder",
346
+ "forum",
347
+ "function-catalog",
348
+ "home",
349
+ "import",
350
+ "info",
351
+ "interval",
352
+ "italic",
353
+ "key",
354
+ "layout-editor",
355
+ "left-aligned",
356
+ "like",
357
+ "limit",
358
+ "link",
359
+ "linked-metanode",
360
+ "list-bulletpoint",
361
+ "list-number",
362
+ "list-thumbs",
363
+ "list",
364
+ "local-filesystem",
365
+ "lock",
366
+ "metanode",
367
+ "mini-map",
368
+ "minimize-dialog",
369
+ "minimize-side-panel",
370
+ "minus",
371
+ "more-actions",
372
+ "node-stack",
373
+ "nodes-align-horiz",
374
+ "nodes-align-vert",
375
+ "open-in-new-window",
376
+ "pan-mode",
377
+ "parameter",
378
+ "pending-changes",
379
+ "placeholder",
380
+ "plus",
381
+ "quote",
382
+ "re-execution",
383
+ "redo",
384
+ "regex",
385
+ "reload",
386
+ "rename",
387
+ "replace",
388
+ "reset-all",
389
+ "resume-execution",
390
+ "right-aligned",
391
+ "rocket",
392
+ "save-as",
393
+ "save",
394
+ "schedule",
395
+ "search",
396
+ "secret-store",
397
+ "selected-cancel",
398
+ "selected-execution",
399
+ "selected-reset",
400
+ "send",
401
+ "server-rack-workflow",
402
+ "service",
403
+ "settings",
404
+ "share",
405
+ "shortcuts",
406
+ "sort-ascending",
407
+ "sort-descending",
408
+ "space-local",
409
+ "space-private",
410
+ "space",
411
+ "stepwise-execution",
412
+ "strikethrough",
413
+ "team",
414
+ "text",
415
+ "textstyles",
416
+ "thumbs-down",
417
+ "thumbs-up",
418
+ "time",
419
+ "to-bottom",
420
+ "to-top",
421
+ "trash",
422
+ "trigger",
423
+ "underline",
424
+ "undo",
425
+ "unlink",
426
+ "user",
427
+ "version",
428
+ "view-cards",
429
+ "warning",
430
+ "workflow",
431
+ "x-close"
432
+ ];
433
+
527
434
  const typeIconNames = [
528
435
  "audio-datatype",
529
436
  "binary-object-datatype",
@@ -577,8 +484,29 @@ const typeIconNames = [
577
484
  "xml-datatype"
578
485
  ];
579
486
 
580
- const _hoisted_1$j = ["title"];
581
- const _sfc_main$p = /* @__PURE__ */ defineComponent({
487
+ const toEnumKey = (name) => name.toUpperCase().replace(/-/g, "_");
488
+ const kdsIconName = Object.fromEntries(
489
+ iconNames.map((name) => [toEnumKey(name), name])
490
+ );
491
+ const kdsTypeIconName = Object.fromEntries(
492
+ typeIconNames.map((name) => [toEnumKey(name), name])
493
+ );
494
+ const kdsIconSize = {
495
+ XSMALL: "xsmall",
496
+ SMALL: "small",
497
+ MEDIUM: "medium",
498
+ LARGE: "large"
499
+ };
500
+ const kdsIconSizes = Object.values(kdsIconSize);
501
+ const kdsDataTypeSize = {
502
+ SMALL: "small",
503
+ MEDIUM: "medium",
504
+ LARGE: "large"
505
+ };
506
+ const kdsDataTypeSizes = Object.values(kdsDataTypeSize);
507
+
508
+ const _hoisted_1$n = ["title"];
509
+ const _sfc_main$v = /* @__PURE__ */ defineComponent({
582
510
  __name: "KdsDataType",
583
511
  props: {
584
512
  iconName: { default: "unknown-datatype" },
@@ -618,15 +546,63 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
618
546
  "aria-hidden": "true",
619
547
  focusable: "false"
620
548
  }, null, 8, ["class"]))
621
- ], 10, _hoisted_1$j);
549
+ ], 10, _hoisted_1$n);
622
550
  };
623
551
  }
624
552
  });
625
553
 
626
- const KdsDataType = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-4239a1e3"]]);
554
+ const KdsDataType = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-d7166d18"]]);
627
555
 
628
- const _hoisted_1$i = ["data-style"];
629
- const _sfc_main$o = /* @__PURE__ */ defineComponent({
556
+ const _hoisted_1$m = ["title", "aria-label"];
557
+ const _hoisted_2$8 = {
558
+ key: 0,
559
+ class: "label"
560
+ };
561
+ const _sfc_main$u = /* @__PURE__ */ defineComponent({
562
+ __name: "KdsLiveStatus",
563
+ props: {
564
+ status: { default: "red" },
565
+ size: { default: "medium" },
566
+ label: { default: "" },
567
+ title: { default: void 0 }
568
+ },
569
+ setup(__props) {
570
+ const props = __props;
571
+ const accessibleTitle = computed(
572
+ () => props.title?.trim() || `Status is ${props.status}`
573
+ );
574
+ return (_ctx, _cache) => {
575
+ return openBlock(), createElementBlock("span", {
576
+ class: normalizeClass(["kds-live-status", props.status, `size-${props.size}`]),
577
+ role: "img",
578
+ title: accessibleTitle.value,
579
+ "aria-label": accessibleTitle.value
580
+ }, [
581
+ _cache[0] || (_cache[0] = createElementVNode("span", { class: "dot" }, null, -1)),
582
+ props.label ? (openBlock(), createElementBlock("span", _hoisted_2$8, toDisplayString(props.label), 1)) : createCommentVNode("", true)
583
+ ], 10, _hoisted_1$m);
584
+ };
585
+ }
586
+ });
587
+
588
+ const KdsLiveStatus = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-8bf6a94a"]]);
589
+
590
+ const kdsLiveStatusStatus = {
591
+ RED: "red",
592
+ ORANGE: "orange",
593
+ GREEN: "green",
594
+ DISABLED: "disabled"
595
+ };
596
+ const kdsLiveStatusStatuses = Object.values(kdsLiveStatusStatus);
597
+ const kdsLiveStatusSize = {
598
+ LARGE: "large",
599
+ MEDIUM: "medium",
600
+ SMALL: "small"
601
+ };
602
+ const kdsLiveStatusSizes = Object.values(kdsLiveStatusSize);
603
+
604
+ const _hoisted_1$l = ["data-style"];
605
+ const _sfc_main$t = /* @__PURE__ */ defineComponent({
630
606
  __name: "KdsLoadingSpinner",
631
607
  props: {
632
608
  size: { default: "medium" },
@@ -651,107 +627,199 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
651
627
  cy: "60",
652
628
  r: "50"
653
629
  }, null, -1)
654
- ])], 10, _hoisted_1$i);
630
+ ])], 10, _hoisted_1$l);
655
631
  };
656
632
  }
657
633
  });
658
634
 
659
- const KdsLoadingSpinner = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-74bb7c3d"]]);
635
+ const KdsLoadingSpinner = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-74bb7c3d"]]);
660
636
 
661
- const _hoisted_1$h = ["disabled", "title", "aria-label", "aria-pressed"];
662
- const _sfc_main$n = /* @__PURE__ */ defineComponent({
663
- __name: "KdsVariableToggleButton",
664
- props: /* @__PURE__ */ mergeModels({
637
+ const kdsLoadingSpinnerVariant = {
638
+ ON_PRIMARY: "onPrimary",
639
+ ON_SURFACE: "onSurface"
640
+ };
641
+ const kdsLoadingSpinnerVariants = Object.values(
642
+ kdsLoadingSpinnerVariant
643
+ );
644
+
645
+ const _hoisted_1$k = {
646
+ key: 0,
647
+ class: "label"
648
+ };
649
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
650
+ __name: "BaseButton",
651
+ props: {
652
+ size: { default: "medium" },
665
653
  disabled: { type: Boolean, default: false },
666
- hidden: { type: Boolean, default: false },
667
- inSet: { type: Boolean, default: false },
668
- outSet: { type: Boolean, default: false },
669
- error: { type: Boolean, default: false }
670
- }, {
671
- "modelValue": { type: Boolean, ...{ default: false } },
672
- "modelModifiers": {}
673
- }),
674
- emits: ["update:modelValue"],
675
- setup(__props) {
654
+ title: {},
655
+ variant: {},
656
+ label: {},
657
+ leadingIcon: {},
658
+ trailingIcon: {},
659
+ ariaLabel: {},
660
+ destructive: { type: Boolean, default: false },
661
+ success: { type: Boolean, default: false },
662
+ error: { type: Boolean, default: false },
663
+ toggled: { type: Boolean, default: false },
664
+ component: { default: "button" }
665
+ },
666
+ emits: ["click"],
667
+ setup(__props, { emit: __emit }) {
676
668
  const props = __props;
677
- const modelValue = useModel(__props, "modelValue");
678
- const iconState = computed(() => {
679
- if (props.inSet && props.outSet) {
680
- return "in-out";
681
- }
682
- if (props.inSet) {
683
- return "in";
684
- }
685
- if (props.outSet) {
686
- return "out";
669
+ const emit = __emit;
670
+ const classes = computed(() => [
671
+ "button",
672
+ props.size,
673
+ props.variant,
674
+ { destructive: props.destructive },
675
+ { disabled: props.disabled },
676
+ { toggled: props.toggled },
677
+ { success: props.success },
678
+ { error: props.error }
679
+ ]);
680
+ const iconSize = computed(() => {
681
+ if (props.size === "xsmall") {
682
+ return "small";
683
+ } else {
684
+ return props.size;
687
685
  }
688
- return "none";
689
686
  });
690
- const iconName = computed(() => {
691
- switch (iconState.value) {
692
- case "in":
693
- return "flow-variable-in";
694
- case "out":
695
- return "flow-variable-out";
696
- case "in-out":
697
- return "flow-variable-in-out";
698
- case "none":
699
- default:
700
- return "flow-variable-default";
687
+ function onClick(e) {
688
+ if (!props.disabled) {
689
+ emit("click", e);
701
690
  }
702
- });
703
- const baseTitleByState = {
704
- in: "Input Flow Variable",
705
- out: "Output Flow Variable",
706
- "in-out": "Input and Output Flow Variable",
707
- none: "No Flow Variable set"
691
+ }
692
+ return (_ctx, _cache) => {
693
+ return openBlock(), createBlock(resolveDynamicComponent(__props.component), {
694
+ class: normalizeClass(classes.value),
695
+ disabled: props.disabled,
696
+ title: props.title,
697
+ "aria-label": props.ariaLabel,
698
+ onClick: _cache[0] || (_cache[0] = ($event) => onClick($event))
699
+ }, {
700
+ default: withCtx(() => [
701
+ renderSlot(_ctx.$slots, "leading", {}, () => [
702
+ props.leadingIcon ? (openBlock(), createBlock(KdsIcon, {
703
+ key: 0,
704
+ name: props.leadingIcon,
705
+ size: iconSize.value
706
+ }, null, 8, ["name", "size"])) : createCommentVNode("", true)
707
+ ], true),
708
+ props.label ? (openBlock(), createElementBlock("span", _hoisted_1$k, toDisplayString(props.label), 1)) : createCommentVNode("", true),
709
+ props.trailingIcon && props.label ? (openBlock(), createBlock(KdsIcon, {
710
+ key: 1,
711
+ name: props.trailingIcon,
712
+ size: iconSize.value
713
+ }, null, 8, ["name", "size"])) : createCommentVNode("", true)
714
+ ]),
715
+ _: 3
716
+ }, 8, ["class", "disabled", "title", "aria-label"]);
708
717
  };
709
- const errorTitleByState = {
710
- in: "Error in input Flow Variable",
711
- out: "Error in output Flow Variable",
712
- "in-out": "Error in Flow Variables"
718
+ }
719
+ });
720
+
721
+ const BaseButton = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-b0f9559f"]]);
722
+
723
+ const _sfc_main$r = /* @__PURE__ */ defineComponent({
724
+ __name: "KdsButton",
725
+ props: {
726
+ size: {},
727
+ disabled: { type: Boolean },
728
+ title: {},
729
+ variant: { default: "filled" },
730
+ label: {},
731
+ leadingIcon: {},
732
+ trailingIcon: {},
733
+ ariaLabel: {},
734
+ destructive: { type: Boolean }
735
+ },
736
+ emits: ["click"],
737
+ setup(__props, { emit: __emit }) {
738
+ const props = __props;
739
+ const emit = __emit;
740
+ return (_ctx, _cache) => {
741
+ return openBlock(), createBlock(BaseButton, mergeProps(props, {
742
+ onClick: _cache[0] || (_cache[0] = ($event) => emit("click", $event))
743
+ }), null, 16);
713
744
  };
714
- const title = computed(() => {
715
- const baseTitle = baseTitleByState[iconState.value];
716
- if (!props.error) {
717
- return baseTitle;
745
+ }
746
+ });
747
+
748
+ const getAppInstance = () => {
749
+ const currentInstance = getCurrentInstance();
750
+ return currentInstance?.appContext.app;
751
+ };
752
+ const resolveNuxtLinkComponent = () => {
753
+ const app = getAppInstance();
754
+ const nuxtLinkComponent = app?.component("NuxtLink");
755
+ if (nuxtLinkComponent) {
756
+ return nuxtLinkComponent;
757
+ }
758
+ const routerLinkComponent = app?.component("RouterLink");
759
+ if (routerLinkComponent) {
760
+ return routerLinkComponent;
761
+ }
762
+ const fallbackComponent = defineComponent({
763
+ props: {
764
+ to: {
765
+ type: String,
766
+ default: ""
718
767
  }
719
- return errorTitleByState[iconState.value] ?? baseTitle;
768
+ },
769
+ render() {
770
+ return h("a", { href: this.to }, [useSlots().default?.()]);
771
+ }
772
+ });
773
+ return fallbackComponent;
774
+ };
775
+
776
+ const _sfc_main$q = /* @__PURE__ */ defineComponent({
777
+ __name: "KdsLinkButton",
778
+ props: {
779
+ size: {},
780
+ disabled: { type: Boolean },
781
+ title: {},
782
+ variant: { default: "filled" },
783
+ label: {},
784
+ leadingIcon: {},
785
+ trailingIcon: {},
786
+ ariaLabel: {},
787
+ destructive: { type: Boolean },
788
+ to: {},
789
+ download: { type: Boolean, default: void 0 },
790
+ target: { default: null },
791
+ rel: { default: null }
792
+ },
793
+ emits: ["click"],
794
+ setup(__props, { emit: __emit }) {
795
+ const props = __props;
796
+ const component = computed(() => {
797
+ if (props.disabled) {
798
+ return "button";
799
+ }
800
+ return resolveNuxtLinkComponent();
720
801
  });
802
+ const emit = __emit;
721
803
  return (_ctx, _cache) => {
722
- return openBlock(), createElementBlock("button", {
723
- class: normalizeClass({
724
- "variable-toggle-button": true,
725
- disabled: props.disabled,
726
- error: props.error,
727
- "pressed-or-set": modelValue.value || props.inSet || props.outSet,
728
- hidden: props.hidden && !modelValue.value
729
- }),
730
- disabled: props.disabled,
731
- title: title.value,
732
- "aria-label": title.value,
733
- "aria-pressed": modelValue.value,
734
- type: "button",
735
- onClick: _cache[0] || (_cache[0] = ($event) => modelValue.value = !modelValue.value)
736
- }, [
737
- createVNode(KdsIcon, {
738
- name: iconName.value,
739
- size: "xsmall"
740
- }, null, 8, ["name"])
741
- ], 10, _hoisted_1$h);
804
+ return openBlock(), createBlock(BaseButton, mergeProps(props, {
805
+ component: component.value,
806
+ onClick: _cache[0] || (_cache[0] = ($event) => emit("click", $event))
807
+ }), null, 16, ["component"]);
742
808
  };
743
809
  }
744
810
  });
745
811
 
746
- const KdsVariableToggleButton = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-e9ec2634"]]);
747
-
748
- const _hoisted_1$g = ["disabled", "aria-pressed"];
749
- const TITLE = "Click for more information";
750
- const _sfc_main$m = /* @__PURE__ */ defineComponent({
751
- __name: "KdsInfoToggleButton",
812
+ const _sfc_main$p = /* @__PURE__ */ defineComponent({
813
+ __name: "KdsToggleButton",
752
814
  props: /* @__PURE__ */ mergeModels({
753
- disabled: { type: Boolean, default: false },
754
- hidden: { type: Boolean, default: false }
815
+ size: {},
816
+ disabled: { type: Boolean },
817
+ title: {},
818
+ variant: { default: "outlined" },
819
+ label: {},
820
+ leadingIcon: {},
821
+ trailingIcon: {},
822
+ ariaLabel: {}
755
823
  }, {
756
824
  "modelValue": { type: Boolean, ...{ default: false } },
757
825
  "modelModifiers": {}
@@ -761,39 +829,30 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
761
829
  const props = __props;
762
830
  const modelValue = useModel(__props, "modelValue");
763
831
  return (_ctx, _cache) => {
764
- return openBlock(), createElementBlock("button", {
765
- class: normalizeClass({
766
- "info-toggle-button": true,
767
- selected: modelValue.value,
768
- disabled: props.disabled,
769
- hidden: props.hidden && !modelValue.value
770
- }),
771
- disabled: props.disabled,
772
- title: TITLE,
773
- "aria-label": TITLE,
832
+ return openBlock(), createBlock(BaseButton, mergeProps(props, {
833
+ toggled: modelValue.value,
774
834
  "aria-pressed": modelValue.value,
775
- type: "button",
776
835
  onClick: _cache[0] || (_cache[0] = ($event) => modelValue.value = !modelValue.value)
777
- }, [
778
- createVNode(KdsIcon, {
779
- name: "circle-question",
780
- size: "xsmall"
781
- })
782
- ], 10, _hoisted_1$g);
836
+ }), null, 16, ["toggled", "aria-pressed"]);
783
837
  };
784
838
  }
785
839
  });
786
840
 
787
- const KdsInfoToggleButton = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-4b02c8d7"]]);
841
+ const kdsToggleButtonVariant = {
842
+ OUTLINED: "outlined",
843
+ TRANSPARENT: "transparent"
844
+ };
845
+ const kdsToggleButtonVariants = Object.values(kdsToggleButtonVariant);
788
846
 
789
- const _hoisted_1$f = ["data-visible"];
790
- const _hoisted_2$6 = ["data-visible"];
791
- const _sfc_main$l = /* @__PURE__ */ defineComponent({
847
+ const _hoisted_1$j = ["data-visible"];
848
+ const _hoisted_2$7 = ["data-visible"];
849
+ const _sfc_main$o = /* @__PURE__ */ defineComponent({
792
850
  __name: "KdsProgressButton",
793
851
  props: /* @__PURE__ */ mergeModels({
794
852
  size: { default: "medium" },
795
- variant: { default: "filled" },
796
853
  disabled: { type: Boolean, default: false },
854
+ title: {},
855
+ variant: { default: "filled" },
797
856
  label: {},
798
857
  leadingIcon: {},
799
858
  ariaLabel: {}
@@ -850,7 +909,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
850
909
  name: props.leadingIcon,
851
910
  size: iconSize.value
852
911
  }, null, 8, ["name", "size"])
853
- ], 8, _hoisted_1$f),
912
+ ], 8, _hoisted_1$j),
854
913
  createElementVNode("span", {
855
914
  class: "spinner",
856
915
  "data-visible": state.value === "progress"
@@ -859,7 +918,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
859
918
  size: iconSize.value,
860
919
  variant: props.variant === "filled" ? "onPrimary" : "onSurface"
861
920
  }, null, 8, ["size", "variant"])
862
- ], 8, _hoisted_2$6)
921
+ ], 8, _hoisted_2$7)
863
922
  ], 2)
864
923
  ]),
865
924
  _: 1
@@ -868,40 +927,290 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
868
927
  }
869
928
  });
870
929
 
871
- const KdsProgressButton = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-209e9133"]]);
930
+ const KdsProgressButton = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-ec08a9ba"]]);
931
+
932
+ const kdsProgressButtonState = {
933
+ DEFAULT: "default",
934
+ PROGRESS: "progress",
935
+ SUCCESS: "success",
936
+ ERROR: "error"
937
+ };
938
+ const kdsProgressButtonStates = Object.values(kdsProgressButtonState);
939
+
940
+ const _hoisted_1$i = ["disabled", "aria-pressed"];
941
+ const TITLE = "Click for more information";
942
+ const _sfc_main$n = /* @__PURE__ */ defineComponent({
943
+ __name: "KdsInfoToggleButton",
944
+ props: /* @__PURE__ */ mergeModels({
945
+ disabled: { type: Boolean, default: false },
946
+ hidden: { type: Boolean, default: false }
947
+ }, {
948
+ "modelValue": { type: Boolean, ...{ default: false } },
949
+ "modelModifiers": {}
950
+ }),
951
+ emits: ["update:modelValue"],
952
+ setup(__props) {
953
+ const props = __props;
954
+ const modelValue = useModel(__props, "modelValue");
955
+ return (_ctx, _cache) => {
956
+ return openBlock(), createElementBlock("button", {
957
+ class: normalizeClass({
958
+ "info-toggle-button": true,
959
+ selected: modelValue.value,
960
+ disabled: props.disabled,
961
+ hidden: props.hidden && !modelValue.value
962
+ }),
963
+ disabled: props.disabled,
964
+ title: TITLE,
965
+ "aria-label": TITLE,
966
+ "aria-pressed": modelValue.value,
967
+ type: "button",
968
+ onClick: _cache[0] || (_cache[0] = ($event) => modelValue.value = !modelValue.value)
969
+ }, [
970
+ createVNode(KdsIcon, {
971
+ name: "circle-question",
972
+ size: "xsmall"
973
+ })
974
+ ], 10, _hoisted_1$i);
975
+ };
976
+ }
977
+ });
978
+
979
+ const KdsInfoToggleButton = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-ad020a5d"]]);
980
+
981
+ const _hoisted_1$h = ["disabled", "title", "aria-label", "aria-pressed"];
982
+ const _sfc_main$m = /* @__PURE__ */ defineComponent({
983
+ __name: "KdsVariableToggleButton",
984
+ props: /* @__PURE__ */ mergeModels({
985
+ disabled: { type: Boolean, default: false },
986
+ hidden: { type: Boolean, default: false },
987
+ inSet: { type: Boolean, default: false },
988
+ outSet: { type: Boolean, default: false },
989
+ error: { type: Boolean, default: false }
990
+ }, {
991
+ "modelValue": { type: Boolean, ...{ default: false } },
992
+ "modelModifiers": {}
993
+ }),
994
+ emits: ["update:modelValue"],
995
+ setup(__props) {
996
+ const props = __props;
997
+ const modelValue = useModel(__props, "modelValue");
998
+ const iconState = computed(() => {
999
+ if (props.inSet && props.outSet) {
1000
+ return "in-out";
1001
+ }
1002
+ if (props.inSet) {
1003
+ return "in";
1004
+ }
1005
+ if (props.outSet) {
1006
+ return "out";
1007
+ }
1008
+ return "none";
1009
+ });
1010
+ const iconName = computed(() => {
1011
+ switch (iconState.value) {
1012
+ case "in":
1013
+ return "flow-variable-in";
1014
+ case "out":
1015
+ return "flow-variable-out";
1016
+ case "in-out":
1017
+ return "flow-variable-in-out";
1018
+ case "none":
1019
+ default:
1020
+ return "flow-variable-default";
1021
+ }
1022
+ });
1023
+ const baseTitleByState = {
1024
+ in: "Input Flow Variable",
1025
+ out: "Output Flow Variable",
1026
+ "in-out": "Input and Output Flow Variable",
1027
+ none: "No Flow Variable set"
1028
+ };
1029
+ const errorTitleByState = {
1030
+ in: "Error in input Flow Variable",
1031
+ out: "Error in output Flow Variable",
1032
+ "in-out": "Error in Flow Variables"
1033
+ };
1034
+ const title = computed(() => {
1035
+ const baseTitle = baseTitleByState[iconState.value];
1036
+ if (!props.error) {
1037
+ return baseTitle;
1038
+ }
1039
+ return errorTitleByState[iconState.value] ?? baseTitle;
1040
+ });
1041
+ return (_ctx, _cache) => {
1042
+ return openBlock(), createElementBlock("button", {
1043
+ class: normalizeClass({
1044
+ "variable-toggle-button": true,
1045
+ disabled: props.disabled,
1046
+ error: props.error,
1047
+ "pressed-or-set": modelValue.value || props.inSet || props.outSet,
1048
+ hidden: props.hidden && !modelValue.value
1049
+ }),
1050
+ disabled: props.disabled,
1051
+ title: title.value,
1052
+ "aria-label": title.value,
1053
+ "aria-pressed": modelValue.value,
1054
+ type: "button",
1055
+ onClick: _cache[0] || (_cache[0] = ($event) => modelValue.value = !modelValue.value)
1056
+ }, [
1057
+ createVNode(KdsIcon, {
1058
+ name: iconName.value,
1059
+ size: "xsmall"
1060
+ }, null, 8, ["name"])
1061
+ ], 10, _hoisted_1$h);
1062
+ };
1063
+ }
1064
+ });
1065
+
1066
+ const KdsVariableToggleButton = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-968c795f"]]);
872
1067
 
873
- const _sfc_main$k = /* @__PURE__ */ defineComponent({
874
- __name: "KdsToggleButton",
875
- props: /* @__PURE__ */ mergeModels({
876
- size: {},
877
- disabled: { type: Boolean },
878
- title: {},
879
- variant: { default: "outlined" },
1068
+ const kdsButtonSize = {
1069
+ XSMALL: "xsmall",
1070
+ SMALL: "small",
1071
+ MEDIUM: "medium",
1072
+ LARGE: "large"
1073
+ };
1074
+ const kdsButtonSizes = Object.values(kdsButtonSize);
1075
+ const kdsButtonVariant = {
1076
+ FILLED: "filled",
1077
+ OUTLINED: "outlined",
1078
+ TRANSPARENT: "transparent"
1079
+ };
1080
+ const kdsButtonVariants = Object.values(kdsButtonVariant);
1081
+
1082
+ const kdsDarkModeType = {
1083
+ LIGHT: "light",
1084
+ DARK: "dark",
1085
+ SYSTEM: "system"
1086
+ };
1087
+ const kdsDarkModeTypes = Object.values(kdsDarkModeType);
1088
+
1089
+ const KDS_DARK_MODE_STORAGE_KEY = "KNIME_DARK_MODE";
1090
+ const defaultMode = kdsDarkModeType.LIGHT;
1091
+ const useKdsDarkMode = () => {
1092
+ const userPreference = useLocalStorage(
1093
+ KDS_DARK_MODE_STORAGE_KEY,
1094
+ defaultMode
1095
+ );
1096
+ const isDark = useDark({
1097
+ storageKey: `${KDS_DARK_MODE_STORAGE_KEY}_EFFECTIVE`,
1098
+ initialValue: defaultMode,
1099
+ onChanged: (isDarkValue) => {
1100
+ let cssMode, themeValue;
1101
+ if (userPreference.value === kdsDarkModeType.SYSTEM) {
1102
+ cssMode = "light dark";
1103
+ themeValue = kdsDarkModeType.SYSTEM;
1104
+ } else {
1105
+ cssMode = themeValue = isDarkValue ? kdsDarkModeType.DARK : kdsDarkModeType.LIGHT;
1106
+ }
1107
+ document.documentElement.style.setProperty("color-scheme", cssMode);
1108
+ document.documentElement.dataset.theme = themeValue;
1109
+ }
1110
+ });
1111
+ const systemPrefersDark = usePreferredDark();
1112
+ watch(
1113
+ [userPreference, systemPrefersDark],
1114
+ ([preference, systemDark]) => {
1115
+ if (preference === kdsDarkModeType.SYSTEM) {
1116
+ isDark.value = systemDark;
1117
+ } else {
1118
+ isDark.value = preference === kdsDarkModeType.DARK;
1119
+ }
1120
+ },
1121
+ { immediate: true }
1122
+ );
1123
+ const currentMode = computed({
1124
+ get() {
1125
+ return userPreference.value;
1126
+ },
1127
+ set(value) {
1128
+ userPreference.value = value;
1129
+ }
1130
+ });
1131
+ const isDarkMode = computed(() => {
1132
+ return userPreference.value === kdsDarkModeType.DARK;
1133
+ });
1134
+ const isLightMode = computed(() => {
1135
+ return userPreference.value === kdsDarkModeType.LIGHT;
1136
+ });
1137
+ const isSystemMode = computed(
1138
+ () => userPreference.value === kdsDarkModeType.SYSTEM
1139
+ );
1140
+ return {
1141
+ /** Exposes a writable computed ref to get the current dark mode but also use it in e.g. a v-model to set it */
1142
+ currentMode,
1143
+ /** Whether or not the current user preference is dark. Note, if the preference is set to 'system' it will return false. */
1144
+ isDarkMode,
1145
+ /** Whether or not the current user preference is light. Note, if the preference is set to 'system' it will return false. */
1146
+ isLightMode,
1147
+ /** Whether or not the current user preference is set to 'system'. */
1148
+ isSystemMode
1149
+ };
1150
+ };
1151
+
1152
+ const legacyMode = ref(false);
1153
+ const useKdsLegacyMode = (initialValue = false) => {
1154
+ if (legacyMode.value !== initialValue) {
1155
+ legacyMode.value = initialValue;
1156
+ }
1157
+ watch(
1158
+ () => legacyMode.value,
1159
+ (newValue) => {
1160
+ document.documentElement.classList.toggle("kds-legacy", newValue);
1161
+ },
1162
+ { immediate: true }
1163
+ );
1164
+ return {
1165
+ /** Writable ref to get and/or set the legacy mode; can also be used with v-model */
1166
+ legacyMode
1167
+ };
1168
+ };
1169
+
1170
+ function elementOverflowsHorizontally(element) {
1171
+ if (!element) {
1172
+ return false;
1173
+ }
1174
+ return element.scrollWidth > element.clientWidth;
1175
+ }
1176
+ function useKdsIsTruncated(elementRef) {
1177
+ const isTruncated = ref(false);
1178
+ useResizeObserver(elementRef, () => {
1179
+ isTruncated.value = elementOverflowsHorizontally(elementRef.value);
1180
+ });
1181
+ return { isTruncated };
1182
+ }
1183
+
1184
+ const _hoisted_1$g = ["id", "for", "title"];
1185
+ const _sfc_main$l = /* @__PURE__ */ defineComponent({
1186
+ __name: "KdsLabel",
1187
+ props: {
880
1188
  label: {},
881
- leadingIcon: {},
882
- trailingIcon: {},
883
- ariaLabel: {}
884
- }, {
885
- "modelValue": { type: Boolean, ...{ default: false } },
886
- "modelModifiers": {}
887
- }),
888
- emits: ["update:modelValue"],
1189
+ id: {},
1190
+ for: {}
1191
+ },
889
1192
  setup(__props) {
890
1193
  const props = __props;
891
- const modelValue = useModel(__props, "modelValue");
1194
+ const labelEl = useTemplateRef("labelEl");
1195
+ const { isTruncated } = useKdsIsTruncated(labelEl);
892
1196
  return (_ctx, _cache) => {
893
- return openBlock(), createBlock(BaseButton, mergeProps(props, {
894
- toggled: modelValue.value,
895
- "aria-pressed": modelValue.value,
896
- onClick: _cache[0] || (_cache[0] = ($event) => modelValue.value = !modelValue.value)
897
- }), null, 16, ["toggled", "aria-pressed"]);
1197
+ return openBlock(), createElementBlock("label", {
1198
+ id: props.id,
1199
+ ref_key: "labelEl",
1200
+ ref: labelEl,
1201
+ for: props.for,
1202
+ class: "label",
1203
+ title: unref(isTruncated) ? props.label : void 0
1204
+ }, toDisplayString(props.label), 9, _hoisted_1$g);
898
1205
  };
899
1206
  }
900
1207
  });
901
1208
 
902
- const _hoisted_1$e = ["id"];
903
- const _hoisted_2$5 = { class: "subtext-text" };
904
- const _sfc_main$j = /* @__PURE__ */ defineComponent({
1209
+ const KdsLabel = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-76bdc306"]]);
1210
+
1211
+ const _hoisted_1$f = ["id"];
1212
+ const _hoisted_2$6 = { class: "subtext-text" };
1213
+ const _sfc_main$k = /* @__PURE__ */ defineComponent({
905
1214
  __name: "KdsSubText",
906
1215
  props: {
907
1216
  id: {},
@@ -932,27 +1241,27 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
932
1241
  variant: "onSurface",
933
1242
  "aria-hidden": "true"
934
1243
  })) : createCommentVNode("", true),
935
- createElementVNode("span", _hoisted_2$5, toDisplayString(props.subText), 1)
936
- ], 10, _hoisted_1$e)) : createCommentVNode("", true);
1244
+ createElementVNode("span", _hoisted_2$6, toDisplayString(props.subText), 1)
1245
+ ], 10, _hoisted_1$f)) : createCommentVNode("", true);
937
1246
  };
938
1247
  }
939
1248
  });
940
1249
 
941
- const KdsSubText = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-58a95aa3"]]);
1250
+ const KdsSubText = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-58a95aa3"]]);
942
1251
 
943
- const _hoisted_1$d = ["disabled", "title", "aria-label", "aria-checked", "aria-describedby", "aria-invalid"];
944
- const _hoisted_2$4 = { class: "control" };
945
- const _hoisted_3$4 = {
1252
+ const _hoisted_1$e = ["disabled", "title", "aria-label", "aria-checked", "aria-describedby", "aria-invalid"];
1253
+ const _hoisted_2$5 = { class: "control" };
1254
+ const _hoisted_3$5 = {
946
1255
  key: 0,
947
1256
  class: "content"
948
1257
  };
949
- const _hoisted_4$3 = { class: "label" };
1258
+ const _hoisted_4$4 = { class: "label" };
950
1259
  const _hoisted_5$1 = ["id"];
951
1260
  const _hoisted_6$1 = {
952
1261
  key: 0,
953
1262
  class: "subtext-wrapper"
954
1263
  };
955
- const _sfc_main$i = /* @__PURE__ */ defineComponent({
1264
+ const _sfc_main$j = /* @__PURE__ */ defineComponent({
956
1265
  __name: "BaseCheckbox",
957
1266
  props: /* @__PURE__ */ mergeModels({
958
1267
  disabled: { type: Boolean, default: false },
@@ -963,7 +1272,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
963
1272
  title: {},
964
1273
  helperText: {}
965
1274
  }, {
966
- "modelValue": { type: [Boolean, String], ...{ default: false } },
1275
+ "modelValue": { default: false },
967
1276
  "modelModifiers": {}
968
1277
  }),
969
1278
  emits: ["update:modelValue"],
@@ -1025,7 +1334,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
1025
1334
  role: "checkbox",
1026
1335
  onClick: handleClick
1027
1336
  }, [
1028
- createElementVNode("div", _hoisted_2$4, [
1337
+ createElementVNode("div", _hoisted_2$5, [
1029
1338
  icon.value ? (openBlock(), createBlock(KdsIcon, {
1030
1339
  key: 0,
1031
1340
  name: icon.value,
@@ -1033,15 +1342,15 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
1033
1342
  size: "xsmall"
1034
1343
  }, null, 8, ["name"])) : createCommentVNode("", true)
1035
1344
  ]),
1036
- props.label || props.helperText ? (openBlock(), createElementBlock("div", _hoisted_3$4, [
1037
- createElementVNode("div", _hoisted_4$3, toDisplayString(props.label), 1),
1345
+ props.label || props.helperText ? (openBlock(), createElementBlock("div", _hoisted_3$5, [
1346
+ createElementVNode("div", _hoisted_4$4, toDisplayString(props.label), 1),
1038
1347
  props.helperText ? (openBlock(), createElementBlock("div", {
1039
1348
  key: 0,
1040
1349
  id: unref(helperId),
1041
1350
  class: "helper-text"
1042
1351
  }, toDisplayString(props.helperText), 9, _hoisted_5$1)) : createCommentVNode("", true)
1043
1352
  ])) : createCommentVNode("", true)
1044
- ], 10, _hoisted_1$d),
1353
+ ], 10, _hoisted_1$e),
1045
1354
  props.subText || props.preserveSubTextSpace ? (openBlock(), createElementBlock("div", _hoisted_6$1, [
1046
1355
  createVNode(KdsSubText, {
1047
1356
  id: unref(descriptionId),
@@ -1055,9 +1364,9 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
1055
1364
  }
1056
1365
  });
1057
1366
 
1058
- const BaseCheckbox = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-3751dc60"]]);
1367
+ const BaseCheckbox = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-3751dc60"]]);
1059
1368
 
1060
- const _sfc_main$h = /* @__PURE__ */ defineComponent({
1369
+ const _sfc_main$i = /* @__PURE__ */ defineComponent({
1061
1370
  __name: "KdsCheckbox",
1062
1371
  props: /* @__PURE__ */ mergeModels({
1063
1372
  disabled: { type: Boolean, default: false },
@@ -1067,7 +1376,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
1067
1376
  label: {},
1068
1377
  title: {}
1069
1378
  }, {
1070
- "modelValue": { type: [Boolean, String], ...{ default: false } },
1379
+ "modelValue": { default: false },
1071
1380
  "modelModifiers": {}
1072
1381
  }),
1073
1382
  emits: ["update:modelValue"],
@@ -1089,128 +1398,8 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
1089
1398
  }
1090
1399
  });
1091
1400
 
1092
- const KDS_DARK_MODE_STORAGE_KEY = "KNIME_DARK_MODE";
1093
- const defaultMode = "light";
1094
- const useKdsDarkMode = () => {
1095
- const userPreference = useLocalStorage(
1096
- KDS_DARK_MODE_STORAGE_KEY,
1097
- defaultMode
1098
- );
1099
- const isDark = useDark({
1100
- storageKey: `${KDS_DARK_MODE_STORAGE_KEY}_EFFECTIVE`,
1101
- initialValue: defaultMode,
1102
- onChanged: (isDarkValue) => {
1103
- let cssMode, themeValue;
1104
- if (userPreference.value === "system") {
1105
- cssMode = "light dark";
1106
- themeValue = "system";
1107
- } else {
1108
- cssMode = themeValue = isDarkValue ? "dark" : "light";
1109
- }
1110
- document.documentElement.style.setProperty("color-scheme", cssMode);
1111
- document.documentElement.dataset.theme = themeValue;
1112
- }
1113
- });
1114
- const systemPrefersDark = usePreferredDark();
1115
- watch(
1116
- [userPreference, systemPrefersDark],
1117
- ([preference, systemDark]) => {
1118
- if (preference === "system") {
1119
- isDark.value = systemDark;
1120
- } else {
1121
- isDark.value = preference === "dark";
1122
- }
1123
- },
1124
- { immediate: true }
1125
- );
1126
- const currentMode = computed({
1127
- get() {
1128
- return userPreference.value;
1129
- },
1130
- set(value) {
1131
- userPreference.value = value;
1132
- }
1133
- });
1134
- const isDarkMode = computed(() => {
1135
- return userPreference.value === "dark";
1136
- });
1137
- const isLightMode = computed(() => {
1138
- return userPreference.value === "light";
1139
- });
1140
- const isSystemMode = computed(() => userPreference.value === "system");
1141
- return {
1142
- /** Exposes a writable computed ref to get the current dark mode but also use it in e.g. a v-model to set it */
1143
- currentMode,
1144
- /** Whether or not the current user preference is dark. Note, if the preference is set to 'system' it will return false. */
1145
- isDarkMode,
1146
- /** Whether or not the current user preference is light. Note, if the preference is set to 'system' it will return false. */
1147
- isLightMode,
1148
- /** Whether or not the current user preference is set to 'system'. */
1149
- isSystemMode
1150
- };
1151
- };
1152
-
1153
- const legacyMode = ref(false);
1154
- const useKdsLegacyMode = (initialValue = false) => {
1155
- if (legacyMode.value !== initialValue) {
1156
- legacyMode.value = initialValue;
1157
- }
1158
- watch(
1159
- () => legacyMode.value,
1160
- (newValue) => {
1161
- document.documentElement.classList.toggle("kds-legacy", newValue);
1162
- },
1163
- { immediate: true }
1164
- );
1165
- return {
1166
- /** Writable ref to get and/or set the legacy mode; can also be used with v-model */
1167
- legacyMode
1168
- };
1169
- };
1170
-
1171
- function elementOverflowsHorizontally(element) {
1172
- if (!element) {
1173
- return false;
1174
- }
1175
- return element.scrollWidth > element.clientWidth;
1176
- }
1177
- function useKdsIsTruncated(elementRef) {
1178
- const isTruncated = ref(false);
1179
- useResizeObserver(elementRef, () => {
1180
- isTruncated.value = elementOverflowsHorizontally(elementRef.value);
1181
- });
1182
- return { isTruncated };
1183
- }
1184
-
1185
- const _hoisted_1$c = ["id", "for", "title"];
1186
- const _sfc_main$g = /* @__PURE__ */ defineComponent({
1187
- __name: "KdsLabel",
1188
- props: {
1189
- label: {},
1190
- id: {},
1191
- for: {}
1192
- },
1193
- setup(__props) {
1194
- const props = __props;
1195
- const labelEl = ref(null);
1196
- const { isTruncated } = useKdsIsTruncated(labelEl);
1197
- return (_ctx, _cache) => {
1198
- return openBlock(), createElementBlock("label", {
1199
- id: props.id,
1200
- ref_key: "labelEl",
1201
- ref: labelEl,
1202
- for: props.for,
1203
- class: "label",
1204
- title: unref(isTruncated) ? props.label : void 0
1205
- }, toDisplayString(props.label), 9, _hoisted_1$c);
1206
- };
1207
- }
1208
- });
1209
-
1210
- const KdsLabel = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-174d476a"]]);
1211
-
1212
- const _hoisted_1$b = ["id", "aria-labelledby", "aria-describedby"];
1213
- const _sfc_main$f = /* @__PURE__ */ defineComponent({
1401
+ const _hoisted_1$d = ["id", "aria-labelledby", "aria-describedby"];
1402
+ const _sfc_main$h = /* @__PURE__ */ defineComponent({
1214
1403
  __name: "KdsCheckboxGroup",
1215
1404
  props: /* @__PURE__ */ mergeModels({
1216
1405
  id: {},
@@ -1294,26 +1483,40 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1294
1483
  "preserve-sub-text-space": props.preserveSubTextSpace,
1295
1484
  error: hasError.value
1296
1485
  }, null, 8, ["id", "sub-text", "preserve-sub-text-space", "error"])
1297
- ], 8, _hoisted_1$b);
1486
+ ], 8, _hoisted_1$d);
1298
1487
  };
1299
1488
  }
1300
1489
  });
1301
1490
 
1302
- const KdsCheckboxGroup = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-538e7d4c"]]);
1491
+ const KdsCheckboxGroup = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-538e7d4c"]]);
1492
+
1493
+ const kdsCheckboxGroupAlignment = {
1494
+ VERTICAL: "vertical",
1495
+ HORIZONTAL: "horizontal"
1496
+ };
1497
+ const kdsCheckboxGroupAlignments = Object.values(
1498
+ kdsCheckboxGroupAlignment
1499
+ );
1500
+ const kdsCheckboxValue = {
1501
+ CHECKED: true,
1502
+ UNCHECKED: false,
1503
+ INDETERMINATE: "indeterminate"
1504
+ };
1505
+ const kdsCheckboxValues = Object.values(kdsCheckboxValue);
1303
1506
 
1304
- const _hoisted_1$a = ["aria-checked", "aria-describedby", "aria-invalid", "disabled"];
1305
- const _hoisted_2$3 = { class: "control" };
1306
- const _hoisted_3$3 = {
1507
+ const _hoisted_1$c = ["aria-checked", "aria-describedby", "aria-invalid", "disabled"];
1508
+ const _hoisted_2$4 = { class: "control" };
1509
+ const _hoisted_3$4 = {
1307
1510
  key: 0,
1308
1511
  class: "dot",
1309
1512
  viewBox: "0 0 2 2",
1310
1513
  "aria-hidden": "true",
1311
1514
  focusable: "false"
1312
1515
  };
1313
- const _hoisted_4$2 = { class: "content" };
1516
+ const _hoisted_4$3 = { class: "content" };
1314
1517
  const _hoisted_5 = { class: "label" };
1315
1518
  const _hoisted_6 = ["id"];
1316
- const _sfc_main$e = /* @__PURE__ */ defineComponent({
1519
+ const _sfc_main$g = /* @__PURE__ */ defineComponent({
1317
1520
  __name: "KdsRadioButton",
1318
1521
  props: /* @__PURE__ */ mergeModels({
1319
1522
  text: {},
@@ -1353,8 +1556,8 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1353
1556
  type: "button",
1354
1557
  onClick: handleClick
1355
1558
  }, [
1356
- createElementVNode("div", _hoisted_2$3, [
1357
- modelValue.value ? (openBlock(), createElementBlock("svg", _hoisted_3$3, [..._cache[0] || (_cache[0] = [
1559
+ createElementVNode("div", _hoisted_2$4, [
1560
+ modelValue.value ? (openBlock(), createElementBlock("svg", _hoisted_3$4, [..._cache[0] || (_cache[0] = [
1358
1561
  createElementVNode("circle", {
1359
1562
  cx: "1",
1360
1563
  cy: "1",
@@ -1362,7 +1565,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1362
1565
  }, null, -1)
1363
1566
  ])])) : createCommentVNode("", true)
1364
1567
  ]),
1365
- createElementVNode("div", _hoisted_4$2, [
1568
+ createElementVNode("div", _hoisted_4$3, [
1366
1569
  createElementVNode("div", _hoisted_5, toDisplayString(props.text), 1),
1367
1570
  props.helperText ? (openBlock(), createElementBlock("div", {
1368
1571
  key: 0,
@@ -1370,12 +1573,12 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1370
1573
  class: "helper-text"
1371
1574
  }, toDisplayString(props.helperText), 9, _hoisted_6)) : createCommentVNode("", true)
1372
1575
  ])
1373
- ], 10, _hoisted_1$a);
1576
+ ], 10, _hoisted_1$c);
1374
1577
  };
1375
1578
  }
1376
1579
  });
1377
1580
 
1378
- const KdsRadioButton = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-a7490a52"]]);
1581
+ const KdsRadioButton = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-a7490a52"]]);
1379
1582
 
1380
1583
  const useRadioSelection = ({
1381
1584
  selectedId,
@@ -1497,8 +1700,8 @@ const useRadioSelection = ({
1497
1700
  };
1498
1701
  };
1499
1702
 
1500
- const _hoisted_1$9 = ["id", "aria-labelledby", "aria-describedby"];
1501
- const _sfc_main$d = /* @__PURE__ */ defineComponent({
1703
+ const _hoisted_1$b = ["id", "aria-labelledby", "aria-describedby"];
1704
+ const _sfc_main$f = /* @__PURE__ */ defineComponent({
1502
1705
  __name: "KdsRadioButtonGroup",
1503
1706
  props: /* @__PURE__ */ mergeModels({
1504
1707
  id: {},
@@ -1527,7 +1730,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
1527
1730
  const labelId = useId();
1528
1731
  const descriptionId = useId();
1529
1732
  const groupName = useId();
1530
- const optionContainer = ref(null);
1733
+ const optionContainer = useTemplateRef("optionContainer");
1531
1734
  const { tabIndexForOption, handleClick, handleKeyDown, hasError } = useRadioSelection({
1532
1735
  selectedId: modelValue,
1533
1736
  options,
@@ -1577,15 +1780,15 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
1577
1780
  "preserve-sub-text-space": props.preserveSubTextSpace,
1578
1781
  error: unref(hasError)
1579
1782
  }, null, 8, ["id", "sub-text", "preserve-sub-text-space", "error"])
1580
- ], 8, _hoisted_1$9);
1783
+ ], 8, _hoisted_1$b);
1581
1784
  };
1582
1785
  }
1583
1786
  });
1584
1787
 
1585
- const KdsRadioButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-b0e27ba1"]]);
1788
+ const KdsRadioButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-15fb8864"]]);
1586
1789
 
1587
- const _hoisted_1$8 = ["aria-checked", "aria-label", "disabled", "tabindex", "title"];
1588
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
1790
+ const _hoisted_1$a = ["aria-checked", "aria-label", "disabled", "tabindex", "title"];
1791
+ const _sfc_main$e = /* @__PURE__ */ defineComponent({
1589
1792
  __name: "ValueSwitchItem",
1590
1793
  props: {
1591
1794
  selected: { type: Boolean },
@@ -1601,7 +1804,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
1601
1804
  },
1602
1805
  setup(__props) {
1603
1806
  const props = __props;
1604
- const optionTextEl = ref(null);
1807
+ const optionTextEl = useTemplateRef("optionTextEl");
1605
1808
  const { isTruncated } = useKdsIsTruncated(optionTextEl);
1606
1809
  return (_ctx, _cache) => {
1607
1810
  return openBlock(), createElementBlock("button", {
@@ -1635,12 +1838,12 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
1635
1838
  name: props.trailingIcon,
1636
1839
  size: props.size
1637
1840
  }, null, 8, ["name", "size"])) : createCommentVNode("", true)
1638
- ], 10, _hoisted_1$8);
1841
+ ], 10, _hoisted_1$a);
1639
1842
  };
1640
1843
  }
1641
1844
  });
1642
1845
 
1643
- const ValueSwitchItem = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-68535333"]]);
1846
+ const ValueSwitchItem = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-93f3f577"]]);
1644
1847
 
1645
1848
  const useValueSwitchIconHiding = ({
1646
1849
  width,
@@ -1691,8 +1894,8 @@ const useValueSwitchIconHiding = ({
1691
1894
  };
1692
1895
  };
1693
1896
 
1694
- const _hoisted_1$7 = ["id", "aria-invalid", "aria-labelledby", "aria-describedby"];
1695
- const _sfc_main$b = /* @__PURE__ */ defineComponent({
1897
+ const _hoisted_1$9 = ["id", "aria-invalid", "aria-labelledby", "aria-describedby"];
1898
+ const _sfc_main$d = /* @__PURE__ */ defineComponent({
1696
1899
  __name: "KdsValueSwitch",
1697
1900
  props: /* @__PURE__ */ mergeModels({
1698
1901
  id: {},
@@ -1722,13 +1925,15 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
1722
1925
  );
1723
1926
  const labelId = useId();
1724
1927
  const descriptionId = useId();
1725
- const availableWidthContainer = ref(null);
1928
+ const availableWidthContainer = useTemplateRef(
1929
+ "availableWidthContainer"
1930
+ );
1726
1931
  const { width } = useElementSize(availableWidthContainer);
1727
1932
  const { shouldHideIcons, setItemEl } = useValueSwitchIconHiding({
1728
1933
  width,
1729
1934
  options
1730
1935
  });
1731
- const optionContainer = ref(null);
1936
+ const optionContainer = useTemplateRef("optionContainer");
1732
1937
  const { tabIndexForOption, handleClick, handleKeyDown } = useRadioSelection({
1733
1938
  selectedId: modelValue,
1734
1939
  options,
@@ -1783,15 +1988,33 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
1783
1988
  "preserve-sub-text-space": props.preserveSubTextSpace,
1784
1989
  error: props.error
1785
1990
  }, null, 8, ["id", "sub-text", "preserve-sub-text-space", "error"])
1786
- ], 10, _hoisted_1$7);
1991
+ ], 10, _hoisted_1$9);
1787
1992
  };
1788
1993
  }
1789
1994
  });
1790
1995
 
1791
- const KdsValueSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-e5da4485"]]);
1996
+ const KdsValueSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-56b594ad"]]);
1792
1997
 
1793
- const _hoisted_1$6 = { class: "kds-form-field" };
1794
- const _sfc_main$a = /* @__PURE__ */ defineComponent({
1998
+ const kdsRadioButtonGroupAlignment = {
1999
+ VERTICAL: "vertical",
2000
+ HORIZONTAL: "horizontal"
2001
+ };
2002
+ const kdsRadioButtonGroupAlignments = Object.values(
2003
+ kdsRadioButtonGroupAlignment
2004
+ );
2005
+ const kdsValueSwitchSize = {
2006
+ SMALL: "small",
2007
+ MEDIUM: "medium"
2008
+ };
2009
+ const kdsValueSwitchSizes = Object.values(kdsValueSwitchSize);
2010
+ const kdsValueSwitchVariant = {
2011
+ DEFAULT: "default",
2012
+ MUTED: "muted"
2013
+ };
2014
+ const kdsValueSwitchVariants = Object.values(kdsValueSwitchVariant);
2015
+
2016
+ const _hoisted_1$8 = { class: "kds-form-field" };
2017
+ const _sfc_main$c = /* @__PURE__ */ defineComponent({
1795
2018
  __name: "BaseFormFieldWrapper",
1796
2019
  props: {
1797
2020
  id: {},
@@ -1805,11 +2028,11 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
1805
2028
  setup(__props) {
1806
2029
  const props = __props;
1807
2030
  const fallbackId = useId();
1808
- const inputId = computed(() => props.id ?? fallbackId);
2031
+ const inputId = computed(() => props.id?.trim() || fallbackId);
1809
2032
  const labelId = computed(() => `${inputId.value}-label`);
1810
2033
  const subTextId = computed(() => `${inputId.value}-subtext`);
1811
2034
  return (_ctx, _cache) => {
1812
- return openBlock(), createElementBlock("div", _hoisted_1$6, [
2035
+ return openBlock(), createElementBlock("div", _hoisted_1$8, [
1813
2036
  props.label ? (openBlock(), createBlock(KdsLabel, {
1814
2037
  key: 0,
1815
2038
  id: labelId.value,
@@ -1835,22 +2058,22 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
1835
2058
  }
1836
2059
  });
1837
2060
 
1838
- const BaseFormFieldWrapper = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-016a46e9"]]);
2061
+ const BaseFormFieldWrapper = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-52b1df11"]]);
1839
2062
 
1840
- const _hoisted_1$5 = {
2063
+ const _hoisted_1$7 = {
1841
2064
  key: 0,
1842
2065
  class: "icon-wrapper leading"
1843
2066
  };
1844
- const _hoisted_2$2 = ["id", "value", "type", "inputmode", "placeholder", "disabled", "readonly", "required", "name", "autocomplete", "min", "max", "step", "aria-label", "aria-labelledby", "aria-describedby", "aria-invalid", "role", "aria-valuenow", "aria-valuemin", "aria-valuemax", "aria-valuetext"];
1845
- const _hoisted_3$2 = {
2067
+ const _hoisted_2$3 = ["id", "value", "type", "inputmode", "placeholder", "disabled", "readonly", "required", "name", "autocomplete", "min", "max", "step", "aria-label", "aria-labelledby", "aria-describedby", "aria-invalid", "role", "aria-valuenow", "aria-valuemin", "aria-valuemax", "aria-valuetext"];
2068
+ const _hoisted_3$3 = {
1846
2069
  key: 3,
1847
2070
  class: "trailing-slot"
1848
2071
  };
1849
- const _hoisted_4$1 = {
2072
+ const _hoisted_4$2 = {
1850
2073
  key: 4,
1851
2074
  class: "icon-wrapper trailing"
1852
2075
  };
1853
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
2076
+ const _sfc_main$b = /* @__PURE__ */ defineComponent({
1854
2077
  __name: "BaseInput",
1855
2078
  props: /* @__PURE__ */ mergeModels({
1856
2079
  id: {},
@@ -1888,7 +2111,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1888
2111
  const props = __props;
1889
2112
  const emit = __emit;
1890
2113
  const modelValue = useModel(__props, "modelValue");
1891
- const inputRef = ref(null);
2114
+ const inputRef = useTemplateRef("input");
1892
2115
  const hasValue = computed(() => modelValue.value.length > 0);
1893
2116
  const showUnitPlaceholder = computed(
1894
2117
  () => Boolean(props.unit) && modelValue.value.trim().length === 0
@@ -1926,7 +2149,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1926
2149
  }),
1927
2150
  onClick: handleContainerClick
1928
2151
  }, [
1929
- props.leadingIcon ? (openBlock(), createElementBlock("div", _hoisted_1$5, [
2152
+ props.leadingIcon ? (openBlock(), createElementBlock("div", _hoisted_1$7, [
1930
2153
  props.leadingIcon ? (openBlock(), createBlock(KdsIcon, {
1931
2154
  key: 0,
1932
2155
  name: props.leadingIcon
@@ -1934,8 +2157,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1934
2157
  ])) : createCommentVNode("", true),
1935
2158
  createElementVNode("input", {
1936
2159
  id: props.id,
1937
- ref_key: "inputRef",
1938
- ref: inputRef,
2160
+ ref: "input",
1939
2161
  value: modelValue.value,
1940
2162
  type: props.type,
1941
2163
  inputmode: props.inputmode,
@@ -1963,7 +2185,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1963
2185
  onBlur: _cache[1] || (_cache[1] = ($event) => emit("blur", $event)),
1964
2186
  onKeydown: _cache[2] || (_cache[2] = ($event) => emit("keydown", $event)),
1965
2187
  onClick: _cache[3] || (_cache[3] = ($event) => emit("click", $event))
1966
- }, null, 42, _hoisted_2$2),
2188
+ }, null, 42, _hoisted_2$3),
1967
2189
  props.unit ? (openBlock(), createElementBlock("span", {
1968
2190
  key: 1,
1969
2191
  class: normalizeClass({
@@ -1972,7 +2194,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1972
2194
  disabled: props.disabled
1973
2195
  })
1974
2196
  }, toDisplayString(props.unit), 3)) : createCommentVNode("", true),
1975
- props.clearable && hasValue.value && !props.disabled && !props.readonly ? (openBlock(), createBlock(_sfc_main$u, {
2197
+ props.clearable && hasValue.value && !props.disabled && !props.readonly ? (openBlock(), createBlock(_sfc_main$r, {
1976
2198
  key: 2,
1977
2199
  class: "clear-button",
1978
2200
  type: "button",
@@ -1983,10 +2205,10 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1983
2205
  title: "Clear",
1984
2206
  onClick: withModifiers(clearAndFocusInput, ["stop"])
1985
2207
  })) : createCommentVNode("", true),
1986
- _ctx.$slots.trailing ? (openBlock(), createElementBlock("div", _hoisted_3$2, [
2208
+ _ctx.$slots.trailing ? (openBlock(), createElementBlock("div", _hoisted_3$3, [
1987
2209
  renderSlot(_ctx.$slots, "trailing", {}, void 0, true)
1988
2210
  ])) : createCommentVNode("", true),
1989
- props.trailingIcon ? (openBlock(), createElementBlock("div", _hoisted_4$1, [
2211
+ props.trailingIcon ? (openBlock(), createElementBlock("div", _hoisted_4$2, [
1990
2212
  createVNode(KdsIcon, {
1991
2213
  name: props.trailingIcon
1992
2214
  }, null, 8, ["name"])
@@ -1996,53 +2218,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
1996
2218
  }
1997
2219
  });
1998
2220
 
1999
- const BaseInput = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-65b0462f"]]);
2000
-
2001
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
2002
- __name: "KdsTextInput",
2003
- props: /* @__PURE__ */ mergeModels({
2004
- label: {},
2005
- ariaLabel: {},
2006
- id: {},
2007
- subText: {},
2008
- error: { type: Boolean, default: false },
2009
- validating: { type: Boolean, default: false },
2010
- preserveSubTextSpace: { type: Boolean, default: false },
2011
- placeholder: {},
2012
- disabled: { type: Boolean, default: false },
2013
- readonly: { type: Boolean, default: false },
2014
- required: { type: Boolean, default: false },
2015
- name: {},
2016
- autocomplete: {}
2017
- }, {
2018
- "modelValue": { default: "" },
2019
- "modelModifiers": {}
2020
- }),
2021
- emits: ["update:modelValue"],
2022
- setup(__props) {
2023
- const props = __props;
2024
- const modelValue = useModel(__props, "modelValue");
2025
- return (_ctx, _cache) => {
2026
- return openBlock(), createBlock(BaseFormFieldWrapper, normalizeProps(guardReactiveProps(props)), {
2027
- default: withCtx((slotProps) => [
2028
- createVNode(BaseInput, mergeProps(slotProps, {
2029
- modelValue: modelValue.value,
2030
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
2031
- type: "text",
2032
- placeholder: props.placeholder,
2033
- disabled: props.disabled,
2034
- readonly: props.readonly,
2035
- required: props.required,
2036
- error: props.error,
2037
- name: props.name,
2038
- autocomplete: props.autocomplete
2039
- }), null, 16, ["modelValue", "placeholder", "disabled", "readonly", "required", "error", "name", "autocomplete"])
2040
- ]),
2041
- _: 1
2042
- }, 16);
2043
- };
2044
- }
2045
- });
2221
+ const BaseInput = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-cf72eb5a"]]);
2046
2222
 
2047
2223
  const additionalGroupSeparators = [" ", " ", " "];
2048
2224
  const decimalSeparatorSample = 1.1;
@@ -2166,7 +2342,7 @@ const createKdsNumberParser = (params) => {
2166
2342
  };
2167
2343
  };
2168
2344
 
2169
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
2345
+ const _sfc_main$a = /* @__PURE__ */ defineComponent({
2170
2346
  __name: "KdsNumberInput",
2171
2347
  props: /* @__PURE__ */ mergeModels({
2172
2348
  label: {},
@@ -2196,9 +2372,8 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
2196
2372
  const modelValue = useModel(__props, "modelValue");
2197
2373
  const isFocused = ref(false);
2198
2374
  const localValue = ref("");
2199
- const locale = computed(() => globalThis.navigator?.language || "en-US");
2200
2375
  const numberParser = computed(
2201
- () => createKdsNumberParser({ locale: locale.value, step: props.step })
2376
+ () => createKdsNumberParser({ locale: "en-US", step: props.step })
2202
2377
  );
2203
2378
  const ariaValuenow = computed(
2204
2379
  () => Number.isFinite(modelValue.value) ? modelValue.value : void 0
@@ -2318,7 +2493,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
2318
2493
  onBlur: handleBlur
2319
2494
  }), {
2320
2495
  trailing: withCtx(() => [
2321
- createVNode(_sfc_main$u, {
2496
+ createVNode(_sfc_main$r, {
2322
2497
  type: "button",
2323
2498
  size: "xsmall",
2324
2499
  variant: "outlined",
@@ -2327,7 +2502,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
2327
2502
  disabled: !canDecrease.value,
2328
2503
  onClick: _cache[0] || (_cache[0] = ($event) => adjustByStep(-1))
2329
2504
  }, null, 8, ["aria-label", "disabled"]),
2330
- createVNode(_sfc_main$u, {
2505
+ createVNode(_sfc_main$r, {
2331
2506
  type: "button",
2332
2507
  size: "xsmall",
2333
2508
  variant: "outlined",
@@ -2433,7 +2608,7 @@ const parseRegexToPatternInputValue = (regex, options) => {
2433
2608
  return wildcard ?? body;
2434
2609
  };
2435
2610
 
2436
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
2611
+ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
2437
2612
  __name: "KdsPatternInput",
2438
2613
  props: /* @__PURE__ */ mergeModels({
2439
2614
  label: {},
@@ -2509,7 +2684,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
2509
2684
  clearable: ""
2510
2685
  }), {
2511
2686
  trailing: withCtx(() => [
2512
- createVNode(_sfc_main$k, {
2687
+ createVNode(_sfc_main$p, {
2513
2688
  modelValue: caseSensitive.value,
2514
2689
  "onUpdate:modelValue": [
2515
2690
  _cache[0] || (_cache[0] = ($event) => caseSensitive.value = $event),
@@ -2522,7 +2697,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
2522
2697
  "aria-label": caseSensitiveAriaLabel.value,
2523
2698
  disabled: props.disabled || props.readonly
2524
2699
  }, null, 8, ["modelValue", "title", "aria-label", "disabled"]),
2525
- createVNode(_sfc_main$k, {
2700
+ createVNode(_sfc_main$p, {
2526
2701
  modelValue: excludeMatches.value,
2527
2702
  "onUpdate:modelValue": [
2528
2703
  _cache[1] || (_cache[1] = ($event) => excludeMatches.value = $event),
@@ -2535,7 +2710,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
2535
2710
  "aria-label": excludeMatchesAriaLabel.value,
2536
2711
  disabled: props.disabled || props.readonly
2537
2712
  }, null, 8, ["modelValue", "title", "aria-label", "disabled"]),
2538
- createVNode(_sfc_main$k, {
2713
+ createVNode(_sfc_main$p, {
2539
2714
  modelValue: useRegex.value,
2540
2715
  "onUpdate:modelValue": [
2541
2716
  _cache[2] || (_cache[2] = ($event) => useRegex.value = $event),
@@ -2558,7 +2733,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
2558
2733
  }
2559
2734
  });
2560
2735
 
2561
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
2736
+ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
2562
2737
  __name: "KdsSearchInput",
2563
2738
  props: /* @__PURE__ */ mergeModels({
2564
2739
  label: {},
@@ -2582,7 +2757,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
2582
2757
  setup(__props, { expose: __expose }) {
2583
2758
  const props = __props;
2584
2759
  const modelValue = useModel(__props, "modelValue");
2585
- const baseInputRef = ref(null);
2760
+ const baseInputRef = useTemplateRef("baseInput");
2586
2761
  __expose({
2587
2762
  /**
2588
2763
  * Focuses the input element
@@ -2592,10 +2767,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
2592
2767
  return (_ctx, _cache) => {
2593
2768
  return openBlock(), createBlock(BaseFormFieldWrapper, normalizeProps(guardReactiveProps(props)), {
2594
2769
  default: withCtx((slotProps) => [
2595
- createVNode(BaseInput, mergeProps({
2596
- ref_key: "baseInputRef",
2597
- ref: baseInputRef
2598
- }, slotProps, {
2770
+ createVNode(BaseInput, mergeProps({ ref: "baseInput" }, slotProps, {
2599
2771
  modelValue: modelValue.value,
2600
2772
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
2601
2773
  type: "search",
@@ -2616,8 +2788,54 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
2616
2788
  }
2617
2789
  });
2618
2790
 
2619
- const _hoisted_1$4 = ["rows", "placeholder", "disabled", "readonly", "required", "name", "autocomplete"];
2620
- const _sfc_main$4 = /* @__PURE__ */ defineComponent({
2791
+ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
2792
+ __name: "KdsTextInput",
2793
+ props: /* @__PURE__ */ mergeModels({
2794
+ label: {},
2795
+ ariaLabel: {},
2796
+ id: {},
2797
+ subText: {},
2798
+ error: { type: Boolean, default: false },
2799
+ validating: { type: Boolean, default: false },
2800
+ preserveSubTextSpace: { type: Boolean, default: false },
2801
+ placeholder: {},
2802
+ disabled: { type: Boolean, default: false },
2803
+ readonly: { type: Boolean, default: false },
2804
+ required: { type: Boolean, default: false },
2805
+ name: {},
2806
+ autocomplete: {}
2807
+ }, {
2808
+ "modelValue": { default: "" },
2809
+ "modelModifiers": {}
2810
+ }),
2811
+ emits: ["update:modelValue"],
2812
+ setup(__props) {
2813
+ const props = __props;
2814
+ const modelValue = useModel(__props, "modelValue");
2815
+ return (_ctx, _cache) => {
2816
+ return openBlock(), createBlock(BaseFormFieldWrapper, normalizeProps(guardReactiveProps(props)), {
2817
+ default: withCtx((slotProps) => [
2818
+ createVNode(BaseInput, mergeProps(slotProps, {
2819
+ modelValue: modelValue.value,
2820
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
2821
+ type: "text",
2822
+ placeholder: props.placeholder,
2823
+ disabled: props.disabled,
2824
+ readonly: props.readonly,
2825
+ required: props.required,
2826
+ error: props.error,
2827
+ name: props.name,
2828
+ autocomplete: props.autocomplete
2829
+ }), null, 16, ["modelValue", "placeholder", "disabled", "readonly", "required", "error", "name", "autocomplete"])
2830
+ ]),
2831
+ _: 1
2832
+ }, 16);
2833
+ };
2834
+ }
2835
+ });
2836
+
2837
+ const _hoisted_1$6 = ["rows", "placeholder", "disabled", "readonly", "required", "name", "autocomplete"];
2838
+ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
2621
2839
  __name: "KdsTextarea",
2622
2840
  props: /* @__PURE__ */ mergeModels({
2623
2841
  label: {},
@@ -2643,7 +2861,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
2643
2861
  const props = __props;
2644
2862
  const normalizedRows = computed(() => Math.max(1, props.rows));
2645
2863
  const modelValue = useModel(__props, "modelValue");
2646
- const textareaElement = ref(null);
2864
+ const textareaElement = useTemplateRef("textareaElement");
2647
2865
  function resize() {
2648
2866
  const element = textareaElement.value;
2649
2867
  if (!element) {
@@ -2674,7 +2892,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
2674
2892
  required: props.required,
2675
2893
  name: props.name,
2676
2894
  autocomplete: props.autocomplete
2677
- }), null, 16, _hoisted_1$4), [
2895
+ }), null, 16, _hoisted_1$6), [
2678
2896
  [vModelText, modelValue.value]
2679
2897
  ])
2680
2898
  ]),
@@ -2684,30 +2902,54 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
2684
2902
  }
2685
2903
  });
2686
2904
 
2687
- const KdsTextarea = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-bd6bd85c"]]);
2905
+ const KdsTextarea = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-f0055631"]]);
2688
2906
 
2689
- const modalLayoutPropsDefault = {
2907
+ const kdsModalClosedBy = {
2908
+ ANY: "any",
2909
+ CLOSEREQUEST: "closerequest",
2910
+ NONE: "none"
2911
+ };
2912
+ const kdsModalClosedByOptions = Object.values(kdsModalClosedBy);
2913
+ const kdsModalWidth = {
2914
+ SMALL: "small",
2915
+ MEDIUM: "medium",
2916
+ LARGE: "large",
2917
+ XLARGE: "xlarge",
2918
+ FULL: "full"
2919
+ };
2920
+ const kdsModalWidthSizes = Object.values(kdsModalWidth);
2921
+ const kdsModalHeight = {
2922
+ AUTO: "auto",
2923
+ FULL: "full"
2924
+ };
2925
+ const kdsModalHeightSizes = Object.values(kdsModalHeight);
2926
+ const kdsModalVariant = {
2927
+ PADDED: "padded",
2928
+ PLAIN: "plain"
2929
+ };
2930
+ const kdsModalVariants = Object.values(kdsModalVariant);
2931
+ const kdsModalLayoutPropsDefault = {
2690
2932
  title: "",
2691
- variant: "padded",
2933
+ variant: kdsModalVariant.PADDED,
2692
2934
  overflow: "auto",
2693
2935
  icon: void 0
2694
2936
  };
2695
- const modalPropsDefault = {
2937
+ const kdsModalPropsDefault = {
2696
2938
  active: false,
2697
- height: "auto",
2698
- width: "medium",
2699
- closedby: "closerequest",
2700
- ...modalLayoutPropsDefault
2939
+ height: kdsModalHeight.AUTO,
2940
+ width: kdsModalWidth.MEDIUM,
2941
+ closedby: kdsModalClosedBy.CLOSEREQUEST,
2942
+ ...kdsModalLayoutPropsDefault
2701
2943
  };
2702
2944
 
2703
- const _hoisted_1$3 = { class: "modal-header" };
2704
- const _hoisted_2$1 = { class: "modal-header-title" };
2705
- const _hoisted_3$1 = ["data-variant"];
2706
- const _hoisted_4 = {
2945
+ const _hoisted_1$5 = { class: "modal-header" };
2946
+ const _hoisted_2$2 = { class: "modal-header-title" };
2947
+ const _hoisted_3$2 = ["data-variant"];
2948
+ const _hoisted_4$1 = {
2707
2949
  key: 0,
2708
2950
  class: "modal-footer"
2709
2951
  };
2710
- const _sfc_main$3 = /* @__PURE__ */ defineComponent({
2952
+ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
2711
2953
  ...{ inheritAttrs: false },
2712
2954
  __name: "KdsModalLayout",
2713
2955
  props: /* @__PURE__ */ mergeDefaults({
@@ -2716,22 +2958,22 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
2716
2958
  icon: {},
2717
2959
  overflow: {},
2718
2960
  onClose: { type: Function }
2719
- }, modalLayoutPropsDefault),
2961
+ }, kdsModalLayoutPropsDefault),
2720
2962
  setup(__props) {
2721
2963
  useCssVars((_ctx) => ({
2722
- "cd035744": _ctx.overflow
2964
+ "v3305d0f4": _ctx.overflow
2723
2965
  }));
2724
2966
  const props = __props;
2725
2967
  return (_ctx, _cache) => {
2726
2968
  return openBlock(), createElementBlock(Fragment, null, [
2727
- createElementVNode("header", _hoisted_1$3, [
2969
+ createElementVNode("header", _hoisted_1$5, [
2728
2970
  props.icon ? (openBlock(), createBlock(KdsIcon, {
2729
2971
  key: 0,
2730
2972
  name: props.icon,
2731
2973
  size: "medium"
2732
2974
  }, null, 8, ["name"])) : createCommentVNode("", true),
2733
- createElementVNode("div", _hoisted_2$1, toDisplayString(props.title), 1),
2734
- createVNode(_sfc_main$u, {
2975
+ createElementVNode("div", _hoisted_2$2, toDisplayString(props.title), 1),
2976
+ createVNode(_sfc_main$r, {
2735
2977
  "leading-icon": "x-close",
2736
2978
  variant: "transparent",
2737
2979
  size: "medium",
@@ -2744,8 +2986,8 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
2744
2986
  "data-variant": __props.variant
2745
2987
  }, [
2746
2988
  renderSlot(_ctx.$slots, "body", {}, void 0, true)
2747
- ], 8, _hoisted_3$1),
2748
- _ctx.$slots.footer ? (openBlock(), createElementBlock("footer", _hoisted_4, [
2989
+ ], 8, _hoisted_3$2),
2990
+ _ctx.$slots.footer ? (openBlock(), createElementBlock("footer", _hoisted_4$1, [
2749
2991
  renderSlot(_ctx.$slots, "footer", {}, void 0, true)
2750
2992
  ])) : createCommentVNode("", true)
2751
2993
  ], 64);
@@ -2753,10 +2995,10 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
2753
2995
  }
2754
2996
  });
2755
2997
 
2756
- const KdsModalLayout = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-b5dcb5bc"]]);
2998
+ const KdsModalLayout = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-7dbd159b"]]);
2757
2999
 
2758
- const _hoisted_1$2 = ["closedby"];
2759
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3000
+ const _hoisted_1$4 = ["closedby"];
3001
+ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
2760
3002
  __name: "KdsModal",
2761
3003
  props: /* @__PURE__ */ mergeDefaults({
2762
3004
  icon: {},
@@ -2767,11 +3009,11 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
2767
3009
  active: { type: Boolean },
2768
3010
  closedby: {},
2769
3011
  overflow: {}
2770
- }, modalPropsDefault),
3012
+ }, kdsModalPropsDefault),
2771
3013
  emits: ["close", "closed"],
2772
3014
  setup(__props, { emit: __emit }) {
2773
3015
  useCssVars((_ctx) => ({
2774
- "v5f7d64ea": _ctx.overflow
3016
+ "v085a353b": _ctx.overflow
2775
3017
  }));
2776
3018
  const props = __props;
2777
3019
  const emit = __emit;
@@ -2848,12 +3090,12 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
2848
3090
  _: 3
2849
3091
  }, 8, ["title", "icon", "variant", "overflow"])
2850
3092
  ], true)
2851
- ], 42, _hoisted_1$2)) : createCommentVNode("", true);
3093
+ ], 42, _hoisted_1$4)) : createCommentVNode("", true);
2852
3094
  };
2853
3095
  }
2854
3096
  });
2855
3097
 
2856
- const KdsModal = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-9bd33041"]]);
3098
+ const KdsModal = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-c95b809a"]]);
2857
3099
 
2858
3100
  const createUnwrappedPromise = () => {
2859
3101
  let resolve = () => {
@@ -2946,16 +3188,16 @@ const useKdsDynamicModal = () => {
2946
3188
  };
2947
3189
  };
2948
3190
 
2949
- const _hoisted_1$1 = {
3191
+ const _hoisted_1$3 = {
2950
3192
  key: 1,
2951
3193
  class: "confirmation"
2952
3194
  };
2953
- const _hoisted_2 = { class: "message" };
2954
- const _hoisted_3 = {
3195
+ const _hoisted_2$1 = { class: "message" };
3196
+ const _hoisted_3$1 = {
2955
3197
  key: 0,
2956
3198
  class: "ask-again"
2957
3199
  };
2958
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3200
+ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
2959
3201
  __name: "KdsDynamicModalProvider",
2960
3202
  setup(__props) {
2961
3203
  const askAgain = ref(false);
@@ -3008,10 +3250,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3008
3250
  unref(config)?.type === "confirm" ? {
3009
3251
  name: "body",
3010
3252
  fn: withCtx(() => [
3011
- unref(internal).isTemplateBasedConfirm(unref(config).value) ? (openBlock(), createBlock(resolveDynamicComponent(unref(config).value.component), { key: 0 })) : (openBlock(), createElementBlock("div", _hoisted_1$1, [
3012
- createElementVNode("div", _hoisted_2, toDisplayString(unref(config).value.message), 1),
3013
- unref(config).value.doNotAskAgain ? (openBlock(), createElementBlock("div", _hoisted_3, [
3014
- createVNode(_sfc_main$h, {
3253
+ unref(internal).isTemplateBasedConfirm(unref(config).value) ? (openBlock(), createBlock(resolveDynamicComponent(unref(config).value.component), { key: 0 })) : (openBlock(), createElementBlock("div", _hoisted_1$3, [
3254
+ createElementVNode("div", _hoisted_2$1, toDisplayString(unref(config).value.message), 1),
3255
+ unref(config).value.doNotAskAgain ? (openBlock(), createElementBlock("div", _hoisted_3$1, [
3256
+ createVNode(_sfc_main$i, {
3015
3257
  modelValue: askAgain.value,
3016
3258
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => askAgain.value = $event),
3017
3259
  label: unref(config).value.doNotAskAgain.label,
@@ -3026,7 +3268,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3026
3268
  name: "footer",
3027
3269
  fn: withCtx(() => [
3028
3270
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(config).value.buttons, (button, index) => {
3029
- return openBlock(), createBlock(_sfc_main$u, {
3271
+ return openBlock(), createBlock(_sfc_main$r, {
3030
3272
  key: index,
3031
3273
  destructive: button.destructive,
3032
3274
  autofocus: button.autofocus,
@@ -3056,10 +3298,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3056
3298
  }
3057
3299
  });
3058
3300
 
3059
- const KdsDynamicModalProvider = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-1ab7aa8f"]]);
3301
+ const KdsDynamicModalProvider = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-67e036b5"]]);
3060
3302
 
3061
- const _hoisted_1 = ["id", "popover"];
3062
- const _sfc_main = /* @__PURE__ */ defineComponent({
3303
+ const _hoisted_1$2 = ["id", "popover"];
3304
+ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
3063
3305
  __name: "KdsPopover",
3064
3306
  props: /* @__PURE__ */ mergeModels({
3065
3307
  activatorEl: {},
@@ -3073,7 +3315,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
3073
3315
  setup(__props) {
3074
3316
  const props = __props;
3075
3317
  const open = useModel(__props, "modelValue");
3076
- const popoverEl = ref(null);
3318
+ const popoverEl = useTemplateRef("popoverEl");
3077
3319
  const popoverId = useId();
3078
3320
  const anchorName = `--anchor-${popoverId}`;
3079
3321
  const resolveElement = (el) => {
@@ -3140,12 +3382,170 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
3140
3382
  onToggle: _cache[0] || (_cache[0] = ($event) => open.value = $event.newState === "open")
3141
3383
  }, [
3142
3384
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
3143
- ], 46, _hoisted_1);
3385
+ ], 46, _hoisted_1$2);
3386
+ };
3387
+ }
3388
+ });
3389
+
3390
+ const KdsPopover = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-6bc7ef3b"]]);
3391
+
3392
+ const kdsPopoverPlacement = {
3393
+ TOP_LEFT: "top-left",
3394
+ TOP_RIGHT: "top-right",
3395
+ BOTTOM_LEFT: "bottom-left",
3396
+ BOTTOM_RIGHT: "bottom-right"
3397
+ };
3398
+ const kdsPopoverPlacements = Object.values(kdsPopoverPlacement);
3399
+
3400
+ const _hoisted_1$1 = ["aria-label", "aria-labelledby", "aria-disabled", "aria-pressed", "tabindex", "onKeydown"];
3401
+ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
3402
+ __name: "KdsCard",
3403
+ props: /* @__PURE__ */ mergeModels({
3404
+ variant: { default: "filled" },
3405
+ selectable: { type: Boolean, default: false },
3406
+ disabled: { type: Boolean, default: false },
3407
+ ariaLabel: {},
3408
+ ariaLabelledby: {}
3409
+ }, {
3410
+ "modelValue": { type: Boolean, ...{ default: false } },
3411
+ "modelModifiers": {}
3412
+ }),
3413
+ emits: /* @__PURE__ */ mergeModels(["click"], ["update:modelValue"]),
3414
+ setup(__props, { emit: __emit }) {
3415
+ const modelValue = useModel(__props, "modelValue");
3416
+ const emit = __emit;
3417
+ const selected = computed(() => modelValue.value && __props.selectable);
3418
+ const handleClick = (event) => {
3419
+ if (__props.disabled) {
3420
+ return;
3421
+ }
3422
+ if (__props.selectable) {
3423
+ modelValue.value = !modelValue.value;
3424
+ } else {
3425
+ emit("click", event);
3426
+ }
3427
+ };
3428
+ return (_ctx, _cache) => {
3429
+ return openBlock(), createElementBlock("div", {
3430
+ class: normalizeClass(["kds-card", [
3431
+ `variant-${__props.variant}`,
3432
+ { selected: selected.value },
3433
+ { disabled: __props.disabled }
3434
+ ]]),
3435
+ role: "button",
3436
+ "aria-label": __props.ariaLabel,
3437
+ "aria-labelledby": __props.ariaLabelledby,
3438
+ "aria-disabled": __props.disabled,
3439
+ "aria-pressed": __props.selectable ? modelValue.value : void 0,
3440
+ tabindex: __props.disabled ? -1 : 0,
3441
+ onClick: handleClick,
3442
+ onKeydown: [
3443
+ withKeys(withModifiers(handleClick, ["prevent"]), ["enter"]),
3444
+ withKeys(withModifiers(handleClick, ["prevent"]), ["space"])
3445
+ ]
3446
+ }, [
3447
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
3448
+ ], 42, _hoisted_1$1);
3449
+ };
3450
+ }
3451
+ });
3452
+
3453
+ const KdsCard = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-c64f0e2e"]]);
3454
+
3455
+ function isDefinedAndNotEmpty(obj, field) {
3456
+ return isDefined(obj[field]) && obj[field] !== "";
3457
+ }
3458
+
3459
+ const _hoisted_1 = { class: "kds-empty-state" };
3460
+ const _hoisted_2 = { class: "kds-empty-state-headline" };
3461
+ const _hoisted_3 = {
3462
+ key: 0,
3463
+ class: "kds-empty-state-description"
3464
+ };
3465
+ const _hoisted_4 = {
3466
+ key: 1,
3467
+ class: "kds-empty-state-action"
3468
+ };
3469
+ const _sfc_main = /* @__PURE__ */ defineComponent({
3470
+ __name: "KdsEmptyState",
3471
+ props: {
3472
+ headline: {},
3473
+ description: {},
3474
+ buttonSize: {},
3475
+ buttonDisabled: { type: Boolean },
3476
+ buttonTitle: {},
3477
+ buttonVariant: {},
3478
+ buttonDestructive: { type: Boolean },
3479
+ buttonLabel: {},
3480
+ buttonLeadingIcon: {},
3481
+ buttonTrailingIcon: {},
3482
+ buttonAriaLabel: {},
3483
+ buttonTo: {},
3484
+ buttonDownload: { type: Boolean },
3485
+ buttonTarget: {},
3486
+ buttonRel: {}
3487
+ },
3488
+ emits: ["buttonClick"],
3489
+ setup(__props, { emit: __emit }) {
3490
+ const props = __props;
3491
+ const emit = __emit;
3492
+ const hasButton = computed(() => {
3493
+ return isDefinedAndNotEmpty(props, "buttonLabel") || isDefinedAndNotEmpty(props, "buttonLeadingIcon");
3494
+ });
3495
+ const buttonType = computed(() => {
3496
+ if (isDefinedAndNotEmpty(props, "buttonTo")) {
3497
+ return _sfc_main$q;
3498
+ }
3499
+ return _sfc_main$r;
3500
+ });
3501
+ const mapProps = (mappings) => {
3502
+ return Object.fromEntries(
3503
+ mappings.map(([targetKey, sourceKey]) => [targetKey, props[sourceKey]]).filter(([, value]) => value !== void 0)
3504
+ );
3505
+ };
3506
+ const buttonProps = computed(() => {
3507
+ if (!hasButton.value) {
3508
+ return {};
3509
+ }
3510
+ const baseProps = mapProps([
3511
+ ["label", "buttonLabel"],
3512
+ ["leadingIcon", "buttonLeadingIcon"],
3513
+ ["trailingIcon", "buttonTrailingIcon"],
3514
+ ["ariaLabel", "buttonAriaLabel"],
3515
+ ["disabled", "buttonDisabled"],
3516
+ ["variant", "buttonVariant"],
3517
+ ["size", "buttonSize"],
3518
+ ["destructive", "buttonDestructive"],
3519
+ ["title", "buttonTitle"]
3520
+ ]);
3521
+ if (buttonType.value !== _sfc_main$q) {
3522
+ return baseProps;
3523
+ }
3524
+ return {
3525
+ ...baseProps,
3526
+ ...mapProps([
3527
+ ["to", "buttonTo"],
3528
+ ["target", "buttonTarget"],
3529
+ ["rel", "buttonRel"],
3530
+ ["download", "buttonDownload"]
3531
+ ])
3532
+ };
3533
+ });
3534
+ return (_ctx, _cache) => {
3535
+ return openBlock(), createElementBlock("div", _hoisted_1, [
3536
+ createElementVNode("p", _hoisted_2, toDisplayString(props.headline), 1),
3537
+ props.description ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(props.description), 1)) : createCommentVNode("", true),
3538
+ hasButton.value ? (openBlock(), createElementBlock("div", _hoisted_4, [
3539
+ (openBlock(), createBlock(resolveDynamicComponent(buttonType.value), mergeProps(buttonProps.value, {
3540
+ onClick: _cache[0] || (_cache[0] = ($event) => emit("buttonClick", $event))
3541
+ }), null, 16))
3542
+ ])) : createCommentVNode("", true)
3543
+ ]);
3144
3544
  };
3145
3545
  }
3146
3546
  });
3147
3547
 
3148
- const KdsPopover = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c38b0586"]]);
3548
+ const KdsEmptyState = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-059bb01e"]]);
3149
3549
 
3150
- export { KdsAvatar, _sfc_main$u as KdsButton, _sfc_main$h as KdsCheckbox, KdsCheckboxGroup, KdsColorSwatch, KdsDataType, KdsDynamicModalProvider, KdsEmptyState, KdsIcon, KdsInfoToggleButton, KdsLabel, _sfc_main$t as KdsLinkButton, KdsLoadingSpinner, KdsModal, KdsModalLayout, _sfc_main$7 as KdsNumberInput, _sfc_main$6 as KdsPatternInput, KdsPopover, KdsProgressButton, KdsRadioButtonGroup, _sfc_main$5 as KdsSearchInput, KdsSubText, _sfc_main$8 as KdsTextInput, KdsTextarea, _sfc_main$k as KdsToggleButton, KdsValueSwitch, KdsVariableToggleButton, useKdsDarkMode, useKdsDynamicModal, useKdsIsTruncated, useKdsLegacyMode };
3550
+ export { KdsAvatar, _sfc_main$r as KdsButton, KdsCard, _sfc_main$i as KdsCheckbox, KdsCheckboxGroup, KdsColorSwatch, KdsDataType, KdsDynamicModalProvider, KdsEmptyState, KdsIcon, KdsInfoToggleButton, KdsLabel, _sfc_main$q as KdsLinkButton, KdsLiveStatus, KdsLoadingSpinner, KdsModal, KdsModalLayout, _sfc_main$a as KdsNumberInput, _sfc_main$9 as KdsPatternInput, KdsPopover, KdsProgressButton, KdsRadioButton, KdsRadioButtonGroup, _sfc_main$8 as KdsSearchInput, KdsSubText, _sfc_main$7 as KdsTextInput, KdsTextarea, _sfc_main$p as KdsToggleButton, KdsValueSwitch, KdsVariableToggleButton, kdsButtonSize, kdsButtonSizes, kdsButtonVariant, kdsButtonVariants, kdsCheckboxGroupAlignment, kdsCheckboxGroupAlignments, kdsCheckboxValue, kdsCheckboxValues, kdsColorSwatchType, kdsColorSwatchTypes, kdsDarkModeType, kdsDarkModeTypes, kdsDataTypeSize, kdsDataTypeSizes, kdsIconName, iconNames as kdsIconNames, kdsIconSize, kdsIconSizes, kdsLiveStatusSize, kdsLiveStatusSizes, kdsLiveStatusStatus, kdsLiveStatusStatuses, kdsLoadingSpinnerVariant, kdsLoadingSpinnerVariants, kdsModalClosedBy, kdsModalClosedByOptions, kdsModalHeight, kdsModalHeightSizes, kdsModalVariant, kdsModalVariants, kdsModalWidth, kdsModalWidthSizes, kdsPopoverPlacement, kdsPopoverPlacements, kdsProgressButtonState, kdsProgressButtonStates, kdsRadioButtonGroupAlignment, kdsRadioButtonGroupAlignments, kdsToggleButtonVariant, kdsToggleButtonVariants, kdsTypeIconName, typeIconNames as kdsTypeIconNames, kdsValueSwitchSize, kdsValueSwitchSizes, kdsValueSwitchVariant, kdsValueSwitchVariants, useKdsDarkMode, useKdsDynamicModal, useKdsIsTruncated, useKdsLegacyMode };
3151
3551
  //# sourceMappingURL=index.js.map