@texonom/cli 1.4.2 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"fileNames":["../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/types.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/predicates/cascadingpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/predicates/typepredicates.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/predicates/helperpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/tools.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/index.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/buffer@5.7.1/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/core.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/format.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/errors.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/utils.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/cli.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/command.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/definitions.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/help.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/version.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/array.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/boolean.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/counter.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/proxy.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/rest.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/string.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/index.d.ts","../package.json","../../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","../../../node_modules/.pnpm/@types+jsonstream@0.8.33/node_modules/@types/jsonstream/index.d.ts","../../../node_modules/.pnpm/@types+graceful-fs@4.1.9/node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/.pnpm/prettier@3.4.2/node_modules/prettier/doc.d.ts","../../../node_modules/.pnpm/prettier@3.4.2/node_modules/prettier/index.d.ts","../src/notion/index.ts","../src/notion/export.ts","../src/main.ts","../src/treemap.ts","../src/types.ts","../../../node_modules/.pnpm/@vitest+pretty-format@2.1.8/node_modules/@vitest/pretty-format/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/helpers.d.ts","../../../node_modules/.pnpm/tinyrainbow@1.2.0/node_modules/tinyrainbow/dist/index-c1cfc5e9.d.ts","../../../node_modules/.pnpm/tinyrainbow@1.2.0/node_modules/tinyrainbow/dist/node.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/tasks-3znpj1lr.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/types-bxe-2udy.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/diff.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/error.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/environment.looobwuu.d.ts","../../../node_modules/.pnpm/@types+estree@1.0.6/node_modules/@types/estree/index.d.ts","../../../node_modules/.pnpm/rollup@4.27.3/node_modules/rollup/dist/rollup.d.ts","../../../node_modules/.pnpm/rollup@4.27.3/node_modules/rollup/dist/parseast.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/hmrpayload.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/customevent.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/hot.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/dist/node/types.d-agj9qkwt.d.ts","../../../node_modules/.pnpm/esbuild@0.21.5/node_modules/esbuild/lib/main.d.ts","../../../node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/source-map.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/previous-map.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/input.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/css-syntax-error.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/declaration.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/root.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/warning.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/lazy-result.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/no-work-result.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/processor.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/result.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/document.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/rule.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/node.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/comment.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/container.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/at-rule.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/list.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/postcss.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/postcss.d.mts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/dist/node/runtime.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/importglob.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/metadata.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/dist/node/index.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/environment-ddx0edty.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/rawsnapshot-cpnkto81.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/environment.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/config.cy0c388z.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/trace-mapping.d-dlvdeqop.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/index-z0r8hvru.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/source-map.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/client.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/server.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/utils.d.ts","../../../node_modules/.pnpm/tinybench@2.9.0/node_modules/tinybench/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/benchmark.geerunq4.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/manager.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/reporters.d7jzd9gs.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/worker.tn5kgiih.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/worker.b9fxpcac.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/vite.c-n5bbze.d.ts","../../../node_modules/.pnpm/@vitest+expect@2.1.8/node_modules/@vitest/expect/dist/chai.d.cts","../../../node_modules/.pnpm/@vitest+expect@2.1.8/node_modules/@vitest/expect/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@2.1.8/node_modules/@vitest/expect/index.d.ts","../../../node_modules/.pnpm/@vitest+spy@2.1.8/node_modules/@vitest/spy/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+mocker@2.1.8_vite@5.4.11_@types+node@22.10.5_/node_modules/@vitest/mocker/dist/types-dzoqtgin.d.ts","../../../node_modules/.pnpm/@vitest+mocker@2.1.8_vite@5.4.11_@types+node@22.10.5_/node_modules/@vitest/mocker/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/mocker.crtm890j.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/suite.b2jumifp.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/utils.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/overloads.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/branding.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/messages.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/index.d.ts","../src/notion/export.test.ts"],"fileIdsList":[[89,132],[89,132,145,182],[89,132,182],[89,129,132],[89,131,132],[132],[89,132,137,167],[89,132,133,138,144,145,152,164,175],[89,132,133,134,144,152],[84,85,86,89,132],[89,132,135,176],[89,132,136,137,145,153],[89,132,137,164,172],[89,132,138,140,144,152],[89,131,132,139],[89,132,140,141],[89,132,144],[89,132,142,144],[89,131,132,144],[89,132,144,145,146,164,175],[89,132,144,145,146,159,164,167],[89,127,132,180],[89,127,132,140,144,147,152,164,175],[89,132,144,145,147,148,152,164,172,175],[89,132,147,149,164,172,175],[87,88,89,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],[89,132,144,150],[89,132,151,175,180],[89,132,140,144,152,164],[89,132,153],[89,132,154],[89,131,132,155],[89,129,130,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],[89,132,157],[89,132,158],[89,132,144,159,160],[89,132,159,161,176,178],[89,132,144,164,165,166,167],[89,132,164,166],[89,132,164,165],[89,132,167],[89,132,168],[89,129,132,164],[89,132,144,170,171],[89,132,170,171],[89,132,137,152,164,172],[89,132,173],[89,132,152,174],[89,132,147,158,175],[89,132,137,176],[89,132,164,177],[89,132,151,178],[89,132,179],[89,132,137,144,146,155,164,175,178,180],[89,132,164,181],[89,132,228,229,232],[89,132,289],[89,132,292],[89,132,229,230,232,233,234],[89,132,229],[89,132,229,230,232],[89,132,229,230],[89,132,269],[89,132,224,269,270],[89,132,224,269],[89,132,224,231],[89,132,225],[89,132,224,225,226,228],[89,132,224],[89,132,188],[89,132,189,190,191],[89,132,164,182,183,184,186,188],[83,89,132,186,187],[89,132,184,185,187,188,192,199],[83,89,132,186],[89,132,186],[89,132,186,193,194,195,196,197,198],[83,89,132,183,185,187],[89,132,296,297],[89,132,296,297,298,299],[89,132,296,298],[89,132,296],[89,132,260],[89,132,258,260],[89,132,249,257,258,259,261],[89,132,247],[89,132,250,255,260,263],[89,132,246,263],[89,132,250,251,254,255,256,263],[89,132,250,251,252,254,255,263],[89,132,247,248,249,250,251,255,256,257,259,260,261,263],[89,132,263],[89,132,245,247,248,249,250,251,252,254,255,256,257,258,259,260,261,262],[89,132,245,263],[89,132,250,252,253,255,256,263],[89,132,254,263],[89,132,255,256,260,263],[89,132,248,258],[89,132,217],[89,132,238,267],[89,132,237,238],[89,132,227],[78,79,80,81,82,89,132],[78,89,132],[89,99,103,132,175],[89,99,132,164,175],[89,94,132],[89,96,99,132,172,175],[89,132,152,172],[89,94,132,182],[89,96,99,132,152,175],[89,91,92,95,98,132,144,164,175],[89,99,106,132],[89,91,97,132],[89,99,120,121,132],[89,95,99,132,167,175,182],[89,120,132,182],[89,93,94,132,182],[89,99,132],[89,93,94,95,96,97,98,99,100,101,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,132],[89,99,114,132],[89,99,106,107,132],[89,97,99,107,108,132],[89,98,132],[89,91,94,99,132],[89,99,103,107,108,132],[89,103,132],[89,97,99,102,132,175],[89,91,96,99,106,132],[89,132,164],[89,94,99,120,132,180,182],[89,132,274,275],[89,132,274],[89,132,268,274,275,287],[89,132,144,145,147,148,149,152,164,172,175,181,182,238,239,240,241,242,243,244,264,265,266,267],[89,132,240,241,242,243],[89,132,240,241,242],[89,132,240],[89,132,241],[89,132,238],[89,132,235,280,281,301],[89,132,224,235,271,272,301],[89,132,293],[89,132,145,164,224,229,235,236,268,271,273,276,277,278,279,282,283,287,288,301],[89,132,235,280,281,282,301],[89,132,268,284],[89,132,180,285],[89,132,235,236,271,273,276,301],[89,132,145,164,180,224,229,232,235,236,268,271,272,273,276,277,278,279,280,281,282,283,284,285,286,287,288,290,291,293,294,295,300,301],[89,132,200,201,219,220],[89,132,214,219,301],[89,132,200,219],[89,132,146,154,164,176,211,212,214,215,216,218],[89,132,145,176,219],[89,132,211],[89,132,209],[89,132,202],[89,132,202,204],[89,132,202,203,204,205,206,207,208,209,210],[89,132,202,203,205,206,207,208],[89,132,211,213]],"fileInfos":[{"version":"e41c290ef7dd7dab3493e6cbe5909e0148edf4a8dad0271be08edec368a0f7b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"e12a46ce14b817d4c9e6b2b478956452330bf00c9801b79de46f7a1815b5bd40","impliedFormat":1},{"version":"4fd3f3422b2d2a3dfd5cdd0f387b3a8ec45f006c6ea896a4cb41264c2100bb2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"62bb211266ee48b2d0edf0d8d1b191f0c24fc379a82bd4c1692a082c540bc6b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1e2a172204962276504466a6393426d2ca9c54894b1ad0a6c9dad867a65f876","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"bab26767638ab3557de12c900f0b91f710c7dc40ee9793d5a27d32c04f0bf646","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"7fe869c60b17b972a0eb9423e8a50bd9796508be7cc7181758ecd649be30f56c","impliedFormat":1},{"version":"bad1f77bb946699281dc049ae841bc65231029b17ca2bf54fcb3c6afcbf06ec5","impliedFormat":1},{"version":"d06898a1601eb860aae768ffd0c288ff715bd4e1ed098bd29745308f4338b6d4","impliedFormat":1},{"version":"471117e5a4f7fc1a539b98a7c5107ce5ed44ca71583cec36418bda91e75e0a60","impliedFormat":1},{"version":"9b4b572caf9a82cd34b62baacdf31ff030c6fa307f174810240216d9cfcf8580","impliedFormat":1},{"version":"647ddde02a14904825d0f92904254c98f3cfa6946a61f1f519b1f9aa3595ce33","impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fd06258805d26c72f5997e07a23155d322d5f05387adb3744a791fe6a0b042d","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"ba97261afafe85aafe76d988e65e531da8e8cf791c49caf0531f5dd1689bd91b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f52e8dacc97d71dcc96af29e49584353f9c54cb916d132e3e768d8b8129c928d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"24642567d3729bcc545bacb65ee7c0db423400c7f1ef757cab25d05650064f98","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"88bc59b32d0d5b4e5d9632ac38edea23454057e643684c3c0b94511296f2998c","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9ad08a376ac84948fcca0013d6f1d4ae4f9522e26b91f87945b97c99d7cc30b","impliedFormat":1},{"version":"eaf9ee1d90a35d56264f0bf39842282c58b9219e112ac7d0c1bce98c6c5da672","impliedFormat":1},{"version":"c15c4427ae7fd1dcd7f312a8a447ac93581b0d4664ddf151ecd07de4bf2bb9d7","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"07562498d06bc1db00536c886f38e5f9892f8aef7a3720a25db714be4c775952","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4047ed87e765bd3bcc316a0c4c4c8b0061628460d8a5412d1c4b53a4658665a","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"3eb62baae4df08c9173e6903d3ca45942ccec8c3659b0565684a75f3292cffbb","affectsGlobalScope":true,"impliedFormat":1},{"version":"a85683ef86875f4ad4c6b7301bbcc63fb379a8d80d3d3fd735ee57f48ef8a47e","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"15c5e91b5f08be34a78e3d976179bf5b7a9cc28dc0ef1ffebffeb3c7812a2dca","impliedFormat":1},{"version":"58832ded29e0094047596544ac391d68c799d7bd7d35936f47221857141628f1","impliedFormat":1},{"version":"553870e516f8c772b89f3820576152ebc70181d7994d96917bb943e37da7f8a7","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"9212c6e9d80cb45441a3614e95afd7235a55a18584c2ed32d6c1aca5a0c53d93","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"6bd91a2a356600dee28eb0438082d0799a18a974a6537c4410a796bab749813c","affectsGlobalScope":true,"impliedFormat":1},{"version":"f689c4237b70ae6be5f0e4180e8833f34ace40529d1acc0676ab8fb8f70457d7","impliedFormat":1},{"version":"ae25afbbf1ed5df63a177d67b9048bf7481067f1b8dc9c39212e59db94fc9fc6","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1},{"version":"056e650abd76f4f163b63d28caa4a21ce6b8ac69d8717987a7861724499fa66a","impliedFormat":1},{"version":"8eb83d1ad044634c54c3de70ac76e596ae48ec0ed0800797211fbfe7d9bc94de","impliedFormat":1},{"version":"df0e93ded7e580b27eb3bfea87dffc49a823ea74ef6c625938cb8f5298e1bd57","impliedFormat":1},{"version":"c44308d3424b3d85a342c7f59eee52a7d2807859692c0e89e4373e88d5895743","impliedFormat":1},{"version":"7fdfb1d630e3baa80e994518127a8a60f298a0dd783824f50797e3d88213af94","impliedFormat":1},{"version":"bf78879e6f7417cc8b3ba859dbe762d9f1f64fead4183a85c8a998e156377bcb","impliedFormat":1},{"version":"079bf77582cfa769546f060b373cbe4bac74627c240bcf07f0b571c29c1c7269","impliedFormat":1},{"version":"dcd687115f7836cab01c44b1a3678422533adb6e8e255d046850a9b998ca953d","impliedFormat":1},{"version":"95046f08a9e3860e531bae878947f04cf91aade9ca8dae60f962aff85b892eeb","impliedFormat":1},{"version":"7ea8ac0a5b4461e346fe937ff19841c66bcf3121205de8d1b2a5d0a31f3b28eb","impliedFormat":1},{"version":"d9b36f58f094c4095818a4b5cf8dc8b6f3ac7d38fc3bafc871494e3c4d586551","impliedFormat":1},{"version":"5af4f0c77e82183dc512690283cc80a2b59370083a60ed75174a516b921452fc","impliedFormat":1},{"version":"5581450c9bfffa56208fa69ce62ea33c8671fa34cfdc1eeb262ec7ebf0b5cbf7","impliedFormat":1},{"version":"977997bf4efd7fc8d5b4a78f9474395315189d8d9d92a8280cb35babe0885534","impliedFormat":1},{"version":"dc9f4778bd2d16df16c101704eee59112818857cf58ecb59417633abca828ff0","impliedFormat":1},{"version":"fca70e3e8f1b91b6462c3d22546de7f79acd9fd7eee9b638f7f4bd348c851bd2","impliedFormat":1},{"version":"fb4113fc41b555bb1aa01fb17c66da9be37b734c5b4c4e244f70d7ecb0b7e5c0","impliedFormat":1},{"version":"cec053867ca5fba9e8e966de9bb9e7ad077a9f018175e20de473bf81cdc0b8ff","impliedFormat":1},{"version":"47900b9f4eca88b211714b843f85e3208bce63e69e06a0712202706ecd821ae2","signature":"80929751b3512388f49be15d8d4e2c64e6cbb2c0377112ea354a6f328bab4c4c"},"d5a33c52d381fc00f5842490ffcf406e0f5b9dd801b016fadcb232bb4d347fdf","8ae7855cf16c0a899ad0bdbf0675480766197e05467a249b5ddf7dcf9ace7a56","57aa4c028ae9d74d0908fd24563ccf6ce4ad3ec4b836fcbd69974adce60eb895","d979abc48001c25784feecb34dba191ed2c33f8944f7bd7b077b464285586c12","b5a33c11d9bca76dad214b1f8cf8571ef5a0fc60eecbbfa8f6cf0b73c1183d20","b4e975657af1b37e99cac0753713e6425a16a7725790542838e9d48b0dd836b4","85334ca199cff2ab0bcec4f106a3e8350f71cf04b485f87e794dc7872ccd6db8","b5b0854bf636f74f63c1b714ee52e39b76f1fb7ccd29ac23894f004fca185f96","c8181c1b97d29f99d42b0a06110fdfd8fce4453cf9c6527eec52dcc255d4303a","da90b2dfbb04735ed503d67065160c0f48cfe3ea26090093281b334f61b2cc88","bc3b0259a1ad25737fb2eb2797f2f7f66a8995d1282d0edfc0490a2f68d25a13",{"version":"a87e5902fd92d16a80e0020ac03d6477bc2e7a6f5b0407a73aff6b7aa9e01d55","impliedFormat":99},"f88f5fa9bb16af73bc347d753fcdd1293873ae8b1ddb183ef564ccf064d7eeeb",{"version":"0bd34b5fcc75a9759fcc84590bd53d051538f2e4ec74b2bbbb528cd99bbcc4a9","impliedFormat":1},{"version":"afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","impliedFormat":1},{"version":"f63cb353cd53da6be4a34f6fdece6316dac14fd62cccf9a4d2ce6bab2c37bc8c","impliedFormat":1},{"version":"a4676f40ff11a1da1d274a594b3ad1ba9c11630f7e0eeeeb91013035d47799ee","impliedFormat":1},{"version":"a64eb27ce354b4272ca7c59fecee2aa9ae633aa35a47f7968d6efeae2809a431","signature":"76d1ec99f5b9454c3aa68b3e875f991e19d159e2cf20981e9e6dc7efb6354f75"},{"version":"0cca9daac7f18178f0522327818922fe34b6ac4a356c732f006af7c9cb2d59b7","signature":"ff5f4226fee7f79b894ee067c0e84d184727d5e9107e1b73fe0b78ef1b3c2ac6"},{"version":"1cf904bf13d1ca2fd1adbea1c8b0c312011afbe922a3fda6b3a783f496d1caa2","signature":"07bd95eb07f2d8af68bd5aa7c04a297d8ea0769d1a7302b6ee0cf8af8211d4b0"},{"version":"c58e841916a246b7a7f123fbc0bc510e5505583a71647ad594d898daf3ca3dd4","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"a89777b4f82b0de08d19a2a80466647806f26599b652bb27c8f1b5e1f8218ce1","signature":"9a3a299acf95f53de27435585bcf863e20b2a5946bcee929eaf8d8beb3845198"},{"version":"d2e64a6f25013b099e83bfadb2c388d7bef3e8f3fdb25528225bbc841e7e7e3a","impliedFormat":99},{"version":"369ba5259e66ca8c7d35e3234f7a2a0863a770fdb8266505747c65cf346a0804","impliedFormat":99},{"version":"64d984f55025daf604f670b7dfd090ea765f2098aee871174ef2ee3e94479098","impliedFormat":99},{"version":"f147b6710441cf3ec3234adf63b0593ce5e8c9b692959d21d3babc8454bcf743","impliedFormat":99},{"version":"e96d5373a66c2cfbbc7e6642cf274055aa2c7ff6bd37be7480c66faf9804db6d","impliedFormat":99},{"version":"02bcdd7a76c5c1c485cbf05626d24c86ac8f9a1d8dc31f8924108bbaa4cf3ba9","impliedFormat":99},{"version":"c874ab6feac6e0fdf9142727c9a876065777a5392f14b0bbcf869b1e69eb46b5","impliedFormat":99},{"version":"7c553fc9e34773ddbaabe0fa1367d4b109101d0868a008f11042bee24b5a925d","impliedFormat":99},{"version":"9962ce696fbdce2421d883ca4b062a54f982496625437ae4d3633376c5ad4a80","impliedFormat":99},{"version":"e3ea467c4a7f743f3548c9ed61300591965b1d12c08c8bb9aaff8a002ba95fce","impliedFormat":99},{"version":"4c17183a07a63bea2653fbfc0a942b027160ddbee823024789a415f9589de327","impliedFormat":99},{"version":"3e2203c892297ea44b87470fde51b3d48cfe3eeb6901995de429539462894464","impliedFormat":99},{"version":"c84bf7a4abc5e7fdf45971a71b25b0e0d34ccd5e720a866dd78bb71d60d41a3f","impliedFormat":99},{"version":"785b9d575b49124ce01b46f5b9402157c7611e6532effa562ac6aebec0074dfc","impliedFormat":1},{"version":"207bee54c60bfe26feca8ef79922f66fd091092a9d24aa12daea1b340fa7e0ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"a660aa95476042d3fdcc1343cf6bb8fdf24772d31712b1db321c5a4dcc325434","impliedFormat":1},{"version":"282f98006ed7fa9bb2cd9bdbe2524595cfc4bcd58a0bb3232e4519f2138df811","impliedFormat":1},{"version":"6222e987b58abfe92597e1273ad7233626285bc2d78409d4a7b113d81a83496b","impliedFormat":1},{"version":"cbe726263ae9a7bf32352380f7e8ab66ee25b3457137e316929269c19e18a2be","impliedFormat":1},{"version":"8b96046bf5fb0a815cba6b0880d9f97b7f3a93cf187e8dcfe8e2792e97f38f87","impliedFormat":99},{"version":"bacf2c84cf448b2cd02c717ad46c3d7fd530e0c91282888c923ad64810a4d511","affectsGlobalScope":true,"impliedFormat":1},{"version":"402e5c534fb2b85fa771170595db3ac0dd532112c8fa44fc23f233bc6967488b","impliedFormat":1},{"version":"8885cf05f3e2abf117590bbb951dcf6359e3e5ac462af1c901cfd24c6a6472e2","impliedFormat":1},{"version":"4d979e3c12ffb6497d2b1dc5613130196d986fff764c4526360c0716a162e7e7","impliedFormat":1},{"version":"e61df3640a38d535fd4bc9f4a53aef17c296b58dc4b6394fd576b808dd2fe5e6","impliedFormat":1},{"version":"80781460eca408fe8d2937d9fdbbb780d6aac35f549621e6200c9bee1da5b8fe","impliedFormat":1},{"version":"4719c209b9c00b579553859407a7e5dcfaa1c472994bd62aa5dd3cc0757eb077","impliedFormat":1},{"version":"7ec359bbc29b69d4063fe7dad0baaf35f1856f914db16b3f4f6e3e1bca4099fa","impliedFormat":1},{"version":"b9261ac3e9944d3d72c5ee4cf888ad35d9743a5563405c6963c4e43ee3708ca4","impliedFormat":1},{"version":"c84fd54e8400def0d1ef1569cafd02e9f39a622df9fa69b57ccc82128856b916","impliedFormat":1},{"version":"a022503e75d6953d0e82c2c564508a5c7f8556fad5d7f971372d2d40479e4034","impliedFormat":1},{"version":"2ed6489ef46eb61442d067c08e87e3db501c0bfb2837eee4041a27bf3e792bb0","impliedFormat":1},{"version":"644491cde678bd462bb922c1d0cfab8f17d626b195ccb7f008612dc31f445d2d","impliedFormat":1},{"version":"d60fe6d59d4e19ecc65359490b8535e359ca4b760d2cdb56897ca75d09d41ba3","impliedFormat":1},{"version":"f45a2a8b1777ecb50ed65e1a04bb899d4b676529b7921bd5d69b08573a00c832","impliedFormat":1},{"version":"774b783046ba3d473948132d28a69f52a295b2f378f2939304118ba571b1355e","impliedFormat":1},{"version":"b5734e05c787a40e4f9efe71f16683c5f7dc3bdb0de7c04440c855bd000f8fa7","impliedFormat":1},{"version":"14ba97f0907144771331e1349fdccb5a13526eba0647e6b447e572376d811b6f","impliedFormat":1},{"version":"2a771d907aebf9391ac1f50e4ad37952943515eeea0dcc7e78aa08f508294668","impliedFormat":1},{"version":"7165050eddaed878c2d2cd3cafcaf171072ac39e586a048c0603712b5555f536","impliedFormat":1},{"version":"26e629be9bbd94ea1d465af83ce5a3306890520695f07be6eb016f8d734d02be","impliedFormat":99},{"version":"82e687ebd99518bc63ea04b0c3810fb6e50aa6942decd0ca6f7a56d9b9a212a6","impliedFormat":99},{"version":"7f698624bbbb060ece7c0e51b7236520ebada74b747d7523c7df376453ed6fea","impliedFormat":1},{"version":"8f07f2b6514744ac96e51d7cb8518c0f4de319471237ea10cf688b8d0e9d0225","impliedFormat":1},{"version":"9ae0ca65717af0d3b554a26fd333ad9c78ad3910ad4b22140ff02acb63076927","impliedFormat":99},{"version":"e01ea380015ed698c3c0e2ccd0db72f3fc3ef1abc4519f122aa1c1a8d419a505","impliedFormat":99},{"version":"5ada1f8a9580c0f7478fe03ae3e07e958f0b79bdfb9dd50eeb98c1324f40011b","impliedFormat":99},{"version":"a8301dc90b4bd9fba333226ee0f1681aeeff1bd90233a8f647e687cb4b7d3521","impliedFormat":99},{"version":"e3225dc0bec183183509d290f641786245e6652bc3dce755f7ef404060693c35","impliedFormat":99},{"version":"09a03870ed8c55d7453bc9ad684df88965f2f770f987481ca71b8a09be5205bc","impliedFormat":99},{"version":"e6233e1c976265e85aa8ad76c3881febe6264cb06ae3136f0257e1eab4a6cc5a","impliedFormat":99},{"version":"2cdd50ddc49e2d608ee848fc4ab0db9a2716624fabb4209c7c683d87e54d79c5","impliedFormat":99},{"version":"e431d664338b8470abb1750d699c7dfcebb1a25434559ef85bb96f1e82de5972","impliedFormat":99},{"version":"2c4254139d037c3caca66ce291c1308c1b5092cfcb151eb25980db932dd3b01a","impliedFormat":99},{"version":"970ae00ed018cb96352dc3f37355ef9c2d9f8aa94d7174ccd6d0ed855e462097","impliedFormat":99},{"version":"d2f8dee457ef7660b604226d471d55d927c3051766bdd80353553837492635c3","impliedFormat":99},{"version":"110a503289a2ef76141ffff3ffceb9a1c3662c32748eb9f6777a2bd0866d6fb1","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"310e6b62c493ce991624169a1c1904015769d947be88dc67e00adc7ebebcfa87","impliedFormat":99},{"version":"62fefda288160bf6e435b21cc03d3fbac11193d8d3bd0e82d86623cca7691c29","impliedFormat":99},{"version":"4f40c8f34ff420c9a4eff580b2503856efb722cb4a4956cee9044ef5ee3b9939","impliedFormat":99},{"version":"0309a01650023994ed96edbd675ea4fdc3779a823ce716ad876cc77afb792b62","impliedFormat":99},{"version":"f13d7beeea58e219daef3a40e0dc4f2bd7d9581ac04cedec236102a12dfd2090","impliedFormat":99},{"version":"34bd231cdbfcaed4a33638fa67333b17457f410a25b221ed841b8c3ada3ea1a9","impliedFormat":99},{"version":"48c411efce1848d1ed55de41d7deb93cbf7c04080912fd87aa517ed25ef42639","affectsGlobalScope":true,"impliedFormat":1},{"version":"a094636c05f3e75cb072684dd42cd25a4c1324bec4a866706c85c04cecd49613","affectsGlobalScope":true,"impliedFormat":99},{"version":"fe2d63fcfdde197391b6b70daf7be8c02a60afa90754a5f4a04bdc367f62793d","impliedFormat":99},{"version":"9a3e2c85ec1ab7a0874a19814cc73c691b716282cb727914093089c5a8475955","impliedFormat":99},{"version":"cbdc781d2429935c9c42acd680f2a53a9f633e8de03290ec6ea818e4f7bff19a","impliedFormat":99},{"version":"9f6d9f5dd710922f82f69abf9a324e28122b5f31ae6f6ce78427716db30a377e","impliedFormat":99},{"version":"ac2414a284bdecfd6ab7b87578744ab056cd04dd574b17853cd76830ef5b72f2","impliedFormat":99},{"version":"c3f921bbc9d2e65bd503a56fbc66da910e68467baedb0b9db0cc939e1876c0d7","impliedFormat":99},{"version":"2330087dfe056bbfd0f5590a99d1912ce6b4b6a65cca94466cdd142d55503e84","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"4c8ca51077f382498f47074cf304d654aba5d362416d4f809dfdd5d4f6b3aaca","impliedFormat":1},{"version":"bcc1a744205fcd40c6c5c5fac042307fac6f9d6055a4f4e9b96f80599b9cd4cc","impliedFormat":1},{"version":"bdb83c76f2c2961c45d90f66f0cebeccee91704dfce8e4f7c7d298e94e2673d1","affectsGlobalScope":true,"impliedFormat":99},{"version":"582a39d3ee86cdfb7316d8ec51da53510b1824b896963cb4955d21f49b0570aa","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"}],"root":[[219,223],302],"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"},"referencedMap":[[237,1],[216,2],[215,3],[129,4],[130,4],[131,5],[89,6],[132,7],[133,8],[134,9],[84,1],[87,10],[85,1],[86,1],[135,11],[136,12],[137,13],[138,14],[139,15],[140,16],[141,16],[143,17],[142,18],[144,19],[145,20],[146,21],[128,22],[88,1],[147,23],[148,24],[149,25],[182,26],[150,27],[151,28],[152,29],[153,30],[154,31],[155,32],[156,33],[157,34],[158,35],[159,36],[160,36],[161,37],[162,1],[163,1],[164,38],[166,39],[165,40],[167,41],[168,42],[169,43],[170,44],[171,45],[172,46],[173,47],[174,48],[175,49],[176,50],[177,51],[178,52],[179,53],[180,54],[181,55],[288,1],[289,56],[290,57],[293,58],[292,1],[224,1],[235,59],[230,60],[233,61],[280,62],[269,1],[272,63],[271,64],[283,64],[270,65],[291,1],[232,66],[234,66],[226,67],[229,68],[277,67],[231,69],[225,1],[90,1],[189,70],[190,70],[192,71],[191,70],[187,72],[188,73],[200,74],[193,75],[194,76],[195,76],[199,77],[196,1],[197,1],[198,75],[186,78],[183,1],[185,1],[184,1],[244,1],[298,79],[300,80],[299,81],[297,82],[296,1],[213,1],[261,83],[259,84],[260,85],[248,86],[249,84],[256,87],[247,88],[252,89],[262,1],[253,90],[258,91],[264,92],[263,93],[246,94],[254,95],[255,96],[250,97],[257,83],[251,98],[217,1],[218,99],[239,100],[238,101],[245,1],[281,1],[227,1],[228,102],[83,103],[79,104],[81,104],[80,104],[82,104],[78,1],[76,1],[77,1],[13,1],[15,1],[14,1],[2,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[22,1],[23,1],[3,1],[24,1],[25,1],[4,1],[26,1],[30,1],[27,1],[28,1],[29,1],[31,1],[32,1],[33,1],[5,1],[34,1],[35,1],[36,1],[37,1],[6,1],[41,1],[38,1],[39,1],[40,1],[42,1],[7,1],[43,1],[48,1],[49,1],[44,1],[45,1],[46,1],[47,1],[8,1],[53,1],[50,1],[51,1],[52,1],[54,1],[9,1],[55,1],[56,1],[57,1],[59,1],[58,1],[60,1],[61,1],[10,1],[62,1],[63,1],[64,1],[11,1],[65,1],[66,1],[67,1],[68,1],[69,1],[1,1],[70,1],[71,1],[12,1],[74,1],[73,1],[72,1],[75,1],[106,105],[116,106],[105,105],[126,107],[97,108],[96,109],[125,3],[119,110],[124,111],[99,112],[113,113],[98,114],[122,115],[94,116],[93,3],[123,117],[95,118],[100,119],[101,1],[104,119],[91,1],[127,120],[117,121],[108,122],[109,123],[111,124],[107,125],[110,126],[120,3],[102,127],[103,128],[112,129],[92,130],[115,121],[114,119],[118,1],[121,131],[278,132],[275,133],[276,132],[279,134],[274,1],[268,135],[265,136],[243,137],[241,138],[240,1],[242,139],[266,1],[267,140],[282,141],[273,142],[236,1],[294,143],[284,144],[295,145],[287,146],[286,147],[285,148],[301,149],[201,1],[221,150],[302,151],[220,152],[219,153],[222,154],[223,1],[212,155],[210,156],[203,157],[207,157],[206,158],[202,1],[204,157],[211,159],[209,160],[208,157],[205,157],[214,161]],"version":"5.7.3"}
1
+ {"fileNames":["../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.7.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/types.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/predicates/cascadingpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/predicates/typepredicates.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/predicates/helperpredicates.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/tools.d.ts","../../../node_modules/.pnpm/typanion@3.14.0/node_modules/typanion/lib/index.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/buffer@5.7.1/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.20.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/dom-events.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.10.5/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/core.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/format.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/errors.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/utils.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/cli.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/command.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/definitions.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/help.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/version.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/builtins/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/array.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/boolean.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/counter.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/proxy.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/rest.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/string.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/options/index.d.ts","../../../node_modules/.pnpm/clipanion@3.2.1_typanion@3.14.0/node_modules/clipanion/lib/advanced/index.d.ts","../package.json","../../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","../../../node_modules/.pnpm/@types+jsonstream@0.8.33/node_modules/@types/jsonstream/index.d.ts","../../../node_modules/.pnpm/@types+graceful-fs@4.1.9/node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/.pnpm/prettier@3.4.2/node_modules/prettier/doc.d.ts","../../../node_modules/.pnpm/prettier@3.4.2/node_modules/prettier/index.d.ts","../src/notion/index.ts","../src/notion/export.ts","../src/main.ts","../src/treemap.ts","../src/types.ts","../../../node_modules/.pnpm/@vitest+pretty-format@2.1.8/node_modules/@vitest/pretty-format/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/helpers.d.ts","../../../node_modules/.pnpm/tinyrainbow@1.2.0/node_modules/tinyrainbow/dist/index-c1cfc5e9.d.ts","../../../node_modules/.pnpm/tinyrainbow@1.2.0/node_modules/tinyrainbow/dist/node.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/tasks-3znpj1lr.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/types-bxe-2udy.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/diff.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/types.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/error.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/environment.looobwuu.d.ts","../../../node_modules/.pnpm/@types+estree@1.0.6/node_modules/@types/estree/index.d.ts","../../../node_modules/.pnpm/rollup@4.27.3/node_modules/rollup/dist/rollup.d.ts","../../../node_modules/.pnpm/rollup@4.27.3/node_modules/rollup/dist/parseast.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/hmrpayload.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/customevent.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/hot.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/dist/node/types.d-agj9qkwt.d.ts","../../../node_modules/.pnpm/esbuild@0.21.5/node_modules/esbuild/lib/main.d.ts","../../../node_modules/.pnpm/source-map-js@1.2.1/node_modules/source-map-js/source-map.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/previous-map.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/input.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/css-syntax-error.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/declaration.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/root.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/warning.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/lazy-result.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/no-work-result.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/processor.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/result.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/document.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/rule.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/node.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/comment.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/container.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/at-rule.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/list.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/postcss.d.ts","../../../node_modules/.pnpm/postcss@8.4.49/node_modules/postcss/lib/postcss.d.mts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/dist/node/runtime.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/importglob.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/types/metadata.d.ts","../../../node_modules/.pnpm/vite@5.4.11_@types+node@22.10.5/node_modules/vite/dist/node/index.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/environment-ddx0edty.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/rawsnapshot-cpnkto81.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/environment.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/config.cy0c388z.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/trace-mapping.d-dlvdeqop.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/index-z0r8hvru.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+utils@2.1.8/node_modules/@vitest/utils/dist/source-map.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/client.d.ts","../../../node_modules/.pnpm/vite-node@2.1.8_@types+node@22.10.5/node_modules/vite-node/dist/server.d.ts","../../../node_modules/.pnpm/@vitest+runner@2.1.8/node_modules/@vitest/runner/dist/utils.d.ts","../../../node_modules/.pnpm/tinybench@2.9.0/node_modules/tinybench/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/benchmark.geerunq4.d.ts","../../../node_modules/.pnpm/@vitest+snapshot@2.1.8/node_modules/@vitest/snapshot/dist/manager.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/reporters.d7jzd9gs.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/worker.tn5kgiih.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/worker.b9fxpcac.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/vite.c-n5bbze.d.ts","../../../node_modules/.pnpm/@vitest+expect@2.1.8/node_modules/@vitest/expect/dist/chai.d.cts","../../../node_modules/.pnpm/@vitest+expect@2.1.8/node_modules/@vitest/expect/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+expect@2.1.8/node_modules/@vitest/expect/index.d.ts","../../../node_modules/.pnpm/@vitest+spy@2.1.8/node_modules/@vitest/spy/dist/index.d.ts","../../../node_modules/.pnpm/@vitest+mocker@2.1.8_vite@5.4.11_@types+node@22.10.5_/node_modules/@vitest/mocker/dist/types-dzoqtgin.d.ts","../../../node_modules/.pnpm/@vitest+mocker@2.1.8_vite@5.4.11_@types+node@22.10.5_/node_modules/@vitest/mocker/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/mocker.crtm890j.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/chunks/suite.b2jumifp.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/utils.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/overloads.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/branding.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/messages.d.ts","../../../node_modules/.pnpm/expect-type@1.1.0/node_modules/expect-type/dist/index.d.ts","../../../node_modules/.pnpm/vitest@2.1.8_@types+node@22.10.5/node_modules/vitest/dist/index.d.ts","../src/notion/export.test.ts"],"fileIdsList":[[89,132],[89,132,145,182],[89,132,182],[89,129,132],[89,131,132],[132],[89,132,137,167],[89,132,133,138,144,145,152,164,175],[89,132,133,134,144,152],[84,85,86,89,132],[89,132,135,176],[89,132,136,137,145,153],[89,132,137,164,172],[89,132,138,140,144,152],[89,131,132,139],[89,132,140,141],[89,132,144],[89,132,142,144],[89,131,132,144],[89,132,144,145,146,164,175],[89,132,144,145,146,159,164,167],[89,127,132,180],[89,127,132,140,144,147,152,164,175],[89,132,144,145,147,148,152,164,172,175],[89,132,147,149,164,172,175],[87,88,89,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],[89,132,144,150],[89,132,151,175,180],[89,132,140,144,152,164],[89,132,153],[89,132,154],[89,131,132,155],[89,129,130,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],[89,132,157],[89,132,158],[89,132,144,159,160],[89,132,159,161,176,178],[89,132,144,164,165,166,167],[89,132,164,166],[89,132,164,165],[89,132,167],[89,132,168],[89,129,132,164],[89,132,144,170,171],[89,132,170,171],[89,132,137,152,164,172],[89,132,173],[89,132,152,174],[89,132,147,158,175],[89,132,137,176],[89,132,164,177],[89,132,151,178],[89,132,179],[89,132,137,144,146,155,164,175,178,180],[89,132,164,181],[89,132,219,220,223],[89,132,280],[89,132,283],[89,132,220,221,223,224,225],[89,132,220],[89,132,220,221,223],[89,132,220,221],[89,132,260],[89,132,215,260,261],[89,132,215,260],[89,132,215,222],[89,132,216],[89,132,215,216,217,219],[89,132,215],[89,132,188],[89,132,189,190,191],[89,132,164,182,183,184,186,188],[83,89,132,186,187],[89,132,184,185,187,188,192,199],[83,89,132,186],[89,132,186],[89,132,186,193,194,195,196,197,198],[83,89,132,183,185,187],[89,132,287,288],[89,132,287,288,289,290],[89,132,287,289],[89,132,287],[89,132,251],[89,132,249,251],[89,132,240,248,249,250,252],[89,132,238],[89,132,241,246,251,254],[89,132,237,254],[89,132,241,242,245,246,247,254],[89,132,241,242,243,245,246,254],[89,132,238,239,240,241,242,246,247,248,250,251,252,254],[89,132,254],[89,132,236,238,239,240,241,242,243,245,246,247,248,249,250,251,252,253],[89,132,236,254],[89,132,241,243,244,246,247,254],[89,132,245,254],[89,132,246,247,251,254],[89,132,239,249],[89,132,208],[89,132,229,258],[89,132,228,229],[89,132,218],[78,79,80,81,82,89,132],[78,89,132],[89,99,103,132,175],[89,99,132,164,175],[89,94,132],[89,96,99,132,172,175],[89,132,152,172],[89,94,132,182],[89,96,99,132,152,175],[89,91,92,95,98,132,144,164,175],[89,99,106,132],[89,91,97,132],[89,99,120,121,132],[89,95,99,132,167,175,182],[89,120,132,182],[89,93,94,132,182],[89,99,132],[89,93,94,95,96,97,98,99,100,101,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,132],[89,99,114,132],[89,99,106,107,132],[89,97,99,107,108,132],[89,98,132],[89,91,94,99,132],[89,99,103,107,108,132],[89,103,132],[89,97,99,102,132,175],[89,91,96,99,106,132],[89,132,164],[89,94,99,120,132,180,182],[89,132,265,266],[89,132,265],[89,132,259,265,266,278],[89,132,144,145,147,148,149,152,164,172,175,181,182,229,230,231,232,233,234,235,255,256,257,258],[89,132,231,232,233,234],[89,132,231,232,233],[89,132,231],[89,132,232],[89,132,229],[89,132,226,271,272,292],[89,132,215,226,262,263,292],[89,132,284],[89,132,145,164,215,220,226,227,259,262,264,267,268,269,270,273,274,278,279,292],[89,132,226,271,272,273,292],[89,132,259,275],[89,132,180,276],[89,132,226,227,262,264,267,292],[89,132,145,164,180,215,220,223,226,227,259,262,263,264,267,268,269,270,271,272,273,274,275,276,277,278,279,281,282,284,285,286,291,292],[89,132,200,201,210,211],[89,132,205,210,292],[89,132,200,210],[89,132,146,154,164,176,202,203,205,206,207,209],[89,132,145,176,210],[89,132,202],[89,132,202,204]],"fileInfos":[{"version":"e41c290ef7dd7dab3493e6cbe5909e0148edf4a8dad0271be08edec368a0f7b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"e12a46ce14b817d4c9e6b2b478956452330bf00c9801b79de46f7a1815b5bd40","impliedFormat":1},{"version":"4fd3f3422b2d2a3dfd5cdd0f387b3a8ec45f006c6ea896a4cb41264c2100bb2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"62bb211266ee48b2d0edf0d8d1b191f0c24fc379a82bd4c1692a082c540bc6b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1e2a172204962276504466a6393426d2ca9c54894b1ad0a6c9dad867a65f876","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"b5ce7a470bc3628408429040c4e3a53a27755022a32fd05e2cb694e7015386c7","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"bab26767638ab3557de12c900f0b91f710c7dc40ee9793d5a27d32c04f0bf646","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"61d6a2092f48af66dbfb220e31eea8b10bc02b6932d6e529005fd2d7b3281290","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"7fe869c60b17b972a0eb9423e8a50bd9796508be7cc7181758ecd649be30f56c","impliedFormat":1},{"version":"bad1f77bb946699281dc049ae841bc65231029b17ca2bf54fcb3c6afcbf06ec5","impliedFormat":1},{"version":"d06898a1601eb860aae768ffd0c288ff715bd4e1ed098bd29745308f4338b6d4","impliedFormat":1},{"version":"471117e5a4f7fc1a539b98a7c5107ce5ed44ca71583cec36418bda91e75e0a60","impliedFormat":1},{"version":"9b4b572caf9a82cd34b62baacdf31ff030c6fa307f174810240216d9cfcf8580","impliedFormat":1},{"version":"647ddde02a14904825d0f92904254c98f3cfa6946a61f1f519b1f9aa3595ce33","impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"030e350db2525514580ed054f712ffb22d273e6bc7eddc1bb7eda1e0ba5d395e","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fd06258805d26c72f5997e07a23155d322d5f05387adb3744a791fe6a0b042d","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"ba97261afafe85aafe76d988e65e531da8e8cf791c49caf0531f5dd1689bd91b","affectsGlobalScope":true,"impliedFormat":1},{"version":"f52e8dacc97d71dcc96af29e49584353f9c54cb916d132e3e768d8b8129c928d","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"76103716ba397bbb61f9fa9c9090dca59f39f9047cb1352b2179c5d8e7f4e8d0","impliedFormat":1},{"version":"53eac70430b30089a3a1959d8306b0f9cfaf0de75224b68ef25243e0b5ad1ca3","affectsGlobalScope":true,"impliedFormat":1},{"version":"4314c7a11517e221f7296b46547dbc4df047115b182f544d072bdccffa57fc72","impliedFormat":1},{"version":"115971d64632ea4742b5b115fb64ed04bcaae2c3c342f13d9ba7e3f9ee39c4e7","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"86956cc2eb9dd371d6fab493d326a574afedebf76eef3fa7833b8e0d9b52d6f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"24642567d3729bcc545bacb65ee7c0db423400c7f1ef757cab25d05650064f98","impliedFormat":1},{"version":"e6f5a38687bebe43a4cef426b69d34373ef68be9a6b1538ec0a371e69f309354","impliedFormat":1},{"version":"a6bf63d17324010ca1fbf0389cab83f93389bb0b9a01dc8a346d092f65b3605f","impliedFormat":1},{"version":"e009777bef4b023a999b2e5b9a136ff2cde37dc3f77c744a02840f05b18be8ff","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"88bc59b32d0d5b4e5d9632ac38edea23454057e643684c3c0b94511296f2998c","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9ad08a376ac84948fcca0013d6f1d4ae4f9522e26b91f87945b97c99d7cc30b","impliedFormat":1},{"version":"eaf9ee1d90a35d56264f0bf39842282c58b9219e112ac7d0c1bce98c6c5da672","impliedFormat":1},{"version":"c15c4427ae7fd1dcd7f312a8a447ac93581b0d4664ddf151ecd07de4bf2bb9d7","impliedFormat":1},{"version":"5135bdd72cc05a8192bd2e92f0914d7fc43ee077d1293dc622a049b7035a0afb","impliedFormat":1},{"version":"4f80de3a11c0d2f1329a72e92c7416b2f7eab14f67e92cac63bb4e8d01c6edc8","impliedFormat":1},{"version":"6d386bc0d7f3afa1d401afc3e00ed6b09205a354a9795196caed937494a713e6","impliedFormat":1},{"version":"07562498d06bc1db00536c886f38e5f9892f8aef7a3720a25db714be4c775952","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4047ed87e765bd3bcc316a0c4c4c8b0061628460d8a5412d1c4b53a4658665a","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"3eb62baae4df08c9173e6903d3ca45942ccec8c3659b0565684a75f3292cffbb","affectsGlobalScope":true,"impliedFormat":1},{"version":"a85683ef86875f4ad4c6b7301bbcc63fb379a8d80d3d3fd735ee57f48ef8a47e","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"c6b4e0a02545304935ecbf7de7a8e056a31bb50939b5b321c9d50a405b5a0bba","impliedFormat":1},{"version":"fab29e6d649aa074a6b91e3bdf2bff484934a46067f6ee97a30fcd9762ae2213","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"e1120271ebbc9952fdc7b2dd3e145560e52e06956345e6fdf91d70ca4886464f","impliedFormat":1},{"version":"15c5e91b5f08be34a78e3d976179bf5b7a9cc28dc0ef1ffebffeb3c7812a2dca","impliedFormat":1},{"version":"58832ded29e0094047596544ac391d68c799d7bd7d35936f47221857141628f1","impliedFormat":1},{"version":"553870e516f8c772b89f3820576152ebc70181d7994d96917bb943e37da7f8a7","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"745c4240220559bd340c8aeb6e3c5270a709d3565e934dc22a69c304703956bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"9212c6e9d80cb45441a3614e95afd7235a55a18584c2ed32d6c1aca5a0c53d93","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef91efa0baea5d0e0f0f27b574a8bc100ce62a6d7e70220a0d58af6acab5e89","affectsGlobalScope":true,"impliedFormat":1},{"version":"282fd2a1268a25345b830497b4b7bf5037a5e04f6a9c44c840cb605e19fea841","impliedFormat":1},{"version":"5360a27d3ebca11b224d7d3e38e3e2c63f8290cb1fcf6c3610401898f8e68bc3","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"7d6ff413e198d25639f9f01f16673e7df4e4bd2875a42455afd4ecc02ef156da","affectsGlobalScope":true,"impliedFormat":1},{"version":"6bd91a2a356600dee28eb0438082d0799a18a974a6537c4410a796bab749813c","affectsGlobalScope":true,"impliedFormat":1},{"version":"f689c4237b70ae6be5f0e4180e8833f34ace40529d1acc0676ab8fb8f70457d7","impliedFormat":1},{"version":"ae25afbbf1ed5df63a177d67b9048bf7481067f1b8dc9c39212e59db94fc9fc6","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"52a8e7e8a1454b6d1b5ad428efae3870ffc56f2c02d923467f2940c454aa9aec","affectsGlobalScope":true,"impliedFormat":1},{"version":"78dc0513cc4f1642906b74dda42146bcbd9df7401717d6e89ea6d72d12ecb539","impliedFormat":1},{"version":"ad90122e1cb599b3bc06a11710eb5489101be678f2920f2322b0ac3e195af78d","impliedFormat":1},{"version":"056e650abd76f4f163b63d28caa4a21ce6b8ac69d8717987a7861724499fa66a","impliedFormat":1},{"version":"8eb83d1ad044634c54c3de70ac76e596ae48ec0ed0800797211fbfe7d9bc94de","impliedFormat":1},{"version":"df0e93ded7e580b27eb3bfea87dffc49a823ea74ef6c625938cb8f5298e1bd57","impliedFormat":1},{"version":"c44308d3424b3d85a342c7f59eee52a7d2807859692c0e89e4373e88d5895743","impliedFormat":1},{"version":"7fdfb1d630e3baa80e994518127a8a60f298a0dd783824f50797e3d88213af94","impliedFormat":1},{"version":"bf78879e6f7417cc8b3ba859dbe762d9f1f64fead4183a85c8a998e156377bcb","impliedFormat":1},{"version":"079bf77582cfa769546f060b373cbe4bac74627c240bcf07f0b571c29c1c7269","impliedFormat":1},{"version":"dcd687115f7836cab01c44b1a3678422533adb6e8e255d046850a9b998ca953d","impliedFormat":1},{"version":"95046f08a9e3860e531bae878947f04cf91aade9ca8dae60f962aff85b892eeb","impliedFormat":1},{"version":"7ea8ac0a5b4461e346fe937ff19841c66bcf3121205de8d1b2a5d0a31f3b28eb","impliedFormat":1},{"version":"d9b36f58f094c4095818a4b5cf8dc8b6f3ac7d38fc3bafc871494e3c4d586551","impliedFormat":1},{"version":"5af4f0c77e82183dc512690283cc80a2b59370083a60ed75174a516b921452fc","impliedFormat":1},{"version":"5581450c9bfffa56208fa69ce62ea33c8671fa34cfdc1eeb262ec7ebf0b5cbf7","impliedFormat":1},{"version":"977997bf4efd7fc8d5b4a78f9474395315189d8d9d92a8280cb35babe0885534","impliedFormat":1},{"version":"dc9f4778bd2d16df16c101704eee59112818857cf58ecb59417633abca828ff0","impliedFormat":1},{"version":"fca70e3e8f1b91b6462c3d22546de7f79acd9fd7eee9b638f7f4bd348c851bd2","impliedFormat":1},{"version":"fb4113fc41b555bb1aa01fb17c66da9be37b734c5b4c4e244f70d7ecb0b7e5c0","impliedFormat":1},{"version":"cec053867ca5fba9e8e966de9bb9e7ad077a9f018175e20de473bf81cdc0b8ff","impliedFormat":1},{"version":"9d3a60fe62e2b407b0085249f2099e2407437440f23a3b9356dcf9d02a9b0768","signature":"80929751b3512388f49be15d8d4e2c64e6cbb2c0377112ea354a6f328bab4c4c"},"3ec005c98e5b507fa09f860e791b3f3bc40a5f3d0ed33f26a98e61f68eafcc10","bc3b0259a1ad25737fb2eb2797f2f7f66a8995d1282d0edfc0490a2f68d25a13",{"version":"a87e5902fd92d16a80e0020ac03d6477bc2e7a6f5b0407a73aff6b7aa9e01d55","impliedFormat":99},"21a44ac96c8100b4a7094d990c022bc5c6397c460f4ac635606c94ed0e63e92f",{"version":"0bd34b5fcc75a9759fcc84590bd53d051538f2e4ec74b2bbbb528cd99bbcc4a9","impliedFormat":1},{"version":"afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","impliedFormat":1},{"version":"f63cb353cd53da6be4a34f6fdece6316dac14fd62cccf9a4d2ce6bab2c37bc8c","impliedFormat":1},{"version":"a4676f40ff11a1da1d274a594b3ad1ba9c11630f7e0eeeeb91013035d47799ee","impliedFormat":1},{"version":"012674f382c4ea57a786a14846c51f66be1178344c417deab7ba4a61f6e2ab73","signature":"812af862c0c396615ff832517dd1164ff27109d7b336820816c1d412b24e5f42"},{"version":"0cca9daac7f18178f0522327818922fe34b6ac4a356c732f006af7c9cb2d59b7","signature":"ff5f4226fee7f79b894ee067c0e84d184727d5e9107e1b73fe0b78ef1b3c2ac6"},{"version":"1cf904bf13d1ca2fd1adbea1c8b0c312011afbe922a3fda6b3a783f496d1caa2","signature":"07bd95eb07f2d8af68bd5aa7c04a297d8ea0769d1a7302b6ee0cf8af8211d4b0"},{"version":"c58e841916a246b7a7f123fbc0bc510e5505583a71647ad594d898daf3ca3dd4","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"a89777b4f82b0de08d19a2a80466647806f26599b652bb27c8f1b5e1f8218ce1","signature":"9a3a299acf95f53de27435585bcf863e20b2a5946bcee929eaf8d8beb3845198"},{"version":"d2e64a6f25013b099e83bfadb2c388d7bef3e8f3fdb25528225bbc841e7e7e3a","impliedFormat":99},{"version":"369ba5259e66ca8c7d35e3234f7a2a0863a770fdb8266505747c65cf346a0804","impliedFormat":99},{"version":"64d984f55025daf604f670b7dfd090ea765f2098aee871174ef2ee3e94479098","impliedFormat":99},{"version":"f147b6710441cf3ec3234adf63b0593ce5e8c9b692959d21d3babc8454bcf743","impliedFormat":99},{"version":"e96d5373a66c2cfbbc7e6642cf274055aa2c7ff6bd37be7480c66faf9804db6d","impliedFormat":99},{"version":"02bcdd7a76c5c1c485cbf05626d24c86ac8f9a1d8dc31f8924108bbaa4cf3ba9","impliedFormat":99},{"version":"c874ab6feac6e0fdf9142727c9a876065777a5392f14b0bbcf869b1e69eb46b5","impliedFormat":99},{"version":"7c553fc9e34773ddbaabe0fa1367d4b109101d0868a008f11042bee24b5a925d","impliedFormat":99},{"version":"9962ce696fbdce2421d883ca4b062a54f982496625437ae4d3633376c5ad4a80","impliedFormat":99},{"version":"e3ea467c4a7f743f3548c9ed61300591965b1d12c08c8bb9aaff8a002ba95fce","impliedFormat":99},{"version":"4c17183a07a63bea2653fbfc0a942b027160ddbee823024789a415f9589de327","impliedFormat":99},{"version":"3e2203c892297ea44b87470fde51b3d48cfe3eeb6901995de429539462894464","impliedFormat":99},{"version":"c84bf7a4abc5e7fdf45971a71b25b0e0d34ccd5e720a866dd78bb71d60d41a3f","impliedFormat":99},{"version":"785b9d575b49124ce01b46f5b9402157c7611e6532effa562ac6aebec0074dfc","impliedFormat":1},{"version":"207bee54c60bfe26feca8ef79922f66fd091092a9d24aa12daea1b340fa7e0ee","affectsGlobalScope":true,"impliedFormat":1},{"version":"a660aa95476042d3fdcc1343cf6bb8fdf24772d31712b1db321c5a4dcc325434","impliedFormat":1},{"version":"282f98006ed7fa9bb2cd9bdbe2524595cfc4bcd58a0bb3232e4519f2138df811","impliedFormat":1},{"version":"6222e987b58abfe92597e1273ad7233626285bc2d78409d4a7b113d81a83496b","impliedFormat":1},{"version":"cbe726263ae9a7bf32352380f7e8ab66ee25b3457137e316929269c19e18a2be","impliedFormat":1},{"version":"8b96046bf5fb0a815cba6b0880d9f97b7f3a93cf187e8dcfe8e2792e97f38f87","impliedFormat":99},{"version":"bacf2c84cf448b2cd02c717ad46c3d7fd530e0c91282888c923ad64810a4d511","affectsGlobalScope":true,"impliedFormat":1},{"version":"402e5c534fb2b85fa771170595db3ac0dd532112c8fa44fc23f233bc6967488b","impliedFormat":1},{"version":"8885cf05f3e2abf117590bbb951dcf6359e3e5ac462af1c901cfd24c6a6472e2","impliedFormat":1},{"version":"4d979e3c12ffb6497d2b1dc5613130196d986fff764c4526360c0716a162e7e7","impliedFormat":1},{"version":"e61df3640a38d535fd4bc9f4a53aef17c296b58dc4b6394fd576b808dd2fe5e6","impliedFormat":1},{"version":"80781460eca408fe8d2937d9fdbbb780d6aac35f549621e6200c9bee1da5b8fe","impliedFormat":1},{"version":"4719c209b9c00b579553859407a7e5dcfaa1c472994bd62aa5dd3cc0757eb077","impliedFormat":1},{"version":"7ec359bbc29b69d4063fe7dad0baaf35f1856f914db16b3f4f6e3e1bca4099fa","impliedFormat":1},{"version":"b9261ac3e9944d3d72c5ee4cf888ad35d9743a5563405c6963c4e43ee3708ca4","impliedFormat":1},{"version":"c84fd54e8400def0d1ef1569cafd02e9f39a622df9fa69b57ccc82128856b916","impliedFormat":1},{"version":"a022503e75d6953d0e82c2c564508a5c7f8556fad5d7f971372d2d40479e4034","impliedFormat":1},{"version":"2ed6489ef46eb61442d067c08e87e3db501c0bfb2837eee4041a27bf3e792bb0","impliedFormat":1},{"version":"644491cde678bd462bb922c1d0cfab8f17d626b195ccb7f008612dc31f445d2d","impliedFormat":1},{"version":"d60fe6d59d4e19ecc65359490b8535e359ca4b760d2cdb56897ca75d09d41ba3","impliedFormat":1},{"version":"f45a2a8b1777ecb50ed65e1a04bb899d4b676529b7921bd5d69b08573a00c832","impliedFormat":1},{"version":"774b783046ba3d473948132d28a69f52a295b2f378f2939304118ba571b1355e","impliedFormat":1},{"version":"b5734e05c787a40e4f9efe71f16683c5f7dc3bdb0de7c04440c855bd000f8fa7","impliedFormat":1},{"version":"14ba97f0907144771331e1349fdccb5a13526eba0647e6b447e572376d811b6f","impliedFormat":1},{"version":"2a771d907aebf9391ac1f50e4ad37952943515eeea0dcc7e78aa08f508294668","impliedFormat":1},{"version":"7165050eddaed878c2d2cd3cafcaf171072ac39e586a048c0603712b5555f536","impliedFormat":1},{"version":"26e629be9bbd94ea1d465af83ce5a3306890520695f07be6eb016f8d734d02be","impliedFormat":99},{"version":"82e687ebd99518bc63ea04b0c3810fb6e50aa6942decd0ca6f7a56d9b9a212a6","impliedFormat":99},{"version":"7f698624bbbb060ece7c0e51b7236520ebada74b747d7523c7df376453ed6fea","impliedFormat":1},{"version":"8f07f2b6514744ac96e51d7cb8518c0f4de319471237ea10cf688b8d0e9d0225","impliedFormat":1},{"version":"9ae0ca65717af0d3b554a26fd333ad9c78ad3910ad4b22140ff02acb63076927","impliedFormat":99},{"version":"e01ea380015ed698c3c0e2ccd0db72f3fc3ef1abc4519f122aa1c1a8d419a505","impliedFormat":99},{"version":"5ada1f8a9580c0f7478fe03ae3e07e958f0b79bdfb9dd50eeb98c1324f40011b","impliedFormat":99},{"version":"a8301dc90b4bd9fba333226ee0f1681aeeff1bd90233a8f647e687cb4b7d3521","impliedFormat":99},{"version":"e3225dc0bec183183509d290f641786245e6652bc3dce755f7ef404060693c35","impliedFormat":99},{"version":"09a03870ed8c55d7453bc9ad684df88965f2f770f987481ca71b8a09be5205bc","impliedFormat":99},{"version":"e6233e1c976265e85aa8ad76c3881febe6264cb06ae3136f0257e1eab4a6cc5a","impliedFormat":99},{"version":"2cdd50ddc49e2d608ee848fc4ab0db9a2716624fabb4209c7c683d87e54d79c5","impliedFormat":99},{"version":"e431d664338b8470abb1750d699c7dfcebb1a25434559ef85bb96f1e82de5972","impliedFormat":99},{"version":"2c4254139d037c3caca66ce291c1308c1b5092cfcb151eb25980db932dd3b01a","impliedFormat":99},{"version":"970ae00ed018cb96352dc3f37355ef9c2d9f8aa94d7174ccd6d0ed855e462097","impliedFormat":99},{"version":"d2f8dee457ef7660b604226d471d55d927c3051766bdd80353553837492635c3","impliedFormat":99},{"version":"110a503289a2ef76141ffff3ffceb9a1c3662c32748eb9f6777a2bd0866d6fb1","impliedFormat":99},{"version":"69bf2422313487956e4dacf049f30cb91b34968912058d244cb19e4baa24da97","impliedFormat":99},{"version":"310e6b62c493ce991624169a1c1904015769d947be88dc67e00adc7ebebcfa87","impliedFormat":99},{"version":"62fefda288160bf6e435b21cc03d3fbac11193d8d3bd0e82d86623cca7691c29","impliedFormat":99},{"version":"4f40c8f34ff420c9a4eff580b2503856efb722cb4a4956cee9044ef5ee3b9939","impliedFormat":99},{"version":"0309a01650023994ed96edbd675ea4fdc3779a823ce716ad876cc77afb792b62","impliedFormat":99},{"version":"f13d7beeea58e219daef3a40e0dc4f2bd7d9581ac04cedec236102a12dfd2090","impliedFormat":99},{"version":"34bd231cdbfcaed4a33638fa67333b17457f410a25b221ed841b8c3ada3ea1a9","impliedFormat":99},{"version":"48c411efce1848d1ed55de41d7deb93cbf7c04080912fd87aa517ed25ef42639","affectsGlobalScope":true,"impliedFormat":1},{"version":"a094636c05f3e75cb072684dd42cd25a4c1324bec4a866706c85c04cecd49613","affectsGlobalScope":true,"impliedFormat":99},{"version":"fe2d63fcfdde197391b6b70daf7be8c02a60afa90754a5f4a04bdc367f62793d","impliedFormat":99},{"version":"9a3e2c85ec1ab7a0874a19814cc73c691b716282cb727914093089c5a8475955","impliedFormat":99},{"version":"cbdc781d2429935c9c42acd680f2a53a9f633e8de03290ec6ea818e4f7bff19a","impliedFormat":99},{"version":"9f6d9f5dd710922f82f69abf9a324e28122b5f31ae6f6ce78427716db30a377e","impliedFormat":99},{"version":"ac2414a284bdecfd6ab7b87578744ab056cd04dd574b17853cd76830ef5b72f2","impliedFormat":99},{"version":"c3f921bbc9d2e65bd503a56fbc66da910e68467baedb0b9db0cc939e1876c0d7","impliedFormat":99},{"version":"2330087dfe056bbfd0f5590a99d1912ce6b4b6a65cca94466cdd142d55503e84","impliedFormat":1},{"version":"72422d0bac4076912385d0c10911b82e4694fc106e2d70added091f88f0824ba","impliedFormat":1},{"version":"da251b82c25bee1d93f9fd80c5a61d945da4f708ca21285541d7aff83ecb8200","impliedFormat":1},{"version":"4c8ca51077f382498f47074cf304d654aba5d362416d4f809dfdd5d4f6b3aaca","impliedFormat":1},{"version":"bcc1a744205fcd40c6c5c5fac042307fac6f9d6055a4f4e9b96f80599b9cd4cc","impliedFormat":1},{"version":"bdb83c76f2c2961c45d90f66f0cebeccee91704dfce8e4f7c7d298e94e2673d1","affectsGlobalScope":true,"impliedFormat":99},{"version":"582a39d3ee86cdfb7316d8ec51da53510b1824b896963cb4955d21f49b0570aa","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"}],"root":[[210,214],293],"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"},"referencedMap":[[228,1],[207,2],[206,3],[129,4],[130,4],[131,5],[89,6],[132,7],[133,8],[134,9],[84,1],[87,10],[85,1],[86,1],[135,11],[136,12],[137,13],[138,14],[139,15],[140,16],[141,16],[143,17],[142,18],[144,19],[145,20],[146,21],[128,22],[88,1],[147,23],[148,24],[149,25],[182,26],[150,27],[151,28],[152,29],[153,30],[154,31],[155,32],[156,33],[157,34],[158,35],[159,36],[160,36],[161,37],[162,1],[163,1],[164,38],[166,39],[165,40],[167,41],[168,42],[169,43],[170,44],[171,45],[172,46],[173,47],[174,48],[175,49],[176,50],[177,51],[178,52],[179,53],[180,54],[181,55],[279,1],[280,56],[281,57],[284,58],[283,1],[215,1],[226,59],[221,60],[224,61],[271,62],[260,1],[263,63],[262,64],[274,64],[261,65],[282,1],[223,66],[225,66],[217,67],[220,68],[268,67],[222,69],[216,1],[90,1],[189,70],[190,70],[192,71],[191,70],[187,72],[188,73],[200,74],[193,75],[194,76],[195,76],[199,77],[196,1],[197,1],[198,75],[186,78],[183,1],[185,1],[184,1],[235,1],[289,79],[291,80],[290,81],[288,82],[287,1],[204,1],[252,83],[250,84],[251,85],[239,86],[240,84],[247,87],[238,88],[243,89],[253,1],[244,90],[249,91],[255,92],[254,93],[237,94],[245,95],[246,96],[241,97],[248,83],[242,98],[208,1],[209,99],[230,100],[229,101],[236,1],[272,1],[218,1],[219,102],[83,103],[79,104],[81,104],[80,104],[82,104],[78,1],[76,1],[77,1],[13,1],[15,1],[14,1],[2,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[22,1],[23,1],[3,1],[24,1],[25,1],[4,1],[26,1],[30,1],[27,1],[28,1],[29,1],[31,1],[32,1],[33,1],[5,1],[34,1],[35,1],[36,1],[37,1],[6,1],[41,1],[38,1],[39,1],[40,1],[42,1],[7,1],[43,1],[48,1],[49,1],[44,1],[45,1],[46,1],[47,1],[8,1],[53,1],[50,1],[51,1],[52,1],[54,1],[9,1],[55,1],[56,1],[57,1],[59,1],[58,1],[60,1],[61,1],[10,1],[62,1],[63,1],[64,1],[11,1],[65,1],[66,1],[67,1],[68,1],[69,1],[1,1],[70,1],[71,1],[12,1],[74,1],[73,1],[72,1],[75,1],[106,105],[116,106],[105,105],[126,107],[97,108],[96,109],[125,3],[119,110],[124,111],[99,112],[113,113],[98,114],[122,115],[94,116],[93,3],[123,117],[95,118],[100,119],[101,1],[104,119],[91,1],[127,120],[117,121],[108,122],[109,123],[111,124],[107,125],[110,126],[120,3],[102,127],[103,128],[112,129],[92,130],[115,121],[114,119],[118,1],[121,131],[269,132],[266,133],[267,132],[270,134],[265,1],[259,135],[256,136],[234,137],[232,138],[231,1],[233,139],[257,1],[258,140],[273,141],[264,142],[227,1],[285,143],[275,144],[286,145],[278,146],[277,147],[276,148],[292,149],[201,1],[212,150],[293,151],[211,152],[210,153],[213,154],[214,1],[203,155],[202,1],[205,156]],"version":"5.7.3"}
@@ -23,6 +23,9 @@ declare class NotionExportCommand extends Command {
23
23
  }
24
24
 
25
25
  declare const getBlockLink: (blockId: string, recordMap: ExtendedRecordMap, domain?: string) => string;
26
+ type Markdown = {
27
+ [attre in string]: string;
28
+ };
26
29
  declare class NotionExporter {
27
30
  notion: NotionAPI;
28
31
  recordMap: ExtendedRecordMap;
@@ -40,6 +43,7 @@ declare class NotionExporter {
40
43
  load: boolean;
41
44
  raw: boolean;
42
45
  dataset: boolean;
46
+ debug: boolean;
43
47
  wait: number;
44
48
  token: string | undefined;
45
49
  constructor(options: {
@@ -65,6 +69,7 @@ declare class NotionExporter {
65
69
  writeFile(path: string, target: string): Promise<void>;
66
70
  exportMd(id: string): Promise<void>;
67
71
  pageToMarkdown(id: string, recordMap: ExtendedRecordMap): Promise<string>;
72
+ pageToMarkdownObj(id: string, recordMap: ExtendedRecordMap): Promise<Markdown>;
68
73
  childrenToMd(parentBlock: Block, recordMap: ExtendedRecordMap, prefix: string, page: Block): Promise<string>;
69
74
  decorationsToMarkdown(decos: Decoration[], recordMap: ExtendedRecordMap, prefix?: string): Promise<string>;
70
75
  getBlock(id: string, recordMap: ExtendedRecordMap, message?: string): Promise<Block>;
@@ -84,4 +89,4 @@ declare function loadRaw(folder: string): Promise<{
84
89
  }>;
85
90
  declare function loadJson<C>(folder: string, filename: string): Promise<C>;
86
91
 
87
- export { NotionExportCommand, NotionExporter, getBlockLink, loadJson, loadRaw };
92
+ export { type Markdown, NotionExportCommand, NotionExporter, getBlockLink, loadJson, loadRaw };
package/build/src/main.js CHANGED
@@ -1,22 +1,19 @@
1
- import{Cli as Z,Builtins as I}from"clipanion";var H="Notion CLI",z="1.4.2";import{Option as S,Command as le}from"clipanion";import{NotionAPI as B}from"@texonom/nclient";import{getBlockTitle as R,getCanonicalPageId as A,parsePageId as G,formatDate as K,getTextContent as O,getBlockParent as ee,defaultMapImageUrl as te,getAllInSpace as oe,getPageTitle as V,recursivePageTree as ae}from"@texonom/nutils";import{join as v}from"path";import{mkdir as q,readFile as j}from"fs/promises";import D from"JSONStream";import F from"graceful-fs";import{promisify as ie}from"util";import Y from"stream";import{format as se}from"prettier";import{isCollection as Q,isSpace as re}from"@texonom/ntypes";var X=ie(F.writeFile),J=(k,t,e="https://texonom.com")=>`${e}/${A(k,t)}`,U=class{constructor(t){this.promises=[];this.folder="texonom-raw";this.md="texonom-md";this.domain="https://texonom.com";this.validation=!1;this.update=!1;this.recursive=!1;this.prefetch=!1;this.load=!1;this.raw=!1;this.dataset=!1;this.wait=5;this.page=G(t.page),this.folder=t.folder??this.folder,this.domain=t.domain??this.domain,this.md=t.md??this.md,this.validation=t.validation??this.validation,this.update=t.update??this.update,this.recursive=t.recursive??this.recursive,this.prefetch=t.prefetch??this.prefetch,this.load=t.load??this.load,this.raw=t.raw??this.raw,this.dataset=t.dataset??this.dataset,this.token=t.token,this.notion=new B({authToken:this.token}),this.validation&&(X=async()=>{})}async execute(){let t=G(this.page);if(this.load&&(console.time("Load raw data"),await this.loadRaw(),console.timeEnd("Load raw data")),this.prefetch&&(console.time("Fetch raw data"),await this.fetchRawSpace(t),console.timeEnd("Fetch raw data")),this.raw)console.time("Export raw files"),this.recursive?await this.saveRawSpace():await this.saveRawPage(t),console.timeEnd("Export raw files");else{console.time("Extract markdown"),await this.exportMd(t),console.timeEnd("Extract markdown");let e={id:this.page,title:R(this.recordMap.block[this.page].value,this.recordMap),blocks:1,pages:1,children:[],type:"page"};ae(this.recordMap,e),this.pageTree=e}await Promise.all(this.promises),this.update&&(this.recursive?await this.saveRawSpace():await this.saveRawPage(t))}async loadRaw(){let{recordMap:t,pageTree:e,pageMap:o}=await ne(this.folder);this.recordMap=t,this.pageTree=e,this.pageMap=o}async fetchRawSpace(t){let{recordMap:e,pageTree:o,pageMap:i}=await oe(t,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=i,this.recordMap=e,this.pageTree=o}async saveRawSpace(){if(this.validation)return;await q(this.folder,{recursive:!0});let t=[];await q(v(this.folder,"recordMap"),{recursive:!0});for(let e in this.recordMap)this.saveJson(v("recordMap",e),this.recordMap[e]);this.saveJson("pageMap",this.pageMap),this.saveJson("pageTree",this.pageTree),await Promise.all(t)}saveJson(t,e){if(this.validation)return;let o=F.createWriteStream(`${v(this.folder,t)}.json`),i=D.stringifyObject();i.pipe(o);for(let a in e)i.write([a,e[a]]);i.end()}async saveRawPage(t){if(this.validation)return;await q(this.folder,{recursive:!0});let e=await this.notion.getPage(t),o=`${A(t,e)}`,i=JSON.stringify(e),a="json";i=await se(i,{parser:"json"}),await this.writeFile(`${v(this.folder,o)}.${a}`,i)}async writeFile(t,e){if(this.folder)await X(t,e);else return}async exportMd(t){await q(this.md,{recursive:!0});try{let e=this.pageMap&&this.pageMap[t];e||(console.warn(`Missing from pageMap ${t}`),e=await this.notion.getPage(t)),this.recursive||(this.recordMap=e);try{e||(e=await this.notion.getPage(t))}catch{return}if(!["page","collection_view_page"].includes(e.block[t].value.type))throw new Error("Not a page");let o=await this.pageToMarkdown(t,e);this.pageMap[t]||(this.pageMap[t]=e);let i=v(this.md,`${A(t,e)}`);this.promises.push(this.writeFile(`${i}.md`,o))}catch(e){console.error(t,e)}}async pageToMarkdown(t,e){var n,l;let o=e.block[t].value,i=`---
2
- `;i+=`Title: ${await this.decorationsToMarkdown((n=o.properties)!=null&&n.title?o.properties.title:[["Untitled"]],e)}
3
- `;let a=ee(o,e);if(re(a)?i+=`Parent: ${a.name}
4
- `:Q(a)?i+=`Parent: ${O(a.name)}
5
- `:a&&(i+=`Parent: ${R(a,e)}
6
- `),Q(a)){let c=a!=null&&a.schema?Object.keys(a.schema):[];c.splice(c.indexOf("title"),1);for(let p of c){let m=a.schema[p].name,h=a.schema[p].type,r="";switch(h){case"text":r=(l=o==null?void 0:o.properties)!=null&&l[p]?await this.decorationsToMarkdown(o.properties[p],e):"";break;case"created_by":{let b=await this.getUser(o.created_by_id,e);r=b?b.name:"Unknown";break}case"last_edited_by":{let b=await this.getUser(o.last_edited_by_id,e);r=b?b.name:"Unknown";break}case"created_time":r=K(o.created_time);break;case"last_edited_time":r=K(o.last_edited_time);break;default:r=""}i+=`${m}: ${r}
7
- `}}return i+=`---
8
- `,i+await this.childrenToMd(o,e,`
9
- `,o)}async childrenToMd(t,e,o,i){var l,c,p,m,h,r,b,f,y,_,w,M,x;let a="",n=1;for(let P of t.content?t.content:[]){let s=await this.getBlock(P,e,`${P} from ${R(i,e)}`);if(!s)continue;let $=(l=s==null?void 0:s.properties)==null?void 0:l.title;switch(s.type){case"header":a+=`${o}# ${await this.decorationsToMarkdown($,e)}`;break;case"sub_header":a+=`${o}## ${await this.decorationsToMarkdown($,e)}`;break;case"sub_sub_header":a+=`${o}### ${await this.decorationsToMarkdown($,e)}`;break;case"text":a+=`${o}${await this.decorationsToMarkdown($,e)}`;break;case"bulleted_list":a+=`${o}- ${await this.decorationsToMarkdown($,e)}`;break;case"numbered_list":a+=`${o}${n++}. ${await this.decorationsToMarkdown($,e)}`;break;case"to_do":a+=`${o}- [ ] ${await this.decorationsToMarkdown($,e)}`;break;case"toggle":a+=`${o}<details><summary>${o}${o}${await this.decorationsToMarkdown($,e)}</summary>
10
- `;break;case"quote":a+=await this.decorationsToMarkdown($,e,`
1
+ import{Cli as Z,Builtins as I}from"clipanion";var H="Notion CLI",z="1.4.4";import{Option as T,Command as le}from"clipanion";import{NotionAPI as C}from"@texonom/nclient";import{getBlockTitle as P,getCanonicalPageId as A,parsePageId as G,formatDate as K,getTextContent as O,getBlockParent as ee,defaultMapImageUrl as te,getAllInSpace as oe,getPageTitle as V,recursivePageTree as ae}from"@texonom/nutils";import{join as y}from"path";import{mkdir as q,readFile as j}from"fs/promises";import D from"JSONStream";import F from"graceful-fs";import{promisify as ie}from"util";import Y from"stream";import{format as se}from"prettier";import{isCollection as Q,isSpace as re}from"@texonom/ntypes";var X=ie(F.writeFile),J=($,t,e="https://texonom.com")=>`${e}/${A($,t)}`,U=class{constructor(t){this.promises=[];this.folder="texonom-raw";this.md="texonom-md";this.domain="https://texonom.com";this.validation=!0;this.update=!1;this.recursive=!1;this.prefetch=!1;this.load=!1;this.raw=!1;this.dataset=!1;this.debug=!1;this.wait=5;this.page=G(t.page),this.folder=t.folder??this.folder,this.domain=t.domain??this.domain,this.md=t.md??this.md,this.validation=t.validation??this.validation,this.update=t.update??this.update,this.recursive=t.recursive??this.recursive,this.prefetch=t.prefetch??this.prefetch,this.load=t.load??this.load,this.raw=t.raw??this.raw,this.dataset=t.dataset??this.dataset,this.token=t.token,this.notion=new C({authToken:this.token}),this.validation&&(X=async()=>{})}async execute(){let t=G(this.page);if(this.load&&(console.time("Load raw data"),await this.loadRaw(),console.timeEnd("Load raw data")),this.prefetch&&(console.time("Fetch raw data"),await this.fetchRawSpace(t),console.timeEnd("Fetch raw data")),this.raw)console.time("Export raw files"),this.recursive?await this.saveRawSpace():await this.saveRawPage(t),console.timeEnd("Export raw files");else{console.time("Extract markdown"),await this.exportMd(t),console.timeEnd("Extract markdown");let e={id:this.page,title:P(this.recordMap.block[this.page].value,this.recordMap),blocks:1,pages:1,children:[],type:"page"};ae(this.recordMap,e),this.pageTree=e}await Promise.all(this.promises),this.update&&(this.recursive?await this.saveRawSpace():await this.saveRawPage(t))}async loadRaw(){let{recordMap:t,pageTree:e,pageMap:o}=await ne(this.folder);this.recordMap=t,this.pageTree=e,this.pageMap=o}async fetchRawSpace(t){let{recordMap:e,pageTree:o,pageMap:i}=await oe(t,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},debug:this.debug});this.pageMap=i,this.recordMap=e,this.pageTree=o}async saveRawSpace(){if(this.validation)return;await q(this.folder,{recursive:!0});let t=[];await q(y(this.folder,"recordMap"),{recursive:!0});for(let e in this.recordMap)this.saveJson(y("recordMap",e),this.recordMap[e]);this.saveJson("pageMap",this.pageMap),this.saveJson("pageTree",this.pageTree),await Promise.all(t)}saveJson(t,e){if(this.validation)return;let o=F.createWriteStream(`${y(this.folder,t)}.json`),i=D.stringifyObject();i.pipe(o);for(let a in e)i.write([a,e[a]]);i.end()}async saveRawPage(t){if(this.validation)return;await q(this.folder,{recursive:!0});let e=await this.notion.getPage(t),o=`${A(t,e)}`,i=JSON.stringify(e),a="json";i=await se(i,{parser:"json"}),await this.writeFile(`${y(this.folder,o)}.${a}`,i)}async writeFile(t,e){if(this.folder)await X(t,e);else return}async exportMd(t){await q(this.md,{recursive:!0});try{let e=this.pageMap&&this.pageMap[t];e||(console.warn(`Missing from pageMap ${t}`),e=await this.notion.getPage(t)),this.recursive||(this.recordMap=e);try{e||(e=await this.notion.getPage(t))}catch{return}if(!["page","collection_view_page"].includes(e.block[t].value.type))throw new Error("Not a page");let o=await this.pageToMarkdown(t,e);this.pageMap[t]||(this.pageMap[t]=e);let i=y(this.md,`${A(t,e)}`);this.promises.push(this.writeFile(`${i}.md`,o))}catch(e){console.error(t,e)}}async pageToMarkdown(t,e){let o=await this.pageToMarkdownObj(t,e),i=`---
2
+ Title: ${o.title}
3
+ `;i+=`Parent: ${o.parent}
4
+ `;let a=Object.keys(o).filter(r=>!["title","parent","body"].includes(r));for(let r of a)i+=`${r}: ${o[r]}
5
+ `;return i+=`---
6
+ `,i+=o.body,i}async pageToMarkdownObj(t,e){var g,h;let o=e.block[t].value,i={},a=await this.decorationsToMarkdown((g=o.properties)!=null&&g.title?o.properties.title:[["Untitled"]],e);i.title=a;let r=ee(o,e),n;if(re(r)?n=r.name:Q(r)?n=O(r.name):r&&(n=P(r,e)),Q(n)){let l=n!=null&&n.schema?Object.keys(n.schema):[];l.splice(l.indexOf("title"),1);for(let c of l){let S=n.schema[c].name,f=n.schema[c].type,u="";switch(f){case"text":u=(h=o==null?void 0:o.properties)!=null&&h[c]?await this.decorationsToMarkdown(o.properties[c],e):"";break;case"created_by":{let w=await this.getUser(o.created_by_id,e);u=w?w.name:"Unknown";break}case"last_edited_by":{let w=await this.getUser(o.last_edited_by_id,e);u=w?w.name:"Unknown";break}case"created_time":u=K(o.created_time);break;case"last_edited_time":u=K(o.last_edited_time);break;default:u=""}i[S]=u}}let p=await this.childrenToMd(o,e,"",o);return i.body=p,i}async childrenToMd(t,e,o,i){var n,p,g,h,l,c,S,f,u,w,b,M,x;let a="",r=1;for(let R of t.content?t.content:[]){let s=await this.getBlock(R,e,`${R} from ${P(i,e)}`);if(!s)continue;let v=(n=s==null?void 0:s.properties)==null?void 0:n.title;switch(s.type){case"header":a+=`${o}# ${await this.decorationsToMarkdown(v,e)}`;break;case"sub_header":a+=`${o}## ${await this.decorationsToMarkdown(v,e)}`;break;case"sub_sub_header":a+=`${o}### ${await this.decorationsToMarkdown(v,e)}`;break;case"text":a+=`${o}${await this.decorationsToMarkdown(v,e)}`;break;case"bulleted_list":a+=`${o}- ${await this.decorationsToMarkdown(v,e)}`;break;case"numbered_list":a+=`${o}${r++}. ${await this.decorationsToMarkdown(v,e)}`;break;case"to_do":a+=`${o}- [ ] ${await this.decorationsToMarkdown(v,e)}`;break;case"toggle":a+=`${o}<details><summary>${o}${o}${await this.decorationsToMarkdown(v,e)}</summary>
7
+ `;break;case"quote":a+=await this.decorationsToMarkdown(v,e,`
11
8
  ${o.trim()}> `)+`
12
- `;break;case"code":a+=`${o}\`\`\`type${await this.decorationsToMarkdown($,e)}\`\`\``;break;case"equation":a+=`${o}$$${await this.decorationsToMarkdown($,e)}$$`;break;case"callout":{a+=await this.decorationsToMarkdown($,e,`
9
+ `;break;case"code":a+=`${o}\`\`\`type${await this.decorationsToMarkdown(v,e)}\`\`\``;break;case"equation":a+=`${o}$$${await this.decorationsToMarkdown(v,e)}$$`;break;case"callout":{a+=await this.decorationsToMarkdown(v,e,`
13
10
  ${o.trim()}> `)+`
14
11
  `;break}case"bookmark":{let d=`
15
- ${o.trim()}> `;a+=`${d}[${O((c=s.properties)!=null&&c.title?s.properties.title:[["Untitled"]])}](${O(s.properties.link)})
16
- `;break}case"external_object_instance":try{let d=s.format.original_url,C=s.format.attributes?(m=(p=s.format.attributes.filter(E=>E.id==="title")[0])==null?void 0:p.values)==null?void 0:m[0]:d;if(!d)break;a+=`${o}${o}[${C}](${d})${o}`;break}catch(d){console.error(d,s.id);break}case"collection_view_page":case"collection_view":{let d=await this.getCollection(s,e,`${s.id} from ${V(e)}`);if(!d)continue;a+=`${o}### ${await this.decorationsToMarkdown(d.name,e)}`,a+=`${o}|Title|
17
- |:-:|`;let C=s.view_ids.map(u=>{var g;return e.collection_view[u]||console.debug(`Missing view ${u} from ${d.name}`),(g=e.collection_view[u])==null?void 0:g.value}).filter(Boolean),E=[];for(let u of C){let g=await this.getCollectionView(d.id,u.id,e,`${d.name} ${u.name}`);if(g)for(let T of g.blockIds)E.push(T);else break}for(let u of E){let g=(h=e.block[u])==null?void 0:h.value;g||console.debug(`no ${u} in ${d.name[0]}`),a+=`${o}|[${R(g,e)}](${J(u,e)})|`}if(this.recursive&&E.length)for(let u of E)this.promises.push(this.exportMd(u));break}case"page":{a+=`${o}${o}[${R(s,e)}](${J(s.id,e)})${o}`,this.recursive&&this.promises.push(this.exportMd(s.id));break}case"alias":{let d=(f=e.block[(b=(r=s.format)==null?void 0:r.alias_pointer)==null?void 0:b.id])==null?void 0:f.value;if(!d){console.debug(`Missing alias ${(_=(y=s.format)==null?void 0:y.alias_pointer)==null?void 0:_.id} from ${R(i,e)} ${i.id}`);continue}a+=`${o}${o}[${R(d,e)}](${J(d.id,e)})${o}`;break}case"image":{let d=s.properties.caption?O(s.properties.caption):"";a+=`${o}![${d}](${te((w=s.format)==null?void 0:w.display_source,s)})`;break}case"video":a+=`${o}<video src="${s.format.display_source} />`;break;case"file":a+=`${o}[File](${(M=s.format)==null?void 0:M.display_source})`;break;case"pdf":a+=`${o}<iframe src="${(x=s.format)==null?void 0:x.display_source}"/>`;break;case"divider":a+=`${o}---`;break;case"column_list":break;case"column":break;default:a+=`${o}`}if(s.content&&s.type!=="page"&&s.type!=="collection_view_page"){let d=["toggle","transclusion_container","transclusion_reference","column_list"].includes(s.type)?o:`
12
+ ${o.trim()}> `;a+=`${d}[${O((p=s.properties)!=null&&p.title?s.properties.title:[["Untitled"]])}](${O(s.properties.link)})
13
+ `;break}case"external_object_instance":try{let d=s.format.original_url,B=s.format.attributes?(h=(g=s.format.attributes.filter(E=>E.id==="title")[0])==null?void 0:g.values)==null?void 0:h[0]:d;if(!d)break;a+=`${o}${o}[${B}](${d})${o}`;break}catch(d){console.error(d,s.id);break}case"collection_view_page":case"collection_view":{let d=await this.getCollection(s,e,`${s.id} from ${V(e)}`);if(!d)continue;a+=`${o}### ${await this.decorationsToMarkdown(d.name,e)}`,a+=`${o}|Title|
14
+ |:-:|`;let B=s.view_ids.map(m=>{var k;return e.collection_view[m]||this.debug&&console.warn(`Missing view ${m} from ${d.name}`),(k=e.collection_view[m])==null?void 0:k.value}).filter(Boolean),E=[];for(let m of B){let k=await this.getCollectionView(d.id,m.id,e,`${d.name} ${m.name}`);if(k)for(let _ of k.blockIds)E.push(_);else break}for(let m of E){let k=(l=e.block[m])==null?void 0:l.value;k||this.debug&&console.warn(`no ${m} in ${d.name[0]}`),a+=`${o}|[${P(k,e)}](${J(m,e)})|`}if(this.recursive&&E.length)for(let m of E)this.promises.push(this.exportMd(m));break}case"page":{a+=`${o}${o}[${P(s,e)}](${J(s.id,e)})${o}`,this.recursive&&this.promises.push(this.exportMd(s.id));break}case"alias":{let d=(f=e.block[(S=(c=s.format)==null?void 0:c.alias_pointer)==null?void 0:S.id])==null?void 0:f.value;if(!d){this.debug&&console.warn(`Missing alias ${(w=(u=s.format)==null?void 0:u.alias_pointer)==null?void 0:w.id} from ${P(i,e)} ${i.id}`);continue}a+=`${o}${o}[${P(d,e)}](${J(d.id,e)})${o}`;break}case"image":{let d=s.properties.caption?O(s.properties.caption):"";a+=`${o}![${d}](${te((b=s.format)==null?void 0:b.display_source,s)})`;break}case"video":a+=`${o}<video src="${s.format.display_source} />`;break;case"file":a+=`${o}[File](${(M=s.format)==null?void 0:M.display_source})`;break;case"pdf":a+=`${o}<iframe src="${(x=s.format)==null?void 0:x.display_source}"/>`;break;case"divider":a+=`${o}---`;break;case"column_list":break;case"column":break;default:a+=`${o}`}if(s.content&&s.type!=="page"&&s.type!=="collection_view_page"){let d=["toggle","transclusion_container","transclusion_reference","column_list"].includes(s.type)?o:`
18
15
  ${o.trim()}> `;a+=await this.childrenToMd(s,e,d,i),s.type==="column"&&(a+=`
19
- `)}s.type==="toggle"&&(a+=`${o}</details>${o}`)}return a}async decorationsToMarkdown(t,e,o=""){var l,c,p;if(!t)return"";let i="";for(let m of t){let h="",[r,b]=m;if(!b)i+=r;else{let f=r;for(let _ of b)switch(_[0]){case"p":{let w=_[1],M=await this.getBlock(w,e,`"p" ${V(e)}`);if(!M)break;let x=R(M,e),P=J(w,e);f=`[${x}](${P})`;break}case"a":{let w=_[1];f=`[${r}](${w})`;break}case"i":h+="*";break;case"b":h+="**";break;case"h":h+="";break;case"c":h+="`";break;case"s":h+="~~";break;case"e":h+="$",f=_[1];break;case"eoi":try{let w=_[1],M=await this.getBlock(w,e,`"eoi" ${V(e)}`);if(!M)break;let x=M.format.uri,P=M.format.attributes?(p=(c=(l=M.format.attributes)==null?void 0:l.filter(s=>s.id==="title")[0])==null?void 0:c.values)==null?void 0:p[0]:x;if(!x)break;f=`[${P}](${x})`;break}catch(w){console.error(w,m);break}case"u":{let w=await this.getUser(_[1],e);if(!w)break;f=`[@${w.name}](mailto:${w.email})`;break}}let y=f;b.find(_=>_[0]==="_")&&(y=`<u>${f}</u>`),y=h+y+h.split("").reverse().join(""),i+=y}}return i.split(`
20
- `).map(m=>o+m).join("")}async getBlock(t,e,o=""){var a,n,l,c,p;let i=(a=e.block[t])==null?void 0:a.value;!i&&this.recordMap&&(i=(n=this.recordMap.block[t])==null?void 0:n.value);try{!i&&this.token&&(i=(p=(c=(l=(await new B({authToken:this.token}).getBlocks([t])).recordMap)==null?void 0:l.block)==null?void 0:c[t])==null?void 0:p.value)}catch{i||console.debug(`${o} Missing block ${t}`)}return i&&(e.block[t]={value:i,role:"reader"},this.recordMap&&(this.recordMap.block[t]={value:i,role:"reader"})),i}async getUser(t,e){var i,a,n,l,c;let o=(i=e.notion_user[t])==null?void 0:i.value;!o&&this.recordMap&&(o=(a=this.recordMap.notion_user[t])==null?void 0:a.value);try{!o&&this.token&&(o=(c=(l=(n=(await new B({authToken:this.token}).getUsers([t])).recordMapWithRoles)==null?void 0:n.notion_user)==null?void 0:l[t])==null?void 0:c.value)}catch{o||console.debug(`Missing user ${t}`)}return o&&(e.notion_user[t]={value:o,role:"reader"},this.recordMap&&(this.recordMap.notion_user[t]={value:o,role:"reader"})),o}async getCollection(t,e,o=""){var n,l,c,p,m;let i=t.collection_id,a=(n=e.collection[t.collection_id])==null?void 0:n.value;if(!a&&this.recordMap&&(a=(l=this.recordMap.collection[i])==null?void 0:l.value,a)){e.collection[i]=(c=this.recordMap.collection)==null?void 0:c[i];for(let h of t.view_ids)e.collection_view[h]=(p=this.recordMap.collection_view)==null?void 0:p[h]}try{if(!a&&this.token){let r=await new B({authToken:this.token}).getPageRaw(t.id);ce(1e3*this.wait),r.recordMap||console.error(r),a=(m=r.recordMap.collection[i])==null?void 0:m.value,a&&(e.collection_view={...e.collection_view,...r.recordMap.collection_view},e.collection={...e.collection,...r.recordMap.collection},e.block={...e.block,...r.recordMap.block},this.recordMap.collection_view={...this.recordMap.collection_view,...r.recordMap.collection_view},this.recordMap.collection={...this.recordMap.collection,...r.recordMap.collection},this.recordMap.block={...this.recordMap.block,...r.recordMap.block})}}catch{a||console.debug(`${o} Missing collection block ${t.id}`)}return await this.getCollectionView(i,t.view_ids[0],e,o),a}async getCollectionView(t,e,o,i=""){var n,l,c,p,m,h,r,b,f,y,_,w,M,x,P,s,$,d,C;let a=(c=(l=(n=o.collection_query)==null?void 0:n[t])==null?void 0:l[e])==null?void 0:c.collection_group_results;!a&&this.recordMap&&(a=(h=(m=(p=this.recordMap.collection_query)==null?void 0:p[t])==null?void 0:m[e])==null?void 0:h.collection_group_results,a&&(o.collection_query[t]={...o.collection_query[t],[e]:(b=(r=this.recordMap.collection_query)==null?void 0:r[t])==null?void 0:b[e]},this.recordMap.collection_query[t]={...this.recordMap.collection_query[t],[e]:(y=(f=this.recordMap.collection_query)==null?void 0:f[t])==null?void 0:y[e]},o.collection[t]={...o.collection[t],[e]:(w=(_=this.recordMap.collection)==null?void 0:_[t])==null?void 0:w[e]},this.recordMap.collection[t]={...this.recordMap.collection[t],[e]:(x=(M=this.recordMap.collection)==null?void 0:M[t])==null?void 0:x[e]}));try{if(!a&&this.token){let u=await new B({authToken:this.token}).getCollectionData(t,e,(P=o.collection_view[e])==null?void 0:P.value);if(a=($=(s=u.result)==null?void 0:s.reducerResults)==null?void 0:$.collection_group_results,a){o.collection_query[t]={...o.collection_query[t],[e]:(d=u.result)==null?void 0:d.reducerResults},this.recordMap&&(this.recordMap.collection_query[t]={...this.recordMap.collection_query[t],[e]:(C=u.result)==null?void 0:C.reducerResults});for(let g in u.recordMap.block){let T=u.recordMap.block[g].value;T&&(o.block[g]={value:T,role:"reader"},this.recordMap&&(this.recordMap.block[g]={value:T,role:"reader"}))}for(let g in u.recordMap.collection){let T=u.recordMap.collection[g].value;T&&(o.collection[g]={value:T,role:"reader"},this.recordMap&&(this.recordMap.collection[g]={value:T,role:"reader"}))}for(let g in u.recordMap.collection_view){let T=u.recordMap.collection_view[g].value;T&&(o.collection_view[g]={value:T,role:"reader"},this.recordMap&&(this.recordMap.collection_view[g]={value:T,role:"reader"}))}}}}catch{a||console.debug(`${i} Missing collection view ${e}`)}return a}async getSpace(t,e){var i,a,n,l,c;let o=(i=e.space[t])==null?void 0:i.value;!o&&this.recordMap&&(o=(a=this.recordMap.space[t])==null?void 0:a.value);try{!o&&this.token&&(o=(c=(l=(n=(await new B({authToken:this.token}).getSpaces([t])).recordMapWithRoles)==null?void 0:n.space)==null?void 0:l[t])==null?void 0:c.value,o&&(e.space[t]={value:o,role:"reader"},this.recordMap&&(this.recordMap.space[t]={value:o,role:"reader"})))}catch{o||console.debug(`Missing space ${t}`)}return o}};async function ne(k){let t=[];t.push(j(v(k,"recordMap","block.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"recordMap","collection.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"recordMap","notion_user.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"recordMap","space.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"recordMap","collection_view.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"recordMap","collection_query.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"recordMap","signed_urls.json"),"utf8").then(JSON.parse)),t.push(j(v(k,"pageTree.json"),"utf8").then(JSON.parse));let[e,o,i,a,n,l,c,p]=await Promise.all(t),m={},h=F.createReadStream(v(k,"pageMap.json")),r=D.parse("*");return h.pipe(r),r.on("data",f=>{let y=Object.keys(f.block)[0];m[y]=f}),await new Promise(f=>Y.finished(r,y=>f(y))),{recordMap:{block:e,collection:o,notion_user:i,space:a,collection_query:l,collection_view:n,signed_urls:c},pageTree:p,pageMap:m}}async function ve(k,t){let e={},o=F.createReadStream(v(k,`${t}.json`)),i=D.parse("*");return o.pipe(i),i.on("*",([a,n])=>{e[a]=n}),new Promise(a=>Y.finished(i,n=>{console.error(n),a(e)}))}var ce=k=>{let t=new Int32Array(new SharedArrayBuffer(4));Atomics.wait(t,0,0,k)};var N=class extends le{constructor(){super(...arguments);this.folder=S.String("-o,--output","texonom-raw",{description:"Target root folder to export folder"});this.md=S.String("-m,--md","texonom-md",{description:"Target folder to export markdown"});this.domain=S.String("-d,--domain","https://texonom.com",{description:"Domain to fill in the link"});this.validation=S.Boolean("-v,--validation",{description:"Validation exported data only"});this.update=S.Boolean("-u,--update",{description:"Update exported data and resave to the --root"});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 data from exported cache folder --root"});this.raw=S.Boolean("--raw",{description:`Export raw recordMap JSON data
21
- Markdown format do not preserve all information`});this.dataset=S.Boolean("-d, --dataset",{description:"Export as dataset for LLM learning"});this.token=S.String("-t,--token",{description:"Notion Access Token"});this.wait=S.Counter("-w,--wait",{description:"Wait couter for missed collection view"})}async execute(){await new U({folder:this.folder,validation:this.validation,update:this.update,page:this.page,recursive:this.recursive,prefetch:this.prefetch,load:this.load,raw:this.raw,dataset:this.dataset,token:this.token}).execute()}};N.paths=[["export"]];var L=new Z({binaryName:"notion",binaryLabel:H,binaryVersion:z});L.register(N);L.register(I.HelpCommand);L.register(I.VersionCommand);L.runExit(process.argv.slice(2),Z.defaultContext);export{N as NotionExportCommand,U as NotionExporter,J as getBlockLink,ve as loadJson,ne as loadRaw};
16
+ `)}s.type==="toggle"&&(a+=`${o}</details>${o}`)}return a}async decorationsToMarkdown(t,e,o=""){var n,p,g;if(!t)return"";let i="";for(let h of t){let l="",[c,S]=h;if(!S)i+=c;else{let f=c;for(let w of S)switch(w[0]){case"p":{let b=w[1],M=await this.getBlock(b,e,`"p" ${V(e)}`);if(!M)break;let x=P(M,e),R=J(b,e);f=`[${x}](${R})`;break}case"a":{let b=w[1];f=`[${c}](${b})`;break}case"i":l+="*";break;case"b":l+="**";break;case"h":l+="";break;case"c":l+="`";break;case"s":l+="~~";break;case"e":l+="$",f=w[1];break;case"eoi":try{let b=w[1],M=await this.getBlock(b,e,`"eoi" ${V(e)}`);if(!M)break;let x=M.format.uri,R=M.format.attributes?(g=(p=(n=M.format.attributes)==null?void 0:n.filter(s=>s.id==="title")[0])==null?void 0:p.values)==null?void 0:g[0]:x;if(!x)break;f=`[${R}](${x})`;break}catch(b){console.error(b,h);break}case"u":{let b=await this.getUser(w[1],e);if(!b)break;f=`[@${b.name}](mailto:${b.email})`;break}}let u=f;S.find(w=>w[0]==="_")&&(u=`<u>${f}</u>`),u=l+u+l.split("").reverse().join(""),i+=u}}return i.split(`
17
+ `).map(h=>o+h).join("")}async getBlock(t,e,o=""){var a,r,n,p,g;let i=(a=e.block[t])==null?void 0:a.value;!i&&this.recordMap&&(i=(r=this.recordMap.block[t])==null?void 0:r.value);try{!i&&this.token&&(i=(g=(p=(n=(await new C({authToken:this.token}).getBlocks([t])).recordMap)==null?void 0:n.block)==null?void 0:p[t])==null?void 0:g.value)}catch{i||this.debug&&console.warn(`${o} Missing block ${t}`)}return i&&(e.block[t]={value:i,role:"reader"},this.recordMap&&(this.recordMap.block[t]={value:i,role:"reader"})),i}async getUser(t,e){var i,a,r,n,p;let o=(i=e.notion_user[t])==null?void 0:i.value;!o&&this.recordMap&&(o=(a=this.recordMap.notion_user[t])==null?void 0:a.value);try{!o&&this.token&&(o=(p=(n=(r=(await new C({authToken:this.token}).getUsers([t])).recordMapWithRoles)==null?void 0:r.notion_user)==null?void 0:n[t])==null?void 0:p.value)}catch{o||this.debug&&console.warn(`Missing user ${t}`)}return o&&(e.notion_user[t]={value:o,role:"reader"},this.recordMap&&(this.recordMap.notion_user[t]={value:o,role:"reader"})),o}async getCollection(t,e,o=""){var r,n,p,g,h;let i=t.collection_id,a=(r=e.collection[t.collection_id])==null?void 0:r.value;if(!a&&this.recordMap&&(a=(n=this.recordMap.collection[i])==null?void 0:n.value,a)){e.collection[i]=(p=this.recordMap.collection)==null?void 0:p[i];for(let l of t.view_ids)e.collection_view[l]=(g=this.recordMap.collection_view)==null?void 0:g[l]}try{if(!a&&this.token){let c=await new C({authToken:this.token}).getPageRaw(t.id);ce(1e3*this.wait),c.recordMap||console.error(c),a=(h=c.recordMap.collection[i])==null?void 0:h.value,a&&(e.collection_view={...e.collection_view,...c.recordMap.collection_view},e.collection={...e.collection,...c.recordMap.collection},e.block={...e.block,...c.recordMap.block},this.recordMap.collection_view={...this.recordMap.collection_view,...c.recordMap.collection_view},this.recordMap.collection={...this.recordMap.collection,...c.recordMap.collection},this.recordMap.block={...this.recordMap.block,...c.recordMap.block})}}catch{a||this.debug&&console.warn(`${o} Missing collection block ${t.id}`)}return await this.getCollectionView(i,t.view_ids[0],e,o),a}async getCollectionView(t,e,o,i=""){var r,n,p,g,h,l,c,S,f,u,w,b,M,x,R,s,v,d,B;let a=(p=(n=(r=o.collection_query)==null?void 0:r[t])==null?void 0:n[e])==null?void 0:p.collection_group_results;!a&&this.recordMap&&(a=(l=(h=(g=this.recordMap.collection_query)==null?void 0:g[t])==null?void 0:h[e])==null?void 0:l.collection_group_results,a&&(o.collection_query[t]={...o.collection_query[t],[e]:(S=(c=this.recordMap.collection_query)==null?void 0:c[t])==null?void 0:S[e]},this.recordMap.collection_query[t]={...this.recordMap.collection_query[t],[e]:(u=(f=this.recordMap.collection_query)==null?void 0:f[t])==null?void 0:u[e]},o.collection[t]={...o.collection[t],[e]:(b=(w=this.recordMap.collection)==null?void 0:w[t])==null?void 0:b[e]},this.recordMap.collection[t]={...this.recordMap.collection[t],[e]:(x=(M=this.recordMap.collection)==null?void 0:M[t])==null?void 0:x[e]}));try{if(!a&&this.token){let m=await new C({authToken:this.token}).getCollectionData(t,e,(R=o.collection_view[e])==null?void 0:R.value);if(a=(v=(s=m.result)==null?void 0:s.reducerResults)==null?void 0:v.collection_group_results,a){o.collection_query[t]={...o.collection_query[t],[e]:(d=m.result)==null?void 0:d.reducerResults},this.recordMap&&(this.recordMap.collection_query[t]={...this.recordMap.collection_query[t],[e]:(B=m.result)==null?void 0:B.reducerResults});for(let k in m.recordMap.block){let _=m.recordMap.block[k].value;_&&(o.block[k]={value:_,role:"reader"},this.recordMap&&(this.recordMap.block[k]={value:_,role:"reader"}))}for(let k in m.recordMap.collection){let _=m.recordMap.collection[k].value;_&&(o.collection[k]={value:_,role:"reader"},this.recordMap&&(this.recordMap.collection[k]={value:_,role:"reader"}))}for(let k in m.recordMap.collection_view){let _=m.recordMap.collection_view[k].value;_&&(o.collection_view[k]={value:_,role:"reader"},this.recordMap&&(this.recordMap.collection_view[k]={value:_,role:"reader"}))}}}}catch{a||this.debug&&console.warn(`${i} Missing collection view ${e}`)}return a}async getSpace(t,e){var i,a,r,n,p;let o=(i=e.space[t])==null?void 0:i.value;!o&&this.recordMap&&(o=(a=this.recordMap.space[t])==null?void 0:a.value);try{!o&&this.token&&(o=(p=(n=(r=(await new C({authToken:this.token}).getSpaces([t])).recordMapWithRoles)==null?void 0:r.space)==null?void 0:n[t])==null?void 0:p.value,o&&(e.space[t]={value:o,role:"reader"},this.recordMap&&(this.recordMap.space[t]={value:o,role:"reader"})))}catch{o||this.debug&&console.warn(`Missing space ${t}`)}return o}};async function ne($){let t=[];t.push(j(y($,"recordMap","block.json"),"utf8").then(JSON.parse)),t.push(j(y($,"recordMap","collection.json"),"utf8").then(JSON.parse)),t.push(j(y($,"recordMap","notion_user.json"),"utf8").then(JSON.parse)),t.push(j(y($,"recordMap","space.json"),"utf8").then(JSON.parse)),t.push(j(y($,"recordMap","collection_view.json"),"utf8").then(JSON.parse)),t.push(j(y($,"recordMap","collection_query.json"),"utf8").then(JSON.parse)),t.push(j(y($,"recordMap","signed_urls.json"),"utf8").then(JSON.parse)),t.push(j(y($,"pageTree.json"),"utf8").then(JSON.parse));let[e,o,i,a,r,n,p,g]=await Promise.all(t),h={},l=F.createReadStream(y($,"pageMap.json")),c=D.parse("*");return l.pipe(c),c.on("data",f=>{let u=Object.keys(f.block)[0];h[u]=f}),await new Promise(f=>Y.finished(c,u=>f(u))),{recordMap:{block:e,collection:o,notion_user:i,space:a,collection_query:n,collection_view:r,signed_urls:p},pageTree:g,pageMap:h}}async function ve($,t){let e={},o=F.createReadStream(y($,`${t}.json`)),i=D.parse("*");return o.pipe(i),i.on("*",([a,r])=>{e[a]=r}),new Promise(a=>Y.finished(i,r=>{console.error(r),a(e)}))}var ce=$=>{let t=new Int32Array(new SharedArrayBuffer(4));Atomics.wait(t,0,0,$)};var N=class extends le{constructor(){super(...arguments);this.folder=T.String("-o,--output","texonom-raw",{description:"Target root folder to export folder"});this.md=T.String("-m,--md","texonom-md",{description:"Target folder to export markdown"});this.domain=T.String("-d,--domain","https://texonom.com",{description:"Domain to fill in the link"});this.validation=T.Boolean("-v,--validation",{description:"Validation exported data only"});this.update=T.Boolean("-u,--update",{description:"Update exported data and resave to the --root"});this.page=T.String("-p,--page",{required:!0,description:"Target page to export"});this.recursive=T.Boolean("-r,--recursive",{description:"Recursively export children"});this.prefetch=T.Boolean("-f, --prefetch",{description:"Prefetch all space for faster export (recommended for exporting all pages in a space)"});this.load=T.Boolean("-l, --load",{description:"Load data from exported cache folder --root"});this.raw=T.Boolean("--raw",{description:`Export raw recordMap JSON data
18
+ Markdown format do not preserve all information`});this.dataset=T.Boolean("-d, --dataset",{description:"Export as dataset for LLM learning"});this.token=T.String("-t,--token",{description:"Notion Access Token"});this.wait=T.Counter("-w,--wait",{description:"Wait couter for missed collection view"})}async execute(){await new U({folder:this.folder,validation:this.validation,update:this.update,page:this.page,recursive:this.recursive,prefetch:this.prefetch,load:this.load,raw:this.raw,dataset:this.dataset,token:this.token}).execute()}};N.paths=[["export"]];var L=new Z({binaryName:"notion",binaryLabel:H,binaryVersion:z});L.register(N);L.register(I.HelpCommand);L.register(I.VersionCommand);L.runExit(process.argv.slice(2),Z.defaultContext);export{N as NotionExportCommand,U as NotionExporter,J as getBlockLink,ve as loadJson,ne as loadRaw};
22
19
  //# sourceMappingURL=main.js.map
@@ -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'\nexport * from './notion/index'\n","{\n \"name\": \"@texonom/cli\",\n \"displayName\": \"Notion CLI\",\n \"version\": \"1.4.2\",\n \"type\": \"module\",\n \"description\": \"Texonom CLI which has ability to export data from Notion.so\",\n \"repository\": \"texonom/notion-node\",\n \"author\": \"Seonglae Cho <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\": \">=20.18.1\"\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.4.2\"\n },\n \"standard-version\": {\n \"skip\": {\n \"commit\": true,\n \"tag\": true\n }\n },\n \"devDependencies\": {\n \"@types/graceful-fs\": \"^4.1.9\",\n \"@types/jsonstream\": \"^0.8.33\"\n }\n}\n","import { Option, Command } from 'clipanion'\nimport { NotionExporter } from './index'\n\nexport class NotionExportCommand extends Command {\n static paths = [['export']]\n\n folder = Option.String('-o,--output', 'texonom-raw', {\n description: 'Target root folder to export folder'\n })\n md = Option.String('-m,--md', 'texonom-md', {\n description: 'Target folder to export markdown'\n })\n domain = Option.String('-d,--domain', 'https://texonom.com', {\n description: 'Domain to fill in the link'\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 the --root'\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 data from exported cache folder --root'\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 token = Option.String('-t,--token', {\n description: 'Notion Access Token'\n })\n wait = Option.Counter('-w,--wait', {\n description: 'Wait couter for missed collection view'\n })\n\n async execute() {\n const exporter = new NotionExporter({\n folder: this.folder,\n validation: this.validation,\n update: this.update,\n page: this.page,\n recursive: this.recursive,\n prefetch: this.prefetch,\n load: this.load,\n raw: this.raw,\n dataset: this.dataset,\n token: this.token\n })\n await exporter.execute()\n }\n}\n","import { NotionAPI } from '@texonom/nclient'\nimport {\n getBlockTitle,\n getCanonicalPageId,\n parsePageId,\n formatDate,\n getTextContent,\n getBlockParent,\n defaultMapImageUrl,\n getAllInSpace,\n getPageTitle,\n recursivePageTree\n} from '@texonom/nutils'\nimport { 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'\nimport { format } from 'prettier'\nimport { isCollection, isSpace } from '@texonom/ntypes'\n\nimport type { PageTree } from '@texonom/nutils'\nimport type { ExtendedRecordMap, PageMap, PageBlock, Block, Decoration, CollectionViewBlock } from '@texonom/ntypes'\n\nlet writeFile = promisify(fs.writeFile)\n\nexport const getBlockLink = (blockId: string, recordMap: ExtendedRecordMap, domain = 'https://texonom.com') =>\n `${domain}/${getCanonicalPageId(blockId, recordMap)}`\n\nexport class NotionExporter {\n notion: NotionAPI\n recordMap: ExtendedRecordMap\n pageTree: PageTree\n pageMap: PageMap\n promises: Promise<unknown>[] = []\n\n // Options\n folder: string = 'texonom-raw'\n md: string = 'texonom-md'\n domain: string = 'https://texonom.com'\n validation: boolean = false\n update: boolean = false\n page: string\n recursive: boolean = false\n prefetch: boolean = false\n load: boolean = false\n raw: boolean = false\n dataset: boolean = false\n wait: number = 5\n token: string | undefined\n\n constructor(options: {\n folder?: string\n validation?: boolean\n update?: boolean\n page: string\n recursive?: boolean\n prefetch?: boolean\n md?: string\n domain?: string\n load?: boolean\n raw?: boolean\n dataset?: boolean\n token?: string\n }) {\n this.page = parsePageId(options.page)\n this.folder = options.folder ?? this.folder\n this.domain = options.domain ?? this.domain\n this.md = options.md ?? this.md\n this.validation = options.validation ?? this.validation\n this.update = options.update ?? this.update\n this.recursive = options.recursive ?? this.recursive\n this.prefetch = options.prefetch ?? this.prefetch\n this.load = options.load ?? this.load\n this.raw = options.raw ?? this.raw\n this.dataset = options.dataset ?? this.dataset\n this.token = options.token\n\n this.notion = new NotionAPI({ authToken: this.token })\n if (this.validation) writeFile = async () => {}\n }\n\n async execute() {\n const id = parsePageId(this.page)\n\n // Load\n if (this.load) {\n console.time('Load raw data')\n await this.loadRaw()\n console.timeEnd('Load raw data')\n }\n if (this.prefetch) {\n console.time('Fetch raw data')\n await this.fetchRawSpace(id)\n console.timeEnd('Fetch raw data')\n }\n\n // Save\n if (this.raw) {\n console.time('Export raw files')\n if (this.recursive) await this.saveRawSpace()\n else await this.saveRawPage(id)\n console.timeEnd('Export raw files')\n }\n // Export\n else {\n console.time('Extract markdown')\n await this.exportMd(id)\n console.timeEnd('Extract markdown')\n const pageTree = {\n id: this.page,\n title: getBlockTitle(this.recordMap.block[this.page].value, this.recordMap),\n blocks: 1,\n pages: 1,\n children: [],\n type: 'page'\n }\n recursivePageTree(this.recordMap, pageTree)\n this.pageTree = pageTree\n }\n await Promise.all(this.promises)\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 const { recordMap, pageTree, pageMap } = await loadRaw(this.folder)\n this.recordMap = recordMap\n this.pageTree = pageTree\n this.pageMap = pageMap\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 {\n startRecordMap: this.recordMap,\n collectionConcurrency: 100,\n concurrency: 100,\n fetchOption: { timeout: 10000 }\n }\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 promises = []\n await mkdir(join(this.folder, 'recordMap'), { recursive: true })\n for (const table in this.recordMap) this.saveJson(join('recordMap', table), this.recordMap[table])\n this.saveJson('pageMap', this.pageMap)\n this.saveJson('pageTree', this.pageTree)\n await Promise.all(promises)\n }\n\n saveJson(filename: string, object: Record<string, unknown>) {\n if (this.validation) return\n const outputStream = fs.createWriteStream(`${join(this.folder, filename)}.json`)\n const transformStream = JSONStream.stringifyObject()\n transformStream.pipe(outputStream)\n // @ts-ignore\n for (const key in object) transformStream.write([key, object[key]])\n transformStream.end()\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 format(target, { parser: 'json' })\n await this.writeFile(`${join(this.folder, filename)}.${ext}`, target)\n }\n\n async writeFile(path: string, target: string) {\n if (!this.folder) return\n else await writeFile(path, target)\n }\n\n async exportMd(id: string) {\n await mkdir(this.md, { recursive: true })\n try {\n let recordMap = this.pageMap && this.pageMap[id]\n if (!recordMap) {\n console.warn(`Missing from pageMap ${id}`)\n recordMap = await this.notion.getPage(id)\n }\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)\n if (!this.pageMap[id]) this.pageMap[id] = recordMap\n const path = join(this.md, `${getCanonicalPageId(id, recordMap)}`)\n this.promises.push(this.writeFile(`${path}.md`, target))\n } catch (e) {\n console.error(id, e)\n }\n }\n\n async pageToMarkdown(id: string, recordMap: ExtendedRecordMap) {\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', page))\n }\n\n async childrenToMd(parentBlock: Block, recordMap: ExtendedRecordMap, prefix: 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 for (const childPage of children) this.promises.push(this.exportMd(childPage))\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) this.promises.push(this.exportMd(childBlock.id))\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}![${caption}](${defaultMapImageUrl(childBlock.format?.display_source, childBlock)})`\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, 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 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 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 // @wait for rate limit\n sleepSync(1000 * this.wait)\n if (!response.recordMap) console.error(response)\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 this.recordMap.collection_query![collectionId] = {\n ...this.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 this.recordMap.collection![collectionId] = {\n ...this.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 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\nexport async function loadRaw(\n folder: string\n): Promise<{ recordMap: ExtendedRecordMap; pageTree: PageTree; pageMap: PageMap }> {\n const promises = []\n promises.push(readFile(join(folder, 'recordMap', 'block.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'collection.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'notion_user.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'space.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'collection_view.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'collection_query.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'signed_urls.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(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(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 const recordMap: ExtendedRecordMap = {\n block,\n collection,\n notion_user,\n space,\n collection_query,\n collection_view,\n signed_urls\n }\n return { recordMap, pageTree, pageMap }\n}\n\nexport async function loadJson<C>(folder: string, filename: string): Promise<C> {\n const object = {} as C\n const inputStream = fs.createReadStream(join(folder, `${filename}.json`))\n const parseStream = JSONStream.parse('*')\n inputStream.pipe(parseStream)\n parseStream.on('*', ([key, value]) => {\n object[key] = value\n })\n return new Promise(res =>\n stream.finished(parseStream, err => {\n console.error(err)\n res(object)\n })\n )\n}\n\nconst sleepSync = (ms: number) => {\n const sharedBuffer = new Int32Array(new SharedArrayBuffer(4))\n Atomics.wait(sharedBuffer, 0, 0, ms)\n}\n"],"mappings":"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","names":["Cli","Builtins","displayName","version","Option","Command","NotionAPI","getBlockTitle","getCanonicalPageId","parsePageId","formatDate","getTextContent","getBlockParent","defaultMapImageUrl","getAllInSpace","getPageTitle","recursivePageTree","join","mkdir","readFile","JSONStream","fs","promisify","stream","format","isCollection","isSpace","writeFile","getBlockLink","blockId","recordMap","domain","NotionExporter","options","id","pageTree","pageMap","loadRaw","startPage","promises","table","filename","object","outputStream","transformStream","key","target","ext","path","_a","_b","page","md","parent","properties","property","propName","propType","value","user","parentBlock","prefix","_c","_d","_e","_f","_g","_h","_i","_j","_k","_l","_m","numbering","child","childBlock","title","nesting","url","attr","e","collection","views","children","view","results","result","childPage","aliasBlock","caption","nestedPrefix","decos","deco","wrapper","text","subdecos","textonly","subdeco","linkedBlock","objectid","decorated","line","message","block","collectionViewBlock","collectionId","viewId","response","sleepSync","_n","_o","_p","_q","_r","_s","collectionValue","collectionView","collectionViewValue","space","folder","notion_user","collection_view","collection_query","signed_urls","inputStream","parseStream","res","err","loadJson","ms","sharedBuffer","NotionExportCommand","Command","Option","NotionExporter","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'\nexport * from './notion/index'\n","{\n \"name\": \"@texonom/cli\",\n \"displayName\": \"Notion CLI\",\n \"version\": \"1.4.4\",\n \"type\": \"module\",\n \"description\": \"Texonom CLI which has ability to export data from Notion.so\",\n \"repository\": \"texonom/notion-node\",\n \"author\": \"Seonglae Cho <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\": \">=20.18.1\"\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.4.2\"\n },\n \"standard-version\": {\n \"skip\": {\n \"commit\": true,\n \"tag\": true\n }\n },\n \"devDependencies\": {\n \"@types/graceful-fs\": \"^4.1.9\",\n \"@types/jsonstream\": \"^0.8.33\"\n }\n}\n","import { Option, Command } from 'clipanion'\nimport { NotionExporter } from './index'\n\nexport class NotionExportCommand extends Command {\n static paths = [['export']]\n\n folder = Option.String('-o,--output', 'texonom-raw', {\n description: 'Target root folder to export folder'\n })\n md = Option.String('-m,--md', 'texonom-md', {\n description: 'Target folder to export markdown'\n })\n domain = Option.String('-d,--domain', 'https://texonom.com', {\n description: 'Domain to fill in the link'\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 the --root'\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 data from exported cache folder --root'\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 token = Option.String('-t,--token', {\n description: 'Notion Access Token'\n })\n wait = Option.Counter('-w,--wait', {\n description: 'Wait couter for missed collection view'\n })\n\n async execute() {\n const exporter = new NotionExporter({\n folder: this.folder,\n validation: this.validation,\n update: this.update,\n page: this.page,\n recursive: this.recursive,\n prefetch: this.prefetch,\n load: this.load,\n raw: this.raw,\n dataset: this.dataset,\n token: this.token\n })\n await exporter.execute()\n }\n}\n","import { NotionAPI } from '@texonom/nclient'\nimport {\n getBlockTitle,\n getCanonicalPageId,\n parsePageId,\n formatDate,\n getTextContent,\n getBlockParent,\n defaultMapImageUrl,\n getAllInSpace,\n getPageTitle,\n recursivePageTree\n} from '@texonom/nutils'\nimport { 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'\nimport { format } from 'prettier'\nimport { isCollection, isSpace } from '@texonom/ntypes'\n\nimport type { PageTree } from '@texonom/nutils'\nimport type { ExtendedRecordMap, PageMap, PageBlock, Block, Decoration, CollectionViewBlock } from '@texonom/ntypes'\n\nlet writeFile = promisify(fs.writeFile)\n\nexport const getBlockLink = (blockId: string, recordMap: ExtendedRecordMap, domain = 'https://texonom.com') =>\n `${domain}/${getCanonicalPageId(blockId, recordMap)}`\n\nexport type Markdown = {\n [attre in string]: string\n}\n\nexport class NotionExporter {\n notion: NotionAPI\n recordMap: ExtendedRecordMap\n pageTree: PageTree\n pageMap: PageMap\n promises: Promise<unknown>[] = []\n\n // Options\n folder: string = 'texonom-raw'\n md: string = 'texonom-md'\n domain: string = 'https://texonom.com'\n validation: boolean = true\n update: boolean = false\n page: string\n recursive: boolean = false\n prefetch: boolean = false\n load: boolean = false\n raw: boolean = false\n dataset: boolean = false\n debug: boolean = false\n wait: number = 5\n token: string | undefined\n\n constructor(options: {\n folder?: string\n validation?: boolean\n update?: boolean\n page: string\n recursive?: boolean\n prefetch?: boolean\n md?: string\n domain?: string\n load?: boolean\n raw?: boolean\n dataset?: boolean\n token?: string\n }) {\n this.page = parsePageId(options.page)\n this.folder = options.folder ?? this.folder\n this.domain = options.domain ?? this.domain\n this.md = options.md ?? this.md\n this.validation = options.validation ?? this.validation\n this.update = options.update ?? this.update\n this.recursive = options.recursive ?? this.recursive\n this.prefetch = options.prefetch ?? this.prefetch\n this.load = options.load ?? this.load\n this.raw = options.raw ?? this.raw\n this.dataset = options.dataset ?? this.dataset\n this.token = options.token\n\n this.notion = new NotionAPI({ authToken: this.token })\n if (this.validation) writeFile = async () => {}\n }\n\n async execute() {\n const id = parsePageId(this.page)\n\n // Load\n if (this.load) {\n console.time('Load raw data')\n await this.loadRaw()\n console.timeEnd('Load raw data')\n }\n if (this.prefetch) {\n console.time('Fetch raw data')\n await this.fetchRawSpace(id)\n console.timeEnd('Fetch raw data')\n }\n\n // Save\n if (this.raw) {\n console.time('Export raw files')\n if (this.recursive) await this.saveRawSpace()\n else await this.saveRawPage(id)\n console.timeEnd('Export raw files')\n }\n // Export\n else {\n console.time('Extract markdown')\n await this.exportMd(id)\n console.timeEnd('Extract markdown')\n const pageTree = {\n id: this.page,\n title: getBlockTitle(this.recordMap.block[this.page].value, this.recordMap),\n blocks: 1,\n pages: 1,\n children: [],\n type: 'page'\n }\n recursivePageTree(this.recordMap, pageTree)\n this.pageTree = pageTree\n }\n await Promise.all(this.promises)\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 const { recordMap, pageTree, pageMap } = await loadRaw(this.folder)\n this.recordMap = recordMap\n this.pageTree = pageTree\n this.pageMap = pageMap\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 {\n startRecordMap: this.recordMap,\n collectionConcurrency: 100,\n concurrency: 100,\n fetchOption: { timeout: 10000 },\n debug: this.debug\n }\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 promises = []\n await mkdir(join(this.folder, 'recordMap'), { recursive: true })\n for (const table in this.recordMap) this.saveJson(join('recordMap', table), this.recordMap[table])\n this.saveJson('pageMap', this.pageMap)\n this.saveJson('pageTree', this.pageTree)\n await Promise.all(promises)\n }\n\n saveJson(filename: string, object: Record<string, unknown>) {\n if (this.validation) return\n const outputStream = fs.createWriteStream(`${join(this.folder, filename)}.json`)\n const transformStream = JSONStream.stringifyObject()\n transformStream.pipe(outputStream)\n // @ts-ignore\n for (const key in object) transformStream.write([key, object[key]])\n transformStream.end()\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 format(target, { parser: 'json' })\n await this.writeFile(`${join(this.folder, filename)}.${ext}`, target)\n }\n\n async writeFile(path: string, target: string) {\n if (!this.folder) return\n else await writeFile(path, target)\n }\n\n async exportMd(id: string) {\n await mkdir(this.md, { recursive: true })\n try {\n let recordMap = this.pageMap && this.pageMap[id]\n if (!recordMap) {\n console.warn(`Missing from pageMap ${id}`)\n recordMap = await this.notion.getPage(id)\n }\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)\n if (!this.pageMap[id]) this.pageMap[id] = recordMap\n const path = join(this.md, `${getCanonicalPageId(id, recordMap)}`)\n this.promises.push(this.writeFile(`${path}.md`, target))\n } catch (e) {\n console.error(id, e)\n }\n }\n\n async pageToMarkdown(id: string, recordMap: ExtendedRecordMap) {\n const markdown = await this.pageToMarkdownObj(id, recordMap)\n let md = `---\\nTitle: ${markdown.title}\\n`\n md += `Parent: ${markdown.parent}\\n`\n const attrs = Object.keys(markdown).filter(key => !['title', 'parent', 'body'].includes(key))\n for (const attr of attrs) md += `${attr}: ${markdown[attr]}\\n`\n md += '---\\n'\n md += markdown.body\n return md\n }\n\n async pageToMarkdownObj(id: string, recordMap: ExtendedRecordMap) {\n const page = recordMap.block[id].value as PageBlock\n const markdown: Markdown = {}\n\n // Title\n const title = await this.decorationsToMarkdown(\n page.properties?.title ? page.properties.title : [['Untitled']],\n recordMap\n )\n markdown.title = title\n\n // Parent\n const parentBlock = getBlockParent(page, recordMap)\n let parent: string\n if (isSpace(parentBlock)) parent = parentBlock.name\n else if (isCollection(parentBlock)) parent = getTextContent(parentBlock.name)\n else if (parentBlock) parent = getBlockTitle(parentBlock, recordMap)\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 markdown[propName] = value\n }\n }\n const body = await this.childrenToMd(page, recordMap, '', page)\n markdown.body = body\n return markdown\n }\n\n async childrenToMd(parentBlock: Block, recordMap: ExtendedRecordMap, prefix: 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]) if (this.debug) console.warn(`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) if (this.debug) console.warn(`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 for (const childPage of children) this.promises.push(this.exportMd(childPage))\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) this.promises.push(this.exportMd(childBlock.id))\n\n break\n }\n case 'alias': {\n const aliasBlock = recordMap.block[childBlock.format?.alias_pointer?.id]?.value\n if (!aliasBlock) {\n if (this.debug)\n console.warn(\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}![${caption}](${defaultMapImageUrl(childBlock.format?.display_source, childBlock)})`\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, 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 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) if (this.debug) console.warn(`${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) if (this.debug) console.warn(`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 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 // @wait for rate limit\n sleepSync(1000 * this.wait)\n if (!response.recordMap) console.error(response)\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) if (this.debug) console.warn(`${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 this.recordMap.collection_query![collectionId] = {\n ...this.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 this.recordMap.collection![collectionId] = {\n ...this.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) if (this.debug) console.warn(`${message} Missing collection view ${viewId}`)\n }\n return results\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) if (this.debug) console.warn(`Missing space ${id}`)\n }\n return space\n }\n}\n\nexport async function loadRaw(\n folder: string\n): Promise<{ recordMap: ExtendedRecordMap; pageTree: PageTree; pageMap: PageMap }> {\n const promises = []\n promises.push(readFile(join(folder, 'recordMap', 'block.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'collection.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'notion_user.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'space.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'collection_view.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'collection_query.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(folder, 'recordMap', 'signed_urls.json'), 'utf8').then(JSON.parse))\n promises.push(readFile(join(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(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 const recordMap: ExtendedRecordMap = {\n block,\n collection,\n notion_user,\n space,\n collection_query,\n collection_view,\n signed_urls\n }\n return { recordMap, pageTree, pageMap }\n}\n\nexport async function loadJson<C>(folder: string, filename: string): Promise<C> {\n const object = {} as C\n const inputStream = fs.createReadStream(join(folder, `${filename}.json`))\n const parseStream = JSONStream.parse('*')\n inputStream.pipe(parseStream)\n parseStream.on('*', ([key, value]) => {\n object[key] = value\n })\n return new Promise(res =>\n stream.finished(parseStream, err => {\n console.error(err)\n res(object)\n })\n )\n}\n\nconst sleepSync = (ms: number) => {\n const sharedBuffer = new Int32Array(new SharedArrayBuffer(4))\n Atomics.wait(sharedBuffer, 0, 0, ms)\n}\n"],"mappings":"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","names":["Cli","Builtins","displayName","version","Option","Command","NotionAPI","getBlockTitle","getCanonicalPageId","parsePageId","formatDate","getTextContent","getBlockParent","defaultMapImageUrl","getAllInSpace","getPageTitle","recursivePageTree","join","mkdir","readFile","JSONStream","fs","promisify","stream","format","isCollection","isSpace","writeFile","getBlockLink","blockId","recordMap","domain","NotionExporter","options","id","pageTree","pageMap","loadRaw","startPage","promises","table","filename","object","outputStream","transformStream","key","target","ext","path","markdown","md","attrs","attr","_a","_b","page","title","parentBlock","parent","properties","property","propName","propType","value","user","body","prefix","_c","_d","_e","_f","_g","_h","_i","_j","_k","_l","_m","numbering","child","childBlock","nesting","url","e","collection","views","children","view","results","result","childPage","aliasBlock","caption","nestedPrefix","decos","deco","wrapper","text","subdecos","textonly","subdeco","linkedBlock","objectid","decorated","line","message","block","collectionViewBlock","collectionId","viewId","response","sleepSync","_n","_o","_p","_q","_r","_s","collectionValue","collectionView","collectionViewValue","space","folder","notion_user","collection_view","collection_query","signed_urls","inputStream","parseStream","res","err","loadJson","ms","sharedBuffer","NotionExportCommand","Command","Option","NotionExporter","cli","Cli","displayName","version","NotionExportCommand","Builtins"]}
@@ -2,6 +2,9 @@ import { NotionAPI } from '@texonom/nclient';
2
2
  import type { PageTree } from '@texonom/nutils';
3
3
  import type { ExtendedRecordMap, PageMap, Block, Decoration, CollectionViewBlock } from '@texonom/ntypes';
4
4
  export declare const getBlockLink: (blockId: string, recordMap: ExtendedRecordMap, domain?: string) => string;
5
+ export type Markdown = {
6
+ [attre in string]: string;
7
+ };
5
8
  export declare class NotionExporter {
6
9
  notion: NotionAPI;
7
10
  recordMap: ExtendedRecordMap;
@@ -19,6 +22,7 @@ export declare class NotionExporter {
19
22
  load: boolean;
20
23
  raw: boolean;
21
24
  dataset: boolean;
25
+ debug: boolean;
22
26
  wait: number;
23
27
  token: string | undefined;
24
28
  constructor(options: {
@@ -44,6 +48,7 @@ export declare class NotionExporter {
44
48
  writeFile(path: string, target: string): Promise<void>;
45
49
  exportMd(id: string): Promise<void>;
46
50
  pageToMarkdown(id: string, recordMap: ExtendedRecordMap): Promise<string>;
51
+ pageToMarkdownObj(id: string, recordMap: ExtendedRecordMap): Promise<Markdown>;
47
52
  childrenToMd(parentBlock: Block, recordMap: ExtendedRecordMap, prefix: string, page: Block): Promise<string>;
48
53
  decorationsToMarkdown(decos: Decoration[], recordMap: ExtendedRecordMap, prefix?: string): Promise<string>;
49
54
  getBlock(id: string, recordMap: ExtendedRecordMap, message?: string): Promise<Block>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notion/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notion/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@texonom/cli",
3
3
  "displayName": "Notion CLI",
4
- "version": "1.4.2",
4
+ "version": "1.4.4",
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.4.2",
28
- "@texonom/nclient": "^1.4.2",
29
- "@texonom/ntypes": "^1.4.2",
30
- "@texonom/nutils": "^1.4.2"
28
+ "@texonom/nclient": "^1.4.4",
29
+ "@texonom/ntypes": "^1.4.4",
30
+ "@texonom/nutils": "^1.4.4"
31
31
  },
32
32
  "standard-version": {
33
33
  "skip": {