@nectary/components 4.12.0 → 4.12.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 (585) hide show
  1. package/accordion/index.d.ts +22 -1
  2. package/accordion/index.js +39 -41
  3. package/accordion/types.d.ts +1 -21
  4. package/accordion/types.js +1 -1
  5. package/accordion-item/index.d.ts +22 -2
  6. package/accordion-item/index.js +49 -53
  7. package/accordion-item/types.d.ts +1 -21
  8. package/accordion-item/types.js +1 -1
  9. package/accordion-item/utils.js +1 -4
  10. package/action-menu/index.d.ts +22 -1
  11. package/action-menu/index.js +77 -62
  12. package/action-menu/types.d.ts +1 -21
  13. package/action-menu/types.js +1 -1
  14. package/action-menu-option/index.d.ts +22 -1
  15. package/action-menu-option/index.js +41 -39
  16. package/action-menu-option/types.d.ts +1 -21
  17. package/action-menu-option/types.js +1 -1
  18. package/action-menu-option/utils.js +3 -6
  19. package/alert/index.d.ts +22 -2
  20. package/alert/index.js +21 -24
  21. package/alert/types.d.ts +1 -21
  22. package/alert/types.js +1 -1
  23. package/alert/utils.js +1 -4
  24. package/avatar/colors.js +1 -1
  25. package/avatar/index.d.ts +22 -2
  26. package/avatar/index.js +41 -42
  27. package/avatar/types.d.ts +1 -21
  28. package/avatar/types.js +1 -1
  29. package/avatar/utils.js +4 -9
  30. package/badge/index.d.ts +22 -3
  31. package/badge/index.js +51 -52
  32. package/badge/types.d.ts +1 -21
  33. package/badge/types.js +1 -1
  34. package/badge/utils.js +1 -4
  35. package/button/index.d.ts +22 -2
  36. package/button/index.js +111 -101
  37. package/button/types.d.ts +1 -21
  38. package/button/types.js +1 -1
  39. package/button/utils.js +2 -18
  40. package/button-group/index.d.ts +22 -1
  41. package/button-group/index.js +18 -20
  42. package/button-group/types.d.ts +3 -22
  43. package/button-group/types.js +1 -1
  44. package/button-group-item/index.d.ts +22 -2
  45. package/button-group-item/index.js +42 -31
  46. package/button-group-item/types.d.ts +3 -22
  47. package/button-group-item/types.js +1 -1
  48. package/card/index.d.ts +40 -0
  49. package/card/index.js +134 -0
  50. package/card/types.d.ts +17 -0
  51. package/card/types.js +1 -0
  52. package/card-container/index.d.ts +21 -1
  53. package/card-container/index.js +5 -8
  54. package/card-container/types.d.ts +1 -21
  55. package/card-container/types.js +1 -1
  56. package/card-v2/index.d.ts +22 -1
  57. package/card-v2/index.js +57 -59
  58. package/card-v2/types.d.ts +1 -21
  59. package/card-v2/types.js +1 -1
  60. package/card-v2-title/index.d.ts +22 -2
  61. package/card-v2-title/index.js +26 -28
  62. package/card-v2-title/types.d.ts +1 -21
  63. package/card-v2-title/types.js +1 -1
  64. package/checkbox/index.d.ts +22 -1
  65. package/checkbox/index.js +81 -88
  66. package/checkbox/types.d.ts +1 -21
  67. package/checkbox/types.js +1 -1
  68. package/chip/colors.js +1 -1
  69. package/chip/index.d.ts +22 -1
  70. package/chip/index.js +75 -62
  71. package/chip/types.d.ts +1 -21
  72. package/chip/types.js +1 -1
  73. package/chip/utils.js +3 -7
  74. package/code-tag/index.d.ts +22 -1
  75. package/code-tag/index.js +14 -17
  76. package/code-tag/types.d.ts +1 -21
  77. package/code-tag/types.js +1 -1
  78. package/color-menu/index.d.ts +22 -2
  79. package/color-menu/index.js +115 -115
  80. package/color-menu/types.d.ts +1 -21
  81. package/color-menu/types.js +1 -1
  82. package/color-menu/utils.js +3 -6
  83. package/color-menu-option/index.d.ts +22 -1
  84. package/color-menu-option/index.js +26 -30
  85. package/color-menu-option/types.d.ts +1 -21
  86. package/color-menu-option/types.js +1 -1
  87. package/color-menu-option/utils.js +3 -6
  88. package/color-swatch/index.d.ts +22 -1
  89. package/color-swatch/index.js +20 -23
  90. package/color-swatch/types.d.ts +1 -21
  91. package/color-swatch/types.js +1 -1
  92. package/color-swatch/utils.js +3 -7
  93. package/date-picker/index.d.ts +22 -2
  94. package/date-picker/index.js +150 -157
  95. package/date-picker/types.d.ts +1 -21
  96. package/date-picker/types.js +1 -1
  97. package/date-picker/utils.js +42 -59
  98. package/dialog/index.d.ts +22 -1
  99. package/dialog/index.js +58 -71
  100. package/dialog/types.d.ts +1 -21
  101. package/dialog/types.js +1 -1
  102. package/dialog/utils.js +7 -11
  103. package/emoji/index.d.ts +22 -1
  104. package/emoji/index.js +16 -19
  105. package/emoji/types.d.ts +1 -21
  106. package/emoji/types.js +1 -1
  107. package/emoji/utils.js +17 -22
  108. package/emoji-picker/index.d.ts +22 -2
  109. package/emoji-picker/index.js +118 -138
  110. package/emoji-picker/types.d.ts +1 -21
  111. package/emoji-picker/types.js +1 -1
  112. package/field/index.d.ts +22 -1
  113. package/field/index.js +60 -63
  114. package/field/types.d.ts +1 -21
  115. package/field/types.js +1 -1
  116. package/file-drop/index.d.ts +22 -1
  117. package/file-drop/index.js +98 -103
  118. package/file-drop/types.d.ts +1 -21
  119. package/file-drop/types.js +1 -1
  120. package/file-drop/utils.js +22 -27
  121. package/file-picker/index.d.ts +22 -1
  122. package/file-picker/index.js +48 -53
  123. package/file-picker/types.d.ts +1 -21
  124. package/file-picker/types.js +1 -1
  125. package/file-picker/utils.js +3 -6
  126. package/file-status/index.d.ts +22 -2
  127. package/file-status/index.js +22 -33
  128. package/file-status/types.d.ts +1 -21
  129. package/file-status/types.js +1 -1
  130. package/file-status/utils.js +1 -4
  131. package/flag/index.d.ts +22 -1
  132. package/flag/index.js +16 -19
  133. package/flag/types.d.ts +1 -21
  134. package/flag/types.js +1 -1
  135. package/flag/utils.js +8 -11
  136. package/grid/index.d.ts +22 -1
  137. package/grid/index.js +5 -8
  138. package/grid/types.d.ts +1 -21
  139. package/grid/types.js +1 -1
  140. package/grid-item/index.d.ts +22 -1
  141. package/grid-item/index.js +13 -17
  142. package/grid-item/types.d.ts +1 -21
  143. package/grid-item/types.js +1 -1
  144. package/help-tooltip/index.d.ts +22 -1
  145. package/help-tooltip/index.js +26 -29
  146. package/help-tooltip/types.d.ts +1 -21
  147. package/help-tooltip/types.js +1 -1
  148. package/horizontal-stepper/index.d.ts +33 -0
  149. package/horizontal-stepper/index.js +62 -0
  150. package/horizontal-stepper/types.d.ts +42 -0
  151. package/horizontal-stepper/types.js +1 -0
  152. package/horizontal-stepper-item/index.d.ts +38 -0
  153. package/horizontal-stepper-item/index.js +62 -0
  154. package/horizontal-stepper-item/types.d.ts +38 -0
  155. package/horizontal-stepper-item/types.js +1 -0
  156. package/horizontal-stepper-item/utils.d.ts +2 -0
  157. package/horizontal-stepper-item/utils.js +1 -0
  158. package/icon/generated-icon-type.js +1 -1
  159. package/icon/index.d.ts +22 -1
  160. package/icon/index.js +28 -30
  161. package/icon/types.d.ts +1 -21
  162. package/icon/types.js +1 -1
  163. package/inline-alert/index.d.ts +22 -2
  164. package/inline-alert/index.js +39 -58
  165. package/inline-alert/types.d.ts +1 -21
  166. package/inline-alert/types.js +1 -1
  167. package/inline-alert/utils.js +1 -4
  168. package/input/index.d.ts +22 -2
  169. package/input/index.js +317 -295
  170. package/input/types.d.ts +1 -21
  171. package/input/types.js +1 -1
  172. package/input/utils.js +46 -56
  173. package/link/index.d.ts +22 -1
  174. package/link/index.js +79 -88
  175. package/link/types.d.ts +1 -21
  176. package/link/types.js +1 -1
  177. package/list/index.d.ts +21 -1
  178. package/list/index.js +6 -9
  179. package/list/types.d.ts +1 -21
  180. package/list/types.js +1 -1
  181. package/list-item/index.d.ts +22 -1
  182. package/list-item/index.js +6 -9
  183. package/list-item/types.d.ts +1 -21
  184. package/list-item/types.js +1 -1
  185. package/package.json +5 -11
  186. package/pagination/index.d.ts +22 -2
  187. package/pagination/index.js +46 -64
  188. package/pagination/types.d.ts +1 -21
  189. package/pagination/types.js +1 -1
  190. package/persistent-overlay/index.d.ts +22 -1
  191. package/persistent-overlay/index.js +44 -42
  192. package/persistent-overlay/types.d.ts +1 -21
  193. package/persistent-overlay/types.js +1 -1
  194. package/pop/index.d.ts +22 -3
  195. package/pop/index.js +150 -149
  196. package/pop/types.d.ts +1 -21
  197. package/pop/types.js +1 -1
  198. package/pop/utils.js +8 -24
  199. package/popover/index.d.ts +22 -2
  200. package/popover/index.js +68 -75
  201. package/popover/types.d.ts +1 -21
  202. package/popover/types.js +1 -1
  203. package/popover/utils.js +7 -18
  204. package/progress/index.d.ts +22 -1
  205. package/progress/index.js +33 -30
  206. package/progress/types.d.ts +1 -21
  207. package/progress/types.js +1 -1
  208. package/progress-stepper/index.d.ts +22 -2
  209. package/progress-stepper/index.js +66 -64
  210. package/progress-stepper/types.d.ts +1 -21
  211. package/progress-stepper/types.js +1 -1
  212. package/progress-stepper-item/index.d.ts +22 -1
  213. package/progress-stepper-item/index.js +50 -58
  214. package/progress-stepper-item/types.d.ts +1 -21
  215. package/progress-stepper-item/types.js +1 -1
  216. package/progress-stepper-item/utils.js +11 -22
  217. package/radio/index.d.ts +22 -1
  218. package/radio/index.js +83 -79
  219. package/radio/types.d.ts +1 -21
  220. package/radio/types.js +1 -1
  221. package/radio-option/index.d.ts +22 -1
  222. package/radio-option/index.js +41 -47
  223. package/radio-option/types.d.ts +1 -21
  224. package/radio-option/types.js +1 -1
  225. package/rich-text/index.d.ts +22 -1
  226. package/rich-text/index.js +46 -45
  227. package/rich-text/types.d.ts +1 -21
  228. package/rich-text/types.js +1 -1
  229. package/rich-text/utils.js +33 -31
  230. package/rich-textarea/index.d.ts +22 -1
  231. package/rich-textarea/index.js +194 -201
  232. package/rich-textarea/types.d.ts +1 -21
  233. package/rich-textarea/types.js +1 -1
  234. package/rich-textarea/utils.js +340 -313
  235. package/segment/index.d.ts +40 -0
  236. package/segment/index.js +110 -0
  237. package/segment/types.d.ts +23 -0
  238. package/segment/types.js +1 -0
  239. package/segment/utils.d.ts +3 -0
  240. package/segment/utils.js +16 -0
  241. package/segment-collapse/index.d.ts +22 -1
  242. package/segment-collapse/index.js +25 -31
  243. package/segment-collapse/types.d.ts +1 -21
  244. package/segment-collapse/types.js +1 -1
  245. package/segmented-control/index.d.ts +22 -1
  246. package/segmented-control/index.js +45 -45
  247. package/segmented-control/types.d.ts +1 -21
  248. package/segmented-control/types.js +1 -1
  249. package/segmented-control-option/index.d.ts +22 -1
  250. package/segmented-control-option/index.js +46 -44
  251. package/segmented-control-option/types.d.ts +1 -21
  252. package/segmented-control-option/types.js +1 -1
  253. package/segmented-icon-control/index.d.ts +22 -1
  254. package/segmented-icon-control/index.js +50 -51
  255. package/segmented-icon-control/types.d.ts +1 -21
  256. package/segmented-icon-control/types.js +1 -1
  257. package/segmented-icon-control-option/index.d.ts +22 -1
  258. package/segmented-icon-control-option/index.js +37 -36
  259. package/segmented-icon-control-option/types.d.ts +1 -21
  260. package/segmented-icon-control-option/types.js +1 -1
  261. package/select-button/index.d.ts +26 -1
  262. package/select-button/index.js +112 -104
  263. package/select-button/types.d.ts +1 -25
  264. package/select-button/types.js +1 -1
  265. package/select-menu/index.d.ts +22 -1
  266. package/select-menu/index.js +164 -201
  267. package/select-menu/types.d.ts +1 -21
  268. package/select-menu/types.js +1 -1
  269. package/select-menu-option/index.d.ts +22 -1
  270. package/select-menu-option/index.js +33 -41
  271. package/select-menu-option/types.d.ts +1 -21
  272. package/select-menu-option/types.js +1 -1
  273. package/select-menu-option/utils.js +1 -4
  274. package/skeleton/index.d.ts +22 -1
  275. package/skeleton/index.js +38 -35
  276. package/skeleton/types.d.ts +1 -21
  277. package/skeleton/types.js +1 -1
  278. package/skeleton-item/index.d.ts +22 -1
  279. package/skeleton-item/index.js +5 -8
  280. package/skeleton-item/types.d.ts +1 -21
  281. package/skeleton-item/types.js +1 -1
  282. package/spinner/index.d.ts +22 -1
  283. package/spinner/index.js +29 -31
  284. package/spinner/types.d.ts +1 -21
  285. package/spinner/types.js +1 -1
  286. package/standalone.d.ts +8 -0
  287. package/standalone.js +87 -79
  288. package/standalone.ts +8 -0
  289. package/stop-events/index.js +12 -12
  290. package/table/index.d.ts +21 -1
  291. package/table/index.js +6 -9
  292. package/table/types.d.ts +1 -21
  293. package/table/types.js +1 -1
  294. package/table-body/index.d.ts +21 -1
  295. package/table-body/index.js +6 -9
  296. package/table-body/types.d.ts +1 -21
  297. package/table-body/types.js +1 -1
  298. package/table-cell/index.d.ts +22 -2
  299. package/table-cell/index.js +9 -13
  300. package/table-cell/types.d.ts +1 -21
  301. package/table-cell/types.js +1 -1
  302. package/table-cell/utils.js +1 -4
  303. package/table-head/index.d.ts +21 -1
  304. package/table-head/index.js +6 -9
  305. package/table-head/types.d.ts +1 -21
  306. package/table-head/types.js +1 -1
  307. package/table-head-cell/index.d.ts +22 -1
  308. package/table-head-cell/index.js +27 -29
  309. package/table-head-cell/types.d.ts +1 -21
  310. package/table-head-cell/types.js +1 -1
  311. package/table-row/index.d.ts +22 -1
  312. package/table-row/index.js +17 -20
  313. package/table-row/types.d.ts +1 -21
  314. package/table-row/types.js +1 -1
  315. package/tabs/index.d.ts +22 -2
  316. package/tabs/index.js +35 -32
  317. package/tabs/types.d.ts +1 -21
  318. package/tabs/types.js +1 -1
  319. package/tabs-icon-option/index.d.ts +22 -1
  320. package/tabs-icon-option/index.js +40 -38
  321. package/tabs-icon-option/types.d.ts +1 -21
  322. package/tabs-icon-option/types.js +1 -1
  323. package/tabs-option/index.d.ts +22 -1
  324. package/tabs-option/index.js +43 -41
  325. package/tabs-option/types.d.ts +1 -21
  326. package/tabs-option/types.js +1 -1
  327. package/tag/colors.js +1 -1
  328. package/tag/index.d.ts +22 -1
  329. package/tag/index.js +44 -45
  330. package/tag/types.d.ts +1 -21
  331. package/tag/types.js +1 -1
  332. package/tag/utils.js +3 -7
  333. package/text/index.d.ts +22 -2
  334. package/text/index.js +28 -33
  335. package/text/types.d.ts +1 -21
  336. package/text/types.js +1 -1
  337. package/text/utils.js +1 -4
  338. package/textarea/index.d.ts +22 -1
  339. package/textarea/index.js +152 -147
  340. package/textarea/types.d.ts +1 -21
  341. package/textarea/types.js +1 -1
  342. package/tile-control/index.d.ts +39 -0
  343. package/tile-control/index.js +111 -0
  344. package/tile-control/types.d.ts +29 -0
  345. package/tile-control/types.js +1 -0
  346. package/tile-control-option/index.d.ts +40 -0
  347. package/tile-control-option/index.js +99 -0
  348. package/tile-control-option/types.d.ts +52 -0
  349. package/tile-control-option/types.js +1 -0
  350. package/time-picker/index.d.ts +22 -2
  351. package/time-picker/index.js +123 -119
  352. package/time-picker/types.d.ts +1 -21
  353. package/time-picker/types.js +1 -1
  354. package/time-picker/utils.js +33 -31
  355. package/title/index.d.ts +22 -2
  356. package/title/index.js +31 -32
  357. package/title/types.d.ts +1 -21
  358. package/title/types.js +1 -1
  359. package/title/utils.js +14 -18
  360. package/toast/index.d.ts +22 -2
  361. package/toast/index.js +34 -37
  362. package/toast/types.d.ts +1 -21
  363. package/toast/types.js +1 -1
  364. package/toast/utils.js +1 -4
  365. package/toast-manager/index.d.ts +22 -3
  366. package/toast-manager/index.js +63 -77
  367. package/toast-manager/types.d.ts +1 -21
  368. package/toast-manager/types.js +1 -1
  369. package/toast-manager/utils.js +1 -4
  370. package/toggle/index.d.ts +22 -1
  371. package/toggle/index.js +75 -81
  372. package/toggle/types.d.ts +1 -21
  373. package/toggle/types.js +1 -1
  374. package/tooltip/index.d.ts +22 -3
  375. package/tooltip/index.js +93 -105
  376. package/tooltip/tooltip-state.js +64 -56
  377. package/tooltip/types.d.ts +1 -21
  378. package/tooltip/types.js +1 -1
  379. package/tooltip/utils.js +13 -32
  380. package/types.d.ts +29 -12
  381. package/utils/adapters.js +1 -1
  382. package/utils/context.js +42 -32
  383. package/utils/countries.js +2 -490
  384. package/utils/csv.js +6 -13
  385. package/utils/debounce.js +3 -10
  386. package/utils/dom.js +53 -60
  387. package/utils/element.d.ts +15 -107
  388. package/utils/element.js +19 -100
  389. package/utils/event-target.js +5 -11
  390. package/utils/form.js +12 -17
  391. package/utils/get-react-event-handler.js +3 -6
  392. package/utils/index.js +12 -65
  393. package/utils/markdown.js +43 -56
  394. package/utils/rect.js +18 -13
  395. package/utils/size.js +3 -8
  396. package/utils/slot.js +9 -13
  397. package/utils/throttle.js +2 -5
  398. package/utils/uid.js +2 -5
  399. package/vertical-stepper/index.d.ts +33 -0
  400. package/vertical-stepper/index.js +58 -0
  401. package/vertical-stepper/types.d.ts +34 -0
  402. package/vertical-stepper/types.js +1 -0
  403. package/vertical-stepper-item/index.d.ts +38 -0
  404. package/vertical-stepper-item/index.js +62 -0
  405. package/vertical-stepper-item/types.d.ts +42 -0
  406. package/vertical-stepper-item/types.js +1 -0
  407. package/vertical-stepper-item/utils.d.ts +2 -0
  408. package/vertical-stepper-item/utils.js +1 -0
  409. package/accordion/global/index.d.ts +0 -1
  410. package/accordion/global/index.js +0 -2
  411. package/accordion-item/global/index.d.ts +0 -1
  412. package/accordion-item/global/index.js +0 -2
  413. package/action-menu/global/index.d.ts +0 -1
  414. package/action-menu/global/index.js +0 -2
  415. package/action-menu-option/global/index.d.ts +0 -1
  416. package/action-menu-option/global/index.js +0 -2
  417. package/alert/global/index.d.ts +0 -1
  418. package/alert/global/index.js +0 -2
  419. package/avatar/global/index.d.ts +0 -1
  420. package/avatar/global/index.js +0 -2
  421. package/badge/global/index.d.ts +0 -1
  422. package/badge/global/index.js +0 -2
  423. package/bundle.d.ts +0 -78
  424. package/bundle.js +0 -13033
  425. package/bundle.ts +0 -80
  426. package/button/global/index.d.ts +0 -1
  427. package/button/global/index.js +0 -2
  428. package/button-group/global/index.d.ts +0 -1
  429. package/button-group/global/index.js +0 -2
  430. package/button-group-item/global/index.d.ts +0 -1
  431. package/button-group-item/global/index.js +0 -2
  432. package/card-container/global/index.d.ts +0 -1
  433. package/card-container/global/index.js +0 -2
  434. package/card-v2/global/index.d.ts +0 -1
  435. package/card-v2/global/index.js +0 -2
  436. package/card-v2-title/global/index.d.ts +0 -1
  437. package/card-v2-title/global/index.js +0 -2
  438. package/checkbox/global/index.d.ts +0 -1
  439. package/checkbox/global/index.js +0 -2
  440. package/chip/global/index.d.ts +0 -1
  441. package/chip/global/index.js +0 -2
  442. package/code-tag/global/index.d.ts +0 -1
  443. package/code-tag/global/index.js +0 -2
  444. package/color-menu/global/index.d.ts +0 -1
  445. package/color-menu/global/index.js +0 -2
  446. package/color-menu-option/global/index.d.ts +0 -1
  447. package/color-menu-option/global/index.js +0 -2
  448. package/color-swatch/global/index.d.ts +0 -1
  449. package/color-swatch/global/index.js +0 -2
  450. package/date-picker/global/index.d.ts +0 -1
  451. package/date-picker/global/index.js +0 -2
  452. package/dialog/global/index.d.ts +0 -1
  453. package/dialog/global/index.js +0 -2
  454. package/emoji/global/index.d.ts +0 -1
  455. package/emoji/global/index.js +0 -2
  456. package/emoji-picker/global/index.d.ts +0 -1
  457. package/emoji-picker/global/index.js +0 -2
  458. package/field/global/index.d.ts +0 -1
  459. package/field/global/index.js +0 -2
  460. package/file-drop/global/index.d.ts +0 -1
  461. package/file-drop/global/index.js +0 -2
  462. package/file-picker/global/index.d.ts +0 -1
  463. package/file-picker/global/index.js +0 -2
  464. package/file-status/global/index.d.ts +0 -1
  465. package/file-status/global/index.js +0 -2
  466. package/flag/global/index.d.ts +0 -1
  467. package/flag/global/index.js +0 -2
  468. package/grid/global/index.d.ts +0 -1
  469. package/grid/global/index.js +0 -2
  470. package/grid-item/global/index.d.ts +0 -1
  471. package/grid-item/global/index.js +0 -2
  472. package/help-tooltip/global/index.d.ts +0 -1
  473. package/help-tooltip/global/index.js +0 -2
  474. package/icon/global/index.d.ts +0 -1
  475. package/icon/global/index.js +0 -2
  476. package/inline-alert/global/index.d.ts +0 -1
  477. package/inline-alert/global/index.js +0 -2
  478. package/input/global/index.d.ts +0 -1
  479. package/input/global/index.js +0 -2
  480. package/link/global/index.d.ts +0 -1
  481. package/link/global/index.js +0 -2
  482. package/list/global/index.d.ts +0 -1
  483. package/list/global/index.js +0 -2
  484. package/list-item/global/index.d.ts +0 -1
  485. package/list-item/global/index.js +0 -2
  486. package/pagination/global/index.d.ts +0 -1
  487. package/pagination/global/index.js +0 -2
  488. package/persistent-overlay/global/index.d.ts +0 -1
  489. package/persistent-overlay/global/index.js +0 -2
  490. package/pop/global/index.d.ts +0 -1
  491. package/pop/global/index.js +0 -2
  492. package/popover/global/index.d.ts +0 -1
  493. package/popover/global/index.js +0 -2
  494. package/progress/global/index.d.ts +0 -1
  495. package/progress/global/index.js +0 -2
  496. package/progress-stepper/global/index.d.ts +0 -1
  497. package/progress-stepper/global/index.js +0 -2
  498. package/progress-stepper-item/global/index.d.ts +0 -1
  499. package/progress-stepper-item/global/index.js +0 -2
  500. package/radio/global/index.d.ts +0 -1
  501. package/radio/global/index.js +0 -2
  502. package/radio-option/global/index.d.ts +0 -1
  503. package/radio-option/global/index.js +0 -2
  504. package/rich-text/global/index.d.ts +0 -1
  505. package/rich-text/global/index.js +0 -2
  506. package/rich-textarea/global/index.d.ts +0 -1
  507. package/rich-textarea/global/index.js +0 -2
  508. package/segment-collapse/global/index.d.ts +0 -1
  509. package/segment-collapse/global/index.js +0 -2
  510. package/segmented-control/global/index.d.ts +0 -1
  511. package/segmented-control/global/index.js +0 -2
  512. package/segmented-control-option/global/index.d.ts +0 -1
  513. package/segmented-control-option/global/index.js +0 -2
  514. package/segmented-icon-control/global/index.d.ts +0 -1
  515. package/segmented-icon-control/global/index.js +0 -2
  516. package/segmented-icon-control-option/global/index.d.ts +0 -1
  517. package/segmented-icon-control-option/global/index.js +0 -2
  518. package/select-button/global/index.d.ts +0 -1
  519. package/select-button/global/index.js +0 -2
  520. package/select-menu/global/index.d.ts +0 -1
  521. package/select-menu/global/index.js +0 -2
  522. package/select-menu-option/global/index.d.ts +0 -1
  523. package/select-menu-option/global/index.js +0 -2
  524. package/skeleton/global/index.d.ts +0 -1
  525. package/skeleton/global/index.js +0 -2
  526. package/skeleton-item/global/index.d.ts +0 -1
  527. package/skeleton-item/global/index.js +0 -2
  528. package/spinner/global/index.d.ts +0 -1
  529. package/spinner/global/index.js +0 -2
  530. package/table/global/index.d.ts +0 -1
  531. package/table/global/index.js +0 -2
  532. package/table-body/global/index.d.ts +0 -1
  533. package/table-body/global/index.js +0 -2
  534. package/table-cell/global/index.d.ts +0 -1
  535. package/table-cell/global/index.js +0 -2
  536. package/table-head/global/index.d.ts +0 -1
  537. package/table-head/global/index.js +0 -2
  538. package/table-head-cell/global/index.d.ts +0 -1
  539. package/table-head-cell/global/index.js +0 -2
  540. package/table-row/global/index.d.ts +0 -1
  541. package/table-row/global/index.js +0 -2
  542. package/tabs/global/index.d.ts +0 -1
  543. package/tabs/global/index.js +0 -2
  544. package/tabs-icon-option/global/index.d.ts +0 -1
  545. package/tabs-icon-option/global/index.js +0 -2
  546. package/tabs-option/global/index.d.ts +0 -1
  547. package/tabs-option/global/index.js +0 -2
  548. package/tag/global/index.d.ts +0 -1
  549. package/tag/global/index.js +0 -2
  550. package/text/global/index.d.ts +0 -1
  551. package/text/global/index.js +0 -2
  552. package/textarea/global/index.d.ts +0 -1
  553. package/textarea/global/index.js +0 -2
  554. package/time-picker/global/index.d.ts +0 -1
  555. package/time-picker/global/index.js +0 -2
  556. package/title/global/index.d.ts +0 -1
  557. package/title/global/index.js +0 -2
  558. package/toast/global/index.d.ts +0 -1
  559. package/toast/global/index.js +0 -2
  560. package/toast-manager/global/index.d.ts +0 -1
  561. package/toast-manager/global/index.js +0 -2
  562. package/toggle/global/index.d.ts +0 -1
  563. package/toggle/global/index.js +0 -2
  564. package/tooltip/global/index.d.ts +0 -1
  565. package/tooltip/global/index.js +0 -2
  566. package/utils/component-names.d.ts +0 -3
  567. package/utils/component-names.js +0 -85
  568. package/utils/global-components-constants.d.ts +0 -3
  569. package/utils/global-components-constants.js +0 -8
  570. package/utils/global-components-manager.d.ts +0 -71
  571. package/utils/global-components-manager.js +0 -24
  572. package/utils/shared/global-elements-manager.d.js +0 -1
  573. package/utils/shared/global-elements-manager.d.ts +0 -62
  574. package/utils/shared/global-elements-manager.js +0 -163
  575. package/utils/shared/global-elements-store.d.js +0 -1
  576. package/utils/shared/global-elements-store.d.ts +0 -12
  577. package/utils/shared/global-elements-store.js +0 -31
  578. package/utils/shared/index.d.js +0 -11
  579. package/utils/shared/index.d.ts +0 -3
  580. package/utils/shared/index.js +0 -11
  581. package/utils/shared/nectary-element-base.d.js +0 -1
  582. package/utils/shared/nectary-element-base.d.ts +0 -9
  583. package/utils/shared/nectary-element-base.js +0 -25
  584. package/utils/shared/package.json +0 -9
  585. package/utils/shared/tsconfig.json +0 -20
