{"_id":"@castlenine/svelte-aoe","_rev":"13-ae3a14bcaebe5e6c293510f87b096dae","name":"@castlenine/svelte-aoe","dist-tags":{"latest":"5.0.0"},"versions":{"1.1.0":{"name":"@castlenine/svelte-aoe","version":"1.1.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","css","svelte"],"author":{"url":"https://github.com/Castlenine","name":"Alexandre Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@1.1.0","maintainers":[{"name":"castlenine","email":"alexandre@duxreserve.com"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"f5bdf9a0aa16e3cd6a3d7d08228b2eea44d85bee","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-1.1.0.tgz","fileCount":10,"integrity":"sha512-y8SnRfSQlZsEbe9XaFQ5J+51pA3v0ryVp3cFRpfdGumMcw1dk5esCxlH38Yy+Hl0z0D2WxVhb+GAH0wpRXFZQQ==","signatures":[{"sig":"MEUCIQDBamldBppQQw3YOl5spvg7y8X0DllrnA4Gu6HkLRwGcwIgKUQPXidoifo99UO50lB1p/Gl99Zy27QO/RF3Fu1RcoM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17642},"type":"module","types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js"}},"gitHead":"8831d196631e734d43d0d026c3a6e7725bb406ea","scripts":{"dev":"vite dev","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublishOnly":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@duxreserve.com"},"deprecated":"⚠️ Breaking changes in v2.0.0! Please read the README before upgrading: https://github.com/castlenine/svelte-aoe","repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"10.5.0","description":"A Svelte component to animate elements, without dependencies.","directories":{},"_nodeVersion":"21.7.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"^5.4.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_1.1.0_1715003959843_0.07281038751293822","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@castlenine/svelte-aoe","version":"1.1.1","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alexandre Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@1.1.1","maintainers":[{"name":"castlenine","email":"alexandre@duxreserve.com"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"de210ce97640c2f1a0c00ddfe2a4101d94c7ebd8","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-1.1.1.tgz","fileCount":10,"integrity":"sha512-DyaqRkwIN2jB814fQFmv26/QjcfLtQMRJQYU7++64jQcBgetvK5yhNxvMyRG5p9wWooB6eYE+M9Kyhsp3CauFQ==","signatures":[{"sig":"MEQCIHt60z2cnDi2SE4JNdgZsHJHIFg0BWEkp/gQ6CxAdSR/AiAVhovIV3oM5MfNPvot3F242pTYze0NU4gL+KCuH7qwJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17645},"type":"module","types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js"}},"gitHead":"916562e1c03fc338070fdc414e7b43762bf7ccf6","scripts":{"dev":"vite dev","build":"vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublishOnly":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@duxreserve.com"},"deprecated":"⚠️ Breaking changes in v2.0.0! Please read the README before upgrading: https://github.com/castlenine/svelte-aoe","repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"10.5.0","description":"A Svelte component to animate elements, without dependencies.","directories":{},"_nodeVersion":"21.7.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"^5.4.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_1.1.1_1715007095261_0.5674613805402422","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@castlenine/svelte-aoe","version":"1.2.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alexandre Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@1.2.0","maintainers":[{"name":"castlenine","email":"alexandre@duxreserve.com"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"b39a5e44b8b1015aa8043a03aa981279f551a6d6","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-1.2.0.tgz","fileCount":10,"integrity":"sha512-8QYUbEUygktyjrrIT5Y7qGbYwuMrauVFf7b8/mtO1mJuHe9KZ9ZegzJdtl1CgVPhj4IYQx6GN4XjGQEpzyUipA==","signatures":[{"sig":"MEUCIGsKzWEMmlfqdrjApl9geYvzWCn9Fr9cvYes4nBtroMCAiEAzTqZQAh8AU9Za6krYMpBjt1iOyaHZtsW7opCow1F4kI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21307},"type":"module","types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js"}},"gitHead":"9810d912ef72d2e62f2aa8d3acdf8db2a13c8b67","scripts":{"dev":"vite dev","build":"npm run check && vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublishOnly":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@duxreserve.com"},"deprecated":"⚠️ Breaking changes in v2.0.0! Please read the README before upgrading: https://github.com/castlenine/svelte-aoe","repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"10.5.0","description":"A Svelte component to animate elements, without dependencies.","directories":{},"_nodeVersion":"21.7.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"^5.4.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_1.2.0_1715019801510_0.6333144717024837","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"@castlenine/svelte-aoe","version":"1.3.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alexandre Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@1.3.0","maintainers":[{"name":"castlenine","email":"alexandre@duxreserve.com"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"7cb1997a0a648008ba17a6eb82ad9681b3ea458b","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-1.3.0.tgz","fileCount":10,"integrity":"sha512-mvSkE5etc7/Bqf6GgzegF9BlaObR1hsSWDOfHTmK2AviT24IwAdBmK6KbOK2hBCOMtdavSEuna80AsWx3u8LMg==","signatures":[{"sig":"MEQCIFZbrSiOvOWlU3Y+I3NkoQsI+x4l57MBP57991V0okucAiBiobG9QvFPvTk3svAqaX3nag5yMgwdJdZgdrVvuqgjNw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21643},"type":"module","types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js"}},"gitHead":"a94b29d473abd79e51bc4956e22282b960ca626a","scripts":{"dev":"vite dev","build":"npm run check && vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublishOnly":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@duxreserve.com"},"deprecated":"⚠️ Breaking changes in v2.0.0! Please read the README before upgrading: https://github.com/castlenine/svelte-aoe","repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"10.5.0","description":"A Svelte component to animate elements, without dependencies.","directories":{},"_nodeVersion":"21.7.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"^5.4.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_1.3.0_1715025654065_0.6442387670070773","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"@castlenine/svelte-aoe","version":"1.4.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alexandre Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@1.4.0","maintainers":[{"name":"castlenine","email":"alexandre@duxreserve.com"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"901fa781193ea00cfab88444c8bf93dc0c72fcf0","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-1.4.0.tgz","fileCount":10,"integrity":"sha512-JcE81NRHe/0yKNKvEQGsAbHaT4FE4MsiHFpztISPpdFcpm06ECUWe72VQAPtPi+Mq00V7qECwsS5FzgOHbRPiQ==","signatures":[{"sig":"MEQCIDwffX0BvghvKPKOgOqBHjWHdpP3s7h94cTBEJU6UNB+AiB7QKyEc1DN+U63zidvRZxQA2vMqaFCswY+KDMwTWu9cA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21307},"type":"module","types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","svelte":"./dist/index.js"}},"gitHead":"c93b2e953048d4515c2be4d594d0ea4c473b40ad","scripts":{"dev":"vite dev","build":"npm run check && vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublishOnly":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@duxreserve.com"},"deprecated":"⚠️ Breaking changes in v2.0.0! Please read the README before upgrading: https://github.com/castlenine/svelte-aoe","repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"10.5.0","description":"A Svelte component to animate elements, without dependencies.","directories":{},"_nodeVersion":"21.7.3","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"^5.4.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_1.4.0_1715031142068_0.5204444470669436","host":"s3://npm-registry-packages"}},"1.5.0":{"name":"@castlenine/svelte-aoe","version":"1.5.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alex Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@1.5.0","maintainers":[{"name":"castlenine","email":"alexandre@castlenine.io"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"71bb0771e126385f8bfcf70c183ab2dd74fe1a0a","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-1.5.0.tgz","fileCount":10,"integrity":"sha512-qZyWFMg8PJmwfwKyIkfOchkjsK35WL4eBdt1ilzA5Ciq4XD2G03pblSw3t8p/yVq1Fgl+QUbKt6D56dbxVn4Jw==","signatures":[{"sig":"MEQCIC2D90FA7B6COTDKTD46Td14DWMECPlq/wojie+si6NUAiBMuqzkw7mcPOaMXBMebJ+JtVaiieVSRhDnNQD+uPmG3Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14483},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"gitHead":"0d501e5b5717d951a478b1699d9a1bdccc183139","scripts":{"dev":"vite dev","build":"npm run check && vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublishOnly":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@castlenine.io"},"deprecated":"⚠️ Breaking changes in v2.0.0! Please read the README before upgrading: https://github.com/castlenine/svelte-aoe","repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"11.16.0","description":"A Svelte component to animate elements, with no dependencies.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"~4.9.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_1.5.0_1780799761695_0.06957745731054321","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@castlenine/svelte-aoe","version":"2.0.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alex Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@2.0.0","maintainers":[{"name":"castlenine","email":"alexandre@castlenine.io"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"eb70c03e322c42a52d5ef8ac977a3ef88094f256","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-2.0.0.tgz","fileCount":10,"integrity":"sha512-RQg9dHW2GRZjsUqwxBAHCLSwi+rgUcFXYhOxmfhKinL/mKL3Cx242bMQjwMotD/0CsHgKKjEp47/HgvZzB/X0w==","signatures":[{"sig":"MEUCIQCOt7jIPDAclNYpcRdMLMg4R6MbsSYm140yh+uTFFS/awIgWO2aauS+A5P6W0+VweCKKru87TIKAGyLMKFW355Ykfw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19706},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"gitHead":"15f6d199964500a9c321d8d6020361bdf9097023","scripts":{"dev":"vite dev","build":"npm run check && vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublish-only":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@castlenine.io"},"repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"11.16.0","description":"A Svelte component to animate elements, with no dependencies.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"~4.9.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_2.0.0_1780802358399_0.3815511351098009","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@castlenine/svelte-aoe","version":"2.1.0","keywords":["animate-on-scroll","animate","animation-on-scroll","animation","component","css","svelte","sveltekit"],"author":{"url":"https://github.com/Castlenine","name":"Alex Castlenine"},"license":"MIT","_id":"@castlenine/svelte-aoe@2.1.0","maintainers":[{"name":"castlenine","email":"alexandre@castlenine.io"}],"homepage":"https://github.com/castlenine/svelte-aoe","bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"dist":{"shasum":"c429af557be28e40cc195883a189188b9660ec96","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-2.1.0.tgz","fileCount":13,"integrity":"sha512-IWTHs+6hkW0FzKE/znFPbWYxRt1u/W9yc9IoM9tTZPKMOY22eDqLdGOc98q6DG79eO4UwO/WYV0sOncGZiSgPA==","signatures":[{"sig":"MEQCIHxm4+nbP0ZQy3Oqi07PvJJ5tFFsDU5qRjh79g7mlS43AiBKkUnX2KUP4ivtm+QrG+Ioyy7a7aUhLkTIdcVo2c+/dA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24970},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"gitHead":"f23adfc79b66e5bd8d6b16e4ec7ef6d17b6f9a7a","scripts":{"dev":"vite dev","build":"npm run check && vite build","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","eslint":"eslint --ignore-path ./.eslintignore .","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","preview":"vite preview","prettier":"prettier --ignore-path ./.prettierignore --check .","stylelint":"stylelint **/*.{css,scss,sass,html,js,md,mjs,svelte,svg,ts}","clean-code":"npm run stylelint && npm run prettier:fix && npm run eslint:fix","eslint:fix":"eslint --fix --ignore-path ./.eslintignore .","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","prettier:fix":"prettier --ignore-path ./.prettierignore --write .","prepublish-only":"npm run package","publish-package":"npm publish -access public","remove-dist-folder":"rimraf dist"},"_npmUser":{"name":"castlenine","email":"alexandre@castlenine.io"},"repository":{"url":"git+https://github.com/castlenine/svelte-aoe.git","type":"git"},"_npmVersion":"11.16.0","description":"A Svelte component to animate elements, with no dependencies.","directories":{},"sideEffects":["**/*.css"],"_nodeVersion":"24.16.0","_hasShrinkwrap":false,"devDependencies":{"vite":"^4.5.3","tslib":"^2.6.2","eslint":"^8.57.0","rimraf":"^5.0.5","svelte":"^4.2.15","publint":"^0.2.7","prettier":"^3.2.5","stylelint":"^15.11.0","typescript":"~4.9.5","svelte-check":"^3.7.1","@sveltejs/kit":"^1.30.4","stylelint-scss":"^5.3.2","prettier-eslint":"^16.3.0","stylelint-order":"^6.0.4","@sveltejs/package":"^2.3.1","svelte-preprocess":"^5.1.4","eslint-plugin-html":"^8.1.1","prettier-stylelint":"^0.4.2","prettier-eslint-cli":"^8.0.1","eslint-plugin-import":"^2.29.1","eslint-plugin-svelte":"^2.38.0","svelte-eslint-parser":"^0.35.0","stylelint-config-html":"^1.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-no-loops":"^0.3.0","eslint-plugin-prettier":"^5.1.3","eslint-plugin-security":"^1.7.1","prettier-plugin-svelte":"^3.2.3","eslint-plugin-only-warn":"^1.1.0","@sveltejs/adapter-static":"^2.0.3","@typescript-eslint/parser":"^7.8.0","stylelint-config-standard":"^34.0.0","stylelint-selector-bem-pattern":"^3.0.1","@typescript-eslint/eslint-plugin":"^7.8.0","eslint-import-resolver-typescript":"^3.6.1","stylelint-no-unsupported-browser-features":"^7.0.0"},"peerDependencies":{"svelte":"^3.54.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/svelte-aoe_2.1.0_1780803258662_0.47527720505750404","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@castlenine/svelte-aoe","version":"5.0.0","description":"A Svelte component for animating elements, with no dependencies.","license":"MIT","keywords":["animate-on-enter","animate-on-scroll","animate","animation","aoe","aos","appear","component","css animation","enter viewport","fade","intersection observer","scroll animation","scroll","svelte 5","svelte v5","svelte","sveltekit"],"author":{"name":"Alex Castlenine","url":"https://github.com/Castlenine"},"homepage":"https://github.com/castlenine/svelte-aoe","repository":{"type":"git","url":"git+https://github.com/castlenine/svelte-aoe.git"},"bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"type":"module","types":"./dist/index.d.ts","svelte":"./dist/index.js","sideEffects":["**/*.css"],"exports":{".":{"types":"./dist/index.d.ts","svelte":"./dist/index.js"}},"scripts":{"dev":"vite dev","build":"npm run check && vite build","preview":"vite preview","package":"npm run remove-dist-folder && svelte-kit sync && svelte-package && publint","prepublish-only":"npm run package","check":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json","check:watch":"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch","lint":"eslint .","lint:fix":"eslint --fix .","lint:staged:fix":"eslint --fix","format":"prettier --write .","format:check":"prettier --check .","format:staged":"prettier --write","stylelint":"stylelint --config .stylelintrc.yaml \"**/*.{css,svelte}\"","stylelint:fix":"stylelint --config .stylelintrc.yaml --fix=strict \"**/*.{css,svelte}\"","stylelint:staged:fix":"stylelint --config .stylelintrc.yaml --fix=strict","clean-code":"npm run stylelint:fix && npm run lint:fix && npm run format","remove-dist-folder":"rimraf dist","publish-package":"npm publish --access public","commit":"git status && git-cz","prepare":"svelte-kit sync && lefthook install"},"peerDependencies":{"svelte":"^5.0.0"},"devDependencies":{"@commitlint/cli":"^21.0.2","@commitlint/config-conventional":"^21.0.2","@commitlint/cz-commitlint":"^21.0.2","@commitlint/types":"^21.0.1","@eslint/js":"^10.0.1","@sveltejs/adapter-static":"^3.0.10","@sveltejs/kit":"^2.63.0","@sveltejs/package":"^2.5.8","commitizen":"^4.3.1","eslint":"^10.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-security":"^4.0.0","eslint-plugin-simple-import-sort":"^13.0.0","eslint-plugin-sonarjs":"^4.0.3","eslint-plugin-svelte":"^3.19.0","globals":"^17.6.0","jiti":"^2.7.0","lefthook":"^2.1.9","lint-staged":"^17.0.7","postcss-html":"^1.8.1","prettier":"^3.8.3","prettier-plugin-svelte":"^4.1.0","publint":"^0.3.21","rimraf":"^6.1.3","stylelint":"^17.13.0","stylelint-config-html":"^1.1.0","stylelint-config-recommended":"^18.0.0","stylelint-config-standard":"^40.0.0","stylelint-no-unsupported-browser-features":"^8.1.1","stylelint-order":"^8.1.1","svelte":"^5.56.2","svelte-check":"^4.6.0","typescript":"^6.0.3","typescript-eslint":"^8.60.1","vite":"^8.0.16"},"gitHead":"29dd680624b1ea1478af4edd212c3fdd59cb3945","_id":"@castlenine/svelte-aoe@5.0.0","_nodeVersion":"24.16.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-+sASfE2cUPufwoB7YFR1jmFoul7X9P1XZWNbbQO/6+H7m8Ag2kSRcYT0KmfNRC/qOfr2k04xw8qun1/Yt5QF2Q==","shasum":"fff4a69f025c774c68c15d025bc55e145ef7803b","tarball":"https://registry.npmjs.org/@castlenine/svelte-aoe/-/svelte-aoe-5.0.0.tgz","fileCount":13,"unpackedSize":22192,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEzDl8qe8lSWtrkPUgi6WxkUdDCjkgaIqDwHzTo1buaPAiEAtpcsppnEmJfk309K5OvY3AqkqKeFcmXcX8Ikjp7UQl4="}]},"_npmUser":{"name":"castlenine","email":"alexandre@castlenine.io"},"directories":{},"maintainers":[{"name":"castlenine","email":"alexandre@castlenine.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/svelte-aoe_5.0.0_1780844653253_0.7144846088679979"},"_hasShrinkwrap":false}},"time":{"created":"2024-05-06T13:59:19.700Z","modified":"2026-06-07T15:04:13.506Z","1.0.0":"2024-05-06T13:22:37.568Z","1.1.0":"2024-05-06T13:59:19.993Z","1.1.1":"2024-05-06T14:51:35.414Z","1.2.0":"2024-05-06T18:23:21.658Z","1.3.0":"2024-05-06T20:00:54.207Z","1.4.0":"2024-05-06T21:32:22.329Z","1.5.0":"2026-06-07T02:36:01.833Z","2.0.0":"2026-06-07T03:19:18.532Z","2.1.0":"2026-06-07T03:34:18.806Z","5.0.0":"2026-06-07T15:04:13.395Z"},"bugs":{"url":"https://github.com/castlenine/svelte-aoe/issues"},"author":{"name":"Alex Castlenine","url":"https://github.com/Castlenine"},"license":"MIT","homepage":"https://github.com/castlenine/svelte-aoe","keywords":["animate-on-enter","animate-on-scroll","animate","animation","aoe","aos","appear","component","css animation","enter viewport","fade","intersection observer","scroll animation","scroll","svelte 5","svelte v5","svelte","sveltekit"],"repository":{"type":"git","url":"git+https://github.com/castlenine/svelte-aoe.git"},"description":"A Svelte component for animating elements, with no dependencies.","maintainers":[{"name":"castlenine","email":"alexandre@castlenine.io"}],"readme":"<div align=\"center\">\n\n# `@castlenine/svelte-aoe`\n\n[![npm.badge]][npm] [![download.badge]][download] [![contribution.badge]][contribution]\n\nA Svelte component for animating elements, with no dependencies.\n</div>\n\n`@castlenine/svelte-aoe` uses the [Intersection Observer API](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) to detect when an element enters the viewport.\n\nWhen the element enters the viewport, `@castlenine/svelte-aoe` applies a class that triggers a CSS animation.\n\n## 🚀 [Demo](https://castlenine-svelte-aoe.vercel.app/)\n\n## Installation\n\nUse your package manager to install:\n\n```shell\nnpm i @castlenine/svelte-aoe\n```\n\n## Setup\n\n1. Import and add the component **once** in your root layout:\n\nFile: `src/routes/+layout.svelte`\n\n```svelte\n<script>\n  import AnimateOnEnter from '@castlenine/svelte-aoe';\n</script>\n\n<AnimateOnEnter />\n\n<slot />\n```\n\n2. Add a `data-aoe` attribute to any element you want to animate:\n\n```svelte\n<img data-aoe=\"fade-up\" src=\"https://dummyimage.com/500x300\"/>\n```\n\nElements are automatically detected, including those added dynamically by page navigation.\n\n## Animations\n\n### Normal speed\n\n- `up`\n- `right`\n- `left`\n- `down`\n- `fade`\n- `fade-up`\n- `fade-right`\n- `fade-left`\n- `fade-down`\n\n### Fast speed\n\n- `up-fast`\n- `right-fast`\n- `left-fast`\n- `down-fast`\n- `fade-fast`\n- `fade-up-fast`\n- `fade-right-fast`\n- `fade-left-fast`\n- `fade-down-fast`\n\n### Slow speed\n\n- `up-slow`\n- `right-slow`\n- `left-slow`\n- `down-slow`\n- `fade-slow`\n- `fade-up-slow`\n- `fade-right-slow`\n- `fade-left-slow`\n- `fade-down-slow`\n\n### Normal speed partial fade\n\nStarts with `0.25` opacity\n\n- `partial-fade`\n- `partial-fade-up`\n- `partial-fade-right`\n- `partial-fade-left`\n- `partial-fade-down`\n\n### Fast speed partial fade\n\nStarts with `0.25` opacity\n\n- `partial-fade-fast`\n- `partial-fade-up-fast`\n- `partial-fade-right-fast`\n- `partial-fade-left-fast`\n- `partial-fade-down-fast`\n\n### Slow speed partial fade\n\nStarts with `0.25` opacity\n\n- `partial-fade-slow`\n- `partial-fade-up-slow`\n- `partial-fade-right-slow`\n- `partial-fade-left-slow`\n- `partial-fade-down-slow`\n\nYou can add your own animations by following the same pattern in your CSS.\n\n```css\n[data-aoe='your-animation'] {\n  transform: translateX(-45px);\n  transition:\n    transform 600ms,\n    opacity 900ms;\n\n  &.aoe {\n    transform: translateX(0);\n    transition-delay: 0s;\n  }\n}\n```\n\n## Properties\n\n| Property name | Type                                          | Default value |\n| ------------- | --------------------------------------------- | ------------- |\n| `root`        | `Document`, `Element`, `null`, `undefined`    | `null`        |\n| `rootMargin`  | `string` in pixels (`px`) or percentage (`%`) | `0px`         |\n| `threshold`   | `number`, `number[]` between `0` and `1.0`    | `0.3`         |\n\n`root` is the element used as the viewport for checking the visibility of the target. It must be an ancestor of the target. If not specified or if set to `null`, it defaults to the browser viewport.\n\n`rootMargin` is the margin around the root. It can have values similar to the CSS margin property, e.g., `\"10px 20px 30px 40px\"` (top, right, bottom, left). The values can be percentages. The default is `'0px'` (no margin).\n\n`threshold` is either a single number or an array of numbers, indicating at what percentage of the target's visibility the observer's callback should be executed. A value of `0.0` or `0` indicates that even a single pixel of the target is visible. A value of `1.0` or `1` requires the target to be completely visible. The default is `0.3` (30%).\n\n## Scoped Overrides\n\nSet defaults for all `data-aoe` elements within a page or section using `data-aoe-scope` on a container element, or the `<AnimateOnEnterScope>` convenience component. Elements inside a scope inherit its values unless they have their own per-element `data-aoe-*` overrides.\n\n### Using the `data-aoe-scope` attribute\n\n```svelte\n<div data-aoe-scope data-aoe-threshold=\"0.5\" data-aoe-root-margin=\"20px\">\n  <!-- All elements inside use threshold=0.5 and rootMargin=20px -->\n  <img data-aoe=\"fade-up\" src=\"...\" />\n\n  <!-- Per-element overrides still take priority -->\n  <img data-aoe=\"fade-up\" data-aoe-threshold=\"0.8\" src=\"...\" />\n</div>\n```\n\n### Using the `<AnimateOnEnterScope>` component\n\n```svelte\n<script>\n  import { AnimateOnEnterScope } from '@castlenine/svelte-aoe';\n</script>\n\n<AnimateOnEnterScope threshold={0.5} rootMargin=\"20px\">\n  <img data-aoe=\"fade-up\" src=\"...\" />\n</AnimateOnEnterScope>\n```\n\n| Property name | Type                                          | Default value |\n| ------------- | --------------------------------------------- | ------------- |\n| `root`        | CSS selector `string`                         | `undefined`   |\n| `rootMargin`  | `string` in pixels (`px`) or percentage (`%`) | `undefined`   |\n| `threshold`   | `number` between `0` and `1.0`                | `undefined`   |\n\nScopes can be nested. The innermost scope takes precedence.\n\n## Per-Element Overrides\n\nIndividual elements can override scope or global properties using `data-aoe-*` attributes. If an attribute is not set, the value from the nearest `data-aoe-scope` ancestor is used, then `<AnimateOnEnter />`, and then the package default.\n\n| Attribute              | Type                                          | Overrides    |\n| ---------------------- | --------------------------------------------- | ------------ |\n| `data-aoe-threshold`   | `number` between `0` and `1.0`                | `threshold`  |\n| `data-aoe-root`        | CSS selector `string`                         | `root`       |\n| `data-aoe-root-margin` | `string` in pixels (`px`) or percentage (`%`) | `rootMargin` |\n\n### Examples\n\n```svelte\n<!-- Uses global defaults -->\n<img data-aoe=\"fade-up\" src=\"...\" />\n\n<!-- Overrides threshold only (animates as soon as 1px is visible) -->\n<img data-aoe=\"fade-up\" data-aoe-threshold=\"0\" src=\"...\" />\n\n<!-- Overrides rootMargin only (triggers 200px before entering the viewport) -->\n<img data-aoe=\"fade-up\" data-aoe-root-margin=\"200px\" src=\"...\" />\n\n<!-- Overrides root to a specific scroll container -->\n<img data-aoe=\"fade-up\" data-aoe-root=\"#scroll-container\" src=\"...\" />\n\n<!-- Multiple overrides -->\n<img data-aoe=\"fade-up\" data-aoe-threshold=\"0.8\" data-aoe-root-margin=\"50px\" src=\"...\" />\n```\n\n---\n\nInspired by [Animate on Scroll](https://michalsnik.github.io/aos/) and forked from [lliamscholtz/svelte-aoe](https://github.com/lliamscholtz/svelte-aoe)\n\n[npm]: https://www.npmjs.com/package/@castlenine/svelte-aoe\n[npm.badge]: https://img.shields.io/npm/v/@castlenine/svelte-aoe\n[download]: https://www.npmjs.com/package/@castlenine/svelte-aoe\n[download.badge]: https://img.shields.io/npm/d18m/@castlenine/svelte-aoe\n[contribution]: https://github.com/Castlenine/svelte-aoe\n[contribution.badge]: https://img.shields.io/badge/contributions-welcome-green\n","readmeFilename":"README.md"}