@nuraly/lumenui 0.1.0 → 0.2.1

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 (312) hide show
  1. package/dist/nuralyui.bundle.js +23024 -17355
  2. package/dist/nuralyui.bundle.js.gz +0 -0
  3. package/dist/src/components/alert/alert.component.d.ts +8 -5
  4. package/dist/src/components/alert/alert.component.js +24 -20
  5. package/dist/src/components/alert/alert.style.d.ts +0 -7
  6. package/dist/src/components/alert/alert.style.js +48 -90
  7. package/dist/src/components/alert/bundle.js +82 -108
  8. package/dist/src/components/alert/bundle.js.gz +0 -0
  9. package/dist/src/components/badge/badge.component.d.ts +9 -8
  10. package/dist/src/components/badge/badge.component.js +17 -14
  11. package/dist/src/components/badge/badge.style.d.ts +0 -7
  12. package/dist/src/components/badge/badge.style.js +49 -107
  13. package/dist/src/components/badge/bundle.js +81 -119
  14. package/dist/src/components/badge/bundle.js.gz +0 -0
  15. package/dist/src/components/breadcrumb/breadcrumb.component.d.ts +8 -10
  16. package/dist/src/components/breadcrumb/breadcrumb.component.js +16 -15
  17. package/dist/src/components/breadcrumb/breadcrumb.style.d.ts +0 -7
  18. package/dist/src/components/breadcrumb/breadcrumb.style.js +42 -60
  19. package/dist/src/components/breadcrumb/bundle.js +96 -93
  20. package/dist/src/components/breadcrumb/bundle.js.gz +0 -0
  21. package/dist/src/components/button/bundle.js +221 -470
  22. package/dist/src/components/button/bundle.js.gz +0 -0
  23. package/dist/src/components/button/button.component.d.ts +2 -1
  24. package/dist/src/components/button/button.component.js +6 -6
  25. package/dist/src/components/button/button.style.d.ts +0 -7
  26. package/dist/src/components/button/button.style.js +167 -433
  27. package/dist/src/components/canvas/base-canvas.component.d.ts +2 -1
  28. package/dist/src/components/canvas/base-canvas.component.js +1 -0
  29. package/dist/src/components/canvas/bundle.js +16919 -9595
  30. package/dist/src/components/canvas/bundle.js.gz +0 -0
  31. package/dist/src/components/canvas/canvas.constants.d.ts +1 -1
  32. package/dist/src/components/canvas/canvas.constants.js +1 -1
  33. package/dist/src/components/canvas/chatbot-panel.style.js +31 -31
  34. package/dist/src/components/canvas/index.d.ts +2 -0
  35. package/dist/src/components/canvas/index.js +3 -0
  36. package/dist/src/components/canvas/whiteboard-canvas.component.d.ts +3 -1
  37. package/dist/src/components/canvas/whiteboard-canvas.component.js +19 -1
  38. package/dist/src/components/canvas/whiteboard-canvas.style.js +159 -138
  39. package/dist/src/components/canvas/whiteboard-node.component.d.ts +2 -1
  40. package/dist/src/components/canvas/whiteboard-node.component.js +2 -1
  41. package/dist/src/components/canvas/whiteboard-node.style.js +44 -44
  42. package/dist/src/components/canvas/workflow-canvas-only.d.ts +4 -0
  43. package/dist/src/components/canvas/workflow-canvas-only.js +5 -0
  44. package/dist/src/components/canvas/workflow-canvas.component.d.ts +3 -1
  45. package/dist/src/components/canvas/workflow-canvas.component.js +24 -2
  46. package/dist/src/components/canvas/workflow-canvas.style.js +776 -648
  47. package/dist/src/components/canvas/workflow-canvas.types.d.ts +113 -4
  48. package/dist/src/components/canvas/workflow-canvas.types.js +646 -3
  49. package/dist/src/components/canvas/workflow-node.component.d.ts +3 -2
  50. package/dist/src/components/canvas/workflow-node.component.js +5 -5
  51. package/dist/src/components/canvas/workflow-node.style.js +183 -181
  52. package/dist/src/components/card/bundle.js +43 -35
  53. package/dist/src/components/card/bundle.js.gz +0 -0
  54. package/dist/src/components/card/card.component.d.ts +6 -1
  55. package/dist/src/components/card/card.component.js +8 -2
  56. package/dist/src/components/card/card.style.js +26 -30
  57. package/dist/src/components/carousel/bundle.js +8 -8
  58. package/dist/src/components/carousel/bundle.js.gz +0 -0
  59. package/dist/src/components/carousel/carousel.component.d.ts +12 -0
  60. package/dist/src/components/carousel/carousel.component.js +16 -4
  61. package/dist/src/components/chatbot/bundle.js +422 -406
  62. package/dist/src/components/chatbot/bundle.js.gz +0 -0
  63. package/dist/src/components/chatbot/chatbot.component.d.ts +2 -1
  64. package/dist/src/components/chatbot/chatbot.component.js +1 -0
  65. package/dist/src/components/chatbot/chatbot.style.js +277 -277
  66. package/dist/src/components/checkbox/bundle.js +86 -245
  67. package/dist/src/components/checkbox/bundle.js.gz +0 -0
  68. package/dist/src/components/checkbox/checkbox.component.d.ts +5 -2
  69. package/dist/src/components/checkbox/checkbox.component.js +11 -13
  70. package/dist/src/components/checkbox/checkbox.style.js +56 -231
  71. package/dist/src/components/code-editor/bundle.js +151 -25
  72. package/dist/src/components/code-editor/bundle.js.gz +0 -0
  73. package/dist/src/components/code-editor/code-editor.component.d.ts +18 -56
  74. package/dist/src/components/code-editor/code-editor.component.js +141 -394
  75. package/dist/src/components/code-editor/code-editor.style.js +139 -15
  76. package/dist/src/components/collapse/bundle.js +97 -84
  77. package/dist/src/components/collapse/bundle.js.gz +0 -0
  78. package/dist/src/components/collapse/collapse.component.d.ts +7 -1
  79. package/dist/src/components/collapse/collapse.component.js +11 -2
  80. package/dist/src/components/collapse/collapse.style.js +60 -60
  81. package/dist/src/components/colorpicker/bundle.js +85 -48
  82. package/dist/src/components/colorpicker/bundle.js.gz +0 -0
  83. package/dist/src/components/colorpicker/color-holder.component.d.ts +2 -4
  84. package/dist/src/components/colorpicker/color-holder.component.js +5 -6
  85. package/dist/src/components/colorpicker/color-holder.style.js +11 -11
  86. package/dist/src/components/colorpicker/color-picker.component.d.ts +2 -1
  87. package/dist/src/components/colorpicker/color-picker.component.js +1 -0
  88. package/dist/src/components/colorpicker/color-picker.style.js +12 -12
  89. package/dist/src/components/colorpicker/default-color-sets.component.d.ts +2 -2
  90. package/dist/src/components/colorpicker/default-color-sets.component.js +4 -3
  91. package/dist/src/components/colorpicker/default-color-sets.style.js +5 -5
  92. package/dist/src/components/container/bundle.js +24 -14
  93. package/dist/src/components/container/bundle.js.gz +0 -0
  94. package/dist/src/components/container/container.component.d.ts +4 -1
  95. package/dist/src/components/container/container.component.js +7 -5
  96. package/dist/src/components/container/container.style.js +9 -9
  97. package/dist/src/components/datepicker/bundle.js +193 -177
  98. package/dist/src/components/datepicker/bundle.js.gz +0 -0
  99. package/dist/src/components/datepicker/datepicker.component.d.ts +2 -1
  100. package/dist/src/components/datepicker/datepicker.component.js +1 -0
  101. package/dist/src/components/datepicker/datepicker.style.js +65 -65
  102. package/dist/src/components/datepicker/datepicker.style.variables.js +91 -91
  103. package/dist/src/components/db-connection-select/bundle.js +7 -6
  104. package/dist/src/components/db-connection-select/bundle.js.gz +0 -0
  105. package/dist/src/components/db-connection-select/db-connection-select.component.d.ts +3 -0
  106. package/dist/src/components/db-connection-select/db-connection-select.component.js +4 -0
  107. package/dist/src/components/divider/bundle.js +61 -35
  108. package/dist/src/components/divider/bundle.js.gz +0 -0
  109. package/dist/src/components/divider/divider.component.d.ts +4 -6
  110. package/dist/src/components/divider/divider.component.js +10 -14
  111. package/dist/src/components/divider/divider.style.js +41 -31
  112. package/dist/src/components/document/bundle.js +50 -48
  113. package/dist/src/components/document/bundle.js.gz +0 -0
  114. package/dist/src/components/document/document.component.d.ts +12 -1
  115. package/dist/src/components/document/document.component.js +18 -6
  116. package/dist/src/components/document/document.style.js +21 -36
  117. package/dist/src/components/dropdown/bundle.js +117 -101
  118. package/dist/src/components/dropdown/bundle.js.gz +0 -0
  119. package/dist/src/components/dropdown/dropdown.component.d.ts +2 -1
  120. package/dist/src/components/dropdown/dropdown.component.js +1 -0
  121. package/dist/src/components/dropdown/dropdown.style.js +68 -68
  122. package/dist/src/components/file-upload/bundle.js +82 -76
  123. package/dist/src/components/file-upload/bundle.js.gz +0 -0
  124. package/dist/src/components/file-upload/file-upload.component.d.ts +2 -1
  125. package/dist/src/components/file-upload/file-upload.component.js +1 -0
  126. package/dist/src/components/file-upload/styles.js +59 -59
  127. package/dist/src/components/flex/bundle.js +18 -8
  128. package/dist/src/components/flex/bundle.js.gz +0 -0
  129. package/dist/src/components/flex/flex.component.d.ts +4 -1
  130. package/dist/src/components/flex/flex.component.js +7 -4
  131. package/dist/src/components/flex/flex.style.js +2 -2
  132. package/dist/src/components/form/bundle.js +22 -10
  133. package/dist/src/components/form/bundle.js.gz +0 -0
  134. package/dist/src/components/form/form.component.d.ts +4 -1
  135. package/dist/src/components/form/form.component.js +5 -1
  136. package/dist/src/components/form/form.style.js +2 -2
  137. package/dist/src/components/grid/bundle.js +26 -14
  138. package/dist/src/components/grid/bundle.js.gz +0 -0
  139. package/dist/src/components/grid/col.component.d.ts +4 -1
  140. package/dist/src/components/grid/col.component.js +4 -1
  141. package/dist/src/components/grid/col.style.js +2 -2
  142. package/dist/src/components/grid/row.component.d.ts +4 -1
  143. package/dist/src/components/grid/row.component.js +4 -1
  144. package/dist/src/components/grid/row.style.js +2 -2
  145. package/dist/src/components/icon/bundle.js +78 -252
  146. package/dist/src/components/icon/bundle.js.gz +0 -0
  147. package/dist/src/components/icon/icon-paths.d.ts +2 -0
  148. package/dist/src/components/icon/icon-paths.js +141 -0
  149. package/dist/src/components/icon/icon.component.d.ts +10 -12
  150. package/dist/src/components/icon/icon.component.js +42 -93
  151. package/dist/src/components/icon/icon.style.js +42 -130
  152. package/dist/src/components/icon/icon.variables.js +9 -9
  153. package/dist/src/components/iconpicker/bundle.js +859 -1511
  154. package/dist/src/components/iconpicker/bundle.js.gz +0 -0
  155. package/dist/src/components/iconpicker/icon-picker.component.d.ts +2 -1
  156. package/dist/src/components/iconpicker/icon-picker.component.js +1 -0
  157. package/dist/src/components/iconpicker/icon-picker.style.js +13 -13
  158. package/dist/src/components/image/bundle.js +43 -33
  159. package/dist/src/components/image/bundle.js.gz +0 -0
  160. package/dist/src/components/image/image.component.d.ts +10 -1
  161. package/dist/src/components/image/image.component.js +13 -3
  162. package/dist/src/components/image/image.style.js +19 -26
  163. package/dist/src/components/input/bundle.js +420 -644
  164. package/dist/src/components/input/bundle.js.gz +0 -0
  165. package/dist/src/components/input/input.component.d.ts +16 -3
  166. package/dist/src/components/input/input.component.js +43 -27
  167. package/dist/src/components/input/input.style.d.ts +1 -1
  168. package/dist/src/components/input/input.style.js +331 -634
  169. package/dist/src/components/kv-secret-select/bundle.js +2 -1
  170. package/dist/src/components/kv-secret-select/bundle.js.gz +0 -0
  171. package/dist/src/components/kv-secret-select/kv-secret-select.component.d.ts +3 -0
  172. package/dist/src/components/kv-secret-select/kv-secret-select.component.js +4 -0
  173. package/dist/src/components/label/bundle.js +37 -60
  174. package/dist/src/components/label/bundle.js.gz +0 -0
  175. package/dist/src/components/label/label.component.d.ts +8 -4
  176. package/dist/src/components/label/label.component.js +9 -14
  177. package/dist/src/components/label/label.style.js +17 -25
  178. package/dist/src/components/label/label.style.variables.js +18 -18
  179. package/dist/src/components/layout/bundle.js +86 -70
  180. package/dist/src/components/layout/bundle.js.gz +0 -0
  181. package/dist/src/components/layout/content.component.d.ts +2 -1
  182. package/dist/src/components/layout/content.component.js +2 -1
  183. package/dist/src/components/layout/content.style.js +3 -3
  184. package/dist/src/components/layout/footer.component.d.ts +2 -1
  185. package/dist/src/components/layout/footer.component.js +3 -2
  186. package/dist/src/components/layout/footer.style.js +7 -7
  187. package/dist/src/components/layout/header.component.d.ts +2 -1
  188. package/dist/src/components/layout/header.component.js +3 -2
  189. package/dist/src/components/layout/header.style.js +7 -7
  190. package/dist/src/components/layout/layout.component.d.ts +4 -7
  191. package/dist/src/components/layout/layout.component.js +9 -22
  192. package/dist/src/components/layout/layout.style.js +1 -1
  193. package/dist/src/components/layout/sider.component.d.ts +3 -1
  194. package/dist/src/components/layout/sider.component.js +3 -1
  195. package/dist/src/components/layout/sider.style.js +29 -29
  196. package/dist/src/components/menu/bundle.js +135 -125
  197. package/dist/src/components/menu/bundle.js.gz +0 -0
  198. package/dist/src/components/menu/menu.component.d.ts +2 -1
  199. package/dist/src/components/menu/menu.component.js +1 -0
  200. package/dist/src/components/menu/menu.style.js +87 -87
  201. package/dist/src/components/modal/bundle.js +105 -96
  202. package/dist/src/components/modal/bundle.js.gz +0 -0
  203. package/dist/src/components/modal/modal.component.d.ts +2 -1
  204. package/dist/src/components/modal/modal.component.js +1 -0
  205. package/dist/src/components/modal/modal.style.js +69 -71
  206. package/dist/src/components/panel/bundle.js +190 -391
  207. package/dist/src/components/panel/bundle.js.gz +0 -0
  208. package/dist/src/components/panel/panel.component.d.ts +2 -1
  209. package/dist/src/components/panel/panel.component.js +1 -0
  210. package/dist/src/components/panel/panel.style.js +65 -65
  211. package/dist/src/components/popconfirm/bundle.js +107 -93
  212. package/dist/src/components/popconfirm/bundle.js.gz +0 -0
  213. package/dist/src/components/popconfirm/popconfirm-manager.component.d.ts +2 -1
  214. package/dist/src/components/popconfirm/popconfirm-manager.component.js +1 -0
  215. package/dist/src/components/popconfirm/popconfirm-manager.style.js +16 -16
  216. package/dist/src/components/popconfirm/popconfirm.component.d.ts +2 -1
  217. package/dist/src/components/popconfirm/popconfirm.component.js +9 -5
  218. package/dist/src/components/popconfirm/popconfirm.style.js +43 -43
  219. package/dist/src/components/radio/bundle.js +56 -86
  220. package/dist/src/components/radio/bundle.js.gz +0 -0
  221. package/dist/src/components/radio/radio.component.d.ts +8 -2
  222. package/dist/src/components/radio/radio.component.js +17 -9
  223. package/dist/src/components/radio/radio.style.js +30 -77
  224. package/dist/src/components/radio-group/bundle.js +125 -89
  225. package/dist/src/components/radio-group/bundle.js.gz +0 -0
  226. package/dist/src/components/radio-group/radio-group.component.d.ts +5 -1
  227. package/dist/src/components/radio-group/radio-group.component.js +18 -10
  228. package/dist/src/components/radio-group/radio-group.style.js +44 -44
  229. package/dist/src/components/select/bundle.js +260 -367
  230. package/dist/src/components/select/bundle.js.gz +0 -0
  231. package/dist/src/components/select/select.component.d.ts +12 -17
  232. package/dist/src/components/select/select.component.js +35 -35
  233. package/dist/src/components/select/select.style.js +184 -324
  234. package/dist/src/components/skeleton/bundle.js +82 -162
  235. package/dist/src/components/skeleton/bundle.js.gz +0 -0
  236. package/dist/src/components/skeleton/skeleton.component.d.ts +10 -5
  237. package/dist/src/components/skeleton/skeleton.component.js +20 -7
  238. package/dist/src/components/skeleton/skeleton.style.js +34 -133
  239. package/dist/src/components/slider-input/bundle.js +89 -88
  240. package/dist/src/components/slider-input/bundle.js.gz +0 -0
  241. package/dist/src/components/slider-input/slider-input.component.d.ts +11 -0
  242. package/dist/src/components/slider-input/slider-input.component.js +20 -8
  243. package/dist/src/components/slider-input/slider-input.style.js +47 -47
  244. package/dist/src/components/slider-input/slider-input.style.variables.js +32 -32
  245. package/dist/src/components/table/bundle.js +149 -128
  246. package/dist/src/components/table/bundle.js.gz +0 -0
  247. package/dist/src/components/table/table.component.d.ts +2 -1
  248. package/dist/src/components/table/table.component.js +1 -0
  249. package/dist/src/components/table/table.style.js +79 -79
  250. package/dist/src/components/tabs/bundle.js +462 -663
  251. package/dist/src/components/tabs/bundle.js.gz +0 -0
  252. package/dist/src/components/tabs/tabs.component.d.ts +6 -1
  253. package/dist/src/components/tabs/tabs.component.js +8 -1
  254. package/dist/src/components/tabs/tabs.style.js +200 -201
  255. package/dist/src/components/tag/bundle.js +44 -36
  256. package/dist/src/components/tag/bundle.js.gz +0 -0
  257. package/dist/src/components/tag/tag.component.d.ts +7 -6
  258. package/dist/src/components/tag/tag.component.js +10 -19
  259. package/dist/src/components/tag/tag.style.js +20 -24
  260. package/dist/src/components/textarea/bundle.js +131 -94
  261. package/dist/src/components/textarea/bundle.js.gz +0 -0
  262. package/dist/src/components/textarea/textarea.component.d.ts +7 -1
  263. package/dist/src/components/textarea/textarea.component.js +10 -3
  264. package/dist/src/components/textarea/textarea.style.d.ts +1 -13
  265. package/dist/src/components/textarea/textarea.style.js +79 -91
  266. package/dist/src/components/timeline/bundle.js +71 -134
  267. package/dist/src/components/timeline/bundle.js.gz +0 -0
  268. package/dist/src/components/timeline/timeline.component.d.ts +9 -6
  269. package/dist/src/components/timeline/timeline.component.js +16 -13
  270. package/dist/src/components/timeline/timeline.style.d.ts +0 -7
  271. package/dist/src/components/timeline/timeline.style.js +41 -122
  272. package/dist/src/components/timepicker/bundle.js +196 -166
  273. package/dist/src/components/timepicker/bundle.js.gz +0 -0
  274. package/dist/src/components/timepicker/timepicker.component.d.ts +2 -1
  275. package/dist/src/components/timepicker/timepicker.component.js +1 -0
  276. package/dist/src/components/timepicker/timepicker.style.js +42 -42
  277. package/dist/src/components/timepicker/timepicker.style.variables.js +91 -91
  278. package/dist/src/components/toast/bundle.js +97 -81
  279. package/dist/src/components/toast/bundle.js.gz +0 -0
  280. package/dist/src/components/toast/toast.component.d.ts +2 -1
  281. package/dist/src/components/toast/toast.component.js +1 -0
  282. package/dist/src/components/toast/toast.style.js +62 -62
  283. package/dist/src/components/tooltips/bundle.js +10 -10
  284. package/dist/src/components/tooltips/bundle.js.gz +0 -0
  285. package/dist/src/components/tooltips/tooltips.component.d.ts +8 -0
  286. package/dist/src/components/tooltips/tooltips.component.js +9 -1
  287. package/dist/src/components/tooltips/tooltips.style.js +6 -6
  288. package/dist/src/components/video/bundle.js +47 -36
  289. package/dist/src/components/video/bundle.js.gz +0 -0
  290. package/dist/src/components/video/video.component.d.ts +12 -1
  291. package/dist/src/components/video/video.component.js +18 -6
  292. package/dist/src/components/video/video.style.js +18 -24
  293. package/package.json +25 -12
  294. package/packages/common/dist/VERSIONS.md +2 -2
  295. package/packages/common/dist/shared/base-mixin.d.ts +21 -19
  296. package/packages/common/dist/shared/base-mixin.d.ts.map +1 -1
  297. package/packages/common/dist/shared/base-mixin.js +102 -18
  298. package/packages/common/dist/shared/base-mixin.js.map +1 -1
  299. package/packages/common/dist/shared/index.d.ts +1 -0
  300. package/packages/common/dist/shared/index.d.ts.map +1 -1
  301. package/packages/common/dist/shared/index.js +2 -0
  302. package/packages/common/dist/shared/index.js.map +1 -1
  303. package/packages/common/dist/shared/style-injector.d.ts +11 -0
  304. package/packages/common/dist/shared/style-injector.d.ts.map +1 -0
  305. package/packages/common/dist/shared/style-injector.js +53 -0
  306. package/packages/common/dist/shared/style-injector.js.map +1 -0
  307. package/packages/common/dist/shared/theme-mixin.d.ts +2 -24
  308. package/packages/common/dist/shared/theme-mixin.d.ts.map +1 -1
  309. package/packages/common/dist/shared/theme-mixin.js +5 -38
  310. package/packages/common/dist/shared/theme-mixin.js.map +1 -1
  311. package/packages/themes/dist/default.css +0 -10
  312. package/packages/themes/dist/package.json +1 -1
