@wcstack/router 1.3.14 → 1.3.16
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.ja.md +5 -1
- package/README.md +5 -1
- package/package.json +5 -4
- package/dist/GuardCancel.d.ts +0 -6
- package/dist/GuardCancel.d.ts.map +0 -1
- package/dist/GuardCancel.js +0 -8
- package/dist/GuardCancel.js.map +0 -1
- package/dist/Navigation.d.ts +0 -7
- package/dist/Navigation.d.ts.map +0 -1
- package/dist/Navigation.js +0 -11
- package/dist/Navigation.js.map +0 -1
- package/dist/applyRoute.d.ts +0 -3
- package/dist/applyRoute.d.ts.map +0 -1
- package/dist/applyRoute.js +0 -40
- package/dist/applyRoute.js.map +0 -1
- package/dist/assignParams.d.ts +0 -2
- package/dist/assignParams.d.ts.map +0 -1
- package/dist/assignParams.js +0 -52
- package/dist/assignParams.js.map +0 -1
- package/dist/bootstrapRouter.d.ts +0 -8
- package/dist/bootstrapRouter.d.ts.map +0 -1
- package/dist/bootstrapRouter.js +0 -14
- package/dist/bootstrapRouter.js.map +0 -1
- package/dist/builtinParamTypes.d.ts +0 -38
- package/dist/builtinParamTypes.d.ts.map +0 -1
- package/dist/builtinParamTypes.js +0 -79
- package/dist/builtinParamTypes.js.map +0 -1
- package/dist/components/Head.d.ts +0 -29
- package/dist/components/Head.d.ts.map +0 -1
- package/dist/components/Head.js +0 -173
- package/dist/components/Head.js.map +0 -1
- package/dist/components/Layout.d.ts +0 -15
- package/dist/components/Layout.d.ts.map +0 -1
- package/dist/components/Layout.js +0 -86
- package/dist/components/Layout.js.map +0 -1
- package/dist/components/LayoutOutlet.d.ts +0 -15
- package/dist/components/LayoutOutlet.d.ts.map +0 -1
- package/dist/components/LayoutOutlet.js +0 -101
- package/dist/components/LayoutOutlet.js.map +0 -1
- package/dist/components/Link.d.ts +0 -25
- package/dist/components/Link.d.ts.map +0 -1
- package/dist/components/Link.js +0 -155
- package/dist/components/Link.js.map +0 -1
- package/dist/components/Outlet.d.ts +0 -16
- package/dist/components/Outlet.d.ts.map +0 -1
- package/dist/components/Outlet.js +0 -46
- package/dist/components/Outlet.js.map +0 -1
- package/dist/components/Route.d.ts +0 -61
- package/dist/components/Route.d.ts.map +0 -1
- package/dist/components/Route.js +0 -348
- package/dist/components/Route.js.map +0 -1
- package/dist/components/Router.d.ts +0 -62
- package/dist/components/Router.d.ts.map +0 -1
- package/dist/components/Router.js +0 -237
- package/dist/components/Router.js.map +0 -1
- package/dist/components/types.d.ts +0 -86
- package/dist/components/types.d.ts.map +0 -1
- package/dist/components/types.js +0 -2
- package/dist/components/types.js.map +0 -1
- package/dist/config.d.ts +0 -5
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -53
- package/dist/config.js.map +0 -1
- package/dist/exports.d.ts +0 -3
- package/dist/exports.d.ts.map +0 -1
- package/dist/exports.js +0 -2
- package/dist/exports.js.map +0 -1
- package/dist/getCustomTagName.d.ts +0 -2
- package/dist/getCustomTagName.d.ts.map +0 -1
- package/dist/getCustomTagName.js +0 -12
- package/dist/getCustomTagName.js.map +0 -1
- package/dist/getUUID.d.ts +0 -2
- package/dist/getUUID.d.ts.map +0 -1
- package/dist/getUUID.js +0 -11
- package/dist/getUUID.js.map +0 -1
- package/dist/hideRoute.d.ts +0 -3
- package/dist/hideRoute.d.ts.map +0 -1
- package/dist/hideRoute.js +0 -7
- package/dist/hideRoute.js.map +0 -1
- package/dist/matchRoutes.d.ts +0 -3
- package/dist/matchRoutes.d.ts.map +0 -1
- package/dist/matchRoutes.js +0 -52
- package/dist/matchRoutes.js.map +0 -1
- package/dist/parse.d.ts +0 -3
- package/dist/parse.d.ts.map +0 -1
- package/dist/parse.js +0 -77
- package/dist/parse.js.map +0 -1
- package/dist/raiseError.d.ts +0 -2
- package/dist/raiseError.d.ts.map +0 -1
- package/dist/raiseError.js +0 -4
- package/dist/raiseError.js.map +0 -1
- package/dist/registerComponents.d.ts +0 -2
- package/dist/registerComponents.d.ts.map +0 -1
- package/dist/registerComponents.js +0 -33
- package/dist/registerComponents.js.map +0 -1
- package/dist/showRoute.d.ts +0 -3
- package/dist/showRoute.d.ts.map +0 -1
- package/dist/showRoute.js +0 -38
- package/dist/showRoute.js.map +0 -1
- package/dist/showRouteContent.d.ts +0 -3
- package/dist/showRouteContent.d.ts.map +0 -1
- package/dist/showRouteContent.js +0 -38
- package/dist/showRouteContent.js.map +0 -1
- package/dist/testPath.d.ts +0 -3
- package/dist/testPath.d.ts.map +0 -1
- package/dist/testPath.js +0 -85
- package/dist/testPath.js.map +0 -1
- package/dist/types.d.ts +0 -38
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { getUUID } from "../getUUID.js";
|
|
2
|
-
import { config } from "../config.js";
|
|
3
|
-
import { raiseError } from "../raiseError.js";
|
|
4
|
-
const cache = new Map();
|
|
5
|
-
export class Layout extends HTMLElement {
|
|
6
|
-
_uuid = getUUID();
|
|
7
|
-
_initialized = false;
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
}
|
|
11
|
-
async _loadTemplateFromSource(source) {
|
|
12
|
-
try {
|
|
13
|
-
const response = await fetch(source);
|
|
14
|
-
if (!response.ok) {
|
|
15
|
-
raiseError(`${config.tagNames.layout} failed to fetch layout from source: ${source}, status: ${response.status}`);
|
|
16
|
-
}
|
|
17
|
-
const templateContent = await response.text();
|
|
18
|
-
cache.set(source, templateContent);
|
|
19
|
-
return templateContent;
|
|
20
|
-
}
|
|
21
|
-
catch (error) {
|
|
22
|
-
raiseError(`${config.tagNames.layout} failed to load layout from source: ${source}, error: ${error}`);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
_loadTemplateFromDocument(id) {
|
|
26
|
-
const element = document.getElementById(`${id}`);
|
|
27
|
-
if (element) {
|
|
28
|
-
if (element instanceof HTMLTemplateElement) {
|
|
29
|
-
return element.innerHTML;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
|
-
async loadTemplate() {
|
|
35
|
-
const source = this.getAttribute('src');
|
|
36
|
-
const layoutId = this.getAttribute('layout');
|
|
37
|
-
if (source && layoutId) {
|
|
38
|
-
console.warn(`${config.tagNames.layout} have both "src" and "layout" attributes.`);
|
|
39
|
-
}
|
|
40
|
-
const template = document.createElement('template');
|
|
41
|
-
if (source) {
|
|
42
|
-
if (cache.has(source)) {
|
|
43
|
-
template.innerHTML = cache.get(source) || '';
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
template.innerHTML = await this._loadTemplateFromSource(source) || '';
|
|
47
|
-
cache.set(source, template.innerHTML);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
else if (layoutId) {
|
|
51
|
-
const templateContent = this._loadTemplateFromDocument(layoutId);
|
|
52
|
-
if (templateContent) {
|
|
53
|
-
template.innerHTML = templateContent;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
console.warn(`${config.tagNames.layout} could not find template with id "${layoutId}".`);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
return template;
|
|
60
|
-
}
|
|
61
|
-
get uuid() {
|
|
62
|
-
return this._uuid;
|
|
63
|
-
}
|
|
64
|
-
get enableShadowRoot() {
|
|
65
|
-
if (this.hasAttribute('enable-shadow-root')) {
|
|
66
|
-
return true;
|
|
67
|
-
}
|
|
68
|
-
else if (this.hasAttribute('disable-shadow-root')) {
|
|
69
|
-
return false;
|
|
70
|
-
}
|
|
71
|
-
return config.enableShadowRoot;
|
|
72
|
-
}
|
|
73
|
-
get name() {
|
|
74
|
-
// Layout 要素が DOM に挿入されないケース(parseで置換)でも name を取れるようにする
|
|
75
|
-
return this.getAttribute('name') || '';
|
|
76
|
-
}
|
|
77
|
-
_initialize() {
|
|
78
|
-
this._initialized = true;
|
|
79
|
-
}
|
|
80
|
-
connectedCallback() {
|
|
81
|
-
if (!this._initialized) {
|
|
82
|
-
this._initialize();
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
//# sourceMappingURL=Layout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../src/components/Layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;AAExC,MAAM,OAAO,MAAO,SAAQ,WAAW;IAC7B,KAAK,GAAW,OAAO,EAAE,CAAC;IAC1B,YAAY,GAAY,KAAK,CAAC;IACtC;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,MAAc;QAClD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,wCAAwC,MAAM,aAAa,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACpH,CAAC;YACD,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC9C,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACnC,OAAO,eAAe,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,uCAAuC,MAAM,YAAY,KAAK,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAEO,yBAAyB,CAAC,EAAU;QAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,CAAuB,CAAC;QACvE,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,OAAO,YAAY,mBAAmB,EAAE,CAAC;gBAC3C,OAAO,OAAO,CAAC,SAAS,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,2CAA2C,CAAC,CAAC;QACrF,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACtE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,EAAE,CAAC;YACpB,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,eAAe,EAAE,CAAC;gBACpB,QAAQ,CAAC,SAAS,GAAG,eAAe,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,qCAAqC,QAAQ,IAAI,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACpD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,MAAM,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED,IAAI,IAAI;QACN,uDAAuD;QACvD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ILayout, ILayoutOutlet } from "./types.js";
|
|
2
|
-
export declare class LayoutOutlet extends HTMLElement implements ILayoutOutlet {
|
|
3
|
-
private _layout;
|
|
4
|
-
private _initialized;
|
|
5
|
-
private _layoutChildNodes;
|
|
6
|
-
constructor();
|
|
7
|
-
get layout(): ILayout;
|
|
8
|
-
set layout(value: ILayout);
|
|
9
|
-
get name(): string;
|
|
10
|
-
private _initialize;
|
|
11
|
-
connectedCallback(): Promise<void>;
|
|
12
|
-
assignParams(params: Record<string, any>): void;
|
|
13
|
-
}
|
|
14
|
-
export declare function createLayoutOutlet(): LayoutOutlet;
|
|
15
|
-
//# sourceMappingURL=LayoutOutlet.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LayoutOutlet.d.ts","sourceRoot":"","sources":["../../src/components/LayoutOutlet.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEpD,qBAAa,YAAa,SAAQ,WAAY,YAAW,aAAa;IACpE,OAAO,CAAC,OAAO,CAAuD;IACtE,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,iBAAiB,CAAc;;IAKvC,IAAI,MAAM,IAAI,OAAO,CAKpB;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,EAGxB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;YAEa,WAAW;IAuDnB,iBAAiB;IAMvB,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;CAchD;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAEjD"}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { assignParams } from "../assignParams.js";
|
|
2
|
-
import { config } from "../config.js";
|
|
3
|
-
import { raiseError } from "../raiseError.js";
|
|
4
|
-
export class LayoutOutlet extends HTMLElement {
|
|
5
|
-
_layout = null;
|
|
6
|
-
_initialized = false;
|
|
7
|
-
_layoutChildNodes = [];
|
|
8
|
-
constructor() {
|
|
9
|
-
super();
|
|
10
|
-
}
|
|
11
|
-
get layout() {
|
|
12
|
-
if (!this._layout) {
|
|
13
|
-
raiseError(`${config.tagNames.layoutOutlet} has no layout.`);
|
|
14
|
-
}
|
|
15
|
-
return this._layout;
|
|
16
|
-
}
|
|
17
|
-
set layout(value) {
|
|
18
|
-
this._layout = value;
|
|
19
|
-
this.setAttribute('name', value.name);
|
|
20
|
-
}
|
|
21
|
-
get name() {
|
|
22
|
-
return this.layout.name;
|
|
23
|
-
}
|
|
24
|
-
async _initialize() {
|
|
25
|
-
this._initialized = true;
|
|
26
|
-
if (this.layout.enableShadowRoot) {
|
|
27
|
-
this.attachShadow({ mode: 'open' });
|
|
28
|
-
}
|
|
29
|
-
const template = await this.layout.loadTemplate();
|
|
30
|
-
if (this.shadowRoot) {
|
|
31
|
-
this.shadowRoot.appendChild(template.content.cloneNode(true));
|
|
32
|
-
for (const childNode of Array.from(this.layout.childNodes)) {
|
|
33
|
-
this._layoutChildNodes.push(childNode);
|
|
34
|
-
this.appendChild(childNode);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
const fragmentForTemplate = template.content.cloneNode(true);
|
|
39
|
-
const slotElementBySlotName = new Map();
|
|
40
|
-
fragmentForTemplate.querySelectorAll('slot').forEach((slotElement) => {
|
|
41
|
-
const slotName = slotElement.getAttribute('name') || '';
|
|
42
|
-
if (!slotElementBySlotName.has(slotName)) {
|
|
43
|
-
slotElementBySlotName.set(slotName, slotElement);
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
console.warn(`${config.tagNames.layoutOutlet} duplicate slot name "${slotName}" in layout template.`);
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
const fragmentBySlotName = new Map();
|
|
50
|
-
const fragmentForChildNodes = document.createDocumentFragment();
|
|
51
|
-
for (const childNode of Array.from(this.layout.childNodes)) {
|
|
52
|
-
this._layoutChildNodes.push(childNode);
|
|
53
|
-
if (childNode instanceof Element) {
|
|
54
|
-
const slotName = childNode.getAttribute('slot') || '';
|
|
55
|
-
if (slotName.length > 0 && slotElementBySlotName.has(slotName)) {
|
|
56
|
-
if (!fragmentBySlotName.has(slotName)) {
|
|
57
|
-
fragmentBySlotName.set(slotName, document.createDocumentFragment());
|
|
58
|
-
}
|
|
59
|
-
fragmentBySlotName.get(slotName)?.appendChild(childNode);
|
|
60
|
-
continue;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
fragmentForChildNodes.appendChild(childNode);
|
|
64
|
-
}
|
|
65
|
-
for (const [slotName, slotElement] of slotElementBySlotName) {
|
|
66
|
-
const fragment = fragmentBySlotName.get(slotName);
|
|
67
|
-
if (fragment) {
|
|
68
|
-
slotElement.replaceWith(fragment);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
const defaultSlot = slotElementBySlotName.get('');
|
|
72
|
-
if (defaultSlot) {
|
|
73
|
-
defaultSlot.replaceWith(fragmentForChildNodes);
|
|
74
|
-
}
|
|
75
|
-
this.appendChild(fragmentForTemplate);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
async connectedCallback() {
|
|
79
|
-
if (!this._initialized) {
|
|
80
|
-
await this._initialize();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
assignParams(params) {
|
|
84
|
-
for (const childNode of this._layoutChildNodes) {
|
|
85
|
-
if (childNode instanceof Element) {
|
|
86
|
-
childNode.querySelectorAll('[data-bind]').forEach((e) => {
|
|
87
|
-
// 子要素にパラメータを割り当て
|
|
88
|
-
assignParams(e, params);
|
|
89
|
-
});
|
|
90
|
-
if (childNode.hasAttribute('data-bind')) {
|
|
91
|
-
// 子要素にパラメータを割り当て
|
|
92
|
-
assignParams(childNode, params);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
export function createLayoutOutlet() {
|
|
99
|
-
return document.createElement(config.tagNames.layoutOutlet);
|
|
100
|
-
}
|
|
101
|
-
//# sourceMappingURL=LayoutOutlet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LayoutOutlet.js","sourceRoot":"","sources":["../../src/components/LayoutOutlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,MAAM,OAAO,YAAa,SAAQ,WAAW;IACnC,OAAO,GAAkD,IAAI,CAAC;IAC9D,YAAY,GAAY,KAAK,CAAC;IAC9B,iBAAiB,GAAW,EAAE,CAAC;IACvC;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,IAAI,MAAM;QACR,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,iBAAiB,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,IAAI,MAAM,CAAC,KAAc;QACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACjC,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAClD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9D,KAAI,MAAM,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,mBAAmB,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAqB,CAAC;YACjF,MAAM,qBAAqB,GAAyB,IAAI,GAAG,EAAE,CAAC;YAC9D,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;gBACnE,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBACxD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;gBACnD,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,yBAAyB,QAAQ,uBAAuB,CAAC,CAAC;gBACxG,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,kBAAkB,GAAkC,IAAI,GAAG,EAAE,CAAC;YACpE,MAAM,qBAAqB,GAAG,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YAChE,KAAI,MAAM,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1D,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvC,IAAI,SAAS,YAAY,OAAO,EAAE,CAAC;oBACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBACtD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC/D,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACtC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAC;wBACtE,CAAC;wBACD,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;wBACzD,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,qBAAqB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAC/C,CAAC;YACD,KAAI,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,qBAAqB,EAAE,CAAC;gBAC3D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAClD,IAAI,QAAQ,EAAE,CAAC;oBACb,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,MAAM,WAAW,GAAG,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAClD,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;YACjD,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,YAAY,CAAC,MAA2B;QACtC,KAAI,MAAM,SAAS,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC9C,IAAI,SAAS,YAAY,OAAO,EAAE,CAAC;gBACjC,SAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACtD,iBAAiB;oBACjB,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,IAAI,SAAS,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;oBACxC,iBAAiB;oBACjB,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAiB,CAAC;AAC9E,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Router } from "./Router";
|
|
2
|
-
import { ILink } from "./types";
|
|
3
|
-
export declare class Link extends HTMLElement implements ILink {
|
|
4
|
-
static get observedAttributes(): string[];
|
|
5
|
-
private _childNodeArray;
|
|
6
|
-
private _uuid;
|
|
7
|
-
private _path;
|
|
8
|
-
private _router;
|
|
9
|
-
private _anchorElement;
|
|
10
|
-
private _initialized;
|
|
11
|
-
private _onClick?;
|
|
12
|
-
constructor();
|
|
13
|
-
get uuid(): string;
|
|
14
|
-
get router(): Router;
|
|
15
|
-
private _initialize;
|
|
16
|
-
private _normalizePathname;
|
|
17
|
-
private _joinInternalPath;
|
|
18
|
-
private _setAnchorHref;
|
|
19
|
-
connectedCallback(): void;
|
|
20
|
-
disconnectedCallback(): void;
|
|
21
|
-
attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
|
|
22
|
-
private _updateActiveState;
|
|
23
|
-
get anchorElement(): HTMLAnchorElement | null;
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=Link.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/components/Link.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,qBAAa,IAAK,SAAQ,WAAY,YAAW,KAAK;IACpD,MAAM,KAAK,kBAAkB,IAAI,MAAM,EAAE,CAExC;IAED,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,QAAQ,CAAC,CAA0B;;IAM3C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,MAAM,IAAI,MAAM,CASnB;IAED,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,cAAc;IAYtB,iBAAiB;IA2CjB,oBAAoB;IAiBpB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAUvF,OAAO,CAAC,kBAAkB,CAaxB;IAEF,IAAI,aAAa,IAAI,iBAAiB,GAAG,IAAI,CAE5C;CACF"}
|
package/dist/components/Link.js
DELETED
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
import { config } from "../config";
|
|
2
|
-
import { getUUID } from "../getUUID";
|
|
3
|
-
import { raiseError } from "../raiseError";
|
|
4
|
-
import { getNavigation } from "../Navigation";
|
|
5
|
-
export class Link extends HTMLElement {
|
|
6
|
-
static get observedAttributes() {
|
|
7
|
-
return ['to'];
|
|
8
|
-
}
|
|
9
|
-
_childNodeArray = [];
|
|
10
|
-
_uuid = getUUID();
|
|
11
|
-
_path = "";
|
|
12
|
-
_router = null;
|
|
13
|
-
_anchorElement = null;
|
|
14
|
-
_initialized = false;
|
|
15
|
-
_onClick;
|
|
16
|
-
constructor() {
|
|
17
|
-
super();
|
|
18
|
-
}
|
|
19
|
-
get uuid() {
|
|
20
|
-
return this._uuid;
|
|
21
|
-
}
|
|
22
|
-
get router() {
|
|
23
|
-
if (this._router) {
|
|
24
|
-
return this._router;
|
|
25
|
-
}
|
|
26
|
-
const router = document.querySelector(config.tagNames.router);
|
|
27
|
-
if (router) {
|
|
28
|
-
return (this._router = router);
|
|
29
|
-
}
|
|
30
|
-
raiseError(`${config.tagNames.link} is not connected to a router.`);
|
|
31
|
-
}
|
|
32
|
-
_initialize() {
|
|
33
|
-
this.style.display = "none";
|
|
34
|
-
this._childNodeArray = Array.from(this.childNodes);
|
|
35
|
-
this._path = this.getAttribute('to') || '';
|
|
36
|
-
this._initialized = true;
|
|
37
|
-
}
|
|
38
|
-
_normalizePathname(path) {
|
|
39
|
-
let p = path || "/";
|
|
40
|
-
if (!p.startsWith("/"))
|
|
41
|
-
p = "/" + p;
|
|
42
|
-
p = p.replace(/\/{2,}/g, "/");
|
|
43
|
-
if (p.length > 1 && p.endsWith("/"))
|
|
44
|
-
p = p.slice(0, -1);
|
|
45
|
-
return p;
|
|
46
|
-
}
|
|
47
|
-
_joinInternalPath(basename, to) {
|
|
48
|
-
const base = (basename || "").replace(/\/{2,}/g, "/").replace(/\/$/, "");
|
|
49
|
-
const internal = to.startsWith("/") ? to : "/" + to;
|
|
50
|
-
const path = this._normalizePathname(internal);
|
|
51
|
-
if (!base)
|
|
52
|
-
return path;
|
|
53
|
-
if (path === "/")
|
|
54
|
-
return base + "/";
|
|
55
|
-
return base + path;
|
|
56
|
-
}
|
|
57
|
-
_setAnchorHref(anchor, path) {
|
|
58
|
-
if (path.startsWith('/')) {
|
|
59
|
-
anchor.href = this._joinInternalPath(this.router.basename, path);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
try {
|
|
63
|
-
anchor.href = new URL(path).toString();
|
|
64
|
-
}
|
|
65
|
-
catch {
|
|
66
|
-
raiseError(`[${config.tagNames.link}] Invalid URL in 'to' attribute: ${path}`);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
connectedCallback() {
|
|
71
|
-
if (!this._initialized) {
|
|
72
|
-
this._initialize();
|
|
73
|
-
}
|
|
74
|
-
const parentNode = this.parentNode;
|
|
75
|
-
if (!parentNode) {
|
|
76
|
-
// should not happen if connected
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
const nextSibling = this.nextSibling;
|
|
80
|
-
const link = document.createElement('a');
|
|
81
|
-
this._setAnchorHref(link, this._path);
|
|
82
|
-
for (const childNode of this._childNodeArray) {
|
|
83
|
-
link.appendChild(childNode);
|
|
84
|
-
}
|
|
85
|
-
if (nextSibling) {
|
|
86
|
-
parentNode.insertBefore(link, nextSibling);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
parentNode.appendChild(link);
|
|
90
|
-
}
|
|
91
|
-
this._anchorElement = link;
|
|
92
|
-
// ロケーション変更を監視
|
|
93
|
-
getNavigation()?.addEventListener('currententrychange', this._updateActiveState);
|
|
94
|
-
window.addEventListener('wcs:navigate', this._updateActiveState);
|
|
95
|
-
window.addEventListener('popstate', this._updateActiveState);
|
|
96
|
-
// Navigation API が無い場合は、クリックで router.navigate にフォールバック
|
|
97
|
-
if (this._path.startsWith('/') && !getNavigation()?.navigate) {
|
|
98
|
-
this._onClick = async (e) => {
|
|
99
|
-
// only left-click without modifiers
|
|
100
|
-
if (e.defaultPrevented)
|
|
101
|
-
return;
|
|
102
|
-
if (e.button !== 0)
|
|
103
|
-
return;
|
|
104
|
-
if (e.metaKey || e.ctrlKey || e.shiftKey || e.altKey)
|
|
105
|
-
return;
|
|
106
|
-
e.preventDefault();
|
|
107
|
-
await this.router.navigate(this._path);
|
|
108
|
-
this._updateActiveState();
|
|
109
|
-
};
|
|
110
|
-
link.addEventListener('click', this._onClick);
|
|
111
|
-
}
|
|
112
|
-
this._updateActiveState();
|
|
113
|
-
}
|
|
114
|
-
disconnectedCallback() {
|
|
115
|
-
getNavigation()?.removeEventListener('currententrychange', this._updateActiveState);
|
|
116
|
-
window.removeEventListener('wcs:navigate', this._updateActiveState);
|
|
117
|
-
window.removeEventListener('popstate', this._updateActiveState);
|
|
118
|
-
if (this._anchorElement) {
|
|
119
|
-
if (this._onClick) {
|
|
120
|
-
this._anchorElement.removeEventListener('click', this._onClick);
|
|
121
|
-
this._onClick = undefined;
|
|
122
|
-
}
|
|
123
|
-
this._anchorElement.remove();
|
|
124
|
-
this._anchorElement = null;
|
|
125
|
-
}
|
|
126
|
-
for (const childNode of this._childNodeArray) {
|
|
127
|
-
childNode.parentNode?.removeChild(childNode);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
attributeChangedCallback(name, oldValue, newValue) {
|
|
131
|
-
if (name === 'to' && oldValue !== newValue) {
|
|
132
|
-
this._path = newValue || '';
|
|
133
|
-
if (this._anchorElement) {
|
|
134
|
-
this._setAnchorHref(this._anchorElement, this._path);
|
|
135
|
-
this._updateActiveState();
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
_updateActiveState = () => {
|
|
140
|
-
const currentPath = this._normalizePathname(new URL(window.location.href).pathname);
|
|
141
|
-
const linkPath = this._normalizePathname(this._path.startsWith('/') ? this._joinInternalPath(this.router.basename, this._path) : this._path);
|
|
142
|
-
if (this._anchorElement) {
|
|
143
|
-
if (currentPath === linkPath) {
|
|
144
|
-
this._anchorElement.classList.add('active');
|
|
145
|
-
}
|
|
146
|
-
else {
|
|
147
|
-
this._anchorElement.classList.remove('active');
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
};
|
|
151
|
-
get anchorElement() {
|
|
152
|
-
return this._anchorElement;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
//# sourceMappingURL=Link.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Link.js","sourceRoot":"","sources":["../../src/components/Link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI9C,MAAM,OAAO,IAAK,SAAQ,WAAW;IACnC,MAAM,KAAK,kBAAkB;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAEO,eAAe,GAAW,EAAE,CAAC;IAC7B,KAAK,GAAW,OAAO,EAAE,CAAC;IAC1B,KAAK,GAAW,EAAE,CAAC;IACnB,OAAO,GAAkB,IAAI,CAAC;IAC9B,cAAc,GAA6B,IAAI,CAAC;IAChD,YAAY,GAAY,KAAK,CAAC;IAC9B,QAAQ,CAA2B;IAE3C;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAS,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;QACjC,CAAC;QACD,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,gCAAgC,CAAC,CAAC;IACtE,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,IAAI,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QACpC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,CAAC;IACX,CAAC;IAEO,iBAAiB,CAAC,QAAgB,EAAE,EAAU;QACpD,MAAM,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,IAAI,IAAI,KAAK,GAAG;YAAE,OAAO,IAAI,GAAG,GAAG,CAAC;QACpC,OAAO,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAEO,cAAc,CAAC,MAAyB,EAAC,IAAY;QAC3D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzC,CAAC;YAAC,MAAM,CAAC;gBACP,UAAU,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,oCAAoC,IAAI,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,iCAAiC;YACjC,OAAO;QACT,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,KAAI,MAAM,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAE3B,cAAc;QACd,aAAa,EAAE,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjF,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,kBAAmC,CAAC,CAAC;QAClF,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAmC,CAAC,CAAC;QAE9E,uDAAuD;QACvD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC;YAC7D,IAAI,CAAC,QAAQ,GAAG,KAAK,EAAE,CAAa,EAAE,EAAE;gBACtC,oCAAoC;gBACpC,IAAI,CAAC,CAAC,gBAAgB;oBAAE,OAAO;gBAC/B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO;gBAC3B,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM;oBAAE,OAAO;gBAC7D,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACvC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,CAAC,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,oBAAoB;QAClB,aAAa,EAAE,EAAE,mBAAmB,CAAC,oBAAoB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACpF,MAAM,CAAC,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,kBAAmC,CAAC,CAAC;QACrF,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAmC,CAAC,CAAC;QACjF,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChE,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC5B,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;YAC7B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,KAAI,MAAM,SAAS,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5C,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,wBAAwB,CAAC,IAAY,EAAE,QAAuB,EAAE,QAAuB;QACrF,IAAI,IAAI,KAAK,IAAI,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,KAAK,GAAG,QAAQ,IAAI,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAEO,kBAAkB,GAAG,GAAG,EAAE;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpF,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CACtC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CACnG,CAAC;QAEF,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;CACF"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { IOutlet, IRoute, IRouter } from "./types.js";
|
|
2
|
-
export declare class Outlet extends HTMLElement implements IOutlet {
|
|
3
|
-
private _routesNode;
|
|
4
|
-
private _lastRoutes;
|
|
5
|
-
private _initialized;
|
|
6
|
-
constructor();
|
|
7
|
-
get routesNode(): IRouter;
|
|
8
|
-
set routesNode(value: IRouter);
|
|
9
|
-
get rootNode(): HTMLElement | ShadowRoot;
|
|
10
|
-
get lastRoutes(): IRoute[];
|
|
11
|
-
set lastRoutes(value: IRoute[]);
|
|
12
|
-
private _initialize;
|
|
13
|
-
connectedCallback(): void;
|
|
14
|
-
}
|
|
15
|
-
export declare function createOutlet(): Outlet;
|
|
16
|
-
//# sourceMappingURL=Outlet.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Outlet.d.ts","sourceRoot":"","sources":["../../src/components/Outlet.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEtD,qBAAa,MAAO,SAAQ,WAAY,YAAW,OAAO;IACxD,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,YAAY,CAAkB;;IAKtC,IAAI,UAAU,IAAI,OAAO,CAKxB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,EAE5B;IAED,IAAI,QAAQ,IAAI,WAAW,GAAG,UAAU,CAKvC;IAED,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAE7B;IAED,OAAO,CAAC,WAAW;IAOnB,iBAAiB;CAKlB;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { config } from "../config.js";
|
|
2
|
-
import { raiseError } from "../raiseError.js";
|
|
3
|
-
export class Outlet extends HTMLElement {
|
|
4
|
-
_routesNode = null;
|
|
5
|
-
_lastRoutes = [];
|
|
6
|
-
_initialized = false;
|
|
7
|
-
constructor() {
|
|
8
|
-
super();
|
|
9
|
-
}
|
|
10
|
-
get routesNode() {
|
|
11
|
-
if (!this._routesNode) {
|
|
12
|
-
raiseError(`${config.tagNames.outlet} has no routesNode.`);
|
|
13
|
-
}
|
|
14
|
-
return this._routesNode;
|
|
15
|
-
}
|
|
16
|
-
set routesNode(value) {
|
|
17
|
-
this._routesNode = value;
|
|
18
|
-
}
|
|
19
|
-
get rootNode() {
|
|
20
|
-
if (this.shadowRoot) {
|
|
21
|
-
return this.shadowRoot;
|
|
22
|
-
}
|
|
23
|
-
return this;
|
|
24
|
-
}
|
|
25
|
-
get lastRoutes() {
|
|
26
|
-
return this._lastRoutes;
|
|
27
|
-
}
|
|
28
|
-
set lastRoutes(value) {
|
|
29
|
-
this._lastRoutes = [...value];
|
|
30
|
-
}
|
|
31
|
-
_initialize() {
|
|
32
|
-
if (config.enableShadowRoot) {
|
|
33
|
-
this.attachShadow({ mode: 'open' });
|
|
34
|
-
}
|
|
35
|
-
this._initialized = true;
|
|
36
|
-
}
|
|
37
|
-
connectedCallback() {
|
|
38
|
-
if (!this._initialized) {
|
|
39
|
-
this._initialize();
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
export function createOutlet() {
|
|
44
|
-
return document.createElement(config.tagNames.outlet);
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=Outlet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Outlet.js","sourceRoot":"","sources":["../../src/components/Outlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,MAAM,OAAO,MAAO,SAAQ,WAAW;IAC7B,WAAW,GAAmB,IAAI,CAAC;IACnC,WAAW,GAAa,EAAE,CAAC;IAC3B,YAAY,GAAY,KAAK,CAAC;IACtC;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,qBAAqB,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IACD,IAAI,UAAU,CAAC,KAAc;QAC3B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IACD,IAAI,UAAU,CAAC,KAAe;QAC5B,IAAI,CAAC,WAAW,GAAG,CAAE,GAAG,KAAK,CAAE,CAAC;IAClC,CAAC;IAEO,WAAW;QACjB,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAW,CAAC;AAClE,CAAC"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { IRouteMatchResult, IRoute, IRouter, GuardHandler, ISegmentInfo } from "./types.js";
|
|
2
|
-
export declare class Route extends HTMLElement implements IRoute {
|
|
3
|
-
private _name;
|
|
4
|
-
private _path;
|
|
5
|
-
private _routeParentNode;
|
|
6
|
-
private _routeChildNodes;
|
|
7
|
-
private _routerNode;
|
|
8
|
-
private _uuid;
|
|
9
|
-
private _placeHolder;
|
|
10
|
-
private _childNodeArray;
|
|
11
|
-
private _paramNames;
|
|
12
|
-
private _absoluteParamNames;
|
|
13
|
-
private _params;
|
|
14
|
-
private _typedParams;
|
|
15
|
-
private _weight;
|
|
16
|
-
private _absoluteWeight;
|
|
17
|
-
private _childIndex;
|
|
18
|
-
private _hasGuard;
|
|
19
|
-
private _guardHandler;
|
|
20
|
-
private _waitForSetGuardHandler;
|
|
21
|
-
private _resolveSetGuardHandler;
|
|
22
|
-
private _guardFallbackPath;
|
|
23
|
-
private _initialized;
|
|
24
|
-
private _isFallbackRoute;
|
|
25
|
-
private _segmentCount;
|
|
26
|
-
private _segmentInfos;
|
|
27
|
-
private _absoluteSegmentInfos;
|
|
28
|
-
constructor();
|
|
29
|
-
get routeParentNode(): IRoute | null;
|
|
30
|
-
get routeChildNodes(): IRoute[];
|
|
31
|
-
get routerNode(): IRouter;
|
|
32
|
-
get path(): string;
|
|
33
|
-
get isRelative(): boolean;
|
|
34
|
-
private _checkParentNode;
|
|
35
|
-
get absolutePath(): string;
|
|
36
|
-
get uuid(): string;
|
|
37
|
-
get placeHolder(): Comment;
|
|
38
|
-
get childNodeArray(): Node[];
|
|
39
|
-
get routes(): IRoute[];
|
|
40
|
-
get segmentInfos(): ISegmentInfo[];
|
|
41
|
-
get absoluteSegmentInfos(): ISegmentInfo[];
|
|
42
|
-
get params(): Record<string, string>;
|
|
43
|
-
get typedParams(): Record<string, any>;
|
|
44
|
-
get paramNames(): string[];
|
|
45
|
-
get absoluteParamNames(): string[];
|
|
46
|
-
get weight(): number;
|
|
47
|
-
get absoluteWeight(): number;
|
|
48
|
-
get childIndex(): number;
|
|
49
|
-
get name(): string;
|
|
50
|
-
guardCheck(matchResult: IRouteMatchResult): Promise<void>;
|
|
51
|
-
shouldChange(newParams: Record<string, string>): boolean;
|
|
52
|
-
get guardHandler(): GuardHandler;
|
|
53
|
-
set guardHandler(value: GuardHandler);
|
|
54
|
-
initialize(routerNode: IRouter, routeParentNode: IRoute | null): void;
|
|
55
|
-
get fullpath(): string;
|
|
56
|
-
get segmentCount(): number;
|
|
57
|
-
get absoluteSegmentCount(): number;
|
|
58
|
-
testAncestorNode(ancestorNode: IRoute): boolean;
|
|
59
|
-
clearParams(): void;
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=Route.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/components/Route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAe,YAAY,EAAE,MAAM,YAAY,CAAC;AAWzG,qBAAa,KAAM,SAAQ,WAAY,YAAW,MAAM;IACtD,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,gBAAgB,CAAgB;IACxC,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,YAAY,CAA4D;IAChF,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,mBAAmB,CAAuB;IAClD,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,uBAAuB,CAA8B;IAC7D,OAAO,CAAC,uBAAuB,CAA6B;IAC5D,OAAO,CAAC,kBAAkB,CAAc;IACxC,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,qBAAqB,CAA6B;;IAM1D,IAAI,eAAe,IAAI,MAAM,GAAG,IAAI,CAEnC;IAED,IAAI,eAAe,IAAI,MAAM,EAAE,CAE9B;IAED,IAAI,UAAU,IAAI,OAAO,CAKxB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,OAAO,CAAC,gBAAgB;IAoBxB,IAAI,YAAY,IAAI,MAAM,CAWzB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,cAAc,IAAI,IAAI,EAAE,CAK3B;IAED,IAAI,MAAM,IAAI,MAAM,EAAE,CAMrB;IAED,IAAI,YAAY,IAAI,YAAY,EAAE,CAEjC;IAGD,IAAI,oBAAoB,IAAI,YAAY,EAAE,CAYzC;IAED,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEnC;IAED,IAAI,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAErC;IAED,IAAI,UAAU,IAAI,MAAM,EAAE,CAWzB;IAED,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAYjC;IAED,IAAI,MAAM,IAAI,MAAM,CASnB;IAED,IAAI,cAAc,IAAI,MAAM,CAS3B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,UAAU,CAAC,WAAW,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAc/D,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO;IASxD,IAAI,YAAY,IAAI,YAAY,CAK/B;IACD,IAAI,YAAY,CAAC,KAAK,EAAE,YAAY,EAGnC;IAED,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAuGrE,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,YAAY,IAAI,MAAM,CAWzB;IAED,IAAI,oBAAoB,IAAI,MAAM,CAMjC;IAED,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAW/C,WAAW,IAAI,IAAI;CAIpB"}
|