@aquera/nile-elements 1.6.0 → 1.6.2

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 (235) hide show
  1. package/README.md +9 -0
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.js +1103 -629
  5. package/dist/internal/enum.cjs.js +1 -1
  6. package/dist/internal/enum.cjs.js.map +1 -1
  7. package/dist/internal/enum.esm.js +1 -1
  8. package/dist/nile-badge/index.cjs.js +1 -1
  9. package/dist/nile-badge/index.esm.js +1 -1
  10. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  11. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  12. package/dist/nile-badge/nile-badge.esm.js +1 -1
  13. package/dist/nile-button/index.cjs.js +1 -1
  14. package/dist/nile-button/index.esm.js +1 -1
  15. package/dist/nile-button/nile-button.cjs.js +1 -1
  16. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  17. package/dist/nile-button/nile-button.esm.js +1 -1
  18. package/dist/nile-carousel/index.cjs.js +1 -1
  19. package/dist/nile-carousel/index.esm.js +1 -1
  20. package/dist/nile-carousel/nile-carousel.cjs.js +1 -1
  21. package/dist/nile-carousel/nile-carousel.cjs.js.map +1 -1
  22. package/dist/nile-carousel/nile-carousel.esm.js +1 -1
  23. package/dist/nile-dialog/index.cjs.js +1 -1
  24. package/dist/nile-dialog/index.esm.js +1 -1
  25. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  26. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  27. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  28. package/dist/nile-drawer/index.cjs.js +1 -1
  29. package/dist/nile-drawer/index.esm.js +1 -1
  30. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  31. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  32. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  33. package/dist/nile-floating-panel/index.cjs.js +1 -1
  34. package/dist/nile-floating-panel/index.esm.js +1 -1
  35. package/dist/nile-floating-panel/nile-floating-panel.cjs.js +1 -1
  36. package/dist/nile-floating-panel/nile-floating-panel.cjs.js.map +1 -1
  37. package/dist/nile-floating-panel/nile-floating-panel.css.cjs.js +1 -1
  38. package/dist/nile-floating-panel/nile-floating-panel.css.cjs.js.map +1 -1
  39. package/dist/nile-floating-panel/nile-floating-panel.css.esm.js +137 -21
  40. package/dist/nile-floating-panel/nile-floating-panel.esm.js +1 -1
  41. package/dist/nile-icon/icons/svg/folder_delete.cjs.js +2 -0
  42. package/dist/nile-icon/icons/svg/folder_delete.cjs.js.map +1 -0
  43. package/dist/nile-icon/icons/svg/folder_delete.esm.js +1 -0
  44. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  45. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  46. package/dist/nile-icon/icons/svg/layers-three-02.cjs.js +1 -1
  47. package/dist/nile-icon/icons/svg/layers-three-02.cjs.js.map +1 -1
  48. package/dist/nile-icon/icons/svg/layers-three-02.esm.js +1 -1
  49. package/dist/nile-icon/index.cjs.js +1 -1
  50. package/dist/nile-icon/index.cjs.js.map +1 -1
  51. package/dist/nile-icon/index.esm.js +1 -1
  52. package/dist/nile-icon-button/index.cjs.js +1 -1
  53. package/dist/nile-icon-button/index.esm.js +1 -1
  54. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  55. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  56. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  57. package/dist/nile-input/index.cjs.js +1 -1
  58. package/dist/nile-input/index.esm.js +1 -1
  59. package/dist/nile-input/nile-input.cjs.js +1 -1
  60. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  61. package/dist/nile-input/nile-input.esm.js +1 -1
  62. package/dist/nile-lite-tooltip/index.cjs.js +1 -1
  63. package/dist/nile-lite-tooltip/index.esm.js +1 -1
  64. package/dist/nile-lite-tooltip/nile-lite-tooltip.cjs.js +1 -1
  65. package/dist/nile-lite-tooltip/nile-lite-tooltip.cjs.js.map +1 -1
  66. package/dist/nile-lite-tooltip/nile-lite-tooltip.esm.js +1 -1
  67. package/dist/nile-menu-item/index.cjs.js +1 -1
  68. package/dist/nile-menu-item/index.esm.js +1 -1
  69. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  70. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  71. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  72. package/dist/nile-option/index.cjs.js +1 -1
  73. package/dist/nile-option/index.esm.js +1 -1
  74. package/dist/nile-option/nile-option.cjs.js +1 -1
  75. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  76. package/dist/nile-option/nile-option.esm.js +1 -1
  77. package/dist/nile-otp-input/index.cjs.js +2 -0
  78. package/dist/nile-otp-input/index.cjs.js.map +1 -0
  79. package/dist/nile-otp-input/index.esm.js +1 -0
  80. package/dist/nile-otp-input/nile-otp-input.cjs.js +2 -0
  81. package/dist/nile-otp-input/nile-otp-input.cjs.js.map +1 -0
  82. package/dist/nile-otp-input/nile-otp-input.css.cjs.js +2 -0
  83. package/dist/nile-otp-input/nile-otp-input.css.cjs.js.map +1 -0
  84. package/dist/nile-otp-input/nile-otp-input.css.esm.js +257 -0
  85. package/dist/nile-otp-input/nile-otp-input.enum.cjs.js +2 -0
  86. package/dist/nile-otp-input/nile-otp-input.enum.cjs.js.map +1 -0
  87. package/dist/nile-otp-input/nile-otp-input.enum.esm.js +1 -0
  88. package/dist/nile-otp-input/nile-otp-input.esm.js +103 -0
  89. package/dist/nile-select/index.cjs.js +1 -1
  90. package/dist/nile-select/index.esm.js +1 -1
  91. package/dist/nile-select/nile-select.cjs.js +1 -1
  92. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  93. package/dist/nile-select/nile-select.esm.js +1 -1
  94. package/dist/nile-side-bar-action-menu-item/index.cjs.js +1 -1
  95. package/dist/nile-side-bar-action-menu-item/index.esm.js +1 -1
  96. package/dist/nile-side-bar-action-menu-item/nile-side-bar-action-menu-item.cjs.js +1 -1
  97. package/dist/nile-side-bar-action-menu-item/nile-side-bar-action-menu-item.cjs.js.map +1 -1
  98. package/dist/nile-side-bar-action-menu-item/nile-side-bar-action-menu-item.esm.js +1 -1
  99. package/dist/nile-tab/index.cjs.js +1 -1
  100. package/dist/nile-tab/index.esm.js +1 -1
  101. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  102. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  103. package/dist/nile-tab/nile-tab.esm.js +1 -1
  104. package/dist/nile-tab-group/index.cjs.js +1 -1
  105. package/dist/nile-tab-group/index.esm.js +1 -1
  106. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  107. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  108. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  109. package/dist/nile-tag/index.cjs.js +1 -1
  110. package/dist/nile-tag/index.esm.js +1 -1
  111. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  112. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  113. package/dist/nile-tag/nile-tag.esm.js +1 -1
  114. package/dist/nile-toast/index.cjs.js +1 -1
  115. package/dist/nile-toast/index.esm.js +1 -1
  116. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  117. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  118. package/dist/nile-toast/nile-toast.esm.js +1 -1
  119. package/dist/nile-tree/index.cjs.js +1 -1
  120. package/dist/nile-tree/index.esm.js +1 -1
  121. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  122. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  123. package/dist/nile-tree/nile-tree.esm.js +1 -1
  124. package/dist/nile-tree-item/index.cjs.js +1 -1
  125. package/dist/nile-tree-item/index.esm.js +1 -1
  126. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  127. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  128. package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
  129. package/dist/nile-virtual-select/index.cjs.js +1 -1
  130. package/dist/nile-virtual-select/index.esm.js +1 -1
  131. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +2 -2
  132. package/dist/nile-virtual-select/nile-virtual-select.esm.js +1 -1
  133. package/dist/src/index.d.ts +2 -1
  134. package/dist/src/index.js +2 -1
  135. package/dist/src/index.js.map +1 -1
  136. package/dist/src/internal/enum.d.ts +21 -0
  137. package/dist/src/internal/enum.js +23 -1
  138. package/dist/src/internal/enum.js.map +1 -1
  139. package/dist/src/nile-floating-panel/index.js.map +1 -1
  140. package/dist/src/nile-floating-panel/nile-floating-panel.css.d.ts +1 -1
  141. package/dist/src/nile-floating-panel/nile-floating-panel.css.js +147 -20
  142. package/dist/src/nile-floating-panel/nile-floating-panel.css.js.map +1 -1
  143. package/dist/src/nile-floating-panel/nile-floating-panel.d.ts +92 -24
  144. package/dist/src/nile-floating-panel/nile-floating-panel.js +489 -159
  145. package/dist/src/nile-floating-panel/nile-floating-panel.js.map +1 -1
  146. package/dist/src/nile-icon/icons/svg/folder_delete.d.ts +5 -0
  147. package/dist/src/nile-icon/icons/svg/folder_delete.js +5 -0
  148. package/dist/src/nile-icon/icons/svg/folder_delete.js.map +1 -0
  149. package/dist/src/nile-icon/icons/svg/index.d.ts +1 -0
  150. package/dist/src/nile-icon/icons/svg/index.js +1 -0
  151. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  152. package/dist/src/nile-icon/icons/svg/layers-three-02.d.ts +1 -1
  153. package/dist/src/nile-icon/icons/svg/layers-three-02.js +1 -1
  154. package/dist/src/nile-icon/icons/svg/layers-three-02.js.map +1 -1
  155. package/dist/src/nile-otp-input/index.d.ts +1 -0
  156. package/dist/src/nile-otp-input/index.js +2 -0
  157. package/dist/src/nile-otp-input/index.js.map +1 -0
  158. package/dist/src/nile-otp-input/nile-otp-input.css.d.ts +12 -0
  159. package/dist/src/nile-otp-input/nile-otp-input.css.js +269 -0
  160. package/dist/src/nile-otp-input/nile-otp-input.css.js.map +1 -0
  161. package/dist/src/nile-otp-input/nile-otp-input.d.ts +156 -0
  162. package/dist/src/nile-otp-input/nile-otp-input.enum.d.ts +26 -0
  163. package/dist/src/nile-otp-input/nile-otp-input.enum.js +32 -0
  164. package/dist/src/nile-otp-input/nile-otp-input.enum.js.map +1 -0
  165. package/dist/src/nile-otp-input/nile-otp-input.js +762 -0
  166. package/dist/src/nile-otp-input/nile-otp-input.js.map +1 -0
  167. package/dist/src/nile-otp-input/nile-otp-input.test.d.ts +1 -0
  168. package/dist/src/nile-otp-input/nile-otp-input.test.js +493 -0
  169. package/dist/src/nile-otp-input/nile-otp-input.test.js.map +1 -0
  170. package/dist/src/version.js +2 -2
  171. package/dist/src/version.js.map +1 -1
  172. package/dist/tippy.esm-57628c2b.esm.js +1 -0
  173. package/dist/tippy.esm-78baa8f2.cjs.js +2 -0
  174. package/dist/tippy.esm-78baa8f2.cjs.js.map +1 -0
  175. package/dist/tsconfig.tsbuildinfo +1 -1
  176. package/package.json +5 -3
  177. package/plop-templates/lit/index.ts.hbs +1 -1
  178. package/plop-templates/lit/lit.css.ts.hbs +1 -1
  179. package/plop-templates/lit/lit.ts.hbs +1 -1
  180. package/src/index.ts +3 -2
  181. package/src/internal/enum.ts +23 -1
  182. package/src/nile-floating-panel/index.ts +0 -1
  183. package/src/nile-floating-panel/nile-floating-panel.css.ts +149 -21
  184. package/src/nile-floating-panel/nile-floating-panel.ts +498 -190
  185. package/src/nile-icon/icons/svg/folder_delete.ts +5 -0
  186. package/src/nile-icon/icons/svg/index.ts +1 -0
  187. package/src/nile-icon/icons/svg/layers-three-02.ts +1 -1
  188. package/src/nile-otp-input/index.ts +1 -0
  189. package/src/nile-otp-input/nile-otp-input.css.ts +271 -0
  190. package/src/nile-otp-input/nile-otp-input.enum.ts +30 -0
  191. package/src/nile-otp-input/nile-otp-input.test.ts +732 -0
  192. package/src/nile-otp-input/nile-otp-input.ts +835 -0
  193. package/vscode-html-custom-data.json +383 -23
  194. package/dist/nile-floating-panel/anchor-manager.cjs.js +0 -2
  195. package/dist/nile-floating-panel/anchor-manager.cjs.js.map +0 -1
  196. package/dist/nile-floating-panel/anchor-manager.esm.js +0 -1
  197. package/dist/nile-floating-panel/content-manager.cjs.js +0 -2
  198. package/dist/nile-floating-panel/content-manager.cjs.js.map +0 -1
  199. package/dist/nile-floating-panel/content-manager.esm.js +0 -1
  200. package/dist/nile-floating-panel/event-manager.cjs.js +0 -2
  201. package/dist/nile-floating-panel/event-manager.cjs.js.map +0 -1
  202. package/dist/nile-floating-panel/event-manager.esm.js +0 -1
  203. package/dist/nile-floating-panel/position-manager.cjs.js +0 -2
  204. package/dist/nile-floating-panel/position-manager.cjs.js.map +0 -1
  205. package/dist/nile-floating-panel/position-manager.esm.js +0 -1
  206. package/dist/nile-floating-panel/style-manager.cjs.js +0 -2
  207. package/dist/nile-floating-panel/style-manager.cjs.js.map +0 -1
  208. package/dist/nile-floating-panel/style-manager.esm.js +0 -1
  209. package/dist/nile-floating-panel/types.cjs.js +0 -2
  210. package/dist/nile-floating-panel/types.cjs.js.map +0 -1
  211. package/dist/nile-floating-panel/types.esm.js +0 -1
  212. package/dist/src/nile-floating-panel/anchor-manager.d.ts +0 -6
  213. package/dist/src/nile-floating-panel/anchor-manager.js +0 -27
  214. package/dist/src/nile-floating-panel/anchor-manager.js.map +0 -1
  215. package/dist/src/nile-floating-panel/content-manager.d.ts +0 -5
  216. package/dist/src/nile-floating-panel/content-manager.js +0 -44
  217. package/dist/src/nile-floating-panel/content-manager.js.map +0 -1
  218. package/dist/src/nile-floating-panel/event-manager.d.ts +0 -14
  219. package/dist/src/nile-floating-panel/event-manager.js +0 -52
  220. package/dist/src/nile-floating-panel/event-manager.js.map +0 -1
  221. package/dist/src/nile-floating-panel/position-manager.d.ts +0 -17
  222. package/dist/src/nile-floating-panel/position-manager.js +0 -72
  223. package/dist/src/nile-floating-panel/position-manager.js.map +0 -1
  224. package/dist/src/nile-floating-panel/style-manager.d.ts +0 -9
  225. package/dist/src/nile-floating-panel/style-manager.js +0 -44
  226. package/dist/src/nile-floating-panel/style-manager.js.map +0 -1
  227. package/dist/src/nile-floating-panel/types.d.ts +0 -11
  228. package/dist/src/nile-floating-panel/types.js +0 -2
  229. package/dist/src/nile-floating-panel/types.js.map +0 -1
  230. package/src/nile-floating-panel/anchor-manager.ts +0 -33
  231. package/src/nile-floating-panel/content-manager.ts +0 -54
  232. package/src/nile-floating-panel/event-manager.ts +0 -74
  233. package/src/nile-floating-panel/position-manager.ts +0 -102
  234. package/src/nile-floating-panel/style-manager.ts +0 -54
  235. package/src/nile-floating-panel/types.ts +0 -15
