fds-vue-core 2.0.26 → 2.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/FdsTable.css CHANGED
@@ -12,11 +12,10 @@
12
12
  padding: 0.5rem;
13
13
  }
14
14
 
15
-
16
15
  /* Base styles - works in both Vue scoped and standalone CSS */
17
16
  .fds-table-wrapper {
18
- overflow: hidden;
19
17
  border-radius: var(--radius-md);
18
+ overflow-x: scroll;
20
19
  }
21
20
 
22
21
  /* Table styling - vanilla CSS version (for consuming repos) */
@@ -51,8 +50,11 @@
51
50
  }
52
51
 
53
52
  .fds-table-wrapper td,
54
- .fds-table-wrapper th {
53
+ .fds-table-wrapper th:not(.fds-table-head) {
55
54
  padding: 1rem;
55
+ }
56
+ .fds-table-wrapper td,
57
+ .fds-table-wrapper th {
56
58
  text-align: left;
57
59
  vertical-align: top;
58
60
  white-space: normal;
@@ -89,9 +91,12 @@
89
91
  border-bottom: none;
90
92
  }
91
93
 
94
+ .fds-table-wrapper td,
95
+ .fds-table-wrapper th:not(.fds-table-head) {
96
+ padding: 1rem;
97
+ }
92
98
  .fds-table-wrapper :deep(td),
93
99
  .fds-table-wrapper :deep(th) {
94
- padding: 1rem;
95
100
  text-align: left;
96
101
  vertical-align: top;
97
102
  white-space: normal;
@@ -8,14 +8,9 @@ type __VLS_Slots = {} & {
8
8
  default?: (props: typeof __VLS_1) => any;
9
9
  };
10
10
  declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11
- "update:modelValue": (value: string | number) => any;
12
- } & {
13
- change: (value: boolean) => any;
14
- "update:checked": (value: boolean) => any;
11
+ "update:modelValue": (...args: any[]) => void;
15
12
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
16
- onChange?: (value: boolean) => any;
17
- "onUpdate:checked"?: (value: boolean) => any;
18
- "onUpdate:modelValue"?: (value: string | number) => any;
13
+ "onUpdate:modelValue"?: (...args: any[]) => any;
19
14
  }>, {
20
15
  required: boolean;
21
16
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"FdsRadio.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Form/FdsRadio/FdsRadio.vue"],"names":[],"mappings":"AAmGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAM5C,KAAK,WAAW,GAAG,aAAa,CAAC;AAsEjC,KAAK,iBAAiB,GAAG,WAAW,GAAG;IACvC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B,CAAC;AAmEF,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAyB/C,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;4EAInB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"FdsRadio.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Form/FdsRadio/FdsRadio.vue"],"names":[],"mappings":"AAuFA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAK5C,KAAK,WAAW,GAAG,aAAa,CAAC;AA0DjC,KAAK,iBAAiB,GAAG,WAAW,GAAG;IACvC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B,CAAC;AAmEF,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AA4B/C,QAAA,MAAM,eAAe;;;;;;;;;;;;4EAOnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FdsTable.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTable/FdsTable.vue"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAc5C,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAC;AA8CF,QAAA,MAAM,eAAe;;;4EAGnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"FdsTable.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTable/FdsTable.vue"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAc5C,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAC;AA2CF,QAAA,MAAM,eAAe;;;4EAGnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FdsTableHead.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTableHead/FdsTableHead.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,YAAY,MAAM,oBAAoB,CAAA;AAE7C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,YAAY,CAcnC,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAA;AAElC,eAAO,MAAM,OAAO,EAAE,KAmBrB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAoBtB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAoBvB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAoBxB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAoB3B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAoB1B,CAAA"}
1
+ {"version":3,"file":"FdsTableHead.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTableHead/FdsTableHead.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,YAAY,MAAM,oBAAoB,CAAA;AAE7C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,YAAY,CAgBnC,CAAA;AAED,eAAe,IAAI,CAAA;AACnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAA;AAElC,eAAO,MAAM,OAAO,EAAE,KAmBrB,CAAA;AAED,eAAO,MAAM,QAAQ,EAAE,KAoBtB,CAAA;AAED,eAAO,MAAM,SAAS,EAAE,KAoBvB,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAoBxB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAoB3B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAoB1B,CAAA"}
@@ -12,6 +12,7 @@ declare const __VLS_component: import("vue").DefineComponent<FdsTableHeadProps,
12
12
  }>, {
13
13
  icon: import("./types").TableHeadIcon;
14
14
  align: import("./types").TableAlign;
15
+ heading: string;
15
16
  sortable: boolean;
16
17
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
17
18
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
@@ -1 +1 @@
1
- {"version":3,"file":"FdsTableHead.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTableHead/FdsTableHead.vue"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAsFhD,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAW,CAAE;AAC3C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAqB/C,QAAA,MAAM,eAAe;;;;;;;;4EAInB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"FdsTableHead.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTableHead/FdsTableHead.vue"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAoHhD,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAW,CAAE;AAC3C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAsB/C,QAAA,MAAM,eAAe;;;;;;;;;4EAInB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export type TableAlign = 'left' | 'center' | 'right';
2
2
  export type TableHeadIcon = 'sort' | 'ascending' | 'descending';
3
3
  export interface FdsTableHeadProps {
4
+ heading?: string;
4
5
  sortable?: boolean;
5
6
  align?: TableAlign;
6
7
  icon?: TableHeadIcon;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTableHead/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;AACpD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,CAAA;AAE/D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,IAAI,CAAC,EAAE,aAAa,CAAA;CACrB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/FdsTableHead/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;AACpD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,CAAA;AAE/D,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,UAAU,CAAA;IAClB,IAAI,CAAC,EAAE,aAAa,CAAA;CACrB"}
@@ -405,8 +405,8 @@ const useTreeState = (options = {}) => {
405
405
  isEmptySearchResult
406
406
  };
407
407
  };
408
- const _hoisted_1$p = ["for"];
409
- const _hoisted_2$f = ["id", "name", "value", "disabled", "required"];
408
+ const _hoisted_1$q = ["for"];
409
+ const _hoisted_2$g = ["id", "name", "value", "disabled", "required"];
410
410
  const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
411
411
  __name: "FdsCheckbox",
412
412
  props: /* @__PURE__ */ vue.mergeModels({
@@ -519,7 +519,7 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
519
519
  required: _ctx.required,
520
520
  type: "checkbox",
521
521
  class: vue.normalizeClass([checkboxClasses.value])
522
- }, null, 10, _hoisted_2$f), [
522
+ }, null, 10, _hoisted_2$g), [
523
523
  [vue.vModelCheckbox, internalChecked.value]
524
524
  ]),