@@ -1,299 +1,181 @@
1
- import{css as r,LitElement as t,nothing as o,html as a}from"lit";import{property as e,customElement as n}from"lit/decorators.js";import{ifDefined as i}from"lit/directives/if-defined.js";import{NuralyUIBaseMixin as l}from"@nuralyui/common/mixins";import{BaseComponentController as s}from"@nuralyui/common/controllers";const c="",u=r`
1
+ import{css as t,nothing as e,html as i,LitElement as o}from"lit";import{property as s,customElement as n}from"lit/decorators.js";import{ifDefined as r}from"lit/directives/if-defined.js";const a="",d=t`
2
2
  :host {
3
3
  display: inline-block;
4
4
  vertical-align: middle;
5
-
6
- /* Force CSS custom property inheritance to ensure theme switching works properly */
7
- color: var(--nuraly-color-text);
8
- background-color: var(--nuraly-color-background);
9
- border-color: var(--nuraly-color-border);
10
-
11
- /* Ensure clean state transitions when theme changes */
12
- * {
13
- transition: all var(--nuraly-transition-fast, 0.15s) ease;
14
- }
15
5
  }
16
6
 
17
- /* Force re-evaluation of theme-dependent properties on theme change */
18
- :host([data-theme]) {
19
- color: inherit;
20
- background-color: inherit;
7
+ :host([hidden]) {
8
+ display: none;
21
9
  }
22
10
 
23
- button {
11
+ button,
12
+ a {
24
13
  display: inline-flex;
25
14
  align-items: center;
26
15
  justify-content: center;
27
16
  position: relative;
28
- font-family: var(--nuraly-font-family);
29
- font-size: 0.875rem;
30
- font-weight: var(--nuraly-font-weight-regular);
31
- line-height: 1.125rem;
32
- letter-spacing: 0.16px;
33
- height: 3rem;
34
- padding: var(--nuraly-spacing-2) var(--nuraly-spacing-4);
17
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
18
+ font-size: 13px;
19
+ font-weight: 500;
20
+ line-height: 1;
21
+ padding: 6px 16px;
35
22
  border: 1px solid transparent;
36
- border-radius: var(--nuraly-border-radius-button, var(--nuraly-border-radius-medium, 0));
37
- background-color: var(--nuraly-color-background);
38
- color: var(--nuraly-color-text);
23
+ border-radius: 8px;
24
+ background-color: #fff;
25
+ color: #161616;
39
26
  text-decoration: none;
40
27
  cursor: pointer;
41
- transition: all var(--nuraly-transition-fast, 0.15s) ease;
28
+ transition: all 0.15s ease;
42
29
  white-space: nowrap;
43
30
  overflow: hidden;
44
31
  text-overflow: ellipsis;
45
-
46
- /* Reset any inherited styles that might interfere with theme switching */
47
32
  box-shadow: none;
48
- text-shadow: none;
49
-
50
- &:focus {
51
- /* outline: var(--nuraly-focus-outline); */
52
- /* outline-offset: var(--nuraly-focus-outline-offset); */
53
- }
54
-
55
- &:disabled {
56
- cursor: not-allowed;
57
- /* Remove generic opacity - use specific disabled colors instead */
58
- }
33
+ gap: 6px;
34
+ }
59
35
 
60
- /* Icon styling */
61
- nr-icon {
62
- flex-shrink: 0;
63
- width: var(--nuraly-button-icon-size, 1rem);
64
- height: var(--nuraly-button-icon-size, 1rem);
65
- display: inline-flex;
66
- align-items: center;
67
- justify-content: center;
68
- /* Better text alignment */
69
- vertical-align: middle;
70
- line-height: 1;
71
- /* Ensure icon inherits text color */
72
- color: inherit;
73
- /* Override any size attribute with CSS variable */
74
- font-size: var(--nuraly-button-icon-size, 1rem) !important;
75
- transition: all var(--nuraly-transition-fast, 0.15s) ease;
76
- /* Inherit cursor from button */
77
- cursor: inherit;
78
- /* Prevent icon from being focusable */
79
- pointer-events: none;
80
- }
36
+ button:focus,
37
+ a:focus {
38
+ outline: none;
39
+ }
81
40
 
82
- /* Icon focus state */
83
- &:focus:not(:disabled) nr-icon {
84
- opacity: 1;
85
- filter: brightness(1.1);
86
- }
41
+ button:focus-visible,
42
+ a:focus-visible {
43
+ outline: 2px solid #0f62fe;
44
+ outline-offset: 2px;
45
+ }
87
46
 
88
- /* Icon active state */
89
- &:active:not(:disabled) nr-icon {
90
- opacity: 0.9;
91
- transform: scale(0.95);
92
- }
47
+ button:disabled {
48
+ cursor: not-allowed;
49
+ opacity: 0.5;
50
+ }
93
51
 
94
- /* Icon hover state */
95
- &:hover:not(:disabled) nr-icon {
96
- opacity: 1;
97
- }
52
+ /* Icon styling inside button */
53
+ button nr-icon,
54
+ a nr-icon {
55
+ flex-shrink: 0;
56
+ width: 1rem;
57
+ height: 1rem;
58
+ display: inline-flex;
59
+ align-items: center;
60
+ justify-content: center;
61
+ vertical-align: middle;
62
+ line-height: 1;
63
+ color: inherit;
64
+ font-size: 1rem !important;
65
+ cursor: inherit;
66
+ pointer-events: none;
67
+ }
98
68
 
99
- /* Icon spacing - use gap for cleaner spacing */
100
- gap: 0.5rem;
101
-
102
- /* Ensure proper alignment of content */
103
- #container, [part="container"] {
104
- display: flex;
105
- align-items: center;
106
- justify-content: center;
107
- gap: inherit;
108
- }
69
+ /* Container span */
70
+ .button-container {
71
+ display: flex;
72
+ align-items: center;
73
+ justify-content: center;
74
+ gap: inherit;
109
75
  }
110
76
 
111
- /* Primary Button - Carbon Design System compliant */
77
+ /* ======== Type: Primary ======== */
112
78
  :host([type="primary"]) button {
113
- background-color: var(--nuraly-color-button-primary);
114
- border-color: var(--nuraly-color-button-primary);
115
- color: var(--nuraly-color-button-primary-text, var(--nuraly-color-text-on-color));
116
-
117
- /* Ensure icons inherit the white text color for primary buttons */
118
- nr-icon {
119
- fill: var(--nuraly-color-button-primary-text, var(--nuraly-color-text-on-color, #ffffff)) !important;
120
- color: var(--nuraly-color-button-primary-text, var(--nuraly-color-text-on-color, #ffffff)) !important;
121
- --nuraly-color-icon: var(--nuraly-color-button-primary-text, var(--nuraly-color-text-on-color, #ffffff)) !important;
122
- }
123
-
124
- &:hover:not(:disabled) {
125
- background-color: var(--nuraly-color-button-primary-hover);
126
- border-color: var(--nuraly-color-button-primary-hover);
127
- color: var(--nuraly-color-button-primary-text-hover, var(--nuraly-color-text-on-color));
128
- }
129
-
130
- &:active:not(:disabled) {
131
- background-color: var(--nuraly-color-button-primary-active);
132
- border-color: var(--nuraly-color-button-primary-active);
133
- color: var(--nuraly-color-button-primary-text-active, var(--nuraly-color-text-on-color));
134
- }
135
-
136
- &:focus:not(:disabled) {
137
- /* outline: 2px solid var(--nuraly-color-button-focus-outline, var(--nuraly-focus-color)); */
138
- /* outline-offset: 2px; */
139
- /* box-shadow: var(--nuraly-shadow-button-focus, 0 0 0 2px var(--nuraly-color-button-focus-ring)); */
140
- }
141
-
142
- &:disabled {
143
- background-color: var(--nuraly-color-button-disabled);
144
- border-color: var(--nuraly-color-button-disabled-border, var(--nuraly-color-button-disabled));
145
- color: var(--nuraly-color-button-disabled-text);
146
- cursor: not-allowed;
147
- opacity: 1; /* Reset opacity for proper disabled state */
148
- }
79
+ background-color: #7c3aed;
80
+ border-color: #7c3aed;
81
+ color: #fff;
82
+ font-weight: 500;
83
+ }
84
+ :host([type="primary"]) button nr-icon {
85
+ color: #fff !important;
86
+ }
87
+ :host([type="primary"]) button:hover:not(:disabled) {
88
+ background-color: #6d28d9;
89
+ border-color: #6d28d9;
90
+ }
91
+ :host([type="primary"]) button:active:not(:disabled) {
92
+ background-color: #6d28d9;
93
+ filter: brightness(0.9);
94
+ }
95
+ :host([type="primary"]) button:disabled {
96
+ background-color: #c6c6c6;
97
+ border-color: #c6c6c6;
98
+ color: #525252;
99
+ opacity: 0.5;
149
100
  }
150
101
 
151
- /* Secondary Button - Carbon Design System compliant */
102
+ /* ======== Type: Secondary ======== */
152
103
  :host([type="secondary"]) button {
153
- background-color: var(--nuraly-color-button-secondary);
154
- border-color: var(--nuraly-color-button-secondary);
155
- color: var(--nuraly-color-button-secondary-text, var(--nuraly-color-text-on-color));
156
-
157
- &:hover:not(:disabled) {
158
- background-color: var(--nuraly-color-button-secondary-hover);
159
- border-color: var(--nuraly-color-button-secondary-hover);
160
- color: var(--nuraly-color-button-secondary-text-hover, var(--nuraly-color-text-on-color));
161
- }
162
-
163
- &:active:not(:disabled) {
164
- background-color: var(--nuraly-color-button-secondary-active);
165
- border-color: var(--nuraly-color-button-secondary-active);
166
- color: var(--nuraly-color-button-secondary-text-active, var(--nuraly-color-text-on-color));
167
- }
168
-
169
- &:focus:not(:disabled) {
170
- /* outline: 2px solid var(--nuraly-color-button-focus-outline, var(--nuraly-focus-color)); */
171
- /* outline-offset: 2px; */
172
- box-shadow: var(--nuraly-shadow-button-focus, 0 0 0 2px var(--nuraly-color-button-focus-ring));
173
- }
174
-
175
- &:disabled {
176
- background-color: var(--nuraly-color-button-disabled);
177
- border-color: var(--nuraly-color-button-disabled-border, var(--nuraly-color-button-disabled));
178
- color: var(--nuraly-color-button-disabled-text);
179
- cursor: not-allowed;
180
- opacity: 1; /* Reset opacity for proper disabled state */
181
- }
104
+ background-color: #0f1419;
105
+ border-color: #0f1419;
106
+ color: #fff;
107
+ font-weight: 500;
108
+ }
109
+ :host([type="secondary"]) button:hover:not(:disabled) {
110
+ background-color: #272c30;
111
+ border-color: #272c30;
112
+ }
113
+ :host([type="secondary"]) button:active:not(:disabled) {
114
+ background-color: #3a3f44;
115
+ border-color: #3a3f44;
116
+ }
117
+ :host([type="secondary"]) button:disabled {
118
+ opacity: 0.5;
182
119
  }
183
120
 
184
- /* Default Button - Clean white/light style with defined border */
121
+ /* ======== Type: Default ======== */
185
122
  :host([type="default"]) button {
186
- background-color: var(--nuraly-color-background, #ffffff);
187
- border-color: var(--nuraly-color-border, #d0d0d0);
188
- color: var(--nuraly-color-text, #161616);
189
-
190
- &:hover:not(:disabled) {
191
- background-color: var(--nuraly-color-background-hover, #f4f4f4);
192
- border-color: var(--nuraly-color-border-hover, #a8a8a8);
193
- color: var(--nuraly-color-text, #161616);
194
- }
195
-
196
- &:active:not(:disabled) {
197
- background-color: var(--nuraly-color-background-active, #e0e0e0);
198
- border-color: var(--nuraly-color-border-active, #8d8d8d);
199
- color: var(--nuraly-color-text, #161616);
200
- }
201
-
202
- &:focus:not(:disabled) {
203
- /* outline: 2px solid var(--nuraly-color-button-focus-outline, var(--nuraly-focus-color)); */
204
- /* outline-offset: 2px; */
205
- box-shadow: var(--nuraly-shadow-button-focus, 0 0 0 2px var(--nuraly-color-button-focus-ring));
206
- }
207
-
208
- &:disabled {
209
- background-color: var(--nuraly-color-button-disabled, #f4f4f4);
210
- border-color: var(--nuraly-color-button-disabled-border, #c6c6c6);
211
- color: var(--nuraly-color-button-disabled-text, #c6c6c6);
212
- cursor: not-allowed;
213
- opacity: 1; /* Reset opacity for proper disabled state */
214
- }
123
+ background-color: #fff;
124
+ border-color: #eff3f4;
125
+ color: #536471;
126
+ font-weight: 500;
127
+ }
128
+ :host([type="default"]) button:hover:not(:disabled) {
129
+ border-color: #7c3aed;
130
+ color: #7c3aed;
131
+ }
132
+ :host([type="default"]) button:active:not(:disabled) {
133
+ background-color: #f7f9f9;
134
+ }
135
+ :host([type="default"]) button:disabled {
136
+ opacity: 0.5;
215
137
  }
216
138
 
217
- /* Ghost Button - Transparent with border */
139
+ /* ======== Type: Ghost ======== */
218
140
  :host([type="ghost"]) button {
219
- background-color: var(--nuraly-color-button-outline, transparent);
220
- border-color: var(--nuraly-color-button-outline-border, var(--nuraly-color-border));
221
- color: var(--nuraly-color-button-outline-text, var(--nuraly-color-button-primary));
222
-
223
- &:hover:not(:disabled) {
224
- background-color: var(--nuraly-color-button-outline-hover, var(--nuraly-color-background-hover));
225
- border-color: var(--nuraly-color-button-outline-border-hover, var(--nuraly-color-button-primary));
226
- color: var(--nuraly-color-button-outline-text-hover, var(--nuraly-color-button-primary-hover));
227
- }
228
-
229
- &:active:not(:disabled) {
230
- background-color: var(--nuraly-color-button-outline-active, var(--nuraly-color-background-active));
231
- border-color: var(--nuraly-color-button-outline-border-active, var(--nuraly-color-button-primary-active));
232
- color: var(--nuraly-color-button-outline-text-active, var(--nuraly-color-button-primary-active));
233
- }
234
-
235
- &:focus:not(:disabled) {
236
- box-shadow: var(--nuraly-shadow-button-focus, 0 0 0 2px var(--nuraly-color-button-focus-ring));
237
- }
238
-
239
- &:disabled {
240
- background-color: transparent;
241
- border-color: var(--nuraly-color-button-disabled-border, var(--nuraly-color-button-disabled));
242
- color: var(--nuraly-color-button-disabled-text);
243
- cursor: not-allowed;
244
- opacity: 1;
245
- }
141
+ background-color: transparent;
142
+ border-color: #7c3aed;
143
+ color: #7c3aed;
144
+ font-weight: 500;
145
+ }
146
+ :host([type="ghost"]) button:hover:not(:disabled) {
147
+ background-color: rgba(124, 58, 237, 0.1);
148
+ }
149
+ :host([type="ghost"]) button:active:not(:disabled) {
150
+ background-color: rgba(124, 58, 237, 0.15);
151
+ }
152
+ :host([type="ghost"]) button:disabled {
153
+ opacity: 0.5;
246
154
  }
247
155
 
248
- /* Danger Button - Carbon Design System compliant */
156
+ /* ======== Type: Danger ======== */
249
157
  :host([type="danger"]) button {
250
- background-color: var(--nuraly-color-button-danger);
251
- border-color: var(--nuraly-color-button-danger);
252
- color: var(--nuraly-color-button-danger-text, var(--nuraly-color-text-on-color));
253
-
254
- &:hover:not(:disabled) {
255
- background-color: var(--nuraly-color-button-danger-hover);
256
- border-color: var(--nuraly-color-button-danger-hover);
257
- color: var(--nuraly-color-button-danger-text-hover, var(--nuraly-color-text-on-color));
258
- }
259
-
260
- &:active:not(:disabled) {
261
- background-color: var(--nuraly-color-button-danger-active);
262
- border-color: var(--nuraly-color-button-danger-active);
263
- color: var(--nuraly-color-button-danger-text-active, var(--nuraly-color-text-on-color));
264
- }
265
-
266
- &:focus:not(:disabled) {
267
- /* outline: 2px solid var(--nuraly-color-button-focus-outline, var(--nuraly-focus-color)); */
268
- /* outline-offset: 2px; */
269
- box-shadow: var(--nuraly-shadow-button-focus, 0 0 0 2px var(--nuraly-color-button-focus-ring));
270
- }
271
-
272
- &:disabled {
273
- background-color: var(--nuraly-color-button-disabled);
274
- border-color: var(--nuraly-color-button-disabled-border, var(--nuraly-color-button-disabled));
275
- color: var(--nuraly-color-button-disabled-text);
276
- cursor: not-allowed;
277
- opacity: 1; /* Reset opacity for proper disabled state */
278
- }
158
+ background-color: #dc2626;
159
+ border-color: #dc2626;
160
+ color: #fff;
161
+ font-weight: 500;
279
162
  }
280
-
281
- /* Default size when no size attribute is provided (medium) */
282
- :host(:not([size])) button {
283
- height: var(--nuraly-size-md);
284
- padding: var(--nuraly-spacing-2) var(--nuraly-spacing-4);
285
- min-width: var(--nuraly-button-min-width, 5rem);
163
+ :host([type="danger"]) button:hover:not(:disabled) {
164
+ filter: brightness(0.9);
165
+ }
166
+ :host([type="danger"]) button:active:not(:disabled) {
167
+ filter: brightness(0.8);
168
+ }
169
+ :host([type="danger"]) button:disabled {
170
+ opacity: 0.5;
286
171
  }
287
172
 
288
- /* Size variants */
173
+ /* ======== Sizes ======== */
289
174
  :host([size="small"]) button {
290
- height: var(--nuraly-size-sm);
291
- padding: var(--nuraly-button-padding-small, 0.375rem 0.75rem);
292
- font-size: 0.75rem;
293
- min-width: var(--nuraly-button-min-width, 4.5rem);
294
- gap: 0.375rem;
175
+ padding: 5px 14px;
176
+ font-size: 13px;
177
+ gap: 4px;
295
178
  }
296
-
297
179
  :host([size="small"]) button nr-icon {
298
180
  width: 0.875rem;
299
181
  height: 0.875rem;
@@ -301,81 +183,65 @@ import{css as r,LitElement as t,nothing as o,html as a}from"lit";import{property
301
183
  }
302
184
 
303
185
  :host([size="medium"]) button {
304
- height: var(--nuraly-size-md);
305
- padding: var(--nuraly-button-padding-medium, var(--nuraly-spacing-2) var(--nuraly-spacing-4));
306
- min-width: var(--nuraly-button-min-width, 5rem);
186
+ padding: 7px 18px;
187
+ font-size: 14px;
307
188
  }
308
189
 
309
190
  :host([size="large"]) button {
310
- height: var(--nuraly-size-lg);
311
- padding: var(--nuraly-button-padding-large, var(--nuraly-spacing-05) var(--nuraly-spacing-06));
312
- font-size: 1rem;
313
- min-width: var(--nuraly-button-min-width, 6rem);
191
+ padding: 0.875rem 2rem;
192
+ font-size: 1.0625rem;
193
+ font-weight: 500;
314
194
  }
315
-
316
195
  :host([size="large"]) button nr-icon {
317
196
  width: 1.25rem;
318
197
  height: 1.25rem;
319
198
  font-size: 1.25rem !important;
320
199
  }
321
200
 
322
- /* Full width */
323
- :host([full-width]) {
201
+ /* ======== Full width (block) ======== */
202
+ :host([full-width]),
203
+ :host([block]) {
324
204
  width: 100%;
325
205
  }
326
-
327
- :host([full-width]) button {
206
+ :host([full-width]) button,
207
+ :host([block]) button {
328
208
  width: 100%;
329
209
  }
330
210
 
331
- /* Loading state */
211
+ /* ======== Loading ======== */
332
212
  :host([loading]) button {
333
213
  cursor: not-allowed;
334
- opacity: 0.7;
214
+ opacity: 0.5;
335
215
  }
336
216
 
337
- /* Shape variants */
338
-
339
- /* Round - Pill-shaped with rounded ends */
217
+ /* ======== Shape: Round ======== */
340
218
  :host([shape="round"]) button {
341
219
  border-radius: 9999px;
342
- padding: var(--nuraly-spacing-2) var(--nuraly-spacing-5);
343
- }
344
-
345
- :host([shape="round"][size="small"]) button {
346
- padding: var(--nuraly-spacing-1-5) var(--nuraly-spacing-4);
347
220
  }
348
221
 
349
- :host([shape="round"][size="large"]) button {
350
- padding: var(--nuraly-spacing-3) var(--nuraly-spacing-6);
351
- }
352
-
353
- /* Circle - Perfect circle for icon-only buttons */
222
+ /* ======== Shape: Circle ======== */
354
223
  :host([shape="circle"]) button {
355
224
  border-radius: 50%;
356
225
  min-width: auto;
357
- width: var(--nuraly-size-md);
358
- height: var(--nuraly-size-md);
359
- aspect-ratio: 1;
226
+ width: 36px;
227
+ height: 36px;
360
228
  padding: 0;
361
229
  }
362
-
363
230
  :host([shape="circle"][size="small"]) button {
364
- width: var(--nuraly-size-sm);
365
- height: var(--nuraly-size-sm);
231
+ width: 28px;
232
+ height: 28px;
366
233
  }
367
-
368
- :host([shape="circle"][size="medium"]) button {
369
- width: var(--nuraly-size-md);
370
- height: var(--nuraly-size-md);
234
+ :host([shape="circle"][size="large"]) button {
235
+ width: 44px;
236
+ height: 44px;
371
237
  }
372
238
 
373
- :host([shape="circle"][size="large"]) button {
374
- width: var(--nuraly-size-lg);
375
- height: var(--nuraly-size-lg);
239
+ /* ======== Dashed ======== */
240
+ button.button-dashed {
241
+ border-style: dashed;
376
242
  }
377
243
 
378
- /* Enhanced Ripple Effect Animation - Theme-aware */
244
+ /* ======== Ripple ======== */
379
245
  .ripple {
380
246
  position: absolute;
381
247
  border-radius: 50%;
@@ -387,220 +253,105 @@ import{css as r,LitElement as t,nothing as o,html as a}from"lit";import{property
387
253
  }
388
254
 
389
255
  @keyframes ripple-animation {
390
- 0% {
391
- transform: scale(0);
392
- opacity: 1;
393
- }
394
- 70% {
395
- transform: scale(3);
396
- opacity: 0.5;
397
- }
398
- 100% {
399
- transform: scale(4);
400
- opacity: 0;
401
- }
402
- }
403
-
404
- /* Ripple effect for different button types - Carbon Design System compliant */
405
- :host([type="primary"]) .ripple {
406
- background: rgba(255, 255, 255, 0.4);
407
- }
408
-
409
- :host([type="secondary"]) .ripple {
410
- background: rgba(255, 255, 255, 0.3);
411
- }
412
-
413
- :host([type="default"]) .ripple {
414
- background: var(--nuraly-color-text, #161616);
415
- opacity: 0.1;
256
+ 0% { transform: scale(0); opacity: 1; }
257
+ 70% { transform: scale(3); opacity: 0.5; }
258
+ 100% { transform: scale(4); opacity: 0; }
416
259
  }
417
260
 
418
- :host([type="ghost"]) .ripple {
419
- background: var(--nuraly-color-button-primary, #0f62fe);
420
- opacity: 0.2;
421
- }
422
-
423
- :host([type="danger"]) .ripple {
424
- background: rgba(255, 255, 255, 0.4);
425
- }
426
-
427
- /* Theme-specific ripple adjustments for dark theme */
428
- [data-theme="carbon-dark"] :host([type="default"]) .ripple {
429
- background: var(--nuraly-color-text, #f4f4f4);
430
- opacity: 0.1;
431
- }
432
-
433
- [data-theme="carbon-dark"] :host([type="ghost"]) .ripple {
434
- background: var(--nuraly-color-button-primary, #78a9ff);
435
- opacity: 0.2;
436
- }
437
-
438
- [data-theme="carbon-dark"] :host([type="primary"]) .ripple {
439
- background: rgba(22, 22, 22, 0.4); /* Dark ripple for light buttons */
440
- }
441
-
442
- [data-theme="carbon-dark"] :host([type="secondary"]) .ripple {
443
- background: rgba(22, 22, 22, 0.3); /* Dark ripple for light buttons */
444
- }
445
-
446
- [data-theme="carbon-dark"] :host([type="danger"]) .ripple {
447
- background: rgba(22, 22, 22, 0.4); /* Dark ripple for light buttons */
448
- }
449
-
450
- /* ========================================
451
- * CARBON THEME SPECIFIC STYLING
452
- * Enhanced padding and icon centering for Carbon Design System
453
- * ======================================== */
454
-
455
- /* Carbon theme button styling - apply to all carbon themes */
456
- :host([data-theme*="carbon"]) button,
457
- [data-theme*="carbon"] :host button {
458
- /* Better baseline alignment for icon and text */
459
- align-items: center;
460
-
461
- /* Enhanced icon alignment and spacing for Carbon */
462
- nr-icon {
463
- width: var(--nuraly-button-icon-size, 1rem);
464
- height: var(--nuraly-button-icon-size, 1rem);
465
- display: inline-flex;
466
- align-items: center;
467
- justify-content: center;
468
- flex-shrink: 0;
469
- /* Perfect vertical alignment with text baseline */
470
- vertical-align: middle;
471
- line-height: 1;
472
- }
473
-
474
- /* Icon spacing for Carbon theme - improved approach */
475
- gap: var(--nuraly-button-icon-spacing, var(--nuraly-spacing-03, 0.5rem));
476
- }
477
-
478
- /* Specific Carbon theme selectors for better targeting */
479
- [data-theme="carbon-light"] nr-button button,
480
- [data-theme="carbon-dark"] nr-button button,
481
- [data-theme="carbon"] nr-button button {
482
- /* Better baseline alignment for icon and text */
483
- align-items: center;
484
-
485
- /* Enhanced icon alignment and spacing for Carbon */
486
- nr-icon {
487
- width: var(--nuraly-button-icon-size, 1rem);
488
- height: var(--nuraly-button-icon-size, 1rem);
489
- display: inline-flex;
490
- align-items: center;
491
- justify-content: center;
492
- flex-shrink: 0;
493
- /* Perfect vertical alignment with text baseline */
494
- vertical-align: middle;
495
- line-height: 1;
496
- /* Slight adjustment for perfect optical centering */
497
- margin-top: -1px;
498
- }
499
-
500
- /* Target the SVG inside nr-icon for better alignment */
501
- nr-icon svg {
502
- display: block;
503
- margin: 0 auto;
504
- }
505
-
506
- /* Icon spacing for Carbon theme */
507
- gap: var(--nuraly-button-icon-spacing, var(--nuraly-spacing-03, 0.5rem));
508
-
509
- /* Ensure text is also properly centered */
510
- span#container {
511
- display: flex;
512
- align-items: center;
513
- justify-content: center;
514
- width: 100%;
515
- height: 100%;
516
- line-height: 1;
517
- }
518
-
519
- /* Ensure slot content aligns properly */
520
- slot#slot {
521
- display: inline-block;
522
- line-height: inherit;
523
- }
524
- }
525
- `;
261
+ :host([type="primary"]) .ripple { background: rgba(255, 255, 255, 0.3); }
262
+ :host([type="secondary"]) .ripple { background: rgba(255, 255, 255, 0.3); }
263
+ :host([type="default"]) .ripple { background: rgba(0, 0, 0, 0.06); }
264
+ :host([type="ghost"]) .ripple { background: rgba(124, 58, 237, 0.15); }
265
+ :host([type="danger"]) .ripple { background: rgba(255, 255, 255, 0.3); }
266
+ `,h=t=>class extends t{constructor(){super(...arguments),this.handleSystemThemeChange=()=>{this.closest("[data-theme]")||document.documentElement.hasAttribute("data-theme")||this.requestUpdate()}}connectedCallback(){super.connectedCallback(),this.setupThemeObserver(),this.setupDesignSystemObserver(),this.setupSystemThemeListener()}disconnectedCallback(){var t,e,i;super.disconnectedCallback(),null===(t=this.themeObserver)||void 0===t||t.disconnect(),null===(e=this.designSystemObserver)||void 0===e||e.disconnect(),null===(i=this.mediaQuery)||void 0===i||i.removeEventListener("change",this.handleSystemThemeChange)}get currentTheme(){var t,e;const i=(null===(t=this.closest("[data-theme]"))||void 0===t?void 0:t.getAttribute("data-theme"))||document.documentElement.getAttribute("data-theme");return i||((null===(e=window.matchMedia)||void 0===e?void 0:e.call(window,"(prefers-color-scheme: dark)").matches)?"dark":"light")}get currentDesignSystem(){var t;const e=(null===(t=this.closest("[design-system]"))||void 0===t?void 0:t.getAttribute("design-system"))||document.documentElement.getAttribute("design-system");return"carbon"===e?e:"default"}setupThemeObserver(){this.themeObserver=new MutationObserver(()=>{this.requestUpdate()}),this.themeObserver.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]})}setupDesignSystemObserver(){this.designSystemObserver=new MutationObserver(()=>{this.requestUpdate()}),this.designSystemObserver.observe(document.documentElement,{attributes:!0,attributeFilter:["design-system"]})}setupSystemThemeListener(){window.matchMedia&&(this.mediaQuery=window.matchMedia("(prefers-color-scheme: dark)"),this.mediaQuery.addEventListener("change",this.handleSystemThemeChange))}},l=()=>{var t;return void 0!==globalThis.litElementVersions||"undefined"!=typeof process&&"development"===(null===(t=process.env)||void 0===t?void 0:t.NODE_ENV)||"undefined"!=typeof window&&("localhost"===window.location.hostname||"127.0.0.1"===window.location.hostname)},c=t=>class extends t{constructor(){super(...arguments),this.requiredComponents=[]}validateDependencies(){if(l())for(const t of this.requiredComponents)if(!this.isComponentAvailable(t))throw new Error(`Required component "${t}" is not registered. Please import and register the component before using ${this.tagName.toLowerCase()}. Example: import '@nuralyui/${t}';`)}validateDependenciesWithHandler(t){if(!l())return!0;let e=!0;for(const i of this.requiredComponents)if(!this.isComponentAvailable(i)){e=!1;const o=new Error(`Required component "${i}" is not registered. Please import and register the component before using ${this.tagName.toLowerCase()}.`);t?t(i,o):console.error(o.message)}return e}isComponentAvailable(t){return!!customElements.get(t)}getMissingDependencies(){return this.requiredComponents.filter(t=>!this.isComponentAvailable(t))}areDependenciesAvailable(){return this.requiredComponents.every(t=>this.isComponentAvailable(t))}addRequiredComponent(t){this.requiredComponents.includes(t)||this.requiredComponents.push(t)}removeRequiredComponent(t){const e=this.requiredComponents.indexOf(t);e>-1&&this.requiredComponents.splice(e,1)}},u=t=>class extends t{dispatchCustomEvent(t,e){this.dispatchEvent(new CustomEvent(t,{detail:e,bubbles:!0,composed:!0}))}dispatchEventWithMetadata(t,e){var i;const o=Object.assign(Object.assign({},e),{timestamp:Date.now(),componentName:(null===(i=this.tagName)||void 0===i?void 0:i.toLowerCase())||"unknown"});this.dispatchCustomEvent(t,o)}dispatchInputEvent(t,e){const i=Object.assign({target:e.target||this,value:e.value,originalEvent:e.originalEvent},e);this.dispatchCustomEvent(t,i)}dispatchFocusEvent(t,e){const i=Object.assign({target:e.target||this,value:e.value,focused:e.focused,cursorPosition:e.cursorPosition,selectedText:e.selectedText},e);this.dispatchCustomEvent(t,i)}dispatchValidationEvent(t,e){var i;const o=Object.assign({target:e.target||this,value:e.value,isValid:null!==(i=e.isValid)&&void 0!==i&&i,error:e.error},e);this.dispatchCustomEvent(t,o)}dispatchActionEvent(t,e){const i=Object.assign({target:e.target||this,action:e.action,previousValue:e.previousValue,newValue:e.newValue},e);this.dispatchCustomEvent(t,i)}isReadonlyKeyAllowed(t){if(t.ctrlKey||t.metaKey){return["KeyA","KeyC"].includes(t.code)}return["Tab","Escape","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(t.key)}isActivationKey(t){return"Enter"===t.key||" "===t.key}},p=new Set,b=new Map;
526
267
  /**
527
268
  * @license
528
269
  * Copyright 2023 Nuraly, Laabidi Aymen
529
270
  * SPDX-License-Identifier: MIT
530
271
  */
531
- class d extends s{}
272
+ const f=t=>{class e extends t{constructor(){super(...arguments),this.t=null}createRenderRoot(){return this.constructor.useShadowDom?super.createRenderRoot():this}connectedCallback(){const t=this.constructor.useShadowDom;if(!t&&null===this.t)for(this.t=[];this.firstChild;)this.t.push(this.removeChild(this.firstChild));if(super.connectedCallback(),!t){const t=this.constructor,e=this.tagName.toLowerCase(),i=t.styles;if(i){const t=g(i);t&&function(t,e,i){var o;if(!b.has(t)){const i=new CSSStyleSheet;i.replaceSync(e),b.set(t,i)}const s=b.get(t),n=`doc:${t}`;if(p.has(n)||(document.adoptedStyleSheets=[...document.adoptedStyleSheets,s],p.add(n)),i){let e=i;for(;e;){const i=e.getRootNode();if(!(i instanceof ShadowRoot))break;{const n=`shadow:${((null===(o=i.host)||void 0===o?void 0:o.tagName)||"").toLowerCase()}:${t}`;p.has(n)||(i.adoptedStyleSheets=[...i.adoptedStyleSheets,s],p.add(n)),e=i.host}}}}(e,t,this)}}}get lightChildren(){return this.t?this.t.filter(t=>!(t instanceof Element&&t.hasAttribute("slot"))):[]}lightChildrenNamed(t){return this.t?this.t.filter(e=>e instanceof Element&&e.getAttribute("slot")===t):[]}}return e.useShadowDom=!1,e};function g(t){return Array.isArray(t)?t.map(t=>g(t)).filter(Boolean).join("\n"):t&&"string"==typeof t.cssText?t.cssText:"string"==typeof t?t:""}
273
+ /**
274
+ * @license
275
+ * Copyright 2023 Nuraly, Laabidi Aymen
276
+ * SPDX-License-Identifier: MIT
277
+ */class y{constructor(t){this._host=t,t.addController(this)}get host(){return this._host}hostConnected(){}hostDisconnected(){}hostUpdate(){}hostUpdated(){}requestUpdate(){try{this._host.requestUpdate()}catch(t){this.handleError(t,"requestUpdate")}}dispatchEvent(t){try{return this._host.dispatchEvent(t)}catch(t){return this.handleError(t,"dispatchEvent"),!1}}handleError(t,e){console.error(`[${this.constructor.name}] Error in ${e}:`,t);try{this._host.dispatchEvent(new CustomEvent("nr-controller-error",{detail:{error:t.message,context:e,controller:this.constructor.name},bubbles:!0,composed:!0}))}catch(t){}}safeExecute(t,e,i){try{return t()}catch(t){return this.handleError(t,e),i}}debounce(t,e){let i;const o=(...o)=>{void 0!==i&&clearTimeout(i),i=setTimeout(()=>{i=void 0,t.apply(this,o)},e)};return o.cancel=()=>{void 0!==i&&(clearTimeout(i),i=void 0)},o}}
278
+ /**
279
+ * @license
280
+ * Copyright 2023 Nuraly, Laabidi Aymen
281
+ * SPDX-License-Identifier: MIT
282
+ */class m extends y{}
532
283
  /**
533
284
  * @license
534
285
  * Copyright 2023 Nuraly, Laabidi Aymen
535
286
  * SPDX-License-Identifier: MIT
536
- */class b extends d{createRipple(r){try{if(!this.host.ripple||this.host.disabled)return;const t=r.currentTarget,o=t.getBoundingClientRect(),a=2*Math.max(o.width,o.height),e=r.clientX-o.left-a/2,n=r.clientY-o.top-a/2,i=document.createElement("span");i.className="ripple",i.style.width=i.style.height=a+"px",i.style.left=e+"px",i.style.top=n+"px";t.querySelectorAll(".ripple").forEach(r=>r.remove()),t.appendChild(i),setTimeout(()=>{i.remove()},600)}catch(r){this.handleError(r,"createRipple")}}handleRippleClick(r){try{this.createRipple(r),this.dispatchEvent(new CustomEvent("button-click",{detail:{disabled:this.host.disabled,timestamp:Date.now(),coordinates:{x:r.clientX,y:r.clientY}},bubbles:!0,composed:!0}))}catch(r){this.handleError(r,"handleRippleClick")}}}
287
+ */class v extends m{createRipple(t){try{if(!this.host.ripple||this.host.disabled)return;const e=t.currentTarget,i=e.getBoundingClientRect(),o=2*Math.max(i.width,i.height),s=t.clientX-i.left-o/2,n=t.clientY-i.top-o/2,r=document.createElement("span");r.className="ripple",r.style.width=r.style.height=o+"px",r.style.left=s+"px",r.style.top=n+"px";e.querySelectorAll(".ripple").forEach(t=>t.remove()),e.appendChild(r),setTimeout(()=>{r.remove()},600)}catch(t){this.handleError(t,"createRipple")}}handleRippleClick(t){try{this.createRipple(t),this.dispatchEvent(new CustomEvent("button-click",{detail:{disabled:this.host.disabled,timestamp:Date.now(),coordinates:{x:t.clientX,y:t.clientY}},bubbles:!0,composed:!0}))}catch(t){this.handleError(t,"handleRippleClick")}}}
537
288
  /**
538
289
  * @license
539
290
  * Copyright 2023 Nuraly, Laabidi Aymen
540
291
  * SPDX-License-Identifier: MIT
541
- */class h extends d{handleKeyboardActivation(r){try{if(this.host.disabled)return;this.isActivationKey(r)&&(r.preventDefault(),this.host.click(),this.dispatchEvent(new CustomEvent("keyboard-activation",{detail:{key:r.key,timestamp:Date.now(),target:this.host},bubbles:!0,composed:!0})))}catch(r){this.handleError(r,"handleKeyboardActivation")}}handleKeydown(r){try{if(this.host.disabled){if(!this.isReadonlyKeyAllowed(r))return void r.preventDefault()}this.handleKeyboardActivation(r)}catch(r){this.handleError(r,"handleKeydown")}}isActivationKey(r){return"Enter"===r.key||" "===r.key}isReadonlyKeyAllowed(r){return["Tab","Shift","Escape","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Home","End"].includes(r.key)}}
292
+ */class w extends m{handleKeyboardActivation(t){try{if(this.host.disabled)return;this.isActivationKey(t)&&(t.preventDefault(),this.host.click(),this.dispatchEvent(new CustomEvent("keyboard-activation",{detail:{key:t.key,timestamp:Date.now(),target:this.host},bubbles:!0,composed:!0})))}catch(t){this.handleError(t,"handleKeyboardActivation")}}handleKeydown(t){try{if(this.host.disabled){if(!this.isReadonlyKeyAllowed(t))return void t.preventDefault()}this.handleKeyboardActivation(t)}catch(t){this.handleError(t,"handleKeydown")}}isActivationKey(t){return"Enter"===t.key||" "===t.key}isReadonlyKeyAllowed(t){return["Tab","Shift","Escape","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Home","End"].includes(t.key)}}
542
293
  /**
543
294
  * @license
544
295
  * Copyright 2023 Nuraly, Laabidi Aymen
545
296
  * SPDX-License-Identifier: MIT
546
- */class y extends d{isLinkType(){return!!this.host.href}getElementTag(){return this.isLinkType()?"a":"button"}getLinkAttributes(){try{const r={};return this.isLinkType()?(r.href=this.host.href,this.host.target&&(r.target=this.host.target,"_blank"===this.host.target&&(r.rel="noopener noreferrer")),r.role="link"):r.role="button",r}catch(r){return this.handleError(r,"getLinkAttributes"),{role:"button"}}}handleLinkNavigation(r){try{this.isLinkType()&&this.dispatchEvent(new CustomEvent("link-navigation",{detail:{href:this.host.href,target:this.host.target,timestamp:Date.now(),originalEvent:r},bubbles:!0,composed:!0}))}catch(r){this.handleError(r,"handleLinkNavigation")}}}
297
+ */class k extends m{isLinkType(){return!!this.host.href}getElementTag(){return this.isLinkType()?"a":"button"}getLinkAttributes(){try{const t={};return this.isLinkType()?(t.href=this.host.href,this.host.target&&(t.target=this.host.target,"_blank"===this.host.target&&(t.rel="noopener noreferrer")),t.role="link"):t.role="button",t}catch(t){return this.handleError(t,"getLinkAttributes"),{role:"button"}}}handleLinkNavigation(t){try{this.isLinkType()&&this.dispatchEvent(new CustomEvent("link-navigation",{detail:{href:this.host.href,target:this.host.target,timestamp:Date.now(),originalEvent:t},bubbles:!0,composed:!0}))}catch(t){this.handleError(t,"handleLinkNavigation")}}}
547
298
  /**
548
299
  * @license
549
300
  * Copyright 2023 Nuraly, Laabidi Aymen
550
301
  * SPDX-License-Identifier: MIT
551
- */var p=function(r,t,o,a){for(var e,n=arguments.length,i=n<3?t:null===a?a=Object.getOwnPropertyDescriptor(t,o):a,l=r.length-1;l>=0;l--)(e=r[l])&&(i=(n<3?e(i):n>3?e(t,o,i):e(t,o))||i);return n>3&&i&&Object.defineProperty(t,o,i),i};let v=class extends(l(t)){constructor(){super(...arguments),this.disabled=!1,this.loading=!1,this.size=c,this.type="default",this.shape="default",this.block=!1,this.dashed=!1,this.icon=[],this.iconPosition="left",this.href=c,this.target=c,this.ripple=!0,this.buttonAriaLabel=c,this.ariaDescribedBy=c,this.htmlType=c,this.requiredComponents=["nr-icon"],this.rippleController=new b(this),this.keyboardController=new h(this),this.linkController=new y(this)}connectedCallback(){super.connectedCallback(),this.validateDependencies()}getCommonAttributes(){return{"data-type":this.type,"data-shape":this.shape,"data-size":this.size||o,"data-state":this.loading?"loading":o,"data-theme":this.currentTheme,"data-block":this.block?"true":o,class:this.dashed?"button-dashed":"","aria-disabled":this.disabled?"true":"false","aria-label":this.buttonAriaLabel||o,"aria-describedby":this.ariaDescribedBy||o,tabindex:this.disabled?"-1":"0"}}renderIcon(r){if(!this.isComponentAvailable("nr-icon")){const t="string"==typeof r?r:r.name;return console.warn(`[nr-button] Icon component 'nr-icon' not available. Icon "${t}" will not render. Ensure the icon component is imported and registered.`),o}const t=()=>{switch(this.size){case"small":return"small";case"medium":default:return"medium";case"large":return"large"}};if("string"==typeof r){const o=t();return a`<nr-icon name=${r} size=${i(o)}></nr-icon>`}const{name:e,type:n="solid",size:l,color:s,alt:c}=r,u=l||t();return a`<nr-icon
552
- name=${e}
302
+ */var $=function(t,e,i,o){for(var s,n=arguments.length,r=n<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o,a=t.length-1;a>=0;a--)(s=t[a])&&(r=(n<3?s(r):n>3?s(e,i,r):s(e,i))||r);return n>3&&r&&Object.defineProperty(e,i,r),r};let x=class extends((t=>c(h(u(f(t)))))(o)){constructor(){super(...arguments),this.disabled=!1,this.loading=!1,this.size=a,this.type="default",this.shape="default",this.block=!1,this.dashed=!1,this.icon=[],this.iconPosition="left",this.href=a,this.target=a,this.ripple=!0,this.buttonAriaLabel=a,this.ariaDescribedBy=a,this.htmlType=a,this.requiredComponents=["nr-icon"],this.rippleController=new v(this),this.keyboardController=new w(this),this.linkController=new k(this)}connectedCallback(){super.connectedCallback(),this.validateDependencies()}getCommonAttributes(){return{"data-type":this.type,"data-shape":this.shape,"data-size":this.size||e,"data-state":this.loading?"loading":e,"data-block":this.block?"true":e,class:this.dashed?"button-dashed":"","aria-disabled":this.disabled?"true":"false","aria-label":this.buttonAriaLabel||e,"aria-describedby":this.ariaDescribedBy||e,tabindex:this.disabled?"-1":"0"}}renderIcon(t){if(!this.isComponentAvailable("nr-icon")){const i="string"==typeof t?t:t.name;return console.warn(`[nr-button] Icon component 'nr-icon' not available. Icon "${i}" will not render. Ensure the icon component is imported and registered.`),e}const o=()=>{switch(this.size){case"small":return"small";case"medium":default:return"medium";case"large":return"large"}};if("string"==typeof t){const e=o();return i`<nr-icon name=${t} size=${r(e)}></nr-icon>`}const{name:s,type:n="solid",size:a,color:d,alt:h}=t,l=a||o();return i`<nr-icon
303
+ name=${s}
553
304
  type=${n}
554
- alt=${c||""}
555
- size=${i(u)}
556
- color=${s||""}
557
- ></nr-icon>`}handleClick(r){this.disabled?r.preventDefault():(this.rippleController.handleRippleClick(r),this.linkController.isLinkType()&&this.linkController.handleLinkNavigation(r),this.dispatchEventWithMetadata("button-clicked",{type:this.type,disabled:this.disabled,loading:this.loading,href:this.href||null}))}handleKeydown(r){this.keyboardController.handleKeydown(r)}getResolvedLeftIcon(){var r,t;return this.iconLeft?this.iconLeft:(null===(r=this.icons)||void 0===r?void 0:r.left)?this.icons.left:(null===(t=this.icon)||void 0===t?void 0:t.length)>0?this.icon[0]:void 0}getResolvedRightIcon(){var r,t;return this.iconRight?this.iconRight:(null===(r=this.icons)||void 0===r?void 0:r.right)?this.icons.right:2===(null===(t=this.icon)||void 0===t?void 0:t.length)?this.icon[1]:void 0}render(){const r=this.linkController.getElementTag(),t=this.getCommonAttributes(),e=this.linkController.getLinkAttributes(),n=this.getResolvedLeftIcon(),i=this.getResolvedRightIcon(),l=a`
558
- <span id="container" part="container">
559
- ${n?this.renderIcon(n):o}
560
- <slot id="slot"></slot>
561
- ${i?this.renderIcon(i):o}
305
+ alt=${h||""}
306
+ size=${r(l)}
307
+ color=${d||""}
308
+ ></nr-icon>`}handleClick(t){this.disabled?t.preventDefault():(this.rippleController.handleRippleClick(t),this.linkController.isLinkType()&&this.linkController.handleLinkNavigation(t),this.dispatchEventWithMetadata("button-clicked",{type:this.type,disabled:this.disabled,loading:this.loading,href:this.href||null}))}handleKeydown(t){this.keyboardController.handleKeydown(t)}getResolvedLeftIcon(){var t,e;return this.iconLeft?this.iconLeft:(null===(t=this.icons)||void 0===t?void 0:t.left)?this.icons.left:(null===(e=this.icon)||void 0===e?void 0:e.length)>0?this.icon[0]:void 0}getResolvedRightIcon(){var t,e;return this.iconRight?this.iconRight:(null===(t=this.icons)||void 0===t?void 0:t.right)?this.icons.right:2===(null===(e=this.icon)||void 0===e?void 0:e.length)?this.icon[1]:void 0}render(){const t=this.linkController.getElementTag(),o=this.getCommonAttributes(),s=this.linkController.getLinkAttributes(),n=this.getResolvedLeftIcon(),r=this.getResolvedRightIcon(),a=i`
309
+ <span part="container" class="button-container">
310
+ ${n?this.renderIcon(n):e}
311
+ <slot></slot>
312
+ ${r?this.renderIcon(r):e}
562
313
  </span>
563
- `;return"a"===r?a`
314
+ `;return"a"===t?i`
564
315
  <a
565
- href="${e.href}"
566
- target="${e.target||o}"
567
- rel="${e.rel||o}"
568
- role="${e.role}"
569
- data-type="${t["data-type"]}"
570
- data-shape="${t["data-shape"]}"
571
- data-size="${t["data-size"]}"
572
- data-state="${t["data-state"]}"
573
- data-theme="${t["data-theme"]}"
574
- data-block="${t["data-block"]}"
575
- class="${t.class}"
316
+ part="button"
317
+ href="${s.href}"
318
+ target="${s.target||e}"
319
+ rel="${s.rel||e}"
320
+ role="${s.role}"
321
+ data-type="${o["data-type"]}"
322
+ data-shape="${o["data-shape"]}"
323
+ data-size="${o["data-size"]}"
324
+ data-state="${o["data-state"]}"
325
+ data-block="${o["data-block"]}"
326
+ class="${o.class}"
576
327
  aria-disabled="${this.disabled}"
577
- aria-label="${this.buttonAriaLabel||o}"
578
- aria-describedby="${this.ariaDescribedBy||o}"
328
+ aria-label="${this.buttonAriaLabel||e}"
329
+ aria-describedby="${this.ariaDescribedBy||e}"
579
330
  tabindex="${this.disabled?-1:0}"
580
331
  @click="${this.handleClick}"
581
332
  @keydown="${this.handleKeydown}"
582
333
  >
583
- ${l}
334
+ ${a}
584
335
  </a>
585
- `:a`
336
+ `:i`
586
337
  <button
338
+ part="button"
587
339
  ?disabled="${this.disabled}"
588
340
  type="${this.htmlType||"button"}"
589
- role="${e.role}"
590
- data-type="${t["data-type"]}"
591
- data-shape="${t["data-shape"]}"
592
- data-size="${t["data-size"]}"
593
- data-state="${t["data-state"]}"
594
- data-theme="${t["data-theme"]}"
595
- data-block="${t["data-block"]}"
596
- class="${t.class}"
341
+ role="${s.role}"
342
+ data-type="${o["data-type"]}"
343
+ data-shape="${o["data-shape"]}"
344
+ data-size="${o["data-size"]}"
345
+ data-state="${o["data-state"]}"
346
+ data-block="${o["data-block"]}"
347
+ class="${o.class}"
597
348
  aria-disabled="${this.disabled}"
598
- aria-label="${this.buttonAriaLabel||o}"
599
- aria-describedby="${this.ariaDescribedBy||o}"
349
+ aria-label="${this.buttonAriaLabel||e}"
350
+ aria-describedby="${this.ariaDescribedBy||e}"
600
351
  tabindex="${this.disabled?-1:0}"
601
352
  @click="${this.handleClick}"
602
353
  @keydown="${this.handleKeydown}"
603
354
  >
604
- ${l}
355
+ ${a}
605
356
  </button>
606
- `}};v.styles=u,p([e({type:Boolean})],v.prototype,"disabled",void 0),p([e({type:Boolean})],v.prototype,"loading",void 0),p([e({type:String})],v.prototype,"size",void 0),p([e({type:String,reflect:!0})],v.prototype,"type",void 0),p([e({type:String})],v.prototype,"shape",void 0),p([e({type:Boolean})],v.prototype,"block",void 0),p([e({type:Boolean})],v.prototype,"dashed",void 0),p([e({type:Array})],v.prototype,"icon",void 0),p([e({type:Object})],v.prototype,"iconLeft",void 0),p([e({type:Object})],v.prototype,"iconRight",void 0),p([e({type:Object})],v.prototype,"icons",void 0),p([e({reflect:!0})],v.prototype,"iconPosition",void 0),p([e({type:String})],v.prototype,"href",void 0),p([e({type:String})],v.prototype,"target",void 0),p([e({type:Boolean})],v.prototype,"ripple",void 0),p([e({type:String})],v.prototype,"buttonAriaLabel",void 0),p([e({type:String})],v.prototype,"ariaDescribedBy",void 0),p([e({type:String})],v.prototype,"htmlType",void 0),v=p([n("nr-button")],v);export{v as NrButtonElement};
357
+ `}};x.styles=d,x.useShadowDom=!0,$([s({type:Boolean})],x.prototype,"disabled",void 0),$([s({type:Boolean})],x.prototype,"loading",void 0),$([s({type:String})],x.prototype,"size",void 0),$([s({type:String,reflect:!0})],x.prototype,"type",void 0),$([s({type:String})],x.prototype,"shape",void 0),$([s({type:Boolean})],x.prototype,"block",void 0),$([s({type:Boolean})],x.prototype,"dashed",void 0),$([s({type:Array})],x.prototype,"icon",void 0),$([s({type:Object})],x.prototype,"iconLeft",void 0),$([s({type:Object})],x.prototype,"iconRight",void 0),$([s({type:Object})],x.prototype,"icons",void 0),$([s({reflect:!0})],x.prototype,"iconPosition",void 0),$([s({type:String})],x.prototype,"href",void 0),$([s({type:String})],x.prototype,"target",void 0),$([s({type:Boolean})],x.prototype,"ripple",void 0),$([s({type:String})],x.prototype,"buttonAriaLabel",void 0),$([s({type:String})],x.prototype,"ariaDescribedBy",void 0),$([s({type:String})],x.prototype,"htmlType",void 0),x=$([n("nr-button")],x);export{x as NrButtonElement};