[{"version":"1.7.0","markdown":"- 24fb1c75: Added support to use any regular element as a CMS element, essentially allowing users to do things like:\n\n  - Filtering a list of static elements.\n  - Sorting a list of static elements.\n  - Creating Tabs from static elements.\n  - Creating Slides from static elements.\n  - etc...\n\n  Users can now do this is by adding the following Attributes to any element:\n\n  - `fs-cms-element=\"wrapper\"`\n  - `fs-cms-element=\"list\"`\n  - `fs-cms-element=\"item\"`\n  - `fs-cms-element=\"pagination-wrapper\"`\n  - `fs-cms-element=\"pagination-next\"`\n  - `fs-cms-element=\"pagination-previous\"`\n  - `fs-cms-element=\"page-count\"`\n  - `fs-cms-element=\"empty\"`\n\n  This essentially tells Attributes to not only look for the native Webflow elements (Collection List Wrapper, Collection List, etc...), but to also look for these Attributes.\n\n  In order to make static systems work, users have to replicate the same exact structure of the Webflow native CMS. So for example, to create a static list, users have to define elements using the same architecture:\n\n  ```\n  |_ Collection List Wrapper (fs-cms-element=\"wrapper\")\n    |_ Collection List (fs-cms-element=\"list\")\n      |_ Collection List Item (fs-cms-element=\"item\")\n  ```"},{"version":"1.6.0","markdown":"- e4b3b680: Created new `window.fsAttributes.destroy()` method to support SPA environments.\n  This new method allows users to destroy all Attributes instances, cleaning up event listeners, observers, states, global variables, etc.\n\n  Websites that use a client-side router that simulates an SPA environment like [barba.js](https://barba.js.org/) or [Swup](https://swup.js.org/) can now properly init and destroy Attributes.\n  After destroying, Attributes can be manually re-initted by calling `window.fsAttribute[ATTRIBUTE_KEY].init()`.\n\n  Updated changesets system, now all updates will be correctly reflected in [the official updates page](https://www.finsweet.com/attributes/updates)."},{"version":"1.5.1","markdown":"- Updated dependencies [4792998a]\n- Updated dependencies [4792998a]\n  - @global/constants@1.2.0\n  - @finsweet/attributes-cmscore@1.8.0\n  - @global/factory@1.1.5"},{"version":"1.5.0","markdown":"- 07f32375: Created `fs-cmsattribute` Attribute- Updated dependencies [07f32375]\n  - @global/constants@1.1.0\n  - @global/factory@1.1.4\n  - @finsweet/attributes-cmscore@1.7.2"},{"version":"1.4.9","markdown":"- Updated dependencies [d8a4bf6f]\n  - @finsweet/attributes-cmscore@1.7.1"},{"version":"1.4.8","markdown":"- Updated dependencies [ef56d454]\n  - @finsweet/attributes-cmscore@1.7.0"},{"version":"1.4.7","markdown":"- Updated dependencies [299fd136]\n  - @finsweet/attributes-cmscore@1.6.10"},{"version":"1.4.6","markdown":"- Updated dependencies [7542dcdb]\n  - @global/constants@1.0.2\n  - @global/factory@1.1.3\n  - @finsweet/attributes-cmscore@1.6.9"},{"version":"1.4.5","markdown":"- Updated dependencies [bdd1a78]\n  - @global/constants@1.0.1\n  - @global/factory@1.1.2\n  - @finsweet/attributes-cmscore@1.6.8"},{"version":"1.4.4","markdown":"- Updated dependencies [13c3e23]\n  - @global/factory@1.1.1\n  - @finsweet/attributes-cmsload@1.7.5\n  - @finsweet/attributes-cmscore@1.6.7"},{"version":"1.4.3","markdown":"- Updated dependencies [627bf25]\n  - @global/factory@1.1.0\n  - @finsweet/attributes-cmsload@1.7.4\n  - @finsweet/attributes-cmscore@1.6.7"},{"version":"1.4.2","markdown":"- Updated dependencies [8f9d08d]\n  - @finsweet/attributes-cmsload@1.7.3"},{"version":"1.4.1","markdown":"- Updated dependencies [7f509db]\n  - @finsweet/attributes-cmsload@1.7.2"},{"version":"1.4.0","markdown":"Added support to use `cmsselect` + `cmsload` (all modes are supported) together.\n\nNow when a user adds `cmsload` to the parent `Collection List` of a `fs-cmsselect-element=\"text-value\"` element, `cmsselect` will populate the new options as soon they are loaded.\n\nAll `cmsload` modes are supported and will trigger adding all items as options.\nFor instance, if the `Collection List` uses `pagination` mode, all items will be added as `<select>` options even if the user doesn't click on the `Next` button.\n\nAlso, `cmsselect` will now make sure that the added options are unique and not repeated.\nThis means that now users can set the `fs-cmsselect-element=\"text-value\"` to any `Collection List Item` inside a `cmsfilter` setup to populate a `<select>` dropdown in the filters form."},{"version":"1.3.0","markdown":"- Added support wizard and publishing new schema version"},{"version":"1.2.0","markdown":"Included a new `window.fsAttributes.push()` method in the developer API that provides a standarized way to safely access any Attribute internals once it has fully loaded.\nIt can be used like:\n\n```html\n<script>\n  window.fsAttributes = window.fsAttributes || [];\n  window.fsAttributes.push([\n    'cmsselect',\n    (elements) => {\n      console.log('Attribute has successfully loaded!');\n      console.log(elements);\n    },\n  ]);\n</script>\n```"},{"version":"1.1.0","markdown":"- Created `changesets.json` API."},{"version":"1.0.4","markdown":"- Fixed `examples.json` not being available on NPM."},{"version":"1.0.3","markdown":"- Updated package description."},{"version":"1.0.2","markdown":"- Breaking change: renamed `fs-cmsselect-element=\"source\"` as `fs-cmsselect-element=\"text-value\"`.\n- Breaking change: renamed `fs-cmsselect-element=\"target\"` as `fs-cmsselect-element=\"select\"`."},{"version":"1.0.1","markdown":"- Added `initAttributes` call to make sure `window.fsAttributes` exists."},{"version":"1.0.0","markdown":"- Created the attribute package."}]