@@ -0,0 +1,257 @@
1
+ import{css as r}from"lit";const o=r`
2
+ :host {
3
+ display: block;
4
+ --ng-private-outline-transparent: var(--ng-border-width-1) solid transparent;
5
+ -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing, antialiased));
6
+ -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing, grayscale));
7
+ text-rendering: var(--nile-text-rendering, var(--ng-text-rendering, optimizeLegibility));
8
+ }
9
+
10
+ .form-control {
11
+ display: flex;
12
+ flex-direction: column;
13
+ gap: var(--nile-spacing-sm, var(--ng-spacing-1-5));
14
+ align-items: flex-start;
15
+ }
16
+
17
+ .form-control .form-control__label {
18
+ display: none;
19
+ }
20
+
21
+ .form-control--has-label .form-control__label {
22
+ display: inline-block;
23
+ color: var(--nile-colors-dark-900, var(--ng-colors-text-secondary-700));
24
+ font-family: var(--nile-font-family-serif, var(--ng-font-family-body ));
25
+ font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm ));
26
+ font-style: normal;
27
+ font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-500 ));
28
+ line-height: var(--nile-type-scale-6, var(--ng-line-height-text-sm ));
29
+ letter-spacing: 0.2px;
30
+ }
31
+
32
+ :host([required]) .form-control--has-label .form-control__label::after {
33
+ content: '*';
34
+ margin-inline-start: -2px;
35
+ color: var(--nile-colors-red-700, var(--ng-colors-text-error-primary-600));
36
+ }
37
+
38
+ .otp {
39
+ position: relative;
40
+ display: flex;
41
+ align-items: center;
42
+ gap: var(--nile-spacing-md, var(--ng-spacing-2));
43
+ width: fit-content;
44
+ max-width: 100%;
45
+ }
46
+
47
+ /* ---- Base cell ---- */
48
+
49
+ .otp__cell {
50
+ box-sizing: border-box;
51
+ width: var(--nile-spacing-5xl, var(--ng-spacing-10));
52
+ height: var(--nile-spacing-5xl, var(--ng-spacing-10));
53
+ min-height: var(--nile-spacing-5xl, var(--ng-spacing-10));
54
+ padding: var(--nile-spacing-xxs, var(--ng-spacing-0-5)) var(--nile-spacing-md, var(--ng-spacing-2));
55
+ border: 1px solid var(--nile-colors-border-field, var(--ng-colors-border-primary));
56
+ border-radius: var(--nile-radius-radius-2xl, var(--ng-radius-lg));
57
+ background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));
58
+ box-shadow: var(--nile-box-shadow-1, var(--ng-shadow-xs));
59
+ outline: var(--nile-outline-none, var(--ng-private-outline-transparent));
60
+ color: var(--nile-colors-dark-500, var(--ng-colors-text-placeholder-subtle));
61
+ text-align: center;
62
+ font-family: var(--nile-font-family, var(--ng-font-family-display));
63
+ font-size: var(--nile-type-scale-4, var(--ng-font-size-text-md));
64
+ font-style: normal;
65
+ font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-500));
66
+ line-height: var(--nile-type-scale-4, var(--ng-line-height-text-md));
67
+ letter-spacing: 0.2px;
68
+ overflow: clip;
69
+ caret-color: transparent;
70
+ cursor: pointer;
71
+ transition: 150ms color, 150ms border, 150ms box-shadow, 150ms background-color, 150ms outline;
72
+ }
73
+
74
+ .otp__cell[type='password'] {
75
+ font-family: caption;
76
+ letter-spacing: 0;
77
+ }
78
+ /* ---- Hover (mirrors .input--standard:hover) ---- */
79
+
80
+ .otp:not(.otp--disabled):not(.otp--readonly) .otp__cell:hover {
81
+ border-color: var(--nile-colors-dark-900, var(--ng-colors-border-neutral));
82
+ }
83
+
84
+ .otp--warning:not(.otp--disabled) .otp__cell:hover {
85
+ border-color: var(--nile-colors-dark-900, var(--ng-colors-border-warning));
86
+ }
87
+
88
+ .otp--error:not(.otp--disabled) .otp__cell:hover {
89
+ border-color: var(--nile-colors-dark-900, var(--ng-colors-border-error));
90
+ }
91
+
92
+ .otp--success:not(.otp--disabled) .otp__cell:hover {
93
+ border-color: var(--nile-colors-dark-900, var(--ng-colors-border-success));
94
+ }
95
+
96
+ /* ---- Focus / active cell (mirrors .input--standard.input--focused) ---- */
97
+
98
+ .otp__cell:focus {
99
+ outline: none;
100
+ background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary));
101
+ border-color: var(--nile-colors-primary-500, var(--ng-colors-border-brand ));
102
+ box-shadow: var(--nile-input-shadow-standard-focused-not-disabled, var(--ng-box-shadow-1));
103
+ }
104
+
105
+ .otp__cell--active {
106
+ position: relative;
107
+ cursor: text;
108
+ caret-color: auto;
109
+ background-color: var(--nile-colors-white-base, var(--ng-colors-bg-primary ));
110
+ border-color: var(--nile-colors-primary-500, var(--ng-colors-border-brand ));
111
+ box-shadow: var(--nile-input-shadow-standard-focused-not-disabled, var(--ng-box-shadow-1));
112
+ }
113
+
114
+ .otp__cell--active::before {
115
+ content: "";
116
+ position: absolute;
117
+ inset: 0;
118
+ pointer-events: none;
119
+ border-radius: inherit;
120
+ box-shadow: inset 0 0 0 1px var(--nile-colors-primary-500, var(--ng-colors-border-brand));
121
+ }
122
+
123
+ .otp--warning .otp__cell:focus,
124
+ .otp--warning .otp__cell--active {
125
+ border-color: var(--nile-colors-primary-500, var(--ng-colors-border-warning));
126
+ box-shadow: var(--nile-input-shadow-standard-focused-not-disabled, var(--ng-box-shadow-1));
127
+ outline: var(--nile-border-width-1, var(--ng-border-width-1)) solid var(--nile-outline-none, var(--ng-colors-border-warning));
128
+ }
129
+
130
+ .otp--warning .otp__cell--active::before {
131
+ box-shadow: inset 0 0 0 1px var(--nile-colors-yellow-500, var(--ng-colors-border-warning));
132
+ }
133
+
134
+ .otp--success .otp__cell:focus,
135
+ .otp--success .otp__cell--active {
136
+ border-color: var(--nile-colors-primary-500, var(--ng-colors-border-success));
137
+ box-shadow: var(--nile-input-shadow-standard-focused-not-disabled, var(--ng-box-shadow-1));
138
+ outline: var(--nile-border-width-1, var(--ng-border-width-1)) solid var(--nile-outline-none, var(--ng-colors-border-success));
139
+ }
140
+
141
+ .otp--success .otp__cell--active::before {
142
+ box-shadow: inset 0 0 0 1px var(--nile-colors-green-500, var(--ng-colors-border-success));
143
+ }
144
+
145
+ .otp--error .otp__cell:focus,
146
+ .otp--error .otp__cell--active {
147
+ border-color: var(--nile-colors-primary-500, var(--ng-colors-border-error));
148
+ box-shadow: var(--nile-input-shadow-standard-focused-not-disabled, var(--ng-box-shadow-1));
149
+ outline: var(--nile-border-width-1, var(--ng-border-width-1)) solid var(--nile-outline-none, var(--ng-colors-border-error));
150
+ }
151
+
152
+ .otp--error .otp__cell--active::before {
153
+ box-shadow: inset 0 0 0 1px var(--nile-colors-red-500, var(--ng-colors-border-error));
154
+ }
155
+
156
+ .otp__cell::selection {
157
+ background-color: var(--nile-colors-primary-600, var(--ng-colors-bg-brand-primary ));
158
+ color: var(--nile-colors-white-base, var(--ng-colors-fg-white));
159
+ }
160
+
161
+ .otp__cell::placeholder {
162
+ color: var(--nile-colors-dark-500, var(--ng-colors-text-placeholder-subtle));
163
+ opacity: 0.9;
164
+ font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-500));
165
+ }
166
+
167
+ /* ---- Separator ---- */
168
+
169
+ .otp__separator {
170
+ display: inline-flex;
171
+ align-items: center;
172
+ justify-content: center;
173
+ flex-shrink: 0;
174
+ color: var(--nile-colors-dark-500, var(--ng-colors-text-placeholder-subtle));
175
+ font-family: var(--nile-font-family, var(--ng-font-family-display ));
176
+ font-size: var(--nile-type-scale-7, var(--ng-font-size-text-xl));
177
+ font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-500));
178
+ line-height: var(--nile-type-scale-7, var(--ng-line-height-text-xl));
179
+ user-select: none;
180
+ }
181
+
182
+ /* ---- State: warning ---- */
183
+
184
+ .otp--warning .otp__cell {
185
+ border-color: var(--nile-colors-yellow-500, var(--ng-colors-border-warning-subtle ));
186
+ }
187
+
188
+ /* ---- State: error ---- */
189
+
190
+ .otp--error .otp__cell {
191
+ border-color: var(--nile-colors-red-500, var(--ng-colors-border-error-subtle ));
192
+ }
193
+
194
+ /* ---- State: success ---- */
195
+
196
+ .otp--success .otp__cell {
197
+ border-color: var(--nile-colors-green-500, var(--ng-colors-border-success-subtle));
198
+ }
199
+
200
+ /* ---- State: readonly ---- */
201
+
202
+ .otp--readonly .otp__cell {
203
+ cursor: default;
204
+ }
205
+
206
+ /* ---- State: disabled (mirrors .input--standard.input--disabled) ---- */
207
+
208
+ .otp--disabled .otp__cell {
209
+ cursor: not-allowed;
210
+ color: var(--nile-colors-neutral-500, var(--ng-colors-text-disabled ));
211
+ border-color: var(--nile-colors-neutral-500, var(--ng-colors-border-disabled ));
212
+ background-color: var(--nile-colors-white-base, var(--ng-colors-bg-disabled-subtle ));
213
+ }
214
+
215
+ .otp--disabled .otp__cell::placeholder {
216
+ color: var(--nile-input-standard-disabled-placeholder-font-color, var(--ng-colors-text-disabled ));
217
+ }
218
+
219
+ /* ---- Hidden value input ---- */
220
+
221
+ .otp__value-input {
222
+ position: absolute;
223
+ top: 0;
224
+ left: 0;
225
+ width: 100%;
226
+ height: 100%;
227
+ padding: 0;
228
+ margin: 0;
229
+ opacity: 0;
230
+ z-index: -1;
231
+ pointer-events: none;
232
+ }
233
+
234
+ /* ---- Help text ---- */
235
+
236
+ .form-control__help-text {
237
+ color: var(--nile-colors-dark-900, var(--ng-colors-text-tertiary-600));
238
+ font-family: var(--nile-font-family-serif, var(--ng-font-family-body ));
239
+ font-size: var(--nile-type-scale-2, var(--ng-font-size-text-sm ));
240
+ font-style: normal;
241
+ font-weight: var(--nile-font-weight-regular, var(--ng-font-weight-400 ));
242
+ line-height: var(--nile-type-scale-2, var(--ng-line-height-text-sm ));
243
+ letter-spacing: 0.2px;
244
+ }
245
+
246
+ /* ---- Error message ---- */
247
+
248
+ .form-control__error-message {
249
+ display: block;
250
+ color: var(--nile-colors-red-700, var(--ng-colors-text-error-primary-600));
251
+ margin-top: var(--nile-spacing-lg, var(--ng-spacing-1-5 ));
252
+ font-size: var(--nile-type-scale-2, var(--ng-font-size-text-sm ));
253
+ font-style: normal;
254
+ line-height: var(--nile-form-error-text-line-height, var(--ng-line-height-text-sm));
255
+ letter-spacing: 0.2px;
256
+ }
257
+ `;export{o as s};
@@ -0,0 +1,2 @@
1
+ System.register([],function(_export,_context){"use strict";var n,e,t,a,o;_export({a:void 0,b:void 0,d:void 0,O:void 0,c:void 0});return{setters:[],execute:function execute(){!function(n){n.NONE="none",n.TEXT="text",n.DECIMAL="decimal",n.NUMERIC="numeric",n.TEL="tel",n.SEARCH="search",n.EMAIL="email",n.URL="url";}(n||_export("a",n={})),function(n){n.TEXT="text",n.PASSWORD="password";}(e||_export("b",e={})),function(n){n.DONE="done",n.NEXT="next";}(t||_export("d",t={})),function(n){n.ONE_TIME_CODE="one-time-code",n.OFF="off";}(a||_export("O",a={})),function(n){n.NUMERIC="[0-9]*",n.ALPHANUMERIC="[A-Za-z0-9]*";}(o||_export("c",o={}));}};});
2
+ //# sourceMappingURL=nile-otp-input.enum.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-otp-input.enum.cjs.js","sources":["../../../src/nile-otp-input/nile-otp-input.enum.ts"],"sourcesContent":["export enum OtpInputMode {\n NONE = 'none',\n TEXT = 'text',\n DECIMAL = 'decimal',\n NUMERIC = 'numeric',\n TEL = 'tel',\n SEARCH = 'search',\n EMAIL = 'email',\n URL = 'url',\n}\n\nexport enum OtpInputType {\n TEXT = 'text',\n PASSWORD = 'password',\n}\n\nexport enum OtpEnterKeyHint {\n DONE = 'done',\n NEXT = 'next',\n}\n\nexport enum OtpAutoComplete {\n ONE_TIME_CODE = 'one-time-code',\n OFF = 'off',\n}\n\nexport enum OtpCellPattern {\n NUMERIC = '[0-9]*',\n ALPHANUMERIC = '[A-Za-z0-9]*',\n}\n"],"names":["OtpInputMode","NONE","TEXT","DECIMAL","NUMERIC","TEL","SEARCH","EMAIL","URL","OtpInputType","PASSWORD","OtpEnterKeyHint","DONE","NEXT","OtpAutoComplete","ONE_TIME_CODE","OFF","OtpCellPattern","ALPHANUMERIC"],"mappings":"+KAAA,SAAYA,CAAAA,CAAAA,CACVA,EAAAC,IAAA,CAAA,MAAA,CACAD,EAAAE,IAAA,CAAA,MAAA,CACAF,EAAAG,OAAA,CAAA,SAAA,CACAH,EAAAI,OAAA,CAAA,SAAA,CACAJ,CAAA,CAAAK,GAAA,CAAA,KACAL,CAAAA,CAAAA,CAAAM,OAAA,QACAN,CAAAA,CAAAA,CAAAO,MAAA,OACAP,CAAAA,CAAAA,CAAAQ,IAAA,KACD,EATD,CAAYR,CAAAA,EAAAA,OAAAA,KAAAA,CAAAA,CASX,CAAA,CAED,CAAA,CAAA,CAAA,SAAYS,GACVA,CAAA,CAAAP,IAAA,CAAA,OACAO,CAAA,CAAAC,QAAA,CAAA,UACD,EAHD,CAAYD,CAAAA,EAAAA,OAAAA,KAAAA,EAGX,CAAA,CAAA,CAAA,CAAA,CAED,SAAYE,CACVA,CAAAA,CAAAA,CAAAA,CAAAC,KAAA,MACAD,CAAAA,CAAAA,CAAAE,KAAA,MACD,EAHD,CAAYF,CAAAA,EAAAA,OAAAA,KAAAA,CAAAA,CAGX,CAAA,CAED,CAAA,CAAA,CAAA,SAAYG,GACVA,CAAA,CAAAC,aAAA,CAAA,eACAD,CAAAA,CAAAA,CAAAE,GAAA,CAAA,KACD,EAHD,CAAYF,CAAAA,EAAAA,OAAAA,KAAAA,EAGX,CAAA,CAAA,CAAA,CAAA,CAED,SAAYG,CACVA,CAAAA,CAAAA,CAAAA,CAAAb,QAAA,QACAa,CAAAA,CAAAA,CAAAC,aAAA,cACD,EAHD,CAAYD,CAAAA,EAAAA,OAAAA,KAAAA,CAAAA,CAGX,CAAA"}
@@ -0,0 +1 @@
1
+ var n,e,t,a,o;!function(n){n.NONE="none",n.TEXT="text",n.DECIMAL="decimal",n.NUMERIC="numeric",n.TEL="tel",n.SEARCH="search",n.EMAIL="email",n.URL="url"}(n||(n={})),function(n){n.TEXT="text",n.PASSWORD="password"}(e||(e={})),function(n){n.DONE="done",n.NEXT="next"}(t||(t={})),function(n){n.ONE_TIME_CODE="one-time-code",n.OFF="off"}(a||(a={})),function(n){n.NUMERIC="[0-9]*",n.ALPHANUMERIC="[A-Za-z0-9]*"}(o||(o={}));export{a as O,n as a,e as b,o as c,t as d};
@@ -0,0 +1,103 @@
1
+ import{__decorate as t}from"tslib";import{html as i}from"lit";import{query as e,queryAll as s,state as r,property as h,customElement as l}from"lit/decorators.js";import{classMap as a}from"lit/directives/class-map.js";import{ifDefined as o}from"lit/directives/if-defined.js";import{live as n}from"lit/directives/live.js";import{d}from"../internal/default-value.esm.js";import{F as u,v as c}from"../internal/form.esm.js";import{H as p}from"../internal/slot.esm.js";import{w as m}from"../internal/watch.esm.js";import{N as f}from"../internal/nile-element.esm.js";import{N as v,K as b}from"../internal/enum.esm.js";import{s as g}from"./nile-otp-input.css.esm.js";import{O as y,a as $,b as C,c as x,d as _}from"./nile-otp-input.enum.esm.js";import"../nile-form-help-text/nile-form-help-text.esm.js";import"../nile-form-error-message/nile-form-error-message.esm.js";import"../nile-form-help-text/nile-form-help-text.css.esm.js";import"../nile-form-error-message/nile-form-error-message.css.esm.js";let j=class extends f{constructor(){super(...arguments),this.formControlController=new u(this,{assumeInteractionOn:[v.NILE_BLUR,v.NILE_INPUT]}),this.hasSlotController=new p(this,"help-text","label"),this.customValidationMessage="",this.wasComplete=!1,this.hasFocus=!1,this.activeIndex=-1,this.cells=this.createCells(""),this.name="",this.value="",this.defaultValue="",this.length=6,this.numericOnly=!0,this.alphanumeric=!1,this.label="",this.helpText="",this.errorMessage="",this.placeholder="",this.separator="",this.separatorEvery=0,this.separatorPositions="",this.masked=!1,this.warning=!1,this.error=!1,this.success=!1,this.disabled=!1,this.readonly=!1,this.form="",this.required=!1,this.autofocus=!1,this.autocomplete=y.ONE_TIME_CODE}connectedCallback(){super.connectedCallback(),this.emit(v.NILE_INIT)}disconnectedCallback(){super.disconnectedCallback(),this.emit(v.NILE_DESTROY)}firstUpdated(){const t=this.normalizeValue(this.value);t===this.value?(this.syncCellsFromValue(t),this.wasComplete=this.isComplete(t),this.valueInput.setCustomValidity(this.customValidationMessage),this.formControlController.updateValidity(),this.autofocus&&this.focus()):this.value=t}get validity(){return this.valueInput?.validity??c}get validationMessage(){return this.valueInput?.validationMessage??""}get complete(){return this.isComplete(this.value)}getNormalizedLength(){const t=Number.isFinite(this.length)?Math.trunc(this.length):6;return Math.max(4,t)}isNumericMode(){return this.numericOnly&&!this.alphanumeric}getResolvedInputMode(){return this.inputmode??(this.isNumericMode()?$.NUMERIC:$.TEXT)}getValidationPattern(){if(this.pattern)return this.pattern;const t=this.getNormalizedLength();return this.isNumericMode()?`[0-9]{${t}}`:`[A-Za-z0-9]{${t}}`}isAllowedCharacter(t){return this.isNumericMode()?/^[0-9]$/.test(t):/^[A-Za-z0-9]$/.test(t)}toOtpCharacters(t){return Array.from(t??"").filter((t=>this.isAllowedCharacter(t)))}normalizeValue(t){return this.toOtpCharacters(t??"").slice(0,this.getNormalizedLength()).join("")}createCells(t){const i=this.getNormalizedLength(),e=this.toOtpCharacters(t).slice(0,i);return Array.from({length:i},((t,i)=>e[i]??""))}syncCellsFromValue(t){this.cells=this.createCells(t)}isComplete(t){return t.length===this.getNormalizedLength()}getFirstEmptyIndex(){const t=this.cells.findIndex((t=>""===t));return-1===t?this.getNormalizedLength()-1:t}getSeparatorIndices(){const t=this.getNormalizedLength()-2,i=new Set;if(Number.isInteger(this.separatorEvery)&&this.separatorEvery>0)for(let e=this.separatorEvery-1;e<=t;e+=this.separatorEvery)i.add(e);return this.separatorPositions.trim().length>0&&this.separatorPositions.split(",").map((t=>Number.parseInt(t.trim(),10))).filter((i=>Number.isInteger(i)&&i>=0&&i<=t)).forEach((t=>i.add(t))),i}getCellPlaceholder(t){if(this.placeholder&&!this.cells[t])return-1===this.activeIndex?t===this.getFirstEmptyIndex()?this.placeholder:void 0:t===this.activeIndex?this.placeholder:void 0}focusCell(t,i){const e=this.cellInputs?.[t];e&&(e.focus(i),e.select())}updateCell(t,i){const e=[...this.cells];e[t]=i,this.cells=e}fillFromIndex(t,i){const e=[...this.cells];let s=t;for(const t of i){if(s>=e.length)break;e[s]=t,s+=1}return this.cells=e,s}commitUserValueUpdate(){const t=this.value,i=this.cells.join(""),e=this.isComplete(i);this.value=i,this.valueInput.value=i,this.valueInput.setCustomValidity(this.customValidationMessage),this.formControlController.updateValidity(),this.emit(v.NILE_INPUT,{value:i,complete:e}),t!==i&&this.emit(v.NILE_CHANGE,{value:i,complete:e}),e&&!this.wasComplete&&this.emit(v.NILE_COMPLETE,{value:i}),this.wasComplete=e}handleInvalid(t){this.formControlController.setValidity(!1),this.formControlController.emitInvalidEvent(t)}handleCellFocus(t){const i=t.target,e=Number(i.dataset.index??-1),s=this.getFirstEmptyIndex();e>s||e<s&&!this.cells[e]?this.focusCell(s):(this.activeIndex=e,i.select(),this.hasFocus||(this.hasFocus=!0,this.emit(v.NILE_FOCUS,{value:this.value})))}handleCellBlur(){queueMicrotask((()=>{const t=this.shadowRoot?.activeElement;!(t instanceof HTMLInputElement&&t.classList.contains("otp__cell"))&&this.hasFocus&&(this.hasFocus=!1,this.activeIndex=-1,this.emit(v.NILE_BLUR,{value:this.value}))}))}handleCellInput(t){const i=t.target,e=Number(i.dataset.index??0);if(this.disabled||this.readonly)return void(i.value=this.cells[e]??"");const s=this.toOtpCharacters(i.value);if(0===s.length)return this.updateCell(e,""),void this.commitUserValueUpdate();if(1===s.length){this.updateCell(e,s[0]),this.commitUserValueUpdate();const t=this.getFirstEmptyIndex();return void this.focusCell(t)}this.fillFromIndex(e,s),this.commitUserValueUpdate();const r=this.getFirstEmptyIndex();this.focusCell(r)}handleCellPaste(t){if(this.disabled||this.readonly)return;const i=t.clipboardData?.getData("text")??"",e=this.toOtpCharacters(i);if(!e.length)return;t.preventDefault(),this.fillFromIndex(0,e),this.commitUserValueUpdate();const s=this.getFirstEmptyIndex();this.focusCell(s),this.emit(v.NILE_PASTE,{value:this.value})}handleCellKeyDown(t){const i=t.metaKey||t.ctrlKey||t.altKey,e=t.target,s=Number(e.dataset.index??0);if(t.key===b.ENTER&&!i&&!t.shiftKey)return void setTimeout((()=>{t.defaultPrevented||t.isComposing||this.formControlController.submit()}));if(this.disabled||this.readonly)return;if(t.key===b.BACKSPACE||t.key===b.DELETE||t.key===b.ARROW_LEFT||t.key===b.ARROW_RIGHT||t.key===b.HOME||t.key===b.END||t.key===b.SPACE||1===t.key.length&&!i){if(t.preventDefault(),t.key===b.BACKSPACE)return this.cells[s]?(this.updateCell(s,""),this.commitUserValueUpdate(),void(s>0&&this.focusCell(s-1))):void(s>0&&(this.updateCell(s-1,""),this.commitUserValueUpdate(),this.focusCell(s-1)));if(t.key!==b.DELETE)if(t.key!==b.ARROW_LEFT)if(t.key!==b.ARROW_RIGHT)if(t.key!==b.HOME)if(t.key!==b.END){if(t.key!==b.SPACE&&1===t.key.length&&!i&&this.isAllowedCharacter(t.key)){this.updateCell(s,t.key),this.commitUserValueUpdate();const i=this.getFirstEmptyIndex();this.focusCell(i)}}else this.focusCell(this.getFirstEmptyIndex());else this.focusCell(0);else{s<this.getFirstEmptyIndex()&&this.focusCell(s+1)}else s>0&&this.focusCell(s-1);else this.cells[s]&&(this.updateCell(s,""),this.commitUserValueUpdate())}}handleLengthChange(){const t=this.getNormalizedLength();if(this.length!==t)return void(this.length=t);const i=this.normalizeValue(this.value);this.syncCellsFromValue(i),i===this.value?(this.wasComplete=this.isComplete(i),this.valueInput.value=i,this.valueInput.setCustomValidity(this.customValidationMessage),this.formControlController.updateValidity()):this.value=i}handleValueChange(){const t=this.normalizeValue(this.value);t===this.value?(this.syncCellsFromValue(t),this.wasComplete=this.isComplete(t),this.valueInput.value=t,this.valueInput.setCustomValidity(this.customValidationMessage),this.formControlController.updateValidity()):this.value=t}handleDisabledChange(){this.disabled?(this.hasFocus=!1,this.activeIndex=-1,this.formControlController.setValidity(!0)):this.formControlController.updateValidity()}handleNumericOnlyChange(){const t=this.normalizeValue(this.value);t===this.value?(this.syncCellsFromValue(t),this.wasComplete=this.isComplete(t),this.valueInput.value=t,this.valueInput.setCustomValidity(this.customValidationMessage),this.formControlController.updateValidity()):this.value=t}handlePatternChange(){this.valueInput.setCustomValidity(this.customValidationMessage),this.formControlController.updateValidity()}checkValidity(){return this.valueInput.checkValidity()}getForm(){return this.formControlController.getForm()}reportValidity(){return this.valueInput.reportValidity()}setCustomValidity(t){this.customValidationMessage=t,this.valueInput&&this.valueInput.setCustomValidity(t),this.formControlController.updateValidity()}focus(t){this.focusCell(this.getFirstEmptyIndex(),t)}blur(){const t=this.shadowRoot?.activeElement;t instanceof HTMLElement&&t.blur()}clear(){this.disabled||this.readonly||(this.cells=Array.from({length:this.getNormalizedLength()},(()=>"")),this.commitUserValueUpdate(),this.focusCell(0))}render(){const t=this.getNormalizedLength(),e=this.getSeparatorIndices(),s=this.hasSlotController.test("label"),r=this.hasSlotController.test("help-text"),h=Boolean(this.label||s),l=Boolean(this.helpText||r),d=Boolean(this.errorMessage),u=[l?"help-text":"",d?"error-message":""].filter(Boolean).join(" ");return i`
2
+ <div
3
+ part="form-control"
4
+ class=${a({"form-control":!0,"form-control--has-label":h})}
5
+ >
6
+ <label
7
+ id="label"
8
+ part="form-control-label"
9
+ class="form-control__label"
10
+ aria-hidden=${h?"false":"true"}
11
+ >
12
+ <slot name="label">${this.label}</slot>
13
+ </label>
14
+
15
+ <div part="form-control-input" class="form-control-input">
16
+ <div
17
+ part="base"
18
+ class=${a({otp:!0,"otp--warning":this.warning,"otp--error":this.error,"otp--success":this.success,"otp--disabled":this.disabled,"otp--readonly":this.readonly})}
19
+ role="group"
20
+ aria-labelledby=${o(h?"label":void 0)}
21
+ aria-label=${o(h?void 0:"One-time password")}
22
+ aria-describedby=${o(u||void 0)}
23
+ aria-disabled=${this.disabled?"true":"false"}
24
+ >
25
+ ${Array.from({length:t},((s,r)=>{const h=this.cells[r]??"";return i`
26
+ <input
27
+ part="cell"
28
+ class=${a({otp__cell:!0,"otp__cell--active":this.activeIndex===r})}
29
+ data-index=${r}
30
+ type=${this.masked&&h&&this.activeIndex!==r?C.PASSWORD:C.TEXT}
31
+ maxlength="1"
32
+ .value=${n(h)}
33
+ ?disabled=${this.disabled}
34
+ ?readonly=${this.readonly}
35
+ placeholder=${o(this.getCellPlaceholder(r))}
36
+ inputmode=${o(this.getResolvedInputMode())}
37
+ pattern=${this.isNumericMode()?x.NUMERIC:x.ALPHANUMERIC}
38
+ autocapitalize="none"
39
+ autocorrect="off"
40
+ spellcheck="false"
41
+ autocomplete=${0===r?this.autocomplete:y.OFF}
42
+ enterkeyhint=${r===t-1?_.DONE:_.NEXT}
43
+ aria-label=${`Digit ${r+1} of ${t}`}
44
+ aria-describedby=${o(u||void 0)}
45
+ aria-invalid=${this.hasAttribute("data-user-invalid")?"true":"false"}
46
+ @focus=${this.handleCellFocus}
47
+ @blur=${this.handleCellBlur}
48
+ @keydown=${this.handleCellKeyDown}
49
+ @input=${this.handleCellInput}
50
+ @paste=${this.handleCellPaste}
51
+ />
52
+ ${this.separator&&e.has(r)?i`
53
+ <span
54
+ class="otp__separator"
55
+ part="separator"
56
+ aria-hidden="true"
57
+ >
58
+ ${this.separator}
59
+ </span>
60
+ `:""}
61
+ `}))}
62
+
63
+ <input
64
+ class="otp__value-input"
65
+ type="text"
66
+ .value=${n(this.value)}
67
+ ?required=${this.required}
68
+ ?disabled=${this.disabled}
69
+ minlength=${t}
70
+ maxlength=${t}
71
+ pattern=${this.getValidationPattern()}
72
+ tabindex="-1"
73
+ aria-hidden="true"
74
+ @focus=${()=>this.focus()}
75
+ @invalid=${this.handleInvalid}
76
+ />
77
+ </div>
78
+ </div>
79
+
80
+ ${l?i`
81
+ <div
82
+ id="help-text"
83
+ part="form-control-help-text"
84
+ class="form-control__help-text"
85
+ >
86
+ <nile-form-help-text>
87
+ <slot name="help-text">${this.helpText}</slot>
88
+ </nile-form-help-text>
89
+ </div>
90
+ `:""}
91
+ ${d?i`
92
+ <div
93
+ id="error-message"
94
+ part="form-control-error-message"
95
+ class="form-control__error-message"
96
+ >
97
+ <nile-form-error-message
98
+ >${this.errorMessage}</nile-form-error-message
99
+ >
100
+ </div>
101
+ `:""}
102
+ </div>
103
+ `}};j.styles=g,t([e(".otp__value-input")],j.prototype,"valueInput",void 0),t([s(".otp__cell")],j.prototype,"cellInputs",void 0),t([r()],j.prototype,"hasFocus",void 0),t([r()],j.prototype,"activeIndex",void 0),t([r()],j.prototype,"cells",void 0),t([h({reflect:!0,type:String,attribute:!0})],j.prototype,"name",void 0),t([h({reflect:!0,type:String,attribute:!0})],j.prototype,"value",void 0),t([d()],j.prototype,"defaultValue",void 0),t([h({type:Number,reflect:!0,attribute:!0})],j.prototype,"length",void 0),t([h({type:Boolean,reflect:!0,attribute:!0})],j.prototype,"numericOnly",void 0),t([h({type:Boolean,reflect:!0,attribute:!0})],j.prototype,"alphanumeric",void 0),t([h({reflect:!0,attribute:!0,type:String})],j.prototype,"label",void 0),t([h({attribute:!0,reflect:!0,type:String})],j.prototype,"helpText",void 0),t([h({attribute:!0,reflect:!0,type:String})],j.prototype,"errorMessage",void 0),t([h({reflect:!0,attribute:!0,type:String})],j.prototype,"placeholder",void 0),t([h({reflect:!0,type:String})],j.prototype,"separator",void 0),t([h({type:Number,attribute:!0,reflect:!0})],j.prototype,"separatorEvery",void 0),t([h({attribute:"separator-positions",type:String,reflect:!0})],j.prototype,"separatorPositions",void 0),t([h({type:Boolean,reflect:!0})],j.prototype,"masked",void 0),t([h({type:Boolean,attribute:!0,reflect:!0})],j.prototype,"warning",void 0),t([h({type:Boolean,attribute:!0,reflect:!0})],j.prototype,"error",void 0),t([h({type:Boolean,attribute:!0,reflect:!0})],j.prototype,"success",void 0),t([h({type:Boolean,reflect:!0,attribute:!0})],j.prototype,"disabled",void 0),t([h({type:Boolean,attribute:!0,reflect:!0})],j.prototype,"readonly",void 0),t([h({reflect:!0,attribute:!0,type:String})],j.prototype,"form",void 0),t([h({type:Boolean,reflect:!0,attribute:!0})],j.prototype,"required",void 0),t([h({reflect:!0,attribute:!0,type:String})],j.prototype,"pattern",void 0),t([h({type:Boolean,reflect:!0,attribute:!0})],j.prototype,"autofocus",void 0),t([h({reflect:!0,attribute:!0,type:String})],j.prototype,"inputmode",void 0),t([h({reflect:!0,type:String})],j.prototype,"autocomplete",void 0),t([m("length",{waitUntilFirstUpdate:!0})],j.prototype,"handleLengthChange",null),t([m("value",{waitUntilFirstUpdate:!0})],j.prototype,"handleValueChange",null),t([m("disabled",{waitUntilFirstUpdate:!0})],j.prototype,"handleDisabledChange",null),t([m("numericOnly",{waitUntilFirstUpdate:!0})],j.prototype,"handleNumericOnlyChange",null),t([m("pattern",{waitUntilFirstUpdate:!0})],j.prototype,"handlePatternChange",null),j=t([l("nile-otp-input")],j);export{j as N};