@nectary/components 4.12.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (585) hide show
  1. package/accordion/global/index.d.ts +1 -0
  2. package/accordion/global/index.js +2 -0
  3. package/accordion/index.d.ts +1 -22
  4. package/accordion/index.js +41 -39
  5. package/accordion/types.d.ts +21 -1
  6. package/accordion/types.js +1 -1
  7. package/accordion-item/global/index.d.ts +1 -0
  8. package/accordion-item/global/index.js +2 -0
  9. package/accordion-item/index.d.ts +2 -22
  10. package/accordion-item/index.js +53 -49
  11. package/accordion-item/types.d.ts +21 -1
  12. package/accordion-item/types.js +1 -1
  13. package/accordion-item/utils.js +4 -1
  14. package/action-menu/global/index.d.ts +1 -0
  15. package/action-menu/global/index.js +2 -0
  16. package/action-menu/index.d.ts +1 -22
  17. package/action-menu/index.js +62 -77
  18. package/action-menu/types.d.ts +21 -1
  19. package/action-menu/types.js +1 -1
  20. package/action-menu-option/global/index.d.ts +1 -0
  21. package/action-menu-option/global/index.js +2 -0
  22. package/action-menu-option/index.d.ts +1 -22
  23. package/action-menu-option/index.js +39 -41
  24. package/action-menu-option/types.d.ts +21 -1
  25. package/action-menu-option/types.js +1 -1
  26. package/action-menu-option/utils.js +6 -3
  27. package/alert/global/index.d.ts +1 -0
  28. package/alert/global/index.js +2 -0
  29. package/alert/index.d.ts +2 -22
  30. package/alert/index.js +24 -21
  31. package/alert/types.d.ts +21 -1
  32. package/alert/types.js +1 -1
  33. package/alert/utils.js +4 -1
  34. package/avatar/colors.js +1 -1
  35. package/avatar/global/index.d.ts +1 -0
  36. package/avatar/global/index.js +2 -0
  37. package/avatar/index.d.ts +2 -22
  38. package/avatar/index.js +42 -41
  39. package/avatar/types.d.ts +21 -1
  40. package/avatar/types.js +1 -1
  41. package/avatar/utils.js +9 -4
  42. package/badge/global/index.d.ts +1 -0
  43. package/badge/global/index.js +2 -0
  44. package/badge/index.d.ts +3 -22
  45. package/badge/index.js +52 -51
  46. package/badge/types.d.ts +21 -1
  47. package/badge/types.js +1 -1
  48. package/badge/utils.js +4 -1
  49. package/bundle.d.ts +78 -0
  50. package/bundle.js +13033 -0
  51. package/bundle.ts +80 -0
  52. package/button/global/index.d.ts +1 -0
  53. package/button/global/index.js +2 -0
  54. package/button/index.d.ts +2 -22
  55. package/button/index.js +101 -111
  56. package/button/types.d.ts +21 -1
  57. package/button/types.js +1 -1
  58. package/button/utils.js +18 -2
  59. package/button-group/global/index.d.ts +1 -0
  60. package/button-group/global/index.js +2 -0
  61. package/button-group/index.d.ts +1 -22
  62. package/button-group/index.js +20 -18
  63. package/button-group/types.d.ts +22 -3
  64. package/button-group/types.js +1 -1
  65. package/button-group-item/global/index.d.ts +1 -0
  66. package/button-group-item/global/index.js +2 -0
  67. package/button-group-item/index.d.ts +2 -22
  68. package/button-group-item/index.js +31 -42
  69. package/button-group-item/types.d.ts +22 -3
  70. package/button-group-item/types.js +1 -1
  71. package/card-container/global/index.d.ts +1 -0
  72. package/card-container/global/index.js +2 -0
  73. package/card-container/index.d.ts +1 -21
  74. package/card-container/index.js +8 -5
  75. package/card-container/types.d.ts +21 -1
  76. package/card-container/types.js +1 -1
  77. package/card-v2/global/index.d.ts +1 -0
  78. package/card-v2/global/index.js +2 -0
  79. package/card-v2/index.d.ts +1 -22
  80. package/card-v2/index.js +59 -57
  81. package/card-v2/types.d.ts +21 -1
  82. package/card-v2/types.js +1 -1
  83. package/card-v2-title/global/index.d.ts +1 -0
  84. package/card-v2-title/global/index.js +2 -0
  85. package/card-v2-title/index.d.ts +2 -22
  86. package/card-v2-title/index.js +28 -26
  87. package/card-v2-title/types.d.ts +21 -1
  88. package/card-v2-title/types.js +1 -1
  89. package/checkbox/global/index.d.ts +1 -0
  90. package/checkbox/global/index.js +2 -0
  91. package/checkbox/index.d.ts +1 -22
  92. package/checkbox/index.js +88 -81
  93. package/checkbox/types.d.ts +21 -1
  94. package/checkbox/types.js +1 -1
  95. package/chip/colors.js +1 -1
  96. package/chip/global/index.d.ts +1 -0
  97. package/chip/global/index.js +2 -0
  98. package/chip/index.d.ts +1 -22
  99. package/chip/index.js +62 -75
  100. package/chip/types.d.ts +21 -1
  101. package/chip/types.js +1 -1
  102. package/chip/utils.js +7 -3
  103. package/code-tag/global/index.d.ts +1 -0
  104. package/code-tag/global/index.js +2 -0
  105. package/code-tag/index.d.ts +1 -22
  106. package/code-tag/index.js +17 -14
  107. package/code-tag/types.d.ts +21 -1
  108. package/code-tag/types.js +1 -1
  109. package/color-menu/global/index.d.ts +1 -0
  110. package/color-menu/global/index.js +2 -0
  111. package/color-menu/index.d.ts +2 -22
  112. package/color-menu/index.js +115 -115
  113. package/color-menu/types.d.ts +21 -1
  114. package/color-menu/types.js +1 -1
  115. package/color-menu/utils.js +6 -3
  116. package/color-menu-option/global/index.d.ts +1 -0
  117. package/color-menu-option/global/index.js +2 -0
  118. package/color-menu-option/index.d.ts +1 -22
  119. package/color-menu-option/index.js +30 -26
  120. package/color-menu-option/types.d.ts +21 -1
  121. package/color-menu-option/types.js +1 -1
  122. package/color-menu-option/utils.js +6 -3
  123. package/color-swatch/global/index.d.ts +1 -0
  124. package/color-swatch/global/index.js +2 -0
  125. package/color-swatch/index.d.ts +1 -22
  126. package/color-swatch/index.js +23 -20
  127. package/color-swatch/types.d.ts +21 -1
  128. package/color-swatch/types.js +1 -1
  129. package/color-swatch/utils.js +7 -3
  130. package/date-picker/global/index.d.ts +1 -0
  131. package/date-picker/global/index.js +2 -0
  132. package/date-picker/index.d.ts +2 -22
  133. package/date-picker/index.js +157 -150
  134. package/date-picker/types.d.ts +21 -1
  135. package/date-picker/types.js +1 -1
  136. package/date-picker/utils.js +59 -42
  137. package/dialog/global/index.d.ts +1 -0
  138. package/dialog/global/index.js +2 -0
  139. package/dialog/index.d.ts +1 -22
  140. package/dialog/index.js +71 -58
  141. package/dialog/types.d.ts +21 -1
  142. package/dialog/types.js +1 -1
  143. package/dialog/utils.js +11 -7
  144. package/emoji/global/index.d.ts +1 -0
  145. package/emoji/global/index.js +2 -0
  146. package/emoji/index.d.ts +1 -22
  147. package/emoji/index.js +19 -16
  148. package/emoji/types.d.ts +21 -1
  149. package/emoji/types.js +1 -1
  150. package/emoji/utils.js +22 -17
  151. package/emoji-picker/global/index.d.ts +1 -0
  152. package/emoji-picker/global/index.js +2 -0
  153. package/emoji-picker/index.d.ts +2 -22
  154. package/emoji-picker/index.js +138 -118
  155. package/emoji-picker/types.d.ts +21 -1
  156. package/emoji-picker/types.js +1 -1
  157. package/field/global/index.d.ts +1 -0
  158. package/field/global/index.js +2 -0
  159. package/field/index.d.ts +1 -22
  160. package/field/index.js +63 -60
  161. package/field/types.d.ts +21 -1
  162. package/field/types.js +1 -1
  163. package/file-drop/global/index.d.ts +1 -0
  164. package/file-drop/global/index.js +2 -0
  165. package/file-drop/index.d.ts +1 -22
  166. package/file-drop/index.js +103 -98
  167. package/file-drop/types.d.ts +21 -1
  168. package/file-drop/types.js +1 -1
  169. package/file-drop/utils.js +27 -22
  170. package/file-picker/global/index.d.ts +1 -0
  171. package/file-picker/global/index.js +2 -0
  172. package/file-picker/index.d.ts +1 -22
  173. package/file-picker/index.js +53 -48
  174. package/file-picker/types.d.ts +21 -1
  175. package/file-picker/types.js +1 -1
  176. package/file-picker/utils.js +6 -3
  177. package/file-status/global/index.d.ts +1 -0
  178. package/file-status/global/index.js +2 -0
  179. package/file-status/index.d.ts +2 -22
  180. package/file-status/index.js +33 -22
  181. package/file-status/types.d.ts +21 -1
  182. package/file-status/types.js +1 -1
  183. package/file-status/utils.js +4 -1
  184. package/flag/global/index.d.ts +1 -0
  185. package/flag/global/index.js +2 -0
  186. package/flag/index.d.ts +1 -22
  187. package/flag/index.js +19 -16
  188. package/flag/types.d.ts +21 -1
  189. package/flag/types.js +1 -1
  190. package/flag/utils.js +11 -8
  191. package/grid/global/index.d.ts +1 -0
  192. package/grid/global/index.js +2 -0
  193. package/grid/index.d.ts +1 -22
  194. package/grid/index.js +8 -5
  195. package/grid/types.d.ts +21 -1
  196. package/grid/types.js +1 -1
  197. package/grid-item/global/index.d.ts +1 -0
  198. package/grid-item/global/index.js +2 -0
  199. package/grid-item/index.d.ts +1 -22
  200. package/grid-item/index.js +17 -13
  201. package/grid-item/types.d.ts +21 -1
  202. package/grid-item/types.js +1 -1
  203. package/help-tooltip/global/index.d.ts +1 -0
  204. package/help-tooltip/global/index.js +2 -0
  205. package/help-tooltip/index.d.ts +1 -22
  206. package/help-tooltip/index.js +29 -26
  207. package/help-tooltip/types.d.ts +21 -1
  208. package/help-tooltip/types.js +1 -1
  209. package/icon/generated-icon-type.js +1 -1
  210. package/icon/global/index.d.ts +1 -0
  211. package/icon/global/index.js +2 -0
  212. package/icon/index.d.ts +1 -22
  213. package/icon/index.js +30 -28
  214. package/icon/types.d.ts +21 -1
  215. package/icon/types.js +1 -1
  216. package/inline-alert/global/index.d.ts +1 -0
  217. package/inline-alert/global/index.js +2 -0
  218. package/inline-alert/index.d.ts +2 -22
  219. package/inline-alert/index.js +58 -39
  220. package/inline-alert/types.d.ts +21 -1
  221. package/inline-alert/types.js +1 -1
  222. package/inline-alert/utils.js +4 -1
  223. package/input/global/index.d.ts +1 -0
  224. package/input/global/index.js +2 -0
  225. package/input/index.d.ts +2 -22
  226. package/input/index.js +295 -317
  227. package/input/types.d.ts +21 -1
  228. package/input/types.js +1 -1
  229. package/input/utils.js +56 -46
  230. package/link/global/index.d.ts +1 -0
  231. package/link/global/index.js +2 -0
  232. package/link/index.d.ts +1 -22
  233. package/link/index.js +88 -79
  234. package/link/types.d.ts +21 -1
  235. package/link/types.js +1 -1
  236. package/list/global/index.d.ts +1 -0
  237. package/list/global/index.js +2 -0
  238. package/list/index.d.ts +1 -21
  239. package/list/index.js +9 -6
  240. package/list/types.d.ts +21 -1
  241. package/list/types.js +1 -1
  242. package/list-item/global/index.d.ts +1 -0
  243. package/list-item/global/index.js +2 -0
  244. package/list-item/index.d.ts +1 -22
  245. package/list-item/index.js +9 -6
  246. package/list-item/types.d.ts +21 -1
  247. package/list-item/types.js +1 -1
  248. package/package.json +12 -6
  249. package/pagination/global/index.d.ts +1 -0
  250. package/pagination/global/index.js +2 -0
  251. package/pagination/index.d.ts +2 -22
  252. package/pagination/index.js +64 -46
  253. package/pagination/types.d.ts +21 -1
  254. package/pagination/types.js +1 -1
  255. package/persistent-overlay/global/index.d.ts +1 -0
  256. package/persistent-overlay/global/index.js +2 -0
  257. package/persistent-overlay/index.d.ts +1 -22
  258. package/persistent-overlay/index.js +42 -44
  259. package/persistent-overlay/types.d.ts +21 -1
  260. package/persistent-overlay/types.js +1 -1
  261. package/pop/global/index.d.ts +1 -0
  262. package/pop/global/index.js +2 -0
  263. package/pop/index.d.ts +3 -22
  264. package/pop/index.js +149 -150
  265. package/pop/types.d.ts +21 -1
  266. package/pop/types.js +1 -1
  267. package/pop/utils.js +24 -8
  268. package/popover/global/index.d.ts +1 -0
  269. package/popover/global/index.js +2 -0
  270. package/popover/index.d.ts +2 -22
  271. package/popover/index.js +75 -68
  272. package/popover/types.d.ts +21 -1
  273. package/popover/types.js +1 -1
  274. package/popover/utils.js +18 -7
  275. package/progress/global/index.d.ts +1 -0
  276. package/progress/global/index.js +2 -0
  277. package/progress/index.d.ts +1 -22
  278. package/progress/index.js +30 -33
  279. package/progress/types.d.ts +21 -1
  280. package/progress/types.js +1 -1
  281. package/progress-stepper/global/index.d.ts +1 -0
  282. package/progress-stepper/global/index.js +2 -0
  283. package/progress-stepper/index.d.ts +2 -22
  284. package/progress-stepper/index.js +64 -66
  285. package/progress-stepper/types.d.ts +21 -1
  286. package/progress-stepper/types.js +1 -1
  287. package/progress-stepper-item/global/index.d.ts +1 -0
  288. package/progress-stepper-item/global/index.js +2 -0
  289. package/progress-stepper-item/index.d.ts +1 -22
  290. package/progress-stepper-item/index.js +58 -50
  291. package/progress-stepper-item/types.d.ts +21 -1
  292. package/progress-stepper-item/types.js +1 -1
  293. package/progress-stepper-item/utils.js +22 -11
  294. package/radio/global/index.d.ts +1 -0
  295. package/radio/global/index.js +2 -0
  296. package/radio/index.d.ts +1 -22
  297. package/radio/index.js +79 -83
  298. package/radio/types.d.ts +21 -1
  299. package/radio/types.js +1 -1
  300. package/radio-option/global/index.d.ts +1 -0
  301. package/radio-option/global/index.js +2 -0
  302. package/radio-option/index.d.ts +1 -22
  303. package/radio-option/index.js +47 -41
  304. package/radio-option/types.d.ts +21 -1
  305. package/radio-option/types.js +1 -1
  306. package/rich-text/global/index.d.ts +1 -0
  307. package/rich-text/global/index.js +2 -0
  308. package/rich-text/index.d.ts +1 -22
  309. package/rich-text/index.js +45 -46
  310. package/rich-text/types.d.ts +21 -1
  311. package/rich-text/types.js +1 -1
  312. package/rich-text/utils.js +31 -33
  313. package/rich-textarea/global/index.d.ts +1 -0
  314. package/rich-textarea/global/index.js +2 -0
  315. package/rich-textarea/index.d.ts +1 -22
  316. package/rich-textarea/index.js +201 -194
  317. package/rich-textarea/types.d.ts +21 -1
  318. package/rich-textarea/types.js +1 -1
  319. package/rich-textarea/utils.js +313 -340
  320. package/segment-collapse/global/index.d.ts +1 -0
  321. package/segment-collapse/global/index.js +2 -0
  322. package/segment-collapse/index.d.ts +1 -22
  323. package/segment-collapse/index.js +31 -25
  324. package/segment-collapse/types.d.ts +21 -1
  325. package/segment-collapse/types.js +1 -1
  326. package/segmented-control/global/index.d.ts +1 -0
  327. package/segmented-control/global/index.js +2 -0
  328. package/segmented-control/index.d.ts +1 -22
  329. package/segmented-control/index.js +45 -45
  330. package/segmented-control/types.d.ts +21 -1
  331. package/segmented-control/types.js +1 -1
  332. package/segmented-control-option/global/index.d.ts +1 -0
  333. package/segmented-control-option/global/index.js +2 -0
  334. package/segmented-control-option/index.d.ts +1 -22
  335. package/segmented-control-option/index.js +44 -46
  336. package/segmented-control-option/types.d.ts +21 -1
  337. package/segmented-control-option/types.js +1 -1
  338. package/segmented-icon-control/global/index.d.ts +1 -0
  339. package/segmented-icon-control/global/index.js +2 -0
  340. package/segmented-icon-control/index.d.ts +1 -22
  341. package/segmented-icon-control/index.js +51 -50
  342. package/segmented-icon-control/types.d.ts +21 -1
  343. package/segmented-icon-control/types.js +1 -1
  344. package/segmented-icon-control-option/global/index.d.ts +1 -0
  345. package/segmented-icon-control-option/global/index.js +2 -0
  346. package/segmented-icon-control-option/index.d.ts +1 -22
  347. package/segmented-icon-control-option/index.js +36 -37
  348. package/segmented-icon-control-option/types.d.ts +21 -1
  349. package/segmented-icon-control-option/types.js +1 -1
  350. package/select-button/global/index.d.ts +1 -0
  351. package/select-button/global/index.js +2 -0
  352. package/select-button/index.d.ts +1 -26
  353. package/select-button/index.js +104 -112
  354. package/select-button/types.d.ts +25 -1
  355. package/select-button/types.js +1 -1
  356. package/select-menu/global/index.d.ts +1 -0
  357. package/select-menu/global/index.js +2 -0
  358. package/select-menu/index.d.ts +1 -22
  359. package/select-menu/index.js +201 -164
  360. package/select-menu/types.d.ts +21 -1
  361. package/select-menu/types.js +1 -1
  362. package/select-menu-option/global/index.d.ts +1 -0
  363. package/select-menu-option/global/index.js +2 -0
  364. package/select-menu-option/index.d.ts +1 -22
  365. package/select-menu-option/index.js +41 -33
  366. package/select-menu-option/types.d.ts +21 -1
  367. package/select-menu-option/types.js +1 -1
  368. package/select-menu-option/utils.js +4 -1
  369. package/skeleton/global/index.d.ts +1 -0
  370. package/skeleton/global/index.js +2 -0
  371. package/skeleton/index.d.ts +1 -22
  372. package/skeleton/index.js +35 -38
  373. package/skeleton/types.d.ts +21 -1
  374. package/skeleton/types.js +1 -1
  375. package/skeleton-item/global/index.d.ts +1 -0
  376. package/skeleton-item/global/index.js +2 -0
  377. package/skeleton-item/index.d.ts +1 -22
  378. package/skeleton-item/index.js +8 -5
  379. package/skeleton-item/types.d.ts +21 -1
  380. package/skeleton-item/types.js +1 -1
  381. package/spinner/global/index.d.ts +1 -0
  382. package/spinner/global/index.js +2 -0
  383. package/spinner/index.d.ts +1 -22
  384. package/spinner/index.js +31 -29
  385. package/spinner/types.d.ts +21 -1
  386. package/spinner/types.js +1 -1
  387. package/standalone.d.ts +0 -8
  388. package/standalone.js +79 -87
  389. package/standalone.ts +0 -8
  390. package/stop-events/index.js +12 -12
  391. package/table/global/index.d.ts +1 -0
  392. package/table/global/index.js +2 -0
  393. package/table/index.d.ts +1 -21
  394. package/table/index.js +9 -6
  395. package/table/types.d.ts +21 -1
  396. package/table/types.js +1 -1
  397. package/table-body/global/index.d.ts +1 -0
  398. package/table-body/global/index.js +2 -0
  399. package/table-body/index.d.ts +1 -21
  400. package/table-body/index.js +9 -6
  401. package/table-body/types.d.ts +21 -1
  402. package/table-body/types.js +1 -1
  403. package/table-cell/global/index.d.ts +1 -0
  404. package/table-cell/global/index.js +2 -0
  405. package/table-cell/index.d.ts +2 -22
  406. package/table-cell/index.js +13 -9
  407. package/table-cell/types.d.ts +21 -1
  408. package/table-cell/types.js +1 -1
  409. package/table-cell/utils.js +4 -1
  410. package/table-head/global/index.d.ts +1 -0
  411. package/table-head/global/index.js +2 -0
  412. package/table-head/index.d.ts +1 -21
  413. package/table-head/index.js +9 -6
  414. package/table-head/types.d.ts +21 -1
  415. package/table-head/types.js +1 -1
  416. package/table-head-cell/global/index.d.ts +1 -0
  417. package/table-head-cell/global/index.js +2 -0
  418. package/table-head-cell/index.d.ts +1 -22
  419. package/table-head-cell/index.js +29 -27
  420. package/table-head-cell/types.d.ts +21 -1
  421. package/table-head-cell/types.js +1 -1
  422. package/table-row/global/index.d.ts +1 -0
  423. package/table-row/global/index.js +2 -0
  424. package/table-row/index.d.ts +1 -22
  425. package/table-row/index.js +20 -17
  426. package/table-row/types.d.ts +21 -1
  427. package/table-row/types.js +1 -1
  428. package/tabs/global/index.d.ts +1 -0
  429. package/tabs/global/index.js +2 -0
  430. package/tabs/index.d.ts +2 -22
  431. package/tabs/index.js +32 -35
  432. package/tabs/types.d.ts +21 -1
  433. package/tabs/types.js +1 -1
  434. package/tabs-icon-option/global/index.d.ts +1 -0
  435. package/tabs-icon-option/global/index.js +2 -0
  436. package/tabs-icon-option/index.d.ts +1 -22
  437. package/tabs-icon-option/index.js +38 -40
  438. package/tabs-icon-option/types.d.ts +21 -1
  439. package/tabs-icon-option/types.js +1 -1
  440. package/tabs-option/global/index.d.ts +1 -0
  441. package/tabs-option/global/index.js +2 -0
  442. package/tabs-option/index.d.ts +1 -22
  443. package/tabs-option/index.js +41 -43
  444. package/tabs-option/types.d.ts +21 -1
  445. package/tabs-option/types.js +1 -1
  446. package/tag/colors.js +1 -1
  447. package/tag/global/index.d.ts +1 -0
  448. package/tag/global/index.js +2 -0
  449. package/tag/index.d.ts +1 -22
  450. package/tag/index.js +45 -44
  451. package/tag/types.d.ts +21 -1
  452. package/tag/types.js +1 -1
  453. package/tag/utils.js +7 -3
  454. package/text/global/index.d.ts +1 -0
  455. package/text/global/index.js +2 -0
  456. package/text/index.d.ts +2 -22
  457. package/text/index.js +33 -28
  458. package/text/types.d.ts +21 -1
  459. package/text/types.js +1 -1
  460. package/text/utils.js +4 -1
  461. package/textarea/global/index.d.ts +1 -0
  462. package/textarea/global/index.js +2 -0
  463. package/textarea/index.d.ts +1 -22
  464. package/textarea/index.js +147 -152
  465. package/textarea/types.d.ts +21 -1
  466. package/textarea/types.js +1 -1
  467. package/time-picker/global/index.d.ts +1 -0
  468. package/time-picker/global/index.js +2 -0
  469. package/time-picker/index.d.ts +2 -22
  470. package/time-picker/index.js +119 -123
  471. package/time-picker/types.d.ts +21 -1
  472. package/time-picker/types.js +1 -1
  473. package/time-picker/utils.js +31 -33
  474. package/title/global/index.d.ts +1 -0
  475. package/title/global/index.js +2 -0
  476. package/title/index.d.ts +2 -22
  477. package/title/index.js +32 -31
  478. package/title/types.d.ts +21 -1
  479. package/title/types.js +1 -1
  480. package/title/utils.js +18 -14
  481. package/toast/global/index.d.ts +1 -0
  482. package/toast/global/index.js +2 -0
  483. package/toast/index.d.ts +2 -22
  484. package/toast/index.js +37 -34
  485. package/toast/types.d.ts +21 -1
  486. package/toast/types.js +1 -1
  487. package/toast/utils.js +4 -1
  488. package/toast-manager/global/index.d.ts +1 -0
  489. package/toast-manager/global/index.js +2 -0
  490. package/toast-manager/index.d.ts +3 -22
  491. package/toast-manager/index.js +77 -63
  492. package/toast-manager/types.d.ts +21 -1
  493. package/toast-manager/types.js +1 -1
  494. package/toast-manager/utils.js +4 -1
  495. package/toggle/global/index.d.ts +1 -0
  496. package/toggle/global/index.js +2 -0
  497. package/toggle/index.d.ts +1 -22
  498. package/toggle/index.js +81 -75
  499. package/toggle/types.d.ts +21 -1
  500. package/toggle/types.js +1 -1
  501. package/tooltip/global/index.d.ts +1 -0
  502. package/tooltip/global/index.js +2 -0
  503. package/tooltip/index.d.ts +3 -22
  504. package/tooltip/index.js +105 -93
  505. package/tooltip/tooltip-state.js +56 -64
  506. package/tooltip/types.d.ts +21 -1
  507. package/tooltip/types.js +1 -1
  508. package/tooltip/utils.js +32 -13
  509. package/types.d.ts +12 -29
  510. package/utils/adapters.js +1 -1
  511. package/utils/component-names.d.ts +3 -0
  512. package/utils/component-names.js +85 -0
  513. package/utils/context.js +32 -42
  514. package/utils/countries.js +490 -2
  515. package/utils/csv.js +13 -6
  516. package/utils/debounce.js +10 -3
  517. package/utils/dom.js +60 -53
  518. package/utils/element.d.ts +107 -15
  519. package/utils/element.js +100 -19
  520. package/utils/event-target.js +11 -5
  521. package/utils/form.js +17 -12
  522. package/utils/get-react-event-handler.js +6 -3
  523. package/utils/global-components-constants.d.ts +3 -0
  524. package/utils/global-components-constants.js +8 -0
  525. package/utils/global-components-manager.d.ts +71 -0
  526. package/utils/global-components-manager.js +24 -0
  527. package/utils/index.js +65 -12
  528. package/utils/markdown.js +56 -43
  529. package/utils/rect.js +13 -18
  530. package/utils/shared/global-elements-manager.d.js +1 -0
  531. package/utils/shared/global-elements-manager.d.ts +62 -0
  532. package/utils/shared/global-elements-manager.js +163 -0
  533. package/utils/shared/global-elements-store.d.js +1 -0
  534. package/utils/shared/global-elements-store.d.ts +12 -0
  535. package/utils/shared/global-elements-store.js +31 -0
  536. package/utils/shared/index.d.js +11 -0
  537. package/utils/shared/index.d.ts +3 -0
  538. package/utils/shared/index.js +11 -0
  539. package/utils/shared/nectary-element-base.d.js +1 -0
  540. package/utils/shared/nectary-element-base.d.ts +9 -0
  541. package/utils/shared/nectary-element-base.js +25 -0
  542. package/utils/shared/package.json +9 -0
  543. package/utils/shared/tsconfig.json +20 -0
  544. package/utils/size.js +8 -3
  545. package/utils/slot.js +13 -9
  546. package/utils/throttle.js +5 -2
  547. package/utils/uid.js +5 -2
  548. package/card/index.d.ts +0 -40
  549. package/card/index.js +0 -134
  550. package/card/types.d.ts +0 -17
  551. package/card/types.js +0 -1
  552. package/horizontal-stepper/index.d.ts +0 -33
  553. package/horizontal-stepper/index.js +0 -62
  554. package/horizontal-stepper/types.d.ts +0 -42
  555. package/horizontal-stepper/types.js +0 -1
  556. package/horizontal-stepper-item/index.d.ts +0 -38
  557. package/horizontal-stepper-item/index.js +0 -62
  558. package/horizontal-stepper-item/types.d.ts +0 -38
  559. package/horizontal-stepper-item/types.js +0 -1
  560. package/horizontal-stepper-item/utils.d.ts +0 -2
  561. package/horizontal-stepper-item/utils.js +0 -1
  562. package/segment/index.d.ts +0 -40
  563. package/segment/index.js +0 -110
  564. package/segment/types.d.ts +0 -23
  565. package/segment/types.js +0 -1
  566. package/segment/utils.d.ts +0 -3
  567. package/segment/utils.js +0 -16
  568. package/tile-control/index.d.ts +0 -39
  569. package/tile-control/index.js +0 -111
  570. package/tile-control/types.d.ts +0 -29
  571. package/tile-control/types.js +0 -1
  572. package/tile-control-option/index.d.ts +0 -40
  573. package/tile-control-option/index.js +0 -99
  574. package/tile-control-option/types.d.ts +0 -52
  575. package/tile-control-option/types.js +0 -1
  576. package/vertical-stepper/index.d.ts +0 -33
  577. package/vertical-stepper/index.js +0 -58
  578. package/vertical-stepper/types.d.ts +0 -34
  579. package/vertical-stepper/types.js +0 -1
  580. package/vertical-stepper-item/index.d.ts +0 -38
  581. package/vertical-stepper-item/index.js +0 -62
  582. package/vertical-stepper-item/types.d.ts +0 -42
  583. package/vertical-stepper-item/types.js +0 -1
  584. package/vertical-stepper-item/utils.d.ts +0 -2
  585. package/vertical-stepper-item/utils.js +0 -1
