@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.
- package/index.js +23 -10
- package/package.json +17 -6
- package/.claude/settings.local.json +0 -21
- package/animations/hero.js +0 -599
- package/animations/text.js +0 -369
- package/animations/transition.js +0 -57
- package/attributes-master/.changeset/README.md +0 -8
- package/attributes-master/.changeset/config.json +0 -11
- package/attributes-master/.gitattributes +0 -2
- package/attributes-master/.github/ISSUE_TEMPLATE/bug_report.md +0 -42
- package/attributes-master/.github/ISSUE_TEMPLATE/feature_request.md +0 -22
- package/attributes-master/.github/workflows/ci.yml +0 -66
- package/attributes-master/.github/workflows/release.yml +0 -40
- package/attributes-master/.prettierignore +0 -3
- package/attributes-master/.prettierrc +0 -8
- package/attributes-master/.vscode/extensions.json +0 -3
- package/attributes-master/.vscode/settings.json +0 -7
- package/attributes-master/CONTRIBUTING.md +0 -72
- package/attributes-master/LICENSE.md +0 -201
- package/attributes-master/README.md +0 -31
- package/attributes-master/eslint.config.js +0 -3
- package/attributes-master/package.json +0 -34
- package/attributes-master/packages/accordion/CHANGELOG.md +0 -89
- package/attributes-master/packages/accordion/README.md +0 -31
- package/attributes-master/packages/accordion/package.json +0 -25
- package/attributes-master/packages/accordion/src/actions/a11y.ts +0 -39
- package/attributes-master/packages/accordion/src/actions/classes.ts +0 -27
- package/attributes-master/packages/accordion/src/actions/content.ts +0 -42
- package/attributes-master/packages/accordion/src/actions/list.ts +0 -36
- package/attributes-master/packages/accordion/src/actions/query.ts +0 -27
- package/attributes-master/packages/accordion/src/actions/settings.ts +0 -61
- package/attributes-master/packages/accordion/src/factory.ts +0 -145
- package/attributes-master/packages/accordion/src/index.ts +0 -3
- package/attributes-master/packages/accordion/src/init.ts +0 -37
- package/attributes-master/packages/accordion/src/utils/constants.ts +0 -62
- package/attributes-master/packages/accordion/src/utils/helpers.ts +0 -5
- package/attributes-master/packages/accordion/src/utils/selectors.ts +0 -12
- package/attributes-master/packages/accordion/src/utils/types.ts +0 -23
- package/attributes-master/packages/accordion/tsconfig.json +0 -3
- package/attributes-master/packages/attributes/CHANGELOG.md +0 -564
- package/attributes-master/packages/attributes/README.md +0 -66
- package/attributes-master/packages/attributes/bin/build.ts +0 -107
- package/attributes-master/packages/attributes/bin/live-reload.js +0 -1
- package/attributes-master/packages/attributes/package.json +0 -77
- package/attributes-master/packages/attributes/playwright.config.ts +0 -89
- package/attributes-master/packages/attributes/src/attributes.ts +0 -153
- package/attributes-master/packages/attributes/src/load.ts +0 -125
- package/attributes-master/packages/attributes/tests/accordion.spec.ts +0 -137
- package/attributes-master/packages/attributes/tests/codehighlight.spec.ts +0 -23
- package/attributes-master/packages/attributes/tests/combobox.spec.ts +0 -321
- package/attributes-master/packages/attributes/tests/copyclip.spec.ts +0 -19
- package/attributes-master/packages/attributes/tests/displayvalues.spec.ts +0 -48
- package/attributes-master/packages/attributes/tests/favcustom.spec.ts +0 -23
- package/attributes-master/packages/attributes/tests/inject.spec.ts +0 -40
- package/attributes-master/packages/attributes/tests/inputactive.spec.ts +0 -77
- package/attributes-master/packages/attributes/tests/inputcounter.spec.ts +0 -83
- package/attributes-master/packages/attributes/tests/list.spec.ts +0 -800
- package/attributes-master/packages/attributes/tests/mirrorclick.spec.ts +0 -22
- package/attributes-master/packages/attributes/tests/mirrorinput.spec.ts +0 -37
- package/attributes-master/packages/attributes/tests/modal.spec.ts +0 -34
- package/attributes-master/packages/attributes/tests/numbercount.spec.ts +0 -40
- package/attributes-master/packages/attributes/tests/readtime.spec.ts +0 -19
- package/attributes-master/packages/attributes/tests/selectcustom.spec.ts +0 -51
- package/attributes-master/packages/attributes/tests/socialshare.spec.ts +0 -54
- package/attributes-master/packages/attributes/tests/starrating.spec.ts +0 -79
- package/attributes-master/packages/attributes/tests/toc.spec.ts +0 -38
- package/attributes-master/packages/attributes/tests/utils/index.ts +0 -16
- package/attributes-master/packages/attributes/tsconfig.json +0 -6
- package/attributes-master/packages/autovideo/CHANGELOG.md +0 -182
- package/attributes-master/packages/autovideo/README.md +0 -31
- package/attributes-master/packages/autovideo/package.json +0 -22
- package/attributes-master/packages/autovideo/src/index.ts +0 -3
- package/attributes-master/packages/autovideo/src/init.ts +0 -52
- package/attributes-master/packages/autovideo/src/types.ts +0 -5
- package/attributes-master/packages/autovideo/src/utils/constants.ts +0 -4
- package/attributes-master/packages/autovideo/tsconfig.json +0 -3
- package/attributes-master/packages/codehighlight/CHANGELOG.md +0 -185
- package/attributes-master/packages/codehighlight/README.md +0 -27
- package/attributes-master/packages/codehighlight/package.json +0 -23
- package/attributes-master/packages/codehighlight/src/actions/import.ts +0 -50
- package/attributes-master/packages/codehighlight/src/index.ts +0 -3
- package/attributes-master/packages/codehighlight/src/init.ts +0 -53
- package/attributes-master/packages/codehighlight/src/utils/constants.ts +0 -24
- package/attributes-master/packages/codehighlight/src/utils/selectors.ts +0 -5
- package/attributes-master/packages/codehighlight/src/utils/themes.ts +0 -202
- package/attributes-master/packages/codehighlight/tsconfig.json +0 -3
- package/attributes-master/packages/combobox/CHANGELOG.md +0 -99
- package/attributes-master/packages/combobox/README.md +0 -27
- package/attributes-master/packages/combobox/package.json +0 -23
- package/attributes-master/packages/combobox/src/actions/a11y.ts +0 -29
- package/attributes-master/packages/combobox/src/actions/body/index.ts +0 -12
- package/attributes-master/packages/combobox/src/actions/clearDropdown/index.ts +0 -37
- package/attributes-master/packages/combobox/src/actions/dropdownList/index.ts +0 -220
- package/attributes-master/packages/combobox/src/actions/dropdownToggle/index.ts +0 -34
- package/attributes-master/packages/combobox/src/actions/events.ts +0 -75
- package/attributes-master/packages/combobox/src/actions/input/index.ts +0 -235
- package/attributes-master/packages/combobox/src/actions/observe.ts +0 -158
- package/attributes-master/packages/combobox/src/actions/populate.ts +0 -97
- package/attributes-master/packages/combobox/src/actions/selectElement/index.ts +0 -23
- package/attributes-master/packages/combobox/src/actions/settings.ts +0 -134
- package/attributes-master/packages/combobox/src/actions/state.ts +0 -34
- package/attributes-master/packages/combobox/src/index.ts +0 -3
- package/attributes-master/packages/combobox/src/init.ts +0 -52
- package/attributes-master/packages/combobox/src/utils/constants.ts +0 -48
- package/attributes-master/packages/combobox/src/utils/dropdowns.ts +0 -120
- package/attributes-master/packages/combobox/src/utils/index.ts +0 -1
- package/attributes-master/packages/combobox/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/combobox/src/utils/types.ts +0 -14
- package/attributes-master/packages/combobox/tsconfig.json +0 -3
- package/attributes-master/packages/copyclip/CHANGELOG.md +0 -213
- package/attributes-master/packages/copyclip/README.md +0 -27
- package/attributes-master/packages/copyclip/package.json +0 -23
- package/attributes-master/packages/copyclip/src/factory.ts +0 -67
- package/attributes-master/packages/copyclip/src/index.ts +0 -3
- package/attributes-master/packages/copyclip/src/init.ts +0 -68
- package/attributes-master/packages/copyclip/src/utils/constants.ts +0 -40
- package/attributes-master/packages/copyclip/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/copyclip/tsconfig.json +0 -3
- package/attributes-master/packages/displayvalues/CHANGELOG.md +0 -164
- package/attributes-master/packages/displayvalues/README.md +0 -27
- package/attributes-master/packages/displayvalues/package.json +0 -22
- package/attributes-master/packages/displayvalues/src/actions/collect.ts +0 -17
- package/attributes-master/packages/displayvalues/src/actions/events.ts +0 -22
- package/attributes-master/packages/displayvalues/src/actions/sync.ts +0 -23
- package/attributes-master/packages/displayvalues/src/index.ts +0 -3
- package/attributes-master/packages/displayvalues/src/init.ts +0 -31
- package/attributes-master/packages/displayvalues/src/utils/constants.ts +0 -20
- package/attributes-master/packages/displayvalues/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/displayvalues/src/utils/stores.ts +0 -3
- package/attributes-master/packages/displayvalues/tsconfig.json +0 -3
- package/attributes-master/packages/docs/CHANGELOG.md +0 -108
- package/attributes-master/packages/docs/README.md +0 -3
- package/attributes-master/packages/docs/bin/build.js +0 -92
- package/attributes-master/packages/docs/bin/live-reload.js +0 -1
- package/attributes-master/packages/docs/package.json +0 -40
- package/attributes-master/packages/docs/src/copy.ts +0 -260
- package/attributes-master/packages/docs/src/x-ray.ts +0 -377
- package/attributes-master/packages/docs/tsconfig.json +0 -3
- package/attributes-master/packages/favcustom/CHANGELOG.md +0 -194
- package/attributes-master/packages/favcustom/README.md +0 -27
- package/attributes-master/packages/favcustom/package.json +0 -22
- package/attributes-master/packages/favcustom/src/index.ts +0 -3
- package/attributes-master/packages/favcustom/src/init.ts +0 -30
- package/attributes-master/packages/favcustom/src/utils/constants.ts +0 -10
- package/attributes-master/packages/favcustom/src/utils/selectors.ts +0 -5
- package/attributes-master/packages/favcustom/tsconfig.json +0 -3
- package/attributes-master/packages/formsubmit/CHANGELOG.md +0 -161
- package/attributes-master/packages/formsubmit/README.md +0 -51
- package/attributes-master/packages/formsubmit/package.json +0 -22
- package/attributes-master/packages/formsubmit/src/actions/redirect.ts +0 -9
- package/attributes-master/packages/formsubmit/src/actions/reset.ts +0 -49
- package/attributes-master/packages/formsubmit/src/actions/submit.ts +0 -34
- package/attributes-master/packages/formsubmit/src/components/Form.ts +0 -231
- package/attributes-master/packages/formsubmit/src/factory.ts +0 -62
- package/attributes-master/packages/formsubmit/src/index.ts +0 -3
- package/attributes-master/packages/formsubmit/src/init.ts +0 -24
- package/attributes-master/packages/formsubmit/src/utils/attributes.ts +0 -19
- package/attributes-master/packages/formsubmit/src/utils/constants.ts +0 -89
- package/attributes-master/packages/formsubmit/src/utils/dom.ts +0 -76
- package/attributes-master/packages/formsubmit/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/formsubmit/src/utils/types.ts +0 -7
- package/attributes-master/packages/formsubmit/tsconfig.json +0 -3
- package/attributes-master/packages/inject/CHANGELOG.md +0 -117
- package/attributes-master/packages/inject/README.md +0 -60
- package/attributes-master/packages/inject/package.json +0 -22
- package/attributes-master/packages/inject/src/actions/collect.ts +0 -125
- package/attributes-master/packages/inject/src/actions/css.ts +0 -27
- package/attributes-master/packages/inject/src/actions/prefetch.ts +0 -44
- package/attributes-master/packages/inject/src/factory.ts +0 -123
- package/attributes-master/packages/inject/src/index.ts +0 -3
- package/attributes-master/packages/inject/src/init.ts +0 -22
- package/attributes-master/packages/inject/src/utils/constants.ts +0 -89
- package/attributes-master/packages/inject/src/utils/helpers.ts +0 -36
- package/attributes-master/packages/inject/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/inject/src/utils/types.ts +0 -16
- package/attributes-master/packages/inject/tsconfig.json +0 -3
- package/attributes-master/packages/inputactive/CHANGELOG.md +0 -58
- package/attributes-master/packages/inputactive/README.md +0 -25
- package/attributes-master/packages/inputactive/package.json +0 -22
- package/attributes-master/packages/inputactive/src/actions/classes.ts +0 -43
- package/attributes-master/packages/inputactive/src/factory.ts +0 -24
- package/attributes-master/packages/inputactive/src/index.ts +0 -3
- package/attributes-master/packages/inputactive/src/init.ts +0 -18
- package/attributes-master/packages/inputactive/src/utils/constants.ts +0 -13
- package/attributes-master/packages/inputactive/src/utils/selectors.ts +0 -5
- package/attributes-master/packages/inputactive/tsconfig.json +0 -3
- package/attributes-master/packages/inputcounter/CHANGELOG.md +0 -110
- package/attributes-master/packages/inputcounter/README.md +0 -25
- package/attributes-master/packages/inputcounter/package.json +0 -22
- package/attributes-master/packages/inputcounter/src/actions/a11y.ts +0 -23
- package/attributes-master/packages/inputcounter/src/actions/buttons.ts +0 -61
- package/attributes-master/packages/inputcounter/src/actions/input.ts +0 -31
- package/attributes-master/packages/inputcounter/src/actions/style.ts +0 -12
- package/attributes-master/packages/inputcounter/src/factory.ts +0 -51
- package/attributes-master/packages/inputcounter/src/index.ts +0 -3
- package/attributes-master/packages/inputcounter/src/init.ts +0 -22
- package/attributes-master/packages/inputcounter/src/utils/constants.ts +0 -59
- package/attributes-master/packages/inputcounter/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/inputcounter/tsconfig.json +0 -3
- package/attributes-master/packages/list/CHANGELOG.md +0 -185
- package/attributes-master/packages/list/README.md +0 -331
- package/attributes-master/packages/list/package.json +0 -37
- package/attributes-master/packages/list/src/combine/index.ts +0 -38
- package/attributes-master/packages/list/src/components/List.ts +0 -861
- package/attributes-master/packages/list/src/components/ListItem.ts +0 -229
- package/attributes-master/packages/list/src/components/index.ts +0 -2
- package/attributes-master/packages/list/src/factory.ts +0 -130
- package/attributes-master/packages/list/src/filter/dynamic/conditions.ts +0 -639
- package/attributes-master/packages/list/src/filter/dynamic/groups.ts +0 -221
- package/attributes-master/packages/list/src/filter/dynamic/index.ts +0 -119
- package/attributes-master/packages/list/src/filter/dynamic/utils.ts +0 -44
- package/attributes-master/packages/list/src/filter/elements.ts +0 -93
- package/attributes-master/packages/list/src/filter/filter.ts +0 -118
- package/attributes-master/packages/list/src/filter/filter.worker.ts +0 -152
- package/attributes-master/packages/list/src/filter/index.ts +0 -94
- package/attributes-master/packages/list/src/filter/standard/conditions.ts +0 -123
- package/attributes-master/packages/list/src/filter/standard/facets.ts +0 -253
- package/attributes-master/packages/list/src/filter/standard/index.ts +0 -176
- package/attributes-master/packages/list/src/filter/standard/query.ts +0 -111
- package/attributes-master/packages/list/src/filter/tags.ts +0 -314
- package/attributes-master/packages/list/src/filter/types.ts +0 -62
- package/attributes-master/packages/list/src/filter/utils.ts +0 -126
- package/attributes-master/packages/list/src/index.ts +0 -4
- package/attributes-master/packages/list/src/init.ts +0 -38
- package/attributes-master/packages/list/src/load/all.ts +0 -27
- package/attributes-master/packages/list/src/load/elements.ts +0 -39
- package/attributes-master/packages/list/src/load/index.ts +0 -63
- package/attributes-master/packages/list/src/load/infinite.ts +0 -79
- package/attributes-master/packages/list/src/load/load.ts +0 -191
- package/attributes-master/packages/list/src/load/more.ts +0 -97
- package/attributes-master/packages/list/src/load/pagination.ts +0 -402
- package/attributes-master/packages/list/src/nest/index.ts +0 -198
- package/attributes-master/packages/list/src/prevnext/index.ts +0 -98
- package/attributes-master/packages/list/src/select/index.ts +0 -56
- package/attributes-master/packages/list/src/slider/index.ts +0 -62
- package/attributes-master/packages/list/src/sort/buttons.ts +0 -96
- package/attributes-master/packages/list/src/sort/dropdown.ts +0 -179
- package/attributes-master/packages/list/src/sort/index.ts +0 -81
- package/attributes-master/packages/list/src/sort/query.ts +0 -63
- package/attributes-master/packages/list/src/sort/select.ts +0 -67
- package/attributes-master/packages/list/src/sort/sort.ts +0 -79
- package/attributes-master/packages/list/src/sort/types.ts +0 -28
- package/attributes-master/packages/list/src/static/index.ts +0 -73
- package/attributes-master/packages/list/src/tabs/index.ts +0 -97
- package/attributes-master/packages/list/src/utils/constants.ts +0 -728
- package/attributes-master/packages/list/src/utils/dom.ts +0 -108
- package/attributes-master/packages/list/src/utils/pagination.ts +0 -14
- package/attributes-master/packages/list/src/utils/selectors.ts +0 -18
- package/attributes-master/packages/list/src/utils/store.ts +0 -5
- package/attributes-master/packages/list/tsconfig.json +0 -3
- package/attributes-master/packages/mirrorclick/CHANGELOG.md +0 -171
- package/attributes-master/packages/mirrorclick/README.md +0 -25
- package/attributes-master/packages/mirrorclick/package.json +0 -22
- package/attributes-master/packages/mirrorclick/src/index.ts +0 -3
- package/attributes-master/packages/mirrorclick/src/init.ts +0 -35
- package/attributes-master/packages/mirrorclick/src/utils/constants.ts +0 -20
- package/attributes-master/packages/mirrorclick/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/mirrorclick/tsconfig.json +0 -3
- package/attributes-master/packages/mirrorinput/CHANGELOG.md +0 -172
- package/attributes-master/packages/mirrorinput/README.md +0 -25
- package/attributes-master/packages/mirrorinput/package.json +0 -22
- package/attributes-master/packages/mirrorinput/src/index.ts +0 -3
- package/attributes-master/packages/mirrorinput/src/init.ts +0 -48
- package/attributes-master/packages/mirrorinput/src/utils/constants.ts +0 -15
- package/attributes-master/packages/mirrorinput/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/mirrorinput/tsconfig.json +0 -3
- package/attributes-master/packages/modal/CHANGELOG.md +0 -94
- package/attributes-master/packages/modal/README.md +0 -29
- package/attributes-master/packages/modal/package.json +0 -23
- package/attributes-master/packages/modal/src/actions/a11y.ts +0 -46
- package/attributes-master/packages/modal/src/actions/modal.ts +0 -164
- package/attributes-master/packages/modal/src/actions/settings.ts +0 -21
- package/attributes-master/packages/modal/src/factory.ts +0 -26
- package/attributes-master/packages/modal/src/index.ts +0 -3
- package/attributes-master/packages/modal/src/init.ts +0 -22
- package/attributes-master/packages/modal/src/utils/constants.ts +0 -54
- package/attributes-master/packages/modal/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/modal/src/utils/types.ts +0 -12
- package/attributes-master/packages/modal/tsconfig.json +0 -3
- package/attributes-master/packages/numbercount/CHANGELOG.md +0 -90
- package/attributes-master/packages/numbercount/README.md +0 -27
- package/attributes-master/packages/numbercount/package.json +0 -23
- package/attributes-master/packages/numbercount/src/actions/a11y.ts +0 -26
- package/attributes-master/packages/numbercount/src/actions/animate.ts +0 -43
- package/attributes-master/packages/numbercount/src/actions/observe.ts +0 -44
- package/attributes-master/packages/numbercount/src/factory.ts +0 -31
- package/attributes-master/packages/numbercount/src/index.ts +0 -3
- package/attributes-master/packages/numbercount/src/init.ts +0 -22
- package/attributes-master/packages/numbercount/src/utils/constants.ts +0 -40
- package/attributes-master/packages/numbercount/src/utils/helpers.ts +0 -31
- package/attributes-master/packages/numbercount/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/numbercount/tsconfig.json +0 -3
- package/attributes-master/packages/queryparam/CHANGELOG.md +0 -118
- package/attributes-master/packages/queryparam/README.md +0 -25
- package/attributes-master/packages/queryparam/package.json +0 -22
- package/attributes-master/packages/queryparam/src/factory.ts +0 -51
- package/attributes-master/packages/queryparam/src/index.ts +0 -3
- package/attributes-master/packages/queryparam/src/init.ts +0 -40
- package/attributes-master/packages/queryparam/src/utils/constants.ts +0 -18
- package/attributes-master/packages/queryparam/src/utils/selectors.ts +0 -5
- package/attributes-master/packages/queryparam/tsconfig.json +0 -3
- package/attributes-master/packages/rangeslider/CHANGELOG.md +0 -236
- package/attributes-master/packages/rangeslider/README.md +0 -95
- package/attributes-master/packages/rangeslider/package.json +0 -23
- package/attributes-master/packages/rangeslider/src/actions/a11y.ts +0 -21
- package/attributes-master/packages/rangeslider/src/actions/events.ts +0 -9
- package/attributes-master/packages/rangeslider/src/actions/settings.ts +0 -97
- package/attributes-master/packages/rangeslider/src/actions/styles.ts +0 -10
- package/attributes-master/packages/rangeslider/src/actions/values.ts +0 -47
- package/attributes-master/packages/rangeslider/src/components/Fill.ts +0 -70
- package/attributes-master/packages/rangeslider/src/components/Handle.ts +0 -281
- package/attributes-master/packages/rangeslider/src/factory.ts +0 -100
- package/attributes-master/packages/rangeslider/src/index.ts +0 -3
- package/attributes-master/packages/rangeslider/src/init.ts +0 -194
- package/attributes-master/packages/rangeslider/src/utils/constants.ts +0 -87
- package/attributes-master/packages/rangeslider/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/rangeslider/src/utils/types.ts +0 -6
- package/attributes-master/packages/rangeslider/tsconfig.json +0 -3
- package/attributes-master/packages/readtime/CHANGELOG.md +0 -108
- package/attributes-master/packages/readtime/README.md +0 -25
- package/attributes-master/packages/readtime/package.json +0 -22
- package/attributes-master/packages/readtime/src/factory.ts +0 -21
- package/attributes-master/packages/readtime/src/index.ts +0 -3
- package/attributes-master/packages/readtime/src/init.ts +0 -19
- package/attributes-master/packages/readtime/src/utils/constants.ts +0 -33
- package/attributes-master/packages/readtime/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/readtime/tsconfig.json +0 -3
- package/attributes-master/packages/removequery/CHANGELOG.md +0 -8
- package/attributes-master/packages/removequery/README.md +0 -25
- package/attributes-master/packages/removequery/package.json +0 -22
- package/attributes-master/packages/removequery/src/index.ts +0 -3
- package/attributes-master/packages/removequery/src/init.ts +0 -18
- package/attributes-master/packages/removequery/src/utils/constants.ts +0 -5
- package/attributes-master/packages/removequery/tsconfig.json +0 -3
- package/attributes-master/packages/scrolldisable/CHANGELOG.md +0 -164
- package/attributes-master/packages/scrolldisable/README.md +0 -29
- package/attributes-master/packages/scrolldisable/package.json +0 -27
- package/attributes-master/packages/scrolldisable/src/click.ts +0 -40
- package/attributes-master/packages/scrolldisable/src/display.ts +0 -117
- package/attributes-master/packages/scrolldisable/src/index.ts +0 -3
- package/attributes-master/packages/scrolldisable/src/init.ts +0 -36
- package/attributes-master/packages/scrolldisable/src/scroll.ts +0 -63
- package/attributes-master/packages/scrolldisable/src/utils/constants.ts +0 -56
- package/attributes-master/packages/scrolldisable/src/utils/selectors.ts +0 -6
- package/attributes-master/packages/scrolldisable/tsconfig.json +0 -3
- package/attributes-master/packages/selectcustom/CHANGELOG.md +0 -242
- package/attributes-master/packages/selectcustom/README.md +0 -25
- package/attributes-master/packages/selectcustom/package.json +0 -23
- package/attributes-master/packages/selectcustom/src/actions/a11y.ts +0 -29
- package/attributes-master/packages/selectcustom/src/actions/events.ts +0 -159
- package/attributes-master/packages/selectcustom/src/actions/observe.ts +0 -83
- package/attributes-master/packages/selectcustom/src/actions/populate.ts +0 -67
- package/attributes-master/packages/selectcustom/src/actions/settings.ts +0 -68
- package/attributes-master/packages/selectcustom/src/actions/state.ts +0 -41
- package/attributes-master/packages/selectcustom/src/index.ts +0 -3
- package/attributes-master/packages/selectcustom/src/init.ts +0 -51
- package/attributes-master/packages/selectcustom/src/utils/constants.ts +0 -34
- package/attributes-master/packages/selectcustom/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/selectcustom/src/utils/types.ts +0 -14
- package/attributes-master/packages/selectcustom/tsconfig.json +0 -3
- package/attributes-master/packages/sliderdots/CHANGELOG.md +0 -220
- package/attributes-master/packages/sliderdots/README.md +0 -27
- package/attributes-master/packages/sliderdots/package.json +0 -22
- package/attributes-master/packages/sliderdots/src/actions/events.ts +0 -26
- package/attributes-master/packages/sliderdots/src/actions/observe.ts +0 -40
- package/attributes-master/packages/sliderdots/src/actions/populate.ts +0 -46
- package/attributes-master/packages/sliderdots/src/actions/sync.ts +0 -28
- package/attributes-master/packages/sliderdots/src/actions/wait.ts +0 -28
- package/attributes-master/packages/sliderdots/src/factory.ts +0 -57
- package/attributes-master/packages/sliderdots/src/index.ts +0 -3
- package/attributes-master/packages/sliderdots/src/init.ts +0 -30
- package/attributes-master/packages/sliderdots/src/utils/constants.ts +0 -33
- package/attributes-master/packages/sliderdots/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/sliderdots/src/utils/types.ts +0 -7
- package/attributes-master/packages/sliderdots/tsconfig.json +0 -3
- package/attributes-master/packages/smartlightbox/CHANGELOG.md +0 -203
- package/attributes-master/packages/smartlightbox/README.md +0 -25
- package/attributes-master/packages/smartlightbox/package.json +0 -22
- package/attributes-master/packages/smartlightbox/src/actions/collect.ts +0 -15
- package/attributes-master/packages/smartlightbox/src/actions/move.ts +0 -25
- package/attributes-master/packages/smartlightbox/src/index.ts +0 -3
- package/attributes-master/packages/smartlightbox/src/init.ts +0 -61
- package/attributes-master/packages/smartlightbox/src/utils/constants.ts +0 -31
- package/attributes-master/packages/smartlightbox/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/smartlightbox/tsconfig.json +0 -3
- package/attributes-master/packages/socialshare/CHANGELOG.md +0 -170
- package/attributes-master/packages/socialshare/README.md +0 -25
- package/attributes-master/packages/socialshare/package.json +0 -25
- package/attributes-master/packages/socialshare/src/actions/collect.ts +0 -93
- package/attributes-master/packages/socialshare/src/actions/share.ts +0 -91
- package/attributes-master/packages/socialshare/src/actions/trigger.ts +0 -46
- package/attributes-master/packages/socialshare/src/factory.ts +0 -149
- package/attributes-master/packages/socialshare/src/index.ts +0 -3
- package/attributes-master/packages/socialshare/src/init.ts +0 -35
- package/attributes-master/packages/socialshare/src/utils/constants.ts +0 -94
- package/attributes-master/packages/socialshare/src/utils/dom.ts +0 -8
- package/attributes-master/packages/socialshare/src/utils/selectors.ts +0 -6
- package/attributes-master/packages/socialshare/src/utils/stores.ts +0 -10
- package/attributes-master/packages/socialshare/src/utils/types.ts +0 -34
- package/attributes-master/packages/socialshare/tsconfig.json +0 -3
- package/attributes-master/packages/starrating/CHANGELOG.md +0 -70
- package/attributes-master/packages/starrating/README.md +0 -25
- package/attributes-master/packages/starrating/package.json +0 -22
- package/attributes-master/packages/starrating/src/actions/classes.ts +0 -41
- package/attributes-master/packages/starrating/src/actions/events.ts +0 -80
- package/attributes-master/packages/starrating/src/factory.ts +0 -24
- package/attributes-master/packages/starrating/src/index.ts +0 -3
- package/attributes-master/packages/starrating/src/init.ts +0 -24
- package/attributes-master/packages/starrating/src/utils/constants.ts +0 -20
- package/attributes-master/packages/starrating/src/utils/helpers.ts +0 -63
- package/attributes-master/packages/starrating/src/utils/selectors.ts +0 -9
- package/attributes-master/packages/starrating/tsconfig.json +0 -3
- package/attributes-master/packages/template/README.md +0 -25
- package/attributes-master/packages/template/package.json +0 -22
- package/attributes-master/packages/template/src/actions/console.ts +0 -4
- package/attributes-master/packages/template/src/index.ts +0 -3
- package/attributes-master/packages/template/src/init.ts +0 -14
- package/attributes-master/packages/template/src/utils/constants.ts +0 -18
- package/attributes-master/packages/template/src/utils/selectors.ts +0 -5
- package/attributes-master/packages/template/tsconfig.json +0 -3
- package/attributes-master/packages/toc/CHANGELOG.md +0 -192
- package/attributes-master/packages/toc/README.md +0 -25
- package/attributes-master/packages/toc/package.json +0 -23
- package/attributes-master/packages/toc/src/actions/collect.ts +0 -136
- package/attributes-master/packages/toc/src/actions/create.ts +0 -44
- package/attributes-master/packages/toc/src/actions/events.ts +0 -29
- package/attributes-master/packages/toc/src/actions/observe.ts +0 -31
- package/attributes-master/packages/toc/src/actions/populate.ts +0 -68
- package/attributes-master/packages/toc/src/actions/prepare.ts +0 -25
- package/attributes-master/packages/toc/src/actions/scroll.ts +0 -33
- package/attributes-master/packages/toc/src/components/TOCItem.ts +0 -88
- package/attributes-master/packages/toc/src/factory.ts +0 -47
- package/attributes-master/packages/toc/src/index.ts +0 -3
- package/attributes-master/packages/toc/src/init.ts +0 -37
- package/attributes-master/packages/toc/src/utils/constants.ts +0 -55
- package/attributes-master/packages/toc/src/utils/helpers.ts +0 -23
- package/attributes-master/packages/toc/src/utils/selectors.ts +0 -6
- package/attributes-master/packages/toc/src/utils/types.ts +0 -21
- package/attributes-master/packages/toc/tsconfig.json +0 -3
- package/attributes-master/packages/utils/CHANGELOG.md +0 -43
- package/attributes-master/packages/utils/package.json +0 -27
- package/attributes-master/packages/utils/src/animations/factory.ts +0 -100
- package/attributes-master/packages/utils/src/animations/index.ts +0 -73
- package/attributes-master/packages/utils/src/animations/types.ts +0 -37
- package/attributes-master/packages/utils/src/components/Interaction.ts +0 -79
- package/attributes-master/packages/utils/src/components/Renderer.ts +0 -59
- package/attributes-master/packages/utils/src/components/index.ts +0 -2
- package/attributes-master/packages/utils/src/constants/a11y.ts +0 -50
- package/attributes-master/packages/utils/src/constants/attributes.ts +0 -57
- package/attributes-master/packages/utils/src/constants/index.ts +0 -5
- package/attributes-master/packages/utils/src/constants/keyboard.ts +0 -10
- package/attributes-master/packages/utils/src/constants/webflow.ts +0 -74
- package/attributes-master/packages/utils/src/helpers/dates.ts +0 -17
- package/attributes-master/packages/utils/src/helpers/dom.ts +0 -82
- package/attributes-master/packages/utils/src/helpers/events.ts +0 -59
- package/attributes-master/packages/utils/src/helpers/fetch.ts +0 -217
- package/attributes-master/packages/utils/src/helpers/forms.ts +0 -238
- package/attributes-master/packages/utils/src/helpers/guards.ts +0 -138
- package/attributes-master/packages/utils/src/helpers/index.ts +0 -11
- package/attributes-master/packages/utils/src/helpers/numbers.ts +0 -86
- package/attributes-master/packages/utils/src/helpers/selectors.ts +0 -249
- package/attributes-master/packages/utils/src/helpers/strings.ts +0 -19
- package/attributes-master/packages/utils/src/helpers/wait.ts +0 -36
- package/attributes-master/packages/utils/src/helpers/webflow.ts +0 -117
- package/attributes-master/packages/utils/src/index.ts +0 -5
- package/attributes-master/packages/utils/src/types/core.ts +0 -100
- package/attributes-master/packages/utils/src/types/dom.ts +0 -31
- package/attributes-master/packages/utils/src/types/index.ts +0 -4
- package/attributes-master/packages/utils/src/types/utils.ts +0 -20
- package/attributes-master/packages/utils/src/types/webflow.ts +0 -147
- package/attributes-master/packages/utils/tsconfig.json +0 -3
- package/attributes-master/packages/videohls/CHANGELOG.md +0 -76
- package/attributes-master/packages/videohls/README.md +0 -27
- package/attributes-master/packages/videohls/package.json +0 -26
- package/attributes-master/packages/videohls/src/actions/list.ts +0 -23
- package/attributes-master/packages/videohls/src/actions/video.ts +0 -44
- package/attributes-master/packages/videohls/src/index.ts +0 -3
- package/attributes-master/packages/videohls/src/init.ts +0 -28
- package/attributes-master/packages/videohls/src/utils/constants.ts +0 -12
- package/attributes-master/packages/videohls/src/utils/selectors.ts +0 -5
- package/attributes-master/packages/videohls/src/utils/stores.ts +0 -3
- package/attributes-master/packages/videohls/tsconfig.json +0 -3
- package/attributes-master/pnpm-lock.yaml +0 -3317
- package/attributes-master/pnpm-workspace.yaml +0 -3
- package/attributes-master/tsconfig.json +0 -6
- package/autoInit/smooth-scroll.js +0 -89
- package/utils/navbar.js +0 -214
- package/utils/scroll-progress.js +0 -29
- 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
|
-
});
|