lwa 0.2.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,13 +1,16 @@
1
1
  # lwa
2
2
 
3
- 轻量级的动画库。
3
+ > 轻量级的动画库,支持按需加载与摇树优化。
4
4
 
5
- - 按需加载
6
- - 摇树优化
5
+ - 🧩 按需加载,摇树优化
6
+ - 🎬 支持 CSS 属性、Transform、颜色、相对值、函数值、关键帧等多种值类型
7
+ - ⏱ 内置时间轴(Timeline),支持交错(Stagger)动画
8
+ - 📐 支持 SVG 路径描边、形状变形与运动路径
9
+ - 🗜 体积小巧,UMD / ESM / CJS 多种格式
7
10
 
8
11
  ## 文档与演示
9
12
 
10
- [https://sutras.github.io/lwa-docs](https://sutras.github.io/lwa-docs)
13
+ 在线文档与演示:[https://lwa.wzt.zone/](https://lwa.wzt.zone/)
11
14
 
12
15
  ## 安装
13
16
 
@@ -15,7 +18,11 @@
15
18
  npm install lwa
16
19
  ```
17
20
 
18
- ## 注册插件
21
+ 也支持 `pnpm`、`yarn` 或 `bun` 安装。
22
+
23
+ ## 按需加载(推荐)
24
+
25
+ `lwa` 提供了模块化的入口,仅包含核心逻辑,可按需注册插件,配合打包工具的摇树优化减小体积。
19
26
 
20
27
  ```js
21
28
  import {
@@ -25,19 +32,61 @@ import {
25
32
  relativePlugin,
26
33
  svgPlugin,
27
34
  interpPlugin,
35
+ createAnimation,
28
36
  } from "lwa";
29
37
 
38
+ // 注册所需插件
30
39
  use([cssPlugin, colorPlugin, relativePlugin, svgPlugin, interpPlugin]);
40
+
41
+ createAnimation("#el", {
42
+ translateX: 200,
43
+ });
44
+ ```
45
+
46
+ ## 完整版 / CDN
47
+
48
+ `lwa` 的完整版内置并自动注册了全部插件,可通过默认导出直接调用,适合无需打包的 CDN 场景。
49
+
50
+ ### global (UMD)
51
+
52
+ ```html
53
+ <script src="https://unpkg.com/lwa/dist/lwa.full.umd.js"></script>
54
+
55
+ <script>
56
+ lwa("#el", {
57
+ translateX: 200,
58
+ });
59
+ </script>
31
60
  ```
32
61
 
33
- ## 使用
62
+ ### ES Modules
34
63
 
35
64
  ```js
36
- import { createAnimation } from "lwa";
65
+ import lwa from "https://unpkg.com/lwa/dist/lwa.full.es.js";
37
66
 
38
- createAnimation("#el", {
67
+ lwa("#el", {
68
+ translateX: 200,
69
+ });
70
+ ```
71
+
72
+ 完整版同样可以通过 `lwa.createAnimation`、`lwa.timeline`、`lwa.stagger` 等方式调用。
73
+
74
+ ## 基础用法
75
+
76
+ ```js
77
+ import lwa from "lwa";
78
+
79
+ // 创建单个动画
80
+ const animation = lwa("#el", {
39
81
  translateX: 200,
82
+ rotate: 360,
40
83
  });
84
+
85
+ // 时间轴
86
+ lwa
87
+ .timeline()
88
+ .add("#el1", { translateX: 200 })
89
+ .add("#el2", { translateX: 200 }, "<");
41
90
  ```
42
91
 
43
92
  ## 维护
@@ -54,13 +103,19 @@ git clone https://github.com/sutras/lwa.git
54
103
  pnpm install
55
104
  ```
56
105
 
57
- ### 启动开发环境
106
+ ### 启动开发环境(文档)
58
107
 
59
108
  ```bash
60
109
  npm run dev
61
110
  ```
62
111
 
63
- ### 打包案例文档和部署
112
+ ### 构建文档
113
+
114
+ ```bash
115
+ npm run build:docs
116
+ ```
117
+
118
+ ### 打包案例文档并部署
64
119
 
65
120
  ```bash
66
121
  npm run buildDocsAndDeploy
@@ -71,3 +126,7 @@ npm run buildDocsAndDeploy
71
126
  ```bash
72
127
  npm run build:lib
73
128
  ```
129
+
130
+ ## License
131
+
132
+ [MIT](./LICENSE)
package/dist/lwa.cjs CHANGED
@@ -1,2 +1,2 @@
1
1
  /* lwa 0.2.3 | MIT license | https://github.com/sutras/lwa */
2
- "use strict";var e=Object.defineProperty,t=Math.pow,n=(t,n,r)=>((t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r)(t,"symbol"!=typeof n?n+"":n,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const{request:r,cancel:o}=function(){if("function"==typeof requestAnimationFrame)return{request:requestAnimationFrame,cancel:cancelAnimationFrame};const e=[];let t,n=1,r=0;function o(){t=void 0;const n=e.slice();r+=e.length,e.length=0,n.forEach((e=>{0!==e&&e(Date.now())}))}return{request:r=>(e.push(r),t||(t=setTimeout(o,1e3/60)),n++),cancel(t){e[t-r]=0}}}(),a=new Set;let i=0,f=!0;function s(){0===a.size?f||(f=!0,o(i)):(new Set(a).forEach((e=>e())),i=r(s))}const c={add:function(e){a.add(e),f&&(f=!1,i=r(s))},remove:function(e){a.delete(e)}},u={linear:()=>e=>e},l={Sine:()=>e=>1-Math.cos(e*Math.PI/2),Expo:()=>e=>e?Math.pow(1024,e-1):0,Circ:()=>e=>1-Math.sqrt(1-e*e),Elastic:()=>e=>0===e||1===e?e:-Math.pow(2,10*e-10)*Math.sin(2*(10*e-10.75)*Math.PI/3),Back:()=>e=>{const t=1.70158;return e*e*((t+1)*e-t)},Bounce:()=>e=>{const t=7.5625,n=2.75;return 1-((e=1-e)<1/n?t*e*e:e<2/n?t*(e-=1.5/n)*e+.75:e<2.5/n?t*(e-=2.25/n)*e+.9375:t*(e-=2.625/n)*e+.984375)}};["Quad","Cubic","Quart","Quint"].forEach(((e,t)=>{l[e]=()=>e=>Math.pow(e,t+2)})),Object.keys(l).forEach((e=>{const t=l[e];u["easeIn"+e]=t,u["easeOut"+e]=(e,n)=>r=>1-t(e,n)(1-r),u["easeInOut"+e]=(e,n)=>r=>r<.5?t(e,n)(2*r)/2:1-t(e,n)(2-2*r)/2}));const d=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/,g=new RegExp("^([+\\-*/%]=|)("+d.source+")("+/%|px|rpx|em|rem|vw|vh|deg|rad|turn|ex|ch|vmin|vmax|pc|pt|in|cm|mm/.source+"|)$","i"),p=new RegExp(d.source,"g"),m=new RegExp("^([<>]|)([+-]=|)("+d.source+"|)(%|)$");function h(e){return"number"==typeof e}function b(e){return"string"==typeof e}function y(e){return null!==e&&"object"==typeof e}function w(e){return"function"==typeof e}function x(e){return Array.isArray(e)}function k(e){return Array.isArray(e)?e:[e]}function v(e){return w(e)?e:()=>(u[e]||u.linear)(0,0)}const M=Symbol();class E{}class S extends E{constructor(e,t){super(),n(this,"from"),n(this,"to"),this.from=e,this.to=t}}class q extends E{constructor(e,t,r){super(),n(this,"el"),n(this,"prop"),n(this,"totalLength"),this.el=e,this.prop=t,this.totalLength=r}}const A=[];function O(e){const n=[];return x(e)||(e=[e]),e.flat().forEach((e=>{e&&(b(e)?n.push(...Array.from(document.querySelectorAll(e))):!function(e){let n;return y(e)&&Number.isInteger(n=e.length)&&n<t(2,32)}(e)?(y(e)||w(e))&&n.push(e):n.push(...Array.from(e)))})),Array.from(new Set(n))}function P(e,t){return w(e)?e(t.target,t.index,t.total):e}function T(e,t){const{duration:n,delay:r,begin:o,easing:a,between:i}=t;return i.map((t=>function(t){const{from:i,to:f,round:s}=t;let c=e<=o+r?i:e>=o+r+n?f:i+a((e-o-r)/n)*(f-i);return s&&(c=Math.round(c*s)/s),c}(t)))}function C(e,t){return x(e=P(e,t))?e.map((e=>C(e,t)[0])):((h(e)||b(e)||e instanceof E)&&(e={value:e}),[e])}function D(e,t,n,r,o,a,i){const f=t.length;let s,c=o||0;i=(null!=i?i:r.duration)/f;const u=t.map(((t,o)=>s=function(t,o,s){var u,l,d,p,m,h,y;const w=P(null!=(u=t.duration)?u:i,e),x=P(null!=(l=t.delay)?l:0===o?r.delay:0,e),k=P(null!=(d=t.endDelay)?d:o===f-1?r.endDelay:0,e),E=P(v(null!=(p=t.easing)?p:r.easing),e),q=P(null!=(m=t.round)?m:r.round,e),O=x+w+k,T=c,C=T+O;if(c+=O,!s){let e;s=(e=a[n])?e[e.length-1]:void 0}const D=t.value;let $,j;const L=D instanceof S;L?(j=P(D.from,e),$=P(D.to,e)):$=D,!L&&s&&(j=s.to);let I=!1;void 0===j&&(j=e.target[n],I=!0);let F="",N="";if(b($)){const e=g.exec($);e&&(F=e[1],$=parseFloat(e[2])||0,N=e[3])}const z={animatedTarget:e,prop:n,duration:w,delay:x,endDelay:k,begin:T,end:C,easing:E,data:{},from:j,to:$,withoutFrom:I,round:q,unit:N,operator:F,between:[]};for(let e=0,n=A.length;e<n&&(null==(y=(h=A[e]).init)?void 0:y.call(h,z,M))!==M;e++);return z}(t,o,s))).sort(((e,t)=>e.begin-t.begin));return{endTime:c,tweens:u}}function $(e,t,n){const r={},o=P(n.duration,e)/t.length;let a=0;return t.forEach((t=>{const i=function(e,t,n,r,o,a){let i={};for(let f in t){const s=t[f];null!=s&&(i[f]=D(e,C(s,e),f,n,r,o,a))}return i}(e,t,n,a,r,o);for(let e in i)a=Math.max(a,i[e].endTime),r[e]=(r[e]||[]).concat(i[e].tweens)})),r}function j(e,t,n){return e.map((e=>{const r=$(e,t,n);return Object.keys(r).map((e=>{return{seek:function(e){var n,r;let o;for(let a,i=0;a=t[i++];){if(a.begin<=e&&a.end>=e){o=a;break}e>a.end&&(!t[i+1]||t[i+1].begin>e)&&(o=a)}if(o){let t,a=T(e,o);for(let e=A.length-1;e>=0;e--){if(t=null==(r=(n=A[e]).update)?void 0:r.call(n,o,a,M),t===M)return;void 0!==t&&(a=t)}}},getDuration:function(){return Math.max(...t.map((e=>e.end)))},tweens:t=r[e]};var t}))})).flat()}const L={duration:500,delay:0,endDelay:0,easing:"easeInOutQuad",round:0};function I(e){k(e).forEach((e=>{A.includes(e)||(A.push(e),A.sort(((e,t)=>t.order-e.order)))}))}const F="alternate-reverse",N="reverse",z="alternate";function R(e){return e===N||e===F}function X(e){return e===z||e===F}const Y={externalTicker:!1,autoplay:!0,direction:"normal",loop:1},B=["begin","loopBegin","complete","loopComplete","pause","play","update"];function G(e){const t=Object.assign({},Y,e),{externalTicker:n,autoplay:r,direction:o,loop:a}=t;let i=!1,f=!0,s=0,u=0,l=a,d=R(o),g=0,p=[];const w=function(){const e={};function t(t,n){let r=e[t];r||(r=e[t]=new Set),r.add(n)}function n(t,n){if(n){const r=e[t];r&&(r.delete(n),0===r.size&&delete e[t])}else delete e[t]}return{on:t,off:n,once:function(e,r){t(e,(function t(...o){r(...o),n(e,t)}))},emit:function(t,...n){const r=e[t];r&&r.forEach((e=>{e(...n)}))}}}();function k(){return 0===l&&u===g}function v(e){let t=!1;e>=g?(e=g,t=!0):e<0&&(e=0),u=e;const n=d?g-u:u;p.forEach((({target:e,begin:t})=>{e.seek(n-t)})),w.emit("update",n,0===g?0:u/g),t&&(w.emit("loopComplete"),--l<0&&(l=0),0===l?(q(),w.emit("complete")):f||(X(o)&&(d=!d),E()))}function M(){if(!f){let e=Date.now();v(e-s+u),s=e}}function E(){i?u=0:(i=!0,w.emit("begin")),w.emit("loopBegin"),S()}function S(){i?f&&(f=!1,k()?(X(o)&&(d=!d),A()):(s=Date.now(),n||c.add(M),w.emit("play"))):E()}function q(){f||(f=!0,n||c.remove(M),w.emit("pause"))}function A(){q(),u=0,i=!1,l=a,d=R(o),S()}function P(e,t,n,r){if(function(e){return y(e)&&"getDuration"in e&&"seek"in e}(e)){let n=g;if(h(r=null!=t?t:">"))n=r;else{const{begin:e,end:t}=p[p.length-1]||{begin:0,end:0},o=t-e,[,a,i,f,s]=m.exec(r)||[,">","","",""];n="<"===a?e:">"===a?t:n;let c=+f;"%"===s&&(c=(a?o:g)/100*+f),n+="-="===i?-c:c}n=Math.max(0,n);const o=n+e.getDuration();p.push({target:e,position:r,begin:n,end:o}),g=Math.max(g,o)}else{(h(n)||b(n))&&(r=n,n=void 0);const o=function(e,t,n){const r=Object.assign({},L,n);return j((o=O(e)).map(((e,t)=>({target:e,index:t,total:o.length}))),x(t)?t:[t],r);var o}(e,t,n);o.forEach(((e,t)=>{P(e,0===t?r:"<")}))}return T}B.forEach((e=>{t[e]&&w.on(e,t[e])})),r&&0!==a&&E();const T={play:S,pause:q,finish:function(){k()||v(g)},restart:A,seek:v,progress:function(e){var t,n,r;v((r=1,((t=e)<(n=0)?n:t>r?r:t)*g))},tick:()=>{n&&M()},getPosition:()=>u,getDuration:()=>g,getProgress:()=>0===g?0:u/g,isReverse:()=>d,add:P,remove:function(e){const t=p.findIndex((t=>t.target===e));-1!==t&&(p.splice(t,1),function(){const e=[...p];p=[],g=0,e.forEach((e=>{P(e.target,e.position)}))}())},clear:function(){q(),g=0,p=[]},events:p,on:w.on,off:w.off,once:w.once};return T}const Q={start:0,from:0,direction:"normal",easing:"linear",grid:null,axis:null};const Z={order:100,update(e,t,n){const{animatedTarget:r,prop:o,unit:a}=e;let i=x(t)?t[0]:t;return a&&(i+=a),r.target[o]=i,n}},U={order:0,init(e,t){if(0===e.between.length){const n=k(e.to),r=k(e.from);return e.between=n.map(((t,n)=>({from:+r[n]||0,to:+t||0,round:e.round}))),t}}},V={},_=["","webkit","Moz"],H=document.documentElement,W=["translateX","translateY","translateZ","scale","scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY","perspective"],J=te(W),K=te(["columnCount","fillOpacity","fontSizeAdjust","fontWeight","lineHeight","opacity","orphans","widows","zIndex","zoom","scale","scaleX","scaleY","scaleZ","order","flexGrow","flexShrink","scrollLeft","scrollTop","strokeDashoffset","strokeDasharray"]),ee=te(["value"]);function te(e){const t={};for(let n=0,r=e.length;n<r;n++)t[e[n]]=!0;return t}function ne(e){return e.replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toLowerCase()))}function re(e,t){if(V[e])return V[e];t=t||H.style;for(let n=0,r=_.length;n<r;n++){const t=_[n];let r=t?t+String(e).replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toUpperCase())):ne(String(e));if(r in H.style)return V[e]=r}return""}function oe(e,t){return t+(Number.isNaN(+t)||K[e]?"":"px")}function ae(e,t){return window.getComputedStyle(e)[re(t)]}function ie(e,t,n){e.style[re(t)]=n}function fe(e,t){let n="";t.forEach(((e,t)=>n+=t+"("+e+") ")),ie(e,"transform",n)}const se={_default:{get:(e,t)=>ae(e,t),set(e,t,n){!function(e,t,n){e.style[re(t)]=oe(String(t),n)}(e,t,n)}}};function ce(e){return/rotate|skew/.test(e)?"deg":K[e]?"":"px"}function ue(e){const t=e.style.getPropertyValue(re("transform")),n=/(\w+)\(([^)]+)\)/g;let r;const o=[];for(;r=n.exec(t);)o.push([r[1],r[2]]);return o.sort(((e,t)=>W.indexOf(e[0])-W.indexOf(t[0]))),new Map(o)}function le(e){const t=[...e].sort(((e,t)=>W.indexOf(e[0])-W.indexOf(t[0])));e.clear(),t.forEach((([t,n])=>{e.set(t,n)}))}function de(e){var t;return(null==(t=g.exec(e))?void 0:t[3])||""}function ge(e,t,n){if(-1!==[de(String(t)),"deg","rad","turn"].indexOf(n))return t;const r=document.createElement(e.tagName);r.style.position="absolute",r.style.width=100+n;const o=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;o.appendChild(r);const a=100/r.offsetWidth;return o.removeChild(r),a*parseFloat(String(t))}function pe(e,t,n,r){switch(r){case"trans":return function(e,t,n){let r=ue(e).get(t)||(/scale/.test(t)?1:0+ce(t));return n?ge(e,r,n):r}(e,t,n);case"css":return function(e,t,n){let r=ae(e,t);return n&&b(r)?ge(e,r,n):r}(e,t,n);case"attr":return function(e,t){return e.getAttribute(t)}(e,t)}}function me(e,t){return function(e){return!!J[e]}(t)?"trans":re(t)?"css":!ee[t]&&e.hasAttribute(t)?"attr":""}["scrollTop","scrollLeft"].forEach((e=>{se[e]={get:(e,t)=>e[t],set(e,t,n){e[t]=n}}})),W.forEach((e=>{se[e]={get:(e,t)=>ue(e).get(t)||"",set(e,t,n){const r=ue(e);r.set(t,oe(t,n)),le(r),fe(e,r)}}}));const he={order:90,init(e){const{animatedTarget:t,prop:n,data:r}=e,o=t.target;if(function(e){return e instanceof HTMLElement||e instanceof SVGElement}(o)){const a=me(o,n);if(a){if(r.css=a,"trans"===a&&(t.transforms||(t.transforms={map:ue(o)})),e.withoutFrom){e.from=pe(o,n,e.unit,a);const t=g.exec(e.from);t&&(e.from=parseFloat(t[2]))}e.unit||(e.unit=ce(n))}}},update(e,t,n){const r=e.data.css;if(r){const{animatedTarget:o,prop:a,unit:i}=e,f=o.target;let s=x(t)?t[0]:t;switch("attr"!==r&&(s+=i),r){case"trans":let e=o.transforms.map;const t=e.has(a);e.set(a,s),t||le(e),fe(f,e);break;case"css":ie(f,a,s);break;case"attr":f.setAttribute(a,s)}return n}}},be={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};function ye(e){let t,n=/[0-9a-f]{2}/gi,r=[];for(;t=n.exec(e);)r.push(parseInt(t[0],16));return r}function we(e){let t,n=/[.\d]+/g,r=[];for(;t=n.exec(e);)r.push(+t[0]);return r}function xe(e){let t;if(e=String(e),/^#?[0-9a-f]{3}$/i.test(e))t=ye(e.replace(/(.)(.)(.)$/,"$1$1$2$2$3$3"));else if(/^#?([0-9a-f]{6})$/i.test(e))t=ye(RegExp.$1);else if(/^rgb/i.test(e))t=we(e);else if(/^hsl/i.test(e)){const n=we(e);n[0]/=360,n[1]/=100,n[2]/=100,t=function(e,t,n){let r,o,a;function i(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(0==t)r=o=a=n;else{let f=n<.5?n*(1+t):n+t-n*t,s=2*n-f;r=i(s,f,e+1/3),o=i(s,f,e),a=i(s,f,e-1/3)}return[Math.round(255*r),Math.round(255*o),Math.round(255*a)]}(...n).concat(n[3])}else t=be.hasOwnProperty(e=e.toLowerCase())?ye(be[e]):[0,0,0,1];return h(t[3])||(t[3]=1),t}const ke={order:80,init(e,t){if(b(e.to)&&(n=e.to,be.hasOwnProperty(String(n).toLowerCase())||/^(?:rgb|hsl|#(?:[0-9a-f]{6}|[0-9a-f]{3})$)/i.test(n))){const n=e.data,r=xe(String(e.from)),o=xe(e.to);return e.between=o.map(((e,t)=>({from:r[t],to:e,round:3===t?0:1}))),e.unit="",n.color={},t}var n},update(e,t){if(e.data.color)return"rgba("+t.join(",")+")"}};const ve={order:70,init(e){if(e.operator){let t=e.from;h(t)||(t=Number(t)||0),e.to=function(e,t,n){switch(n[0]){case"+":return e+t;case"-":return e-t;case"*":return e*t;case"/":return e/t;case"%":return e%t}return 0}(t,e.to,e.operator),e.from=t}}};function Me(e,t){return function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)}(e,t)/Math.PI*180}const Ee={order:60,init(e){const{data:t,to:n}=e;n instanceof q&&(t.svg=n,e.from=0,e.to=n.totalLength,e.unit="")},update(e,t){const n=e.data.svg;if(n){let e=function(e){return n.el.getPointAtLength(r+e)};const r=x(t)?t[0]:t,o=e(-1),a=e(0);switch(n.prop){case"x":return a.x+"px";case"y":return a.y+"px";case"angle":return Me(o,a)+"deg"}}}},Se={order:50,init(e){let t,n=e.to;if(b(n)&&(t=n.match(p))){e.data.interp=n.split(p);let r,o=e.from;b(o)&&(r=o.match(p))?o=r:x(o)||(o=[e.from]),e.from=o,e.to=t}},update(e,t){const n=e.data.interp;if(n)return t.map(((e,t)=>n[t]+e)).join("")}};I(Z),I(U),exports.colorPlugin=ke,exports.createAnimation=function(e,t,n){return G(n).add(e,t,n)},exports.createTimeline=G,exports.css=function e(t,n,r){if(y(n))for(let o in n)e(t,o,n[o]);else{if(void 0===r)return(se[n]&&se[n].get||se._default.get)(t,n);(se[n]&&se[n].set||se._default.set)(t,n,r)}},exports.cssPlugin=he,exports.easings=u,exports.geometry=function(e,t=100){return e=b(e)?document.querySelector(e):e,n=>new q(e,n,e.getTotalLength()*(t/100))},exports.getPrefixedCssProp=re,exports.interpPlugin=Se,exports.random=function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},exports.relativePlugin=ve,exports.setDashoffset=e=>{if(e instanceof SVGGeometryElement){let t=e.getTotalLength();return e.setAttribute("stroke-dasharray",String(t)),t}return 0},exports.stagger=function(e,t){let{direction:n,grid:r,axis:o,from:a,start:i,easing:f}=Object.assign({},Q,t);f=v(f);let s=x(e);const[c,u]=s?e:[0,e];let l=[],d=0;return i=i||c,(e,t,g)=>{const p="center"===a,m="first"===a?0:p?(g-1)/2:"last"===a?g-1:a;if(!l.length){for(let e=0;e<g;e++){if(r){const[t,n]=r,a=(p?(n-1)/2:m%n)-e%n,i=(p?(t-1)/2:~~(m/n))-~~(e/n);let f=Math.sqrt(a*a+i*i);f="x"===o?-a:"y"===o?-i:f,l.push(f)}else l.push(Math.abs(m-e));d=Math.max(...l)}l=l.map((n=>f(e,t,g)(n/d)*d)),"reverse"===n&&(l=l.map((e=>o?-e:Math.abs(d-e))))}let h=s?(u-c)/d:u;return h===1/0&&(h=0),i+h*(Math.round(100*l[t])/100)}},exports.svgPlugin=Ee,exports.ticker=c,exports.use=I,exports.withFrom=function(e,t){return new S(e,t)};
2
+ "use strict";var e=Object.defineProperty,t=Math.pow,n=(t,n,r)=>((t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r)(t,"symbol"!=typeof n?n+"":n,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=new Set;let o=0,a=!0;function i(){0===r.size?a||(a=!0,cancelAnimationFrame(o)):(new Set(r).forEach((e=>e())),o=requestAnimationFrame(i))}const f={add:function(e){r.add(e),a&&(a=!1,o=requestAnimationFrame(i))},remove:function(e){r.delete(e)}},s={linear:()=>e=>e},c={Sine:()=>e=>1-Math.cos(e*Math.PI/2),Expo:()=>e=>e?Math.pow(1024,e-1):0,Circ:()=>e=>1-Math.sqrt(1-e*e),Elastic:()=>e=>0===e||1===e?e:-Math.pow(2,10*e-10)*Math.sin(2*(10*e-10.75)*Math.PI/3),Back:()=>e=>{const t=1.70158;return e*e*((t+1)*e-t)},Bounce:()=>e=>{const t=7.5625,n=2.75;return 1-((e=1-e)<1/n?t*e*e:e<2/n?t*(e-=1.5/n)*e+.75:e<2.5/n?t*(e-=2.25/n)*e+.9375:t*(e-=2.625/n)*e+.984375)}};["Quad","Cubic","Quart","Quint"].forEach(((e,t)=>{c[e]=()=>e=>Math.pow(e,t+2)})),Object.keys(c).forEach((e=>{const t=c[e];s["easeIn"+e]=t,s["easeOut"+e]=(e,n)=>r=>1-t(e,n)(1-r),s["easeInOut"+e]=(e,n)=>r=>r<.5?t(e,n)(2*r)/2:1-t(e,n)(2-2*r)/2}));const l=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/,u=new RegExp("^([+\\-*/%]=|)("+l.source+")("+/%|px|rpx|em|rem|vw|vh|deg|rad|turn|ex|ch|vmin|vmax|pc|pt|in|cm|mm/.source+"|)$","i"),d=new RegExp(l.source,"g"),g=new RegExp("^([<>]|)([+-]=|)("+l.source+"|)(%|)$");function p(e){return"number"==typeof e}function m(e){return"string"==typeof e}function h(e){return null!==e&&"object"==typeof e}function b(e){return"function"==typeof e}function y(e){return Array.isArray(e)}function w(e){return Array.isArray(e)?e:[e]}function x(e){return b(e)?e:()=>(s[e]||s.linear)(0,0)}const k=Symbol();class v{}class M extends v{constructor(e,t){super(),n(this,"from"),n(this,"to"),this.from=e,this.to=t}}class E extends v{constructor(e,t,r){super(),n(this,"el"),n(this,"prop"),n(this,"totalLength"),this.el=e,this.prop=t,this.totalLength=r}}const S=[];function A(e){const n=[];return y(e)||(e=[e]),e.flat().forEach((e=>{e&&(m(e)?n.push(...Array.from(document.querySelectorAll(e))):!function(e){let n;return h(e)&&Number.isInteger(n=e.length)&&n<t(2,32)}(e)?(h(e)||b(e))&&n.push(e):n.push(...Array.from(e)))})),Array.from(new Set(n))}function O(e,t){return b(e)?e(t.target,t.index,t.total):e}function P(e,t){const{duration:n,delay:r,begin:o,easing:a,between:i}=t;return i.map((t=>function(t){const{from:i,to:f,round:s}=t;let c=e<=o+r?i:e>=o+r+n?f:i+a((e-o-r)/n)*(f-i);return s&&(c=Math.round(c*s)/s),c}(t)))}function q(e,t){return y(e=O(e,t))?e.map((e=>q(e,t)[0])):((p(e)||m(e)||e instanceof v)&&(e={value:e}),[e])}function C(e,t,n,r,o,a,i){const f=t.length;let s,c=o||0;i=(null!=i?i:r.duration)/f;const l=t.map(((t,o)=>s=function(t,o,s){var l,d,g,p,h,b,y;const w=O(null!=(l=t.duration)?l:i,e),v=O(null!=(d=t.delay)?d:0===o?r.delay:0,e),E=O(null!=(g=t.endDelay)?g:o===f-1?r.endDelay:0,e),A=O(x(null!=(p=t.easing)?p:r.easing),e),P=O(null!=(h=t.round)?h:r.round,e),q=v+w+E,C=c,T=C+q;if(c+=q,!s){let e;s=(e=a[n])?e[e.length-1]:void 0}const D=t.value;let $,j;const L=D instanceof M;L?(j=O(D.from,e),$=O(D.to,e)):$=D,!L&&s&&(j=s.to);let I=!1;void 0===j&&(j=e.target[n],I=!0);let F="",N="";if(m($)){const e=u.exec($);e&&(F=e[1],$=parseFloat(e[2])||0,N=e[3])}const z={animatedTarget:e,prop:n,duration:w,delay:v,endDelay:E,begin:C,end:T,easing:A,data:{},from:j,to:$,withoutFrom:I,round:P,unit:N,operator:F,between:[]};for(let e=0,n=S.length;e<n&&(null==(y=(b=S[e]).init)?void 0:y.call(b,z,k))!==k;e++);return z}(t,o,s))).sort(((e,t)=>e.begin-t.begin));return{endTime:c,tweens:l}}function T(e,t,n){const r={},o=O(n.duration,e)/t.length;let a=0;return t.forEach((t=>{const i=function(e,t,n,r,o,a){let i={};for(let f in t){const s=t[f];null!=s&&(i[f]=C(e,q(s,e),f,n,r,o,a))}return i}(e,t,n,a,r,o);for(let e in i)a=Math.max(a,i[e].endTime),r[e]=(r[e]||[]).concat(i[e].tweens)})),r}function D(e,t,n){return e.map((e=>{const r=T(e,t,n);return Object.keys(r).map((e=>{return{seek:function(e){var n,r;let o;for(let a,i=0;a=t[i++];){if(a.begin<=e&&a.end>=e){o=a;break}e>a.end&&(!t[i+1]||t[i+1].begin>e)&&(o=a)}if(o){let t,a=P(e,o);for(let e=S.length-1;e>=0;e--){if(t=null==(r=(n=S[e]).update)?void 0:r.call(n,o,a,k),t===k)return;void 0!==t&&(a=t)}}},getDuration:function(){return Math.max(...t.map((e=>e.end)))},tweens:t=r[e]};var t}))})).flat()}const $={duration:500,delay:0,endDelay:0,easing:"easeInOutQuad",round:0};function j(e){w(e).forEach((e=>{S.includes(e)||(S.push(e),S.sort(((e,t)=>t.order-e.order)))}))}const L="alternate-reverse",I="reverse",F="alternate";function N(e){return e===I||e===L}function z(e){return e===F||e===L}const R={externalTicker:!1,autoplay:!0,direction:"normal",loop:1},X=["begin","loopBegin","complete","loopComplete","pause","play","update"];function Y(e){const t=Object.assign({},R,e),{externalTicker:n,autoplay:r,direction:o,loop:a}=t;let i=!1,s=!0,c=0,l=0,u=a,d=N(o),b=0,w=[];const x=function(){const e={};function t(t,n){let r=e[t];r||(r=e[t]=new Set),r.add(n)}function n(t,n){if(n){const r=e[t];r&&(r.delete(n),0===r.size&&delete e[t])}else delete e[t]}return{on:t,off:n,once:function(e,r){t(e,(function t(...o){r(...o),n(e,t)}))},emit:function(t,...n){const r=e[t];r&&r.forEach((e=>{e(...n)}))}}}();function k(){return 0===u&&l===b}function v(e){let t=!1;e>=b?(e=b,t=!0):e<0&&(e=0),l=e;const n=d?b-l:l;w.forEach((({target:e,begin:t})=>{e.seek(n-t)})),x.emit("update",n,0===b?0:l/b),t&&(x.emit("loopComplete"),--u<0&&(u=0),0===u?(O(),x.emit("complete")):s||(z(o)&&(d=!d),E()))}function M(){if(!s){let e=Date.now();v(e-c+l),c=e}}function E(){i?l=0:(i=!0,x.emit("begin")),x.emit("loopBegin"),S()}function S(){i?s&&(s=!1,k()?(z(o)&&(d=!d),P()):(c=Date.now(),n||f.add(M),x.emit("play"))):E()}function O(){s||(s=!0,n||f.remove(M),x.emit("pause"))}function P(){O(),l=0,i=!1,u=a,d=N(o),S()}function q(e,t,n,r){if(function(e){return h(e)&&"getDuration"in e&&"seek"in e}(e)){let n=b;if(p(r=null!=t?t:">"))n=r;else{const{begin:e,end:t}=w[w.length-1]||{begin:0,end:0},o=t-e,[,a,i,f,s]=g.exec(r)||[,">","","",""];n="<"===a?e:">"===a?t:n;let c=+f;"%"===s&&(c=(a?o:b)/100*+f),n+="-="===i?-c:c}n=Math.max(0,n);const o=n+e.getDuration();w.push({target:e,position:r,begin:n,end:o}),b=Math.max(b,o)}else{(p(n)||m(n))&&(r=n,n=void 0);const o=function(e,t,n){const r=Object.assign({},$,n);return D((o=A(e)).map(((e,t)=>({target:e,index:t,total:o.length}))),y(t)?t:[t],r);var o}(e,t,n);o.forEach(((e,t)=>{q(e,0===t?r:"<")}))}return C}X.forEach((e=>{t[e]&&x.on(e,t[e])})),r&&0!==a&&E();const C={play:S,pause:O,finish:function(){k()||v(b)},restart:P,seek:v,progress:function(e){var t,n,r;v((r=1,((t=e)<(n=0)?n:t>r?r:t)*b))},tick:()=>{n&&M()},getPosition:()=>l,getDuration:()=>b,getProgress:()=>0===b?0:l/b,isReverse:()=>d,add:q,remove:function(e){const t=w.findIndex((t=>t.target===e));-1!==t&&(w.splice(t,1),function(){const e=[...w];w=[],b=0,e.forEach((e=>{q(e.target,e.position)}))}())},clear:function(){O(),b=0,w=[]},events:w,on:x.on,off:x.off,once:x.once};return C}const B={start:0,from:0,direction:"normal",easing:"linear",grid:null,axis:null};const G={order:100,update(e,t,n){const{animatedTarget:r,prop:o,unit:a}=e;let i=y(t)?t[0]:t;return a&&(i+=a),r.target[o]=i,n}},Q={order:0,init(e,t){if(0===e.between.length){const n=w(e.to),r=w(e.from);return e.between=n.map(((t,n)=>({from:+r[n]||0,to:+t||0,round:e.round}))),t}}},Z={},U=["","webkit","Moz"],V=document.documentElement,H=["translateX","translateY","translateZ","scale","scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY","perspective"];let W=null;let _=null;function J(e){return _||(_=ee(["columnCount","fillOpacity","fontSizeAdjust","fontWeight","lineHeight","opacity","orphans","widows","zIndex","zoom","scale","scaleX","scaleY","scaleZ","order","flexGrow","flexShrink","scrollLeft","scrollTop","strokeDashoffset","strokeDasharray"])),_[e]}let K=null;function ee(e){const t={};for(let n=0,r=e.length;n<r;n++)t[e[n]]=!0;return t}function te(e){return e.replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toLowerCase()))}function ne(e,t){if(Z[e])return Z[e];t=t||V.style;for(let n=0,r=U.length;n<r;n++){const r=U[n];let o=r?r+String(e).replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toUpperCase())):te(String(e));if(o in t)return Z[e]=o}return""}function re(e,t){return t+(Number.isNaN(+t)||J(e)?"":"px")}function oe(e,t){return window.getComputedStyle(e)[ne(t)]}function ae(e,t,n){e.style[ne(t)]=n}function ie(e,t){let n="";t.forEach(((e,t)=>n+=t+"("+e+") ")),ae(e,"transform",n)}let fe=null;function se(e){return fe||(fe={_default:{get:(e,t)=>oe(e,t),set(e,t,n){!function(e,t,n){e.style[ne(t)]=re(String(t),n)}(e,t,n)}}},["scrollTop","scrollLeft"].forEach((e=>{fe[e]={get:(e,t)=>e[t],set(e,t,n){e[t]=n}}})),H.forEach((e=>{fe[e]={get:(e,t)=>le(e).get(t)||"",set(e,t,n){const r=le(e);r.set(t,re(t,n)),ue(r),ie(e,r)}}}))),fe[e]||fe._default}function ce(e){return/rotate|skew/.test(e)?"deg":J(e)?"":"px"}function le(e){const t=e.style.getPropertyValue(ne("transform")),n=/(\w+)\(([^)]+)\)/g;let r;const o=[];for(;r=n.exec(t);)o.push([r[1],r[2]]);return o.sort(((e,t)=>H.indexOf(e[0])-H.indexOf(t[0]))),new Map(o)}function ue(e){const t=[...e].sort(((e,t)=>H.indexOf(e[0])-H.indexOf(t[0])));e.clear(),t.forEach((([t,n])=>{e.set(t,n)}))}function de(e){var t;return(null==(t=u.exec(e))?void 0:t[3])||""}function ge(e,t,n){if(-1!==[de(String(t)),"deg","rad","turn"].indexOf(n))return t;const r=document.createElement(e.tagName);r.style.position="absolute",r.style.width=100+n;const o=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;o.appendChild(r);const a=100/r.offsetWidth;return o.removeChild(r),a*parseFloat(String(t))}function pe(e,t,n,r){switch(r){case"trans":return function(e,t,n){let r=le(e).get(t)||(/scale/.test(t)?1:0+ce(t));return n?ge(e,r,n):r}(e,t,n);case"css":return function(e,t,n){let r=oe(e,t);return n&&m(r)?ge(e,r,n):r}(e,t,n);case"attr":return function(e,t){return e.getAttribute(t)}(e,t)}}function me(e,t){return function(e){return W||(W=ee(H)),!!W[e]}(t)?"trans":ne(t)?"css":(n=t,K||(K=ee(["value"])),!K[n]&&e.hasAttribute(t)?"attr":"");var n}const he={order:90,init(e){const{animatedTarget:t,prop:n,data:r}=e,o=t.target;if(function(e){return e instanceof HTMLElement||e instanceof SVGElement}(o)){const a=me(o,n);if(a){if(r.css=a,"trans"===a&&(t.transforms||(t.transforms={map:le(o)})),e.withoutFrom){e.from=pe(o,n,e.unit,a);const t=u.exec(e.from);t&&(e.from=parseFloat(t[2]))}e.unit||(e.unit=ce(n))}}},update(e,t,n){const r=e.data.css;if(r){const{animatedTarget:o,prop:a,unit:i}=e,f=o.target;let s=y(t)?t[0]:t;switch("attr"!==r&&(s+=i),r){case"trans":let e=o.transforms.map;const t=e.has(a);e.set(a,s),t||ue(e),ie(f,e);break;case"css":ae(f,a,s);break;case"attr":f.setAttribute(a,s)}return n}}},be={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};function ye(e){let t,n=/[0-9a-f]{2}/gi,r=[];for(;t=n.exec(e);)r.push(parseInt(t[0],16));return r}function we(e){let t,n=/[.\d]+/g,r=[];for(;t=n.exec(e);)r.push(+t[0]);return r}function xe(e){let t;if(e=String(e),/^#?[0-9a-f]{3}$/i.test(e))t=ye(e.replace(/(.)(.)(.)$/,"$1$1$2$2$3$3"));else if(/^#?([0-9a-f]{6})$/i.test(e))t=ye(RegExp.$1);else if(/^rgb/i.test(e))t=we(e);else if(/^hsl/i.test(e)){const n=we(e);n[0]/=360,n[1]/=100,n[2]/=100,t=function(e,t,n){let r,o,a;function i(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(0==t)r=o=a=n;else{let f=n<.5?n*(1+t):n+t-n*t,s=2*n-f;r=i(s,f,e+1/3),o=i(s,f,e),a=i(s,f,e-1/3)}return[Math.round(255*r),Math.round(255*o),Math.round(255*a)]}(...n).concat(n[3])}else t=be.hasOwnProperty(e=e.toLowerCase())?ye(be[e]):[0,0,0,1];return p(t[3])||(t[3]=1),t}const ke={order:80,init(e,t){if(m(e.to)&&(n=e.to,be.hasOwnProperty(String(n).toLowerCase())||/^(?:rgb|hsl|#(?:[0-9a-f]{6}|[0-9a-f]{3})$)/i.test(n))){const n=e.data,r=xe(String(e.from)),o=xe(e.to);return e.between=o.map(((e,t)=>({from:r[t],to:e,round:3===t?0:1}))),e.unit="",n.color={},t}var n},update(e,t){if(e.data.color)return"rgba("+t.join(",")+")"}};const ve={order:70,init(e){if(e.operator){let t=e.from;p(t)||(t=Number(t)||0),e.to=function(e,t,n){switch(n[0]){case"+":return e+t;case"-":return e-t;case"*":return e*t;case"/":return e/t;case"%":return e%t}return 0}(t,e.to,e.operator),e.from=t}}};function Me(e,t){return function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)}(e,t)/Math.PI*180}const Ee={order:60,init(e){const{data:t,to:n}=e;n instanceof E&&(t.svg=n,e.from=0,e.to=n.totalLength,e.unit="")},update(e,t){const n=e.data.svg;if(n){let e=function(e){return n.el.getPointAtLength(r+e)};const r=y(t)?t[0]:t,o=e(-1),a=e(0);switch(n.prop){case"x":return a.x+"px";case"y":return a.y+"px";case"angle":return Me(o,a)+"deg"}}}},Se={order:50,init(e){let t,n=e.to;if(m(n)&&(t=n.match(d))){e.data.interp=n.split(d);let r,o=e.from;m(o)&&(r=o.match(d))?o=r:y(o)||(o=[e.from]),e.from=o,e.to=t}},update(e,t){const n=e.data.interp;if(n)return t.map(((e,t)=>n[t]+e)).join("")}};j(G),j(Q),exports.colorPlugin=ke,exports.createAnimation=function(e,t,n){return Y(n).add(e,t,n)},exports.createTimeline=Y,exports.css=function e(t,n,r){if(h(n))for(let o in n)e(t,o,n[o]);else{if(void 0===r)return se(n).get(t,n);se(n).set(t,n,r)}},exports.cssPlugin=he,exports.easings=s,exports.geometry=function(e,t=100){return e=m(e)?document.querySelector(e):e,n=>new E(e,n,e.getTotalLength()*(t/100))},exports.getPrefixedCssProp=ne,exports.interpPlugin=Se,exports.random=function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},exports.relativePlugin=ve,exports.setDashoffset=e=>{if(e instanceof SVGGeometryElement){let t=e.getTotalLength();return e.setAttribute("stroke-dasharray",String(t)),t}return 0},exports.stagger=function(e,t){let{direction:n,grid:r,axis:o,from:a,start:i,easing:f}=Object.assign({},B,t);f=x(f);let s=y(e);const[c,l]=s?e:[0,e];let u=[],d=0;return i=i||c,(e,t,g)=>{const p="center"===a,m="first"===a?0:p?(g-1)/2:"last"===a?g-1:a;if(!u.length){for(let e=0;e<g;e++){if(r){const[t,n]=r,a=(p?(n-1)/2:m%n)-e%n,i=(p?(t-1)/2:~~(m/n))-~~(e/n);let f=Math.sqrt(a*a+i*i);f="x"===o?-a:"y"===o?-i:f,u.push(f)}else u.push(Math.abs(m-e));d=Math.max(...u)}u=u.map((n=>f(e,t,g)(n/d)*d)),"reverse"===n&&(u=u.map((e=>o?-e:Math.abs(d-e))))}let h=s?(l-c)/d:l;return h===1/0&&(h=0),i+h*(Math.round(100*u[t])/100)}},exports.svgPlugin=Ee,exports.ticker=f,exports.use=j,exports.withFrom=function(e,t){return new M(e,t)};
@@ -3,43 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __pow = Math.pow;
4
4
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5
5
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
6
- function getAnimationFrameController() {
7
- if (typeof requestAnimationFrame === "function") {
8
- return {
9
- request: requestAnimationFrame,
10
- cancel: cancelAnimationFrame
11
- };
12
- }
13
- const fps = 60;
14
- const callbacks = [];
15
- let id2 = 1;
16
- let cursor = 0;
17
- let timer;
18
- function playAll() {
19
- timer = void 0;
20
- const cloned = callbacks.slice();
21
- cursor += callbacks.length;
22
- callbacks.length = 0;
23
- cloned.forEach((callback) => {
24
- if (callback !== 0) {
25
- callback(Date.now());
26
- }
27
- });
28
- }
29
- return {
30
- request(handler) {
31
- callbacks.push(handler);
32
- if (!timer) {
33
- timer = setTimeout(playAll, 1e3 / fps);
34
- }
35
- return id2++;
36
- },
37
- cancel(id22) {
38
- callbacks[id22 - cursor] = 0;
39
- }
40
- };
41
- }
42
- const { request, cancel } = getAnimationFrameController();
43
6
  const ticks = /* @__PURE__ */ new Set();
44
7
  let id = 0;
45
8
  let paused = true;
@@ -55,19 +18,19 @@ function step() {
55
18
  stop();
56
19
  } else {
57
20
  new Set(ticks).forEach((tick) => tick());
58
- id = request(step);
21
+ id = requestAnimationFrame(step);
59
22
  }
60
23
  }
61
24
  function run() {
62
25
  if (paused) {
63
26
  paused = false;
64
- id = request(step);
27
+ id = requestAnimationFrame(step);
65
28
  }
66
29
  }
67
30
  function stop() {
68
31
  if (!paused) {
69
32
  paused = true;
70
- cancel(id);
33
+ cancelAnimationFrame(id);
71
34
  }
72
35
  }
73
36
  const ticker = {
@@ -267,18 +230,18 @@ function normalizeTweens(animatedTarget, objectValues, prop, options, beginTime,
267
230
  let endTime = beginTime || 0;
268
231
  let prevTween;
269
232
  averageDuration = (averageDuration != null ? averageDuration : options.duration) / l;
270
- function normalizeTween(objectValue, index2, prevTween2) {
233
+ function normalizeTween(objectValue, index, prevTween2) {
271
234
  var _a, _b, _c, _d, _e, _f, _g;
272
235
  const duration = getFuncValue(
273
236
  (_a = objectValue.duration) != null ? _a : averageDuration,
274
237
  animatedTarget
275
238
  );
276
239
  const delay = getFuncValue(
277
- (_b = objectValue.delay) != null ? _b : index2 === 0 ? options.delay : 0,
240
+ (_b = objectValue.delay) != null ? _b : index === 0 ? options.delay : 0,
278
241
  animatedTarget
279
242
  );
280
243
  const endDelay = getFuncValue(
281
- (_c = objectValue.endDelay) != null ? _c : index2 === l - 1 ? options.endDelay : 0,
244
+ (_c = objectValue.endDelay) != null ? _c : index === l - 1 ? options.endDelay : 0,
282
245
  animatedTarget
283
246
  );
284
247
  const easing = getFuncValue(
@@ -352,7 +315,7 @@ function normalizeTweens(animatedTarget, objectValues, prop, options, beginTime,
352
315
  return tween;
353
316
  }
354
317
  const tweens = objectValues.map(
355
- (objectValue, index2) => prevTween = normalizeTween(objectValue, index2, prevTween)
318
+ (objectValue, index) => prevTween = normalizeTween(objectValue, index, prevTween)
356
319
  ).sort((a, b) => a.begin - b.begin);
357
320
  return {
358
321
  endTime,
@@ -657,16 +620,16 @@ function createTimeline(options) {
657
620
  positionOrKeyframes,
658
621
  optionsOrPosition
659
622
  );
660
- animations.forEach((animation, index2) => {
661
- add2(animation, index2 === 0 ? position2 : "<");
623
+ animations.forEach((animation, index) => {
624
+ add2(animation, index === 0 ? position2 : "<");
662
625
  });
663
626
  }
664
627
  return timeline;
665
628
  }
666
629
  function remove2(target) {
667
- const index2 = events.findIndex((e) => e.target === target);
668
- if (index2 !== -1) {
669
- events.splice(index2, 1);
630
+ const index = events.findIndex((e) => e.target === target);
631
+ if (index !== -1) {
632
+ events.splice(index, 1);
670
633
  update();
671
634
  }
672
635
  }
@@ -740,7 +703,7 @@ function stagger(value, options) {
740
703
  let values = [];
741
704
  let maxValue = 0;
742
705
  start = start || min;
743
- return (el, index2, total) => {
706
+ return (el, index, total) => {
744
707
  const fromCenter = from === "center";
745
708
  const fromIndex = from === "first" ? 0 : fromCenter ? (total - 1) / 2 : from === "last" ? total - 1 : from;
746
709
  if (!values.length) {
@@ -762,7 +725,7 @@ function stagger(value, options) {
762
725
  maxValue = Math.max(...values);
763
726
  }
764
727
  values = values.map(
765
- (val) => easing(el, index2, total)(val / maxValue) * maxValue
728
+ (val) => easing(el, index, total)(val / maxValue) * maxValue
766
729
  );
767
730
  if (direction === "reverse") {
768
731
  values = values.map((val) => axis ? -val : Math.abs(maxValue - val));
@@ -772,7 +735,7 @@ function stagger(value, options) {
772
735
  if (spacing === Infinity) {
773
736
  spacing = 0;
774
737
  }
775
- return start + spacing * (Math.round(values[index2] * 100) / 100);
738
+ return start + spacing * (Math.round(values[index] * 100) / 100);
776
739
  };
777
740
  }
778
741
  function definePlugin(plugin) {
@@ -825,31 +788,49 @@ const transformValues = [
825
788
  "skewY",
826
789
  "perspective"
827
790
  ];
828
- const transformValuesMap = arrayToObject(transformValues);
829
- const optionalUnitProperties = arrayToObject([
830
- "columnCount",
831
- "fillOpacity",
832
- "fontSizeAdjust",
833
- "fontWeight",
834
- "lineHeight",
835
- "opacity",
836
- "orphans",
837
- "widows",
838
- "zIndex",
839
- "zoom",
840
- "scale",
841
- "scaleX",
842
- "scaleY",
843
- "scaleZ",
844
- "order",
845
- "flexGrow",
846
- "flexShrink",
847
- "scrollLeft",
848
- "scrollTop",
849
- "strokeDashoffset",
850
- "strokeDasharray"
851
- ]);
852
- const domDotAttributes = arrayToObject(["value"]);
791
+ let transformValuesMap = null;
792
+ function isTransform(prop) {
793
+ if (!transformValuesMap) {
794
+ transformValuesMap = arrayToObject(transformValues);
795
+ }
796
+ return !!transformValuesMap[prop];
797
+ }
798
+ let optionalUnitProperties = null;
799
+ function isOptionalUnitProperty(prop) {
800
+ if (!optionalUnitProperties) {
801
+ optionalUnitProperties = arrayToObject([
802
+ "columnCount",
803
+ "fillOpacity",
804
+ "fontSizeAdjust",
805
+ "fontWeight",
806
+ "lineHeight",
807
+ "opacity",
808
+ "orphans",
809
+ "widows",
810
+ "zIndex",
811
+ "zoom",
812
+ "scale",
813
+ "scaleX",
814
+ "scaleY",
815
+ "scaleZ",
816
+ "order",
817
+ "flexGrow",
818
+ "flexShrink",
819
+ "scrollLeft",
820
+ "scrollTop",
821
+ "strokeDashoffset",
822
+ "strokeDasharray"
823
+ ]);
824
+ }
825
+ return optionalUnitProperties[prop];
826
+ }
827
+ let domDotAttributes = null;
828
+ function isDomDotAttribute(attr) {
829
+ if (!domDotAttributes) {
830
+ domDotAttributes = arrayToObject(["value"]);
831
+ }
832
+ return domDotAttributes[attr];
833
+ }
853
834
  function arrayToObject(array) {
854
835
  const map = {};
855
836
  for (let i = 0, l = array.length; i < l; i++) {
@@ -874,14 +855,14 @@ function getPrefixedCssProp(name, host) {
874
855
  for (let i = 0, l = prefixes.length; i < l; i++) {
875
856
  const prefix = prefixes[i];
876
857
  let fitName = prefix ? prefix + pascalCase(String(name)) : camalCase(String(name));
877
- if (fitName in html.style) {
858
+ if (fitName in host) {
878
859
  return cssProps[name] = fitName;
879
860
  }
880
861
  }
881
862
  return "";
882
863
  }
883
864
  function combinedWithUnit(prop, value) {
884
- return value + (!Number.isNaN(+value) && !optionalUnitProperties[prop] ? "px" : "");
865
+ return value + (!Number.isNaN(+value) && !isOptionalUnitProperty(prop) ? "px" : "");
885
866
  }
886
867
  function getStyle(elem, prop) {
887
868
  return window.getComputedStyle(elem)[getPrefixedCssProp(prop)];
@@ -900,39 +881,45 @@ function setStyleFromTransformMap(elem, map) {
900
881
  map.forEach((val, key) => value += key + "(" + val + ") ");
901
882
  setStyleIgnoreUnit(elem, "transform", value);
902
883
  }
903
- const cssHooks = {
904
- _default: {
905
- get(elem, prop) {
906
- return getStyle(elem, prop);
907
- },
908
- set(elem, prop, value) {
909
- setStyle(elem, prop, value);
910
- }
884
+ let cssHooks = null;
885
+ function getCssHook(prop) {
886
+ if (!cssHooks) {
887
+ cssHooks = {
888
+ _default: {
889
+ get(elem, prop2) {
890
+ return getStyle(elem, prop2);
891
+ },
892
+ set(elem, prop2, value) {
893
+ setStyle(elem, prop2, value);
894
+ }
895
+ }
896
+ };
897
+ ["scrollTop", "scrollLeft"].forEach((item) => {
898
+ cssHooks[item] = {
899
+ get(elem, prop2) {
900
+ return elem[prop2];
901
+ },
902
+ set(elem, prop2, value) {
903
+ elem[prop2] = value;
904
+ }
905
+ };
906
+ });
907
+ transformValues.forEach((item) => {
908
+ cssHooks[item] = {
909
+ get(elem, prop2) {
910
+ return getTransformValuesMap(elem).get(prop2) || "";
911
+ },
912
+ set(elem, prop2, value) {
913
+ const transformValuesMap2 = getTransformValuesMap(elem);
914
+ transformValuesMap2.set(prop2, combinedWithUnit(prop2, value));
915
+ sortTransformValues(transformValuesMap2);
916
+ setStyleFromTransformMap(elem, transformValuesMap2);
917
+ }
918
+ };
919
+ });
911
920
  }
912
- };
913
- ["scrollTop", "scrollLeft"].forEach((item) => {
914
- cssHooks[item] = {
915
- get(elem, prop) {
916
- return elem[prop];
917
- },
918
- set(elem, prop, value) {
919
- elem[prop] = value;
920
- }
921
- };
922
- });
923
- transformValues.forEach((item) => {
924
- cssHooks[item] = {
925
- get(elem, prop) {
926
- return getTransformValuesMap(elem).get(prop) || "";
927
- },
928
- set(elem, prop, value) {
929
- const transformValuesMap2 = getTransformValuesMap(elem);
930
- transformValuesMap2.set(prop, combinedWithUnit(prop, value));
931
- sortTransformValues(transformValuesMap2);
932
- setStyleFromTransformMap(elem, transformValuesMap2);
933
- }
934
- };
935
- });
921
+ return cssHooks[prop] || cssHooks._default;
922
+ }
936
923
  function css(elem, prop, value) {
937
924
  if (isObject(prop)) {
938
925
  for (let i in prop) {
@@ -943,20 +930,13 @@ function css(elem, prop, value) {
943
930
  );
944
931
  }
945
932
  } else if (value === void 0) {
946
- return (cssHooks[prop] && cssHooks[prop].get || cssHooks._default.get)(
947
- elem,
948
- prop
949
- );
933
+ return getCssHook(prop).get(elem, prop);
950
934
  } else {
951
- (cssHooks[prop] && cssHooks[prop].set || cssHooks._default.set)(
952
- elem,
953
- prop,
954
- value
955
- );
935
+ getCssHook(prop).set(elem, prop, value);
956
936
  }
957
937
  }
958
938
  function getDefaultUnit(prop) {
959
- return /rotate|skew/.test(prop) ? "deg" : optionalUnitProperties[prop] ? "" : "px";
939
+ return /rotate|skew/.test(prop) ? "deg" : isOptionalUnitProperty(prop) ? "" : "px";
960
940
  }
961
941
  function getTransformValuesMap(target) {
962
942
  const value = target.style.getPropertyValue(getPrefixedCssProp("transform"));
@@ -1020,10 +1000,7 @@ function getOriginalValue(target, prop, unit, propType) {
1020
1000
  }
1021
1001
  }
1022
1002
  function getPropType(target, prop) {
1023
- return isTransform(prop) ? "trans" : getPrefixedCssProp(prop) ? "css" : !domDotAttributes[prop] && target.hasAttribute(prop) ? "attr" : "";
1024
- }
1025
- function isTransform(prop) {
1026
- return !!transformValuesMap[prop];
1003
+ return isTransform(prop) ? "trans" : getPrefixedCssProp(prop) ? "css" : !isDomDotAttribute(prop) && target.hasAttribute(prop) ? "attr" : "";
1027
1004
  }
1028
1005
  const cssPlugin = definePlugin({
1029
1006
  order: 90,
@@ -1432,7 +1409,7 @@ function createAnimation(target, keyframes, options) {
1432
1409
  return createTimeline(options).add(target, keyframes, options);
1433
1410
  }
1434
1411
  use([cssPlugin, colorPlugin, relativePlugin, svgPlugin, interpPlugin]);
1435
- const index = Object.assign(
1412
+ const index_full = Object.assign(
1436
1413
  (...args) => {
1437
1414
  return createAnimation(...args);
1438
1415
  },
@@ -1453,5 +1430,5 @@ const index = Object.assign(
1453
1430
  }
1454
1431
  );
1455
1432
  export {
1456
- index as default
1433
+ index_full as default
1457
1434
  };
@@ -1,2 +1,2 @@
1
1
  /* lwa 0.2.3 | MIT license | https://github.com/sutras/lwa */
2
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).lwa=t()}(this,(function(){"use strict";var e=Object.defineProperty,t=Math.pow,n=(t,n,r)=>((t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r)(t,"symbol"!=typeof n?n+"":n,r);const{request:r,cancel:o}=function(){if("function"==typeof requestAnimationFrame)return{request:requestAnimationFrame,cancel:cancelAnimationFrame};const e=[];let t,n=1,r=0;function o(){t=void 0;const n=e.slice();r+=e.length,e.length=0,n.forEach((e=>{0!==e&&e(Date.now())}))}return{request:r=>(e.push(r),t||(t=setTimeout(o,1e3/60)),n++),cancel(t){e[t-r]=0}}}(),a=new Set;let i=0,f=!0;function s(){0===a.size?f||(f=!0,o(i)):(new Set(a).forEach((e=>e())),i=r(s))}const c={add:function(e){a.add(e),f&&(f=!1,i=r(s))},remove:function(e){a.delete(e)}},u={linear:()=>e=>e},l={Sine:()=>e=>1-Math.cos(e*Math.PI/2),Expo:()=>e=>e?Math.pow(1024,e-1):0,Circ:()=>e=>1-Math.sqrt(1-e*e),Elastic:()=>e=>0===e||1===e?e:-Math.pow(2,10*e-10)*Math.sin(2*(10*e-10.75)*Math.PI/3),Back:()=>e=>{const t=1.70158;return e*e*((t+1)*e-t)},Bounce:()=>e=>{const t=7.5625,n=2.75;return 1-((e=1-e)<1/n?t*e*e:e<2/n?t*(e-=1.5/n)*e+.75:e<2.5/n?t*(e-=2.25/n)*e+.9375:t*(e-=2.625/n)*e+.984375)}};["Quad","Cubic","Quart","Quint"].forEach(((e,t)=>{l[e]=()=>e=>Math.pow(e,t+2)})),Object.keys(l).forEach((e=>{const t=l[e];u["easeIn"+e]=t,u["easeOut"+e]=(e,n)=>r=>1-t(e,n)(1-r),u["easeInOut"+e]=(e,n)=>r=>r<.5?t(e,n)(2*r)/2:1-t(e,n)(2-2*r)/2}));const d=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/,g=new RegExp("^([+\\-*/%]=|)("+d.source+")("+/%|px|rpx|em|rem|vw|vh|deg|rad|turn|ex|ch|vmin|vmax|pc|pt|in|cm|mm/.source+"|)$","i"),p=new RegExp(d.source,"g"),m=new RegExp("^([<>]|)([+-]=|)("+d.source+"|)(%|)$");function h(e){return"number"==typeof e}function b(e){return"string"==typeof e}function y(e){return null!==e&&"object"==typeof e}function w(e){return"function"==typeof e}function k(e){return Array.isArray(e)}function v(e){return Array.isArray(e)?e:[e]}function x(e){return w(e)?e:()=>(u[e]||u.linear)(0,0)}const M=Symbol();class E{}class S extends E{constructor(e,t){super(),n(this,"from"),n(this,"to"),this.from=e,this.to=t}}class q extends E{constructor(e,t,r){super(),n(this,"el"),n(this,"prop"),n(this,"totalLength"),this.el=e,this.prop=t,this.totalLength=r}}const A=[];function O(e){const n=[];return k(e)||(e=[e]),e.flat().forEach((e=>{e&&(b(e)?n.push(...Array.from(document.querySelectorAll(e))):!function(e){let n;return y(e)&&Number.isInteger(n=e.length)&&n<t(2,32)}(e)?(y(e)||w(e))&&n.push(e):n.push(...Array.from(e)))})),Array.from(new Set(n))}function T(e,t){return w(e)?e(t.target,t.index,t.total):e}function C(e,t){const{duration:n,delay:r,begin:o,easing:a,between:i}=t;return i.map((t=>function(t){const{from:i,to:f,round:s}=t;let c=e<=o+r?i:e>=o+r+n?f:i+a((e-o-r)/n)*(f-i);return s&&(c=Math.round(c*s)/s),c}(t)))}function D(e,t){return k(e=T(e,t))?e.map((e=>D(e,t)[0])):((h(e)||b(e)||e instanceof E)&&(e={value:e}),[e])}function j(e,t,n,r,o,a,i){const f=t.length;let s,c=o||0;i=(null!=i?i:r.duration)/f;const u=t.map(((t,o)=>s=function(t,o,s){var u,l,d,p,m,h,y;const w=T(null!=(u=t.duration)?u:i,e),k=T(null!=(l=t.delay)?l:0===o?r.delay:0,e),v=T(null!=(d=t.endDelay)?d:o===f-1?r.endDelay:0,e),E=T(x(null!=(p=t.easing)?p:r.easing),e),q=T(null!=(m=t.round)?m:r.round,e),O=k+w+v,C=c,D=C+O;if(c+=O,!s){let e;s=(e=a[n])?e[e.length-1]:void 0}const j=t.value;let $,L;const P=j instanceof S;P?(L=T(j.from,e),$=T(j.to,e)):$=j,!P&&s&&(L=s.to);let I=!1;void 0===L&&(L=e.target[n],I=!0);let F="",N="";if(b($)){const e=g.exec($);e&&(F=e[1],$=parseFloat(e[2])||0,N=e[3])}const z={animatedTarget:e,prop:n,duration:w,delay:k,endDelay:v,begin:C,end:D,easing:E,data:{},from:L,to:$,withoutFrom:I,round:q,unit:N,operator:F,between:[]};for(let e=0,n=A.length;e<n&&(null==(y=(h=A[e]).init)?void 0:y.call(h,z,M))!==M;e++);return z}(t,o,s))).sort(((e,t)=>e.begin-t.begin));return{endTime:c,tweens:u}}function $(e,t,n){const r={},o=T(n.duration,e)/t.length;let a=0;return t.forEach((t=>{const i=function(e,t,n,r,o,a){let i={};for(let f in t){const s=t[f];null!=s&&(i[f]=j(e,D(s,e),f,n,r,o,a))}return i}(e,t,n,a,r,o);for(let e in i)a=Math.max(a,i[e].endTime),r[e]=(r[e]||[]).concat(i[e].tweens)})),r}function L(e,t,n){return e.map((e=>{const r=$(e,t,n);return Object.keys(r).map((e=>{return{seek:function(e){var n,r;let o;for(let a,i=0;a=t[i++];){if(a.begin<=e&&a.end>=e){o=a;break}e>a.end&&(!t[i+1]||t[i+1].begin>e)&&(o=a)}if(o){let t,a=C(e,o);for(let e=A.length-1;e>=0;e--){if(t=null==(r=(n=A[e]).update)?void 0:r.call(n,o,a,M),t===M)return;void 0!==t&&(a=t)}}},getDuration:function(){return Math.max(...t.map((e=>e.end)))},tweens:t=r[e]};var t}))})).flat()}const P={duration:500,delay:0,endDelay:0,easing:"easeInOutQuad",round:0};function I(e){v(e).forEach((e=>{A.includes(e)||(A.push(e),A.sort(((e,t)=>t.order-e.order)))}))}const F="alternate-reverse",N="reverse",z="alternate";function R(e){return e===N||e===F}function X(e){return e===z||e===F}const Y={externalTicker:!1,autoplay:!0,direction:"normal",loop:1},B=["begin","loopBegin","complete","loopComplete","pause","play","update"];function G(e){const t=Object.assign({},Y,e),{externalTicker:n,autoplay:r,direction:o,loop:a}=t;let i=!1,f=!0,s=0,u=0,l=a,d=R(o),g=0,p=[];const w=function(){const e={};function t(t,n){let r=e[t];r||(r=e[t]=new Set),r.add(n)}function n(t,n){if(n){const r=e[t];r&&(r.delete(n),0===r.size&&delete e[t])}else delete e[t]}return{on:t,off:n,once:function(e,r){t(e,(function t(...o){r(...o),n(e,t)}))},emit:function(t,...n){const r=e[t];r&&r.forEach((e=>{e(...n)}))}}}();function v(){return 0===l&&u===g}function x(e){let t=!1;e>=g?(e=g,t=!0):e<0&&(e=0),u=e;const n=d?g-u:u;p.forEach((({target:e,begin:t})=>{e.seek(n-t)})),w.emit("update",n,0===g?0:u/g),t&&(w.emit("loopComplete"),--l<0&&(l=0),0===l?(q(),w.emit("complete")):f||(X(o)&&(d=!d),E()))}function M(){if(!f){let e=Date.now();x(e-s+u),s=e}}function E(){i?u=0:(i=!0,w.emit("begin")),w.emit("loopBegin"),S()}function S(){i?f&&(f=!1,v()?(X(o)&&(d=!d),A()):(s=Date.now(),n||c.add(M),w.emit("play"))):E()}function q(){f||(f=!0,n||c.remove(M),w.emit("pause"))}function A(){q(),u=0,i=!1,l=a,d=R(o),S()}function T(e,t,n,r){if(function(e){return y(e)&&"getDuration"in e&&"seek"in e}(e)){let n=g;if(h(r=null!=t?t:">"))n=r;else{const{begin:e,end:t}=p[p.length-1]||{begin:0,end:0},o=t-e,[,a,i,f,s]=m.exec(r)||[,">","","",""];n="<"===a?e:">"===a?t:n;let c=+f;"%"===s&&(c=(a?o:g)/100*+f),n+="-="===i?-c:c}n=Math.max(0,n);const o=n+e.getDuration();p.push({target:e,position:r,begin:n,end:o}),g=Math.max(g,o)}else{(h(n)||b(n))&&(r=n,n=void 0);const o=function(e,t,n){const r=Object.assign({},P,n);return L((o=O(e)).map(((e,t)=>({target:e,index:t,total:o.length}))),k(t)?t:[t],r);var o}(e,t,n);o.forEach(((e,t)=>{T(e,0===t?r:"<")}))}return C}B.forEach((e=>{t[e]&&w.on(e,t[e])})),r&&0!==a&&E();const C={play:S,pause:q,finish:function(){v()||x(g)},restart:A,seek:x,progress:function(e){var t,n,r;x((r=1,((t=e)<(n=0)?n:t>r?r:t)*g))},tick:()=>{n&&M()},getPosition:()=>u,getDuration:()=>g,getProgress:()=>0===g?0:u/g,isReverse:()=>d,add:T,remove:function(e){const t=p.findIndex((t=>t.target===e));-1!==t&&(p.splice(t,1),function(){const e=[...p];p=[],g=0,e.forEach((e=>{T(e.target,e.position)}))}())},clear:function(){q(),g=0,p=[]},events:p,on:w.on,off:w.off,once:w.once};return C}const Q={start:0,from:0,direction:"normal",easing:"linear",grid:null,axis:null};const Z={order:100,update(e,t,n){const{animatedTarget:r,prop:o,unit:a}=e;let i=k(t)?t[0]:t;return a&&(i+=a),r.target[o]=i,n}},U={order:0,init(e,t){if(0===e.between.length){const n=v(e.to),r=v(e.from);return e.between=n.map(((t,n)=>({from:+r[n]||0,to:+t||0,round:e.round}))),t}}},V={},_=["","webkit","Moz"],H=document.documentElement,W=["translateX","translateY","translateZ","scale","scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY","perspective"],J=te(W),K=te(["columnCount","fillOpacity","fontSizeAdjust","fontWeight","lineHeight","opacity","orphans","widows","zIndex","zoom","scale","scaleX","scaleY","scaleZ","order","flexGrow","flexShrink","scrollLeft","scrollTop","strokeDashoffset","strokeDasharray"]),ee=te(["value"]);function te(e){const t={};for(let n=0,r=e.length;n<r;n++)t[e[n]]=!0;return t}function ne(e){return e.replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toLowerCase()))}function re(e,t){if(V[e])return V[e];t=t||H.style;for(let n=0,r=_.length;n<r;n++){const t=_[n];let r=t?t+String(e).replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toUpperCase())):ne(String(e));if(r in H.style)return V[e]=r}return""}function oe(e,t){return t+(Number.isNaN(+t)||K[e]?"":"px")}function ae(e,t){return window.getComputedStyle(e)[re(t)]}function ie(e,t,n){e.style[re(t)]=n}function fe(e,t){let n="";t.forEach(((e,t)=>n+=t+"("+e+") ")),ie(e,"transform",n)}const se={_default:{get:(e,t)=>ae(e,t),set(e,t,n){!function(e,t,n){e.style[re(t)]=oe(String(t),n)}(e,t,n)}}};function ce(e){return/rotate|skew/.test(e)?"deg":K[e]?"":"px"}function ue(e){const t=e.style.getPropertyValue(re("transform")),n=/(\w+)\(([^)]+)\)/g;let r;const o=[];for(;r=n.exec(t);)o.push([r[1],r[2]]);return o.sort(((e,t)=>W.indexOf(e[0])-W.indexOf(t[0]))),new Map(o)}function le(e){const t=[...e].sort(((e,t)=>W.indexOf(e[0])-W.indexOf(t[0])));e.clear(),t.forEach((([t,n])=>{e.set(t,n)}))}function de(e){var t;return(null==(t=g.exec(e))?void 0:t[3])||""}function ge(e,t,n){if(-1!==[de(String(t)),"deg","rad","turn"].indexOf(n))return t;const r=document.createElement(e.tagName);r.style.position="absolute",r.style.width=100+n;const o=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;o.appendChild(r);const a=100/r.offsetWidth;return o.removeChild(r),a*parseFloat(String(t))}function pe(e,t,n,r){switch(r){case"trans":return function(e,t,n){let r=ue(e).get(t)||(/scale/.test(t)?1:0+ce(t));return n?ge(e,r,n):r}(e,t,n);case"css":return function(e,t,n){let r=ae(e,t);return n&&b(r)?ge(e,r,n):r}(e,t,n);case"attr":return function(e,t){return e.getAttribute(t)}(e,t)}}function me(e,t){return function(e){return!!J[e]}(t)?"trans":re(t)?"css":!ee[t]&&e.hasAttribute(t)?"attr":""}["scrollTop","scrollLeft"].forEach((e=>{se[e]={get:(e,t)=>e[t],set(e,t,n){e[t]=n}}})),W.forEach((e=>{se[e]={get:(e,t)=>ue(e).get(t)||"",set(e,t,n){const r=ue(e);r.set(t,oe(t,n)),le(r),fe(e,r)}}}));const he={order:90,init(e){const{animatedTarget:t,prop:n,data:r}=e,o=t.target;if(function(e){return e instanceof HTMLElement||e instanceof SVGElement}(o)){const a=me(o,n);if(a){if(r.css=a,"trans"===a&&(t.transforms||(t.transforms={map:ue(o)})),e.withoutFrom){e.from=pe(o,n,e.unit,a);const t=g.exec(e.from);t&&(e.from=parseFloat(t[2]))}e.unit||(e.unit=ce(n))}}},update(e,t,n){const r=e.data.css;if(r){const{animatedTarget:o,prop:a,unit:i}=e,f=o.target;let s=k(t)?t[0]:t;switch("attr"!==r&&(s+=i),r){case"trans":let e=o.transforms.map;const t=e.has(a);e.set(a,s),t||le(e),fe(f,e);break;case"css":ie(f,a,s);break;case"attr":f.setAttribute(a,s)}return n}}},be={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};function ye(e){let t,n=/[0-9a-f]{2}/gi,r=[];for(;t=n.exec(e);)r.push(parseInt(t[0],16));return r}function we(e){let t,n=/[.\d]+/g,r=[];for(;t=n.exec(e);)r.push(+t[0]);return r}function ke(e){let t;if(e=String(e),/^#?[0-9a-f]{3}$/i.test(e))t=ye(e.replace(/(.)(.)(.)$/,"$1$1$2$2$3$3"));else if(/^#?([0-9a-f]{6})$/i.test(e))t=ye(RegExp.$1);else if(/^rgb/i.test(e))t=we(e);else if(/^hsl/i.test(e)){const n=we(e);n[0]/=360,n[1]/=100,n[2]/=100,t=function(e,t,n){let r,o,a;function i(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(0==t)r=o=a=n;else{let f=n<.5?n*(1+t):n+t-n*t,s=2*n-f;r=i(s,f,e+1/3),o=i(s,f,e),a=i(s,f,e-1/3)}return[Math.round(255*r),Math.round(255*o),Math.round(255*a)]}(...n).concat(n[3])}else t=be.hasOwnProperty(e=e.toLowerCase())?ye(be[e]):[0,0,0,1];return h(t[3])||(t[3]=1),t}const ve={order:80,init(e,t){if(b(e.to)&&(n=e.to,be.hasOwnProperty(String(n).toLowerCase())||/^(?:rgb|hsl|#(?:[0-9a-f]{6}|[0-9a-f]{3})$)/i.test(n))){const n=e.data,r=ke(String(e.from)),o=ke(e.to);return e.between=o.map(((e,t)=>({from:r[t],to:e,round:3===t?0:1}))),e.unit="",n.color={},t}var n},update(e,t){if(e.data.color)return"rgba("+t.join(",")+")"}};const xe={order:70,init(e){if(e.operator){let t=e.from;h(t)||(t=Number(t)||0),e.to=function(e,t,n){switch(n[0]){case"+":return e+t;case"-":return e-t;case"*":return e*t;case"/":return e/t;case"%":return e%t}return 0}(t,e.to,e.operator),e.from=t}}};function Me(e,t){return function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)}(e,t)/Math.PI*180}const Ee={order:60,init(e){const{data:t,to:n}=e;n instanceof q&&(t.svg=n,e.from=0,e.to=n.totalLength,e.unit="")},update(e,t){const n=e.data.svg;if(n){let e=function(e){return n.el.getPointAtLength(r+e)};const r=k(t)?t[0]:t,o=e(-1),a=e(0);switch(n.prop){case"x":return a.x+"px";case"y":return a.y+"px";case"angle":return Me(o,a)+"deg"}}}},Se={order:50,init(e){let t,n=e.to;if(b(n)&&(t=n.match(p))){e.data.interp=n.split(p);let r,o=e.from;b(o)&&(r=o.match(p))?o=r:k(o)||(o=[e.from]),e.from=o,e.to=t}},update(e,t){const n=e.data.interp;if(n)return t.map(((e,t)=>n[t]+e)).join("")}};function qe(e,t,n){return G(n).add(e,t,n)}I(Z),I(U),I([he,ve,xe,Ee,Se]);const Ae=Object.assign(((...e)=>qe(...e)),{createAnimation:qe,createTimeline:G,ticker:c,stagger:function(e,t){let{direction:n,grid:r,axis:o,from:a,start:i,easing:f}=Object.assign({},Q,t);f=x(f);let s=k(e);const[c,u]=s?e:[0,e];let l=[],d=0;return i=i||c,(e,t,g)=>{const p="center"===a,m="first"===a?0:p?(g-1)/2:"last"===a?g-1:a;if(!l.length){for(let e=0;e<g;e++){if(r){const[t,n]=r,a=(p?(n-1)/2:m%n)-e%n,i=(p?(t-1)/2:~~(m/n))-~~(e/n);let f=Math.sqrt(a*a+i*i);f="x"===o?-a:"y"===o?-i:f,l.push(f)}else l.push(Math.abs(m-e));d=Math.max(...l)}l=l.map((n=>f(e,t,g)(n/d)*d)),"reverse"===n&&(l=l.map((e=>o?-e:Math.abs(d-e))))}let h=s?(u-c)/d:u;return h===1/0&&(h=0),i+h*(Math.round(100*l[t])/100)}},easings:u,withFrom:function(e,t){return new S(e,t)},random:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},use:I,css:function e(t,n,r){if(y(n))for(let o in n)e(t,o,n[o]);else{if(void 0===r)return(se[n]&&se[n].get||se._default.get)(t,n);(se[n]&&se[n].set||se._default.set)(t,n,r)}},getPrefixedCssProp:re,geometry:function(e,t=100){return e=b(e)?document.querySelector(e):e,n=>new q(e,n,e.getTotalLength()*(t/100))},setDashoffset:e=>{if(e instanceof SVGGeometryElement){let t=e.getTotalLength();return e.setAttribute("stroke-dasharray",String(t)),t}return 0},timeline:G});return Ae}));
2
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).lwa=t()}(this,(function(){"use strict";var e=Object.defineProperty,t=Math.pow,n=(t,n,r)=>((t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r)(t,"symbol"!=typeof n?n+"":n,r);const r=new Set;let o=0,a=!0;function i(){0===r.size?a||(a=!0,cancelAnimationFrame(o)):(new Set(r).forEach((e=>e())),o=requestAnimationFrame(i))}const f={add:function(e){r.add(e),a&&(a=!1,o=requestAnimationFrame(i))},remove:function(e){r.delete(e)}},s={linear:()=>e=>e},c={Sine:()=>e=>1-Math.cos(e*Math.PI/2),Expo:()=>e=>e?Math.pow(1024,e-1):0,Circ:()=>e=>1-Math.sqrt(1-e*e),Elastic:()=>e=>0===e||1===e?e:-Math.pow(2,10*e-10)*Math.sin(2*(10*e-10.75)*Math.PI/3),Back:()=>e=>{const t=1.70158;return e*e*((t+1)*e-t)},Bounce:()=>e=>{const t=7.5625,n=2.75;return 1-((e=1-e)<1/n?t*e*e:e<2/n?t*(e-=1.5/n)*e+.75:e<2.5/n?t*(e-=2.25/n)*e+.9375:t*(e-=2.625/n)*e+.984375)}};["Quad","Cubic","Quart","Quint"].forEach(((e,t)=>{c[e]=()=>e=>Math.pow(e,t+2)})),Object.keys(c).forEach((e=>{const t=c[e];s["easeIn"+e]=t,s["easeOut"+e]=(e,n)=>r=>1-t(e,n)(1-r),s["easeInOut"+e]=(e,n)=>r=>r<.5?t(e,n)(2*r)/2:1-t(e,n)(2-2*r)/2}));const l=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/,u=new RegExp("^([+\\-*/%]=|)("+l.source+")("+/%|px|rpx|em|rem|vw|vh|deg|rad|turn|ex|ch|vmin|vmax|pc|pt|in|cm|mm/.source+"|)$","i"),d=new RegExp(l.source,"g"),g=new RegExp("^([<>]|)([+-]=|)("+l.source+"|)(%|)$");function p(e){return"number"==typeof e}function m(e){return"string"==typeof e}function h(e){return null!==e&&"object"==typeof e}function b(e){return"function"==typeof e}function y(e){return Array.isArray(e)}function w(e){return Array.isArray(e)?e:[e]}function k(e){return b(e)?e:()=>(s[e]||s.linear)(0,0)}const v=Symbol();class x{}class M extends x{constructor(e,t){super(),n(this,"from"),n(this,"to"),this.from=e,this.to=t}}class E extends x{constructor(e,t,r){super(),n(this,"el"),n(this,"prop"),n(this,"totalLength"),this.el=e,this.prop=t,this.totalLength=r}}const S=[];function A(e){const n=[];return y(e)||(e=[e]),e.flat().forEach((e=>{e&&(m(e)?n.push(...Array.from(document.querySelectorAll(e))):!function(e){let n;return h(e)&&Number.isInteger(n=e.length)&&n<t(2,32)}(e)?(h(e)||b(e))&&n.push(e):n.push(...Array.from(e)))})),Array.from(new Set(n))}function O(e,t){return b(e)?e(t.target,t.index,t.total):e}function T(e,t){const{duration:n,delay:r,begin:o,easing:a,between:i}=t;return i.map((t=>function(t){const{from:i,to:f,round:s}=t;let c=e<=o+r?i:e>=o+r+n?f:i+a((e-o-r)/n)*(f-i);return s&&(c=Math.round(c*s)/s),c}(t)))}function q(e,t){return y(e=O(e,t))?e.map((e=>q(e,t)[0])):((p(e)||m(e)||e instanceof x)&&(e={value:e}),[e])}function C(e,t,n,r,o,a,i){const f=t.length;let s,c=o||0;i=(null!=i?i:r.duration)/f;const l=t.map(((t,o)=>s=function(t,o,s){var l,d,g,p,h,b,y;const w=O(null!=(l=t.duration)?l:i,e),x=O(null!=(d=t.delay)?d:0===o?r.delay:0,e),E=O(null!=(g=t.endDelay)?g:o===f-1?r.endDelay:0,e),A=O(k(null!=(p=t.easing)?p:r.easing),e),T=O(null!=(h=t.round)?h:r.round,e),q=x+w+E,C=c,j=C+q;if(c+=q,!s){let e;s=(e=a[n])?e[e.length-1]:void 0}const D=t.value;let $,L;const P=D instanceof M;P?(L=O(D.from,e),$=O(D.to,e)):$=D,!P&&s&&(L=s.to);let I=!1;void 0===L&&(L=e.target[n],I=!0);let F="",N="";if(m($)){const e=u.exec($);e&&(F=e[1],$=parseFloat(e[2])||0,N=e[3])}const z={animatedTarget:e,prop:n,duration:w,delay:x,endDelay:E,begin:C,end:j,easing:A,data:{},from:L,to:$,withoutFrom:I,round:T,unit:N,operator:F,between:[]};for(let e=0,n=S.length;e<n&&(null==(y=(b=S[e]).init)?void 0:y.call(b,z,v))!==v;e++);return z}(t,o,s))).sort(((e,t)=>e.begin-t.begin));return{endTime:c,tweens:l}}function j(e,t,n){const r={},o=O(n.duration,e)/t.length;let a=0;return t.forEach((t=>{const i=function(e,t,n,r,o,a){let i={};for(let f in t){const s=t[f];null!=s&&(i[f]=C(e,q(s,e),f,n,r,o,a))}return i}(e,t,n,a,r,o);for(let e in i)a=Math.max(a,i[e].endTime),r[e]=(r[e]||[]).concat(i[e].tweens)})),r}function D(e,t,n){return e.map((e=>{const r=j(e,t,n);return Object.keys(r).map((e=>{return{seek:function(e){var n,r;let o;for(let a,i=0;a=t[i++];){if(a.begin<=e&&a.end>=e){o=a;break}e>a.end&&(!t[i+1]||t[i+1].begin>e)&&(o=a)}if(o){let t,a=T(e,o);for(let e=S.length-1;e>=0;e--){if(t=null==(r=(n=S[e]).update)?void 0:r.call(n,o,a,v),t===v)return;void 0!==t&&(a=t)}}},getDuration:function(){return Math.max(...t.map((e=>e.end)))},tweens:t=r[e]};var t}))})).flat()}const $={duration:500,delay:0,endDelay:0,easing:"easeInOutQuad",round:0};function L(e){w(e).forEach((e=>{S.includes(e)||(S.push(e),S.sort(((e,t)=>t.order-e.order)))}))}const P="alternate-reverse",I="reverse",F="alternate";function N(e){return e===I||e===P}function z(e){return e===F||e===P}const R={externalTicker:!1,autoplay:!0,direction:"normal",loop:1},X=["begin","loopBegin","complete","loopComplete","pause","play","update"];function Y(e){const t=Object.assign({},R,e),{externalTicker:n,autoplay:r,direction:o,loop:a}=t;let i=!1,s=!0,c=0,l=0,u=a,d=N(o),b=0,w=[];const k=function(){const e={};function t(t,n){let r=e[t];r||(r=e[t]=new Set),r.add(n)}function n(t,n){if(n){const r=e[t];r&&(r.delete(n),0===r.size&&delete e[t])}else delete e[t]}return{on:t,off:n,once:function(e,r){t(e,(function t(...o){r(...o),n(e,t)}))},emit:function(t,...n){const r=e[t];r&&r.forEach((e=>{e(...n)}))}}}();function v(){return 0===u&&l===b}function x(e){let t=!1;e>=b?(e=b,t=!0):e<0&&(e=0),l=e;const n=d?b-l:l;w.forEach((({target:e,begin:t})=>{e.seek(n-t)})),k.emit("update",n,0===b?0:l/b),t&&(k.emit("loopComplete"),--u<0&&(u=0),0===u?(O(),k.emit("complete")):s||(z(o)&&(d=!d),E()))}function M(){if(!s){let e=Date.now();x(e-c+l),c=e}}function E(){i?l=0:(i=!0,k.emit("begin")),k.emit("loopBegin"),S()}function S(){i?s&&(s=!1,v()?(z(o)&&(d=!d),T()):(c=Date.now(),n||f.add(M),k.emit("play"))):E()}function O(){s||(s=!0,n||f.remove(M),k.emit("pause"))}function T(){O(),l=0,i=!1,u=a,d=N(o),S()}function q(e,t,n,r){if(function(e){return h(e)&&"getDuration"in e&&"seek"in e}(e)){let n=b;if(p(r=null!=t?t:">"))n=r;else{const{begin:e,end:t}=w[w.length-1]||{begin:0,end:0},o=t-e,[,a,i,f,s]=g.exec(r)||[,">","","",""];n="<"===a?e:">"===a?t:n;let c=+f;"%"===s&&(c=(a?o:b)/100*+f),n+="-="===i?-c:c}n=Math.max(0,n);const o=n+e.getDuration();w.push({target:e,position:r,begin:n,end:o}),b=Math.max(b,o)}else{(p(n)||m(n))&&(r=n,n=void 0);const o=function(e,t,n){const r=Object.assign({},$,n);return D((o=A(e)).map(((e,t)=>({target:e,index:t,total:o.length}))),y(t)?t:[t],r);var o}(e,t,n);o.forEach(((e,t)=>{q(e,0===t?r:"<")}))}return C}X.forEach((e=>{t[e]&&k.on(e,t[e])})),r&&0!==a&&E();const C={play:S,pause:O,finish:function(){v()||x(b)},restart:T,seek:x,progress:function(e){var t,n,r;x((r=1,((t=e)<(n=0)?n:t>r?r:t)*b))},tick:()=>{n&&M()},getPosition:()=>l,getDuration:()=>b,getProgress:()=>0===b?0:l/b,isReverse:()=>d,add:q,remove:function(e){const t=w.findIndex((t=>t.target===e));-1!==t&&(w.splice(t,1),function(){const e=[...w];w=[],b=0,e.forEach((e=>{q(e.target,e.position)}))}())},clear:function(){O(),b=0,w=[]},events:w,on:k.on,off:k.off,once:k.once};return C}const B={start:0,from:0,direction:"normal",easing:"linear",grid:null,axis:null};const G={order:100,update(e,t,n){const{animatedTarget:r,prop:o,unit:a}=e;let i=y(t)?t[0]:t;return a&&(i+=a),r.target[o]=i,n}},Q={order:0,init(e,t){if(0===e.between.length){const n=w(e.to),r=w(e.from);return e.between=n.map(((t,n)=>({from:+r[n]||0,to:+t||0,round:e.round}))),t}}},Z={},U=["","webkit","Moz"],V=document.documentElement,H=["translateX","translateY","translateZ","scale","scaleX","scaleY","scaleZ","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY","perspective"];let W=null;let _=null;function J(e){return _||(_=ee(["columnCount","fillOpacity","fontSizeAdjust","fontWeight","lineHeight","opacity","orphans","widows","zIndex","zoom","scale","scaleX","scaleY","scaleZ","order","flexGrow","flexShrink","scrollLeft","scrollTop","strokeDashoffset","strokeDasharray"])),_[e]}let K=null;function ee(e){const t={};for(let n=0,r=e.length;n<r;n++)t[e[n]]=!0;return t}function te(e){return e.replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toLowerCase()))}function ne(e,t){if(Z[e])return Z[e];t=t||V.style;for(let n=0,r=U.length;n<r;n++){const r=U[n];let o=r?r+String(e).replace(/[-]([^-])/g,((e,t)=>t.toUpperCase())).replace(/^./,(e=>e.toUpperCase())):te(String(e));if(o in t)return Z[e]=o}return""}function re(e,t){return t+(Number.isNaN(+t)||J(e)?"":"px")}function oe(e,t){return window.getComputedStyle(e)[ne(t)]}function ae(e,t,n){e.style[ne(t)]=n}function ie(e,t){let n="";t.forEach(((e,t)=>n+=t+"("+e+") ")),ae(e,"transform",n)}let fe=null;function se(e){return fe||(fe={_default:{get:(e,t)=>oe(e,t),set(e,t,n){!function(e,t,n){e.style[ne(t)]=re(String(t),n)}(e,t,n)}}},["scrollTop","scrollLeft"].forEach((e=>{fe[e]={get:(e,t)=>e[t],set(e,t,n){e[t]=n}}})),H.forEach((e=>{fe[e]={get:(e,t)=>le(e).get(t)||"",set(e,t,n){const r=le(e);r.set(t,re(t,n)),ue(r),ie(e,r)}}}))),fe[e]||fe._default}function ce(e){return/rotate|skew/.test(e)?"deg":J(e)?"":"px"}function le(e){const t=e.style.getPropertyValue(ne("transform")),n=/(\w+)\(([^)]+)\)/g;let r;const o=[];for(;r=n.exec(t);)o.push([r[1],r[2]]);return o.sort(((e,t)=>H.indexOf(e[0])-H.indexOf(t[0]))),new Map(o)}function ue(e){const t=[...e].sort(((e,t)=>H.indexOf(e[0])-H.indexOf(t[0])));e.clear(),t.forEach((([t,n])=>{e.set(t,n)}))}function de(e){var t;return(null==(t=u.exec(e))?void 0:t[3])||""}function ge(e,t,n){if(-1!==[de(String(t)),"deg","rad","turn"].indexOf(n))return t;const r=document.createElement(e.tagName);r.style.position="absolute",r.style.width=100+n;const o=e.parentNode&&e.parentNode!==document?e.parentNode:document.body;o.appendChild(r);const a=100/r.offsetWidth;return o.removeChild(r),a*parseFloat(String(t))}function pe(e,t,n,r){switch(r){case"trans":return function(e,t,n){let r=le(e).get(t)||(/scale/.test(t)?1:0+ce(t));return n?ge(e,r,n):r}(e,t,n);case"css":return function(e,t,n){let r=oe(e,t);return n&&m(r)?ge(e,r,n):r}(e,t,n);case"attr":return function(e,t){return e.getAttribute(t)}(e,t)}}function me(e,t){return function(e){return W||(W=ee(H)),!!W[e]}(t)?"trans":ne(t)?"css":(n=t,K||(K=ee(["value"])),!K[n]&&e.hasAttribute(t)?"attr":"");var n}const he={order:90,init(e){const{animatedTarget:t,prop:n,data:r}=e,o=t.target;if(function(e){return e instanceof HTMLElement||e instanceof SVGElement}(o)){const a=me(o,n);if(a){if(r.css=a,"trans"===a&&(t.transforms||(t.transforms={map:le(o)})),e.withoutFrom){e.from=pe(o,n,e.unit,a);const t=u.exec(e.from);t&&(e.from=parseFloat(t[2]))}e.unit||(e.unit=ce(n))}}},update(e,t,n){const r=e.data.css;if(r){const{animatedTarget:o,prop:a,unit:i}=e,f=o.target;let s=y(t)?t[0]:t;switch("attr"!==r&&(s+=i),r){case"trans":let e=o.transforms.map;const t=e.has(a);e.set(a,s),t||ue(e),ie(f,e);break;case"css":ae(f,a,s);break;case"attr":f.setAttribute(a,s)}return n}}},be={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"778899",lightslategrey:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};function ye(e){let t,n=/[0-9a-f]{2}/gi,r=[];for(;t=n.exec(e);)r.push(parseInt(t[0],16));return r}function we(e){let t,n=/[.\d]+/g,r=[];for(;t=n.exec(e);)r.push(+t[0]);return r}function ke(e){let t;if(e=String(e),/^#?[0-9a-f]{3}$/i.test(e))t=ye(e.replace(/(.)(.)(.)$/,"$1$1$2$2$3$3"));else if(/^#?([0-9a-f]{6})$/i.test(e))t=ye(RegExp.$1);else if(/^rgb/i.test(e))t=we(e);else if(/^hsl/i.test(e)){const n=we(e);n[0]/=360,n[1]/=100,n[2]/=100,t=function(e,t,n){let r,o,a;function i(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}if(0==t)r=o=a=n;else{let f=n<.5?n*(1+t):n+t-n*t,s=2*n-f;r=i(s,f,e+1/3),o=i(s,f,e),a=i(s,f,e-1/3)}return[Math.round(255*r),Math.round(255*o),Math.round(255*a)]}(...n).concat(n[3])}else t=be.hasOwnProperty(e=e.toLowerCase())?ye(be[e]):[0,0,0,1];return p(t[3])||(t[3]=1),t}const ve={order:80,init(e,t){if(m(e.to)&&(n=e.to,be.hasOwnProperty(String(n).toLowerCase())||/^(?:rgb|hsl|#(?:[0-9a-f]{6}|[0-9a-f]{3})$)/i.test(n))){const n=e.data,r=ke(String(e.from)),o=ke(e.to);return e.between=o.map(((e,t)=>({from:r[t],to:e,round:3===t?0:1}))),e.unit="",n.color={},t}var n},update(e,t){if(e.data.color)return"rgba("+t.join(",")+")"}};const xe={order:70,init(e){if(e.operator){let t=e.from;p(t)||(t=Number(t)||0),e.to=function(e,t,n){switch(n[0]){case"+":return e+t;case"-":return e-t;case"*":return e*t;case"/":return e/t;case"%":return e%t}return 0}(t,e.to,e.operator),e.from=t}}};function Me(e,t){return function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)}(e,t)/Math.PI*180}const Ee={order:60,init(e){const{data:t,to:n}=e;n instanceof E&&(t.svg=n,e.from=0,e.to=n.totalLength,e.unit="")},update(e,t){const n=e.data.svg;if(n){let e=function(e){return n.el.getPointAtLength(r+e)};const r=y(t)?t[0]:t,o=e(-1),a=e(0);switch(n.prop){case"x":return a.x+"px";case"y":return a.y+"px";case"angle":return Me(o,a)+"deg"}}}},Se={order:50,init(e){let t,n=e.to;if(m(n)&&(t=n.match(d))){e.data.interp=n.split(d);let r,o=e.from;m(o)&&(r=o.match(d))?o=r:y(o)||(o=[e.from]),e.from=o,e.to=t}},update(e,t){const n=e.data.interp;if(n)return t.map(((e,t)=>n[t]+e)).join("")}};function Ae(e,t,n){return Y(n).add(e,t,n)}L(G),L(Q),L([he,ve,xe,Ee,Se]);const Oe=Object.assign(((...e)=>Ae(...e)),{createAnimation:Ae,createTimeline:Y,ticker:f,stagger:function(e,t){let{direction:n,grid:r,axis:o,from:a,start:i,easing:f}=Object.assign({},B,t);f=k(f);let s=y(e);const[c,l]=s?e:[0,e];let u=[],d=0;return i=i||c,(e,t,g)=>{const p="center"===a,m="first"===a?0:p?(g-1)/2:"last"===a?g-1:a;if(!u.length){for(let e=0;e<g;e++){if(r){const[t,n]=r,a=(p?(n-1)/2:m%n)-e%n,i=(p?(t-1)/2:~~(m/n))-~~(e/n);let f=Math.sqrt(a*a+i*i);f="x"===o?-a:"y"===o?-i:f,u.push(f)}else u.push(Math.abs(m-e));d=Math.max(...u)}u=u.map((n=>f(e,t,g)(n/d)*d)),"reverse"===n&&(u=u.map((e=>o?-e:Math.abs(d-e))))}let h=s?(l-c)/d:l;return h===1/0&&(h=0),i+h*(Math.round(100*u[t])/100)}},easings:s,withFrom:function(e,t){return new M(e,t)},random:function(e,t){return Math.floor(Math.random()*(t-e+1)+e)},use:L,css:function e(t,n,r){if(h(n))for(let o in n)e(t,o,n[o]);else{if(void 0===r)return se(n).get(t,n);se(n).set(t,n,r)}},getPrefixedCssProp:ne,geometry:function(e,t=100){return e=m(e)?document.querySelector(e):e,n=>new E(e,n,e.getTotalLength()*(t/100))},setDashoffset:e=>{if(e instanceof SVGGeometryElement){let t=e.getTotalLength();return e.setAttribute("stroke-dasharray",String(t)),t}return 0},timeline:Y});return Oe}));
package/dist/lwa.mjs CHANGED
@@ -3,43 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __pow = Math.pow;
4
4
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5
5
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
6
- function getAnimationFrameController() {
7
- if (typeof requestAnimationFrame === "function") {
8
- return {
9
- request: requestAnimationFrame,
10
- cancel: cancelAnimationFrame
11
- };
12
- }
13
- const fps = 60;
14
- const callbacks = [];
15
- let id2 = 1;
16
- let cursor = 0;
17
- let timer;
18
- function playAll() {
19
- timer = void 0;
20
- const cloned = callbacks.slice();
21
- cursor += callbacks.length;
22
- callbacks.length = 0;
23
- cloned.forEach((callback) => {
24
- if (callback !== 0) {
25
- callback(Date.now());
26
- }
27
- });
28
- }
29
- return {
30
- request(handler) {
31
- callbacks.push(handler);
32
- if (!timer) {
33
- timer = setTimeout(playAll, 1e3 / fps);
34
- }
35
- return id2++;
36
- },
37
- cancel(id22) {
38
- callbacks[id22 - cursor] = 0;
39
- }
40
- };
41
- }
42
- const { request, cancel } = getAnimationFrameController();
43
6
  const ticks = /* @__PURE__ */ new Set();
44
7
  let id = 0;
45
8
  let paused = true;
@@ -55,19 +18,19 @@ function step() {
55
18
  stop();
56
19
  } else {
57
20
  new Set(ticks).forEach((tick) => tick());
58
- id = request(step);
21
+ id = requestAnimationFrame(step);
59
22
  }
60
23
  }
61
24
  function run() {
62
25
  if (paused) {
63
26
  paused = false;
64
- id = request(step);
27
+ id = requestAnimationFrame(step);
65
28
  }
66
29
  }
67
30
  function stop() {
68
31
  if (!paused) {
69
32
  paused = true;
70
- cancel(id);
33
+ cancelAnimationFrame(id);
71
34
  }
72
35
  }
73
36
  const ticker = {
@@ -825,31 +788,49 @@ const transformValues = [
825
788
  "skewY",
826
789
  "perspective"
827
790
  ];
828
- const transformValuesMap = arrayToObject(transformValues);
829
- const optionalUnitProperties = arrayToObject([
830
- "columnCount",
831
- "fillOpacity",
832
- "fontSizeAdjust",
833
- "fontWeight",
834
- "lineHeight",
835
- "opacity",
836
- "orphans",
837
- "widows",
838
- "zIndex",
839
- "zoom",
840
- "scale",
841
- "scaleX",
842
- "scaleY",
843
- "scaleZ",
844
- "order",
845
- "flexGrow",
846
- "flexShrink",
847
- "scrollLeft",
848
- "scrollTop",
849
- "strokeDashoffset",
850
- "strokeDasharray"
851
- ]);
852
- const domDotAttributes = arrayToObject(["value"]);
791
+ let transformValuesMap = null;
792
+ function isTransform(prop) {
793
+ if (!transformValuesMap) {
794
+ transformValuesMap = arrayToObject(transformValues);
795
+ }
796
+ return !!transformValuesMap[prop];
797
+ }
798
+ let optionalUnitProperties = null;
799
+ function isOptionalUnitProperty(prop) {
800
+ if (!optionalUnitProperties) {
801
+ optionalUnitProperties = arrayToObject([
802
+ "columnCount",
803
+ "fillOpacity",
804
+ "fontSizeAdjust",
805
+ "fontWeight",
806
+ "lineHeight",
807
+ "opacity",
808
+ "orphans",
809
+ "widows",
810
+ "zIndex",
811
+ "zoom",
812
+ "scale",
813
+ "scaleX",
814
+ "scaleY",
815
+ "scaleZ",
816
+ "order",
817
+ "flexGrow",
818
+ "flexShrink",
819
+ "scrollLeft",
820
+ "scrollTop",
821
+ "strokeDashoffset",
822
+ "strokeDasharray"
823
+ ]);
824
+ }
825
+ return optionalUnitProperties[prop];
826
+ }
827
+ let domDotAttributes = null;
828
+ function isDomDotAttribute(attr) {
829
+ if (!domDotAttributes) {
830
+ domDotAttributes = arrayToObject(["value"]);
831
+ }
832
+ return domDotAttributes[attr];
833
+ }
853
834
  function arrayToObject(array) {
854
835
  const map = {};
855
836
  for (let i = 0, l = array.length; i < l; i++) {
@@ -874,14 +855,14 @@ function getPrefixedCssProp(name, host) {
874
855
  for (let i = 0, l = prefixes.length; i < l; i++) {
875
856
  const prefix = prefixes[i];
876
857
  let fitName = prefix ? prefix + pascalCase(String(name)) : camalCase(String(name));
877
- if (fitName in html.style) {
858
+ if (fitName in host) {
878
859
  return cssProps[name] = fitName;
879
860
  }
880
861
  }
881
862
  return "";
882
863
  }
883
864
  function combinedWithUnit(prop, value) {
884
- return value + (!Number.isNaN(+value) && !optionalUnitProperties[prop] ? "px" : "");
865
+ return value + (!Number.isNaN(+value) && !isOptionalUnitProperty(prop) ? "px" : "");
885
866
  }
886
867
  function getStyle(elem, prop) {
887
868
  return window.getComputedStyle(elem)[getPrefixedCssProp(prop)];
@@ -900,39 +881,45 @@ function setStyleFromTransformMap(elem, map) {
900
881
  map.forEach((val, key) => value += key + "(" + val + ") ");
901
882
  setStyleIgnoreUnit(elem, "transform", value);
902
883
  }
903
- const cssHooks = {
904
- _default: {
905
- get(elem, prop) {
906
- return getStyle(elem, prop);
907
- },
908
- set(elem, prop, value) {
909
- setStyle(elem, prop, value);
910
- }
884
+ let cssHooks = null;
885
+ function getCssHook(prop) {
886
+ if (!cssHooks) {
887
+ cssHooks = {
888
+ _default: {
889
+ get(elem, prop2) {
890
+ return getStyle(elem, prop2);
891
+ },
892
+ set(elem, prop2, value) {
893
+ setStyle(elem, prop2, value);
894
+ }
895
+ }
896
+ };
897
+ ["scrollTop", "scrollLeft"].forEach((item) => {
898
+ cssHooks[item] = {
899
+ get(elem, prop2) {
900
+ return elem[prop2];
901
+ },
902
+ set(elem, prop2, value) {
903
+ elem[prop2] = value;
904
+ }
905
+ };
906
+ });
907
+ transformValues.forEach((item) => {
908
+ cssHooks[item] = {
909
+ get(elem, prop2) {
910
+ return getTransformValuesMap(elem).get(prop2) || "";
911
+ },
912
+ set(elem, prop2, value) {
913
+ const transformValuesMap2 = getTransformValuesMap(elem);
914
+ transformValuesMap2.set(prop2, combinedWithUnit(prop2, value));
915
+ sortTransformValues(transformValuesMap2);
916
+ setStyleFromTransformMap(elem, transformValuesMap2);
917
+ }
918
+ };
919
+ });
911
920
  }
912
- };
913
- ["scrollTop", "scrollLeft"].forEach((item) => {
914
- cssHooks[item] = {
915
- get(elem, prop) {
916
- return elem[prop];
917
- },
918
- set(elem, prop, value) {
919
- elem[prop] = value;
920
- }
921
- };
922
- });
923
- transformValues.forEach((item) => {
924
- cssHooks[item] = {
925
- get(elem, prop) {
926
- return getTransformValuesMap(elem).get(prop) || "";
927
- },
928
- set(elem, prop, value) {
929
- const transformValuesMap2 = getTransformValuesMap(elem);
930
- transformValuesMap2.set(prop, combinedWithUnit(prop, value));
931
- sortTransformValues(transformValuesMap2);
932
- setStyleFromTransformMap(elem, transformValuesMap2);
933
- }
934
- };
935
- });
921
+ return cssHooks[prop] || cssHooks._default;
922
+ }
936
923
  function css(elem, prop, value) {
937
924
  if (isObject(prop)) {
938
925
  for (let i in prop) {
@@ -943,20 +930,13 @@ function css(elem, prop, value) {
943
930
  );
944
931
  }
945
932
  } else if (value === void 0) {
946
- return (cssHooks[prop] && cssHooks[prop].get || cssHooks._default.get)(
947
- elem,
948
- prop
949
- );
933
+ return getCssHook(prop).get(elem, prop);
950
934
  } else {
951
- (cssHooks[prop] && cssHooks[prop].set || cssHooks._default.set)(
952
- elem,
953
- prop,
954
- value
955
- );
935
+ getCssHook(prop).set(elem, prop, value);
956
936
  }
957
937
  }
958
938
  function getDefaultUnit(prop) {
959
- return /rotate|skew/.test(prop) ? "deg" : optionalUnitProperties[prop] ? "" : "px";
939
+ return /rotate|skew/.test(prop) ? "deg" : isOptionalUnitProperty(prop) ? "" : "px";
960
940
  }
961
941
  function getTransformValuesMap(target) {
962
942
  const value = target.style.getPropertyValue(getPrefixedCssProp("transform"));
@@ -1020,10 +1000,7 @@ function getOriginalValue(target, prop, unit, propType) {
1020
1000
  }
1021
1001
  }
1022
1002
  function getPropType(target, prop) {
1023
- return isTransform(prop) ? "trans" : getPrefixedCssProp(prop) ? "css" : !domDotAttributes[prop] && target.hasAttribute(prop) ? "attr" : "";
1024
- }
1025
- function isTransform(prop) {
1026
- return !!transformValuesMap[prop];
1003
+ return isTransform(prop) ? "trans" : getPrefixedCssProp(prop) ? "css" : !isDomDotAttribute(prop) && target.hasAttribute(prop) ? "attr" : "";
1027
1004
  }
1028
1005
  const cssPlugin = definePlugin({
1029
1006
  order: 90,
@@ -3,43 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __pow = Math.pow;
4
4
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
5
5
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
6
- function getAnimationFrameController() {
7
- if (typeof requestAnimationFrame === "function") {
8
- return {
9
- request: requestAnimationFrame,
10
- cancel: cancelAnimationFrame
11
- };
12
- }
13
- const fps = 60;
14
- const callbacks = [];
15
- let id2 = 1;
16
- let cursor = 0;
17
- let timer;
18
- function playAll() {
19
- timer = void 0;
20
- const cloned = callbacks.slice();
21
- cursor += callbacks.length;
22
- callbacks.length = 0;
23
- cloned.forEach((callback) => {
24
- if (callback !== 0) {
25
- callback(Date.now());
26
- }
27
- });
28
- }
29
- return {
30
- request(handler) {
31
- callbacks.push(handler);
32
- if (!timer) {
33
- timer = setTimeout(playAll, 1e3 / fps);
34
- }
35
- return id2++;
36
- },
37
- cancel(id22) {
38
- callbacks[id22 - cursor] = 0;
39
- }
40
- };
41
- }
42
- const { request, cancel } = getAnimationFrameController();
43
6
  const ticks = /* @__PURE__ */ new Set();
44
7
  let id = 0;
45
8
  let paused = true;
@@ -55,19 +18,19 @@ function step() {
55
18
  stop();
56
19
  } else {
57
20
  new Set(ticks).forEach((tick) => tick());
58
- id = request(step);
21
+ id = requestAnimationFrame(step);
59
22
  }
60
23
  }
61
24
  function run() {
62
25
  if (paused) {
63
26
  paused = false;
64
- id = request(step);
27
+ id = requestAnimationFrame(step);
65
28
  }
66
29
  }
67
30
  function stop() {
68
31
  if (!paused) {
69
32
  paused = true;
70
- cancel(id);
33
+ cancelAnimationFrame(id);
71
34
  }
72
35
  }
73
36
  const ticker = {
@@ -0,0 +1,2 @@
1
+ /* lwa 0.2.3 | MIT license | https://github.com/sutras/lwa */
2
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).lwa={})}(this,(function(e){"use strict";var n=Object.defineProperty,t=Math.pow,o=(e,t,o)=>((e,t,o)=>t in e?n(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o)(e,"symbol"!=typeof t?t+"":t,o);const r=new Set;let i=0,a=!0;function u(){0===r.size?a||(a=!0,cancelAnimationFrame(i)):(new Set(r).forEach((e=>e())),i=requestAnimationFrame(u))}const c={add:function(e){r.add(e),a&&(a=!1,i=requestAnimationFrame(u))},remove:function(e){r.delete(e)}},s={linear:()=>e=>e},l={Sine:()=>e=>1-Math.cos(e*Math.PI/2),Expo:()=>e=>e?Math.pow(1024,e-1):0,Circ:()=>e=>1-Math.sqrt(1-e*e),Elastic:()=>e=>0===e||1===e?e:-Math.pow(2,10*e-10)*Math.sin(2*(10*e-10.75)*Math.PI/3),Back:()=>e=>{const n=1.70158;return e*e*((n+1)*e-n)},Bounce:()=>e=>{const n=7.5625,t=2.75;return 1-((e=1-e)<1/t?n*e*e:e<2/t?n*(e-=1.5/t)*e+.75:e<2.5/t?n*(e-=2.25/t)*e+.9375:n*(e-=2.625/t)*e+.984375)}};["Quad","Cubic","Quart","Quint"].forEach(((e,n)=>{l[e]=()=>e=>Math.pow(e,n+2)})),Object.keys(l).forEach((e=>{const n=l[e];s["easeIn"+e]=n,s["easeOut"+e]=(e,t)=>o=>1-n(e,t)(1-o),s["easeInOut"+e]=(e,t)=>o=>o<.5?n(e,t)(2*o)/2:1-n(e,t)(2-2*o)/2}));const f=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/,d=new RegExp("^([+\\-*/%]=|)("+f.source+")("+/%|px|rpx|em|rem|vw|vh|deg|rad|turn|ex|ch|vmin|vmax|pc|pt|in|cm|mm/.source+"|)$","i"),p=new RegExp("^([<>]|)([+-]=|)("+f.source+"|)(%|)$");function m(e){return"number"==typeof e}function g(e){return"string"==typeof e}function h(e){return null!==e&&"object"==typeof e}function y(e){return"function"==typeof e}function b(e){return Array.isArray(e)}function v(e){return Array.isArray(e)?e:[e]}const w=Symbol();class x{}class E extends x{constructor(e,n){super(),o(this,"from"),o(this,"to"),this.from=e,this.to=n}}const M=[];function k(e){const n=[];return b(e)||(e=[e]),e.flat().forEach((e=>{e&&(g(e)?n.push(...Array.from(document.querySelectorAll(e))):!function(e){let n;return h(e)&&Number.isInteger(n=e.length)&&n<t(2,32)}(e)?(h(e)||y(e))&&n.push(e):n.push(...Array.from(e)))})),Array.from(new Set(n))}function A(e,n){return y(e)?e(n.target,n.index,n.total):e}function D(e,n){const{duration:t,delay:o,begin:r,easing:i,between:a}=n;return a.map((n=>function(n){const{from:a,to:u,round:c}=n;let s=e<=r+o?a:e>=r+o+t?u:a+i((e-r-o)/t)*(u-a);return c&&(s=Math.round(s*c)/c),s}(n)))}function T(e,n){return b(e=A(e,n))?e.map((e=>T(e,n)[0])):((m(e)||g(e)||e instanceof x)&&(e={value:e}),[e])}function O(e,n,t,o,r,i,a){const u=n.length;let c,l=r||0;function f(n,r,c){var f,p,m,h,b,v,x;const k=A(null!=(f=n.duration)?f:a,e),D=A(null!=(p=n.delay)?p:0===r?o.delay:0,e),T=A(null!=(m=n.endDelay)?m:r===u-1?o.endDelay:0,e),O=A(y(S=null!=(h=n.easing)?h:o.easing)?S:()=>(s[S]||s.linear)(0,0),e);var S;const j=A(null!=(b=n.round)?b:o.round,e),I=D+k+T,F=l,P=F+I;if(l+=I,!c){let e;c=(e=i[t])?e[e.length-1]:void 0}const q=n.value;let B,C;const Q=q instanceof E;Q?(C=A(q.from,e),B=A(q.to,e)):B=q,!Q&&c&&(C=c.to);let R=!1;void 0===C&&(C=e.target[t],R=!0);let z="",$="";if(g(B)){const e=d.exec(B);e&&(z=e[1],B=parseFloat(e[2])||0,$=e[3])}const N={animatedTarget:e,prop:t,duration:k,delay:D,endDelay:T,begin:F,end:P,easing:O,data:{},from:C,to:B,withoutFrom:R,round:j,unit:$,operator:z,between:[]};for(let e=0,t=M.length;e<t;e++){if((null==(x=(v=M[e]).init)?void 0:x.call(v,N,w))===w)break}return N}a=(null!=a?a:o.duration)/u;const p=n.map(((e,n)=>c=f(e,n,c))).sort(((e,n)=>e.begin-n.begin));return{endTime:l,tweens:p}}function S(e,n,t){const o={},r=A(t.duration,e)/n.length;let i=0;return n.forEach((n=>{const a=function(e,n,t,o,r,i){let a={};for(let u in n){const c=n[u];null!=c&&(a[u]=O(e,T(c,e),u,t,o,r,i))}return a}(e,n,t,i,o,r);for(let e in a)i=Math.max(i,a[e].endTime),o[e]=(o[e]||[]).concat(a[e].tweens)})),o}function j(e,n,t){return e.map((e=>{const o=S(e,n,t);return Object.keys(o).map((e=>{return{seek:function(e){var t,o;let r;for(let i,a=0;i=n[a++];){if(i.begin<=e&&i.end>=e){r=i;break}e>i.end&&(!n[a+1]||n[a+1].begin>e)&&(r=i)}if(r){let n,i=D(e,r);for(let e=M.length-1;e>=0;e--){if(n=null==(o=(t=M[e]).update)?void 0:o.call(t,r,i,w),n===w)return;void 0!==n&&(i=n)}}},getDuration:function(){return Math.max(...n.map((e=>e.end)))},tweens:n=o[e]};var n}))})).flat()}const I={duration:500,delay:0,endDelay:0,easing:"easeInOutQuad",round:0};function F(e){v(e).forEach((e=>{M.includes(e)||(M.push(e),M.sort(((e,n)=>n.order-e.order)))}))}const P="alternate-reverse",q="reverse",B="alternate";function C(e){return e===q||e===P}function Q(e){return e===B||e===P}const R={externalTicker:!1,autoplay:!0,direction:"normal",loop:1},z=["begin","loopBegin","complete","loopComplete","pause","play","update"];function $(e){const n=Object.assign({},R,e),{externalTicker:t,autoplay:o,direction:r,loop:i}=n;let a=!1,u=!0,s=0,l=0,f=i,d=C(r),y=0,v=[];const w=function(){const e={};function n(n,t){let o=e[n];o||(o=e[n]=new Set),o.add(t)}function t(n,t){if(t){const o=e[n];o&&(o.delete(t),0===o.size&&delete e[n])}else delete e[n]}return{on:n,off:t,once:function(e,o){n(e,(function n(...r){o(...r),t(e,n)}))},emit:function(n,...t){const o=e[n];o&&o.forEach((e=>{e(...t)}))}}}();function x(){return 0===f&&l===y}function E(e){let n=!1;e>=y?(e=y,n=!0):e<0&&(e=0),l=e;const t=d?y-l:l;v.forEach((({target:e,begin:n})=>{e.seek(t-n)})),w.emit("update",t,0===y?0:l/y),n&&(w.emit("loopComplete"),--f<0&&(f=0),0===f?(T(),w.emit("complete")):u||(Q(r)&&(d=!d),A()))}function M(){if(!u){let e=Date.now();E(e-s+l),s=e}}function A(){a?l=0:(a=!0,w.emit("begin")),w.emit("loopBegin"),D()}function D(){a?u&&(u=!1,x()?(Q(r)&&(d=!d),O()):(s=Date.now(),t||c.add(M),w.emit("play"))):A()}function T(){u||(u=!0,t||c.remove(M),w.emit("pause"))}function O(){T(),l=0,a=!1,f=i,d=C(r),D()}function S(e,n,t,o){if(function(e){return h(e)&&"getDuration"in e&&"seek"in e}(e)){let t=y;if(m(o=null!=n?n:">"))t=o;else{const{begin:e,end:n}=v[v.length-1]||{begin:0,end:0},r=n-e,[,i,a,u,c]=p.exec(o)||[,">","","",""];t="<"===i?e:">"===i?n:t;let s=+u;"%"===c&&(s=(i?r:y)/100*+u),t+="-="===a?-s:s}t=Math.max(0,t);const r=t+e.getDuration();v.push({target:e,position:o,begin:t,end:r}),y=Math.max(y,r)}else{(m(t)||g(t))&&(o=t,t=void 0);const r=function(e,n,t){const o=Object.assign({},I,t);return j((r=k(e)).map(((e,n)=>({target:e,index:n,total:r.length}))),b(n)?n:[n],o);var r}(e,n,t);r.forEach(((e,n)=>{S(e,0===n?o:"<")}))}return F}z.forEach((e=>{n[e]&&w.on(e,n[e])})),o&&0!==i&&A();const F={play:D,pause:T,finish:function(){x()||E(y)},restart:O,seek:E,progress:function(e){var n,t,o;E((o=1,((n=e)<(t=0)?t:n>o?o:n)*y))},tick:()=>{t&&M()},getPosition:()=>l,getDuration:()=>y,getProgress:()=>0===y?0:l/y,isReverse:()=>d,add:S,remove:function(e){const n=v.findIndex((n=>n.target===e));-1!==n&&(v.splice(n,1),function(){const e=[...v];v=[],y=0,e.forEach((e=>{S(e.target,e.position)}))}())},clear:function(){T(),y=0,v=[]},events:v,on:w.on,off:w.off,once:w.once};return F}const N={order:100,update(e,n,t){const{animatedTarget:o,prop:r,unit:i}=e;let a=b(n)?n[0]:n;return i&&(a+=i),o.target[r]=a,t}},G={order:0,init(e,n){if(0===e.between.length){const t=v(e.to),o=v(e.from);return e.between=t.map(((n,t)=>({from:+o[t]||0,to:+n||0,round:e.round}))),n}}};F(N),F(G),e.createAnimation=function(e,n,t){return $(t).add(e,n,t)},e.createTimeline=$,e.easings=s,e.ticker=c,e.withFrom=function(e,n){return new E(e,n)},Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lwa",
3
- "version": "0.2.3",
3
+ "version": "0.3.0",
4
4
  "description": "轻量级动画库",
5
5
  "main": "./dist/lwa.cjs",
6
6
  "module": "./dist/lwa.mjs",
@@ -37,16 +37,28 @@
37
37
  },
38
38
  "devDependencies": {
39
39
  "@microsoft/api-extractor": "^7.47.0",
40
+ "@tailwindcss/vite": "^4.1.11",
41
+ "@types/markdown-it": "^14.1.2",
42
+ "@types/markdown-it-container": "^2.0.10",
40
43
  "@types/node": "^20.14.9",
41
44
  "@vitejs/plugin-vue": "^5.0.5",
42
45
  "consola": "^3.2.3",
46
+ "fast-glob": "^3.3.3",
43
47
  "gh-pages": "^6.1.1",
44
48
  "lodash-es": "^4.17.21",
49
+ "markdown-it": "^14.1.0",
50
+ "markdown-it-async": "^2.2.0",
51
+ "markdown-it-container": "^4.0.0",
52
+ "markdown-it-prism": "^3.0.0",
45
53
  "pinia": "^2.1.7",
54
+ "prismjs": "^1.30.0",
55
+ "tailwindcss": "^4.1.11",
46
56
  "terser": "^5.31.1",
47
57
  "typescript": "^5.5.2",
48
58
  "unplugin-vue-markdown": "^0.26.2",
49
59
  "vite": "^5.3.1",
60
+ "vite-plugin-svg-icons": "^2.0.1",
61
+ "vitepress-plugin-group-icons": "^1.6.2",
50
62
  "vue": "^3.4.29",
51
63
  "vue-router": "^4.4.0",
52
64
  "vue-tsc": "^2.0.21"
@@ -63,6 +75,7 @@
63
75
  "keywords": [
64
76
  "animation",
65
77
  "animate",
78
+ "anime",
66
79
  "动画"
67
80
  ]
68
81
  }