epublib 0.0.0 → 0.1.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.
Files changed (44) hide show
  1. package/dist/epub.d.ts +274 -0
  2. package/dist/epub.d.ts.map +1 -0
  3. package/dist/epub.js +367 -0
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +3 -0
  7. package/dist/schemas/epub/containerXml.d.ts +18 -0
  8. package/dist/schemas/epub/containerXml.d.ts.map +1 -0
  9. package/dist/schemas/epub/containerXml.js +14 -0
  10. package/dist/schemas/epub/dublinCore.d.ts +393 -0
  11. package/dist/schemas/epub/dublinCore.d.ts.map +1 -0
  12. package/dist/schemas/epub/dublinCore.js +39 -0
  13. package/dist/schemas/epub/global.d.ts +2126 -0
  14. package/dist/schemas/epub/global.d.ts.map +1 -0
  15. package/dist/schemas/epub/global.js +48 -0
  16. package/dist/schemas/epub/packageOpf.d.ts +18 -0
  17. package/dist/schemas/epub/packageOpf.d.ts.map +1 -0
  18. package/dist/schemas/epub/packageOpf.js +20 -0
  19. package/dist/schemas/epub2/packageOpf.d.ts +2253 -0
  20. package/dist/schemas/epub2/packageOpf.d.ts.map +1 -0
  21. package/dist/schemas/epub2/packageOpf.js +57 -0
  22. package/dist/schemas/epub3/global.d.ts +8 -0
  23. package/dist/schemas/epub3/global.d.ts.map +1 -0
  24. package/dist/schemas/epub3/global.js +2 -0
  25. package/dist/schemas/epub3/packageOpf.d.ts +2406 -0
  26. package/dist/schemas/epub3/packageOpf.d.ts.map +1 -0
  27. package/dist/schemas/epub3/packageOpf.js +75 -0
  28. package/dist/schemas/global.d.ts +33 -0
  29. package/dist/schemas/global.d.ts.map +1 -0
  30. package/dist/schemas/global.js +94 -0
  31. package/dist/schemas/loc.d.ts +316 -0
  32. package/dist/schemas/loc.d.ts.map +1 -0
  33. package/dist/schemas/loc.js +314 -0
  34. package/dist/utils/html.d.ts +2 -0
  35. package/dist/utils/html.d.ts.map +1 -0
  36. package/dist/utils/html.js +4 -0
  37. package/dist/utils/mime.d.ts +3 -0
  38. package/dist/utils/mime.d.ts.map +1 -0
  39. package/dist/utils/mime.js +6 -0
  40. package/dist/utils/xml.d.ts +4 -0
  41. package/dist/utils/xml.d.ts.map +1 -0
  42. package/dist/utils/xml.js +11 -0
  43. package/package.json +49 -5
  44. package/index.js +0 -1
