@akanjs/client 0.0.53 → 0.0.55
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/index.cjs +17 -0
- package/index.js +1 -17
- package/package.json +8 -2
- package/src/cookie.cjs +142 -0
- package/src/cookie.js +50 -79
- package/src/createFont.cjs +29 -0
- package/src/createFont.js +6 -25
- package/src/csrTypes.cjs +51 -0
- package/src/csrTypes.js +14 -33
- package/src/device.cjs +127 -0
- package/src/device.js +15 -34
- package/src/index.cjs +23 -0
- package/src/index.js +7 -23
- package/src/navigation.cjs +47 -0
- package/src/navigation.js +9 -28
- package/src/router.cjs +214 -0
- package/src/router.js +26 -45
- package/src/storage.cjs +54 -0
- package/src/storage.js +14 -33
- package/src/types.cjs +28 -0
- package/src/types.js +6 -25
package/src/router.js
CHANGED
|
@@ -1,29 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var router_exports = {};
|
|
19
|
-
__export(router_exports, {
|
|
20
|
-
getPathInfo: () => getPathInfo,
|
|
21
|
-
router: () => router
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(router_exports);
|
|
24
|
-
var import_base = require("@akanjs/base");
|
|
25
|
-
var import_common = require("@akanjs/common");
|
|
26
|
-
var import_navigation = require("next/navigation");
|
|
1
|
+
import { baseClientEnv } from "@akanjs/base";
|
|
2
|
+
import { Logger } from "@akanjs/common";
|
|
3
|
+
import { notFound, redirect } from "next/navigation";
|
|
27
4
|
const getPathInfo = (href, lang, prefix) => {
|
|
28
5
|
const langLength = lang.length + 1;
|
|
29
6
|
const pathWithSubRoute = href === `/${lang}` ? "/" : href.startsWith(`/${lang}/`) ? href.slice(langLength) : href;
|
|
@@ -40,15 +17,15 @@ class Router {
|
|
|
40
17
|
#instance = {
|
|
41
18
|
push: (href) => {
|
|
42
19
|
const { pathname } = this.#getPathInfo(href);
|
|
43
|
-
|
|
44
|
-
if (
|
|
45
|
-
void
|
|
20
|
+
Logger.log(`push to:${pathname}`);
|
|
21
|
+
if (baseClientEnv.side === "server")
|
|
22
|
+
void redirect(pathname);
|
|
46
23
|
},
|
|
47
24
|
replace: (href) => {
|
|
48
25
|
const { pathname } = this.#getPathInfo(href);
|
|
49
|
-
|
|
50
|
-
if (
|
|
51
|
-
void
|
|
26
|
+
Logger.log(`replace to:${pathname}`);
|
|
27
|
+
if (baseClientEnv.side === "server")
|
|
28
|
+
void redirect(pathname);
|
|
52
29
|
},
|
|
53
30
|
back: () => {
|
|
54
31
|
throw new Error("back is only available in client");
|
|
@@ -67,7 +44,7 @@ class Router {
|
|
|
67
44
|
else
|
|
68
45
|
this.#initNextClientRouter(options);
|
|
69
46
|
this.isInitialized = true;
|
|
70
|
-
|
|
47
|
+
Logger.verbose("Router initialized");
|
|
71
48
|
}
|
|
72
49
|
#initNextServerRouter(options) {
|
|
73
50
|
}
|
|
@@ -133,7 +110,7 @@ class Router {
|
|
|
133
110
|
return getPathInfo(href, this.#lang, prefix);
|
|
134
111
|
}
|
|
135
112
|
#postPathChange({ path, pathname }) {
|
|
136
|
-
|
|
113
|
+
Logger.log(`pathChange-start:${path}`);
|
|
137
114
|
window.parent.postMessage({ type: "pathChange", path, pathname }, "*");
|
|
138
115
|
}
|
|
139
116
|
push(href) {
|
|
@@ -147,28 +124,28 @@ class Router {
|
|
|
147
124
|
return void 0;
|
|
148
125
|
}
|
|
149
126
|
back() {
|
|
150
|
-
if (
|
|
127
|
+
if (baseClientEnv.side === "server")
|
|
151
128
|
throw new Error("back is only available in client side");
|
|
152
129
|
this.#checkInitialized();
|
|
153
130
|
this.#instance.back();
|
|
154
131
|
return void 0;
|
|
155
132
|
}
|
|
156
133
|
refresh() {
|
|
157
|
-
if (
|
|
134
|
+
if (baseClientEnv.side === "server")
|
|
158
135
|
throw new Error("refresh is only available in client side");
|
|
159
136
|
this.#checkInitialized();
|
|
160
137
|
this.#instance.refresh();
|
|
161
138
|
return void 0;
|
|
162
139
|
}
|
|
163
140
|
async redirect(href) {
|
|
164
|
-
if (
|
|
141
|
+
if (baseClientEnv.side === "server") {
|
|
165
142
|
const nextHeaders = require("next/headers");
|
|
166
143
|
const headers = await nextHeaders.headers?.() ?? /* @__PURE__ */ new Map();
|
|
167
144
|
const lang = headers.get("x-locale") ?? this.#lang;
|
|
168
145
|
const basePath = headers.get("x-base-path");
|
|
169
146
|
const { pathname } = getPathInfo(href, lang, basePath ?? "");
|
|
170
|
-
|
|
171
|
-
|
|
147
|
+
Logger.log(`redirect to:${pathname}`);
|
|
148
|
+
redirect(pathname);
|
|
172
149
|
} else {
|
|
173
150
|
const { pathname } = getPathInfo(href, this.#lang, this.#prefix);
|
|
174
151
|
this.#instance.replace(pathname);
|
|
@@ -177,15 +154,15 @@ class Router {
|
|
|
177
154
|
}
|
|
178
155
|
notFound() {
|
|
179
156
|
this.#checkInitialized();
|
|
180
|
-
if (
|
|
181
|
-
|
|
182
|
-
|
|
157
|
+
if (baseClientEnv.side === "server") {
|
|
158
|
+
Logger.log(`redirect to:/404`);
|
|
159
|
+
notFound();
|
|
183
160
|
} else
|
|
184
161
|
this.#instance.replace("/404");
|
|
185
162
|
return void 0;
|
|
186
163
|
}
|
|
187
164
|
setLang(lang) {
|
|
188
|
-
if (
|
|
165
|
+
if (baseClientEnv.side === "server")
|
|
189
166
|
throw new Error("setLang is only available in client side");
|
|
190
167
|
this.#checkInitialized();
|
|
191
168
|
const { path } = getPathInfo(window.location.pathname, this.#lang, this.#prefix);
|
|
@@ -194,13 +171,13 @@ class Router {
|
|
|
194
171
|
return void 0;
|
|
195
172
|
}
|
|
196
173
|
getPath(pathname = window.location.pathname) {
|
|
197
|
-
if (
|
|
174
|
+
if (baseClientEnv.side === "server")
|
|
198
175
|
throw new Error("getPath is only available in client side");
|
|
199
176
|
const { path } = getPathInfo(pathname, this.#lang, this.#prefix);
|
|
200
177
|
return path;
|
|
201
178
|
}
|
|
202
179
|
getFullPath(withLang = true) {
|
|
203
|
-
if (
|
|
180
|
+
if (baseClientEnv.side === "server")
|
|
204
181
|
throw new Error("getPath is only available in client side");
|
|
205
182
|
return `${withLang ? `/${this.#lang}` : ""}/${this.#prefix}${this.getPath()}`;
|
|
206
183
|
}
|
|
@@ -212,3 +189,7 @@ class Router {
|
|
|
212
189
|
}
|
|
213
190
|
}
|
|
214
191
|
const router = new Router();
|
|
192
|
+
export {
|
|
193
|
+
getPathInfo,
|
|
194
|
+
router
|
|
195
|
+
};
|
package/src/storage.cjs
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var storage_exports = {};
|
|
19
|
+
__export(storage_exports, {
|
|
20
|
+
storage: () => storage
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(storage_exports);
|
|
23
|
+
var import_base = require("@akanjs/base");
|
|
24
|
+
var import_preferences = require("@capacitor/preferences");
|
|
25
|
+
const storage = {
|
|
26
|
+
getItem: async (key) => {
|
|
27
|
+
if (import_base.baseClientEnv.side === "server")
|
|
28
|
+
return;
|
|
29
|
+
if (import_base.baseClientEnv.renderMode === "ssr")
|
|
30
|
+
return localStorage.getItem(key);
|
|
31
|
+
else
|
|
32
|
+
return (await import_preferences.Preferences.get({ key })).value;
|
|
33
|
+
},
|
|
34
|
+
setItem: async (key, value) => {
|
|
35
|
+
if (import_base.baseClientEnv.side === "server")
|
|
36
|
+
return;
|
|
37
|
+
if (import_base.baseClientEnv.renderMode === "ssr") {
|
|
38
|
+
localStorage.setItem(key, value);
|
|
39
|
+
return;
|
|
40
|
+
} else {
|
|
41
|
+
await import_preferences.Preferences.set({ key, value });
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
removeItem: (key) => {
|
|
46
|
+
if (import_base.baseClientEnv.side === "server")
|
|
47
|
+
return;
|
|
48
|
+
if (import_base.baseClientEnv.renderMode === "ssr") {
|
|
49
|
+
localStorage.removeItem(key);
|
|
50
|
+
return;
|
|
51
|
+
} else
|
|
52
|
+
return import_preferences.Preferences.remove({ key });
|
|
53
|
+
}
|
|
54
|
+
};
|
package/src/storage.js
CHANGED
|
@@ -1,54 +1,35 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var storage_exports = {};
|
|
19
|
-
__export(storage_exports, {
|
|
20
|
-
storage: () => storage
|
|
21
|
-
});
|
|
22
|
-
module.exports = __toCommonJS(storage_exports);
|
|
23
|
-
var import_base = require("@akanjs/base");
|
|
24
|
-
var import_preferences = require("@capacitor/preferences");
|
|
1
|
+
import { baseClientEnv } from "@akanjs/base";
|
|
2
|
+
import { Preferences } from "@capacitor/preferences";
|
|
25
3
|
const storage = {
|
|
26
4
|
getItem: async (key) => {
|
|
27
|
-
if (
|
|
5
|
+
if (baseClientEnv.side === "server")
|
|
28
6
|
return;
|
|
29
|
-
if (
|
|
7
|
+
if (baseClientEnv.renderMode === "ssr")
|
|
30
8
|
return localStorage.getItem(key);
|
|
31
9
|
else
|
|
32
|
-
return (await
|
|
10
|
+
return (await Preferences.get({ key })).value;
|
|
33
11
|
},
|
|
34
12
|
setItem: async (key, value) => {
|
|
35
|
-
if (
|
|
13
|
+
if (baseClientEnv.side === "server")
|
|
36
14
|
return;
|
|
37
|
-
if (
|
|
15
|
+
if (baseClientEnv.renderMode === "ssr") {
|
|
38
16
|
localStorage.setItem(key, value);
|
|
39
17
|
return;
|
|
40
18
|
} else {
|
|
41
|
-
await
|
|
19
|
+
await Preferences.set({ key, value });
|
|
42
20
|
return;
|
|
43
21
|
}
|
|
44
22
|
},
|
|
45
23
|
removeItem: (key) => {
|
|
46
|
-
if (
|
|
24
|
+
if (baseClientEnv.side === "server")
|
|
47
25
|
return;
|
|
48
|
-
if (
|
|
26
|
+
if (baseClientEnv.renderMode === "ssr") {
|
|
49
27
|
localStorage.removeItem(key);
|
|
50
28
|
return;
|
|
51
29
|
} else
|
|
52
|
-
return
|
|
30
|
+
return Preferences.remove({ key });
|
|
53
31
|
}
|
|
54
32
|
};
|
|
33
|
+
export {
|
|
34
|
+
storage
|
|
35
|
+
};
|
package/src/types.cjs
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var types_exports = {};
|
|
19
|
+
__export(types_exports, {
|
|
20
|
+
clsx: () => clsx,
|
|
21
|
+
loadFonts: () => loadFonts
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(types_exports);
|
|
24
|
+
var import_clsx = require("clsx");
|
|
25
|
+
const clsx = (...args) => (0, import_clsx.clsx)(...args);
|
|
26
|
+
const loadFonts = (fonts) => {
|
|
27
|
+
return fonts.map(({ name, nextFont, paths }) => nextFont ?? { name, paths });
|
|
28
|
+
};
|
package/src/types.js
CHANGED
|
@@ -1,28 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
-
};
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
-
for (let key of __getOwnPropNames(from))
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
-
}
|
|
15
|
-
return to;
|
|
16
|
-
};
|
|
17
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
-
var types_exports = {};
|
|
19
|
-
__export(types_exports, {
|
|
20
|
-
clsx: () => clsx,
|
|
21
|
-
loadFonts: () => loadFonts
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(types_exports);
|
|
24
|
-
var import_clsx = require("clsx");
|
|
25
|
-
const clsx = (...args) => (0, import_clsx.clsx)(...args);
|
|
1
|
+
import { clsx as clsxLib } from "clsx";
|
|
2
|
+
const clsx = (...args) => clsxLib(...args);
|
|
26
3
|
const loadFonts = (fonts) => {
|
|
27
4
|
return fonts.map(({ name, nextFont, paths }) => nextFont ?? { name, paths });
|
|
28
5
|
};
|
|
6
|
+
export {
|
|
7
|
+
clsx,
|
|
8
|
+
loadFonts
|
|
9
|
+
};
|