@texonom/cli 1.2.8 → 1.2.10
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/build/.tsbuildinfo +1 -1
- package/build/src/main.js +1 -1
- package/build/src/main.js.map +1 -1
- package/package.json +4 -4
package/build/.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/types.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/predicates/cascadingpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/predicates/typepredicates.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/predicates/helperpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/tools.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/index.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/globals.global.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/core.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/format.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/errors.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/utils.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/cli.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/command.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/definitions.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/help.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/version.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/array.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/boolean.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/counter.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/proxy.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/rest.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/string.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/index.d.ts","../package.json","../../../node_modules/.pnpm/@types+jsonstream@0.8.32/node_modules/@types/jsonstream/index.d.ts","../../../node_modules/.pnpm/@types+graceful-fs@4.1.8/node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/.pnpm/prettier@3.0.3/node_modules/prettier/doc.d.ts","../../../node_modules/.pnpm/prettier@3.0.3/node_modules/prettier/index.d.ts","../../ntypes/build/core.d.ts","../../ntypes/build/block.d.ts","../../ntypes/build/formula.d.ts","../../ntypes/build/user.d.ts","../../ntypes/build/collection.d.ts","../../ntypes/build/collection-view.d.ts","../../ntypes/build/space.d.ts","../../ntypes/build/maps.d.ts","../../ntypes/build/api.d.ts","../../ntypes/build/index.d.ts","../../nclient/build/index.d.ts","../../../node_modules/.pnpm/is-url-superb@6.1.0/node_modules/is-url-superb/index.d.ts","../../nutils/build/index.d.ts","../src/notion/index.ts","../src/notion/export.ts","../src/main.ts","../src/types.ts"],"fileInfos":[{"version":"2ac9cdcfb8f8875c18d14ec5796a8b029c426f73ad6dc3ffb580c228b58d1c44","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c",{"version":"0075fa5ceda385bcdf3488e37786b5a33be730e8bc4aa3cf1e78c63891752ce8","affectsGlobalScope":true},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true},{"version":"09226e53d1cfda217317074a97724da3e71e2c545e18774484b61562afc53cd2","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"8b41361862022eb72fcc8a7f34680ac842aca802cf4bc1f915e8c620c9ce4331","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"bc496ef4377553e461efcf7cc5a5a57cf59f9962aea06b5e722d54a36bf66ea1","affectsGlobalScope":true},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true},{"version":"930b0e15811f84e203d3c23508674d5ded88266df4b10abee7b31b2ac77632d2","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"65be38e881453e16f128a12a8d36f8b012aa279381bf3d4dc4332a4905ceec83","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"e1913f656c156a9e4245aa111fbb436d357d9e1fe0379b9a802da7fe3f03d736","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"f35a831e4f0fe3b3697f4a0fe0e3caa7624c92b78afbecaf142c0f93abfaf379","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"7fe869c60b17b972a0eb9423e8a50bd9796508be7cc7181758ecd649be30f56c","bad1f77bb946699281dc049ae841bc65231029b17ca2bf54fcb3c6afcbf06ec5","d06898a1601eb860aae768ffd0c288ff715bd4e1ed098bd29745308f4338b6d4","2854948cbc0bbf90a24216de4abaa6bcc9c5149049c648e9f3750e59f1e6853b","9b4b572caf9a82cd34b62baacdf31ff030c6fa307f174810240216d9cfcf8580","647ddde02a14904825d0f92904254c98f3cfa6946a61f1f519b1f9aa3595ce33","9004b6757fde33f153c3a7694c15b017531a0261fafb99e0542a8a6f61be1708","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419",{"version":"32465ea19404cb188e84cf08c6b1f6b12d739140436402cdbc184a3fd20a7d81","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"5fd58752ae77b0ef6a7cbde3294a5d99238ff2e7c3e113c7125eab953e28d41d","affectsGlobalScope":true},"1f2d8573577ad731813e4358b913b667923a94e6456f645918fba11134040d13","fe39ceafa361b6d339b518936275eff89a77e7dfe92f2efa5fb97abf9a95ca49",{"version":"815c751d4afee4651d61edf6204187372a55ca8e0126a906986b4859ec51f192","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","8a67dc9edddace374b1a96852ab5bbb87b631d439a928e6df326587d1f4fe9f0","fbcf2c3cde728761b05dbf8e7a9b8be1f5514dc324c6f83b87ba5c0668119b98","7eb0662b995994db248290a0f0a1d8ed685991a162ff9eb4dee36f099cccd0d9","16bbaee4dd96ec8b67026329a4f5fdef6313e42a5c305ddeb498c3d65fb557b8","37a36483218b24a50be2548a71557603e01ce38154c9f3f635c6c8275abd9fb1","c6cf9428f45f3d78b07df7d7aab1569994c177d36549e3a962f952d89f026bc4",{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true},{"version":"6c7b9d2139abd8f2e83ed8fa018c3799ab3187755a6665621feb6e93d3429ac3","affectsGlobalScope":true},"d617229425b25df2046a9c1e321dd1b50825abc8e3b38048453345483f8601e1","badd4f5fe0cca51915ef597852d07598ca490f6d1d9d68d505a159f18cde792d","d46e19fef3e961431a9b85adff6a8de04a1e8fc37366f6541c40237fb8247626","e6d2e297c73016fc98095238b25428591d129481c50eb1b6e575d35f3f8c621e","e3baa0c5780c2c805ec33a999722a2f740b572eb3746fd0a5f93a0a5c3dbf7f6","48fedd2f8549a2ae7e62f30fdb015779c2a7b536760730c5269406cd3d17cab2",{"version":"e492737de7f023b47ff14ca54b9635ba3dcd64816ed3316c9f3a784cf5897173","affectsGlobalScope":true},"40798238bc2e17ee787a815dbce4f2c89c161e5ad2fde062fb50454c093fa433","f5ce35485541e817c2d4105d3eb78e3e538bbb009515ed014694363fa3e94ceb","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"e7391fb34deecd321ae15af659cbfb0b9abc995c5ed4b3d703ba768e44b89670","affectsGlobalScope":true},{"version":"0900d10c17bae29648b266c0ae7cef0c95ebb2a1d81541b833833ed0996ac85a","affectsGlobalScope":true},"58520d6ae3a339cd22ffc528b50b21e4e8f5247a87913eb1c697c1af62eb0395","186614c0f9ca0ec3cfa988f1dc01c6f392a798710072ff4bdf20ce56e09a6dfd","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","48dab0d6e633b8052e7eaa0efb0bb3d58a733777b248765eafcb0b0349439834","6e4b2642721462bf62d19593770659f268a6ca1e9fd15543747efb3ac471cee3","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","cdaaf046791d7d588f28f32197c5d6acc43343e62540a67eed194c9c20535fdc","4b1ff655bd8edd879dd4f04f15338ce0109f58ccb424165d44fa07e7ea39c4bf",{"version":"6fa3d3f427475a5d21fed826d6457e7f9ee3a0abeb3124fc41f385f112368d2e","affectsGlobalScope":true},{"version":"b85e57e102a1df14980b46d745c9fe8e16a9b0a69a98fb1a2c558c9137ab30d6","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","e5ce801ce5e85d7281807d8a65a21ee9767c122c87da262891582b4afead5ec0","76a89af04f2ba1807309320dab5169c0d1243b80738b4a2005989e40a136733e","c045b664abf3fc2a4750fa96117ab2735e4ed45ddd571b2a6a91b9917e231a02",{"version":"057d7f56aacd575a6240838d2684d34a340acde815f84190ea5e9afd611aeee6","affectsGlobalScope":true},{"version":"40ed27386f21a739bd0d2e2cfed563760588f2aeaa7ad149c1bf1454a7ec743a","affectsGlobalScope":true},"d1ef1d8516286380fd0a6f498f1650d374a8cb5f03d91633b6124e4fb8fb131d","6244a29671c12a54fc5b1393dde60bac655bd778d84758a4db847f684d4da3a5","8bc733ffd630d49d495663bfecf590281c8f5412b33657430ab471b558206705",{"version":"171c1840775746917e7b813c9df0fc0b84876f96623a6cfef3b3de7ea816b8c5","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","056e650abd76f4f163b63d28caa4a21ce6b8ac69d8717987a7861724499fa66a","8eb83d1ad044634c54c3de70ac76e596ae48ec0ed0800797211fbfe7d9bc94de","df0e93ded7e580b27eb3bfea87dffc49a823ea74ef6c625938cb8f5298e1bd57","c44308d3424b3d85a342c7f59eee52a7d2807859692c0e89e4373e88d5895743","7fdfb1d630e3baa80e994518127a8a60f298a0dd783824f50797e3d88213af94","bf78879e6f7417cc8b3ba859dbe762d9f1f64fead4183a85c8a998e156377bcb","079bf77582cfa769546f060b373cbe4bac74627c240bcf07f0b571c29c1c7269","dcd687115f7836cab01c44b1a3678422533adb6e8e255d046850a9b998ca953d","95046f08a9e3860e531bae878947f04cf91aade9ca8dae60f962aff85b892eeb","7ea8ac0a5b4461e346fe937ff19841c66bcf3121205de8d1b2a5d0a31f3b28eb","d9b36f58f094c4095818a4b5cf8dc8b6f3ac7d38fc3bafc871494e3c4d586551","5af4f0c77e82183dc512690283cc80a2b59370083a60ed75174a516b921452fc","5581450c9bfffa56208fa69ce62ea33c8671fa34cfdc1eeb262ec7ebf0b5cbf7","977997bf4efd7fc8d5b4a78f9474395315189d8d9d92a8280cb35babe0885534","dc9f4778bd2d16df16c101704eee59112818857cf58ecb59417633abca828ff0","fca70e3e8f1b91b6462c3d22546de7f79acd9fd7eee9b638f7f4bd348c851bd2","fb4113fc41b555bb1aa01fb17c66da9be37b734c5b4c4e244f70d7ecb0b7e5c0","cec053867ca5fba9e8e966de9bb9e7ad077a9f018175e20de473bf81cdc0b8ff",{"version":"06c864f211e4e0372de314fb614167b5a4c9ec36841ba62876ba0540f6206342","signature":"80929751b3512388f49be15d8d4e2c64e6cbb2c0377112ea354a6f328bab4c4c"},"0bd34b5fcc75a9759fcc84590bd53d051538f2e4ec74b2bbbb528cd99bbcc4a9","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","2f848b4e660b568651a6350565afc8ac5b0644853a2a863862807602cf244a05","87c316128d18c34881619a529fe0446125405fa073f1a9e533a8f66f66b6b340","d5a33c52d381fc00f5842490ffcf406e0f5b9dd801b016fadcb232bb4d347fdf","8ae7855cf16c0a899ad0bdbf0675480766197e05467a249b5ddf7dcf9ace7a56","57aa4c028ae9d74d0908fd24563ccf6ce4ad3ec4b836fcbd69974adce60eb895","d979abc48001c25784feecb34dba191ed2c33f8944f7bd7b077b464285586c12","b5a33c11d9bca76dad214b1f8cf8571ef5a0fc60eecbbfa8f6cf0b73c1183d20","b4e975657af1b37e99cac0753713e6425a16a7725790542838e9d48b0dd836b4","85334ca199cff2ab0bcec4f106a3e8350f71cf04b485f87e794dc7872ccd6db8","0f321314fe3ba624e0e2957041ab096afc446d2ca0c0daf4719eafebae63e9dd","b798a298a669d510455b1c9fb6ae952333edaba0dae2672be9edd84aea4d600d","da90b2dfbb04735ed503d67065160c0f48cfe3ea26090093281b334f61b2cc88","a5f4528039a6ff505b8b8cbc63aba8a80c2a0c0a5285da5a84c38af87b3f48a8","a87e5902fd92d16a80e0020ac03d6477bc2e7a6f5b0407a73aff6b7aa9e01d55","3ad6cd6756dcb8bb8b4502977a55c3445d9797f89e5dc929002eb7181b2725b7",{"version":"e97b049516897082aa5afc2a169ddedc8926546f1522f133272ab8eafd7bb705","signature":"8554ab2500a235502c77a76adbd47ad77483d372e325f2bdf32ecfe9467b57b1"},{"version":"a9d6cc3152d834d799b9caacf22535ca87bb0325f6ac50b804b3f968a432dad1","signature":"b9ca17a1bf7a856b8ec77c7d51ff089af47a73a7c77e702e65f8a450843596d2"},{"version":"85d8c15e12f05164606168b9d9bb56f664ca6c0a207beaebcc00b3e56b4d6342","signature":"16dec6f85a3dc618c0e71238018cea74558f197ef532887b8af0a66cdf642714"},{"version":"54ff28ab10d1009897fa679ac9d187b36a4f91a66884e2e8ff934fa10ad1af82","signature":"6b778ed1cb4e6fa6819fb87a868712a53d64385160925ee48431cf3b29854d3b"}],"root":[[161,164]],"options":{"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":99,"noEmitOnError":true,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"..","sourceMap":true,"strict":false,"target":2,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[88,117,124],[117,124],[71,117],[74,117],[75,80,108,117],[76,87,88,95,105,116,117],[76,77,87,95,117],[78,117],[79,80,88,96,117],[80,105,113,117],[81,83,87,95,117],[82,117],[83,84,117],[87,117],[85,87,117],[74,87,117],[87,88,89,105,116,117],[87,88,89,102,105,108,117],[117,121],[117],[83,87,90,95,105,116,117],[87,88,90,91,95,105,113,116,117],[90,92,105,113,116,117],[71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123],[87,93,117],[94,116,117,121],[83,87,95,105,117],[96,117],[97,117],[74,98,117],[99,115,117,121],[100,117],[101,117],[87,102,103,117],[102,104,117,119],[75,87,105,106,107,108,117],[75,105,107,117],[105,106,117],[108,117],[109,117],[74,105,117],[87,111,112,117],[111,112,117],[80,95,105,113,117],[114,117],[95,115,117],[75,90,101,116,117],[80,117],[105,117,118],[94,117,119],[117,120],[75,80,87,89,98,105,116,117,119,121],[105,117,122],[117,130],[117,131,132,133],[105,117,124,125,126,128,130],[70,117,128,129],[117,126,127,129,130,134,141],[70,117,128],[117,128],[117,128,135,136,137,138,139,140],[70,117,125,127,129],[117,146],[65,66,67,68,69,117],[65,117],[117,142,143,162],[89,97,105,117,142,144,145,147,157,158,160,161],[117,142],[117,157],[117,155],[117,148],[117,148,150],[117,148,149,150,151,152,153,154,155,156],[117,148,149,151,152,153,154],[117,157,159],[162],[157,158,160,161],[142]],"referencedMap":[[145,1],[144,2],[71,3],[72,3],[74,4],[75,5],[76,6],[77,7],[78,8],[79,9],[80,10],[81,11],[82,12],[83,13],[84,13],[86,14],[85,15],[87,16],[88,17],[89,18],[73,19],[123,20],[90,21],[91,22],[92,23],[124,24],[93,25],[94,26],[95,27],[96,28],[97,29],[98,30],[99,31],[100,32],[101,33],[102,34],[103,34],[104,35],[105,36],[107,37],[106,38],[108,39],[109,40],[110,41],[111,42],[112,43],[113,44],[114,45],[115,46],[116,47],[117,48],[118,49],[119,50],[120,51],[121,52],[122,53],[131,54],[132,54],[134,55],[133,54],[129,56],[130,57],[142,58],[135,59],[136,60],[137,60],[141,61],[138,20],[139,20],[140,59],[128,62],[125,20],[127,20],[126,20],[159,20],[146,20],[147,63],[70,64],[66,65],[68,65],[67,65],[69,65],[65,20],[63,20],[64,20],[12,20],[14,20],[13,20],[2,20],[15,20],[16,20],[17,20],[18,20],[19,20],[20,20],[21,20],[22,20],[3,20],[4,20],[23,20],[27,20],[24,20],[25,20],[26,20],[28,20],[29,20],[30,20],[5,20],[31,20],[32,20],[33,20],[34,20],[6,20],[38,20],[35,20],[36,20],[37,20],[39,20],[7,20],[40,20],[45,20],[46,20],[41,20],[42,20],[43,20],[44,20],[8,20],[50,20],[47,20],[48,20],[49,20],[51,20],[9,20],[52,20],[53,20],[54,20],[57,20],[55,20],[56,20],[58,20],[59,20],[10,20],[1,20],[11,20],[62,20],[61,20],[60,20],[143,20],[163,66],[162,67],[161,68],[164,20],[158,69],[156,70],[149,71],[153,71],[152,72],[148,20],[150,71],[157,73],[155,74],[154,71],[151,71],[160,75]],"exportedModulesMap":[[145,1],[144,2],[71,3],[72,3],[74,4],[75,5],[76,6],[77,7],[78,8],[79,9],[80,10],[81,11],[82,12],[83,13],[84,13],[86,14],[85,15],[87,16],[88,17],[89,18],[73,19],[123,20],[90,21],[91,22],[92,23],[124,24],[93,25],[94,26],[95,27],[96,28],[97,29],[98,30],[99,31],[100,32],[101,33],[102,34],[103,34],[104,35],[105,36],[107,37],[106,38],[108,39],[109,40],[110,41],[111,42],[112,43],[113,44],[114,45],[115,46],[116,47],[117,48],[118,49],[119,50],[120,51],[121,52],[122,53],[131,54],[132,54],[134,55],[133,54],[129,56],[130,57],[142,58],[135,59],[136,60],[137,60],[141,61],[138,20],[139,20],[140,59],[128,62],[125,20],[127,20],[126,20],[159,20],[146,20],[147,63],[70,64],[66,65],[68,65],[67,65],[69,65],[65,20],[63,20],[64,20],[12,20],[14,20],[13,20],[2,20],[15,20],[16,20],[17,20],[18,20],[19,20],[20,20],[21,20],[22,20],[3,20],[4,20],[23,20],[27,20],[24,20],[25,20],[26,20],[28,20],[29,20],[30,20],[5,20],[31,20],[32,20],[33,20],[34,20],[6,20],[38,20],[35,20],[36,20],[37,20],[39,20],[7,20],[40,20],[45,20],[46,20],[41,20],[42,20],[43,20],[44,20],[8,20],[50,20],[47,20],[48,20],[49,20],[51,20],[9,20],[52,20],[53,20],[54,20],[57,20],[55,20],[56,20],[58,20],[59,20],[10,20],[1,20],[11,20],[62,20],[61,20],[60,20],[163,76],[162,77],[161,78],[158,69],[156,70],[149,71],[153,71],[152,72],[148,20],[150,71],[157,73],[155,74],[154,71],[151,71],[160,75]],"semanticDiagnosticsPerFile":[145,144,71,72,74,75,76,77,78,79,80,81,82,83,84,86,85,87,88,89,73,123,90,91,92,124,93,94,95,96,97,98,99,100,101,102,103,104,105,107,106,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,131,132,134,133,129,130,142,135,136,137,141,138,139,140,128,125,127,126,159,146,147,70,66,68,67,69,65,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,143,163,162,161,164,158,156,149,153,152,148,150,157,155,154,151,160]},"version":"5.2.2"}
|
|
1
|
+
{"program":{"fileNames":["../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/types.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/predicates/cascadingpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/predicates/typepredicates.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/predicates/helperpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/tools.d.ts","../../../node_modules/.pnpm/typanion@3.13.0/node_modules/typanion/lib/index.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/globals.global.d.ts","../../../node_modules/.pnpm/@types+node@18.18.6/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/core.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/format.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/errors.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/utils.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/cli.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/command.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/definitions.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/help.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/version.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/builtins/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/array.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/boolean.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/counter.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/proxy.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/rest.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/string.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/options/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.13.0/node_modules/clipanion/lib/advanced/index.d.ts","../package.json","../../../node_modules/.pnpm/@types+jsonstream@0.8.32/node_modules/@types/jsonstream/index.d.ts","../../../node_modules/.pnpm/@types+graceful-fs@4.1.8/node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/.pnpm/prettier@3.0.3/node_modules/prettier/doc.d.ts","../../../node_modules/.pnpm/prettier@3.0.3/node_modules/prettier/index.d.ts","../../ntypes/build/core.d.ts","../../ntypes/build/block.d.ts","../../ntypes/build/formula.d.ts","../../ntypes/build/user.d.ts","../../ntypes/build/collection.d.ts","../../ntypes/build/collection-view.d.ts","../../ntypes/build/space.d.ts","../../ntypes/build/maps.d.ts","../../ntypes/build/api.d.ts","../../ntypes/build/index.d.ts","../../nclient/build/index.d.ts","../../../node_modules/.pnpm/is-url-superb@6.1.0/node_modules/is-url-superb/index.d.ts","../../nutils/build/index.d.ts","../src/notion/index.ts","../src/notion/export.ts","../src/main.ts","../src/types.ts"],"fileInfos":[{"version":"2ac9cdcfb8f8875c18d14ec5796a8b029c426f73ad6dc3ffb580c228b58d1c44","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c",{"version":"0075fa5ceda385bcdf3488e37786b5a33be730e8bc4aa3cf1e78c63891752ce8","affectsGlobalScope":true},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true},{"version":"09226e53d1cfda217317074a97724da3e71e2c545e18774484b61562afc53cd2","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"8b41361862022eb72fcc8a7f34680ac842aca802cf4bc1f915e8c620c9ce4331","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"bc496ef4377553e461efcf7cc5a5a57cf59f9962aea06b5e722d54a36bf66ea1","affectsGlobalScope":true},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true},{"version":"930b0e15811f84e203d3c23508674d5ded88266df4b10abee7b31b2ac77632d2","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"65be38e881453e16f128a12a8d36f8b012aa279381bf3d4dc4332a4905ceec83","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"e1913f656c156a9e4245aa111fbb436d357d9e1fe0379b9a802da7fe3f03d736","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"f35a831e4f0fe3b3697f4a0fe0e3caa7624c92b78afbecaf142c0f93abfaf379","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"7fe869c60b17b972a0eb9423e8a50bd9796508be7cc7181758ecd649be30f56c","bad1f77bb946699281dc049ae841bc65231029b17ca2bf54fcb3c6afcbf06ec5","d06898a1601eb860aae768ffd0c288ff715bd4e1ed098bd29745308f4338b6d4","2854948cbc0bbf90a24216de4abaa6bcc9c5149049c648e9f3750e59f1e6853b","9b4b572caf9a82cd34b62baacdf31ff030c6fa307f174810240216d9cfcf8580","647ddde02a14904825d0f92904254c98f3cfa6946a61f1f519b1f9aa3595ce33","9004b6757fde33f153c3a7694c15b017531a0261fafb99e0542a8a6f61be1708","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419",{"version":"32465ea19404cb188e84cf08c6b1f6b12d739140436402cdbc184a3fd20a7d81","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"5fd58752ae77b0ef6a7cbde3294a5d99238ff2e7c3e113c7125eab953e28d41d","affectsGlobalScope":true},"1f2d8573577ad731813e4358b913b667923a94e6456f645918fba11134040d13","fe39ceafa361b6d339b518936275eff89a77e7dfe92f2efa5fb97abf9a95ca49",{"version":"815c751d4afee4651d61edf6204187372a55ca8e0126a906986b4859ec51f192","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","8a67dc9edddace374b1a96852ab5bbb87b631d439a928e6df326587d1f4fe9f0","fbcf2c3cde728761b05dbf8e7a9b8be1f5514dc324c6f83b87ba5c0668119b98","7eb0662b995994db248290a0f0a1d8ed685991a162ff9eb4dee36f099cccd0d9","16bbaee4dd96ec8b67026329a4f5fdef6313e42a5c305ddeb498c3d65fb557b8","37a36483218b24a50be2548a71557603e01ce38154c9f3f635c6c8275abd9fb1","c6cf9428f45f3d78b07df7d7aab1569994c177d36549e3a962f952d89f026bc4",{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true},{"version":"6c7b9d2139abd8f2e83ed8fa018c3799ab3187755a6665621feb6e93d3429ac3","affectsGlobalScope":true},"d617229425b25df2046a9c1e321dd1b50825abc8e3b38048453345483f8601e1","badd4f5fe0cca51915ef597852d07598ca490f6d1d9d68d505a159f18cde792d","d46e19fef3e961431a9b85adff6a8de04a1e8fc37366f6541c40237fb8247626","e6d2e297c73016fc98095238b25428591d129481c50eb1b6e575d35f3f8c621e","e3baa0c5780c2c805ec33a999722a2f740b572eb3746fd0a5f93a0a5c3dbf7f6","48fedd2f8549a2ae7e62f30fdb015779c2a7b536760730c5269406cd3d17cab2",{"version":"e492737de7f023b47ff14ca54b9635ba3dcd64816ed3316c9f3a784cf5897173","affectsGlobalScope":true},"40798238bc2e17ee787a815dbce4f2c89c161e5ad2fde062fb50454c093fa433","f5ce35485541e817c2d4105d3eb78e3e538bbb009515ed014694363fa3e94ceb","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"e7391fb34deecd321ae15af659cbfb0b9abc995c5ed4b3d703ba768e44b89670","affectsGlobalScope":true},{"version":"0900d10c17bae29648b266c0ae7cef0c95ebb2a1d81541b833833ed0996ac85a","affectsGlobalScope":true},"58520d6ae3a339cd22ffc528b50b21e4e8f5247a87913eb1c697c1af62eb0395","186614c0f9ca0ec3cfa988f1dc01c6f392a798710072ff4bdf20ce56e09a6dfd","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","48dab0d6e633b8052e7eaa0efb0bb3d58a733777b248765eafcb0b0349439834","6e4b2642721462bf62d19593770659f268a6ca1e9fd15543747efb3ac471cee3","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","cdaaf046791d7d588f28f32197c5d6acc43343e62540a67eed194c9c20535fdc","4b1ff655bd8edd879dd4f04f15338ce0109f58ccb424165d44fa07e7ea39c4bf",{"version":"6fa3d3f427475a5d21fed826d6457e7f9ee3a0abeb3124fc41f385f112368d2e","affectsGlobalScope":true},{"version":"b85e57e102a1df14980b46d745c9fe8e16a9b0a69a98fb1a2c558c9137ab30d6","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","e5ce801ce5e85d7281807d8a65a21ee9767c122c87da262891582b4afead5ec0","76a89af04f2ba1807309320dab5169c0d1243b80738b4a2005989e40a136733e","c045b664abf3fc2a4750fa96117ab2735e4ed45ddd571b2a6a91b9917e231a02",{"version":"057d7f56aacd575a6240838d2684d34a340acde815f84190ea5e9afd611aeee6","affectsGlobalScope":true},{"version":"40ed27386f21a739bd0d2e2cfed563760588f2aeaa7ad149c1bf1454a7ec743a","affectsGlobalScope":true},"d1ef1d8516286380fd0a6f498f1650d374a8cb5f03d91633b6124e4fb8fb131d","6244a29671c12a54fc5b1393dde60bac655bd778d84758a4db847f684d4da3a5","8bc733ffd630d49d495663bfecf590281c8f5412b33657430ab471b558206705",{"version":"171c1840775746917e7b813c9df0fc0b84876f96623a6cfef3b3de7ea816b8c5","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","056e650abd76f4f163b63d28caa4a21ce6b8ac69d8717987a7861724499fa66a","8eb83d1ad044634c54c3de70ac76e596ae48ec0ed0800797211fbfe7d9bc94de","df0e93ded7e580b27eb3bfea87dffc49a823ea74ef6c625938cb8f5298e1bd57","c44308d3424b3d85a342c7f59eee52a7d2807859692c0e89e4373e88d5895743","7fdfb1d630e3baa80e994518127a8a60f298a0dd783824f50797e3d88213af94","bf78879e6f7417cc8b3ba859dbe762d9f1f64fead4183a85c8a998e156377bcb","079bf77582cfa769546f060b373cbe4bac74627c240bcf07f0b571c29c1c7269","dcd687115f7836cab01c44b1a3678422533adb6e8e255d046850a9b998ca953d","95046f08a9e3860e531bae878947f04cf91aade9ca8dae60f962aff85b892eeb","7ea8ac0a5b4461e346fe937ff19841c66bcf3121205de8d1b2a5d0a31f3b28eb","d9b36f58f094c4095818a4b5cf8dc8b6f3ac7d38fc3bafc871494e3c4d586551","5af4f0c77e82183dc512690283cc80a2b59370083a60ed75174a516b921452fc","5581450c9bfffa56208fa69ce62ea33c8671fa34cfdc1eeb262ec7ebf0b5cbf7","977997bf4efd7fc8d5b4a78f9474395315189d8d9d92a8280cb35babe0885534","dc9f4778bd2d16df16c101704eee59112818857cf58ecb59417633abca828ff0","fca70e3e8f1b91b6462c3d22546de7f79acd9fd7eee9b638f7f4bd348c851bd2","fb4113fc41b555bb1aa01fb17c66da9be37b734c5b4c4e244f70d7ecb0b7e5c0","cec053867ca5fba9e8e966de9bb9e7ad077a9f018175e20de473bf81cdc0b8ff",{"version":"16804224d6c3a1ac506defd5921a27fa2b626f91d771f320dffeeb23a95b09f3","signature":"80929751b3512388f49be15d8d4e2c64e6cbb2c0377112ea354a6f328bab4c4c"},"0bd34b5fcc75a9759fcc84590bd53d051538f2e4ec74b2bbbb528cd99bbcc4a9","afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","2f848b4e660b568651a6350565afc8ac5b0644853a2a863862807602cf244a05","87c316128d18c34881619a529fe0446125405fa073f1a9e533a8f66f66b6b340","d5a33c52d381fc00f5842490ffcf406e0f5b9dd801b016fadcb232bb4d347fdf","8ae7855cf16c0a899ad0bdbf0675480766197e05467a249b5ddf7dcf9ace7a56","57aa4c028ae9d74d0908fd24563ccf6ce4ad3ec4b836fcbd69974adce60eb895","d979abc48001c25784feecb34dba191ed2c33f8944f7bd7b077b464285586c12","b5a33c11d9bca76dad214b1f8cf8571ef5a0fc60eecbbfa8f6cf0b73c1183d20","b4e975657af1b37e99cac0753713e6425a16a7725790542838e9d48b0dd836b4","85334ca199cff2ab0bcec4f106a3e8350f71cf04b485f87e794dc7872ccd6db8","0f321314fe3ba624e0e2957041ab096afc446d2ca0c0daf4719eafebae63e9dd","b798a298a669d510455b1c9fb6ae952333edaba0dae2672be9edd84aea4d600d","da90b2dfbb04735ed503d67065160c0f48cfe3ea26090093281b334f61b2cc88","a5f4528039a6ff505b8b8cbc63aba8a80c2a0c0a5285da5a84c38af87b3f48a8","a87e5902fd92d16a80e0020ac03d6477bc2e7a6f5b0407a73aff6b7aa9e01d55","3ad6cd6756dcb8bb8b4502977a55c3445d9797f89e5dc929002eb7181b2725b7",{"version":"e97b049516897082aa5afc2a169ddedc8926546f1522f133272ab8eafd7bb705","signature":"8554ab2500a235502c77a76adbd47ad77483d372e325f2bdf32ecfe9467b57b1"},{"version":"a9d6cc3152d834d799b9caacf22535ca87bb0325f6ac50b804b3f968a432dad1","signature":"b9ca17a1bf7a856b8ec77c7d51ff089af47a73a7c77e702e65f8a450843596d2"},{"version":"85d8c15e12f05164606168b9d9bb56f664ca6c0a207beaebcc00b3e56b4d6342","signature":"16dec6f85a3dc618c0e71238018cea74558f197ef532887b8af0a66cdf642714"},{"version":"54ff28ab10d1009897fa679ac9d187b36a4f91a66884e2e8ff934fa10ad1af82","signature":"6b778ed1cb4e6fa6819fb87a868712a53d64385160925ee48431cf3b29854d3b"}],"root":[[161,164]],"options":{"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":99,"noEmitOnError":true,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"..","sourceMap":true,"strict":false,"target":2,"tsBuildInfoFile":"./.tsbuildinfo"},"fileIdsList":[[88,117,124],[117,124],[71,117],[74,117],[75,80,108,117],[76,87,88,95,105,116,117],[76,77,87,95,117],[78,117],[79,80,88,96,117],[80,105,113,117],[81,83,87,95,117],[82,117],[83,84,117],[87,117],[85,87,117],[74,87,117],[87,88,89,105,116,117],[87,88,89,102,105,108,117],[117,121],[117],[83,87,90,95,105,116,117],[87,88,90,91,95,105,113,116,117],[90,92,105,113,116,117],[71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123],[87,93,117],[94,116,117,121],[83,87,95,105,117],[96,117],[97,117],[74,98,117],[99,115,117,121],[100,117],[101,117],[87,102,103,117],[102,104,117,119],[75,87,105,106,107,108,117],[75,105,107,117],[105,106,117],[108,117],[109,117],[74,105,117],[87,111,112,117],[111,112,117],[80,95,105,113,117],[114,117],[95,115,117],[75,90,101,116,117],[80,117],[105,117,118],[94,117,119],[117,120],[75,80,87,89,98,105,116,117,119,121],[105,117,122],[117,130],[117,131,132,133],[105,117,124,125,126,128,130],[70,117,128,129],[117,126,127,129,130,134,141],[70,117,128],[117,128],[117,128,135,136,137,138,139,140],[70,117,125,127,129],[117,146],[65,66,67,68,69,117],[65,117],[117,142,143,162],[89,97,105,117,142,144,145,147,157,158,160,161],[117,142],[117,157],[117,155],[117,148],[117,148,150],[117,148,149,150,151,152,153,154,155,156],[117,148,149,151,152,153,154],[117,157,159],[162],[157,158,160,161],[142]],"referencedMap":[[145,1],[144,2],[71,3],[72,3],[74,4],[75,5],[76,6],[77,7],[78,8],[79,9],[80,10],[81,11],[82,12],[83,13],[84,13],[86,14],[85,15],[87,16],[88,17],[89,18],[73,19],[123,20],[90,21],[91,22],[92,23],[124,24],[93,25],[94,26],[95,27],[96,28],[97,29],[98,30],[99,31],[100,32],[101,33],[102,34],[103,34],[104,35],[105,36],[107,37],[106,38],[108,39],[109,40],[110,41],[111,42],[112,43],[113,44],[114,45],[115,46],[116,47],[117,48],[118,49],[119,50],[120,51],[121,52],[122,53],[131,54],[132,54],[134,55],[133,54],[129,56],[130,57],[142,58],[135,59],[136,60],[137,60],[141,61],[138,20],[139,20],[140,59],[128,62],[125,20],[127,20],[126,20],[159,20],[146,20],[147,63],[70,64],[66,65],[68,65],[67,65],[69,65],[65,20],[63,20],[64,20],[12,20],[14,20],[13,20],[2,20],[15,20],[16,20],[17,20],[18,20],[19,20],[20,20],[21,20],[22,20],[3,20],[4,20],[23,20],[27,20],[24,20],[25,20],[26,20],[28,20],[29,20],[30,20],[5,20],[31,20],[32,20],[33,20],[34,20],[6,20],[38,20],[35,20],[36,20],[37,20],[39,20],[7,20],[40,20],[45,20],[46,20],[41,20],[42,20],[43,20],[44,20],[8,20],[50,20],[47,20],[48,20],[49,20],[51,20],[9,20],[52,20],[53,20],[54,20],[57,20],[55,20],[56,20],[58,20],[59,20],[10,20],[1,20],[11,20],[62,20],[61,20],[60,20],[143,20],[163,66],[162,67],[161,68],[164,20],[158,69],[156,70],[149,71],[153,71],[152,72],[148,20],[150,71],[157,73],[155,74],[154,71],[151,71],[160,75]],"exportedModulesMap":[[145,1],[144,2],[71,3],[72,3],[74,4],[75,5],[76,6],[77,7],[78,8],[79,9],[80,10],[81,11],[82,12],[83,13],[84,13],[86,14],[85,15],[87,16],[88,17],[89,18],[73,19],[123,20],[90,21],[91,22],[92,23],[124,24],[93,25],[94,26],[95,27],[96,28],[97,29],[98,30],[99,31],[100,32],[101,33],[102,34],[103,34],[104,35],[105,36],[107,37],[106,38],[108,39],[109,40],[110,41],[111,42],[112,43],[113,44],[114,45],[115,46],[116,47],[117,48],[118,49],[119,50],[120,51],[121,52],[122,53],[131,54],[132,54],[134,55],[133,54],[129,56],[130,57],[142,58],[135,59],[136,60],[137,60],[141,61],[138,20],[139,20],[140,59],[128,62],[125,20],[127,20],[126,20],[159,20],[146,20],[147,63],[70,64],[66,65],[68,65],[67,65],[69,65],[65,20],[63,20],[64,20],[12,20],[14,20],[13,20],[2,20],[15,20],[16,20],[17,20],[18,20],[19,20],[20,20],[21,20],[22,20],[3,20],[4,20],[23,20],[27,20],[24,20],[25,20],[26,20],[28,20],[29,20],[30,20],[5,20],[31,20],[32,20],[33,20],[34,20],[6,20],[38,20],[35,20],[36,20],[37,20],[39,20],[7,20],[40,20],[45,20],[46,20],[41,20],[42,20],[43,20],[44,20],[8,20],[50,20],[47,20],[48,20],[49,20],[51,20],[9,20],[52,20],[53,20],[54,20],[57,20],[55,20],[56,20],[58,20],[59,20],[10,20],[1,20],[11,20],[62,20],[61,20],[60,20],[163,76],[162,77],[161,78],[158,69],[156,70],[149,71],[153,71],[152,72],[148,20],[150,71],[157,73],[155,74],[154,71],[151,71],[160,75]],"semanticDiagnosticsPerFile":[145,144,71,72,74,75,76,77,78,79,80,81,82,83,84,86,85,87,88,89,73,123,90,91,92,124,93,94,95,96,97,98,99,100,101,102,103,104,105,107,106,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,131,132,134,133,129,130,142,135,136,137,141,138,139,140,128,125,127,126,159,146,147,70,66,68,67,69,65,63,64,12,14,13,2,15,16,17,18,19,20,21,22,3,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,11,62,61,60,143,163,162,161,164,158,156,149,153,152,148,150,157,155,154,151,160]},"version":"5.2.2"}
|
package/build/src/main.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{Cli as Y,Builtins as Z}from"clipanion";var z="Notion CLI",G="1.2.
|
|
1
|
+
import{Cli as Y,Builtins as Z}from"clipanion";var z="Notion CLI",G="1.2.10";import{join as w}from"path";import{mkdir as O,readFile as P}from"fs/promises";import K from"JSONStream";import W from"graceful-fs";import{promisify as oe}from"util";import ie from"stream";import se from"prettier";import{Option as S}from"clipanion";import{NotionAPI as N}from"@texonom/nclient";import{getBlockTitle as R,getCanonicalPageId as x,parsePageId as ae,formatDate as Q,getTextContent as q,getBlockParent as ne,defaultMapImageUrl as re,getAllInSpace as ce,getPageTitle as D}from"@texonom/nutils";import{isCollection as X,isSpace as le}from"@texonom/ntypes";import{Command as ee,Option as te}from"clipanion";var J=class extends ee{constructor(){super(...arguments);this.token=te.String("-t,--token",{description:"Notion Access Token"})}async execute(){}};var C=oe(W.writeFile),E=class extends J{constructor(){super();this.promises=[];this.folder=S.String("-o,--output","data",{description:"Export folder"});this.validation=S.Boolean("-v,--validation",{description:"Validation exported data only"});this.update=S.Boolean("-u,--update",{description:"Update exported data and resave to --folder"});this.page=S.String("-p,--page",{required:!0,description:"Target page to export"});this.recursive=S.Boolean("-r,--recursive",{description:"Recursively export children"});this.prefetch=S.Boolean("-f, --prefetch",{description:"Prefetch all space for faster export (recommended for exporting all pages in a space)"});this.load=S.Boolean("-l, --load",{description:"Load datas from exported cache folder --folder"});this.raw=S.Boolean("--raw",{description:`Export raw recordMap JSON data
|
|
2
2
|
Markdown format do not preserve all information`});this.dataset=S.Boolean("-d, --dataset",{description:"Export as dataset for LLM learning"})}async execute(){await super.execute();let o=ae(this.page);this.notion=new N,this.validation&&(C=async()=>{}),this.load&&await this.loadRaw(),this.prefetch&&await this.fetchRawSpace(o),console.time("time spent"),this.raw?this.recursive?await this.saveRawSpace():await this.saveRawPage(o):await this.exportMd(o,this.folder),await Promise.all(this.promises),console.timeEnd("time spent"),this.update&&(this.recursive?await this.saveRawSpace():await this.saveRawPage(o))}async loadRaw(){console.time("load prefetch file");let o=[];o.push(P(w(this.folder,"recordMap","block.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"recordMap","collection.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"recordMap","notion_user.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"recordMap","space.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"recordMap","collection_view.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"recordMap","collection_query.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"recordMap","signed_urls.json"),"utf8").then(JSON.parse)),o.push(P(w(this.folder,"pageTree.json"),"utf8").then(JSON.parse));let[e,t,s,a,i,l,c,m]=await Promise.all(o),d={},u=W.createReadStream(w(this.folder,"pageMap.json")),h=K.parse("*");u.pipe(h),h.on("data",g=>{let f=Object.keys(g.block)[0];d[f]=g}),await new Promise(g=>ie.finished(h,f=>g(f))),this.pageMap=d,this.pageTree=m,this.recordMap={block:e,collection:t,notion_user:s,space:a,collection_query:l,collection_view:i,signed_urls:c},console.timeEnd("load prefetch file")}async fetchRawSpace(o){let{recordMap:e,pageTree:t,pageMap:s}=await ce(o,this.notion.getPage.bind(this.notion),this.notion.getBlocks.bind(this.notion),this.notion.fetchCollections.bind(this.notion),{startRecordMap:this.recordMap,collectionConcurrency:100,concurrency:100,fetchOption:{timeout:1e4}});this.pageMap=s,this.recordMap=e,this.pageTree=t}async saveRawSpace(){if(this.validation)return;await O(this.folder,{recursive:!0});let o="json";console.time("write file");let e=[];await O(w(this.folder,"recordMap"),{recursive:!0});for(let a in this.recordMap)e.push(C(`${w(this.folder,"recordMap",a)}.${o}`,JSON.stringify(this.recordMap[a])));let t=W.createWriteStream(`${w(this.folder,"pageMap")}.${o}`),s=K.stringifyObject();s.pipe(t);for(let a in this.pageMap)s.write([a,this.pageMap[a]]);s.end(),e.push(C(`${w(this.folder,"pageTree")}.${o}`,JSON.stringify(this.pageTree))),await Promise.all(e),console.timeEnd("write file")}async saveRawPage(o){if(this.validation)return;await O(this.folder,{recursive:!0});let e=await this.notion.getPage(o),t=`${x(o,e)}`,s=JSON.stringify(e),a="json";s=await se.format(s,{parser:"json"}),await C(`${w(this.folder,t)}.${a}`,s)}async exportMd(o,e){try{let t=this.pageMap?this.pageMap[o]:await this.notion.getPage(o);this.recursive||(this.recordMap=t);try{t||(t=await this.notion.getPage(o))}catch{return}if(!["page","collection_view_page"].includes(t.block[o].value.type))throw new Error("Not a page");let s=await this.pageToMarkdown(o,t,e),a=w(e,`${x(o,t)}`);this.promises.push(C(`${a}.md`,s))}catch(t){console.error(o,t)}}async pageToMarkdown(o,e,t){var l,c;let s=e.block[o].value,a=`---
|
|
3
3
|
`;a+=`Title: ${await this.decorationsToMarkdown((l=s.properties)!=null&&l.title?s.properties.title:[["Untitled"]],e)}
|
|
4
4
|
`;let i=ne(s,e);if(le(i)?a+=`Parent: ${i.name}
|
package/build/src/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/main.ts","../../package.json","../../src/notion/export.ts","../../src/notion/index.ts"],"sourcesContent":["import { Cli, Builtins } from 'clipanion'\n\nimport { version, displayName } from '../package.json'\nimport { NotionExportCommand } from './notion/export'\n\nconst cli = new Cli({\n binaryName: 'notion',\n binaryLabel: displayName,\n binaryVersion: version\n})\n\ncli.register(NotionExportCommand)\ncli.register(Builtins.HelpCommand)\ncli.register(Builtins.VersionCommand)\ncli.runExit(process.argv.slice(2), Cli.defaultContext)\n\nexport * from './notion/export'\n","{\n \"name\": \"@texonom/cli\",\n \"displayName\": \"Notion CLI\",\n \"version\": \"1.2.8\",\n \"type\": \"module\",\n \"description\": \"Texonom CLI which has ability to export data from Notion.so\",\n \"repository\": \"texonom/notion-node\",\n \"author\": \"Alan Jo <sungle3737@gmail.com>\",\n \"license\": \"MIT\",\n \"main\": \"./build/src/main.js\",\n \"module\": \"./build/src/main.js\",\n \"types\": \"./build/src/main.d.ts\",\n \"sideEffects\": false,\n \"files\": [\n \"build\"\n ],\n \"engines\": {\n \"node\": \">=v12.22.12\"\n },\n \"bin\": {\n \"notion\": \"./build/src/main.js\"\n },\n \"scripts\": {\n \"build\": \"tsc && tsup\",\n \"watch\": \"tsup --watch --silent --onSuccess 'echo build successful'\",\n \"test\": \"vitest --run\",\n \"prerelease\": \"standard-version --skip.changelog --prerelease\",\n \"release\": \"standard-version --release-as\",\n \"pu\": \"pnpm publish\"\n },\n \"dependencies\": {\n \"@texonom/nclient\": \"workspace:^\",\n \"@texonom/ntypes\": \"workspace:^\",\n \"@texonom/nutils\": \"workspace:^\",\n \"JSONStream\": \"^1.3.5\",\n \"clipanion\": \"^3.2.1\",\n \"graceful-fs\": \"^4.2.11\",\n \"prettier\": \"^3.0.3\"\n },\n \"standard-version\": {\n \"skip\": {\n \"commit\": true,\n \"tag\": true\n }\n },\n \"devDependencies\": {\n \"@types/graceful-fs\": \"^4.1.8\",\n \"@types/jsonstream\": \"^0.8.32\"\n }\n}\n","import { join } from 'path'\nimport { mkdir, readFile } from 'fs/promises'\nimport JSONStream from 'JSONStream'\nimport fs from 'graceful-fs'\nimport { promisify } from 'util'\nimport stream from 'stream'\n\nimport prettier from 'prettier'\n\nimport { Option } from 'clipanion'\nimport { NotionAPI } from '@texonom/nclient'\nimport {\n getBlockTitle,\n getCanonicalPageId,\n parsePageId,\n formatDate,\n getTextContent,\n getBlockParent,\n defaultMapImageUrl,\n getAllInSpace,\n getPageTitle\n} from '@texonom/nutils'\nimport { isCollection, isSpace } from '@texonom/ntypes'\n\nimport { NotionCommand } from '.'\n\nimport type { PageTree } from '@texonom/nutils'\nimport type { ExtendedRecordMap, Decoration, PageBlock, Block, PageMap, CollectionViewBlock } from '@texonom/ntypes'\n\nlet writeFile = promisify(fs.writeFile)\n\nexport class NotionExportCommand extends NotionCommand {\n static paths = [['export']]\n notion: NotionAPI\n recordMap: ExtendedRecordMap\n pageTree: PageTree\n pageMap: PageMap\n promises: Promise<unknown>[] = []\n\n folder = Option.String('-o,--output', 'data', {\n description: 'Export folder'\n })\n validation = Option.Boolean('-v,--validation', {\n description: 'Validation exported data only'\n })\n update = Option.Boolean('-u,--update', {\n description: 'Update exported data and resave to --folder'\n })\n page = Option.String('-p,--page', {\n required: true,\n description: 'Target page to export'\n })\n recursive = Option.Boolean('-r,--recursive', {\n description: 'Recursively export children'\n })\n prefetch = Option.Boolean('-f, --prefetch', {\n description: 'Prefetch all space for faster export (recommended for exporting all pages in a space)'\n })\n load = Option.Boolean('-l, --load', {\n description: 'Load datas from exported cache folder --folder'\n })\n raw = Option.Boolean('--raw', {\n description: 'Export raw recordMap JSON data \\n Markdown format do not preserve all information'\n })\n dataset = Option.Boolean('-d, --dataset', {\n description: 'Export as dataset for LLM learning'\n })\n list: string[]\n constructor() {\n super()\n }\n\n // Main execution function\n async execute() {\n await super.execute()\n const id = parsePageId(this.page)\n this.notion = new NotionAPI()\n if (this.validation) writeFile = async () => {}\n\n // Load\n if (this.load) await this.loadRaw()\n if (this.prefetch) await this.fetchRawSpace(id)\n\n console.time('time spent')\n // Save\n if (this.raw)\n if (this.recursive) await this.saveRawSpace()\n else await this.saveRawPage(id)\n // Export\n else await this.exportMd(id, this.folder)\n await Promise.all(this.promises)\n console.timeEnd('time spent')\n // Update\n if (this.update)\n if (this.recursive) await this.saveRawSpace()\n else await this.saveRawPage(id)\n }\n\n async loadRaw() {\n console.time('load prefetch file')\n const promises = []\n promises.push(readFile(join(this.folder, 'recordMap', 'block.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'collection.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'notion_user.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'space.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'collection_view.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'collection_query.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'signed_urls.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'pageTree.json'), 'utf8').then(JSON.parse))\n\n const [block, collection, notion_user, space, collection_view, collection_query, signed_urls, pageTree] =\n await Promise.all(promises)\n\n const pageMap = {}\n const inputStream = fs.createReadStream(join(this.folder, 'pageMap.json'))\n const parseStream = JSONStream.parse('*')\n inputStream.pipe(parseStream)\n parseStream.on('data', (recordMap: ExtendedRecordMap) => {\n const key = Object.keys(recordMap.block)[0]\n pageMap[key] = recordMap\n })\n await new Promise(res => stream.finished(parseStream, err => res(err)))\n this.pageMap = pageMap\n this.pageTree = pageTree\n this.recordMap = { block, collection, notion_user, space, collection_query, collection_view, signed_urls }\n console.timeEnd('load prefetch file')\n }\n\n async fetchRawSpace(startPage: string) {\n const { recordMap, pageTree, pageMap } = await getAllInSpace(\n startPage,\n this.notion.getPage.bind(this.notion),\n this.notion.getBlocks.bind(this.notion),\n this.notion.fetchCollections.bind(this.notion),\n { startRecordMap: this.recordMap, collectionConcurrency: 100, concurrency: 100, fetchOption: { timeout: 10000 } }\n )\n this.pageMap = pageMap\n this.recordMap = recordMap\n this.pageTree = pageTree\n }\n\n async saveRawSpace() {\n if (this.validation) return\n await mkdir(this.folder, { recursive: true })\n const ext = 'json'\n console.time('write file')\n const promises = []\n await mkdir(join(this.folder, 'recordMap'), { recursive: true })\n for (const table in this.recordMap)\n promises.push(writeFile(`${join(this.folder, 'recordMap', table)}.${ext}`, JSON.stringify(this.recordMap[table])))\n\n const outputStream = fs.createWriteStream(`${join(this.folder, 'pageMap')}.${ext}`)\n const transformStream = JSONStream.stringifyObject()\n transformStream.pipe(outputStream)\n // @ts-ignore\n for (const key in this.pageMap) transformStream.write([key, this.pageMap[key]])\n transformStream.end()\n\n promises.push(writeFile(`${join(this.folder, 'pageTree')}.${ext}`, JSON.stringify(this.pageTree)))\n\n await Promise.all(promises)\n console.timeEnd('write file')\n }\n\n async saveRawPage(id: string) {\n if (this.validation) return\n await mkdir(this.folder, { recursive: true })\n const recordMap = await this.notion.getPage(id)\n const filename = `${getCanonicalPageId(id, recordMap)}`\n let target = JSON.stringify(recordMap)\n const ext = 'json'\n target = await prettier.format(target, { parser: 'json' })\n await writeFile(`${join(this.folder, filename)}.${ext}`, target)\n }\n\n async exportMd(id: string, folder: string) {\n try {\n let recordMap = this.pageMap ? this.pageMap[id] : await this.notion.getPage(id)\n if (!this.recursive) this.recordMap = recordMap\n try {\n if (!recordMap) recordMap = await this.notion.getPage(id)\n } catch {\n return\n }\n if (!['page', 'collection_view_page'].includes(recordMap.block[id].value.type)) throw new Error('Not a page')\n const target = await this.pageToMarkdown(id, recordMap, folder)\n const path = join(folder, `${getCanonicalPageId(id, recordMap)}`)\n this.promises.push(writeFile(`${path}.md`, target))\n } catch (e) {\n console.error(id, e)\n }\n }\n\n async pageToMarkdown(id: string, recordMap: ExtendedRecordMap, folder: string) {\n const page = recordMap.block[id].value as PageBlock\n\n // Metadata\n let md = `---\\n`\n md += `Title: ${await this.decorationsToMarkdown(\n page.properties?.title ? page.properties.title : [['Untitled']],\n recordMap\n )}\\n`\n const parent = getBlockParent(page, recordMap)\n if (isSpace(parent)) md += `Parent: ${parent.name}\\n`\n else if (isCollection(parent)) md += `Parent: ${getTextContent(parent.name)}\\n`\n else if (parent) md += `Parent: ${getBlockTitle(parent, recordMap)}\\n`\n\n // Collection Attributes\n if (isCollection(parent)) {\n const properties = parent?.schema ? Object.keys(parent.schema) : []\n properties.splice(properties.indexOf('title'), 1)\n for (const property of properties) {\n const propName = parent.schema[property].name\n const propType = parent.schema[property].type\n let value = String()\n switch (propType) {\n case 'text':\n value = page?.properties?.[property]\n ? await this.decorationsToMarkdown(page.properties[property], recordMap)\n : ''\n break\n case 'created_by': {\n const user = await this.getUser(page.created_by_id, recordMap)\n value = user ? user.name : 'Unknown'\n break\n }\n case 'last_edited_by': {\n const user = await this.getUser(page.last_edited_by_id, recordMap)\n value = user ? user.name : 'Unknown'\n break\n }\n case 'created_time':\n value = formatDate(page.created_time)\n break\n case 'last_edited_time':\n value = formatDate(page.last_edited_time)\n break\n default:\n value = ''\n }\n md += `${propName}: ${value}\\n`\n }\n }\n md += '---\\n'\n\n return md + (await this.childrenToMd(page, recordMap, '\\n', folder, page))\n }\n\n async getBlock(id: string, recordMap: ExtendedRecordMap, message = '') {\n let block = recordMap.block[id]?.value\n if (!block && this.recordMap) block = this.recordMap.block[id]?.value\n try {\n if (!block && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getBlocks([id])\n block = response.recordMap?.block?.[id]?.value\n }\n } catch {\n if (!block) console.debug(`${message} Missing block ${id}`)\n }\n if (block) {\n recordMap.block[id] = { value: block, role: 'reader' }\n if (this.recordMap) this.recordMap.block[id] = { value: block, role: 'reader' }\n }\n return block\n }\n\n async getUser(id: string, recordMap: ExtendedRecordMap) {\n let user = recordMap.notion_user[id]?.value\n if (!user && this.recordMap) user = this.recordMap.notion_user[id]?.value\n try {\n if (!user && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getUsers([id])\n user = response.recordMapWithRoles?.notion_user?.[id]?.value\n }\n } catch {\n if (!user) console.debug(`Missing user ${id}`)\n }\n if (user) {\n recordMap.notion_user[id] = { value: user, role: 'reader' }\n if (this.recordMap) this.recordMap.notion_user[id] = { value: user, role: 'reader' }\n }\n return user\n }\n\n async getSpace(id: string, recordMap: ExtendedRecordMap) {\n let space = recordMap.space[id]?.value\n if (!space && this.recordMap) space = this.recordMap.space[id]?.value\n try {\n if (!space && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getSpaces([id])\n space = response.recordMapWithRoles?.space?.[id]?.value\n if (space) {\n recordMap.space[id] = { value: space, role: 'reader' }\n if (this.recordMap) this.recordMap.space[id] = { value: space, role: 'reader' }\n }\n }\n } catch {\n if (!space) console.debug(`Missing space ${id}`)\n }\n return space\n }\n\n async getCollection(collectionViewBlock: CollectionViewBlock, recordMap: ExtendedRecordMap, message = '') {\n const collectionId = collectionViewBlock.collection_id\n let collection = recordMap.collection[collectionViewBlock.collection_id]?.value\n if (!collection && this.recordMap) {\n collection = this.recordMap.collection[collectionId]?.value\n if (collection) {\n recordMap.collection[collectionId] = this.recordMap.collection?.[collectionId]\n for (const viewId of collectionViewBlock.view_ids)\n recordMap.collection_view[viewId] = this.recordMap.collection_view?.[viewId]\n }\n }\n try {\n if (!collection && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getPageRaw(collectionViewBlock.id)\n collection = response.recordMap.collection[collectionId]?.value\n if (collection) {\n recordMap.collection_view = { ...recordMap.collection_view, ...response.recordMap.collection_view }\n recordMap.collection = { ...recordMap.collection, ...response.recordMap.collection }\n recordMap.block = { ...recordMap.block, ...response.recordMap.block }\n this.recordMap.collection_view = { ...this.recordMap.collection_view, ...response.recordMap.collection_view }\n this.recordMap.collection = { ...this.recordMap.collection, ...response.recordMap.collection }\n this.recordMap.block = { ...this.recordMap.block, ...response.recordMap.block }\n }\n }\n } catch {\n if (!collection) console.debug(`${message} Missing collection block ${collectionViewBlock.id}`)\n }\n await this.getCollectionView(collectionId, collectionViewBlock.view_ids[0], recordMap, message)\n return collection\n }\n\n async getCollectionView(collectionId: string, viewId: string, recordMap: ExtendedRecordMap, message = '') {\n let results = recordMap.collection_query?.[collectionId]?.[viewId]?.collection_group_results\n if (!results && this.recordMap) {\n results = this.recordMap.collection_query?.[collectionId]?.[viewId]?.collection_group_results\n if (results) {\n recordMap.collection_query![collectionId] = {\n ...recordMap.collection_query![collectionId],\n [viewId]: this.recordMap.collection_query?.[collectionId]?.[viewId]\n }\n recordMap.collection![collectionId] = {\n ...recordMap.collection![collectionId],\n [viewId]: this.recordMap.collection?.[collectionId]?.[viewId]\n }\n }\n }\n try {\n if (!results && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getCollectionData(collectionId, viewId, recordMap.collection_view[viewId]?.value)\n results = response.result?.reducerResults?.collection_group_results\n if (results) {\n recordMap.collection_query![collectionId] = {\n ...recordMap.collection_query![collectionId],\n [viewId]: response.result?.reducerResults\n }\n if (this.recordMap)\n this.recordMap.collection_query![collectionId] = {\n ...this.recordMap.collection_query![collectionId],\n [viewId]: response.result?.reducerResults\n }\n for (const blockId in response.recordMap.block) {\n const block = response.recordMap.block[blockId].value\n if (block) {\n recordMap.block[blockId] = { value: block, role: 'reader' }\n if (this.recordMap) this.recordMap.block[blockId] = { value: block, role: 'reader' }\n }\n }\n for (const collection in response.recordMap.collection) {\n const collectionValue = response.recordMap.collection[collection].value\n if (collectionValue) {\n recordMap.collection[collection] = { value: collectionValue, role: 'reader' }\n if (this.recordMap) this.recordMap.collection[collection] = { value: collectionValue, role: 'reader' }\n }\n }\n for (const collectionView in response.recordMap.collection_view) {\n const collectionViewValue = response.recordMap.collection_view[collectionView].value\n if (collectionViewValue) {\n recordMap.collection_view[collectionView] = { value: collectionViewValue, role: 'reader' }\n if (this.recordMap)\n this.recordMap.collection_view[collectionView] = { value: collectionViewValue, role: 'reader' }\n }\n }\n }\n }\n } catch {\n if (!results) console.debug(`${message} Missing collection view ${viewId}`)\n }\n return results\n }\n\n async childrenToMd(parentBlock: Block, recordMap: ExtendedRecordMap, prefix: string, folder: string, page: Block) {\n let md = String()\n let numbering = 1\n for (const child of parentBlock.content ? parentBlock.content : []) {\n const childBlock = await this.getBlock(child, recordMap, `${child} from ${getBlockTitle(page, recordMap)}`)\n if (!childBlock) continue\n\n const title = childBlock?.properties?.title\n switch (childBlock.type) {\n case 'header':\n md += `${prefix}# ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'sub_header':\n md += `${prefix}## ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'sub_sub_header':\n md += `${prefix}### ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'text':\n md += `${prefix}${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'bulleted_list':\n md += `${prefix}- ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'numbered_list':\n md += `${prefix}${numbering++}. ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'to_do':\n md += `${prefix}- [ ] ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'toggle':\n md += `${prefix}<details><summary>${prefix}${prefix}${await this.decorationsToMarkdown(\n title,\n recordMap\n )}</summary>\\n`\n break\n case 'quote':\n md += (await this.decorationsToMarkdown(title, recordMap, `\\n${prefix.trim()}> `)) + '\\n'\n break\n case 'code':\n md += `${prefix}\\`\\`\\`type${await this.decorationsToMarkdown(title, recordMap)}\\`\\`\\``\n break\n case 'equation':\n md += `${prefix}$$${await this.decorationsToMarkdown(title, recordMap)}$$`\n break\n case 'callout': {\n md += (await this.decorationsToMarkdown(title, recordMap, `\\n${prefix.trim()}> `)) + '\\n'\n break\n }\n case 'bookmark': {\n const nesting = `\\n${prefix.trim()}> `\n md += `${nesting}[${getTextContent(\n childBlock.properties?.title ? childBlock.properties.title : [['Untitled']]\n )}](${getTextContent(childBlock.properties.link)})\\n`\n break\n }\n case 'external_object_instance': {\n try {\n const url = childBlock.format.original_url\n const title = childBlock.format.attributes\n ? childBlock.format.attributes.filter(attr => attr.id === 'title')[0]?.values?.[0]\n : url\n if (!url) break\n md += `${prefix}${prefix}[${title}](${url})${prefix}`\n break\n } catch (e) {\n console.error(e, childBlock.id)\n break\n }\n }\n\n // Collection\n case 'collection_view_page':\n case 'collection_view': {\n const collection = await this.getCollection(\n childBlock as CollectionViewBlock,\n recordMap,\n `${childBlock.id} from ${getPageTitle(recordMap)}`\n )\n if (!collection) continue\n\n // Generate Table\n md += `${prefix}### ${await this.decorationsToMarkdown(collection.name, recordMap)}`\n md += `${prefix}|Title|\\n|:-:|`\n const views = childBlock.view_ids\n .map(id => {\n if (!recordMap.collection_view[id]) console.debug(`Missing view ${id} from ${collection.name}`)\n return recordMap.collection_view[id]?.value\n })\n .filter(Boolean)\n const children = []\n for (const view of views) {\n const results = await this.getCollectionView(\n collection.id,\n view.id,\n recordMap,\n `${collection.name} ${view.name}`\n )\n if (results) for (const result of results.blockIds) children.push(result)\n else break\n }\n for (const childPage of children) {\n const childBlock = recordMap.block[childPage]?.value\n if (!childBlock) console.debug(`no ${childPage} in ${collection.name[0]}`)\n md += `${prefix}|[${getBlockTitle(childBlock, recordMap)}](${getBlockLink(childPage, recordMap)})|`\n }\n\n // Make children page\n if (this.recursive && children.length) {\n const parentFolder = join(\n folder,\n `${getCanonicalPageId(page.id, recordMap)}`,\n `${getCanonicalPageId(collection.id, recordMap)}`\n )\n await mkdir(parentFolder, { recursive: true })\n for (const childPage of children) this.promises.push(this.exportMd(childPage, parentFolder))\n }\n break\n }\n case 'page': {\n md += `${prefix}${prefix}[${getBlockTitle(childBlock, recordMap)}](${getBlockLink(\n childBlock.id,\n recordMap\n )})${prefix}`\n if (this.recursive) {\n const parentFolder = join(folder, `${getCanonicalPageId(page.id, recordMap)}`)\n await mkdir(parentFolder, { recursive: true })\n this.promises.push(this.exportMd(childBlock.id, parentFolder))\n }\n break\n }\n case 'alias': {\n const aliasBlock = recordMap.block[childBlock.format?.alias_pointer?.id]?.value\n if (!aliasBlock) {\n console.debug(\n `Missing alias ${childBlock.format?.alias_pointer?.id} from ${getBlockTitle(page, recordMap)} ${page.id}`\n )\n continue\n }\n md += `${prefix}${prefix}[${getBlockTitle(aliasBlock, recordMap)}](${getBlockLink(\n aliasBlock.id,\n recordMap\n )})${prefix}`\n break\n }\n\n // Media\n case 'image': {\n const caption = childBlock.properties.caption ? getTextContent(childBlock.properties.caption) : ''\n md += `${prefix}})`\n break\n }\n\n case 'video':\n md += `${prefix}<video src=\"${childBlock.format.display_source} />`\n break\n\n // Embed\n case 'file':\n md += `${prefix}[File](${childBlock.format?.display_source})`\n break\n case 'pdf':\n md += `${prefix}<iframe src=\"${childBlock.format?.display_source}\"/>`\n break\n\n // Else\n case 'divider':\n md += `${prefix}---`\n break\n case 'column_list':\n break\n case 'column':\n break\n default:\n md += `${prefix}`\n }\n\n // Finalize\n if (childBlock.content && childBlock.type !== 'page' && childBlock.type !== 'collection_view_page') {\n const nestedPrefix = ['toggle', `transclusion_container`, `transclusion_reference`, 'column_list'].includes(\n childBlock.type\n )\n ? prefix\n : `\\n${prefix.trim()}> `\n md += await this.childrenToMd(childBlock, recordMap, nestedPrefix, folder, page)\n if (childBlock.type === 'column') md += '\\n'\n }\n if (childBlock.type === 'toggle') md += `${prefix}</details>${prefix}`\n }\n return md\n }\n\n async decorationsToMarkdown(decos: Decoration[], recordMap: ExtendedRecordMap, prefix = '') {\n if (!decos) return String()\n let md = String()\n for (const deco of decos) {\n let wrapper = String()\n const [text, subdecos] = deco\n if (!subdecos) {\n md += text\n } else {\n let textonly: string = text\n for (const subdeco of subdecos)\n switch (subdeco[0]) {\n case 'p': {\n const blockId = subdeco[1]\n const linkedBlock = await this.getBlock(blockId, recordMap, `\"p\" ${getPageTitle(recordMap)}`)\n if (!linkedBlock) break\n\n const title = getBlockTitle(linkedBlock, recordMap)\n const url = getBlockLink(blockId, recordMap)\n textonly = `[${title}](${url})`\n break\n }\n case 'a': {\n const url = subdeco[1]\n textonly = `[${text}](${url})`\n break\n }\n case 'i':\n wrapper += '*'\n break\n case 'b':\n wrapper += '**'\n break\n case 'h':\n // Disable for now == syntax does not supported well\n wrapper += ''\n break\n case 'c':\n wrapper += '`'\n break\n case 's':\n wrapper += '~~'\n break\n case 'e':\n wrapper += '$'\n textonly = subdeco[1]\n break\n case 'eoi': {\n try {\n const objectid = subdeco[1]\n const object = await this.getBlock(objectid, recordMap, `\"eoi\" ${getPageTitle(recordMap)}`)\n if (!object) break\n const url = object.format.uri\n const title = object.format.attributes\n ? object.format.attributes?.filter(attr => attr.id === 'title')[0]?.values?.[0]\n : url\n if (!url) break\n textonly = `[${title}](${url})`\n break\n } catch (e) {\n console.error(e, deco)\n break\n }\n }\n case 'u': {\n const user = await this.getUser(subdeco[1], recordMap)\n if (!user) break\n textonly = `[@${user.name}](mailto:${user.email})`\n break\n }\n }\n let decorated: string = textonly\n if (subdecos.find(subdeco => subdeco[0] === '_')) decorated = `<u>${textonly}</u>`\n decorated = wrapper + decorated + wrapper.split('').reverse().join('')\n md += decorated\n }\n }\n const lines = md.split('\\n')\n const prefixed = lines.map(line => prefix + line)\n return prefixed.join('')\n }\n}\n\nconst getBlockLink = (blockId: string, recordMap: ExtendedRecordMap, domain = 'https://texonom.com') =>\n `${domain}/${getCanonicalPageId(blockId, recordMap)}`\n","import { Command, Option } from 'clipanion'\n\nexport abstract class NotionCommand extends Command {\n // for private page or eoi like github inline block\n token = Option.String('-t,--token', {\n description: 'Notion Access Token'\n })\n async execute() {}\n}\n"],"mappings":"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","names":["Cli","Builtins","displayName","version","join","mkdir","readFile","JSONStream","fs","promisify","stream","prettier","Option","NotionAPI","getBlockTitle","getCanonicalPageId","parsePageId","formatDate","getTextContent","getBlockParent","defaultMapImageUrl","getAllInSpace","getPageTitle","isCollection","isSpace","Command","Option","NotionCommand","writeFile","promisify","fs","NotionExportCommand","NotionCommand","Option","id","parsePageId","NotionAPI","promises","readFile","join","block","collection","notion_user","space","collection_view","collection_query","signed_urls","pageTree","pageMap","inputStream","parseStream","JSONStream","recordMap","key","res","stream","err","startPage","getAllInSpace","mkdir","ext","table","outputStream","transformStream","filename","getCanonicalPageId","target","prettier","folder","path","e","_a","_b","page","md","parent","getBlockParent","isSpace","isCollection","getTextContent","getBlockTitle","properties","property","propName","propType","value","user","formatDate","message","_c","_d","_e","collectionViewBlock","collectionId","viewId","response","_f","_g","_h","_i","_j","_k","_l","_m","_n","_o","results","blockId","collectionValue","collectionView","collectionViewValue","parentBlock","prefix","numbering","child","childBlock","title","nesting","url","attr","getPageTitle","views","children","view","result","childPage","getBlockLink","parentFolder","aliasBlock","caption","defaultMapImageUrl","nestedPrefix","decos","deco","wrapper","text","subdecos","textonly","subdeco","linkedBlock","objectid","object","decorated","line","domain","cli","Cli","displayName","version","NotionExportCommand","Builtins"]}
|
|
1
|
+
{"version":3,"sources":["../../src/main.ts","../../package.json","../../src/notion/export.ts","../../src/notion/index.ts"],"sourcesContent":["import { Cli, Builtins } from 'clipanion'\n\nimport { version, displayName } from '../package.json'\nimport { NotionExportCommand } from './notion/export'\n\nconst cli = new Cli({\n binaryName: 'notion',\n binaryLabel: displayName,\n binaryVersion: version\n})\n\ncli.register(NotionExportCommand)\ncli.register(Builtins.HelpCommand)\ncli.register(Builtins.VersionCommand)\ncli.runExit(process.argv.slice(2), Cli.defaultContext)\n\nexport * from './notion/export'\n","{\n \"name\": \"@texonom/cli\",\n \"displayName\": \"Notion CLI\",\n \"version\": \"1.2.10\",\n \"type\": \"module\",\n \"description\": \"Texonom CLI which has ability to export data from Notion.so\",\n \"repository\": \"texonom/notion-node\",\n \"author\": \"Alan Jo <sungle3737@gmail.com>\",\n \"license\": \"MIT\",\n \"main\": \"./build/src/main.js\",\n \"module\": \"./build/src/main.js\",\n \"types\": \"./build/src/main.d.ts\",\n \"sideEffects\": false,\n \"files\": [\n \"build\"\n ],\n \"engines\": {\n \"node\": \">=v12.22.12\"\n },\n \"bin\": {\n \"notion\": \"./build/src/main.js\"\n },\n \"scripts\": {\n \"build\": \"tsc && tsup\",\n \"watch\": \"tsup --watch --silent --onSuccess 'echo build successful'\",\n \"test\": \"vitest --run\",\n \"prerelease\": \"standard-version --skip.changelog --prerelease\",\n \"release\": \"standard-version --release-as\",\n \"pu\": \"pnpm publish\"\n },\n \"dependencies\": {\n \"@texonom/nclient\": \"workspace:^\",\n \"@texonom/ntypes\": \"workspace:^\",\n \"@texonom/nutils\": \"workspace:^\",\n \"JSONStream\": \"^1.3.5\",\n \"clipanion\": \"^3.2.1\",\n \"graceful-fs\": \"^4.2.11\",\n \"prettier\": \"^3.0.3\"\n },\n \"standard-version\": {\n \"skip\": {\n \"commit\": true,\n \"tag\": true\n }\n },\n \"devDependencies\": {\n \"@types/graceful-fs\": \"^4.1.8\",\n \"@types/jsonstream\": \"^0.8.32\"\n }\n}\n","import { join } from 'path'\nimport { mkdir, readFile } from 'fs/promises'\nimport JSONStream from 'JSONStream'\nimport fs from 'graceful-fs'\nimport { promisify } from 'util'\nimport stream from 'stream'\n\nimport prettier from 'prettier'\n\nimport { Option } from 'clipanion'\nimport { NotionAPI } from '@texonom/nclient'\nimport {\n getBlockTitle,\n getCanonicalPageId,\n parsePageId,\n formatDate,\n getTextContent,\n getBlockParent,\n defaultMapImageUrl,\n getAllInSpace,\n getPageTitle\n} from '@texonom/nutils'\nimport { isCollection, isSpace } from '@texonom/ntypes'\n\nimport { NotionCommand } from '.'\n\nimport type { PageTree } from '@texonom/nutils'\nimport type { ExtendedRecordMap, Decoration, PageBlock, Block, PageMap, CollectionViewBlock } from '@texonom/ntypes'\n\nlet writeFile = promisify(fs.writeFile)\n\nexport class NotionExportCommand extends NotionCommand {\n static paths = [['export']]\n notion: NotionAPI\n recordMap: ExtendedRecordMap\n pageTree: PageTree\n pageMap: PageMap\n promises: Promise<unknown>[] = []\n\n folder = Option.String('-o,--output', 'data', {\n description: 'Export folder'\n })\n validation = Option.Boolean('-v,--validation', {\n description: 'Validation exported data only'\n })\n update = Option.Boolean('-u,--update', {\n description: 'Update exported data and resave to --folder'\n })\n page = Option.String('-p,--page', {\n required: true,\n description: 'Target page to export'\n })\n recursive = Option.Boolean('-r,--recursive', {\n description: 'Recursively export children'\n })\n prefetch = Option.Boolean('-f, --prefetch', {\n description: 'Prefetch all space for faster export (recommended for exporting all pages in a space)'\n })\n load = Option.Boolean('-l, --load', {\n description: 'Load datas from exported cache folder --folder'\n })\n raw = Option.Boolean('--raw', {\n description: 'Export raw recordMap JSON data \\n Markdown format do not preserve all information'\n })\n dataset = Option.Boolean('-d, --dataset', {\n description: 'Export as dataset for LLM learning'\n })\n list: string[]\n constructor() {\n super()\n }\n\n // Main execution function\n async execute() {\n await super.execute()\n const id = parsePageId(this.page)\n this.notion = new NotionAPI()\n if (this.validation) writeFile = async () => {}\n\n // Load\n if (this.load) await this.loadRaw()\n if (this.prefetch) await this.fetchRawSpace(id)\n\n console.time('time spent')\n // Save\n if (this.raw)\n if (this.recursive) await this.saveRawSpace()\n else await this.saveRawPage(id)\n // Export\n else await this.exportMd(id, this.folder)\n await Promise.all(this.promises)\n console.timeEnd('time spent')\n // Update\n if (this.update)\n if (this.recursive) await this.saveRawSpace()\n else await this.saveRawPage(id)\n }\n\n async loadRaw() {\n console.time('load prefetch file')\n const promises = []\n promises.push(readFile(join(this.folder, 'recordMap', 'block.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'collection.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'notion_user.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'space.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'collection_view.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'collection_query.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'recordMap', 'signed_urls.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(this.folder, 'pageTree.json'), 'utf8').then(JSON.parse))\n\n const [block, collection, notion_user, space, collection_view, collection_query, signed_urls, pageTree] =\n await Promise.all(promises)\n\n const pageMap = {}\n const inputStream = fs.createReadStream(join(this.folder, 'pageMap.json'))\n const parseStream = JSONStream.parse('*')\n inputStream.pipe(parseStream)\n parseStream.on('data', (recordMap: ExtendedRecordMap) => {\n const key = Object.keys(recordMap.block)[0]\n pageMap[key] = recordMap\n })\n await new Promise(res => stream.finished(parseStream, err => res(err)))\n this.pageMap = pageMap\n this.pageTree = pageTree\n this.recordMap = { block, collection, notion_user, space, collection_query, collection_view, signed_urls }\n console.timeEnd('load prefetch file')\n }\n\n async fetchRawSpace(startPage: string) {\n const { recordMap, pageTree, pageMap } = await getAllInSpace(\n startPage,\n this.notion.getPage.bind(this.notion),\n this.notion.getBlocks.bind(this.notion),\n this.notion.fetchCollections.bind(this.notion),\n { startRecordMap: this.recordMap, collectionConcurrency: 100, concurrency: 100, fetchOption: { timeout: 10000 } }\n )\n this.pageMap = pageMap\n this.recordMap = recordMap\n this.pageTree = pageTree\n }\n\n async saveRawSpace() {\n if (this.validation) return\n await mkdir(this.folder, { recursive: true })\n const ext = 'json'\n console.time('write file')\n const promises = []\n await mkdir(join(this.folder, 'recordMap'), { recursive: true })\n for (const table in this.recordMap)\n promises.push(writeFile(`${join(this.folder, 'recordMap', table)}.${ext}`, JSON.stringify(this.recordMap[table])))\n\n const outputStream = fs.createWriteStream(`${join(this.folder, 'pageMap')}.${ext}`)\n const transformStream = JSONStream.stringifyObject()\n transformStream.pipe(outputStream)\n // @ts-ignore\n for (const key in this.pageMap) transformStream.write([key, this.pageMap[key]])\n transformStream.end()\n\n promises.push(writeFile(`${join(this.folder, 'pageTree')}.${ext}`, JSON.stringify(this.pageTree)))\n\n await Promise.all(promises)\n console.timeEnd('write file')\n }\n\n async saveRawPage(id: string) {\n if (this.validation) return\n await mkdir(this.folder, { recursive: true })\n const recordMap = await this.notion.getPage(id)\n const filename = `${getCanonicalPageId(id, recordMap)}`\n let target = JSON.stringify(recordMap)\n const ext = 'json'\n target = await prettier.format(target, { parser: 'json' })\n await writeFile(`${join(this.folder, filename)}.${ext}`, target)\n }\n\n async exportMd(id: string, folder: string) {\n try {\n let recordMap = this.pageMap ? this.pageMap[id] : await this.notion.getPage(id)\n if (!this.recursive) this.recordMap = recordMap\n try {\n if (!recordMap) recordMap = await this.notion.getPage(id)\n } catch {\n return\n }\n if (!['page', 'collection_view_page'].includes(recordMap.block[id].value.type)) throw new Error('Not a page')\n const target = await this.pageToMarkdown(id, recordMap, folder)\n const path = join(folder, `${getCanonicalPageId(id, recordMap)}`)\n this.promises.push(writeFile(`${path}.md`, target))\n } catch (e) {\n console.error(id, e)\n }\n }\n\n async pageToMarkdown(id: string, recordMap: ExtendedRecordMap, folder: string) {\n const page = recordMap.block[id].value as PageBlock\n\n // Metadata\n let md = `---\\n`\n md += `Title: ${await this.decorationsToMarkdown(\n page.properties?.title ? page.properties.title : [['Untitled']],\n recordMap\n )}\\n`\n const parent = getBlockParent(page, recordMap)\n if (isSpace(parent)) md += `Parent: ${parent.name}\\n`\n else if (isCollection(parent)) md += `Parent: ${getTextContent(parent.name)}\\n`\n else if (parent) md += `Parent: ${getBlockTitle(parent, recordMap)}\\n`\n\n // Collection Attributes\n if (isCollection(parent)) {\n const properties = parent?.schema ? Object.keys(parent.schema) : []\n properties.splice(properties.indexOf('title'), 1)\n for (const property of properties) {\n const propName = parent.schema[property].name\n const propType = parent.schema[property].type\n let value = String()\n switch (propType) {\n case 'text':\n value = page?.properties?.[property]\n ? await this.decorationsToMarkdown(page.properties[property], recordMap)\n : ''\n break\n case 'created_by': {\n const user = await this.getUser(page.created_by_id, recordMap)\n value = user ? user.name : 'Unknown'\n break\n }\n case 'last_edited_by': {\n const user = await this.getUser(page.last_edited_by_id, recordMap)\n value = user ? user.name : 'Unknown'\n break\n }\n case 'created_time':\n value = formatDate(page.created_time)\n break\n case 'last_edited_time':\n value = formatDate(page.last_edited_time)\n break\n default:\n value = ''\n }\n md += `${propName}: ${value}\\n`\n }\n }\n md += '---\\n'\n\n return md + (await this.childrenToMd(page, recordMap, '\\n', folder, page))\n }\n\n async getBlock(id: string, recordMap: ExtendedRecordMap, message = '') {\n let block = recordMap.block[id]?.value\n if (!block && this.recordMap) block = this.recordMap.block[id]?.value\n try {\n if (!block && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getBlocks([id])\n block = response.recordMap?.block?.[id]?.value\n }\n } catch {\n if (!block) console.debug(`${message} Missing block ${id}`)\n }\n if (block) {\n recordMap.block[id] = { value: block, role: 'reader' }\n if (this.recordMap) this.recordMap.block[id] = { value: block, role: 'reader' }\n }\n return block\n }\n\n async getUser(id: string, recordMap: ExtendedRecordMap) {\n let user = recordMap.notion_user[id]?.value\n if (!user && this.recordMap) user = this.recordMap.notion_user[id]?.value\n try {\n if (!user && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getUsers([id])\n user = response.recordMapWithRoles?.notion_user?.[id]?.value\n }\n } catch {\n if (!user) console.debug(`Missing user ${id}`)\n }\n if (user) {\n recordMap.notion_user[id] = { value: user, role: 'reader' }\n if (this.recordMap) this.recordMap.notion_user[id] = { value: user, role: 'reader' }\n }\n return user\n }\n\n async getSpace(id: string, recordMap: ExtendedRecordMap) {\n let space = recordMap.space[id]?.value\n if (!space && this.recordMap) space = this.recordMap.space[id]?.value\n try {\n if (!space && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getSpaces([id])\n space = response.recordMapWithRoles?.space?.[id]?.value\n if (space) {\n recordMap.space[id] = { value: space, role: 'reader' }\n if (this.recordMap) this.recordMap.space[id] = { value: space, role: 'reader' }\n }\n }\n } catch {\n if (!space) console.debug(`Missing space ${id}`)\n }\n return space\n }\n\n async getCollection(collectionViewBlock: CollectionViewBlock, recordMap: ExtendedRecordMap, message = '') {\n const collectionId = collectionViewBlock.collection_id\n let collection = recordMap.collection[collectionViewBlock.collection_id]?.value\n if (!collection && this.recordMap) {\n collection = this.recordMap.collection[collectionId]?.value\n if (collection) {\n recordMap.collection[collectionId] = this.recordMap.collection?.[collectionId]\n for (const viewId of collectionViewBlock.view_ids)\n recordMap.collection_view[viewId] = this.recordMap.collection_view?.[viewId]\n }\n }\n try {\n if (!collection && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getPageRaw(collectionViewBlock.id)\n collection = response.recordMap.collection[collectionId]?.value\n if (collection) {\n recordMap.collection_view = { ...recordMap.collection_view, ...response.recordMap.collection_view }\n recordMap.collection = { ...recordMap.collection, ...response.recordMap.collection }\n recordMap.block = { ...recordMap.block, ...response.recordMap.block }\n this.recordMap.collection_view = { ...this.recordMap.collection_view, ...response.recordMap.collection_view }\n this.recordMap.collection = { ...this.recordMap.collection, ...response.recordMap.collection }\n this.recordMap.block = { ...this.recordMap.block, ...response.recordMap.block }\n }\n }\n } catch {\n if (!collection) console.debug(`${message} Missing collection block ${collectionViewBlock.id}`)\n }\n await this.getCollectionView(collectionId, collectionViewBlock.view_ids[0], recordMap, message)\n return collection\n }\n\n async getCollectionView(collectionId: string, viewId: string, recordMap: ExtendedRecordMap, message = '') {\n let results = recordMap.collection_query?.[collectionId]?.[viewId]?.collection_group_results\n if (!results && this.recordMap) {\n results = this.recordMap.collection_query?.[collectionId]?.[viewId]?.collection_group_results\n if (results) {\n recordMap.collection_query![collectionId] = {\n ...recordMap.collection_query![collectionId],\n [viewId]: this.recordMap.collection_query?.[collectionId]?.[viewId]\n }\n recordMap.collection![collectionId] = {\n ...recordMap.collection![collectionId],\n [viewId]: this.recordMap.collection?.[collectionId]?.[viewId]\n }\n }\n }\n try {\n if (!results && this.token) {\n const notion = new NotionAPI({ authToken: this.token })\n const response = await notion.getCollectionData(collectionId, viewId, recordMap.collection_view[viewId]?.value)\n results = response.result?.reducerResults?.collection_group_results\n if (results) {\n recordMap.collection_query![collectionId] = {\n ...recordMap.collection_query![collectionId],\n [viewId]: response.result?.reducerResults\n }\n if (this.recordMap)\n this.recordMap.collection_query![collectionId] = {\n ...this.recordMap.collection_query![collectionId],\n [viewId]: response.result?.reducerResults\n }\n for (const blockId in response.recordMap.block) {\n const block = response.recordMap.block[blockId].value\n if (block) {\n recordMap.block[blockId] = { value: block, role: 'reader' }\n if (this.recordMap) this.recordMap.block[blockId] = { value: block, role: 'reader' }\n }\n }\n for (const collection in response.recordMap.collection) {\n const collectionValue = response.recordMap.collection[collection].value\n if (collectionValue) {\n recordMap.collection[collection] = { value: collectionValue, role: 'reader' }\n if (this.recordMap) this.recordMap.collection[collection] = { value: collectionValue, role: 'reader' }\n }\n }\n for (const collectionView in response.recordMap.collection_view) {\n const collectionViewValue = response.recordMap.collection_view[collectionView].value\n if (collectionViewValue) {\n recordMap.collection_view[collectionView] = { value: collectionViewValue, role: 'reader' }\n if (this.recordMap)\n this.recordMap.collection_view[collectionView] = { value: collectionViewValue, role: 'reader' }\n }\n }\n }\n }\n } catch {\n if (!results) console.debug(`${message} Missing collection view ${viewId}`)\n }\n return results\n }\n\n async childrenToMd(parentBlock: Block, recordMap: ExtendedRecordMap, prefix: string, folder: string, page: Block) {\n let md = String()\n let numbering = 1\n for (const child of parentBlock.content ? parentBlock.content : []) {\n const childBlock = await this.getBlock(child, recordMap, `${child} from ${getBlockTitle(page, recordMap)}`)\n if (!childBlock) continue\n\n const title = childBlock?.properties?.title\n switch (childBlock.type) {\n case 'header':\n md += `${prefix}# ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'sub_header':\n md += `${prefix}## ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'sub_sub_header':\n md += `${prefix}### ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'text':\n md += `${prefix}${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'bulleted_list':\n md += `${prefix}- ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'numbered_list':\n md += `${prefix}${numbering++}. ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'to_do':\n md += `${prefix}- [ ] ${await this.decorationsToMarkdown(title, recordMap)}`\n break\n case 'toggle':\n md += `${prefix}<details><summary>${prefix}${prefix}${await this.decorationsToMarkdown(\n title,\n recordMap\n )}</summary>\\n`\n break\n case 'quote':\n md += (await this.decorationsToMarkdown(title, recordMap, `\\n${prefix.trim()}> `)) + '\\n'\n break\n case 'code':\n md += `${prefix}\\`\\`\\`type${await this.decorationsToMarkdown(title, recordMap)}\\`\\`\\``\n break\n case 'equation':\n md += `${prefix}$$${await this.decorationsToMarkdown(title, recordMap)}$$`\n break\n case 'callout': {\n md += (await this.decorationsToMarkdown(title, recordMap, `\\n${prefix.trim()}> `)) + '\\n'\n break\n }\n case 'bookmark': {\n const nesting = `\\n${prefix.trim()}> `\n md += `${nesting}[${getTextContent(\n childBlock.properties?.title ? childBlock.properties.title : [['Untitled']]\n )}](${getTextContent(childBlock.properties.link)})\\n`\n break\n }\n case 'external_object_instance': {\n try {\n const url = childBlock.format.original_url\n const title = childBlock.format.attributes\n ? childBlock.format.attributes.filter(attr => attr.id === 'title')[0]?.values?.[0]\n : url\n if (!url) break\n md += `${prefix}${prefix}[${title}](${url})${prefix}`\n break\n } catch (e) {\n console.error(e, childBlock.id)\n break\n }\n }\n\n // Collection\n case 'collection_view_page':\n case 'collection_view': {\n const collection = await this.getCollection(\n childBlock as CollectionViewBlock,\n recordMap,\n `${childBlock.id} from ${getPageTitle(recordMap)}`\n )\n if (!collection) continue\n\n // Generate Table\n md += `${prefix}### ${await this.decorationsToMarkdown(collection.name, recordMap)}`\n md += `${prefix}|Title|\\n|:-:|`\n const views = childBlock.view_ids\n .map(id => {\n if (!recordMap.collection_view[id]) console.debug(`Missing view ${id} from ${collection.name}`)\n return recordMap.collection_view[id]?.value\n })\n .filter(Boolean)\n const children = []\n for (const view of views) {\n const results = await this.getCollectionView(\n collection.id,\n view.id,\n recordMap,\n `${collection.name} ${view.name}`\n )\n if (results) for (const result of results.blockIds) children.push(result)\n else break\n }\n for (const childPage of children) {\n const childBlock = recordMap.block[childPage]?.value\n if (!childBlock) console.debug(`no ${childPage} in ${collection.name[0]}`)\n md += `${prefix}|[${getBlockTitle(childBlock, recordMap)}](${getBlockLink(childPage, recordMap)})|`\n }\n\n // Make children page\n if (this.recursive && children.length) {\n const parentFolder = join(\n folder,\n `${getCanonicalPageId(page.id, recordMap)}`,\n `${getCanonicalPageId(collection.id, recordMap)}`\n )\n await mkdir(parentFolder, { recursive: true })\n for (const childPage of children) this.promises.push(this.exportMd(childPage, parentFolder))\n }\n break\n }\n case 'page': {\n md += `${prefix}${prefix}[${getBlockTitle(childBlock, recordMap)}](${getBlockLink(\n childBlock.id,\n recordMap\n )})${prefix}`\n if (this.recursive) {\n const parentFolder = join(folder, `${getCanonicalPageId(page.id, recordMap)}`)\n await mkdir(parentFolder, { recursive: true })\n this.promises.push(this.exportMd(childBlock.id, parentFolder))\n }\n break\n }\n case 'alias': {\n const aliasBlock = recordMap.block[childBlock.format?.alias_pointer?.id]?.value\n if (!aliasBlock) {\n console.debug(\n `Missing alias ${childBlock.format?.alias_pointer?.id} from ${getBlockTitle(page, recordMap)} ${page.id}`\n )\n continue\n }\n md += `${prefix}${prefix}[${getBlockTitle(aliasBlock, recordMap)}](${getBlockLink(\n aliasBlock.id,\n recordMap\n )})${prefix}`\n break\n }\n\n // Media\n case 'image': {\n const caption = childBlock.properties.caption ? getTextContent(childBlock.properties.caption) : ''\n md += `${prefix}})`\n break\n }\n\n case 'video':\n md += `${prefix}<video src=\"${childBlock.format.display_source} />`\n break\n\n // Embed\n case 'file':\n md += `${prefix}[File](${childBlock.format?.display_source})`\n break\n case 'pdf':\n md += `${prefix}<iframe src=\"${childBlock.format?.display_source}\"/>`\n break\n\n // Else\n case 'divider':\n md += `${prefix}---`\n break\n case 'column_list':\n break\n case 'column':\n break\n default:\n md += `${prefix}`\n }\n\n // Finalize\n if (childBlock.content && childBlock.type !== 'page' && childBlock.type !== 'collection_view_page') {\n const nestedPrefix = ['toggle', `transclusion_container`, `transclusion_reference`, 'column_list'].includes(\n childBlock.type\n )\n ? prefix\n : `\\n${prefix.trim()}> `\n md += await this.childrenToMd(childBlock, recordMap, nestedPrefix, folder, page)\n if (childBlock.type === 'column') md += '\\n'\n }\n if (childBlock.type === 'toggle') md += `${prefix}</details>${prefix}`\n }\n return md\n }\n\n async decorationsToMarkdown(decos: Decoration[], recordMap: ExtendedRecordMap, prefix = '') {\n if (!decos) return String()\n let md = String()\n for (const deco of decos) {\n let wrapper = String()\n const [text, subdecos] = deco\n if (!subdecos) {\n md += text\n } else {\n let textonly: string = text\n for (const subdeco of subdecos)\n switch (subdeco[0]) {\n case 'p': {\n const blockId = subdeco[1]\n const linkedBlock = await this.getBlock(blockId, recordMap, `\"p\" ${getPageTitle(recordMap)}`)\n if (!linkedBlock) break\n\n const title = getBlockTitle(linkedBlock, recordMap)\n const url = getBlockLink(blockId, recordMap)\n textonly = `[${title}](${url})`\n break\n }\n case 'a': {\n const url = subdeco[1]\n textonly = `[${text}](${url})`\n break\n }\n case 'i':\n wrapper += '*'\n break\n case 'b':\n wrapper += '**'\n break\n case 'h':\n // Disable for now == syntax does not supported well\n wrapper += ''\n break\n case 'c':\n wrapper += '`'\n break\n case 's':\n wrapper += '~~'\n break\n case 'e':\n wrapper += '$'\n textonly = subdeco[1]\n break\n case 'eoi': {\n try {\n const objectid = subdeco[1]\n const object = await this.getBlock(objectid, recordMap, `\"eoi\" ${getPageTitle(recordMap)}`)\n if (!object) break\n const url = object.format.uri\n const title = object.format.attributes\n ? object.format.attributes?.filter(attr => attr.id === 'title')[0]?.values?.[0]\n : url\n if (!url) break\n textonly = `[${title}](${url})`\n break\n } catch (e) {\n console.error(e, deco)\n break\n }\n }\n case 'u': {\n const user = await this.getUser(subdeco[1], recordMap)\n if (!user) break\n textonly = `[@${user.name}](mailto:${user.email})`\n break\n }\n }\n let decorated: string = textonly\n if (subdecos.find(subdeco => subdeco[0] === '_')) decorated = `<u>${textonly}</u>`\n decorated = wrapper + decorated + wrapper.split('').reverse().join('')\n md += decorated\n }\n }\n const lines = md.split('\\n')\n const prefixed = lines.map(line => prefix + line)\n return prefixed.join('')\n }\n}\n\nconst getBlockLink = (blockId: string, recordMap: ExtendedRecordMap, domain = 'https://texonom.com') =>\n `${domain}/${getCanonicalPageId(blockId, recordMap)}`\n","import { Command, Option } from 'clipanion'\n\nexport abstract class NotionCommand extends Command {\n // for private page or eoi like github inline block\n token = Option.String('-t,--token', {\n description: 'Notion Access Token'\n })\n async execute() {}\n}\n"],"mappings":"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","names":["Cli","Builtins","displayName","version","join","mkdir","readFile","JSONStream","fs","promisify","stream","prettier","Option","NotionAPI","getBlockTitle","getCanonicalPageId","parsePageId","formatDate","getTextContent","getBlockParent","defaultMapImageUrl","getAllInSpace","getPageTitle","isCollection","isSpace","Command","Option","NotionCommand","writeFile","promisify","fs","NotionExportCommand","NotionCommand","Option","id","parsePageId","NotionAPI","promises","readFile","join","block","collection","notion_user","space","collection_view","collection_query","signed_urls","pageTree","pageMap","inputStream","parseStream","JSONStream","recordMap","key","res","stream","err","startPage","getAllInSpace","mkdir","ext","table","outputStream","transformStream","filename","getCanonicalPageId","target","prettier","folder","path","e","_a","_b","page","md","parent","getBlockParent","isSpace","isCollection","getTextContent","getBlockTitle","properties","property","propName","propType","value","user","formatDate","message","_c","_d","_e","collectionViewBlock","collectionId","viewId","response","_f","_g","_h","_i","_j","_k","_l","_m","_n","_o","results","blockId","collectionValue","collectionView","collectionViewValue","parentBlock","prefix","numbering","child","childBlock","title","nesting","url","attr","getPageTitle","views","children","view","result","childPage","getBlockLink","parentFolder","aliasBlock","caption","defaultMapImageUrl","nestedPrefix","decos","deco","wrapper","text","subdecos","textonly","subdeco","linkedBlock","objectid","object","decorated","line","domain","cli","Cli","displayName","version","NotionExportCommand","Builtins"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@texonom/cli",
|
|
3
3
|
"displayName": "Notion CLI",
|
|
4
|
-
"version": "1.2.
|
|
4
|
+
"version": "1.2.10",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Texonom CLI which has ability to export data from Notion.so",
|
|
7
7
|
"repository": "texonom/notion-node",
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
"clipanion": "^3.2.1",
|
|
26
26
|
"graceful-fs": "^4.2.11",
|
|
27
27
|
"prettier": "^3.0.3",
|
|
28
|
-
"@texonom/nclient": "^1.2.
|
|
29
|
-
"@texonom/
|
|
30
|
-
"@texonom/
|
|
28
|
+
"@texonom/nclient": "^1.2.10",
|
|
29
|
+
"@texonom/nutils": "^1.2.10",
|
|
30
|
+
"@texonom/ntypes": "^1.2.10"
|
|
31
31
|
},
|
|
32
32
|
"standard-version": {
|
|
33
33
|
"skip": {
|