@nova-design-system/nova-react 3.23.0 → 3.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/dom.utils-CuXVGECR-8VY5SfMZ.js +177 -0
  3. package/dist/cjs/events.utils-B6GgGra--01N__3wY.js +23 -0
  4. package/dist/cjs/generated/components.server.js +124 -58
  5. package/dist/cjs/{grow.animation-CvHGHBL4-DDIEYBK-.js → grow.animation-D7ep_aVl-BuXEDSK-.js} +0 -21
  6. package/dist/cjs/{i18n.utils-DOZbXX2L-BizoXo6c.js → i18n.utils-IlwlcG9l-ku0bScip.js} +14 -18
  7. package/dist/cjs/index-DUlunl9a.js +9696 -0
  8. package/dist/cjs/{nv-dialog.entry-O47Eol_7.js → index.esm-D3eWMME9-CG1TVKfu.js} +1 -296
  9. package/dist/cjs/index.js +5 -1
  10. package/dist/cjs/{nv-accordion-item.entry-B_l0-ux0.js → nv-accordion-item.entry-CqnjIt4R.js} +8 -7
  11. package/dist/cjs/{nv-accordion.entry-BX8_YuZF.js → nv-accordion.entry-Dx7FmGg_.js} +11 -14
  12. package/dist/cjs/{nv-alert.entry-DCWYR0OK.js → nv-alert.entry-BL3Pdcxd.js} +7 -6
  13. package/dist/cjs/nv-avatar.entry-2dFR4I9_.js +68 -0
  14. package/dist/cjs/nv-badge_2.entry-5FShR2Ax.js +218 -0
  15. package/dist/cjs/nv-breadcrumb.entry-Cfi32bBT.js +49 -0
  16. package/dist/cjs/nv-breadcrumbs.entry-BSgn3KUO.js +21 -0
  17. package/dist/cjs/nv-button.entry-BdQQ_LE7.js +166 -0
  18. package/dist/cjs/{nv-buttongroup.entry-BZaTKN_n.js → nv-buttongroup.entry-BM8CwXFK.js} +13 -7
  19. package/dist/cjs/{nv-calendar.entry-D9ESuu7C.js → nv-calendar.entry-CeKsMGOa.js} +39 -32
  20. package/dist/cjs/nv-col.entry-D-h2PGcz.js +38 -0
  21. package/dist/cjs/{nv-datagrid.entry-DcB5q2oC.js → nv-datagrid.entry-nOBIfqOS.js} +113 -255
  22. package/dist/cjs/{nv-datagridcolumn.entry-BhKOzXA6.js → nv-datagridcolumn.entry-BAzTU_KM.js} +2 -2
  23. package/dist/cjs/nv-dialog.entry-Bi2ZVSe2.js +299 -0
  24. package/dist/cjs/{nv-dialogfooter_2.entry-Dn16bI8a.js → nv-dialogfooter_2.entry-D6lzC-3S.js} +11 -29
  25. package/dist/cjs/nv-drawer.entry-Dp4AfBiF.js +445 -0
  26. package/dist/cjs/nv-drawerfooter_2.entry-DpWSsq6d.js +128 -0
  27. package/dist/cjs/nv-fieldcheckbox.entry-COA3LXnX.js +179 -0
  28. package/dist/cjs/{nv-fielddate.entry-B4P0U8QG.js → nv-fielddate.entry-B8r5RFXd.js} +20 -21
  29. package/dist/cjs/{nv-fielddaterange.entry-BORwYJ-k.js → nv-fielddaterange.entry-C6_Kq93P.js} +20 -19
  30. package/dist/cjs/{nv-fielddropdown.entry-DzBAIynY.js → nv-fielddropdown.entry-B2Dr5zHd.js} +51 -58
  31. package/dist/cjs/nv-fielddropdownitem.entry-DapivVnR.js +69 -0
  32. package/dist/cjs/{nv-fieldmultiselect.entry-DiqRreWh.js → nv-fieldmultiselect.entry-DSpQeiPx.js} +45 -49
  33. package/dist/cjs/nv-fieldnumber.entry-BwxR9sRr.js +189 -0
  34. package/dist/cjs/nv-fieldpassword.entry-BOSU-Skh.js +167 -0
  35. package/dist/cjs/nv-fieldradio.entry-ZFafNY5_.js +105 -0
  36. package/dist/cjs/nv-fieldselect.entry-CfWjQAd9.js +405 -0
  37. package/dist/cjs/{nv-fieldslider.entry-CozmnUfN.js → nv-fieldslider.entry-dDPcWUxs.js} +34 -16
  38. package/dist/cjs/nv-fieldtext.entry-Yaa-mkjJ.js +163 -0
  39. package/dist/cjs/{nv-fieldtextarea.entry-7UrKWDHg.js → nv-fieldtextarea.entry-Dp_l2pKZ.js} +18 -13
  40. package/dist/cjs/{nv-fieldtime.entry-DakOlLiO.js → nv-fieldtime.entry-CWxi4Uel.js} +38 -40
  41. package/dist/cjs/{nv-icon.entry-Db00kB2u.js → nv-icon.entry-Dci11W9S.js} +5 -5
  42. package/dist/cjs/nv-iconbutton_2.entry-A6FKFJT_.js +171 -0
  43. package/dist/cjs/{nv-menu.entry-CK2HdmBt.js → nv-menu.entry-BHaYP-9M.js} +11 -16
  44. package/dist/cjs/nv-menuitem.entry-Cm1vvN25.js +59 -0
  45. package/dist/cjs/nv-notification-bullet.entry-DRlS3Ybc.js +76 -0
  46. package/dist/cjs/nv-notification.entry-BeDmR-XC.js +176 -0
  47. package/dist/cjs/nv-notificationcontainer.entry-C3p_87Dg.js +41 -0
  48. package/dist/cjs/nv-paginationtable.entry-BzEqQOBa.js +231 -0
  49. package/dist/cjs/{nv-popover.entry-mLdLSp6n.js → nv-popover.entry-D2oFn9vL.js} +118 -46
  50. package/dist/cjs/nv-row.entry-hV1kxmrr.js +22 -0
  51. package/dist/cjs/{nv-sidebar.entry-inDVNJ4s.js → nv-sidebar.entry-BJrqJ8K7.js} +12 -8
  52. package/dist/cjs/nv-sidebarcontent.entry-CPfGF7nx.js +22 -0
  53. package/dist/cjs/{nv-sidebardivider.entry-D_yern0R.js → nv-sidebardivider.entry-D2wmzHCO.js} +4 -4
  54. package/dist/cjs/{nv-sidebarfooter.entry-Rkkn9TB_.js → nv-sidebarfooter.entry-C7fqCzjH.js} +4 -4
  55. package/dist/cjs/nv-sidebargroup.entry-qkXnxhs_.js +23 -0
  56. package/dist/cjs/{nv-sidebarheader.entry-CYpD_4pI.js → nv-sidebarheader.entry-DBsOmyQ0.js} +4 -4
  57. package/dist/cjs/{nv-sidebarlogo.entry-BgK03M1v.js → nv-sidebarlogo.entry-902Ht3UR.js} +4 -4
  58. package/dist/cjs/{nv-sidebarnavitem.entry-DglvcCOD.js → nv-sidebarnavitem.entry-CICrllp8.js} +11 -10
  59. package/dist/cjs/nv-sidebarnavsubitem.entry-Q9jjU_7D.js +35 -0
  60. package/dist/cjs/{nv-split.entry-mzg2F66T.js → nv-split.entry-BYIsE2wp.js} +51 -45
  61. package/dist/cjs/nv-stack.entry-DgE5ASGH.js +31 -0
  62. package/dist/cjs/{nv-table.entry-DkbNgxtI.js → nv-table.entry-DHXBu2n1.js} +9 -11
  63. package/dist/cjs/{nv-tableheader.entry-CRVFTQA-.js → nv-tableheader.entry-BijgOxcO.js} +5 -5
  64. package/dist/cjs/nv-toggle.entry-CMI1WdvV.js +82 -0
  65. package/dist/cjs/nv-togglebutton.entry-DAPETEmF.js +66 -0
  66. package/dist/cjs/{nv-togglebuttongroup.entry-BYXX5ejg.js → nv-togglebuttongroup.entry-CzDI1XCr.js} +14 -11
  67. package/dist/cjs/nv-tooltip.entry-DPoUP9iL.js +56 -0
  68. package/dist/cjs/slide.animation-CmH5d1of-BZuw607U.js +90 -0
  69. package/dist/components/NvDatatable/NvDatatable.js +69 -32
  70. package/dist/generated/components.js +38 -0
  71. package/dist/generated/components.server.js +120 -58
  72. package/dist/types/components/NvDatatable/NvDatatable.d.ts +1 -1
  73. package/dist/types/components/NvDatatable/types.d.ts +13 -3
  74. package/dist/types/generated/components.d.ts +63 -43
  75. package/dist/types/generated/components.server.d.ts +63 -43
  76. package/package.json +2 -2
  77. package/dist/cjs/index-CtjeeUI-.js +0 -39617
  78. package/dist/cjs/nv-avatar.entry-C_xZD3Lp.js +0 -68
  79. package/dist/cjs/nv-badge_2.entry-JjqANStV.js +0 -213
  80. package/dist/cjs/nv-breadcrumb.entry-DQZDn6cm.js +0 -46
  81. package/dist/cjs/nv-breadcrumbs.entry-Bz0GjhY_.js +0 -21
  82. package/dist/cjs/nv-button.entry-Br1DH9Vj.js +0 -164
  83. package/dist/cjs/nv-col.entry-CfgPMMxS.js +0 -38
  84. package/dist/cjs/nv-fieldcheckbox.entry-Bx6ArV_b.js +0 -177
  85. package/dist/cjs/nv-fielddropdownitem.entry-C_17isWd.js +0 -73
  86. package/dist/cjs/nv-fieldnumber.entry-C9O4UPp3.js +0 -187
  87. package/dist/cjs/nv-fieldpassword.entry-BfVJNT0A.js +0 -165
  88. package/dist/cjs/nv-fieldradio.entry-CG22oETM.js +0 -103
  89. package/dist/cjs/nv-fieldselect.entry-BPQEtrv2.js +0 -397
  90. package/dist/cjs/nv-fieldtext.entry-BD-z01ru.js +0 -163
  91. package/dist/cjs/nv-iconbutton_2.entry-CaKCa8NT.js +0 -168
  92. package/dist/cjs/nv-menuitem.entry-mKMqCAdz.js +0 -60
  93. package/dist/cjs/nv-notification-bullet.entry-DtbjtFxs.js +0 -77
  94. package/dist/cjs/nv-notification.entry-CLb0gNu3.js +0 -262
  95. package/dist/cjs/nv-notificationcontainer.entry-Cijivlm6.js +0 -41
  96. package/dist/cjs/nv-row.entry-C2C94fcv.js +0 -22
  97. package/dist/cjs/nv-sidebarcontent.entry-DxoljE15.js +0 -22
  98. package/dist/cjs/nv-sidebargroup.entry-C1p9qqxr.js +0 -23
  99. package/dist/cjs/nv-sidebarnavsubitem.entry-Dt1jKmC-.js +0 -35
  100. package/dist/cjs/nv-stack.entry-nnvjTrBy.js +0 -31
  101. package/dist/cjs/nv-toggle.entry-oC9TVkr1.js +0 -80
  102. package/dist/cjs/nv-togglebutton.entry-BTWCzbS9.js +0 -67
  103. package/dist/cjs/nv-tooltip.entry-OJGxfJEh.js +0 -55
