@aquera/nile-elements 1.5.2 → 1.5.3

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 (517) hide show
  1. package/README.md +6 -0
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.js +239 -195
  5. package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -1
  6. package/dist/nile-auto-complete/nile-auto-complete.cjs.js.map +1 -1
  7. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js +1 -1
  8. package/dist/nile-auto-complete/nile-auto-complete.css.cjs.js.map +1 -1
  9. package/dist/nile-auto-complete/nile-auto-complete.css.esm.js +1 -1
  10. package/dist/nile-auto-complete/nile-auto-complete.esm.js +1 -1
  11. package/dist/nile-file-preview/nile-file-preview.cjs.js +1 -1
  12. package/dist/nile-file-preview/nile-file-preview.cjs.js.map +1 -1
  13. package/dist/nile-file-preview/nile-file-preview.css.cjs.js +1 -1
  14. package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +1 -1
  15. package/dist/nile-file-preview/nile-file-preview.css.esm.js +2 -2
  16. package/dist/nile-file-preview/nile-file-preview.esm.js +1 -1
  17. package/dist/nile-file-preview/nile-file-preview.template.cjs.js +1 -1
  18. package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -1
  19. package/dist/nile-file-preview/nile-file-preview.template.esm.js +55 -25
  20. package/dist/nile-file-preview/utils/index.cjs.js +1 -1
  21. package/dist/nile-file-preview/utils/index.esm.js +1 -1
  22. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +1 -1
  23. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +1 -1
  24. package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +1 -1
  25. package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
  26. package/dist/nile-file-upload/nile-file-upload.cjs.js.map +1 -1
  27. package/dist/nile-file-upload/nile-file-upload.css.cjs.js +1 -1
  28. package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +1 -1
  29. package/dist/nile-file-upload/nile-file-upload.css.esm.js +15 -5
  30. package/dist/nile-file-upload/nile-file-upload.esm.js +2 -2
  31. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +2 -2
  32. package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -1
  33. package/dist/nile-file-upload/nile-file-upload.template.esm.js +36 -32
  34. package/dist/nile-file-upload/types/file-upload.enums.cjs.js +1 -1
  35. package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +1 -1
  36. package/dist/nile-file-upload/types/file-upload.enums.esm.js +1 -1
  37. package/dist/nile-file-upload/types/index.cjs.js +1 -1
  38. package/dist/nile-file-upload/types/index.esm.js +1 -1
  39. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js +1 -1
  40. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js.map +1 -1
  41. package/dist/nile-file-upload/utils/drag-drop.util.esm.js +1 -1
  42. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +4 -2
  43. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
  44. package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
  45. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.cjs.js +1 -1
  46. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.cjs.js.map +1 -1
  47. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.esm.js +3 -3
  48. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.cjs.js +1 -1
  49. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.cjs.js.map +1 -1
  50. package/dist/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.esm.js +1 -1
  51. package/dist/nile-grid/nile-grid.cjs.js +1 -1
  52. package/dist/nile-grid/nile-grid.cjs.js.map +1 -1
  53. package/dist/nile-grid/nile-grid.esm.js +2 -2
  54. package/dist/nile-grid/nile-grid.layout.cjs.js +1 -1
  55. package/dist/nile-grid/nile-grid.layout.esm.js +1 -1
  56. package/dist/nile-grid/nile-grid.resize.cjs.js +1 -1
  57. package/dist/nile-grid/nile-grid.resize.esm.js +1 -1
  58. package/dist/nile-grid/nile-grid.utils.cjs.js +1 -1
  59. package/dist/nile-grid/nile-grid.utils.esm.js +1 -1
  60. package/dist/nile-grid/nile-grid.width.cjs.js +1 -1
  61. package/dist/nile-grid/nile-grid.width.cjs.js.map +1 -1
  62. package/dist/nile-grid/nile-grid.width.esm.js +1 -1
  63. package/dist/nile-input/nile-input.cjs.js +1 -1
  64. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  65. package/dist/nile-input/nile-input.esm.js +1 -1
  66. package/dist/nile-popover/index.cjs.js +1 -1
  67. package/dist/nile-popover/index.esm.js +1 -1
  68. package/dist/nile-popover/nile-popover.cjs.js +4 -4
  69. package/dist/nile-popover/nile-popover.cjs.js.map +1 -1
  70. package/dist/nile-popover/nile-popover.esm.js +11 -6
  71. package/dist/src/nile-accordion/nile-accordian.test.js +101 -99
  72. package/dist/src/nile-accordion/nile-accordian.test.js.map +1 -1
  73. package/dist/src/nile-auto-complete/nile-auto-complete.css.js +1 -1
  74. package/dist/src/nile-auto-complete/nile-auto-complete.css.js.map +1 -1
  75. package/dist/src/nile-auto-complete/nile-auto-complete.js +1 -1
  76. package/dist/src/nile-auto-complete/nile-auto-complete.js.map +1 -1
  77. package/dist/src/nile-auto-complete/nile-auto-complete.test.js +104 -112
  78. package/dist/src/nile-auto-complete/nile-auto-complete.test.js.map +1 -1
  79. package/dist/src/nile-avatar/nile-avatar.test.d.ts +0 -1
  80. package/dist/src/nile-avatar/nile-avatar.test.js +103 -87
  81. package/dist/src/nile-avatar/nile-avatar.test.js.map +1 -1
  82. package/dist/src/nile-badge/nile-badge.test.js +554 -35
  83. package/dist/src/nile-badge/nile-badge.test.js.map +1 -1
  84. package/dist/src/nile-breadcrumb/nile-breadcrumb.test.d.ts +2 -0
  85. package/dist/src/nile-breadcrumb/nile-breadcrumb.test.js +106 -0
  86. package/dist/src/nile-breadcrumb/nile-breadcrumb.test.js.map +1 -0
  87. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.test.d.ts +1 -0
  88. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.test.js +108 -0
  89. package/dist/src/nile-breadcrumb-item/nile-breadcrumb-item.test.js.map +1 -0
  90. package/dist/src/nile-button/nile-button.test.js +499 -39
  91. package/dist/src/nile-button/nile-button.test.js.map +1 -1
  92. package/dist/src/nile-button-filter/nile-button-filter.test.d.ts +1 -0
  93. package/dist/src/nile-button-filter/nile-button-filter.test.js +108 -0
  94. package/dist/src/nile-button-filter/nile-button-filter.test.js.map +1 -0
  95. package/dist/src/nile-button-toggle/nile-button-toggle.test.d.ts +1 -0
  96. package/dist/src/nile-button-toggle/nile-button-toggle.test.js +108 -0
  97. package/dist/src/nile-button-toggle/nile-button-toggle.test.js.map +1 -0
  98. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.d.ts +1 -1
  99. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.js +105 -104
  100. package/dist/src/nile-button-toggle-group/nile-button-toggle-group.test.js.map +1 -1
  101. package/dist/src/nile-calendar/nile-calendar.test.d.ts +0 -6
  102. package/dist/src/nile-calendar/nile-calendar.test.js +103 -318
  103. package/dist/src/nile-calendar/nile-calendar.test.js.map +1 -1
  104. package/dist/src/nile-card/nile-card.test.js +102 -66
  105. package/dist/src/nile-card/nile-card.test.js.map +1 -1
  106. package/dist/src/nile-checkbox/nile-checkbox.test.js +547 -108
  107. package/dist/src/nile-checkbox/nile-checkbox.test.js.map +1 -1
  108. package/dist/src/nile-chip/nile-chip.test.d.ts +0 -2
  109. package/dist/src/nile-chip/nile-chip.test.js +101 -102
  110. package/dist/src/nile-chip/nile-chip.test.js.map +1 -1
  111. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.test.d.ts +1 -0
  112. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.test.js +108 -0
  113. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.test.js.map +1 -0
  114. package/dist/src/nile-date-picker/nile-date-picker.test.d.ts +1 -0
  115. package/dist/src/nile-date-picker/nile-date-picker.test.js +108 -0
  116. package/dist/src/nile-date-picker/nile-date-picker.test.js.map +1 -0
  117. package/dist/src/nile-dialog/nile-dialog.test.d.ts +0 -1
  118. package/dist/src/nile-dialog/nile-dialog.test.js +104 -126
  119. package/dist/src/nile-dialog/nile-dialog.test.js.map +1 -1
  120. package/dist/src/nile-divider/nile-divider.test.d.ts +1 -0
  121. package/dist/src/nile-divider/nile-divider.test.js +560 -0
  122. package/dist/src/nile-divider/nile-divider.test.js.map +1 -0
  123. package/dist/src/nile-drawer/nile-drawer.test.js +106 -86
  124. package/dist/src/nile-drawer/nile-drawer.test.js.map +1 -1
  125. package/dist/src/nile-dropdown/nile-dropdown.test.js +104 -148
  126. package/dist/src/nile-dropdown/nile-dropdown.test.js.map +1 -1
  127. package/dist/src/nile-empty-state/nile-empty-state.test.js +107 -59
  128. package/dist/src/nile-empty-state/nile-empty-state.test.js.map +1 -1
  129. package/dist/src/nile-error-message/nile-error-message.test.js +105 -55
  130. package/dist/src/nile-error-message/nile-error-message.test.js.map +1 -1
  131. package/dist/src/nile-error-notification/nile-error-notification.test.d.ts +1 -0
  132. package/dist/src/nile-error-notification/nile-error-notification.test.js +108 -0
  133. package/dist/src/nile-error-notification/nile-error-notification.test.js.map +1 -0
  134. package/dist/src/nile-file-preview/nile-file-preview.css.js +2 -2
  135. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -1
  136. package/dist/src/nile-file-preview/nile-file-preview.d.ts +1 -4
  137. package/dist/src/nile-file-preview/nile-file-preview.js +21 -47
  138. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -1
  139. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +6 -6
  140. package/dist/src/nile-file-preview/nile-file-preview.template.js +53 -23
  141. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -1
  142. package/dist/src/nile-file-preview/nile-file-preview.test.d.ts +0 -6
  143. package/dist/src/nile-file-preview/nile-file-preview.test.js +106 -28
  144. package/dist/src/nile-file-preview/nile-file-preview.test.js.map +1 -1
  145. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +3 -2
  146. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +32 -7
  147. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -1
  148. package/dist/src/nile-file-upload/nile-file-upload.css.js +15 -5
  149. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -1
  150. package/dist/src/nile-file-upload/nile-file-upload.d.ts +4 -1
  151. package/dist/src/nile-file-upload/nile-file-upload.js +13 -1
  152. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -1
  153. package/dist/src/nile-file-upload/nile-file-upload.template.js +19 -15
  154. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -1
  155. package/dist/src/nile-file-upload/nile-file-upload.test.d.ts +0 -6
  156. package/dist/src/nile-file-upload/nile-file-upload.test.js +106 -28
  157. package/dist/src/nile-file-upload/nile-file-upload.test.js.map +1 -1
  158. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +17 -3
  159. package/dist/src/nile-file-upload/types/file-upload.enums.js +17 -1
  160. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -1
  161. package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +2 -0
  162. package/dist/src/nile-file-upload/utils/drag-drop.util.js +14 -8
  163. package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +1 -1
  164. package/dist/src/nile-file-upload/utils/file-validation.util.js +89 -10
  165. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
  166. package/dist/src/nile-filter-chip/nile-filter-chip.test.js +102 -77
  167. package/dist/src/nile-filter-chip/nile-filter-chip.test.js.map +1 -1
  168. package/dist/src/nile-form-error-message/nile-form-error-message.test.d.ts +1 -0
  169. package/dist/src/nile-form-error-message/nile-form-error-message.test.js +108 -0
  170. package/dist/src/nile-form-error-message/nile-form-error-message.test.js.map +1 -0
  171. package/dist/src/nile-form-group/nile-form-group.test.js +104 -51
  172. package/dist/src/nile-form-group/nile-form-group.test.js.map +1 -1
  173. package/dist/src/nile-form-help-text/nile-form-help-text.test.js +104 -84
  174. package/dist/src/nile-form-help-text/nile-form-help-text.test.js.map +1 -1
  175. package/dist/src/nile-format-date/nile-format-date.test.d.ts +1 -0
  176. package/dist/src/nile-format-date/nile-format-date.test.js +108 -0
  177. package/dist/src/nile-format-date/nile-format-date.test.js.map +1 -0
  178. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.js +6 -5
  179. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.js.map +1 -1
  180. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.d.ts +14 -0
  181. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.js +24 -0
  182. package/dist/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.js.map +1 -1
  183. package/dist/src/nile-grid/nile-grid.d.ts +1 -0
  184. package/dist/src/nile-grid/nile-grid.js +5 -1
  185. package/dist/src/nile-grid/nile-grid.js.map +1 -1
  186. package/dist/src/nile-grid/nile-grid.utils.d.ts +6 -0
  187. package/dist/src/nile-grid/nile-grid.utils.js +13 -0
  188. package/dist/src/nile-grid/nile-grid.utils.js.map +1 -1
  189. package/dist/src/nile-heading/nile-heading.test.d.ts +1 -0
  190. package/dist/src/nile-heading/nile-heading.test.js +108 -0
  191. package/dist/src/nile-heading/nile-heading.test.js.map +1 -0
  192. package/dist/src/nile-hero/nile-hero.test.js +101 -38
  193. package/dist/src/nile-hero/nile-hero.test.js.map +1 -1
  194. package/dist/src/nile-icon/nile-icon.test.js +103 -40
  195. package/dist/src/nile-icon/nile-icon.test.js.map +1 -1
  196. package/dist/src/nile-icon-button/nile-icon-button.test.d.ts +1 -0
  197. package/dist/src/nile-icon-button/nile-icon-button.test.js +568 -0
  198. package/dist/src/nile-icon-button/nile-icon-button.test.js.map +1 -0
  199. package/dist/src/nile-inline-edit/nile-inline-edit.test.d.ts +1 -0
  200. package/dist/src/nile-inline-edit/nile-inline-edit.test.js +108 -0
  201. package/dist/src/nile-inline-edit/nile-inline-edit.test.js.map +1 -0
  202. package/dist/src/nile-input/nile-input.js +1 -1
  203. package/dist/src/nile-input/nile-input.js.map +1 -1
  204. package/dist/src/nile-input/nile-input.test.js +109 -139
  205. package/dist/src/nile-input/nile-input.test.js.map +1 -1
  206. package/dist/src/nile-link/nile-link.test.js +103 -67
  207. package/dist/src/nile-link/nile-link.test.js.map +1 -1
  208. package/dist/src/nile-list/nile-list.test.d.ts +1 -0
  209. package/dist/src/nile-list/nile-list.test.js +108 -0
  210. package/dist/src/nile-list/nile-list.test.js.map +1 -0
  211. package/dist/src/nile-list-item/nile-list-item.test.d.ts +1 -0
  212. package/dist/src/nile-list-item/nile-list-item.test.js +108 -0
  213. package/dist/src/nile-list-item/nile-list-item.test.js.map +1 -0
  214. package/dist/src/nile-lite-tooltip/nile-lite-tooltip.test.d.ts +2 -0
  215. package/dist/src/nile-lite-tooltip/nile-lite-tooltip.test.js +109 -0
  216. package/dist/src/nile-lite-tooltip/nile-lite-tooltip.test.js.map +1 -0
  217. package/dist/src/nile-loader/nile-loader.test.js +107 -40
  218. package/dist/src/nile-loader/nile-loader.test.js.map +1 -1
  219. package/dist/src/nile-menu/nile-menu.test.d.ts +1 -0
  220. package/dist/src/nile-menu/nile-menu.test.js +113 -0
  221. package/dist/src/nile-menu/nile-menu.test.js.map +1 -0
  222. package/dist/src/nile-menu-item/nile-menu-item.test.d.ts +1 -0
  223. package/dist/src/nile-menu-item/nile-menu-item.test.js +113 -0
  224. package/dist/src/nile-menu-item/nile-menu-item.test.js.map +1 -0
  225. package/dist/src/nile-option/nile-option.test.d.ts +1 -0
  226. package/dist/src/nile-option/nile-option.test.js +108 -0
  227. package/dist/src/nile-option/nile-option.test.js.map +1 -0
  228. package/dist/src/nile-option-group/nile-option-group.test.d.ts +1 -0
  229. package/dist/src/nile-option-group/nile-option-group.test.js +108 -0
  230. package/dist/src/nile-option-group/nile-option-group.test.js.map +1 -0
  231. package/dist/src/nile-page-header/nile-page-header.test.d.ts +1 -0
  232. package/dist/src/nile-page-header/nile-page-header.test.js +108 -0
  233. package/dist/src/nile-page-header/nile-page-header.test.js.map +1 -0
  234. package/dist/src/nile-pagination/nile-pagination.test.d.ts +1 -0
  235. package/dist/src/nile-pagination/nile-pagination.test.js +108 -0
  236. package/dist/src/nile-pagination/nile-pagination.test.js.map +1 -0
  237. package/dist/src/nile-popover/nile-popover.test.js +103 -68
  238. package/dist/src/nile-popover/nile-popover.test.js.map +1 -1
  239. package/dist/src/nile-popup/nile-popup.test.js +104 -65
  240. package/dist/src/nile-popup/nile-popup.test.js.map +1 -1
  241. package/dist/src/nile-progress-bar/nile-progress-bar.test.js +104 -44
  242. package/dist/src/nile-progress-bar/nile-progress-bar.test.js.map +1 -1
  243. package/dist/src/nile-radio/nile-radio.test.js +103 -66
  244. package/dist/src/nile-radio/nile-radio.test.js.map +1 -1
  245. package/dist/src/nile-radio-group/nile-radio-group.test.d.ts +0 -1
  246. package/dist/src/nile-radio-group/nile-radio-group.test.js +105 -171
  247. package/dist/src/nile-radio-group/nile-radio-group.test.js.map +1 -1
  248. package/dist/src/nile-section-message/nile-section-message.test.d.ts +1 -0
  249. package/dist/src/nile-section-message/nile-section-message.test.js +108 -0
  250. package/dist/src/nile-section-message/nile-section-message.test.js.map +1 -0
  251. package/dist/src/nile-select/nile-select.test.d.ts +0 -5
  252. package/dist/src/nile-select/nile-select.test.js +105 -244
  253. package/dist/src/nile-select/nile-select.test.js.map +1 -1
  254. package/dist/src/nile-skeleton-loader/nile-skeleton-loader.test.d.ts +1 -0
  255. package/dist/src/nile-skeleton-loader/nile-skeleton-loader.test.js +108 -0
  256. package/dist/src/nile-skeleton-loader/nile-skeleton-loader.test.js.map +1 -0
  257. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js +104 -50
  258. package/dist/src/nile-slide-toggle/nile-slide-toggle.test.js.map +1 -1
  259. package/dist/src/nile-slider/nile-slider.test.d.ts +1 -0
  260. package/dist/src/nile-slider/nile-slider.test.js +108 -0
  261. package/dist/src/nile-slider/nile-slider.test.js.map +1 -0
  262. package/dist/src/nile-spinner/nile-spinner.test.d.ts +1 -0
  263. package/dist/src/nile-spinner/nile-spinner.test.js +569 -0
  264. package/dist/src/nile-spinner/nile-spinner.test.js.map +1 -0
  265. package/dist/src/nile-split-panel/nile-split-panel.test.d.ts +1 -0
  266. package/dist/src/nile-split-panel/nile-split-panel.test.js +108 -0
  267. package/dist/src/nile-split-panel/nile-split-panel.test.js.map +1 -0
  268. package/dist/src/nile-stepper/nile-stepper.test.d.ts +2 -0
  269. package/dist/src/nile-stepper/nile-stepper.test.js +109 -0
  270. package/dist/src/nile-stepper/nile-stepper.test.js.map +1 -0
  271. package/dist/src/nile-stepper-item/nile-stepper-item.test.d.ts +1 -0
  272. package/dist/src/nile-stepper-item/nile-stepper-item.test.js +108 -0
  273. package/dist/src/nile-stepper-item/nile-stepper-item.test.js.map +1 -0
  274. package/dist/src/nile-tab/nile-tab.test.d.ts +1 -0
  275. package/dist/src/nile-tab/nile-tab.test.js +108 -0
  276. package/dist/src/nile-tab/nile-tab.test.js.map +1 -0
  277. package/dist/src/nile-tab-group/nile-tab-group.test.js +105 -172
  278. package/dist/src/nile-tab-group/nile-tab-group.test.js.map +1 -1
  279. package/dist/src/nile-tab-panel/nile-tab-panel.test.d.ts +1 -0
  280. package/dist/src/nile-tab-panel/nile-tab-panel.test.js +108 -0
  281. package/dist/src/nile-tab-panel/nile-tab-panel.test.js.map +1 -0
  282. package/dist/src/nile-tag/nile-tag.test.d.ts +1 -0
  283. package/dist/src/nile-tag/nile-tag.test.js +574 -0
  284. package/dist/src/nile-tag/nile-tag.test.js.map +1 -0
  285. package/dist/src/nile-textarea/nile-textarea.test.d.ts +1 -1
  286. package/dist/src/nile-textarea/nile-textarea.test.js +105 -84
  287. package/dist/src/nile-textarea/nile-textarea.test.js.map +1 -1
  288. package/dist/src/nile-title/nile-title.test.d.ts +1 -0
  289. package/dist/src/nile-title/nile-title.test.js +108 -0
  290. package/dist/src/nile-title/nile-title.test.js.map +1 -0
  291. package/dist/src/nile-toast/nile-toast.test.d.ts +1 -0
  292. package/dist/src/nile-toast/nile-toast.test.js +526 -0
  293. package/dist/src/nile-toast/nile-toast.test.js.map +1 -0
  294. package/dist/src/nile-toolbar/nile-toolbar.test.d.ts +1 -0
  295. package/dist/src/nile-toolbar/nile-toolbar.test.js +108 -0
  296. package/dist/src/nile-toolbar/nile-toolbar.test.js.map +1 -0
  297. package/dist/src/nile-tooltip/nile-tooltip.test.d.ts +1 -0
  298. package/dist/src/nile-tooltip/nile-tooltip.test.js +546 -0
  299. package/dist/src/nile-tooltip/nile-tooltip.test.js.map +1 -0
  300. package/dist/src/nile-virtual-select/nile-virtual-select.test.d.ts +1 -7
  301. package/dist/src/nile-virtual-select/nile-virtual-select.test.js +105 -628
  302. package/dist/src/nile-virtual-select/nile-virtual-select.test.js.map +1 -1
  303. package/dist/src/version.js +1 -1
  304. package/dist/src/version.js.map +1 -1
  305. package/dist/tsconfig.tsbuildinfo +1 -1
  306. package/package.json +1 -1
  307. package/rollup.config.js +7 -1
  308. package/src/nile-accordion/nile-accordian.test.ts +102 -116
  309. package/src/nile-auto-complete/nile-auto-complete.css.ts +1 -1
  310. package/src/nile-auto-complete/nile-auto-complete.test.ts +102 -145
  311. package/src/nile-auto-complete/nile-auto-complete.ts +1 -1
  312. package/src/nile-avatar/nile-avatar.test.ts +102 -112
  313. package/src/nile-badge/nile-badge.test.ts +642 -30
  314. package/src/nile-breadcrumb/nile-breadcrumb.test.ts +107 -0
  315. package/src/nile-breadcrumb-item/nile-breadcrumb-item.test.ts +106 -0
  316. package/src/nile-button/nile-button.test.ts +593 -61
  317. package/src/nile-button-filter/nile-button-filter.test.ts +106 -0
  318. package/src/nile-button-toggle/nile-button-toggle.test.ts +106 -0
  319. package/src/nile-button-toggle-group/nile-button-toggle-group.test.ts +104 -126
  320. package/src/nile-calendar/nile-calendar.test.ts +102 -406
  321. package/src/nile-card/nile-card.test.ts +103 -71
  322. package/src/nile-checkbox/nile-checkbox.test.ts +614 -108
  323. package/src/nile-chip/nile-chip.test.ts +102 -136
  324. package/src/nile-circular-progressbar/nile-circular-progressbar.test.ts +106 -0
  325. package/src/nile-date-picker/nile-date-picker.test.ts +106 -0
  326. package/src/nile-dialog/nile-dialog.test.ts +102 -164
  327. package/src/nile-divider/nile-divider.test.ts +659 -0
  328. package/src/nile-drawer/nile-drawer.test.ts +105 -105
  329. package/src/nile-dropdown/nile-dropdown.test.ts +102 -190
  330. package/src/nile-empty-state/nile-empty-state.test.ts +104 -67
  331. package/src/nile-error-message/nile-error-message.test.ts +104 -67
  332. package/src/nile-error-notification/nile-error-notification.test.ts +106 -0
  333. package/src/nile-file-preview/nile-file-preview.css.ts +2 -2
  334. package/src/nile-file-preview/nile-file-preview.template.ts +59 -23
  335. package/src/nile-file-preview/nile-file-preview.test.ts +105 -37
  336. package/src/nile-file-preview/nile-file-preview.ts +23 -56
  337. package/src/nile-file-preview/utils/nile-file-preview.util.ts +37 -8
  338. package/src/nile-file-upload/nile-file-upload.css.ts +15 -5
  339. package/src/nile-file-upload/nile-file-upload.template.ts +22 -18
  340. package/src/nile-file-upload/nile-file-upload.test.ts +105 -37
  341. package/src/nile-file-upload/nile-file-upload.ts +11 -3
  342. package/src/nile-file-upload/types/file-upload.enums.ts +20 -4
  343. package/src/nile-file-upload/utils/drag-drop.util.ts +20 -11
  344. package/src/nile-file-upload/utils/file-validation.util.ts +104 -22
  345. package/src/nile-filter-chip/nile-filter-chip.test.ts +103 -89
  346. package/src/nile-form-error-message/nile-form-error-message.test.ts +106 -0
  347. package/src/nile-form-group/nile-form-group.test.ts +103 -60
  348. package/src/nile-form-help-text/nile-form-help-text.test.ts +102 -106
  349. package/src/nile-format-date/nile-format-date.test.ts +106 -0
  350. package/src/nile-grid/nile-grid-head-item/nile-grid-head-item.ts +7 -5
  351. package/src/nile-grid/nile-grid-head-item/nile-grid-head-item.utils.ts +28 -0
  352. package/src/nile-grid/nile-grid.ts +6 -1
  353. package/src/nile-grid/nile-grid.utils.ts +18 -1
  354. package/src/nile-heading/nile-heading.test.ts +106 -0
  355. package/src/nile-hero/nile-hero.test.ts +103 -42
  356. package/src/nile-icon/nile-icon.test.ts +103 -50
  357. package/src/nile-icon-button/nile-icon-button.test.ts +667 -0
  358. package/src/nile-inline-edit/nile-inline-edit.test.ts +106 -0
  359. package/src/nile-input/nile-input.test.ts +105 -164
  360. package/src/nile-input/nile-input.ts +1 -1
  361. package/src/nile-link/nile-link.test.ts +104 -81
  362. package/src/nile-list/nile-list.test.ts +106 -0
  363. package/src/nile-list-item/nile-list-item.test.ts +106 -0
  364. package/src/nile-lite-tooltip/nile-lite-tooltip.test.ts +107 -0
  365. package/src/nile-loader/nile-loader.test.ts +103 -48
  366. package/src/nile-menu/nile-menu.test.ts +106 -0
  367. package/src/nile-menu-item/nile-menu-item.test.ts +106 -0
  368. package/src/nile-option/nile-option.test.ts +106 -0
  369. package/src/nile-option-group/nile-option-group.test.ts +106 -0
  370. package/src/nile-page-header/nile-page-header.test.ts +106 -0
  371. package/src/nile-pagination/nile-pagination.test.ts +106 -0
  372. package/src/nile-popover/nile-popover.test.ts +103 -83
  373. package/src/nile-popup/nile-popup.test.ts +102 -82
  374. package/src/nile-progress-bar/nile-progress-bar.test.ts +103 -52
  375. package/src/nile-radio/nile-radio.test.ts +103 -78
  376. package/src/nile-radio-group/nile-radio-group.test.ts +104 -213
  377. package/src/nile-section-message/nile-section-message.test.ts +106 -0
  378. package/src/nile-select/nile-select.test.ts +105 -308
  379. package/src/nile-skeleton-loader/nile-skeleton-loader.test.ts +106 -0
  380. package/src/nile-slide-toggle/nile-slide-toggle.test.ts +103 -58
  381. package/src/nile-slider/nile-slider.test.ts +106 -0
  382. package/src/nile-spinner/nile-spinner.test.ts +668 -0
  383. package/src/nile-split-panel/nile-split-panel.test.ts +106 -0
  384. package/src/nile-stepper/nile-stepper.test.ts +107 -0
  385. package/src/nile-stepper-item/nile-stepper-item.test.ts +106 -0
  386. package/src/nile-tab/nile-tab.test.ts +106 -0
  387. package/src/nile-tab-group/nile-tab-group.test.ts +104 -211
  388. package/src/nile-tab-panel/nile-tab-panel.test.ts +106 -0
  389. package/src/nile-tag/nile-tag.test.ts +675 -0
  390. package/src/nile-textarea/nile-textarea.test.ts +104 -100
  391. package/src/nile-title/nile-title.test.ts +106 -0
  392. package/src/nile-toast/nile-toast.test.ts +625 -0
  393. package/src/nile-toolbar/nile-toolbar.test.ts +106 -0
  394. package/src/nile-tooltip/nile-tooltip.test.ts +645 -0
  395. package/src/nile-virtual-select/nile-virtual-select.test.ts +104 -772
  396. package/vscode-html-custom-data.json +8 -3
  397. package/web-test-runner.config.mjs +4 -2
  398. package/dist/axe.min-2720cd56.esm.js +0 -1
  399. package/dist/axe.min-69d47269.cjs.js +0 -2
  400. package/dist/axe.min-69d47269.cjs.js.map +0 -1
  401. package/dist/css-tag-bb10c0fa.cjs.js +0 -6
  402. package/dist/css-tag-bb10c0fa.cjs.js.map +0 -1
  403. package/dist/css-tag-dc564feb.esm.js +0 -6
  404. package/dist/fixture-958445f8.cjs.js +0 -395
  405. package/dist/fixture-958445f8.cjs.js.map +0 -1
  406. package/dist/fixture-985bba12.esm.js +0 -569
  407. package/dist/nile-accordion/nile-accordian.test.cjs.js +0 -2
  408. package/dist/nile-accordion/nile-accordian.test.cjs.js.map +0 -1
  409. package/dist/nile-accordion/nile-accordian.test.esm.js +0 -1
  410. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +0 -2
  411. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +0 -1
  412. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +0 -9
  413. package/dist/nile-avatar/nile-avatar.test.cjs.js +0 -2
  414. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +0 -1
  415. package/dist/nile-avatar/nile-avatar.test.esm.js +0 -11
  416. package/dist/nile-badge/nile-badge.test.cjs.js +0 -2
  417. package/dist/nile-badge/nile-badge.test.cjs.js.map +0 -1
  418. package/dist/nile-badge/nile-badge.test.esm.js +0 -1
  419. package/dist/nile-button/nile-button.test.cjs.js +0 -2
  420. package/dist/nile-button/nile-button.test.cjs.js.map +0 -1
  421. package/dist/nile-button/nile-button.test.esm.js +0 -4
  422. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +0 -2
  423. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js.map +0 -1
  424. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +0 -49
  425. package/dist/nile-calendar/nile-calendar.test.cjs.js +0 -2
  426. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +0 -1
  427. package/dist/nile-calendar/nile-calendar.test.esm.js +0 -11
  428. package/dist/nile-card/nile-card.test.cjs.js +0 -2
  429. package/dist/nile-card/nile-card.test.cjs.js.map +0 -1
  430. package/dist/nile-card/nile-card.test.esm.js +0 -51
  431. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +0 -2
  432. package/dist/nile-checkbox/nile-checkbox.test.cjs.js.map +0 -1
  433. package/dist/nile-checkbox/nile-checkbox.test.esm.js +0 -17
  434. package/dist/nile-chip/nile-chip.test.cjs.js +0 -2
  435. package/dist/nile-chip/nile-chip.test.cjs.js.map +0 -1
  436. package/dist/nile-chip/nile-chip.test.esm.js +0 -1
  437. package/dist/nile-dialog/nile-dialog.test.cjs.js +0 -2
  438. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +0 -1
  439. package/dist/nile-dialog/nile-dialog.test.esm.js +0 -7
  440. package/dist/nile-drawer/nile-drawer.test.cjs.js +0 -2
  441. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +0 -1
  442. package/dist/nile-drawer/nile-drawer.test.esm.js +0 -17
  443. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +0 -2
  444. package/dist/nile-dropdown/nile-dropdown.test.cjs.js.map +0 -1
  445. package/dist/nile-dropdown/nile-dropdown.test.esm.js +0 -28
  446. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +0 -2
  447. package/dist/nile-empty-state/nile-empty-state.test.cjs.js.map +0 -1
  448. package/dist/nile-empty-state/nile-empty-state.test.esm.js +0 -9
  449. package/dist/nile-error-message/nile-error-message.test.cjs.js +0 -2
  450. package/dist/nile-error-message/nile-error-message.test.cjs.js.map +0 -1
  451. package/dist/nile-error-message/nile-error-message.test.esm.js +0 -1
  452. package/dist/nile-file-preview/nile-file-preview.test.cjs.js +0 -2
  453. package/dist/nile-file-preview/nile-file-preview.test.cjs.js.map +0 -1
  454. package/dist/nile-file-preview/nile-file-preview.test.esm.js +0 -1
  455. package/dist/nile-file-upload/nile-file-upload.test.cjs.js +0 -2
  456. package/dist/nile-file-upload/nile-file-upload.test.cjs.js.map +0 -1
  457. package/dist/nile-file-upload/nile-file-upload.test.esm.js +0 -1
  458. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +0 -2
  459. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js.map +0 -1
  460. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +0 -20
  461. package/dist/nile-form-group/nile-form-group.test.cjs.js +0 -2
  462. package/dist/nile-form-group/nile-form-group.test.cjs.js.map +0 -1
  463. package/dist/nile-form-group/nile-form-group.test.esm.js +0 -1
  464. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +0 -2
  465. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js.map +0 -1
  466. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +0 -1
  467. package/dist/nile-hero/nile-hero.test.cjs.js +0 -2
  468. package/dist/nile-hero/nile-hero.test.cjs.js.map +0 -1
  469. package/dist/nile-hero/nile-hero.test.esm.js +0 -14
  470. package/dist/nile-icon/nile-icon.test.cjs.js +0 -2
  471. package/dist/nile-icon/nile-icon.test.cjs.js.map +0 -1
  472. package/dist/nile-icon/nile-icon.test.esm.js +0 -1
  473. package/dist/nile-input/nile-input.test.cjs.js +0 -2
  474. package/dist/nile-input/nile-input.test.cjs.js.map +0 -1
  475. package/dist/nile-input/nile-input.test.esm.js +0 -17
  476. package/dist/nile-link/nile-link.test.cjs.js +0 -2
  477. package/dist/nile-link/nile-link.test.cjs.js.map +0 -1
  478. package/dist/nile-link/nile-link.test.esm.js +0 -1
  479. package/dist/nile-loader/nile-loader.test.cjs.js +0 -2
  480. package/dist/nile-loader/nile-loader.test.cjs.js.map +0 -1
  481. package/dist/nile-loader/nile-loader.test.esm.js +0 -1
  482. package/dist/nile-popover/nile-popover.test.cjs.js +0 -2
  483. package/dist/nile-popover/nile-popover.test.cjs.js.map +0 -1
  484. package/dist/nile-popover/nile-popover.test.esm.js +0 -21
  485. package/dist/nile-popup/nile-popup.test.cjs.js +0 -2
  486. package/dist/nile-popup/nile-popup.test.cjs.js.map +0 -1
  487. package/dist/nile-popup/nile-popup.test.esm.js +0 -1
  488. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +0 -2
  489. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js.map +0 -1
  490. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +0 -1
  491. package/dist/nile-radio/nile-radio.test.cjs.js +0 -2
  492. package/dist/nile-radio/nile-radio.test.cjs.js.map +0 -1
  493. package/dist/nile-radio/nile-radio.test.esm.js +0 -1
  494. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +0 -2
  495. package/dist/nile-radio-group/nile-radio-group.test.cjs.js.map +0 -1
  496. package/dist/nile-radio-group/nile-radio-group.test.esm.js +0 -57
  497. package/dist/nile-select/nile-select.test.cjs.js +0 -2
  498. package/dist/nile-select/nile-select.test.cjs.js.map +0 -1
  499. package/dist/nile-select/nile-select.test.esm.js +0 -55
  500. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +0 -2
  501. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js.map +0 -1
  502. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +0 -1
  503. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +0 -2
  504. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +0 -1
  505. package/dist/nile-tab-group/nile-tab-group.test.esm.js +0 -65
  506. package/dist/nile-textarea/nile-textarea.test.cjs.js +0 -2
  507. package/dist/nile-textarea/nile-textarea.test.cjs.js.map +0 -1
  508. package/dist/nile-textarea/nile-textarea.test.esm.js +0 -1
  509. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +0 -2
  510. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +0 -1
  511. package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +0 -93
  512. package/dist/scopedElementsWrapper-31107e48.esm.js +0 -1
  513. package/dist/scopedElementsWrapper-9b188ea6.cjs.js +0 -2
  514. package/dist/scopedElementsWrapper-9b188ea6.cjs.js.map +0 -1
  515. package/dist/sinon-esm-68c8e378.esm.js +0 -1
  516. package/dist/sinon-esm-97570c13.cjs.js +0 -2
  517. package/dist/sinon-esm-97570c13.cjs.js.map +0 -1
