@idds/vue 1.4.4 → 1.4.5

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/index.es.js CHANGED
@@ -412,7 +412,7 @@ const defaultColorTokens = {
412
412
  const _hoisted_1$J = ["id", "aria-expanded", "aria-controls", "disabled"];
413
413
  const _hoisted_2$D = { class: "ina-accordion__title" };
414
414
  const _hoisted_3$z = { class: "ina-accordion__toggler" };
415
- const _hoisted_4$t = ["id", "aria-labelledby"];
415
+ const _hoisted_4$u = ["id", "aria-labelledby"];
416
416
  const _hoisted_5$o = { class: "ina-accordion__body" };
417
417
  const _sfc_main$O = /* @__PURE__ */ defineComponent({
418
418
  __name: "Accordion",
@@ -554,7 +554,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
554
554
  createElementVNode("div", _hoisted_5$o, [
555
555
  renderSlot(_ctx.$slots, "default")
556
556
  ])
557
- ], 10, _hoisted_4$t)
557
+ ], 10, _hoisted_4$u)
558
558
  ], 2);
559
559
  };
560
560
  }
@@ -562,7 +562,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
562
562
  const _hoisted_1$I = { class: "ina-accordion-card__item" };
563
563
  const _hoisted_2$C = ["id", "aria-expanded", "aria-controls"];
564
564
  const _hoisted_3$y = { class: "ina-accordion-card__header-content" };