525
525
  hasLabelSlot.value || _ctx.label ? (vue.openBlock(), vue.createElementBlock("span", {
@@ -530,7 +530,7 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
530
530
  vue.createTextVNode(vue.toDisplayString(_ctx.label), 1)
531
531
  ], 64)) : vue.createCommentVNode("", true)
532
532
  ], 2)) : vue.createCommentVNode("", true)
533
- ], 16, _hoisted_1$p)
533
+ ], 16, _hoisted_1$q)
534
534
  ], 2);
535
535
  };
536
536
  }
@@ -1047,7 +1047,7 @@ const icons = {
1047
1047
  </defs>
1048
1048
  </svg>`
1049
1049
  };
1050
- const _hoisted_1$o = ["innerHTML"];
1050
+ const _hoisted_1$p = ["innerHTML"];
1051
1051
  const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
1052
1052
  __name: "FdsIcon",
1053
1053
  props: {
@@ -1074,11 +1074,11 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
1074
1074
  class: "inline-flex items-center justify-center align-middle",
1075
1075
  style: vue.normalizeStyle({ width: pixelSize.value, height: pixelSize.value }),
1076
1076
  innerHTML: svgHtml.value
1077
- }, null, 12, _hoisted_1$o);
1077
+ }, null, 12, _hoisted_1$p);
1078
1078
  };
1079
1079
  }
1080
1080
  });
1081
- const _hoisted_1$n = ["id", "type", "disabled", "aria-label", "aria-disabled"];
1081
+ const _hoisted_1$o = ["id", "type", "disabled", "aria-label", "aria-disabled"];
1082
1082
  const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
1083
1083
  __name: "FdsButtonIcon",
1084
1084
  props: {
@@ -1126,12 +1126,12 @@ const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
1126
1126
  name: "spinner",
1127
1127
  class: "animate-spin"
1128
1128
  }, null, 8, ["size"]))
1129
- ], 10, _hoisted_1$n);
1129
+ ], 10, _hoisted_1$o);
1130
1130
  };
1131
1131
  }
1132
1132
  });
1133
- const _hoisted_1$m = ["for"];
1134
- const _hoisted_2$e = ["id", "name", "value", "disabled", "required"];
1133
+ const _hoisted_1$n = ["for"];
1134
+ const _hoisted_2$f = ["id", "name", "value", "disabled", "required"];
1135
1135
  const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
1136
1136
  __name: "FdsRadio",
1137
1137
  props: /* @__PURE__ */ vue.mergeModels({
@@ -1149,7 +1149,7 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
1149
1149
  "modelValue": { default: void 0, required: false },
1150
1150
  "modelModifiers": {}
1151
1151
  }),
1152
- emits: /* @__PURE__ */ vue.mergeModels(["change", "update:checked"], ["update:modelValue"]),
1152
+ emits: /* @__PURE__ */ vue.mergeModels(["update:modelValue"], ["update:modelValue"]),
1153
1153
  setup(__props, { emit: __emit }) {
1154
1154
  const modelValue = vue.useModel(__props, "modelValue");
1155
1155
  const props = __props;
@@ -1158,6 +1158,14 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
1158
1158
  const inputId = vue.computed(() => props.id ?? autoId);
1159
1159
  const slots = vue.useSlots();
1160
1160
  const hasLabelSlot = vue.computed(() => !!slots.default);
1161
+ const radioModel = vue.computed({
1162
+ get() {
1163
+ return modelValue.value;
1164
+ },
1165
+ set(newChecked) {
1166
+ emit("update:modelValue", newChecked);
1167
+ }
1168
+ });
1161
1169
  const wrapperClasses = vue.computed(() => ["block relative flex items-center mb-2 last:mb-0"]);
1162
1170
  const innerWrapperClasses = vue.computed(() => [
1163
1171
  "flex p-0.5 items-start rounded-l-xl rounded-r-md",
@@ -1169,21 +1177,6 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
1169
1177
  "peer z-40 bg-white min-w-[18px] min-h-[18px] focus-visible:outline-none rounded-full accent-blue-500",
1170
1178
  props.disabled && "cursor-not-allowed"
1171
1179
  ]);
1172
- const groupModel = vue.computed({
1173
- get: () => {
1174
- if (modelValue.value !== void 0 && props.value !== void 0) {
1175
- return modelValue.value === props.value ? props.value : void 0;
1176
- }
1177
- return props.checked ? props.value : void 0;
1178
- },
1179
- set: () => {
1180
- if (props.value !== void 0) {
1181
- modelValue.value = props.value;
1182
- emit("update:checked", true);
1183
- emit("change", true);
1184
- }
1185
- }
1186
- });
1187
1180
  return (_ctx, _cache) => {
1188
1181
  return vue.openBlock(), vue.createElementBlock("div", {
1189
1182
  class: vue.normalizeClass(wrapperClasses.value)
@@ -1196,13 +1189,13 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
1196
1189
  id: inputId.value,
1197
1190
  name: _ctx.name,
1198
1191
  value: _ctx.value,
1199
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => groupModel.value = $event),
1192
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => radioModel.value = $event),
1200
1193
  disabled: _ctx.disabled,
1201
1194
  required: _ctx.required,
1202
1195
  type: "radio",
1203
1196
  class: vue.normalizeClass([inputClasses.value, "m-[3px]"])
1204
- }, null, 10, _hoisted_2$e), [
1205
- [vue.vModelRadio, groupModel.value]
1197
+ }, null, 10, _hoisted_2$f), [
1198
+ [vue.vModelRadio, radioModel.value]
1206
1199
  ]),
1207
1200
  hasLabelSlot.value || _ctx.label ? (vue.openBlock(), vue.createElementBlock("span", {
1208
1201
  key: 0,
@@ -1212,16 +1205,16 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
1212
1205
  vue.createTextVNode(vue.toDisplayString(_ctx.label), 1)
1213
1206
  ], 64)) : vue.createCommentVNode("", true)
1214
1207
  ], 2)) : vue.createCommentVNode("", true)
1215
- ], 16, _hoisted_1$m)
1208
+ ], 16, _hoisted_1$n)
1216
1209
  ], 2);
1217
1210
  };
1218
1211
  }
1219
1212
  });
1220
- const _hoisted_1$l = { class: "flex items-center" };
1221
- const _hoisted_2$d = ["innerHTML"];
1222
- const _hoisted_3$9 = { key: 1 };
1223
- const _hoisted_4$8 = { key: 0 };
1224
- const _hoisted_5$5 = {
1213
+ const _hoisted_1$m = { class: "flex items-center" };
1214
+ const _hoisted_2$e = ["innerHTML"];
1215
+ const _hoisted_3$a = { key: 1 };
1216
+ const _hoisted_4$9 = { key: 0 };
1217
+ const _hoisted_5$6 = {
1225
1218
  key: 2,
1226
1219
  class: "items-center max-h-[28px]"
1227
1220
  };
@@ -1421,7 +1414,7 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
1421
1414
  style: vue.normalizeStyle(indent.value),
1422
1415
  class: vue.normalizeClass("pt-2 pb-2")
1423
1416
  }, [
1424
- vue.createElementVNode("div", _hoisted_1$l, [
1417
+ vue.createElementVNode("div", _hoisted_1$m, [
1425
1418
  hasChildrenNodes.value ? (vue.openBlock(), vue.createBlock(_sfc_main$t, {
1426
1419
  key: 0,
1427
1420
  onClick: _cache[0] || (_cache[0] = ($event) => vue.unref(treeState)?.toggleExpandNode(props.nodeId)),
@@ -1446,13 +1439,13 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
1446
1439
  shouldHighlightSearch.value && _ctx.title ? (vue.openBlock(), vue.createElementBlock("span", {
1447
1440
  key: 0,
1448
1441
  innerHTML: vue.unref(treeState)?.highlightText(_ctx.title, vue.unref(treeState)?.searchTerm?.value)
1449
- }, null, 8, _hoisted_2$d)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$9, vue.toDisplayString(_ctx.title), 1))
1442
+ }, null, 8, _hoisted_2$e)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$a, vue.toDisplayString(_ctx.title), 1))
1450
1443
  ]),
1451
- childCount.value !== null ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$8, " (+" + vue.toDisplayString(childCount.value) + ")", 1)) : vue.createCommentVNode("", true)
1444
+ childCount.value !== null ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$9, " (+" + vue.toDisplayString(childCount.value) + ")", 1)) : vue.createCommentVNode("", true)
1452
1445
  ]),
1453
1446
  _: 1
1454
1447
  }, 8, ["id", "checked", "indeterminate"]),
1455
- vue.unref(treeState)?.isParentOrChildrenSelected(props.nodeId) && !(vue.unref(treeState)?.isNodeIndeterminateById(props.nodeId) ?? false) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$5, [
1448
+ vue.unref(treeState)?.isParentOrChildrenSelected(props.nodeId) && !(vue.unref(treeState)?.isNodeIndeterminateById(props.nodeId) ?? false) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$6, [
1456
1449
  vue.createVNode(_sfc_main$t, {
1457
1450
  ref_key: "triggerRef",
1458
1451
  ref: triggerRef,
@@ -1582,7 +1575,7 @@ function useElementFinalSize(elementRef, onFinalSize, delay = 100) {
1582
1575
  onCleanup(() => clearTimeout(timeoutId));
1583
1576
  });
1584
1577
  }
1585
- const _hoisted_1$k = ["aria-label"];
1578
+ const _hoisted_1$l = ["aria-label"];
1586
1579
  const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
1587
1580
  __name: "FdsSpinner",
1588
1581
  props: {
@@ -1655,11 +1648,11 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
1655
1648
  key: 0,
1656
1649
  class: vue.normalizeClass(_ctx.labelPosition === "bottom" ? "font-bold" : "")
1657
1650
  }, vue.toDisplayString(_ctx.label), 3)) : vue.createCommentVNode("", true)
1658
- ], 10, _hoisted_1$k);
1651
+ ], 10, _hoisted_1$l);
1659
1652
  };
1660
1653
  }
1661
1654
  });
1662
- const _hoisted_1$j = ["aria-disabled"];
1655
+ const _hoisted_1$k = ["aria-disabled"];
1663
1656
  const elBase$2 = "box-border appearance-none inline-flex items-center justify-center cursor-pointer shadow-none p-1 text-base h-7 select-none m-0 rounded-md textcenter align-middle whitespace-nowrap no-underline transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
1664
1657
  const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
1665
1658
  __name: "FdsButtonMinor",
@@ -1745,14 +1738,14 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
1745
1738
  ]),
1746
1739
  _: 1
1747
1740
  }, 16, ["type", "disabled", "class"]))
1748
- ], 10, _hoisted_1$j);
1741
+ ], 10, _hoisted_1$k);
1749
1742
  };
1750
1743
  }
1751
1744
  });
1752
- const _hoisted_1$i = ["for"];
1753
- const _hoisted_2$c = { class: "relative" };
1754
- const _hoisted_3$8 = ["id", "name", "type", "disabled", "required", "size", "maxlength", "aria-invalid"];
1755
- const _hoisted_4$7 = {
1745
+ const _hoisted_1$j = ["for"];
1746
+ const _hoisted_2$d = { class: "relative" };
1747
+ const _hoisted_3$9 = ["id", "name", "type", "disabled", "required", "size", "maxlength", "aria-invalid"];
1748
+ const _hoisted_4$8 = {
1756
1749
  key: 0,
1757
1750
  class: "text-red-600 font-bold mt-1"
1758
1751
  };
@@ -1837,14 +1830,14 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
1837
1830
  key: 0,
1838
1831
  for: inputId.value,
1839
1832
  class: vue.normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": _ctx.meta, "mb-1": !_ctx.meta }])
1840
- }, vue.toDisplayString(_ctx.label), 11, _hoisted_1$i)) : vue.createCommentVNode("", true),
1833
+ }, vue.toDisplayString(_ctx.label), 11, _hoisted_1$j)) : vue.createCommentVNode("", true),
1841
1834
  _ctx.meta ? (vue.openBlock(), vue.createElementBlock("div", {
1842
1835
  key: 1,
1843
1836
  class: vue.normalizeClass(["font-thin", { "mb-1": !_ctx.labelLeft }])
1844
1837
  }, vue.toDisplayString(_ctx.meta), 3)) : vue.createCommentVNode("", true)
1845
1838
  ]),
1846
1839
  vue.createElementVNode("div", null, [
1847
- vue.createElementVNode("div", _hoisted_2$c, [
1840
+ vue.createElementVNode("div", _hoisted_2$d, [
1848
1841
  vue.withDirectives(vue.createElementVNode("input", vue.mergeProps({
1849
1842
  id: inputId.value,
1850
1843
  name: _ctx.name || void 0,
@@ -1858,7 +1851,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
1858
1851
  class: inputClasses.value
1859
1852
  }, _ctx.$attrs, {
1860
1853
  onInput: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("input", $event))
1861
- }), null, 16, _hoisted_3$8), [
1854
+ }), null, 16, _hoisted_3$9), [
1862
1855
  [vue.vModelDynamic, internalValue.value]
1863
1856
  ]),
1864
1857
  vue.createElementVNode("div", {
@@ -1889,7 +1882,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
1889
1882
  ])
1890
1883
  ])
1891
1884
  ], 2),
1892
- showInvalidMessage.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$7, vue.toDisplayString(_ctx.invalidMessage), 1)) : vue.createCommentVNode("", true)
1885
+ showInvalidMessage.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$8, vue.toDisplayString(_ctx.invalidMessage), 1)) : vue.createCommentVNode("", true)
1893
1886
  ], 64);
1894
1887
  };
1895
1888
  }
@@ -1902,11 +1895,11 @@ const _export_sfc = (sfc, props) => {
1902
1895
  return target;
1903
1896
  };
1904
1897
  const FdsInput = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-4e9b56d8"]]);
1905
- const _hoisted_1$h = ["id"];
1906
- const _hoisted_2$b = { class: "flex items-start justify-between gap-4" };
1907
- const _hoisted_3$7 = { class: "flex items-center gap-3" };
1908
- const _hoisted_4$6 = { class: "mt-0 mb-4 text-lg font-bold tracking-wide" };
1909
- const _hoisted_5$4 = { class: "flex items-start gap-3" };
1898
+ const _hoisted_1$i = ["id"];
1899
+ const _hoisted_2$c = { class: "flex items-start justify-between gap-4" };
1900
+ const _hoisted_3$8 = { class: "flex items-center gap-3" };
1901
+ const _hoisted_4$7 = { class: "mt-0 mb-4 text-lg font-bold tracking-wide" };
1902
+ const _hoisted_5$5 = { class: "flex items-start gap-3" };
1910
1903
  const _sfc_main$n = /* @__PURE__ */ vue.defineComponent({
1911
1904
  __name: "FdsBlockContent",
1912
1905
  props: {
@@ -1940,16 +1933,16 @@ const _sfc_main$n = /* @__PURE__ */ vue.defineComponent({
1940
1933
  class: vue.normalizeClass(contentClasses.value),
1941
1934
  style: vue.normalizeStyle(borderLeftStyle.value)
1942
1935
  }, [
1943
- vue.createElementVNode("header", _hoisted_2$b, [
1944
- vue.createElementVNode("div", _hoisted_3$7, [
1945
- vue.createElementVNode("h3", _hoisted_4$6, vue.toDisplayString(_ctx.heading), 1)
1936
+ vue.createElementVNode("header", _hoisted_2$c, [
1937
+ vue.createElementVNode("div", _hoisted_3$8, [
1938
+ vue.createElementVNode("h3", _hoisted_4$7, vue.toDisplayString(_ctx.heading), 1)
1946
1939
  ]),
1947
- vue.createElementVNode("div", _hoisted_5$4, [
1940
+ vue.createElementVNode("div", _hoisted_5$5, [
1948
1941
  vue.renderSlot(_ctx.$slots, "headerInfo")
1949
1942
  ])
1950
1943
  ]),
1951
1944
  vue.renderSlot(_ctx.$slots, "default")
1952
- ], 14, _hoisted_1$h);
1945
+ ], 14, _hoisted_1$i);
1953
1946
  };
1954
1947
  }
1955
1948
  });
@@ -1979,12 +1972,12 @@ const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
1979
1972
  };
1980
1973
  }
1981
1974
  });
1982
- const _hoisted_1$g = { key: 0 };
1983
- const _hoisted_2$a = {
1975
+ const _hoisted_1$h = { key: 0 };
1976
+ const _hoisted_2$b = {
1984
1977
  key: 0,
1985
1978
  class: "text-xl"
1986
1979
  };
1987
- const _hoisted_3$6 = {
1980
+ const _hoisted_3$7 = {
1988
1981
  key: 1,
1989
1982
  class: "text-xl"
1990
1983
  };
@@ -2082,8 +2075,8 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
2082
2075
  ])]),
2083
2076
  _: 1
2084
2077
  }, 8, ["value", "label"]),
2085
- props.searchCountTemplate || props.searchCountTemplateUnfiltered ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [
2086
- props.searchCountTemplate && vue.unref(treeState)?.searchTerm?.value && String(vue.unref(treeState)?.searchTerm?.value || "").trim().length >= (vue.unref(treeState)?.triggerLength ?? 1) ? (vue.openBlock(), vue.createElementBlock("h2", _hoisted_2$a, vue.toDisplayString(props.searchCountTemplate.replace("[[filteredNodes]]", vue.unref(treeState)?.filteredMatchCount.value.toString()).replace("[[totalNodes]]", totalNodeCount.value.toString())), 1)) : (vue.openBlock(), vue.createElementBlock("h2", _hoisted_3$6, vue.toDisplayString(props.searchCountTemplateUnfiltered?.replace("[[totalNodes]]", totalNodeCount.value.toString()).replace("[[totalNodes]]", totalNodeCount.value.toString())), 1))
2078
+ props.searchCountTemplate || props.searchCountTemplateUnfiltered ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$h, [
2079
+ props.searchCountTemplate && vue.unref(treeState)?.searchTerm?.value && String(vue.unref(treeState)?.searchTerm?.value || "").trim().length >= (vue.unref(treeState)?.triggerLength ?? 1) ? (vue.openBlock(), vue.createElementBlock("h2", _hoisted_2$b, vue.toDisplayString(props.searchCountTemplate.replace("[[filteredNodes]]", vue.unref(treeState)?.filteredMatchCount.value.toString()).replace("[[totalNodes]]", totalNodeCount.value.toString())), 1)) : (vue.openBlock(), vue.createElementBlock("h2", _hoisted_3$7, vue.toDisplayString(props.searchCountTemplateUnfiltered?.replace("[[totalNodes]]", totalNodeCount.value.toString()).replace("[[totalNodes]]", totalNodeCount.value.toString())), 1))
2087
2080
  ])) : vue.createCommentVNode("", true)
2088
2081
  ], 512)) : vue.createCommentVNode("", true),
2089
2082
  vue.unref(treeState)?.isEmptySearchResult?.value ? (vue.openBlock(), vue.createBlock(_sfc_main$n, {
@@ -2137,7 +2130,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
2137
2130
  };
2138
2131
  }
2139
2132
  });
2140
- const _hoisted_1$f = ["aria-disabled"];
2133
+ const _hoisted_1$g = ["aria-disabled"];
2141
2134
  const elBase$1 = "box-border appearance-none inline-flex items-center justify-center cursor-pointer select-none min-h-0 min-w-12 h-12 m-0 rounded-lg text-center align-middle whitespace-nowrap no-underline shadow-[0_2px_4px_rgba(12,72,153,0.12)] transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
2142
2135
  const variantClasses$1 = "bg-red-600 border border-red-700 text-white hover:bg-red-700 active:bg-red-800 active:border-red-800";
2143
2136
  const iconFillClass$1 = "fill-white";
@@ -2226,11 +2219,11 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
2226
2219
  ]),
2227
2220
  _: 1
2228
2221
  }, 16, ["type", "disabled", "class"]))
2229
- ], 10, _hoisted_1$f);
2222
+ ], 10, _hoisted_1$g);
2230
2223
  };
2231
2224
  }
2232
2225
  });
2233
- const _hoisted_1$e = ["aria-disabled"];
2226
+ const _hoisted_1$f = ["aria-disabled"];
2234
2227
  const elBase = "box-border appearance-none inline-flex items-center justify-center cursor-pointer select-none min-h-0 min-w-12 h-12 m-0 rounded-lg text-center align-middle whitespace-nowrap no-underline shadow-[0_2px_4px_rgba(12,72,153,0.12)] transition-[box-shadow,border-color,background-color] duration-200 font-main font-bold text-base leading-5 tracking-normal focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-4 focus-visible:outline-blue-500";
2235
2228
  const variantClasses = "bg-white border-2 border-blue-500 text-blue-600 hover:border-blue-600 active:bg-blue-600 active:border-blue-600 active:text-white";
2236
2229
  const iconFillClass = "fill-blue-500";
@@ -2319,11 +2312,11 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
2319
2312
  ]),
2320
2313
  _: 1
2321
2314
  }, 16, ["type", "disabled", "class"]))
2322
- ], 10, _hoisted_1$e);
2315
+ ], 10, _hoisted_1$f);
2323
2316
  };
2324
2317
  }
2325
2318
  });
2326
- const _hoisted_1$d = {
2319
+ const _hoisted_1$e = {
2327
2320
  key: 0,
2328
2321
  class: "flex items-center gap-2 h-7"
2329
2322
  };
@@ -2389,7 +2382,7 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
2389
2382
  }
2390
2383
  });
2391
2384
  return (_ctx, _cache) => {
2392
- return isCopied.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
2385
+ return isCopied.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, [
2393
2386
  vue.createVNode(_sfc_main$u, { name: "bigSuccess" }),
2394
2387
  vue.createElementVNode("span", null, vue.toDisplayString(props.copiedLabel), 1)
2395
2388
  ])) : (vue.openBlock(), vue.createBlock(_sfc_main$p, {
@@ -2403,8 +2396,8 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
2403
2396
  };
2404
2397
  }
2405
2398
  });
2406
- const _hoisted_1$c = ["aria-disabled"];
2407
- const _hoisted_2$9 = ["disabled"];
2399
+ const _hoisted_1$d = ["aria-disabled"];
2400
+ const _hoisted_2$a = ["disabled"];
2408
2401
  const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
2409
2402
  ...{
2410
2403
  inheritAttrs: false
@@ -2550,19 +2543,19 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
2550
2543
  }, null, 8, ["class"])
2551
2544
  ], 2),
2552
2545
  vue.createTextVNode(" " + vue.toDisplayString(_ctx.text), 1)
2553
- ], 16, _hoisted_2$9)
2554
- ], 10, _hoisted_1$c);
2546
+ ], 16, _hoisted_2$a)
2547
+ ], 10, _hoisted_1$d);
2555
2548
  };
2556
2549
  }
2557
2550
  });
2558
- const _hoisted_1$b = { class: "w-full" };
2559
- const _hoisted_2$8 = ["for"];
2560
- const _hoisted_3$5 = {
2551
+ const _hoisted_1$c = { class: "w-full" };
2552
+ const _hoisted_2$9 = ["for"];
2553
+ const _hoisted_3$6 = {
2561
2554
  key: 1,
2562
2555
  class: "font-thin mb-1"
2563
2556
  };
2564
- const _hoisted_4$5 = { class: "relative" };
2565
- const _hoisted_5$3 = ["id", "name", "disabled", "rows", "aria-invalid"];
2557
+ const _hoisted_4$6 = { class: "relative" };
2558
+ const _hoisted_5$4 = ["id", "name", "disabled", "rows", "aria-invalid"];
2566
2559
  const _hoisted_6$2 = {
2567
2560
  key: 2,
2568
2561
  class: "text-red-600 font-bold mt-1"
@@ -2620,14 +2613,14 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
2620
2613
  });
2621
2614
  return (_ctx, _cache) => {
2622
2615
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
2623
- vue.createElementVNode("div", _hoisted_1$b, [
2616
+ vue.createElementVNode("div", _hoisted_1$c, [
2624
2617
  _ctx.label ? (vue.openBlock(), vue.createElementBlock("label", {
2625
2618
  key: 0,
2626
2619
  for: textareaId.value,
2627
2620
  class: vue.normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": _ctx.meta, "mb-1": !_ctx.meta }])
2628
- }, vue.toDisplayString(_ctx.label), 11, _hoisted_2$8)) : vue.createCommentVNode("", true),
2629
- _ctx.meta ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$5, vue.toDisplayString(_ctx.meta), 1)) : vue.createCommentVNode("", true),
2630
- vue.createElementVNode("div", _hoisted_4$5, [
2621
+ }, vue.toDisplayString(_ctx.label), 11, _hoisted_2$9)) : vue.createCommentVNode("", true),
2622
+ _ctx.meta ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$6, vue.toDisplayString(_ctx.meta), 1)) : vue.createCommentVNode("", true),
2623
+ vue.createElementVNode("div", _hoisted_4$6, [
2631
2624
  vue.withDirectives(vue.createElementVNode("textarea", vue.mergeProps({
2632
2625
  id: textareaId.value,
2633
2626
  name: _ctx.name || void 0,
@@ -2638,7 +2631,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
2638
2631
  class: inputClasses.value
2639
2632
  }, _ctx.$attrs, {
2640
2633
  onInput: _cache[1] || (_cache[1] = (e) => emit("input", e))
2641
- }), null, 16, _hoisted_5$3), [
2634
+ }), null, 16, _hoisted_5$4), [
2642
2635
  [vue.vModelText, internalValue.value]
2643
2636
  ]),
2644
2637
  vue.createElementVNode("div", {
@@ -2662,14 +2655,14 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
2662
2655
  };
2663
2656
  }
2664
2657
  });
2665
- const _hoisted_1$a = { class: "w-full" };
2666
- const _hoisted_2$7 = ["for"];
2667
- const _hoisted_3$4 = {
2658
+ const _hoisted_1$b = { class: "w-full" };
2659
+ const _hoisted_2$8 = ["for"];
2660
+ const _hoisted_3$5 = {
2668
2661
  key: 1,
2669
2662
  class: "font-thin mb-1"
2670
2663
  };
2671
- const _hoisted_4$4 = { class: "relative" };
2672
- const _hoisted_5$2 = ["id", "name", "disabled", "aria-invalid"];
2664
+ const _hoisted_4$5 = { class: "relative" };
2665
+ const _hoisted_5$3 = ["id", "name", "disabled", "aria-invalid"];
2673
2666
  const _hoisted_6$1 = {
2674
2667
  key: 0,
2675
2668
  value: "",
@@ -2731,14 +2724,14 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
2731
2724
  emit("input", ev);
2732
2725
  }
2733
2726
  return (_ctx, _cache) => {
2734
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
2727
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$b, [
2735
2728
  _ctx.label ? (vue.openBlock(), vue.createElementBlock("label", {
2736
2729
  key: 0,
2737
2730
  for: selectId.value,
2738
2731
  class: vue.normalizeClass(["block font-bold text-gray-900 cursor-pointer", { "mb-0": _ctx.meta, "mb-1": !_ctx.meta }])
2739
- }, vue.toDisplayString(_ctx.label), 11, _hoisted_2$7)) : vue.createCommentVNode("", true),
2740
- _ctx.meta ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$4, vue.toDisplayString(_ctx.meta), 1)) : vue.createCommentVNode("", true),
2741
- vue.createElementVNode("div", _hoisted_4$4, [
2732
+ }, vue.toDisplayString(_ctx.label), 11, _hoisted_2$8)) : vue.createCommentVNode("", true),
2733
+ _ctx.meta ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$5, vue.toDisplayString(_ctx.meta), 1)) : vue.createCommentVNode("", true),
2734
+ vue.createElementVNode("div", _hoisted_4$5, [
2742
2735
  vue.withDirectives(vue.createElementVNode("select", vue.mergeProps({
2743
2736
  id: selectId.value,
2744
2737
  name: _ctx.name || void 0,
@@ -2758,7 +2751,7 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
2758
2751
  disabled: option.disabled
2759
2752
  }, vue.toDisplayString(option.label), 9, _hoisted_7$1);
2760
2753
  }), 128))
2761
- ], 16, _hoisted_5$2), [
2754
+ ], 16, _hoisted_5$3), [
2762
2755
  [vue.vModelSelect, internalValue.value]
2763
2756
  ]),
2764
2757
  vue.createElementVNode("div", _hoisted_8$1, [
@@ -2800,34 +2793,42 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
2800
2793
  };
2801
2794
  }
2802
2795
  });
2803
- const FdsTable = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-062d1324"]]);
2796
+ const FdsTable = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-2549d82e"]]);
2797
+ const _hoisted_1$a = { class: "fds-table-head" };
2798
+ const _hoisted_2$7 = { key: 0 };
2799
+ const _hoisted_3$4 = { key: 1 };
2800
+ const _hoisted_4$4 = { key: 0 };
2801
+ const _hoisted_5$2 = { key: 1 };
2804
2802
  const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
2805
2803
  __name: "FdsTableHead",
2806
2804
  props: {
2805
+ heading: { default: void 0 },
2807
2806
  sortable: { type: Boolean, default: false },
2808
2807
  align: { default: "left" },
2809
2808
  icon: { default: "sort" }
2810
2809
  },
2811
2810
  emits: ["sort"],
2812
2811
  setup(__props) {
2812
+ const slots = vue.useSlots();
2813
2813
  const props = __props;
2814
2814
  const headerClasses = vue.computed(() => [
2815
- "appearance-none bg-transparent flex items-center border-none text-left w-full bg-transparent text-gray-800 whitespace-nowrap text-base font-bold leading-5 tracking-normal",
2815
+ "appearance-none p-4 bg-transparent flex items-center border-none text-left w-full bg-transparent text-gray-800 whitespace-nowrap text-base font-bold leading-5 tracking-normal",
2816
2816
  props.align === "center" && "text-center justify-center",
2817
2817
  props.align === "right" && "text-right justify-end",
2818
- props.sortable && "text-blue-600! hover:bg-blue_t-200 cursor-pointer focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-[-2px] focus-visible:outline-blue-500 active:bg-blue_t-300"
2818
+ iconName.value && "text-blue-600! hover:bg-blue_t-200 cursor-pointer focus-visible:outline-dashed focus-visible:outline-2 focus-visible:outline-offset-[-2px] focus-visible:outline-blue-500 active:bg-blue_t-300"
2819
2819
  ]);
2820
+ const hasSlot = vue.computed(() => !!slots.default);
2820
2821
  const iconName = vue.computed(() => props.icon);
2821
2822
  return (_ctx, _cache) => {
2822
- return vue.openBlock(), vue.createElementBlock("th", null, [
2823
- _ctx.sortable ? (vue.openBlock(), vue.createElementBlock("button", {
2823
+ return vue.openBlock(), vue.createElementBlock("th", _hoisted_1$a, [
2824
+ iconName.value ? (vue.openBlock(), vue.createElementBlock("button", {
2824
2825
  key: 0,
2825
2826
  class: vue.normalizeClass(headerClasses.value),
2826
2827
  onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("sort"))
2827
2828
  }, [
2828
- vue.createElementVNode("span", null, [
2829
+ hasSlot.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$7, [
2829
2830
  vue.renderSlot(_ctx.$slots, "default")
2830
- ]),
2831
+ ])) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$4, vue.toDisplayString(_ctx.heading), 1)),
2831
2832
  vue.createVNode(_sfc_main$u, {
2832
2833
  name: iconName.value,
2833
2834
  size: "24px",
@@ -2837,9 +2838,9 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
2837
2838
  key: 1,
2838
2839
  class: vue.normalizeClass(headerClasses.value)
2839
2840
  }, [
2840
- vue.createElementVNode("span", null, [
2841
+ hasSlot.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$4, [
2841
2842
  vue.renderSlot(_ctx.$slots, "default")
2842
- ])
2843
+ ])) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$2, vue.toDisplayString(_ctx.heading), 1))
2843
2844
  ], 2))
2844
2845
  ]);
2845
2846
  };