@gottheflag/nova 0.1.0-beta.2 → 0.1.0-beta.4
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/LICENSE +201 -0
- package/README.md +28 -4
- package/dist/adapters/index.d.ts +24 -23
- package/dist/adapters/index.js +74 -103
- package/dist/adapters/index.js.map +1 -1
- package/dist/core/index.d.ts +130 -71
- package/dist/core/index.js +155 -39
- package/dist/core/index.js.map +1 -1
- package/dist/loader/index.min.js +1 -1
- package/dist/storage/index.d.ts +87 -0
- package/dist/storage/index.js +88 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage-n1c3g6vy.d.ts +51 -0
- package/package.json +6 -2
- package/dist/chunk-7QVYU63E.js +0 -6
- package/dist/chunk-7QVYU63E.js.map +0 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { S as StateStorage, a as State } from '../storage-n1c3g6vy.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Copyright (c) 2026 GTF
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
interface LocalStorageOptions {
|
|
9
|
+
/**
|
|
10
|
+
* Local storage key.
|
|
11
|
+
*
|
|
12
|
+
* @default "theme"
|
|
13
|
+
*/
|
|
14
|
+
key?: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Simple local storage implementation that uses the browser's native `localStorage`.
|
|
18
|
+
*/
|
|
19
|
+
declare class LocalStorage implements StateStorage {
|
|
20
|
+
readonly key: string;
|
|
21
|
+
constructor(options?: LocalStorageOptions);
|
|
22
|
+
get(): State | null;
|
|
23
|
+
set(state: State): void;
|
|
24
|
+
remove(): void;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Copyright (c) 2026 GTF
|
|
29
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
interface CookieStorageOptions {
|
|
33
|
+
/**
|
|
34
|
+
* Cookie name.
|
|
35
|
+
*
|
|
36
|
+
* @default "theme"
|
|
37
|
+
*/
|
|
38
|
+
key?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Cookie path.
|
|
41
|
+
*
|
|
42
|
+
* @default "/"
|
|
43
|
+
*/
|
|
44
|
+
path?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Cookie domain.
|
|
47
|
+
*
|
|
48
|
+
* Example: ".nova.sa"
|
|
49
|
+
*/
|
|
50
|
+
domain?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Cookie lifetime in seconds.
|
|
53
|
+
*
|
|
54
|
+
* @default 31536000 (1 year)
|
|
55
|
+
*/
|
|
56
|
+
maxAge?: number;
|
|
57
|
+
/**
|
|
58
|
+
* SameSite policy.
|
|
59
|
+
*
|
|
60
|
+
* @default "Lax"
|
|
61
|
+
*/
|
|
62
|
+
sameSite?: "Strict" | "Lax" | "None";
|
|
63
|
+
/**
|
|
64
|
+
* Marks the cookie as secure.
|
|
65
|
+
*
|
|
66
|
+
* @default true if the page is served over HTTPS.
|
|
67
|
+
*/
|
|
68
|
+
secure?: boolean;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* A storage implementation that uses cookies to store the theme state.
|
|
72
|
+
*
|
|
73
|
+
* @description
|
|
74
|
+
* This storage implementation is suitable for use in a web application that
|
|
75
|
+
* wants to persist the theme state across sub-domains or across multiple
|
|
76
|
+
* applications on the same domain.
|
|
77
|
+
*/
|
|
78
|
+
declare class CookieStorage implements StateStorage {
|
|
79
|
+
private readonly options;
|
|
80
|
+
readonly key: string;
|
|
81
|
+
constructor(options?: CookieStorageOptions);
|
|
82
|
+
get(): State | null;
|
|
83
|
+
set(state: State): void;
|
|
84
|
+
remove(): void;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export { CookieStorage, LocalStorage };
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
|
+
|
|
4
|
+
// src/storage/local.ts
|
|
5
|
+
var LocalStorage = class {
|
|
6
|
+
static {
|
|
7
|
+
__name(this, "LocalStorage");
|
|
8
|
+
}
|
|
9
|
+
key;
|
|
10
|
+
constructor(options = {}) {
|
|
11
|
+
this.key = options.key ?? "theme";
|
|
12
|
+
}
|
|
13
|
+
get() {
|
|
14
|
+
try {
|
|
15
|
+
return localStorage.getItem(this.key);
|
|
16
|
+
} catch {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
set(state) {
|
|
21
|
+
try {
|
|
22
|
+
localStorage.setItem(this.key, state);
|
|
23
|
+
} catch {
|
|
24
|
+
console.warn("[LOCAL] Failed to write theme state.");
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
remove() {
|
|
28
|
+
try {
|
|
29
|
+
localStorage.removeItem(this.key);
|
|
30
|
+
} catch {
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
// src/storage/cookie.ts
|
|
36
|
+
var CookieStorage = class {
|
|
37
|
+
static {
|
|
38
|
+
__name(this, "CookieStorage");
|
|
39
|
+
}
|
|
40
|
+
options;
|
|
41
|
+
key;
|
|
42
|
+
constructor(options = {}) {
|
|
43
|
+
this.options = options;
|
|
44
|
+
this.key = options.key ?? "theme";
|
|
45
|
+
}
|
|
46
|
+
get() {
|
|
47
|
+
const prefix = `${encodeURIComponent(this.key)}=`;
|
|
48
|
+
for (const cookie of document.cookie.split(";")) {
|
|
49
|
+
const c = cookie.trim();
|
|
50
|
+
if (c.startsWith(prefix)) {
|
|
51
|
+
return decodeURIComponent(c.slice(prefix.length));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
set(state) {
|
|
57
|
+
const { path = "/", domain, maxAge = 60 * 60 * 24 * 365, sameSite = "Lax", secure = location.protocol === "https:" } = this.options;
|
|
58
|
+
const parts = [
|
|
59
|
+
`${encodeURIComponent(this.key)}=${encodeURIComponent(state)}`,
|
|
60
|
+
`Path=${path}`,
|
|
61
|
+
`Max-Age=${maxAge}`,
|
|
62
|
+
`SameSite=${sameSite}`
|
|
63
|
+
];
|
|
64
|
+
if (domain) {
|
|
65
|
+
parts.push(`Domain=${domain}`);
|
|
66
|
+
}
|
|
67
|
+
if (secure) {
|
|
68
|
+
parts.push(`Secure`);
|
|
69
|
+
}
|
|
70
|
+
document.cookie = parts.join("; ");
|
|
71
|
+
}
|
|
72
|
+
remove() {
|
|
73
|
+
const { path = "/", domain } = this.options;
|
|
74
|
+
const parts = [
|
|
75
|
+
`${encodeURIComponent(this.key)}=`,
|
|
76
|
+
`Max-Age=0`,
|
|
77
|
+
`Path=${path}`
|
|
78
|
+
];
|
|
79
|
+
if (domain) {
|
|
80
|
+
parts.push(`Domain=${domain}`);
|
|
81
|
+
}
|
|
82
|
+
document.cookie = parts.join("; ");
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export { CookieStorage, LocalStorage };
|
|
87
|
+
//# sourceMappingURL=index.js.map
|
|
88
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/storage/local.ts","../../src/storage/cookie.ts"],"names":["LocalStorage","key","options","get","localStorage","getItem","set","state","setItem","console","warn","remove","removeItem","CookieStorage","prefix","encodeURIComponent","cookie","document","split","c","trim","startsWith","decodeURIComponent","slice","length","path","domain","maxAge","sameSite","secure","location","protocol","parts","push","join"],"mappings":";;;;AAoBO,IAAMA,eAAN,MAAMA;EApBb;;;AAqBUC,EAAAA,GAAAA;EAET,WAAA,CAAYC,OAAAA,GAA+B,EAAC,EAAG;AAC9C,IAAA,IAAA,CAAKD,GAAAA,GAAMC,QAAQD,GAAAA,IAAO,OAAA;AAC3B,EAAA;EAEAE,GAAAA,GAAoB;AACnB,IAAA,IAAI;AACH,MAAA,OAAOC,YAAAA,CAAaC,OAAAA,CAAQ,IAAA,CAAKJ,GAAG,CAAA;IACrC,CAAA,CAAA,MAAQ;AACP,MAAA,OAAO,IAAA;AACR,IAAA;AACD,EAAA;AAEAK,EAAAA,GAAAA,CAAIC,KAAAA,EAAoB;AACvB,IAAA,IAAI;AACHH,MAAAA,YAAAA,CAAaI,OAAAA,CAAQ,IAAA,CAAKP,GAAAA,EAAKM,KAAAA,CAAAA;IAChC,CAAA,CAAA,MAAQ;AACPE,MAAAA,OAAAA,CAAQC,KAAK,sCAAA,CAAA;AACd,IAAA;AACD,EAAA;EAEAC,MAAAA,GAAe;AACd,IAAA,IAAI;AACHP,MAAAA,YAAAA,CAAaQ,UAAAA,CAAW,KAAKX,GAAG,CAAA;IACjC,CAAA,CAAA,MAAQ;AAAC,IAAA;AACV,EAAA;AACD;;;ACYO,IAAMY,gBAAN,MAAMA;EA5Db;;;;AA6DUZ,EAAAA,GAAAA;EAET,WAAA,CACkBC,OAAAA,GAAgC,EAAC,EACjD;SADgBA,OAAAA,GAAAA,OAAAA;AAEjB,IAAA,IAAA,CAAKD,GAAAA,GAAMC,QAAQD,GAAAA,IAAO,OAAA;AAC3B,EAAA;EAEAE,GAAAA,GAAoB;AACnB,IAAA,MAAMW,MAAAA,GAAS,CAAA,EAAGC,kBAAAA,CAAmB,IAAA,CAAKd,GAAG,CAAA,CAAA,CAAA,CAAA;AAE7C,IAAA,KAAA,MAAWe,MAAAA,IAAUC,QAAAA,CAASD,MAAAA,CAAOE,KAAAA,CAAM,GAAA,CAAA,EAAM;AAChD,MAAA,MAAMC,CAAAA,GAAIH,OAAOI,IAAAA,EAAI;AAErB,MAAA,IAAID,CAAAA,CAAEE,UAAAA,CAAWP,MAAAA,CAAAA,EAAS;AACzB,QAAA,OAAOQ,kBAAAA,CAAmBH,CAAAA,CAAEI,KAAAA,CAAMT,MAAAA,CAAOU,MAAM,CAAA,CAAA;AAChD,MAAA;AACD,IAAA;AAEA,IAAA,OAAO,IAAA;AACR,EAAA;AAEAlB,EAAAA,GAAAA,CAAIC,KAAAA,EAAoB;AACvB,IAAA,MAAM,EACLkB,IAAAA,GAAO,GAAA,EACPC,MAAAA,EACAC,MAAAA,GAAS,KAAK,EAAA,GAAK,EAAA,GAAK,GAAA,EACxBC,QAAAA,GAAW,OACXC,MAAAA,GAASC,QAAAA,CAASC,QAAAA,KAAa,QAAA,KAC5B,IAAA,CAAK7B,OAAAA;AAET,IAAA,MAAM8B,KAAAA,GAAQ;AACb,MAAA,CAAA,EAAGjB,mBAAmB,IAAA,CAAKd,GAAG,CAAA,CAAA,CAAA,EAAKc,kBAAAA,CAAmBR,KAAAA,CAAAA,CAAAA,CAAAA;AACtD,MAAA,CAAA,KAAA,EAAQkB,IAAAA,CAAAA,CAAAA;AACR,MAAA,CAAA,QAAA,EAAWE,MAAAA,CAAAA,CAAAA;AACX,MAAA,CAAA,SAAA,EAAYC,QAAAA,CAAAA;;AAGb,IAAA,IAAIF,MAAAA,EAAQ;AACXM,MAAAA,KAAAA,CAAMC,IAAAA,CAAK,CAAA,OAAA,EAAUP,MAAAA,CAAAA,CAAQ,CAAA;AAC9B,IAAA;AAEA,IAAA,IAAIG,MAAAA,EAAQ;AACXG,MAAAA,KAAAA,CAAMC,KAAK,CAAA,MAAA,CAAQ,CAAA;AACpB,IAAA;AAEAhB,IAAAA,QAAAA,CAASD,MAAAA,GAASgB,KAAAA,CAAME,IAAAA,CAAK,IAAA,CAAA;AAC9B,EAAA;EAEAvB,MAAAA,GAAe;AACd,IAAA,MAAM,EAAEc,IAAAA,GAAO,GAAA,EAAKC,MAAAA,KAAW,IAAA,CAAKxB,OAAAA;AAEpC,IAAA,MAAM8B,KAAAA,GAAQ;MACb,CAAA,EAAGjB,kBAAAA,CAAmB,IAAA,CAAKd,GAAG,CAAA,CAAA,CAAA,CAAA;AAC9B,MAAA,CAAA,SAAA,CAAA;AACA,MAAA,CAAA,KAAA,EAAQwB,IAAAA,CAAAA;;AAGT,IAAA,IAAIC,MAAAA,EAAQ;AACXM,MAAAA,KAAAA,CAAMC,IAAAA,CAAK,CAAA,OAAA,EAAUP,MAAAA,CAAAA,CAAQ,CAAA;AAC9B,IAAA;AAEAT,IAAAA,QAAAA,CAASD,MAAAA,GAASgB,KAAAA,CAAME,IAAAA,CAAK,IAAA,CAAA;AAC9B,EAAA;AACD","file":"index.js","sourcesContent":["/**\r\n * Copyright (c) 2026 GTF\r\n * SPDX-License-Identifier: Apache-2.0\r\n */\r\n\r\nimport { StateStorage } from \"../core/storage.js\";\r\nimport { State } from \"../core/types.js\";\r\n\r\nexport interface LocalStorageOptions {\r\n\t/**\r\n\t * Local storage key.\r\n\t * \r\n\t * @default \"theme\"\r\n\t */\r\n\tkey?: string;\r\n}\r\n\r\n/**\r\n * Simple local storage implementation that uses the browser's native `localStorage`.\r\n */\r\nexport class LocalStorage implements StateStorage {\r\n\treadonly key: string;\r\n\t\r\n\tconstructor(options: LocalStorageOptions = {}) {\r\n\t\tthis.key = options.key ?? \"theme\";\r\n\t}\r\n\t\r\n\tget(): State | null {\r\n\t\ttry {\r\n\t\t\treturn localStorage.getItem(this.key) as State | null;\r\n\t\t} catch {\r\n\t\t\treturn null;\r\n\t\t}\r\n\t}\r\n\r\n\tset(state: State): void {\r\n\t\ttry {\r\n\t\t\tlocalStorage.setItem(this.key, state);\r\n\t\t} catch {\r\n\t\t\tconsole.warn(\"[LOCAL] Failed to write theme state.\");\r\n\t\t}\r\n\t}\r\n\r\n\tremove(): void {\r\n\t\ttry {\r\n\t\t\tlocalStorage.removeItem(this.key);\r\n\t\t} catch {}\r\n\t}\r\n}","/**\r\n * Copyright (c) 2026 GTF\r\n * SPDX-License-Identifier: Apache-2.0\r\n */\r\n\r\nimport { StateStorage } from \"../core/storage.js\";\r\nimport { State } from \"../core/types.js\";\r\n\r\nexport interface CookieStorageOptions {\r\n\t/**\r\n\t * Cookie name.\r\n\t * \r\n\t * @default \"theme\"\r\n\t */\r\n\tkey?: string;\r\n\r\n\t/**\r\n\t * Cookie path.\r\n\t * \r\n\t * @default \"/\"\r\n\t */\r\n\tpath?: string;\r\n\r\n\t/**\r\n\t * Cookie domain.\r\n\t * \r\n\t * Example: \".nova.sa\"\r\n\t */\r\n\tdomain?: string;\r\n\r\n\t/**\r\n\t * Cookie lifetime in seconds.\r\n\t * \r\n\t * @default 31536000 (1 year)\r\n\t */\r\n\tmaxAge?: number;\r\n\r\n\t/**\r\n\t * SameSite policy.\r\n\t * \r\n\t * @default \"Lax\"\r\n\t */\r\n\tsameSite?: \"Strict\" | \"Lax\" | \"None\";\r\n\r\n\t/**\r\n\t * Marks the cookie as secure.\r\n\t *\r\n\t * @default true if the page is served over HTTPS.\r\n\t */\r\n\tsecure?: boolean;\r\n}\r\n\r\n/**\r\n * A storage implementation that uses cookies to store the theme state.\r\n * \r\n * @description\r\n * This storage implementation is suitable for use in a web application that\r\n * wants to persist the theme state across sub-domains or across multiple\r\n * applications on the same domain.\r\n */\r\nexport class CookieStorage implements StateStorage {\r\n\treadonly key: string;\r\n\t\r\n\tconstructor(\r\n\t\tprivate readonly options: CookieStorageOptions = {}\r\n\t) {\r\n\t\tthis.key = options.key ?? \"theme\";\r\n\t}\r\n\r\n\tget(): State | null {\r\n\t\tconst prefix = `${encodeURIComponent(this.key)}=`;\r\n\r\n\t\tfor (const cookie of document.cookie.split(\";\")) {\r\n\t\t\tconst c = cookie.trim();\r\n\t\t\t\r\n\t\t\tif (c.startsWith(prefix)) {\r\n\t\t\t\treturn decodeURIComponent(c.slice(prefix.length)) as State;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn null;\r\n\t}\r\n\r\n\tset(state: State): void {\r\n\t\tconst {\r\n\t\t\tpath = '/',\r\n\t\t\tdomain,\r\n\t\t\tmaxAge = 60 * 60 * 24 * 365,\r\n\t\t\tsameSite = \"Lax\",\r\n\t\t\tsecure = location.protocol === \"https:\"\r\n\t\t} = this.options;\r\n\r\n\t\tconst parts = [\r\n\t\t\t`${encodeURIComponent(this.key)}=${encodeURIComponent(state)}`,\r\n\t\t\t`Path=${path}`,\r\n\t\t\t`Max-Age=${maxAge}`,\r\n\t\t\t`SameSite=${sameSite}`,\r\n\t\t];\r\n\r\n\t\tif (domain) {\r\n\t\t\tparts.push(`Domain=${domain}`);\r\n\t\t}\r\n\r\n\t\tif (secure) {\r\n\t\t\tparts.push(`Secure`);\r\n\t\t}\r\n\r\n\t\tdocument.cookie = parts.join(\"; \");\r\n\t}\r\n\r\n\tremove(): void {\r\n\t\tconst { path = '/', domain } = this.options;\r\n\r\n\t\tconst parts = [\r\n\t\t\t`${encodeURIComponent(this.key)}=`,\r\n\t\t\t`Max-Age=0`,\r\n\t\t\t`Path=${path}`,\r\n\t\t];\r\n\r\n\t\tif (domain) {\r\n\t\t\tparts.push(`Domain=${domain}`);\r\n\t\t}\r\n\r\n\t\tdocument.cookie = parts.join(\"; \");\r\n\t}\r\n}"]}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2026 GTF
|
|
3
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Effective theme name (e.g. `day`, `night`, `mint`).
|
|
7
|
+
*/
|
|
8
|
+
type Name = string;
|
|
9
|
+
/**
|
|
10
|
+
* Theme state (`<dark>`, `<light>`, `<system>`).
|
|
11
|
+
* Different between state themes and effective themes:
|
|
12
|
+
* - State themes are the raw values used as identifiers (`<dark>`, `<light>`, `<system>`).
|
|
13
|
+
* - Effective themes are the resolved values (e.g. `<dark>`, `<light>`, `mint`).
|
|
14
|
+
*/
|
|
15
|
+
type State = "system" | "light" | "dark";
|
|
16
|
+
/**
|
|
17
|
+
* Emitted when the theme state changes.
|
|
18
|
+
*/
|
|
19
|
+
interface ChangeEvent {
|
|
20
|
+
from: State | null;
|
|
21
|
+
to: State;
|
|
22
|
+
theme: Name;
|
|
23
|
+
}
|
|
24
|
+
interface ApplyEvent {
|
|
25
|
+
theme: Name;
|
|
26
|
+
}
|
|
27
|
+
type NEvents = {
|
|
28
|
+
change: ChangeEvent;
|
|
29
|
+
apply: ApplyEvent;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Copyright (c) 2026 GTF
|
|
34
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* A storage interface for persisting the theme state.
|
|
39
|
+
*
|
|
40
|
+
* @description
|
|
41
|
+
* The theme state is persisted in a storage mechanism that is
|
|
42
|
+
* specific to the application. For example, a web application might
|
|
43
|
+
* use cookies, local storage, or a database.
|
|
44
|
+
*/
|
|
45
|
+
interface StateStorage {
|
|
46
|
+
get(): State | null;
|
|
47
|
+
set(state: State): void;
|
|
48
|
+
remove(): void;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export type { Name as N, StateStorage as S, State as a, NEvents as b };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gottheflag/nova",
|
|
3
|
-
"version": "0.1.0-beta.
|
|
3
|
+
"version": "0.1.0-beta.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": {
|
|
@@ -20,10 +20,14 @@
|
|
|
20
20
|
"./adapters": {
|
|
21
21
|
"types": "./dist/adapters/index.d.ts",
|
|
22
22
|
"import": "./dist/adapters/index.js"
|
|
23
|
+
},
|
|
24
|
+
"./storage": {
|
|
25
|
+
"types": "./dist/storage/index.d.ts",
|
|
26
|
+
"import": "./dist/storage/index.js"
|
|
23
27
|
}
|
|
24
28
|
},
|
|
25
29
|
"scripts": {
|
|
26
|
-
"
|
|
30
|
+
"test": "concurrently -k -n TS,VITE -c blue,green \"tsc -p tsconfig.build.json --watch\" \"vite example\"",
|
|
27
31
|
"build": "tsup",
|
|
28
32
|
"typecheck": "tsc --noEmit",
|
|
29
33
|
"prepare": "pnpm run build"
|
package/dist/chunk-7QVYU63E.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-7QVYU63E.js"}
|