package/list/types.d.ts CHANGED
@@ -1,3 +1,23 @@
1
- import type { NectaryComponentReactByType } from '../types';
1
+ import type { NectaryComponentReactByType, NectaryComponentReact, NectaryComponentVanilla } from '../types';
2
2
  export type TSinchListElement = HTMLElement;
3
3
  export type TSinchListReact = NectaryComponentReactByType<TSinchListElement>;
4
+ declare global {
5
+ interface NectaryComponentMap {
6
+ 'sinch-list': {};
7
+ }
8
+ interface HTMLElementTagNameMap {
9
+ 'sinch-list': NectaryComponentVanilla<'sinch-list'>;
10
+ }
11
+ namespace JSX {
12
+ interface IntrinsicElements {
13
+ 'sinch-list': NectaryComponentReact<'sinch-list'>;
14
+ }
15
+ }
16
+ }
17
+ declare module 'react' {
18
+ namespace JSX {
19
+ interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
20
+ 'sinch-list': NectaryComponentReact<'sinch-list'>;
21
+ }
22
+ }
23
+ }
package/list/types.js CHANGED
@@ -1 +1 @@
1
- export {};
1
+
@@ -0,0 +1 @@
1
+ export * from '../types';
@@ -0,0 +1,2 @@
1
+ import { defineCustomElement } from "../../utils/element.js";
2
+ defineCustomElement("sinch-list-item");
@@ -1,27 +1,6 @@
1
1
  import { NectaryElement } from '../utils';
