@hortonstudio/main 1.2.12 → 1.2.13

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 (490) hide show
  1. package/index.js +8 -8
  2. package/package.json +17 -6
  3. package/.claude/settings.local.json +0 -21
  4. package/animations/hero.js +0 -599
  5. package/animations/text.js +0 -369
  6. package/animations/transition.js +0 -57
  7. package/attributes-master/.changeset/README.md +0 -8
  8. package/attributes-master/.changeset/config.json +0 -11
  9. package/attributes-master/.gitattributes +0 -2
  10. package/attributes-master/.github/ISSUE_TEMPLATE/bug_report.md +0 -42
  11. package/attributes-master/.github/ISSUE_TEMPLATE/feature_request.md +0 -22
  12. package/attributes-master/.github/workflows/ci.yml +0 -66
  13. package/attributes-master/.github/workflows/release.yml +0 -40
  14. package/attributes-master/.prettierignore +0 -3
  15. package/attributes-master/.prettierrc +0 -8
  16. package/attributes-master/.vscode/extensions.json +0 -3
  17. package/attributes-master/.vscode/settings.json +0 -7
  18. package/attributes-master/CONTRIBUTING.md +0 -72
  19. package/attributes-master/LICENSE.md +0 -201
  20. package/attributes-master/README.md +0 -31
  21. package/attributes-master/eslint.config.js +0 -3
  22. package/attributes-master/package.json +0 -34
  23. package/attributes-master/packages/accordion/CHANGELOG.md +0 -89
  24. package/attributes-master/packages/accordion/README.md +0 -31
  25. package/attributes-master/packages/accordion/package.json +0 -25
  26. package/attributes-master/packages/accordion/src/actions/a11y.ts +0 -39
  27. package/attributes-master/packages/accordion/src/actions/classes.ts +0 -27
  28. package/attributes-master/packages/accordion/src/actions/content.ts +0 -42
  29. package/attributes-master/packages/accordion/src/actions/list.ts +0 -36
  30. package/attributes-master/packages/accordion/src/actions/query.ts +0 -27
  31. package/attributes-master/packages/accordion/src/actions/settings.ts +0 -61
  32. package/attributes-master/packages/accordion/src/factory.ts +0 -145
  33. package/attributes-master/packages/accordion/src/index.ts +0 -3
  34. package/attributes-master/packages/accordion/src/init.ts +0 -37
  35. package/attributes-master/packages/accordion/src/utils/constants.ts +0 -62
  36. package/attributes-master/packages/accordion/src/utils/helpers.ts +0 -5
  37. package/attributes-master/packages/accordion/src/utils/selectors.ts +0 -12
  38. package/attributes-master/packages/accordion/src/utils/types.ts +0 -23
  39. package/attributes-master/packages/accordion/tsconfig.json +0 -3
  40. package/attributes-master/packages/attributes/CHANGELOG.md +0 -564
  41. package/attributes-master/packages/attributes/README.md +0 -66
  42. package/attributes-master/packages/attributes/bin/build.ts +0 -107
  43. package/attributes-master/packages/attributes/bin/live-reload.js +0 -1
  44. package/attributes-master/packages/attributes/package.json +0 -77
  45. package/attributes-master/packages/attributes/playwright.config.ts +0 -89
  46. package/attributes-master/packages/attributes/src/attributes.ts +0 -153
  47. package/attributes-master/packages/attributes/src/load.ts +0 -125
  48. package/attributes-master/packages/attributes/tests/accordion.spec.ts +0 -137
  49. package/attributes-master/packages/attributes/tests/codehighlight.spec.ts +0 -23
  50. package/attributes-master/packages/attributes/tests/combobox.spec.ts +0 -321
  51. package/attributes-master/packages/attributes/tests/copyclip.spec.ts +0 -19
  52. package/attributes-master/packages/attributes/tests/displayvalues.spec.ts +0 -48
  53. package/attributes-master/packages/attributes/tests/favcustom.spec.ts +0 -23
  54. package/attributes-master/packages/attributes/tests/inject.spec.ts +0 -40
  55. package/attributes-master/packages/attributes/tests/inputactive.spec.ts +0 -77
  56. package/attributes-master/packages/attributes/tests/inputcounter.spec.ts +0 -83
  57. package/attributes-master/packages/attributes/tests/list.spec.ts +0 -800
  58. package/attributes-master/packages/attributes/tests/mirrorclick.spec.ts +0 -22
  59. package/attributes-master/packages/attributes/tests/mirrorinput.spec.ts +0 -37
  60. package/attributes-master/packages/attributes/tests/modal.spec.ts +0 -34
  61. package/attributes-master/packages/attributes/tests/numbercount.spec.ts +0 -40
  62. package/attributes-master/packages/attributes/tests/readtime.spec.ts +0 -19
  63. package/attributes-master/packages/attributes/tests/selectcustom.spec.ts +0 -51
  64. package/attributes-master/packages/attributes/tests/socialshare.spec.ts +0 -54
  65. package/attributes-master/packages/attributes/tests/starrating.spec.ts +0 -79
  66. package/attributes-master/packages/attributes/tests/toc.spec.ts +0 -38
  67. package/attributes-master/packages/attributes/tests/utils/index.ts +0 -16
  68. package/attributes-master/packages/attributes/tsconfig.json +0 -6
  69. package/attributes-master/packages/autovideo/CHANGELOG.md +0 -182
  70. package/attributes-master/packages/autovideo/README.md +0 -31
  71. package/attributes-master/packages/autovideo/package.json +0 -22
  72. package/attributes-master/packages/autovideo/src/index.ts +0 -3
  73. package/attributes-master/packages/autovideo/src/init.ts +0 -52
  74. package/attributes-master/packages/autovideo/src/types.ts +0 -5
  75. package/attributes-master/packages/autovideo/src/utils/constants.ts +0 -4
  76. package/attributes-master/packages/autovideo/tsconfig.json +0 -3
  77. package/attributes-master/packages/codehighlight/CHANGELOG.md +0 -185
  78. package/attributes-master/packages/codehighlight/README.md +0 -27
  79. package/attributes-master/packages/codehighlight/package.json +0 -23
  80. package/attributes-master/packages/codehighlight/src/actions/import.ts +0 -50
  81. package/attributes-master/packages/codehighlight/src/index.ts +0 -3
  82. package/attributes-master/packages/codehighlight/src/init.ts +0 -53
  83. package/attributes-master/packages/codehighlight/src/utils/constants.ts +0 -24
  84. package/attributes-master/packages/codehighlight/src/utils/selectors.ts +0 -5
  85. package/attributes-master/packages/codehighlight/src/utils/themes.ts +0 -202
  86. package/attributes-master/packages/codehighlight/tsconfig.json +0 -3
  87. package/attributes-master/packages/combobox/CHANGELOG.md +0 -99
  88. package/attributes-master/packages/combobox/README.md +0 -27
  89. package/attributes-master/packages/combobox/package.json +0 -23
  90. package/attributes-master/packages/combobox/src/actions/a11y.ts +0 -29
  91. package/attributes-master/packages/combobox/src/actions/body/index.ts +0 -12
  92. package/attributes-master/packages/combobox/src/actions/clearDropdown/index.ts +0 -37
  93. package/attributes-master/packages/combobox/src/actions/dropdownList/index.ts +0 -220
  94. package/attributes-master/packages/combobox/src/actions/dropdownToggle/index.ts +0 -34
  95. package/attributes-master/packages/combobox/src/actions/events.ts +0 -75
  96. package/attributes-master/packages/combobox/src/actions/input/index.ts +0 -235
  97. package/attributes-master/packages/combobox/src/actions/observe.ts +0 -158
  98. package/attributes-master/packages/combobox/src/actions/populate.ts +0 -97
  99. package/attributes-master/packages/combobox/src/actions/selectElement/index.ts +0 -23
  100. package/attributes-master/packages/combobox/src/actions/settings.ts +0 -134
  101. package/attributes-master/packages/combobox/src/actions/state.ts +0 -34
  102. package/attributes-master/packages/combobox/src/index.ts +0 -3
  103. package/attributes-master/packages/combobox/src/init.ts +0 -52
  104. package/attributes-master/packages/combobox/src/utils/constants.ts +0 -48
  105. package/attributes-master/packages/combobox/src/utils/dropdowns.ts +0 -120
  106. package/attributes-master/packages/combobox/src/utils/index.ts +0 -1
  107. package/attributes-master/packages/combobox/src/utils/selectors.ts +0 -9
  108. package/attributes-master/packages/combobox/src/utils/types.ts +0 -14
  109. package/attributes-master/packages/combobox/tsconfig.json +0 -3
  110. package/attributes-master/packages/copyclip/CHANGELOG.md +0 -213
  111. package/attributes-master/packages/copyclip/README.md +0 -27
  112. package/attributes-master/packages/copyclip/package.json +0 -23
  113. package/attributes-master/packages/copyclip/src/factory.ts +0 -67
  114. package/attributes-master/packages/copyclip/src/index.ts +0 -3
  115. package/attributes-master/packages/copyclip/src/init.ts +0 -68
  116. package/attributes-master/packages/copyclip/src/utils/constants.ts +0 -40
  117. package/attributes-master/packages/copyclip/src/utils/selectors.ts +0 -9
  118. package/attributes-master/packages/copyclip/tsconfig.json +0 -3
  119. package/attributes-master/packages/displayvalues/CHANGELOG.md +0 -164
  120. package/attributes-master/packages/displayvalues/README.md +0 -27
  121. package/attributes-master/packages/displayvalues/package.json +0 -22
  122. package/attributes-master/packages/displayvalues/src/actions/collect.ts +0 -17
  123. package/attributes-master/packages/displayvalues/src/actions/events.ts +0 -22
  124. package/attributes-master/packages/displayvalues/src/actions/sync.ts +0 -23
  125. package/attributes-master/packages/displayvalues/src/index.ts +0 -3
  126. package/attributes-master/packages/displayvalues/src/init.ts +0 -31
  127. package/attributes-master/packages/displayvalues/src/utils/constants.ts +0 -20
  128. package/attributes-master/packages/displayvalues/src/utils/selectors.ts +0 -9
  129. package/attributes-master/packages/displayvalues/src/utils/stores.ts +0 -3
  130. package/attributes-master/packages/displayvalues/tsconfig.json +0 -3
  131. package/attributes-master/packages/docs/CHANGELOG.md +0 -108
  132. package/attributes-master/packages/docs/README.md +0 -3
  133. package/attributes-master/packages/docs/bin/build.js +0 -92
  134. package/attributes-master/packages/docs/bin/live-reload.js +0 -1
  135. package/attributes-master/packages/docs/package.json +0 -40
  136. package/attributes-master/packages/docs/src/copy.ts +0 -260
  137. package/attributes-master/packages/docs/src/x-ray.ts +0 -377
  138. package/attributes-master/packages/docs/tsconfig.json +0 -3
  139. package/attributes-master/packages/favcustom/CHANGELOG.md +0 -194
  140. package/attributes-master/packages/favcustom/README.md +0 -27
  141. package/attributes-master/packages/favcustom/package.json +0 -22
  142. package/attributes-master/packages/favcustom/src/index.ts +0 -3
  143. package/attributes-master/packages/favcustom/src/init.ts +0 -30
  144. package/attributes-master/packages/favcustom/src/utils/constants.ts +0 -10
  145. package/attributes-master/packages/favcustom/src/utils/selectors.ts +0 -5
  146. package/attributes-master/packages/favcustom/tsconfig.json +0 -3
  147. package/attributes-master/packages/formsubmit/CHANGELOG.md +0 -161
  148. package/attributes-master/packages/formsubmit/README.md +0 -51
  149. package/attributes-master/packages/formsubmit/package.json +0 -22
  150. package/attributes-master/packages/formsubmit/src/actions/redirect.ts +0 -9
  151. package/attributes-master/packages/formsubmit/src/actions/reset.ts +0 -49
  152. package/attributes-master/packages/formsubmit/src/actions/submit.ts +0 -34
  153. package/attributes-master/packages/formsubmit/src/components/Form.ts +0 -231
  154. package/attributes-master/packages/formsubmit/src/factory.ts +0 -62
  155. package/attributes-master/packages/formsubmit/src/index.ts +0 -3
  156. package/attributes-master/packages/formsubmit/src/init.ts +0 -24
  157. package/attributes-master/packages/formsubmit/src/utils/attributes.ts +0 -19
  158. package/attributes-master/packages/formsubmit/src/utils/constants.ts +0 -89
  159. package/attributes-master/packages/formsubmit/src/utils/dom.ts +0 -76
  160. package/attributes-master/packages/formsubmit/src/utils/selectors.ts +0 -9
  161. package/attributes-master/packages/formsubmit/src/utils/types.ts +0 -7
  162. package/attributes-master/packages/formsubmit/tsconfig.json +0 -3
  163. package/attributes-master/packages/inject/CHANGELOG.md +0 -117
  164. package/attributes-master/packages/inject/README.md +0 -60
  165. package/attributes-master/packages/inject/package.json +0 -22
  166. package/attributes-master/packages/inject/src/actions/collect.ts +0 -125
  167. package/attributes-master/packages/inject/src/actions/css.ts +0 -27
  168. package/attributes-master/packages/inject/src/actions/prefetch.ts +0 -44
  169. package/attributes-master/packages/inject/src/factory.ts +0 -123
  170. package/attributes-master/packages/inject/src/index.ts +0 -3
  171. package/attributes-master/packages/inject/src/init.ts +0 -22
  172. package/attributes-master/packages/inject/src/utils/constants.ts +0 -89
  173. package/attributes-master/packages/inject/src/utils/helpers.ts +0 -36
  174. package/attributes-master/packages/inject/src/utils/selectors.ts +0 -9
  175. package/attributes-master/packages/inject/src/utils/types.ts +0 -16
  176. package/attributes-master/packages/inject/tsconfig.json +0 -3
  177. package/attributes-master/packages/inputactive/CHANGELOG.md +0 -58
  178. package/attributes-master/packages/inputactive/README.md +0 -25
  179. package/attributes-master/packages/inputactive/package.json +0 -22
  180. package/attributes-master/packages/inputactive/src/actions/classes.ts +0 -43
  181. package/attributes-master/packages/inputactive/src/factory.ts +0 -24
  182. package/attributes-master/packages/inputactive/src/index.ts +0 -3
  183. package/attributes-master/packages/inputactive/src/init.ts +0 -18
  184. package/attributes-master/packages/inputactive/src/utils/constants.ts +0 -13
  185. package/attributes-master/packages/inputactive/src/utils/selectors.ts +0 -5
  186. package/attributes-master/packages/inputactive/tsconfig.json +0 -3
  187. package/attributes-master/packages/inputcounter/CHANGELOG.md +0 -110
  188. package/attributes-master/packages/inputcounter/README.md +0 -25
  189. package/attributes-master/packages/inputcounter/package.json +0 -22
  190. package/attributes-master/packages/inputcounter/src/actions/a11y.ts +0 -23
  191. package/attributes-master/packages/inputcounter/src/actions/buttons.ts +0 -61
  192. package/attributes-master/packages/inputcounter/src/actions/input.ts +0 -31
  193. package/attributes-master/packages/inputcounter/src/actions/style.ts +0 -12
  194. package/attributes-master/packages/inputcounter/src/factory.ts +0 -51
  195. package/attributes-master/packages/inputcounter/src/index.ts +0 -3
  196. package/attributes-master/packages/inputcounter/src/init.ts +0 -22
  197. package/attributes-master/packages/inputcounter/src/utils/constants.ts +0 -59
  198. package/attributes-master/packages/inputcounter/src/utils/selectors.ts +0 -9
  199. package/attributes-master/packages/inputcounter/tsconfig.json +0 -3
  200. package/attributes-master/packages/list/CHANGELOG.md +0 -185
  201. package/attributes-master/packages/list/README.md +0 -331
  202. package/attributes-master/packages/list/package.json +0 -37
  203. package/attributes-master/packages/list/src/combine/index.ts +0 -38
  204. package/attributes-master/packages/list/src/components/List.ts +0 -861
  205. package/attributes-master/packages/list/src/components/ListItem.ts +0 -229
  206. package/attributes-master/packages/list/src/components/index.ts +0 -2
  207. package/attributes-master/packages/list/src/factory.ts +0 -130
  208. package/attributes-master/packages/list/src/filter/dynamic/conditions.ts +0 -639
  209. package/attributes-master/packages/list/src/filter/dynamic/groups.ts +0 -221
  210. package/attributes-master/packages/list/src/filter/dynamic/index.ts +0 -119
  211. package/attributes-master/packages/list/src/filter/dynamic/utils.ts +0 -44
  212. package/attributes-master/packages/list/src/filter/elements.ts +0 -93
  213. package/attributes-master/packages/list/src/filter/filter.ts +0 -118
  214. package/attributes-master/packages/list/src/filter/filter.worker.ts +0 -152
  215. package/attributes-master/packages/list/src/filter/index.ts +0 -94
  216. package/attributes-master/packages/list/src/filter/standard/conditions.ts +0 -123
  217. package/attributes-master/packages/list/src/filter/standard/facets.ts +0 -253
  218. package/attributes-master/packages/list/src/filter/standard/index.ts +0 -176
  219. package/attributes-master/packages/list/src/filter/standard/query.ts +0 -111
  220. package/attributes-master/packages/list/src/filter/tags.ts +0 -314
  221. package/attributes-master/packages/list/src/filter/types.ts +0 -62
  222. package/attributes-master/packages/list/src/filter/utils.ts +0 -126
  223. package/attributes-master/packages/list/src/index.ts +0 -4
  224. package/attributes-master/packages/list/src/init.ts +0 -38
  225. package/attributes-master/packages/list/src/load/all.ts +0 -27
  226. package/attributes-master/packages/list/src/load/elements.ts +0 -39
  227. package/attributes-master/packages/list/src/load/index.ts +0 -63
  228. package/attributes-master/packages/list/src/load/infinite.ts +0 -79
  229. package/attributes-master/packages/list/src/load/load.ts +0 -191
  230. package/attributes-master/packages/list/src/load/more.ts +0 -97
  231. package/attributes-master/packages/list/src/load/pagination.ts +0 -402
  232. package/attributes-master/packages/list/src/nest/index.ts +0 -198
  233. package/attributes-master/packages/list/src/prevnext/index.ts +0 -98
  234. package/attributes-master/packages/list/src/select/index.ts +0 -56
  235. package/attributes-master/packages/list/src/slider/index.ts +0 -62
  236. package/attributes-master/packages/list/src/sort/buttons.ts +0 -96
  237. package/attributes-master/packages/list/src/sort/dropdown.ts +0 -179
  238. package/attributes-master/packages/list/src/sort/index.ts +0 -81
  239. package/attributes-master/packages/list/src/sort/query.ts +0 -63
  240. package/attributes-master/packages/list/src/sort/select.ts +0 -67
  241. package/attributes-master/packages/list/src/sort/sort.ts +0 -79
  242. package/attributes-master/packages/list/src/sort/types.ts +0 -28
  243. package/attributes-master/packages/list/src/static/index.ts +0 -73
  244. package/attributes-master/packages/list/src/tabs/index.ts +0 -97
  245. package/attributes-master/packages/list/src/utils/constants.ts +0 -728
  246. package/attributes-master/packages/list/src/utils/dom.ts +0 -108
  247. package/attributes-master/packages/list/src/utils/pagination.ts +0 -14
  248. package/attributes-master/packages/list/src/utils/selectors.ts +0 -18
  249. package/attributes-master/packages/list/src/utils/store.ts +0 -5
  250. package/attributes-master/packages/list/tsconfig.json +0 -3
  251. package/attributes-master/packages/mirrorclick/CHANGELOG.md +0 -171
  252. package/attributes-master/packages/mirrorclick/README.md +0 -25
  253. package/attributes-master/packages/mirrorclick/package.json +0 -22
  254. package/attributes-master/packages/mirrorclick/src/index.ts +0 -3
  255. package/attributes-master/packages/mirrorclick/src/init.ts +0 -35
  256. package/attributes-master/packages/mirrorclick/src/utils/constants.ts +0 -20
  257. package/attributes-master/packages/mirrorclick/src/utils/selectors.ts +0 -9
  258. package/attributes-master/packages/mirrorclick/tsconfig.json +0 -3
  259. package/attributes-master/packages/mirrorinput/CHANGELOG.md +0 -172
  260. package/attributes-master/packages/mirrorinput/README.md +0 -25
  261. package/attributes-master/packages/mirrorinput/package.json +0 -22
  262. package/attributes-master/packages/mirrorinput/src/index.ts +0 -3
  263. package/attributes-master/packages/mirrorinput/src/init.ts +0 -48
  264. package/attributes-master/packages/mirrorinput/src/utils/constants.ts +0 -15
  265. package/attributes-master/packages/mirrorinput/src/utils/selectors.ts +0 -9
  266. package/attributes-master/packages/mirrorinput/tsconfig.json +0 -3
  267. package/attributes-master/packages/modal/CHANGELOG.md +0 -94
  268. package/attributes-master/packages/modal/README.md +0 -29
  269. package/attributes-master/packages/modal/package.json +0 -23
  270. package/attributes-master/packages/modal/src/actions/a11y.ts +0 -46
  271. package/attributes-master/packages/modal/src/actions/modal.ts +0 -164
  272. package/attributes-master/packages/modal/src/actions/settings.ts +0 -21
  273. package/attributes-master/packages/modal/src/factory.ts +0 -26
  274. package/attributes-master/packages/modal/src/index.ts +0 -3
  275. package/attributes-master/packages/modal/src/init.ts +0 -22
  276. package/attributes-master/packages/modal/src/utils/constants.ts +0 -54
  277. package/attributes-master/packages/modal/src/utils/selectors.ts +0 -9
  278. package/attributes-master/packages/modal/src/utils/types.ts +0 -12
  279. package/attributes-master/packages/modal/tsconfig.json +0 -3
  280. package/attributes-master/packages/numbercount/CHANGELOG.md +0 -90
  281. package/attributes-master/packages/numbercount/README.md +0 -27
  282. package/attributes-master/packages/numbercount/package.json +0 -23
  283. package/attributes-master/packages/numbercount/src/actions/a11y.ts +0 -26
  284. package/attributes-master/packages/numbercount/src/actions/animate.ts +0 -43
  285. package/attributes-master/packages/numbercount/src/actions/observe.ts +0 -44
  286. package/attributes-master/packages/numbercount/src/factory.ts +0 -31
  287. package/attributes-master/packages/numbercount/src/index.ts +0 -3
  288. package/attributes-master/packages/numbercount/src/init.ts +0 -22
  289. package/attributes-master/packages/numbercount/src/utils/constants.ts +0 -40
  290. package/attributes-master/packages/numbercount/src/utils/helpers.ts +0 -31
  291. package/attributes-master/packages/numbercount/src/utils/selectors.ts +0 -9
  292. package/attributes-master/packages/numbercount/tsconfig.json +0 -3
  293. package/attributes-master/packages/queryparam/CHANGELOG.md +0 -118
  294. package/attributes-master/packages/queryparam/README.md +0 -25
  295. package/attributes-master/packages/queryparam/package.json +0 -22
  296. package/attributes-master/packages/queryparam/src/factory.ts +0 -51
  297. package/attributes-master/packages/queryparam/src/index.ts +0 -3
  298. package/attributes-master/packages/queryparam/src/init.ts +0 -40
  299. package/attributes-master/packages/queryparam/src/utils/constants.ts +0 -18
  300. package/attributes-master/packages/queryparam/src/utils/selectors.ts +0 -5
  301. package/attributes-master/packages/queryparam/tsconfig.json +0 -3
  302. package/attributes-master/packages/rangeslider/CHANGELOG.md +0 -236
  303. package/attributes-master/packages/rangeslider/README.md +0 -95
  304. package/attributes-master/packages/rangeslider/package.json +0 -23
  305. package/attributes-master/packages/rangeslider/src/actions/a11y.ts +0 -21
  306. package/attributes-master/packages/rangeslider/src/actions/events.ts +0 -9
  307. package/attributes-master/packages/rangeslider/src/actions/settings.ts +0 -97
  308. package/attributes-master/packages/rangeslider/src/actions/styles.ts +0 -10
  309. package/attributes-master/packages/rangeslider/src/actions/values.ts +0 -47
  310. package/attributes-master/packages/rangeslider/src/components/Fill.ts +0 -70
  311. package/attributes-master/packages/rangeslider/src/components/Handle.ts +0 -281
  312. package/attributes-master/packages/rangeslider/src/factory.ts +0 -100
  313. package/attributes-master/packages/rangeslider/src/index.ts +0 -3
  314. package/attributes-master/packages/rangeslider/src/init.ts +0 -194
  315. package/attributes-master/packages/rangeslider/src/utils/constants.ts +0 -87
  316. package/attributes-master/packages/rangeslider/src/utils/selectors.ts +0 -9
  317. package/attributes-master/packages/rangeslider/src/utils/types.ts +0 -6
  318. package/attributes-master/packages/rangeslider/tsconfig.json +0 -3
  319. package/attributes-master/packages/readtime/CHANGELOG.md +0 -108
  320. package/attributes-master/packages/readtime/README.md +0 -25
  321. package/attributes-master/packages/readtime/package.json +0 -22
  322. package/attributes-master/packages/readtime/src/factory.ts +0 -21
  323. package/attributes-master/packages/readtime/src/index.ts +0 -3
  324. package/attributes-master/packages/readtime/src/init.ts +0 -19
  325. package/attributes-master/packages/readtime/src/utils/constants.ts +0 -33
  326. package/attributes-master/packages/readtime/src/utils/selectors.ts +0 -9
  327. package/attributes-master/packages/readtime/tsconfig.json +0 -3
  328. package/attributes-master/packages/removequery/CHANGELOG.md +0 -8
  329. package/attributes-master/packages/removequery/README.md +0 -25
  330. package/attributes-master/packages/removequery/package.json +0 -22
  331. package/attributes-master/packages/removequery/src/index.ts +0 -3
  332. package/attributes-master/packages/removequery/src/init.ts +0 -18
  333. package/attributes-master/packages/removequery/src/utils/constants.ts +0 -5
  334. package/attributes-master/packages/removequery/tsconfig.json +0 -3
  335. package/attributes-master/packages/scrolldisable/CHANGELOG.md +0 -164
  336. package/attributes-master/packages/scrolldisable/README.md +0 -29
  337. package/attributes-master/packages/scrolldisable/package.json +0 -27
  338. package/attributes-master/packages/scrolldisable/src/click.ts +0 -40
  339. package/attributes-master/packages/scrolldisable/src/display.ts +0 -117
  340. package/attributes-master/packages/scrolldisable/src/index.ts +0 -3
  341. package/attributes-master/packages/scrolldisable/src/init.ts +0 -36
  342. package/attributes-master/packages/scrolldisable/src/scroll.ts +0 -63
  343. package/attributes-master/packages/scrolldisable/src/utils/constants.ts +0 -56
  344. package/attributes-master/packages/scrolldisable/src/utils/selectors.ts +0 -6
  345. package/attributes-master/packages/scrolldisable/tsconfig.json +0 -3
  346. package/attributes-master/packages/selectcustom/CHANGELOG.md +0 -242
  347. package/attributes-master/packages/selectcustom/README.md +0 -25
  348. package/attributes-master/packages/selectcustom/package.json +0 -23
  349. package/attributes-master/packages/selectcustom/src/actions/a11y.ts +0 -29
  350. package/attributes-master/packages/selectcustom/src/actions/events.ts +0 -159
  351. package/attributes-master/packages/selectcustom/src/actions/observe.ts +0 -83
  352. package/attributes-master/packages/selectcustom/src/actions/populate.ts +0 -67
  353. package/attributes-master/packages/selectcustom/src/actions/settings.ts +0 -68
  354. package/attributes-master/packages/selectcustom/src/actions/state.ts +0 -41
  355. package/attributes-master/packages/selectcustom/src/index.ts +0 -3
  356. package/attributes-master/packages/selectcustom/src/init.ts +0 -51
  357. package/attributes-master/packages/selectcustom/src/utils/constants.ts +0 -34
  358. package/attributes-master/packages/selectcustom/src/utils/selectors.ts +0 -9
  359. package/attributes-master/packages/selectcustom/src/utils/types.ts +0 -14
  360. package/attributes-master/packages/selectcustom/tsconfig.json +0 -3
  361. package/attributes-master/packages/sliderdots/CHANGELOG.md +0 -220
  362. package/attributes-master/packages/sliderdots/README.md +0 -27
  363. package/attributes-master/packages/sliderdots/package.json +0 -22
  364. package/attributes-master/packages/sliderdots/src/actions/events.ts +0 -26
  365. package/attributes-master/packages/sliderdots/src/actions/observe.ts +0 -40
  366. package/attributes-master/packages/sliderdots/src/actions/populate.ts +0 -46
  367. package/attributes-master/packages/sliderdots/src/actions/sync.ts +0 -28
  368. package/attributes-master/packages/sliderdots/src/actions/wait.ts +0 -28
  369. package/attributes-master/packages/sliderdots/src/factory.ts +0 -57
  370. package/attributes-master/packages/sliderdots/src/index.ts +0 -3
  371. package/attributes-master/packages/sliderdots/src/init.ts +0 -30
  372. package/attributes-master/packages/sliderdots/src/utils/constants.ts +0 -33
  373. package/attributes-master/packages/sliderdots/src/utils/selectors.ts +0 -9
  374. package/attributes-master/packages/sliderdots/src/utils/types.ts +0 -7
  375. package/attributes-master/packages/sliderdots/tsconfig.json +0 -3
  376. package/attributes-master/packages/smartlightbox/CHANGELOG.md +0 -203
  377. package/attributes-master/packages/smartlightbox/README.md +0 -25
  378. package/attributes-master/packages/smartlightbox/package.json +0 -22
  379. package/attributes-master/packages/smartlightbox/src/actions/collect.ts +0 -15
  380. package/attributes-master/packages/smartlightbox/src/actions/move.ts +0 -25
  381. package/attributes-master/packages/smartlightbox/src/index.ts +0 -3
  382. package/attributes-master/packages/smartlightbox/src/init.ts +0 -61
  383. package/attributes-master/packages/smartlightbox/src/utils/constants.ts +0 -31
  384. package/attributes-master/packages/smartlightbox/src/utils/selectors.ts +0 -9
  385. package/attributes-master/packages/smartlightbox/tsconfig.json +0 -3
  386. package/attributes-master/packages/socialshare/CHANGELOG.md +0 -170
  387. package/attributes-master/packages/socialshare/README.md +0 -25
  388. package/attributes-master/packages/socialshare/package.json +0 -25
  389. package/attributes-master/packages/socialshare/src/actions/collect.ts +0 -93
  390. package/attributes-master/packages/socialshare/src/actions/share.ts +0 -91
  391. package/attributes-master/packages/socialshare/src/actions/trigger.ts +0 -46
  392. package/attributes-master/packages/socialshare/src/factory.ts +0 -149
  393. package/attributes-master/packages/socialshare/src/index.ts +0 -3
  394. package/attributes-master/packages/socialshare/src/init.ts +0 -35
  395. package/attributes-master/packages/socialshare/src/utils/constants.ts +0 -94
  396. package/attributes-master/packages/socialshare/src/utils/dom.ts +0 -8
  397. package/attributes-master/packages/socialshare/src/utils/selectors.ts +0 -6
  398. package/attributes-master/packages/socialshare/src/utils/stores.ts +0 -10
  399. package/attributes-master/packages/socialshare/src/utils/types.ts +0 -34
  400. package/attributes-master/packages/socialshare/tsconfig.json +0 -3
  401. package/attributes-master/packages/starrating/CHANGELOG.md +0 -70
  402. package/attributes-master/packages/starrating/README.md +0 -25
  403. package/attributes-master/packages/starrating/package.json +0 -22
  404. package/attributes-master/packages/starrating/src/actions/classes.ts +0 -41
  405. package/attributes-master/packages/starrating/src/actions/events.ts +0 -80
  406. package/attributes-master/packages/starrating/src/factory.ts +0 -24
  407. package/attributes-master/packages/starrating/src/index.ts +0 -3
  408. package/attributes-master/packages/starrating/src/init.ts +0 -24
  409. package/attributes-master/packages/starrating/src/utils/constants.ts +0 -20
  410. package/attributes-master/packages/starrating/src/utils/helpers.ts +0 -63
  411. package/attributes-master/packages/starrating/src/utils/selectors.ts +0 -9
  412. package/attributes-master/packages/starrating/tsconfig.json +0 -3
  413. package/attributes-master/packages/template/README.md +0 -25
  414. package/attributes-master/packages/template/package.json +0 -22
  415. package/attributes-master/packages/template/src/actions/console.ts +0 -4
  416. package/attributes-master/packages/template/src/index.ts +0 -3
  417. package/attributes-master/packages/template/src/init.ts +0 -14
  418. package/attributes-master/packages/template/src/utils/constants.ts +0 -18
  419. package/attributes-master/packages/template/src/utils/selectors.ts +0 -5
  420. package/attributes-master/packages/template/tsconfig.json +0 -3
  421. package/attributes-master/packages/toc/CHANGELOG.md +0 -192
  422. package/attributes-master/packages/toc/README.md +0 -25
  423. package/attributes-master/packages/toc/package.json +0 -23
  424. package/attributes-master/packages/toc/src/actions/collect.ts +0 -136
  425. package/attributes-master/packages/toc/src/actions/create.ts +0 -44
  426. package/attributes-master/packages/toc/src/actions/events.ts +0 -29
  427. package/attributes-master/packages/toc/src/actions/observe.ts +0 -31
  428. package/attributes-master/packages/toc/src/actions/populate.ts +0 -68
  429. package/attributes-master/packages/toc/src/actions/prepare.ts +0 -25
  430. package/attributes-master/packages/toc/src/actions/scroll.ts +0 -33
  431. package/attributes-master/packages/toc/src/components/TOCItem.ts +0 -88
  432. package/attributes-master/packages/toc/src/factory.ts +0 -47
  433. package/attributes-master/packages/toc/src/index.ts +0 -3
  434. package/attributes-master/packages/toc/src/init.ts +0 -37
  435. package/attributes-master/packages/toc/src/utils/constants.ts +0 -55
  436. package/attributes-master/packages/toc/src/utils/helpers.ts +0 -23
  437. package/attributes-master/packages/toc/src/utils/selectors.ts +0 -6
  438. package/attributes-master/packages/toc/src/utils/types.ts +0 -21
  439. package/attributes-master/packages/toc/tsconfig.json +0 -3
  440. package/attributes-master/packages/utils/CHANGELOG.md +0 -43
  441. package/attributes-master/packages/utils/package.json +0 -27
  442. package/attributes-master/packages/utils/src/animations/factory.ts +0 -100
  443. package/attributes-master/packages/utils/src/animations/index.ts +0 -73
  444. package/attributes-master/packages/utils/src/animations/types.ts +0 -37
  445. package/attributes-master/packages/utils/src/components/Interaction.ts +0 -79
  446. package/attributes-master/packages/utils/src/components/Renderer.ts +0 -59
  447. package/attributes-master/packages/utils/src/components/index.ts +0 -2
  448. package/attributes-master/packages/utils/src/constants/a11y.ts +0 -50
  449. package/attributes-master/packages/utils/src/constants/attributes.ts +0 -57
  450. package/attributes-master/packages/utils/src/constants/index.ts +0 -5
  451. package/attributes-master/packages/utils/src/constants/keyboard.ts +0 -10
  452. package/attributes-master/packages/utils/src/constants/webflow.ts +0 -74
  453. package/attributes-master/packages/utils/src/helpers/dates.ts +0 -17
  454. package/attributes-master/packages/utils/src/helpers/dom.ts +0 -82
  455. package/attributes-master/packages/utils/src/helpers/events.ts +0 -59
  456. package/attributes-master/packages/utils/src/helpers/fetch.ts +0 -217
  457. package/attributes-master/packages/utils/src/helpers/forms.ts +0 -238
  458. package/attributes-master/packages/utils/src/helpers/guards.ts +0 -138
  459. package/attributes-master/packages/utils/src/helpers/index.ts +0 -11
  460. package/attributes-master/packages/utils/src/helpers/numbers.ts +0 -86
  461. package/attributes-master/packages/utils/src/helpers/selectors.ts +0 -249
  462. package/attributes-master/packages/utils/src/helpers/strings.ts +0 -19
  463. package/attributes-master/packages/utils/src/helpers/wait.ts +0 -36
  464. package/attributes-master/packages/utils/src/helpers/webflow.ts +0 -117
  465. package/attributes-master/packages/utils/src/index.ts +0 -5
  466. package/attributes-master/packages/utils/src/types/core.ts +0 -100
  467. package/attributes-master/packages/utils/src/types/dom.ts +0 -31
  468. package/attributes-master/packages/utils/src/types/index.ts +0 -4
  469. package/attributes-master/packages/utils/src/types/utils.ts +0 -20
  470. package/attributes-master/packages/utils/src/types/webflow.ts +0 -147
  471. package/attributes-master/packages/utils/tsconfig.json +0 -3
  472. package/attributes-master/packages/videohls/CHANGELOG.md +0 -76
  473. package/attributes-master/packages/videohls/README.md +0 -27
  474. package/attributes-master/packages/videohls/package.json +0 -26
  475. package/attributes-master/packages/videohls/src/actions/list.ts +0 -23
  476. package/attributes-master/packages/videohls/src/actions/video.ts +0 -44
  477. package/attributes-master/packages/videohls/src/index.ts +0 -3
  478. package/attributes-master/packages/videohls/src/init.ts +0 -28
  479. package/attributes-master/packages/videohls/src/utils/constants.ts +0 -12
  480. package/attributes-master/packages/videohls/src/utils/selectors.ts +0 -5
  481. package/attributes-master/packages/videohls/src/utils/stores.ts +0 -3
  482. package/attributes-master/packages/videohls/tsconfig.json +0 -3
  483. package/attributes-master/pnpm-lock.yaml +0 -3317
  484. package/attributes-master/pnpm-workspace.yaml +0 -3
  485. package/attributes-master/tsconfig.json +0 -6
  486. package/autoInit/smooth-scroll.js +0 -89
  487. package/debug-version.html +0 -37
  488. package/utils/navbar.js +0 -214
  489. package/utils/scroll-progress.js +0 -29
  490. package/utils/toc.js +0 -77