@@ -0,0 +1,314 @@
1
+ import z from "zod";
2
+ /**
3
+ * Relator terms and their associated codes designate the relationship between an agent and a bibliographic resource.
4
+ * @see {@link https://id.loc.gov/vocabulary/relators.html}
5
+ */
6
+ export const LOCRelator = z.enum([
7
+ "abr",
8
+ "acp",
9
+ "act",
10
+ "adi",
11
+ "adp",
12
+ "aft",
13
+ "anc",
14
+ "anl",
15
+ "anm",
16
+ "ann",
17
+ "ant",
18
+ "ape",
19
+ "apl",
20
+ "app",
21
+ "aqt",
22
+ "arc",
23
+ "ard",
24
+ "arr",
25
+ "art",
26
+ "asg",
27
+ "asn",
28
+ "ato",
29
+ "att",
30
+ "auc",
31
+ "aud",
32
+ "aue",
33
+ "aui",
34
+ "aup",
35
+ "aus",
36
+ "aut",
37
+ "bdd",
38
+ "bjd",
39
+ "bka",
40
+ "bkd",
41
+ "bkp",
42
+ "blw",
43
+ "bnd",
44
+ "bpd",
45
+ "brd",
46
+ "brl",
47
+ "bsl",
48
+ "cad",
49
+ "cas",
50
+ "ccp",
51
+ "chr",
52
+ "cli",
53
+ "cll",
54
+ "clr",
55
+ "clt",
56
+ "cmm",
57
+ "cmp",
58
+ "cmt",
59
+ "cnd",
60
+ "cng",
61
+ "cns",
62
+ "coe",
63
+ "col",
64
+ "com",
65
+ "con",
66
+ "cop",
67
+ "cor",
68
+ "cos",
69
+ "cot",
70
+ "cou",
71
+ "cov",
72
+ "cpc",
73
+ "cpe",
74
+ "cph",
75
+ "cpl",
76
+ "cpt",
77
+ "cre",
78
+ "crf",
79
+ "crp",
80
+ "crr",
81
+ "crt",
82
+ "csl",
83
+ "csp",
84
+ "cst",
85
+ "ctb",
86
+ "cte",
87
+ "ctg",
88
+ "ctr",
89
+ "cts",
90
+ "ctt",
91
+ "cur",
92
+ "cwt",
93
+ "dbd",
94
+ "dbp",
95
+ "dfd",
96
+ "dfe",
97
+ "dft",
98
+ "dgc",
99
+ "dgg",
100
+ "dgs",
101
+ "dis",
102
+ "djo",
103
+ "dln",
104
+ "dnc",
105
+ "dnr",
106
+ "dpc",
107
+ "dpt",
108
+ "drm",
109
+ "drt",
110
+ "dsr",
111
+ "dst",
112
+ "dtc",
113
+ "dte",
114
+ "dtm",
115
+ "dto",
116
+ "dub",
117
+ "edc",
118
+ "edd",
119
+ "edm",
120
+ "edt",
121
+ "egr",
122
+ "elg",
123
+ "elt",
124
+ "eng",
125
+ "enj",
126
+ "etr",
127
+ "evp",
128
+ "exp",
129
+ "fac",
130
+ "fds",
131
+ "fld",
132
+ "flm",
133
+ "fmd",
134
+ "fmk",
135
+ "fmo",
136
+ "fmp",
137
+ "fnd",
138
+ "fon",
139
+ "fpy",
140
+ "frg",
141
+ "gdv",
142
+ "gis",
143
+ "his",
144
+ "hnr",
145
+ "hst",
146
+ "ill",
147
+ "ilu",
148
+ "ink",
149
+ "ins",
150
+ "inv",
151
+ "isb",
152
+ "itr",
153
+ "ive",
154
+ "ivr",
155
+ "jud",
156
+ "jug",
157
+ "lbr",
158
+ "lbt",
159
+ "ldr",
160
+ "led",
161
+ "lee",
162
+ "lel",
163
+ "len",
164
+ "let",
165
+ "lgd",
166
+ "lie",
167
+ "lil",
168
+ "lit",
169
+ "lsa",
170
+ "lse",
171
+ "lso",
172
+ "ltg",
173
+ "ltr",
174
+ "lyr",
175
+ "mcp",
176
+ "mdc",
177
+ "med",
178
+ "mem",
179
+ "mfp",
180
+ "mfr",
181
+ "mka",
182
+ "mod",
183
+ "mon",
184
+ "mrb",
185
+ "mrk",
186
+ "msd",
187
+ "mte",
188
+ "mtk",
189
+ "mup",
190
+ "mus",
191
+ "mxe",
192
+ "nan",
193
+ "nrt",
194
+ "onp",
195
+ "opn",
196
+ "org",
197
+ "orm",
198
+ "osp",
199
+ "oth",
200
+ "own",
201
+ "pad",
202
+ "pan",
203
+ "pat",
204
+ "pbd",
205
+ "pbl",
206
+ "pdr",
207
+ "pfr",
208
+ "pht",
209
+ "plt",
210
+ "pma",
211
+ "pmn",
212
+ "pnc",
213
+ "pop",
214
+ "ppm",
215
+ "ppt",
216
+ "pra",
217
+ "prc",
218
+ "prd",
219
+ "pre",
220
+ "prf",
221
+ "prg",
222
+ "prm",
223
+ "prn",
224
+ "pro",
225
+ "prp",
226
+ "prs",
227
+ "prt",
228
+ "prv",
229
+ "pta",
230
+ "pte",
231
+ "ptf",
232
+ "pth",
233
+ "ptt",
234
+ "pup",
235
+ "rap",
236
+ "rbr",
237
+ "rcd",
238
+ "rce",
239
+ "rcp",
240
+ "rdd",
241
+ "red",
242
+ "ren",
243
+ "res",
244
+ "rev",
245
+ "rpc",
246
+ "rps",
247
+ "rpt",
248
+ "rpy",
249
+ "rse",
250
+ "rsg",
251
+ "rsp",
252
+ "rsr",
253
+ "rst",
254
+ "rth",
255
+ "rtm",
256
+ "rxa",
257
+ "sad",
258
+ "sce",
259
+ "scl",
260
+ "scr",
261
+ "sde",
262
+ "sds",
263
+ "sec",
264
+ "sfx",
265
+ "sgd",
266
+ "sgn",
267
+ "sht",
268
+ "sll",
269
+ "sng",
270
+ "spk",
271
+ "spn",
272
+ "spy",
273
+ "srv",
274
+ "std",
275
+ "stg",
276
+ "stl",
277
+ "stm",
278
+ "stn",
279
+ "str",
280
+ "swd",
281
+ "tad",
282
+ "tau",
283
+ "tcd",
284
+ "tch",
285
+ "ths",
286
+ "tld",
287
+ "tlg",
288
+ "tlh",
289
+ "tlp",
290
+ "trc",
291
+ "trl",
292
+ "tyd",
293
+ "tyg",
294
+ "uvp",
295
+ "vac",
296
+ "vdg",
297
+ "vfx",
298
+ "voc",
299
+ "wac",
300
+ "wal",
301
+ "wam",
302
+ "wat",
303
+ "waw",
304
+ "wdc",
305
+ "wde",
306
+ "wfs",
307
+ "wft",
308
+ "wfw",
309
+ "win",
310
+ "wit",
311
+ "wpr",
312
+ "wst",
313
+ "wts",
314
+ ]);
@@ -0,0 +1,2 @@
1
+ export declare function sanitizeHTMLString(dirty: string): string;
2
+ //# sourceMappingURL=html.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/utils/html.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD"}
@@ -0,0 +1,4 @@
1
+ import DOMPurify from "isomorphic-dompurify";
2
+ export function sanitizeHTMLString(dirty) {
3
+ return DOMPurify.sanitize(dirty, { USE_PROFILES: { html: true } });
4
+ }
@@ -0,0 +1,3 @@
1
+ import { Mime } from "mime/lite";
2
+ export declare const CustomMime: Mime;
3
+ //# sourceMappingURL=mime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mime.d.ts","sourceRoot":"","sources":["../../src/utils/mime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,eAAO,MAAM,UAAU,MAErB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Mime } from "mime/lite";
2
+ import otherTypes from "mime/types/other.js";
3
+ import standardTypes from "mime/types/standard.js";
4
+ export const CustomMime = new Mime(standardTypes, otherTypes, {
5
+ "application/adobe-page-template+xml": ["xpgt"],
6
+ });
@@ -0,0 +1,4 @@
1
+ import { XMLBuilder, XMLParser } from "fast-xml-parser";
2
+ export declare const xmlParser: XMLParser;
3
+ export declare const xmlBuilder: XMLBuilder;
4
+ //# sourceMappingURL=xml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../src/utils/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAExD,eAAO,MAAM,SAAS,WAMpB,CAAC;AAEH,eAAO,MAAM,UAAU,YAErB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { XMLBuilder, XMLParser } from "fast-xml-parser";
2
+ export const xmlParser = new XMLParser({
3
+ ignoreAttributes: false,
4
+ parseAttributeValue: false,
5
+ parseTagValue: false,
6
+ // preserveOrder: true,
7
+ alwaysCreateTextNode: true,
8
+ });
9
+ export const xmlBuilder = new XMLBuilder({
10
+ ignoreAttributes: false,
11
+ });
package/package.json CHANGED
@@ -1,10 +1,54 @@
1
1
  {
2
2
  "name": "epublib",
3
- "version": "0.0.0",
4
- "description": "",
5
- "main": "index.js",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "files": [
8
+ "dist/"
9
+ ],
6
10
  "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
11
+ "format": "prettier --cache --write .",
12
+ "lint": "prettier --cache --check . && eslint --cache --stats .",
13
+ "deploy": "dotenvx run -- npm publish --access=public",
14
+ "deploy:dry": "dotenvx run -- npm publish --access=public --dry-run=true",
15
+ "prepublishOnly": "npm run build",
16
+ "build": "rimraf -g dist/* tsconfig.tsbuildinfo && dotenvx run -- tsc --build",
17
+ "test": "vitest",
18
+ "coverage": "vitest run --coverage"
8
19
  },