2
- import type { TSinchListItem } from './types';
3
- import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
2
+ export * from './types';
4
3
  export declare class ListItem extends NectaryElement {
5
4
  constructor();
6
5
  connectedCallback(): void;
7
6
  }
8
- declare global {
9
- interface NectaryComponentMap {
10
- 'sinch-list-item': TSinchListItem;
11
- }
12
- interface HTMLElementTagNameMap {
13
- 'sinch-list-item': NectaryComponentVanilla<'sinch-list-item'>;
14
- }
15
- namespace JSX {
16
- interface IntrinsicElements {
17
- 'sinch-list-item': NectaryComponentReact<'sinch-list-item'>;
18
- }
19
- }
20
- }
21
- declare module 'react' {
22
- namespace JSX {
23
- interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
24
- 'sinch-list-item': NectaryComponentReact<'sinch-list-item'>;
25
- }
26
- }
27
- }
@@ -1,15 +1,18 @@
1
- import { defineCustomElement, NectaryElement } from '../utils';
2
- const templateHTML = '<style>:host{display:block;outline:0}#wrapper{width:100%;height:100%;box-sizing:border-box;overflow:hidden;padding:8px 0;background-color:var(--sinch-comp-list-color-default-background-initial);border-bottom:1px solid var(--sinch-comp-list-color-default-border-initial)}:host(:last-child)>#wrapper{border-bottom:none}:host(:hover)>#wrapper{background-color:var(--sinch-comp-list-color-default-background-hover)}</style><div id="wrapper"><slot name="content"></slot></div>';
3
- const template = document.createElement('template');
1
+ import { defineCustomElement, NectaryElement } from "../utils/element.js";
2
+ const templateHTML = '<style>\n:host {\n display: block;\n outline: none;\n}\n\n#wrapper {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n overflow: hidden;\n padding: 8px 0;\n background-color: var(--sinch-comp-list-color-default-background-initial);\n border-bottom: 1px solid var(--sinch-comp-list-color-default-border-initial);\n}\n\n:host(:last-child) > #wrapper {\n border-bottom: none;\n}\n\n:host(:hover) > #wrapper {\n background-color: var(--sinch-comp-list-color-default-background-hover);\n}\n</style>\n\n<div id="wrapper">\n <slot name="content"></slot>\n</div>\n';
3
+ const template = document.createElement("template");
4
4
  template.innerHTML = templateHTML;