@@ -1,99 +0,0 @@
1
- # @finsweet/attributes-combobox
2
-
3
- ## 2.0.7
4
-
5
- ### Patch Changes
6
-
7
- - Updated dependencies [2af0bad]
8
- - @finsweet/attributes-utils@0.1.0
9
-
10
- ## 2.0.6
11
-
12
- ### Patch Changes
13
-
14
- - Updated dependencies [378d74d]
15
- - @finsweet/attributes-utils@0.0.6
16
-
17
- ## 2.0.5
18
-
19
- ### Patch Changes
20
-
21
- - Updated dependencies [01973d8]
22
- - @finsweet/attributes-utils@0.0.5
23
-
24
- ## 2.0.4
25
-
26
- ### Patch Changes
27
-
28
- - Updated dependencies [deef758]
29
- - @finsweet/attributes-utils@0.0.4
30
-
31
- ## 2.0.3
32
-
33
- ### Patch Changes
34
-
35
- - Updated dependencies [d21cbca]
36
- - @finsweet/attributes-utils@0.0.3
37
-
38
- ## 2.0.2
39
-
40
- ### Patch Changes
41
-
42
- - Updated dependencies [c7b544d]
43
- - @finsweet/attributes-utils@0.0.2
44
-
45
- ## 2.0.1
46
-
47
- ### Patch Changes
48
-
49
- - b56e5e5: rename fsAttribute in places of usage to finsweetAttribute
50
- - Updated dependencies [b56e5e5]
51
- - @finsweet/attributes-utils@0.0.1
52
-
53
- ## 2.0.0
54
-
55
- ### Major Changes
56
-
57
- - 589bd31: combobox: prepared for v2 release
58
-
59
- ## 1.0.6
60
-
61
- ### Patch Changes
62
-
63
- - 358dcc88: preventclear - if true this attribute will retain combobox input value when user types a value that does not exist in the options
64
-
65
- ## 1.0.5
66
-
67
- ### Patch Changes
68
-
69
- - 1cfbca90: Update examples data and use clear attribute value inplace of option-reset, reset will be used as a fallback, may be removed completely in future.
70
-
71
- ## 1.0.4
72
-
73
- ### Patch Changes
74
-
75
- - f8dfa119: Update combobox clear icon to `fs-combobox-element="clear"` instead of `fs-combobox-element="option-reset"` and also fix arrow down action when searching results.
76
-
77
- ## 1.0.3
78
-
79
- ### Patch Changes
80
-
81
- - 27807bca: revert to mousemove event when scrolling
82
-
83
- ## 1.0.2
84
-
85
- ### Patch Changes
86
-
87
- - 5e57f6b9: Update combobox default settings to remove unused variables, updated mouse and keyboard event listeners and renamed combobox clear icon from fs-combobox-element="clear" to fs-combobox-element="option-reset"
88
-
89
- ## 1.0.1
90
-
91
- ### Patch Changes
92
-
93
- - ae1a4ffe: Add combobox into attributes and add combobox examples data into combobox/api
94
-
95
- ## 1.0.0
96
-
97
- ### Major Changes
98
-
99
- - 239ba528: Initial release
@@ -1,27 +0,0 @@
1
- # `combobox` Attribute
2
-
3
- A combo box that helps users select an item from a large list of options.
4
-
5
- ## Getting Started
6
-
7
- Please follow the documentation at [finsweet.com/attributes](https://www.finsweet.com/attributes) to learn how to use Attributes in your Webflow projects.
8
-
9
- ## Accessing the API
10
-
11
- To learn how to access the API, please check the general [API Reference](../attributes/README.md#api-reference) documentation:
12
-
13
- ```javascript
14
- window.FinsweetAttributes ||= [];
15
- window.FinsweetAttributes.push([
16
- 'combobox',
17
- (dropdownElements) => {
18
- // Your code goes here.
19
- },
20
- ]);
21
- ```
22
-
23
- The `result` object contains the dropdown elements that are currently active on the page.
24
-
25
- ## License
26
-
27
- [Apache 2.0](../../LICENSE.md)
@@ -1,23 +0,0 @@
1
- {
2
- "name": "@finsweet/attributes-combobox",
3
- "version": "2.0.7",
4
- "description": "A combo box that helps users select an item from a large list of options.",
5
- "private": true,
6
- "type": "module",
7
- "types": "src/index.ts",
8
- "scripts": {
9
- "lint": "eslint ./src && prettier --check ./src",
10
- "lint:fix": "eslint ./src --fix && prettier --write ./src",
11
- "check": "tsc --noEmit"
12
- },
13
- "exports": {
14
- ".": {
15
- "types": "./src/index.ts",
16
- "import": "./src/index.ts"
17
- }
18
- },
19
- "dependencies": {
20
- "just-debounce": "^1.1.0",
21
- "@finsweet/attributes-utils": "workspace:*"
22
- }
23
- }
@@ -1,29 +0,0 @@
1
- import {
2
- ARIA_HASPOPUP_KEY,
3
- ARIA_MULTISELECTABLE_KEY,
4
- ARIA_ROLE_KEY,
5
- ARIA_ROLE_VALUES,
6
- type DropdownList,
7
- type DropdownToggle,
8
- } from '@finsweet/attributes-utils';
9
-
10
- import type { OptionData } from '../utils/types';
11
-
12
- /**
13
- * Adds `a11ty` attributes to the Dropdown elements.
14
- * @param dropdownToggle The {@link DropdownToggle} element.
15
- * @param dropdownList The {@link DropdownList} element.
16
- */
17
- export const setDropdownAria = (dropdownToggle: DropdownToggle, dropdownList: DropdownList) => {
18
- dropdownToggle.setAttribute(ARIA_HASPOPUP_KEY, ARIA_ROLE_VALUES.listbox);
19
- dropdownList.setAttribute(ARIA_ROLE_KEY, ARIA_ROLE_VALUES.listbox);
20
- dropdownList.setAttribute(ARIA_MULTISELECTABLE_KEY, 'false');
21
- };
22
-
23
- /**
24
- * Sets the required aria attributes to a custom option element.
25
- * @param element
26
- */
27
- export const setOptionAria = (element: OptionData['element']) => {
28
- element.setAttribute(ARIA_ROLE_KEY, ARIA_ROLE_VALUES.option);
29
- };
@@ -1,12 +0,0 @@
1
- import type { Settings } from '../../utils/types';
2
-
3
- /**
4
- * This handles mouse movements on the body element and manipulates dropdown list pointer events.
5
- * @param e MouseEvent
6
- * @param settings {@link Settings}
7
- */
8
- export const handleBodyMouseMovements = (e: MouseEvent, settings: Settings) => {
9
- if (settings.navListElement.style.pointerEvents === 'none') {
10
- settings.navListElement.style.pointerEvents = 'auto';
11
- }
12
- };
@@ -1,37 +0,0 @@
1
- import { ENTER_KEY, SPACE_KEY } from '@finsweet/attributes-utils';
2
-
3
- import { focusOnInput, toggleDropdownCloseIcon } from '../../utils';
4
- import type { Settings } from '../../utils/types';
5
- import { populateOptions } from '../populate';
6
-
7
- /**
8
- * Resets `combobox` selections and clears input field value
9
- * @param settings The instance {@link Settings}.
10
- */
11
- export const handleClearDropdownClickEvents = (e: MouseEvent | KeyboardEvent, settings: Settings) => {
12
- const { selectElement, inputElement } = settings;
13
- e.stopPropagation();
14
- e.preventDefault();
15
-
16
- inputElement.value = '';
17
- selectElement.value = '';
18
-
19
- populateOptions(settings, '', true, true);
20
-
21
- focusOnInput(settings);
22
-
23
- toggleDropdownCloseIcon(settings);
24
- };
25
-
26
- /**
27
- * Handles key events on the dropdown toggle. This resets the dropdown state.
28
- */
29
- export const handleClearDropdown = (e: KeyboardEvent | MouseEvent, settings: Settings) => {
30
- const { key } = e as KeyboardEvent;
31
- e.stopPropagation();
32
-
33
- if (key === ENTER_KEY || key === SPACE_KEY) {
34
- e.preventDefault();
35
- handleClearDropdownClickEvents(e, settings);
36
- }
37
- };
@@ -1,220 +0,0 @@
1
- import {
2
- ARIA_ACTIVEDESCENDANT_KEY,
3
- ARIA_EXPANDED_KEY,
4
- ARROW_DOWN_KEY,
5
- ARROW_UP_KEY,
6
- CLICK,
7
- ENTER_KEY,
8
- ESCAPE_KEY,
9
- ID_KEY,
10
- setFormFieldValue,
11
- TAB_KEY,
12
- TABINDEX_KEY,
13
- } from '@finsweet/attributes-utils';
14
-
15
- import { focusOnInput, getClickedOptionData, setActiveDescendant, toggleDropdown } from '../../utils';
16
- import { CONTROL_KEYS } from '../../utils/constants';
17
- import type { OptionData, Settings } from '../../utils/types';
18
- import { handleClearInput } from '../input';
19
- import { updateOptionsState } from '../state';
20
- import { cleanupBubble } from './../../utils/dropdowns';
21
-
22
- let lastCursorPos = { x: 0, y: 0 };
23
-
24
- /**
25
- * Handles click events on the dropdown list.
26
- * @param e The Event object.
27
- * @param settings The instance {@link Settings}.
28
- */
29
- const handleDropdownListClickEvents = (e: MouseEvent | KeyboardEvent, optionData: OptionData, settings: Settings) => {
30
- if (!optionData.selected) updateOptionsState(settings, optionData);
31
-
32
- setFormFieldValue(settings.inputElement, optionData.text);
33
- toggleDropdown(settings);
34
- };
35
-
36
- /**
37
- * Handles dropdown mouse events: hover
38
- * Updates input field aria-activedescendant attribute with the option id.
39
- * @param e The Event object.
40
- * @param settings The instance {@link Settings}.
41
- */
42
- export const handleDropdownListMouseEvents = (e: MouseEvent | KeyboardEvent, settings: Settings) => {
43
- const target = e.target as HTMLElement;
44
-
45
- if (target === settings.selectElement) return;
46
-
47
- e.preventDefault();
48
-
49
- if (target.tagName === 'A' && e.type === 'mousemove') {
50
- const mouseEvent = e as MouseEvent;
51
- const currentCursorPos = { x: mouseEvent.clientX, y: mouseEvent.clientY };
52
- if (lastCursorPos.x !== currentCursorPos.x || lastCursorPos.y !== currentCursorPos.y) {
53
- // mouse moved
54
- lastCursorPos = currentCursorPos;
55
-
56
- handleDropdownListFocusEvents(e as FocusEvent, true, settings);
57
- }
58
- }
59
-
60
- const optionData = getClickedOptionData(e, settings);
61
- if (!optionData) return;
62
-
63
- const optionId = optionData?.element?.getAttribute(ID_KEY);
64
- settings.inputElement.setAttribute(ARIA_ACTIVEDESCENDANT_KEY, `${optionId || ''}`);
65
-
66
- const isClick = e.type === CLICK;
67
-
68
- if (isClick) handleDropdownListClickEvents(e, optionData, settings);
69
- };
70
-
71
- /**
72
- * Handles focus events on the dropdown list.
73
- * @param e The Event object.
74
- * @param settings The instance {@link Settings}.
75
- */
76
- export const handleDropdownListFocusEvents = (e: FocusEvent, focused: boolean, settings: Settings) => {
77
- const optionData = getClickedOptionData(e, settings);
78
-
79
- if (!optionData) return;
80
-
81
- if (e.type === 'focusout') return;
82
-
83
- const previouslyFocused = settings.optionsStore.find(({ focused }) => focused);
84
-
85
- if (previouslyFocused) {
86
- previouslyFocused?.element.setAttribute(TABINDEX_KEY, '-1');
87
- previouslyFocused.focused = false;
88
- }
89
-
90
- optionData.element.setAttribute(TABINDEX_KEY, '0');
91
- optionData.focused = focused;
92
- optionData.element.focus();
93
-
94
- setActiveDescendant(settings.inputElement, optionData.element);
95
- };
96
-
97
- /**
98
- * Handles tab key events on the dropdown list.
99
- * @param e The Event object.
100
- * @param settings The instance {@link Settings}.
101
- */
102
- const handleTabKeyEvents = (e: KeyboardEvent, settings: Settings) => {
103
- const { shiftKey } = e;
104
-
105
- if (shiftKey) e.preventDefault();
106
-
107
- if (e.target) {
108
- (e.target as HTMLAnchorElement).click();
109
- focusOnInput(settings);
110
- }
111
- toggleDropdown(settings);
112
- };
113
-
114
- /**
115
- * Handles arrow keys events on the dropdown list.
116
- * @param e The Event object.
117
- * @param settings The instance {@link Settings}.
118
- */
119
- const handleDropdownListArrowKeyEvents = (e: KeyboardEvent, settings: Settings) => {
120
- cleanupBubble(e);
121
- const { optionsStore, inputElement, navListElement } = settings;
122
-
123
- const { key } = e;
124
- const focusedOptionIndex = optionsStore.findIndex(({ focused }) => focused);
125
- if (focusedOptionIndex < 0) return;
126
-
127
- const nextOption = optionsStore[key === ARROW_UP_KEY ? focusedOptionIndex - 1 : focusedOptionIndex + 1];
128
-
129
- if (key === ARROW_UP_KEY && !nextOption) {
130
- toggleDropdown(settings);
131
-
132
- return;
133
- }
134
-
135
- navListElement.style.pointerEvents = 'none';
136
-
137
- const nextEl = nextOption?.element;
138
-
139
- if (!nextEl) return;
140
-
141
- const nextElBox = nextEl.getBoundingClientRect();
142
- const navListBox = navListElement.getBoundingClientRect();
143
-
144
- const navListBottom = navListBox.bottom - nextEl.offsetHeight;
145
- const navListTop = navListBox.top + nextEl.offsetHeight;
146
-
147
- const isAtBottom = nextElBox.bottom >= navListBottom;
148
- const isAtTop = navListTop >= nextElBox.top;
149
-
150
- nextEl.focus();
151
-
152
- if (isAtTop) {
153
- const optionBottom = nextEl.offsetTop + nextEl.offsetHeight;
154
- const currentBottom = navListElement.scrollTop + navListElement.offsetHeight;
155
-
156
- if (optionBottom > currentBottom) {
157
- navListElement.scrollTop = optionBottom - navListElement.offsetHeight;
158
- return;
159
- }
160
-
161
- if (nextEl.offsetTop < navListElement.scrollTop) {
162
- navListElement.scrollTop = nextEl.offsetTop;
163
- return;
164
- }
165
-
166
- navListElement.scrollTop = nextEl.offsetTop;
167
- }
168
-
169
- if (isAtBottom && key !== ARROW_UP_KEY) {
170
- const optionBottom = nextEl.offsetTop + nextEl.offsetHeight;
171
- const currentBottom = navListElement.scrollTop + navListElement.offsetHeight;
172
-
173
- if (optionBottom < currentBottom) {
174
- navListElement.scrollTop = optionBottom - navListElement.offsetHeight;
175
- return;
176
- }
177
-
178
- if (nextEl.offsetTop > navListElement.scrollTop) {
179
- navListElement.scrollTop = nextEl.offsetTop;
180
- return;
181
- }
182
-
183
- navListElement.scrollTop = nextEl.offsetTop;
184
- }
185
-
186
- setActiveDescendant(inputElement, nextOption?.element);
187
- };
188
-
189
- /**
190
- * Handles keyboard keydown events on the dropdown list.
191
- * @param e The Event object.
192
- * @param settings The instance {@link Settings}.
193
- */
194
- export const handleDropdownListKeydownEvents = (e: KeyboardEvent, settings: Settings) => {
195
- const { key } = e;
196
-
197
- cleanupBubble(e);
198
-
199
- if (key === ESCAPE_KEY) {
200
- handleClearInput(e, settings);
201
-
202
- const dropdownIsOpen = settings.dropdownToggle.getAttribute(ARIA_EXPANDED_KEY) === 'true';
203
-
204
- if (dropdownIsOpen) {
205
- toggleDropdown(settings);
206
- }
207
- return;
208
- }
209
-
210
- const enterKeyPressed = key === ENTER_KEY;
211
-
212
- const optionData = getClickedOptionData(e, settings);
213
-
214
- if (enterKeyPressed && optionData) handleDropdownListClickEvents(e, optionData, settings);
215
-
216
- if (!CONTROL_KEYS.includes(key)) return;
217
-
218
- if (key === TAB_KEY) handleTabKeyEvents(e, settings);
219
- else if (key === ARROW_UP_KEY || key === ARROW_DOWN_KEY) handleDropdownListArrowKeyEvents(e, settings);
220
- };
@@ -1,34 +0,0 @@
1
- import { ARROW_DOWN_KEY } from '@finsweet/attributes-utils';
2
-
3
- import type { Settings } from '../../utils/types';
4
-
5
- /**
6
- * Handles arrow keys events on the dropdown list.
7
- * Targets the focused option, or the first option if none is focused.
8
- * @param e The Event object.
9
- * @param settings The instance {@link Settings}.
10
- */
11
- export const handleDropdownToggleArrowKeyEvents = (e: KeyboardEvent, { optionsStore }: Settings) => {
12
- const { key } = e;
13
-
14
- e.stopPropagation();
15
-
16
- if (key !== ARROW_DOWN_KEY) return;
17
-
18
- const firstOption = optionsStore.find(({ hidden }) => !hidden);
19
- const focusedOption = optionsStore.find(({ focused }) => focused);
20
-
21
- if (focusedOption) {
22
- focusedOption.element.focus();
23
-
24
- return;
25
- }
26
-
27
- if (firstOption) {
28
- firstOption.element.focus();
29
-
30
- return;
31
- }
32
-
33
- return;
34
- };
@@ -1,75 +0,0 @@
1
- import { addListener, ARIA_EXPANDED_KEY } from '@finsweet/attributes-utils';
2
-
3
- import { cleanupBubble, toggleDropdown } from '../utils';
4
- import type { Settings } from '../utils/types';
5
- import { handleBodyMouseMovements } from './body';
6
- import { handleClearDropdown, handleClearDropdownClickEvents } from './clearDropdown';
7
- import {
8
- handleDropdownListFocusEvents,
9
- handleDropdownListKeydownEvents,
10
- handleDropdownListMouseEvents,
11
- } from './dropdownList';
12
- import { handleDropdownToggleArrowKeyEvents } from './dropdownToggle';
13
- import {
14
- handleClearInput,
15
- handleInputClickEvents,
16
- handleInputKeyDownEvents,
17
- handleInputKeyUpEvents,
18
- updateInputField,
19
- } from './input';
20
- import { handleSelectChangeEvents } from './selectElement';
21
-
22
- /**
23
- * Listens for multiple events on the custom elements.
24
- * @param settings The instance {@link Settings}.
25
- * @returns A callback to remove all event listeners.
26
- */
27
- export const listenEvents = (settings: Settings) => {
28
- const { dropdownToggle, dropdownList, selectElement, inputElement, clearDropdown, body } = settings;
29
-
30
- dropdownToggle.onmouseup = (e) => {
31
- // I believe webflow natively adds this event listener to the dropdown, we need to clear it out
32
- // so we can handle the click event ourselves.
33
- cleanupBubble(e);
34
- return;
35
- };
36
-
37
- const cleanups = [
38
- addListener(body, 'mousemove', (e) => handleBodyMouseMovements(e, settings)),
39
- addListener(dropdownToggle, 'keydown', (e) => handleDropdownToggleArrowKeyEvents(e, settings)),
40
- addListener(dropdownToggle, 'focus', () => inputElement.focus()),
41
-
42
- addListener(dropdownList, 'click', (e) => handleDropdownListMouseEvents(e, settings)),
43
- addListener(dropdownList, 'keydown', (e) => handleDropdownListKeydownEvents(e, settings)),
44
- addListener(dropdownList, 'focusin', (e) => handleDropdownListFocusEvents(e, true, settings)),
45
- addListener(dropdownList, 'focusout', (e) => handleDropdownListFocusEvents(e, false, settings)),
46
- addListener(dropdownList, 'mousemove', (e) => handleDropdownListMouseEvents(e, settings)),
47
-
48
- addListener(dropdownList, 'mouseenter', cleanupBubble),
49
- addListener(dropdownList, 'mouseup', cleanupBubble),
50
-
51
- addListener(selectElement, 'change', () => handleSelectChangeEvents(settings)),
52
-
53
- addListener(inputElement, 'keyup', (e) => handleInputKeyUpEvents(e, settings)),
54
- addListener(inputElement, 'input', () => {
55
- const dropdownIsOpen = dropdownToggle.getAttribute(ARIA_EXPANDED_KEY) === 'true';
56
-
57
- if (!dropdownIsOpen) {
58
- toggleDropdown(settings);
59
- }
60
- }),
61
- addListener(inputElement, 'keydown', (e) => handleInputKeyDownEvents(e, settings)),
62
- addListener(inputElement, 'click', (e) => handleInputClickEvents(e, settings)),
63
- addListener(inputElement, 'mouseup', (e) => handleInputClickEvents(e, settings)),
64
- addListener(inputElement, 'blur', (e) => handleClearInput(e, settings, true)),
65
- addListener(inputElement, 'updateComboboxInputField', (e) => updateInputField(e, settings)),
66
-
67
- addListener(clearDropdown, 'click', (e) => handleClearDropdownClickEvents(e, settings)),
68
- addListener(clearDropdown, 'mouseup', (e) => handleClearDropdown(e, settings)),
69
- addListener(clearDropdown, 'keydown', (e) => handleClearDropdown(e, settings)),
70
- ];
71
-
72
- return () => {
73
- for (const cleanup of cleanups) cleanup();
74
- };
75
- };