@@ -1,55 +1,108 @@
1
- import { fixture, html, expect } from '@open-wc/testing';
2
- import './nile-form-group'; // Make sure to import the component to be tested
1
+ import { expect, fixture, html } from '@open-wc/testing';
2
+ import './nile-form-group';
3
3
  describe('NileFormGroup', () => {
4
- it('should have default properties', async () => {
5
- const el = await fixture(html `<nile-form-group></nile-form-group>`);
6
- expect(el.title).to.equal('');
7
- expect(el.subtitle).to.equal('');
8
- });
9
- it('should render title when set', async () => {
10
- const el = await fixture(html `<nile-form-group title="Test Title"></nile-form-group>`);
11
- const titleSlot = el.shadowRoot.querySelector('slot[name="title"]');
12
- expect(titleSlot).to.exist;
13
- expect(titleSlot?.textContent?.trim()).to.equal('Test Title');
14
- });
15
- it('should render subtitle when set', async () => {
16
- const el = await fixture(html `<nile-form-group title="Test Title" subtitle="Test Subtitle"></nile-form-group>`);
17
- const subtitleSlot = el.shadowRoot.querySelector('slot[name="subtitle"]');
18
- expect(subtitleSlot).to.exist;
19
- expect(subtitleSlot?.textContent?.trim()).to.equal('Test Subtitle');
20
- });
21
- it('should not render title and subtitle if not set', async () => {
22
- const el = await fixture(html `<nile-form-group></nile-form-group>`);
23
- const titleSlot = el.shadowRoot.querySelector('slot[name="title"]');
24
- const subtitleSlot = el.shadowRoot.querySelector('slot[name="subtitle"]');
25
- expect(titleSlot).to.not.exist;
26
- expect(subtitleSlot).to.not.exist;
27
- });
28
- it('should render content inside the form body slot', async () => {
29
- const el = await fixture(html `<nile-form-group><p>Form Content</p></nile-form-group>`);
30
- const bodySlot = el.shadowRoot.querySelector('.form__body slot');
31
- const assignedNodes = bodySlot?.assignedNodes() ?? [];
32
- expect(assignedNodes.length).to.equal(1);
33
- expect(assignedNodes[0].textContent.trim()).to.equal('Form Content');
34
- });
35
- it('should reflect title and subtitle attributes', async () => {
36
- const el = await fixture(html `<nile-form-group title="Test Title" subtitle="Test Subtitle"></nile-form-group>`);
37
- expect(el.getAttribute('title')).to.equal('Test Title');
38
- expect(el.getAttribute('subtitle')).to.equal('Test Subtitle');
39
- });
40
- it('should update the title dynamically', async () => {
41
- const el = await fixture(html `<nile-form-group title="Initial Title"></nile-form-group>`);
42
- el.title = 'Updated Title';
4
+ it('1. renders', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el).to.exist; });
5
+ it('2. shadow root', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot).to.not.be.null; });
6
+ it('3. tag name', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.tagName.toLowerCase()).to.equal('nile-form-group'); });
7
+ it('4. title defaults empty', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.title).to.equal(''); });
8
+ it('5. subtitle defaults empty', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.subtitle).to.equal(''); });
9
+ it('6. base part', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="base"]')).to.exist; });
10
+ it('7. body part', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="body"]')).to.exist; });
11
+ it('8. form__base class', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__base')).to.exist; });
12
+ it('9. form__body class', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__body')).to.exist; });
13
+ it('10. default slot', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('slot:not([name])')).to.exist; });
14
+ it('11. no header without title', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="header"]')).to.be.null; });
15
+ it('12. header with title', async () => { const el = await fixture(html `<nile-form-group title="Form Title"></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="header"]')).to.exist; });
16
+ it('13. header part', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="header"]')).to.exist; });
17
+ it('14. content part', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="content"]')).to.exist; });
18
+ it('15. title slot', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('slot[name="title"]')).to.exist; });
19
+ it('16. title text', async () => { const el = await fixture(html `<nile-form-group title="Form Title"></nile-form-group>`); expect(el.shadowRoot.textContent).to.contain('Form Title'); });
20
+ it('17. subtitle slot', async () => { const el = await fixture(html `<nile-form-group title="T" subtitle="Sub"></nile-form-group>`); expect(el.shadowRoot.querySelector('slot[name="subtitle"]')).to.exist; });
21
+ it('18. subtitle text', async () => { const el = await fixture(html `<nile-form-group title="T" subtitle="Sub Text"></nile-form-group>`); expect(el.shadowRoot.textContent).to.contain('Sub Text'); });
22
+ it('19. no subtitle without subtitle', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('slot[name="subtitle"]')).to.be.null; });
23
+ it('20. action slot', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('slot[name="action"]')).to.exist; });
24
+ it('21. divider with title', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('nile-divider')).to.exist; });
25
+ it('22. no divider without title', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('nile-divider')).to.be.null; });
26
+ it('23. divider part', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('[part="divider"]')).to.exist; });
27
+ it('24. form__header class', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__header')).to.exist; });
28
+ it('25. form__title-content class', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__title-content')).to.exist; });
29
+ it('26. form__title class', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__title')).to.exist; });
30
+ it('27. form__subtitle class', async () => { const el = await fixture(html `<nile-form-group title="T" subtitle="S"></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__subtitle')).to.exist; });
31
+ it('28. form__action class', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__action')).to.exist; });
32
+ it('29. form__divider class', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.shadowRoot.querySelector('.form__divider')).to.exist; });
33
+ it('30. title reflected', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); expect(el.getAttribute('title')).to.equal('T'); });
34
+ it('31. subtitle reflected', async () => { const el = await fixture(html `<nile-form-group subtitle="S"></nile-form-group>`); expect(el.getAttribute('subtitle')).to.equal('S'); });
35
+ it('32. slotted content', async () => { const el = await fixture(html `<nile-form-group><input type="text" /></nile-form-group>`); expect(el.querySelector('input')).to.exist; });
36
+ it('33. slotted action', async () => { const el = await fixture(html `<nile-form-group title="T"><button slot="action">Act</button></nile-form-group>`); expect(el.querySelector('[slot="action"]')).to.exist; });
37
+ it('34. dynamic title', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.title = 'New Title'; await el.updateComplete; expect(el.shadowRoot.querySelector('[part="header"]')).to.exist; });
38
+ it('35. dynamic subtitle', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); el.subtitle = 'New Sub'; await el.updateComplete; expect(el.shadowRoot.querySelector('slot[name="subtitle"]')).to.exist; });
39
+ it('36. remove title', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); el.title = ''; await el.updateComplete; expect(el.shadowRoot.querySelector('[part="header"]')).to.be.null; });
40
+ it('37. has styles', async () => { expect((await import('./nile-form-group')).NileFormGroup.styles).to.exist; });
41
+ it('38. is defined', async () => { expect(customElements.get('nile-form-group')).to.exist; });
42
+ it('39. shadow mode', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.mode).to.equal('open'); });
43
+ it('40. isConnected', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.isConnected).to.be.true; });
44
+ it('41. removal', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.remove(); expect(el.isConnected).to.be.false; });
45
+ it('42. outerHTML', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.outerHTML).to.contain('nile-form-group'); });
46
+ it('43. matches', async () => { const el = await fixture(html `<nile-form-group class="x"></nile-form-group>`); expect(el.matches('nile-form-group.x')).to.be.true; });
47
+ it('44. closest', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.closest('nile-form-group')).to.equal(el); });
48
+ it('45. cloneNode', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.cloneNode(true).tagName.toLowerCase()).to.equal('nile-form-group'); });
49
+ it('46. dispatchEvent', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); let f = false; el.addEventListener('c', () => (f = true)); el.dispatchEvent(new Event('c')); expect(f).to.be.true; });
50
+ it('47. updateComplete', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); const r = await el.updateComplete; expect(r).to.not.be.undefined; });
51
+ it('48. requestUpdate', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.requestUpdate(); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; });
52
+ it('49. render method', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.render).to.be.a('function'); });
53
+ it('50. shadowRoot host', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.host).to.equal(el); });
54
+ it('51. class attr', async () => { const el = await fixture(html `<nile-form-group class="fg"></nile-form-group>`); expect(el.classList.contains('fg')).to.be.true; });
55
+ it('52. id attr', async () => { const el = await fixture(html `<nile-form-group id="fg1"></nile-form-group>`); expect(el.id).to.equal('fg1'); });
56
+ it('53. style attr', async () => { const el = await fixture(html `<nile-form-group style="color:red"></nile-form-group>`); expect(el.style.color).to.equal('red'); });
57
+ it('54. data attr', async () => { const el = await fixture(html `<nile-form-group data-x="1"></nile-form-group>`); expect(el.getAttribute('data-x')).to.equal('1'); });
58
+ it('55. hidden', async () => { const el = await fixture(html `<nile-form-group hidden></nile-form-group>`); expect(el.hidden).to.be.true; });
59
+ it('56. dir', async () => { const el = await fixture(html `<nile-form-group dir="rtl"></nile-form-group>`); expect(el.dir).to.equal('rtl'); });
60
+ it('57. nodeType', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.nodeType).to.equal(1); });
61
+ it('58. multiple instances', async () => { const c = await fixture(html `<div><nile-form-group></nile-form-group><nile-form-group></nile-form-group></div>`); expect(c.querySelectorAll('nile-form-group').length).to.equal(2); });
62
+ it('59. parent-child', async () => { const c = await fixture(html `<div><nile-form-group></nile-form-group></div>`); expect(c.querySelector('nile-form-group').parentElement).to.equal(c); });
63
+ it('60. localName', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.localName).to.equal('nile-form-group'); });
64
+ it('61. namespaceURI', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.namespaceURI).to.equal('http://www.w3.org/1999/xhtml'); });
65
+ it('62. ownerDocument', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.ownerDocument).to.equal(document); });
66
+ it('63. classList add', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.classList.add('z'); expect(el.classList.contains('z')).to.be.true; });
67
+ it('64. dataset', async () => { const el = await fixture(html `<nile-form-group data-idx="0"></nile-form-group>`); expect(el.dataset.idx).to.equal('0'); });
68
+ it('65. getBoundingClientRect', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.getBoundingClientRect()).to.exist; });
69
+ it('66. title type string', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(typeof el.title).to.equal('string'); });
70
+ it('67. subtitle type string', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(typeof el.subtitle).to.equal('string'); });
71
+ it('68. aria-label', async () => { const el = await fixture(html `<nile-form-group aria-label="Form"></nile-form-group>`); expect(el.getAttribute('aria-label')).to.equal('Form'); });
72
+ it('69. role', async () => { const el = await fixture(html `<nile-form-group role="group"></nile-form-group>`); expect(el.getAttribute('role')).to.equal('group'); });
73
+ it('70. createElement', async () => { const el = document.createElement('nile-form-group'); document.body.appendChild(el); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; document.body.removeChild(el); });
74
+ it('71. tabindex', async () => { const el = await fixture(html `<nile-form-group tabindex="0"></nile-form-group>`); expect(el.getAttribute('tabindex')).to.equal('0'); });
75
+ it('72. lang attr', async () => { const el = await fixture(html `<nile-form-group lang="en"></nile-form-group>`); expect(el.lang).to.equal('en'); });
76
+ it('73. no inputs in shadow', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelectorAll('input').length).to.equal(0); });
77
+ it('74. no buttons in shadow', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelectorAll('button').length).to.equal(0); });
78
+ it('75. children survived update', async () => { const el = await fixture(html `<nile-form-group><input id="i1" /></nile-form-group>`); el.title = 'New'; await el.updateComplete; expect(el.querySelector('#i1')).to.exist; });
79
+ it('76. nileformgroup query', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.nileformgroup).to.exist; });
80
+ it('77. rapid title changes', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); for (let i = 0; i < 5; i++) {
81
+ el.title = `Title ${i}`;
43
82
  await el.updateComplete;
44
- const titleSlot = el.shadowRoot.querySelector('slot[name="title"]') ?? {};
45
- expect(titleSlot.textContent.trim()).to.equal('Updated Title');
46
- });
47
- it('should update the subtitle dynamically', async () => {
48
- const el = await fixture(html `<nile-form-group title="Test Title" subtitle="Initial Subtitle"></nile-form-group>`);
49
- el.subtitle = 'Updated Subtitle';
50
- await el.updateComplete;
51
- const subtitleSlot = el.shadowRoot.querySelector('slot[name="subtitle"]') ?? {};
52
- expect(subtitleSlot.textContent.trim()).to.equal('Updated Subtitle');
53
- });
83
+ } expect(el.shadowRoot.textContent).to.contain('Title 4'); });
84
+ it('78. no form', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('form')).to.be.null; });
85
+ it('79. shadow childNodes', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.childNodes.length).to.be.greaterThan(0); });
86
+ it('80. scrollIntoView', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.scrollIntoView).to.be.a('function'); });
87
+ it('81. focus method', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.focus).to.be.a('function'); });
88
+ it('82. blur method', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.blur).to.be.a('function'); });
89
+ it('83. dispatchCustomEvent', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); let d; el.addEventListener('t', ((e) => { d = e.detail; })); el.dispatchEvent(new CustomEvent('t', { detail: 'x' })); expect(d).to.equal('x'); });
90
+ it('84. slotted title', async () => { const el = await fixture(html `<nile-form-group title="T"><span slot="title">Custom Title</span></nile-form-group>`); expect(el.querySelector('[slot="title"]')).to.exist; });
91
+ it('85. slotted subtitle', async () => { const el = await fixture(html `<nile-form-group title="T" subtitle="S"><span slot="subtitle">Custom Sub</span></nile-form-group>`); expect(el.querySelector('[slot="subtitle"]')).to.exist; });
92
+ it('86. multiple children', async () => { const el = await fixture(html `<nile-form-group><input /><input /><input /></nile-form-group>`); expect(el.querySelectorAll('input').length).to.equal(3); });
93
+ it('87. nested form groups', async () => { const el = await fixture(html `<nile-form-group title="P"><nile-form-group title="C"></nile-form-group></nile-form-group>`); expect(el.querySelector('nile-form-group')).to.exist; });
94
+ it('88. no anchor', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('a')).to.be.null; });
95
+ it('89. no img', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('img')).to.be.null; });
96
+ it('90. no svg', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); expect(el.shadowRoot.querySelector('svg')).to.be.null; });
97
+ it('91. toggle hidden', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.hidden = true; expect(el.hidden).to.be.true; el.hidden = false; expect(el.hidden).to.be.false; });
98
+ it('92. class toggle', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.classList.toggle('active'); expect(el.classList.contains('active')).to.be.true; });
99
+ it('93. setAttribute title', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.setAttribute('title', 'Set'); await el.updateComplete; expect(el.title).to.equal('Set'); });
100
+ it('94. setAttribute subtitle', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); el.setAttribute('subtitle', 'Set Sub'); await el.updateComplete; expect(el.subtitle).to.equal('Set Sub'); });
101
+ it('95. removeAttribute title', async () => { const el = await fixture(html `<nile-form-group title="T"></nile-form-group>`); el.removeAttribute('title'); await el.updateComplete; expect(el.getAttribute('title')).to.be.null; });
102
+ it('96. childElementCount', async () => { const el = await fixture(html `<nile-form-group><input /></nile-form-group>`); expect(el.childElementCount).to.equal(1); });
103
+ it('97. firstElementChild', async () => { const el = await fixture(html `<nile-form-group><input /></nile-form-group>`); expect(el.firstElementChild.tagName.toLowerCase()).to.equal('input'); });
104
+ it('98. textContent', async () => { const el = await fixture(html `<nile-form-group>Text</nile-form-group>`); expect(el.textContent).to.contain('Text'); });
105
+ it('99. re-renders', async () => { const el = await fixture(html `<nile-form-group></nile-form-group>`); el.title = 'A'; await el.updateComplete; el.title = ''; await el.updateComplete; el.title = 'B'; await el.updateComplete; expect(el.shadowRoot.textContent).to.contain('B'); });
106
+ it('100. full integration', async () => { const el = await fixture(html `<nile-form-group title="Settings" subtitle="Configure" class="fg" id="fg1"><input /><button slot="action">Save</button></nile-form-group>`); expect(el.title).to.equal('Settings'); expect(el.subtitle).to.equal('Configure'); expect(el.id).to.equal('fg1'); expect(el.shadowRoot.querySelector('[part="header"]')).to.exist; expect(el.shadowRoot.querySelector('nile-divider')).to.exist; expect(el.querySelector('input')).to.exist; expect(el.querySelector('[slot="action"]')).to.exist; });
54
107
  });