5
- export class ListItem extends NectaryElement {
5
+ class ListItem extends NectaryElement {
6
6
  constructor() {
7
7
  super();
8
8
  const shadowRoot = this.attachShadow();
9
9
  shadowRoot.appendChild(template.content.cloneNode(true));
10
10
  }
11
11
  connectedCallback() {
12
- this.setAttribute('role', 'listitem');
12
+ this.setAttribute("role", "listitem");
13
13
  }
14
14
  }
15
- defineCustomElement('sinch-list-item', ListItem);
15
+ defineCustomElement("sinch-list-item", ListItem);
16
+ export {
17
+ ListItem
18
+ };
@@ -1,4 +1,4 @@
1
- import type { NectaryComponentReactByType } from '../types';
1
+ import type { NectaryComponentReactByType, NectaryComponentReact, NectaryComponentVanilla } from '../types';
2
2
  export type TSinchListItemStyle = {
3
3
  '--sinch-comp-list-color-default-background-initial'?: string;
4
4
  '--sinch-comp-list-color-default-background-hover'?: string;
@@ -9,3 +9,23 @@ export type TSinchListItem = {
9
9
  };
10
10
  export type TSinchListItemElement = HTMLElement;
11
11
  export type TSinchListItemReact = NectaryComponentReactByType<TSinchListItemElement>;
12
+ declare global {
13
+ interface NectaryComponentMap {
14
+ 'sinch-list-item': TSinchListItem;
15
+ }
16
+ interface HTMLElementTagNameMap {
17
+ 'sinch-list-item': NectaryComponentVanilla<'sinch-list-item'>;
18
+ }
19
+ namespace JSX {
20
+ interface IntrinsicElements {
21
+ 'sinch-list-item': NectaryComponentReact<'sinch-list-item'>;
22
+ }
23
+ }
24
+ }
25
+ declare module 'react' {
26
+ namespace JSX {
27
+ interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
28
+ 'sinch-list-item': NectaryComponentReact<'sinch-list-item'>;
29
+ }
30
+ }
31
+ }
@@ -1 +1 @@
1
- export {};
1
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nectary/components",
3
- "version": "4.12.1",
3
+ "version": "5.0.0",
4
4
  "files": [
5
5
  "**/*/*.css",
6
6
  "**/*/*.json",
@@ -9,6 +9,9 @@
9
9
  "standalone.ts",
10
10
  "standalone.d.ts",
11
11
  "standalone.js",
12
+ "bundle.ts",
13
+ "bundle.d.ts",
14
+ "bundle.js",
12
15
  "types.d.ts",
13
16
  "colors.json"
14
17
  ],
@@ -16,11 +19,12 @@
16
19
  "access": "public"
17
20
  },
