@nmorph/nmorph-ui-kit 3.0.16 → 3.0.18

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 (112) hide show
  1. package/dist/components/basic/nmorph-button/NmorphButton.vue2.js +6 -6
  2. package/dist/components/basic/nmorph-layout/NmorphLayout.vue.js +32 -29
  3. package/dist/components/basic/nmorph-layout/NmorphLayout.vue2.js +13 -11
  4. package/dist/components/basic/nmorph-link/NmorphLink.css +1 -1
  5. package/dist/components/basic/nmorph-link/NmorphLink.vue2.js +7 -7
  6. package/dist/components/basic/nmorph-space/NmorphSpace.vue.js +18 -15
  7. package/dist/components/basic/nmorph-space/NmorphSpace.vue2.js +19 -17
  8. package/dist/components/basic/nmorph-text/NmorphText.vue.js +21 -18
  9. package/dist/components/basic/nmorph-text/NmorphText.vue2.js +23 -15
  10. package/dist/components/data/nmorph-audio-meter/NmorphAudioMeter.css +1 -1
  11. package/dist/components/data/nmorph-audio-meter/NmorphAudioMeter.vue2.js +15 -15
  12. package/dist/components/data/nmorph-audio-preview/NmorphAudioPreview.css +1 -1
  13. package/dist/components/data/nmorph-audio-preview/NmorphAudioPreview.vue2.js +8 -8
  14. package/dist/components/data/nmorph-badge/NmorphBadge.vue2.js +1 -1
  15. package/dist/components/data/nmorph-card/NmorphCard.vue.js +36 -33
  16. package/dist/components/data/nmorph-card/NmorphCard.vue2.js +22 -20
  17. package/dist/components/data/nmorph-empty/NmorphEmpty.css +1 -1
  18. package/dist/components/data/nmorph-file-card/NmorphFileCard.css +1 -1
  19. package/dist/components/data/nmorph-file-card/NmorphFileCard.vue2.js +12 -12
  20. package/dist/components/data/nmorph-media-gallery/NmorphMediaGallery.css +1 -1
  21. package/dist/components/data/nmorph-media-gallery/NmorphMediaGallery.vue.js +11 -11
  22. package/dist/components/data/nmorph-media-tile/NmorphMediaTile.css +1 -1
  23. package/dist/components/data/nmorph-preview-portal/NmorphPreviewPortal.css +1 -1
  24. package/dist/components/data/nmorph-preview-portal/NmorphPreviewPortal.vue.js +23 -26
  25. package/dist/components/data/nmorph-preview-portal/NmorphPreviewPortal.vue2.js +21 -19
  26. package/dist/components/data/nmorph-video-preview/NmorphVideoPreview.css +1 -1
  27. package/dist/components/data/nmorph-video-preview/NmorphVideoPreview.vue.js +40 -43
  28. package/dist/components/data/nmorph-video-preview/NmorphVideoPreview.vue2.js +60 -59
  29. package/dist/components/feedback/nmorph-alert/NmorphAlert.css +1 -1
  30. package/dist/components/feedback/nmorph-callout/NmorphCallout.css +1 -1
  31. package/dist/components/feedback/nmorph-callout/NmorphCallout.vue.js +37 -34
  32. package/dist/components/feedback/nmorph-callout/NmorphCallout.vue2.js +25 -16
  33. package/dist/components/feedback/nmorph-dialog/NmorphDialog.vue.js +21 -23
  34. package/dist/components/feedback/nmorph-dialog/NmorphDialog.vue2.js +32 -30
  35. package/dist/components/feedback/nmorph-drawer/NmorphDrawer.vue.js +16 -18
  36. package/dist/components/feedback/nmorph-drawer/NmorphDrawer.vue2.js +32 -30
  37. package/dist/components/feedback/nmorph-guide/NmorphGuide.vue2.js +3 -3
  38. package/dist/components/feedback/nmorph-guide/NmorphGuideStep.css +1 -1
  39. package/dist/components/feedback/nmorph-guide/NmorphGuideStep.vue.js +37 -39
  40. package/dist/components/feedback/nmorph-guide/NmorphGuideStep.vue2.js +26 -21
  41. package/dist/components/form/nmorph-form/components/nmorph-form-item/NmorphFormItem.css +1 -1
  42. package/dist/components/form/nmorph-form/components/nmorph-form-item/inner-components/nmorph-validation-icon/NmorphValidationIcon.css +1 -1
  43. package/dist/components/navigation/nmorph-dropdown/NmorphDropdown.vue.js +13 -14
  44. package/dist/components/navigation/nmorph-dropdown/NmorphDropdown.vue2.js +34 -29
  45. package/dist/components/others/nmorph-overlay/NmorphOverlay.vue.js +24 -29
  46. package/dist/components/others/nmorph-overlay/NmorphOverlay.vue2.js +38 -36
  47. package/dist/components/providers/nmorph-notification-provider/NmorphNotificationProvider.css +1 -1
  48. package/dist/components/providers/nmorph-notification-provider/NmorphNotificationProvider.vue.js +29 -32
  49. package/dist/components/providers/nmorph-notification-provider/NmorphNotificationProvider.vue2.js +51 -49
  50. package/dist/hooks/use-common-styles.js +17 -5
  51. package/dist/index.umd.js +40 -28
  52. package/dist/outside-hooks/use-nmorph-theme.js +13 -13
  53. package/dist/package.json.js +1 -1
  54. package/dist/src/components/basic/nmorph-button/NmorphButton.vue.d.ts +5 -6
  55. package/dist/src/components/basic/nmorph-icon/NmorphIcon.vue.d.ts +1 -1
  56. package/dist/src/components/basic/nmorph-layout/NmorphLayout.vue.d.ts +7 -1
  57. package/dist/src/components/basic/nmorph-link/NmorphLink.vue.d.ts +3 -4
  58. package/dist/src/components/basic/nmorph-scroll/NmorphScroll.vue.d.ts +3 -3
  59. package/dist/src/components/basic/nmorph-space/NmorphSpace.vue.d.ts +3 -3
  60. package/dist/src/components/basic/nmorph-text/NmorphText.vue.d.ts +6 -3
  61. package/dist/src/components/basic/nmorph-text/types.d.ts +3 -0
  62. package/dist/src/components/data/nmorph-audio-meter/NmorphAudioMeter.vue.d.ts +0 -6
  63. package/dist/src/components/data/nmorph-audio-preview/NmorphAudioPreview.vue.d.ts +4 -4
  64. package/dist/src/components/data/nmorph-avatar/NmorphAvatar.vue.d.ts +1 -1
  65. package/dist/src/components/data/nmorph-badge/NmorphBadge.vue.d.ts +4 -5
  66. package/dist/src/components/data/nmorph-calendar/NmorphCalendar.vue.d.ts +1 -1
  67. package/dist/src/components/data/nmorph-card/NmorphCard.vue.d.ts +6 -2
  68. package/dist/src/components/data/nmorph-collapse/components/nmorph-collapse-item/NmorphCollapseItem.vue.d.ts +1 -1
  69. package/dist/src/components/data/nmorph-emoji-picker/NmorphEmojiPicker.vue.d.ts +2 -2
  70. package/dist/src/components/data/nmorph-empty/NmorphEmpty.vue.d.ts +1 -1
  71. package/dist/src/components/data/nmorph-file-card/NmorphFileCard.vue.d.ts +4 -4
  72. package/dist/src/components/data/nmorph-image/NmorphImage.vue.d.ts +1 -1
  73. package/dist/src/components/data/nmorph-pagination/NmorphPagination.vue.d.ts +1 -1
  74. package/dist/src/components/data/nmorph-preview-portal/NmorphPreviewPortal.vue.d.ts +2 -2
  75. package/dist/src/components/data/nmorph-tag-list/NmorphTagList.vue.d.ts +1 -1
  76. package/dist/src/components/data/nmorph-tag-list/components/nmorph-tag-item/NmorphTagItem.vue.d.ts +1 -1
  77. package/dist/src/components/data/nmorph-video-preview/NmorphVideoPreview.vue.d.ts +4 -4
  78. package/dist/src/components/feedback/nmorph-alert/NmorphAlert.vue.d.ts +1 -1
  79. package/dist/src/components/feedback/nmorph-callout/NmorphCallout.vue.d.ts +7 -4
  80. package/dist/src/components/feedback/nmorph-dialog/NmorphDialog.vue.d.ts +4 -1
  81. package/dist/src/components/feedback/nmorph-drawer/NmorphDrawer.vue.d.ts +6 -2
  82. package/dist/src/components/feedback/nmorph-guide/NmorphGuide.vue.d.ts +2 -2
  83. package/dist/src/components/feedback/nmorph-guide/NmorphGuideStep.vue.d.ts +2 -2
  84. package/dist/src/components/feedback/nmorph-tooltip/NmorphTooltip.vue.d.ts +2 -2
  85. package/dist/src/components/form/nmorph-autocomplete/NmorphAutocomplete.vue.d.ts +1 -1
  86. package/dist/src/components/form/nmorph-color-picker/NmorphColorPicker.vue.d.ts +1 -1
  87. package/dist/src/components/form/nmorph-date-picker/NmorphDatePicker.vue.d.ts +1 -1
  88. package/dist/src/components/form/nmorph-file-upload/NmorphFileUpload.vue.d.ts +3 -3
  89. package/dist/src/components/form/nmorph-number-input/NmorphNumberInput.vue.d.ts +1 -1
  90. package/dist/src/components/form/nmorph-otp-input/NmorphOTPInput.vue.d.ts +1 -1
  91. package/dist/src/components/form/nmorph-select/NmorphSelect.vue.d.ts +3 -3
  92. package/dist/src/components/form/nmorph-select-button/NmorphSelectButton.vue.d.ts +1 -1
  93. package/dist/src/components/form/nmorph-select-button/components/nmorph-select-button-item/NmorphSelectButtonItem.vue.d.ts +1 -1
  94. package/dist/src/components/form/nmorph-slider/NmorphSlider.vue.d.ts +9 -9
  95. package/dist/src/components/form/nmorph-switch/NmorphSwitch.vue.d.ts +1 -1
  96. package/dist/src/components/form/nmorph-text-input/NmorphTextInput.vue.d.ts +1 -1
  97. package/dist/src/components/form/nmorph-textarea/NmorphTextarea.vue.d.ts +1 -1
  98. package/dist/src/components/form/nmorph-time-picker/NmorphTimePicker.vue.d.ts +1 -1
  99. package/dist/src/components/navigation/nmorph-backtop/NmorphBacktop.vue.d.ts +1 -1
  100. package/dist/src/components/navigation/nmorph-context-menu/NmorphContextMenu.vue.d.ts +3 -3
  101. package/dist/src/components/navigation/nmorph-stepper/NmorphStepper.vue.d.ts +1 -1
  102. package/dist/src/components/navigation/nmorph-tabs/NmorphTabs.vue.d.ts +1 -1
  103. package/dist/src/components/navigation/nmorph-tabs/components/nmorph-tab-pane/NmorphTabPane.vue.d.ts +1 -1
  104. package/dist/src/components/others/nmorph-overlay/NmorphOverlay.vue.d.ts +1 -1
  105. package/dist/src/components/providers/nmorph-notification-provider/NmorphNotificationProvider.vue.d.ts +1 -1
  106. package/dist/src/main.d.ts +2 -0
  107. package/dist/src/outside-hooks/use-nmorph-notification.d.ts +2 -2
  108. package/dist/src/utils/attrs.d.ts +5 -0
  109. package/dist/src/utils/index.d.ts +1 -0
  110. package/dist/style.css +1 -1
  111. package/dist/utils/attrs.js +15 -0
  112. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import './NmorphButton.css';