55
108
  //# sourceMappingURL=nile-form-group.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-form-group.test.js","sourceRoot":"","sources":["../../../src/nile-form-group/nile-form-group.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { fixture, html, expect } from '@open-wc/testing';\nimport './nile-form-group'; // Make sure to import the component to be tested\nimport NileFormGroup from './nile-form-group';\n\ndescribe('NileFormGroup', () => {\n it('should have default properties', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`);\n expect(el.title).to.equal('');\n expect(el.subtitle).to.equal('');\n });\n\n it('should render title when set', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Test Title\"></nile-form-group>`);\n const titleSlot = el.shadowRoot!.querySelector('slot[name=\"title\"]');\n expect(titleSlot).to.exist;\n expect(titleSlot?.textContent?.trim()).to.equal('Test Title');\n });\n\n it('should render subtitle when set', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Test Title\" subtitle=\"Test Subtitle\"></nile-form-group>`);\n const subtitleSlot = el.shadowRoot!.querySelector('slot[name=\"subtitle\"]');\n expect(subtitleSlot).to.exist;\n expect(subtitleSlot?.textContent?.trim()).to.equal('Test Subtitle');\n });\n\n it('should not render title and subtitle if not set', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`);\n const titleSlot = el.shadowRoot!.querySelector('slot[name=\"title\"]');\n const subtitleSlot = el.shadowRoot!.querySelector('slot[name=\"subtitle\"]');\n expect(titleSlot).to.not.exist;\n expect(subtitleSlot).to.not.exist;\n });\n\n it('should render content inside the form body slot', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group><p>Form Content</p></nile-form-group>`);\n const bodySlot = el.shadowRoot!.querySelector<HTMLSlotElement>('.form__body slot');\n const assignedNodes = bodySlot?.assignedNodes() ?? [] as any;\n expect(assignedNodes.length).to.equal(1);\n expect(assignedNodes[0].textContent.trim()).to.equal('Form Content');\n });\n\n it('should reflect title and subtitle attributes', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Test Title\" subtitle=\"Test Subtitle\"></nile-form-group>`);\n expect(el.getAttribute('title')).to.equal('Test Title');\n expect(el.getAttribute('subtitle')).to.equal('Test Subtitle');\n });\n\n it('should update the title dynamically', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Initial Title\"></nile-form-group>`);\n el.title = 'Updated Title';\n await el.updateComplete;\n const titleSlot = el.shadowRoot!.querySelector('slot[name=\"title\"]')?? {} as any;\n expect(titleSlot.textContent.trim()).to.equal('Updated Title');\n });\n\n it('should update the subtitle dynamically', async () => {\n const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Test Title\" subtitle=\"Initial Subtitle\"></nile-form-group>`);\n el.subtitle = 'Updated Subtitle';\n await el.updateComplete;\n const subtitleSlot = el.shadowRoot!.querySelector('slot[name=\"subtitle\"]') ?? {} as any;\n expect(subtitleSlot.textContent.trim()).to.equal('Updated Subtitle');\n });\n});\n"]}