@@ -0,0 +1,163 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-DUlunl9a.js');
4
+ var v4BdYh22OP = require('./v4-BdYh22OP-C1vaJ4yP.js');
5
+ require('@stencil/react-output-target/runtime');
6
+ require('react');
7
+ require('react-dom');
8
+
9
+ const nvFieldtextCss = () => `nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldtext{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldtext[fluid]:not([fluid=false]){max-width:unset}nv-fieldtext[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtext[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldtext[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtext[required]:not([required=false]) label::after,nv-fieldtext[aria-required=true] label::after{content:"*";color:var(--components-form-text-required);font-weight:var(--font-weight-high-emphasis)}nv-fieldtext>label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-label-line-height)}nv-fieldtext>.input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldtext>.input-wrapper .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtext>.input-wrapper .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtext>.input-wrapper .input-container:focus-within,nv-fieldtext>.input-wrapper .input-container:focus-within:hover,nv-fieldtext>.input-wrapper .input-container:focus,nv-fieldtext>.input-wrapper .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtext>.input-wrapper .input-container:has(input:read-only){background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtext>.input-wrapper .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtext>.input-wrapper .input-container>[slot=leading-input]{display:block;margin-left:var(--form-field-padding-x)}nv-fieldtext>.input-wrapper .input-container input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-field-line-height);width:100%}nv-fieldtext>.input-wrapper .input-container input:focus{outline:none}nv-fieldtext>.input-wrapper .input-container input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-low-emphasis);line-height:var(--form-field-line-height)}nv-fieldtext>.input-wrapper .input-container input{}nv-fieldtext>.input-wrapper .input-container input[type=password]::-ms-clear,nv-fieldtext>.input-wrapper .input-container input[type=password]::-ms-reveal{display:none;width:0;height:0}nv-fieldtext>.input-wrapper .input-container nv-icon.validation{color:var(--nv-field-border-default);margin-right:var(--form-gap-x)}nv-fieldtext>.input-wrapper .input-container>[slot=trailing-input]{display:block;margin-right:var(--form-field-padding-x)}nv-fieldtext>.description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtext>.error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}`;
10
+
11
+ const NvFieldtext = class {
12
+ constructor(hostRef) {
13
+ index.registerInstance(this, hostRef);
14
+ this.valueChanged = index.createEvent(this, "valueChanged", 3);
15
+ //#endregion DEPRECATED
16
+ /****************************************************************************/
17
+ //#region PROPERTIES
18
+ /**
19
+ * Sets the ID for the input element and the for attribute of the associated
20
+ * label. If no ID is provided, a random one will be automatically generated
21
+ * to ensure unique identification, facilitating proper label association and
22
+ * accessibility.
23
+ */
24
+ this.inputId = v4BdYh22OP.v4();
25
+ /**
26
+ * The type prop lets you specify what kind of information the input field
27
+ * should accept. Choose 'text' for general words or sentences, 'tel' for
28
+ * phone numbers, or 'email' for email addresses. This makes sure users get
29
+ * the right keyboard and validation for what they need to enter.
30
+ */
31
+ this.type = 'text';
32
+ /**
33
+ * The disabled prop lets you turn off the input field so that users can’t
34
+ * type in it. When disabled, the field is grayed out and won’t respond to
35
+ * clicks or touches.
36
+ */
37
+ this.disabled = false;
38
+ /**
39
+ * Display the input field’s content without allowing users to change it.
40
+ * Users can still click on it, select, and copy the text, but they won’t be
41
+ * able to type or delete anything.
42
+ */
43
+ this.readonly = false;
44
+ /**
45
+ * Marks the input field as required, ensuring that the user must fill it out
46
+ * before submitting the form.
47
+ * @note This uses the native HTML `required` attribute, which triggers browser validation.
48
+ */
49
+ this.required = false;
50
+ /**
51
+ * Marks the input field as required for accessibility purposes without triggering
52
+ * native HTML validation. Use this when implementing custom validation logic.
53
+ * @note When set, this uses `aria-required` instead of the native `required` attribute.
54
+ * This allows developers to implement custom validation while maintaining accessibility.
55
+ * @note If this prop is not explicitly set, the component will check for the HTML attribute
56
+ * 'aria-required' directly to determine if it should be applied.
57
+ */
58
+ this.ariaRequiredAttr = false;
59
+ /**
60
+ * Alters the input field’s appearance to indicate an error, helping users
61
+ * identify fields that need correction.
62
+ * @validator error
63
+ */
64
+ this.error = false;
65
+ /**
66
+ * Changes the input field’s appearance to indicate successful input or
67
+ * validation.
68
+ */
69
+ this.success = false;
70
+ /**
71
+ * When used with the email input type, this prop enables the field to accept
72
+ * multiple email addresses. Users can enter several addresses, separating
73
+ * each one with a comma, allowing the form to handle multiple recipients.
74
+ */
75
+ this.multiple = false;
76
+ /**
77
+ * Applies focus to the input field as soon as the component is mounted. This
78
+ * is equivalent to setting the native autofocus attribute on an <input>
79
+ * element.
80
+ */
81
+ this.autofocus = false;
82
+ /**
83
+ * Allows the field to stretch and fill the entire width of its container.
84
+ */
85
+ this.fluid = false;
86
+ //#endregion EVENTS
87
+ /****************************************************************************/
88
+ //#region METHODS
89
+ /**
90
+ * Handles the input event on the input element.
91
+ * Emits the inputChanged event with the new value.
92
+ * @param {Event} event - Event object of the input event.
93
+ */
94
+ this.handleInput = (event) => {
95
+ const input = event.target;
96
+ this.value = input.value;
97
+ this.valueChanged.emit(input.value);
98
+ };
99
+ /**
100
+ * Handles focus when the input container is clicked.
101
+ */
102
+ this.handleInputContainerClick = () => {
103
+ this.inputElement.focus();
104
+ };
105
+ }
106
+ //#endregion METHODS
107
+ /****************************************************************************/
108
+ //#region LIFECYCLE
109
+ componentWillRender() {
110
+ if (this.textInputType) {
111
+ this.type = this.textInputType;
112
+ }
113
+ if (this.message) {
114
+ this.description = this.message;
115
+ }
116
+ if (this.validation) {
117
+ this.errorDescription = this.validation;
118
+ this.error = true;
119
+ }
120
+ }
121
+ //#endregion LIFECYCLE
122
+ /****************************************************************************/
123
+ //#region RENDER
124
+ render() {
125
+ // Check aria-required from multiple sources:
126
+ // 1. HTML attribute 'aria-required' (direct HTML) - check if explicitly set
127
+ // 2. JavaScript prop (when prop is explicitly set via JavaScript)
128
+ // We use hasAttribute to determine if the attribute was explicitly set by the user,
129
+ // since the prop now defaults to false (to maintain Blazor compatibility)
130
+ const hasAriaRequiredAttr = this.el.hasAttribute('aria-required') ||
131
+ this.el.hasAttribute('aria-required-attr');
132
+ const ariaRequiredFromAttr = hasAriaRequiredAttr
133
+ ? this.el.getAttribute('aria-required') ||
134
+ this.el.getAttribute('aria-required-attr')
135
+ : null;
136
+ // Use aria-required if the attribute was explicitly set
137
+ // With reflect: true, setting the prop will also set the attribute
138
+ const useAriaRequired = hasAriaRequiredAttr;
139
+ // Determine the value: use attribute if it exists (prop reflects to attribute via reflect: true)
140
+ // If attribute doesn't exist, the prop was never set and we don't use aria-required
141
+ const ariaRequiredAttrValue = hasAriaRequiredAttr
142
+ ? ariaRequiredFromAttr
143
+ : null;
144
+ // Determine which attributes to use
145
+ // If aria-required HTML attribute is present, use it (convert string to boolean)
146
+ // If required is set and aria-required is not "false", use native required
147
+ // If aria-required is "false", don't use native required even if required is set
148
+ const ariaRequiredValue = useAriaRequired
149
+ ? ariaRequiredAttrValue === 'true' || ariaRequiredAttrValue === ''
150
+ : undefined;
151
+ const useNativeRequired = this.required && (!useAriaRequired || ariaRequiredValue === true);
152
+ return (index.h(index.Host, { key: '752b96931256a9b1c09079e4af9f1010af8ff409' }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: '9d04322a2519c8754f39ea4930e156b6df965bc6', htmlFor: this.inputId }, index.h("slot", { key: '3249f9865193d8a7ab8bf201b89ebcf9ee464961', name: "label" }, this.label))), index.h("div", { key: '072ad06abfd59614c8ff76e996d9f323f3795bdd', class: "input-wrapper" }, index.h("slot", { key: '3d2acf809e2565da88ff1ced1a62e58734a38f26', name: "before-input" }), index.h("div", { key: '64e0e81f95a0cecb3fa721e383e22de406c7b02f', class: "input-container", onClick: this.handleInputContainerClick }, index.h("slot", { key: '7e4a48edef0443a18b9ebb33ee0644e56ae7347f', name: "leading-input" }), index.h("input", { key: 'afb87b6fc112249291c7d8f05dd94501aa3f51c9', id: this.inputId, ref: e => (this.inputElement = e), placeholder: this.placeholder, name: this.name, type: this.type, disabled: this.disabled, readOnly: this.readonly, required: useNativeRequired ? this.required : undefined, ...(ariaRequiredValue !== undefined && {
153
+ 'aria-required': String(ariaRequiredValue),
154
+ }), maxlength: this.maxlength, minlength: this.minlength, pattern: this.pattern, autofocus: this.autofocus, autocomplete: this.autocomplete, multiple: this.multiple, value: this.value, onInput: this.handleInput }), index.h("slot", { key: '43df7002bd3c9304e3eb7965e6a13cc086eb2856', name: "trailing-input" }), this.error && (index.h("nv-icon", { key: '0735de48552dd73cad4bf9fe99b6a882ecdd33e4', name: "alert-circle", class: "validation", size: "md" })), this.success && (index.h("nv-icon", { key: '666395f960bd25410c7a2fb31c88f13887d82dbc', name: "circle-check", class: "validation", size: "md" }))), index.h("slot", { key: '8564a034022bd27777bed4c138bcf0131037a6fc', name: "after-input" })), (this.description ||
155
+ this.el.querySelector('[slot="description"]')) && (index.h("div", { key: '156613e0ea9c6bd81c821e99bb9497fe3069616b', class: "description" }, index.h("slot", { key: '5dc12f9875778d04c3a66238bfcec0b765d20039', name: "description" }, this.description))), (this.errorDescription ||
156
+ this.el.querySelector('[slot="error-description"]')) && (index.h("div", { key: '22fcd8a566ab55e54f59db939e5c3a505dbcca65', hidden: !this.error, class: "error-description" }, index.h("slot", { key: 'f10a7a4b2e5514d035f31f90aa07f7d727b1c302', name: "error-description" }, this.errorDescription)))));
157
+ }
158
+ static get formAssociated() { return true; }
159
+ get el() { return index.getElement(this); }
160
+ };
161
+ NvFieldtext.style = nvFieldtextCss();
162
+
163
+ exports.nv_fieldtext = NvFieldtext;
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-CtjeeUI-.js');
3
+ var index = require('./index-DUlunl9a.js');
4
4
  var clsxChV9xqsO = require('./clsx-ChV9xqsO-BtxeOLZW.js');