18
21
  "scripts": {
19
- "build": "NODE_ENV=production babel . --extensions '.ts' --out-dir . && tsc --declaration --emitDeclarationOnly"
22
+ "build": "rm -rf utils/shared && cp -r ../shared utils/shared && vite build && vite build --mode bundle && npx tsc --declaration --emitDeclarationOnly && npx tsx ../scripts/tsc-alias.ts --alias '@nectary/shared=./utils/shared'",
23
+ "dev": "vite build --watch"
20
24
  },
21
25
  "dependencies": {
22
26
  "@babel/runtime": "^7.22.15",
23
- "@nectary/assets": "2.6.1"
27
+ "@nectary/assets": "3.0.0"
24
28
  },
25
29
  "devDependencies": {
26
30
  "@babel/cli": "^7.22.15",
@@ -28,12 +32,14 @@
28
32
  "@babel/plugin-transform-runtime": "^7.22.15",
29
33
  "@babel/preset-env": "^7.22.20",
30
34
  "@babel/preset-typescript": "^7.22.15",
31
- "@types/node": "^18.17.17",
35
+ "@types/node": "22.12.0",
32
36
  "@types/react": "^18.2.21",
33
37
  "babel-plugin-html-inline-minifier": "workspace:*",
34
- "typescript": "^5.2.2"
38
+ "dts-bundle-generator": "^9.5.1",
39
+ "typescript": "^5.2.2",
40
+ "vite": "^7.0.6"
35
41
  },
36
42
  "peerDependencies": {
37
- "@nectary/theme-base": "1.5.0"
43
+ "@nectary/theme-base": ">=1.4.0 <2.0.0"
38
44
  }
39
45
  }
@@ -0,0 +1 @@
1
+ export * from '../types';
@@ -0,0 +1,2 @@
1
+ import { defineCustomElement } from "../../utils/element.js";
2
+ defineCustomElement("sinch-pagination");
@@ -1,7 +1,7 @@
1
1
  import '../icon';
2
2
  import { NectaryElement } from '../utils';