package/tooltip/index.js CHANGED
@@ -1,20 +1,17 @@
1
- import "../text/index.js";
2
- import "../pop/index.js";
3
- import { shouldReduceMotion, updateAttribute, getAttribute, getLiteralAttribute, updateLiteralAttribute, updateBooleanAttribute, setClass } from "../utils/dom.js";
4
- import { defineCustomElement, NectaryElement } from "../utils/element.js";
5
- import { rectOverlap } from "../utils/rect.js";
6
- import { getReactEventHandler } from "../utils/get-react-event-handler.js";
7
- import { TooltipState } from "./tooltip-state.js";
8
- import { getPopOrientation, orientationValues, textAlignValues, typeValues } from "./utils.js";
9
- const templateHTML = '<style>\n :host {\n display: contents;\n }\n\n #content-wrapper {\n padding-bottom: 8px;\n filter: drop-shadow(var(--sinch-comp-tooltip-shadow));\n }\n\n :host([orientation="left"]) #content-wrapper {\n padding-bottom: 0;\n padding-right: 8px;\n }\n\n :host([orientation="right"]) #content-wrapper {\n padding-bottom: 0;\n padding-left: 8px;\n }\n\n :host([orientation^="bottom"]) #content-wrapper {\n padding-bottom: 0;\n padding-top: 8px;\n }\n\n #content {\n position: relative;\n display: block;\n max-width: 300px;\n padding: 2px 6px;\n box-sizing: border-box;\n background-color: var(--sinch-local-color-background);\n border-radius: var(--sinch-comp-tooltip-shape-radius);\n pointer-events: none;\n opacity: 0;\n\n --sinch-local-color-background: var(--sinch-comp-tooltip-color-background);\n --sinch-global-color-text: var(--sinch-comp-tooltip-color-text);\n }\n\n #text {\n word-break: break-word;\n pointer-events: none;\n\n --sinch-comp-text-font: var(--sinch-comp-tooltip-font-body);\n }\n\n #tip {\n position: absolute;\n left: 50%;\n top: 100%;\n transform: translateX(-50%) rotate(0);\n transform-origin: top center;\n fill: var(--sinch-local-color-background);\n pointer-events: none;\n }\n\n #tip.hidden {\n display: none;\n }\n\n :host([orientation="left"]) #tip {\n transform: translateX(-50%) rotate(270deg);\n top: 50%;\n left: 100%;\n }\n\n :host([orientation="right"]) #tip {\n transform: translateX(-50%) rotate(90deg);\n top: 50%;\n left: 0;\n }\n\n :host([orientation^="bottom"]) #tip {\n transform: translateX(-50%) rotate(180deg);\n top: 0;\n }\n\n :host([text-align="right"]) #text {\n --sinch-comp-text-align: right;\n }\n\n :host([text-align="center"]) #text {\n --sinch-comp-text-align: center;\n }\n\n :host([text-align="left"]) #text {\n --sinch-comp-text-align: left;\n }\n</style>\n\n<sinch-pop id="pop">\n <slot id="target" slot="target"></slot>\n <div id="content-wrapper" slot="content">\n <div id="content">\n <sinch-text id="text" type="s"></sinch-text>\n <svg id="tip" width="8" height="4" aria-hidden="true">\n <path d="m4 4 4-4h-8l4 4Z" />\n </svg>\n </div>\n </div>\n</sinch-pop>';
1
+ import '../text';
2
+ import '../pop';
3
+ import { defineCustomElement, getAttribute, getLiteralAttribute, updateBooleanAttribute, updateAttribute, updateLiteralAttribute, NectaryElement, setClass, rectOverlap, getReactEventHandler, shouldReduceMotion } from '../utils';
4
+ const templateHTML = '<style>:host{display:contents}#content-wrapper{padding-bottom:8px;filter:drop-shadow(var(--sinch-comp-tooltip-shadow))}:host([orientation=left]) #content-wrapper{padding-bottom:0;padding-right:8px}:host([orientation=right]) #content-wrapper{padding-bottom:0;padding-left:8px}:host([orientation^=bottom]) #content-wrapper{padding-bottom:0;padding-top:8px}#content{position:relative;display:block;max-width:300px;padding:2px 6px;box-sizing:border-box;background-color:var(--sinch-local-color-background);border-radius:var(--sinch-comp-tooltip-shape-radius);pointer-events:none;opacity:0;--sinch-local-color-background:var(--sinch-comp-tooltip-color-background);--sinch-global-color-text:var(--sinch-comp-tooltip-color-text)}#text{word-break:break-word;pointer-events:none;--sinch-comp-text-font:var(--sinch-comp-tooltip-font-body)}#tip{position:absolute;left:50%;top:100%;transform:translateX(-50%) rotate(0);transform-origin:top center;fill:var(--sinch-local-color-background);pointer-events:none}#tip.hidden{display:none}:host([orientation=left]) #tip{transform:translateX(-50%) rotate(270deg);top:50%;left:100%}:host([orientation=right]) #tip{transform:translateX(-50%) rotate(90deg);top:50%;left:0}:host([orientation^=bottom]) #tip{transform:translateX(-50%) rotate(180deg);top:0}:host([text-align=right]) #text{--sinch-comp-text-align:right}:host([text-align=center]) #text{--sinch-comp-text-align:center}:host([text-align=left]) #text{--sinch-comp-text-align:left}</style><sinch-pop id="pop"><slot id="target" slot="target"></slot><div id="content-wrapper" slot="content"><div id="content"><sinch-text id="text" type="s"></sinch-text><svg id="tip" width="8" height="4" aria-hidden="true"><path d="m4 4 4-4h-8l4 4Z"/></svg></div></div></sinch-pop>';
5
+ import { TooltipState } from './tooltip-state';
6
+ import { getPopOrientation, orientationValues, textAlignValues, typeValues } from './utils';
10
7
  const TIP_SIZE = 8;