5
5
  var v4BdYh22OP = require('./v4-BdYh22OP-C1vaJ4yP.js');
6
6
  require('@stencil/react-output-target/runtime');
7
7
  require('react');
8
8
  require('react-dom');
9
9
 
10
- const nvFieldtextareaCss = "nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldtextarea{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldtextarea[fluid]:not([fluid=false]){max-width:unset}nv-fieldtextarea[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtextarea[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldtextarea[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtextarea[required]:not([required=false]) label::after,nv-fieldtextarea[aria-required=true] label::after{content:\"*\";color:var(--components-form-text-required);font-weight:var(--font-weight-high-emphasis)}nv-fieldtextarea label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-label-line-height)}nv-fieldtextarea .textarea-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldtextarea .textarea-wrapper .textarea-container{display:flex;flex-grow:1;padding:calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);justify-content:center;align-items:center;gap:var(--form-field-gap);align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtextarea .textarea-wrapper .textarea-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtextarea .textarea-wrapper .textarea-container:focus-within{border-color:var(--nv-field-border-focus);box-shadow:0 0 0 var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtextarea .textarea-wrapper .textarea-container:has(textarea:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtextarea .textarea-wrapper .textarea-container:has(textarea:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::-webkit-scrollbar{width:6px;height:6px}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fieldtextarea .textarea-wrapper .textarea-container textarea{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);text-overflow:ellipsis;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-field-line-height)}nv-fieldtextarea .textarea-wrapper .textarea-container textarea:focus{outline:none}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-low-emphasis);line-height:var(--form-field-line-height)}nv-fieldtextarea .textarea-wrapper .textarea-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fieldtextarea .description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtextarea .error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}";
10
+ const nvFieldtextareaCss = () => `nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldtextarea{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldtextarea[fluid]:not([fluid=false]){max-width:unset}nv-fieldtextarea[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtextarea[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldtextarea[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtextarea[required]:not([required=false]) label::after,nv-fieldtextarea[aria-required=true] label::after{content:"*";color:var(--components-form-text-required);font-weight:var(--font-weight-high-emphasis)}nv-fieldtextarea label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-label-line-height)}nv-fieldtextarea .textarea-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch}nv-fieldtextarea .textarea-wrapper .textarea-container{display:flex;flex-grow:1;padding:calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);justify-content:center;align-items:center;gap:var(--form-field-gap);align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtextarea .textarea-wrapper .textarea-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtextarea .textarea-wrapper .textarea-container:focus-within{border-color:var(--nv-field-border-focus);box-shadow:0 0 0 var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtextarea .textarea-wrapper .textarea-container:has(textarea:read-only){opacity:0.5;background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtextarea .textarea-wrapper .textarea-container:has(textarea:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::-webkit-scrollbar{width:6px;height:6px}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fieldtextarea .textarea-wrapper .textarea-container textarea{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);text-overflow:ellipsis;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-field-line-height)}nv-fieldtextarea .textarea-wrapper .textarea-container textarea:focus{outline:none}nv-fieldtextarea .textarea-wrapper .textarea-container textarea::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-low-emphasis);line-height:var(--form-field-line-height)}nv-fieldtextarea .textarea-wrapper .textarea-container nv-icon.validation{color:var(--nv-field-border-default)}nv-fieldtextarea .description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtextarea .error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}`;
11
11
 