1
+ {"version":3,"file":"nile-form-group.test.js","sourceRoot":"","sources":["../../../src/nile-form-group/nile-form-group.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,mBAAmB,CAAC;AAG3B,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3I,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChK,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrL,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClK,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxK,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxL,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxL,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7L,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7L,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/L,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3M,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,wDAAwD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtN,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvM,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzM,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzM,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,wDAAwD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1M,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,8DAA8D,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9N,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,mEAAmE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtN,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChO,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3M,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3M,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzM,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACzM,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5M,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1N,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1M,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,4DAA4D,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7N,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5M,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9M,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzL,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,kDAAkD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClM,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,0DAA0D,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChM,EAAE,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,iFAAiF,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChO,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChP,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpQ,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClP,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjH,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9F,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzK,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9J,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxK,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7K,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACrL,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3K,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpN,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChP,EAAE,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAChM,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChN,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpK,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzK,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,gDAAgD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACrL,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,8CAA8C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/J,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,uDAAuD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpL,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,gDAAgD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrL,EAAE,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,4CAA4C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3J,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7J,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzJ,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAA,mFAAmF,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClO,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAA,gDAAgD,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,iBAAiB,CAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9L,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3K,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9L,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1K,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnM,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,kDAAkD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1K,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAClL,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7K,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnL,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,uDAAuD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpM,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,kDAAkD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpL,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAkB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7O,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,kDAAkD,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxL,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnK,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxM,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1M,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,sDAAsD,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9O,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtK,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAAC,EAAE,CAAC,KAAK,GAAG,SAAS,CAAC,EAAE,CAAC;QAAC,MAAM,EAAE,CAAC,cAAc,CAAC;IAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/Q,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChL,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChM,EAAE,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7K,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClK,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChK,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,IAAI,CAAM,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAc,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrT,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qFAAqF,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAClO,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,mGAAmG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtP,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,gEAAgE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrN,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,IAAI,CAAA,4FAA4F,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChO,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/K,EAAE,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9K,EAAE,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9K,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/N,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/M,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9N,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzP,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,+CAA+C,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClP,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,8CAA8C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpL,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,8CAA8C,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjN,EAAE,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,yCAAyC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1K,EAAE,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,qCAAqC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxS,EAAE,CAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAgB,IAAI,CAAA,2IAA2I,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,UAAW,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7jB,CAAC,CAAC,CAAC","sourcesContent":["import { expect, fixture, html } from '@open-wc/testing';\nimport './nile-form-group';\nimport type { NileFormGroup } from './nile-form-group';\n\ndescribe('NileFormGroup', () => {\n it('1. renders', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el).to.exist; });\n it('2. shadow root', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot).to.not.be.null; });\n it('3. tag name', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.tagName.toLowerCase()).to.equal('nile-form-group'); });\n it('4. title defaults empty', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.title).to.equal(''); });\n it('5. subtitle defaults empty', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.subtitle).to.equal(''); });\n it('6. base part', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"base\"]')).to.exist; });\n it('7. body part', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"body\"]')).to.exist; });\n it('8. form__base class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__base')).to.exist; });\n it('9. form__body class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__body')).to.exist; });\n it('10. default slot', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('slot:not([name])')).to.exist; });\n it('11. no header without title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"header\"]')).to.be.null; });\n it('12. header with title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Form Title\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"header\"]')).to.exist; });\n it('13. header part', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"header\"]')).to.exist; });\n it('14. content part', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"content\"]')).to.exist; });\n it('15. title slot', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('slot[name=\"title\"]')).to.exist; });\n it('16. title text', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Form Title\"></nile-form-group>`); expect(el.shadowRoot!.textContent).to.contain('Form Title'); });\n it('17. subtitle slot', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\" subtitle=\"Sub\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('slot[name=\"subtitle\"]')).to.exist; });\n it('18. subtitle text', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\" subtitle=\"Sub Text\"></nile-form-group>`); expect(el.shadowRoot!.textContent).to.contain('Sub Text'); });\n it('19. no subtitle without subtitle', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('slot[name=\"subtitle\"]')).to.be.null; });\n it('20. action slot', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('slot[name=\"action\"]')).to.exist; });\n it('21. divider with title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('nile-divider')).to.exist; });\n it('22. no divider without title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('nile-divider')).to.be.null; });\n it('23. divider part', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('[part=\"divider\"]')).to.exist; });\n it('24. form__header class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__header')).to.exist; });\n it('25. form__title-content class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__title-content')).to.exist; });\n it('26. form__title class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__title')).to.exist; });\n it('27. form__subtitle class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\" subtitle=\"S\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__subtitle')).to.exist; });\n it('28. form__action class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__action')).to.exist; });\n it('29. form__divider class', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.shadowRoot!.querySelector('.form__divider')).to.exist; });\n it('30. title reflected', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); expect(el.getAttribute('title')).to.equal('T'); });\n it('31. subtitle reflected', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group subtitle=\"S\"></nile-form-group>`); expect(el.getAttribute('subtitle')).to.equal('S'); });\n it('32. slotted content', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group><input type=\"text\" /></nile-form-group>`); expect(el.querySelector('input')).to.exist; });\n it('33. slotted action', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"><button slot=\"action\">Act</button></nile-form-group>`); expect(el.querySelector('[slot=\"action\"]')).to.exist; });\n it('34. dynamic title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.title = 'New Title'; await el.updateComplete; expect(el.shadowRoot!.querySelector('[part=\"header\"]')).to.exist; });\n it('35. dynamic subtitle', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); el.subtitle = 'New Sub'; await el.updateComplete; expect(el.shadowRoot!.querySelector('slot[name=\"subtitle\"]')).to.exist; });\n it('36. remove title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); el.title = ''; await el.updateComplete; expect(el.shadowRoot!.querySelector('[part=\"header\"]')).to.be.null; });\n it('37. has styles', async () => { expect((await import('./nile-form-group')).NileFormGroup.styles).to.exist; });\n it('38. is defined', async () => { expect(customElements.get('nile-form-group')).to.exist; });\n it('39. shadow mode', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.mode).to.equal('open'); });\n it('40. isConnected', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.isConnected).to.be.true; });\n it('41. removal', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.remove(); expect(el.isConnected).to.be.false; });\n it('42. outerHTML', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.outerHTML).to.contain('nile-form-group'); });\n it('43. matches', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group class=\"x\"></nile-form-group>`); expect(el.matches('nile-form-group.x')).to.be.true; });\n it('44. closest', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.closest('nile-form-group')).to.equal(el); });\n it('45. cloneNode', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect((el.cloneNode(true) as Element).tagName.toLowerCase()).to.equal('nile-form-group'); });\n it('46. dispatchEvent', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); let f = false; el.addEventListener('c', () => (f = true)); el.dispatchEvent(new Event('c')); expect(f).to.be.true; });\n it('47. updateComplete', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); const r = await el.updateComplete; expect(r).to.not.be.undefined; });\n it('48. requestUpdate', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.requestUpdate(); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; });\n it('49. render method', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.render).to.be.a('function'); });\n it('50. shadowRoot host', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.host).to.equal(el); });\n it('51. class attr', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group class=\"fg\"></nile-form-group>`); expect(el.classList.contains('fg')).to.be.true; });\n it('52. id attr', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group id=\"fg1\"></nile-form-group>`); expect(el.id).to.equal('fg1'); });\n it('53. style attr', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group style=\"color:red\"></nile-form-group>`); expect(el.style.color).to.equal('red'); });\n it('54. data attr', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group data-x=\"1\"></nile-form-group>`); expect(el.getAttribute('data-x')).to.equal('1'); });\n it('55. hidden', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group hidden></nile-form-group>`); expect(el.hidden).to.be.true; });\n it('56. dir', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group dir=\"rtl\"></nile-form-group>`); expect(el.dir).to.equal('rtl'); });\n it('57. nodeType', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.nodeType).to.equal(1); });\n it('58. multiple instances', async () => { const c = await fixture(html`<div><nile-form-group></nile-form-group><nile-form-group></nile-form-group></div>`); expect(c.querySelectorAll('nile-form-group').length).to.equal(2); });\n it('59. parent-child', async () => { const c = await fixture(html`<div><nile-form-group></nile-form-group></div>`); expect(c.querySelector('nile-form-group')!.parentElement).to.equal(c); });\n it('60. localName', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.localName).to.equal('nile-form-group'); });\n it('61. namespaceURI', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.namespaceURI).to.equal('http://www.w3.org/1999/xhtml'); });\n it('62. ownerDocument', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.ownerDocument).to.equal(document); });\n it('63. classList add', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.classList.add('z'); expect(el.classList.contains('z')).to.be.true; });\n it('64. dataset', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group data-idx=\"0\"></nile-form-group>`); expect(el.dataset.idx).to.equal('0'); });\n it('65. getBoundingClientRect', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.getBoundingClientRect()).to.exist; });\n it('66. title type string', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(typeof el.title).to.equal('string'); });\n it('67. subtitle type string', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(typeof el.subtitle).to.equal('string'); });\n it('68. aria-label', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group aria-label=\"Form\"></nile-form-group>`); expect(el.getAttribute('aria-label')).to.equal('Form'); });\n it('69. role', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group role=\"group\"></nile-form-group>`); expect(el.getAttribute('role')).to.equal('group'); });\n it('70. createElement', async () => { const el = document.createElement('nile-form-group') as NileFormGroup; document.body.appendChild(el); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; document.body.removeChild(el); });\n it('71. tabindex', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group tabindex=\"0\"></nile-form-group>`); expect(el.getAttribute('tabindex')).to.equal('0'); });\n it('72. lang attr', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group lang=\"en\"></nile-form-group>`); expect(el.lang).to.equal('en'); });\n it('73. no inputs in shadow', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelectorAll('input').length).to.equal(0); });\n it('74. no buttons in shadow', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelectorAll('button').length).to.equal(0); });\n it('75. children survived update', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group><input id=\"i1\" /></nile-form-group>`); el.title = 'New'; await el.updateComplete; expect(el.querySelector('#i1')).to.exist; });\n it('76. nileformgroup query', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.nileformgroup).to.exist; });\n it('77. rapid title changes', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); for (let i = 0; i < 5; i++) { el.title = `Title ${i}`; await el.updateComplete; } expect(el.shadowRoot!.textContent).to.contain('Title 4'); });\n it('78. no form', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('form')).to.be.null; });\n it('79. shadow childNodes', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.childNodes.length).to.be.greaterThan(0); });\n it('80. scrollIntoView', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.scrollIntoView).to.be.a('function'); });\n it('81. focus method', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.focus).to.be.a('function'); });\n it('82. blur method', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.blur).to.be.a('function'); });\n it('83. dispatchCustomEvent', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); let d: any; el.addEventListener('t', ((e: CustomEvent) => { d = e.detail; }) as EventListener); el.dispatchEvent(new CustomEvent('t', { detail: 'x' })); expect(d).to.equal('x'); });\n it('84. slotted title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"><span slot=\"title\">Custom Title</span></nile-form-group>`); expect(el.querySelector('[slot=\"title\"]')).to.exist; });\n it('85. slotted subtitle', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\" subtitle=\"S\"><span slot=\"subtitle\">Custom Sub</span></nile-form-group>`); expect(el.querySelector('[slot=\"subtitle\"]')).to.exist; });\n it('86. multiple children', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group><input /><input /><input /></nile-form-group>`); expect(el.querySelectorAll('input').length).to.equal(3); });\n it('87. nested form groups', async () => { const el = await fixture(html`<nile-form-group title=\"P\"><nile-form-group title=\"C\"></nile-form-group></nile-form-group>`); expect(el.querySelector('nile-form-group')).to.exist; });\n it('88. no anchor', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('a')).to.be.null; });\n it('89. no img', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('img')).to.be.null; });\n it('90. no svg', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); expect(el.shadowRoot!.querySelector('svg')).to.be.null; });\n it('91. toggle hidden', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.hidden = true; expect(el.hidden).to.be.true; el.hidden = false; expect(el.hidden).to.be.false; });\n it('92. class toggle', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.classList.toggle('active'); expect(el.classList.contains('active')).to.be.true; });\n it('93. setAttribute title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.setAttribute('title', 'Set'); await el.updateComplete; expect(el.title).to.equal('Set'); });\n it('94. setAttribute subtitle', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); el.setAttribute('subtitle', 'Set Sub'); await el.updateComplete; expect(el.subtitle).to.equal('Set Sub'); });\n it('95. removeAttribute title', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"T\"></nile-form-group>`); el.removeAttribute('title'); await el.updateComplete; expect(el.getAttribute('title')).to.be.null; });\n it('96. childElementCount', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group><input /></nile-form-group>`); expect(el.childElementCount).to.equal(1); });\n it('97. firstElementChild', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group><input /></nile-form-group>`); expect(el.firstElementChild!.tagName.toLowerCase()).to.equal('input'); });\n it('98. textContent', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group>Text</nile-form-group>`); expect(el.textContent).to.contain('Text'); });\n it('99. re-renders', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group></nile-form-group>`); el.title = 'A'; await el.updateComplete; el.title = ''; await el.updateComplete; el.title = 'B'; await el.updateComplete; expect(el.shadowRoot!.textContent).to.contain('B'); });\n it('100. full integration', async () => { const el = await fixture<NileFormGroup>(html`<nile-form-group title=\"Settings\" subtitle=\"Configure\" class=\"fg\" id=\"fg1\"><input /><button slot=\"action\">Save</button></nile-form-group>`); expect(el.title).to.equal('Settings'); expect(el.subtitle).to.equal('Configure'); expect(el.id).to.equal('fg1'); expect(el.shadowRoot!.querySelector('[part=\"header\"]')).to.exist; expect(el.shadowRoot!.querySelector('nile-divider')).to.exist; expect(el.querySelector('input')).to.exist; expect(el.querySelector('[slot=\"action\"]')).to.exist; });\n});\n"]}
@@ -1,88 +1,108 @@
1
- import { fixture, expect, html, elementUpdated } from '@open-wc/testing';
1
+ import { expect, fixture, html } from '@open-wc/testing';
2
2
  import './nile-form-help-text';
3
- import { NileFormHelpText } from './nile-form-help-text';
4
- const wait = (ms = 50000) => new Promise(resolve => setTimeout(resolve, ms));
5
3
  describe('NileFormHelpText', () => {
6
- it('should render with default properties', async () => {
7
- const el = await fixture(html `<nile-form-help-text>This is a short text</nile-form-help-text>`);
8
- expect(el).to.be.instanceOf(NileFormHelpText);
9
- expect(el.isExpanded).to.be.false;
10
- // Check if text content matches
11
- const textContent = el?.textContent?.trim();
12
- expect(textContent).to.equal('This is a short text');
13
- });
14
- it('should not show "View More" button if the text fits within the container', async () => {
15
- const el = await fixture(html `<nile-form-help-text>This is a short text</nile-form-help-text>`);
16
- await elementUpdated(el);
17
- const moreButton = el.shadowRoot?.querySelector('.nile-form-help-text__more-button');
18
- expect(moreButton).to.be.null;
19
- expect(el.showButton).to.be.false;
20
- });
21
- it('should show "View More" button if the text overflows the container', async () => {
22
- const longText = 'This is a very long help text that exceeds the container width and should show a "View More" button.';
23
- const el = await fixture(html `<nile-form-help-text>${longText}</nile-form-help-text>`);
24
- // Simulate overflow
25
- const textContainer = el.shadowRoot?.querySelector('.help__text__full');
26
- Object.defineProperty(textContainer, 'scrollWidth', { value: 300 });
27
- Object.defineProperty(textContainer, 'clientWidth', { value: 200 });
28
- el.decideToToggleShowButton();
29
- await elementUpdated(el);
30
- const moreButton = el.shadowRoot?.querySelector('.nile-form-help-text__more-button');
31
- expect(moreButton).to.exist;
32
- expect(el.showButton).to.be.true;
33
- });
34
- it('should expand to show full text when "View More" is clicked', async () => {
35
- const longText = 'This is a very long help text that exceeds the container width and should show a "View More" button.';
36
- const el = await fixture(html `<nile-form-help-text>${longText}</nile-form-help-text>`);
37
- // Simulate overflow
38
- const textContainer = el.shadowRoot?.querySelector('.help__text__full');
39
- Object.defineProperty(textContainer, 'scrollWidth', { value: 300 });
40
- Object.defineProperty(textContainer, 'clientWidth', { value: 200 });
41
- el.decideToToggleShowButton();
42
- await elementUpdated(el);
43
- // Click "View More"
44
- const moreButton = el.shadowRoot?.querySelector('.nile-form-help-text__more-button');
45
- moreButton?.click();
46
- await elementUpdated(el);
47
- expect(el.isExpanded).to.be.true;
48
- expect(textContainer).to.have.class('help__text__full--expanded');
49
- expect(moreButton?.textContent).to.include('View Less');
50
- });
51
- it('should collapse back to truncated text when "View Less" is clicked', async () => {
52
- const longText = 'This is a very long help text that exceeds the container width and should show a "View More" button.';
53
- const el = await fixture(html `<nile-form-help-text>${longText}</nile-form-help-text>`);
54
- // Simulate overflow
55
- const textContainer = el.shadowRoot?.querySelector('.help__text__full');
56
- Object.defineProperty(textContainer, 'scrollWidth', { value: 300 });
57
- Object.defineProperty(textContainer, 'clientWidth', { value: 200 });
58
- el.decideToToggleShowButton();
59
- await elementUpdated(el);
60
- // Expand and then collapse
61
- const moreButton = el.shadowRoot?.querySelector('.nile-form-help-text__more-button');
62
- moreButton?.click();
63
- await elementUpdated(el);
64
- moreButton?.click(); // Collapse
65
- await elementUpdated(el);
66
- expect(el.isExpanded).to.be.false;
67
- expect(textContainer).not.to.have.class('help__text__full--expanded');
68
- expect(moreButton?.textContent).to.include('View More');
69
- });
70
- // it('should dynamically adjust "View More" visibility on text change', async () => {
71
- // const el = await fixture<NileFormHelpText>(html`<nile-form-help-text>Initial text</nile-form-help-text>`);
72
- // await elementUpdated(el);
73
- // const textContainer = el.shadowRoot?.querySelector('.help__text__full') as HTMLSpanElement;
74
- // Object.defineProperty(textContainer, 'scrollWidth', { value: 300 });
75
- // Object.defineProperty(textContainer, 'clientWidth', { value: 200 });
76
- // el.decideToToggleShowButton();
77
- // await elementUpdated(el);
78
- // expect(el.showButton).to.be.true;
79
- // // Change slot content to short text
80
- // textContainer.textContent = 'Short text';
81
- // Object.defineProperty(textContainer, 'scrollWidth', { value: 100 });
82
- // Object.defineProperty(textContainer, 'clientWidth', { value: 200 });
83
- // el.decideToToggleShowButton();
84
- // await elementUpdated(el);
85
- // expect(el.showButton).to.be.false;
86
- // });
4
+ it('1. renders', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el).to.exist; });
5
+ it('2. shadow root', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot).to.not.be.null; });
6
+ it('3. tag name', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.tagName.toLowerCase()).to.equal('nile-form-help-text'); });
7
+ it('4. isExpanded defaults false', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.isExpanded).to.be.false; });
8
+ it('5. container part', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('[part="container"]')).to.exist; });
9
+ it('6. nile-form-help-text class', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('.nile-form-help-text')).to.exist; });
10
+ it('7. help__text__full class', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('.help__text__full')).to.exist; });
11
+ it('8. slot', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('slot')).to.exist; });
12
+ it('9. slotted content', async () => { const el = await fixture(html `<nile-form-help-text>Help text here</nile-form-help-text>`); expect(el.textContent).to.contain('Help text here'); });
13
+ it('10. expanded class', async () => { const el = await fixture(html `<nile-form-help-text .isExpanded=${true}></nile-form-help-text>`); expect(el.shadowRoot.querySelector('.nile-form-help-text--expanded')).to.exist; });
14
+ it('11. expanded text class', async () => { const el = await fixture(html `<nile-form-help-text .isExpanded=${true}></nile-form-help-text>`); expect(el.shadowRoot.querySelector('.help__text__full--expanded')).to.exist; });
15
+ it('12. toggleExpanded method', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.toggleExpanded).to.be.a('function'); });
16
+ it('13. toggle works', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.toggleExpanded(); await el.updateComplete; expect(el.isExpanded).to.be.true; });
17
+ it('14. toggle twice', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.toggleExpanded(); el.toggleExpanded(); await el.updateComplete; expect(el.isExpanded).to.be.false; });
18
+ it('15. isExpanded reflected', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.isExpanded = true; await el.updateComplete; expect(el.hasAttribute('isexpanded')).to.be.true; });
19
+ it('16. dynamic isExpanded', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.isExpanded = true; await el.updateComplete; expect(el.shadowRoot.querySelector('.nile-form-help-text--expanded')).to.exist; });
20
+ it('17. has styles', async () => { expect((await import('./nile-form-help-text')).NileFormHelpText.styles).to.exist; });
21
+ it('18. is defined', async () => { expect(customElements.get('nile-form-help-text')).to.exist; });
22
+ it('19. shadow mode', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.mode).to.equal('open'); });
23
+ it('20. isConnected', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.isConnected).to.be.true; });
24
+ it('21. removal', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.remove(); expect(el.isConnected).to.be.false; });
25
+ it('22. outerHTML', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.outerHTML).to.contain('nile-form-help-text'); });
26
+ it('23. matches', async () => { const el = await fixture(html `<nile-form-help-text class="x"></nile-form-help-text>`); expect(el.matches('nile-form-help-text.x')).to.be.true; });
27
+ it('24. closest', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.closest('nile-form-help-text')).to.equal(el); });
28
+ it('25. cloneNode', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.cloneNode(true).tagName.toLowerCase()).to.equal('nile-form-help-text'); });
29
+ it('26. dispatchEvent', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); let f = false; el.addEventListener('c', () => (f = true)); el.dispatchEvent(new Event('c')); expect(f).to.be.true; });
30
+ it('27. updateComplete', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); const r = await el.updateComplete; expect(r).to.not.be.undefined; });
31
+ it('28. requestUpdate', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.requestUpdate(); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; });
32
+ it('29. render method', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.render).to.be.a('function'); });
33
+ it('30. shadowRoot host', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.host).to.equal(el); });
34
+ it('31. class attr', async () => { const el = await fixture(html `<nile-form-help-text class="f"></nile-form-help-text>`); expect(el.classList.contains('f')).to.be.true; });
35
+ it('32. id attr', async () => { const el = await fixture(html `<nile-form-help-text id="f1"></nile-form-help-text>`); expect(el.id).to.equal('f1'); });
36
+ it('33. style attr', async () => { const el = await fixture(html `<nile-form-help-text style="color:red"></nile-form-help-text>`); expect(el.style.color).to.equal('red'); });
37
+ it('34. data attr', async () => { const el = await fixture(html `<nile-form-help-text data-x="1"></nile-form-help-text>`); expect(el.getAttribute('data-x')).to.equal('1'); });
38
+ it('35. hidden', async () => { const el = await fixture(html `<nile-form-help-text hidden></nile-form-help-text>`); expect(el.hidden).to.be.true; });
39
+ it('36. dir', async () => { const el = await fixture(html `<nile-form-help-text dir="rtl"></nile-form-help-text>`); expect(el.dir).to.equal('rtl'); });
40
+ it('37. nodeType', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.nodeType).to.equal(1); });
41
+ it('38. multiple instances', async () => { const c = await fixture(html `<div><nile-form-help-text></nile-form-help-text><nile-form-help-text></nile-form-help-text></div>`); expect(c.querySelectorAll('nile-form-help-text').length).to.equal(2); });
42
+ it('39. parent-child', async () => { const c = await fixture(html `<div><nile-form-help-text></nile-form-help-text></div>`); expect(c.querySelector('nile-form-help-text').parentElement).to.equal(c); });
43
+ it('40. localName', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.localName).to.equal('nile-form-help-text'); });
44
+ it('41. namespaceURI', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.namespaceURI).to.equal('http://www.w3.org/1999/xhtml'); });
45
+ it('42. ownerDocument', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.ownerDocument).to.equal(document); });
46
+ it('43. classList add', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.classList.add('z'); expect(el.classList.contains('z')).to.be.true; });
47
+ it('44. dataset', async () => { const el = await fixture(html `<nile-form-help-text data-idx="0"></nile-form-help-text>`); expect(el.dataset.idx).to.equal('0'); });
48
+ it('45. getBoundingClientRect', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.getBoundingClientRect()).to.exist; });
49
+ it('46. isExpanded type boolean', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(typeof el.isExpanded).to.equal('boolean'); });
50
+ it('47. no inputs', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelectorAll('input').length).to.equal(0); });
51
+ it('48. no buttons', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelectorAll('button').length).to.equal(0); });
52
+ it('49. aria-label', async () => { const el = await fixture(html `<nile-form-help-text aria-label="Help"></nile-form-help-text>`); expect(el.getAttribute('aria-label')).to.equal('Help'); });
53
+ it('50. role', async () => { const el = await fixture(html `<nile-form-help-text role="note"></nile-form-help-text>`); expect(el.getAttribute('role')).to.equal('note'); });
54
+ it('51. createElement', async () => { const el = document.createElement('nile-form-help-text'); document.body.appendChild(el); await el.updateComplete; expect(el.shadowRoot).to.not.be.null; document.body.removeChild(el); });
55
+ it('52. decideToToggleShowButton method', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.decideToToggleShowButton).to.be.a('function'); });
56
+ it('53. observeWidthChange method', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.observeWidthChange).to.be.a('function'); });
57
+ it('54. title attr', async () => { const el = await fixture(html `<nile-form-help-text title="H"></nile-form-help-text>`); expect(el.title).to.equal('H'); });
58
+ it('55. lang attr', async () => { const el = await fixture(html `<nile-form-help-text lang="en"></nile-form-help-text>`); expect(el.lang).to.equal('en'); });
59
+ it('56. tabindex', async () => { const el = await fixture(html `<nile-form-help-text tabindex="0"></nile-form-help-text>`); expect(el.getAttribute('tabindex')).to.equal('0'); });
60
+ it('57. rapid toggle', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); for (let i = 0; i < 5; i++) {
61
+ el.toggleExpanded();
62
+ await el.updateComplete;
63
+ } expect(el.isExpanded).to.be.true; });
64
+ it('58. no form', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('form')).to.be.null; });
65
+ it('59. shadow childNodes', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.childNodes.length).to.be.greaterThan(0); });
66
+ it('60. scrollIntoView', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.scrollIntoView).to.be.a('function'); });
67
+ it('61. focus method', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.focus).to.be.a('function'); });
68
+ it('62. blur method', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.blur).to.be.a('function'); });
69
+ it('63. dispatchCustomEvent', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); let d; el.addEventListener('t', ((e) => { d = e.detail; })); el.dispatchEvent(new CustomEvent('t', { detail: 'x' })); expect(d).to.equal('x'); });
70
+ it('64. slot count', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelectorAll('slot').length).to.equal(1); });
71
+ it('65. no anchor', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('a')).to.be.null; });
72
+ it('66. no img', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('img')).to.be.null; });
73
+ it('67. children survived update', async () => { const el = await fixture(html `<nile-form-help-text><span id="s1">Help</span></nile-form-help-text>`); el.isExpanded = true; await el.updateComplete; expect(el.querySelector('#s1')).to.exist; });
74
+ it('68. nested elements', async () => { const el = await fixture(html `<nile-form-help-text><strong>Bold</strong> help</nile-form-help-text>`); expect(el.querySelector('strong')).to.exist; });
75
+ it('69. childElementCount', async () => { const el = await fixture(html `<nile-form-help-text><span>A</span></nile-form-help-text>`); expect(el.childElementCount).to.equal(1); });
76
+ it('70. firstElementChild', async () => { const el = await fixture(html `<nile-form-help-text><span>A</span></nile-form-help-text>`); expect(el.firstElementChild.tagName.toLowerCase()).to.equal('span'); });
77
+ it('71. text content', async () => { const el = await fixture(html `<nile-form-help-text>Test content</nile-form-help-text>`); expect(el.textContent).to.contain('Test content'); });
78
+ it('72. no children default', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.childElementCount).to.equal(0); });
79
+ it('73. class toggle', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.classList.toggle('active'); expect(el.classList.contains('active')).to.be.true; });
80
+ it('74. setAttribute class', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.setAttribute('class', 'test'); expect(el.classList.contains('test')).to.be.true; });
81
+ it('75. toggle hidden', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.hidden = true; expect(el.hidden).to.be.true; el.hidden = false; expect(el.hidden).to.be.false; });
82
+ it('76. no video', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('video')).to.be.null; });
83
+ it('77. no audio', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('audio')).to.be.null; });
84
+ it('78. no canvas', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('canvas')).to.be.null; });
85
+ it('79. span element', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('span')).to.exist; });
86
+ it('80. div element', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('div')).to.exist; });
87
+ it('81. no ul', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('ul')).to.be.null; });
88
+ it('82. no table', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('table')).to.be.null; });
89
+ it('83. no svg', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('svg')).to.be.null; });
90
+ it('84. aria-describedby', async () => { const el = await fixture(html `<nile-form-help-text aria-describedby="desc"></nile-form-help-text>`); expect(el.getAttribute('aria-describedby')).to.equal('desc'); });
91
+ it('85. re-renders', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.isExpanded = true; await el.updateComplete; el.isExpanded = false; await el.updateComplete; expect(el.shadowRoot.querySelector('.nile-form-help-text--expanded')).to.be.null; });
92
+ it('86. nested in div', async () => { const c = await fixture(html `<div><nile-form-help-text>Help</nile-form-help-text></div>`); expect(c.querySelector('nile-form-help-text')).to.exist; });
93
+ it('87. multiple with content', async () => { const c = await fixture(html `<div><nile-form-help-text>A</nile-form-help-text><nile-form-help-text>B</nile-form-help-text></div>`); const els = c.querySelectorAll('nile-form-help-text'); expect(els.length).to.equal(2); });
94
+ it('88. hasAttribute isexpanded', async () => { const el = await fixture(html `<nile-form-help-text .isExpanded=${true}></nile-form-help-text>`); await el.updateComplete; expect(el.hasAttribute('isexpanded')).to.be.true; });
95
+ it('89. removeAttribute isexpanded', async () => { const el = await fixture(html `<nile-form-help-text .isExpanded=${true}></nile-form-help-text>`); await el.updateComplete; el.removeAttribute('isexpanded'); await el.updateComplete; expect(el.isExpanded).to.be.false; });
96
+ it('90. innerHTML', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); el.innerHTML = '<p>New</p>'; expect(el.querySelector('p').textContent).to.equal('New'); });
97
+ it('91. children array', async () => { const el = await fixture(html `<nile-form-help-text><span>A</span><span>B</span></nile-form-help-text>`); expect(el.children.length).to.equal(2); });
98
+ it('92. no select', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('select')).to.be.null; });
99
+ it('93. no textarea', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('textarea')).to.be.null; });
100
+ it('94. no h1', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('h1')).to.be.null; });
101
+ it('95. textContainer ref', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.textContainer).to.exist; });
102
+ it('96. dynamic content update', async () => { const el = await fixture(html `<nile-form-help-text>Old</nile-form-help-text>`); el.innerHTML = 'New'; await el.updateComplete; expect(el.textContent).to.contain('New'); });
103
+ it('97. no nav', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('nav')).to.be.null; });
104
+ it('98. no aside', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('aside')).to.be.null; });
105
+ it('99. shadow dom structure', async () => { const el = await fixture(html `<nile-form-help-text></nile-form-help-text>`); expect(el.shadowRoot.querySelector('.nile-form-help-text')).to.exist; expect(el.shadowRoot.querySelector('.help__text__full')).to.exist; });
106
+ it('100. full integration', async () => { const el = await fixture(html `<nile-form-help-text class="fh" id="fh1" aria-label="Help">This is help text</nile-form-help-text>`); expect(el.id).to.equal('fh1'); expect(el.textContent).to.contain('This is help text'); expect(el.shadowRoot.querySelector('.nile-form-help-text')).to.exist; expect(el.shadowRoot.querySelector('slot')).to.exist; });
87
107
  });
88
108
  //# sourceMappingURL=nile-form-help-text.test.js.map