11
- const SHOW_DELAY_SLOW = 1e3;
8
+ const SHOW_DELAY_SLOW = 1000;
12
9
  const SHOW_DELAY_FAST = 250;
13
10
  const HIDE_DELAY = 0;
14
11
  const ANIMATION_DURATION = 100;
15
- const template = document.createElement("template");
12
+ const template = document.createElement('template');
16
13
  template.innerHTML = templateHTML;
17
- class Tooltip extends NectaryElement {
14
+ export class Tooltip extends NectaryElement {
18
15
  #$pop;
19
16
  #$tooltipText;
20
17
  #$content;
@@ -30,12 +27,12 @@ class Tooltip extends NectaryElement {
30
27
  super();
31
28
  const shadowRoot = this.attachShadow();
32
29
  shadowRoot.appendChild(template.content.cloneNode(true));
33
- this.#$pop = shadowRoot.querySelector("#pop");
34
- this.#$tooltipText = shadowRoot.querySelector("#text");
35
- this.#$content = shadowRoot.querySelector("#content");
36
- this.#$contentWrapper = shadowRoot.querySelector("#content-wrapper");
37
- this.#$tip = shadowRoot.querySelector("#tip");
38
- this.#$target = shadowRoot.querySelector("#target");
30
+ this.#$pop = shadowRoot.querySelector('#pop');
31
+ this.#$tooltipText = shadowRoot.querySelector('#text');
32
+ this.#$content = shadowRoot.querySelector('#content');
33
+ this.#$contentWrapper = shadowRoot.querySelector('#content-wrapper');
34
+ this.#$tip = shadowRoot.querySelector('#tip');
35
+ this.#$target = shadowRoot.querySelector('#target');
39
36
  this.#shouldReduceMotion = shouldReduceMotion();
40
37
  this.#tooltipState = new TooltipState({
41
38
  showDelay: SHOW_DELAY_SLOW,
@@ -53,11 +50,11 @@ class Tooltip extends NectaryElement {
53
50
  const options = {
54
51
  signal: this.#controller.signal
55
52
  };
56
- this.setAttribute("role", "tooltip");
57
- this.#$pop.addEventListener("-close", this.#onPopClose, options);
58
- this.addEventListener("-show", this.#onShowReactHandler, options);
59
- this.addEventListener("-hide", this.#onHideReactHandler, options);
60
- updateAttribute(this.#$pop, "orientation", getPopOrientation(this.orientation));
53
+ this.setAttribute('role', 'tooltip');
54
+ this.#$pop.addEventListener('-close', this.#onPopClose, options);
55
+ this.addEventListener('-show', this.#onShowReactHandler, options);
56
+ this.addEventListener('-hide', this.#onHideReactHandler, options);
57
+ updateAttribute(this.#$pop, 'orientation', getPopOrientation(this.orientation));
61
58
  this.#updateText();
62
59
  }
63
60
  disconnectedCallback() {
@@ -67,69 +64,67 @@ class Tooltip extends NectaryElement {
67
64
  this.#controller = null;
68
65
  }
69
66
  static get observedAttributes() {
70
- return [
71
- "text",
72
- "orientation",
73
- "text-align",
74
- "type",
75
- "aria-label",
76
- "aria-description"
77
- ];
67
+ return ['text', 'orientation', 'text-align', 'type', 'aria-label', 'aria-description'];
78
68
  }
79
69
  attributeChangedCallback(name, _, newVal) {
80
70
  switch (name) {
81
- case "text": {
82
- this.#updateText();
83
- break;
84
- }
85
- case "orientation": {
86
- updateAttribute(this.#$pop, "orientation", getPopOrientation(this.orientation));
87
- if (this.#isOpen()) {
88
- this.#resetTipOrientation();
89
- this.#updateTipOrientation();
71
+ case 'text':
72
+ {
73
+ this.#updateText();
74
+ break;
75
+ }
76
+ case 'orientation':
77
+ {
78
+ updateAttribute(this.#$pop, 'orientation', getPopOrientation(this.orientation));
79
+ if (this.#isOpen()) {
80
+ this.#resetTipOrientation();
81
+ this.#updateTipOrientation();
82
+ }
83
+ break;
84
+ }
85
+ case 'text-align':
86
+ {
87
+ updateAttribute(this.#$pop, 'text-align', newVal);
88
+ break;
89
+ }
90
+ case 'type':
91
+ {
92
+ this.#tooltipState.updateOptions({
93
+ showDelay: newVal === 'fast' ? SHOW_DELAY_FAST : SHOW_DELAY_SLOW
94
+ });
95
+ break;
96
+ }
97
+ case 'aria-label':
98
+ case 'aria-description':
99
+ {
100
+ updateAttribute(this.#$pop, name, newVal);
101
+ break;
90
102
  }
91
- break;
92
- }
93
- case "text-align": {
94
- updateAttribute(this.#$pop, "text-align", newVal);
95
- break;
96
- }
97
- case "type": {
98
- this.#tooltipState.updateOptions({
99
- showDelay: newVal === "fast" ? SHOW_DELAY_FAST : SHOW_DELAY_SLOW
100
- });
101
- break;
102
- }
103
- case "aria-label":
104
- case "aria-description": {
105
- updateAttribute(this.#$pop, name, newVal);
106
- break;
107
- }
108
103
  }
109
104
  }
110
105
  get text() {
111
- return getAttribute(this, "text", "");
106
+ return getAttribute(this, 'text', '');
112
107
  }
113
108
  set text(value) {
114
- updateAttribute(this, "text", value);
109
+ updateAttribute(this, 'text', value);
115
110
  }
116
111
  get orientation() {
117
- return getLiteralAttribute(this, orientationValues, "orientation", "top");
112
+ return getLiteralAttribute(this, orientationValues, 'orientation', 'top');
118
113
  }
119
114
  set orientation(value) {
120
- updateLiteralAttribute(this, orientationValues, "orientation", value);
115
+ updateLiteralAttribute(this, orientationValues, 'orientation', value);
121
116
  }
122
- get "text-align"() {
123
- return getLiteralAttribute(this, textAlignValues, "text-align", "left");
117
+ get 'text-align'() {
118
+ return getLiteralAttribute(this, textAlignValues, 'text-align', 'left');
124
119
  }
125
- set "text-align"(value) {
126
- updateLiteralAttribute(this, textAlignValues, "text-align", value);
120
+ set 'text-align'(value) {
121
+ updateLiteralAttribute(this, textAlignValues, 'text-align', value);
127
122
  }
128
123
  get type() {
129
- return getLiteralAttribute(this, typeValues, "type", "slow");
124
+ return getLiteralAttribute(this, typeValues, 'type', 'slow');
130
125
  }
131
126
  set type(value) {
132
- updateLiteralAttribute(this, typeValues, "type", value);
127
+ updateLiteralAttribute(this, typeValues, 'type', value);
133
128
  }
134
129
  get footprintRect() {
135
130
  return this.#$pop.footprintRect;
@@ -137,18 +132,16 @@ class Tooltip extends NectaryElement {
137
132
  get tooltipRect() {
138
133
  return this.#$pop.popoverRect;
139
134
  }
140
- // Begin hide animation if shown, skipping HIDE_DELAY wait
141
135
  #onMouseDown = () => {
142
136
  this.#tooltipState.destroy();
143
137
  };
144
- // Underlying pop asks for a close
145
138
  #onPopClose = () => {
146
139
  this.#tooltipState.destroy();
147
140
  };
148
141
  #onMouseEnter = () => {
149
142
  this.#tooltipState.show();
150
143
  };
151
- #onMouseLeave = (e) => {
144
+ #onMouseLeave = e => {
152
145
  if (!this.#isOpen() || e.relatedTarget !== this.#$contentWrapper && e.relatedTarget !== this.#$target) {
153
146
  this.#tooltipState.hide();
154
147
  }
@@ -156,15 +149,13 @@ class Tooltip extends NectaryElement {
156
149
  #onScroll = () => {
157
150
  this.#tooltipState.destroy();
158
151
  };
159
- // Tooltip begins to wait for SHOW_DELAY on mouseenter
160
152
  #onStateShowStart = () => {
161
153
  this.#subscribeScroll();
162
154
  this.#subscribeMouseLeaveEvents();
163
155
  };
164
- // SHOW_DELAY ended, tooltip can be shown with animation
165
156
  #onStateShowEnd = () => {
166
157
  this.#dispatchShowEvent();
167
- updateBooleanAttribute(this.#$pop, "open", true);
158
+ updateBooleanAttribute(this.#$pop, 'open', true);
168
159
  requestAnimationFrame(this.#updateTipOrientation);
169
160
  if (this.#animation !== null) {
170
161
  this.#animation.updatePlaybackRate(1);
@@ -175,29 +166,27 @@ class Tooltip extends NectaryElement {
175
166
  }, {
176
167
  duration: this.#shouldReduceMotion ? 0 : ANIMATION_DURATION,
177
168
  iterations: 1,
178
- fill: "forwards"
169
+ fill: 'forwards'
179
170
  });
180
171
  }
181
172
  };
182
- // HIDE_DELAY ended, begin tooltip hide animation
183
173
  #onStateHideStart = () => {
184
174
  this.#animation.updatePlaybackRate(-1);
185
175
  this.#animation.play();
186
176
  };
187
- // Hide animation ended, tooltip can be hidden
188
177
  #onStateHideEnd = () => {
189
178
  if (this.#isOpen()) {
190
179
  this.#animation.finish();
191
180
  this.#dispatchHideEvent();
192
- updateBooleanAttribute(this.#$pop, "open", false);
181
+ updateBooleanAttribute(this.#$pop, 'open', false);
193
182
  }
194
183
  this.#resetTipOrientation();
195
184
  this.#unsubscribeMouseLeaveEvents();
196
185
  this.#unsubscribeScroll();
197
186
  };
198
187
  #resetTipOrientation() {
199
- this.#$tip.style.top = "";
200
- this.#$tip.style.left = "";
188
+ this.#$tip.style.top = '';
189
+ this.#$tip.style.left = '';
201
190
  }
202
191
  #updateTipOrientation = () => {
203
192
  const orient = this.orientation;
@@ -205,20 +194,20 @@ class Tooltip extends NectaryElement {
205
194
  const contentRect = this.#$content.getBoundingClientRect();
206
195
  const diffX = targetRect.x - contentRect.x;
207
196
  const diffY = targetRect.y - contentRect.y;
208
- if (orient === "left" || orient === "right") {
197
+ if (orient === 'left' || orient === 'right') {
209
198
  const yPos = Math.max(TIP_SIZE, Math.min(diffY + targetRect.height / 2, contentRect.height - TIP_SIZE));
210
199
  this.#$tip.style.top = `${yPos}px`;
211
200
  } else {
212
201
  let xPos = Math.max(TIP_SIZE, Math.min(diffX + targetRect.width / 2, contentRect.width - TIP_SIZE));
213
- if (orient === "bottom-left" || orient === "top-left") {
202
+ if (orient === 'bottom-left' || orient === 'top-left') {
214
203
  xPos = Math.max(xPos, contentRect.width * 0.75);
215
204
  }
216
- if (orient === "bottom-right" || orient === "top-right") {
205
+ if (orient === 'bottom-right' || orient === 'top-right') {
217
206
  xPos = Math.min(xPos, contentRect.width * 0.25);
218
207
  }
219
208
  this.#$tip.style.left = `${xPos}px`;
220
209
  }
221
- setClass(this.#$tip, "hidden", rectOverlap(targetRect, contentRect));
210
+ setClass(this.#$tip, 'hidden', rectOverlap(targetRect, contentRect));
222
211
  };
223
212
  #updateText() {
224
213
  if (!this.isDomConnected) {
@@ -238,51 +227,50 @@ class Tooltip extends NectaryElement {
238
227
  if (!this.isDomConnected || this.#isSubscribed) {
239
228
  return;
240
229
  }
241
- this.#$target.addEventListener("mouseenter", this.#onMouseEnter, {
230
+ this.#$target.addEventListener('mouseenter', this.#onMouseEnter, {
242
231
  signal: this.#controller.signal
243
232
  });
244
233
  this.#isSubscribed = true;
245
234
  }
246
235
  #unsubscribeMouseEnterEvent() {
247
- this.#$target.removeEventListener("mouseenter", this.#onMouseEnter);
236
+ this.#$target.removeEventListener('mouseenter', this.#onMouseEnter);
248
237
  this.#isSubscribed = false;
249
238
  }
250
239
  #subscribeMouseLeaveEvents() {
251
- const options = { signal: this.#controller.signal };
252
- this.#$target.addEventListener("mousedown", this.#onMouseDown, options);
253
- this.#$target.addEventListener("mouseleave", this.#onMouseLeave, options);
254
- this.#$contentWrapper.addEventListener("mouseenter", this.#onMouseEnter, options);
255
- this.#$contentWrapper.addEventListener("mouseleave", this.#onMouseLeave, options);
240
+ const options = {
241
+ signal: this.#controller.signal
242
+ };
243
+ this.#$target.addEventListener('mousedown', this.#onMouseDown, options);
244
+ this.#$target.addEventListener('mouseleave', this.#onMouseLeave, options);
245
+ this.#$contentWrapper.addEventListener('mouseenter', this.#onMouseEnter, options);
246
+ this.#$contentWrapper.addEventListener('mouseleave', this.#onMouseLeave, options);
256
247
  }
257
248
  #unsubscribeMouseLeaveEvents() {
258
- this.#$target.removeEventListener("mousedown", this.#onMouseDown);
259
- this.#$target.removeEventListener("mouseleave", this.#onMouseLeave);
260
- this.#$contentWrapper.removeEventListener("mouseenter", this.#onMouseEnter);
261
- this.#$contentWrapper.removeEventListener("mouseleave", this.#onMouseLeave);
249
+ this.#$target.removeEventListener('mousedown', this.#onMouseDown);
250
+ this.#$target.removeEventListener('mouseleave', this.#onMouseLeave);
251
+ this.#$contentWrapper.removeEventListener('mouseenter', this.#onMouseEnter);
252
+ this.#$contentWrapper.removeEventListener('mouseleave', this.#onMouseLeave);
262
253
  }
263
254
  #subscribeScroll() {
264
- window.addEventListener("wheel", this.#onScroll, true);
255
+ window.addEventListener('wheel', this.#onScroll, true);
265
256
  }
266
257
  #unsubscribeScroll() {
267
- window.removeEventListener("wheel", this.#onScroll, true);
258
+ window.removeEventListener('wheel', this.#onScroll, true);
268
259
  }
269
260
  #isOpen() {
270
- return this.#$pop.hasAttribute("open");
261
+ return this.#$pop.hasAttribute('open');
271
262
  }
272
263
  #dispatchShowEvent() {
273
- this.dispatchEvent(new CustomEvent("-show"));
264
+ this.dispatchEvent(new CustomEvent('-show'));
274
265
  }
275
266
  #dispatchHideEvent() {
276
- this.dispatchEvent(new CustomEvent("-hide"));
267
+ this.dispatchEvent(new CustomEvent('-hide'));
277
268
  }
278
269
  #onShowReactHandler = () => {
279
- getReactEventHandler(this, "on-show")?.();
270
+ getReactEventHandler(this, 'on-show')?.();
280
271
  };
281
272
  #onHideReactHandler = () => {
282
- getReactEventHandler(this, "on-hide")?.();
273
+ getReactEventHandler(this, 'on-hide')?.();
283
274
  };
284
275
  }
285
- defineCustomElement("sinch-tooltip", Tooltip);
286
- export {
287
- Tooltip
288
- };
276
+ defineCustomElement('sinch-tooltip', Tooltip);
@@ -1,6 +1,6 @@
1
- class TooltipState {
1
+ export class TooltipState {
2
2
  #timerId = null;
3
- #state = "hide";
3
+ #state = 'hide';
4
4
  #options;
5
5
  constructor(options) {
6
6
  this.#options = options;
@@ -13,66 +13,77 @@ class TooltipState {
13
13
  }
14
14
  show() {
15
15
  switch (this.#state) {
16
- case "hide": {
17
- this.#switchToHideToShow();
18
- break;
19
- }
20
- case "show-to-hide": {
21
- this.#switchToState("show");
22
- break;
23
- }
16
+ case 'hide':
17
+ {
18
+ this.#switchToHideToShow();
19
+ break;
20
+ }
21
+ case 'show-to-hide':
22
+ {
23
+ this.#switchToState('show');
24
+ break;
25
+ }
24
26
  }
25
27
  }
26
28
  hide() {
27
29
  switch (this.#state) {
28
- case "hide-to-show": {
29
- this.#onHideAnimationEnd();
30
- break;
31
- }
32
- case "show": {
33
- this.#switchToShowToHide();
34
- break;
35
- }
30
+ case 'hide-to-show':
31
+ {
32
+ this.#onHideAnimationEnd();
33
+ break;
34
+ }
35
+ case 'show':
36
+ {
37
+ this.#switchToShowToHide();
38
+ break;
39
+ }
36
40
  }
37
41
  }
38
42
  interrupt() {
39
43
  switch (this.#state) {
40
- case "hide-to-show": {
41
- this.#onHideAnimationEnd();
42
- break;
43
- }
44
- case "show": {
45
- this.#switchToShowToHide(true, false);
46
- break;
47
- }
48
- case "show-to-hide": {
49
- this.#switchToShowToHide(true, false);
50
- break;
51
- }
44
+ case 'hide-to-show':
45
+ {
46
+ this.#onHideAnimationEnd();
47
+ break;
48
+ }
49
+ case 'show':
50
+ {
51
+ this.#switchToShowToHide(true, false);
52
+ break;
53
+ }
54
+ case 'show-to-hide':
55
+ {
56
+ this.#switchToShowToHide(true, false);
57
+ break;
58
+ }
52
59
  }
53
60
  }
54
61
  destroy() {
55
62
  switch (this.#state) {
56
- case "hide-to-show": {
57
- this.#onHideAnimationEnd();
58
- break;
59
- }
60
- case "show": {
61
- this.#switchToShowToHide(true, true);
62
- break;
63
- }
64
- case "show-to-hide": {
65
- this.#switchToShowToHide(true, true);
66
- break;
67
- }
68
- case "hide": {
69
- this.#onHideAnimationEnd();
70
- break;
71
- }
63
+ case 'hide-to-show':
64
+ {
65
+ this.#onHideAnimationEnd();
66
+ break;
67
+ }
68
+ case 'show':
69
+ {
70
+ this.#switchToShowToHide(true, true);
71
+ break;
72
+ }
73
+ case 'show-to-hide':
74
+ {
75
+ this.#switchToShowToHide(true, true);
76
+ break;
77
+ }
78
+ case 'hide':
79
+ {
80
+ this.#onHideAnimationEnd();
81
+ break;
82
+ }
72
83
  }
73
84
  }
74
85
  #switchToHideToShow() {
75
- this.#switchToState("hide-to-show");
86
+ this.#switchToState('hide-to-show');
76
87
  this.#options.onShowStart();
77
88
  if (this.#options.showDelay === 0) {
78
89
  this.#onSwitchToShow();
@@ -81,7 +92,7 @@ class TooltipState {
81
92
  }
82
93
  }
83
94
  #switchToShowToHide(skipDelay, skipHideAnimation) {
84
- this.#switchToState("show-to-hide");
95
+ this.#switchToState('show-to-hide');
85
96
  if (skipDelay === true || this.#options.hideDelay === 0) {
86
97
  this.#onShowToHideEnd(skipHideAnimation);
87
98
  } else {
@@ -89,11 +100,11 @@ class TooltipState {
89
100
  }
90
101
  }
91
102
  #onSwitchToShow = () => {
92
- this.#switchToState("show");
103
+ this.#switchToState('show');
93
104
  this.#options.onShowEnd();
94
105
  };
95
- #onShowToHideEnd = (skipHideAnimation) => {
96
- this.#switchToState("hide");
106
+ #onShowToHideEnd = skipHideAnimation => {
107
+ this.#switchToState('hide');
97
108
  this.#options.onHideStart();
98
109
  if (skipHideAnimation === true || this.#options.hideAnimationDuration === 0) {
99
110
  this.#onHideAnimationEnd();
@@ -102,7 +113,7 @@ class TooltipState {
102
113
  }
103
114
  };
104
115
  #onHideAnimationEnd = () => {
105
- this.#switchToState("hide");
116
+ this.#switchToState('hide');
106
117
  this.#options.onHideEnd();
107
118
  };
108
119
  #switchToState(nextState) {
@@ -112,7 +123,4 @@ class TooltipState {
112
123
  this.#timerId = null;
113
124
  }
114
125
  }
115
- }
116
- export {
117
- TooltipState
118
- };
126
+ }
@@ -1,4 +1,4 @@
1
- import type { NectaryComponentReactByType, NectaryComponentVanillaByType, TRect, NectaryComponentReact, NectaryComponentVanilla } from '../types';
1
+ import type { NectaryComponentReactByType, NectaryComponentVanillaByType, TRect } from '../types';
2
2
  export type TSinchTooltipOrientation = 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
3
3
  export type TSinchTooltipTextAlign = 'center' | 'right' | 'left';
4
4
  export type TSinchTooltipType = 'slow' | 'fast';
@@ -37,23 +37,3 @@ export type TSinchTooltip = {
37
37
  };
38
38
  export type TSinchTooltipElement = NectaryComponentVanillaByType<TSinchTooltip>;
39
39
  export type TSinchTooltipReact = NectaryComponentReactByType<TSinchTooltip>;
40
- declare global {
41
- interface NectaryComponentMap {
42
- 'sinch-tooltip': TSinchTooltip;
43
- }
44
- interface HTMLElementTagNameMap {
45
- 'sinch-tooltip': NectaryComponentVanilla<'sinch-tooltip'>;
46
- }
47
- namespace JSX {
48
- interface IntrinsicElements {
49
- 'sinch-tooltip': NectaryComponentReact<'sinch-tooltip'>;
50
- }
51
- }
52
- }
53
- declare module 'react' {
54
- namespace JSX {
55
- interface IntrinsicElements extends globalThis.JSX.IntrinsicElements {
56
- 'sinch-tooltip': NectaryComponentReact<'sinch-tooltip'>;
57
- }
58
- }
59
- }
package/tooltip/types.js CHANGED
@@ -1 +1 @@
1
-
1
+ export {};
package/tooltip/utils.js CHANGED
@@ -1,37 +1,18 @@
1
- const typeValues = ["fast", "slow"];
2
- const orientationValues = [
3
- "top",
4
- "bottom",
5
- "left",
6
- "right",
7
- "top-left",
8
- "top-right",
9
- "bottom-left",
10
- "bottom-right"
11
- ];
12
- const textAlignValues = [
13
- "right",
14
- "center",
15
- "left"
16
- ];
17
- const getPopOrientation = (orientation) => {
18
- if (orientation === "top") {
19
- return "top-center";
1
+ export const typeValues = ['fast', 'slow'];
2
+ export const orientationValues = ['top', 'bottom', 'left', 'right', 'top-left', 'top-right', 'bottom-left', 'bottom-right'];
3
+ export const textAlignValues = ['right', 'center', 'left'];
4
+ export const getPopOrientation = orientation => {
5
+ if (orientation === 'top') {
6
+ return 'top-center';
20
7
  }
21
- if (orientation === "bottom") {
22
- return "bottom-center";
8
+ if (orientation === 'bottom') {
9
+ return 'bottom-center';
23
10
  }
24
- if (orientation === "left") {
25
- return "center-left";
11
+ if (orientation === 'left') {
12
+ return 'center-left';
26
13
  }
27
- if (orientation === "right") {
28
- return "center-right";
14
+ if (orientation === 'right') {
15
+ return 'center-right';
29
16
  }
30
17
  return orientation;
31
- };
32
- export {
33
- getPopOrientation,
34
- orientationValues,
35
- textAlignValues,
36
- typeValues
37
- };
18
+ };
package/types.d.ts CHANGED
@@ -1,14 +1,31 @@
1
- import type { ReactifyEvents, WebComponentReactBaseProp, SafeSelect, CamelCaseify, RemoveReadonly, SetAttributes, ExtendEventListeners } from './utils/adapters';
2
- import type { CSSProperties } from 'react';
1
+ import type { HTMLAttributes, CSSProperties } from 'react'
2
+ import type { ReactifyEvents, WebComponentReactBaseProp, SafeSelect, CamelCaseify, RemoveReadonly, SetAttributes, ExtendEventListeners } from './utils/adapters'
3
+
3
4
  export type TRect = {
4
- x: number;
5
- y: number;
6
- width: number;
7
- height: number;
8
- };
9
- export type NectaryComponentVanillaByType<T extends NectaryComponentMap[keyof NectaryComponentMap]> = Omit<HTMLElement, 'addEventListener' | 'removeEventListener'> & ExtendEventListeners<Required<SafeSelect<T, 'events'>>> & SetAttributes<Required<RemoveReadonly<SafeSelect<T, 'props'>>>> & Required<CamelCaseify<SafeSelect<T, 'props'>>> & Required<SafeSelect<T, 'methods'>>;
10
- export type NectaryComponentReactByType<T extends NectaryComponentMap[keyof NectaryComponentMap]> = WebComponentReactBaseProp<NectaryComponentVanillaByType<T>> & ReactifyEvents<SafeSelect<T, 'events'>> & RemoveReadonly<SafeSelect<T, 'props'>> & {
5
+ x: number,
6
+ y: number,
7
+ width: number,
8
+ height: number,
9
+ }
10
+
11
+ export type NectaryComponentVanillaByType<T extends NectaryComponentMap[keyof NectaryComponentMap]> =
12
+ Omit<HTMLElement, 'addEventListener' | 'removeEventListener'> &
13
+ ExtendEventListeners<Required<SafeSelect<T, 'events'>>> &
14
+ SetAttributes<Required<RemoveReadonly<SafeSelect<T, 'props'>>>> &
15
+ Required<CamelCaseify<SafeSelect<T, 'props'>>> &
16
+ Required<SafeSelect<T, 'methods'>>
17
+
18
+ export type NectaryComponentReactByType<T extends NectaryComponentMap[keyof NectaryComponentMap]> =
19
+ WebComponentReactBaseProp<NectaryComponentVanillaByType<T>> &
20
+ ReactifyEvents<SafeSelect<T, 'events'>> &
21
+ RemoveReadonly<SafeSelect<T, 'props'>> &
22
+ {
11
23
  style?: Partial<SafeSelect<T, 'style'>> & CSSProperties;
12
- };
13
- export type NectaryComponentVanilla<K extends keyof NectaryComponentMap> = NectaryComponentVanillaByType<NectaryComponentMap[K]>;
14
- export type NectaryComponentReact<K extends keyof NectaryComponentMap> = NectaryComponentReactByType<NectaryComponentMap[K]>;
24
+ }
25
+
26
+
27
+ export type NectaryComponentVanilla<K extends keyof NectaryComponentMap> =
28
+ NectaryComponentVanillaByType<NectaryComponentMap[K]>
29
+
30
+ export type NectaryComponentReact<K extends keyof NectaryComponentMap> =
31
+ NectaryComponentReactByType<NectaryComponentMap[K]>
package/utils/adapters.js CHANGED
@@ -1 +1 @@
1
-
1
+ export {};