@hortonstudio/main 1.2.11 → 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 (489) hide show
  1. package/index.js +23 -10
  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/utils/navbar.js +0 -214
  488. package/utils/scroll-progress.js +0 -29
  489. package/utils/toc.js +0 -77
@@ -1,107 +0,0 @@
1
- /* eslint-disable no-console */
2
- import * as esbuild from 'esbuild';
3
- import inlineWorkerPlugin from 'esbuild-plugin-inline-worker';
4
- import { readdirSync, unlinkSync } from 'fs';
5
- import http from 'http';
6
- import { join } from 'path';
7
-
8
- declare const process: {
9
- env: {
10
- NODE_ENV?: 'production' | 'development';
11
- VERCEL_ENV?: 'production' | 'preview' | 'development';
12
- };
13
- };
14
-
15
- // Config output
16
- const ENV = process.env.VERCEL_ENV || process.env.NODE_ENV || 'development';
17
- const DEV = ENV === 'development';
18
- const BUILD_DIRECTORY = './';
19
-
20
- // Config entrypoint files
21
- const ENTRY_POINTS = ['src/attributes.ts'];
22
-
23
- // Config dev serving
24
- const SERVE_PORT = 3001;
25
- const PROXY_PORT = 3000;
26
-
27
- const buildOptions: esbuild.BuildOptions = {
28
- bundle: true,
29
- entryPoints: ENTRY_POINTS,
30
- minify: !DEV,
31
- sourcemap: DEV,
32
- target: 'esnext',
33
- define: {
34
- NODE_ENV: JSON.stringify(process.env.NODE_ENV),
35
- SERVE_PORT: JSON.stringify(SERVE_PORT),
36
- },
37
- plugins: [inlineWorkerPlugin()],
38
- };
39
-
40
- // Create contexts
41
- const context = await esbuild.context({
42
- ...buildOptions,
43
- outdir: BUILD_DIRECTORY,
44
- chunkNames: '/dist/[name]-[hash]',
45
- inject: DEV ? ['./bin/live-reload.js'] : undefined,
46
- format: 'esm',
47
- splitting: true,
48
- });
49
-
50
- // Remove old output files
51
- try {
52
- const files = readdirSync(BUILD_DIRECTORY);
53
- files.forEach((file) => {
54
- if (file.startsWith('dist')) {
55
- unlinkSync(join(BUILD_DIRECTORY, file));
56
- }
57
- });
58
- } catch {
59
- //
60
- }
61
-
62
- // Watch and serve files in dev
63
- if (DEV) {
64
- await context.watch();
65
- const { hosts, port } = await context.serve({
66
- servedir: '.',
67
- port: SERVE_PORT,
68
- });
69
-
70
- /**
71
- * Proxy esbuild requests to add CORS headers.
72
- * This is required since {@link https://github.com/evanw/esbuild/blob/main/CHANGELOG.md#0250 esbuild@0.25.0},
73
- * esbuild removed the built-in CORS headers for security reasons and now it's in userland to add them.
74
- */
75
- http
76
- .createServer((req, res) => {
77
- const { url, method, headers } = req;
78
-
79
- const proxyReq = http.request(
80
- {
81
- port,
82
- method,
83
- headers,
84
- path: url,
85
- hostname: hosts[0],
86
- },
87
- (proxyRes) => {
88
- res.setHeader('Access-Control-Allow-Origin', '*');
89
- res.writeHead(proxyRes.statusCode!, proxyRes.headers);
90
-
91
- proxyRes.pipe(res, { end: true });
92
- }
93
- );
94
-
95
- req.pipe(proxyReq, { end: true });
96
- })
97
- .listen(PROXY_PORT);
98
-
99
- console.log(`Serving:`);
100
- console.log(`<script async type="module" src="http://localhost:${PROXY_PORT}/attributes.js"></script>`);
101
- }
102
-
103
- // Build files in prod
104
- else {
105
- await context.rebuild();
106
- context.dispose();
107
- }
@@ -1 +0,0 @@
1
- new EventSource(`http://localhost:${SERVE_PORT}/esbuild`).addEventListener('change', () => location.reload());
@@ -1,77 +0,0 @@
1
- {
2
- "name": "@finsweet/attributes",
3
- "version": "2.4.10",
4
- "description": "Finsweet Attributes V2.",
5
- "homepage": "https://finsweet.com/attributes",
6
- "type": "module",
7
- "main": "attributes.js",
8
- "files": [
9
- "attributes.js",
10
- "dist",
11
- "schemas"
12
- ],
13
- "scripts": {
14
- "dev": "cross-env NODE_ENV=development tsx ./bin/build.ts",
15
- "build": "cross-env NODE_ENV=production tsx ./bin/build.ts",
16
- "lint": "eslint ./src && prettier --check ./src",
17
- "lint:fix": "eslint ./src --fix && prettier --write ./src",
18
- "check": "tsc --noEmit",
19
- "test": "pnpm playwright test",
20
- "test:headed": "pnpm playwright test --headed"
21
- },
22
- "license": "Apache-2.0",
23
- "repository": {
24
- "type": "git",
25
- "url": "git+https://github.com/finsweet/attributes.git"
26
- },
27
- "keywords": [
28
- "webflow",
29
- "attributes",
30
- "no code"
31
- ],
32
- "author": {
33
- "name": "Finsweet",
34
- "url": "https://finsweet.com/"
35
- },
36
- "bugs": {
37
- "url": "https://finsweet.com/attributes/support"
38
- },
39
- "dependencies": {
40
- "@finsweet/attributes-accordion": "workspace:*",
41
- "@finsweet/attributes-autovideo": "workspace:*",
42
- "@finsweet/attributes-codehighlight": "workspace:*",
43
- "@finsweet/attributes-combobox": "workspace:*",
44
- "@finsweet/attributes-copyclip": "workspace:*",
45
- "@finsweet/attributes-displayvalues": "workspace:*",
46
- "@finsweet/attributes-favcustom": "workspace:*",
47
- "@finsweet/attributes-formsubmit": "workspace:*",
48
- "@finsweet/attributes-inject": "workspace:*",
49
- "@finsweet/attributes-inputactive": "workspace:*",
50
- "@finsweet/attributes-inputcounter": "workspace:*",
51
- "@finsweet/attributes-list": "workspace:*",
52
- "@finsweet/attributes-mirrorclick": "workspace:*",
53
- "@finsweet/attributes-mirrorinput": "workspace:*",
54
- "@finsweet/attributes-modal": "workspace:*",
55
- "@finsweet/attributes-numbercount": "workspace:*",
56
- "@finsweet/attributes-queryparam": "workspace:*",
57
- "@finsweet/attributes-rangeslider": "workspace:*",
58
- "@finsweet/attributes-readtime": "workspace:*",
59
- "@finsweet/attributes-removequery": "workspace:*",
60
- "@finsweet/attributes-scrolldisable": "workspace:*",
61
- "@finsweet/attributes-selectcustom": "workspace:*",
62
- "@finsweet/attributes-sliderdots": "workspace:*",
63
- "@finsweet/attributes-smartlightbox": "workspace:*",
64
- "@finsweet/attributes-socialshare": "workspace:*",
65
- "@finsweet/attributes-starrating": "workspace:*",
66
- "@finsweet/attributes-toc": "workspace:*",
67
- "@finsweet/attributes-utils": "workspace:*",
68
- "@finsweet/attributes-videohls": "workspace:*"
69
- },
70
- "devDependencies": {
71
- "@types/node": "^22.15.12",
72
- "cross-env": "^7.0.3",
73
- "esbuild": "^0.25.4",
74
- "esbuild-plugin-inline-worker": "^0.1.1",
75
- "tsx": "^4.19.4"
76
- }
77
- }
@@ -1,89 +0,0 @@
1
- import { defineConfig, devices } from '@playwright/test';
2
-
3
- declare const process: {
4
- env: {
5
- CI?: string;
6
- };
7
- };
8
-
9
- /**
10
- * See https://playwright.dev/docs/test-configuration.
11
- */
12
- export default defineConfig({
13
- testDir: './tests',
14
-
15
- /* Maximum time one test can run for. */
16
- timeout: 30 * 1000,
17
- expect: {
18
- /**
19
- * Maximum time expect() should wait for the condition to be met.
20
- * For example in `await expect(locator).toHaveText();`
21
- */
22
- timeout: 5000,
23
- },
24
-
25
- /* Run tests in files in parallel */
26
- fullyParallel: true,
27
-
28
- /* Fail the build on CI if you accidentally left test.only in the source code. */
29
- forbidOnly: !!process.env.CI,
30
-
31
- /* Retry on CI only */
32
- retries: process.env.CI ? 2 : 0,
33
-
34
- /* Opt out of parallel tests on CI. */
35
- workers: process.env.CI ? 1 : undefined,
36
-
37
- /* Reporter to use. See https://playwright.dev/docs/test-reporters */
38
- reporter: process.env.CI ? 'dot' : 'list',
39
-
40
- /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
41
- use: {
42
- /* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */
43
- actionTimeout: 0,
44
- /* Base URL to use in actions like `await page.goto('/')`. */
45
- // baseURL: 'http://localhost:3000',
46
-
47
- /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
48
- trace: 'on-first-retry',
49
-
50
- /**
51
- * Toggles bypassing page's Content-Security-Policy. Defaults to false.
52
- */
53
- bypassCSP: true,
54
- },
55
-
56
- /* Configure projects for major browsers */
57
- projects: [
58
- {
59
- name: 'chromium',
60
- use: {
61
- ...devices['Desktop Chrome'],
62
- launchOptions: {
63
- args: ['--disable-web-security'],
64
- },
65
- },
66
- },
67
-
68
- {
69
- name: 'firefox',
70
- use: {
71
- ...devices['Desktop Firefox'],
72
- },
73
- },
74
-
75
- {
76
- name: 'webkit',
77
- use: {
78
- ...devices['Desktop Safari'],
79
- },
80
- },
81
- ],
82
-
83
- /* Run your local dev server before starting the tests */
84
- webServer: {
85
- command: 'pnpm dev',
86
- port: 3000,
87
- reuseExistingServer: true,
88
- },
89
- });
@@ -1,153 +0,0 @@
1
- import {
2
- ATTRIBUTES,
3
- type FinsweetAttributeKey,
4
- type FinsweetAttributesCallback,
5
- waitDOMReady,
6
- } from '@finsweet/attributes-utils';
7
-
8
- import { loadAttribute } from './load';
9
-
10
- const ATTRIBUTES_ATTRIBUTE_PREFIX = 'fs-attributes';
11
- const ATTRIBUTE_KEYS = new Set(Object.values(ATTRIBUTES));
12
-
13
- /**
14
- * Inits the Finsweet Attributes library.
15
- */
16
- const init = () => {
17
- const { FinsweetAttributes } = window;
18
-
19
- // Avoid initting the Attributes API more than once.
20
- // If the API is already initted, just init the individual Attributes and escape.
21
- if (FinsweetAttributes && !Array.isArray(FinsweetAttributes)) {
22
- initAttributes();
23
- return;
24
- }
25
-
26
- // Collect pre-existing callbacks
27
- const callbacks = Array.isArray(FinsweetAttributes) ? (FinsweetAttributes as FinsweetAttributesCallback[]) : [];
28
-
29
- // Collect library scripts
30
- const scripts = [...document.querySelectorAll<HTMLScriptElement>(`script[type="module"][src="${import.meta.url}"]`)];
31
-
32
- // Init Attributes object
33
- window.FinsweetAttributes = {
34
- scripts,
35
- modules: {},
36
- process: new Set<FinsweetAttributeKey>(),
37
-
38
- load: initAttribute,
39
-
40
- push(...args) {
41
- for (const [key, callback] of args) {
42
- this.modules[key]?.loading?.then(callback);
43
- }
44
- },
45
-
46
- destroy() {
47
- for (const solution in this.modules) {
48
- this.modules[solution as keyof typeof this.modules]?.destroy?.();
49
- }
50
- },
51
- };
52
-
53
- // Init Attributes
54
- initAttributes();
55
-
56
- // Run pre-existing callbacks
57
- window.FinsweetAttributes.push(...callbacks);
58
- };
59
-
60
- /**
61
- * Inits all Attributes that are defined in the current script
62
- * or in the DOM if fs-attributes-auto is enabled.
63
- */
64
- const initAttributes = () => {
65
- let autoLoad = false;
66
-
67
- for (const script of window.FinsweetAttributes.scripts) {
68
- autoLoad ||= script.getAttribute(`${ATTRIBUTES_ATTRIBUTE_PREFIX}-auto`) === 'true';
69
-
70
- for (const key of ATTRIBUTE_KEYS) {
71
- const isDefined = script.hasAttribute(`fs-${key}`);
72
- if (!isDefined) continue;
73
-
74
- initAttribute(key);
75
- }
76
- }
77
-
78
- if (!autoLoad) return;
79
-
80
- waitDOMReady().then(() => {
81
- const usedAttributes = new Set<FinsweetAttributeKey>();
82
- const allElements = document.querySelectorAll('*');
83
-
84
- for (const element of allElements) {
85
- for (const name of element.getAttributeNames()) {
86
- const fsMatch = name.match(/^fs-([^-]+)/);
87
- const key = fsMatch?.[1] as FinsweetAttributeKey | undefined;
88
-
89
- if (key && ATTRIBUTE_KEYS.has(key)) {
90
- usedAttributes.add(key);
91
- }
92
- }
93
- }
94
-
95
- for (const attribute of usedAttributes) {
96
- initAttribute(attribute);
97
- }
98
- });
99
- };
100
-
101
- /**
102
- * Inits an individual Attribute.
103
- * @param key
104
- * @param script The <script> tag that defines the Attribute.
105
- *
106
- * @returns A Promise that resolves once the Attribute has loaded and executed.
107
- */
108
- const initAttribute = async (key: FinsweetAttributeKey) => {
109
- // Ensure that the attribute is only initted once
110
- if (window.FinsweetAttributes.process.has(key)) return;
111
-
112
- window.FinsweetAttributes.process.add(key);
113
-
114
- // Init controls
115
- const controls = (window.FinsweetAttributes.modules[key] ||= {});
116
-
117
- controls.loading = new Promise((resolve) => {
118
- controls.resolve = (value) => {
119
- resolve(value);
120
- delete controls.resolve;
121
- };
122
- });
123
-
124
- // Load Attribute package
125
- try {
126
- const { init, version } = await loadAttribute(key);
127
-
128
- // Init attribute
129
- const { result, destroy } = (await init()) || {};
130
-
131
- // Finalize controls
132
- controls.version = version;
133
-
134
- controls.destroy = () => {
135
- destroy?.();
136
- window.FinsweetAttributes.process.delete(key);
137
- };
138
-
139
- controls.restart = () => {
140
- controls.destroy?.();
141
- return window.FinsweetAttributes.load(key);
142
- };
143
-
144
- controls.resolve?.(result);
145
-
146
- return result;
147
- } catch (err) {
148
- console.error(err);
149
- }
150
- };
151
-
152
- // Init
153
- init();
@@ -1,125 +0,0 @@
1
- import { type FinsweetAttributeKey } from '@finsweet/attributes-utils';
2
-
3
- /**
4
- * Dynamically loads an attribute package.
5
- * @param key
6
- */
7
- export const loadAttribute = async (key: FinsweetAttributeKey) => {
8
- switch (key) {
9
- case 'accordion': {
10
- return import('@finsweet/attributes-accordion');
11
- }
12
-
13
- case 'autovideo': {
14
- return import('@finsweet/attributes-autovideo');
15
- }
16
-
17
- case 'codehighlight': {
18
- return import('@finsweet/attributes-codehighlight');
19
- }
20
-
21
- case 'combobox': {
22
- return import('@finsweet/attributes-combobox');
23
- }
24
-
25
- case 'inject': {
26
- return import('@finsweet/attributes-inject');
27
- }
28
-
29
- case 'copyclip': {
30
- return import('@finsweet/attributes-copyclip');
31
- }
32
-
33
- case 'displayvalues': {
34
- return import('@finsweet/attributes-displayvalues');
35
- }
36
-
37
- case 'favcustom': {
38
- return import('@finsweet/attributes-favcustom');
39
- }
40
-
41
- case 'formsubmit': {
42
- return import('@finsweet/attributes-formsubmit');
43
- }
44
-
45
- case 'inputactive': {
46
- return import('@finsweet/attributes-inputactive');
47
- }
48
-
49
- case 'inputcounter': {
50
- return import('@finsweet/attributes-inputcounter');
51
- }
52
-
53
- case 'list': {
54
- return import('@finsweet/attributes-list');
55
- }
56
-
57
- case 'mirrorclick': {
58
- return import('@finsweet/attributes-mirrorclick');
59
- }
60
-
61
- case 'mirrorinput': {
62
- return import('@finsweet/attributes-mirrorinput');
63
- }
64
-
65
- case 'modal': {
66
- return import('@finsweet/attributes-modal');
67
- }
68
-
69
- case 'numbercount': {
70
- return import('@finsweet/attributes-numbercount');
71
- }
72
-
73
- case 'queryparam': {
74
- return import('@finsweet/attributes-queryparam');
75
- }
76
-
77
- case 'rangeslider': {
78
- return import('@finsweet/attributes-rangeslider');
79
- }
80
-
81
- case 'readtime': {
82
- return import('@finsweet/attributes-readtime');
83
- }
84
-
85
- case 'removequery': {
86
- return import('@finsweet/attributes-removequery');
87
- }
88
-
89
- case 'scrolldisable': {
90
- return import('@finsweet/attributes-scrolldisable');
91
- }
92
-
93
- case 'selectcustom': {
94
- return import('@finsweet/attributes-selectcustom');
95
- }
96
-
97
- case 'sliderdots': {
98
- return import('@finsweet/attributes-sliderdots');
99
- }
100
-
101
- case 'smartlightbox': {
102
- return import('@finsweet/attributes-smartlightbox');
103
- }
104
-
105
- case 'socialshare': {
106
- return import('@finsweet/attributes-socialshare');
107
- }
108
-
109
- case 'starrating': {
110
- return import('@finsweet/attributes-starrating');
111
- }
112
-
113
- case 'toc': {
114
- return import('@finsweet/attributes-toc');
115
- }
116
-
117
- case 'videohls': {
118
- return import('@finsweet/attributes-videohls');
119
- }
120
-
121
- default: {
122
- throw `Finsweet Attribute "${key}" is not supported.`;
123
- }
124
- }
125
- };
@@ -1,137 +0,0 @@
1
- import { expect, test } from '@playwright/test';
2
-
3
- import { waitAttributeLoaded } from './utils';
4
-
5
- test.beforeEach(async ({ page }) => {
6
- await page.goto('http://fs-attributes.webflow.io/accordion');
7
- });
8
-
9
- const DEFAULT_ACTIVE_CLASS_REGEX = /is-active-accordion/;
10
-
11
- test.describe('accordion', () => {
12
- test('Accordions open/close and set the active CSS class correctly', async ({ page }) => {
13
- await waitAttributeLoaded(page, 'accordion');
14
-
15
- const header11 = page.getByTestId('header-1-1');
16
- const content11 = page.getByTestId('content-1-1');
17
-
18
- // Initial state + active CSS class works
19
- await expect(header11).toHaveClass(DEFAULT_ACTIVE_CLASS_REGEX);
20
- await expect(content11).toBeVisible();
21
-
22
- // Trigger works
23
- await header11.click();
24
- await expect(header11).not.toHaveClass(DEFAULT_ACTIVE_CLASS_REGEX);
25
- await expect(content11).not.toBeVisible();
26
- });
27
-
28
- test('fs-accordion-single', async ({ page }) => {
29
- await waitAttributeLoaded(page, 'accordion');
30
-
31
- const header22 = page.getByTestId('header-2-2');
32
- const content21 = page.getByTestId('content-2-1');
33
- const content22 = page.getByTestId('content-2-2');
34
- const content23 = page.getByTestId('content-2-3');
35
-
36
- // Single works
37
- await expect(content21).toBeVisible();
38
- await expect(content22).not.toBeVisible();
39
- await expect(content23).not.toBeVisible();
40
-
41
- await header22.click();
42
- await expect(content21).not.toBeVisible();
43
- await expect(content22).toBeVisible();
44
- await expect(content23).not.toBeVisible();
45
- });
46
-
47
- test('fs-accordion-initial="none"', async ({ page }) => {
48
- await waitAttributeLoaded(page, 'accordion');
49
-
50
- const content31 = page.getByTestId('content-3-1');
51
- const content32 = page.getByTestId('content-3-2');
52
- const content33 = page.getByTestId('content-3-3');
53
-
54
- // Initial none works
55
- await expect(content31).not.toBeVisible();
56
- await expect(content32).not.toBeVisible();
57
- await expect(content33).not.toBeVisible();
58
- });
59
-
60
- test('fs-accordion-initial="{NUMERIC_INDEX}"', async ({ page }) => {
61
- await waitAttributeLoaded(page, 'accordion');
62
-
63
- const content41 = page.getByTestId('content-4-1');
64
- const content42 = page.getByTestId('content-4-2');
65
- const content43 = page.getByTestId('content-4-3');
66
-
67
- // Initial numeric works
68
- await expect(content41).toBeVisible();
69
- await expect(content42).not.toBeVisible();
70
- await expect(content43).toBeVisible();
71
- });
72
-
73
- test('fs-accordion-initial="{NUMERIC_INDEX}" + fs-accordion-single', async ({ page }) => {
74
- await waitAttributeLoaded(page, 'accordion');
75
-
76
- const content52 = page.getByTestId('content-5-2');
77
- const content53 = page.getByTestId('content-5-3');
78
-
79
- // Initial numeric + single works
80
- await expect(content52).toBeVisible();
81
- await expect(content53).not.toBeVisible();
82
- });
83
-
84
- test('fs-accordion-active="{ACTIVE_CSS_CLASS}"', async ({ page }) => {
85
- await waitAttributeLoaded(page, 'accordion');
86
-
87
- const header61 = page.getByTestId('header-6-1');
88
-
89
- // Custom active classes work
90
- await expect(header61).toHaveClass(/is-cool-header/);
91
- await header61.click();
92
- await expect(header61).not.toHaveClass(/is-cool-header/);
93
- });
94
-
95
- test('fs-accordion + fs-list', async ({ page }) => {
96
- await waitAttributeLoaded(page, 'accordion');
97
-
98
- const header71 = page.getByTestId('header-7-1');
99
- const content71 = page.getByTestId('content-7-1');
100
-
101
- // Waits for list render-all
102
- const lastHeader = header71.nth(4);
103
- const lastContent = content71.nth(4);
104
-
105
- await expect(lastHeader).toHaveClass(DEFAULT_ACTIVE_CLASS_REGEX);
106
- await expect(lastContent).toBeVisible();
107
-
108
- await lastHeader.click();
109
- await expect(lastHeader).not.toHaveClass(DEFAULT_ACTIVE_CLASS_REGEX);
110
- await expect(lastContent).not.toBeVisible();
111
- });
112
-
113
- test('Accordions initially hidden are forced to be closed', async ({ page }) => {
114
- await waitAttributeLoaded(page, 'accordion');
115
-
116
- const header81 = page.getByTestId('header-8-1');
117
- const header82 = page.getByTestId('header-8-2');
118
- const content81 = page.getByTestId('content-8-1');
119
- const content82 = page.getByTestId('content-8-2');
120
-
121
- const tab2Link = page.getByTestId('tab-2-link');
122
-
123
- // Accordion 1 is open and visible
124
- await expect(header81).toBeVisible();
125
- await expect(content81).toBeVisible();
126
-
127
- // Accordion 2 is hidden
128
- await expect(header82).not.toBeVisible();
129
- await expect(content82).not.toBeVisible();
130
-
131
- await tab2Link.click();
132
-
133
- // Content 2 is closed
134
- await expect(header82).toBeVisible();
135
- await expect(content82).not.toBeVisible();
136
- });
137
- });