565
- const _hoisted_4$s = {
565
+ const _hoisted_4$t = {
566
566
  key: 0,
567
567
  class: "ina-accordion-card__icon"
568
568
  };
@@ -627,7 +627,7 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
627
627
  onClick: toggle
628
628
  }, [
629
629
  createElementVNode("div", _hoisted_3$y, [
630
- __props.icon ? (openBlock(), createElementBlock("div", _hoisted_4$s, [
630
+ __props.icon ? (openBlock(), createElementBlock("div", _hoisted_4$t, [
631
631
  (openBlock(), createBlock(resolveDynamicComponent(__props.icon), { size: 20 }))
632
632
  ])) : createCommentVNode("", true),
633
633
  createElementVNode("div", _hoisted_5$n, [
@@ -1194,7 +1194,7 @@ const _hoisted_1$F = {
1194
1194
  };
1195
1195
  const _hoisted_2$A = { class: "ina-alert__content" };
1196
1196
  const _hoisted_3$w = { class: "ina-alert__text-section" };
1197
- const _hoisted_4$r = {
1197
+ const _hoisted_4$s = {
1198
1198
  key: 0,
1199
1199
  class: "ina-alert__title"
1200
1200
  };
@@ -1263,7 +1263,7 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
1263
1263
  ])) : createCommentVNode("", true),
1264
1264
  createElementVNode("div", _hoisted_2$A, [
1265
1265
  createElementVNode("div", _hoisted_3$w, [
1266
- __props.title ? (openBlock(), createElementBlock("div", _hoisted_4$r, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
1266
+ __props.title ? (openBlock(), createElementBlock("div", _hoisted_4$s, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
1267
1267
  _ctx.$slots.default || __props.message ? (openBlock(), createElementBlock("div", _hoisted_5$m, [
1268
1268
  renderSlot(_ctx.$slots, "default", {}, () => [
1269
1269
  createTextVNode(toDisplayString(__props.message), 1)
@@ -1472,7 +1472,7 @@ const _hoisted_2$y = {
1472
1472
  class: "ina-breadcrumb__icon"
1473
1473
  };
1474
1474
  const _hoisted_3$v = { class: "ina-breadcrumb__text" };
1475
- const _hoisted_4$q = {
1475
+ const _hoisted_4$r = {
1476
1476
  key: 0,
1477
1477
  class: "ina-breadcrumb__separator",
1478
1478
  "aria-hidden": "true"
@@ -1562,7 +1562,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
1562
1562
  ]),
1563
1563
  _: 2
1564
1564
  }, 1032, ["href", "class", "onClick"])),
1565
- index2 < __props.items.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_4$q, [
1565
+ index2 < __props.items.length - 1 ? (openBlock(), createElementBlock("span", _hoisted_4$r, [
1566
1566
  renderSlot(_ctx.$slots, "separator", {}, () => [
1567
1567
  typeof computedSeparator.value === "string" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
1568
1568
  createTextVNode(toDisplayString(computedSeparator.value), 1)
@@ -1716,7 +1716,7 @@ const _hoisted_3$u = {
1716
1716
  key: 1,
1717
1717
  class: "ina-card__media"
1718
1718
  };
1719
- const _hoisted_4$p = ["src", "alt"];
1719
+ const _hoisted_4$q = ["src", "alt"];
1720
1720
  const _hoisted_5$l = { class: "ina-card__content" };
1721
1721
  const _hoisted_6$i = {
1722
1722
  key: 0,
@@ -1858,7 +1858,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
1858
1858
  key: 0,
1859
1859
  src: __props.mediaSrc,
1860
1860
  alt: __props.mediaAlt || "Card media"
1861
- }, null, 8, _hoisted_4$p)) : createCommentVNode("", true)
1861
+ }, null, 8, _hoisted_4$q)) : createCommentVNode("", true)
1862
1862
  ])
1863
1863
  ])) : createCommentVNode("", true),
1864
1864
  createElementVNode("div", _hoisted_5$l, [
@@ -1964,7 +1964,7 @@ const _hoisted_3$t = {
1964
1964
  fill: "none",
1965
1965
  xmlns: "http://www.w3.org/2000/svg"
1966
1966
  };
1967
- const _hoisted_4$o = {
1967
+ const _hoisted_4$p = {
1968
1968
  key: 1,
1969
1969
  class: "ina-checkbox__icon",
1970
1970
  width: "14",
@@ -2103,7 +2103,7 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
2103
2103
  "stroke-linecap": "round",
2104
2104
  "stroke-linejoin": "round"
2105
2105
  }, null, -1)
2106
- ])])) : __props.indeterminate ? (openBlock(), createElementBlock("svg", _hoisted_4$o, [..._cache[1] || (_cache[1] = [
2106
+ ])])) : __props.indeterminate ? (openBlock(), createElementBlock("svg", _hoisted_4$p, [..._cache[1] || (_cache[1] = [
2107
2107
  createElementVNode("path", {
2108
2108
  d: "M5 12H19",
2109
2109
  stroke: "currentColor",
@@ -2342,7 +2342,7 @@ const _hoisted_3$s = {
2342
2342
  key: 0,
2343
2343
  class: "ina-text-field__required"
2344
2344
  };
2345
- const _hoisted_4$n = {
2345
+ const _hoisted_4$o = {
2346
2346
  key: 0,
2347
2347
  class: "ina-text-field__prefix-icon"
2348
2348
  };
@@ -2576,7 +2576,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
2576
2576
  createElementVNode("div", {
2577
2577
  class: normalizeClass(wrapperClasses.value)
2578
2578
  }, [
2579
- __props.prefixIcon ? (openBlock(), createElementBlock("div", _hoisted_4$n, [
2579
+ __props.prefixIcon ? (openBlock(), createElementBlock("div", _hoisted_4$o, [
2580
2580
  (openBlock(), createBlock(resolveDynamicComponent(__props.prefixIcon), { size: 16 }))
2581
2581
  ])) : createCommentVNode("", true),
2582
2582
  withDirectives(createElementVNode("input", mergeProps(filteredAttrs.value, {
@@ -2641,7 +2641,7 @@ const _hoisted_3$r = {
2641
2641
  key: 0,
2642
2642
  class: "ina-chip__custom-field"
2643
2643
  };
2644
- const _hoisted_4$m = { key: 0 };
2644
+ const _hoisted_4$n = { key: 0 };
2645
2645
  const _hoisted_5$i = { key: 1 };
2646
2646
  const _sfc_main$A = /* @__PURE__ */ defineComponent({
2647
2647
  __name: "Chip",
@@ -2758,7 +2758,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
2758
2758
  }), 128))
2759
2759
  ]),
2760
2760
  __props.showCustomization && showInput.value ? (openBlock(), createElementBlock("div", _hoisted_3$r, [
2761
- __props.customizationComponent ? (openBlock(), createElementBlock("div", _hoisted_4$m, [
2761
+ __props.customizationComponent ? (openBlock(), createElementBlock("div", _hoisted_4$n, [
2762
2762
  (openBlock(), createBlock(resolveDynamicComponent(__props.customizationComponent)))
2763
2763
  ])) : (openBlock(), createElementBlock("div", _hoisted_5$i, [
2764
2764
  createVNode(_sfc_main$B, {
@@ -2779,7 +2779,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
2779
2779
  const _hoisted_1$v = ["id", "aria-expanded", "aria-controls"];
2780
2780
  const _hoisted_2$s = { class: "ina-collapse__title" };
2781
2781
  const _hoisted_3$q = ["id", "aria-labelledby"];
2782
- const _hoisted_4$l = { class: "ina-collapse__body" };
2782
+ const _hoisted_4$m = { class: "ina-collapse__body" };
2783
2783
  const _sfc_main$z = /* @__PURE__ */ defineComponent({
2784
2784
  __name: "Collapse",
2785
2785
  props: {
@@ -2859,7 +2859,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
2859
2859
  class: "ina-collapse__content",
2860
2860
  "aria-labelledby": headerId.value
2861
2861
  }, [
2862
- createElementVNode("div", _hoisted_4$l, [
2862
+ createElementVNode("div", _hoisted_4$m, [
2863
2863
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
2864
2864
  ])
2865
2865
  ], 8, _hoisted_3$q)) : createCommentVNode("", true)
@@ -3037,7 +3037,7 @@ const Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v
3037
3037
  const _hoisted_1$s = { class: "ina-field-input-table__wrapper" };
3038
3038
  const _hoisted_2$r = { class: "ina-field-input-table__label" };
3039
3039
  const _hoisted_3$p = ["value"];
3040
- const _hoisted_4$k = { class: "ina-field-input-table__actions" };
3040
+ const _hoisted_4$l = { class: "ina-field-input-table__actions" };
3041
3041
  const _sfc_main$w = /* @__PURE__ */ defineComponent({
3042
3042
  __name: "FieldInputTable",
3043
3043
  props: {
@@ -3097,7 +3097,7 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
3097
3097
  autofocus: ""
3098
3098
  }, null, 40, _hoisted_3$p)
3099
3099
  ]),
3100
- createElementVNode("div", _hoisted_4$k, [
3100
+ createElementVNode("div", _hoisted_4$l, [
3101
3101
  createElementVNode("button", {
3102
3102
  type: "button",
3103
3103
  onClick: handleCommit,
@@ -3372,45 +3372,46 @@ const _hoisted_1$r = {
3372
3372
  key: 0,
3373
3373
  class: "ina-file-upload__label"
3374
3374
  };
3375
- const _hoisted_2$q = ["accept", "multiple", "disabled"];
3376
- const _hoisted_3$o = { class: "ina-file-upload__content" };
3377
- const _hoisted_4$j = { class: "ina-file-upload__icon" };
3378
- const _hoisted_5$h = { class: "ina-file-upload__text" };
3379
- const _hoisted_6$f = { class: "ina-file-upload__title" };
3380
- const _hoisted_7$f = { class: "ina-file-upload__description" };
3381
- const _hoisted_8$c = ["disabled"];
3382
- const _hoisted_9$9 = { class: "ina-file-upload__files" };
3383
- const _hoisted_10$8 = { class: "ina-file-upload__file-indicator" };
3384
- const _hoisted_11$8 = {
3375
+ const _hoisted_2$q = { key: 1 };
3376
+ const _hoisted_3$o = ["id", "accept", "multiple", "disabled"];
3377
+ const _hoisted_4$k = { class: "ina-file-upload__content" };
3378
+ const _hoisted_5$h = { class: "ina-file-upload__icon" };
3379
+ const _hoisted_6$f = { class: "ina-file-upload__text" };
3380
+ const _hoisted_7$f = { class: "ina-file-upload__title" };
3381
+ const _hoisted_8$c = { class: "ina-file-upload__description" };
3382
+ const _hoisted_9$9 = ["disabled"];
3383
+ const _hoisted_10$8 = { class: "ina-file-upload__files" };
3384
+ const _hoisted_11$8 = { class: "ina-file-upload__file-indicator" };
3385
+ const _hoisted_12$7 = {
3385
3386
  key: 0,
3386
3387
  class: "ina-file-upload__file-icon-wrapper ina-file-upload__file-icon-wrapper--uploading"
3387
3388
  };
3388
- const _hoisted_12$7 = {
3389
+ const _hoisted_13$5 = {
3389
3390
  key: 1,
3390
3391
  class: "ina-file-upload__file-icon-wrapper ina-file-upload__file-icon-wrapper--success"
3391
3392
  };
3392
- const _hoisted_13$5 = {
3393
+ const _hoisted_14$4 = {
3393
3394
  key: 2,
3394
3395
  class: "ina-file-upload__file-icon-wrapper ina-file-upload__file-icon-wrapper--error"
3395
3396
  };
3396
- const _hoisted_14$4 = {
3397
+ const _hoisted_15$2 = {
3397
3398
  key: 3,
3398
3399
  class: "ina-file-upload__file-icon-wrapper ina-file-upload__file-icon-wrapper--success"
3399
3400
  };
3400
- const _hoisted_15$2 = { class: "ina-file-upload__file-info" };
3401
- const _hoisted_16$2 = { class: "ina-file-upload__file-name" };
3402
- const _hoisted_17$2 = { class: "ina-file-upload__file-size" };
3403
- const _hoisted_18$2 = {
3401
+ const _hoisted_16$2 = { class: "ina-file-upload__file-info" };
3402
+ const _hoisted_17$2 = { class: "ina-file-upload__file-name" };
3403
+ const _hoisted_18$2 = { class: "ina-file-upload__file-size" };
3404
+ const _hoisted_19$2 = {
3404
3405
  key: 0,
3405
3406
  class: "ina-file-upload__file-error"
3406
3407
  };
3407
- const _hoisted_19$2 = { class: "ina-file-upload__file-actions" };
3408
- const _hoisted_20$2 = ["onClick"];
3408
+ const _hoisted_20$2 = { class: "ina-file-upload__file-actions" };
3409
3409
  const _hoisted_21$2 = ["onClick"];
3410
3410
  const _hoisted_22$1 = ["onClick"];
3411
3411
  const _hoisted_23$1 = ["onClick"];
3412
3412
  const _hoisted_24$1 = ["onClick"];
3413
- const _hoisted_25$1 = {
3413
+ const _hoisted_25$1 = ["onClick"];
3414
+ const _hoisted_26$1 = {
3414
3415
  key: 2,
3415
3416
  class: "ina-file-upload__errors"
3416
3417
  };
@@ -3435,17 +3436,39 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3435
3436
  emits: ["change", "remove"],
3436
3437
  setup(__props, { emit: __emit }) {
3437
3438
  const props = __props;
3439
+ const attrs = useAttrs();
3438
3440
  const fileInputRef = ref();
3439
3441
  const files = ref([]);
3440
3442
  const isDragOver = ref(false);
3441
3443
  const validationErrors = ref([]);
3442
3444
  const showAllFiles = ref(false);
3445
+ const inputId = computed(() => {
3446
+ const providedId = attrs.id || attrs.name;
3447
+ return providedId ? String(providedId) : void 0;
3448
+ });
3449
+ const filteredAttrs = computed(() => {
3450
+ const {
3451
+ id,
3452
+ name,
3453
+ type,
3454
+ multiple,
3455
+ disabled,
3456
+ class: classAttr,
3457
+ ...rest
3458
+ } = attrs;
3459
+ return rest;
3460
+ });
3443
3461
  const displayedFiles = computed(() => {
3444
3462
  if (props.multiple && files.value.length > 5 && !showAllFiles.value) {
3445
3463
  return files.value.slice(0, 5);
3446
3464
  }
3447
3465
  return files.value;
3448
3466
  });
3467
+ const labelComponent = computed(() => {
3468
+ if (!props.label) return null;
3469
+ if (typeof props.label === "string") return null;
3470
+ return props.label;
3471
+ });
3449
3472
  const getOriginalIndex = (uploadedFile) => {
3450
3473
  return files.value.findIndex(
3451
3474
  (f) => f.file.name === uploadedFile.file.name && f.file.size === uploadedFile.file.size && f.status === uploadedFile.status
@@ -3629,7 +3652,9 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3629
3652
  return openBlock(), createElementBlock("div", {
3630
3653
  class: normalizeClass(["ina-file-upload", uploadClasses.value])
3631
3654
  }, [
3632
- __props.label ? (openBlock(), createElementBlock("div", _hoisted_1$r, toDisplayString(__props.label), 1)) : createCommentVNode("", true),
3655
+ __props.label ? (openBlock(), createElementBlock("div", _hoisted_1$r, [
3656
+ labelComponent.value ? (openBlock(), createBlock(resolveDynamicComponent(labelComponent.value), { key: 0 })) : __props.label && typeof __props.label === "string" ? (openBlock(), createElementBlock("span", _hoisted_2$q, toDisplayString(__props.label), 1)) : createCommentVNode("", true)
3657
+ ])) : createCommentVNode("", true),
3633
3658
  createElementVNode("div", {
3634
3659
  class: normalizeClass(["ina-file-upload__dropzone", dropzoneClasses.value]),
3635
3660
  onClick: triggerFileInput,
@@ -3637,7 +3662,8 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3637
3662
  onDragleave: handleDragLeave,
3638
3663
  onDrop: handleDrop
3639
3664
  }, [
3640
- createElementVNode("input", {
3665
+ createElementVNode("input", mergeProps(filteredAttrs.value, {
3666
+ id: inputId.value,
3641
3667
  ref_key: "fileInputRef",
3642
3668
  ref: fileInputRef,
3643
3669
  type: "file",
@@ -3646,25 +3672,25 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3646
3672
  disabled: __props.disabled,
3647
3673
  class: "ina-file-upload__input",
3648
3674
  onChange: handleFileChange
3649
- }, null, 40, _hoisted_2$q),
3650
- createElementVNode("div", _hoisted_3$o, [
3651
- createElementVNode("div", _hoisted_4$j, [
3675
+ }), null, 16, _hoisted_3$o),
3676
+ createElementVNode("div", _hoisted_4$k, [
3677
+ createElementVNode("div", _hoisted_5$h, [
3652
3678
  createVNode(unref(IconUpload), { size: 24 })
3653
3679
  ]),
3654
- createElementVNode("div", _hoisted_5$h, [
3655
- createElementVNode("div", _hoisted_6$f, toDisplayString(__props.title), 1),
3656
- createElementVNode("div", _hoisted_7$f, toDisplayString(__props.description), 1)
3680
+ createElementVNode("div", _hoisted_6$f, [
3681
+ createElementVNode("div", _hoisted_7$f, toDisplayString(__props.title), 1),
3682
+ createElementVNode("div", _hoisted_8$c, toDisplayString(__props.description), 1)
3657
3683
  ]),
3658
3684
  createElementVNode("button", {
3659
3685
  type: "button",
3660
3686
  class: "ina-file-upload__button",
3661
3687
  disabled: __props.disabled,
3662
3688
  onClick: withModifiers(triggerFileInput, ["stop"])
3663
- }, " Pilih File ", 8, _hoisted_8$c)
3689
+ }, " Pilih File ", 8, _hoisted_9$9)
3664
3690
  ])
3665
3691
  ], 34),
3666
3692
  files.value.length > 0 ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
3667
- createElementVNode("div", _hoisted_9$9, [
3693
+ createElementVNode("div", _hoisted_10$8, [
3668
3694
  (openBlock(true), createElementBlock(Fragment, null, renderList(displayedFiles.value, (uploadedFile, displayIndex) => {
3669
3695
  return openBlock(), createElementBlock("div", {
3670
3696
  key: `${uploadedFile.file.name}-${getOriginalIndex(uploadedFile)}`,
@@ -3674,35 +3700,35 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3674
3700
  "ina-file-upload__file--uploading": uploadedFile.status === "uploading"
3675
3701
  }])
3676
3702
  }, [
3677
- createElementVNode("div", _hoisted_10$8, [
3678
- uploadedFile.status === "uploading" ? (openBlock(), createElementBlock("div", _hoisted_11$8, [
3703
+ createElementVNode("div", _hoisted_11$8, [
3704
+ uploadedFile.status === "uploading" ? (openBlock(), createElementBlock("div", _hoisted_12$7, [
3679
3705
  createVNode(unref(IconLoader2), {
3680
3706
  size: 20,
3681
3707
  class: "ina-file-upload__file-icon--spinning"
3682
3708
  })
3683
- ])) : uploadedFile.status === "success" ? (openBlock(), createElementBlock("div", _hoisted_12$7, [
3709
+ ])) : uploadedFile.status === "success" ? (openBlock(), createElementBlock("div", _hoisted_13$5, [
3684
3710
  createVNode(unref(IconCircleCheck), {
3685
3711
  size: 20,
3686
3712
  stroke: "2"
3687
3713
  })
3688
- ])) : uploadedFile.status === "error" ? (openBlock(), createElementBlock("div", _hoisted_13$5, [
3714
+ ])) : uploadedFile.status === "error" ? (openBlock(), createElementBlock("div", _hoisted_14$4, [
3689
3715
  createVNode(unref(IconCircleX), {
3690
3716
  size: 20,
3691
3717
  stroke: "2"
3692
3718
  })
3693
- ])) : uploadedFile.status === "idle" ? (openBlock(), createElementBlock("div", _hoisted_14$4, [
3719
+ ])) : uploadedFile.status === "idle" ? (openBlock(), createElementBlock("div", _hoisted_15$2, [
3694
3720
  createVNode(unref(IconCircleCheck), {
3695
3721
  size: 20,
3696
3722
  stroke: "2"
3697
3723
  })
3698
3724
  ])) : createCommentVNode("", true)
3699
3725
  ]),
3700
- createElementVNode("div", _hoisted_15$2, [
3701
- createElementVNode("div", _hoisted_16$2, toDisplayString(unref(sanitizeFileName)(uploadedFile.file.name)), 1),
3702
- createElementVNode("div", _hoisted_17$2, toDisplayString(unref(formatFileSize)(uploadedFile.file.size)), 1),
3703
- uploadedFile.error ? (openBlock(), createElementBlock("div", _hoisted_18$2, toDisplayString(uploadedFile.error), 1)) : createCommentVNode("", true)
3726
+ createElementVNode("div", _hoisted_16$2, [
3727
+ createElementVNode("div", _hoisted_17$2, toDisplayString(unref(sanitizeFileName)(uploadedFile.file.name)), 1),
3728
+ createElementVNode("div", _hoisted_18$2, toDisplayString(unref(formatFileSize)(uploadedFile.file.size)), 1),
3729
+ uploadedFile.error ? (openBlock(), createElementBlock("div", _hoisted_19$2, toDisplayString(uploadedFile.error), 1)) : createCommentVNode("", true)
3704
3730
  ]),
3705
- createElementVNode("div", _hoisted_19$2, [
3731
+ createElementVNode("div", _hoisted_20$2, [
3706
3732
  uploadedFile.status === "error" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
3707
3733
  createElementVNode("button", {
3708
3734
  title: "Coba lagi",
@@ -3711,7 +3737,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3711
3737
  onClick: ($event) => updateFileStatus(getOriginalIndex(uploadedFile), "idle")
3712
3738
  }, [
3713
3739
  createVNode(unref(IconRotateClockwise), { size: 20 })
3714
- ], 8, _hoisted_20$2),
3740
+ ], 8, _hoisted_21$2),
3715
3741
  createElementVNode("button", {
3716
3742
  title: "Hapus file",
3717
3743
  type: "button",
@@ -3719,7 +3745,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3719
3745
  onClick: ($event) => removeFile(getOriginalIndex(uploadedFile))
3720
3746
  }, [
3721
3747
  createVNode(unref(IconTrash), { size: 20 })
3722
- ], 8, _hoisted_21$2)
3748
+ ], 8, _hoisted_22$1)
3723
3749
  ], 64)) : uploadedFile.status === "uploading" ? (openBlock(), createElementBlock("button", {
3724
3750
  key: 1,
3725
3751
  title: "Batalkan upload",
@@ -3728,7 +3754,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3728
3754
  onClick: ($event) => removeFile(getOriginalIndex(uploadedFile))
3729
3755
  }, [
3730
3756
  createVNode(unref(IconX), { size: 20 })
3731
- ], 8, _hoisted_22$1)) : uploadedFile.status === "success" ? (openBlock(), createElementBlock("button", {
3757
+ ], 8, _hoisted_23$1)) : uploadedFile.status === "success" ? (openBlock(), createElementBlock("button", {
3732
3758
  key: 2,
3733
3759
  title: "Hapus file",
3734
3760
  type: "button",
@@ -3736,7 +3762,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3736
3762
  onClick: ($event) => removeFile(getOriginalIndex(uploadedFile))
3737
3763
  }, [
3738
3764
  createVNode(unref(IconTrash), { size: 20 })
3739
- ], 8, _hoisted_23$1)) : uploadedFile.status === "idle" ? (openBlock(), createElementBlock("button", {
3765
+ ], 8, _hoisted_24$1)) : uploadedFile.status === "idle" ? (openBlock(), createElementBlock("button", {
3740
3766
  key: 3,
3741
3767
  title: "Hapus file",
3742
3768
  type: "button",
@@ -3744,7 +3770,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3744
3770
  onClick: ($event) => removeFile(getOriginalIndex(uploadedFile))
3745
3771
  }, [
3746
3772
  createVNode(unref(IconTrash), { size: 20 })
3747
- ], 8, _hoisted_24$1)) : createCommentVNode("", true)
3773
+ ], 8, _hoisted_25$1)) : createCommentVNode("", true)
3748
3774
  ])
3749
3775
  ], 2);
3750
3776
  }), 128))
@@ -3776,7 +3802,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3776
3802
  ])], 2))
3777
3803
  ])) : createCommentVNode("", true)
3778
3804
  ], 64)) : createCommentVNode("", true),
3779
- validationErrors.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_25$1, [
3805
+ validationErrors.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_26$1, [
3780
3806
  (openBlock(true), createElementBlock(Fragment, null, renderList(validationErrors.value, (error, index2) => {
3781
3807
  return openBlock(), createElementBlock("div", {
3782
3808
  key: index2,
@@ -3794,7 +3820,7 @@ const _hoisted_2$p = {
3794
3820
  class: "ina-input-search__required"
3795
3821
  };
3796
3822
  const _hoisted_3$n = { class: "ina-input-search__wrapper" };
3797
- const _hoisted_4$i = ["id", "placeholder", "disabled", "readonly", "maxlength"];
3823
+ const _hoisted_4$j = ["id", "placeholder", "disabled", "readonly", "maxlength"];
3798
3824
  const _sfc_main$u = /* @__PURE__ */ defineComponent({
3799
3825
  __name: "InputSearch",
3800
3826
  props: {
@@ -3946,7 +3972,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
3946
3972
  onBlur: handleBlur,
3947
3973
  onFocus: handleFocus,
3948
3974
  onKeydown: withKeys(handleSearch, ["enter"])
3949
- }), null, 16, _hoisted_4$i), [
3975
+ }), null, 16, _hoisted_4$j), [
3950
3976
  [vModelText, inputValue.value]
3951
3977
  ]),
3952
3978
  inputValue.value && __props.showClearButton ? (openBlock(), createElementBlock("button", {
@@ -3986,7 +4012,7 @@ const _hoisted_3$m = {
3986
4012
  key: 0,
3987
4013
  class: "ina-modal__header"
3988
4014
  };
3989
- const _hoisted_4$h = ["id"];
4015
+ const _hoisted_4$i = ["id"];
3990
4016
  const _hoisted_5$g = ["aria-label"];
3991
4017
  const _hoisted_6$e = { class: "ina-modal__body" };
3992
4018
  const _hoisted_7$e = ["id"];
@@ -4104,7 +4130,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
4104
4130
  renderSlot(_ctx.$slots, "title", {}, () => [
4105
4131
  createTextVNode(toDisplayString(__props.title), 1)
4106
4132
  ], true)
4107
- ], 8, _hoisted_4$h),
4133
+ ], 8, _hoisted_4$i),
4108
4134
  __props.showCloseButton ? (openBlock(), createElementBlock("button", {
4109
4135
  key: 0,
4110
4136
  type: "button",
@@ -4159,7 +4185,7 @@ const _hoisted_2$n = {
4159
4185
  class: "ina-month-picker__required"
4160
4186
  };
4161
4187
  const _hoisted_3$l = ["id", "disabled", "aria-expanded", "aria-labelledby"];
4162
- const _hoisted_4$g = {
4188
+ const _hoisted_4$h = {
4163
4189
  key: 0,
4164
4190
  class: "ina-month-picker__prefix-icon"
4165
4191
  };
@@ -4428,7 +4454,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
4428
4454
  onClick: togglePanel,
4429
4455
  onKeydown: handleKeydown
4430
4456
  }, [
4431
- __props.showIcon ? (openBlock(), createElementBlock("div", _hoisted_4$g, [..._cache[1] || (_cache[1] = [
4457
+ __props.showIcon ? (openBlock(), createElementBlock("div", _hoisted_4$h, [..._cache[1] || (_cache[1] = [
4432
4458
  createStaticVNode('<svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-f53ade24><rect x="3" y="4" width="18" height="18" rx="2" ry="2" stroke="currentColor" stroke-width="2" data-v-f53ade24></rect><line x1="16" y1="2" x2="16" y2="6" stroke="currentColor" stroke-width="2" stroke-linecap="round" data-v-f53ade24></line><line x1="8" y1="2" x2="8" y2="6" stroke="currentColor" stroke-width="2" stroke-linecap="round" data-v-f53ade24></line><line x1="3" y1="10" x2="21" y2="10" stroke="currentColor" stroke-width="2" stroke-linecap="round" data-v-f53ade24></line></svg>', 1)
4433
4459
  ])])) : createCommentVNode("", true),
4434
4460
  createElementVNode("span", _hoisted_5$f, toDisplayString(selectedMonthDisplay.value || __props.placeholder), 1),
@@ -4519,7 +4545,7 @@ const _hoisted_2$m = {
4519
4545
  class: "ina-multiple-choice-grid__subtitle"
4520
4546
  };
4521
4547
  const _hoisted_3$k = { class: "ina-multiple-choice-grid__container" };
4522
- const _hoisted_4$f = { class: "ina-multiple-choice-grid__grid" };
4548
+ const _hoisted_4$g = { class: "ina-multiple-choice-grid__grid" };
4523
4549
  const _hoisted_5$e = { class: "ina-multiple-choice-grid__header-row" };
4524
4550
  const _hoisted_6$c = { class: "ina-multiple-choice-grid__row-label" };
4525
4551
  const _hoisted_7$c = ["id", "name", "value", "disabled"];
@@ -4576,7 +4602,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
4576
4602
  __props.title ? (openBlock(), createElementBlock("div", _hoisted_1$n, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
4577
4603
  __props.subtitle ? (openBlock(), createElementBlock("div", _hoisted_2$m, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true),
4578
4604
  createElementVNode("div", _hoisted_3$k, [
4579
- createElementVNode("div", _hoisted_4$f, [
4605
+ createElementVNode("div", _hoisted_4$g, [
4580
4606
  createElementVNode("div", _hoisted_5$e, [
4581
4607
  _cache[1] || (_cache[1] = createElementVNode("div", { class: "ina-multiple-choice-grid__header-cell ina-multiple-choice-grid__header-cell--empty" }, null, -1)),
4582
4608
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.columns, (column, colIndex) => {
@@ -4632,7 +4658,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
4632
4658
  const _hoisted_1$m = ["aria-label"];
4633
4659
  const _hoisted_2$l = { class: "ina-pagination__nav-container" };
4634
4660
  const _hoisted_3$j = { class: "ina-pagination__page-info" };
4635
- const _hoisted_4$e = { class: "ina-pagination__nav-buttons" };
4661
+ const _hoisted_4$f = { class: "ina-pagination__nav-buttons" };
4636
4662
  const _hoisted_5$d = ["disabled"];
4637
4663
  const _hoisted_6$b = ["disabled", "aria-label"];
4638
4664
  const _hoisted_7$b = ["onClick", "disabled", "aria-label", "aria-current"];
@@ -4758,7 +4784,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
4758
4784
  }, [
4759
4785
  createElementVNode("div", _hoisted_2$l, [
4760
4786
  createElementVNode("div", _hoisted_3$j, " Halaman " + toDisplayString(currentPage.value) + " dari " + toDisplayString(__props.totalPages), 1),
4761
- createElementVNode("div", _hoisted_4$e, [
4787
+ createElementVNode("div", _hoisted_4$f, [
4762
4788
  createElementVNode("button", {
4763
4789
  type: "button",
4764
4790
  class: normalizeClass(["ina-pagination__nav-button", {
@@ -4908,7 +4934,7 @@ const _hoisted_3$i = {
4908
4934
  key: 0,
4909
4935
  class: "ina-password-input__required"
4910
4936
  };
4911
- const _hoisted_4$d = ["id", "type", "placeholder", "disabled", "readonly", "maxlength"];
4937
+ const _hoisted_4$e = ["id", "type", "placeholder", "disabled", "readonly", "maxlength"];
4912
4938
  const _hoisted_5$c = ["disabled"];
4913
4939
  const _hoisted_6$a = {
4914
4940
  key: 0,
@@ -5036,7 +5062,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
5036
5062
  onInput: handleInput,
5037
5063
  onBlur: handleBlur,
5038
5064
  onFocus: handleFocus
5039
- }, _ctx.$attrs), null, 16, _hoisted_4$d), [
5065
+ }, _ctx.$attrs), null, 16, _hoisted_4$e), [
5040
5066
  [vModelDynamic, inputValue.value]
5041
5067
  ]),
5042
5068
  createElementVNode("button", {
@@ -5099,7 +5125,7 @@ const _hoisted_2$j = {
5099
5125
  class: "ina-phone-input__required"
5100
5126
  };
5101
5127
  const _hoisted_3$h = { class: "ina-phone-input__wrapper" };
5102
- const _hoisted_4$c = { class: "ina-phone-input__country-selector" };
5128
+ const _hoisted_4$d = { class: "ina-phone-input__country-selector" };
5103
5129
  const _hoisted_5$b = { class: "ina-phone-input__country-flag" };
5104
5130
  const _hoisted_6$9 = { class: "ina-phone-input__country-code" };
5105
5131
  const _hoisted_7$9 = {
@@ -5267,7 +5293,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
5267
5293
  __props.required ? (openBlock(), createElementBlock("span", _hoisted_2$j, "*")) : createCommentVNode("", true)
5268
5294
  ], 8, _hoisted_1$k)) : createCommentVNode("", true),
5269
5295
  createElementVNode("div", _hoisted_3$h, [
5270
- createElementVNode("div", _hoisted_4$c, [
5296
+ createElementVNode("div", _hoisted_4$d, [
5271
5297
  createElementVNode("button", {
5272
5298
  type: "button",
5273
5299
  class: "ina-phone-input__country-button",
@@ -5456,7 +5482,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
5456
5482
  const _hoisted_1$i = ["disabled"];
5457
5483
  const _hoisted_2$i = { class: "ina-radio-input__group" };
5458
5484
  const _hoisted_3$g = ["for"];
5459
- const _hoisted_4$b = ["id", "name", "value", "disabled"];
5485
+ const _hoisted_4$c = ["id", "name", "value", "disabled"];
5460
5486
  const _hoisted_5$a = ["for"];
5461
5487
  const _sfc_main$l = /* @__PURE__ */ defineComponent({
5462
5488
  __name: "RadioInput",
@@ -5556,7 +5582,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
5556
5582
  onChange: handleChange,
5557
5583
  onFocus: handleFocus,
5558
5584
  onBlur: handleBlur
5559
- }), null, 16, _hoisted_4$b), [
5585
+ }), null, 16, _hoisted_4$c), [
5560
5586
  [vModelRadio, selectedValue.value]
5561
5587
  ]),
5562
5588
  createElementVNode("label", {
@@ -5580,7 +5606,7 @@ const _hoisted_2$h = {
5580
5606
  class: "ina-year-picker__required"
5581
5607
  };
5582
5608
  const _hoisted_3$f = { class: "ina-year-picker__wrapper" };
5583
- const _hoisted_4$a = ["id", "disabled", "aria-expanded", "aria-labelledby"];
5609
+ const _hoisted_4$b = ["id", "disabled", "aria-expanded", "aria-labelledby"];
5584
5610
  const _hoisted_5$9 = {
5585
5611
  key: 0,
5586
5612
  class: "ina-year-picker__prefix-icon"
@@ -5911,7 +5937,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
5911
5937
  })
5912
5938
  ], -1)
5913
5939
  ])])) : createCommentVNode("", true)
5914
- ], 42, _hoisted_4$a),
5940
+ ], 42, _hoisted_4$b),
5915
5941
  createVNode(Transition, { name: "panel" }, {
5916
5942
  default: withCtx(() => [
5917
5943
  isOpen.value ? (openBlock(), createElementBlock("div", {
@@ -5977,7 +6003,7 @@ const _hoisted_2$g = {
5977
6003
  class: "ina-date-picker__required"
5978
6004
  };
5979
6005
  const _hoisted_3$e = ["id", "disabled"];
5980
- const _hoisted_4$9 = {
6006
+ const _hoisted_4$a = {
5981
6007
  key: 0,
5982
6008
  class: "ina-date-picker__calendar-container"
5983
6009
  };
@@ -6830,7 +6856,7 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
6830
6856
  createElementVNode("div", {
6831
6857
  class: normalizeClass(panelContentClasses.value)
6832
6858
  }, [
6833
- __props.mode === "single" ? (openBlock(), createElementBlock("div", _hoisted_4$9, [
6859
+ __props.mode === "single" ? (openBlock(), createElementBlock("div", _hoisted_4$a, [
6834
6860
  createElementVNode("div", _hoisted_5$8, [
6835
6861
  createElementVNode("button", {
6836
6862
  type: "button",
@@ -7049,7 +7075,7 @@ const _hoisted_3$d = {
7049
7075
  key: 0,
7050
7076
  class: "ina-select-dropdown__search"
7051
7077
  };
7052
- const _hoisted_4$8 = ["aria-label", "disabled"];
7078
+ const _hoisted_4$9 = ["aria-label", "disabled"];
7053
7079
  const _hoisted_5$7 = {
7054
7080
  key: 1,
7055
7081
  class: "ina-select-dropdown__preview"
@@ -7488,7 +7514,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
7488
7514
  disabled: __props.disabled,
7489
7515
  class: normalizeClass(searchInputClasses.value),
7490
7516
  onInput: handleSearchInput
7491
- }, null, 42, _hoisted_4$8), [
7517
+ }, null, 42, _hoisted_4$9), [
7492
7518
  [vModelText, internalSearchTerm.value]
7493
7519
  ])
7494
7520
  ])) : createCommentVNode("", true),
@@ -7613,7 +7639,7 @@ const _hoisted_2$e = {
7613
7639
  class: "ina-drawer__header"
7614
7640
  };
7615
7641
  const _hoisted_3$c = ["id"];
7616
- const _hoisted_4$7 = ["aria-label"];
7642
+ const _hoisted_4$8 = ["aria-label"];
7617
7643
  const _hoisted_5$6 = { class: "ina-drawer__content" };
7618
7644
  const _hoisted_6$5 = ["id"];
7619
7645
  const _hoisted_7$5 = {
@@ -7774,7 +7800,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
7774
7800
  "stroke-linejoin": "round"
7775
7801
  })
7776
7802
  ], -1)
7777
- ])], 8, _hoisted_4$7)) : createCommentVNode("", true)
7803
+ ])], 8, _hoisted_4$8)) : createCommentVNode("", true)
7778
7804
  ])) : createCommentVNode("", true),
7779
7805
  createElementVNode("div", _hoisted_5$6, [
7780
7806
  __props.description ? (openBlock(), createElementBlock("div", {
@@ -7919,7 +7945,7 @@ const _hoisted_3$a = {
7919
7945
  "stroke-linecap": "round",
7920
7946
  "stroke-linejoin": "round"
7921
7947
  };
7922
- const _hoisted_4$6 = {
7948
+ const _hoisted_4$7 = {
7923
7949
  key: 2,
7924
7950
  class: "ina-stepper__step-number"
7925
7951
  };
@@ -7974,7 +8000,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
7974
8000
  fill: "none"
7975
8001
  }, null, -1),
7976
8002
  createElementVNode("path", { d: "M5 12l5 5l10 -10" }, null, -1)
7977
- ])])) : step.icon ? (openBlock(), createBlock(resolveDynamicComponent(step.icon), { key: 1 })) : (openBlock(), createElementBlock("span", _hoisted_4$6, toDisplayString(index2 + 1), 1))
8003
+ ])])) : step.icon ? (openBlock(), createBlock(resolveDynamicComponent(step.icon), { key: 1 })) : (openBlock(), createElementBlock("span", _hoisted_4$7, toDisplayString(index2 + 1), 1))
7978
8004
  ]),
7979
8005
  createElementVNode("div", _hoisted_5$5, [
7980
8006
  typeof step.label === "string" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
@@ -8360,7 +8386,7 @@ const _hoisted_2$9 = {
8360
8386
  class: "ina-table__header-cell"
8361
8387
  };
8362
8388
  const _hoisted_3$7 = { class: "ina-table__sort-controls" };
8363
- const _hoisted_4$5 = {
8389
+ const _hoisted_4$6 = {
8364
8390
  key: 1,
8365
8391
  class: "ina-table__sort-icon"
8366
8392
  };
@@ -8701,7 +8727,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
8701
8727
  isSorted: isSorted(col),
8702
8728
  sortOrder: sortOrder.value,
8703
8729
  handleSort: (order) => handleSort(col, order)
8704
- }) : (openBlock(), createElementBlock("div", _hoisted_4$5, [
8730
+ }) : (openBlock(), createElementBlock("div", _hoisted_4$6, [
8705
8731
  createElementVNode("div", {
8706
8732
  class: normalizeClass([
8707
8733
  "ina-table__sort-button",
@@ -8823,11 +8849,12 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
8823
8849
  }
8824
8850
  });
8825
8851
  const _hoisted_1$8 = ["for"];
8826
- const _hoisted_2$8 = {
8827
- key: 0,
8852
+ const _hoisted_2$8 = { key: 1 };
8853
+ const _hoisted_3$6 = {
8854
+ key: 2,
8828
8855
  class: "ina-text-area__required"
8829
8856
  };
8830
- const _hoisted_3$6 = ["id", "name", "placeholder", "disabled", "readonly", "maxlength", "rows", "autocomplete", "spellcheck", "autocapitalize", "autocorrect", "dir"];
8857
+ const _hoisted_4$5 = ["id", "name", "placeholder", "disabled", "readonly", "maxlength", "rows", "autocomplete", "spellcheck", "autocapitalize", "autocorrect", "dir"];
8831
8858
  const _sfc_main$9 = /* @__PURE__ */ defineComponent({
8832
8859
  __name: "TextArea",
8833
8860
  props: {
@@ -8885,6 +8912,11 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
8885
8912
  const { id, name, ...rest } = attrs;
8886
8913
  return rest;
8887
8914
  });
8915
+ const labelComponent = computed(() => {
8916
+ if (!props.label) return null;
8917
+ if (typeof props.label === "string") return null;
8918
+ return props.label;
8919
+ });
8888
8920
  const containerClasses = computed(() => {
8889
8921
  const classes = ["ina-text-area"];
8890
8922
  if (props.disabled) {
@@ -9036,8 +9068,8 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
9036
9068
  for: textareaId.value,
9037
9069
  class: "ina-text-area__label"
9038
9070
  }, [
9039
- createTextVNode(toDisplayString(__props.label) + " ", 1),
9040
- __props.required ? (openBlock(), createElementBlock("span", _hoisted_2$8, "*")) : createCommentVNode("", true)
9071
+ labelComponent.value ? (openBlock(), createBlock(resolveDynamicComponent(labelComponent.value), { key: 0 })) : __props.label && typeof __props.label === "string" ? (openBlock(), createElementBlock("span", _hoisted_2$8, toDisplayString(__props.label), 1)) : createCommentVNode("", true),
9072
+ __props.required ? (openBlock(), createElementBlock("span", _hoisted_3$6, "*")) : createCommentVNode("", true)
9041
9073
  ], 8, _hoisted_1$8)) : createCommentVNode("", true),
9042
9074
  createElementVNode("div", {
9043
9075
  class: normalizeClass(["ina-text-area__wrapper", wrapperClasses.value])
@@ -9062,7 +9094,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
9062
9094
  onInput: handleInput,
9063
9095
  onBlur: handleBlur,
9064
9096
  onFocus: handleFocus
9065
- }), null, 16, _hoisted_3$6), [
9097
+ }), null, 16, _hoisted_4$5), [
9066
9098
  [vModelText, inputValue.value]
9067
9099
  ]),
9068
9100
  __props.showClearButton && inputValue.value !== "" && !__props.disabled ? (openBlock(), createElementBlock("button", {
@@ -10323,7 +10355,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
10323
10355
  return openBlock(), createElementBlock("div", {
10324
10356
  class: normalizeClass(["ina-toggle", toggleClasses.value])
10325
10357
  }, [
10326
- createElementVNode("input", mergeProps({
10358
+ createElementVNode("input", mergeProps(filteredAttrs.value, {
10327
10359
  id: inputId.value,
10328
10360
  ref_key: "inputRef",
10329
10361
  ref: inputRef,
@@ -10331,8 +10363,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
10331
10363
  type: "checkbox",
10332
10364
  disabled: __props.disabled,
10333
10365
  readonly: __props.readonly,
10334
- class: "ina-toggle__input"
10335
- }, filteredAttrs.value, {
10366
+ class: "ina-toggle__input",
10336
10367
  onChange: handleChange,
10337
10368
  onFocus: handleFocus,
10338
10369
  onBlur: handleBlur
@@ -10592,7 +10623,7 @@ function initializeTheme(brandName) {
10592
10623
  if (typeof window !== "undefined") {
10593
10624
  initializeTheme();
10594
10625
  }
10595
- const _hoisted_1 = ["accept", "disabled"];
10626
+ const _hoisted_1 = ["id", "accept", "disabled"];
10596
10627
  const _hoisted_2 = ["tabindex", "aria-label"];
10597
10628
  const _hoisted_3 = { class: "ina-single-file-upload__icon-wrapper ina-single-file-upload__icon-wrapper--default" };
10598
10629
  const _hoisted_4 = { class: "ina-single-file-upload__content" };
@@ -10624,12 +10655,21 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
10624
10655
  setup(__props, { emit: __emit }) {
10625
10656
  const props = __props;
10626
10657
  const emit = __emit;
10658
+ const attrs = useAttrs();
10627
10659
  const fileInputRef = ref();
10628
10660
  const file = ref(null);
10629
10661
  const internalProgress = ref(0);
10630
10662
  const internalStatus = ref("idle");
10631
10663
  const error = ref(null);
10632
10664
  const isActive = ref(false);
10665
+ const inputId = computed(() => {
10666
+ const providedId = attrs.id || attrs.name;
10667
+ return providedId ? String(providedId) : void 0;
10668
+ });
10669
+ const filteredAttrs = computed(() => {
10670
+ const { id, name, type, accept, disabled, class: classAttr, ...rest } = attrs;
10671
+ return rest;
10672
+ });
10633
10673
  const progress = computed(
10634
10674
  () => props.progress !== void 0 ? props.progress : internalProgress.value
10635
10675
  );
@@ -10865,7 +10905,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
10865
10905
  return openBlock(), createElementBlock("div", {
10866
10906
  class: normalizeClass(["ina-single-file-upload", props.className])
10867
10907
  }, [
10868
- createElementVNode("input", {
10908
+ createElementVNode("input", mergeProps(filteredAttrs.value, {
10909
+ id: inputId.value,
10869
10910
  ref_key: "fileInputRef",
10870
10911
  ref: fileInputRef,
10871
10912
  type: "file",
@@ -10873,7 +10914,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
10873
10914
  disabled: props.disabled,
10874
10915
  class: "ina-single-file-upload__input",
10875
10916
  onChange: handleFileChange
10876
- }, null, 40, _hoisted_1),
10917
+ }), null, 16, _hoisted_1),
10877
10918
  createElementVNode("div", {
10878
10919
  class: normalizeClass(containerClasses.value),
10879
10920
  role: "button",