3
- import type { TSinchPagination } from './types';
4
- import type { NectaryComponentReact, NectaryComponentVanilla, TRect } from '../types';
3
+ import type { TRect } from '../types';
4
+ export * from './types';
5
5
  export declare class Pagination extends NectaryElement {
6
6
  #private;
7
7
  constructor();
@@ -20,23 +20,3 @@ export declare class Pagination extends NectaryElement {
20
20
  get nextButtonRect(): TRect;
21
21
  nthButtonRect(index: number): TRect | null;
22
22
  }
23
- declare global {
24
- interface NectaryComponentMap {
25
- 'sinch-pagination': TSinchPagination;
26
- }
27
- interface HTMLElementTagNameMap {
28
- 'sinch-pagination': NectaryComponentVanilla<'sinch-pagination'>;
29
- }
30
- namespace JSX {
31
- interface IntrinsicElements {
32
- 'sinch-pagination': NectaryComponentReact<'sinch-pagination'>;
33
- }
34
- }
35
- }
36
- declare module 'react' {
37
- namespace JSX {
38
- interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
39
- 'sinch-pagination': NectaryComponentReact<'sinch-pagination'>;
40
- }
41
- }
42
- }
@@ -1,15 +1,19 @@
1
- import '../icon';
2
- import { defineCustomElement, updateAttribute, getIntegerAttribute, setClass, NectaryElement, getRect, getReactEventHandler, isTargetEqual, getTargetIndexInParent } from '../utils';
3
- const templateHTML = '<style>:host{display:inline-block;vertical-align:middle;outline:0}#wrapper{display:flex;justify-content:center;gap:8px;width:100%;height:var(--sinch-local-size);--sinch-local-size:24px}button{all:initial;position:relative;display:flex;justify-content:center;align-items:center;min-width:var(--sinch-local-size);height:var(--sinch-local-size);cursor:pointer;border-radius:var(--sinch-comp-pagination-shape-radius);user-select:none;--sinch-global-color-icon:var(--sinch-comp-pagination-color-default-icon-default)}button:focus-visible::before{content:"";position:absolute;inset:-3px;border:2px solid var(--sinch-comp-pagination-color-default-outline-focus);border-radius:calc(var(--sinch-comp-pagination-shape-radius) + 3px);pointer-events:none}button:disabled{--sinch-global-color-icon:var(--sinch-comp-pagination-color-disabled-icon-initial);cursor:initial}button:enabled:hover{background-color:var(--sinch-comp-pagination-color-default-background-hover)}button>*{display:block;overflow:hidden;pointer-events:none}.page{font:var(--sinch-comp-pagination-font-default-page-number);color:var(--sinch-comp-pagination-color-default-text-initial);background-color:var(--sinch-comp-pagination-color-default-background-initial);padding:0 4px;box-sizing:border-box}.page.dots>span{display:none}.page.dots::after{content:"..."}.page.active{font:var(--sinch-comp-pagination-font-checked-page-number);background-color:var(--sinch-comp-pagination-color-checked-background-initial);pointer-events:none;cursor:initial}.page.active:hover{background-color:var(--sinch-comp-pagination-color-checked-background-hover)}.page.hidden{display:none}#left,#right{--sinch-icon-size:24px}</style><div id="wrapper"><button id="left"><sinch-icon icons-version="2" name="fa-angle-left" id="icon-left"></sinch-icon></button><button class="page"><span>1</span></button><button class="page active"><span>2</span></button><button class="page"><span>3</span></button><button class="page"><span>4</span></button><button class="page"><span>5</span></button><button class="page dots"><span>6</span></button><button class="page"><span>20</span></button><button id="right"><sinch-icon icons-version="2" name="fa-angle-right" id="icon-right"></sinch-icon></button></div>';
1
+ import "../icon/index.js";
2
+ import { updateAttribute, getIntegerAttribute, setClass } from "../utils/dom.js";
3
+ import { defineCustomElement, NectaryElement } from "../utils/element.js";
4
+ import { getRect } from "../utils/rect.js";
5
+ import { getReactEventHandler } from "../utils/get-react-event-handler.js";
6
+ import { isTargetEqual, getTargetIndexInParent } from "../utils/event-target.js";
7
+ const templateHTML = '<style>\n :host {\n display: inline-block;\n vertical-align: middle;\n outline: none;\n }\n\n #wrapper {\n display: flex;\n justify-content: center;\n gap: 8px;\n width: 100%;\n height: var(--sinch-local-size);\n\n --sinch-local-size: 24px;\n }\n\n button {\n all: initial;\n position: relative;\n display: flex;\n justify-content: center;\n align-items: center;\n min-width: var(--sinch-local-size);\n height: var(--sinch-local-size);\n cursor: pointer;\n border-radius: var(--sinch-comp-pagination-shape-radius);\n user-select: none;\n\n --sinch-global-color-icon:\n var(\n --sinch-comp-pagination-color-default-icon-default\n );\n }\n\n button:focus-visible::before {\n content: "";\n position: absolute;\n inset: -3px;\n border: 2px solid var(--sinch-comp-pagination-color-default-outline-focus);\n border-radius: calc(var(--sinch-comp-pagination-shape-radius) + 3px);\n pointer-events: none;\n }\n\n button:disabled {\n --sinch-global-color-icon:\n var(\n --sinch-comp-pagination-color-disabled-icon-initial\n );\n\n cursor: initial;\n }\n\n button:enabled:hover {\n background-color:\n var(\n --sinch-comp-pagination-color-default-background-hover\n );\n }\n\n button > * {\n display: block;\n overflow: hidden;\n pointer-events: none;\n }\n\n .page {\n font: var(--sinch-comp-pagination-font-default-page-number);\n color: var(--sinch-comp-pagination-color-default-text-initial);\n background-color:\n var(\n --sinch-comp-pagination-color-default-background-initial\n );\n padding: 0 4px;\n box-sizing: border-box;\n }\n\n .page.dots > span {\n display: none;\n }\n\n .page.dots::after {\n content: "...";\n }\n\n .page.active {\n font: var(--sinch-comp-pagination-font-checked-page-number);\n background-color:\n var(\n --sinch-comp-pagination-color-checked-background-initial\n );\n pointer-events: none;\n cursor: initial;\n }\n\n .page.active:hover {\n background-color:\n var(\n --sinch-comp-pagination-color-checked-background-hover\n );\n }\n\n .page.hidden {\n display: none;\n }\n\n #left,\n #right {\n --sinch-icon-size: 24px;\n }\n</style>\n\n<div id="wrapper">\n <button id="left">\n <sinch-icon icons-version="2" name="fa-angle-left" id="icon-left"></sinch-icon>\n </button>\n <button class="page"><span>1</span></button>\n <button class="page active"><span>2</span></button>\n <button class="page"><span>3</span></button>\n <button class="page"><span>4</span></button>\n <button class="page"><span>5</span></button>\n <button class="page dots"><span>6</span></button>\n <button class="page"><span>20</span></button>\n <button id="right">\n <sinch-icon icons-version="2" name="fa-angle-right" id="icon-right"></sinch-icon>\n </button>\n</div>\n';
4
8
  const NUM_BUTTONS = 7;
5
9
  const MIDDLE_BTN_INDEX = Math.floor(NUM_BUTTONS / 2);
6
10
  const FIRST_BTN_INDEX = 0;
7
11
  const LAST_BTN_INDEX = NUM_BUTTONS - 1;
8
12
  const DOTS_LEFT_INDEX = 1;
9
13
  const DOTS_RIGHT_INDEX = LAST_BTN_INDEX - 1;
10
- const template = document.createElement('template');
14
+ const template = document.createElement("template");
11
15
  template.innerHTML = templateHTML;
