From d4416c0bf8c75e70586203cd0f8de27ff5c823e5 Mon Sep 17 00:00:00 2001 From: gtmnayan <50981692+gtm-nayan@users.noreply.github.com> Date: Mon, 19 Jun 2023 17:52:42 +0545 Subject: [PATCH] chore: cleanup generated files (#8749) --- action/index.d.ts | 1 - action/index.js | 2 - action/index.mjs | 1 - action/package.json | 5 - animate/index.d.ts | 1 - animate/index.js | 33 ---- animate/index.mjs | 31 ---- animate/package.json | 5 - easing/index.d.ts | 1 - easing/index.js | 314 -------------------------------- easing/index.mjs | 282 ---------------------------- easing/package.json | 5 - index.js | 19 -- index.mjs | 2 - motion/index.d.ts | 1 - motion/index.js | 252 ------------------------- motion/index.mjs | 249 ------------------------- motion/package.json | 5 - sites/svelte.dev/vite.config.js | 4 + ssr.js | 26 --- ssr.mjs | 13 -- store/index.d.ts | 1 - store/index.js | 189 ------------------- store/index.mjs | 184 ------------------- store/package.json | 5 - transition/index.d.ts | 1 - transition/index.js | 244 ------------------------- transition/index.mjs | 236 ------------------------ transition/package.json | 5 - 29 files changed, 4 insertions(+), 2113 deletions(-) delete mode 100644 action/index.d.ts delete mode 100644 action/index.js delete mode 100644 action/index.mjs delete mode 100644 action/package.json delete mode 100644 animate/index.d.ts delete mode 100644 animate/index.js delete mode 100644 animate/index.mjs delete mode 100644 animate/package.json delete mode 100644 easing/index.d.ts delete mode 100644 easing/index.js delete mode 100644 easing/index.mjs delete mode 100644 easing/package.json delete mode 100644 index.js delete mode 100644 index.mjs delete mode 100644 motion/index.d.ts delete mode 100644 motion/index.js delete mode 100644 motion/index.mjs delete mode 100644 motion/package.json delete mode 100644 ssr.js delete mode 100644 ssr.mjs delete mode 100644 store/index.d.ts delete mode 100644 store/index.js delete mode 100644 store/index.mjs delete mode 100644 store/package.json delete mode 100644 transition/index.d.ts delete mode 100644 transition/index.js delete mode 100644 transition/index.mjs delete mode 100644 transition/package.json diff --git a/action/index.d.ts b/action/index.d.ts deleted file mode 100644 index 229aeb985955..000000000000 --- a/action/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/action/index.js'; \ No newline at end of file diff --git a/action/index.js b/action/index.js deleted file mode 100644 index eb109abbed09..000000000000 --- a/action/index.js +++ /dev/null @@ -1,2 +0,0 @@ -'use strict'; - diff --git a/action/index.mjs b/action/index.mjs deleted file mode 100644 index 8b137891791f..000000000000 --- a/action/index.mjs +++ /dev/null @@ -1 +0,0 @@ - diff --git a/action/package.json b/action/package.json deleted file mode 100644 index 598aeeaf5115..000000000000 --- a/action/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/animate/index.d.ts b/animate/index.d.ts deleted file mode 100644 index c6671ee75def..000000000000 --- a/animate/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/animate/index.js'; \ No newline at end of file diff --git a/animate/index.js b/animate/index.js deleted file mode 100644 index 6e52923a2feb..000000000000 --- a/animate/index.js +++ /dev/null @@ -1,33 +0,0 @@ -'use strict'; - -var easing = require('../easing/index.js'); -var Component = require('../internal/Component-9c4b98a2.js'); - -/** - * @param {Element} node - * @param {{ from: DOMRect; to: DOMRect }} fromTo - * @param {import('./public.js').FlipParams} params - * @returns {import('./public.js').AnimationConfig} - */ -function flip(node, { from, to }, params = {}) { - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - const [ox, oy] = style.transformOrigin.split(' ').map(parseFloat); - const dx = from.left + (from.width * ox) / to.width - (to.left + ox); - const dy = from.top + (from.height * oy) / to.height - (to.top + oy); - const { delay = 0, duration = (d) => Math.sqrt(d) * 120, easing: easing$1 = easing.cubicOut } = params; - return { - delay, - duration: Component.is_function(duration) ? duration(Math.sqrt(dx * dx + dy * dy)) : duration, - easing: easing$1, - css: (t, u) => { - const x = u * dx; - const y = u * dy; - const sx = t + (u * from.width) / to.width; - const sy = t + (u * from.height) / to.height; - return `transform: ${transform} translate(${x}px, ${y}px) scale(${sx}, ${sy});`; - } - }; -} - -exports.flip = flip; diff --git a/animate/index.mjs b/animate/index.mjs deleted file mode 100644 index 5add71c11446..000000000000 --- a/animate/index.mjs +++ /dev/null @@ -1,31 +0,0 @@ -import { cubicOut } from '../easing/index.mjs'; -import { is_function } from '../internal/Component-cd97939e.mjs'; - -/** - * @param {Element} node - * @param {{ from: DOMRect; to: DOMRect }} fromTo - * @param {import('./public.js').FlipParams} params - * @returns {import('./public.js').AnimationConfig} - */ -function flip(node, { from, to }, params = {}) { - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - const [ox, oy] = style.transformOrigin.split(' ').map(parseFloat); - const dx = from.left + (from.width * ox) / to.width - (to.left + ox); - const dy = from.top + (from.height * oy) / to.height - (to.top + oy); - const { delay = 0, duration = (d) => Math.sqrt(d) * 120, easing = cubicOut } = params; - return { - delay, - duration: is_function(duration) ? duration(Math.sqrt(dx * dx + dy * dy)) : duration, - easing, - css: (t, u) => { - const x = u * dx; - const y = u * dy; - const sx = t + (u * from.width) / to.width; - const sy = t + (u * from.height) / to.height; - return `transform: ${transform} translate(${x}px, ${y}px) scale(${sx}, ${sy});`; - } - }; -} - -export { flip }; diff --git a/animate/package.json b/animate/package.json deleted file mode 100644 index 598aeeaf5115..000000000000 --- a/animate/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/easing/index.d.ts b/easing/index.d.ts deleted file mode 100644 index 15c58dd4c0f8..000000000000 --- a/easing/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/easing/index.js'; \ No newline at end of file diff --git a/easing/index.js b/easing/index.js deleted file mode 100644 index 23677d2a84f3..000000000000 --- a/easing/index.js +++ /dev/null @@ -1,314 +0,0 @@ -'use strict'; - -var Component = require('../internal/Component-9c4b98a2.js'); - -/* -Adapted from https://github.com/mattdesl -Distributed under MIT License https://github.com/mattdesl/eases/blob/master/LICENSE.md -*/ - -/** - * @param {number} t - * @returns {number} - */ -function backInOut(t) { - const s = 1.70158 * 1.525; - if ((t *= 2) < 1) return 0.5 * (t * t * ((s + 1) * t - s)); - return 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2); -} - -/** - * @param {number} t - * @returns {number} - */ -function backIn(t) { - const s = 1.70158; - return t * t * ((s + 1) * t - s); -} - -/** - * @param {number} t - * @returns {number} - */ -function backOut(t) { - const s = 1.70158; - return --t * t * ((s + 1) * t + s) + 1; -} - -/** - * @param {number} t - * @returns {number} - */ -function bounceOut(t) { - const a = 4.0 / 11.0; - const b = 8.0 / 11.0; - const c = 9.0 / 10.0; - const ca = 4356.0 / 361.0; - const cb = 35442.0 / 1805.0; - const cc = 16061.0 / 1805.0; - const t2 = t * t; - return t < a - ? 7.5625 * t2 - : t < b - ? 9.075 * t2 - 9.9 * t + 3.4 - : t < c - ? ca * t2 - cb * t + cc - : 10.8 * t * t - 20.52 * t + 10.72; -} - -/** - * @param {number} t - * @returns {number} - */ -function bounceInOut(t) { - return t < 0.5 ? 0.5 * (1.0 - bounceOut(1.0 - t * 2.0)) : 0.5 * bounceOut(t * 2.0 - 1.0) + 0.5; -} - -/** - * @param {number} t - * @returns {number} - */ -function bounceIn(t) { - return 1.0 - bounceOut(1.0 - t); -} - -/** - * @param {number} t - * @returns {number} - */ -function circInOut(t) { - if ((t *= 2) < 1) return -0.5 * (Math.sqrt(1 - t * t) - 1); - return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1); -} - -/** - * @param {number} t - * @returns {number} - */ -function circIn(t) { - return 1.0 - Math.sqrt(1.0 - t * t); -} - -/** - * @param {number} t - * @returns {number} - */ -function circOut(t) { - return Math.sqrt(1 - --t * t); -} - -/** - * @param {number} t - * @returns {number} - */ -function cubicInOut(t) { - return t < 0.5 ? 4.0 * t * t * t : 0.5 * Math.pow(2.0 * t - 2.0, 3.0) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function cubicIn(t) { - return t * t * t; -} - -/** - * @param {number} t - * @returns {number} - */ -function cubicOut(t) { - const f = t - 1.0; - return f * f * f + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function elasticInOut(t) { - return t < 0.5 - ? 0.5 * Math.sin(((+13.0 * Math.PI) / 2) * 2.0 * t) * Math.pow(2.0, 10.0 * (2.0 * t - 1.0)) - : 0.5 * - Math.sin(((-13.0 * Math.PI) / 2) * (2.0 * t - 1.0 + 1.0)) * - Math.pow(2.0, -10.0 * (2.0 * t - 1.0)) + - 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function elasticIn(t) { - return Math.sin((13.0 * t * Math.PI) / 2) * Math.pow(2.0, 10.0 * (t - 1.0)); -} - -/** - * @param {number} t - * @returns {number} - */ -function elasticOut(t) { - return Math.sin((-13.0 * (t + 1.0) * Math.PI) / 2) * Math.pow(2.0, -10.0 * t) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function expoInOut(t) { - return t === 0.0 || t === 1.0 - ? t - : t < 0.5 - ? +0.5 * Math.pow(2.0, 20.0 * t - 10.0) - : -0.5 * Math.pow(2.0, 10.0 - t * 20.0) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function expoIn(t) { - return t === 0.0 ? t : Math.pow(2.0, 10.0 * (t - 1.0)); -} - -/** - * @param {number} t - * @returns {number} - */ -function expoOut(t) { - return t === 1.0 ? t : 1.0 - Math.pow(2.0, -10.0 * t); -} - -/** - * @param {number} t - * @returns {number} - */ -function quadInOut(t) { - t /= 0.5; - if (t < 1) return 0.5 * t * t; - t--; - return -0.5 * (t * (t - 2) - 1); -} - -/** - * @param {number} t - * @returns {number} - */ -function quadIn(t) { - return t * t; -} - -/** - * @param {number} t - * @returns {number} - */ -function quadOut(t) { - return -t * (t - 2.0); -} - -/** - * @param {number} t - * @returns {number} - */ -function quartInOut(t) { - return t < 0.5 ? +8.0 * Math.pow(t, 4.0) : -8.0 * Math.pow(t - 1.0, 4.0) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function quartIn(t) { - return Math.pow(t, 4.0); -} - -/** - * @param {number} t - * @returns {number} - */ -function quartOut(t) { - return Math.pow(t - 1.0, 3.0) * (1.0 - t) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function quintInOut(t) { - if ((t *= 2) < 1) return 0.5 * t * t * t * t * t; - return 0.5 * ((t -= 2) * t * t * t * t + 2); -} - -/** - * @param {number} t - * @returns {number} - */ -function quintIn(t) { - return t * t * t * t * t; -} - -/** - * @param {number} t - * @returns {number} - */ -function quintOut(t) { - return --t * t * t * t * t + 1; -} - -/** - * @param {number} t - * @returns {number} - */ -function sineInOut(t) { - return -0.5 * (Math.cos(Math.PI * t) - 1); -} - -/** - * @param {number} t - * @returns {number} - */ -function sineIn(t) { - const v = Math.cos(t * Math.PI * 0.5); - if (Math.abs(v) < 1e-14) return 1; - else return 1 - v; -} - -/** - * @param {number} t - * @returns {number} - */ -function sineOut(t) { - return Math.sin((t * Math.PI) / 2); -} - -exports.linear = Component.identity; -exports.backIn = backIn; -exports.backInOut = backInOut; -exports.backOut = backOut; -exports.bounceIn = bounceIn; -exports.bounceInOut = bounceInOut; -exports.bounceOut = bounceOut; -exports.circIn = circIn; -exports.circInOut = circInOut; -exports.circOut = circOut; -exports.cubicIn = cubicIn; -exports.cubicInOut = cubicInOut; -exports.cubicOut = cubicOut; -exports.elasticIn = elasticIn; -exports.elasticInOut = elasticInOut; -exports.elasticOut = elasticOut; -exports.expoIn = expoIn; -exports.expoInOut = expoInOut; -exports.expoOut = expoOut; -exports.quadIn = quadIn; -exports.quadInOut = quadInOut; -exports.quadOut = quadOut; -exports.quartIn = quartIn; -exports.quartInOut = quartInOut; -exports.quartOut = quartOut; -exports.quintIn = quintIn; -exports.quintInOut = quintInOut; -exports.quintOut = quintOut; -exports.sineIn = sineIn; -exports.sineInOut = sineInOut; -exports.sineOut = sineOut; diff --git a/easing/index.mjs b/easing/index.mjs deleted file mode 100644 index 4469a9390424..000000000000 --- a/easing/index.mjs +++ /dev/null @@ -1,282 +0,0 @@ -export { identity as linear } from '../internal/Component-cd97939e.mjs'; - -/* -Adapted from https://github.com/mattdesl -Distributed under MIT License https://github.com/mattdesl/eases/blob/master/LICENSE.md -*/ - -/** - * @param {number} t - * @returns {number} - */ -function backInOut(t) { - const s = 1.70158 * 1.525; - if ((t *= 2) < 1) return 0.5 * (t * t * ((s + 1) * t - s)); - return 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2); -} - -/** - * @param {number} t - * @returns {number} - */ -function backIn(t) { - const s = 1.70158; - return t * t * ((s + 1) * t - s); -} - -/** - * @param {number} t - * @returns {number} - */ -function backOut(t) { - const s = 1.70158; - return --t * t * ((s + 1) * t + s) + 1; -} - -/** - * @param {number} t - * @returns {number} - */ -function bounceOut(t) { - const a = 4.0 / 11.0; - const b = 8.0 / 11.0; - const c = 9.0 / 10.0; - const ca = 4356.0 / 361.0; - const cb = 35442.0 / 1805.0; - const cc = 16061.0 / 1805.0; - const t2 = t * t; - return t < a - ? 7.5625 * t2 - : t < b - ? 9.075 * t2 - 9.9 * t + 3.4 - : t < c - ? ca * t2 - cb * t + cc - : 10.8 * t * t - 20.52 * t + 10.72; -} - -/** - * @param {number} t - * @returns {number} - */ -function bounceInOut(t) { - return t < 0.5 ? 0.5 * (1.0 - bounceOut(1.0 - t * 2.0)) : 0.5 * bounceOut(t * 2.0 - 1.0) + 0.5; -} - -/** - * @param {number} t - * @returns {number} - */ -function bounceIn(t) { - return 1.0 - bounceOut(1.0 - t); -} - -/** - * @param {number} t - * @returns {number} - */ -function circInOut(t) { - if ((t *= 2) < 1) return -0.5 * (Math.sqrt(1 - t * t) - 1); - return 0.5 * (Math.sqrt(1 - (t -= 2) * t) + 1); -} - -/** - * @param {number} t - * @returns {number} - */ -function circIn(t) { - return 1.0 - Math.sqrt(1.0 - t * t); -} - -/** - * @param {number} t - * @returns {number} - */ -function circOut(t) { - return Math.sqrt(1 - --t * t); -} - -/** - * @param {number} t - * @returns {number} - */ -function cubicInOut(t) { - return t < 0.5 ? 4.0 * t * t * t : 0.5 * Math.pow(2.0 * t - 2.0, 3.0) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function cubicIn(t) { - return t * t * t; -} - -/** - * @param {number} t - * @returns {number} - */ -function cubicOut(t) { - const f = t - 1.0; - return f * f * f + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function elasticInOut(t) { - return t < 0.5 - ? 0.5 * Math.sin(((+13.0 * Math.PI) / 2) * 2.0 * t) * Math.pow(2.0, 10.0 * (2.0 * t - 1.0)) - : 0.5 * - Math.sin(((-13.0 * Math.PI) / 2) * (2.0 * t - 1.0 + 1.0)) * - Math.pow(2.0, -10.0 * (2.0 * t - 1.0)) + - 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function elasticIn(t) { - return Math.sin((13.0 * t * Math.PI) / 2) * Math.pow(2.0, 10.0 * (t - 1.0)); -} - -/** - * @param {number} t - * @returns {number} - */ -function elasticOut(t) { - return Math.sin((-13.0 * (t + 1.0) * Math.PI) / 2) * Math.pow(2.0, -10.0 * t) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function expoInOut(t) { - return t === 0.0 || t === 1.0 - ? t - : t < 0.5 - ? +0.5 * Math.pow(2.0, 20.0 * t - 10.0) - : -0.5 * Math.pow(2.0, 10.0 - t * 20.0) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function expoIn(t) { - return t === 0.0 ? t : Math.pow(2.0, 10.0 * (t - 1.0)); -} - -/** - * @param {number} t - * @returns {number} - */ -function expoOut(t) { - return t === 1.0 ? t : 1.0 - Math.pow(2.0, -10.0 * t); -} - -/** - * @param {number} t - * @returns {number} - */ -function quadInOut(t) { - t /= 0.5; - if (t < 1) return 0.5 * t * t; - t--; - return -0.5 * (t * (t - 2) - 1); -} - -/** - * @param {number} t - * @returns {number} - */ -function quadIn(t) { - return t * t; -} - -/** - * @param {number} t - * @returns {number} - */ -function quadOut(t) { - return -t * (t - 2.0); -} - -/** - * @param {number} t - * @returns {number} - */ -function quartInOut(t) { - return t < 0.5 ? +8.0 * Math.pow(t, 4.0) : -8.0 * Math.pow(t - 1.0, 4.0) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function quartIn(t) { - return Math.pow(t, 4.0); -} - -/** - * @param {number} t - * @returns {number} - */ -function quartOut(t) { - return Math.pow(t - 1.0, 3.0) * (1.0 - t) + 1.0; -} - -/** - * @param {number} t - * @returns {number} - */ -function quintInOut(t) { - if ((t *= 2) < 1) return 0.5 * t * t * t * t * t; - return 0.5 * ((t -= 2) * t * t * t * t + 2); -} - -/** - * @param {number} t - * @returns {number} - */ -function quintIn(t) { - return t * t * t * t * t; -} - -/** - * @param {number} t - * @returns {number} - */ -function quintOut(t) { - return --t * t * t * t * t + 1; -} - -/** - * @param {number} t - * @returns {number} - */ -function sineInOut(t) { - return -0.5 * (Math.cos(Math.PI * t) - 1); -} - -/** - * @param {number} t - * @returns {number} - */ -function sineIn(t) { - const v = Math.cos(t * Math.PI * 0.5); - if (Math.abs(v) < 1e-14) return 1; - else return 1 - v; -} - -/** - * @param {number} t - * @returns {number} - */ -function sineOut(t) { - return Math.sin((t * Math.PI) / 2); -} - -export { backIn, backInOut, backOut, bounceIn, bounceInOut, bounceOut, circIn, circInOut, circOut, cubicIn, cubicInOut, cubicOut, elasticIn, elasticInOut, elasticOut, expoIn, expoInOut, expoOut, quadIn, quadInOut, quadOut, quartIn, quartInOut, quartOut, quintIn, quintInOut, quintOut, sineIn, sineInOut, sineOut }; diff --git a/easing/package.json b/easing/package.json deleted file mode 100644 index 598aeeaf5115..000000000000 --- a/easing/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/index.js b/index.js deleted file mode 100644 index 6e8df974bcbb..000000000000 --- a/index.js +++ /dev/null @@ -1,19 +0,0 @@ -'use strict'; - -var Component = require('./internal/Component-9c4b98a2.js'); -var dev = require('./internal/dev-1537023e.js'); - - - -exports.afterUpdate = Component.afterUpdate; -exports.beforeUpdate = Component.beforeUpdate; -exports.createEventDispatcher = Component.createEventDispatcher; -exports.getAllContexts = Component.getAllContexts; -exports.getContext = Component.getContext; -exports.hasContext = Component.hasContext; -exports.onDestroy = Component.onDestroy; -exports.onMount = Component.onMount; -exports.setContext = Component.setContext; -exports.tick = Component.tick; -exports.SvelteComponent = dev.SvelteComponentDev; -exports.SvelteComponentTyped = dev.SvelteComponentTyped; diff --git a/index.mjs b/index.mjs deleted file mode 100644 index 62fde6d49d20..000000000000 --- a/index.mjs +++ /dev/null @@ -1,2 +0,0 @@ -export { afterUpdate, beforeUpdate, createEventDispatcher, getAllContexts, getContext, hasContext, onDestroy, onMount, setContext, tick } from './internal/Component-cd97939e.mjs'; -export { SvelteComponentDev as SvelteComponent, SvelteComponentTyped } from './internal/dev-89102382.mjs'; diff --git a/motion/index.d.ts b/motion/index.d.ts deleted file mode 100644 index a8d5916072cb..000000000000 --- a/motion/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/motion/index.js'; \ No newline at end of file diff --git a/motion/index.js b/motion/index.js deleted file mode 100644 index 8a53fc2fe9fe..000000000000 --- a/motion/index.js +++ /dev/null @@ -1,252 +0,0 @@ -'use strict'; - -var store = require('../store/index.js'); -var Component = require('../internal/Component-9c4b98a2.js'); - -/** - * @param {any} obj - * @returns {boolean} - */ -function is_date(obj) { - return Object.prototype.toString.call(obj) === '[object Date]'; -} - -/** - * @template T - * @param {import('./private.js').TickContext} ctx - * @param {T} last_value - * @param {T} current_value - * @param {T} target_value - * @returns {T} - */ -function tick_spring(ctx, last_value, current_value, target_value) { - if (typeof current_value === 'number' || is_date(current_value)) { - // @ts-ignore - const delta = target_value - current_value; - // @ts-ignore - const velocity = (current_value - last_value) / (ctx.dt || 1 / 60); // guard div by 0 - const spring = ctx.opts.stiffness * delta; - const damper = ctx.opts.damping * velocity; - const acceleration = (spring - damper) * ctx.inv_mass; - const d = (velocity + acceleration) * ctx.dt; - if (Math.abs(d) < ctx.opts.precision && Math.abs(delta) < ctx.opts.precision) { - return target_value; // settled - } else { - ctx.settled = false; // signal loop to keep ticking - // @ts-ignore - return is_date(current_value) ? new Date(current_value.getTime() + d) : current_value + d; - } - } else if (Array.isArray(current_value)) { - // @ts-ignore - return current_value.map((_, i) => - tick_spring(ctx, last_value[i], current_value[i], target_value[i]) - ); - } else if (typeof current_value === 'object') { - const next_value = {}; - for (const k in current_value) { - // @ts-ignore - next_value[k] = tick_spring(ctx, last_value[k], current_value[k], target_value[k]); - } - // @ts-ignore - return next_value; - } else { - throw new Error(`Cannot spring ${typeof current_value} values`); - } -} - -/** - * @template T - * @param {T} [value] - * @param {import('./private.js').SpringOpts} [opts] - * @returns {import('./public.js').Spring} - */ -function spring(value, opts = {}) { - const store$1 = store.writable(value); - const { stiffness = 0.15, damping = 0.8, precision = 0.01 } = opts; - /** @type {number} */ - let last_time; - /** @type {import('../internal/private.js').Task} */ - let task; - /** @type {object} */ - let current_token; - /** @type {T} */ - let last_value = value; - /** @type {T} */ - let target_value = value; - let inv_mass = 1; - let inv_mass_recovery_rate = 0; - let cancel_task = false; - /** - * @param {T} new_value - * @param {import('./private.js').SpringUpdateOpts} opts - * @returns {Promise} - */ - function set(new_value, opts = {}) { - target_value = new_value; - const token = (current_token = {}); - if (value == null || opts.hard || (spring.stiffness >= 1 && spring.damping >= 1)) { - cancel_task = true; // cancel any running animation - last_time = Component.now(); - last_value = new_value; - store$1.set((value = target_value)); - return Promise.resolve(); - } else if (opts.soft) { - const rate = opts.soft === true ? 0.5 : +opts.soft; - inv_mass_recovery_rate = 1 / (rate * 60); - inv_mass = 0; // infinite mass, unaffected by spring forces - } - if (!task) { - last_time = Component.now(); - cancel_task = false; - task = Component.loop((now) => { - if (cancel_task) { - cancel_task = false; - task = null; - return false; - } - inv_mass = Math.min(inv_mass + inv_mass_recovery_rate, 1); - const ctx = { - inv_mass, - opts: spring, - settled: true, - dt: ((now - last_time) * 60) / 1000 - }; - const next_value = tick_spring(ctx, last_value, value, target_value); - last_time = now; - last_value = value; - store$1.set((value = next_value)); - if (ctx.settled) { - task = null; - } - return !ctx.settled; - }); - } - return new Promise((fulfil) => { - task.promise.then(() => { - if (token === current_token) fulfil(); - }); - }); - } - /** @type {import('./public.js').Spring} */ - const spring = { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store$1.subscribe, - stiffness, - damping, - precision - }; - return spring; -} - -/** @returns {(t: any) => any} */ -function get_interpolator(a, b) { - if (a === b || a !== a) return () => a; - const type = typeof a; - if (type !== typeof b || Array.isArray(a) !== Array.isArray(b)) { - throw new Error('Cannot interpolate values of different type'); - } - if (Array.isArray(a)) { - const arr = b.map((bi, i) => { - return get_interpolator(a[i], bi); - }); - return (t) => arr.map((fn) => fn(t)); - } - if (type === 'object') { - if (!a || !b) throw new Error('Object cannot be null'); - if (is_date(a) && is_date(b)) { - a = a.getTime(); - b = b.getTime(); - const delta = b - a; - return (t) => new Date(a + t * delta); - } - const keys = Object.keys(b); - const interpolators = {}; - keys.forEach((key) => { - interpolators[key] = get_interpolator(a[key], b[key]); - }); - return (t) => { - const result = {}; - keys.forEach((key) => { - result[key] = interpolators[key](t); - }); - return result; - }; - } - if (type === 'number') { - const delta = b - a; - return (t) => a + t * delta; - } - throw new Error(`Cannot interpolate ${type} values`); -} - -/** - * @template T - * @param {T} [value] - * @param {import('./private.js').TweenedOptions} [defaults] - * @returns {import('./public.js').Tweened} - */ -function tweened(value, defaults = {}) { - const store$1 = store.writable(value); - /** @type {import('../internal/private.js').Task} */ - let task; - let target_value = value; - /** - * @param {T} new_value - * @param {import('./private.js').TweenedOptions} opts - */ - function set(new_value, opts) { - if (value == null) { - store$1.set((value = new_value)); - return Promise.resolve(); - } - target_value = new_value; - let previous_task = task; - let started = false; - let { - delay = 0, - duration = 400, - easing = Component.identity, - interpolate = get_interpolator - } = Component.assign(Component.assign({}, defaults), opts); - if (duration === 0) { - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - store$1.set((value = target_value)); - return Promise.resolve(); - } - const start = Component.now() + delay; - let fn; - task = Component.loop((now) => { - if (now < start) return true; - if (!started) { - fn = interpolate(value, new_value); - if (typeof duration === 'function') duration = duration(value, new_value); - started = true; - } - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - const elapsed = now - start; - if (elapsed > /** @type {number} */ (duration)) { - store$1.set((value = new_value)); - return false; - } - // @ts-ignore - store$1.set((value = fn(easing(elapsed / duration)))); - return true; - }); - return task.promise; - } - return { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store$1.subscribe - }; -} - -exports.spring = spring; -exports.tweened = tweened; diff --git a/motion/index.mjs b/motion/index.mjs deleted file mode 100644 index 7adf3294edd8..000000000000 --- a/motion/index.mjs +++ /dev/null @@ -1,249 +0,0 @@ -import { writable } from '../store/index.mjs'; -import { now, loop, assign, identity } from '../internal/Component-cd97939e.mjs'; - -/** - * @param {any} obj - * @returns {boolean} - */ -function is_date(obj) { - return Object.prototype.toString.call(obj) === '[object Date]'; -} - -/** - * @template T - * @param {import('./private.js').TickContext} ctx - * @param {T} last_value - * @param {T} current_value - * @param {T} target_value - * @returns {T} - */ -function tick_spring(ctx, last_value, current_value, target_value) { - if (typeof current_value === 'number' || is_date(current_value)) { - // @ts-ignore - const delta = target_value - current_value; - // @ts-ignore - const velocity = (current_value - last_value) / (ctx.dt || 1 / 60); // guard div by 0 - const spring = ctx.opts.stiffness * delta; - const damper = ctx.opts.damping * velocity; - const acceleration = (spring - damper) * ctx.inv_mass; - const d = (velocity + acceleration) * ctx.dt; - if (Math.abs(d) < ctx.opts.precision && Math.abs(delta) < ctx.opts.precision) { - return target_value; // settled - } else { - ctx.settled = false; // signal loop to keep ticking - // @ts-ignore - return is_date(current_value) ? new Date(current_value.getTime() + d) : current_value + d; - } - } else if (Array.isArray(current_value)) { - // @ts-ignore - return current_value.map((_, i) => - tick_spring(ctx, last_value[i], current_value[i], target_value[i]) - ); - } else if (typeof current_value === 'object') { - const next_value = {}; - for (const k in current_value) { - // @ts-ignore - next_value[k] = tick_spring(ctx, last_value[k], current_value[k], target_value[k]); - } - // @ts-ignore - return next_value; - } else { - throw new Error(`Cannot spring ${typeof current_value} values`); - } -} - -/** - * @template T - * @param {T} [value] - * @param {import('./private.js').SpringOpts} [opts] - * @returns {import('./public.js').Spring} - */ -function spring(value, opts = {}) { - const store = writable(value); - const { stiffness = 0.15, damping = 0.8, precision = 0.01 } = opts; - /** @type {number} */ - let last_time; - /** @type {import('../internal/private.js').Task} */ - let task; - /** @type {object} */ - let current_token; - /** @type {T} */ - let last_value = value; - /** @type {T} */ - let target_value = value; - let inv_mass = 1; - let inv_mass_recovery_rate = 0; - let cancel_task = false; - /** - * @param {T} new_value - * @param {import('./private.js').SpringUpdateOpts} opts - * @returns {Promise} - */ - function set(new_value, opts = {}) { - target_value = new_value; - const token = (current_token = {}); - if (value == null || opts.hard || (spring.stiffness >= 1 && spring.damping >= 1)) { - cancel_task = true; // cancel any running animation - last_time = now(); - last_value = new_value; - store.set((value = target_value)); - return Promise.resolve(); - } else if (opts.soft) { - const rate = opts.soft === true ? 0.5 : +opts.soft; - inv_mass_recovery_rate = 1 / (rate * 60); - inv_mass = 0; // infinite mass, unaffected by spring forces - } - if (!task) { - last_time = now(); - cancel_task = false; - task = loop((now) => { - if (cancel_task) { - cancel_task = false; - task = null; - return false; - } - inv_mass = Math.min(inv_mass + inv_mass_recovery_rate, 1); - const ctx = { - inv_mass, - opts: spring, - settled: true, - dt: ((now - last_time) * 60) / 1000 - }; - const next_value = tick_spring(ctx, last_value, value, target_value); - last_time = now; - last_value = value; - store.set((value = next_value)); - if (ctx.settled) { - task = null; - } - return !ctx.settled; - }); - } - return new Promise((fulfil) => { - task.promise.then(() => { - if (token === current_token) fulfil(); - }); - }); - } - /** @type {import('./public.js').Spring} */ - const spring = { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store.subscribe, - stiffness, - damping, - precision - }; - return spring; -} - -/** @returns {(t: any) => any} */ -function get_interpolator(a, b) { - if (a === b || a !== a) return () => a; - const type = typeof a; - if (type !== typeof b || Array.isArray(a) !== Array.isArray(b)) { - throw new Error('Cannot interpolate values of different type'); - } - if (Array.isArray(a)) { - const arr = b.map((bi, i) => { - return get_interpolator(a[i], bi); - }); - return (t) => arr.map((fn) => fn(t)); - } - if (type === 'object') { - if (!a || !b) throw new Error('Object cannot be null'); - if (is_date(a) && is_date(b)) { - a = a.getTime(); - b = b.getTime(); - const delta = b - a; - return (t) => new Date(a + t * delta); - } - const keys = Object.keys(b); - const interpolators = {}; - keys.forEach((key) => { - interpolators[key] = get_interpolator(a[key], b[key]); - }); - return (t) => { - const result = {}; - keys.forEach((key) => { - result[key] = interpolators[key](t); - }); - return result; - }; - } - if (type === 'number') { - const delta = b - a; - return (t) => a + t * delta; - } - throw new Error(`Cannot interpolate ${type} values`); -} - -/** - * @template T - * @param {T} [value] - * @param {import('./private.js').TweenedOptions} [defaults] - * @returns {import('./public.js').Tweened} - */ -function tweened(value, defaults = {}) { - const store = writable(value); - /** @type {import('../internal/private.js').Task} */ - let task; - let target_value = value; - /** - * @param {T} new_value - * @param {import('./private.js').TweenedOptions} opts - */ - function set(new_value, opts) { - if (value == null) { - store.set((value = new_value)); - return Promise.resolve(); - } - target_value = new_value; - let previous_task = task; - let started = false; - let { - delay = 0, - duration = 400, - easing = identity, - interpolate = get_interpolator - } = assign(assign({}, defaults), opts); - if (duration === 0) { - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - store.set((value = target_value)); - return Promise.resolve(); - } - const start = now() + delay; - let fn; - task = loop((now) => { - if (now < start) return true; - if (!started) { - fn = interpolate(value, new_value); - if (typeof duration === 'function') duration = duration(value, new_value); - started = true; - } - if (previous_task) { - previous_task.abort(); - previous_task = null; - } - const elapsed = now - start; - if (elapsed > /** @type {number} */ (duration)) { - store.set((value = new_value)); - return false; - } - // @ts-ignore - store.set((value = fn(easing(elapsed / duration)))); - return true; - }); - return task.promise; - } - return { - set, - update: (fn, opts) => set(fn(target_value, value), opts), - subscribe: store.subscribe - }; -} - -export { spring, tweened }; diff --git a/motion/package.json b/motion/package.json deleted file mode 100644 index 598aeeaf5115..000000000000 --- a/motion/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/sites/svelte.dev/vite.config.js b/sites/svelte.dev/vite.config.js index 37f96118d007..8b4330925a36 100644 --- a/sites/svelte.dev/vite.config.js +++ b/sites/svelte.dev/vite.config.js @@ -18,6 +18,10 @@ if (!process.versions.webcontainer) { ); } +/** + * @param {string[]} ext + * @returns {import("vite").Plugin} + */ function raw(ext) { return { name: 'vite-plugin-raw', diff --git a/ssr.js b/ssr.js deleted file mode 100644 index 0b5b5509cc0f..000000000000 --- a/ssr.js +++ /dev/null @@ -1,26 +0,0 @@ -'use strict'; - -var Component = require('./internal/Component-9c4b98a2.js'); -var dev = require('./internal/dev-1537023e.js'); - -/** @returns {void} */ -function onMount() {} - -/** @returns {void} */ -function beforeUpdate() {} - -/** @returns {void} */ -function afterUpdate() {} - -exports.createEventDispatcher = Component.createEventDispatcher; -exports.getAllContexts = Component.getAllContexts; -exports.getContext = Component.getContext; -exports.hasContext = Component.hasContext; -exports.onDestroy = Component.onDestroy; -exports.setContext = Component.setContext; -exports.tick = Component.tick; -exports.SvelteComponent = dev.SvelteComponentDev; -exports.SvelteComponentTyped = dev.SvelteComponentTyped; -exports.afterUpdate = afterUpdate; -exports.beforeUpdate = beforeUpdate; -exports.onMount = onMount; diff --git a/ssr.mjs b/ssr.mjs deleted file mode 100644 index 22634b38fb0b..000000000000 --- a/ssr.mjs +++ /dev/null @@ -1,13 +0,0 @@ -export { createEventDispatcher, getAllContexts, getContext, hasContext, onDestroy, setContext, tick } from './internal/Component-cd97939e.mjs'; -export { SvelteComponentDev as SvelteComponent, SvelteComponentTyped } from './internal/dev-89102382.mjs'; - -/** @returns {void} */ -function onMount() {} - -/** @returns {void} */ -function beforeUpdate() {} - -/** @returns {void} */ -function afterUpdate() {} - -export { afterUpdate, beforeUpdate, onMount }; diff --git a/store/index.d.ts b/store/index.d.ts deleted file mode 100644 index 40d70d7383db..000000000000 --- a/store/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/store/index.js'; \ No newline at end of file diff --git a/store/index.js b/store/index.js deleted file mode 100644 index 055941bdc9c0..000000000000 --- a/store/index.js +++ /dev/null @@ -1,189 +0,0 @@ -'use strict'; - -var Component = require('../internal/Component-9c4b98a2.js'); - -const subscriber_queue = []; - -/** - * Creates a `Readable` store that allows reading by subscription. - * @template T - * @param {T} value initial value - * @param {import('./public.js').StartStopNotifier} start - * @returns {import('./public.js').Readable} - */ -function readable(value, start) { - return { - subscribe: writable(value, start).subscribe - }; -} - -/** - * Create a `Writable` store that allows both updating and reading by subscription. - * @template T - * @param {T} value initial value - * @param {import('./public.js').StartStopNotifier} start - * @returns {import('./public.js').Writable} - */ -function writable(value, start = Component.noop) { - /** @type {import('./public.js').Unsubscriber} */ - let stop; - /** @type {Set>} */ - const subscribers = new Set(); - /** @param {T} new_value - * @returns {void} - */ - function set(new_value) { - if (Component.safe_not_equal(value, new_value)) { - value = new_value; - if (stop) { - // store is ready - const run_queue = !subscriber_queue.length; - for (const subscriber of subscribers) { - subscriber[1](); - subscriber_queue.push(subscriber, value); - } - if (run_queue) { - for (let i = 0; i < subscriber_queue.length; i += 2) { - subscriber_queue[i][0](subscriber_queue[i + 1]); - } - subscriber_queue.length = 0; - } - } - } - } - /** - * @param {import('./public.js').Updater} fn - * @returns {void} - */ - function update(fn) { - set(fn(value)); - } - /** - * @param {import('./public.js').Subscriber} run - * @param {import('./private.js').Invalidator} invalidate - * @returns {import('./public.js').Unsubscriber} - */ - function subscribe(run, invalidate = Component.noop) { - /** @type {import('./private.js').SubscribeInvalidateTuple} */ - const subscriber = [run, invalidate]; - subscribers.add(subscriber); - if (subscribers.size === 1) { - stop = start(set, update) || Component.noop; - } - run(value); - return () => { - subscribers.delete(subscriber); - if (subscribers.size === 0 && stop) { - stop(); - stop = null; - } - }; - } - return { set, update, subscribe }; -} - -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @template {import('./private.js').Stores} S - * @template T - * @overload - * @param {S} stores - input stores - * @param {(values: import('./public.js').StoresValues, set: import('./public.js').Subscriber, update: (fn: import('./public.js').Updater) => void) => import('./public.js').Unsubscriber | void} fn - function callback that aggregates the values - * @param {T} [initial_value] - initial value - * @returns {import('./public.js').Readable} - */ - -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @template {import('./private.js').Stores} S - * @template T - * @overload - * @param {S} stores - input stores - * @param {(values: import('./public.js').StoresValues) => T} fn - function callback that aggregates the values - * @param {T} [initial_value] - initial value - * @returns {import('./public.js').Readable} - */ - -/** - * @template {import('./private.js').Stores} S - * @template T - * @param {S} stores - * @param {Function} fn - * @param {T} [initial_value] - * @returns {import('./public.js').Readable} - */ -function derived(stores, fn, initial_value) { - const single = !Array.isArray(stores); - /** @type {Array>} */ - const stores_array = single ? [stores] : stores; - if (!stores_array.every(Boolean)) { - throw new Error('derived() expects stores as input, got a falsy value'); - } - const auto = fn.length < 2; - return readable(initial_value, (set, update) => { - let started = false; - const values = []; - let pending = 0; - let cleanup = Component.noop; - const sync = () => { - if (pending) { - return; - } - cleanup(); - const result = fn(single ? values[0] : values, set, update); - if (auto) { - set(result); - } else { - cleanup = Component.is_function(result) ? result : Component.noop; - } - }; - const unsubscribers = stores_array.map((store, i) => - Component.subscribe( - store, - (value) => { - values[i] = value; - pending &= ~(1 << i); - if (started) { - sync(); - } - }, - () => { - pending |= 1 << i; - } - ) - ); - started = true; - sync(); - return function stop() { - Component.run_all(unsubscribers); - cleanup(); - // We need to set this to false because callbacks can still happen despite having unsubscribed: - // Callbacks might already be placed in the queue which doesn't know it should no longer - // invoke this derived store. - started = false; - }; - }); -} - -/** - * Takes a store and returns a new one derived from the old one that is readable. - * - * @template T - * @param {import('./public.js').Readable} store - store to make readonly - * @returns {import('./public.js').Readable} - */ -function readonly(store) { - return { - subscribe: store.subscribe.bind(store) - }; -} - -exports.get = Component.get_store_value; -exports.derived = derived; -exports.readable = readable; -exports.readonly = readonly; -exports.writable = writable; diff --git a/store/index.mjs b/store/index.mjs deleted file mode 100644 index c626a7e4b115..000000000000 --- a/store/index.mjs +++ /dev/null @@ -1,184 +0,0 @@ -import { noop, subscribe, run_all, safe_not_equal, is_function } from '../internal/Component-cd97939e.mjs'; -export { get_store_value as get } from '../internal/Component-cd97939e.mjs'; - -const subscriber_queue = []; - -/** - * Creates a `Readable` store that allows reading by subscription. - * @template T - * @param {T} value initial value - * @param {import('./public.js').StartStopNotifier} start - * @returns {import('./public.js').Readable} - */ -function readable(value, start) { - return { - subscribe: writable(value, start).subscribe - }; -} - -/** - * Create a `Writable` store that allows both updating and reading by subscription. - * @template T - * @param {T} value initial value - * @param {import('./public.js').StartStopNotifier} start - * @returns {import('./public.js').Writable} - */ -function writable(value, start = noop) { - /** @type {import('./public.js').Unsubscriber} */ - let stop; - /** @type {Set>} */ - const subscribers = new Set(); - /** @param {T} new_value - * @returns {void} - */ - function set(new_value) { - if (safe_not_equal(value, new_value)) { - value = new_value; - if (stop) { - // store is ready - const run_queue = !subscriber_queue.length; - for (const subscriber of subscribers) { - subscriber[1](); - subscriber_queue.push(subscriber, value); - } - if (run_queue) { - for (let i = 0; i < subscriber_queue.length; i += 2) { - subscriber_queue[i][0](subscriber_queue[i + 1]); - } - subscriber_queue.length = 0; - } - } - } - } - /** - * @param {import('./public.js').Updater} fn - * @returns {void} - */ - function update(fn) { - set(fn(value)); - } - /** - * @param {import('./public.js').Subscriber} run - * @param {import('./private.js').Invalidator} invalidate - * @returns {import('./public.js').Unsubscriber} - */ - function subscribe(run, invalidate = noop) { - /** @type {import('./private.js').SubscribeInvalidateTuple} */ - const subscriber = [run, invalidate]; - subscribers.add(subscriber); - if (subscribers.size === 1) { - stop = start(set, update) || noop; - } - run(value); - return () => { - subscribers.delete(subscriber); - if (subscribers.size === 0 && stop) { - stop(); - stop = null; - } - }; - } - return { set, update, subscribe }; -} - -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @template {import('./private.js').Stores} S - * @template T - * @overload - * @param {S} stores - input stores - * @param {(values: import('./public.js').StoresValues, set: import('./public.js').Subscriber, update: (fn: import('./public.js').Updater) => void) => import('./public.js').Unsubscriber | void} fn - function callback that aggregates the values - * @param {T} [initial_value] - initial value - * @returns {import('./public.js').Readable} - */ - -/** - * Derived value store by synchronizing one or more readable stores and - * applying an aggregation function over its input values. - * - * @template {import('./private.js').Stores} S - * @template T - * @overload - * @param {S} stores - input stores - * @param {(values: import('./public.js').StoresValues) => T} fn - function callback that aggregates the values - * @param {T} [initial_value] - initial value - * @returns {import('./public.js').Readable} - */ - -/** - * @template {import('./private.js').Stores} S - * @template T - * @param {S} stores - * @param {Function} fn - * @param {T} [initial_value] - * @returns {import('./public.js').Readable} - */ -function derived(stores, fn, initial_value) { - const single = !Array.isArray(stores); - /** @type {Array>} */ - const stores_array = single ? [stores] : stores; - if (!stores_array.every(Boolean)) { - throw new Error('derived() expects stores as input, got a falsy value'); - } - const auto = fn.length < 2; - return readable(initial_value, (set, update) => { - let started = false; - const values = []; - let pending = 0; - let cleanup = noop; - const sync = () => { - if (pending) { - return; - } - cleanup(); - const result = fn(single ? values[0] : values, set, update); - if (auto) { - set(result); - } else { - cleanup = is_function(result) ? result : noop; - } - }; - const unsubscribers = stores_array.map((store, i) => - subscribe( - store, - (value) => { - values[i] = value; - pending &= ~(1 << i); - if (started) { - sync(); - } - }, - () => { - pending |= 1 << i; - } - ) - ); - started = true; - sync(); - return function stop() { - run_all(unsubscribers); - cleanup(); - // We need to set this to false because callbacks can still happen despite having unsubscribed: - // Callbacks might already be placed in the queue which doesn't know it should no longer - // invoke this derived store. - started = false; - }; - }); -} - -/** - * Takes a store and returns a new one derived from the old one that is readable. - * - * @template T - * @param {import('./public.js').Readable} store - store to make readonly - * @returns {import('./public.js').Readable} - */ -function readonly(store) { - return { - subscribe: store.subscribe.bind(store) - }; -} - -export { derived, readable, readonly, writable }; diff --git a/store/package.json b/store/package.json deleted file mode 100644 index 598aeeaf5115..000000000000 --- a/store/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file diff --git a/transition/index.d.ts b/transition/index.d.ts deleted file mode 100644 index ac81403395bd..000000000000 --- a/transition/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from '../types/runtime/transition/index.js'; \ No newline at end of file diff --git a/transition/index.js b/transition/index.js deleted file mode 100644 index b981c3b717a0..000000000000 --- a/transition/index.js +++ /dev/null @@ -1,244 +0,0 @@ -'use strict'; - -var easing = require('../easing/index.js'); -var Component = require('../internal/Component-9c4b98a2.js'); - -/** - * @param {Element} node - * @param {import('./public').BlurParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function blur( - node, - { delay = 0, duration = 400, easing: easing$1 = easing.cubicInOut, amount = 5, opacity = 0 } = {} -) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const f = style.filter === 'none' ? '' : style.filter; - const od = target_opacity * (1 - opacity); - const [value, unit] = Component.split_css_unit(amount); - return { - delay, - duration, - easing: easing$1, - css: (_t, u) => `opacity: ${target_opacity - od * u}; filter: ${f} blur(${u * value}${unit});` - }; -} - -/** - * @param {Element} node - * @param {import('./public').FadeParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function fade(node, { delay = 0, duration = 400, easing = Component.identity } = {}) { - const o = +getComputedStyle(node).opacity; - return { - delay, - duration, - easing, - css: (t) => `opacity: ${t * o}` - }; -} - -/** - * @param {Element} node - * @param {import('./public').FlyParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function fly( - node, - { delay = 0, duration = 400, easing: easing$1 = easing.cubicOut, x = 0, y = 0, opacity = 0 } = {} -) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const od = target_opacity * (1 - opacity); - const [xValue, xUnit] = Component.split_css_unit(x); - const [yValue, yUnit] = Component.split_css_unit(y); - return { - delay, - duration, - easing: easing$1, - css: (t, u) => ` - transform: ${transform} translate(${(1 - t) * xValue}${xUnit}, ${(1 - t) * yValue}${yUnit}); - opacity: ${target_opacity - od * u}` - }; -} - -/** - * @param {Element} node - * @param {import('./public').SlideParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function slide(node, { delay = 0, duration = 400, easing: easing$1 = easing.cubicOut, axis = 'y' } = {}) { - const style = getComputedStyle(node); - const opacity = +style.opacity; - const primary_property = axis === 'y' ? 'height' : 'width'; - const primary_property_value = parseFloat(style[primary_property]); - const secondary_properties = axis === 'y' ? ['top', 'bottom'] : ['left', 'right']; - const capitalized_secondary_properties = secondary_properties.map( - (e) => `${e[0].toUpperCase()}${e.slice(1)}` - ); - const padding_start_value = parseFloat(style[`padding${capitalized_secondary_properties[0]}`]); - const padding_end_value = parseFloat(style[`padding${capitalized_secondary_properties[1]}`]); - const margin_start_value = parseFloat(style[`margin${capitalized_secondary_properties[0]}`]); - const margin_end_value = parseFloat(style[`margin${capitalized_secondary_properties[1]}`]); - const border_width_start_value = parseFloat( - style[`border${capitalized_secondary_properties[0]}Width`] - ); - const border_width_end_value = parseFloat( - style[`border${capitalized_secondary_properties[1]}Width`] - ); - return { - delay, - duration, - easing: easing$1, - css: (t) => - 'overflow: hidden;' + - `opacity: ${Math.min(t * 20, 1) * opacity};` + - `${primary_property}: ${t * primary_property_value}px;` + - `padding-${secondary_properties[0]}: ${t * padding_start_value}px;` + - `padding-${secondary_properties[1]}: ${t * padding_end_value}px;` + - `margin-${secondary_properties[0]}: ${t * margin_start_value}px;` + - `margin-${secondary_properties[1]}: ${t * margin_end_value}px;` + - `border-${secondary_properties[0]}-width: ${t * border_width_start_value}px;` + - `border-${secondary_properties[1]}-width: ${t * border_width_end_value}px;` - }; -} - -/** - * @param {Element} node - * @param {import('./public').ScaleParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function scale( - node, - { delay = 0, duration = 400, easing: easing$1 = easing.cubicOut, start = 0, opacity = 0 } = {} -) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const sd = 1 - start; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing: easing$1, - css: (_t, u) => ` - transform: ${transform} scale(${1 - sd * u}); - opacity: ${target_opacity - od * u} - ` - }; -} - -/** - * @param {SVGElement & { getTotalLength(): number }} node - * @param {import('./public').DrawParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function draw(node, { delay = 0, speed, duration, easing: easing$1 = easing.cubicInOut } = {}) { - let len = node.getTotalLength(); - const style = getComputedStyle(node); - if (style.strokeLinecap !== 'butt') { - len += parseInt(style.strokeWidth); - } - if (duration === undefined) { - if (speed === undefined) { - duration = 800; - } else { - duration = len / speed; - } - } else if (typeof duration === 'function') { - duration = duration(len); - } - return { - delay, - duration, - easing: easing$1, - css: (_, u) => ` - stroke-dasharray: ${len}; - stroke-dashoffset: ${u * len}; - ` - }; -} - -/** - * @param {import('./public').CrossfadeParams & { - * fallback?: (node: Element, params: import('./public').CrossfadeParams, intro: boolean) => import('./public').TransitionConfig; - * }} params - * @returns {[(node: any, params: import('./public').CrossfadeParams & { key: any; }) => () => import('./public').TransitionConfig, (node: any, params: import('./public').CrossfadeParams & { key: any; }) => () => import('./public').TransitionConfig]} - */ -function crossfade({ fallback, ...defaults }) { - /** @type {Map} */ - const to_receive = new Map(); - /** @type {Map} */ - const to_send = new Map(); - /** - * @param {Element} from_node - * @param {Element} node - * @param {import('./public').CrossfadeParams} params - * @returns {import('./public').TransitionConfig} - */ - function crossfade(from_node, node, params) { - const { - delay = 0, - duration = (d) => Math.sqrt(d) * 30, - easing: easing$1 = easing.cubicOut - } = Component.assign(Component.assign({}, defaults), params); - const from = from_node.getBoundingClientRect(); - const to = node.getBoundingClientRect(); - const dx = from.left - to.left; - const dy = from.top - to.top; - const dw = from.width / to.width; - const dh = from.height / to.height; - const d = Math.sqrt(dx * dx + dy * dy); - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - const opacity = +style.opacity; - return { - delay, - duration: Component.is_function(duration) ? duration(d) : duration, - easing: easing$1, - css: (t, u) => ` - opacity: ${t * opacity}; - transform-origin: top left; - transform: ${transform} translate(${u * dx}px,${u * dy}px) scale(${t + (1 - t) * dw}, ${ - t + (1 - t) * dh - }); - ` - }; - } - - /** - * @param {Map} items - * @param {Map} counterparts - * @param {boolean} intro - * @returns {(node: any, params: import('./public').CrossfadeParams & { key: any; }) => () => import('./public').TransitionConfig} - */ - function transition(items, counterparts, intro) { - return (node, params) => { - items.set(params.key, node); - return () => { - if (counterparts.has(params.key)) { - const other_node = counterparts.get(params.key); - counterparts.delete(params.key); - return crossfade(other_node, node, params); - } - // if the node is disappearing altogether - // (i.e. wasn't claimed by the other list) - // then we need to supply an outro - items.delete(params.key); - return fallback && fallback(node, params, intro); - }; - }; - } - return [transition(to_send, to_receive, false), transition(to_receive, to_send, true)]; -} - -exports.blur = blur; -exports.crossfade = crossfade; -exports.draw = draw; -exports.fade = fade; -exports.fly = fly; -exports.scale = scale; -exports.slide = slide; diff --git a/transition/index.mjs b/transition/index.mjs deleted file mode 100644 index 5168c39a1737..000000000000 --- a/transition/index.mjs +++ /dev/null @@ -1,236 +0,0 @@ -import { cubicInOut, cubicOut } from '../easing/index.mjs'; -import { split_css_unit, identity, assign, is_function } from '../internal/Component-cd97939e.mjs'; - -/** - * @param {Element} node - * @param {import('./public').BlurParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function blur( - node, - { delay = 0, duration = 400, easing = cubicInOut, amount = 5, opacity = 0 } = {} -) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const f = style.filter === 'none' ? '' : style.filter; - const od = target_opacity * (1 - opacity); - const [value, unit] = split_css_unit(amount); - return { - delay, - duration, - easing, - css: (_t, u) => `opacity: ${target_opacity - od * u}; filter: ${f} blur(${u * value}${unit});` - }; -} - -/** - * @param {Element} node - * @param {import('./public').FadeParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function fade(node, { delay = 0, duration = 400, easing = identity } = {}) { - const o = +getComputedStyle(node).opacity; - return { - delay, - duration, - easing, - css: (t) => `opacity: ${t * o}` - }; -} - -/** - * @param {Element} node - * @param {import('./public').FlyParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function fly( - node, - { delay = 0, duration = 400, easing = cubicOut, x = 0, y = 0, opacity = 0 } = {} -) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const od = target_opacity * (1 - opacity); - const [xValue, xUnit] = split_css_unit(x); - const [yValue, yUnit] = split_css_unit(y); - return { - delay, - duration, - easing, - css: (t, u) => ` - transform: ${transform} translate(${(1 - t) * xValue}${xUnit}, ${(1 - t) * yValue}${yUnit}); - opacity: ${target_opacity - od * u}` - }; -} - -/** - * @param {Element} node - * @param {import('./public').SlideParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function slide(node, { delay = 0, duration = 400, easing = cubicOut, axis = 'y' } = {}) { - const style = getComputedStyle(node); - const opacity = +style.opacity; - const primary_property = axis === 'y' ? 'height' : 'width'; - const primary_property_value = parseFloat(style[primary_property]); - const secondary_properties = axis === 'y' ? ['top', 'bottom'] : ['left', 'right']; - const capitalized_secondary_properties = secondary_properties.map( - (e) => `${e[0].toUpperCase()}${e.slice(1)}` - ); - const padding_start_value = parseFloat(style[`padding${capitalized_secondary_properties[0]}`]); - const padding_end_value = parseFloat(style[`padding${capitalized_secondary_properties[1]}`]); - const margin_start_value = parseFloat(style[`margin${capitalized_secondary_properties[0]}`]); - const margin_end_value = parseFloat(style[`margin${capitalized_secondary_properties[1]}`]); - const border_width_start_value = parseFloat( - style[`border${capitalized_secondary_properties[0]}Width`] - ); - const border_width_end_value = parseFloat( - style[`border${capitalized_secondary_properties[1]}Width`] - ); - return { - delay, - duration, - easing, - css: (t) => - 'overflow: hidden;' + - `opacity: ${Math.min(t * 20, 1) * opacity};` + - `${primary_property}: ${t * primary_property_value}px;` + - `padding-${secondary_properties[0]}: ${t * padding_start_value}px;` + - `padding-${secondary_properties[1]}: ${t * padding_end_value}px;` + - `margin-${secondary_properties[0]}: ${t * margin_start_value}px;` + - `margin-${secondary_properties[1]}: ${t * margin_end_value}px;` + - `border-${secondary_properties[0]}-width: ${t * border_width_start_value}px;` + - `border-${secondary_properties[1]}-width: ${t * border_width_end_value}px;` - }; -} - -/** - * @param {Element} node - * @param {import('./public').ScaleParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function scale( - node, - { delay = 0, duration = 400, easing = cubicOut, start = 0, opacity = 0 } = {} -) { - const style = getComputedStyle(node); - const target_opacity = +style.opacity; - const transform = style.transform === 'none' ? '' : style.transform; - const sd = 1 - start; - const od = target_opacity * (1 - opacity); - return { - delay, - duration, - easing, - css: (_t, u) => ` - transform: ${transform} scale(${1 - sd * u}); - opacity: ${target_opacity - od * u} - ` - }; -} - -/** - * @param {SVGElement & { getTotalLength(): number }} node - * @param {import('./public').DrawParams} [params] - * @returns {import('./public').TransitionConfig} - */ -function draw(node, { delay = 0, speed, duration, easing = cubicInOut } = {}) { - let len = node.getTotalLength(); - const style = getComputedStyle(node); - if (style.strokeLinecap !== 'butt') { - len += parseInt(style.strokeWidth); - } - if (duration === undefined) { - if (speed === undefined) { - duration = 800; - } else { - duration = len / speed; - } - } else if (typeof duration === 'function') { - duration = duration(len); - } - return { - delay, - duration, - easing, - css: (_, u) => ` - stroke-dasharray: ${len}; - stroke-dashoffset: ${u * len}; - ` - }; -} - -/** - * @param {import('./public').CrossfadeParams & { - * fallback?: (node: Element, params: import('./public').CrossfadeParams, intro: boolean) => import('./public').TransitionConfig; - * }} params - * @returns {[(node: any, params: import('./public').CrossfadeParams & { key: any; }) => () => import('./public').TransitionConfig, (node: any, params: import('./public').CrossfadeParams & { key: any; }) => () => import('./public').TransitionConfig]} - */ -function crossfade({ fallback, ...defaults }) { - /** @type {Map} */ - const to_receive = new Map(); - /** @type {Map} */ - const to_send = new Map(); - /** - * @param {Element} from_node - * @param {Element} node - * @param {import('./public').CrossfadeParams} params - * @returns {import('./public').TransitionConfig} - */ - function crossfade(from_node, node, params) { - const { - delay = 0, - duration = (d) => Math.sqrt(d) * 30, - easing = cubicOut - } = assign(assign({}, defaults), params); - const from = from_node.getBoundingClientRect(); - const to = node.getBoundingClientRect(); - const dx = from.left - to.left; - const dy = from.top - to.top; - const dw = from.width / to.width; - const dh = from.height / to.height; - const d = Math.sqrt(dx * dx + dy * dy); - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; - const opacity = +style.opacity; - return { - delay, - duration: is_function(duration) ? duration(d) : duration, - easing, - css: (t, u) => ` - opacity: ${t * opacity}; - transform-origin: top left; - transform: ${transform} translate(${u * dx}px,${u * dy}px) scale(${t + (1 - t) * dw}, ${ - t + (1 - t) * dh - }); - ` - }; - } - - /** - * @param {Map} items - * @param {Map} counterparts - * @param {boolean} intro - * @returns {(node: any, params: import('./public').CrossfadeParams & { key: any; }) => () => import('./public').TransitionConfig} - */ - function transition(items, counterparts, intro) { - return (node, params) => { - items.set(params.key, node); - return () => { - if (counterparts.has(params.key)) { - const other_node = counterparts.get(params.key); - counterparts.delete(params.key); - return crossfade(other_node, node, params); - } - // if the node is disappearing altogether - // (i.e. wasn't claimed by the other list) - // then we need to supply an outro - items.delete(params.key); - return fallback && fallback(node, params, intro); - }; - }; - } - return [transition(to_send, to_receive, false), transition(to_receive, to_send, true)]; -} - -export { blur, crossfade, draw, fade, fly, scale, slide }; diff --git a/transition/package.json b/transition/package.json deleted file mode 100644 index 598aeeaf5115..000000000000 --- a/transition/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "main": "./index", - "module": "./index.mjs", - "types": "./index.d.ts" -} \ No newline at end of file