@aquera/nile-elements 0.1.73-beta-1.9 → 0.1.73

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 (309) hide show
  1. package/README.md +5 -0
  2. package/dist/index.js +10 -9
  3. package/dist/nile-input/nile-input.cjs.js +1 -1
  4. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  5. package/dist/nile-input/nile-input.esm.js +2 -2
  6. package/dist/nile-option-group/nile-option-group.cjs.js +1 -1
  7. package/dist/nile-option-group/nile-option-group.cjs.js.map +1 -1
  8. package/dist/nile-option-group/nile-option-group.esm.js +1 -1
  9. package/dist/nile-radio/nile-radio.cjs.js +1 -1
  10. package/dist/nile-radio/nile-radio.cjs.js.map +1 -1
  11. package/dist/nile-radio/nile-radio.esm.js +2 -2
  12. package/dist/nile-radio-group/nile-radio-group.cjs.js +1 -1
  13. package/dist/nile-radio-group/nile-radio-group.cjs.js.map +1 -1
  14. package/dist/nile-radio-group/nile-radio-group.esm.js +2 -2
  15. package/dist/nile-select/nile-select.cjs.js +1 -1
  16. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  17. package/dist/nile-select/nile-select.esm.js +3 -2
  18. package/dist/src/nile-input/nile-input.d.ts +1 -0
  19. package/dist/src/nile-input/nile-input.js +4 -1
  20. package/dist/src/nile-input/nile-input.js.map +1 -1
  21. package/dist/src/nile-option-group/nile-option-group.js +1 -1
  22. package/dist/src/nile-option-group/nile-option-group.js.map +1 -1
  23. package/dist/src/nile-radio/nile-radio.d.ts +1 -0
  24. package/dist/src/nile-radio/nile-radio.js +8 -1
  25. package/dist/src/nile-radio/nile-radio.js.map +1 -1
  26. package/dist/src/nile-radio-group/nile-radio-group.d.ts +4 -1
  27. package/dist/src/nile-radio-group/nile-radio-group.js +25 -2
  28. package/dist/src/nile-radio-group/nile-radio-group.js.map +1 -1
  29. package/dist/src/nile-select/nile-select.d.ts +4 -1
  30. package/dist/src/nile-select/nile-select.js +13 -1
  31. package/dist/src/nile-select/nile-select.js.map +1 -1
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/package.json +1 -1
  34. package/src/nile-input/nile-input.ts +5 -1
  35. package/src/nile-option-group/nile-option-group.ts +1 -1
  36. package/src/nile-radio/nile-radio.ts +7 -1
  37. package/src/nile-radio-group/nile-radio-group.ts +26 -4
  38. package/src/nile-select/nile-select.ts +13 -3
  39. package/vscode-html-custom-data.json +18 -3
  40. package/dist/axe.min-2b379f29.cjs.js +0 -12
  41. package/dist/axe.min-2b379f29.cjs.js.map +0 -1
  42. package/dist/axe.min-c2cd8733.esm.js +0 -12
  43. package/dist/fixture-2b5b3aba.esm.js +0 -569
  44. package/dist/fixture-7bfb866e.cjs.js +0 -395
  45. package/dist/fixture-7bfb866e.cjs.js.map +0 -1
  46. package/dist/fixture-e7023246.esm.js +0 -569
  47. package/dist/fixture-fe6c932e.cjs.js +0 -395
  48. package/dist/fixture-fe6c932e.cjs.js.map +0 -1
  49. package/dist/src/nile-icon/icons/svg/ng-action.d.ts +0 -5
  50. package/dist/src/nile-icon/icons/svg/ng-action.js +0 -5
  51. package/dist/src/nile-icon/icons/svg/ng-action.js.map +0 -1
  52. package/dist/src/nile-icon/icons/svg/ng-activity.d.ts +0 -5
  53. package/dist/src/nile-icon/icons/svg/ng-activity.js +0 -5
  54. package/dist/src/nile-icon/icons/svg/ng-activity.js.map +0 -1
  55. package/dist/src/nile-icon/icons/svg/ng-alert-circle.d.ts +0 -5
  56. package/dist/src/nile-icon/icons/svg/ng-alert-circle.js +0 -5
  57. package/dist/src/nile-icon/icons/svg/ng-alert-circle.js.map +0 -1
  58. package/dist/src/nile-icon/icons/svg/ng-align-center.d.ts +0 -5
  59. package/dist/src/nile-icon/icons/svg/ng-align-center.js +0 -5
  60. package/dist/src/nile-icon/icons/svg/ng-align-center.js.map +0 -1
  61. package/dist/src/nile-icon/icons/svg/ng-annotation-x.d.ts +0 -5
  62. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js +0 -5
  63. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js.map +0 -1
  64. package/dist/src/nile-icon/icons/svg/ng-arrow-down.d.ts +0 -5
  65. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js +0 -5
  66. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js.map +0 -1
  67. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.d.ts +0 -5
  68. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js +0 -5
  69. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js.map +0 -1
  70. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.d.ts +0 -5
  71. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js +0 -5
  72. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js.map +0 -1
  73. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +0 -5
  74. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +0 -5
  75. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +0 -1
  76. package/dist/src/nile-icon/icons/svg/ng-arrow-up.d.ts +0 -5
  77. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js +0 -5
  78. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js.map +0 -1
  79. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.d.ts +0 -5
  80. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js +0 -5
  81. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js.map +0 -1
  82. package/dist/src/nile-icon/icons/svg/ng-bell-01.d.ts +0 -5
  83. package/dist/src/nile-icon/icons/svg/ng-bell-01.js +0 -5
  84. package/dist/src/nile-icon/icons/svg/ng-bell-01.js.map +0 -1
  85. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.d.ts +0 -5
  86. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js +0 -5
  87. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js.map +0 -1
  88. package/dist/src/nile-icon/icons/svg/ng-bold-01.d.ts +0 -5
  89. package/dist/src/nile-icon/icons/svg/ng-bold-01.js +0 -5
  90. package/dist/src/nile-icon/icons/svg/ng-bold-01.js.map +0 -1
  91. package/dist/src/nile-icon/icons/svg/ng-building-01.d.ts +0 -5
  92. package/dist/src/nile-icon/icons/svg/ng-building-01.js +0 -5
  93. package/dist/src/nile-icon/icons/svg/ng-building-01.js.map +0 -1
  94. package/dist/src/nile-icon/icons/svg/ng-building-05.d.ts +0 -5
  95. package/dist/src/nile-icon/icons/svg/ng-building-05.js +0 -5
  96. package/dist/src/nile-icon/icons/svg/ng-building-05.js.map +0 -1
  97. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.d.ts +0 -5
  98. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js +0 -5
  99. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js.map +0 -1
  100. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.d.ts +0 -5
  101. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js +0 -5
  102. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js.map +0 -1
  103. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.d.ts +0 -5
  104. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js +0 -5
  105. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js.map +0 -1
  106. package/dist/src/nile-icon/icons/svg/ng-calendar.d.ts +0 -5
  107. package/dist/src/nile-icon/icons/svg/ng-calendar.js +0 -5
  108. package/dist/src/nile-icon/icons/svg/ng-calendar.js.map +0 -1
  109. package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.d.ts +0 -5
  110. package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js +0 -5
  111. package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js.map +0 -1
  112. package/dist/src/nile-icon/icons/svg/ng-check-circle.d.ts +0 -5
  113. package/dist/src/nile-icon/icons/svg/ng-check-circle.js +0 -5
  114. package/dist/src/nile-icon/icons/svg/ng-check-circle.js.map +0 -1
  115. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.d.ts +0 -5
  116. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js +0 -5
  117. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js.map +0 -1
  118. package/dist/src/nile-icon/icons/svg/ng-check.d.ts +0 -5
  119. package/dist/src/nile-icon/icons/svg/ng-check.js +0 -5
  120. package/dist/src/nile-icon/icons/svg/ng-check.js.map +0 -1
  121. package/dist/src/nile-icon/icons/svg/ng-chevron-down.d.ts +0 -5
  122. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js +0 -5
  123. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js.map +0 -1
  124. package/dist/src/nile-icon/icons/svg/ng-chevron-left.d.ts +0 -5
  125. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js +0 -5
  126. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js.map +0 -1
  127. package/dist/src/nile-icon/icons/svg/ng-chevron-right.d.ts +0 -5
  128. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js +0 -5
  129. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js.map +0 -1
  130. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.d.ts +0 -5
  131. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js +0 -5
  132. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js.map +0 -1
  133. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.d.ts +0 -5
  134. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js +0 -5
  135. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js.map +0 -1
  136. package/dist/src/nile-icon/icons/svg/ng-chevron-up.d.ts +0 -5
  137. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js +0 -5
  138. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js.map +0 -1
  139. package/dist/src/nile-icon/icons/svg/ng-copy-03.d.ts +0 -5
  140. package/dist/src/nile-icon/icons/svg/ng-copy-03.js +0 -5
  141. package/dist/src/nile-icon/icons/svg/ng-copy-03.js.map +0 -1
  142. package/dist/src/nile-icon/icons/svg/ng-dataflow-04.d.ts +0 -5
  143. package/dist/src/nile-icon/icons/svg/ng-dataflow-04.js +0 -5
  144. package/dist/src/nile-icon/icons/svg/ng-dataflow-04.js.map +0 -1
  145. package/dist/src/nile-icon/icons/svg/ng-dots-grid.d.ts +0 -5
  146. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js +0 -5
  147. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js.map +0 -1
  148. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.d.ts +0 -5
  149. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js +0 -5
  150. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js.map +0 -1
  151. package/dist/src/nile-icon/icons/svg/ng-download-01.d.ts +0 -5
  152. package/dist/src/nile-icon/icons/svg/ng-download-01.js +0 -5
  153. package/dist/src/nile-icon/icons/svg/ng-download-01.js.map +0 -1
  154. package/dist/src/nile-icon/icons/svg/ng-dropdown.d.ts +0 -5
  155. package/dist/src/nile-icon/icons/svg/ng-dropdown.js +0 -5
  156. package/dist/src/nile-icon/icons/svg/ng-dropdown.js.map +0 -1
  157. package/dist/src/nile-icon/icons/svg/ng-edit-02.d.ts +0 -5
  158. package/dist/src/nile-icon/icons/svg/ng-edit-02.js +0 -5
  159. package/dist/src/nile-icon/icons/svg/ng-edit-02.js.map +0 -1
  160. package/dist/src/nile-icon/icons/svg/ng-edit-05.d.ts +0 -5
  161. package/dist/src/nile-icon/icons/svg/ng-edit-05.js +0 -5
  162. package/dist/src/nile-icon/icons/svg/ng-edit-05.js.map +0 -1
  163. package/dist/src/nile-icon/icons/svg/ng-expand-06.d.ts +0 -5
  164. package/dist/src/nile-icon/icons/svg/ng-expand-06.js +0 -5
  165. package/dist/src/nile-icon/icons/svg/ng-expand-06.js.map +0 -1
  166. package/dist/src/nile-icon/icons/svg/ng-eye-off.d.ts +0 -5
  167. package/dist/src/nile-icon/icons/svg/ng-eye-off.js +0 -5
  168. package/dist/src/nile-icon/icons/svg/ng-eye-off.js.map +0 -1
  169. package/dist/src/nile-icon/icons/svg/ng-eye.d.ts +0 -5
  170. package/dist/src/nile-icon/icons/svg/ng-eye.js +0 -5
  171. package/dist/src/nile-icon/icons/svg/ng-eye.js.map +0 -1
  172. package/dist/src/nile-icon/icons/svg/ng-file-02.d.ts +0 -5
  173. package/dist/src/nile-icon/icons/svg/ng-file-02.js +0 -5
  174. package/dist/src/nile-icon/icons/svg/ng-file-02.js.map +0 -1
  175. package/dist/src/nile-icon/icons/svg/ng-file-06.d.ts +0 -5
  176. package/dist/src/nile-icon/icons/svg/ng-file-06.js +0 -5
  177. package/dist/src/nile-icon/icons/svg/ng-file-06.js.map +0 -1
  178. package/dist/src/nile-icon/icons/svg/ng-file-check-02.d.ts +0 -5
  179. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js +0 -5
  180. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js.map +0 -1
  181. package/dist/src/nile-icon/icons/svg/ng-file-question-03.d.ts +0 -5
  182. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js +0 -5
  183. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js.map +0 -1
  184. package/dist/src/nile-icon/icons/svg/ng-filter-lines.d.ts +0 -5
  185. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js +0 -5
  186. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js.map +0 -1
  187. package/dist/src/nile-icon/icons/svg/ng-grid-01.d.ts +0 -5
  188. package/dist/src/nile-icon/icons/svg/ng-grid-01.js +0 -5
  189. package/dist/src/nile-icon/icons/svg/ng-grid-01.js.map +0 -1
  190. package/dist/src/nile-icon/icons/svg/ng-help-circle.d.ts +0 -5
  191. package/dist/src/nile-icon/icons/svg/ng-help-circle.js +0 -5
  192. package/dist/src/nile-icon/icons/svg/ng-help-circle.js.map +0 -1
  193. package/dist/src/nile-icon/icons/svg/ng-image-03.d.ts +0 -5
  194. package/dist/src/nile-icon/icons/svg/ng-image-03.js +0 -5
  195. package/dist/src/nile-icon/icons/svg/ng-image-03.js.map +0 -1
  196. package/dist/src/nile-icon/icons/svg/ng-image-user-left.d.ts +0 -5
  197. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js +0 -5
  198. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js.map +0 -1
  199. package/dist/src/nile-icon/icons/svg/ng-info-circle.d.ts +0 -5
  200. package/dist/src/nile-icon/icons/svg/ng-info-circle.js +0 -5
  201. package/dist/src/nile-icon/icons/svg/ng-info-circle.js.map +0 -1
  202. package/dist/src/nile-icon/icons/svg/ng-italic-01.d.ts +0 -5
  203. package/dist/src/nile-icon/icons/svg/ng-italic-01.js +0 -5
  204. package/dist/src/nile-icon/icons/svg/ng-italic-01.js.map +0 -1
  205. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.d.ts +0 -5
  206. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js +0 -5
  207. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js.map +0 -1
  208. package/dist/src/nile-icon/icons/svg/ng-list.d.ts +0 -5
  209. package/dist/src/nile-icon/icons/svg/ng-list.js +0 -5
  210. package/dist/src/nile-icon/icons/svg/ng-list.js.map +0 -1
  211. package/dist/src/nile-icon/icons/svg/ng-lock-03.d.ts +0 -5
  212. package/dist/src/nile-icon/icons/svg/ng-lock-03.js +0 -5
  213. package/dist/src/nile-icon/icons/svg/ng-lock-03.js.map +0 -1
  214. package/dist/src/nile-icon/icons/svg/ng-log-out-01.d.ts +0 -5
  215. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js +0 -5
  216. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js.map +0 -1
  217. package/dist/src/nile-icon/icons/svg/ng-mail-01.d.ts +0 -5
  218. package/dist/src/nile-icon/icons/svg/ng-mail-01.js +0 -5
  219. package/dist/src/nile-icon/icons/svg/ng-mail-01.js.map +0 -1
  220. package/dist/src/nile-icon/icons/svg/ng-mail-04.d.ts +0 -5
  221. package/dist/src/nile-icon/icons/svg/ng-mail-04.js +0 -5
  222. package/dist/src/nile-icon/icons/svg/ng-mail-04.js.map +0 -1
  223. package/dist/src/nile-icon/icons/svg/ng-marker-pin-01.d.ts +0 -5
  224. package/dist/src/nile-icon/icons/svg/ng-marker-pin-01.js +0 -5
  225. package/dist/src/nile-icon/icons/svg/ng-marker-pin-01.js.map +0 -1
  226. package/dist/src/nile-icon/icons/svg/ng-menu-05.d.ts +0 -5
  227. package/dist/src/nile-icon/icons/svg/ng-menu-05.js +0 -5
  228. package/dist/src/nile-icon/icons/svg/ng-menu-05.js.map +0 -1
  229. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.d.ts +0 -5
  230. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js +0 -5
  231. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js.map +0 -1
  232. package/dist/src/nile-icon/icons/svg/ng-minimize-02.d.ts +0 -5
  233. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js +0 -5
  234. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js.map +0 -1
  235. package/dist/src/nile-icon/icons/svg/ng-minus.d.ts +0 -5
  236. package/dist/src/nile-icon/icons/svg/ng-minus.js +0 -5
  237. package/dist/src/nile-icon/icons/svg/ng-minus.js.map +0 -1
  238. package/dist/src/nile-icon/icons/svg/ng-plus.d.ts +0 -5
  239. package/dist/src/nile-icon/icons/svg/ng-plus.js +0 -5
  240. package/dist/src/nile-icon/icons/svg/ng-plus.js.map +0 -1
  241. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.d.ts +0 -5
  242. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js +0 -5
  243. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js.map +0 -1
  244. package/dist/src/nile-icon/icons/svg/ng-rocket-02.d.ts +0 -5
  245. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js +0 -5
  246. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js.map +0 -1
  247. package/dist/src/nile-icon/icons/svg/ng-search-lg.d.ts +0 -5
  248. package/dist/src/nile-icon/icons/svg/ng-search-lg.js +0 -5
  249. package/dist/src/nile-icon/icons/svg/ng-search-lg.js.map +0 -1
  250. package/dist/src/nile-icon/icons/svg/ng-send-01.d.ts +0 -5
  251. package/dist/src/nile-icon/icons/svg/ng-send-01.js +0 -5
  252. package/dist/src/nile-icon/icons/svg/ng-send-01.js.map +0 -1
  253. package/dist/src/nile-icon/icons/svg/ng-settings-01.d.ts +0 -5
  254. package/dist/src/nile-icon/icons/svg/ng-settings-01.js +0 -5
  255. package/dist/src/nile-icon/icons/svg/ng-settings-01.js.map +0 -1
  256. package/dist/src/nile-icon/icons/svg/ng-share-04.d.ts +0 -5
  257. package/dist/src/nile-icon/icons/svg/ng-share-04.js +0 -5
  258. package/dist/src/nile-icon/icons/svg/ng-share-04.js.map +0 -1
  259. package/dist/src/nile-icon/icons/svg/ng-share-06.d.ts +0 -5
  260. package/dist/src/nile-icon/icons/svg/ng-share-06.js +0 -5
  261. package/dist/src/nile-icon/icons/svg/ng-share-06.js.map +0 -1
  262. package/dist/src/nile-icon/icons/svg/ng-stars-02.d.ts +0 -5
  263. package/dist/src/nile-icon/icons/svg/ng-stars-02.js +0 -5
  264. package/dist/src/nile-icon/icons/svg/ng-stars-02.js.map +0 -1
  265. package/dist/src/nile-icon/icons/svg/ng-trash-01.d.ts +0 -5
  266. package/dist/src/nile-icon/icons/svg/ng-trash-01.js +0 -5
  267. package/dist/src/nile-icon/icons/svg/ng-trash-01.js.map +0 -1
  268. package/dist/src/nile-icon/icons/svg/ng-trash-03.d.ts +0 -5
  269. package/dist/src/nile-icon/icons/svg/ng-trash-03.js +0 -5
  270. package/dist/src/nile-icon/icons/svg/ng-trash-03.js.map +0 -1
  271. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.d.ts +0 -5
  272. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js +0 -5
  273. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js.map +0 -1
  274. package/dist/src/nile-icon/icons/svg/ng-underline-01.d.ts +0 -5
  275. package/dist/src/nile-icon/icons/svg/ng-underline-01.js +0 -5
  276. package/dist/src/nile-icon/icons/svg/ng-underline-01.js.map +0 -1
  277. package/dist/src/nile-icon/icons/svg/ng-upload-01.d.ts +0 -5
  278. package/dist/src/nile-icon/icons/svg/ng-upload-01.js +0 -5
  279. package/dist/src/nile-icon/icons/svg/ng-upload-01.js.map +0 -1
  280. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.d.ts +0 -5
  281. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js +0 -5
  282. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js.map +0 -1
  283. package/dist/src/nile-icon/icons/svg/ng-user-01.d.ts +0 -5
  284. package/dist/src/nile-icon/icons/svg/ng-user-01.js +0 -5
  285. package/dist/src/nile-icon/icons/svg/ng-user-01.js.map +0 -1
  286. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.d.ts +0 -5
  287. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js +0 -5
  288. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js.map +0 -1
  289. package/dist/src/nile-icon/icons/svg/ng-user-check-02.d.ts +0 -5
  290. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js +0 -5
  291. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js.map +0 -1
  292. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.d.ts +0 -5
  293. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js +0 -5
  294. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js.map +0 -1
  295. package/dist/src/nile-icon/icons/svg/ng-user-right-01.d.ts +0 -5
  296. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js +0 -5
  297. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js.map +0 -1
  298. package/dist/src/nile-icon/icons/svg/ng-users-01.d.ts +0 -5
  299. package/dist/src/nile-icon/icons/svg/ng-users-01.js +0 -5
  300. package/dist/src/nile-icon/icons/svg/ng-users-01.js.map +0 -1
  301. package/dist/src/nile-icon/icons/svg/ng-x-circle.d.ts +0 -5
  302. package/dist/src/nile-icon/icons/svg/ng-x-circle.js +0 -5
  303. package/dist/src/nile-icon/icons/svg/ng-x-circle.js.map +0 -1
  304. package/dist/src/nile-icon/icons/svg/ng-x-close.d.ts +0 -5
  305. package/dist/src/nile-icon/icons/svg/ng-x-close.js +0 -5
  306. package/dist/src/nile-icon/icons/svg/ng-x-close.js.map +0 -1
  307. package/dist/src/nile-icon/icons/svg/ng-x-square.d.ts +0 -5
  308. package/dist/src/nile-icon/icons/svg/ng-x-square.js +0 -5
  309. package/dist/src/nile-icon/icons/svg/ng-x-square.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"nile-radio.js","sourceRoot":"","sources":["../../../src/nile-radio/nile-radio.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {LitElement, html, CSSResultArray, TemplateResult} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport {styles} from './nile-radio.css';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { state } from 'lit/decorators.js';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup } from 'lit';\n/**\n * Nile icon component.\n *\n * @tag nile-radio\n *\n *\n* @dependency nile-icon\n *\n * @slot - The radio's label.\n *\n * @event blur - Emitted when the control loses focus.\n * @event focus - Emitted when the control gains focus.\n *\n * @csspart base - The component's base wrapper.\n * @csspart control - The circular container that wraps the radio's checked state.\n * @csspart control--checked - The radio control when the radio is checked.\n * @csspart checked-icon - The checked icon, an `<nile-icon>` element.\n * @csspart label - The container that wraps the radio's label.\n */\n@customElement('nile-radio')\nexport class NileRadio extends NileElement {\n static styles: CSSResultGroup = styles;\n\n @property({type:Boolean}) checked = false;\n @state() protected hasFocus = false;\n\n /** The radio's value. When selected, the radio group will receive this value. */\n @property() value: string = '';\n\n /** The radio's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Disables the radio. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** The radio's labelborder. */\n @property({ type: Boolean, reflect: true }) islabelborder = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.handleBlur = this.handleBlur.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n\n this.setInitialAttributes();\n this.addEventListeners();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n this.removeEventListeners();\n this.emit('nile-destroy');\n }\n\n private addEventListeners() {\n this.addEventListener('blur', this.handleBlur);\n this.addEventListener('click', this.handleClick);\n this.addEventListener('focus', this.handleFocus);\n }\n\n private removeEventListeners() {\n this.removeEventListener('blur', this.handleBlur);\n this.removeEventListener('click', this.handleClick);\n this.removeEventListener('focus', this.handleFocus);\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur')\n }\n\n private handleClick() {\n if (!this.disabled) {\n this.checked = true;\n }\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus')\n }\n\n private setInitialAttributes() {\n this.setAttribute('role', 'radio');\n this.setAttribute('tabindex', '-1');\n this.setAttribute('aria-disabled', this.disabled ? 'true' : 'false');\n }\n\n @watch('checked')\n handleCheckedChange() {\n this.setAttribute('aria-checked', this.checked ? 'true' : 'false');\n this.setAttribute('tabindex', this.checked ? '0' : '-1');\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n this.setAttribute('aria-disabled', this.disabled ? 'true' : 'false');\n }\n\n render() {\n return html`\n <span\n part=\"base\"\n class=${classMap({\n radio: true,\n 'radio--checked': this.checked,\n 'radio--disabled': this.disabled,\n 'radio--focused': this.hasFocus,\n 'radio--medium': this.size === 'medium',\n 'radio__label_border':this.islabelborder\n })}\n >\n <span part=\"${`control${this.checked ? ' control--checked' : ''}`}\" class=\"radio__control\">\n ${this.checked\n ? html` <span class=\"radio__checked-icon\"></span> `\n : ''}\n </span>\n\n <slot part=\"label\" class=\"radio__label\"></slot>\n </span>\n `;\n }\n}\n\nexport default NileRadio;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-radio': NileRadio;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-radio.js","sourceRoot":"","sources":["../../../src/nile-radio/nile-radio.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAa,IAAI,EAAiC,MAAM,KAAK,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;;;;;;;;;;;;;;GAkBG;AAEI,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,WAAW;IAAnC;;QAGqB,YAAO,GAAG,KAAK,CAAC;QACvB,aAAQ,GAAG,KAAK,CAAC;QAEpC,iFAAiF;QACrE,UAAK,GAAW,EAAE,CAAC;QAE/B,wBAAwB;QACK,SAAI,GAAiC,QAAQ,CAAC;QAE3E,0BAA0B;QACkB,aAAQ,GAAG,KAAK,CAAC;QAE7D,+BAA+B;QACa,kBAAa,GAAG,KAAK,CAAC;QAGtB,iBAAY,GAAG,KAAK,CAAC;IAyFnE,CAAC;IAvFC,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IAED,oBAAoB;QAClB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC5B,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACxB,CAAC;IAEO,WAAW;QAEjB,IAAG,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;QAC/B,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACzB,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAGD,mBAAmB;QACjB,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACnE,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;IAGD,oBAAoB;QAClB,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACvE,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA;;;gBAGC,QAAQ,CAAC;YACf,KAAK,EAAE,IAAI;YACX,gBAAgB,EAAE,IAAI,CAAC,OAAO;YAC9B,iBAAiB,EAAE,IAAI,CAAC,QAAQ;YAChC,gBAAgB,EAAE,IAAI,CAAC,QAAQ;YAC/B,eAAe,EAAE,IAAI,CAAC,IAAI,KAAK,QAAQ;YACvC,qBAAqB,EAAC,IAAI,CAAC,aAAa;SACzC,CAAC;;sBAEY,UAAU,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7D,IAAI,CAAC,OAAO;YACZ,CAAC,CAAC,IAAI,CAAA,6CAA6C;YACnD,CAAC,CAAC,EAAE;;;;;KAKX,CAAC;IACJ,CAAC;;AA1GM,gBAAM,GAAmB,MAAM,AAAzB,CAA0B;AAEb;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,CAAC;0CAAiB;AACvB;IAAlB,KAAK,EAAE;2CAA4B;AAGxB;IAAX,QAAQ,EAAE;wCAAoB;AAGF;IAA5B,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;uCAA+C;AAG/B;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2CAAkB;AAGjB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAAuB;AAGtB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;+CAAsB;AAwDjE;IADC,KAAK,CAAC,SAAS,CAAC;oDAIhB;AAGD;IADC,KAAK,CAAC,UAAU,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;qDAGjD;AAnFU,SAAS;IADrB,aAAa,CAAC,YAAY,CAAC;GACf,SAAS,CA4GrB;;AAED,eAAe,SAAS,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {LitElement, html, CSSResultArray, TemplateResult} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport {styles} from './nile-radio.css';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { state } from 'lit/decorators.js';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport type { CSSResultGroup } from 'lit';\n/**\n * Nile icon component.\n *\n * @tag nile-radio\n *\n *\n* @dependency nile-icon\n *\n * @slot - The radio's label.\n *\n * @event blur - Emitted when the control loses focus.\n * @event focus - Emitted when the control gains focus.\n *\n * @csspart base - The component's base wrapper.\n * @csspart control - The circular container that wraps the radio's checked state.\n * @csspart control--checked - The radio control when the radio is checked.\n * @csspart checked-icon - The checked icon, an `<nile-icon>` element.\n * @csspart label - The container that wraps the radio's label.\n */\n@customElement('nile-radio')\nexport class NileRadio extends NileElement {\n static styles: CSSResultGroup = styles;\n\n @property({type:Boolean}) checked = false;\n @state() protected hasFocus = false;\n\n /** The radio's value. When selected, the radio group will receive this value. */\n @property() value: string = '';\n\n /** The radio's size. */\n @property({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Disables the radio. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** The radio's labelborder. */\n @property({ type: Boolean, reflect: true }) islabelborder = false;\n\n \n @property({ type: Boolean, reflect: true }) allowUncheck = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.handleBlur = this.handleBlur.bind(this);\n this.handleClick = this.handleClick.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n\n this.setInitialAttributes();\n this.addEventListeners();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n this.removeEventListeners();\n this.emit('nile-destroy');\n }\n\n private addEventListeners() {\n this.addEventListener('blur', this.handleBlur);\n this.addEventListener('click', this.handleClick);\n this.addEventListener('focus', this.handleFocus);\n }\n\n private removeEventListeners() {\n this.removeEventListener('blur', this.handleBlur);\n this.removeEventListener('click', this.handleClick);\n this.removeEventListener('focus', this.handleFocus);\n }\n\n private handleBlur() {\n this.hasFocus = false;\n this.emit('nile-blur')\n }\n\n private handleClick() {\n\n if(this.allowUncheck && !this.disabled) {\n this.checked = !this.checked;\n } else if (!this.disabled) {\n this.checked = true;\n }\n }\n\n private handleFocus() {\n this.hasFocus = true;\n this.emit('nile-focus')\n }\n\n private setInitialAttributes() {\n this.setAttribute('role', 'radio');\n this.setAttribute('tabindex', '-1');\n this.setAttribute('aria-disabled', this.disabled ? 'true' : 'false');\n }\n\n @watch('checked')\n handleCheckedChange() {\n this.setAttribute('aria-checked', this.checked ? 'true' : 'false');\n this.setAttribute('tabindex', this.checked ? '0' : '-1');\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n this.setAttribute('aria-disabled', this.disabled ? 'true' : 'false');\n }\n\n render() {\n return html`\n <span\n part=\"base\"\n class=${classMap({\n radio: true,\n 'radio--checked': this.checked,\n 'radio--disabled': this.disabled,\n 'radio--focused': this.hasFocus,\n 'radio--medium': this.size === 'medium',\n 'radio__label_border':this.islabelborder\n })}\n >\n <span part=\"${`control${this.checked ? ' control--checked' : ''}`}\" class=\"radio__control\">\n ${this.checked\n ? html` <span class=\"radio__checked-icon\"></span> `\n : ''}\n </span>\n\n <slot part=\"label\" class=\"radio__label\"></slot>\n </span>\n `;\n }\n}\n\nexport default NileRadio;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-radio': NileRadio;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import NileElement from '../internal/nile-element';
2
- import type { CSSResultGroup } from 'lit';
2
+ import type { CSSResultGroup, PropertyValues } from 'lit';
3
3
  /**
4
4
  * @summary Radio groups are used to group multiple [radios](/components/radio) or [radio buttons](/components/radio-button) so they function as a single form control.
5
5
  *
@@ -47,10 +47,13 @@ export declare class NileRadioGroup extends NileElement {
47
47
  errorMessage: string;
48
48
  /** The radio's labelborder for whole gp. */
49
49
  islabelborder: boolean;
50
+ /** Allow the radio to be unchecked. */
51
+ allowUncheckGroup: boolean;
50
52
  connectedCallback(): void;
51
53
  disconnectedCallback(): void;
52
54
  private getAllRadios;
53
55
  private handleRadioClick;
56
+ protected updated(changedProperties: PropertyValues): void;
54
57
  handleDisabledChange(): void;
55
58
  private handleInitialDisabledState;
56
59
  private handleKeyDown;
@@ -53,6 +53,8 @@ let NileRadioGroup = class NileRadioGroup extends NileElement {
53
53
  this.errorMessage = '';
54
54
  /** The radio's labelborder for whole gp. */
55
55
  this.islabelborder = false;
56
+ /** Allow the radio to be unchecked. */
57
+ this.allowUncheckGroup = false;
56
58
  }
57
59
  connectedCallback() {
58
60
  super.connectedCallback();
@@ -75,11 +77,29 @@ let NileRadioGroup = class NileRadioGroup extends NileElement {
75
77
  return;
76
78
  }
77
79
  this.value = target.value;
78
- radios.forEach(radio => (radio.checked = radio === target));
79
- if (this.value !== oldValue) {
80
+ if (!this.allowUncheckGroup) {
81
+ radios.forEach(radio => {
82
+ radio.checked = radio === target;
83
+ });
84
+ }
85
+ if (!this.allowUncheckGroup && this.value !== oldValue) {
80
86
  this.emit('change', { value: this.value });
81
87
  this.emit('input');
82
88
  }
89
+ else if (this.allowUncheckGroup) {
90
+ this.emit('change', { value: this.value, checked: target.checked });
91
+ this.emit('input');
92
+ }
93
+ }
94
+ updated(changedProperties) {
95
+ super.updated(changedProperties);
96
+ if (changedProperties.has('allowUncheckGroup')) {
97
+ if (this.allowUncheckGroup) {
98
+ this.getAllRadios().forEach(radio => {
99
+ radio.allowUncheck = true;
100
+ });
101
+ }
102
+ }
83
103
  }
84
104
  handleDisabledChange() {
85
105
  this.getAllRadios().forEach(radio => {
@@ -289,6 +309,9 @@ __decorate([
289
309
  __decorate([
290
310
  property({ type: Boolean, reflect: true })
291
311
  ], NileRadioGroup.prototype, "islabelborder", void 0);
312
+ __decorate([
313
+ property({ type: Boolean, reflect: true, attribute: true })
314
+ ], NileRadioGroup.prototype, "allowUncheckGroup", void 0);
292
315
  __decorate([
293
316
  watch('disabled', { waitUntilFirstUpdate: true })
294
317
  ], NileRadioGroup.prototype, "handleDisabledChange", null);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-radio-group.js","sourceRoot":"","sources":["../../../src/nile-radio-group/nile-radio-group.ts"],"names":[],"mappings":"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","sourcesContent":["\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { HasSlotController } from '../internal/slot';\nimport { html } from 'lit';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport styles from './nile-radio-group.css';\nimport type { CSSResultGroup } from 'lit';\nimport type NileRadio from '../nile-radio/nile-radio';\n\n/**\n * @summary Radio groups are used to group multiple [radios](/components/radio) or [radio buttons](/components/radio-button) so they function as a single form control.\n *\n * @dependency nile-button-group\n *\n * @slot - The default slot where `<nile-radio>` or `<nile-radio-button>` elements are placed.\n * @slot label - The radio group's label. Required for proper accessibility. Alternatively, you can use the `label`\n * attribute.\n *\n * @event change - Emitted when the radio group's selected value changes.\n * @event input - Emitted when the radio group receives user input.\n * @event invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n * @csspart button-group - The button group that wraps radio buttons.\n * @csspart button-group__base - The button group's `base` part.\n */\n@customElement('nile-radio-group')\nexport class NileRadioGroup extends NileElement {\n static styles: CSSResultGroup = styles;\n\n private readonly hasSlotController = new HasSlotController(this, 'help-text', 'label');\n private customValidityMessage = '';\n\n @query('slot:not([name])') defaultSlot: HTMLSlotElement;\n\n @state() private hasButtonGroup = false;\n\n @state() defaultValue = '';\n\n /**\n * The radio group's label. Required for proper accessibility. If you need to display HTML, use the `label` slot\n * instead.\n */\n @property() label = '';\n\n /** The name of the radio group, submitted as a name/value pair with form data. */\n @property() name = 'option';\n\n /** The current value of the radio group, submitted as a name/value pair with form data. */\n @property({ reflect: true }) value = '';\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Ensures a child radio is checked before allowing the containing form to submit. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n\n /** Used to show radio in inline or not */\n @property({ type: Boolean, reflect: true }) labelInline = false;\n\n /** Used to disabled or not */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n @property({ attribute: 'help-text', reflect: true }) helpText = '';\n\n @property({ attribute: 'error-message', reflect: true }) errorMessage = '';\n\n /** The radio's labelborder for whole gp. */\n @property({ type: Boolean, reflect: true }) islabelborder = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.defaultValue = this.value;\n this.handleInitialDisabledState();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n private getAllRadios() {\n return [...this.querySelectorAll<NileRadio>('nile-radio')];\n }\n\n private handleRadioClick(event: MouseEvent) {\n const target = (event.target as HTMLElement).closest<NileRadio>('nile-radio')!;\n const radios = this.getAllRadios();\n const oldValue = this.value;\n\n if (target.disabled || this.disabled) {\n return;\n }\n\n this.value = target.value;\n radios.forEach(radio => (radio.checked = radio === target));\n\n if (this.value !== oldValue) {\n this.emit('change',{value: this.value });\n this.emit('input');\n }\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n this.getAllRadios().forEach(radio => {\n radio.disabled = this.disabled;\n });\n }\n\n private handleInitialDisabledState() {\n this.getAllRadios().forEach(radio => {\n radio.disabled = radio.hasAttribute('disabled') ? radio.disabled : this.disabled;\n });\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight', ' '].includes(event.key)) {\n return;\n }\n\n const radios = this.getAllRadios().filter(radio => !radio.disabled);\n const checkedRadio = radios.find(radio => radio.checked) ?? radios[0];\n const incr = event.key === ' ' ? 0 : ['ArrowUp', 'ArrowLeft'].includes(event.key) ? -1 : 1;\n const oldValue = this.value;\n let index = radios.indexOf(checkedRadio) + incr;\n\n if (index < 0) {\n index = radios.length - 1;\n }\n\n if (index > radios.length - 1) {\n index = 0;\n }\n\n this.getAllRadios().forEach(radio => {\n radio.checked = false;\n\n if (!this.hasButtonGroup) {\n radio.tabIndex = -1;\n }\n });\n\n this.value = radios[index].value;\n radios[index].checked = true;\n\n if (!this.hasButtonGroup) {\n radios[index].tabIndex = 0;\n radios[index].focus();\n } else {\n radios[index].shadowRoot!.querySelector('button')!.focus();\n }\n\n if (this.value !== oldValue) {\n this.emit('change');\n this.emit('input');\n }\n\n event.preventDefault();\n }\n\n private handleLabelClick() {\n const radios = this.getAllRadios();\n const checked = radios.find(radio => radio.checked);\n const radioToFocus = checked || radios[0];\n\n // Move focus to the checked radio (or the first one if none are checked) when clicking the label\n if (radioToFocus) {\n radioToFocus.focus();\n }\n }\n\n private handleSlotChange() {\n const radios = this.getAllRadios();\n\n radios.forEach(radio => {\n radio.checked = radio.value === this.value;\n if (this.islabelborder) {\n radio.islabelborder=true;\n }\n });\n const nile_radio_check='nile-radio-button';\n this.hasButtonGroup = radios.some(radio => radio.tagName.toLowerCase() === nile_radio_check);\n\n if (!radios.some(radio => radio.checked)) {\n if (this.hasButtonGroup) {\n const buttonRadio = radios[0].shadowRoot!.querySelector('button')!;\n buttonRadio.tabIndex = 0;\n } else {\n radios[0].tabIndex = 0;\n }\n }\n\n if (this.hasButtonGroup) {\n const buttonGroup = this.shadowRoot?.querySelector('nile-button-group');\n }\n }\n\n private updateCheckedRadio() {\n const radios = this.getAllRadios();\n radios.forEach(radio => (radio.checked = radio.value === this.value));\n }\n\n @watch('value')\n handleValueChange() {\n if (this.hasUpdated) {\n this.updateCheckedRadio();\n }\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n\n const defaultSlot = html`\n <slot\n @click=${this.handleRadioClick}\n @keydown=${this.handleKeyDown}\n @slotchange=${this.handleSlotChange}\n role=\"presentation\"\n ></slot>\n `;\n\n return html`\n <fieldset\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--medium': true,\n 'form-control--radio-group': true,\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText\n })}\n role=\"radiogroup\"\n aria-labelledby=\"label\"\n aria-describedby=\"help-text\"\n aria-errormessage=\"error-message\"\n >\n <label\n part=\"form-control-label\"\n id=\"label\"\n class=\"form-control__label\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n @click=${this.handleLabelClick}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n ${hasLabelSuffixSlot ? html` <slot name=\"label-suffix\"></slot> ` : ``}\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <div class=\"visually-hidden\">\n <label class=\"radio-group__validation\">\n <input\n type=\"text\"\n class=\"radio-group__validation-input\"\n ?required=${this.required}\n tabindex=\"-1\"\n hidden\n />\n </label>\n </div>\n\n ${this.hasButtonGroup\n ? html`\n ${defaultSlot}\n `\n : html`\n <div part=\"options-base\" class=\"${this.labelInline ? `form-control--inline-radio`:``}\"> ${defaultSlot}</div> `}\n </div>\n\n ${\n hasHelpText\n ? html`\n <nile-form-help-text>${this.helpText}</nile-form-help-text>\n `\n : ``\n }\n\n ${\n hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``\n }\n\n </fieldset>\n `;\n }\n}\n\nexport default NileRadioGroup;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-radio-group': NileRadioGroup;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-radio-group.js","sourceRoot":"","sources":["../../../src/nile-radio-group/nile-radio-group.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAI5C;;;;;;;;;;;;;;GAcG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,WAAW;IAAxC;;QAGY,sBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAC/E,0BAAqB,GAAG,EAAE,CAAC;QAIlB,mBAAc,GAAG,KAAK,CAAC;QAE/B,iBAAY,GAAG,EAAE,CAAC;QAE3B;;;WAGG;QACS,UAAK,GAAG,EAAE,CAAC;QAEvB,kFAAkF;QACtE,SAAI,GAAG,QAAQ,CAAC;QAE5B,2FAA2F;QAC9D,UAAK,GAAG,EAAE,CAAC;QAExC;;;;WAIG;QAC0B,SAAI,GAAG,EAAE,CAAC;QAEvC,sFAAsF;QAC1C,aAAQ,GAAG,KAAK,CAAC;QAG7D,0CAA0C;QACE,gBAAW,GAAG,KAAK,CAAC;QAEhE,8BAA8B;QACc,aAAQ,GAAG,KAAK,CAAC;QAER,aAAQ,GAAG,EAAE,CAAC;QAEV,iBAAY,GAAG,EAAE,CAAC;QAE3E,4CAA4C;QACA,kBAAa,GAAG,KAAK,CAAC;QAElE,uCAAuC;QACsB,sBAAiB,GAAG,KAAK,CAAC;IAwPzF,CAAC;IAtPC,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IAED,oBAAoB;QAClB,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC5B,CAAC;IAEO,YAAY;QAClB,OAAO,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAY,YAAY,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEO,gBAAgB,CAAC,KAAiB;QACxC,MAAM,MAAM,GAAI,KAAK,CAAC,MAAsB,CAAC,OAAO,CAAY,YAAY,CAAE,CAAC;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;QAE5B,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACrB,KAAK,CAAC,OAAO,GAAG,KAAK,KAAK,MAAM,CAAC;YACnC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;aAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAG,OAAO,EAAE,MAAM,CAAC,OAAO,EAAC,CAAC,CAAC;YACpE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAES,OAAO,CAAC,iBAAiC;QACjD,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAEjC,IAAI,iBAAiB,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBAClC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC5B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAGD,oBAAoB;QAClB,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAClC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,0BAA0B;QAChC,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAClC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACnF,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,KAAoB;QACxC,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAClF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;QAC5B,IAAI,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;QAEhD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,GAAG,CAAC,CAAC;QACZ,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAClC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YAEtB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;QAE7B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,CAAC,UAAW,CAAC,aAAa,CAAC,QAAQ,CAAE,CAAC,KAAK,EAAE,CAAC;QAC7D,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QAED,KAAK,CAAC,cAAc,EAAE,CAAC;IACzB,CAAC;IAEO,gBAAgB;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpD,MAAM,YAAY,GAAG,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QAE1C,iGAAiG;QACjG,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEnC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC;YAC3C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,KAAK,CAAC,aAAa,GAAC,IAAI,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,gBAAgB,GAAC,mBAAmB,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,gBAAgB,CAAC,CAAC;QAE7F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,UAAW,CAAC,aAAa,CAAC,QAAQ,CAAE,CAAC;gBACnE,WAAW,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAEO,kBAAkB;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;IAGD,iBAAiB;QACf,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjE,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAEzD,MAAM,WAAW,GAAG,IAAI,CAAA;;iBAEX,IAAI,CAAC,gBAAgB;mBACnB,IAAI,CAAC,aAAa;sBACf,IAAI,CAAC,gBAAgB;;;KAGtC,CAAC;QAEF,OAAO,IAAI,CAAA;;;gBAGC,QAAQ,CAAC;YACf,cAAc,EAAE,IAAI;YACpB,sBAAsB,EAAE,IAAI;YAC5B,2BAA2B,EAAE,IAAI;YACjC,yBAAyB,EAAE,QAAQ;YACnC,6BAA6B,EAAE,WAAW;SAC3C,CAAC;;;;;;;;;;wBAUc,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;mBAChC,IAAI,CAAC,gBAAgB;;+BAET,IAAI,CAAC,KAAK;;;UAG/B,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE;;;;;;;;4BAQjD,IAAI,CAAC,QAAQ;;;;;;;YAO7B,IAAI,CAAC,cAAc;YACnB,CAAC,CAAC,IAAI,CAAA;cACJ,WAAW;eACV;YACH,CAAC,CAAE,IAAI,CAAA;8CAC2B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,4BAA4B,CAAA,CAAC,CAAA,EAAE,MAAM,WAAW,SAAS;;;UAIhH,WAAW;YACT,CAAC,CAAC,IAAI,CAAA;uCACqB,IAAI,CAAC,QAAQ;eACrC;YACH,CAAC,CAAC,EACN;;UAGE,eAAe;YACb,CAAC,CAAC,IAAI,CAAA;;qBAEG,IAAI,CAAC,YAAY;;eAEvB;YACH,CAAC,CAAC,EACN;;;KAGH,CAAC;IACJ,CAAC;;AAvSM,qBAAM,GAAmB,MAAM,AAAzB,CAA0B;AAKZ;IAA1B,KAAK,CAAC,kBAAkB,CAAC;mDAA8B;AAEvC;IAAhB,KAAK,EAAE;sDAAgC;AAE/B;IAAR,KAAK,EAAE;oDAAmB;AAMf;IAAX,QAAQ,EAAE;6CAAY;AAGX;IAAX,QAAQ,EAAE;4CAAiB;AAGC;IAA5B,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;6CAAY;AAOX;IAA5B,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4CAAW;AAGK;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAAkB;AAIjB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;mDAAqB;AAGpB;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAAkB;AAER;IAApD,QAAQ,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gDAAe;AAEV;IAAxD,QAAQ,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oDAAmB;AAG/B;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;qDAAuB;AAGL;IAA5D,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;yDAA2B;AAwDvF;IADC,KAAK,CAAC,UAAU,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;0DAKjD;AAgGD;IADC,KAAK,CAAC,OAAO,CAAC;uDAKd;AAjNU,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAyS1B;;AAED,eAAe,cAAc,CAAC","sourcesContent":["\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { HasSlotController } from '../internal/slot';\nimport { html } from 'lit';\nimport { watch } from '../internal/watch';\nimport NileElement from '../internal/nile-element';\nimport styles from './nile-radio-group.css';\nimport type { CSSResultGroup, PropertyValues } from 'lit';\nimport type NileRadio from '../nile-radio/nile-radio';\n\n/**\n * @summary Radio groups are used to group multiple [radios](/components/radio) or [radio buttons](/components/radio-button) so they function as a single form control.\n *\n * @dependency nile-button-group\n *\n * @slot - The default slot where `<nile-radio>` or `<nile-radio-button>` elements are placed.\n * @slot label - The radio group's label. Required for proper accessibility. Alternatively, you can use the `label`\n * attribute.\n *\n * @event change - Emitted when the radio group's selected value changes.\n * @event input - Emitted when the radio group receives user input.\n * @event invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.\n * @csspart button-group - The button group that wraps radio buttons.\n * @csspart button-group__base - The button group's `base` part.\n */\n@customElement('nile-radio-group')\nexport class NileRadioGroup extends NileElement {\n static styles: CSSResultGroup = styles;\n\n private readonly hasSlotController = new HasSlotController(this, 'help-text', 'label');\n private customValidityMessage = '';\n\n @query('slot:not([name])') defaultSlot: HTMLSlotElement;\n\n @state() private hasButtonGroup = false;\n\n @state() defaultValue = '';\n\n /**\n * The radio group's label. Required for proper accessibility. If you need to display HTML, use the `label` slot\n * instead.\n */\n @property() label = '';\n\n /** The name of the radio group, submitted as a name/value pair with form data. */\n @property() name = 'option';\n\n /** The current value of the radio group, submitted as a name/value pair with form data. */\n @property({ reflect: true }) value = '';\n\n /**\n * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you\n * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in\n * the same document or shadow root for this to work.\n */\n @property({ reflect: true }) form = '';\n\n /** Ensures a child radio is checked before allowing the containing form to submit. */\n @property({ type: Boolean, reflect: true }) required = false;\n\n\n /** Used to show radio in inline or not */\n @property({ type: Boolean, reflect: true }) labelInline = false;\n\n /** Used to disabled or not */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n @property({ attribute: 'help-text', reflect: true }) helpText = '';\n\n @property({ attribute: 'error-message', reflect: true }) errorMessage = '';\n\n /** The radio's labelborder for whole gp. */\n @property({ type: Boolean, reflect: true }) islabelborder = false;\n\n /** Allow the radio to be unchecked. */\n @property({ type: Boolean, reflect: true, attribute: true }) allowUncheckGroup = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.defaultValue = this.value;\n this.handleInitialDisabledState();\n this.emit('nile-init');\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.emit('nile-destroy');\n }\n\n private getAllRadios() {\n return [...this.querySelectorAll<NileRadio>('nile-radio')];\n }\n\n private handleRadioClick(event: MouseEvent) {\n const target = (event.target as HTMLElement).closest<NileRadio>('nile-radio')!;\n const radios = this.getAllRadios();\n const oldValue = this.value;\n\n if (target.disabled || this.disabled) {\n return;\n }\n\n this.value = target.value;\n if (!this.allowUncheckGroup) {\n radios.forEach(radio => {\n radio.checked = radio === target;\n });\n }\n\n if (!this.allowUncheckGroup && this.value !== oldValue) {\n this.emit('change', { value: this.value});\n this.emit('input');\n } else if (this.allowUncheckGroup) { \n this.emit('change', { value: this.value , checked: target.checked});\n this.emit('input');\n }\n }\n\n protected updated(changedProperties: PropertyValues): void {\n super.updated(changedProperties);\n\n if (changedProperties.has('allowUncheckGroup')) {\n if (this.allowUncheckGroup) {\n this.getAllRadios().forEach(radio => {\n radio.allowUncheck = true;\n });\n }\n }\n }\n\n @watch('disabled', { waitUntilFirstUpdate: true })\n handleDisabledChange() {\n this.getAllRadios().forEach(radio => {\n radio.disabled = this.disabled;\n });\n }\n\n private handleInitialDisabledState() {\n this.getAllRadios().forEach(radio => {\n radio.disabled = radio.hasAttribute('disabled') ? radio.disabled : this.disabled;\n });\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (!['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight', ' '].includes(event.key)) {\n return;\n }\n\n const radios = this.getAllRadios().filter(radio => !radio.disabled);\n const checkedRadio = radios.find(radio => radio.checked) ?? radios[0];\n const incr = event.key === ' ' ? 0 : ['ArrowUp', 'ArrowLeft'].includes(event.key) ? -1 : 1;\n const oldValue = this.value;\n let index = radios.indexOf(checkedRadio) + incr;\n\n if (index < 0) {\n index = radios.length - 1;\n }\n\n if (index > radios.length - 1) {\n index = 0;\n }\n\n this.getAllRadios().forEach(radio => {\n radio.checked = false;\n\n if (!this.hasButtonGroup) {\n radio.tabIndex = -1;\n }\n });\n\n this.value = radios[index].value;\n radios[index].checked = true;\n\n if (!this.hasButtonGroup) {\n radios[index].tabIndex = 0;\n radios[index].focus();\n } else {\n radios[index].shadowRoot!.querySelector('button')!.focus();\n }\n\n if (this.value !== oldValue) {\n this.emit('change');\n this.emit('input');\n }\n\n event.preventDefault();\n }\n\n private handleLabelClick() {\n const radios = this.getAllRadios();\n const checked = radios.find(radio => radio.checked);\n const radioToFocus = checked || radios[0];\n\n // Move focus to the checked radio (or the first one if none are checked) when clicking the label\n if (radioToFocus) {\n radioToFocus.focus();\n }\n }\n\n private handleSlotChange() {\n const radios = this.getAllRadios();\n\n radios.forEach(radio => {\n radio.checked = radio.value === this.value;\n if (this.islabelborder) {\n radio.islabelborder=true;\n }\n });\n const nile_radio_check='nile-radio-button';\n this.hasButtonGroup = radios.some(radio => radio.tagName.toLowerCase() === nile_radio_check);\n\n if (!radios.some(radio => radio.checked)) {\n if (this.hasButtonGroup) {\n const buttonRadio = radios[0].shadowRoot!.querySelector('button')!;\n buttonRadio.tabIndex = 0;\n } else {\n radios[0].tabIndex = 0;\n }\n }\n\n if (this.hasButtonGroup) {\n const buttonGroup = this.shadowRoot?.querySelector('nile-button-group');\n }\n }\n\n private updateCheckedRadio() {\n const radios = this.getAllRadios();\n radios.forEach(radio => (radio.checked = radio.value === this.value));\n }\n\n @watch('value')\n handleValueChange() {\n if (this.hasUpdated) {\n this.updateCheckedRadio();\n }\n }\n\n render() {\n const hasLabelSlot = this.hasSlotController.test('label');\n const hasHelpTextSlot = this.hasSlotController.test('help-text');\n const hasLabelSuffixSlot = this.hasSlotController.test('label-suffix');\n const hasLabel = this.label ? true : !!hasLabelSlot;\n const hasHelpText = this.helpText ? true : false;\n const hasErrorMessage = this.errorMessage ? true : false;\n\n const defaultSlot = html`\n <slot\n @click=${this.handleRadioClick}\n @keydown=${this.handleKeyDown}\n @slotchange=${this.handleSlotChange}\n role=\"presentation\"\n ></slot>\n `;\n\n return html`\n <fieldset\n part=\"form-control\"\n class=${classMap({\n 'form-control': true,\n 'form-control--medium': true,\n 'form-control--radio-group': true,\n 'form-control--has-label': hasLabel,\n 'form-control--has-help-text': hasHelpText\n })}\n role=\"radiogroup\"\n aria-labelledby=\"label\"\n aria-describedby=\"help-text\"\n aria-errormessage=\"error-message\"\n >\n <label\n part=\"form-control-label\"\n id=\"label\"\n class=\"form-control__label\"\n aria-hidden=${hasLabel ? 'false' : 'true'}\n @click=${this.handleLabelClick}\n >\n <slot name=\"label\">${this.label}</slot>\n </label>\n\n ${hasLabelSuffixSlot ? html` <slot name=\"label-suffix\"></slot> ` : ``}\n\n <div part=\"form-control-input\" class=\"form-control-input\">\n <div class=\"visually-hidden\">\n <label class=\"radio-group__validation\">\n <input\n type=\"text\"\n class=\"radio-group__validation-input\"\n ?required=${this.required}\n tabindex=\"-1\"\n hidden\n />\n </label>\n </div>\n\n ${this.hasButtonGroup\n ? html`\n ${defaultSlot}\n `\n : html`\n <div part=\"options-base\" class=\"${this.labelInline ? `form-control--inline-radio`:``}\"> ${defaultSlot}</div> `}\n </div>\n\n ${\n hasHelpText\n ? html`\n <nile-form-help-text>${this.helpText}</nile-form-help-text>\n `\n : ``\n }\n\n ${\n hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``\n }\n\n </fieldset>\n `;\n }\n}\n\nexport default NileRadioGroup;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-radio-group': NileRadioGroup;\n }\n}\n"]}
@@ -78,6 +78,7 @@ export declare class NileSelect extends NileElement implements NileFormControl {
78
78
  private typeToSelectTimeout;
79
79
  private scrollTimeout;
80
80
  private scrolling;
81
+ private options;
81
82
  popup: NilePopup;
82
83
  combobox: HTMLSlotElement;
83
84
  displayInput: HTMLInputElement;
@@ -167,6 +168,8 @@ export declare class NileSelect extends NileElement implements NileFormControl {
167
168
  enableVirtualScroll: boolean;
168
169
  /** To enable the group header in the select */
169
170
  enableGroupHeader: boolean;
171
+ /** To auto focus the search input when the select is opened */
172
+ autoFocusSearch: boolean;
170
173
  /** Gets the validity state object */
171
174
  get validity(): ValidityState;
172
175
  /** Gets the validation message */
@@ -174,7 +177,6 @@ export declare class NileSelect extends NileElement implements NileFormControl {
174
177
  constructor();
175
178
  connectedCallback(): void;
176
179
  disconnectedCallback(): void;
177
- private options;
178
180
  protected updated(_changedProperties: PropertyValues): void;
179
181
  protected firstUpdated(_changedProperties: PropertyValues): void;
180
182
  setCheckBoxInOption(checked: boolean): void;
@@ -246,6 +248,7 @@ export declare class NileSelect extends NileElement implements NileFormControl {
246
248
  onInputChange(event: Event): void;
247
249
  calculateWidthOfSelectTagsDiv(): number | undefined;
248
250
  calculateTotalWidthOfTags(): void;
251
+ handleInputAfterInit(): void;
249
252
  render(): any;
250
253
  nileInput(value: any): void;
251
254
  nileChange(value: any): void;
@@ -95,6 +95,7 @@ let NileSelect = class NileSelect extends NileElement {
95
95
  this.hasSlotController = new HasSlotController(this, 'help-text', 'label');
96
96
  this.typeToSelectString = '';
97
97
  this.scrolling = false;
98
+ this.options = [];
98
99
  this.hasFocus = false;
99
100
  this.displayLabel = '';
100
101
  this.selectedOptions = [];
@@ -176,7 +177,8 @@ let NileSelect = class NileSelect extends NileElement {
176
177
  this.enableVirtualScroll = false;
177
178
  /** To enable the group header in the select */
178
179
  this.enableGroupHeader = false;
179
- this.options = [];
180
+ /** To auto focus the search input when the select is opened */
181
+ this.autoFocusSearch = false;
180
182
  }
181
183
  connectedCallback() {
182
184
  super.connectedCallback();
@@ -760,6 +762,9 @@ let NileSelect = class NileSelect extends NileElement {
760
762
  this.searchValue = '';
761
763
  this.filterOptions(this.searchValue);
762
764
  this.emit('nile-after-show', { value: this.value, name: this.name });
765
+ if (this.autoFocusSearch) {
766
+ this.handleInputAfterInit();
767
+ }
763
768
  }
764
769
  else {
765
770
  // Hide
@@ -896,6 +901,9 @@ let NileSelect = class NileSelect extends NileElement {
896
901
  this.maxOptionsVisible = lastindex;
897
902
  }, 1);
898
903
  }
904
+ handleInputAfterInit() {
905
+ this.shadowRoot?.querySelector('nile-input')?.inputFocus();
906
+ }
899
907
  render() {
900
908
  if (this.enableVirtualScroll) {
901
909
  return this.virtualScrollHelper.renderVirtualizedContent();
@@ -1144,6 +1152,7 @@ let NileSelect = class NileSelect extends NileElement {
1144
1152
  @nile-input=${this.handleSearchChange}
1145
1153
  @nile-focus=${this.handleSearchFocus}
1146
1154
  @nile-change="${this.onInputChange}"
1155
+ @nile-after-init=${this.handleInputAfterInit}
1147
1156
  >
1148
1157
  <nile-icon name="search" slot="suffix"> </nile-icon>
1149
1158
  </nile-input>
@@ -1386,6 +1395,9 @@ __decorate([
1386
1395
  __decorate([
1387
1396
  property({ type: Boolean, reflect: true, attribute: true })
1388
1397
  ], NileSelect.prototype, "enableGroupHeader", void 0);
1398
+ __decorate([
1399
+ property({ type: Boolean, reflect: true, attribute: true })
1400
+ ], NileSelect.prototype, "autoFocusSearch", void 0);
1389
1401
  __decorate([
1390
1402
  watch('disabled', { waitUntilFirstUpdate: true })
1391
1403
  ], NileSelect.prototype, "handleDisabledChange", null);