@teleporthq/teleport-shared 0.44.0 → 0.44.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/__tests__/utils/email-sender.ts +123 -0
  2. package/__tests__/utils/table-access-page-reads.ts +183 -0
  3. package/dist/cjs/index.d.ts +2 -1
  4. package/dist/cjs/index.d.ts.map +1 -1
  5. package/dist/cjs/index.js +3 -1
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/page-transition/view-transition-css.d.ts +4 -0
  8. package/dist/cjs/page-transition/view-transition-css.d.ts.map +1 -1
  9. package/dist/cjs/page-transition/view-transition-css.js +17 -10
  10. package/dist/cjs/page-transition/view-transition-css.js.map +1 -1
  11. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  12. package/dist/cjs/utils/email-sender.d.ts +43 -0
  13. package/dist/cjs/utils/email-sender.d.ts.map +1 -0
  14. package/dist/cjs/utils/email-sender.js +36 -0
  15. package/dist/cjs/utils/email-sender.js.map +1 -0
  16. package/dist/cjs/utils/table-access.d.ts +32 -0
  17. package/dist/cjs/utils/table-access.d.ts.map +1 -1
  18. package/dist/cjs/utils/table-access.js +118 -2
  19. package/dist/cjs/utils/table-access.js.map +1 -1
  20. package/dist/esm/index.d.ts +2 -1
  21. package/dist/esm/index.d.ts.map +1 -1
  22. package/dist/esm/index.js +2 -1
  23. package/dist/esm/index.js.map +1 -1
  24. package/dist/esm/page-transition/view-transition-css.d.ts +4 -0
  25. package/dist/esm/page-transition/view-transition-css.d.ts.map +1 -1
  26. package/dist/esm/page-transition/view-transition-css.js +15 -9
  27. package/dist/esm/page-transition/view-transition-css.js.map +1 -1
  28. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  29. package/dist/esm/utils/email-sender.d.ts +43 -0
  30. package/dist/esm/utils/email-sender.d.ts.map +1 -0
  31. package/dist/esm/utils/email-sender.js +32 -0
  32. package/dist/esm/utils/email-sender.js.map +1 -0
  33. package/dist/esm/utils/table-access.d.ts +32 -0
  34. package/dist/esm/utils/table-access.d.ts.map +1 -1
  35. package/dist/esm/utils/table-access.js +115 -1
  36. package/dist/esm/utils/table-access.js.map +1 -1
  37. package/package.json +2 -2
  38. package/src/index.ts +2 -0
  39. package/src/page-transition/view-transition-css.ts +27 -16
  40. package/src/utils/email-sender.ts +74 -0
  41. package/src/utils/table-access.ts +148 -1
