Compare commits
15 Commits
cb627abe06
...
renovate/s
| Author | SHA1 | Date | |
|---|---|---|---|
| 6a922433cc | |||
| 2d6ba8a5a7 | |||
| cca8af0b93 | |||
| a8d8cb232d | |||
| 2840715cb6 | |||
| 5c6a07e87b | |||
| cd0dd430c6 | |||
| 115f5692e3 | |||
| 45c625994b | |||
| 93aea2e385 | |||
| d5a43e291c | |||
| f499b594da | |||
| 7beb704808 | |||
| 3f642f0a47 | |||
| c0450242ea |
@@ -1,9 +1,9 @@
|
|||||||
FROM node:22 AS builder
|
FROM node:24 AS builder
|
||||||
|
|
||||||
COPY . /src
|
COPY . /src
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
RUN npm install && node ./index.js
|
RUN npm install && node ./index.js
|
||||||
|
|
||||||
FROM caddy:2.10.0
|
FROM caddy:2.10.2
|
||||||
|
|
||||||
COPY --from=builder /src/build /usr/share/caddy
|
COPY --from=builder /src/build /usr/share/caddy
|
||||||
|
|||||||
183
package-lock.json
generated
183
package-lock.json
generated
@@ -40,25 +40,24 @@
|
|||||||
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
|
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
|
||||||
},
|
},
|
||||||
"node_modules/cheerio": {
|
"node_modules/cheerio": {
|
||||||
"version": "1.0.0",
|
"version": "1.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.1.2.tgz",
|
||||||
"integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==",
|
"integrity": "sha512-IkxPpb5rS/d1IiLbHMgfPuS0FgiWTtFIm/Nj+2woXDLTZ7fOT2eqzgYbdMlLweqlHbsZjxEChoVK+7iph7jyQg==",
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"cheerio-select": "^2.1.0",
|
"cheerio-select": "^2.1.0",
|
||||||
"dom-serializer": "^2.0.0",
|
"dom-serializer": "^2.0.0",
|
||||||
"domhandler": "^5.0.3",
|
"domhandler": "^5.0.3",
|
||||||
"domutils": "^3.1.0",
|
"domutils": "^3.2.2",
|
||||||
"encoding-sniffer": "^0.2.0",
|
"encoding-sniffer": "^0.2.1",
|
||||||
"htmlparser2": "^9.1.0",
|
"htmlparser2": "^10.0.0",
|
||||||
"parse5": "^7.1.2",
|
"parse5": "^7.3.0",
|
||||||
"parse5-htmlparser2-tree-adapter": "^7.0.0",
|
"parse5-htmlparser2-tree-adapter": "^7.1.0",
|
||||||
"parse5-parser-stream": "^7.1.2",
|
"parse5-parser-stream": "^7.1.2",
|
||||||
"undici": "^6.19.5",
|
"undici": "^7.12.0",
|
||||||
"whatwg-mimetype": "^4.0.0"
|
"whatwg-mimetype": "^4.0.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18.17"
|
"node": ">=20.18.1"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/cheeriojs/cheerio?sponsor=1"
|
"url": "https://github.com/cheeriojs/cheerio?sponsor=1"
|
||||||
@@ -145,9 +144,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/domutils": {
|
"node_modules/domutils": {
|
||||||
"version": "3.1.0",
|
"version": "3.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz",
|
||||||
"integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
|
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"dom-serializer": "^2.0.0",
|
"dom-serializer": "^2.0.0",
|
||||||
"domelementtype": "^2.3.0",
|
"domelementtype": "^2.3.0",
|
||||||
@@ -158,9 +157,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/encoding-sniffer": {
|
"node_modules/encoding-sniffer": {
|
||||||
"version": "0.2.0",
|
"version": "0.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz",
|
||||||
"integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==",
|
"integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"iconv-lite": "^0.6.3",
|
"iconv-lite": "^0.6.3",
|
||||||
"whatwg-encoding": "^3.1.1"
|
"whatwg-encoding": "^3.1.1"
|
||||||
@@ -181,9 +180,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/htmlparser2": {
|
"node_modules/htmlparser2": {
|
||||||
"version": "9.1.0",
|
"version": "10.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.0.0.tgz",
|
||||||
"integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
|
"integrity": "sha512-TwAZM+zE5Tq3lrEHvOlvwgj1XLWQCtaaibSN11Q+gGBAS7Y1uZSWwXXRe4iF6OXnaq1riyQAPFOBtYc77Mxq0g==",
|
||||||
"funding": [
|
"funding": [
|
||||||
"https://github.com/fb55/htmlparser2?sponsor=1",
|
"https://github.com/fb55/htmlparser2?sponsor=1",
|
||||||
{
|
{
|
||||||
@@ -194,8 +193,19 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"domelementtype": "^2.3.0",
|
"domelementtype": "^2.3.0",
|
||||||
"domhandler": "^5.0.3",
|
"domhandler": "^5.0.3",
|
||||||
"domutils": "^3.1.0",
|
"domutils": "^3.2.1",
|
||||||
"entities": "^4.5.0"
|
"entities": "^6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/htmlparser2/node_modules/entities": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/entities?sponsor=1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/iconv-lite": {
|
"node_modules/iconv-lite": {
|
||||||
@@ -221,22 +231,22 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/parse5": {
|
"node_modules/parse5": {
|
||||||
"version": "7.1.2",
|
"version": "7.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz",
|
||||||
"integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
|
"integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"entities": "^4.4.0"
|
"entities": "^6.0.0"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/parse5-htmlparser2-tree-adapter": {
|
"node_modules/parse5-htmlparser2-tree-adapter": {
|
||||||
"version": "7.0.0",
|
"version": "7.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz",
|
||||||
"integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==",
|
"integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"domhandler": "^5.0.2",
|
"domhandler": "^5.0.3",
|
||||||
"parse5": "^7.0.0"
|
"parse5": "^7.0.0"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
@@ -254,6 +264,17 @@
|
|||||||
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/parse5/node_modules/entities": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/entities?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/safer-buffer": {
|
"node_modules/safer-buffer": {
|
||||||
"version": "2.1.2",
|
"version": "2.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
|
||||||
@@ -266,15 +287,14 @@
|
|||||||
"license": "ISC"
|
"license": "ISC"
|
||||||
},
|
},
|
||||||
"node_modules/sitemap": {
|
"node_modules/sitemap": {
|
||||||
"version": "8.0.0",
|
"version": "8.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-8.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-8.0.1.tgz",
|
||||||
"integrity": "sha512-+AbdxhM9kJsHtruUF39bwS/B0Fytw6Fr1o4ZAIAEqA6cke2xcoO2GleBw9Zw7nRzILVEgz7zBM5GiTJjie1G9A==",
|
"integrity": "sha512-4Y8ynSMFAy/DadeAeio8Kx4zfC8/0VcKi7TH0I1SazvBcrU2fpJaGoeWsX1FMRaHoe3VGMA53DqVoLErZrtG9Q==",
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/node": "^17.0.5",
|
"@types/node": "^17.0.5",
|
||||||
"@types/sax": "^1.2.1",
|
"@types/sax": "^1.2.1",
|
||||||
"arg": "^5.0.0",
|
"arg": "^5.0.0",
|
||||||
"sax": "^1.2.4"
|
"sax": "^1.4.1"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"sitemap": "dist/cli.js"
|
"sitemap": "dist/cli.js"
|
||||||
@@ -285,12 +305,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/undici": {
|
"node_modules/undici": {
|
||||||
"version": "6.21.2",
|
"version": "7.15.0",
|
||||||
"resolved": "https://registry.npmjs.org/undici/-/undici-6.21.2.tgz",
|
"resolved": "https://registry.npmjs.org/undici/-/undici-7.15.0.tgz",
|
||||||
"integrity": "sha512-uROZWze0R0itiAKVPsYhFov9LxrPMHLMEQFszeI2gCN6bnIIZ8twzBCJcN2LJrBBLfrP0t1FW0g+JmKVl8Vk1g==",
|
"integrity": "sha512-7oZJCPvvMvTd0OlqWsIxTuItTpJBpU1tcbVl24FMn3xt3+VSunwUasmfPJRE57oNO1KsZ4PgA1xTdAX4hq8NyQ==",
|
||||||
"license": "MIT",
|
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18.17"
|
"node": ">=20.18.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/whatwg-encoding": {
|
"node_modules/whatwg-encoding": {
|
||||||
@@ -338,20 +357,20 @@
|
|||||||
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
|
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww=="
|
||||||
},
|
},
|
||||||
"cheerio": {
|
"cheerio": {
|
||||||
"version": "1.0.0",
|
"version": "1.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.1.2.tgz",
|
||||||
"integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==",
|
"integrity": "sha512-IkxPpb5rS/d1IiLbHMgfPuS0FgiWTtFIm/Nj+2woXDLTZ7fOT2eqzgYbdMlLweqlHbsZjxEChoVK+7iph7jyQg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"cheerio-select": "^2.1.0",
|
"cheerio-select": "^2.1.0",
|
||||||
"dom-serializer": "^2.0.0",
|
"dom-serializer": "^2.0.0",
|
||||||
"domhandler": "^5.0.3",
|
"domhandler": "^5.0.3",
|
||||||
"domutils": "^3.1.0",
|
"domutils": "^3.2.2",
|
||||||
"encoding-sniffer": "^0.2.0",
|
"encoding-sniffer": "^0.2.1",
|
||||||
"htmlparser2": "^9.1.0",
|
"htmlparser2": "^10.0.0",
|
||||||
"parse5": "^7.1.2",
|
"parse5": "^7.3.0",
|
||||||
"parse5-htmlparser2-tree-adapter": "^7.0.0",
|
"parse5-htmlparser2-tree-adapter": "^7.1.0",
|
||||||
"parse5-parser-stream": "^7.1.2",
|
"parse5-parser-stream": "^7.1.2",
|
||||||
"undici": "^6.19.5",
|
"undici": "^7.12.0",
|
||||||
"whatwg-mimetype": "^4.0.0"
|
"whatwg-mimetype": "^4.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -409,9 +428,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"domutils": {
|
"domutils": {
|
||||||
"version": "3.1.0",
|
"version": "3.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz",
|
||||||
"integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
|
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"dom-serializer": "^2.0.0",
|
"dom-serializer": "^2.0.0",
|
||||||
"domelementtype": "^2.3.0",
|
"domelementtype": "^2.3.0",
|
||||||
@@ -419,9 +438,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"encoding-sniffer": {
|
"encoding-sniffer": {
|
||||||
"version": "0.2.0",
|
"version": "0.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz",
|
||||||
"integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==",
|
"integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"iconv-lite": "^0.6.3",
|
"iconv-lite": "^0.6.3",
|
||||||
"whatwg-encoding": "^3.1.1"
|
"whatwg-encoding": "^3.1.1"
|
||||||
@@ -433,14 +452,21 @@
|
|||||||
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
|
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
|
||||||
},
|
},
|
||||||
"htmlparser2": {
|
"htmlparser2": {
|
||||||
"version": "9.1.0",
|
"version": "10.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.0.0.tgz",
|
||||||
"integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
|
"integrity": "sha512-TwAZM+zE5Tq3lrEHvOlvwgj1XLWQCtaaibSN11Q+gGBAS7Y1uZSWwXXRe4iF6OXnaq1riyQAPFOBtYc77Mxq0g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"domelementtype": "^2.3.0",
|
"domelementtype": "^2.3.0",
|
||||||
"domhandler": "^5.0.3",
|
"domhandler": "^5.0.3",
|
||||||
"domutils": "^3.1.0",
|
"domutils": "^3.2.1",
|
||||||
"entities": "^4.5.0"
|
"entities": "^6.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"entities": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g=="
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"iconv-lite": {
|
"iconv-lite": {
|
||||||
@@ -460,19 +486,26 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"parse5": {
|
"parse5": {
|
||||||
"version": "7.1.2",
|
"version": "7.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz",
|
||||||
"integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
|
"integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"entities": "^4.4.0"
|
"entities": "^6.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"entities": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g=="
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"parse5-htmlparser2-tree-adapter": {
|
"parse5-htmlparser2-tree-adapter": {
|
||||||
"version": "7.0.0",
|
"version": "7.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz",
|
||||||
"integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==",
|
"integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"domhandler": "^5.0.2",
|
"domhandler": "^5.0.3",
|
||||||
"parse5": "^7.0.0"
|
"parse5": "^7.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -495,20 +528,20 @@
|
|||||||
"integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg=="
|
"integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg=="
|
||||||
},
|
},
|
||||||
"sitemap": {
|
"sitemap": {
|
||||||
"version": "8.0.0",
|
"version": "8.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-8.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-8.0.1.tgz",
|
||||||
"integrity": "sha512-+AbdxhM9kJsHtruUF39bwS/B0Fytw6Fr1o4ZAIAEqA6cke2xcoO2GleBw9Zw7nRzILVEgz7zBM5GiTJjie1G9A==",
|
"integrity": "sha512-4Y8ynSMFAy/DadeAeio8Kx4zfC8/0VcKi7TH0I1SazvBcrU2fpJaGoeWsX1FMRaHoe3VGMA53DqVoLErZrtG9Q==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/node": "^17.0.5",
|
"@types/node": "^17.0.5",
|
||||||
"@types/sax": "^1.2.1",
|
"@types/sax": "^1.2.1",
|
||||||
"arg": "^5.0.0",
|
"arg": "^5.0.0",
|
||||||
"sax": "^1.2.4"
|
"sax": "^1.4.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"undici": {
|
"undici": {
|
||||||
"version": "6.21.2",
|
"version": "7.15.0",
|
||||||
"resolved": "https://registry.npmjs.org/undici/-/undici-6.21.2.tgz",
|
"resolved": "https://registry.npmjs.org/undici/-/undici-7.15.0.tgz",
|
||||||
"integrity": "sha512-uROZWze0R0itiAKVPsYhFov9LxrPMHLMEQFszeI2gCN6bnIIZ8twzBCJcN2LJrBBLfrP0t1FW0g+JmKVl8Vk1g=="
|
"integrity": "sha512-7oZJCPvvMvTd0OlqWsIxTuItTpJBpU1tcbVl24FMn3xt3+VSunwUasmfPJRE57oNO1KsZ4PgA1xTdAX4hq8NyQ=="
|
||||||
},
|
},
|
||||||
"whatwg-encoding": {
|
"whatwg-encoding": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.1",
|
||||||
|
|||||||
111
stores.json
111
stores.json
@@ -284,21 +284,6 @@
|
|||||||
"cafe": "No",
|
"cafe": "No",
|
||||||
"meta": "Strand Bookstore, near Union Square in Manhattan, is the best-known bookseller in the city, stocking new, used, and rare books on \"18 miles\" of shelves."
|
"meta": "Strand Bookstore, near Union Square in Manhattan, is the best-known bookseller in the city, stocking new, used, and rare books on \"18 miles\" of shelves."
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Bluestockings Cooperative",
|
|
||||||
"address": "116 Suffolk Street",
|
|
||||||
"city": "New York",
|
|
||||||
"state": "NY",
|
|
||||||
"postcode": "10002",
|
|
||||||
"description": "Taking its name from a disparaging term for female intellectuals in the Victorian era, this radical bookstore, café, and activist space has a selection of anarchist, socialist, Marxist, and other revolutionary texts available, as well as queer lit and some general interest fiction. Shirts, 'zines, and stickers also available. $10 credit card minimum.",
|
|
||||||
"lat": "40.718920281950105",
|
|
||||||
"long": "-73.98591840219963",
|
|
||||||
"country": "USA",
|
|
||||||
"website": "https://bluestockings.com/",
|
|
||||||
"events": "Yes",
|
|
||||||
"cafe": "Yes",
|
|
||||||
"meta": "Bluestockings Cooperative Bookstore, in the Bowery, Manhattan, is a community-focused and collectively-run activist center and feminist bookstore and cafe."
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Kinokunya",
|
"name": "Kinokunya",
|
||||||
"address": "1073 Avenue of the Americas",
|
"address": "1073 Avenue of the Americas",
|
||||||
@@ -329,21 +314,6 @@
|
|||||||
"cafe": "No",
|
"cafe": "No",
|
||||||
"meta": "Three Lives & Company, in the West Village, Manhattan, is a gorgeous neighborhood bookstore with knowledgable staff and a selection of literary fiction."
|
"meta": "Three Lives & Company, in the West Village, Manhattan, is a gorgeous neighborhood bookstore with knowledgable staff and a selection of literary fiction."
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Shakespeare & Company",
|
|
||||||
"address": "939 Lexington Ave",
|
|
||||||
"city": "New York",
|
|
||||||
"state": "NY",
|
|
||||||
"postcode": "10065",
|
|
||||||
"description": "Sharing a name with the famous Parisian bookshop but no other official ties, this store has a general-interest selection of books on its main level and, downstairs, textbooks for the nearby colleges.",
|
|
||||||
"lat": "40.768188",
|
|
||||||
"long": "-73.963531",
|
|
||||||
"country": "USA",
|
|
||||||
"website": "https://shop.shakeandco.com/",
|
|
||||||
"events": "Yes",
|
|
||||||
"cafe": "Yes",
|
|
||||||
"meta": ""
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Book Culture",
|
"name": "Book Culture",
|
||||||
"address": "536 W 112th St",
|
"address": "536 W 112th St",
|
||||||
@@ -515,7 +485,7 @@
|
|||||||
"city": "New York",
|
"city": "New York",
|
||||||
"state": "NY",
|
"state": "NY",
|
||||||
"postcode": "10037",
|
"postcode": "10037",
|
||||||
"description": "If bluestockings is the friendly face of a feminist co-operative, its revolutionary counterpart in New York City is the appropriately-named Revolution Books, a bastion of communism in the Big Apple. It specializes in revolutionary political texts, of course, but also has a broad selection of those same texts in Spanish. Special promotional space given to books by Bob Avakian, chairman of the Revolutionary Communist Party USA (not to be confused with the Communist Party USA).",
|
"description": "If the revolution ever arrives in New York City, perhaps its nexus will be the appropriately-named Revolution Books, a bastion of communism in the Big Apple. It specializes in revolutionary political texts, of course, but also has a broad selection of those same texts in Spanish. Special promotional space given to books by Bob Avakian, chairman of the Revolutionary Communist Party USA (not to be confused with the Communist Party USA).",
|
||||||
"lat": "40.8121889",
|
"lat": "40.8121889",
|
||||||
"long": "-73.9448338",
|
"long": "-73.9448338",
|
||||||
"country": "USA",
|
"country": "USA",
|
||||||
@@ -1185,12 +1155,12 @@
|
|||||||
"meta": ""
|
"meta": ""
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Shakespeare & Company (Upper West Side)",
|
"name": "Strand Bookstore (Upper West Side)",
|
||||||
"address": "2020 Broadway",
|
"address": "2020 Broadway",
|
||||||
"city": "New York",
|
"city": "New York",
|
||||||
"state": "NY",
|
"state": "NY",
|
||||||
"postcode": "10023",
|
"postcode": "10023",
|
||||||
"description": "",
|
"description": "Formerly Shakespeare and Company Lincoln Center.",
|
||||||
"lat": "40.776484",
|
"lat": "40.776484",
|
||||||
"long": "-73.981811",
|
"long": "-73.981811",
|
||||||
"country": "USA",
|
"country": "USA",
|
||||||
@@ -1709,21 +1679,6 @@
|
|||||||
"cafe": "Yes",
|
"cafe": "Yes",
|
||||||
"meta": ""
|
"meta": ""
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Shakespeare & Company (Manhattan Valley/Columbia University)",
|
|
||||||
"address": "2736 Broadway",
|
|
||||||
"city": "New York",
|
|
||||||
"state": "NY",
|
|
||||||
"postcode": "10025",
|
|
||||||
"description": "",
|
|
||||||
"lat": "40.800259699774",
|
|
||||||
"long": "-73.96768731230581",
|
|
||||||
"country": "USA",
|
|
||||||
"website": "https://shop.shakeandco.com/",
|
|
||||||
"events": "Yes",
|
|
||||||
"cafe": "No",
|
|
||||||
"meta": ""
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Liz's Book Bar",
|
"name": "Liz's Book Bar",
|
||||||
"address": "315 Smith St",
|
"address": "315 Smith St",
|
||||||
@@ -1798,5 +1753,65 @@
|
|||||||
"events": "Yes",
|
"events": "Yes",
|
||||||
"cafe": "Yes",
|
"cafe": "Yes",
|
||||||
"meta": ""
|
"meta": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "The Fountain Bookshop",
|
||||||
|
"address": "803 W 187th St",
|
||||||
|
"city": "New York",
|
||||||
|
"state": "NY",
|
||||||
|
"postcode": "10033",
|
||||||
|
"description": "",
|
||||||
|
"lat": "40.85536319660771",
|
||||||
|
"long": "-73.9369908112493",
|
||||||
|
"country": "USA",
|
||||||
|
"website": "https://fountainbookshop.com/",
|
||||||
|
"events": "Yes",
|
||||||
|
"cafe": "Yes",
|
||||||
|
"meta": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Twisted Spine Books",
|
||||||
|
"address": "306 Grand St",
|
||||||
|
"city": "Brooklyn",
|
||||||
|
"state": "NY",
|
||||||
|
"postcode": "11211",
|
||||||
|
"description": "Twisted Spine focused on horror fiction, meticulously organized into sub-genre and sub-sub-genre, including non-fiction and a children's section. Their staff are knowledgable about the genre, and the decor correctly vibes with the horror emphasis. Shop includes a backyard area, indoor seating, and free wifi.",
|
||||||
|
"lat": "40.71281455385764",
|
||||||
|
"long": "-73.95724940889518",
|
||||||
|
"country": "USA",
|
||||||
|
"website": "https://www.twistedspinebooks.com/",
|
||||||
|
"events": "Yes",
|
||||||
|
"cafe": "Yes",
|
||||||
|
"meta": "Twisted Spine, in Williamsburg, Brooklyn, is dedicated to horror fiction and non-fiction. Store includes a cafe, backyard area, and indoor seating."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Gladys Books & Wine",
|
||||||
|
"address": "306 Malcolm X Blvd",
|
||||||
|
"city": "Brooklyn",
|
||||||
|
"state": "NY",
|
||||||
|
"postcode": "11233",
|
||||||
|
"description": "",
|
||||||
|
"lat": "40.682375148825216",
|
||||||
|
"long": "-73.92910519253844",
|
||||||
|
"country": "USA",
|
||||||
|
"website": "https://www.gladysbooksandwine.com/",
|
||||||
|
"events": "Yes",
|
||||||
|
"cafe": "Yes",
|
||||||
|
"meta": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "White Rabbit's Books",
|
||||||
|
"address": "200 West 86th St",
|
||||||
|
"city": "New York",
|
||||||
|
"state": "NY",
|
||||||
|
"postcode": "10024",
|
||||||
|
"description": "",
|
||||||
|
"lat": "40.78773297148539",
|
||||||
|
"long": "-73.9754510091096",
|
||||||
|
"country": "USA",
|
||||||
|
"website": "https://whiterabbitsbooks.com/",
|
||||||
|
"events": "Yes",
|
||||||
|
"cafe": "No",
|
||||||
|
"meta": ""
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user