@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
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- // ver 1.2.12
1
+ // ver 1.2.13
2
2
 
3
3
  const API_NAME = 'hsmain';
4
4
 
@@ -36,19 +36,19 @@ const initializeHsMain = () => {
36
36
  const loadModule = async (moduleName) => {
37
37
  switch (moduleName) {
38
38
  case "data-hs-anim-text":
39
- return import(new URL('./animations/text.js', import.meta.url).href);
39
+ return import('@hortonstudio/main-anim-text');
40
40
  case "data-hs-anim-hero":
41
- return import(new URL('./animations/hero.js', import.meta.url).href);
41
+ return import('@hortonstudio/main-anim-hero');
42
42
  case "data-hs-anim-transition":
43
- return import(new URL('./animations/transition.js', import.meta.url).href);
43
+ return import('@hortonstudio/main-anim-transition');
44
44
  case "data-hs-util-toc":
45
- return import(new URL('./utils/toc.js', import.meta.url).href);
45
+ return import('@hortonstudio/main-util-toc');
46
46
  case "data-hs-util-progress":
47
- return import(new URL('./utils/scroll-progress.js', import.meta.url).href);
47
+ return import('@hortonstudio/main-util-progress');
48
48
  case "data-hs-util-navbar":
49
- return import(new URL('./utils/navbar.js', import.meta.url).href);
49
+ return import('@hortonstudio/main-util-navbar');
50
50
  case "smooth-scroll":
51
- return import(new URL('./autoInit/smooth-scroll.js', import.meta.url).href);
51
+ return import('@hortonstudio/main-smooth-scroll');
52
52
  default:
53
53
  throw new Error(`${API_NAME} module "${moduleName}" is not supported.`);
54
54
  }
package/package.json CHANGED
@@ -1,13 +1,24 @@
1
1
  {
2
2
  "name": "@hortonstudio/main",
3
- "version": "1.2.12",
3
+ "version": "1.2.13",
4
+ "description": "Core animation and utility library for client websites",
4
5
  "main": "index.js",
5
6
  "type": "module",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
8
- },
9
- "keywords": [],
7
+ "keywords": [
8
+ "animation",
9
+ "gsap",
10
+ "webflow",
11
+ "utilities"
12
+ ],
10
13
  "author": "Horton Studio",
11
14
  "license": "ISC",
12
- "description": "Animation and utility library for client websites"
15
+ "dependencies": {
16
+ "@hortonstudio/main-anim-hero": "^1.0.0",
17
+ "@hortonstudio/main-anim-text": "^1.0.0",
18
+ "@hortonstudio/main-anim-transition": "^1.0.0",
19
+ "@hortonstudio/main-util-navbar": "^1.0.0",
20
+ "@hortonstudio/main-util-toc": "^1.0.0",
21
+ "@hortonstudio/main-util-progress": "^1.0.0",
22
+ "@hortonstudio/main-smooth-scroll": "^1.0.0"
23
+ }
13
24
  }
@@ -1,21 +0,0 @@
1
- {
2
- "permissions": {
3
- "allow": [
4
- "mcp__webflow__pages_get_content",
5
- "WebFetch(domain:compassfacilities.webflow.io)",
6
- "mcp__webflow__collections_list",
7
- "mcp__webflow__collections_get",
8
- "mcp__webflow__sites_list",
9
- "mcp__webflow__site_applied_scripts_list",
10
- "mcp__webflow__site_registered_scripts_list",
11
- "mcp__webflow__add_inline_site_script",
12
- "Bash(mv:*)",
13
- "WebFetch(domain:www.compassfacilities.com)",
14
- "mcp__webflow__pages_list",
15
- "Bash(npm publish:*)",
16
- "Bash(npm version:*)",
17
- "mcp__ide__getDiagnostics"
18
- ],
19
- "deny": []
20
- }
21
- }
@@ -1,599 +0,0 @@
1
- const API_NAME = 'hsmain';
2
-
3
- // Check for reduced motion preference
4
- const prefersReducedMotion = () => {
5
- return window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches;
6
- };
7
-
8
- // Animation timing (in seconds)
9
- const timing = {
10
- announce: 0,
11
- nav: 0.1,
12
- navLogo: 0.3,
13
- navList: 0.35,
14
- navMenu: 0.35,
15
- navButton: 0.5,
16
- tag: 0.1,
17
- heading: 0.15,
18
- subheading: 0.25,
19
- button: 0.35,
20
- image: 0.5,
21
- appear: 0.6
22
- };
23
-
24
- // Hero Animations Module
25
- let heroTimeline = null;
26
- let headingSplits = [];
27
- let subheadingSplits = [];
28
- let heroTimeout = null; // Track the setTimeout
29
-
30
- const config = {
31
- global: {
32
- animationDelay: 0.2
33
- },
34
- headingSplit: {
35
- duration: 1.5,
36
- stagger: 0.1,
37
- yPercent: 110,
38
- ease: "power4.out"
39
- },
40
- subheadingSplit: {
41
- duration: 1.5,
42
- stagger: 0.1,
43
- yPercent: 110,
44
- ease: "power4.out"
45
- },
46
- appear: {
47
- y: 50,
48
- duration: 1.5,
49
- ease: "power3.out"
50
- },
51
- navStagger: {
52
- duration: 1.5,
53
- stagger: 0.1,
54
- ease: "power3.out"
55
- },
56
- nav: {
57
- duration: 1,
58
- ease: "power3.out"
59
- }
60
- };
61
-
62
- function updateConfig(newConfig) {
63
- function deepMerge(target, source) {
64
- for (const key in source) {
65
- if (source[key] && typeof source[key] === 'object' && !Array.isArray(source[key])) {
66
- target[key] = target[key] || {};
67
- deepMerge(target[key], source[key]);
68
- } else {
69
- target[key] = source[key];
70
- }
71
- }
72
- return target;
73
- }
74
-
75
- deepMerge(config, newConfig);
76
- }
77
-
78
- function killHeroAnimations() {
79
- if (heroTimeout) {
80
- clearTimeout(heroTimeout);
81
- heroTimeout = null;
82
- }
83
-
84
- if (heroTimeline) {
85
- heroTimeline.kill();
86
- heroTimeline = null;
87
- }
88
-
89
- headingSplits.forEach(split => {
90
- if (split && split.revert) {
91
- split.revert();
92
- }
93
- });
94
- headingSplits = [];
95
-
96
- subheadingSplits.forEach(split => {
97
- if (split && split.revert) {
98
- split.revert();
99
- }
100
- });
101
- subheadingSplits = [];
102
-
103
- // Restore page-wide tabbing if animation is killed
104
- const allFocusableElements = document.querySelectorAll('[data-original-tabindex]');
105
- allFocusableElements.forEach(el => {
106
- el.style.pointerEvents = '';
107
- const originalTabindex = el.getAttribute('data-original-tabindex');
108
- if (originalTabindex === '0') {
109
- el.removeAttribute('tabindex');
110
- } else {
111
- el.setAttribute('tabindex', originalTabindex);
112
- }
113
- el.removeAttribute('data-original-tabindex');
114
- });
115
- // Restore nav pointer events if animation is killed
116
- const navElement = document.querySelector('[data-hs-hero="nav"]');
117
- if (navElement) {
118
- navElement.style.pointerEvents = '';
119
- }
120
- }
121
-
122
- function startHeroAnimations() {
123
- killHeroAnimations();
124
- init();
125
- }
126
-
127
- function showHeroElementsWithoutAnimation() {
128
- // Simply show all hero elements without any animation or split text
129
- const allHeroElements = [
130
- ...document.querySelectorAll('[data-hs-hero="announce"]'),
131
- ...document.querySelectorAll('[data-hs-hero="nav"]'),
132
- ...document.querySelectorAll('[data-hs-hero="nav-menu"]'),
133
- ...document.querySelectorAll('[data-hs-hero="nav-logo"]'),
134
- ...document.querySelectorAll('[data-hs-hero="nav-button"] > *:first-child'),
135
- ...document.querySelectorAll('[data-hs-hero="nav-list"] > * > *:first-child'),
136
- ...document.querySelectorAll('[data-hs-hero="heading"] > *:first-child'),
137
- ...document.querySelectorAll('[data-hs-hero="subheading"] > *:first-child'),
138
- ...document.querySelectorAll('[data-hs-hero="tag"] > *:first-child'),
139
- ...document.querySelectorAll('[data-hs-hero="button"] > *'),
140
- ...document.querySelectorAll('[data-hs-hero="image"]'),
141
- ...document.querySelectorAll('[data-hs-hero="appear"]')
142
- ];
143
-
144
- allHeroElements.forEach(element => {
145
- if (element) {
146
- gsap.set(element, {
147
- autoAlpha: 1,
148
- opacity: 1,
149
- y: 0,
150
- yPercent: 0
151
- });
152
- // Remove any pointer-events restrictions
153
- element.style.pointerEvents = '';
154
- }
155
- });
156
-
157
- // Restore page-wide tabbing
158
- const allFocusableElements = document.querySelectorAll('[data-original-tabindex]');
159
- allFocusableElements.forEach(el => {
160
- el.style.pointerEvents = '';
161
- const originalTabindex = el.getAttribute('data-original-tabindex');
162
- if (originalTabindex === '0') {
163
- el.removeAttribute('tabindex');
164
- } else {
165
- el.setAttribute('tabindex', originalTabindex);
166
- }
167
- el.removeAttribute('data-original-tabindex');
168
- });
169
- }
170
-
171
- export async function init() {
172
- if (typeof window.gsap === "undefined") {
173
- console.error('GSAP not found - hero animations disabled');
174
- return;
175
- }
176
-
177
- if (prefersReducedMotion()) {
178
- // For reduced motion, just show elements without animation
179
- showHeroElementsWithoutAnimation();
180
-
181
- // Still expose the API for consistency
182
- window[API_NAME] = window[API_NAME] || {};
183
- window[API_NAME].heroAnimations = {
184
- config: config,
185
- updateConfig: updateConfig,
186
- start: startHeroAnimations,
187
- kill: killHeroAnimations,
188
- restart: () => {
189
- killHeroAnimations();
190
- startHeroAnimations();
191
- }
192
- };
193
-
194
- return { result: 'anim-hero initialized (reduced motion)' };
195
- }
196
-
197
- gsap.registerPlugin(ScrollTrigger, SplitText);
198
-
199
- // Element selection
200
- const announceElements = document.querySelectorAll('[data-hs-hero="announce"]');
201
- const navElement = document.querySelector('[data-hs-hero="nav"]');
202
- const navMenuElements = document.querySelectorAll('[data-hs-hero="nav-menu"]');
203
- const navLogoElements = document.querySelectorAll('[data-hs-hero="nav-logo"]');
204
- const imageElements = document.querySelectorAll('[data-hs-hero="image"]');
205
- const appearElements = document.querySelectorAll('[data-hs-hero="appear"]');
206
-
207
- // Check if nav has advanced config
208
- const hasAdvancedNav = navElement && navElement.hasAttribute('data-hs-heroconfig') && navElement.getAttribute('data-hs-heroconfig') === 'advanced';
209
-
210
- // First child elements - only select if advanced nav is enabled
211
- const navButton = [];
212
- if (hasAdvancedNav) {
213
- const navButtonParents = document.querySelectorAll('[data-hs-hero="nav-button"]');
214
- navButtonParents.forEach(el => {
215
- if (el.firstElementChild) navButton.push(el.firstElementChild);
216
- });
217
- }
218
-
219
- const subheading = [];
220
- const subheadingAppearElements = [];
221
- const subheadingElements = document.querySelectorAll('[data-hs-hero="subheading"]');
222
- const subheadingSplitElements = [];
223
-
224
- subheadingElements.forEach(el => {
225
- if (el.firstElementChild) {
226
- // Get the heroconfig attribute to determine animation type (default to appear)
227
- const heroConfig = el.getAttribute('data-hs-heroconfig') || 'appear';
228
-
229
- if (heroConfig === 'appear') {
230
- subheadingAppearElements.push(el.firstElementChild);
231
- } else {
232
- subheading.push(el.firstElementChild);
233
- subheadingSplitElements.push(el);
234
- }
235
- }
236
- });
237
-
238
- const heading = [];
239
- const headingAppearElements = [];
240
- const headingElements = document.querySelectorAll('[data-hs-hero="heading"]');
241
- const headingSplitElements = [];
242
-
243
- headingElements.forEach(el => {
244
- if (el.firstElementChild) {
245
- // Get the heroconfig attribute to determine animation type
246
- const heroConfig = el.getAttribute('data-hs-heroconfig') || 'word'; // default to word if not specified
247
-
248
- if (heroConfig === 'appear') {
249
- headingAppearElements.push(el.firstElementChild);
250
- } else {
251
- heading.push(el.firstElementChild);
252
- headingSplitElements.push(el);
253
- }
254
- }
255
- });
256
-
257
- const tag = [];
258
- const tagParents = document.querySelectorAll('[data-hs-hero="tag"]');
259
- tagParents.forEach(el => {
260
- if (el.firstElementChild) tag.push(el.firstElementChild);
261
- });
262
-
263
- // All children elements
264
- const buttonAllChildren = [];
265
- const buttonParents = document.querySelectorAll('[data-hs-hero="button"]');
266
- buttonParents.forEach(el => {
267
- const children = Array.from(el.children);
268
- buttonAllChildren.push(...children);
269
- });
270
-
271
- const navListAllChildren = [];
272
- if (hasAdvancedNav) {
273
- const navListParents = document.querySelectorAll('[data-hs-hero="nav-list"]');
274
- navListParents.forEach(el => {
275
- const children = Array.from(el.children);
276
-
277
- // Add overflow clip class to each child and collect their first child for animation
278
- children.forEach(child => {
279
- child.classList.add('u-overflow-clip');
280
- if (child.firstElementChild) {
281
- navListAllChildren.push(child.firstElementChild);
282
- }
283
- });
284
- });
285
- }
286
-
287
- // Initial states
288
- if (announceElements.length > 0) gsap.set(announceElements, { opacity: 0, y: -50 });
289
- if (navElement) {
290
- gsap.set(navElement, { opacity: 0, y: -50 });
291
- // Disable nav pointer events until animation completes
292
- navElement.style.pointerEvents = 'none';
293
- }
294
- if (hasAdvancedNav && navListAllChildren.length > 0) gsap.set(navListAllChildren, { opacity: 0, yPercent: 110 });
295
- if (hasAdvancedNav && navMenuElements.length > 0) gsap.set(navMenuElements, { opacity: 0 });
296
- if (hasAdvancedNav && navButton.length > 0) gsap.set(navButton, { opacity: 0 });
297
- if (hasAdvancedNav && navLogoElements.length > 0) gsap.set(navLogoElements, { opacity: 0 });
298
- if (subheadingAppearElements.length > 0) gsap.set(subheadingAppearElements, { y: config.appear.y, opacity: 0 });
299
- if (tag.length > 0) gsap.set(tag, { y: config.appear.y, opacity: 0 });
300
- if (buttonAllChildren.length > 0) gsap.set(buttonAllChildren, { y: config.appear.y, opacity: 0 });
301
- if (imageElements.length > 0) gsap.set(imageElements, { opacity: 0 });
302
- if (appearElements.length > 0) gsap.set(appearElements, { y: config.appear.y, opacity: 0 });
303
- if (headingAppearElements.length > 0) gsap.set(headingAppearElements, { y: config.appear.y, opacity: 0 });
304
-
305
- // Disable page-wide tabbing and interactions until animation completes
306
- const allFocusableElements = document.querySelectorAll('a, button, input, select, textarea, [tabindex]:not([tabindex="-1"])');
307
- allFocusableElements.forEach(el => {
308
- el.style.pointerEvents = 'none';
309
- el.setAttribute('data-original-tabindex', el.getAttribute('tabindex') || '0');
310
- el.setAttribute('tabindex', '-1');
311
- });
312
-
313
- // Animation timeline
314
- document.fonts.ready.then(() => {
315
-
316
- // Split text setup (after fonts are loaded)
317
- headingSplits = [];
318
-
319
- if (heading.length > 0) {
320
- headingSplitElements.forEach((parent, index) => {
321
- const textElement = heading[index];
322
- const splitType = parent.getAttribute('data-hs-heroconfig') || 'word';
323
-
324
- let splitConfig = {};
325
- let elementsClass = '';
326
-
327
- if (splitType === 'char') {
328
- splitConfig = {
329
- type: "words,chars",
330
- mask: "chars",
331
- charsClass: "char"
332
- };
333
- elementsClass = 'chars';
334
- } else if (splitType === 'line') {
335
- splitConfig = {
336
- type: "lines",
337
- mask: "lines",
338
- linesClass: "line"
339
- };
340
- elementsClass = 'lines';
341
- } else {
342
- splitConfig = {
343
- type: "words",
344
- mask: "words",
345
- wordsClass: "word"
346
- };
347
- elementsClass = 'words';
348
- }
349
-
350
- const split = new SplitText(textElement, splitConfig);
351
- split.elementsClass = elementsClass;
352
- headingSplits.push(split);
353
-
354
- gsap.set(split[elementsClass], { yPercent: config.headingSplit.yPercent });
355
- gsap.set(textElement, { autoAlpha: 1 });
356
- });
357
- }
358
-
359
- // Split text setup for subheadings
360
- if (subheading.length > 0) {
361
- subheadingSplitElements.forEach((parent, index) => {
362
- const textElement = subheading[index];
363
- const splitType = parent.getAttribute('data-hs-heroconfig') || 'word';
364
-
365
- let splitConfig = {};
366
- let elementsClass = '';
367
-
368
- if (splitType === 'char') {
369
- splitConfig = {
370
- type: "words,chars",
371
- mask: "chars",
372
- charsClass: "char"
373
- };
374
- elementsClass = 'chars';
375
- } else if (splitType === 'line') {
376
- splitConfig = {
377
- type: "lines",
378
- mask: "lines",
379
- linesClass: "line"
380
- };
381
- elementsClass = 'lines';
382
- } else {
383
- splitConfig = {
384
- type: "words",
385
- mask: "words",
386
- wordsClass: "word"
387
- };
388
- elementsClass = 'words';
389
- }
390
-
391
- const split = new SplitText(textElement, splitConfig);
392
- split.elementsClass = elementsClass;
393
- subheadingSplits.push(split);
394
-
395
- gsap.set(split[elementsClass], { yPercent: config.subheadingSplit.yPercent });
396
- gsap.set(textElement, { autoAlpha: 1 });
397
- });
398
- }
399
-
400
- heroTimeout = setTimeout(() => {
401
- heroTimeline = gsap.timeline();
402
-
403
- if (announceElements.length > 0) {
404
- heroTimeline.to(announceElements,
405
- { opacity: 1, y: 0, duration: config.nav.duration, ease: config.nav.ease },
406
- timing.announce
407
- );
408
- }
409
-
410
- if (navElement) {
411
- heroTimeline.to(navElement,
412
- { opacity: 1, y: 0, duration: config.nav.duration, ease: config.nav.ease },
413
- timing.nav
414
- );
415
- }
416
-
417
- if (hasAdvancedNav && navLogoElements.length > 0) {
418
- heroTimeline.to(navLogoElements,
419
- { opacity: 1, duration: .5, ease: config.nav.ease },
420
- timing.navLogo
421
- );
422
- }
423
-
424
- if (hasAdvancedNav && navListAllChildren.length > 0) {
425
- heroTimeline.to(navListAllChildren,
426
- {
427
- opacity: 1,
428
- yPercent: 0,
429
- duration: config.nav.duration,
430
- stagger: 0.05,
431
- ease: config.nav.ease,
432
- onComplete: () => {
433
- // Remove u-overflow-clip class from list children
434
- const navListParents = document.querySelectorAll('[data-hs-hero="nav-list"]');
435
- navListParents.forEach(parent => {
436
- const children = parent.children;
437
- Array.from(children).forEach(child => {
438
- child.classList.remove('u-overflow-clip');
439
- });
440
- });
441
- }
442
- },
443
- timing.navList
444
- );
445
- }
446
-
447
- if (hasAdvancedNav && navMenuElements.length > 0) {
448
- heroTimeline.to(navMenuElements,
449
- { opacity: 1, duration: config.nav.duration, ease: config.nav.ease },
450
- timing.navMenu
451
- );
452
- }
453
-
454
- if (hasAdvancedNav && navButton.length > 0) {
455
- heroTimeline.to(navButton,
456
- { opacity: 1, duration: config.nav.duration, ease: config.nav.ease },
457
- timing.navButton
458
- );
459
- }
460
-
461
- if (headingSplits.length > 0) {
462
- headingSplits.forEach(split => {
463
- heroTimeline.to(split[split.elementsClass],
464
- {
465
- yPercent: 0,
466
- duration: config.headingSplit.duration,
467
- stagger: config.headingSplit.stagger,
468
- ease: config.headingSplit.ease,
469
- onComplete: () => {
470
- if (split && split.revert) {
471
-
472
- }
473
- }
474
- },
475
- timing.heading
476
- );
477
- });
478
- }
479
-
480
- if (subheadingSplits.length > 0) {
481
- subheadingSplits.forEach(split => {
482
- heroTimeline.to(split[split.elementsClass],
483
- {
484
- yPercent: 0,
485
- duration: config.subheadingSplit.duration,
486
- stagger: config.subheadingSplit.stagger,
487
- ease: config.subheadingSplit.ease,
488
- onComplete: () => {
489
- if (split && split.revert) {
490
-
491
- }
492
- }
493
- },
494
- timing.subheading
495
- );
496
- });
497
- }
498
-
499
- if (subheadingAppearElements.length > 0) {
500
- heroTimeline.to(subheadingAppearElements,
501
- { y: 0, opacity: 1, duration: config.appear.duration, ease: config.appear.ease },
502
- timing.subheading
503
- );
504
- }
505
-
506
- if (tag.length > 0) {
507
- heroTimeline.to(tag,
508
- { y: 0, opacity: 1, duration: config.appear.duration, ease: config.appear.ease },
509
- timing.tag
510
- );
511
- }
512
-
513
- if (buttonAllChildren.length > 0) {
514
- heroTimeline.to(buttonAllChildren,
515
- { y: 0, opacity: 1, duration: config.navStagger.duration, stagger: config.navStagger.stagger, ease: config.navStagger.ease },
516
- timing.button
517
- );
518
- }
519
-
520
- if (imageElements.length > 0) {
521
- heroTimeline.to(imageElements,
522
- { opacity: 1, duration: config.appear.duration, ease: config.appear.ease },
523
- timing.image
524
- );
525
- }
526
-
527
- // Combine appear elements and heading appear elements
528
- const allAppearElements = [...appearElements, ...headingAppearElements];
529
-
530
- if (allAppearElements.length > 0) {
531
- heroTimeline.to(allAppearElements,
532
- {
533
- y: 0,
534
- opacity: 1,
535
- duration: config.appear.duration,
536
- ease: config.appear.ease,
537
- onComplete: () => {
538
- // Restore page-wide tabbing and interactions after hero animation completes
539
- const allFocusableElements = document.querySelectorAll('[data-original-tabindex]');
540
- allFocusableElements.forEach(el => {
541
- el.style.pointerEvents = '';
542
- const originalTabindex = el.getAttribute('data-original-tabindex');
543
- if (originalTabindex === '0') {
544
- el.removeAttribute('tabindex');
545
- } else {
546
- el.setAttribute('tabindex', originalTabindex);
547
- }
548
- el.removeAttribute('data-original-tabindex');
549
- });
550
- // Restore nav pointer events
551
- if (navElement) {
552
- navElement.style.pointerEvents = '';
553
- }
554
- }
555
- },
556
- timing.appear
557
- );
558
- } else {
559
- // If no appear elements, restore tabbing when timeline completes
560
- heroTimeline.call(() => {
561
- const allFocusableElements = document.querySelectorAll('[data-original-tabindex]');
562
- allFocusableElements.forEach(el => {
563
- el.style.pointerEvents = '';
564
- const originalTabindex = el.getAttribute('data-original-tabindex');
565
- if (originalTabindex === '0') {
566
- el.removeAttribute('tabindex');
567
- } else {
568
- el.setAttribute('tabindex', originalTabindex);
569
- }
570
- el.removeAttribute('data-original-tabindex');
571
- });
572
- // Restore nav pointer events
573
- if (navElement) {
574
- navElement.style.pointerEvents = '';
575
- }
576
- });
577
- }
578
-
579
- heroTimeout = null;
580
-
581
- }, config.global.animationDelay * 1000);
582
-
583
- });
584
-
585
- // API exposure
586
- window[API_NAME] = window[API_NAME] || {};
587
- window[API_NAME].heroAnimations = {
588
- config: config,
589
- updateConfig: updateConfig,
590
- start: startHeroAnimations,
591
- kill: killHeroAnimations,
592
- restart: () => {
593
- killHeroAnimations();
594
- startHeroAnimations();
595
- }
596
- };
597
-
598
- return { result: 'anim-hero initialized' };
599
- }