@@ -1 +1 @@
1
- {"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/helper.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../../node_modules/@babel/types/lib/index.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../src/constants/index.ts","../../src/utils/js-identifiers.ts","../../src/utils/string-utils.ts","../../src/utils/uidl-utils.ts","../../src/utils/generic.ts","../../src/utils/local-imports.ts","../../src/utils/ast-scope.ts","../../src/utils/ast-statement-order.ts","../../src/utils/ast-effect-cleanup.ts","../../src/utils/route-paths.ts","../../src/utils/layout-topology.ts","../../src/utils/html-content-model.ts","../../src/utils/style-declarations.ts","../../src/utils/storefront-tax.ts","../../src/utils/product-discounts.ts","../../src/utils/product-ratings.ts","../../src/utils/regional-pricing.ts","../../src/utils/discount-engine.ts","../../src/utils/product-options.ts","../../src/utils/cart-line-pricing.ts","../../src/utils/cart-currency.ts","../../src/utils/content-tables.ts","../../src/utils/table-access.ts","../../src/utils/session-cookie-resolver.ts","../../src/utils/subscription-access.ts","../../src/utils/font-preconnect.ts","../../src/utils/email-date.ts","../../src/utils/rich-text-embeds.ts","../../src/utils/rich-text-embeds-runtime-source.ts","../../src/utils/rich-text-embeds-codegen.ts","../../src/utils/rich-text-content.ts","../../src/utils/rich-text-content-runtime-source.ts","../../src/utils/rich-text-content-codegen.ts","../../src/cache/constants.ts","../../src/cache/client-runtime.ts","../../src/cache/server-runtime.ts","../../src/cache/version-store.ts","../../src/cache/api-routes.ts","../../src/cache/index.ts","../../src/page-revalidate/constants.ts","../../src/page-revalidate/api-route.ts","../../src/page-revalidate/index.ts","../../src/page-arrival/constants.ts","../../src/page-arrival/runtime.ts","../../src/page-arrival/page-export.ts","../../src/page-arrival/index.ts","../../src/scroll-scene/moment.ts","../../src/scroll-scene/chapter-index.ts","../../src/scroll-scene/points.ts","../../src/scroll-scene/unclip.ts","../../src/scroll-scene/helper-sources.generated.ts","../../src/scroll-scene/engine-source.ts","../../src/scroll-scene/controller-source.ts","../../src/scroll-scene/index.ts","../../src/motion-runtime/motion-engine-source.ts","../../src/motion-runtime/scroll-video-engine-source.ts","../../src/motion-runtime/index.ts","../../src/page-transition/variants.ts","../../src/page-transition/variant-sources.generated.ts","../../src/page-transition/view-transition-css.ts","../../src/page-transition/morph-source.ts","../../src/page-transition/index.ts","../../src/state-bindings/index.ts","../../src/utils/web-push.ts","../../src/utils/inline-script-error-guard.ts","../../src/index.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/buffer/index.d.ts","../../../../node_modules/undici-types/header.d.ts","../../../../node_modules/undici-types/readable.d.ts","../../../../node_modules/undici-types/file.d.ts","../../../../node_modules/undici-types/fetch.d.ts","../../../../node_modules/undici-types/formdata.d.ts","../../../../node_modules/undici-types/connector.d.ts","../../../../node_modules/undici-types/client.d.ts","../../../../node_modules/undici-types/errors.d.ts","../../../../node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/undici-types/global-origin.d.ts","../../../../node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/undici-types/pool.d.ts","../../../../node_modules/undici-types/handlers.d.ts","../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/undici-types/agent.d.ts","../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/undici-types/mock-client.d.ts","../../../../node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/undici-types/api.d.ts","../../../../node_modules/undici-types/cookies.d.ts","../../../../node_modules/undici-types/patch.d.ts","../../../../node_modules/undici-types/filereader.d.ts","../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/undici-types/websocket.d.ts","../../../../node_modules/undici-types/content-type.d.ts","../../../../node_modules/undici-types/cache.d.ts","../../../../node_modules/undici-types/interceptors.d.ts","../../../../node_modules/undici-types/index.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/dom-events.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/readline/promises.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/test.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14fc7efae8b184b18019a5906c6f6de752823b44ff1acf7924bbdc8877ded21b","17d04c93fda1b99d8d44e1b9a85926350810d43e7f18d682930f75cfdf76561d","8d27e5f73b75340198b2df36f39326f693743e64006bd7b88a925a5f285df628","dc263a1a1e08672548a9cbef9d7d5e0ff1dd8eac0c84f85164c32d9a038bf4c1","71a689048584cde03cb508408ae7c3b04ad8f10af887865e8b65c27ed9d91488","ea15aa0f31b82087b000902760cc275080f3461d7b54f4690c47e833c5c7c72c","6ba1631f84ef4507073189c4ada06d6de8bac89375ea3b49e34e49006cc44a3f",{"version":"11650c5bddaa406f3d38215ee50e9b7ef974a4cd547c232d318e440ec9765b6b","signature":"950376ec316f431002898dc46c9e712d4df602735e79710032f82ff7cb0ff639"},{"version":"a3a7229dea45fec3b66fb3db95ea86b6f79456d53b01124be574234b855e7f33","signature":"9ea2bd139a31e4bcccbaaf18a67b1ffce16768d35396263d271deb29da1d6f3d"},{"version":"286a93be613b3b6f8d5c27fdd8368068f402baacff253acd778a6683503603bd","signature":"bebc04315048e5968472215e80fe8f76c87402e8415af425e72a1043625bc0fd"},{"version":"8a2a94472cdd6a36100128806588f6e7df23e28f062cdc346b8201af7b7317da","signature":"ffebee2a958508484af19fffc046c9c69ae120bdfd7b452f143219e05e97c20b"},{"version":"d36d38e7840bb5eb64570d6a75b4cda6b30f810ff28e788eabbe20f2ca6ec20d","signature":"def6a19b93529e8c08bb970740d56ecfce4d17a3c495a49761636087f6c80c4a"},{"version":"6cd90a046b174d27446a3682bdfdf31b56f0f566796d0345395d3a409dd9284c","signature":"dfda7fae8dc2ce6b5f728ccdf83f252923d50f47cb9535b18e34bc0d34c5a985"},{"version":"d5d7bef99b9b58cb67c8a18f1a1a1a74ad36e707226181dc5306f5fd56875bdf","signature":"b290a1d459a7028ae36165b73a69a4877c73f4dd72af733964b55110882c3216"},{"version":"bf4571325f6084257e36752366f3c2196c4d1489a46e53854fab86f76f700189","signature":"3816fd253a52b0f8dedd04c55eb2d77d0aa4f1c92707fb50cf14a5d1aa3869dd"},{"version":"19c4db2864f00fb2a76efa2f7d8dcf04a2b5a05742e96781166571c6d2250320","signature":"a36f3d868428938cd620deb11cd0747f31fab1c490d54224e99ac8ea6a270220"},{"version":"3805506eba293e77c14ddcbff35b0aa053b4de13137abc9ebed48ce8dca1fe49","signature":"d487aeebf39008a9b79a9c44a4943bfac9131afe5bb67f6f91319c91f0b74d2b"},{"version":"ec521fde10cc9bbb583b13eb7d9f426c715290c9766554e331040bbc208b688e","signature":"d00b4720674bd31c264f1add708dfeedcb80432a76541c91e38f867b434e0331"},{"version":"3385231c8904b943ead6ae26402c71c270c801a1a04dcf711b37d1fc8b1949c6","signature":"448d42608cb5eab83dc8fff0baac2cea61c5bfa654bc4c18b7640c61b4a8a72f"},{"version":"b4a28d604c143417486a5f5edc69c76ad8c7675d2fb453d1cf47d69831400e04","signature":"0dd5553c80b72c9796c41a5cbea3b2d5ad430651569efceaf08b982ccf4a2f5e"},{"version":"090ba4e2664a99dbaf82f5ba836e35839c087cec2a2ec29650f200ecdb9ea01b","signature":"67fe33e0cdd82175d9c9dc8a6a91c12588cb4f102b55396fa369b19c2b328239"},{"version":"402224f379e89fda21400c1e98701843fdde8746bed0fa5b8f8a837ca3a4d224","signature":"e6104a2be1332eb0de3fed325b86aab795be0f618407652cc90f24daacd74a11"},{"version":"a5152661651e56d7de6157afbe27b1ce3715b3d9409953a9e297ab12023b6aff","signature":"ea13b757647c1a972e5e2c8fe2d1127c7964a2a304d41b28f611024faba50836"},{"version":"fcc132c7a28d8ca781fdddc882035cb04035e8fd0cfa0818796eff945a859f13","signature":"eef9bb3440842cc184023d54460a4e3c45efb9bf13c8613b70a8216ce1d39ef8"},{"version":"017033c88aa2dd4cfb5105e30760a66d32cbba20bca38cc77517fe80e35b10af","signature":"bfd2bd2aadb4df434c4c6d17a094ed78b5490b2e050a7d3f06b63f5dfd9d737c"},{"version":"866c7eb70229d679d4ee3f48ab0405592099d9ca2b3f2bdce53c0b40d533e6d6","signature":"7c8e8a14a300fdca119d2d513514c235d0c166d8bb732593a7ca07cc4d868cba"},{"version":"698098b6e20da7e172eb928cce0242d1954499db1b82c4ebc5add6fc3cad41ca","signature":"c26085abe148812570762657d673afa7908e5f3ede9552cbbe1117a1bf6b04f8"},{"version":"e3338e7c60629faaea4900cbff41c0a601f7569934940fe5106ba62e192f6beb","signature":"a05c4aeaa779fa478813649dbdb5662f12008c067386817b88cc5833949a889f"},{"version":"35ec5e73255b2415dfa8432a85b21fd0a3b31f7124b153af0bad958b0f357ff4","signature":"31805f08d7c255300deeda528fa0ac9c12753c309590060b6329d7393940a8b2"},{"version":"8ce203cc31091fd4c3089d7f02393363d31682f98c5c21c57bb07224447c8f0c","signature":"2fb00a0a64b44e0de4acfe37389cefc548b48e9f3aa78c163b0dc22a7261d3d2"},{"version":"8a0ed637a248b312dbcb7fb8cbdd5dded4c4b82d453627b0fdae65ea68b29ec1","signature":"0182674c107b1f787796b05af6480725232e295bd927e55a04ac9568a8238fb9"},{"version":"a442a7977e0422d4deac5d9c2363cdc64e4553bfcb9913f12f9eb2bc73327309","signature":"e989c1a96e3de1015bbda3b0d379e21c82509ab1c52d7e80a1ae2862bdf915e2"},{"version":"07ef3048fe039893ec7001370abfb9725fd76dbade6ed3a0c6596f402e352df3","signature":"4e1c5b37b16c856d27e2ad000ecc24644d868a279e2c6910d56b9d5a81da2fe6"},{"version":"ecb1d950b0a0ab1d0fde6552253857281e515dfd00e7f894669c275ad4ae4436","signature":"0ad3df2740f91e7b7a6191972283d1af25d5f544d4a9ab1df9c41427f09d93fa"},{"version":"4bd6366f8de24dde2e31a494273232cc32d7c0ea564592ea8b7610901cf9478b","signature":"51634cb824ba91140770f4ac7311304479e33f151134f3521e088e14cd235dc5"},{"version":"93f9044b313f5a2d34aaa4d31d8938a1deb519bb3e233767b092b7600094bbe0","signature":"d1fd641d1c2929ed0c1ad0854de651e14779fd42a658c603cfa714951e8f0335"},{"version":"04c9f60256025cb4f36a952b52afeb72a0779a7a916040486f1d53175359df3a","signature":"936144c05c1256e19d0ae2435e09d4e36e550c4085962ff407effb02ee6b5ab6"},{"version":"38f6466405493a6e3fce2aaf39bc98fa6f3a7b137bc9023a698db286b13c99c0","signature":"b73262273f00fac643854a89f0c5cf060124edddc13fb38b78098fb8a25b8e9d"},{"version":"b755e0616870fa63958e65eaa51975110815bb8c3e9820ea73ddd64080facff0","signature":"98d39846c9fd508eef40ce25f8632b6a81d78046539d5698b439020e5cf64d26"},{"version":"1c72e6e8761a4db757779e9d4bab4371f1df21bd39d92803311f21a3cf97d2ca","signature":"b0b265379d3aed7f150c908373e55ccc348d5eb133bf0324d2e86ac3bd8df1f3"},{"version":"f1605474f305995c2b2d8e7d48a8cdd72a2ae57ebbb47ed07bc9abfbf49ffeb1","signature":"5b58f892097fb651076e5be6a77a95c8343a5a84d54dab0ffd97a9450aa39c74"},{"version":"d67f5b62fe97d3f8036fb5c46396f7e65c01eb7124a56926ec7fa8f0857f21da","signature":"35fd626998b26ab1272bf57d013b6d133f3bd3a00eabd4a7b9d9c9312026ae8d"},{"version":"cfefe3982eb13d34b267f265850486badb5b7898edef0a829b17b3c258324575","signature":"03cbc47f7121335ef90a6deca986aaeb999a93252f3f7781867bf793e8a8d0e3"},{"version":"61339f04368d0e7c9a6f8719713be60e561adc6fb6587c33b44a4770ce0247e7","signature":"bf2b32b9d75b611ee022f889ba550d13e0bd14c2deeb1e4d89ce22544e23a1d0"},{"version":"e38653fbd95c5f8178b20faad66bf94a138ba8735a4923e92d810f96e9c20fc3","signature":"c4ccebbab1965eb732ff59c5127b9e177f4a5e2213ea8fa086d7ec6ace62d416"},{"version":"a7f1d2060c1ee57d44ea8f97f242e5b41f95ff4db1963660c9e199a22e1824ce","signature":"6d14d871eae84e541ef7c400686573943068eea5f6ccafa6bf7578ba2abc77a6"},{"version":"5e95fcbdce633bfd470930f0ab735ee050caa10b2ec17309c2f0525774997c36","signature":"5b3d935d994f5f1e5c16fbe3f5f58dec6747b79ba28db27a1df2d5e7dec42d1d"},{"version":"2ae95932d3dd08cd2cd5a576ac7791317152b430934bdf611717343055eb701f","signature":"c910ef78eae5387ab1df8977cb62753621a62e266c6526752a9b88cee0100248"},{"version":"8e009708e9b57945cd2395a3858a5d79e2234e1559ce2ee349fe584a66c50e00","signature":"5df60b82d73860d9bb138a4c57a390e725c768a52bd69fa1a3001d99466ca99b"},{"version":"0ef14961027b69672cdd583c89e40b8f80cf92b084e4644a44eb30ca7e228b6d","signature":"434f723a59c13658eccb1468e66eb97b79c3be7fa3dd24af494673f475332d5d"},{"version":"255f3149ad007b64a6487037c12bfb928f4e3f528a8caece575e6ef4b6641535","signature":"323a08d1645f8a7e441a603d8cdc5be6ae519169f5c802259c05c8b64bf5aaa4"},{"version":"27e056b7da66f5ba8e14ef6f6e84dcc166f3dc16ed7672317c4c5b853d16c3fd","signature":"013dca852ac4e917fffd3a25a2ae5a730d1dd1ad2cf010bb7887751822929333"},{"version":"7c125dafb619322ce17c7d622fc3a5414a6918313ee9be8dc856ee66cad9465b","signature":"91920ffbc62683d71af74d06e39020bc02d6b2a422950d4e7d6e73d98230a924"},{"version":"cebef8f3d4744479b611d76e7b914d3b9f9a569d6519be54db0f42a9553f9c26","signature":"ea8957e7c5ce02171e7d47625e4bca5bdba4694430ea44c31877c2a375aa6d4c"},{"version":"7c1334f695a8c42e6d8bd19a155354eadd5b50da36fd2a0fdb067747bd7562ee","signature":"4d4bd4f6c4d2baae4e558e2923b77a036a11e8a9cb5c0cd8e84b0a6ea63519ee"},{"version":"aedc829b6c105baa5a6fea394625a64e432e35973fe07f6d0349831dd83bf709","signature":"e03c5c87da456a3acc709f1b9f90b47e9149b8a71b42dd60511ae69c90bc929c"},{"version":"f1a0611de165e889ffb3b65dad0650068917318f6250323ba45a7966813d5493","signature":"f26122216d557f619339a63c0900356764c8d318194ce350b5c1063f752ad6b6"},{"version":"fecae6c8f26305eae85048b5ac11ebb02faeedaedc06626a77dab9b630723534","signature":"c267cc2fce86e19c27fa43d7e6518e3e8ba7bdce861b333418480b0a0eead515"},{"version":"c2e2e61167f947106d5a8660b8c6a68cf1b9419cfe77f6c5456f4f115eb18212","signature":"21c0e30b9c3456edeff834639947335e87c5d205f1d7e179dd23374a0b1f2904"},{"version":"2b3aa07530bfbfd260755340536de109fe46018cd2100dcf3e29a27ded9586f6","signature":"12a32dc98e1cf2f7313b0719d415a49be99e099f3dee48c1ef35e0024ae9f461"},{"version":"27ce0c7e2808c27884effc14cd9c0643606dc11ef46b733cb31f678127377999","signature":"b4ad1fa1d2978c5ce79a7eae8097190aed794df317f1dacf6747b72416699d2e"},{"version":"3af10251fdb9fb166d7d2ade31f16d033b5a05731eeb40f8397cd664efb14083","signature":"381bcd9d55c1299bcc863f36be5857877121d94d4a789107ac23f224e16973ed"},{"version":"66e7265e05f2a6ad7bf357f96de7452de26e58b769cf051b004bb36fc378110d","signature":"8de68670dec5676a10ca0d70bf6a69318f67e0fc6d6d68bfd5004ac4881d92c3"},{"version":"4b75955e16e362848cc7e55902f83434fdde4da0560a281c6b93afe79bf9da74","signature":"4303c3dcd997e4f4786e8721125e613f78b6b9de8fec3df6efe4b27fb9019016"},{"version":"35d2ed61888844bc979f0591bf7ae3b71581c1df1576bfccb51b7e355f7c96fa","signature":"05295c0b7109b504a4ebe044a34a991d3410cc10261e86910642bc67113f848b"},{"version":"feb8943b9de5cbb040a866ce140d5b1d6e5e4bf40ac896fb59eda2ccf959cb56","signature":"b94cec1c4924693a2deb019093ce14db7a70104bb549fac7f10cb1cdc5fc7fa6"},{"version":"b26032e54e64d3f87c5ef1bdd5d3f44333fd316b46964c1a4fb3656919bceb91","signature":"e21e19400b8af551ecdd78d6824b4b67fec3d5b27a2542df3c5d952a506b0402"},{"version":"4e88b4512632166d69b54eecb203721de93b5a0d2dbfcc657659d6a09bc96acf","signature":"f7d7c5552737277f3794a9358f685c5ada64ab10011b379f251508d5b219fece"},{"version":"920b632adc8948e4862814673d4c0596abd8cb0250b1485e7b461eb21dfa0471","signature":"b73f915478c185eb44f85c7fb3b867cc8f6309aed5905bbd35730bf8f5614c01"},{"version":"d5eb3983fc6cf3a51f4a5f6d9980ad58cf1a11554d249d91b66dec766afe7159","signature":"ab302316ca210b432af451a5b56b8221d7cbd77fb2401d55fe7a5865a6e2aed0"},{"version":"6a4e5e728c172e6e7e1ee5fac1dfaf1da36c45dea5fe80cf83eced2851639bf0","signature":"1d25891e81ca8dcba94615d39cd89f09f2017163bf1af8fc20737fe75841b8c8"},{"version":"8504b7f10b7bf8687e5559db5e561e53e59ecaa80965db5f8b6e2687c608ef47","signature":"d579f5edc2bbb67484af9bbf5f40d1aea54360a6686b9d16ab6d080c990f44cb"},{"version":"49b88b7fd86eb7c4dd6ca14bb0f1135c3169458ccf3819621ee8a7e22b81a1b0","signature":"3473df7c6b2be867901766579c1f79bbeb73fc8bfb88a158c272a57a084b1b5c"},"0b4bc32128fda7bb0752cf284730dd3a817aae04a3d7f92e3b2d54bd61362fe1","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"5f290ea7efbe9d8431e10df12c0d5672b67988e7c171c2d356749fac70347a55","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"49c89f8fa09d21c161e6a367448639e032f42d77cc2ec8ab54ecb8fa9a3ad59f","affectsGlobalScope":true},"e4b50850c2a62c7750428e452ee24b167180104d514d5e5c0ca691753365f610","304504c854c47a55ab4a89111a27a2daf8a3614740bd787cc1f2c51e5574239c",{"version":"95f9129a37dcace36e17b061a8484952586ecfe928c9c8ce526de1a2f4aaefa7","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","0f9061846236850a872cb44097d071631e93c8749a8b16c191fe3c2a48faede4","e46fa644658c2d6e5c85e954ea76b92c97d63f0851d3ccdab8c2a80d5962aaa9","1c611ff373ce1958aafc40b328048ac2540ba5c7f373cf2897e0d9aeaabe90a0","a307d22a0130ac94c1a17fffa6d57ac272deb5838cb966a9420911d259cdf1be","d2e415abf6cb81ac9e2700b4db5ea7be76b997e812285b8e5e1e414eb2750b6e","09d6cebdced6aa1181ac1523c8f22a133f5ed80589678b64051f0602f0518374",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"7c35691dc3972ff1507d8dd279d833f540973d0917bde22e191cf7a8feaac29f","affectsGlobalScope":true},"62662d7a886e5cfa870685720fd27b763743ca4d2cf29326f75d76606a64eadd","b8c670688bd228d3cc9c169690b09b687188c50ff263a94df63b207701105ad9","d8e16905907111390d5a943816306ae997dfe56476f14142166f8b13ee322eea","8068c911a1c40bc6c5ffc58c625b21d807778f6aa6d63a73e6f04f88bcac5b79","a1dbce56ad5f3a37caafb9033c9d190a199217d673f5fa099c8968d471a2fdaa","c6f77efcc19f51c8759779b6b6ee0d88046c15c15dadac8ffed729a6620daf39",{"version":"089867511b37a534ae71f3d9bc97acc0b925b7f5dbec113f98c4b49224c694eb","affectsGlobalScope":true},"269d0ea3202820c29a32c1f2a357837a4f1918426844f7e7c90af15ec40d1dc1","66432f885e30cf471573de22a5af5eca9ab46b37b122aec98beadf77e9b7df24","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"034e635df3c014df1d6b1110b724ca0c4d2d324b45a84974c7d6931f9cf95ea7","affectsGlobalScope":true},{"version":"87f9456115554cb0f78f098ddbd585096871c19d2d05274c1b1b4ade3151da78","affectsGlobalScope":true},"ea3ab3727cd6c222d94003ecafa30e8550c61eadcdabbf59514aee76e86211a5","d3cdd41693c5ed6bec4f1a1c399d9501372b14bd341bc46eedacf2854c5df5a7","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","da618f0ea09d95c3b51514de43bf97dab008c85bede58aa57cf95e4984c7c957","48a35b181ecf47dbbc0a7ab4b5ba778d91eaa838ba42bf4aaaead42be77ef39a","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","5195aeb0de306d1c5ca8033457fbcab5987657112fa6d4971cfeb7644493a369","c5dbf0003bc9f0f643e54cd00a3868d1afe85497fecb56be6f2373dc85102924",{"version":"ce73eb199c4bf96c015f069aac161488ed73ebeaea3d87b6d5aa9a968a7b38d4","affectsGlobalScope":true},{"version":"300f8e9de0b0c3482be3e749462b6ebc3dab8a316801f1da0def94aed0cd2018","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","962f105729d5b888c8b70e193f6020ee92c6c8144c827de40f80d65dd188ad7f","ac74e2b754fba690036f8221d978f6debb867462b87af254f24e924b677395d0","80858f6de9af22e53aff221fe3590215ea544c2aeb2cc60cf8e08a9c785c8fef",{"version":"068b8ee5c2cd90d7a50f2efadbbe353cb10196a41189a48bf4b2a867363012b4","affectsGlobalScope":true},{"version":"340659b96782f5813aad6c1f89ea1b83b2f3fa993115c7b30366375d9bae5a4e","affectsGlobalScope":true},"6f44a190351ab5e1811abebe007cf60518044772ccc08244f9f241706afa767f","fecdf44bec4ee9c5188e5f2f58c292c9689c02520900dceaaa6e76594de6da90","cf45d0510b661f1da461479851ff902f188edb111777c37055eff12fa986a23a",{"version":"895ca532c15c77cbb6a871af1870b57bcd0ca4f38a1bd69669dd0e95bb58565a","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[207,209],[203,204],[203,204,205,206],[208],[210],[116],[152],[153,158,186],[154,165,166,173,183,194],[154,155,165,173],[156,195],[157,158,166,174],[158,183,191],[159,161,165,173],[152,160],[161,162],[165],[163,165],[152,165],[165,166,167,183,194],[165,166,167,180,183,186],[150,199],[161,165,168,173,183,194],[165,166,168,169,173,183,191,194],[168,170,183,191,194],[116,117,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,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201],[165,171],[172,194,199],[161,165,173,183],[174],[175],[152,176],[177,193,199],[178],[179],[165,180,181],[180,182,195,197],[153,165,183,184,185,186],[153,183,185],[183,184],[186],[187],[152,183],[165,189,190],[189,190],[158,173,183,191],[192],[173,193],[153,168,179,194],[158,195],[183,196],[172,197],[198],[153,158,165,167,176,183,194,197,199],[183,200],[127,131,194],[127,183,194],[122],[124,127,191,194],[173,191],[202],[122,202],[124,127,173,194],[119,120,123,126,153,165,183,194],[119,125],[123,127,153,186,194,202],[153,202],[143,153,202],[121,122,202],[127],[121,122,123,124,125,126,127,128,129,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149],[127,134,135],[125,127,135,136],[126],[119,122,127],[127,131,135,136],[131],[125,127,130,194],[119,124,125,127,131,134],[153,183],[122,127,143,153,199,202],[83],[83,84,85,86,87],[49],[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,79,80,82,88,91,95,103,106,111,112,113,114],[104,105],[92,93,94],[45,49,54,92,93],[92],[83,89],[89,90],[107,108,109,110],[109],[107],[100],[96,97,98,99,100,101,102],[45,56],[45],[49,175],[81],[77,78],[51],[49,71],[49,52,115,175],[44,45],[44,46,47,48],[43],[43,44]],"referencedMap":[[210,1],[205,2],[207,3],[206,2],[209,4],[211,5],[116,6],[117,6],[152,7],[153,8],[154,9],[155,10],[156,11],[157,12],[158,13],[159,14],[160,15],[161,16],[162,16],[164,17],[163,18],[165,19],[166,20],[167,21],[151,22],[168,23],[169,24],[170,25],[202,26],[171,27],[172,28],[173,29],[174,30],[175,31],[176,32],[177,33],[178,34],[179,35],[180,36],[181,36],[182,37],[183,38],[185,39],[184,40],[186,41],[187,42],[188,43],[189,44],[190,45],[191,46],[192,47],[193,48],[194,49],[195,50],[196,51],[197,52],[198,53],[199,54],[200,55],[134,56],[141,57],[133,56],[148,58],[125,59],[124,60],[147,61],[142,62],[145,63],[127,64],[126,65],[122,66],[121,67],[144,68],[123,69],[128,70],[132,70],[150,71],[149,70],[136,72],[137,73],[139,74],[135,75],[138,76],[143,61],[130,77],[131,78],[140,79],[120,80],[146,81],[87,82],[84,82],[88,83],[85,82],[86,82],[50,84],[115,85],[106,86],[95,87],[94,88],[93,89],[90,90],[91,91],[111,92],[110,93],[109,94],[101,95],[103,96],[58,97],[56,98],[57,97],[54,99],[114,84],[60,84],[55,84],[82,100],[79,101],[63,84],[52,102],[62,84],[72,103],[53,104],[46,105],[49,106],[44,107],[48,108]],"exportedModulesMap":[[210,1],[205,2],[207,3],[206,2],[209,4],[211,5],[116,6],[117,6],[152,7],[153,8],[154,9],[155,10],[156,11],[157,12],[158,13],[159,14],[160,15],[161,16],[162,16],[164,17],[163,18],[165,19],[166,20],[167,21],[151,22],[168,23],[169,24],[170,25],[202,26],[171,27],[172,28],[173,29],[174,30],[175,31],[176,32],[177,33],[178,34],[179,35],[180,36],[181,36],[182,37],[183,38],[185,39],[184,40],[186,41],[187,42],[188,43],[189,44],[190,45],[191,46],[192,47],[193,48],[194,49],[195,50],[196,51],[197,52],[198,53],[199,54],[200,55],[134,56],[141,57],[133,56],[148,58],[125,59],[124,60],[147,61],[142,62],[145,63],[127,64],[126,65],[122,66],[121,67],[144,68],[123,69],[128,70],[132,70],[150,71],[149,70],[136,72],[137,73],[139,74],[135,75],[138,76],[143,61],[130,77],[131,78],[140,79],[120,80],[146,81],[88,83],[50,84],[115,85],[106,86],[95,87],[94,84],[91,91],[111,92],[109,94],[103,96],[58,98],[56,98],[57,98],[54,84],[114,84],[60,84],[55,84],[63,84],[62,84],[72,84],[53,84],[46,105],[49,106],[44,107],[48,108]],"semanticDiagnosticsPerFile":[45,210,203,205,207,206,204,209,208,211,116,117,152,153,154,155,156,157,158,159,160,161,162,164,163,165,166,167,151,201,168,169,170,202,171,172,173,174,175,176,177,178,179,180,181,182,183,185,184,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,118,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,1,42,134,141,133,148,125,124,147,142,145,127,126,122,121,144,123,128,129,132,119,150,149,136,137,139,135,138,143,130,131,140,120,146,87,84,83,88,85,86,50,115,106,104,105,92,95,94,93,90,89,91,111,110,108,107,109,97,102,101,100,103,96,98,99,112,58,56,57,70,69,71,67,76,75,54,61,114,51,60,55,64,68,65,66,82,81,80,79,78,77,59,73,63,52,62,74,72,53,113,47,46,43,49,44,48]},"version":"4.9.5"}
1
+ {"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/helper.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../../node_modules/@babel/types/lib/index.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../src/constants/index.ts","../../src/utils/js-identifiers.ts","../../src/utils/string-utils.ts","../../src/utils/uidl-utils.ts","../../src/utils/generic.ts","../../src/utils/local-imports.ts","../../src/utils/ast-scope.ts","../../src/utils/ast-statement-order.ts","../../src/utils/ast-effect-cleanup.ts","../../src/utils/route-paths.ts","../../src/utils/layout-topology.ts","../../src/utils/html-content-model.ts","../../src/utils/style-declarations.ts","../../src/utils/storefront-tax.ts","../../src/utils/product-discounts.ts","../../src/utils/product-ratings.ts","../../src/utils/regional-pricing.ts","../../src/utils/discount-engine.ts","../../src/utils/product-options.ts","../../src/utils/cart-line-pricing.ts","../../src/utils/cart-currency.ts","../../src/utils/content-tables.ts","../../src/utils/table-access.ts","../../src/utils/session-cookie-resolver.ts","../../src/utils/subscription-access.ts","../../src/utils/font-preconnect.ts","../../src/utils/email-date.ts","../../src/utils/email-sender.ts","../../src/utils/rich-text-embeds.ts","../../src/utils/rich-text-embeds-runtime-source.ts","../../src/utils/rich-text-embeds-codegen.ts","../../src/utils/rich-text-content.ts","../../src/utils/rich-text-content-runtime-source.ts","../../src/utils/rich-text-content-codegen.ts","../../src/cache/constants.ts","../../src/cache/client-runtime.ts","../../src/cache/server-runtime.ts","../../src/cache/version-store.ts","../../src/cache/api-routes.ts","../../src/cache/index.ts","../../src/page-revalidate/constants.ts","../../src/page-revalidate/api-route.ts","../../src/page-revalidate/index.ts","../../src/page-arrival/constants.ts","../../src/page-arrival/runtime.ts","../../src/page-arrival/page-export.ts","../../src/page-arrival/index.ts","../../src/scroll-scene/moment.ts","../../src/scroll-scene/chapter-index.ts","../../src/scroll-scene/points.ts","../../src/scroll-scene/unclip.ts","../../src/scroll-scene/helper-sources.generated.ts","../../src/scroll-scene/engine-source.ts","../../src/scroll-scene/controller-source.ts","../../src/scroll-scene/index.ts","../../src/motion-runtime/motion-engine-source.ts","../../src/motion-runtime/scroll-video-engine-source.ts","../../src/motion-runtime/index.ts","../../src/page-transition/variants.ts","../../src/page-transition/variant-sources.generated.ts","../../src/page-transition/view-transition-css.ts","../../src/page-transition/morph-source.ts","../../src/page-transition/index.ts","../../src/state-bindings/index.ts","../../src/utils/web-push.ts","../../src/utils/inline-script-error-guard.ts","../../src/index.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/buffer/index.d.ts","../../../../node_modules/undici-types/header.d.ts","../../../../node_modules/undici-types/readable.d.ts","../../../../node_modules/undici-types/file.d.ts","../../../../node_modules/undici-types/fetch.d.ts","../../../../node_modules/undici-types/formdata.d.ts","../../../../node_modules/undici-types/connector.d.ts","../../../../node_modules/undici-types/client.d.ts","../../../../node_modules/undici-types/errors.d.ts","../../../../node_modules/undici-types/dispatcher.d.ts","../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../node_modules/undici-types/global-origin.d.ts","../../../../node_modules/undici-types/pool-stats.d.ts","../../../../node_modules/undici-types/pool.d.ts","../../../../node_modules/undici-types/handlers.d.ts","../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../node_modules/undici-types/agent.d.ts","../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../node_modules/undici-types/mock-agent.d.ts","../../../../node_modules/undici-types/mock-client.d.ts","../../../../node_modules/undici-types/mock-pool.d.ts","../../../../node_modules/undici-types/mock-errors.d.ts","../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../node_modules/undici-types/api.d.ts","../../../../node_modules/undici-types/cookies.d.ts","../../../../node_modules/undici-types/patch.d.ts","../../../../node_modules/undici-types/filereader.d.ts","../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../node_modules/undici-types/websocket.d.ts","../../../../node_modules/undici-types/content-type.d.ts","../../../../node_modules/undici-types/cache.d.ts","../../../../node_modules/undici-types/interceptors.d.ts","../../../../node_modules/undici-types/index.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/dom-events.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/readline/promises.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/test.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"14fc7efae8b184b18019a5906c6f6de752823b44ff1acf7924bbdc8877ded21b","17d04c93fda1b99d8d44e1b9a85926350810d43e7f18d682930f75cfdf76561d","8d27e5f73b75340198b2df36f39326f693743e64006bd7b88a925a5f285df628","dc263a1a1e08672548a9cbef9d7d5e0ff1dd8eac0c84f85164c32d9a038bf4c1","71a689048584cde03cb508408ae7c3b04ad8f10af887865e8b65c27ed9d91488","ea15aa0f31b82087b000902760cc275080f3461d7b54f4690c47e833c5c7c72c","6ba1631f84ef4507073189c4ada06d6de8bac89375ea3b49e34e49006cc44a3f",{"version":"11650c5bddaa406f3d38215ee50e9b7ef974a4cd547c232d318e440ec9765b6b","signature":"950376ec316f431002898dc46c9e712d4df602735e79710032f82ff7cb0ff639"},{"version":"a3a7229dea45fec3b66fb3db95ea86b6f79456d53b01124be574234b855e7f33","signature":"9ea2bd139a31e4bcccbaaf18a67b1ffce16768d35396263d271deb29da1d6f3d"},{"version":"286a93be613b3b6f8d5c27fdd8368068f402baacff253acd778a6683503603bd","signature":"bebc04315048e5968472215e80fe8f76c87402e8415af425e72a1043625bc0fd"},{"version":"8a2a94472cdd6a36100128806588f6e7df23e28f062cdc346b8201af7b7317da","signature":"ffebee2a958508484af19fffc046c9c69ae120bdfd7b452f143219e05e97c20b"},{"version":"d36d38e7840bb5eb64570d6a75b4cda6b30f810ff28e788eabbe20f2ca6ec20d","signature":"def6a19b93529e8c08bb970740d56ecfce4d17a3c495a49761636087f6c80c4a"},{"version":"6cd90a046b174d27446a3682bdfdf31b56f0f566796d0345395d3a409dd9284c","signature":"dfda7fae8dc2ce6b5f728ccdf83f252923d50f47cb9535b18e34bc0d34c5a985"},{"version":"d5d7bef99b9b58cb67c8a18f1a1a1a74ad36e707226181dc5306f5fd56875bdf","signature":"b290a1d459a7028ae36165b73a69a4877c73f4dd72af733964b55110882c3216"},{"version":"bf4571325f6084257e36752366f3c2196c4d1489a46e53854fab86f76f700189","signature":"3816fd253a52b0f8dedd04c55eb2d77d0aa4f1c92707fb50cf14a5d1aa3869dd"},{"version":"19c4db2864f00fb2a76efa2f7d8dcf04a2b5a05742e96781166571c6d2250320","signature":"a36f3d868428938cd620deb11cd0747f31fab1c490d54224e99ac8ea6a270220"},{"version":"3805506eba293e77c14ddcbff35b0aa053b4de13137abc9ebed48ce8dca1fe49","signature":"d487aeebf39008a9b79a9c44a4943bfac9131afe5bb67f6f91319c91f0b74d2b"},{"version":"ec521fde10cc9bbb583b13eb7d9f426c715290c9766554e331040bbc208b688e","signature":"d00b4720674bd31c264f1add708dfeedcb80432a76541c91e38f867b434e0331"},{"version":"3385231c8904b943ead6ae26402c71c270c801a1a04dcf711b37d1fc8b1949c6","signature":"448d42608cb5eab83dc8fff0baac2cea61c5bfa654bc4c18b7640c61b4a8a72f"},{"version":"b4a28d604c143417486a5f5edc69c76ad8c7675d2fb453d1cf47d69831400e04","signature":"0dd5553c80b72c9796c41a5cbea3b2d5ad430651569efceaf08b982ccf4a2f5e"},{"version":"090ba4e2664a99dbaf82f5ba836e35839c087cec2a2ec29650f200ecdb9ea01b","signature":"67fe33e0cdd82175d9c9dc8a6a91c12588cb4f102b55396fa369b19c2b328239"},{"version":"402224f379e89fda21400c1e98701843fdde8746bed0fa5b8f8a837ca3a4d224","signature":"e6104a2be1332eb0de3fed325b86aab795be0f618407652cc90f24daacd74a11"},{"version":"a5152661651e56d7de6157afbe27b1ce3715b3d9409953a9e297ab12023b6aff","signature":"ea13b757647c1a972e5e2c8fe2d1127c7964a2a304d41b28f611024faba50836"},{"version":"fcc132c7a28d8ca781fdddc882035cb04035e8fd0cfa0818796eff945a859f13","signature":"eef9bb3440842cc184023d54460a4e3c45efb9bf13c8613b70a8216ce1d39ef8"},{"version":"017033c88aa2dd4cfb5105e30760a66d32cbba20bca38cc77517fe80e35b10af","signature":"bfd2bd2aadb4df434c4c6d17a094ed78b5490b2e050a7d3f06b63f5dfd9d737c"},{"version":"866c7eb70229d679d4ee3f48ab0405592099d9ca2b3f2bdce53c0b40d533e6d6","signature":"7c8e8a14a300fdca119d2d513514c235d0c166d8bb732593a7ca07cc4d868cba"},{"version":"698098b6e20da7e172eb928cce0242d1954499db1b82c4ebc5add6fc3cad41ca","signature":"c26085abe148812570762657d673afa7908e5f3ede9552cbbe1117a1bf6b04f8"},{"version":"e3338e7c60629faaea4900cbff41c0a601f7569934940fe5106ba62e192f6beb","signature":"a05c4aeaa779fa478813649dbdb5662f12008c067386817b88cc5833949a889f"},{"version":"35ec5e73255b2415dfa8432a85b21fd0a3b31f7124b153af0bad958b0f357ff4","signature":"31805f08d7c255300deeda528fa0ac9c12753c309590060b6329d7393940a8b2"},{"version":"f00ce2e5ad2591bb2fe129db11c608907e87b9177838386167c3c74bf3988740","signature":"960fd4aacfeda67354ba5801acdd9d5fe1df8c151cb1922785f57750a8404dfe"},{"version":"8a0ed637a248b312dbcb7fb8cbdd5dded4c4b82d453627b0fdae65ea68b29ec1","signature":"0182674c107b1f787796b05af6480725232e295bd927e55a04ac9568a8238fb9"},{"version":"a442a7977e0422d4deac5d9c2363cdc64e4553bfcb9913f12f9eb2bc73327309","signature":"e989c1a96e3de1015bbda3b0d379e21c82509ab1c52d7e80a1ae2862bdf915e2"},{"version":"07ef3048fe039893ec7001370abfb9725fd76dbade6ed3a0c6596f402e352df3","signature":"4e1c5b37b16c856d27e2ad000ecc24644d868a279e2c6910d56b9d5a81da2fe6"},{"version":"ecb1d950b0a0ab1d0fde6552253857281e515dfd00e7f894669c275ad4ae4436","signature":"0ad3df2740f91e7b7a6191972283d1af25d5f544d4a9ab1df9c41427f09d93fa"},{"version":"833662d788457a9d8bbf59b968ae63a6b391b29d4dbd88ccaf82f480b836c302","signature":"bfc07b34a3aa41fd9fb33650304e3e42bd24d1eb3df456bdb452e033ddcdeda0"},{"version":"4bd6366f8de24dde2e31a494273232cc32d7c0ea564592ea8b7610901cf9478b","signature":"51634cb824ba91140770f4ac7311304479e33f151134f3521e088e14cd235dc5"},{"version":"93f9044b313f5a2d34aaa4d31d8938a1deb519bb3e233767b092b7600094bbe0","signature":"d1fd641d1c2929ed0c1ad0854de651e14779fd42a658c603cfa714951e8f0335"},{"version":"04c9f60256025cb4f36a952b52afeb72a0779a7a916040486f1d53175359df3a","signature":"936144c05c1256e19d0ae2435e09d4e36e550c4085962ff407effb02ee6b5ab6"},{"version":"38f6466405493a6e3fce2aaf39bc98fa6f3a7b137bc9023a698db286b13c99c0","signature":"b73262273f00fac643854a89f0c5cf060124edddc13fb38b78098fb8a25b8e9d"},{"version":"b755e0616870fa63958e65eaa51975110815bb8c3e9820ea73ddd64080facff0","signature":"98d39846c9fd508eef40ce25f8632b6a81d78046539d5698b439020e5cf64d26"},{"version":"1c72e6e8761a4db757779e9d4bab4371f1df21bd39d92803311f21a3cf97d2ca","signature":"b0b265379d3aed7f150c908373e55ccc348d5eb133bf0324d2e86ac3bd8df1f3"},{"version":"f1605474f305995c2b2d8e7d48a8cdd72a2ae57ebbb47ed07bc9abfbf49ffeb1","signature":"5b58f892097fb651076e5be6a77a95c8343a5a84d54dab0ffd97a9450aa39c74"},{"version":"d67f5b62fe97d3f8036fb5c46396f7e65c01eb7124a56926ec7fa8f0857f21da","signature":"35fd626998b26ab1272bf57d013b6d133f3bd3a00eabd4a7b9d9c9312026ae8d"},{"version":"cfefe3982eb13d34b267f265850486badb5b7898edef0a829b17b3c258324575","signature":"03cbc47f7121335ef90a6deca986aaeb999a93252f3f7781867bf793e8a8d0e3"},{"version":"61339f04368d0e7c9a6f8719713be60e561adc6fb6587c33b44a4770ce0247e7","signature":"bf2b32b9d75b611ee022f889ba550d13e0bd14c2deeb1e4d89ce22544e23a1d0"},{"version":"e38653fbd95c5f8178b20faad66bf94a138ba8735a4923e92d810f96e9c20fc3","signature":"c4ccebbab1965eb732ff59c5127b9e177f4a5e2213ea8fa086d7ec6ace62d416"},{"version":"a7f1d2060c1ee57d44ea8f97f242e5b41f95ff4db1963660c9e199a22e1824ce","signature":"6d14d871eae84e541ef7c400686573943068eea5f6ccafa6bf7578ba2abc77a6"},{"version":"5e95fcbdce633bfd470930f0ab735ee050caa10b2ec17309c2f0525774997c36","signature":"5b3d935d994f5f1e5c16fbe3f5f58dec6747b79ba28db27a1df2d5e7dec42d1d"},{"version":"2ae95932d3dd08cd2cd5a576ac7791317152b430934bdf611717343055eb701f","signature":"c910ef78eae5387ab1df8977cb62753621a62e266c6526752a9b88cee0100248"},{"version":"8e009708e9b57945cd2395a3858a5d79e2234e1559ce2ee349fe584a66c50e00","signature":"5df60b82d73860d9bb138a4c57a390e725c768a52bd69fa1a3001d99466ca99b"},{"version":"0ef14961027b69672cdd583c89e40b8f80cf92b084e4644a44eb30ca7e228b6d","signature":"434f723a59c13658eccb1468e66eb97b79c3be7fa3dd24af494673f475332d5d"},{"version":"255f3149ad007b64a6487037c12bfb928f4e3f528a8caece575e6ef4b6641535","signature":"323a08d1645f8a7e441a603d8cdc5be6ae519169f5c802259c05c8b64bf5aaa4"},{"version":"27e056b7da66f5ba8e14ef6f6e84dcc166f3dc16ed7672317c4c5b853d16c3fd","signature":"013dca852ac4e917fffd3a25a2ae5a730d1dd1ad2cf010bb7887751822929333"},{"version":"7c125dafb619322ce17c7d622fc3a5414a6918313ee9be8dc856ee66cad9465b","signature":"91920ffbc62683d71af74d06e39020bc02d6b2a422950d4e7d6e73d98230a924"},{"version":"cebef8f3d4744479b611d76e7b914d3b9f9a569d6519be54db0f42a9553f9c26","signature":"ea8957e7c5ce02171e7d47625e4bca5bdba4694430ea44c31877c2a375aa6d4c"},{"version":"7c1334f695a8c42e6d8bd19a155354eadd5b50da36fd2a0fdb067747bd7562ee","signature":"4d4bd4f6c4d2baae4e558e2923b77a036a11e8a9cb5c0cd8e84b0a6ea63519ee"},{"version":"aedc829b6c105baa5a6fea394625a64e432e35973fe07f6d0349831dd83bf709","signature":"e03c5c87da456a3acc709f1b9f90b47e9149b8a71b42dd60511ae69c90bc929c"},{"version":"f1a0611de165e889ffb3b65dad0650068917318f6250323ba45a7966813d5493","signature":"f26122216d557f619339a63c0900356764c8d318194ce350b5c1063f752ad6b6"},{"version":"fecae6c8f26305eae85048b5ac11ebb02faeedaedc06626a77dab9b630723534","signature":"c267cc2fce86e19c27fa43d7e6518e3e8ba7bdce861b333418480b0a0eead515"},{"version":"c2e2e61167f947106d5a8660b8c6a68cf1b9419cfe77f6c5456f4f115eb18212","signature":"21c0e30b9c3456edeff834639947335e87c5d205f1d7e179dd23374a0b1f2904"},{"version":"2b3aa07530bfbfd260755340536de109fe46018cd2100dcf3e29a27ded9586f6","signature":"12a32dc98e1cf2f7313b0719d415a49be99e099f3dee48c1ef35e0024ae9f461"},{"version":"27ce0c7e2808c27884effc14cd9c0643606dc11ef46b733cb31f678127377999","signature":"b4ad1fa1d2978c5ce79a7eae8097190aed794df317f1dacf6747b72416699d2e"},{"version":"3af10251fdb9fb166d7d2ade31f16d033b5a05731eeb40f8397cd664efb14083","signature":"381bcd9d55c1299bcc863f36be5857877121d94d4a789107ac23f224e16973ed"},{"version":"66e7265e05f2a6ad7bf357f96de7452de26e58b769cf051b004bb36fc378110d","signature":"8de68670dec5676a10ca0d70bf6a69318f67e0fc6d6d68bfd5004ac4881d92c3"},{"version":"4b75955e16e362848cc7e55902f83434fdde4da0560a281c6b93afe79bf9da74","signature":"4303c3dcd997e4f4786e8721125e613f78b6b9de8fec3df6efe4b27fb9019016"},{"version":"35d2ed61888844bc979f0591bf7ae3b71581c1df1576bfccb51b7e355f7c96fa","signature":"05295c0b7109b504a4ebe044a34a991d3410cc10261e86910642bc67113f848b"},{"version":"feb8943b9de5cbb040a866ce140d5b1d6e5e4bf40ac896fb59eda2ccf959cb56","signature":"b94cec1c4924693a2deb019093ce14db7a70104bb549fac7f10cb1cdc5fc7fa6"},{"version":"db241025beef00cdfbd2e2f71142d6f575d1dc34d67e8e3a7f99aace9418cbbb","signature":"24fb08eeee4926567fa131a4bafd94b27b3ccfb6f78430a7f5c7dabf7fd2c27c"},{"version":"4e88b4512632166d69b54eecb203721de93b5a0d2dbfcc657659d6a09bc96acf","signature":"f7d7c5552737277f3794a9358f685c5ada64ab10011b379f251508d5b219fece"},{"version":"920b632adc8948e4862814673d4c0596abd8cb0250b1485e7b461eb21dfa0471","signature":"b73f915478c185eb44f85c7fb3b867cc8f6309aed5905bbd35730bf8f5614c01"},{"version":"d5eb3983fc6cf3a51f4a5f6d9980ad58cf1a11554d249d91b66dec766afe7159","signature":"ab302316ca210b432af451a5b56b8221d7cbd77fb2401d55fe7a5865a6e2aed0"},{"version":"6a4e5e728c172e6e7e1ee5fac1dfaf1da36c45dea5fe80cf83eced2851639bf0","signature":"1d25891e81ca8dcba94615d39cd89f09f2017163bf1af8fc20737fe75841b8c8"},{"version":"8504b7f10b7bf8687e5559db5e561e53e59ecaa80965db5f8b6e2687c608ef47","signature":"d579f5edc2bbb67484af9bbf5f40d1aea54360a6686b9d16ab6d080c990f44cb"},{"version":"4d7d6c35b40bd6831b80fd0f67f4e2c4f7d0411b3bba02a574175bcaa1ab7ed1","signature":"392fdd79a60aff0ebd102a8359a992c117a9cce85b82e14f159cda64fba874f7"},"0b4bc32128fda7bb0752cf284730dd3a817aae04a3d7f92e3b2d54bd61362fe1","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"5f290ea7efbe9d8431e10df12c0d5672b67988e7c171c2d356749fac70347a55","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"49c89f8fa09d21c161e6a367448639e032f42d77cc2ec8ab54ecb8fa9a3ad59f","affectsGlobalScope":true},"e4b50850c2a62c7750428e452ee24b167180104d514d5e5c0ca691753365f610","304504c854c47a55ab4a89111a27a2daf8a3614740bd787cc1f2c51e5574239c",{"version":"95f9129a37dcace36e17b061a8484952586ecfe928c9c8ce526de1a2f4aaefa7","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","0f9061846236850a872cb44097d071631e93c8749a8b16c191fe3c2a48faede4","e46fa644658c2d6e5c85e954ea76b92c97d63f0851d3ccdab8c2a80d5962aaa9","1c611ff373ce1958aafc40b328048ac2540ba5c7f373cf2897e0d9aeaabe90a0","a307d22a0130ac94c1a17fffa6d57ac272deb5838cb966a9420911d259cdf1be","d2e415abf6cb81ac9e2700b4db5ea7be76b997e812285b8e5e1e414eb2750b6e","09d6cebdced6aa1181ac1523c8f22a133f5ed80589678b64051f0602f0518374",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"7c35691dc3972ff1507d8dd279d833f540973d0917bde22e191cf7a8feaac29f","affectsGlobalScope":true},"62662d7a886e5cfa870685720fd27b763743ca4d2cf29326f75d76606a64eadd","b8c670688bd228d3cc9c169690b09b687188c50ff263a94df63b207701105ad9","d8e16905907111390d5a943816306ae997dfe56476f14142166f8b13ee322eea","8068c911a1c40bc6c5ffc58c625b21d807778f6aa6d63a73e6f04f88bcac5b79","a1dbce56ad5f3a37caafb9033c9d190a199217d673f5fa099c8968d471a2fdaa","c6f77efcc19f51c8759779b6b6ee0d88046c15c15dadac8ffed729a6620daf39",{"version":"089867511b37a534ae71f3d9bc97acc0b925b7f5dbec113f98c4b49224c694eb","affectsGlobalScope":true},"269d0ea3202820c29a32c1f2a357837a4f1918426844f7e7c90af15ec40d1dc1","66432f885e30cf471573de22a5af5eca9ab46b37b122aec98beadf77e9b7df24","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"034e635df3c014df1d6b1110b724ca0c4d2d324b45a84974c7d6931f9cf95ea7","affectsGlobalScope":true},{"version":"87f9456115554cb0f78f098ddbd585096871c19d2d05274c1b1b4ade3151da78","affectsGlobalScope":true},"ea3ab3727cd6c222d94003ecafa30e8550c61eadcdabbf59514aee76e86211a5","d3cdd41693c5ed6bec4f1a1c399d9501372b14bd341bc46eedacf2854c5df5a7","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","da618f0ea09d95c3b51514de43bf97dab008c85bede58aa57cf95e4984c7c957","48a35b181ecf47dbbc0a7ab4b5ba778d91eaa838ba42bf4aaaead42be77ef39a","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","5195aeb0de306d1c5ca8033457fbcab5987657112fa6d4971cfeb7644493a369","c5dbf0003bc9f0f643e54cd00a3868d1afe85497fecb56be6f2373dc85102924",{"version":"ce73eb199c4bf96c015f069aac161488ed73ebeaea3d87b6d5aa9a968a7b38d4","affectsGlobalScope":true},{"version":"300f8e9de0b0c3482be3e749462b6ebc3dab8a316801f1da0def94aed0cd2018","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","962f105729d5b888c8b70e193f6020ee92c6c8144c827de40f80d65dd188ad7f","ac74e2b754fba690036f8221d978f6debb867462b87af254f24e924b677395d0","80858f6de9af22e53aff221fe3590215ea544c2aeb2cc60cf8e08a9c785c8fef",{"version":"068b8ee5c2cd90d7a50f2efadbbe353cb10196a41189a48bf4b2a867363012b4","affectsGlobalScope":true},{"version":"340659b96782f5813aad6c1f89ea1b83b2f3fa993115c7b30366375d9bae5a4e","affectsGlobalScope":true},"6f44a190351ab5e1811abebe007cf60518044772ccc08244f9f241706afa767f","fecdf44bec4ee9c5188e5f2f58c292c9689c02520900dceaaa6e76594de6da90","cf45d0510b661f1da461479851ff902f188edb111777c37055eff12fa986a23a",{"version":"895ca532c15c77cbb6a871af1870b57bcd0ca4f38a1bd69669dd0e95bb58565a","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[208,210],[204,205],[204,205,206,207],[209],[211],[117],[153],[154,159,187],[155,166,167,174,184,195],[155,156,166,174],[157,196],[158,159,167,175],[159,184,192],[160,162,166,174],[153,161],[162,163],[166],[164,166],[153,166],[166,167,168,184,195],[166,167,168,181,184,187],[151,200],[162,166,169,174,184,195],[166,167,169,170,174,184,192,195],[169,171,184,192,195],[117,118,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,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202],[166,172],[173,195,200],[162,166,174,184],[175],[176],[153,177],[178,194,200],[179],[180],[166,181,182],[181,183,196,198],[154,166,184,185,186,187],[154,184,186],[184,185],[187],[188],[153,184],[166,190,191],[190,191],[159,174,184,192],[193],[174,194],[154,169,180,195],[159,196],[184,197],[173,198],[199],[154,159,166,168,177,184,195,198,200],[184,201],[128,132,195],[128,184,195],[123],[125,128,192,195],[174,192],[203],[123,203],[125,128,174,195],[120,121,124,127,154,166,184,195],[120,126],[124,128,154,187,195,203],[154,203],[144,154,203],[122,123,203],[128],[122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,143,145,146,147,148,149,150],[128,135,136],[126,128,136,137],[127],[120,123,128],[128,132,136,137],[132],[126,128,131,195],[120,125,126,128,132,135],[154,184],[123,128,144,154,200,203],[84],[84,85,86,87,88],[49],[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,80,81,83,89,92,96,104,107,112,113,114,115],[105,106],[93,94,95],[45,49,54,93,94],[93],[84,90],[90,91],[108,109,110,111],[110],[108],[101],[97,98,99,100,101,102,103],[45,56],[45],[49,176],[82],[78,79],[51],[49,71],[49,52,116,176],[44,45],[44,46,47,48],[43],[43,44]],"referencedMap":[[211,1],[206,2],[208,3],[207,2],[210,4],[212,5],[117,6],[118,6],[153,7],[154,8],[155,9],[156,10],[157,11],[158,12],[159,13],[160,14],[161,15],[162,16],[163,16],[165,17],[164,18],[166,19],[167,20],[168,21],[152,22],[169,23],[170,24],[171,25],[203,26],[172,27],[173,28],[174,29],[175,30],[176,31],[177,32],[178,33],[179,34],[180,35],[181,36],[182,36],[183,37],[184,38],[186,39],[185,40],[187,41],[188,42],[189,43],[190,44],[191,45],[192,46],[193,47],[194,48],[195,49],[196,50],[197,51],[198,52],[199,53],[200,54],[201,55],[135,56],[142,57],[134,56],[149,58],[126,59],[125,60],[148,61],[143,62],[146,63],[128,64],[127,65],[123,66],[122,67],[145,68],[124,69],[129,70],[133,70],[151,71],[150,70],[137,72],[138,73],[140,74],[136,75],[139,76],[144,61],[131,77],[132,78],[141,79],[121,80],[147,81],[88,82],[85,82],[89,83],[86,82],[87,82],[50,84],[116,85],[107,86],[96,87],[95,88],[94,89],[91,90],[92,91],[112,92],[111,93],[110,94],[102,95],[104,96],[58,97],[56,98],[57,97],[54,99],[115,84],[60,84],[55,84],[83,100],[80,101],[63,84],[52,102],[62,84],[72,103],[53,104],[46,105],[49,106],[44,107],[48,108]],"exportedModulesMap":[[211,1],[206,2],[208,3],[207,2],[210,4],[212,5],[117,6],[118,6],[153,7],[154,8],[155,9],[156,10],[157,11],[158,12],[159,13],[160,14],[161,15],[162,16],[163,16],[165,17],[164,18],[166,19],[167,20],[168,21],[152,22],[169,23],[170,24],[171,25],[203,26],[172,27],[173,28],[174,29],[175,30],[176,31],[177,32],[178,33],[179,34],[180,35],[181,36],[182,36],[183,37],[184,38],[186,39],[185,40],[187,41],[188,42],[189,43],[190,44],[191,45],[192,46],[193,47],[194,48],[195,49],[196,50],[197,51],[198,52],[199,53],[200,54],[201,55],[135,56],[142,57],[134,56],[149,58],[126,59],[125,60],[148,61],[143,62],[146,63],[128,64],[127,65],[123,66],[122,67],[145,68],[124,69],[129,70],[133,70],[151,71],[150,70],[137,72],[138,73],[140,74],[136,75],[139,76],[144,61],[131,77],[132,78],[141,79],[121,80],[147,81],[89,83],[50,84],[116,85],[107,86],[96,87],[95,84],[92,91],[112,92],[110,94],[104,96],[58,98],[56,98],[57,98],[54,84],[115,84],[60,84],[55,84],[63,84],[62,84],[72,84],[53,84],[46,105],[49,106],[44,107],[48,108]],"semanticDiagnosticsPerFile":[45,211,204,206,208,207,205,210,209,212,117,118,153,154,155,156,157,158,159,160,161,162,163,165,164,166,167,168,152,202,169,170,171,203,172,173,174,175,176,177,178,179,180,181,182,183,184,186,185,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,119,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,33,30,31,32,34,7,35,40,41,36,37,38,39,1,42,135,142,134,149,126,125,148,143,146,128,127,123,122,145,124,129,130,133,120,151,150,137,138,140,136,139,144,131,132,141,121,147,88,85,84,89,86,87,50,116,107,105,106,93,96,95,94,91,90,92,112,111,109,108,110,98,103,102,101,104,97,99,100,113,58,56,57,70,69,71,67,76,77,75,54,61,115,51,60,55,64,68,65,66,83,82,81,80,79,78,59,73,63,52,62,74,72,53,114,47,46,43,49,44,48]},"version":"4.9.5"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * The sender ("From") of an email a published site sends, as ES5 source for the
3
+ * generated runtime code that cannot import from this package: the workflow
4
+ * email nodes, the welcome and farewell routes, the invoice sender and the
5
+ * store's order-notification sender. One rule, so every path names the sender
6
+ * the same way.
7
+ *
8
+ * The editor stores the sender as an address plus a separate display name
9
+ * (`from` and `fromName`). A provider takes it either as one RFC 5322 mailbox
10
+ * string (Postmark, Resend, Mailgun, nodemailer) or as its two parts
11
+ * (SendGrid's `{ email, name }`, MailerSend's `Sender`), so the emitted
12
+ * `__emailSender({ from, name })` answers both: `{ email, name, header }`.
13
+ *
14
+ * - No name: the bare address, as before.
15
+ * - A name holding an RFC 5322 special — `( ) < > [ ] : ; @ \ , . "` — is
16
+ * quoted, its `"` and `\` escaped. Unquoted, `Smith, Jones & Co <a@x.test>`
17
+ * reaches the provider as two addresses.
18
+ * - Line breaks and other control characters become spaces: a header ends at a
19
+ * line break, so a name carrying one would break the header.
20
+ * - A `from` that already names its sender (`Shop <a@x.test>`) keeps that name
21
+ * and is never wrapped a second time; a name typed with its own quotes is not
22
+ * quoted twice.
23
+ *
24
+ * ⛔ ONE parameter. The source is appended to serialized node handlers whose
25
+ * entry point a minified build finds by arity (a 2-param declaration wins, see
26
+ * `resolveHandlerEntryName`), so a 2-param helper would be called in place of
27
+ * the handler. A string literal rather than a `.toString()`, so a consumer's
28
+ * minifier can neither drop nor rename the declaration (see
29
+ * `commerce-tracking.ts` in teleport-plugin-next-workflows).
30
+ */
31
+ /** What a caller passes: the stored address and display name. */
32
+ export interface EmailSenderInput {
33
+ from?: unknown;
34
+ name?: unknown;
35
+ }
36
+ /** What the emitted helper answers. */
37
+ export interface EmailSenderParts {
38
+ email: string;
39
+ name: string;
40
+ header: string;
41
+ }
42
+ export declare const generateEmailSenderHelperCode: () => string;
43
+ //# sourceMappingURL=email-sender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-sender.d.ts","sourceRoot":"","sources":["../../../src/utils/email-sender.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,iEAAiE;AACjE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,uCAAuC;AACvC,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,6BAA6B,QAAO,MA6BhD,CAAA"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /**
3
+ * The sender ("From") of an email a published site sends, as ES5 source for the
4
+ * generated runtime code that cannot import from this package: the workflow
5
+ * email nodes, the welcome and farewell routes, the invoice sender and the
6
+ * store's order-notification sender. One rule, so every path names the sender
7
+ * the same way.
8
+ *
9
+ * The editor stores the sender as an address plus a separate display name
10
+ * (`from` and `fromName`). A provider takes it either as one RFC 5322 mailbox
11
+ * string (Postmark, Resend, Mailgun, nodemailer) or as its two parts
12
+ * (SendGrid's `{ email, name }`, MailerSend's `Sender`), so the emitted
13
+ * `__emailSender({ from, name })` answers both: `{ email, name, header }`.
14
+ *
15
+ * - No name: the bare address, as before.
16
+ * - A name holding an RFC 5322 special — `( ) < > [ ] : ; @ \ , . "` — is
17
+ * quoted, its `"` and `\` escaped. Unquoted, `Smith, Jones & Co <a@x.test>`
18
+ * reaches the provider as two addresses.
19
+ * - Line breaks and other control characters become spaces: a header ends at a
20
+ * line break, so a name carrying one would break the header.
21
+ * - A `from` that already names its sender (`Shop <a@x.test>`) keeps that name
22
+ * and is never wrapped a second time; a name typed with its own quotes is not
23
+ * quoted twice.
24
+ *
25
+ * ⛔ ONE parameter. The source is appended to serialized node handlers whose
26
+ * entry point a minified build finds by arity (a 2-param declaration wins, see
27
+ * `resolveHandlerEntryName`), so a 2-param helper would be called in place of
28
+ * the handler. A string literal rather than a `.toString()`, so a consumer's
29
+ * minifier can neither drop nor rename the declaration (see
30
+ * `commerce-tracking.ts` in teleport-plugin-next-workflows).
31
+ */
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.generateEmailSenderHelperCode = void 0;
34
+ var generateEmailSenderHelperCode = function () { return "\n// The sender of an email as { email, name, header }: header is the mailbox for a\n// provider taking the From as one string, email and name are its two parts.\nfunction __emailSender(sender) {\n function text(value) {\n return typeof value === 'string' || typeof value === 'number' ? String(value) : '';\n }\n function plainName(value) {\n var name = text(value).replace(/[\\s\\u0000-\\u001f\\u007f]+/g, ' ').trim();\n var quoted = /^\"((?:[^\"\\\\]|\\\\.)*)\"$/.exec(name);\n return quoted ? quoted[1].replace(/\\\\(.)/g, '$1').trim() : name;\n }\n var email = text(sender && sender.from).trim();\n var name = plainName(sender && sender.name);\n var named = /^([^<>]*)<([^<>]*)>$/.exec(email);\n if (named) {\n email = named[2].trim();\n name = plainName(named[1]) || name;\n } else if (/[<>]/.test(email)) {\n return { email: email, name: '', header: email };\n }\n if (!email || !name) {\n return { email: email, name: '', header: email };\n }\n var display = /[()<>\\[\\]:;@\\\\,.\"]/.test(name)\n ? '\"' + name.replace(/([\"\\\\])/g, '\\\\$1') + '\"'\n : name;\n return { email: email, name: name, header: display + ' <' + email + '>' };\n}\n"; };
35
+ exports.generateEmailSenderHelperCode = generateEmailSenderHelperCode;
36
+ //# sourceMappingURL=email-sender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-sender.js","sourceRoot":"","sources":["../../../src/utils/email-sender.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;;;AAeI,IAAM,6BAA6B,GAAG,cAAc,OAAA,4qCA6B1D,EA7B0D,CA6B1D,CAAA;AA7BY,QAAA,6BAA6B,iCA6BzC"}
@@ -88,6 +88,38 @@ export declare const resolveAdminPanelRoles: (auth?: UIDLAuthentication | null)
88
88
  * callers only) is the right answer.
89
89
  */
90
90
  export declare const resolveTrustedReaderRoles: (auth?: UIDLAuthentication | null) => string[];
91
+ /**
92
+ * What a page shows of a member to whoever opens it: their public profile —
93
+ * who they are, never how to reach them. A page's own data, read for a visitor,
94
+ * carries only these columns of the auth users table: never an email, a phone
95
+ * or an address, a credential, a role or anything else of the account. The
96
+ * member's own private fields reach their own page from their session.
97
+ */
98
+ export declare const PUBLIC_PROFILE_COLUMNS: ReadonlyArray<string>;
99
+ /**
100
+ * The tables a page's own data, read for a visitor (`pageReadsAsStore` false),
101
+ * gets no row of — so it need not ask: the protected ones, and the feed tables,
102
+ * whose one visitor projection lives on the data API. Not the auth users table:
103
+ * a page reads its members' public profiles (`PUBLIC_PROFILE_COLUMNS`).
104
+ */
105
+ export declare const pageDataReadsNoRowOf: (tableName: string) => boolean;
106
+ /**
107
+ * Whether a page's own data — what its getStaticProps / getServerSideProps
108
+ * read to render it — may be read as the store rather than as a visitor.
109
+ *
110
+ * Only an admin panel page that nobody but the store's trusted readers may
111
+ * open: at `/admin` or below, behind the middleware, with every role its gate
112
+ * admits in `resolveTrustedReaderRoles`. Whoever receives that page's data
113
+ * could read the same rows through the data routes. Every other page — public,
114
+ * members-only, or an admin screen another role may open — is rendered with
115
+ * what a visitor is served, since its data reaches whoever opens it, and
116
+ * through `/_next/data` without rendering it at all. `route` is the page's
117
+ * path when its own protection does not name it.
118
+ */
119
+ export declare const pageReadsAsStore: (page: {
120
+ route?: string;
121
+ pageId?: string;
122
+ }, auth?: UIDLAuthentication | null) => boolean;
91
123
  /**
92
124
  * ES5 source of the guard, inlined into a generated route. Declares:
93
125
  * - `__taIsInternalRequest(req)` — the caller presented the app secret, or
@@ -1 +1 @@
1
- {"version":3,"file":"table-access.d.ts","sourceRoot":"","sources":["../../../src/utils/table-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAGpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,MAAM,CAiB9C,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAmDxD,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAgD,CAAA;AAEnG,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAA0B,CAAA;AAEnF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,MAAM,CASzD,CAAA;AAED,0EAA0E;AAC1E,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAAa,CAAA;AAYtE,MAAM,WAAW,eAAe;IAC9B,iDAAiD;IACjD,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC9B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CA0BxE,CAAA;AAMD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,UAAW,kBAAkB,GAAG,IAAI,KAAG,MAAM,EA2B/E,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,UAAW,kBAAkB,GAAG,IAAI,KAAG,MAAM,EACrD,CAAA;AAE9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,6BAA6B,WAAY;IACpD,kBAAkB,EAAE,cAAc,MAAM,CAAC,CAAA;CAC1C,KAAG,MAiRH,CAAA"}
1
+ {"version":3,"file":"table-access.d.ts","sourceRoot":"","sources":["../../../src/utils/table-access.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAGpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,YAAY,EAAE,aAAa,CAAC,MAAM,CAiB9C,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAmDxD,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAgD,CAAA;AAEnG,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAA0B,CAAA;AAEnF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,MAAM,CASzD,CAAA;AAED,0EAA0E;AAC1E,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAAa,CAAA;AAYtE,MAAM,WAAW,eAAe;IAC9B,iDAAiD;IACjD,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IAC9B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CA0BxE,CAAA;AAMD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,UAAW,kBAAkB,GAAG,IAAI,KAAG,MAAM,EA2B/E,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,UAAW,kBAAkB,GAAG,IAAI,KAAG,MAAM,EACrD,CAAA;AAE9B;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAQxD,CAAA;AAUD;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,cAAe,MAAM,KAAG,OASxD,CAAA;AA6CD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB;YACX,MAAM;aAAW,MAAM;UAChC,kBAAkB,GAAG,IAAI,KAC/B,OA0BF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,6BAA6B,WAAY;IACpD,kBAAkB,EAAE,cAAc,MAAM,CAAC,CAAA;CAC1C,KAAG,MAmSH,CAAA"}
@@ -9,7 +9,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
9
9
  return to.concat(ar || Array.prototype.slice.call(from));
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.generateTableAccessHelperCode = exports.resolveTrustedReaderRoles = exports.resolveAdminPanelRoles = exports.PUBLIC_FEED_TABLES = exports.AUTH_CREDENTIAL_TABLES = exports.AUTH_CREDENTIAL_COLUMNS = exports.WRITE_PROTECTED_TABLES = exports.PROTECTED_TABLES = exports.CUSTOMER_RECORD_TABLES = exports.MONEY_TABLES = void 0;
12
+ exports.generateTableAccessHelperCode = exports.pageReadsAsStore = exports.pageDataReadsNoRowOf = exports.PUBLIC_PROFILE_COLUMNS = exports.resolveTrustedReaderRoles = exports.resolveAdminPanelRoles = exports.PUBLIC_FEED_TABLES = exports.AUTH_CREDENTIAL_TABLES = exports.AUTH_CREDENTIAL_COLUMNS = exports.WRITE_PROTECTED_TABLES = exports.PROTECTED_TABLES = exports.CUSTOMER_RECORD_TABLES = exports.MONEY_TABLES = void 0;
13
13
  var content_tables_1 = require("./content-tables");
14
14
  /**
15
15
  * Which store tables a browser may touch through the generated data routes.
@@ -237,6 +237,122 @@ var resolveTrustedReaderRoles = function (auth) {
237
237
  return (0, exports.resolveAdminPanelRoles)(auth);
238
238
  };
239
239
  exports.resolveTrustedReaderRoles = resolveTrustedReaderRoles;
240
+ /**
241
+ * What a page shows of a member to whoever opens it: their public profile —
242
+ * who they are, never how to reach them. A page's own data, read for a visitor,
243
+ * carries only these columns of the auth users table: never an email, a phone
244
+ * or an address, a credential, a role or anything else of the account. The
245
+ * member's own private fields reach their own page from their session.
246
+ */
247
+ exports.PUBLIC_PROFILE_COLUMNS = [
248
+ 'id',
249
+ 'name',
250
+ 'display_name',
251
+ 'image',
252
+ 'avatar',
253
+ 'avatar_url',
254
+ 'bio',
255
+ ];
256
+ var bareTableName = function (tableName) {
257
+ var parts = String(tableName || '')
258
+ .trim()
259
+ .toLowerCase()
260
+ .split('.');
261
+ return parts[parts.length - 1].replace(/"/g, '');
262
+ };
263
+ /**
264
+ * The tables a page's own data, read for a visitor (`pageReadsAsStore` false),
265
+ * gets no row of — so it need not ask: the protected ones, and the feed tables,
266
+ * whose one visitor projection lives on the data API. Not the auth users table:
267
+ * a page reads its members' public profiles (`PUBLIC_PROFILE_COLUMNS`).
268
+ */
269
+ var pageDataReadsNoRowOf = function (tableName) {
270
+ var bare = bareTableName(tableName);
271
+ if (exports.AUTH_CREDENTIAL_TABLES.indexOf(bare) !== -1) {
272
+ return false;
273
+ }
274
+ return (exports.PROTECTED_TABLES.indexOf(bare) !== -1 ||
275
+ Object.prototype.hasOwnProperty.call(exports.PUBLIC_FEED_TABLES, bare));
276
+ };
277
+ exports.pageDataReadsNoRowOf = pageDataReadsNoRowOf;
278
+ var isAdminRoute = function (route) {
279
+ return route === ADMIN_ROUTE_PREFIX || route.startsWith("".concat(ADMIN_ROUTE_PREFIX, "/"));
280
+ };
281
+ /**
282
+ * The gate the generated middleware puts on each route it knows
283
+ * (`generateMiddlewareFile`): a page's own protection, the roles of the
284
+ * role-gated folders it sits in merged in, and `/admin` — when any admin page
285
+ * is protected — admitting the admin panel's roles. A row-owned page is left
286
+ * to its own SQL there, so it gates nothing here either.
287
+ */
288
+ var middlewareRouteGates = function (auth) {
289
+ var gates = new Map();
290
+ var folders = Object.values(auth.folderProtection || {});
291
+ Object.entries(auth.pageProtection || {}).forEach(function (_a) {
292
+ var pageId = _a[0], page = _a[1];
293
+ if (!page || typeof page.route !== 'string' || page.rowOwnerColumn) {
294
+ return;
295
+ }
296
+ var folderRoles = folders
297
+ .filter(function (folder) { var _a; return ((_a = folder === null || folder === void 0 ? void 0 : folder.children) === null || _a === void 0 ? void 0 : _a[pageId]) === 'page'; })
298
+ .flatMap(function (folder) { return folder.allowedRoles || []; });
299
+ var existing = gates.get(page.route);
300
+ gates.set(page.route, {
301
+ requiresAuth: !!(existing === null || existing === void 0 ? void 0 : existing.requiresAuth) || !!page.requiresAuth,
302
+ roles: Array.from(new Set(__spreadArray(__spreadArray(__spreadArray([], ((existing === null || existing === void 0 ? void 0 : existing.roles) || []), true), (page.allowedRoles || []), true), folderRoles, true))),
303
+ });
304
+ });
305
+ if (!gates.has(ADMIN_ROUTE_PREFIX) && Array.from(gates.keys()).some(isAdminRoute)) {
306
+ var panelRoles = (0, exports.resolveAdminPanelRoles)(auth);
307
+ gates.set(ADMIN_ROUTE_PREFIX, {
308
+ requiresAuth: true,
309
+ roles: panelRoles.length > 0 ? panelRoles : ['admin'],
310
+ });
311
+ }
312
+ return gates;
313
+ };
314
+ /**
315
+ * Whether a page's own data — what its getStaticProps / getServerSideProps
316
+ * read to render it — may be read as the store rather than as a visitor.
317
+ *
318
+ * Only an admin panel page that nobody but the store's trusted readers may
319
+ * open: at `/admin` or below, behind the middleware, with every role its gate
320
+ * admits in `resolveTrustedReaderRoles`. Whoever receives that page's data
321
+ * could read the same rows through the data routes. Every other page — public,
322
+ * members-only, or an admin screen another role may open — is rendered with
323
+ * what a visitor is served, since its data reaches whoever opens it, and
324
+ * through `/_next/data` without rendering it at all. `route` is the page's
325
+ * path when its own protection does not name it.
326
+ */
327
+ var pageReadsAsStore = function (page, auth) {
328
+ var _a;
329
+ if (!auth) {
330
+ return false;
331
+ }
332
+ var trustedRoles = (0, exports.resolveTrustedReaderRoles)(auth);
333
+ if (trustedRoles.length === 0) {
334
+ return false;
335
+ }
336
+ var own = page.pageId ? (_a = auth.pageProtection) === null || _a === void 0 ? void 0 : _a[page.pageId] : undefined;
337
+ if (own === null || own === void 0 ? void 0 : own.rowOwnerColumn) {
338
+ return false;
339
+ }
340
+ var route = typeof (own === null || own === void 0 ? void 0 : own.route) === 'string' ? own.route : page.route;
341
+ if (!route || !isAdminRoute(route)) {
342
+ return false;
343
+ }
344
+ // The middleware's resolution: the route's own gate, else its nearest gated ancestor.
345
+ var gates = middlewareRouteGates(auth);
346
+ var ancestor = Array.from(gates.keys())
347
+ .filter(function (gated) { return route.startsWith("".concat(gated, "/")); })
348
+ .sort(function (a, b) { return b.length - a.length; })[0];
349
+ var gate = gates.get(route) || (ancestor ? gates.get(ancestor) : undefined);
350
+ if (!gate || !gate.requiresAuth || gate.roles.length === 0) {
351
+ return false;
352
+ }
353
+ return gate.roles.every(function (role) { return trustedRoles.indexOf(role) !== -1; });
354
+ };
355
+ exports.pageReadsAsStore = pageReadsAsStore;
240
356
  /**
241
357
  * ES5 source of the guard, inlined into a generated route. Declares:
242
358
  * - `__taIsInternalRequest(req)` — the caller presented the app secret, or
@@ -271,7 +387,7 @@ exports.resolveTrustedReaderRoles = resolveTrustedReaderRoles;
271
387
  * `__tqSessionToken` resolver, which the host route must inline as well.
272
388
  */
273
389
  var generateTableAccessHelperCode = function (params) {
274
- return "// GENERATED \u2014 see generateTableAccessHelperCode in\n// @teleporthq/teleport-shared/src/utils/table-access.ts.\n//\n// Tables that ARE money, and tables that decide how much of it is given away.\n// A browser reads the first group only as a trusted role (the generated admin)\n// and writes the second group never; server-side workflow segments present the\n// app secret instead. One list for both data-route families.\nvar __TA_PROTECTED_TABLES = ".concat(JSON.stringify(exports.PROTECTED_TABLES), ";\nvar __TA_WRITE_PROTECTED_TABLES = ").concat(JSON.stringify(exports.WRITE_PROTECTED_TABLES), ";\n// Readable from a browser only as this projection of the rows the database\n// calls live \u2014 see PUBLIC_FEED_TABLES. The per-table routes serve a whole\n// table (and raw SQL), which cannot express a feed, so there they are refused\n// like a protected table.\nvar __TA_PUBLIC_FEED_TABLES = ").concat(JSON.stringify(exports.PUBLIC_FEED_TABLES), ";\nvar __TA_FEED_TABLES = Object.keys(__TA_PUBLIC_FEED_TABLES);\nvar __TA_TRUSTED_READER_ROLES = ").concat(JSON.stringify(params.trustedReaderRoles), ";\nvar __TA_CREDENTIAL_COLUMNS = ").concat(JSON.stringify(exports.AUTH_CREDENTIAL_COLUMNS), ";\nvar __TA_UNAMBIGUOUS_CREDENTIAL_COLUMNS = ").concat(JSON.stringify(UNAMBIGUOUS_CREDENTIAL_COLUMNS), ";\nvar __TA_CREDENTIAL_TABLES = ").concat(JSON.stringify(exports.AUTH_CREDENTIAL_TABLES), ";\nvar __TA_SQL_WRITE_RE = /\\b(?:insert|update|delete|merge|truncate)\\b/i;\n// What a statement can reach without spelling a table's name where this scan\n// can see it: a Unicode-escaped identifier (U&\"\\0075sers\" is `users`), the\n// functions that run SQL text or dump whole tables, schemas or the database\n// (the table name then sits in a string, or is not named at all), and the\n// planner statistics, which hold sampled column values of every table.\nvar __TA_OPAQUE_SQL_RE = /u&\"|\\b(?:query|table|cursor|schema|database)_to_xml\\w*\\s*\\(|\\bts_(?:stat|rewrite)\\s*\\(|\\bdblink\\w*\\s*\\(|\\bpg_read_(?:binary_)?file\\s*\\(|\\blo_(?:import|export|get)\\s*\\(|\\bpg_stat(?:s|istic)\\w*/i;\n\n// Only server code can read NEXTAUTH_SECRET, so a browser cannot forge the\n// header a server segment sends. An in-process call (getStaticProps and the\n// page-load workflows call the handler directly with a synthetic request)\n// marks its request object instead \u2014 a property, never a header, so nothing\n// on the wire can claim it.\nfunction __taPresentsAppSecret(req) {\n var secret = req && req.headers && req.headers['x-internal-data-secret'];\n return !!(secret && process.env.NEXTAUTH_SECRET && secret === process.env.NEXTAUTH_SECRET);\n}\n\nfunction __taIsRestrictedRequest(req) {\n return __taPresentsAppSecret(req) && !!(req.headers && req.headers['x-tq-restricted-sql'] === '1');\n}\n\nfunction __taIsInternalRequest(req) {\n if (req && req.__tqServerCall === true) return true;\n return __taPresentsAppSecret(req) && !__taIsRestrictedRequest(req);\n}\n\n// Generated browser code reads through the structured routes and never sends\n// SQL or a write of its own \u2014 every data node runs server-side and presents\n// the secret. So where a secret exists to tell the two apart, anything else a\n// browser sends is refused whole: no statement scan has to be right about it.\n// An app without one (no authentication, hence no store) keeps the scan.\nfunction __taBrowserIsReadOnly(req) {\n return !!process.env.NEXTAUTH_SECRET && !__taIsInternalRequest(req) && !__taIsRestrictedRequest(req);\n}\n\n// Comments and string literals out, so a table name inside a string neither\n// hides a reference nor fakes one. Quoted identifiers stay, whole: in Postgres\n// they name tables, which is exactly what is being looked for.\n//\n// \u26D4 This is a lexer, not a search: a quote or comment marker inside a quoted\n// identifier (\"x'\", \"--\") is part of the name, a `$` or an `E` inside an\n// identifier (a$b$, ELSE'\u2026') starts neither a dollar quote nor an escape\n// string, and a dollar-quoted body is consumed by its own tag. An UNTERMINATED\n// literal, identifier, comment or dollar quote makes the whole scan fail closed\n// (ok:false): a statement this cleaner cannot read is one it cannot vouch for.\nfunction __taCleanSql(sql) {\n var text = String(sql || '');\n var out = '';\n var i = 0;\n function inIdentifier(at) { return at > 0 && /[A-Za-z0-9_$]/.test(text[at - 1]); }\n while (i < text.length) {\n var ch = text[i];\n var next = text[i + 1];\n if (ch === '-' && next === '-') {\n while (i < text.length && text[i] !== '\\n') i++;\n continue;\n }\n if (ch === '/' && next === '*') {\n i += 2;\n var depth = 1;\n while (i < text.length && depth > 0) {\n if (text[i] === '/' && text[i + 1] === '*') { depth++; i += 2; continue; }\n if (text[i] === '*' && text[i + 1] === '/') { depth--; i += 2; continue; }\n i++;\n }\n if (depth > 0) return { ok: false, text: out };\n out += ' ';\n continue;\n }\n // \"\u2026\" is one identifier token; \"\" inside it is an escaped quote.\n if (ch === '\"') {\n var end = i + 1;\n var closedIdentifier = false;\n while (end < text.length) {\n if (text[end] === '\"' && text[end + 1] === '\"') { end += 2; continue; }\n if (text[end] === '\"') { closedIdentifier = true; break; }\n end++;\n }\n if (!closedIdentifier) return { ok: false, text: out };\n out += text.slice(i, end + 1);\n i = end + 1;\n continue;\n }\n // $tag$ \u2026 $tag$ \u2014 the body is data whatever it holds.\n if (ch === '$' && !inIdentifier(i)) {\n var tagMatch = /^\\$[A-Za-z_][A-Za-z0-9_]*\\$|^\\$\\$/.exec(text.slice(i));\n if (tagMatch) {\n var tag = tagMatch[0];\n var close = text.indexOf(tag, i + tag.length);\n if (close === -1) return { ok: false, text: out };\n i = close + tag.length;\n out += ' ';\n continue;\n }\n }\n // E'\u2026' understands backslash escapes; a plain '\u2026' doubles the quote.\n if (ch === \"'\" || ((ch === 'E' || ch === 'e') && next === \"'\" && !inIdentifier(i))) {\n var escapes = ch !== \"'\";\n if (escapes) i++;\n i++;\n var closed = false;\n while (i < text.length) {\n if (escapes && text[i] === '\\\\') { i += 2; continue; }\n if (text[i] === \"'\" && text[i + 1] === \"'\") { i += 2; continue; }\n if (text[i] === \"'\") { i++; closed = true; break; }\n i++;\n }\n if (!closed) return { ok: false, text: out };\n out += ' ';\n continue;\n }\n out += ch;\n i++;\n }\n return { ok: true, text: out };\n}\n\nfunction __taNormalizeTable(tableName) {\n var name = String(tableName || '').trim().toLowerCase();\n var parts = name.split('.');\n return parts[parts.length - 1].replace(/\"/g, '');\n}\n\n// An unreadable statement, or one that can reach a table without naming it,\n// counts as mentioning EVERY protected table: fail closed rather than let a\n// spelling this scan cannot see decide it is harmless.\nfunction __taSqlMentionsTable(sql, table) {\n var cleaned = __taCleanSql(sql);\n if (!cleaned.ok || __TA_OPAQUE_SQL_RE.test(cleaned.text)) return true;\n var pattern = new RegExp('(?:^|[^A-Za-z0-9_])\"?' + table + '\"?(?![A-Za-z0-9_])', 'i');\n return pattern.test(cleaned.text);\n}\n\nfunction __taIsCredentialTable(tableName) {\n return __TA_CREDENTIAL_TABLES.indexOf(__taNormalizeTable(tableName)) !== -1;\n}\n\n// Credentials never travel in a row: a column is dropped by name, however the\n// caller spelled it in its projection.\nfunction __taWithoutCredentials(rows, tableName) {\n if (!Array.isArray(rows)) return rows;\n var dropped = tableName && __taIsCredentialTable(tableName)\n ? __TA_CREDENTIAL_COLUMNS\n : tableName ? [] : __TA_UNAMBIGUOUS_CREDENTIAL_COLUMNS;\n if (dropped.length === 0) return rows;\n return rows.map(function(row) {\n if (!row || typeof row !== 'object') return row;\n var copy = {};\n Object.keys(row).forEach(function(key) {\n if (dropped.indexOf(String(key).toLowerCase()) === -1) copy[key] = row[key];\n });\n return copy;\n });\n}\n\nfunction __taForbid(table) {\n var err = new Error('Forbidden: ' + table + ' is only accessible to server-side workflow nodes');\n err.status = 403;\n throw err;\n}\n\nfunction __taAssertSqlTextAllowed(sql) {\n var text = String(sql || '');\n // A statement can hand back a whole row (`SELECT u FROM users u`,\n // `row_to_json(u)`) without naming a credential column, so the table itself\n // is out of reach of anything but the server's own calls.\n for (var ci = 0; ci < __TA_CREDENTIAL_TABLES.length; ci++) {\n if (__taSqlMentionsTable(text, __TA_CREDENTIAL_TABLES[ci])) __taForbid(__TA_CREDENTIAL_TABLES[ci]);\n }\n for (var pi = 0; pi < __TA_PROTECTED_TABLES.length; pi++) {\n if (__taSqlMentionsTable(text, __TA_PROTECTED_TABLES[pi])) __taForbid(__TA_PROTECTED_TABLES[pi]);\n }\n // A feed table has exactly one browser-readable shape, and a statement the\n // caller wrote is not it.\n for (var fi = 0; fi < __TA_FEED_TABLES.length; fi++) {\n if (__taSqlMentionsTable(text, __TA_FEED_TABLES[fi])) __taForbid(__TA_FEED_TABLES[fi]);\n }\n var cleaned = __taCleanSql(text);\n // Unreadable, or a write: either way the write-protected tables are refused.\n if (cleaned.ok && !__TA_SQL_WRITE_RE.test(cleaned.text)) return;\n for (var wi = 0; wi < __TA_WRITE_PROTECTED_TABLES.length; wi++) {\n if (__taSqlMentionsTable(text, __TA_WRITE_PROTECTED_TABLES[wi])) __taForbid(__TA_WRITE_PROTECTED_TABLES[wi]);\n }\n}\n\nfunction __taRoleOf(token) {\n if (!token || typeof token !== 'object') return null;\n if (typeof token.role === 'string') return token.role;\n if (typeof token.roleName === 'string') return token.roleName;\n if (Array.isArray(token.roles) && typeof token.roles[0] === 'string') return token.roles[0];\n return null;\n}\n\n// The tables a read of `tableName` (or the raw statement) touches that this\n// route family may not serve to a browser: the protected ones, and the feed\n// tables, whose one browser-readable projection lives on the data API instead.\nvar __TA_ROUTE_PROTECTED_TABLES = __TA_PROTECTED_TABLES.concat(__TA_FEED_TABLES);\n\nfunction __taProtectedTablesRead(tableName, rawQuery) {\n var touched = [];\n var bare = __taNormalizeTable(tableName);\n if (__TA_ROUTE_PROTECTED_TABLES.indexOf(bare) !== -1) touched.push(bare);\n if (typeof rawQuery === 'string' && rawQuery.length > 0) {\n for (var i = 0; i < __TA_ROUTE_PROTECTED_TABLES.length; i++) {\n if (touched.indexOf(__TA_ROUTE_PROTECTED_TABLES[i]) === -1 && __taSqlMentionsTable(rawQuery, __TA_ROUTE_PROTECTED_TABLES[i])) {\n touched.push(__TA_ROUTE_PROTECTED_TABLES[i]);\n }\n }\n }\n return touched;\n}\n\n// The projection an untrusted caller gets of a feed table, or null when the\n// table has no feed or the caller is a server-side one reading it whole.\nfunction __taPublicFeed(req, tableName) {\n if (__taIsInternalRequest(req)) return null;\n var feed = __TA_PUBLIC_FEED_TABLES[__taNormalizeTable(tableName)];\n return feed || null;\n}\n\n// A feed is filtered and sorted only by the columns it serves: a condition on\n// any other column (or an expression over one) would answer for it.\nfunction __taAssertFeedFields(tableName, feed, fields) {\n for (var i = 0; i < fields.length; i++) {\n if (!fields[i]) continue;\n var column = String(fields[i]).trim().replace(/\"/g, '').toLowerCase();\n if (feed.columns.indexOf(column) === -1) __taForbid(__taNormalizeTable(tableName) + '.' + fields[i]);\n }\n}\n\n// null when the read may proceed, else { status, message }.\nasync function __taGuardRead(req, tableName, rawQuery) {\n if (typeof rawQuery === 'string' && rawQuery.length > 0 && __taBrowserIsReadOnly(req)) {\n return { status: 403, message: 'Forbidden: raw queries are only available to server-side calls' };\n }\n var touched = __taProtectedTablesRead(tableName, rawQuery);\n if (touched.length === 0) return null;\n if (__taIsInternalRequest(req)) return null;\n var token = null;\n try {\n token = await __tqSessionToken(req);\n } catch (e) {\n token = null;\n }\n if (!token) return { status: 401, message: 'Unauthenticated' };\n var role = __taRoleOf(token);\n if (!role || __TA_TRUSTED_READER_ROLES.indexOf(role) === -1) {\n return { status: 403, message: 'Forbidden: ' + touched[0] + ' is only readable by the store administrators' };\n }\n return null;\n}\n");
390
+ return "// GENERATED \u2014 see generateTableAccessHelperCode in\n// @teleporthq/teleport-shared/src/utils/table-access.ts.\n//\n// Tables that ARE money, and tables that decide how much of it is given away.\n// A browser reads the first group only as a trusted role (the generated admin)\n// and writes the second group never; server-side workflow segments present the\n// app secret instead. One list for both data-route families.\nvar __TA_PROTECTED_TABLES = ".concat(JSON.stringify(exports.PROTECTED_TABLES), ";\nvar __TA_WRITE_PROTECTED_TABLES = ").concat(JSON.stringify(exports.WRITE_PROTECTED_TABLES), ";\n// Readable from a browser only as this projection of the rows the database\n// calls live \u2014 see PUBLIC_FEED_TABLES. The per-table routes serve a whole\n// table (and raw SQL), which cannot express a feed, so there they are refused\n// like a protected table.\nvar __TA_PUBLIC_FEED_TABLES = ").concat(JSON.stringify(exports.PUBLIC_FEED_TABLES), ";\nvar __TA_FEED_TABLES = Object.keys(__TA_PUBLIC_FEED_TABLES);\nvar __TA_TRUSTED_READER_ROLES = ").concat(JSON.stringify(params.trustedReaderRoles), ";\nvar __TA_CREDENTIAL_COLUMNS = ").concat(JSON.stringify(exports.AUTH_CREDENTIAL_COLUMNS), ";\nvar __TA_UNAMBIGUOUS_CREDENTIAL_COLUMNS = ").concat(JSON.stringify(UNAMBIGUOUS_CREDENTIAL_COLUMNS), ";\nvar __TA_CREDENTIAL_TABLES = ").concat(JSON.stringify(exports.AUTH_CREDENTIAL_TABLES), ";\nvar __TA_SQL_WRITE_RE = /\\b(?:insert|update|delete|merge|truncate)\\b/i;\n// What a statement can reach without spelling a table's name where this scan\n// can see it: a Unicode-escaped identifier (U&\"\\0075sers\" is `users`), the\n// functions that run SQL text or dump whole tables, schemas or the database\n// (the table name then sits in a string, or is not named at all), and the\n// planner statistics, which hold sampled column values of every table.\nvar __TA_OPAQUE_SQL_RE = /u&\"|\\b(?:query|table|cursor|schema|database)_to_xml\\w*\\s*\\(|\\bts_(?:stat|rewrite)\\s*\\(|\\bdblink\\w*\\s*\\(|\\bpg_read_(?:binary_)?file\\s*\\(|\\blo_(?:import|export|get)\\s*\\(|\\bpg_stat(?:s|istic)\\w*/i;\n\n// Only server code can read NEXTAUTH_SECRET, so a browser cannot forge the\n// header a server segment sends. An in-process call (getStaticProps and the\n// page-load workflows call the handler directly with a synthetic request)\n// marks its request object instead \u2014 a property, never a header, so nothing\n// on the wire can claim it.\nfunction __taPresentsAppSecret(req) {\n var secret = req && req.headers && req.headers['x-internal-data-secret'];\n return !!(secret && process.env.NEXTAUTH_SECRET && secret === process.env.NEXTAUTH_SECRET);\n}\n\nfunction __taIsRestrictedRequest(req) {\n return __taPresentsAppSecret(req) && !!(req.headers && req.headers['x-tq-restricted-sql'] === '1');\n}\n\nfunction __taIsInternalRequest(req) {\n if (req && req.__tqServerCall === true) return true;\n return __taPresentsAppSecret(req) && !__taIsRestrictedRequest(req);\n}\n\n// A page's own data, read to render it (the module's `fetchData(params, { as:\n// 'visitor' })`): served what an anonymous visitor is, through a statement the\n// page itself wrote. Marked on the request object, like an internal call, so\n// nothing on the wire can claim it.\nfunction __taIsVisitorView(req) {\n return !!(req && req.__tqVisitorView === true);\n}\n\n// Generated browser code reads through the structured routes and never sends\n// SQL or a write of its own \u2014 every data node runs server-side and presents\n// the secret. So where a secret exists to tell the two apart, anything else a\n// browser sends is refused whole: no statement scan has to be right about it.\n// An app without one (no authentication, hence no store) keeps the scan.\nfunction __taBrowserIsReadOnly(req) {\n return !!process.env.NEXTAUTH_SECRET && !__taIsInternalRequest(req) && !__taIsRestrictedRequest(req);\n}\n\n// Comments and string literals out, so a table name inside a string neither\n// hides a reference nor fakes one. Quoted identifiers stay, whole: in Postgres\n// they name tables, which is exactly what is being looked for.\n//\n// \u26D4 This is a lexer, not a search: a quote or comment marker inside a quoted\n// identifier (\"x'\", \"--\") is part of the name, a `$` or an `E` inside an\n// identifier (a$b$, ELSE'\u2026') starts neither a dollar quote nor an escape\n// string, and a dollar-quoted body is consumed by its own tag. An UNTERMINATED\n// literal, identifier, comment or dollar quote makes the whole scan fail closed\n// (ok:false): a statement this cleaner cannot read is one it cannot vouch for.\nfunction __taCleanSql(sql) {\n var text = String(sql || '');\n var out = '';\n var i = 0;\n function inIdentifier(at) { return at > 0 && /[A-Za-z0-9_$]/.test(text[at - 1]); }\n while (i < text.length) {\n var ch = text[i];\n var next = text[i + 1];\n if (ch === '-' && next === '-') {\n while (i < text.length && text[i] !== '\\n') i++;\n continue;\n }\n if (ch === '/' && next === '*') {\n i += 2;\n var depth = 1;\n while (i < text.length && depth > 0) {\n if (text[i] === '/' && text[i + 1] === '*') { depth++; i += 2; continue; }\n if (text[i] === '*' && text[i + 1] === '/') { depth--; i += 2; continue; }\n i++;\n }\n if (depth > 0) return { ok: false, text: out };\n out += ' ';\n continue;\n }\n // \"\u2026\" is one identifier token; \"\" inside it is an escaped quote.\n if (ch === '\"') {\n var end = i + 1;\n var closedIdentifier = false;\n while (end < text.length) {\n if (text[end] === '\"' && text[end + 1] === '\"') { end += 2; continue; }\n if (text[end] === '\"') { closedIdentifier = true; break; }\n end++;\n }\n if (!closedIdentifier) return { ok: false, text: out };\n out += text.slice(i, end + 1);\n i = end + 1;\n continue;\n }\n // $tag$ \u2026 $tag$ \u2014 the body is data whatever it holds.\n if (ch === '$' && !inIdentifier(i)) {\n var tagMatch = /^\\$[A-Za-z_][A-Za-z0-9_]*\\$|^\\$\\$/.exec(text.slice(i));\n if (tagMatch) {\n var tag = tagMatch[0];\n var close = text.indexOf(tag, i + tag.length);\n if (close === -1) return { ok: false, text: out };\n i = close + tag.length;\n out += ' ';\n continue;\n }\n }\n // E'\u2026' understands backslash escapes; a plain '\u2026' doubles the quote.\n if (ch === \"'\" || ((ch === 'E' || ch === 'e') && next === \"'\" && !inIdentifier(i))) {\n var escapes = ch !== \"'\";\n if (escapes) i++;\n i++;\n var closed = false;\n while (i < text.length) {\n if (escapes && text[i] === '\\\\') { i += 2; continue; }\n if (text[i] === \"'\" && text[i + 1] === \"'\") { i += 2; continue; }\n if (text[i] === \"'\") { i++; closed = true; break; }\n i++;\n }\n if (!closed) return { ok: false, text: out };\n out += ' ';\n continue;\n }\n out += ch;\n i++;\n }\n return { ok: true, text: out };\n}\n\nfunction __taNormalizeTable(tableName) {\n var name = String(tableName || '').trim().toLowerCase();\n var parts = name.split('.');\n return parts[parts.length - 1].replace(/\"/g, '');\n}\n\n// An unreadable statement, or one that can reach a table without naming it,\n// counts as mentioning EVERY protected table: fail closed rather than let a\n// spelling this scan cannot see decide it is harmless.\nfunction __taSqlMentionsTable(sql, table) {\n var cleaned = __taCleanSql(sql);\n if (!cleaned.ok || __TA_OPAQUE_SQL_RE.test(cleaned.text)) return true;\n var pattern = new RegExp('(?:^|[^A-Za-z0-9_])\"?' + table + '\"?(?![A-Za-z0-9_])', 'i');\n return pattern.test(cleaned.text);\n}\n\nfunction __taIsCredentialTable(tableName) {\n return __TA_CREDENTIAL_TABLES.indexOf(__taNormalizeTable(tableName)) !== -1;\n}\n\n// Credentials never travel in a row: a column is dropped by name, however the\n// caller spelled it in its projection.\nfunction __taWithoutCredentials(rows, tableName) {\n if (!Array.isArray(rows)) return rows;\n var dropped = tableName && __taIsCredentialTable(tableName)\n ? __TA_CREDENTIAL_COLUMNS\n : tableName ? [] : __TA_UNAMBIGUOUS_CREDENTIAL_COLUMNS;\n if (dropped.length === 0) return rows;\n return rows.map(function(row) {\n if (!row || typeof row !== 'object') return row;\n var copy = {};\n Object.keys(row).forEach(function(key) {\n if (dropped.indexOf(String(key).toLowerCase()) === -1) copy[key] = row[key];\n });\n return copy;\n });\n}\n\nfunction __taForbid(table) {\n var err = new Error('Forbidden: ' + table + ' is only accessible to server-side workflow nodes');\n err.status = 403;\n throw err;\n}\n\nfunction __taAssertSqlTextAllowed(sql) {\n var text = String(sql || '');\n // A statement can hand back a whole row (`SELECT u FROM users u`,\n // `row_to_json(u)`) without naming a credential column, so the table itself\n // is out of reach of anything but the server's own calls.\n for (var ci = 0; ci < __TA_CREDENTIAL_TABLES.length; ci++) {\n if (__taSqlMentionsTable(text, __TA_CREDENTIAL_TABLES[ci])) __taForbid(__TA_CREDENTIAL_TABLES[ci]);\n }\n for (var pi = 0; pi < __TA_PROTECTED_TABLES.length; pi++) {\n if (__taSqlMentionsTable(text, __TA_PROTECTED_TABLES[pi])) __taForbid(__TA_PROTECTED_TABLES[pi]);\n }\n // A feed table has exactly one browser-readable shape, and a statement the\n // caller wrote is not it.\n for (var fi = 0; fi < __TA_FEED_TABLES.length; fi++) {\n if (__taSqlMentionsTable(text, __TA_FEED_TABLES[fi])) __taForbid(__TA_FEED_TABLES[fi]);\n }\n var cleaned = __taCleanSql(text);\n // Unreadable, or a write: either way the write-protected tables are refused.\n if (cleaned.ok && !__TA_SQL_WRITE_RE.test(cleaned.text)) return;\n for (var wi = 0; wi < __TA_WRITE_PROTECTED_TABLES.length; wi++) {\n if (__taSqlMentionsTable(text, __TA_WRITE_PROTECTED_TABLES[wi])) __taForbid(__TA_WRITE_PROTECTED_TABLES[wi]);\n }\n}\n\nfunction __taRoleOf(token) {\n if (!token || typeof token !== 'object') return null;\n if (typeof token.role === 'string') return token.role;\n if (typeof token.roleName === 'string') return token.roleName;\n if (Array.isArray(token.roles) && typeof token.roles[0] === 'string') return token.roles[0];\n return null;\n}\n\n// The tables a read of `tableName` (or the raw statement) touches that this\n// route family may not serve to a browser: the protected ones, and the feed\n// tables, whose one browser-readable projection lives on the data API instead.\nvar __TA_ROUTE_PROTECTED_TABLES = __TA_PROTECTED_TABLES.concat(__TA_FEED_TABLES);\n\nfunction __taProtectedTablesRead(tableName, rawQuery) {\n var touched = [];\n var bare = __taNormalizeTable(tableName);\n if (__TA_ROUTE_PROTECTED_TABLES.indexOf(bare) !== -1) touched.push(bare);\n if (typeof rawQuery === 'string' && rawQuery.length > 0) {\n for (var i = 0; i < __TA_ROUTE_PROTECTED_TABLES.length; i++) {\n if (touched.indexOf(__TA_ROUTE_PROTECTED_TABLES[i]) === -1 && __taSqlMentionsTable(rawQuery, __TA_ROUTE_PROTECTED_TABLES[i])) {\n touched.push(__TA_ROUTE_PROTECTED_TABLES[i]);\n }\n }\n }\n return touched;\n}\n\n// The projection an untrusted caller gets of a feed table, or null when the\n// table has no feed or the caller is a server-side one reading it whole.\nfunction __taPublicFeed(req, tableName) {\n if (__taIsInternalRequest(req)) return null;\n var feed = __TA_PUBLIC_FEED_TABLES[__taNormalizeTable(tableName)];\n return feed || null;\n}\n\n// A feed is filtered and sorted only by the columns it serves: a condition on\n// any other column (or an expression over one) would answer for it.\nfunction __taAssertFeedFields(tableName, feed, fields) {\n for (var i = 0; i < fields.length; i++) {\n if (!fields[i]) continue;\n var column = String(fields[i]).trim().replace(/\"/g, '').toLowerCase();\n if (feed.columns.indexOf(column) === -1) __taForbid(__taNormalizeTable(tableName) + '.' + fields[i]);\n }\n}\n\n// null when the read may proceed, else { status, message }.\nasync function __taGuardRead(req, tableName, rawQuery) {\n var visitorView = __taIsVisitorView(req);\n if (typeof rawQuery === 'string' && rawQuery.length > 0 && __taBrowserIsReadOnly(req) && !visitorView) {\n return { status: 403, message: 'Forbidden: raw queries are only available to server-side calls' };\n }\n var touched = __taProtectedTablesRead(tableName, rawQuery);\n if (touched.length === 0) return null;\n if (__taIsInternalRequest(req)) return null;\n if (visitorView) {\n // A page reads its members' public profiles: the auth users table alone,\n // through the structured read, which the route's row policy projects onto\n // the public profile columns. Nothing else protected, and no statement.\n var readsProfiles = !(typeof rawQuery === 'string' && rawQuery.length > 0) &&\n touched.length === 1 && __taIsCredentialTable(tableName);\n // A visitor is nobody in particular: no session to read.\n return readsProfiles ? null : { status: 401, message: 'Unauthenticated' };\n }\n var token = null;\n try {\n token = await __tqSessionToken(req);\n } catch (e) {\n token = null;\n }\n if (!token) return { status: 401, message: 'Unauthenticated' };\n var role = __taRoleOf(token);\n if (!role || __TA_TRUSTED_READER_ROLES.indexOf(role) === -1) {\n return { status: 403, message: 'Forbidden: ' + touched[0] + ' is only readable by the store administrators' };\n }\n return null;\n}\n");
275
391
  };
276
392
  exports.generateTableAccessHelperCode = generateTableAccessHelperCode;
277
393
  //# sourceMappingURL=table-access.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-access.js","sourceRoot":"","sources":["../../../src/utils/table-access.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-access.js","sourceRoot":"","sources":["../../../src/utils/table-access.ts"],"names":[],"mappings":"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"}