12
- export class Pagination extends NectaryElement {
16
+ class Pagination extends NectaryElement {
13
17
  #$left;
14
18
  #$right;
15
19
  #$buttons;
@@ -18,75 +22,81 @@ export class Pagination extends NectaryElement {
18
22
  super();
19
23
  const shadowRoot = this.attachShadow();
20
24
  shadowRoot.appendChild(template.content.cloneNode(true));
21
- this.#$left = shadowRoot.querySelector('#left');
22
- this.#$right = shadowRoot.querySelector('#right');
23
- this.#$buttons = shadowRoot.querySelectorAll('.page');
24
- this.#$wrapper = shadowRoot.querySelector('#wrapper');
25
+ this.#$left = shadowRoot.querySelector("#left");
26
+ this.#$right = shadowRoot.querySelector("#right");
27
+ this.#$buttons = shadowRoot.querySelectorAll(".page");
28
+ this.#$wrapper = shadowRoot.querySelector("#wrapper");
25
29
  }
26
30
  connectedCallback() {
27
31
  this.#onValueChange();
28
- this.#$wrapper.addEventListener('click', this.#onButtonClick);
29
- this.addEventListener('-change', this.#onChangeReactHandler);
32
+ this.#$wrapper.addEventListener("click", this.#onButtonClick);
33
+ this.addEventListener("-change", this.#onChangeReactHandler);
30
34
  }
31
35
  disconnectedCallback() {
32
- this.#$wrapper.removeEventListener('click', this.#onButtonClick);
33
- this.removeEventListener('-change', this.#onChangeReactHandler);
36
+ this.#$wrapper.removeEventListener("click", this.#onButtonClick);
37
+ this.removeEventListener("-change", this.#onChangeReactHandler);
34
38
  }
35
39
  static get observedAttributes() {
36
- return ['max', 'value'];
40
+ return ["max", "value"];
37
41
  }
38
42
  attributeChangedCallback(name) {
39
43
  switch (name) {
40
- case 'value':
41
- case 'max':
42
- {
43
- this.#onValueChange();
44
- break;
45
- }
44
+ case "value":
45
+ case "max": {
46
+ this.#onValueChange();
47
+ break;
48
+ }
46
49
  }
47
50
  }
48
51
  set value(val) {
49
- updateAttribute(this, 'value', val);
52
+ updateAttribute(this, "value", val);
50
53
  }
51
54
  get value() {
52
- return getIntegerAttribute(this, 'value', 0);
55
+ return getIntegerAttribute(this, "value", 0);
53
56
  }
54
57
  set max(val) {
55
- updateAttribute(this, 'max', val);
58
+ updateAttribute(this, "max", val);
56
59
  }
57
60
  get max() {
58
- return getIntegerAttribute(this, 'value', 0);
61
+ return getIntegerAttribute(this, "value", 0);
59
62
  }
60
63
  #onValueChange() {
61
- const value = getIntegerAttribute(this, 'value', 0) - 1;
62
- const max = Math.max(0, getIntegerAttribute(this, 'max', 0));
63
- const valueOffset = Math.min(Math.max(0, value - MIDDLE_BTN_INDEX), Math.max(0, max - NUM_BUTTONS));
64
+ const value = getIntegerAttribute(this, "value", 0) - 1;
65
+ const max = Math.max(0, getIntegerAttribute(this, "max", 0));
66
+ const valueOffset = Math.min(
67
+ Math.max(0, value - MIDDLE_BTN_INDEX),
68
+ Math.max(0, max - NUM_BUTTONS)
69
+ );
64
70
  for (let i = 0; i < this.#$buttons.length; i++) {
65
71
  const $b = this.#$buttons[i];
66
72
  if (value < 3) {
67
- setClass($b, 'active', value === i);
73
+ setClass($b, "active", value === i);
68
74
  } else if (value >= max - MIDDLE_BTN_INDEX) {
69
- setClass($b, 'active', i + valueOffset === value);
75
+ setClass($b, "active", i + valueOffset === value);
70
76
  } else {
71
- setClass($b, 'active', i === MIDDLE_BTN_INDEX);
77
+ setClass($b, "active", i === MIDDLE_BTN_INDEX);
72
78
  }
73
79
  if (max > NUM_BUTTONS) {
74
- setClass($b, 'dots', i === DOTS_LEFT_INDEX && value > MIDDLE_BTN_INDEX || i === DOTS_RIGHT_INDEX && value <= max - DOTS_RIGHT_INDEX);
80
+ setClass(
81
+ $b,
82
+ "dots",
83
+ i === DOTS_LEFT_INDEX && value > MIDDLE_BTN_INDEX || i === DOTS_RIGHT_INDEX && value <= max - DOTS_RIGHT_INDEX
84
+ );
75
85
  }
76
- setClass($b, 'hidden', i >= max);
86
+ setClass($b, "hidden", i >= max);
77
87
  const btnText = $b.firstElementChild;
78
88
  if (btnText != null) {
79
- btnText.textContent = i === FIRST_BTN_INDEX ? '1' : i === LAST_BTN_INDEX ? String(max) : String(i + 1 + valueOffset);
89
+ btnText.textContent = i === FIRST_BTN_INDEX ? "1" : i === LAST_BTN_INDEX ? String(max) : String(i + 1 + valueOffset);
80
90
  }
81
91
  }
82
92
  const isValueBad = value < 0 || value >= max;
83
93
  this.#$left.disabled = isValueBad || value === 0;
84
94
  this.#$right.disabled = isValueBad || value === max - 1;
85
95
  }
86
- #onButtonClick = e => {
96
+ #onButtonClick = (e) => {
87
97
  e.stopPropagation();
88
- const value = Math.max(getIntegerAttribute(this, 'value', 0) - 1);
89
- const max = Math.max(0, getIntegerAttribute(this, 'max', 0));
98
+ const value = Math.max(getIntegerAttribute(this, "value", 0) - 1);
99
+ const max = Math.max(0, getIntegerAttribute(this, "max", 0));
90
100
  if (isTargetEqual(e, this.#$left)) {
91
101
  return this.#dispatchChangeEvent(Math.max(value - 1, 0));
92
102
  }
@@ -105,23 +115,28 @@ export class Pagination extends NectaryElement {
105
115
  return this.#dispatchChangeEvent(Math.floor(value / 2));
106
116
  }
107
117
  if (btnIndex === DOTS_RIGHT_INDEX && max > NUM_BUTTONS && value <= max - DOTS_RIGHT_INDEX) {
108
- return this.#dispatchChangeEvent(Math.floor((max - value) / 2 + value));
118
+ return this.#dispatchChangeEvent(
119
+ Math.floor((max - value) / 2 + value)
120
+ );
109
121
  }
110
- return this.#dispatchChangeEvent(btnIndex + Math.min(Math.max(0, value - MIDDLE_BTN_INDEX), Math.max(0, max - NUM_BUTTONS)));
122
+ return this.#dispatchChangeEvent(
123
+ btnIndex + Math.min(
124
+ Math.max(0, value - MIDDLE_BTN_INDEX),
125
+ Math.max(0, max - NUM_BUTTONS)
126
+ )
127
+ );
111
128
  }
112
129
  };
113
130
  #clamp(value) {
114
- const max = getIntegerAttribute(this, 'max', 0);
131
+ const max = getIntegerAttribute(this, "max", 0);
115
132
  return Math.max(0, Math.min(max - 1, value)) + 1;
116
133
  }
117
134
  #dispatchChangeEvent(value) {
118
135
  const detail = this.#clamp(value);
119
- this.dispatchEvent(new CustomEvent('-change', {
120
- detail
121
- }));
136
+ this.dispatchEvent(new CustomEvent("-change", { detail }));
122
137
  }
123
- #onChangeReactHandler = e => {
124
- getReactEventHandler(this, 'on-change')?.(e);
138
+ #onChangeReactHandler = (e) => {
139
+ getReactEventHandler(this, "on-change")?.(e);
125
140
  };