2
- import { defineComponent as N, useSlots as x, computed as l, ref as _, Fragment as I, Comment as k, Text as c } from "vue";
2
+ import { defineComponent as N, useSlots as x, computed as l, ref as _, Fragment as I, Comment as k, Text as f } from "vue";
3
3
  import { useModifiers as O } from "../../../utils/create-modifiers.js";
4
4
  import { NmorphComponentThickness as C } from "../../../types/common.types.js";
5
5
  import M from "../../../assets/icons/loading.svg.js";
@@ -9,7 +9,7 @@ const E = /* @__PURE__ */ N({
9
9
  props: {
10
10
  design: { type: null, required: !1, default: "nmorph" },
11
11
  borderless: { type: Boolean, required: !1, default: !1 },
12
- color: { type: String, required: !1, default: void 0 },
12
+ color: { type: String, required: !1 },
13
13
  loading: { type: Boolean, required: !1, default: !1 },
14
14
  ripple: { type: Boolean, required: !1, default: !0 },
15
15
  type: { type: null, required: !1, default: "button" },
@@ -32,9 +32,9 @@ const E = /* @__PURE__ */ N({
32
32
  setup(m, { expose: y, emit: h }) {
33
33
  const e = m, n = h, r = x(), g = l(() => !!r.icon), i = l(() => !!r["icon-only"]), s = l(() => e.active || !!e.modelValue), a = (t) => t.flatMap(
34
34
  (o) => o.type === I && Array.isArray(o.children) ? a(o.children) : o
35
- ), u = (t) => t.type === k || t.type === c && typeof t.children == "string" && t.children.trim() === "", b = () => {
35
+ ), u = (t) => t.type === k || t.type === f && typeof t.children == "string" && t.children.trim() === "", b = () => {
36
36
  const t = a(r.default?.() ?? []).filter((o) => !u(o));
37
- return t.length > 0 && t.every((o) => o.type === c);
37
+ return t.length > 0 && t.every((o) => o.type === f);
38
38
  }, v = l(
39
39
  () => O({
40
40
  nmorph: [C[e.thickness], e.fill && "fill"],
@@ -63,12 +63,12 @@ const E = /* @__PURE__ */ N({
63
63
  !e.toggle || e.disabled || e.loading || n("update:model-value", !e.modelValue);
64
64
  };
65
65
  y({ buttonDOMElement: d });
66
- const f = { props: e, emit: n, slots: r, hasIconSlot: g, hasIconOnlySlot: i, active: s, flattenSlotNodes: a, isEmptySlotNode: u, hasTextOnlyDefaultSlot: b, modifiers: v, buttonDOMElement: d, loadingIconSizeMap: p, loadingIconSize: q, buttonColorStyles: B, toggleClickHandler: S, get NmorphIcon() {
66
+ const c = { props: e, emit: n, slots: r, hasIconSlot: g, hasIconOnlySlot: i, active: s, flattenSlotNodes: a, isEmptySlotNode: u, hasTextOnlyDefaultSlot: b, modifiers: v, buttonDOMElement: d, loadingIconSizeMap: p, loadingIconSize: q, buttonColorStyles: B, toggleClickHandler: S, get NmorphIcon() {
67
67
  return H;
68
68
  }, get NmorphIconLoader() {
69
69
  return M;
70
70
  } };
71
- return Object.defineProperty(f, "__isScriptSetup", { enumerable: !1, value: !0 }), f;
71
+ return Object.defineProperty(c, "__isScriptSetup", { enumerable: !1, value: !0 }), c;
72
72
  }
73
73
  });
74
74
  export {
@@ -1,12 +1,12 @@
1
1
  import './NmorphLayout.css';
2
- import l from "./NmorphLayout.vue2.js";
3
- import { openBlock as s, createBlock as n, resolveDynamicComponent as d, normalizeStyle as m, normalizeClass as _, withCtx as c, createElementBlock as r, renderSlot as t, createCommentVNode as a, createElementVNode as i } from "vue";
2
+ import n from "./NmorphLayout.vue2.js";
3
+ import { openBlock as s, createBlock as l, resolveDynamicComponent as d, normalizeProps as m, guardReactiveProps as _, withCtx as c, createElementBlock as t, renderSlot as r, createCommentVNode as a, createElementVNode as i } from "vue";
4
4
  /* empty css */
5
5
  import h from "../../../_virtual/_plugin-vue_export-helper.js";
6
- const f = {
6
+ const p = {
7
7
  key: 0,
8
8
  class: "nmorph-layout__header"
9
- }, p = { class: "nmorph-layout__body" }, y = {
9
+ }, f = { class: "nmorph-layout__body" }, y = {
10
10
  key: 0,
11
11
  class: "nmorph-layout__aside"
12
12
  }, u = { class: "nmorph-layout__main" }, k = {
@@ -16,35 +16,38 @@ const f = {
16
16
  key: 1,
17
17
  class: "nmorph-layout__footer"
18
18
  };
19
- function C(e, N, b, o, B, g) {
20
- return s(), n(d(o.props.tag), {
21
- class: _(o.modifiers),
22
- style: m(o.styles)
23
- }, {
24
- default: c(() => [
25
- o.slots.header ? (s(), r("header", f, [
26
- t(e.$slots, "header")
27
- ])) : a("v-if", !0),
28
- i("div", p, [
29
- o.slots.aside && o.props.asidePosition === "left" ? (s(), r("aside", y, [
30
- t(e.$slots, "aside")
19
+ function N(e, P, b, o, g, B) {
20
+ return s(), l(
21
+ d(o.props.tag),
22
+ m(_(o.rootAttrs)),
23
+ {
24
+ default: c(() => [
25
+ o.slots.header ? (s(), t("header", p, [
26
+ r(e.$slots, "header")
31
27
  ])) : a("v-if", !0),
32
- i("main", u, [
33
- t(e.$slots, "default")
28
+ i("div", f, [
29
+ o.slots.aside && o.props.asidePosition === "left" ? (s(), t("aside", y, [
30
+ r(e.$slots, "aside")
31
+ ])) : a("v-if", !0),
32
+ i("main", u, [
33
+ r(e.$slots, "default")
34
+ ]),
35
+ o.slots.aside && o.props.asidePosition === "right" ? (s(), t("aside", k, [
36
+ r(e.$slots, "aside")
37
+ ])) : a("v-if", !0)
34
38
  ]),
35
- o.slots.aside && o.props.asidePosition === "right" ? (s(), r("aside", k, [
36
- t(e.$slots, "aside")
39
+ o.slots.footer ? (s(), t("footer", v, [
40
+ r(e.$slots, "footer")
37
41
  ])) : a("v-if", !0)
38
42
  ]),
39
- o.slots.footer ? (s(), r("footer", v, [
40
- t(e.$slots, "footer")
41
- ])) : a("v-if", !0)
42
- ]),
43
- _: 3
44
- /* FORWARDED */
45
- }, 8, ["class", "style"]);
43
+ _: 3
44
+ /* FORWARDED */
45
+ },
46
+ 16
47
+ /* FULL_PROPS */
48
+ );
46
49
  }
47
- const P = /* @__PURE__ */ h(l, [["render", C], ["__file", "/home/runner/work/nmorph/nmorph/library/src/components/basic/nmorph-layout/NmorphLayout.vue"]]);
50
+ const V = /* @__PURE__ */ h(n, [["render", N], ["__file", "/home/runner/work/nmorph/nmorph/library/src/components/basic/nmorph-layout/NmorphLayout.vue"]]);
48
51
  export {
49
- P as default
52
+ V as default
50
53
  };
@@ -1,8 +1,10 @@
1
1
  import './NmorphLayout.css';
2
- import { defineComponent as p, useSlots as u, computed as r } from "vue";
2
+ import { defineComponent as u, useSlots as n, computed as i } from "vue";
3
3
  import { useModifiers as d } from "../../../utils/create-modifiers.js";
4
- import { createCssSizeVariables as n } from "../../../utils/common.js";
5
- const g = /* @__PURE__ */ p({
4
+ import { createCssSizeVariables as f } from "../../../utils/common.js";
5
+ import { useMergedAttrs as m } from "../../../utils/attrs.js";
6
+ const _ = /* @__PURE__ */ u({
7
+ inheritAttrs: !1,
6
8
  __name: "NmorphLayout",
7
9
  props: {
8
10
  tag: { type: String, required: !1, default: "section" },
@@ -11,21 +13,21 @@ const g = /* @__PURE__ */ p({
11
13
  asidePosition: { type: String, required: !1, default: "left" },
12
14
  fullHeight: { type: Boolean, required: !1, default: !1 }
13
15
  },
14
- setup(i, { expose: s }) {
15
- s();
16
- const e = i, o = u(), a = r(
16
+ setup(o, { expose: a }) {
17
+ a();
18
+ const e = o, l = n(), t = i(
17
19
  () => d({
18
20
  "nmorph-layout": [`aside-${e.asidePosition}`, e.fullHeight && "full-height"]
19
21
  })
20
- ), l = r(
21
- () => n({
22
+ ), r = i(
23
+ () => f({
22
24
  "--nmorph-private-layout-gap": e.gap,
23
25
  "--nmorph-private-layout-aside-width": e.asideWidth
24
26
  })
25
- ), t = { props: e, slots: o, modifiers: a, styles: l };
26
- return Object.defineProperty(t, "__isScriptSetup", { enumerable: !1, value: !0 }), t;
27
+ ), p = m(t, r), s = { props: e, slots: l, modifiers: t, styles: r, rootAttrs: p };
28
+ return Object.defineProperty(s, "__isScriptSetup", { enumerable: !1, value: !0 }), s;
27
29
  }
28
30
  });
29
31
  export {
30
- g as default
32
+ _ as default
31
33
  };
@@ -1 +1 @@
1
- .nmorph-link{--nmorph-private-link-color: var(--nmorph-accent-color);display:inline-block}.nmorph-link a{display:flex;align-items:center;color:var(--nmorph-private-link-color);text-decoration:none}.nmorph-link .nmorph-link__icon{margin:0 var(--indentation-02);--nmorph-private-icon-color: var(--nmorph-private-link-color)}.nmorph-link:hover{filter:brightness(85%)}.nmorph-link.nmorph-link--underline{position:relative}.nmorph-link.nmorph-link--underline:not(.nmorph-link--disabled):hover:before{position:absolute;right:0;bottom:0;left:0;height:0;border-bottom:1px solid var(--nmorph-private-link-color);content:""}.nmorph-link.nmorph-link--disabled{cursor:not-allowed;opacity:.6}.nmorph-link.nmorph-link--disabled a{pointer-events:none}.nmorph-link.nmorph-link--success{--nmorph-private-link-color: var(--nmorph-success-color)}.nmorph-link.nmorph-link--warning{--nmorph-private-link-color: var(--nmorph-warn-color)}.nmorph-link.nmorph-link--error{--nmorph-private-link-color: var(--nmorph-error-color)}
1
+ .nmorph-link{--nmorph-private-link-color: var(--nmorph-accent-color);display:inline-block}.nmorph-link a{display:flex;align-items:center;color:var(--nmorph-private-link-color);text-decoration:none}.nmorph-link .nmorph-link__icon{margin:0 var(--indentation-02);--nmorph-private-icon-color: var(--nmorph-private-link-color)}.nmorph-link:hover{filter:brightness(85%)}.nmorph-link.nmorph-link--underline{position:relative}.nmorph-link.nmorph-link--underline:not(.nmorph-link--disabled):hover:before{position:absolute;right:0;bottom:0;left:0;height:0;border-bottom:1px solid var(--nmorph-private-link-color);content:""}.nmorph-link.nmorph-link--disabled{cursor:not-allowed;opacity:.6}.nmorph-link.nmorph-link--disabled a{pointer-events:none}.nmorph-link.nmorph-link--success{--nmorph-private-link-color: var(--nmorph-success-text-color)}.nmorph-link.nmorph-link--warning{--nmorph-private-link-color: var(--nmorph-warn-text-color)}.nmorph-link.nmorph-link--error{--nmorph-private-link-color: var(--nmorph-error-text-color)}
@@ -1,8 +1,8 @@
1
1
  import './NmorphLink.css';
2
2
  import { defineComponent as y, useSlots as g, computed as r } from "vue";
3
- import { useModifiers as v } from "../../../utils/create-modifiers.js";
4
- import { createCssVariables as h } from "../../../utils/common.js";
5
- import * as q from "../nmorph-icon/NmorphIcons.js";
3
+ import { useModifiers as h } from "../../../utils/create-modifiers.js";
4
+ import { createCssVariables as q } from "../../../utils/common.js";
5
+ import * as v from "../nmorph-icon/NmorphIcons.js";
6
6
  import { NmorphLinkTarget as S } from "./types.js";
7
7
  import { NmorphColor as N } from "../../../types/common.types.js";
8
8
  import _ from "../nmorph-icon/NmorphIcon.vue.js";
@@ -21,20 +21,20 @@ const L = /* @__PURE__ */ y({
21
21
  ariaLabel: { type: String, required: !1, default: void 0 },
22
22
  title: { type: String, required: !1, default: void 0 },
23
23
  disabled: { type: Boolean, required: !1, default: !1 },
24
- color: { type: String, required: !1, default: void 0 },
24
+ color: { type: String, required: !1 },
25
25
  iconName: { type: String, required: !1, default: void 0 }
26
26
  },
27
27
  setup(n, { expose: d }) {
28
28
  d();
29
- const e = n, s = g(), t = q, o = (m) => m.split(/[-_\s]+/).filter(Boolean).map((a) => `${a.charAt(0).toUpperCase()}${a.slice(1)}`).join(""), f = r(() => {
29
+ const e = n, s = g(), t = v, o = (m) => m.split(/[-_\s]+/).filter(Boolean).map((a) => `${a.charAt(0).toUpperCase()}${a.slice(1)}`).join(""), f = r(() => {
30
30
  if (e.iconName)
31
31
  return e.iconName in t ? t[e.iconName] : t[`NmorphIcon${o(e.iconName)}`];
32
32
  }), p = r(
33
- () => v({
33
+ () => h({
34
34
  "nmorph-link": [e.type, e.underline && "underline", e.disabled && "disabled"]
35
35
  })
36
36
  ), u = r(
37
- () => h({
37
+ () => q({
38
38
  "--nmorph-private-link-color": e.color
39
39
  })
40
40
  ), l = r(() => S[e.target] ?? e.target), c = r(() => ({
@@ -1,21 +1,24 @@
1
1
  import './NmorphSpace.css';
2
2
  import e from "./NmorphSpace.vue2.js";
3
- import { openBlock as s, createBlock as t, resolveDynamicComponent as n, normalizeStyle as a, normalizeClass as m, withCtx as p, renderSlot as c } from "vue";
3
+ import { openBlock as t, createBlock as p, resolveDynamicComponent as n, normalizeProps as a, guardReactiveProps as c, withCtx as m, renderSlot as s } from "vue";
4
4
  /* empty css */
5
- import l from "../../../_virtual/_plugin-vue_export-helper.js";
6
- function i(r, f, _, o, d, h) {
7
- return s(), t(n(o.props.tag), {
8
- class: m(o.modifiers),
9
- style: a(o.styles)
10
- }, {
11
- default: p(() => [
12
- c(r.$slots, "default")
13
- ]),
14
- _: 3
15
- /* FORWARDED */
16
- }, 8, ["class", "style"]);
5
+ import i from "../../../_virtual/_plugin-vue_export-helper.js";
6
+ function f(o, l, _, r, d, h) {
7
+ return t(), p(
8
+ n(r.props.tag),
9
+ a(c(r.rootAttrs)),
10
+ {
11
+ default: m(() => [
12
+ s(o.$slots, "default")
13
+ ]),
14
+ _: 3
15
+ /* FORWARDED */
16
+ },
17
+ 16
18
+ /* FULL_PROPS */
19
+ );
17
20
  }
18
- const x = /* @__PURE__ */ l(e, [["render", i], ["__file", "/home/runner/work/nmorph/nmorph/library/src/components/basic/nmorph-space/NmorphSpace.vue"]]);
21
+ const S = /* @__PURE__ */ i(e, [["render", f], ["__file", "/home/runner/work/nmorph/nmorph/library/src/components/basic/nmorph-space/NmorphSpace.vue"]]);
19
22
  export {
20
- x as default
23
+ S as default
21
24
  };
@@ -1,8 +1,10 @@
1
1
  import './NmorphSpace.css';
2
- import { defineComponent as d, computed as t } from "vue";
3
- import { useModifiers as m } from "../../../utils/create-modifiers.js";
4
- import { toCssSize as c } from "../../../utils/common.js";
5
- const _ = /* @__PURE__ */ d({
2
+ import { defineComponent as m, computed as t } from "vue";
3
+ import { useModifiers as c } from "../../../utils/create-modifiers.js";
4
+ import { toCssSize as y } from "../../../utils/common.js";
5
+ import { useMergedAttrs as g } from "../../../utils/attrs.js";
6
+ const v = /* @__PURE__ */ m({
7
+ inheritAttrs: !1,
6
8
  __name: "NmorphSpace",
7
9
  props: {
8
10
  tag: { type: String, required: !1, default: "div" },
@@ -14,28 +16,28 @@ const _ = /* @__PURE__ */ d({
14
16
  inline: { type: Boolean, required: !1, default: !1 },
15
17
  fill: { type: Boolean, required: !1, default: !1 }
16
18
  },
17
- setup(p, { expose: o }) {
18
- o();
19
- const e = p, r = {
19
+ setup(f, { expose: u }) {
20
+ u();
21
+ const e = f, r = {
20
22
  small: "4px",
21
23
  medium: "8px",
22
24
  large: "16px"
23
- }, f = t(
24
- () => m({
25
+ }, i = t(
26
+ () => c({
25
27
  "nmorph-space": [e.direction, e.wrap && "wrap", e.inline && "inline", e.fill && "fill"]
26
28
  })
27
- ), i = (n) => c(r[n] || n), a = t(
29
+ ), s = (p) => y(r[p] || p), a = t(
28
30
  () => e.align === "start" || e.align === "end" ? `flex-${e.align}` : e.align
29
- ), s = t(
31
+ ), n = t(
30
32
  () => e.justify === "start" || e.justify === "end" ? `flex-${e.justify}` : e.justify
31
- ), u = t(() => ({
32
- "--nmorph-private-space-gap": i(e.size),
33
+ ), l = t(() => ({
34
+ "--nmorph-private-space-gap": s(e.size),
33
35
  "--nmorph-private-space-align": a.value,
34
- "--nmorph-private-space-justify": s.value
35
- })), l = { props: e, sizeMap: r, modifiers: f, resolveSpaceSize: i, alignItems: a, justifyContent: s, styles: u };
36
- return Object.defineProperty(l, "__isScriptSetup", { enumerable: !1, value: !0 }), l;
36
+ "--nmorph-private-space-justify": n.value
37
+ })), d = g(i, l), o = { props: e, sizeMap: r, modifiers: i, resolveSpaceSize: s, alignItems: a, justifyContent: n, styles: l, rootAttrs: d };
38
+ return Object.defineProperty(o, "__isScriptSetup", { enumerable: !1, value: !0 }), o;
37
39
  }
38
40
  });
39
41
  export {
40
- _ as default
42
+ v as default
41
43
  };
@@ -1,23 +1,26 @@
1
1
  import e from "./NmorphText.vue2.js";
2
- import { openBlock as t, createBlock as s, resolveDynamicComponent as n, normalizeStyle as a, normalizeClass as l, withCtx as m, renderSlot as p, createTextVNode as c, toDisplayString as i } from "vue";
2
+ import { openBlock as t, createBlock as n, resolveDynamicComponent as p, normalizeProps as a, guardReactiveProps as s, withCtx as m, renderSlot as c, createTextVNode as i, toDisplayString as l } from "vue";
3
3
  import f from "../../../_virtual/_plugin-vue_export-helper.js";
4
- function _(r, d, h, o, x, y) {
5
- return t(), s(n(o.props.as), {
6
- class: l(o.modifiers),
7
- style: a(o.styles)
8
- }, {
9
- default: m(() => [
10
- p(r.$slots, "default", {}, () => [
11
- c(
12
- i(o.props.text),
13
- 1
14
- /* TEXT */
15
- )
16
- ])
17
- ]),
18
- _: 3
19
- /* FORWARDED */
20
- }, 8, ["class", "style"]);
4
+ function _(o, d, h, r, x, u) {
5
+ return t(), n(
6
+ p(r.props.as),
7
+ a(s(r.rootAttrs)),
8
+ {
9
+ default: m(() => [
10
+ c(o.$slots, "default", {}, () => [
11
+ i(
12
+ l(r.props.text),
13
+ 1
14
+ /* TEXT */
15
+ )
16
+ ])
17
+ ]),
18
+ _: 3
19
+ /* FORWARDED */
20
+ },
21
+ 16
22
+ /* FULL_PROPS */
23
+ );
21
24
  }
22
25
  const N = /* @__PURE__ */ f(e, [["render", _], ["__file", "/home/runner/work/nmorph/nmorph/library/src/components/basic/nmorph-text/NmorphText.vue"]]);
23
26
  export {
@@ -1,7 +1,9 @@
1
- import { defineComponent as i, computed as o } from "vue";
2
- import { useModifiers as s } from "../../../utils/create-modifiers.js";
3
- import { createCssVariables as c } from "../../../utils/common.js";
4
- const f = /* @__PURE__ */ i({
1
+ import { defineComponent as p, computed as l } from "vue";
2
+ import { useModifiers as c } from "../../../utils/create-modifiers.js";
3
+ import { createCssVariables as u } from "../../../utils/common.js";
4
+ import { useMergedAttrs as f } from "../../../utils/attrs.js";
5
+ const x = /* @__PURE__ */ p({
6
+ inheritAttrs: !1,
5
7
  __name: "NmorphText",
6
8
  props: {
7
9
  as: { type: String, required: !1, default: "span" },
@@ -10,13 +12,16 @@ const f = /* @__PURE__ */ i({
10
12
  weight: { type: null, required: !1, default: void 0 },
11
13
  color: { type: null, required: !1, default: "text" },
12
14
  align: { type: null, required: !1, default: "inherit" },
15
+ selectable: { type: Boolean, required: !1, default: !0 },
16
+ italic: { type: Boolean, required: !1, default: !1 },
17
+ noLineHeight: { type: Boolean, required: !1, default: !1 },
13
18
  truncate: { type: Boolean, required: !1, default: !1 },
14
19
  nowrap: { type: Boolean, required: !1, default: !1 },
15
20
  lineClamp: { type: Number, required: !1, default: void 0 }
16
21
  },
17
- setup(a, { expose: l }) {
18
- l();
19
- const e = a, r = {
22
+ setup(n, { expose: i }) {
23
+ i();
24
+ const e = n, r = {
20
25
  text: "var(--nmorph-text-color)",
21
26
  contrast: "var(--nmorph-contrast-text-color)",
22
27
  "semi-contrast": "var(--nmorph-semi-contrast-text-color)",
@@ -24,29 +29,32 @@ const f = /* @__PURE__ */ i({
24
29
  focus: "var(--nmorph-focus-text-color)",
25
30
  accent: "var(--nmorph-accent-color)",
26
31
  success: "var(--nmorph-success-text-color)",
27
- warning: "var(--nmorph-warning-text-color)",
32
+ warning: "var(--nmorph-warn-text-color)",
28
33
  error: "var(--nmorph-error-text-color)",
29
34
  white: "var(--nmorph-white-color)"
30
- }, n = o(
31
- () => s({
35
+ }, t = l(
36
+ () => c({
32
37
  "nmorph-typography": [
33
38
  e.variant,
34
39
  e.weight,
40
+ !e.selectable && "not-selectable",
41
+ e.italic && "italic",
42
+ e.noLineHeight && "no-line-height",
35
43
  e.truncate && "truncate",
36
44
  e.nowrap && "nowrap",
37
45
  e.lineClamp && "line-clamp"
38
46
  ]
39
47
  })
40
- ), p = o(
41
- () => c({
48
+ ), o = l(
49
+ () => u({
42
50
  "--nmorph-private-text-color": r[e.color] || e.color,
43
51
  "--nmorph-private-text-align": e.align === "inherit" ? void 0 : e.align,
44
52
  "--nmorph-private-text-line-clamp": e.lineClamp
45
53
  })
46
- ), t = { props: e, colorMap: r, modifiers: n, styles: p };
47
- return Object.defineProperty(t, "__isScriptSetup", { enumerable: !1, value: !0 }), t;
54
+ ), s = f(t, o), a = { props: e, colorMap: r, modifiers: t, styles: o, rootAttrs: s };
55
+ return Object.defineProperty(a, "__isScriptSetup", { enumerable: !1, value: !0 }), a;
48
56
  }
49
57
  });
50
58
  export {
51
- f as default
59
+ x as default
52
60
  };
@@ -1 +1 @@
1
- .nmorph-audio-meter{--nmorph-private-audio-meter-color: var(--nmorph-success-color);--nmorph-private-audio-meter-warn-color: var(--nmorph-warn-color);--nmorph-private-audio-meter-error-color: var(--nmorph-error-color);--nmorph-private-audio-meter-track-color: color-mix(in srgb, var(--nmorph-text-color) 16%, transparent);--nmorph-private-audio-meter-percent: 0%;display:inline-flex;align-items:end}.nmorph-audio-meter.nmorph-audio-meter--warn{--nmorph-private-audio-meter-color: var(--nmorph-private-audio-meter-warn-color)}.nmorph-audio-meter.nmorph-audio-meter--error{--nmorph-private-audio-meter-color: var(--nmorph-private-audio-meter-error-color)}.nmorph-audio-meter.nmorph-audio-meter--bars{gap:2px;width:max-content;height:20px}.nmorph-audio-meter .nmorph-audio-meter__bar{width:4px;height:100%;background:var(--nmorph-private-audio-meter-track-color);border-radius:var(--border-radius-40);opacity:.7}.nmorph-audio-meter .nmorph-audio-meter__bar--active{background:var(--nmorph-private-audio-meter-color);opacity:1}.nmorph-audio-meter.nmorph-audio-meter--line{width:72px;height:6px;overflow:hidden;background:var(--nmorph-private-audio-meter-track-color);border-radius:var(--border-radius-40)}.nmorph-audio-meter .nmorph-audio-meter__line{display:block;width:var(--nmorph-private-audio-meter-percent);height:100%;background:var(--nmorph-private-audio-meter-color)}.nmorph-audio-meter.nmorph-audio-meter--ring{width:28px;height:28px}.nmorph-audio-meter .nmorph-audio-meter__ring{display:block;width:100%;height:100%;background:radial-gradient(circle at center,var(--nmorph-main-color) 56%,transparent 58%),conic-gradient(var(--nmorph-private-audio-meter-color) var(--nmorph-private-audio-meter-percent),var(--nmorph-private-audio-meter-track-color) 0);border-radius:var(--border-radius-circular)}
1
+ .nmorph-audio-meter{--nmorph-private-audio-meter-color: var(--nmorph-success-text-color);--nmorph-private-audio-meter-warn-color: var(--nmorph-warn-text-color);--nmorph-private-audio-meter-error-color: var(--nmorph-error-text-color);--nmorph-private-audio-meter-track-color: color-mix(in srgb, var(--nmorph-text-color) 16%, transparent);--nmorph-private-audio-meter-percent: 0%;display:inline-flex;align-items:end}.nmorph-audio-meter.nmorph-audio-meter--warn{--nmorph-private-audio-meter-color: var(--nmorph-private-audio-meter-warn-color)}.nmorph-audio-meter.nmorph-audio-meter--error{--nmorph-private-audio-meter-color: var(--nmorph-private-audio-meter-error-color)}.nmorph-audio-meter.nmorph-audio-meter--bars{gap:2px;width:max-content;height:20px}.nmorph-audio-meter .nmorph-audio-meter__bar{width:4px;height:100%;background:var(--nmorph-private-audio-meter-track-color);border-radius:var(--border-radius-40);opacity:.7}.nmorph-audio-meter .nmorph-audio-meter__bar--active{background:var(--nmorph-private-audio-meter-color);opacity:1}.nmorph-audio-meter.nmorph-audio-meter--line{width:72px;height:6px;overflow:hidden;background:var(--nmorph-private-audio-meter-track-color);border-radius:var(--border-radius-40)}.nmorph-audio-meter .nmorph-audio-meter__line{display:block;width:var(--nmorph-private-audio-meter-percent);height:100%;background:var(--nmorph-private-audio-meter-color)}.nmorph-audio-meter.nmorph-audio-meter--ring{width:28px;height:28px}.nmorph-audio-meter .nmorph-audio-meter__ring{display:block;width:100%;height:100%;background:radial-gradient(circle at center,var(--nmorph-main-color) 56%,transparent 58%),conic-gradient(var(--nmorph-private-audio-meter-color) var(--nmorph-private-audio-meter-percent),var(--nmorph-private-audio-meter-track-color) 0);border-radius:var(--border-radius-circular)}
@@ -1,37 +1,37 @@
1
1
  import './NmorphAudioMeter.css';
2
2
  import { defineComponent as f, computed as t } from "vue";
3
- import { useModifiers as v } from "../../../utils/create-modifiers.js";
4
- import { createCssVariables as c } from "../../../utils/common.js";
3
+ import { useModifiers as c } from "../../../utils/create-modifiers.js";
4
+ import { createCssVariables as v } from "../../../utils/common.js";
5
5
  const _ = /* @__PURE__ */ f({
6
6
  __name: "NmorphAudioMeter",
7
7
  props: {
8
- value: { type: Number, required: !1, default: void 0 },
9
- volumeDb: { type: Number, required: !1, default: void 0 },
8
+ value: { type: Number, required: !1 },
9
+ volumeDb: { type: Number, required: !1 },
10
10
  variant: { type: String, required: !1, default: "bars" },
11
11
  bars: { type: Number, required: !1, default: 12 },
12
12
  warnThreshold: { type: Number, required: !1, default: 0.7 },
13
13
  errorThreshold: { type: Number, required: !1, default: 0.9 },
14
- color: { type: String, required: !1, default: void 0 },
15
- warnColor: { type: String, required: !1, default: void 0 },
16
- errorColor: { type: String, required: !1, default: void 0 },
17
- trackColor: { type: String, required: !1, default: void 0 },
14
+ color: { type: String, required: !1 },
15
+ warnColor: { type: String, required: !1 },
16
+ errorColor: { type: String, required: !1 },
17
+ trackColor: { type: String, required: !1 },
18
18
  label: { type: String, required: !1, default: "Audio level" }
19
19
  },
20
- setup(n, { expose: d }) {
21
- d();
22
- const e = n, a = (o) => Math.min(Math.max(o, 0), 1), r = t(() => typeof e.value == "number" ? a(e.value) : typeof e.volumeDb == "number" ? a((e.volumeDb + 60) / 60) : 0), l = t(() => Array.from({ length: Math.max(e.bars, 1) }, (o, m) => m)), u = t(() => r.value >= e.errorThreshold ? "error" : r.value >= e.warnThreshold ? "warn" : "normal"), s = t(
23
- () => v({
20
+ setup(n, { expose: s }) {
21
+ s();
22
+ const e = n, a = (o) => Math.min(Math.max(o, 0), 1), r = t(() => typeof e.value == "number" ? a(e.value) : typeof e.volumeDb == "number" ? a((e.volumeDb + 60) / 60) : 0), l = t(() => Array.from({ length: Math.max(e.bars, 1) }, (o, d) => d)), u = t(() => r.value >= e.errorThreshold ? "error" : r.value >= e.warnThreshold ? "warn" : "normal"), p = t(
23
+ () => c({
24
24
  "nmorph-audio-meter": [e.variant, u.value]
25
25
  })
26
- ), p = t(() => ({
26
+ ), m = t(() => ({
27
27
  "--nmorph-private-audio-meter-percent": `${Math.round(r.value * 100)}%`,
28
- ...c({
28
+ ...v({
29
29
  "--nmorph-private-audio-meter-color": e.color,
30
30
  "--nmorph-private-audio-meter-warn-color": e.warnColor,
31
31
  "--nmorph-private-audio-meter-error-color": e.errorColor,
32
32
  "--nmorph-private-audio-meter-track-color": e.trackColor
33
33
  })
34
- })), i = { props: e, clamp: a, level: r, barIndexes: l, state: u, modifiers: s, styles: p, isBarActive: (o) => (o + 1) / l.value.length <= r.value };
34
+ })), i = { props: e, clamp: a, level: r, barIndexes: l, state: u, modifiers: p, styles: m, isBarActive: (o) => (o + 1) / l.value.length <= r.value };
35
35
  return Object.defineProperty(i, "__isScriptSetup", { enumerable: !1, value: !0 }), i;
36
36
  }
37
37
  });
@@ -1 +1 @@
1
- .nmorph-audio-preview{display:flex;gap:var(--indentation-02);align-items:center;box-sizing:border-box;width:var(--nmorph-private-audio-preview-width, 360px);min-width:0;max-width:100%;min-height:64px;padding:var(--indentation-03);color:var(--nmorph-text-color);background:var(--nmorph-main-color);border-radius:var(--default-border-radius);box-shadow:var(--nmorph-shadow-inset)}.nmorph-audio-preview audio{display:none}.nmorph-audio-preview .nmorph-audio-preview__icon{position:relative;display:flex;flex:0 0 auto;justify-content:center;align-items:center;width:36px;height:36px;padding:0;color:var(--nmorph-text-color);background:color-mix(in srgb,var(--nmorph-text-color) 10%,transparent);border:0;border-radius:var(--default-border-radius);cursor:default;--nmorph-private-icon-color: currentColor}.nmorph-audio-preview button.nmorph-audio-preview__icon{cursor:pointer}.nmorph-audio-preview button.nmorph-audio-preview__icon:disabled{cursor:default}.nmorph-audio-preview .nmorph-audio-preview__play-button{display:inline-flex;flex:0 0 auto;justify-content:center;align-items:center;width:20px;height:20px;padding:0;color:var(--nmorph-contrast-text-color);background:var(--nmorph-black-color);border:0;border-radius:var(--border-radius-circular);cursor:pointer}.nmorph-audio-preview .nmorph-audio-preview__play-button:hover{background:var(--nmorph-accent-color)}.nmorph-audio-preview .nmorph-audio-preview__play-button .nmorph-icon{--nmorph-private-icon-color: var(--nmorph-contrast-text-color)}.nmorph-audio-preview .nmorph-audio-preview__play-indicator{position:absolute;right:-4px;bottom:-4px;display:inline-flex;justify-content:center;align-items:center;width:18px;height:18px;color:var(--nmorph-contrast-text-color);background:var(--nmorph-black-color);border-radius:var(--border-radius-circular)}.nmorph-audio-preview .nmorph-audio-preview__play-indicator .nmorph-icon{--nmorph-private-icon-color: var(--nmorph-contrast-text-color)}.nmorph-audio-preview .nmorph-audio-preview__body{display:flex;flex:1 1 0;flex-direction:column;gap:var(--indentation-02);box-sizing:border-box;min-width:0}.nmorph-audio-preview .nmorph-audio-preview__header{display:flex;gap:var(--indentation-02);justify-content:space-between;align-items:center;min-width:0}.nmorph-audio-preview .nmorph-audio-preview__control{display:flex;gap:var(--indentation-02);align-items:center;width:100%;min-width:0}.nmorph-audio-preview .nmorph-audio-preview__name,.nmorph-audio-preview .nmorph-audio-preview__time,.nmorph-audio-preview .nmorph-audio-preview__error{min-width:0;overflow:hidden;font-size:var(--nmorph-typography-body-small-font-size);line-height:var(--nmorph-typography-body-small-line-height);white-space:nowrap;text-overflow:ellipsis}.nmorph-audio-preview .nmorph-audio-preview__name{flex:1 1 auto;font-weight:var(--font-weight-semibold)}.nmorph-audio-preview .nmorph-audio-preview__time{flex:0 0 auto;color:var(--nmorph-semi-contrast-text-color);font-variant-numeric:tabular-nums}.nmorph-audio-preview .nmorph-audio-preview__error{flex:0 1 auto;color:var(--nmorph-error-text-color)}.nmorph-audio-preview .nmorph-audio-preview__range{flex:1 1 0;width:100%;min-width:0;height:6px;padding:0;background:linear-gradient(to right,var(--nmorph-accent-color) var(--nmorph-private-audio-preview-progress, 0%),color-mix(in srgb,var(--nmorph-text-color) 16%,transparent) 0);border-radius:var(--border-radius-100);outline:0;cursor:pointer;appearance:none}.nmorph-audio-preview .nmorph-audio-preview__range:disabled{cursor:default;opacity:.6}.nmorph-audio-preview .nmorph-audio-preview__range::-webkit-slider-thumb{width:14px;height:14px;background:var(--nmorph-accent-color);border:2px solid var(--nmorph-main-color);border-radius:var(--border-radius-circular);box-shadow:var(--nmorph-shadow-outset);appearance:none}.nmorph-audio-preview .nmorph-audio-preview__range::-moz-range-thumb{width:14px;height:14px;background:var(--nmorph-accent-color);border:2px solid var(--nmorph-main-color);border-radius:var(--border-radius-circular);box-shadow:var(--nmorph-shadow-outset)}.nmorph-audio-preview .nmorph-audio-preview__actions{display:flex;flex:0 0 auto;gap:var(--indentation-01);align-items:center}.nmorph-audio-preview .nmorph-audio-preview__action-link{display:inline-flex;justify-content:center;align-items:center;width:22px;height:22px;color:inherit;text-decoration:none;border-radius:var(--default-border-radius)}.nmorph-audio-preview .nmorph-audio-preview__action-link:hover{color:var(--nmorph-accent-color);background:color-mix(in srgb,var(--nmorph-accent-color) 10%,transparent)}.nmorph-audio-preview .nmorph-audio-preview__action-link .nmorph-icon{--nmorph-private-icon-color: currentColor}.nmorph-audio-preview.nmorph-audio-preview--compact{min-height:52px;padding:var(--indentation-02)}.nmorph-audio-preview.nmorph-audio-preview--compact .nmorph-audio-preview__icon{width:30px;height:30px}.nmorph-audio-preview.nmorph-audio-preview--no-actions .nmorph-audio-preview__body{padding-inline-end:var(--indentation-02)}.nmorph-audio-preview.nmorph-audio-preview--embedded{width:var(--nmorph-private-audio-preview-width, 100%);min-height:auto;padding:0;background:transparent;border-radius:0;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__body{gap:0;padding-inline-end:0}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__range{height:5px}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__range::-webkit-slider-thumb{width:11px;height:11px;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__range::-moz-range-thumb{width:11px;height:11px;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__play-indicator{box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--no-header .nmorph-audio-preview__time{flex:0 0 auto}.nmorph-audio-preview.nmorph-audio-preview--soft{background:color-mix(in srgb,var(--nmorph-accent-color) 6%,transparent);box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--plain{background:transparent;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--error{outline:1px solid var(--nmorph-error-color)}
1
+ .nmorph-audio-preview{display:flex;gap:var(--indentation-02);align-items:center;box-sizing:border-box;width:var(--nmorph-private-audio-preview-width, 360px);min-width:0;max-width:100%;min-height:64px;padding:var(--indentation-03);color:var(--nmorph-text-color);background:var(--nmorph-main-color);border-radius:var(--default-border-radius);box-shadow:var(--nmorph-shadow-inset)}.nmorph-audio-preview audio{display:none}.nmorph-audio-preview .nmorph-audio-preview__icon{position:relative;display:flex;flex:0 0 auto;justify-content:center;align-items:center;width:36px;height:36px;padding:0;color:var(--nmorph-text-color);background:color-mix(in srgb,var(--nmorph-text-color) 10%,transparent);border:0;border-radius:var(--default-border-radius);cursor:default;--nmorph-private-icon-color: currentColor}.nmorph-audio-preview button.nmorph-audio-preview__icon{cursor:pointer}.nmorph-audio-preview button.nmorph-audio-preview__icon:disabled{cursor:default}.nmorph-audio-preview .nmorph-audio-preview__play-button{display:inline-flex;flex:0 0 auto;justify-content:center;align-items:center;width:20px;height:20px;padding:0;color:var(--nmorph-white-color);background:var(--nmorph-black-color);border:0;border-radius:var(--border-radius-circular);cursor:pointer}.nmorph-audio-preview .nmorph-audio-preview__play-button:hover{background:var(--nmorph-accent-color)}.nmorph-audio-preview .nmorph-audio-preview__play-button .nmorph-icon{--nmorph-private-icon-color: var(--nmorph-white-color)}.nmorph-audio-preview .nmorph-audio-preview__play-indicator{position:absolute;right:-4px;bottom:-4px;display:inline-flex;justify-content:center;align-items:center;width:18px;height:18px;color:var(--nmorph-white-color);background:var(--nmorph-black-color);border-radius:var(--border-radius-circular)}.nmorph-audio-preview .nmorph-audio-preview__play-indicator .nmorph-icon{--nmorph-private-icon-color: var(--nmorph-white-color)}.nmorph-audio-preview .nmorph-audio-preview__body{display:flex;flex:1 1 0;flex-direction:column;gap:var(--indentation-02);box-sizing:border-box;min-width:0}.nmorph-audio-preview .nmorph-audio-preview__header{display:flex;gap:var(--indentation-02);justify-content:space-between;align-items:center;min-width:0}.nmorph-audio-preview .nmorph-audio-preview__control{display:flex;gap:var(--indentation-02);align-items:center;width:100%;min-width:0}.nmorph-audio-preview .nmorph-audio-preview__name,.nmorph-audio-preview .nmorph-audio-preview__time,.nmorph-audio-preview .nmorph-audio-preview__error{min-width:0;overflow:hidden;font-size:var(--nmorph-typography-body-small-font-size);line-height:var(--nmorph-typography-body-small-line-height);white-space:nowrap;text-overflow:ellipsis}.nmorph-audio-preview .nmorph-audio-preview__name{flex:1 1 auto;font-weight:var(--font-weight-semibold)}.nmorph-audio-preview .nmorph-audio-preview__time{flex:0 0 auto;color:var(--nmorph-semi-contrast-text-color);font-variant-numeric:tabular-nums}.nmorph-audio-preview .nmorph-audio-preview__error{flex:0 1 auto;color:var(--nmorph-error-text-color)}.nmorph-audio-preview .nmorph-audio-preview__range{flex:1 1 0;width:100%;min-width:0;height:6px;padding:0;background:linear-gradient(to right,var(--nmorph-accent-color) var(--nmorph-private-audio-preview-progress, 0%),color-mix(in srgb,var(--nmorph-text-color) 16%,transparent) 0);border-radius:var(--border-radius-100);outline:0;cursor:pointer;appearance:none}.nmorph-audio-preview .nmorph-audio-preview__range:disabled{cursor:default;opacity:.6}.nmorph-audio-preview .nmorph-audio-preview__range::-webkit-slider-thumb{width:14px;height:14px;background:var(--nmorph-accent-color);border:2px solid var(--nmorph-main-color);border-radius:var(--border-radius-circular);box-shadow:var(--nmorph-shadow-outset);appearance:none}.nmorph-audio-preview .nmorph-audio-preview__range::-moz-range-thumb{width:14px;height:14px;background:var(--nmorph-accent-color);border:2px solid var(--nmorph-main-color);border-radius:var(--border-radius-circular);box-shadow:var(--nmorph-shadow-outset)}.nmorph-audio-preview .nmorph-audio-preview__actions{display:flex;flex:0 0 auto;gap:var(--indentation-01);align-items:center}.nmorph-audio-preview .nmorph-audio-preview__action-link{display:inline-flex;justify-content:center;align-items:center;width:22px;height:22px;color:inherit;text-decoration:none;border-radius:var(--default-border-radius)}.nmorph-audio-preview .nmorph-audio-preview__action-link:hover{color:var(--nmorph-accent-color);background:color-mix(in srgb,var(--nmorph-accent-color) 10%,transparent)}.nmorph-audio-preview .nmorph-audio-preview__action-link .nmorph-icon{--nmorph-private-icon-color: currentColor}.nmorph-audio-preview.nmorph-audio-preview--compact{min-height:52px;padding:var(--indentation-02)}.nmorph-audio-preview.nmorph-audio-preview--compact .nmorph-audio-preview__icon{width:30px;height:30px}.nmorph-audio-preview.nmorph-audio-preview--no-actions .nmorph-audio-preview__body{padding-inline-end:var(--indentation-02)}.nmorph-audio-preview.nmorph-audio-preview--embedded{width:var(--nmorph-private-audio-preview-width, 100%);min-height:auto;padding:0;background:transparent;border-radius:0;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__body{gap:0;padding-inline-end:0}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__range{height:5px}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__range::-webkit-slider-thumb{width:11px;height:11px;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__range::-moz-range-thumb{width:11px;height:11px;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--embedded .nmorph-audio-preview__play-indicator{box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--no-header .nmorph-audio-preview__time{flex:0 0 auto}.nmorph-audio-preview.nmorph-audio-preview--soft{background:color-mix(in srgb,var(--nmorph-accent-color) 6%,transparent);box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--plain{background:transparent;box-shadow:none}.nmorph-audio-preview.nmorph-audio-preview--error{outline:1px solid var(--nmorph-error-text-color)}
@@ -9,7 +9,7 @@ import F from "../../../assets/icons/download.svg.js";
9
9
  import U from "../../../assets/icons/audio.svg.js";
10
10
  import V from "../../basic/nmorph-icon/NmorphIcon.vue.js";
11
11
  import G from "../../../assets/icons/loading.svg.js";
12
- const J = "var(--nmorph-contrast-text-color)", te = /* @__PURE__ */ C({
12
+ const J = "var(--nmorph-white-color)", te = /* @__PURE__ */ C({
13
13
  __name: "NmorphAudioPreview",
14
14
  props: {
15
15
  src: { type: String, required: !0 },
@@ -31,22 +31,22 @@ const J = "var(--nmorph-contrast-text-color)", te = /* @__PURE__ */ C({
31
31
  },
32
32
  emits: ["play", "pause", "open", "download", "error"],
33
33
  setup(h, { expose: y, emit: g }) {
34
- const e = h, n = g, c = D(), o = d(null), a = d(!1), u = d(0), s = d(e.durationMs ? e.durationMs / 1e3 : 0);
34
+ const e = h, n = g, p = D(), o = d(null), a = d(!1), u = d(0), s = d(e.durationMs ? e.durationMs / 1e3 : 0);
35
35
  O(
36
36
  () => e.durationMs,
37
37
  (r) => {
38
38
  s.value = r ? r / 1e3 : s.value;
39
39
  }
40
40
  );
41
- const l = t(() => s.value || 0), p = t({
41
+ const l = t(() => s.value || 0), c = t({
42
42
  get: () => l.value > 0 ? u.value / l.value * 100 : 0,
43
43
  set: (r) => {
44
44
  !o.value || l.value <= 0 || (o.value.currentTime = r / 100 * l.value, u.value = o.value.currentTime);
45
45
  }
46
46
  }), w = t(() => ({
47
- "--nmorph-private-audio-preview-progress": `${p.value}%`
47
+ "--nmorph-private-audio-preview-progress": `${c.value}%`
48
48
  })), f = t(
49
- () => !!c.actions || e.showDefaultActions && (e.src || e.downloadHref)
49
+ () => !!p.actions || e.showDefaultActions && (e.src || e.downloadHref)
50
50
  ), N = t(
51
51
  () => R({
52
52
  "nmorph-audio-preview": [
@@ -67,8 +67,8 @@ const J = "var(--nmorph-contrast-text-color)", te = /* @__PURE__ */ C({
67
67
  })
68
68
  ), i = (r) => {
69
69
  if (!Number.isFinite(r) || r < 0) return "0:00";
70
- const v = Math.floor(r), x = Math.floor(v / 60), k = v % 60;
71
- return `${x}:${k.toString().padStart(2, "0")}`;
70
+ const v = Math.floor(r), k = Math.floor(v / 60), x = v % 60;
71
+ return `${k}:${x.toString().padStart(2, "0")}`;
72
72
  }, I = t(() => i(u.value)), q = t(() => i(l.value)), b = async () => {
73
73
  if (!(!o.value || !e.showPlaybackButton || e.loading || e.error)) {
74
74
  if (a.value) {
@@ -95,7 +95,7 @@ const J = "var(--nmorph-contrast-text-color)", te = /* @__PURE__ */ C({
95
95
  a.value = !1, n("error", r);
96
96
  }, L = () => n("open"), M = () => n("download");
97
97
  y({ audioRef: o });
98
- const m = { CONTRAST_ICON_COLOR: J, props: e, emit: n, slots: c, audioRef: o, playing: a, currentTime: u, durationSeconds: s, resolvedDuration: l, progress: p, progressStyle: w, hasActions: f, modifiers: N, styles: S, formatTime: i, currentTimeLabel: I, durationLabel: q, togglePlayback: b, loadedMetadataHandler: H, timeUpdateHandler: _, playHandler: B, pauseHandler: P, endedHandler: T, errorHandler: A, openHandler: L, downloadHandler: M, get NmorphIcon() {
98
+ const m = { CONTRAST_ICON_COLOR: J, props: e, emit: n, slots: p, audioRef: o, playing: a, currentTime: u, durationSeconds: s, resolvedDuration: l, progress: c, progressStyle: w, hasActions: f, modifiers: N, styles: S, formatTime: i, currentTimeLabel: I, durationLabel: q, togglePlayback: b, loadedMetadataHandler: H, timeUpdateHandler: _, playHandler: B, pauseHandler: P, endedHandler: T, errorHandler: A, openHandler: L, downloadHandler: M, get NmorphIcon() {
99
99
  return V;
100
100
  }, get NmorphIconAudio() {
101
101
  return U;
@@ -5,7 +5,7 @@ import { createCssSizeVariables as F, createCssVariables as H } from "../../../u
5
5
  const X = /* @__PURE__ */ B({
6
6
  __name: "NmorphBadge",
7
7
  props: {
8
- value: { type: [Number, String], required: !1, default: void 0 },
8
+ value: { type: [Number, String], required: !1 },
9
9
  max: { type: Number, required: !1, default: 99 },
10
10
  type: { type: String, required: !1, default: "default" },
11
11
  ribbonCorner: { type: String, required: !1, default: "top-right" },