12
12
  const NvFieldtextarea = class {
13
13
  constructor(hostRef) {
@@ -119,12 +119,11 @@ const NvFieldtextarea = class {
119
119
  * min-height, if false, we need to remove the height property.
120
120
  */
121
121
  autosizeChanged() {
122
- var _a;
123
122
  if (this.autosize) {
124
123
  this.adjustTextareaHeight();
125
124
  }
126
125
  else {
127
- (_a = this.textareaElement) === null || _a === void 0 ? void 0 : _a.style.removeProperty('height');
126
+ this.textareaElement?.style.removeProperty('height');
128
127
  }
129
128
  }
130
129
  /**
@@ -219,20 +218,26 @@ const NvFieldtextarea = class {
219
218
  ? ariaRequiredAttrValue === 'true' || ariaRequiredAttrValue === ''
220
219
  : undefined;
221
220
  const useNativeRequired = this.required && (!useAriaRequired || ariaRequiredValue === true);
222
- return (index.h(index.Host, { key: '1a80078701925171e8f908d656becc54d74f381d' }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: '0e6489c64873d866ec87733debed0473f3f35649', htmlFor: this.inputId }, index.h("slot", { key: 'f250da58a83a5be5b8ec055e89f7a703e391e664', name: "label" }, this.label))), index.h("div", { key: '29ea5f2f4c545b12feda1e8e3c2c025c4f70036a', class: "textarea-wrapper" }, index.h("div", { key: 'd911e08b43456c954245c9c40af2867e8df117cf', class: "textarea-container", onClick: this.handleTextareaContainerClick }, index.h("textarea", Object.assign({ key: '96bb78ad0353fb2d86205c2d0f2323d2b66b6311', id: this.inputId, ref: e => (this.textareaElement = e), placeholder: this.placeholder, autofocus: this.autofocus, name: this.name, disabled: this.disabled, readOnly: this.readonly, required: useNativeRequired ? this.required : undefined }, (ariaRequiredValue !== undefined && {
223
- 'aria-required': String(ariaRequiredValue),
224
- }), { maxlength: this.maxlength, minlength: this.minlength, autocomplete: "off", value: this.value, onInput: this.handleTextarea, rows: this.rows, class: clsxChV9xqsO.clsx(this.resize === 'none' && 'resize-none', this.resize === 'vertical' && 'resize-y', this.resize === 'horizontal' && 'resize-x', this.resize === 'both' && 'resize') })))), (this.description ||
225
- this.el.querySelector('[slot="description"]')) && (index.h("div", { key: 'c6e647895b1daf84a7f648ba24057a1387998667', class: "description" }, index.h("slot", { key: '766f8786b18dac2da463aa94b182ab62ff525cfb', name: "description" }, this.description))), (this.errorDescription ||
226
- this.el.querySelector('[slot="error-description"]')) && (index.h("div", { key: 'f65d303bdce41da093ac8d6c4a1f4fd084ae6b64', hidden: !this.error, class: "error-description" }, index.h("slot", { key: '46862decf5c0a3c10efb02edff70a28a8a4b6d92', name: "error-description" }, this.errorDescription)))));
221
+ return (index.h(index.Host, { key: '318e509b03c06725526be8f6ec4ed07ad6f2180a' }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: '705f55c450ebdb9b3ccf61583436c5b9d1aa0ca6', htmlFor: this.inputId }, index.h("slot", { key: 'e4c2c58b5a8592dfe235d9544193c877c896d2b4', name: "label" }, this.label))), index.h("div", { key: '4c91b621928b8a38139c0a8f3a775abf0b76f178', class: "textarea-wrapper" }, index.h("div", { key: '2b15d531bb208a225f2bbf469f5ac7002805e9b5', class: "textarea-container", onClick: this.handleTextareaContainerClick }, index.h("textarea", { key: '15be5b082d20a8ee0cafb1ae78008b3b76b175c8', id: this.inputId, ref: e => (this.textareaElement = e), placeholder: this.placeholder, autofocus: this.autofocus, name: this.name, disabled: this.disabled, readOnly: this.readonly, required: useNativeRequired ? this.required : undefined, ...(ariaRequiredValue !== undefined && {
222
+ 'aria-required': String(ariaRequiredValue),
223
+ }), maxlength: this.maxlength, minlength: this.minlength, autocomplete: "off", value: this.value, onInput: this.handleTextarea, rows: this.rows, class: clsxChV9xqsO.clsx(this.resize === 'none' && 'resize-none', this.resize === 'vertical' && 'resize-y', this.resize === 'horizontal' && 'resize-x', this.resize === 'both' && 'resize') }))), (this.description ||
224
+ this.el.querySelector('[slot="description"]')) && (index.h("div", { key: 'e3f3ab334446af3f6d16b916001bd3297341362b', class: "description" }, index.h("slot", { key: '1ba84f8c4de83e5bfdbdb307cd8493dd86be36ca', name: "description" }, this.description))), (this.errorDescription ||
225
+ this.el.querySelector('[slot="error-description"]')) && (index.h("div", { key: '0dfef83d86ca29fad329d4c656173f052a51c4fa', hidden: !this.error, class: "error-description" }, index.h("slot", { key: '0361fa48742aba68bfb2b205c741bf0aff896134', name: "error-description" }, this.errorDescription)))));
227
226
  }
228
227
  static get formAssociated() { return true; }
229
228
  get el() { return index.getElement(this); }
230
229
  static get watchers() { return {
231
- "rows": ["rowsChanged"],
232
- "autosize": ["autosizeChanged"],
233
- "value": ["handleValueChange"]
230
+ "rows": [{
231
+ "rowsChanged": 0
232
+ }],
233
+ "autosize": [{
234
+ "autosizeChanged": 0
235
+ }],
236
+ "value": [{
237
+ "handleValueChange": 0
238
+ }]
234
239
  }; }
235
240
  };
236
- NvFieldtextarea.style = nvFieldtextareaCss;
241
+ NvFieldtextarea.style = nvFieldtextareaCss();
237
242
 
238
243
  exports.nv_fieldtextarea = NvFieldtextarea;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-CtjeeUI-.js');
3
+ var index = require('./index-DUlunl9a.js');
4
4
  var constantsBReL3Lsa = require('./constants-BReL3Lsa-DpB_ghPF.js');
5
5
  var v4BdYh22OP = require('./v4-BdYh22OP-C1vaJ4yP.js');
6
6
  require('@stencil/react-output-target/runtime');
@@ -110,7 +110,7 @@ function parseValueByFormat(value, format) {
110
110
  }
111
111
  // Handle partial format values - try to parse what we can
112
112
  const parts = cleanValue.split(':');
113
- const result = Object.assign({}, defaultComponents);
113
+ const result = { ...defaultComponents };
114
114
  if (parts.length >= 1 && parts[0]) {
115
115
  const hours = parseInt(parts[0], 10);
116
116
  if (!isNaN(hours)) {
@@ -242,7 +242,7 @@ function reconstructTimeByFormat(components, format) {
242
242
  }
243
243
  }
244
244
 
245
- const nvFieldtimeCss = "nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldtime{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldtime[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtime[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldtime[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtime[required]:not([required=false]) label::after,nv-fieldtime[aria-required=true] label::after{content:\"*\";color:var(--components-form-text-required);font-weight:var(--font-weight-high-emphasis)}nv-fieldtime label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-label-line-height)}nv-fieldtime nv-popover{width:100%;display:block}nv-fieldtime nv-popover [data-scope=popover]{padding:var(--list-dropdown-padding);background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border);width:100%}nv-fieldtime nv-popover{z-index:9999}nv-fieldtime .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;width:100%}nv-fieldtime .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtime .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtime .input-container:focus-within,nv-fieldtime .input-container:focus-within:hover,nv-fieldtime .input-container:focus,nv-fieldtime .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtime .input-container:has(input:read-only){background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtime .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtime .input-container{display:flex;justify-content:flex-start;align-items:center;position:relative;width:100%;min-height:40px;gap:0;padding-left:var(--form-field-padding-x)}nv-fieldtime .input-container input.time-input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:var(--form-field-padding-y) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-field-line-height);width:100%}nv-fieldtime .input-container input.time-input:focus{outline:none}nv-fieldtime .input-container input.time-input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-low-emphasis);line-height:var(--form-field-line-height)}nv-fieldtime .input-container input.time-input{}nv-fieldtime .input-container input.time-input[type=password]::-ms-clear,nv-fieldtime .input-container input.time-input[type=password]::-ms-reveal{display:none;width:0;height:0}nv-fieldtime .input-container input.time-input{width:100%;min-width:24px;flex:0 0 24px;text-align:center;padding:0;margin:0}nv-fieldtime .input-container input.time-input::-webkit-inner-spin-button,nv-fieldtime .input-container input.time-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}nv-fieldtime .input-container span{width:100%;text-align:center;min-width:24px;flex:0 0 24px;padding:0 4px;color:var(--components-form-field-content-text)}nv-fieldtime .input-container>nv-iconbutton{border:0px;border-radius:0px}nv-fieldtime .input-container>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fieldtime .input-container>nv-iconbutton:last-of-type{border-top-right-radius:var(--form-field-radius);border-bottom-right-radius:var(--form-field-radius)}nv-fieldtime .input-container>nv-iconbutton{margin-left:auto}nv-fieldtime .input-container nv-icon.validation{color:var(--nv-field-border-default);position:absolute;right:50px;top:50%;transform:translateY(-50%)}nv-fieldtime .input-container:focus,nv-fieldtime .input-container:focus-within{border-color:var(--color-focus-brand);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--color-focus-brand)}nv-fieldtime .description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtime .error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}nv-fieldtime hr{border:none;border-top:1px solid var(--dropdown-divider-color, #ccc);margin:0.5rem 0}nv-fieldtime .time-dropdown{width:100%}nv-fieldtime .time-dropdown .time-columns{display:flex;justify-content:flex-start;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column{flex:1;text-align:center}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar{width:6px;height:6px}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fieldtime .time-dropdown .time-columns .time-column{max-height:200px;overflow-y:auto;scroll-behavior:smooth;scrollbar-gutter:stable both-edges;scrollbar-gutter:auto}nv-fieldtime .time-dropdown .time-columns .time-column:last-child{border-right:none}nv-fieldtime .time-dropdown .time-columns .time-column .time-option{padding:var(--calendar-padding);text-align:center;cursor:pointer;transition:background-color 0.2s;border-radius:var(--list-dropdown-item-radius);color:var(--components-calendar-cell-text);font-size:var(--font-size-sm);display:flex;justify-content:center;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:hover{background-color:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:focus,nv-fieldtime .time-dropdown .time-columns .time-column .time-option:focus-within{background-color:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.selected{background-color:var(--components-calendar-cell-background-selected);color:var(--components-calendar-cell-text-selected)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.highlighted{background-color:var(--components-calendar-cell-background-hover);color:var(--components-menu-contextual-item-content-hover)}";
245
+ const nvFieldtimeCss = () => `nv-fieldslider .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-hover)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .track-range{background:var(--components-slider-track-filled-focus)}nv-fieldslider .slider-container .track-container:has(.thumb:focus) .thumb{border-color:var(--components-slider-track-filled-focus)}nv-fieldslider[error] .slider-container .track-container .track .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:hover{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-handler-background-error)}nv-fieldslider[error] .slider-container .track-container .track .thumb:focus{border-color:var(--components-slider-track-filled-error);outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-slider-track-filled-error);outline-offset:calc(var(--focus-outline-offset) * 1);background-color:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .track-range{background:var(--components-slider-track-filled-error)}nv-fieldslider[error] .slider-container .track-container:has(.thumb:hover) .thumb{border-color:var(--components-slider-track-filled-error)}nv-fieldtime{--nv-field-border-default:var(--components-form-field-border-default);--nv-field-border-hover:var(--components-form-field-border-hover);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--components-form-field-border-default);--nv-field-border-readonly:var(--components-form-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-brand);--nv-field-background:var(--components-form-field-background-default);display:flex;flex-direction:column;align-items:flex-start;gap:var(--form-gap-y);box-sizing:border-box;max-width:480px}nv-fieldtime[readonly]:not([readonly=false]){--nv-field-border-default:var(--components-form-field-border-readonly);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--components-form-field-border-focus);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-background:var(--components-form-field-background-readonly)}nv-fieldtime[error]:not([error=false]){--nv-field-border-default:var(--components-form-field-border-error);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-destructive-in-field)}nv-fieldtime[success]:not([success=false]){--nv-field-border-default:var(--components-form-field-border-success);--nv-field-border-hover:var(--nv-field-border-default);--nv-field-border-focus:var(--nv-field-border-default);--nv-field-border-disabled:var(--nv-field-border-default);--nv-field-border-readonly:var(--nv-field-border-default);--nv-field-focus-box-shadow:var(--color-focus-success)}nv-fieldtime[required]:not([required=false]) label::after,nv-fieldtime[aria-required=true] label::after{content:"*";color:var(--components-form-text-required);font-weight:var(--font-weight-high-emphasis)}nv-fieldtime label{display:flex;align-items:center;gap:var(--form-label-gap);align-self:stretch;color:var(--components-form-text-label-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-label-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-label-line-height)}nv-fieldtime nv-popover{width:100%;display:block}nv-fieldtime nv-popover [data-scope=popover]{padding:var(--list-dropdown-padding);background-color:var(--components-list-dropdown-background);border:1px solid var(--components-list-dropdown-border);width:100%}nv-fieldtime nv-popover{z-index:9999}nv-fieldtime .input-wrapper{display:flex;flex-wrap:wrap;gap:var(--form-gap-x);align-items:stretch;align-self:stretch;width:100%}nv-fieldtime .input-container{display:flex;flex-grow:1;justify-content:center;align-items:center;align-self:stretch;border-radius:var(--form-field-radius);border-width:1px;border-style:solid;border-color:var(--nv-field-border-default);opacity:var(--components-form-opacity-default, 1);background:var(--nv-field-background);transition:all 150ms ease-out}nv-fieldtime .input-container:hover{border-color:var(--nv-field-border-hover)}nv-fieldtime .input-container:focus-within,nv-fieldtime .input-container:focus-within:hover,nv-fieldtime .input-container:focus,nv-fieldtime .input-container:focus:hover{border-color:var(--nv-field-border-focus);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--nv-field-focus-box-shadow)}nv-fieldtime .input-container:has(input:read-only){background-color:var(--components-form-field-background-readonly);border-color:var(--nv-field-border-readonly)}nv-fieldtime .input-container:has(input:disabled){opacity:0.5;background-color:var(--components-form-field-background-disabled);border-color:var(--nv-field-border-disabled)}nv-fieldtime .input-container{display:flex;justify-content:flex-start;align-items:center;position:relative;width:100%;min-height:40px;gap:0;padding-left:var(--form-field-padding-x)}nv-fieldtime .input-container input.time-input{display:flex;align-items:center;flex:1 0 0;overflow:hidden;background-color:transparent;color:var(--components-form-field-content-text);padding:calc(var(--form-field-padding-y) - 1px) var(--form-field-padding-x);font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-medium-emphasis);line-height:var(--form-field-line-height);width:100%}nv-fieldtime .input-container input.time-input:focus{outline:none}nv-fieldtime .input-container input.time-input::placeholder{overflow:hidden;color:var(--components-form-field-content-placeholder);text-overflow:ellipsis;font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-field-font-size);font-style:normal;font-weight:var(--font-weight-low-emphasis);line-height:var(--form-field-line-height)}nv-fieldtime .input-container input.time-input{}nv-fieldtime .input-container input.time-input[type=password]::-ms-clear,nv-fieldtime .input-container input.time-input[type=password]::-ms-reveal{display:none;width:0;height:0}nv-fieldtime .input-container input.time-input{width:100%;min-width:24px;flex:0 0 24px;text-align:center;padding:0;margin:0}nv-fieldtime .input-container input.time-input::-webkit-inner-spin-button,nv-fieldtime .input-container input.time-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}nv-fieldtime .input-container span{width:100%;text-align:center;min-width:24px;flex:0 0 24px;padding:0 4px;color:var(--components-form-field-content-text)}nv-fieldtime .input-container>nv-iconbutton{border:0px;border-radius:0px}nv-fieldtime .input-container>nv-iconbutton:focus-visible{border-radius:var(--button-md-border-radius);outline-offset:-3px}nv-fieldtime .input-container>nv-iconbutton:last-of-type{border-top-right-radius:var(--form-field-radius);border-bottom-right-radius:var(--form-field-radius)}nv-fieldtime .input-container>nv-iconbutton{margin-left:auto}nv-fieldtime .input-container nv-icon.validation{color:var(--nv-field-border-default);position:absolute;right:50px;top:50%;transform:translateY(-50%)}nv-fieldtime .input-container:focus,nv-fieldtime .input-container:focus-within{border-color:var(--color-focus-brand);box-shadow:0px 0px 0px var(--focus-field-stroke) var(--color-focus-brand)}nv-fieldtime .description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height)}nv-fieldtime .error-description{display:flex;align-items:center;align-self:stretch;gap:var(--spacing-1);color:var(--components-form-text-description-default);font-family:var(--font-family-default), var(--font-family-fallback), sans-serif;font-size:var(--form-description-font-size);font-style:normal;line-height:var(--form-description-line-height);color:var(--components-form-text-description-error)}nv-fieldtime hr{border:none;border-top:1px solid var(--dropdown-divider-color, #ccc);margin:0.5rem 0}nv-fieldtime .time-dropdown{width:100%}nv-fieldtime .time-dropdown .time-columns{display:flex;justify-content:flex-start;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column{flex:1;text-align:center}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar{width:6px;height:6px}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar-track{background-color:var(--color-level-10-background);border-radius:9999px}nv-fieldtime .time-dropdown .time-columns .time-column::-webkit-scrollbar-thumb{background-color:var(--color-gray-200);border-radius:9999px}nv-fieldtime .time-dropdown .time-columns .time-column{max-height:200px;overflow-y:auto;scroll-behavior:smooth;scrollbar-gutter:stable both-edges;scrollbar-gutter:auto}nv-fieldtime .time-dropdown .time-columns .time-column:last-child{border-right:none}nv-fieldtime .time-dropdown .time-columns .time-column .time-option{padding:var(--calendar-padding);text-align:center;cursor:pointer;transition:background-color 0.2s;border-radius:var(--list-dropdown-item-radius);color:var(--components-calendar-cell-text);font-size:var(--font-size-sm);display:flex;justify-content:center;align-items:center}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:hover{background-color:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option:focus,nv-fieldtime .time-dropdown .time-columns .time-column .time-option:focus-within{background-color:var(--components-calendar-cell-background-hover);color:var(--components-calendar-cell-text-hover)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.selected{background-color:var(--components-calendar-cell-background-selected);color:var(--components-calendar-cell-text-selected)}nv-fieldtime .time-dropdown .time-columns .time-column .time-option.highlighted{background-color:var(--components-calendar-cell-background-hover);color:var(--components-menu-contextual-item-content-hover)}`;
246
246
 
247
247
  const NvFieldtime = class {
248
248
  constructor(hostRef) {
@@ -337,7 +337,6 @@ const NvFieldtime = class {
337
337
  /****************************************************************************/
338
338
  //#region LISTENERS
339
339
  handleKeyDown(event) {
340
- var _a, _b;
341
340
  if (!this.open) {
342
341
  if (event.key === 'ArrowDown') {
343
342
  this.open = true;
@@ -378,8 +377,8 @@ const NvFieldtime = class {
378
377
  const nextTypeIndex = currentTypeIndex + 1;
379
378
  if (nextTypeIndex < visibleTypes.length) {
380
379
  const nextType = visibleTypes[nextTypeIndex];
381
- (_a = this.inputElements[nextType]) === null || _a === void 0 ? void 0 : _a.focus();
382
- (_b = this.inputElements[nextType]) === null || _b === void 0 ? void 0 : _b.select();
380
+ this.inputElements[nextType]?.focus();
381
+ this.inputElements[nextType]?.select();
383
382
  }
384
383
  }
385
384
  else if (event.key === 'Escape') {
@@ -470,7 +469,6 @@ const NvFieldtime = class {
470
469
  this.value = reconstructedValue;
471
470
  }
472
471
  handleHoursChange(inputValue, type) {
473
- var _a, _b;
474
472
  const isHHFormat = this.format.startsWith('HH');
475
473
  const maxHours = isHHFormat ? 24 : 12;
476
474
  // Handle empty input
@@ -531,13 +529,12 @@ const NvFieldtime = class {
531
529
  const nextTypeIndex = currentTypeIndex + 1;
532
530
  if (nextTypeIndex < visibleTypes.length) {
533
531
  const nextType = visibleTypes[nextTypeIndex];
534
- (_a = this.inputElements[nextType]) === null || _a === void 0 ? void 0 : _a.focus();
535
- (_b = this.inputElements[nextType]) === null || _b === void 0 ? void 0 : _b.select();
532
+ this.inputElements[nextType]?.focus();
533
+ this.inputElements[nextType]?.select();
536
534
  }
537
535
  }
538
536
  }
539
537
  handleMinutesChange(inputValue, type) {
540
- var _a, _b;
541
538
  const maxMinutes = 60;
542
539
  // Handle empty input
543
540
  if (inputValue.length === 0) {
@@ -597,8 +594,8 @@ const NvFieldtime = class {
597
594
  const nextTypeIndex = currentTypeIndex + 1;
598
595
  if (nextTypeIndex < visibleTypes.length) {
599
596
  const nextType = visibleTypes[nextTypeIndex];
600
- (_a = this.inputElements[nextType]) === null || _a === void 0 ? void 0 : _a.focus();
601
- (_b = this.inputElements[nextType]) === null || _b === void 0 ? void 0 : _b.select();
597
+ this.inputElements[nextType]?.focus();
598
+ this.inputElements[nextType]?.select();
602
599
  }
603
600
  }
604
601
  }
@@ -679,7 +676,6 @@ const NvFieldtime = class {
679
676
  return reconstructedTime;
680
677
  }
681
678
  handleFocus(type) {
682
- var _a, _b, _c, _d;
683
679
  if (this.readonly || this.disabled) {
684
680
  return;
685
681
  }
@@ -692,15 +688,14 @@ const NvFieldtime = class {
692
688
  this.open = true; // Force the popover to open
693
689
  }
694
690
  // Refocus on the input if it loses focus and is empty
695
- if (((_a = this.inputElements[type]) === null || _a === void 0 ? void 0 : _a.value.length) === 0 ||
696
- ((_b = this.inputElements[type]) === null || _b === void 0 ? void 0 : _b.value) === '00') {
697
- (_c = this.inputElements[type]) === null || _c === void 0 ? void 0 : _c.focus();
698
- (_d = this.inputElements[type]) === null || _d === void 0 ? void 0 : _d.select();
691
+ if (this.inputElements[type]?.value.length === 0 ||
692
+ this.inputElements[type]?.value === '00') {
693
+ this.inputElements[type]?.focus();
694
+ this.inputElements[type]?.select();
699
695
  }
700
696
  this.typeFocused = type;
701
697
  }
702
698
  HandleDropdownIconClick() {
703
- var _a, _b;
704
699
  if (this.disabled || this.readonly) {
705
700
  return; // Do not toggle if disabled or read-only
706
701
  }
@@ -712,8 +707,8 @@ const NvFieldtime = class {
712
707
  else if (!this.open &&
713
708
  firstVisibleType &&
714
709
  this.inputElements[firstVisibleType]) {
715
- (_a = this.inputElements[firstVisibleType]) === null || _a === void 0 ? void 0 : _a.focus(); // Focus will open the popover
716
- (_b = this.inputElements[firstVisibleType]) === null || _b === void 0 ? void 0 : _b.select();
710
+ this.inputElements[firstVisibleType]?.focus(); // Focus will open the popover
711
+ this.inputElements[firstVisibleType]?.select();
717
712
  }
718
713
  else {
719
714
  console.warn('nv-fieldtime -> No visible input elements found to focus');
@@ -842,10 +837,9 @@ const NvFieldtime = class {
842
837
  return hour >= 0 && hour <= 24 ? hourStr.padStart(2, '0') : null;
843
838
  }
844
839
  generateMinuteOptions(stepInSeconds) {
845
- var _a, _b;
846
840
  const minuteStep = Math.max(1, Math.floor((stepInSeconds % 3600) / 60)); // Ensure step >= 1
847
- const minMinute = (_a = this.parseMinute(this.min)) !== null && _a !== void 0 ? _a : 0;
848
- const maxMinute = (_b = this.parseMinute(this.max)) !== null && _b !== void 0 ? _b : 59;
841
+ const minMinute = this.parseMinute(this.min) ?? 0;
842
+ const maxMinute = this.parseMinute(this.max) ?? 59;
849
843
  if (minMinute === 0 && maxMinute === 0)
850
844
  return ['00']; // Handle edge case for zero minutes
851
845
  const values = [];
@@ -872,10 +866,9 @@ const NvFieldtime = class {
872
866
  return isNaN(minute) || minute < 0 || minute >= 60 ? null : minute;
873
867
  }
874
868
  generateSecondOptions(stepInSeconds) {
875
- var _a, _b;
876
869
  const secondStep = Math.max(1, stepInSeconds % 60); // Ensure step >= 1
877
- const minSecond = (_a = this.parseSecond(this.min)) !== null && _a !== void 0 ? _a : 0;
878
- const maxSecond = (_b = this.parseSecond(this.max)) !== null && _b !== void 0 ? _b : 59;
870
+ const minSecond = this.parseSecond(this.min) ?? 0;
871
+ const maxSecond = this.parseSecond(this.max) ?? 59;
879
872
  if (minSecond === 0 && maxSecond === 0)
880
873
  return ['00']; // Handle edge case for zero seconds
881
874
  const values = [];
@@ -914,7 +907,6 @@ const NvFieldtime = class {
914
907
  this.updateHighlightedItem(items, index);
915
908
  }
916
909
  handleHostClick(event) {
917
- var _a, _b;
918
910
  if (this.disabled || this.readonly) {
919
911
  return;
920
912
  }
@@ -929,8 +921,8 @@ const NvFieldtime = class {
929
921
  const visibleTypes = getVisibleTimeTypes(this.format);
930
922
  const firstVisibleType = visibleTypes[0];
931
923
  if (firstVisibleType && this.inputElements[firstVisibleType]) {
932
- (_a = this.inputElements[firstVisibleType]) === null || _a === void 0 ? void 0 : _a.focus();
933
- (_b = this.inputElements[firstVisibleType]) === null || _b === void 0 ? void 0 : _b.select();
924
+ this.inputElements[firstVisibleType]?.focus();
925
+ this.inputElements[firstVisibleType]?.select();
934
926
  }
935
927
  }
936
928
  event.preventDefault();
@@ -1088,11 +1080,11 @@ const NvFieldtime = class {
1088
1080
  };
1089
1081
  // Remove min/max constraints from input elements to allow native stepper behavior
1090
1082
  // Constraints are only applied to dropdown options, not input steppers
1091
- return (index.h("input", Object.assign({ ref: el => (this.inputElements[type] = el), type: "number", autofocus: this.autofocus && type === getVisibleTimeTypes(this.format)[0], class: "time-input", pattern: "[0-9]*", maxlength: "3", value: getValue(), onInput: e => this.handleInputChange(e, type), placeholder: getPlaceholder(), inputMode: "numeric", onFocus: () => this.handleFocus(type), name: this.name ? `${type}-${this.name}` : type, id: getId(), readonly: this.readonly, disabled: this.disabled, required: this.getRequiredAttributes().useNativeRequired
1083
+ return (index.h("input", { ref: el => (this.inputElements[type] = el), type: "number", autofocus: this.autofocus && type === getVisibleTimeTypes(this.format)[0], class: "time-input", pattern: "[0-9]*", maxlength: "3", value: getValue(), onInput: e => this.handleInputChange(e, type), placeholder: getPlaceholder(), inputMode: "numeric", onFocus: () => this.handleFocus(type), name: this.name ? `${type}-${this.name}` : type, id: getId(), readonly: this.readonly, disabled: this.disabled, required: this.getRequiredAttributes().useNativeRequired
1092
1084
  ? this.required
1093
- : undefined }, (this.getRequiredAttributes().ariaRequiredValue !== undefined && {
1094
- 'aria-required': String(this.getRequiredAttributes().ariaRequiredValue),
1095
- }), { onKeyDown: e => this.handleKeyDown(e), onBlur: () => this.handleInputBlur() })));
1085
+ : undefined, ...(this.getRequiredAttributes().ariaRequiredValue !== undefined && {
1086
+ 'aria-required': String(this.getRequiredAttributes().ariaRequiredValue),
1087
+ }), onKeyDown: e => this.handleKeyDown(e), onBlur: () => this.handleInputBlur() }));
1096
1088
  }
1097
1089
  /**
1098
1090
  * Renders dropdown columns based on the current format
@@ -1112,18 +1104,24 @@ const NvFieldtime = class {
1112
1104
  }, key: `${option}-${index$1}`, onClick: e => this.handleTimeOptionClick(e, type) }, option)))));
1113
1105
  }
1114
1106
  render() {
1115
- return (index.h(index.Host, { key: '04306e30d631f8d3f87f13cc4ea2b7122d03b21b', onclick: (e) => this.handleHostClick(e), "aria-expanded": this.open ? 'true' : 'false' }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: '3508543a3c689ce6db828d065c741c505c3c19ff', htmlFor: this.inputId }, index.h("slot", { key: '3ff5d281c755263365f6bc7de4bc71faa568a8a5', name: "label" }, this.label))), index.h("nv-popover", { key: '13f0a73cd22882f2f46803d591a11b822fd588dd', ref: el => (this.popoverElement = el), triggerMode: "controlled", placement: "bottom-start", open: this.open, onOpenChanged: this.handleOpenChanged }, index.h("div", { key: '43795c7f1bb3184d7d9c6336d6346eb1319c7a43', class: "input-wrapper", slot: "trigger" }, index.h("slot", { key: '5e1ab0236585f3b4d399ed37bfa39c984a10f164', name: "before-input" }), index.h("div", { key: 'c891d3e9de705c020da2af1c4b2bc4c7f9301533', class: "input-container" }, index.h("slot", { key: '97b5768bac85ca701b028235c4fe2e0630b1d9f6', name: "leading-input" }), this.renderTimeInputFields(), index.h("nv-iconbutton", { key: '034dc1f211459292c4ad63f65a5c1b6a7585306e', name: 'clock', size: "md", emphasis: "lower", "aria-label": this.open ? 'Hide time picker' : 'Show time picker', onClick: () => this.HandleDropdownIconClick() }), this.error && (index.h("nv-icon", { key: '2ed7cbacce3086068c6501ebc3fb4da458582a01', name: "alert-circle", class: "validation", size: "sm" })), this.success && (index.h("nv-icon", { key: '529d8b6a9e0f0a29786a1b0f5afc621c08f2a94b', name: "circle-check", class: "validation", size: "sm" }))), index.h("slot", { key: '0b805e12dedf7bfd1f92bee632c2c9ca4d3d4951', name: "after-input" })), index.h("div", { key: '658cf205b234a1a802b0a36d2c07ad1ee7730c38', class: "time-dropdown", slot: "content" }, index.h("div", { key: 'f87b6b12004d100a0a109f7b93c9be0a01a69a9f', class: "time-columns" }, this.renderTimeDropdownColumns()))), (this.description ||
1116
- this.el.querySelector('[slot="description"]')) && (index.h("div", { key: 'd733ca3ed3361dacb0e5654b3be5bf56aafc9afd', class: "description" }, index.h("slot", { key: 'b487727f07900c7759e7739516fe3610116f77b8', name: "description" }, this.description))), (this.errorDescription ||
1117
- this.el.querySelector('[slot="error-description"]')) && (index.h("div", { key: '5dbad695497c12fed1c8c3930dacb7a9a1bffa00', hidden: !this.error, class: "error-description" }, index.h("slot", { key: 'f35c4b0afa87a18810a229f16d3c48936c66a47f', name: "error-description" }, this.errorDescription)))));
1107
+ return (index.h(index.Host, { key: '021f0592f7a4eae1b249f12c668b3ce805546593', onclick: (e) => this.handleHostClick(e), "aria-expanded": this.open ? 'true' : 'false' }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: '6c105236217cb0c6b326e3ecea4bc38bfa4353f2', htmlFor: this.inputId }, index.h("slot", { key: 'f4c2dbce6a50d648970acc57d8367194635b7e82', name: "label" }, this.label))), index.h("nv-popover", { key: 'b852ec86ace95303e1e7445765a334819135766f', ref: el => (this.popoverElement = el), triggerMode: "controlled", placement: "bottom-start", open: this.open, onOpenChanged: this.handleOpenChanged }, index.h("div", { key: '2ddd521de9665e64095090a187b52d9fdb207dfb', class: "input-wrapper", slot: "trigger" }, index.h("slot", { key: 'e8ea5e1abc5b9b502e942e2a118184233677384f', name: "before-input" }), index.h("div", { key: '3d3a8e00ace3bab58b57305a68aac46863a61f36', class: "input-container" }, index.h("slot", { key: '2a1f88fc38b5d956f9d71d181f787ace20199588', name: "leading-input" }), this.renderTimeInputFields(), index.h("nv-iconbutton", { key: '497d5b2cdea39e83b0cb83eb6a9adbb18e57b952', name: 'clock', size: "md", emphasis: "lower", "aria-label": this.open ? 'Hide time picker' : 'Show time picker', onClick: () => this.HandleDropdownIconClick() }), this.error && (index.h("nv-icon", { key: 'e223b6faa4a476fe68aa9ae3c54e27dd0ff2017b', name: "alert-circle", class: "validation", size: "sm" })), this.success && (index.h("nv-icon", { key: 'ec7a22c2005d297c25959d16c8326ebe7bc80dde', name: "circle-check", class: "validation", size: "sm" }))), index.h("slot", { key: 'b12336e4d2708b3d5c25db1a4c5b761bf954e27b', name: "after-input" })), index.h("div", { key: '3a341dc72b2ece47841521817f5e44ca4b2286d1', class: "time-dropdown", slot: "content" }, index.h("div", { key: 'b67f1f796f0a2155210d6f6937264170f1fff7c3', class: "time-columns" }, this.renderTimeDropdownColumns()))), (this.description ||
1108
+ this.el.querySelector('[slot="description"]')) && (index.h("div", { key: 'b31b8401c4eb3a12ff466f389345ab8179f9ca5b', class: "description" }, index.h("slot", { key: '8a81cc74fb35d10f34f9abd372a58758227a4937', name: "description" }, this.description))), (this.errorDescription ||
1109
+ this.el.querySelector('[slot="error-description"]')) && (index.h("div", { key: '87e16ffc6ed5983850271c18ea762671ef1f99ad', hidden: !this.error, class: "error-description" }, index.h("slot", { key: '154a889711ce35c28bab77c64418c0bdcc912fc0', name: "error-description" }, this.errorDescription)))));
1118
1110
  }
1119
1111
  static get formAssociated() { return true; }
1120
1112
  get el() { return index.getElement(this); }
1121
1113
  static get watchers() { return {
1122
- "value": ["handleValueChange"],
1123
- "open": ["handleOpenChange"],
1124
- "format": ["handleFormatChange"]
1114
+ "value": [{
1115
+ "handleValueChange": 0
1116
+ }],
1117
+ "open": [{
1118
+ "handleOpenChange": 0
1119
+ }],
1120
+ "format": [{
1121
+ "handleFormatChange": 0
1122
+ }]
1125
1123
  }; }
1126
1124
  };
1127
- NvFieldtime.style = nvFieldtimeCss;
1125
+ NvFieldtime.style = nvFieldtimeCss();
1128
1126
 
1129
1127
  exports.nv_fieldtime = NvFieldtime;