126
141
  get focusable() {
127
142
  return true;
@@ -132,7 +147,7 @@ export class Pagination extends NectaryElement {
132
147
  blur() {
133
148
  this.#$left.blur();
134
149
  this.#$right.blur();
135
- this.#$buttons.forEach($b => $b.blur());
150
+ this.#$buttons.forEach(($b) => $b.blur());
136
151
  }
137
152
  get prevButtonRect() {
138
153
  return getRect(this.#$left);
@@ -145,4 +160,7 @@ export class Pagination extends NectaryElement {
145
160
  return btn == null ? null : getRect(btn);
146
161
  }
147
162
  }
148
- defineCustomElement('sinch-pagination', Pagination);
163
+ defineCustomElement("sinch-pagination", Pagination);
164
+ export {
165
+ Pagination
166
+ };
@@ -1,4 +1,4 @@
1
- import type { NectaryComponentReactByType, NectaryComponentVanillaByType, TRect } from '../types';
1
+ import type { NectaryComponentReactByType, NectaryComponentVanillaByType, TRect, NectaryComponentReact, NectaryComponentVanilla } from '../types';
2
2
  export type TSinchPaginationProps = {
3
3
  value: number;
4
4
  max: number;
@@ -34,3 +34,23 @@ export type TSinchPagination = {
34
34
  };
35
35
  export type TSinchPaginationElement = NectaryComponentVanillaByType<TSinchPagination>;
36
36
  export type TSinchPaginationReact = NectaryComponentReactByType<TSinchPagination>;
37
+ declare global {
38
+ interface NectaryComponentMap {
39
+ 'sinch-pagination': TSinchPagination;
40
+ }
41
+ interface HTMLElementTagNameMap {
42
+ 'sinch-pagination': NectaryComponentVanilla<'sinch-pagination'>;
43
+ }
44
+ namespace JSX {
45
+ interface IntrinsicElements {
46
+ 'sinch-pagination': NectaryComponentReact<'sinch-pagination'>;
47
+ }
48
+ }
49
+ }
50
+ declare module 'react' {
51
+ namespace JSX {
52
+ interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
53
+ 'sinch-pagination': NectaryComponentReact<'sinch-pagination'>;
54
+ }
55
+ }
56
+ }
@@ -1 +1 @@
1
- export {};
1
+
@@ -0,0 +1 @@
1
+ export * from '../types';
@@ -0,0 +1,2 @@
1
+ import { defineCustomElement } from "../../utils/element.js";
2
+ defineCustomElement("sinch-persistent-overlay");
@@ -1,7 +1,6 @@
1
1
  import '../dialog';
2
2
  import { NectaryElement } from '../utils';
3
- import type { TSinchPersistentOverlay } from './types';
4
- import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
3
+ export * from './types';
5
4
  export declare class PersistentOverlay extends NectaryElement {
6
5
  #private;
7
6
  constructor();
@@ -14,23 +13,3 @@ export declare class PersistentOverlay extends NectaryElement {
14
13
  set open(isOpen: boolean);
15
14
  get open(): boolean;
16
15
  }
17
- declare global {
18
- interface NectaryComponentMap {
19
- 'sinch-persistent-overlay': TSinchPersistentOverlay;
20
- }
21
- interface HTMLElementTagNameMap {
22
- 'sinch-persistent-overlay': NectaryComponentVanilla<'sinch-persistent-overlay'>;
23
- }
24
- namespace JSX {
25
- interface IntrinsicElements {
26
- 'sinch-persistent-overlay': NectaryComponentReact<'sinch-persistent-overlay'>;
27
- }
28
- }
29
- }
30
- declare module 'react' {
31
- namespace JSX {
32
- interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
33
- 'sinch-persistent-overlay': NectaryComponentReact<'sinch-persistent-overlay'>;
34
- }
35
- }
36
- }
@@ -1,22 +1,23 @@
1
- import '../dialog';
2
- import { defineCustomElement, getAttribute, getBooleanAttribute, updateAttribute, NectaryElement, updateBooleanAttribute, isAttrTrue, getReactEventHandler } from '../utils';
3
- const templateHTML = '<style>#persisted-dialog{--sinch-dialog-close-button-display:none}::slotted(*){display:block}</style><sinch-dialog id="persisted-dialog"><div slot="icon"><slot id="icon" name="icon"></slot></div><div slot="content"><slot name="content"></slot></div><div slot="buttons"><slot name="buttons"></slot></div></sinch-dialog>';
4
- const template = document.createElement('template');
1
+ import "../dialog/index.js";
2
+ import { updateAttribute, getAttribute, updateBooleanAttribute, getBooleanAttribute, isAttrTrue } from "../utils/dom.js";
3
+ import { defineCustomElement, NectaryElement } from "../utils/element.js";
4
+ import { getReactEventHandler } from "../utils/get-react-event-handler.js";
5
+ const templateHTML = '<style>\n #persisted-dialog {\n --sinch-dialog-close-button-display: none;\n }\n\n ::slotted(*) {\n display: block;\n }\n</style>\n\n<sinch-dialog id="persisted-dialog">\n <div slot="icon"><slot id="icon" name="icon"></slot></div>\n <div slot="content"><slot name="content"></slot></div>\n <div slot="buttons"><slot name="buttons"></slot></div>\n</sinch-dialog>\n';
6
+ const template = document.createElement("template");
5
7
  template.innerHTML = templateHTML;
6
8
  function isVisible(elementStyle) {
7
- return elementStyle.visibility === 'visible' && elementStyle.display !== 'none';
9
+ return elementStyle.visibility === "visible" && elementStyle.display !== "none";
8
10
  }
9
- const observeDialogVisibilityManipulation = function (sinchDialogElement, cb) {
10
- let intervalLength = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1000;
11
+ const observeDialogVisibilityManipulation = (sinchDialogElement, cb, intervalLength = 1e3) => {
11
12
  const checkInterval = setInterval(() => {
12
- const dialogElement = sinchDialogElement.shadowRoot?.querySelector('dialog');
13
- if (!isVisible(getComputedStyle(sinchDialogElement)) || sinchDialogElement.open !== true || dialogElement === null || dialogElement === undefined || !isVisible(getComputedStyle(dialogElement)) || dialogElement.open !== true) {
13
+ const dialogElement = sinchDialogElement.shadowRoot?.querySelector("dialog");
14
+ if (!isVisible(getComputedStyle(sinchDialogElement)) || sinchDialogElement.open !== true || dialogElement === null || dialogElement === void 0 || !isVisible(getComputedStyle(dialogElement)) || dialogElement.open !== true) {
14
15
  cb();
15
16
  }
16
17
  }, intervalLength);
17
18
  return checkInterval;
18
19
  };
19
- export class PersistentOverlay extends NectaryElement {
20
+ class PersistentOverlay extends NectaryElement {
20
21
  #$sinchDialog;
21
22
  #visibilityObserverInterval;
22
23
  #controller = null;
@@ -24,42 +25,36 @@ export class PersistentOverlay extends NectaryElement {
24
25
  super();
25
26
  const shadowRoot = this.attachShadow();
26
27
  shadowRoot.appendChild(template.content.cloneNode(true));
27
- this.#$sinchDialog = shadowRoot.querySelector('#persisted-dialog');
28
+ this.#$sinchDialog = shadowRoot.querySelector("#persisted-dialog");
28
29
  }
29
30
  static get observedAttributes() {
30
- return ['caption', 'open'];
31
+ return ["caption", "open"];
31
32
  }
32
33
  attributeChangedCallback(name, oldVal, newVal) {
33
34
  switch (name) {
34
- case 'caption':
35
- {
36
- updateAttribute(this.#$sinchDialog, 'caption', newVal);
37
- break;
38
- }
39
- case 'open':
40
- {
41
- updateAttribute(this.#$sinchDialog, 'open', newVal);
42
- const shouldOpen = isAttrTrue(newVal);
43
- if (shouldOpen) {
44
- requestAnimationFrame(() => {
45
- this.#startObservingAlteration();
46
- });
47
- } else {
48
- this.#stopObservingAlteration();
49
- }
35
+ case "caption": {
36
+ updateAttribute(this.#$sinchDialog, "caption", newVal);
37
+ break;
38
+ }
39
+ case "open": {
40
+ updateAttribute(this.#$sinchDialog, "open", newVal);
41
+ const shouldOpen = isAttrTrue(newVal);
42
+ if (shouldOpen) {
43
+ requestAnimationFrame(() => {
44
+ this.#startObservingAlteration();
45
+ });
46
+ } else {
47
+ this.#stopObservingAlteration();
50
48
  }
49
+ }
51
50
  }
52
51
  }
53
52
  connectedCallback() {
54
53
  super.connectedCallback();
55
- this.setAttribute('role', 'dialog');
54
+ this.setAttribute("role", "dialog");
56
55
  this.#controller = new AbortController();
57
- const {
58
- signal
59
- } = this.#controller;
60
- this.addEventListener('-visibility-altered', this.#onVisibilityAlteredReactHandler, {
61
- signal
62
- });
56
+ const { signal } = this.#controller;
57
+ this.addEventListener("-visibility-altered", this.#onVisibilityAlteredReactHandler, { signal });
63
58
  if (this.open) {
64
59
  this.#startObservingAlteration();
65
60
  }
@@ -68,21 +63,21 @@ export class PersistentOverlay extends NectaryElement {
68
63
  super.disconnectedCallback();
69
64
  this.#controller.abort();
70
65
  this.#controller = null;
71
- if (this.open || this.#visibilityObserverInterval !== undefined) {
66
+ if (this.open || this.#visibilityObserverInterval !== void 0) {
72
67
  this.#onVisibilityAltered();
73
68
  }
74
69
  }
75
70
  set caption(caption) {
76
- updateAttribute(this, 'caption', caption);
71
+ updateAttribute(this, "caption", caption);
77
72
  }
78
73
  get caption() {
79
- return getAttribute(this, 'caption', '');
74
+ return getAttribute(this, "caption", "");
80
75
  }
81
76
  set open(isOpen) {
82
- updateBooleanAttribute(this, 'open', isOpen);
77
+ updateBooleanAttribute(this, "open", isOpen);
83
78
  }
84
79
  get open() {
85
- return getBooleanAttribute(this, 'open');
80
+ return getBooleanAttribute(this, "open");
86
81
  }
87
82
  #startObservingAlteration() {
88
83
  this.#visibilityObserverInterval = observeDialogVisibilityManipulation(this.#$sinchDialog, () => {
@@ -93,10 +88,13 @@ export class PersistentOverlay extends NectaryElement {
93
88
  clearInterval(this.#visibilityObserverInterval);
94
89
  }
95
90
  #onVisibilityAltered() {
96
- this.dispatchEvent(new CustomEvent('-visibility-altered'));
91
+ this.dispatchEvent(new CustomEvent("-visibility-altered"));
97
92
  }
98
- #onVisibilityAlteredReactHandler = e => {
99
- getReactEventHandler(this, 'on-visibility-altered')?.(e);
93
+ #onVisibilityAlteredReactHandler = (e) => {
94
+ getReactEventHandler(this, "on-visibility-altered")?.(e);
100
95
  };
101
96
  }
102
- defineCustomElement('sinch-persistent-overlay', PersistentOverlay);
97
+ defineCustomElement("sinch-persistent-overlay", PersistentOverlay);
98
+ export {
99
+ PersistentOverlay
100
+ };