9
- "type": "commonjs"
20
+ "publishConfig": {
21
+ "access": "public"
22
+ },
23
+ "author": "cortex1389",
24
+ "devDependencies": {
25
+ "@dotenvx/dotenvx": "^1.51.1",
26
+ "@eslint/compat": "^1.4.1",
27
+ "@eslint/js": "^9.39.1",
28
+ "@tsconfig/node-lts": "^22.0.2",
29
+ "@tsconfig/node-ts": "^23.6.1",
30
+ "@types/adm-zip": "^0.5.7",
31
+ "@types/language-tags": "^1.0.4",
32
+ "@types/semver": "^7.7.1",
33
+ "dotenv": "^17.2.3",
34
+ "eslint": "^9.39.1",
35
+ "eslint-config-prettier": "^10.1.8",
36
+ "globals": "^16.5.0",
37
+ "prettier": "^3.6.2",
38
+ "rimraf": "^6.1.0",
39
+ "typescript": "^5.9.3",
40
+ "typescript-eslint": "^8.46.3",
41
+ "vitest": "^4.0.6"
42
+ },
43
+ "dependencies": {
44
+ "adm-zip": "^0.5.16",
45
+ "fast-xml-parser": "^5.3.1",
46
+ "isbn3": "^1.2.18",
47
+ "isomorphic-dompurify": "^2.31.0",
48
+ "language-tags": "^2.1.0",
49
+ "mime": "^4.1.0",
50
+ "semver": "^7.7.3",
51
+ "temporal-polyfill": "^0.3.0",
52
+ "zod": "^4.1.12"
53
+ }
10
54
  }
package/index.js DELETED
@@ -1 +0,0 @@
1
- // empty