godown 3.1.0 → 3.2.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 +2 -2
- package/build/godown+lit.iife.js +4 -4
- package/build/godown+lit.iife.js.map +1 -1
- package/build/godown+lit.js +6 -6
- package/build/godown+lit.js.map +1 -1
- package/build/godown+lit.umd.js +4 -4
- package/build/godown+lit.umd.js.map +1 -1
- package/build/godown.iife.js +2 -2
- package/build/godown.js +3 -3
- package/build/godown.js.map +1 -1
- package/build/godown.umd.js +2 -2
- package/build/godown.umd.js.map +1 -1
- package/components/link.d.ts +34 -7
- package/components/link.d.ts.map +1 -1
- package/components/link.js +1 -1
- package/components/link.js.map +1 -1
- package/components/range.js +1 -1
- package/components/range.js.map +1 -1
- package/components/router.d.ts +9 -1
- package/components/router.d.ts.map +1 -1
- package/components/router.js +1 -1
- package/components/router.js.map +1 -1
- package/components/split.d.ts.map +1 -1
- package/components/split.js +1 -1
- package/components/split.js.map +1 -1
- package/core/super-anchor.d.ts +1 -0
- package/core/super-anchor.d.ts.map +1 -1
- package/core/super-anchor.js +1 -1
- package/core/super-anchor.js.map +1 -1
- package/custom-elements.json +1 -1
- package/dev/components/link.d.ts +34 -7
- package/dev/components/link.d.ts.map +1 -1
- package/dev/components/link.js +70 -12
- package/dev/components/link.js.map +1 -1
- package/dev/components/range.js +2 -2
- package/dev/components/range.js.map +1 -1
- package/dev/components/router.d.ts +9 -1
- package/dev/components/router.d.ts.map +1 -1
- package/dev/components/router.js +26 -18
- package/dev/components/router.js.map +1 -1
- package/dev/components/split.d.ts.map +1 -1
- package/dev/components/split.js +1 -8
- package/dev/components/split.js.map +1 -1
- package/dev/core/super-anchor.d.ts +1 -0
- package/dev/core/super-anchor.d.ts.map +1 -1
- package/dev/core/super-anchor.js +3 -4
- package/dev/core/super-anchor.js.map +1 -1
- package/package.json +3 -3
- package/src/components/link.ts +75 -12
- package/src/components/range.ts +2 -2
- package/src/components/router.ts +30 -18
- package/src/components/split.ts +1 -9
- package/src/core/super-anchor.ts +5 -1
- package/vscode.html-custom-data.json +1 -1
- package/web-types.json +1 -1
package/components/link.d.ts
CHANGED
@@ -1,26 +1,53 @@
|
|
1
1
|
import SuperAnchor from "../core/super-anchor.js";
|
2
|
+
declare const linkTypes: {
|
3
|
+
readonly push: "push";
|
4
|
+
readonly replace: "replace";
|
5
|
+
readonly normal: "normal";
|
6
|
+
readonly auto: "auto";
|
7
|
+
};
|
8
|
+
type LinkType = keyof typeof linkTypes;
|
2
9
|
/**
|
3
|
-
* {@linkcode Link} is used for link jumping.
|
10
|
+
* {@linkcode Link} is used for link jumping, works standalone or in {@linkcode Router}.
|
11
|
+
*
|
12
|
+
* Set `type` to `"normal"`,
|
13
|
+
* behave like a normal anchor.
|
4
14
|
*
|
5
15
|
* Set `type` to `"push" `or `"replace"`,
|
6
|
-
*
|
16
|
+
* update history state by `history.pushState` or `history.replaceState`,
|
17
|
+
* update all routers whether current pathname is registered or not.
|
18
|
+
*
|
19
|
+
* Set `type` to `"auto"`,
|
20
|
+
* only update the routers if the current pathname is registered,
|
21
|
+
* if not registered, behave like `"normal"`.
|
7
22
|
*
|
23
|
+
* `replace` property will enforce `history.replaceState`.
|
24
|
+
*
|
25
|
+
* @fires navigate - Fires when the link is clicked.
|
8
26
|
* @category navigation
|
9
27
|
*/
|
10
28
|
declare class Link extends SuperAnchor {
|
11
29
|
/**
|
12
|
-
* If "
|
30
|
+
* If `"normal"`, behave like a normal anchor.
|
13
31
|
*
|
14
|
-
* If "
|
32
|
+
* If `"auto"` or `"push"`, call `history.pushState` if `replace` is false,
|
15
33
|
*
|
16
|
-
* If "
|
34
|
+
* If `"replace"`, call `history.replaceState`.
|
17
35
|
*/
|
18
|
-
type:
|
36
|
+
type: LinkType;
|
19
37
|
/**
|
20
|
-
*
|
38
|
+
* If `true`, the {@linkcode Router} will not be updated.
|
21
39
|
*/
|
22
40
|
suppress: boolean;
|
41
|
+
/**
|
42
|
+
* Use `replaceState` instead of `pushState`.
|
43
|
+
*/
|
44
|
+
replace: boolean;
|
45
|
+
/**
|
46
|
+
* Location state object.
|
47
|
+
*/
|
48
|
+
state: {};
|
23
49
|
protected _handleClick(e: MouseEvent): void;
|
50
|
+
handleState: () => void;
|
24
51
|
}
|
25
52
|
export default Link;
|
26
53
|
export { Link };
|
package/components/link.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../src/components/link.ts"],"names":[],"mappings":"AAGA,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAKlD
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../src/components/link.ts"],"names":[],"mappings":"AAGA,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAKlD,QAAA,MAAM,SAAS;;;;;CAKL,CAAC;AAEX,KAAK,QAAQ,GAAG,MAAM,OAAO,SAAS,CAAC;AAEvC;;;;;;;;;;;;;;;;;;GAkBG;AACH,cACM,IAAK,SAAQ,WAAW;IAC5B;;;;;;OAMG;IAEH,IAAI,EAAE,QAAQ,CAAkB;IAEhC;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,OAAO,UAAS;IAEhB;;OAEG;IACH,KAAK,KAAM;IAEX,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IA0B3C,WAAW,EAAE,MAAM,IAAI,CAcrB;CACH;AAED,eAAe,IAAI,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
package/components/link.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{__decorate as t}from"tslib";import{godown as e}from"@godown/element";import{property as
|
1
|
+
import{__decorate as t}from"tslib";import{godown as e}from"@godown/element";import{property as s}from"lit/decorators.js";import r from"../core/super-anchor.js";import o from"./router.js";const a="push",p="replace",i="normal",h="auto";let n=class Link extends r{constructor(){super(...arguments),this.type=h,this.suppress=!1,this.replace=!1,this.state={},this.handleState=()=>{switch(this.type){case h:case a:if(!this.replace){history.pushState(this.state,"",this.href);break}case p:history.replaceState(this.state,"",this.href)}}}_handleClick(t){const{state:e,type:s,href:r,pathname:a,suppress:p}=this;if(this.dispatchCustomEvent("navigate",{...this.observedRecord,pathname:a,state:e}),r.startsWith("#")||s===i)return;this.handleState();const n=[...o.routerInstances];p||s===h&&!n.some((t=>t.search(location.pathname)))||(t.preventDefault(),o.routerInstances.forEach((t=>{t.handlePopstate()})))}};t([s()],n.prototype,"type",void 0),t([s({type:Boolean})],n.prototype,"suppress",void 0),t([s({type:Boolean})],n.prototype,"replace",void 0),n=t([e("link")],n);var c=n;export{n as Link,c as default};
|
2
2
|
//# sourceMappingURL=link.js.map
|
package/components/link.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"link.js","sources":["../src/components/link.ts"],"sourcesContent":null,"names":["Link","SuperAnchor","constructor","this","type","suppress","
|
1
|
+
{"version":3,"file":"link.js","sources":["../src/components/link.ts"],"sourcesContent":null,"names":["linkTypes","Link","SuperAnchor","constructor","this","type","suppress","replace","state","handleState","history","pushState","href","replaceState","_handleClick","e","pathname","dispatchCustomEvent","observedRecord","startsWith","routers","Router","routerInstances","some","i","search","location","preventDefault","forEach","handlePopstate","__decorate","property","prototype","undefined","Boolean","godown","Link$1"],"mappings":"2LAMA,MAEMA,EACE,OADFA,EAEK,UAFLA,EAGI,SAHJA,EAIE,OAyBR,IAAMC,EAAN,MAAMA,aAAaC,EAAnB,WAAAC,uBASEC,KAAAC,KAAiBL,EAMjBI,KAAQE,UAAG,EAMXF,KAAOG,SAAG,EAKVH,KAAKI,MAAG,CAAE,EA4BVJ,KAAWK,YAAe,KACxB,OAAQL,KAAKC,MACX,KAAKL,EAEL,KAAKA,EACH,IAAKI,KAAKG,QAAS,CAEjBG,QAAQC,UAAUP,KAAKI,MAAO,GAAIJ,KAAKQ,MACvC,MAEJ,KAAKZ,EACHU,QAAQG,aAAaT,KAAKI,MAAO,GAAIJ,KAAKQ,QArCtC,YAAAE,CAAaC,GACrB,MAAMP,MAAEA,EAAKH,KAAEA,EAAIO,KAAEA,EAAII,SAAEA,EAAQV,SAAEA,GAAaF,KAMlD,GALAA,KAAKa,oBAAoB,WAAY,IAChCb,KAAKc,eACRF,WACAR,UAEEI,EAAKO,WAAW,MAAQd,IAASL,EACnC,OAEFI,KAAKK,cACL,MAAMW,EAAU,IAAIC,EAAOC,iBAGxBhB,GACAD,IAASL,IAERoB,EAAQG,MAAMC,GAAMA,EAAEC,OAAOC,SAASV,cAExCD,EAAEY,iBACFN,EAAOC,gBAAgBM,SAASJ,IAC9BA,EAAEK,gBAAgB,OAxCxBC,EAAA,CADCC,KAC8B9B,EAAA+B,UAAA,YAAAC,GAM/BH,EAAA,CADCC,EAAS,CAAE1B,KAAM6B,WACFjC,EAAA+B,UAAA,gBAAAC,GAMhBH,EAAA,CADCC,EAAS,CAAE1B,KAAM6B,WACHjC,EAAA+B,UAAA,eAAAC,GArBXhC,EAAI6B,EAAA,CADTK,EA9BiB,SA+BZlC,GAuEN,IAAAmC,EAAenC"}
|
package/components/range.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{__decorate as t}from"tslib";import{part as e,godown as r,styles as a,attr as s,joinProperties as i,
|
1
|
+
import{__decorate as t}from"tslib";import{part as e,godown as r,styles as a,attr as s,joinProperties as i,loop as o,classList as n,isNil as h}from"@godown/element";import{css as l,html as u}from"lit";import{property as d,queryAll as c,state as v}from"lit/decorators.js";import{scopePrefix as p,cssGlobalVars as m}from"../core/global-style.js";import f from"../core/super-input.js";const g="range",w=p(g);let y=class Range extends f{constructor(){super(...arguments),this.min=0,this.max=100,this.vertical=!1,this.__focusStack=[]}get reverse(){return!!this.range&&this.value[0]>this.value[1]}get range(){return Array.isArray(this.value)}get rangeValue(){return this.range?this.value:[this.value]}padValue(t,e=0){const{rangeValue:r}=this,a=t-r.length;return a>0?new Array(a).fill(e).concat(r):r}render(){const t=this.padValue(2),e=Math.min(...t),r=Math.max(...t),a=this.max-this.min;return u`<div part="root" ${s(this.observedRecord)} @mousedown="${this.disabled?null:this._handleMousedownRoot}" style="${i({"--from":(e-this.min)/a*100+"%","--to":(r-this.min)/a*100+"%",...this.range?Object.fromEntries(t.map(((t,e)=>[`--handle-${e}`,(t-this.min)/a*100+"%"]))):{}})}"><div part="track"></div>${o(this.rangeValue.length,(t=>this._renderHandle(t)))}</div>`}_renderHandle(t){const{range:e}=this,r=!e||t===this.value.length-1;return u`<i tabindex="0" part="handle" class="${n({"last-focus":this.lastFocus===t})}" @mousedown="${this.disabled?null:this.createMouseDown(t)}" @focus="${this.disabled?null:()=>this.focusHandle(t)}" @blur="${this.disabled?null:this.blurHandle}" style="z-index:${this.__focusStack.indexOf(t)+1};--handle:var(--${!e&&r?"to":`handle-${t}`})"></i>`}focusHandle(t){this.lastFocus=t;const e=this.__focusStack.indexOf(t);-1!==e&&this.__focusStack.splice(e,1),this.__focusStack.push(t);const r=this._handles.item(t);r?.focus(),this.__keydownEvent||(this.__keydownEvent=this.events.add(document,"keydown",this.createKeydownEvent(t))),this.dispatchEvent(new CustomEvent("focus",{detail:t}))}blurHandle(){this.lastFocus=void 0,this.__keydownEvent=this.events.remove(document,"keydown",this.__keydownEvent),this.dispatchEvent(new CustomEvent("blur"))}createKeydownEvent(t){return this.range||(t=0),e=>{"ArrowLeft"===e.key||"ArrowDown"===e.key?(e.preventDefault(),this.createSetValue(t)((t=>t-this.step))):"ArrowRight"!==e.key&&"ArrowUp"!==e.key||(e.preventDefault(),this.createSetValue(t)((t=>t+this.step)))}}createMouseDown(t){return e=>{this.focusHandle(t),this.createMousedownListener(this.createSetValue(t))(e)}}createSetValue(t){return e=>{const r="number"==typeof e?this.normalizeValue(e):e(this.rangeValue[t]);let a=r;this.range&&(a=[...this.rangeValue],a[t]=r),this.value=a,this.dispatchEvent(new CustomEvent("range",{detail:this.value}))}}_computeValue(t){const e=this._root.getBoundingClientRect(),r=this.vertical?(t.clientY-e.top)/e.height:(t.clientX-e.left)/e.width,a=Math.round(r*(this.max-this.min)/this.step)*this.step;return this.normalizeValue(a)}normalizeValue(t){return t>this.max?t-=this.step:t<this.min&&(t+=this.step),t}_handleMousedownRoot(t){const e=this._computeValue(t),r=this.range?this.rangeValue.reduce(((t,r,a)=>Math.abs(e-r)<Math.abs(e-this.rangeValue[t])?a:t),0):0,a=this.createSetValue(r);a(e),this.createMousedownListener(a)(t),this.focusHandle(r)}createMousedownListener(t){return e=>{e.preventDefault(),e.stopPropagation();const r=this.createMousemoveListener(t);this.events.add(document,"mousemove",r);const a=()=>{this.events.remove(document,"mousemove",r),this.events.remove(document,"mouseup",a)};this.events.add(document,"mouseup",a)}}createMousemoveListener(t){return e=>{const r=this._computeValue(e);r>this.max||r<this.min||t?.call(this,r)}}_connectedInit(){const t=this.max-this.min;this.step||=t/100,h(this.value)&&(h(this.default)?this.value=Math.round(t/2/this.step)*this.step:this.value=this.default),this.default??=this.value}reset(){this.value=this.default}sort(){return this.value=this.toSorted()}toSorted(){return this.range?[...this.value].sort(((t,e)=>t-e)):this.value}};t([d({type:Number})],y.prototype,"min",void 0),t([d({type:Number})],y.prototype,"max",void 0),t([d({type:Number})],y.prototype,"step",void 0),t([d({type:Boolean,reflect:!0})],y.prototype,"vertical",void 0),t([d({type:Array})],y.prototype,"value",void 0),t([d({type:Array})],y.prototype,"default",void 0),t([e("root")],y.prototype,"_root",void 0),t([c("[part=handle]")],y.prototype,"_handles",void 0),t([v()],y.prototype,"lastFocus",void 0),y=t([r(g),a(l`:host{${w}--handle-active:var(${m.active});${w}--track-width:.5em;${w}--length:var(${m.input}-width);background:var(${m.input}-background);display:block;width:var(${w}--length)}:host([contents]) [part=root]{width:inherit}:host([vertical]){height:var(${w}--length);width:-moz-fit-content;width:fit-content}:host(:not([disabled])) .last-focus{${w}--handle-scale:1.05;background:var(${w}--handle-active)}[part=root]{position:relative;width:100%;--from:0%;--to:50%;height:var(${w}--track-width)}[part=root],[part=track]{border-radius:inherit;min-height:inherit}[part=track]{background:var(${m.active});height:100%;justify-content:space-between;left:min(var(--from),var(--to));pointer-events:none;width:max(calc(var(--to) - var(--from)),calc(var(--from) - var(--to)))}[part=handle],[part=track]{display:flex;position:absolute}[part=handle]{align-items:center;background:var(${m.active});border:.1em solid;border-color:var(${m.input}-control);border-radius:50%;height:1em;justify-content:center;transform:scale(var(${w}--handle-scale,1)) translate(-50%,-25%);transform-origin:0 25%;-webkit-user-select:none;user-select:none;width:1em}`,l`[vertical]{height:inherit;width:var(${w}--track-width)}[vertical] i{transform:translate(-25%,-50%)}[vertical] [part=track]{height:max(calc(var(--to) - var(--from)),calc(var(--from) - var(--to)));left:0;top:min(var(--from),var(--to));width:100%}`,l`[part=handle]{left:var(--handle);top:0}[vertical] [part=handle]{left:0;top:var(--handle)}`)],y);var b=y;export{y as Range,b as default};
|
2
2
|
//# sourceMappingURL=range.js.map
|
package/components/range.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"range.js","sources":["../src/components/range.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Range","SuperInput","constructor","this","min","max","vertical","__focusStack","reverse","range","value","Array","isArray","rangeValue","padValue","len","miss","length","fill","concat","render","from","Math","to","gap","html","attr","observedRecord","disabled","_handleMousedownRoot","joinProperties","Object","fromEntries","map","index","
|
1
|
+
{"version":3,"file":"range.js","sources":["../src/components/range.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Range","SuperInput","constructor","this","min","max","vertical","__focusStack","reverse","range","value","Array","isArray","rangeValue","padValue","len","miss","length","fill","concat","render","from","Math","to","gap","html","attr","observedRecord","disabled","_handleMousedownRoot","joinProperties","Object","fromEntries","map","index","loop","_renderHandle","end","classList","lastFocus","createMouseDown","focusHandle","blurHandle","indexOf","indexOfFocusStack","splice","push","handleItem","_handles","item","focus","__keydownEvent","events","add","document","createKeydownEvent","dispatchEvent","CustomEvent","detail","undefined","remove","e","key","preventDefault","createSetValue","old","step","createMousedownListener","numberOrModifier","number","normalizeValue","newValue","_computeValue","rect","_root","getBoundingClientRect","div","clientY","top","height","clientX","left","width","round","reduce","acc","abs","set","mouseMoveCallback","stopPropagation","move","createMousemoveListener","stop","callback","call","_connectedInit","isNil","default","reset","sort","toSorted","a","b","__decorate","property","type","Number","prototype","Boolean","reflect","part","queryAll","state","godown","styles","css","cssGlobalVars","active","input","Range$1"],"mappings":"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"}
|
package/components/router.d.ts
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
import { RouteTree } from "@godown/element";
|
1
2
|
import { type PropertyValueMap, type TemplateResult } from "lit";
|
2
3
|
import { GlobalStyle } from "../core/global-style.js";
|
3
4
|
interface RouteState {
|
@@ -14,6 +15,12 @@ interface RouteItem {
|
|
14
15
|
render?: (state?: RouteState) => unknown;
|
15
16
|
component?: unknown;
|
16
17
|
}
|
18
|
+
declare const routerTypes: {
|
19
|
+
readonly field: "field";
|
20
|
+
readonly slotted: "slotted";
|
21
|
+
readonly united: "united";
|
22
|
+
};
|
23
|
+
type RouterType = keyof typeof routerTypes;
|
17
24
|
/**
|
18
25
|
* {@linkcode Router} has basic routing control.
|
19
26
|
*
|
@@ -69,7 +76,7 @@ declare class Router extends GlobalStyle {
|
|
69
76
|
*
|
70
77
|
* This property should not be changed after the rendering is complete.
|
71
78
|
*/
|
72
|
-
type:
|
79
|
+
type: RouterType;
|
73
80
|
/**
|
74
81
|
* Cache accessed records.
|
75
82
|
*
|
@@ -101,6 +108,7 @@ declare class Router extends GlobalStyle {
|
|
101
108
|
*/
|
102
109
|
collectFieldRoutes(value: typeof this.routes): void;
|
103
110
|
static updateAll(): void;
|
111
|
+
search(pathname: string): RouteTree;
|
104
112
|
handlePopstate: () => void;
|
105
113
|
}
|
106
114
|
export default Router;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/components/router.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/components/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAkC,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAO,MAAM,KAAK,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,UAAU,UAAU;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,WAAY,SAAQ,UAAU;IACtC,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,SAAS;IACjB,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,QAAA,MAAM,WAAW;;;;CAIP,CAAC;AAEX,KAAK,UAAU,GAAG,MAAM,OAAO,WAAW,CAAC;AAI3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,cAEM,MAAO,SAAQ,WAAW;IAC9B,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAqB;IAExD,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,kBAAkB,CAA8B;IACxD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,QAAQ,CAAc;IAE9B;;OAEG;IAEH,SAAS,EAAE,OAAO,GAAG,cAAc,CAAQ;IAE3C;;OAEG;IACH,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAKnC;IAED;;OAEG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAqB;IAErC;;OAEG;IAEH,OAAO,EAAE,cAAc,CAAc;IAErC;;;;;;OAMG;IAEH,IAAI,EAAE,UAAU,CAAsB;IAEtC;;;;OAIG;IAEH,KAAK,UAAS;IAEd,IACI,MAAM,CAAC,KAAK,EAKF,SAAS,EAAE,AALT,EAGf;IAED,IAAI,MAAM,IAAI,SAAS,EAAE,CAExB;IAED,KAAK,IAAI,IAAI;IAIb,SAAS,CAAC,MAAM,IAAI,OAAO;IAsB3B,iBAAiB,IAAI,IAAI;IAezB,oBAAoB,IAAI,IAAI;IAK5B,SAAS,IAAI,WAAW;IASxB,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI;IAWlE;;OAEG;IACH,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO;IAoBvC;;OAEG;IACH,gBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAiBnD;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAQ5B;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI;IAQnD,MAAM,CAAC,SAAS,IAAI,IAAI;IAMxB,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS;IAInC,cAAc,EAAE,MAAM,IAAI,CAEvB;CACJ;AAED,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/components/router.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{__decorate as t}from"tslib";import{godown as e,styles as s,RouteTree as o,htmlSlot as a,omit as
|
1
|
+
import{__decorate as t}from"tslib";import{godown as e,styles as s,RouteTree as o,htmlSlot as a,omit as h}from"@godown/element";import{css as i}from"lit";import{state as n,property as r}from"lit/decorators.js";import{GlobalStyle as p}from"../core/global-style.js";var c;const l="field",d="slotted",u="united";let m=c=class Router extends p{constructor(){super(...arguments),this.__fieldRouteTree=new o,this.__slottedRouteTree=new o,this.__cacheRecord=new Map,this.component=null,this.pathname=location.pathname,this.default=a(),this.type=u,this.cache=!1,this.handlePopstate=this.events.add(window,"popstate",(()=>{this.pathname=location.pathname}))}get params(){return this.path?o.parseParams(this.pathname,this.path):{}}set routes(t){this.__routes=t,this.collectFieldRoutes(t)}get routes(){return this.__routes}clear(){this.__cacheRecord.clear()}render(){let t;if(this.cache&&(t=this.__cacheRecord.get(this.pathname))&&(this.component=t.component,this.path=t.path,this.pathname=t.pathname),!t)switch(this.type){case l:this.component=this.fieldComponent();break;case d:this.component=this.slottedComponent();break;default:this.component=this.fieldComponent()??this.slottedComponent()}return this.component??this.default}connectedCallback(){if(super.connectedCallback(),c.routerInstances.add(this),"field"!==this.type){new MutationObserver(this.collectSlottedRoutes).observe(this,{attributeFilter:["slot"],attributes:!0,subtree:!0}),this.collectSlottedRoutes()}}disconnectedCallback(){super.disconnectedCallback(),c.routerInstances.delete(this)}useRouter(){return{pathname:this.pathname,params:this.params,path:this.path,component:this.component}}updated(t){if(t.has("pathname")||t.has("path")){const t=this.useRouter();!this.__cacheRecord.has(this.pathname)&&this.path&&this.__cacheRecord.set(this.pathname,t),this.dispatchEvent(new CustomEvent("change",{detail:t}))}}fieldComponent(t){if(t||=this.__fieldRouteTree.search(this.pathname)?.pattern,this.path=t,!t)return null;const e=this.routes.find((e=>e.path===t));return e?"render"in e?e.render?.(h(this.useRouter(),"component"))||null:e.component:null}slottedComponent(t){const e=this._slottedNames;return t||=this.__slottedRouteTree.search(this.pathname)?.pattern,this.path=t,t?(this.path=e.find((e=>e===t)),this.path?a(this.path):null):null}collectSlottedRoutes(){this.__slottedRouteTree=new o,this.clear(),this._slottedNames.forEach((t=>{this.__slottedRouteTree.insert(t)}))}collectFieldRoutes(t){this.__fieldRouteTree=new o,this.clear(),t.forEach((({path:t})=>{this.__fieldRouteTree.insert(t)}))}static updateAll(){this.routerInstances.forEach((t=>{t.handlePopstate()}))}search(t){return this.__fieldRouteTree.search(t)||this.__slottedRouteTree.search(t)}};m.routerInstances=new Set,t([n()],m.prototype,"component",void 0),t([n()],m.prototype,"path",void 0),t([r()],m.prototype,"pathname",void 0),t([n()],m.prototype,"default",void 0),t([r()],m.prototype,"type",void 0),t([r({type:Boolean})],m.prototype,"cache",void 0),t([n()],m.prototype,"routes",null),m=c=t([e("router"),s(i`:host{display:contents}`)],m);var _=m;export{m as Router,_ as default};
|
2
2
|
//# sourceMappingURL=router.js.map
|
package/components/router.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"router.js","sources":["../src/components/router.ts"],"sourcesContent":null,"names":["Router","Router_1","GlobalStyle","constructor","this","__fieldRouteTree","RouteTree","__slottedRouteTree","__cacheRecord","Map","component","pathname","location","default","htmlSlot","type","cache","handlePopstate","events","add","window","params","path","parseParams","routes","value","__routes","collectFieldRoutes","clear","render","cached","get","
|
1
|
+
{"version":3,"file":"router.js","sources":["../src/components/router.ts"],"sourcesContent":null,"names":["routerTypes","Router","Router_1","GlobalStyle","constructor","this","__fieldRouteTree","RouteTree","__slottedRouteTree","__cacheRecord","Map","component","pathname","location","default","htmlSlot","type","cache","handlePopstate","events","add","window","params","path","parseParams","routes","value","__routes","collectFieldRoutes","clear","render","cached","get","fieldComponent","slottedComponent","connectedCallback","super","routerInstances","MutationObserver","collectSlottedRoutes","observe","attributeFilter","attributes","subtree","disconnectedCallback","delete","useRouter","updated","changedProperties","has","ur","set","dispatchEvent","CustomEvent","detail","query","search","pattern","route","find","r","omit","slottedPaths","_slottedNames","s","forEach","slotName","insert","updateAll","i","Set","__decorate","state","prototype","undefined","property","Boolean","godown","styles","css","Router$1"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../src/components/split.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,
|
1
|
+
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../src/components/split.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAyC,MAAM,iBAAiB,CAAC;AAC3F,OAAO,EAAE,KAAK,cAAc,EAAa,MAAM,KAAK,CAAC;AAIrD,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAKhD;;;;;;;;;;;;GAYG;AACH,cAEM,KAAM,SAAQ,UAAU;IAC5B;;OAEG;IAEH,GAAG,SAAK;IAER;;OAEG;IAEH,KAAK,SAAM;IAGX,OAAO,SAAM;IAGb,YAAY,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAM;IAErC,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAUrC,iBAAiB,IAAI,IAAI;IAKzB,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,YAAY,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAAG,IAAI;IAY3E;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IA2C9C,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAMxB,IAAI,IAAI,IAAI;IAOZ,KAAK,IAAI,IAAI;CAQd;AAED,eAAe,KAAK,CAAC;AACrB,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
package/components/split.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{__decorate as t}from"tslib";import{godown as e,styles as
|
1
|
+
import{__decorate as t}from"tslib";import{godown as e,styles as i,attr as r,loop as s,classList as n}from"@godown/element";import{css as u,html as o}from"lit";import{property as l,state as c}from"lit/decorators.js";import{scopePrefix as a,cssGlobalVars as h}from"../core/global-style.js";import p from"../core/super-input.js";const d="split",b=a(d);let f=class Split extends p{constructor(){super(...arguments),this.len=6,this.index=-1,this.current=-1,this.currentValue=[]}render(){return o`<div part="root" ${r(this.observedRecord)}>${s(this.len,(t=>o`<span part="input-box" class="${n({focus:this.current===t})}" @click="${this.disabled?null:()=>this.focusAt(t)}">${this.currentValue[t]}</span>`))} <input part="input" id="${this.makeId}" @blur="${this.blur}" @input="${this._handleInput}" .value="${this.value.padStart(this.len," ")}"></div>`}connectedCallback(){super.connectedCallback(),this.reset()}_handleInput(t){t.stopPropagation(),this.compositing||(this.fillInput(t.data),this.value=this.currentValue.join(""),this.dispatchEvent(new CustomEvent("input",{detail:this.value,composed:!0,bubbles:!0})))}fillInput(t){if(null===t){if(null!==this.currentValue[this.current])this.currentValue[this.current]=null;else{this.currentValue[this.current-1]=null;const t=this.currentValue.findLastIndex((t=>null!==t));this.current=this.current-1<0?t<0?0:t:this.current-1}return}const e=t.length>1;if(this.currentValue[this.current]=t[0],this.current+1>=this.len?(this.current=this.currentValue.indexOf(null),-1===this.current&&this.blur()):this.current+=1,e){const e=t.slice(1);e&&this.fillInput(e)}}focus(){this.focusAt(this.current),super.focus()}focusAt(t){this.current=t,this._input.focus(),this.dispatchEvent(new CustomEvent("focus",{detail:t,bubbles:!0,composed:!0}))}blur(){this._input.blur(),this.current=-1,super.blur(),this.dispatchEvent(new CustomEvent("blur",{bubbles:!0,composed:!0}))}reset(){this.current=-1,this.value=this.default,this.currentValue=this.value.split("").concat(Array(this.len-this.value.length).fill(null)),this.index>-1&&(this.current=this.index)}};t([l({type:Number})],f.prototype,"len",void 0),t([l({type:Number})],f.prototype,"index",void 0),t([c()],f.prototype,"current",void 0),t([c()],f.prototype,"currentValue",void 0),f=t([e(d),i(u`:host{border-radius:1px;color:var(${h.foreground});display:block;width:-moz-fit-content;width:fit-content;${b}--size:1.45em;${b}--gap:.25em}:host([contents]) [part=root]{width:-moz-fit-content;width:fit-content}[part=root]{display:flex;gap:var(${b}--gap);justify-content:space-between;position:relative;width:100%}[part=input-box],[part=root]{border-radius:inherit;vertical-align:top}[part=input-box]{background-color:var(${h.input}-background);height:var(${b}--size);text-align:center;width:var(${b}--size)}[part=input]{background:none;height:100%;opacity:0;position:absolute;width:100%;z-index:-1}.focus{box-shadow:var(${h.input}-box-shadow)}`)],f);var v=f;export{f as Split,v as default};
|
2
2
|
//# sourceMappingURL=split.js.map
|
package/components/split.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"split.js","sources":["../src/components/split.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Split","SuperInput","constructor","this","len","index","current","currentValue","render","html","attr","observedRecord","
|
1
|
+
{"version":3,"file":"split.js","sources":["../src/components/split.ts"],"sourcesContent":null,"names":["protoName","cssScope","scopePrefix","Split","SuperInput","constructor","this","len","index","current","currentValue","render","html","attr","observedRecord","loop","classList","focus","disabled","focusAt","makeId","blur","_handleInput","value","padStart","connectedCallback","super","reset","e","stopPropagation","compositing","fillInput","data","join","dispatchEvent","CustomEvent","detail","composed","bubbles","lastNotNull","findLastIndex","a","multiple","length","indexOf","after","slice","i","_input","default","split","concat","Array","fill","__decorate","property","type","Number","prototype","undefined","state","godown","styles","css","cssGlobalVars","foreground","input","Split$1"],"mappings":"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"}
|
package/core/super-anchor.d.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"super-anchor.d.ts","sourceRoot":"","sources":["../src/core/super-anchor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,KAAK,CAAC;AAG9D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,cACM,WAAY,SAAQ,WAAW;IACnC;;OAEG;IAEH,IAAI,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"super-anchor.d.ts","sourceRoot":"","sources":["../src/core/super-anchor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAsB,MAAM,KAAK,CAAC;AAG9D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,cACM,WAAY,SAAQ,WAAW;IACnC;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IAEH,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAW;IAE1D,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,SAAS,CAAC,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC;IAIrC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;CAC5C;AAED,eAAe,WAAW,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
package/core/super-anchor.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
import{__decorate as
|
1
|
+
import{__decorate as t}from"tslib";import{styles as r,attr as o,htmlSlot as e}from"@godown/element";import{css as i,html as l,nothing as a}from"lit";import{property as n}from"lit/decorators.js";import{GlobalStyle as s}from"./global-style.js";let h=class SuperAnchor extends s{constructor(){super(...arguments),this.target="_self"}get pathname(){return new URL(this.href,location.href).pathname}render(){return l`<a part="root" ${o(this.observedRecord)} href="${this.href||a}" target="${this.target}" @click="${this._handleClick}">${e()}</a>`}_handleClick(t){}};t([n()],h.prototype,"href",void 0),t([n()],h.prototype,"target",void 0),h=t([r(i`:host{color:currentColor;cursor:default;display:inline-block;text-decoration:none}:host([href]){cursor:pointer}[part=root]{color:inherit;display:inline-block;text-decoration:inherit;width:100%}`)],h);var c=h;export{h as SuperAnchor,c as default};
|
2
2
|
//# sourceMappingURL=super-anchor.js.map
|
package/core/super-anchor.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"super-anchor.js","sources":["../src/core/super-anchor.ts"],"sourcesContent":null,"names":["SuperAnchor","GlobalStyle","constructor","this","
|
1
|
+
{"version":3,"file":"super-anchor.js","sources":["../src/core/super-anchor.ts"],"sourcesContent":null,"names":["SuperAnchor","GlobalStyle","constructor","this","target","pathname","URL","href","location","render","html","attr","observedRecord","nothing","_handleClick","htmlSlot","_","__decorate","property","prototype","undefined","styles","css","SuperAnchor$1"],"mappings":"kPAOA,IAAMA,EAAN,MAAMA,oBAAoBC,EAA1B,WAAAC,uBAUEC,KAAMC,OAA4C,QAElD,YAAIC,GACF,OAAO,IAAIC,IAAIH,KAAKI,KAAMC,SAASD,MAAMF,SAGjC,MAAAI,GACR,OAAOC,CAAI,kBAGLC,EAAKR,KAAKS,yBACJT,KAAKI,MAAQM,cACXV,KAAKC,mBACND,KAAKW,iBAEZC,UAKE,YAAAD,CAAaE,GAAa,GAzBpCC,EAAA,CADCC,KACWlB,EAAAmB,UAAA,YAAAC,GAKZH,EAAA,CADCC,KACwDlB,EAAAmB,UAAA,cAAAC,GAVrDpB,EAAWiB,EAAA,CADhBI,EAAOC,CAAG,sMACLtB,GAiCN,IAAAuB,EAAevB"}
|