@sdkgen/fsharp-generator 0.0.0-dev.20230929190043 → 0.0.0-dev.20231002144112

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"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.dom.iterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.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","../node_modules/typescript/lib/lib.es2017.full.d.ts","../node_modules/@sdkgen/parser/src/token.ts","../node_modules/@sdkgen/parser/src/ast.ts","../node_modules/@sdkgen/parser/src/compatibility/index.ts","../node_modules/@sdkgen/parser/src/semantic/visitor.ts","../node_modules/@sdkgen/parser/src/semantic/01_check_multiple_declaration.ts","../node_modules/@sdkgen/parser/src/semantic/transformer.ts","../node_modules/@sdkgen/parser/src/semantic/02_give_struct_and_enum_names.ts","../node_modules/@sdkgen/parser/src/semantic/03_match_type_definitions.ts","../node_modules/@sdkgen/parser/src/semantic/04_check_dont_return_secret.ts","../node_modules/@sdkgen/parser/src/semantic/05_expand_spreads.ts","../node_modules/@sdkgen/parser/src/semantic/06_check_empty_struct_or_enum.ts","../node_modules/@sdkgen/parser/src/semantic/07_validate_recursive_types.ts","../node_modules/@sdkgen/parser/src/semantic/08_collect_struct_and_enum_types.ts","../node_modules/@sdkgen/parser/src/semantic/09_validate_annotations.ts","../node_modules/@sdkgen/parser/src/semantic/10_check_duplicate_members_on_enum.ts","../node_modules/@sdkgen/parser/src/semantic/analyser.ts","../node_modules/@sdkgen/parser/src/utils.ts","../node_modules/@sdkgen/parser/src/json.ts","../node_modules/@sdkgen/parser/src/lexer.ts","../node_modules/@sdkgen/parser/src/restparser.ts","../node_modules/@sdkgen/parser/src/parser.ts","../node_modules/@sdkgen/parser/src/helpers.ts","../node_modules/@sdkgen/parser/src/index.ts","../src/helpers.ts","../src/fsharp-server.ts","../src/index.ts","../node_modules/@babel/types/lib/index.d.ts","../node_modules/@types/babel__generator/index.d.ts","../node_modules/@babel/parser/typings/babel-parser.d.ts","../node_modules/@types/babel__template/index.d.ts","../node_modules/@types/babel__traverse/index.d.ts","../node_modules/@types/babel__core/index.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.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/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/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/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@jest/expect-utils/build/index.d.ts","../node_modules/chalk/index.d.ts","../node_modules/@sinclair/typebox/typebox.d.ts","../node_modules/@jest/schemas/build/index.d.ts","../node_modules/pretty-format/build/index.d.ts","../node_modules/jest-diff/build/index.d.ts","../node_modules/jest-matcher-utils/build/index.d.ts","../node_modules/expect/build/index.d.ts","../node_modules/@types/jest/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/json5/index.d.ts","../node_modules/@types/semver/classes/semver.d.ts","../node_modules/@types/semver/functions/parse.d.ts","../node_modules/@types/semver/functions/valid.d.ts","../node_modules/@types/semver/functions/clean.d.ts","../node_modules/@types/semver/functions/inc.d.ts","../node_modules/@types/semver/functions/diff.d.ts","../node_modules/@types/semver/functions/major.d.ts","../node_modules/@types/semver/functions/minor.d.ts","../node_modules/@types/semver/functions/patch.d.ts","../node_modules/@types/semver/functions/prerelease.d.ts","../node_modules/@types/semver/functions/compare.d.ts","../node_modules/@types/semver/functions/rcompare.d.ts","../node_modules/@types/semver/functions/compare-loose.d.ts","../node_modules/@types/semver/functions/compare-build.d.ts","../node_modules/@types/semver/functions/sort.d.ts","../node_modules/@types/semver/functions/rsort.d.ts","../node_modules/@types/semver/functions/gt.d.ts","../node_modules/@types/semver/functions/lt.d.ts","../node_modules/@types/semver/functions/eq.d.ts","../node_modules/@types/semver/functions/neq.d.ts","../node_modules/@types/semver/functions/gte.d.ts","../node_modules/@types/semver/functions/lte.d.ts","../node_modules/@types/semver/functions/cmp.d.ts","../node_modules/@types/semver/functions/coerce.d.ts","../node_modules/@types/semver/classes/comparator.d.ts","../node_modules/@types/semver/classes/range.d.ts","../node_modules/@types/semver/functions/satisfies.d.ts","../node_modules/@types/semver/ranges/max-satisfying.d.ts","../node_modules/@types/semver/ranges/min-satisfying.d.ts","../node_modules/@types/semver/ranges/to-comparators.d.ts","../node_modules/@types/semver/ranges/min-version.d.ts","../node_modules/@types/semver/ranges/valid.d.ts","../node_modules/@types/semver/ranges/outside.d.ts","../node_modules/@types/semver/ranges/gtr.d.ts","../node_modules/@types/semver/ranges/ltr.d.ts","../node_modules/@types/semver/ranges/intersects.d.ts","../node_modules/@types/semver/ranges/simplify.d.ts","../node_modules/@types/semver/ranges/subset.d.ts","../node_modules/@types/semver/internals/identifiers.d.ts","../node_modules/@types/semver/index.d.ts","../node_modules/@types/stack-utils/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","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},"d2f31f19e1ba6ed59be9259d660a239d9a3fcbbc8e038c6b2009bde34b175fed","0d1b618fb1d31b44a3e77e0940199cc12099b7e448ff596481039c5439160c5d","851153ecb19fe760635a2b8e54dad62a99c245a22abb116c781680cb3505a02e","e18aa16baef58d63b8a342de5e72edf39f2369970b42171a25d743d0ce4afc06","50ba5c02af36d9f80c7da35962cb61d1088a7af05ef5930d417981baccfbc9c3","fb06e8dde3cf19ccc0e47762be6242ec990d659557dbbe14c63113478adc2444","397d74c2f4c02a687edae40df94680f66d7a2ce96dce5dd15e8278006d07e946","7fa0685b27b50b8ef1604f5d71772ad6846b1996b4d9e4c396baef7aa6539b2a","df2bd579b982728787d31c4d8e40a8f442a9eb67e8973196d77e86968cf657a3","fbb4995857b44355618c8a61cb5e086462821cc282fc638cc3a94a2b814bc633","82fa765db527609317ea5ad4dc0fb366f1b57b4d7b226e18b3948e255c42274e","0f2e58dd677c3842b6ba89bbc80c30ff6ee38f49d93a12d765585963aebf3852","1e3ad408c7a5cbf4a401b53e5e0760bbb75d237a206a474e874d600345372a82","f1ebcaadc20f1aec3895b8e4a0b88d5de640d7892d57fbd0b5c9b14c78f6192e","dc203171e94764adb6341cc3336073e1d447932460dfeb81214d1946f2b6d5b2","dbd05088d511c6ce1811b5f24dfbd13bc483a01778d8cac7592a79c0316802b9","52100f9bfc215f16eb0a58af18050b27f4c2c307679f137d000882fe942a324a","314dc2eb5d1d6e583cf6eb3759fb5329a18b2c4db94a50e00d6225968c6e9c25","96f8d22597cd9bcb11728c4ff1724c0f664cd69f883487dc28bcfa21f0f01e71","f6725bcf9cc6c70f311aabd5ef3b7839535e416eea8e3c548e2dd99136f47489","31b7510503d7ed5a8a7c45c1f0e7ab1c9eedd0c674131fd797b371d4285ed518","674f4367342c630e9e181902750fd7765cf714dc917ff01ecf5418cd4bfbfac7","7cfa60d9e9948d1d9fbc67bbe7b742f8b913cbc043581dbca1a4b97475d69f07","b3fb528e7589083ed8f80ad73bd30695b9cd00d1cdce5859977b60feefabb347",{"version":"40a6177080f7b189704265a0c1135717b9cf2f47a2ed2e3e2a3d51a8c753beec","signature":"1ca6be3c72510871031c3ed171727b6be564eebe88253e215b0307a1aef276d8"},{"version":"5ed5f1f3f89729cb82df607335eee92cfecd032e847f03761954674cd9065168","signature":"7192c13fd3e76a74cf9fd2a7fc5a1610c1c3d9cfb072d56666c16d159e3be326"},"0db57498e965fe5c064e0aef24a9c6efeaae440f062e2f23649141d9340fa4a1","f713064ca751dc588bc13832137c418cb70cf0446de92ade60ad631071558fca","dfefd34e8ab60f41d0c130527d5092d6ce662dc9fa85bc8c97682baf65830b51","96c23535f4f9dd15beb767e070559ea672f6a35f103152836a67100605136a96","b0f4dd1a825912da8f12fd3388d839ef4aa51165ea0e60e4869b50b7ccb4f6fc","9cb7c5f710dc84d2e9500831a3e9a27afd3c3710f5a1b8744a50473e565b41fc","cf6b2edde490f303918809bfab1da8b6d059b50c160bec72005ff4c248bdd079","34693fb4a5e771e11668219221344dd1bd7d8b77ed005a1c1d965fb559be8406","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419",{"version":"e44ea2d6b7b853f6c81482416db43dafc11944561b810e469ae423085511ce7e","affectsGlobalScope":true},"f51b4042a3ac86f1f707500a9768f88d0b0c1fc3f3e45a73333283dea720cdc6",{"version":"a7289d79eb84a59d2475b4d0136b4404be3cfdd17c3ea46b9194add1d645df01","affectsGlobalScope":true},"0bb26fa2a90ee890eed57ee812c71fa84d3d07850163ec4a204de86412cc57c1","132ca47da601c60141dd6f10bd08c70d0620177e5638439df2464ec3945b6d98",{"version":"55d2bbae076fed7269c3e16faeb32f988f558427b7a1c3bf04aa7551ab86ae90","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","cf83847c9264dcd592b6c89c1542925b899b277228687f3638614e3fa784cf76","3a41ebe7f089d50f447466b35b6cabb8b584c0994fc9809d0cd0a4ebc41e1239","7693b90b3075deaccafd5efb467bf9f2b747a3075be888652ef73e64396d8628","0c42d6cba77d9ad1cf45256ccb8489aa502fe2dbee1ec9048a29d49f5d532e73","2cf89c17245db65d175d4ef699cd68187516f9b3ae5c572fc0b9ad60f35dc223","5f20d20b7607174caf1a6da9141aeb9f2142159ae2410ca30c7a0fccd1d19c99",{"version":"a34d65f61ec5aac5b53502c8b0bd4e00d217bccb95bf94d449e2571baa11fb8c","affectsGlobalScope":true},"8d42e5af5fb0a96a77e135ce84cc60636c9bad39d9dba043a4efe9d1bdeb3cc3","56fcc451e9065eb121c9cc4c1b9994a816306f3b0b3b1fce7ad59f0ac97a9999","8a6f12b74d3e6c4f5e1b918cb8e64ae16bc6756cf0d48bcc28a28e1bf26ca0cd","c3759b5bc5cc40f5988d86a497741a80fa91258629ae50a2b3735e774cd377cc","bf268a0aea37ad4ae3b7a9b58559190b6fc01ea16a31e35cd05817a0a60f895a","45dd82fb5aea9b12b2a90b427b28f3a014e8b2ee9b74087a5ab882841cb5fbc5",{"version":"d7dad6db394a3d9f7b49755e4b610fbf8ed6eb0c9810ae5f1a119f6b5d76de45","affectsGlobalScope":true},"48b2f9302651eb31acd5be69bb4e6b35797a7fcd6b77391d10a4ccadf7dc3609","0c8c917ef15498c827bd494a0ef365e9f76deb211f8acbb86932e20489310788","dd67d2b5e4e8a182a38de8e69fb736945eaa4588e0909c14e01a14bd3cc1fd1e",{"version":"9cdc2c6144b03822c9842505d09945bcf813b86827fdb260dd7586b63abc19bf","affectsGlobalScope":true},{"version":"2923dee3c897f03e91b54a210cdbefea7290562f0ac4b948667d4c9ee844b79e","affectsGlobalScope":true},"79169698d09a2be54b14f3bcad2575b414bf3525063fde0a1e4fcd5d6efd380e","051d939bcf77caa3cef3282708ab3a6fdfb741a7366e1d74a9e7603b67417ec3","0be79b3ff0f16b6c2f9bc8c4cc7097ea417d8d67f8267f7e1eec8e32b548c2ff","1c61ffa3a71b77363b30d19832c269ef62fba787f5610cac7254728d3b69ab2e","a234d62ae81d012ebf23898a45672edf3e5c93ecf5a438a42b96c08dd68cde43","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","09ed02a725db002693236b6dfc49b2c6eb5557be1421d7fbe4f07cfe38211d92","09d801ff4a303d4976d4b9cb94af3a9097c4a70345e662d176975872d2998e51","c8558b01389b5f7610ac293aa612ccea2ae64d83af43b49f8142f190be1f414c","c40fdf7b2e18df49ce0568e37f0292c12807a0748be79e272745e7216bed2606",{"version":"b10b426c56e220b5093bf8a2446ee47af47263b7b1a03f4b18e42326b231b111","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","b4635ef36bee17e1304337d591c3b6b461ecdbc1876d0effbe6a581e62201fe5","205d50c24359ead003dc537b9b65d2a64208dfdffe368f403cf9e0357831db9e","1265fddcd0c68be9d2a3b29805d0280484c961264dd95e0b675f7bd91f777e78",{"version":"e4507242542bd499238f693d88b2d32e22177cc508854625f87bcc9bc3fa1256","affectsGlobalScope":true},{"version":"d942354e4966a98d3a92d1b1af0b4ac06f33af3f88116743e2c304c027ca26ef","affectsGlobalScope":true},"39f0808e5be3cb38674726c21fe2eb453c55e48a901679b4ce30fef85549b892","6afd66a7432ef100027ea110449e874196381e019e30eda7e7d8ca390366b7a8","befb8a9a78ac99d8fbc3ed392810489a7b90760c7a58934e8f1c8538f581cff3","e670bdf01540d35c170fae68edfd2f288eff909936780c379d6a9103b787b22c","867f95abf1df444aab146b19847391fc2f922a55f6a970a27ed8226766cee29f",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"88003d9ab15507806f41b120be6d407c1afe566c2f6689ebe3a034dd5ec0c8dc","6adaa01cba6e7bae17d8291089e9e38bfc3fffcd522e2161214cbaccab4c1b2b","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","c79bd2f3e5c05e7ad80dc82ce8d339cac23ac1f5e6cfab96c860bb70d5162873","e3328cedfe4d7fac23ba75d00bf5169269800ab949d0837cd88c4211a52c3762","cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec",{"version":"c8950367d1812758e9e354c695c60c3e6311bf2cd98b9f9eb469a19df8a9a486","affectsGlobalScope":true},"dd89872dd0647dfd63665f3d525c06d114310a2f7a5a9277e5982a152b31be2b","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","cc0700b1b97e18a3d5d9184470502d8762ec85158819d662730c3a8c5d702584","9871b7ee672bc16c78833bdab3052615834b08375cb144e4d2cba74473f4a589","c863198dae89420f3c552b5a03da6ed6d0acfa3807a64772b895db624b0de707","8b03a5e327d7db67112ebbc93b4f744133eda2c1743dbb0a990c61a8007823ef","86c73f2ee1752bac8eeeece234fd05dfcf0637a4fbd8032e4f5f43102faa8eec","42fad1f540271e35ca37cecda12c4ce2eef27f0f5cf0f8dd761d723c744d3159","ff3743a5de32bee10906aff63d1de726f6a7fd6ee2da4b8229054dfa69de2c34","83acd370f7f84f203e71ebba33ba61b7f1291ca027d7f9a662c6307d74e4ac22","1445cec898f90bdd18b2949b9590b3c012f5b7e1804e6e329fb0fe053946d5ec","0e5318ec2275d8da858b541920d9306650ae6ac8012f0e872fe66eb50321a669","cf530297c3fb3a92ec9591dd4fa229d58b5981e45fe6702a0bd2bea53a5e59be","c1f6f7d08d42148ddfe164d36d7aba91f467dbcb3caa715966ff95f55048b3a4","f4e9bf9103191ef3b3612d3ec0044ca4044ca5be27711fe648ada06fad4bcc85","0c1ee27b8f6a00097c2d6d91a21ee4d096ab52c1e28350f6362542b55380059a","7677d5b0db9e020d3017720f853ba18f415219fb3a9597343b1b1012cfd699f7","bc1c6bc119c1784b1a2be6d9c47addec0d83ef0d52c8fbe1f14a51b4dfffc675","52cf2ce99c2a23de70225e252e9822a22b4e0adb82643ab0b710858810e00bf1","770625067bb27a20b9826255a8d47b6b5b0a2d3dfcbd21f89904c731f671ba77","d1ed6765f4d7906a05968fb5cd6d1db8afa14dbe512a4884e8ea5c0f5e142c80","799c0f1b07c092626cf1efd71d459997635911bb5f7fc1196efe449bba87e965","2a184e4462b9914a30b1b5c41cf80c6d3428f17b20d3afb711fff3f0644001fd","9eabde32a3aa5d80de34af2c2206cdc3ee094c6504a8d0c2d6d20c7c179503cc","397c8051b6cfcb48aa22656f0faca2553c5f56187262135162ee79d2b2f6c966","a8ead142e0c87dcd5dc130eba1f8eeed506b08952d905c47621dc2f583b1bff9","a02f10ea5f73130efca046429254a4e3c06b5475baecc8f7b99a0014731be8b3","f77ff4cd234d3fd18ddd5aeadb6f94374511931976d41f4b9f594cb71f7ce6f3","4c9a0564bb317349de6a24eb4efea8bb79898fa72ad63a1809165f5bd42970dd","4f18b4e6081e5e980ef53ddf57b9c959d36cffe1eb153865f512a01aeffb5e1e","7f17d4846a88eca5fe71c4474ef687ee89c4acf9b5372ab9b2ee68644b7e0fe0","b444a410d34fb5e98aa5ee2b381362044f4884652e8bc8a11c8fe14bbd85518e","c35808c1f5e16d2c571aa65067e3cb95afeff843b259ecfa2fc107a9519b5392","14d5dc055143e941c8743c6a21fa459f961cbc3deedf1bfe47b11587ca4b3ef5","a3ad4e1fc542751005267d50a6298e6765928c0c3a8dce1572f2ba6ca518661c","f237e7c97a3a89f4591afd49ecb3bd8d14f51a1c4adc8fcae3430febedff5eb6","3ffdfbec93b7aed71082af62b8c3e0cc71261cc68d796665faa1e91604fbae8f","662201f943ed45b1ad600d03a90dffe20841e725203ced8b708c91fcd7f9379a","c9ef74c64ed051ea5b958621e7fb853fe3b56e8787c1587aefc6ea988b3c7e79","2462ccfac5f3375794b861abaa81da380f1bbd9401de59ffa43119a0b644253d","34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","58e0cee50add50d4b6d47a935e26aeb0080d98c9cf729f8af389511cdfa10526","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","75fa6a9be075402ea969c1fcec4bb1421f72efbc3e2f340032684cdd3115197c","2eae2c50864a720fad05e116a0121a6ee6b6231266763c75d1f3503ddc22714a"],"options":{"composite":true,"declaration":true,"esModuleInterop":true,"module":1,"outDir":"./","strict":true,"target":4},"fileIdsList":[[73,123],[123],[123,137],[47,123],[48,123],[48,50,123],[47,48,49,50,64,65,67,68,123],[48,62,63,123],[47,48,62,63,65,66,123],[48,50,52,123],[48,50,69,123],[48,51,53,54,55,56,57,58,59,60,61,123],[73,74,75,76,77,123],[73,75,123],[95,123,130],[123,132],[123,133],[123,139,142],[79,123],[82,123],[83,88,114,123],[84,94,95,102,111,122,123],[84,85,94,102,123],[86,123],[87,88,95,103,123],[88,111,119,123],[89,91,94,102,123],[90,123],[91,92,123],[93,94,123],[94,123],[94,95,96,111,122,123],[94,95,96,111,123],[94,97,102,111,122,123],[94,95,97,98,102,111,119,122,123],[97,99,111,119,122,123],[79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129],[94,100,123],[101,122,123,127],[91,94,102,111,123],[103,123],[104,123],[82,105,123],[106,121,123,127],[107,123],[108,123],[94,109,123],[109,110,123,125],[83,94,111,112,113,123],[83,111,113,123],[111,112,123],[114,123],[115,123],[94,117,118,123],[117,118,123],[88,102,119,123],[120,123],[102,121,123],[83,97,108,122,123],[88,123],[111,123,124],[123,125],[123,126],[83,88,94,96,105,111,122,123,125,127],[111,123,128],[123,146,185],[123,146,170,185],[123,185],[123,146],[123,146,171,185],[123,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184],[123,171,185],[123,187],[123,135,141],[123,139],[123,136,140],[123,138],[69,70,123],[69,123],[71,123],[69]],"referencedMap":[[75,1],[73,2],[135,2],[138,3],[48,4],[49,5],[68,6],[69,7],[64,8],[65,4],[67,9],[66,5],[51,6],[53,10],[54,6],[55,6],[56,11],[57,6],[58,6],[59,6],[60,6],[61,6],[62,12],[52,5],[50,5],[47,2],[63,5],[137,2],[78,13],[74,1],[76,14],[77,1],[131,15],[132,2],[133,16],[134,17],[143,18],[144,2],[145,2],[79,19],[80,19],[82,20],[83,21],[84,22],[85,23],[86,24],[87,25],[88,26],[89,27],[90,28],[91,29],[92,29],[93,30],[94,31],[95,32],[96,33],[81,2],[129,2],[97,34],[98,35],[99,36],[130,37],[100,38],[101,39],[102,40],[103,41],[104,42],[105,43],[106,44],[107,45],[108,46],[109,47],[110,48],[111,49],[113,50],[112,51],[114,52],[115,53],[116,2],[117,54],[118,55],[119,56],[120,57],[121,58],[122,59],[123,60],[124,61],[125,62],[126,63],[127,64],[128,65],[170,66],[171,67],[146,68],[149,68],[168,66],[169,66],[159,66],[158,69],[156,66],[151,66],[164,66],[162,66],[166,66],[150,66],[163,66],[167,66],[152,66],[153,66],[165,66],[147,66],[154,66],[155,66],[157,66],[161,66],[172,70],[160,66],[148,66],[185,71],[184,2],[179,70],[181,72],[180,70],[173,70],[174,70],[176,70],[178,70],[182,72],[183,72],[175,72],[177,72],[186,2],[187,2],[188,73],[136,2],[142,74],[140,75],[141,76],[139,77],[8,2],[9,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[46,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[36,2],[33,2],[34,2],[35,2],[37,2],[7,2],[38,2],[43,2],[44,2],[39,2],[40,2],[41,2],[42,2],[1,2],[45,2],[11,2],[10,2],[71,78],[70,79],[72,80]],"exportedModulesMap":[[75,1],[73,2],[135,2],[138,3],[48,4],[49,5],[68,6],[69,7],[64,8],[65,4],[67,9],[66,5],[51,6],[53,10],[54,6],[55,6],[56,11],[57,6],[58,6],[59,6],[60,6],[61,6],[62,12],[52,5],[50,5],[47,2],[63,5],[137,2],[78,13],[74,1],[76,14],[77,1],[131,15],[132,2],[133,16],[134,17],[143,18],[144,2],[145,2],[79,19],[80,19],[82,20],[83,21],[84,22],[85,23],[86,24],[87,25],[88,26],[89,27],[90,28],[91,29],[92,29],[93,30],[94,31],[95,32],[96,33],[81,2],[129,2],[97,34],[98,35],[99,36],[130,37],[100,38],[101,39],[102,40],[103,41],[104,42],[105,43],[106,44],[107,45],[108,46],[109,47],[110,48],[111,49],[113,50],[112,51],[114,52],[115,53],[116,2],[117,54],[118,55],[119,56],[120,57],[121,58],[122,59],[123,60],[124,61],[125,62],[126,63],[127,64],[128,65],[170,66],[171,67],[146,68],[149,68],[168,66],[169,66],[159,66],[158,69],[156,66],[151,66],[164,66],[162,66],[166,66],[150,66],[163,66],[167,66],[152,66],[153,66],[165,66],[147,66],[154,66],[155,66],[157,66],[161,66],[172,70],[160,66],[148,66],[185,71],[184,2],[179,70],[181,72],[180,70],[173,70],[174,70],[176,70],[178,70],[182,72],[183,72],[175,72],[177,72],[186,2],[187,2],[188,73],[136,2],[142,74],[140,75],[141,76],[139,77],[8,2],[9,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[46,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[36,2],[33,2],[34,2],[35,2],[37,2],[7,2],[38,2],[43,2],[44,2],[39,2],[40,2],[41,2],[42,2],[1,2],[45,2],[11,2],[10,2],[71,81],[70,81],[72,80]],"semanticDiagnosticsPerFile":[75,73,135,138,48,49,68,69,64,65,67,66,51,53,54,55,56,57,58,59,60,61,62,52,50,47,63,137,78,74,76,77,131,132,133,134,143,144,145,79,80,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,81,129,97,98,99,130,100,101,102,103,104,105,106,107,108,109,110,111,113,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,170,171,146,149,168,169,159,158,156,151,164,162,166,150,163,167,152,153,165,147,154,155,157,161,172,160,148,185,184,179,181,180,173,174,176,178,182,183,175,177,186,187,188,136,142,140,141,139,8,9,13,12,2,14,15,16,17,18,19,20,21,3,4,46,25,22,23,24,26,27,28,5,29,30,31,32,6,36,33,34,35,37,7,38,43,44,39,40,41,42,1,45,11,10,71,70,72],"latestChangedDtsFile":"./src/index.d.ts"},"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.dom.iterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.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","../node_modules/typescript/lib/lib.es2017.full.d.ts","../../../node_modules/@sdkgen/parser/src/token.ts","../../../node_modules/@sdkgen/parser/src/ast.ts","../../../node_modules/@sdkgen/parser/src/compatibility/index.ts","../../../node_modules/@sdkgen/parser/src/semantic/visitor.ts","../../../node_modules/@sdkgen/parser/src/semantic/01_check_multiple_declaration.ts","../../../node_modules/@sdkgen/parser/src/semantic/transformer.ts","../../../node_modules/@sdkgen/parser/src/semantic/02_give_struct_and_enum_names.ts","../../../node_modules/@sdkgen/parser/src/semantic/03_match_type_definitions.ts","../../../node_modules/@sdkgen/parser/src/semantic/04_check_dont_return_secret.ts","../../../node_modules/@sdkgen/parser/src/semantic/05_expand_spreads.ts","../../../node_modules/@sdkgen/parser/src/semantic/06_check_empty_struct_or_enum.ts","../../../node_modules/@sdkgen/parser/src/semantic/07_validate_recursive_types.ts","../../../node_modules/@sdkgen/parser/src/semantic/08_collect_struct_and_enum_types.ts","../../../node_modules/@sdkgen/parser/src/semantic/09_validate_annotations.ts","../../../node_modules/@sdkgen/parser/src/semantic/10_check_duplicate_members_on_enum.ts","../../../node_modules/@sdkgen/parser/src/semantic/analyser.ts","../../../node_modules/@sdkgen/parser/src/utils.ts","../../../node_modules/@sdkgen/parser/src/json.ts","../../../node_modules/@sdkgen/parser/src/lexer.ts","../../../node_modules/@sdkgen/parser/src/restparser.ts","../../../node_modules/@sdkgen/parser/src/parser.ts","../../../node_modules/@sdkgen/parser/src/helpers.ts","../../../node_modules/@sdkgen/parser/src/index.ts","../src/helpers.ts","../src/fsharp-server.ts","../src/index.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.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/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/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/connect/index.d.ts","../../../node_modules/@types/body-parser/index.d.ts","../../../node_modules/@types/bonjour/index.d.ts","../../../node_modules/@types/busboy/index.d.ts","../../../node_modules/@types/command-line-args/index.d.ts","../../../node_modules/@types/command-line-usage/index.d.ts","../../../node_modules/@types/mime/index.d.ts","../../../node_modules/@types/send/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/range-parser/index.d.ts","../../../node_modules/@types/express-serve-static-core/index.d.ts","../../../node_modules/@types/connect-history-api-fallback/index.d.ts","../../../node_modules/@types/eslint/helpers.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/eslint/index.d.ts","../../../node_modules/@types/eslint-scope/index.d.ts","../../../node_modules/@types/http-errors/index.d.ts","../../../node_modules/@types/serve-static/index.d.ts","../../../node_modules/@types/express/index.d.ts","../../../node_modules/@types/file-saver/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/http-proxy/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/request-ip/index.d.ts","../../../node_modules/@types/retry/index.d.ts","../../../node_modules/@types/semver/classes/semver.d.ts","../../../node_modules/@types/semver/functions/parse.d.ts","../../../node_modules/@types/semver/functions/valid.d.ts","../../../node_modules/@types/semver/functions/clean.d.ts","../../../node_modules/@types/semver/functions/inc.d.ts","../../../node_modules/@types/semver/functions/diff.d.ts","../../../node_modules/@types/semver/functions/major.d.ts","../../../node_modules/@types/semver/functions/minor.d.ts","../../../node_modules/@types/semver/functions/patch.d.ts","../../../node_modules/@types/semver/functions/prerelease.d.ts","../../../node_modules/@types/semver/functions/compare.d.ts","../../../node_modules/@types/semver/functions/rcompare.d.ts","../../../node_modules/@types/semver/functions/compare-loose.d.ts","../../../node_modules/@types/semver/functions/compare-build.d.ts","../../../node_modules/@types/semver/functions/sort.d.ts","../../../node_modules/@types/semver/functions/rsort.d.ts","../../../node_modules/@types/semver/functions/gt.d.ts","../../../node_modules/@types/semver/functions/lt.d.ts","../../../node_modules/@types/semver/functions/eq.d.ts","../../../node_modules/@types/semver/functions/neq.d.ts","../../../node_modules/@types/semver/functions/gte.d.ts","../../../node_modules/@types/semver/functions/lte.d.ts","../../../node_modules/@types/semver/functions/cmp.d.ts","../../../node_modules/@types/semver/functions/coerce.d.ts","../../../node_modules/@types/semver/classes/comparator.d.ts","../../../node_modules/@types/semver/classes/range.d.ts","../../../node_modules/@types/semver/functions/satisfies.d.ts","../../../node_modules/@types/semver/ranges/max-satisfying.d.ts","../../../node_modules/@types/semver/ranges/min-satisfying.d.ts","../../../node_modules/@types/semver/ranges/to-comparators.d.ts","../../../node_modules/@types/semver/ranges/min-version.d.ts","../../../node_modules/@types/semver/ranges/valid.d.ts","../../../node_modules/@types/semver/ranges/outside.d.ts","../../../node_modules/@types/semver/ranges/gtr.d.ts","../../../node_modules/@types/semver/ranges/ltr.d.ts","../../../node_modules/@types/semver/ranges/intersects.d.ts","../../../node_modules/@types/semver/ranges/simplify.d.ts","../../../node_modules/@types/semver/ranges/subset.d.ts","../../../node_modules/@types/semver/internals/identifiers.d.ts","../../../node_modules/@types/semver/index.d.ts","../../../node_modules/@types/serve-handler/index.d.ts","../../../node_modules/@types/serve-index/index.d.ts","../../../node_modules/@types/sockjs/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/swagger-ui-dist/absolute-path.d.ts","../../../node_modules/@types/swagger-ui-dist/index.d.ts","../../../node_modules/@types/ws/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","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},"d2f31f19e1ba6ed59be9259d660a239d9a3fcbbc8e038c6b2009bde34b175fed","0d1b618fb1d31b44a3e77e0940199cc12099b7e448ff596481039c5439160c5d","851153ecb19fe760635a2b8e54dad62a99c245a22abb116c781680cb3505a02e","e18aa16baef58d63b8a342de5e72edf39f2369970b42171a25d743d0ce4afc06","50ba5c02af36d9f80c7da35962cb61d1088a7af05ef5930d417981baccfbc9c3","fb06e8dde3cf19ccc0e47762be6242ec990d659557dbbe14c63113478adc2444","397d74c2f4c02a687edae40df94680f66d7a2ce96dce5dd15e8278006d07e946","7fa0685b27b50b8ef1604f5d71772ad6846b1996b4d9e4c396baef7aa6539b2a","df2bd579b982728787d31c4d8e40a8f442a9eb67e8973196d77e86968cf657a3","fbb4995857b44355618c8a61cb5e086462821cc282fc638cc3a94a2b814bc633","82fa765db527609317ea5ad4dc0fb366f1b57b4d7b226e18b3948e255c42274e","0f2e58dd677c3842b6ba89bbc80c30ff6ee38f49d93a12d765585963aebf3852","1e3ad408c7a5cbf4a401b53e5e0760bbb75d237a206a474e874d600345372a82","f1ebcaadc20f1aec3895b8e4a0b88d5de640d7892d57fbd0b5c9b14c78f6192e","dc203171e94764adb6341cc3336073e1d447932460dfeb81214d1946f2b6d5b2","dbd05088d511c6ce1811b5f24dfbd13bc483a01778d8cac7592a79c0316802b9","52100f9bfc215f16eb0a58af18050b27f4c2c307679f137d000882fe942a324a","314dc2eb5d1d6e583cf6eb3759fb5329a18b2c4db94a50e00d6225968c6e9c25","96f8d22597cd9bcb11728c4ff1724c0f664cd69f883487dc28bcfa21f0f01e71","f6725bcf9cc6c70f311aabd5ef3b7839535e416eea8e3c548e2dd99136f47489","31b7510503d7ed5a8a7c45c1f0e7ab1c9eedd0c674131fd797b371d4285ed518","674f4367342c630e9e181902750fd7765cf714dc917ff01ecf5418cd4bfbfac7","7cfa60d9e9948d1d9fbc67bbe7b742f8b913cbc043581dbca1a4b97475d69f07","b3fb528e7589083ed8f80ad73bd30695b9cd00d1cdce5859977b60feefabb347",{"version":"40a6177080f7b189704265a0c1135717b9cf2f47a2ed2e3e2a3d51a8c753beec","signature":"1ca6be3c72510871031c3ed171727b6be564eebe88253e215b0307a1aef276d8"},{"version":"5ed5f1f3f89729cb82df607335eee92cfecd032e847f03761954674cd9065168","signature":"7192c13fd3e76a74cf9fd2a7fc5a1610c1c3d9cfb072d56666c16d159e3be326"},"0db57498e965fe5c064e0aef24a9c6efeaae440f062e2f23649141d9340fa4a1","f713064ca751dc588bc13832137c418cb70cf0446de92ade60ad631071558fca","dfefd34e8ab60f41d0c130527d5092d6ce662dc9fa85bc8c97682baf65830b51","96c23535f4f9dd15beb767e070559ea672f6a35f103152836a67100605136a96","b0f4dd1a825912da8f12fd3388d839ef4aa51165ea0e60e4869b50b7ccb4f6fc","9cb7c5f710dc84d2e9500831a3e9a27afd3c3710f5a1b8744a50473e565b41fc","cf6b2edde490f303918809bfab1da8b6d059b50c160bec72005ff4c248bdd079","34693fb4a5e771e11668219221344dd1bd7d8b77ed005a1c1d965fb559be8406","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419",{"version":"e44ea2d6b7b853f6c81482416db43dafc11944561b810e469ae423085511ce7e","affectsGlobalScope":true},"f51b4042a3ac86f1f707500a9768f88d0b0c1fc3f3e45a73333283dea720cdc6",{"version":"a7289d79eb84a59d2475b4d0136b4404be3cfdd17c3ea46b9194add1d645df01","affectsGlobalScope":true},"0bb26fa2a90ee890eed57ee812c71fa84d3d07850163ec4a204de86412cc57c1","132ca47da601c60141dd6f10bd08c70d0620177e5638439df2464ec3945b6d98",{"version":"55d2bbae076fed7269c3e16faeb32f988f558427b7a1c3bf04aa7551ab86ae90","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","cf83847c9264dcd592b6c89c1542925b899b277228687f3638614e3fa784cf76","3a41ebe7f089d50f447466b35b6cabb8b584c0994fc9809d0cd0a4ebc41e1239","7693b90b3075deaccafd5efb467bf9f2b747a3075be888652ef73e64396d8628","0c42d6cba77d9ad1cf45256ccb8489aa502fe2dbee1ec9048a29d49f5d532e73","2cf89c17245db65d175d4ef699cd68187516f9b3ae5c572fc0b9ad60f35dc223","5f20d20b7607174caf1a6da9141aeb9f2142159ae2410ca30c7a0fccd1d19c99",{"version":"a34d65f61ec5aac5b53502c8b0bd4e00d217bccb95bf94d449e2571baa11fb8c","affectsGlobalScope":true},"8d42e5af5fb0a96a77e135ce84cc60636c9bad39d9dba043a4efe9d1bdeb3cc3","56fcc451e9065eb121c9cc4c1b9994a816306f3b0b3b1fce7ad59f0ac97a9999","8a6f12b74d3e6c4f5e1b918cb8e64ae16bc6756cf0d48bcc28a28e1bf26ca0cd","c3759b5bc5cc40f5988d86a497741a80fa91258629ae50a2b3735e774cd377cc","bf268a0aea37ad4ae3b7a9b58559190b6fc01ea16a31e35cd05817a0a60f895a","45dd82fb5aea9b12b2a90b427b28f3a014e8b2ee9b74087a5ab882841cb5fbc5",{"version":"d7dad6db394a3d9f7b49755e4b610fbf8ed6eb0c9810ae5f1a119f6b5d76de45","affectsGlobalScope":true},"48b2f9302651eb31acd5be69bb4e6b35797a7fcd6b77391d10a4ccadf7dc3609","0c8c917ef15498c827bd494a0ef365e9f76deb211f8acbb86932e20489310788","dd67d2b5e4e8a182a38de8e69fb736945eaa4588e0909c14e01a14bd3cc1fd1e",{"version":"9cdc2c6144b03822c9842505d09945bcf813b86827fdb260dd7586b63abc19bf","affectsGlobalScope":true},{"version":"2923dee3c897f03e91b54a210cdbefea7290562f0ac4b948667d4c9ee844b79e","affectsGlobalScope":true},"79169698d09a2be54b14f3bcad2575b414bf3525063fde0a1e4fcd5d6efd380e","051d939bcf77caa3cef3282708ab3a6fdfb741a7366e1d74a9e7603b67417ec3","0be79b3ff0f16b6c2f9bc8c4cc7097ea417d8d67f8267f7e1eec8e32b548c2ff","1c61ffa3a71b77363b30d19832c269ef62fba787f5610cac7254728d3b69ab2e","a234d62ae81d012ebf23898a45672edf3e5c93ecf5a438a42b96c08dd68cde43","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","09ed02a725db002693236b6dfc49b2c6eb5557be1421d7fbe4f07cfe38211d92","09d801ff4a303d4976d4b9cb94af3a9097c4a70345e662d176975872d2998e51","c8558b01389b5f7610ac293aa612ccea2ae64d83af43b49f8142f190be1f414c","c40fdf7b2e18df49ce0568e37f0292c12807a0748be79e272745e7216bed2606",{"version":"b10b426c56e220b5093bf8a2446ee47af47263b7b1a03f4b18e42326b231b111","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","b4635ef36bee17e1304337d591c3b6b461ecdbc1876d0effbe6a581e62201fe5","205d50c24359ead003dc537b9b65d2a64208dfdffe368f403cf9e0357831db9e","1265fddcd0c68be9d2a3b29805d0280484c961264dd95e0b675f7bd91f777e78",{"version":"e4507242542bd499238f693d88b2d32e22177cc508854625f87bcc9bc3fa1256","affectsGlobalScope":true},{"version":"d942354e4966a98d3a92d1b1af0b4ac06f33af3f88116743e2c304c027ca26ef","affectsGlobalScope":true},"39f0808e5be3cb38674726c21fe2eb453c55e48a901679b4ce30fef85549b892","6afd66a7432ef100027ea110449e874196381e019e30eda7e7d8ca390366b7a8","befb8a9a78ac99d8fbc3ed392810489a7b90760c7a58934e8f1c8538f581cff3","e670bdf01540d35c170fae68edfd2f288eff909936780c379d6a9103b787b22c","867f95abf1df444aab146b19847391fc2f922a55f6a970a27ed8226766cee29f",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"88003d9ab15507806f41b120be6d407c1afe566c2f6689ebe3a034dd5ec0c8dc","82819f9ecc249a6a3e284003540d02ea1b1f56f410c23231797b9e1e4b9622df","81a109b6bb6adf5ed70f2c7e6d907b8c3adcf7b47b5ee09701c5f97370fd29b7","492f985316614ee57642a7b019eb17154c36c988d858325c3c2ecbe8e9a4ee1c","f6abe5cbd6417d9909f86f3f5b498f05238d0d9fb5e4666e88cf2f2e5864efe4","5ae76b5a59f2f787e9eb2d4f1a066ceb4505a52bf8fe77ac321d791ef2e72000","29193c018378ca9c8033eaa974c02c1f503e8fcd8a2bf406057c53f7d3fa17a8","f6218314af6f492ce5461bdadac5b829f5b4b31a3d1da3d04e77ed0afe0829fb","7167d932a7e2e991084421bb22af20024ada5a046d948c742de0f89996de5d0b","c7da551241b7be719b7bd654ab12a5098c3206fbb189076dd2d8871011a6ab5a","e2d3bfa79f0fad3ad67dfb0685c50dbe19b364a440160a2d40d0e3f44c75938c",{"version":"1c598f8d911f0bc39f04910c8c93f2f76fbb65f892ee5ecc38a2b58bb95af752","affectsGlobalScope":true},"87e4358eddd469426393408b4976bee1970c91634faa57a71f1db2c2f8dee9ba",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"42fe73978ddb3a82329bf41a116e921deb266551e4f0ad9e9c7bdc581c24f085","dd89872dd0647dfd63665f3d525c06d114310a2f7a5a9277e5982a152b31be2b","fdd574c45ab01286d64b1e2e78e9ea647c4527e954e27ae281d372f5fba41567","f9ae3d889d1330f015ee918b4c59f21211d90211b42efb0fe87c333d4a8d43d8","4eadf1158f1ae8f7b0deea0f96b391359042cf74d1eb3ce1dacdb69de96e590d","f0120fc76274f614e7b8f5420a74abce69eee25b81e2084479fa426f33ccd46a","003f07cf566395059625b39785398f18652c8952e19790e7d6eeb22a9cbe0440","c91397074e95b112320dded35cbfed25c5c783b05a265e4c3f7c8f5abaec1fb2","6adaa01cba6e7bae17d8291089e9e38bfc3fffcd522e2161214cbaccab4c1b2b","e0a45e86c5b8b3ecb551a13d0e6bbe98ea69f15a9cd91a8a9e7cc3458dc69bf3","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","c79bd2f3e5c05e7ad80dc82ce8d339cac23ac1f5e6cfab96c860bb70d5162873","e3328cedfe4d7fac23ba75d00bf5169269800ab949d0837cd88c4211a52c3762","cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec",{"version":"c8950367d1812758e9e354c695c60c3e6311bf2cd98b9f9eb469a19df8a9a486","affectsGlobalScope":true},"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","0eacae49e20c8004e5022b3abc41cee708925a7bb0a52bafa2e416eca424d39d","58b3082802116f10782ecaa577a473499def44650204beb38a8541d4d98b757b",{"version":"29313b7a1d1342a1ee37224f895e2b77a9023d7c67241c873aaa9b51130db2e7","affectsGlobalScope":true},"199f9ead0daf25ae4c5632e3d1f42570af59685294a38123eef457407e13f365","cc0700b1b97e18a3d5d9184470502d8762ec85158819d662730c3a8c5d702584","9871b7ee672bc16c78833bdab3052615834b08375cb144e4d2cba74473f4a589","c863198dae89420f3c552b5a03da6ed6d0acfa3807a64772b895db624b0de707","8b03a5e327d7db67112ebbc93b4f744133eda2c1743dbb0a990c61a8007823ef","86c73f2ee1752bac8eeeece234fd05dfcf0637a4fbd8032e4f5f43102faa8eec","42fad1f540271e35ca37cecda12c4ce2eef27f0f5cf0f8dd761d723c744d3159","ff3743a5de32bee10906aff63d1de726f6a7fd6ee2da4b8229054dfa69de2c34","83acd370f7f84f203e71ebba33ba61b7f1291ca027d7f9a662c6307d74e4ac22","1445cec898f90bdd18b2949b9590b3c012f5b7e1804e6e329fb0fe053946d5ec","0e5318ec2275d8da858b541920d9306650ae6ac8012f0e872fe66eb50321a669","cf530297c3fb3a92ec9591dd4fa229d58b5981e45fe6702a0bd2bea53a5e59be","c1f6f7d08d42148ddfe164d36d7aba91f467dbcb3caa715966ff95f55048b3a4","f4e9bf9103191ef3b3612d3ec0044ca4044ca5be27711fe648ada06fad4bcc85","0c1ee27b8f6a00097c2d6d91a21ee4d096ab52c1e28350f6362542b55380059a","7677d5b0db9e020d3017720f853ba18f415219fb3a9597343b1b1012cfd699f7","bc1c6bc119c1784b1a2be6d9c47addec0d83ef0d52c8fbe1f14a51b4dfffc675","52cf2ce99c2a23de70225e252e9822a22b4e0adb82643ab0b710858810e00bf1","770625067bb27a20b9826255a8d47b6b5b0a2d3dfcbd21f89904c731f671ba77","d1ed6765f4d7906a05968fb5cd6d1db8afa14dbe512a4884e8ea5c0f5e142c80","799c0f1b07c092626cf1efd71d459997635911bb5f7fc1196efe449bba87e965","2a184e4462b9914a30b1b5c41cf80c6d3428f17b20d3afb711fff3f0644001fd","9eabde32a3aa5d80de34af2c2206cdc3ee094c6504a8d0c2d6d20c7c179503cc","397c8051b6cfcb48aa22656f0faca2553c5f56187262135162ee79d2b2f6c966","a8ead142e0c87dcd5dc130eba1f8eeed506b08952d905c47621dc2f583b1bff9","a02f10ea5f73130efca046429254a4e3c06b5475baecc8f7b99a0014731be8b3","f77ff4cd234d3fd18ddd5aeadb6f94374511931976d41f4b9f594cb71f7ce6f3","4c9a0564bb317349de6a24eb4efea8bb79898fa72ad63a1809165f5bd42970dd","4f18b4e6081e5e980ef53ddf57b9c959d36cffe1eb153865f512a01aeffb5e1e","7f17d4846a88eca5fe71c4474ef687ee89c4acf9b5372ab9b2ee68644b7e0fe0","b444a410d34fb5e98aa5ee2b381362044f4884652e8bc8a11c8fe14bbd85518e","c35808c1f5e16d2c571aa65067e3cb95afeff843b259ecfa2fc107a9519b5392","14d5dc055143e941c8743c6a21fa459f961cbc3deedf1bfe47b11587ca4b3ef5","a3ad4e1fc542751005267d50a6298e6765928c0c3a8dce1572f2ba6ca518661c","f237e7c97a3a89f4591afd49ecb3bd8d14f51a1c4adc8fcae3430febedff5eb6","3ffdfbec93b7aed71082af62b8c3e0cc71261cc68d796665faa1e91604fbae8f","662201f943ed45b1ad600d03a90dffe20841e725203ced8b708c91fcd7f9379a","c9ef74c64ed051ea5b958621e7fb853fe3b56e8787c1587aefc6ea988b3c7e79","2462ccfac5f3375794b861abaa81da380f1bbd9401de59ffa43119a0b644253d","34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","58e0cee50add50d4b6d47a935e26aeb0080d98c9cf729f8af389511cdfa10526","b23d7d2e77430ad89e76242d953259afcbed6f23a74c8fbd247abb31fd4ad1fa","13ac133423d83cd4dc7d819a425cf78fbf2f8262fa818916d264e2abfb2ced6e","72c8ac810cce2f70a9de1b4b1ba65db76e29369693da1a53c70b879d2ad513bb","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","e59c13a739b9fbb0e9200e3140bf3f40358fffe0ab7eb661e5bc48d0d0f82c9c","dbd92ef431488d837877f02a9e54b35672810806eed41047f55cb723e823e2fe","c4f439b1def30f14d145a0927619748f933adacd38390f6dae3fe5591df2f14c","75fa6a9be075402ea969c1fcec4bb1421f72efbc3e2f340032684cdd3115197c","2eae2c50864a720fad05e116a0121a6ee6b6231266763c75d1f3503ddc22714a"],"options":{"composite":true,"declaration":true,"esModuleInterop":true,"module":1,"outDir":"./","strict":true,"target":4},"fileIdsList":[[73,123],[123],[123,159],[47,123],[48,123],[48,50,123],[47,48,49,50,64,65,67,68,123],[48,62,63,123],[47,48,62,63,65,66,123],[48,50,52,123],[48,50,69,123],[48,51,53,54,55,56,57,58,59,60,61,123],[73,74,75,76,77,123],[73,75,123],[97,123,130,131],[89,123,130],[97,111,123,130],[122,123,130,141],[97,123,130],[123,144,146],[123,143,144,145],[94,97,123,130,138,139,140],[123,132,139,141,149],[95,123,130],[94,97,99,102,111,122,123,130],[123,154],[123,155],[123,161,164],[79,123],[82,123],[83,88,114,123],[84,94,95,102,111,122,123],[84,85,94,102,123],[86,123],[87,88,95,103,123],[88,111,119,123],[89,91,94,102,123],[90,123],[91,92,123],[93,94,123],[94,123],[94,95,96,111,122,123],[94,95,96,111,123],[94,97,102,111,122,123],[94,95,97,98,102,111,119,122,123],[97,99,111,119,122,123],[79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129],[94,100,123],[101,122,123,127],[91,94,102,111,123],[103,123],[104,123],[82,105,123],[106,121,123,127],[107,123],[108,123],[94,109,123],[109,110,123,125],[83,94,111,112,113,123],[83,111,113,123],[111,112,123],[114,123],[115,123],[94,117,118,123],[117,118,123],[88,102,119,123],[120,123],[102,121,123],[83,97,108,122,123],[88,123],[111,123,124],[123,125],[123,126],[83,88,94,96,105,111,122,123,125,127],[111,123,128],[123,172,211],[123,172,196,211],[123,211],[123,172],[123,172,197,211],[123,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,203,204,205,206,207,208,209,210],[123,197,211],[95,111,123,130,137],[95,97,123,130],[95,123,150],[97,123,130,137,148],[123,216],[94,97,99,111,119,122,123,128,130],[123,219],[123,157,163],[123,161],[123,158,162],[123,160],[69,70,123],[69,123],[71,123],[69]],"referencedMap":[[75,1],[73,2],[157,2],[160,3],[48,4],[49,5],[68,6],[69,7],[64,8],[65,4],[67,9],[66,5],[51,6],[53,10],[54,6],[55,6],[56,11],[57,6],[58,6],[59,6],[60,6],[61,6],[62,12],[52,5],[50,5],[47,2],[63,5],[159,2],[78,13],[74,1],[76,14],[77,1],[132,15],[133,16],[134,17],[135,2],[136,2],[142,18],[131,19],[147,20],[143,2],[146,21],[144,2],[141,22],[150,23],[151,2],[152,24],[148,2],[153,25],[154,2],[155,26],[156,27],[165,28],[145,2],[166,2],[137,2],[167,2],[168,2],[79,29],[80,29],[82,30],[83,31],[84,32],[85,33],[86,34],[87,35],[88,36],[89,37],[90,38],[91,39],[92,39],[93,40],[94,41],[95,42],[96,43],[81,2],[129,2],[97,44],[98,45],[99,46],[130,47],[100,48],[101,49],[102,50],[103,51],[104,52],[105,53],[106,54],[107,55],[108,56],[109,57],[110,58],[111,59],[113,60],[112,61],[114,62],[115,63],[116,2],[117,64],[118,65],[119,66],[120,67],[121,68],[122,69],[123,70],[124,71],[125,72],[126,73],[127,74],[128,75],[169,2],[139,2],[140,2],[170,19],[171,2],[196,76],[197,77],[172,78],[175,78],[194,76],[195,76],[185,76],[184,79],[182,76],[177,76],[190,76],[188,76],[192,76],[176,76],[189,76],[193,76],[178,76],[179,76],[191,76],[173,76],[180,76],[181,76],[183,76],[187,76],[198,80],[186,76],[174,76],[211,81],[210,2],[205,80],[207,82],[206,80],[199,80],[200,80],[202,80],[204,80],[208,82],[209,82],[201,82],[203,82],[138,83],[212,84],[213,85],[149,86],[214,19],[215,2],[216,2],[217,87],[218,88],[219,2],[220,89],[158,2],[164,90],[162,91],[163,92],[161,93],[8,2],[9,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[46,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[36,2],[33,2],[34,2],[35,2],[37,2],[7,2],[38,2],[43,2],[44,2],[39,2],[40,2],[41,2],[42,2],[1,2],[45,2],[11,2],[10,2],[71,94],[70,95],[72,96]],"exportedModulesMap":[[75,1],[73,2],[157,2],[160,3],[48,4],[49,5],[68,6],[69,7],[64,8],[65,4],[67,9],[66,5],[51,6],[53,10],[54,6],[55,6],[56,11],[57,6],[58,6],[59,6],[60,6],[61,6],[62,12],[52,5],[50,5],[47,2],[63,5],[159,2],[78,13],[74,1],[76,14],[77,1],[132,15],[133,16],[134,17],[135,2],[136,2],[142,18],[131,19],[147,20],[143,2],[146,21],[144,2],[141,22],[150,23],[151,2],[152,24],[148,2],[153,25],[154,2],[155,26],[156,27],[165,28],[145,2],[166,2],[137,2],[167,2],[168,2],[79,29],[80,29],[82,30],[83,31],[84,32],[85,33],[86,34],[87,35],[88,36],[89,37],[90,38],[91,39],[92,39],[93,40],[94,41],[95,42],[96,43],[81,2],[129,2],[97,44],[98,45],[99,46],[130,47],[100,48],[101,49],[102,50],[103,51],[104,52],[105,53],[106,54],[107,55],[108,56],[109,57],[110,58],[111,59],[113,60],[112,61],[114,62],[115,63],[116,2],[117,64],[118,65],[119,66],[120,67],[121,68],[122,69],[123,70],[124,71],[125,72],[126,73],[127,74],[128,75],[169,2],[139,2],[140,2],[170,19],[171,2],[196,76],[197,77],[172,78],[175,78],[194,76],[195,76],[185,76],[184,79],[182,76],[177,76],[190,76],[188,76],[192,76],[176,76],[189,76],[193,76],[178,76],[179,76],[191,76],[173,76],[180,76],[181,76],[183,76],[187,76],[198,80],[186,76],[174,76],[211,81],[210,2],[205,80],[207,82],[206,80],[199,80],[200,80],[202,80],[204,80],[208,82],[209,82],[201,82],[203,82],[138,83],[212,84],[213,85],[149,86],[214,19],[215,2],[216,2],[217,87],[218,88],[219,2],[220,89],[158,2],[164,90],[162,91],[163,92],[161,93],[8,2],[9,2],[13,2],[12,2],[2,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[3,2],[4,2],[46,2],[25,2],[22,2],[23,2],[24,2],[26,2],[27,2],[28,2],[5,2],[29,2],[30,2],[31,2],[32,2],[6,2],[36,2],[33,2],[34,2],[35,2],[37,2],[7,2],[38,2],[43,2],[44,2],[39,2],[40,2],[41,2],[42,2],[1,2],[45,2],[11,2],[10,2],[71,97],[70,97],[72,96]],"semanticDiagnosticsPerFile":[75,73,157,160,48,49,68,69,64,65,67,66,51,53,54,55,56,57,58,59,60,61,62,52,50,47,63,159,78,74,76,77,132,133,134,135,136,142,131,147,143,146,144,141,150,151,152,148,153,154,155,156,165,145,166,137,167,168,79,80,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,81,129,97,98,99,130,100,101,102,103,104,105,106,107,108,109,110,111,113,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,169,139,140,170,171,196,197,172,175,194,195,185,184,182,177,190,188,192,176,189,193,178,179,191,173,180,181,183,187,198,186,174,211,210,205,207,206,199,200,202,204,208,209,201,203,138,212,213,149,214,215,216,217,218,219,220,158,164,162,163,161,8,9,13,12,2,14,15,16,17,18,19,20,21,3,4,46,25,22,23,24,26,27,28,5,29,30,31,32,6,36,33,34,35,37,7,38,43,44,39,40,41,42,1,45,11,10,71,70,72],"latestChangedDtsFile":"./src/index.d.ts"},"version":"4.9.5"}
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@sdkgen/fsharp-generator",
3
- "version": "0.0.0-dev.20230929190043",
3
+ "version": "0.0.0-dev.20231002144112",
4
4
  "description": "",
5
- "main": "dist/src/index.js",
5
+ "main": "src/index.ts",
6
6
  "scripts": {
7
7
  "test": "jest --passWithNoTests",
8
8
  "eslint:fix": "eslint --fix '{src,spec}/**/*.ts'",
@@ -22,6 +22,9 @@
22
22
  "access": "public"
23
23
  },
24
24
  "homepage": "https://github.com/sdkgen/sdkgen#readme",
25
+ "dependencies": {
26
+ "@sdkgen/parser": "^0.0.0-dev.20231002144112"
27
+ },
25
28
  "devDependencies": {
26
29
  "@cubos/eslint-config": "^2.2.0",
27
30
  "@types/jest": "^29.0.0",
@@ -48,8 +51,5 @@
48
51
  "/node_modules/"
49
52
  ]
50
53
  },
51
- "dependencies": {
52
- "@sdkgen/parser": "0.0.0-dev.20230929190043"
53
- },
54
- "types": "dist/src/index.d.ts"
54
+ "gitHead": "85c11927f0704a14da62d908005ec99c2e3b199f"
55
55
  }
@@ -0,0 +1,104 @@
1
+ import type { AstRoot } from "@sdkgen/parser";
2
+ import { astToJson, VoidPrimitiveType } from "@sdkgen/parser";
3
+
4
+ import { capitalize, decodeType, encodeType, generateEnum, generateStruct, generateTypeName, ident } from "./helpers";
5
+
6
+ export function generateFSharpServerSource(ast: AstRoot): string {
7
+ let code = `module rec SdkgenGenerated
8
+ open Sdkgen.Runtime
9
+ open Sdkgen.Helpers
10
+ open Sdkgen.Context
11
+ open System.Threading.Tasks
12
+ open System.Text.Json
13
+ open System
14
+ open System.Globalization
15
+ #if NET5_0
16
+ // To use tasks as computation expression in .NET 5 install https://www.nuget.org/packages/TaskBuilder.fs/
17
+ open FSharp.Control.Tasks.V2.ContextInsensitive
18
+ #endif
19
+ `;
20
+
21
+ for (const error of ast.errors) {
22
+ code += `
23
+ type ${error.name}Exception =
24
+ inherit SdkgenException
25
+
26
+ new(message: string) = {
27
+ inherit SdkgenException("${error.name}", message, null)
28
+ }
29
+
30
+ new(message: string, inner: Exception) = {
31
+ inherit SdkgenException("${error.name}", message, inner)
32
+ }\n`;
33
+ }
34
+
35
+ for (const type of ast.enumTypes) {
36
+ code += `\n${generateEnum(type)}\n`;
37
+ }
38
+
39
+ for (const type of ast.structTypes) {
40
+ code += `\n${generateStruct(type)}\n`;
41
+ }
42
+
43
+ code += `
44
+ type Api() =`;
45
+
46
+ for (const op of ast.operations) {
47
+ const returnTypeAngle = op.returnType instanceof VoidPrimitiveType ? "" : `<${generateTypeName(op.returnType)}>`;
48
+
49
+ const argsInRecord = op.args.length > 0 ? `{| ${op.args.map(arg => `${arg.name}: ${generateTypeName(arg.type)};`).join("")} |} ->` : "";
50
+
51
+ code += `
52
+ member val ${capitalize(op.name)}: Context -> ${argsInRecord} Task${returnTypeAngle} =
53
+ fun _ -> (raise (FatalException("Function '${op.name}' not implemented.")))
54
+ with get, set
55
+ `;
56
+ }
57
+
58
+ code += `
59
+ interface BaseApi with
60
+ member __.ExecuteFunction(context_: Context, resultWriter_: Utf8JsonWriter) : Task =
61
+ task {
62
+ match context_.Name with`;
63
+
64
+ for (const op of ast.operations) {
65
+ code += `
66
+ | ${JSON.stringify(op.name)} ->`;
67
+ for (const arg of op.args) {
68
+ code += `
69
+ let ${arg.name}Json_ =
70
+ match context_.Args.TryGetValue(${JSON.stringify(arg.name)}) with
71
+ | true, v -> v
72
+ | _ -> raise (FatalException("'${op.name}().args.${arg.name}' must be set to a value of type ${arg.type.name}."))
73
+
74
+ let ${ident(arg.name)} =
75
+ ${decodeType(arg.type, `${arg.name}Json_`, `"${op.name}().args.${arg.name}"`, ident(arg.name)).replace(/\n/gu, "\n ")}`;
76
+ }
77
+
78
+ if (op.returnType instanceof VoidPrimitiveType) {
79
+ code += `
80
+
81
+ do! (__.${capitalize(op.name)} context_ ${op.args.length > 0 ? "{|" : ""} ${op.args
82
+ .map(arg => `${arg.name} = ${ident(arg.name)}`)
83
+ .join("; ")} ${op.args.length > 0 ? "|}" : ""})
84
+ `;
85
+ } else {
86
+ code += `
87
+
88
+ let! result_ = (__.${capitalize(op.name)} context_ ${op.args.length > 0 ? "{|" : ""} ${op.args
89
+ .map(arg => `${arg.name} = ${ident(arg.name)}`)
90
+ .join("; ")} ${op.args.length > 0 ? "|}" : ""})
91
+ ${encodeType(op.returnType, `result_`, `"${op.name}().ret"`, 1, false).replace(/\n/gu, "\n ")}`;
92
+ }
93
+ }
94
+
95
+ code += `
96
+
97
+ | _ -> raise (FatalException($"Unknown function '{context_.Name}'."))
98
+ } :> Task`;
99
+
100
+ code += `
101
+ member __.GetAstJson() = """${JSON.stringify(astToJson(ast), null, 4).replace(/\n/gu, "\n ")}""";`;
102
+
103
+ return code;
104
+ }
package/src/helpers.ts ADDED
@@ -0,0 +1,578 @@
1
+ import type { Type } from "@sdkgen/parser";
2
+ import {
3
+ ArrayType,
4
+ Base64PrimitiveType,
5
+ BigIntPrimitiveType,
6
+ BoolPrimitiveType,
7
+ BytesPrimitiveType,
8
+ CnpjPrimitiveType,
9
+ CpfPrimitiveType,
10
+ DatePrimitiveType,
11
+ DateTimePrimitiveType,
12
+ EmailPrimitiveType,
13
+ EnumType,
14
+ FloatPrimitiveType,
15
+ HexPrimitiveType,
16
+ HtmlPrimitiveType,
17
+ IntPrimitiveType,
18
+ JsonPrimitiveType,
19
+ MoneyPrimitiveType,
20
+ OptionalType,
21
+ StringPrimitiveType,
22
+ StructType,
23
+ TypeReference,
24
+ UIntPrimitiveType,
25
+ UrlPrimitiveType,
26
+ UuidPrimitiveType,
27
+ VoidPrimitiveType,
28
+ XmlPrimitiveType,
29
+ } from "@sdkgen/parser";
30
+
31
+ const reservedWords = [
32
+ "abstract",
33
+ "as",
34
+ "base",
35
+ "bool",
36
+ "break",
37
+ "byte",
38
+ "case",
39
+ "catch",
40
+ "char",
41
+ "checked",
42
+ "class",
43
+ "const",
44
+ "continue",
45
+ "decimal",
46
+ "default",
47
+ "delegate",
48
+ "do",
49
+ "double",
50
+ "else",
51
+ "enum",
52
+ "event",
53
+ "explicit",
54
+ "extern",
55
+ "false",
56
+ "finally",
57
+ "fixed",
58
+ "float",
59
+ "for",
60
+ "foreach",
61
+ "goto",
62
+ "if",
63
+ "implicit",
64
+ "in",
65
+ "int",
66
+ "interface",
67
+ "internal",
68
+ "is",
69
+ "lock",
70
+ "long",
71
+ "namespace",
72
+ "new",
73
+ "null",
74
+ "object",
75
+ "operator",
76
+ "out",
77
+ "override",
78
+ "params",
79
+ "private",
80
+ "protected",
81
+ "public",
82
+ "readonly",
83
+ "ref",
84
+ "return",
85
+ "sbyte",
86
+ "sealed",
87
+ "short",
88
+ "sizeof",
89
+ "stackalloc",
90
+ "static",
91
+ "string",
92
+ "struct",
93
+ "switch",
94
+ "this",
95
+ "throw",
96
+ "true",
97
+ "try",
98
+ "typeof",
99
+ "uint",
100
+ "ulong",
101
+ "unchecked",
102
+ "unsafe",
103
+ "ushort",
104
+ "using",
105
+ "using",
106
+ "static",
107
+ "virtual",
108
+ "void",
109
+ "volatile",
110
+ "while",
111
+ "type",
112
+ "end",
113
+ "id",
114
+ ];
115
+
116
+ const typesWithNativeNullable: Function[] = [
117
+ StringPrimitiveType,
118
+ HtmlPrimitiveType,
119
+ CpfPrimitiveType,
120
+ CnpjPrimitiveType,
121
+ BytesPrimitiveType,
122
+ EmailPrimitiveType,
123
+ UrlPrimitiveType,
124
+ UuidPrimitiveType,
125
+ HexPrimitiveType,
126
+ Base64PrimitiveType,
127
+ XmlPrimitiveType,
128
+ StructType,
129
+ ArrayType,
130
+ ];
131
+
132
+ const needsTempVarForNullable: Function[] = [
133
+ BigIntPrimitiveType,
134
+ DatePrimitiveType,
135
+ DateTimePrimitiveType,
136
+ FloatPrimitiveType,
137
+ IntPrimitiveType,
138
+ MoneyPrimitiveType,
139
+ UIntPrimitiveType,
140
+ ArrayType,
141
+ ];
142
+
143
+ export function ident(name: string): string {
144
+ return reservedWords.includes(name) ? `${name}'` : name;
145
+ }
146
+
147
+ export function capitalize(name: string): string {
148
+ return name[0].toUpperCase() + name.slice(1);
149
+ }
150
+
151
+ export function generateTypeName(type: Type): string {
152
+ switch (type.constructor) {
153
+ case StringPrimitiveType:
154
+ return "string";
155
+ case IntPrimitiveType:
156
+ return "int";
157
+ case UIntPrimitiveType:
158
+ return "uint";
159
+ case FloatPrimitiveType:
160
+ return "double";
161
+ case BigIntPrimitiveType:
162
+ return "bigint";
163
+ case DatePrimitiveType:
164
+ case DateTimePrimitiveType:
165
+ return "DateTime";
166
+ case BoolPrimitiveType:
167
+ return "bool";
168
+ case BytesPrimitiveType:
169
+ return "byte[]";
170
+ case MoneyPrimitiveType:
171
+ return "decimal";
172
+ case UuidPrimitiveType:
173
+ return "Guid";
174
+ case CpfPrimitiveType:
175
+ case CnpjPrimitiveType:
176
+ case EmailPrimitiveType:
177
+ case HtmlPrimitiveType:
178
+ case UrlPrimitiveType:
179
+ case HexPrimitiveType:
180
+ case Base64PrimitiveType:
181
+ case XmlPrimitiveType:
182
+ return "string";
183
+ case VoidPrimitiveType:
184
+ return "void";
185
+ case JsonPrimitiveType:
186
+ return "JsonElement";
187
+ case OptionalType:
188
+ return `${generateTypeName((type as OptionalType).base)} option`;
189
+ case ArrayType:
190
+ return `${generateTypeName((type as ArrayType).base)} list`;
191
+ case StructType:
192
+ return type.name;
193
+ case EnumType:
194
+ return type.name;
195
+ case TypeReference:
196
+ return generateTypeName((type as TypeReference).type);
197
+ default:
198
+ throw new Error(`BUG: generateTypeName with ${type.constructor.name}`);
199
+ }
200
+ }
201
+
202
+ export function decodeType(type: Type, jsonElementVar: string, path: string, targetVar: string, suffix = 1, maybeNull = true): string {
203
+ switch (type.constructor) {
204
+ case IntPrimitiveType: {
205
+ return `
206
+ decodeInt32 ${jsonElementVar} ${path}
207
+ `
208
+ .replace(/\n {16}/gu, "\n")
209
+ .trim();
210
+ }
211
+
212
+ case UIntPrimitiveType: {
213
+ return `
214
+ decodeUInt32 ${jsonElementVar} ${path}
215
+ `
216
+ .replace(/\n {16}/gu, "\n")
217
+ .trim();
218
+ }
219
+
220
+ case MoneyPrimitiveType: {
221
+ return `
222
+ (decodeMoney ${jsonElementVar} ${path}) / 100m
223
+ `
224
+ .replace(/\n {16}/gu, "\n")
225
+ .trim();
226
+ }
227
+
228
+ case FloatPrimitiveType: {
229
+ return `
230
+ decodeFloat ${jsonElementVar} ${path}
231
+ `
232
+ .replace(/\n {16}/gu, "\n")
233
+ .trim();
234
+ }
235
+
236
+ case BigIntPrimitiveType: {
237
+ return `
238
+ decodeBigInt ${jsonElementVar} ${path}
239
+ `
240
+ .replace(/\n {16}/gu, "\n")
241
+ .trim();
242
+ }
243
+
244
+ case StringPrimitiveType: {
245
+ return `
246
+ decodeString ${jsonElementVar} ${path}
247
+ `
248
+ .replace(/\n {16}/gu, "\n")
249
+ .trim();
250
+ }
251
+
252
+ case HtmlPrimitiveType: {
253
+ // TODO: validate HTML
254
+ return `
255
+ decodeHtml ${jsonElementVar} ${path}
256
+ `
257
+ .replace(/\n {16}/gu, "\n")
258
+ .trim();
259
+ }
260
+
261
+ case CpfPrimitiveType: {
262
+ // TODO: validate CPF
263
+ return `
264
+ decodeCpf ${jsonElementVar} ${path}
265
+ `
266
+ .replace(/\n {16}/gu, "\n")
267
+ .trim();
268
+ }
269
+
270
+ case CnpjPrimitiveType: {
271
+ // TODO: validate CNPJ
272
+ return `
273
+ decodeCnpj ${jsonElementVar} ${path}
274
+ `
275
+ .replace(/\n {16}/gu, "\n")
276
+ .trim();
277
+ }
278
+
279
+ case EmailPrimitiveType: {
280
+ // TODO: validate Email
281
+ return `
282
+ decodeEmail ${jsonElementVar} ${path}
283
+ `
284
+ .replace(/\n {16}/gu, "\n")
285
+ .trim();
286
+ }
287
+
288
+ case UrlPrimitiveType: {
289
+ // TODO: validate URL
290
+ return `
291
+ decodeUrl ${jsonElementVar} ${path}
292
+ `
293
+ .replace(/\n {16}/gu, "\n")
294
+ .trim();
295
+ }
296
+
297
+ case UuidPrimitiveType: {
298
+ // TODO: validate UUID
299
+ return `
300
+ decodeUuid ${jsonElementVar} ${path}
301
+ `
302
+ .replace(/\n {16}/gu, "\n")
303
+ .trim();
304
+ }
305
+
306
+ case HexPrimitiveType: {
307
+ // TODO: validate Hex
308
+ return `
309
+ decodeHex ${jsonElementVar} ${path}
310
+ `
311
+ .replace(/\n {16}/gu, "\n")
312
+ .trim();
313
+ }
314
+
315
+ case Base64PrimitiveType: {
316
+ // TODO: validate Base64
317
+ return `
318
+ decodeBase64 ${jsonElementVar} ${path}
319
+ `
320
+ .replace(/\n {16}/gu, "\n")
321
+ .trim();
322
+ }
323
+
324
+ case XmlPrimitiveType: {
325
+ // TODO: validate XML
326
+ return `
327
+ decodeXml ${jsonElementVar} ${path}
328
+ `
329
+ .replace(/\n {16}/gu, "\n")
330
+ .trim();
331
+ }
332
+
333
+ case BoolPrimitiveType: {
334
+ return `
335
+ decodeBool ${jsonElementVar} ${path}
336
+ `
337
+ .replace(/\n {16}/gu, "\n")
338
+ .trim();
339
+ }
340
+
341
+ case BytesPrimitiveType: {
342
+ return `
343
+ decodeBytes ${jsonElementVar} ${path}
344
+ `
345
+ .replace(/\n {16}/gu, "\n")
346
+ .trim();
347
+ }
348
+
349
+ case TypeReference:
350
+ return decodeType((type as TypeReference).type, jsonElementVar, path, targetVar, suffix);
351
+ case OptionalType:
352
+ if (needsTempVarForNullable.includes((type as OptionalType).base.constructor)) {
353
+ return `match ${jsonElementVar}.ValueKind with
354
+ | JsonValueKind.Null | JsonValueKind.Undefined -> None
355
+ | _ ->
356
+ (${decodeType((type as OptionalType).base, jsonElementVar, path, targetVar, suffix, false).replace(
357
+ /\n/gu,
358
+ "\n ",
359
+ )}) |> Some
360
+ `
361
+ .replace(/\n {16}/gu, "\n")
362
+ .trim();
363
+ }
364
+
365
+ if ((type as ArrayType).base instanceof OptionalType || (type as ArrayType).base instanceof ArrayType) {
366
+ return `
367
+ (>.>) decodeOptional ${decodeType((type as OptionalType).base, jsonElementVar, path, targetVar, suffix, false)}
368
+ `
369
+ .replace(/\n {16}/gu, "\n")
370
+ .trim();
371
+ }
372
+
373
+ return `
374
+ decodeOptional ${decodeType((type as OptionalType).base, jsonElementVar, path, targetVar, suffix, false)}
375
+ `
376
+ .replace(/\n {16}/gu, "\n")
377
+ .trim();
378
+ case EnumType:
379
+ case StructType:
380
+ return `Decode${type.name} ${jsonElementVar} ${path}`;
381
+ case JsonPrimitiveType:
382
+ if (maybeNull) {
383
+ return `
384
+ ${jsonElementVar}
385
+ `
386
+ .replace(/\n {16}/gu, "\n")
387
+ .trim();
388
+ }
389
+
390
+ return `${targetVar} <- ${jsonElementVar}`;
391
+
392
+ case DateTimePrimitiveType: {
393
+ return `
394
+ decodeDateTime ${jsonElementVar} ${path}
395
+ `
396
+ .replace(/\n {16}/gu, "\n")
397
+ .trim();
398
+ }
399
+
400
+ case DatePrimitiveType: {
401
+ return `
402
+ decodeDate ${jsonElementVar} ${path}
403
+ `
404
+ .replace(/\n {16}/gu, "\n")
405
+ .trim();
406
+ }
407
+
408
+ case ArrayType: {
409
+ return `
410
+ match ${jsonElementVar}.ValueKind with
411
+ | JsonValueKind.Array ->
412
+ let mutable list_ = List.empty
413
+ for i1 in 0 .. (${jsonElementVar}.GetArrayLength() - 1) do
414
+ let item = ${jsonElementVar}.[i1]
415
+ let partialResult =
416
+ ${decodeType(
417
+ (type as ArrayType).base,
418
+ `${jsonElementVar}.[i1]`,
419
+ `${path.slice(0, -1)}.{i1}"`,
420
+ targetVar,
421
+ suffix,
422
+ false,
423
+ ).replace(/\n/gu, "\n ")}
424
+ list_ <- list_ |> List.append [ partialResult ]
425
+ list_
426
+ | _ -> raise (FatalException(${path.slice(0, -1)} must be an array."))
427
+ `
428
+ .replace(/\n {16}/gu, "\n")
429
+ .trim();
430
+ }
431
+
432
+ default:
433
+ throw new Error(`BUG: decodeType with ${type.constructor.name}`);
434
+ }
435
+ }
436
+
437
+ export function encodeType(type: Type, valueVar: string, path: string, suffix = 1, isRef = true): string {
438
+ switch (type.constructor) {
439
+ case StringPrimitiveType: {
440
+ return `resultWriter_.WriteStringValue(${valueVar})`;
441
+ }
442
+
443
+ case FloatPrimitiveType:
444
+ case UIntPrimitiveType:
445
+ case IntPrimitiveType: {
446
+ return `resultWriter_.WriteNumberValue(${valueVar})`;
447
+ }
448
+
449
+ case MoneyPrimitiveType: {
450
+ return `resultWriter_.WriteNumberValue(int (Math.Round(${valueVar} * 100m)))`;
451
+ }
452
+
453
+ case BigIntPrimitiveType: {
454
+ return `resultWriter_.WriteStringValue(${valueVar}.ToString())`;
455
+ }
456
+
457
+ case BoolPrimitiveType: {
458
+ return `resultWriter_.WriteBooleanValue(${valueVar})`;
459
+ }
460
+
461
+ case BytesPrimitiveType: {
462
+ return `resultWriter_.WriteStringValue(Convert.ToBase64String(${valueVar}))`;
463
+ }
464
+
465
+ case DateTimePrimitiveType: {
466
+ return `resultWriter_.WriteStringValue(${valueVar}.ToString("yyyy-MM-ddTHH:mm:ss.FFFFFF'Z'"))`;
467
+ }
468
+
469
+ case DatePrimitiveType: {
470
+ return `resultWriter_.WriteStringValue(${valueVar}.ToString("yyyy-MM-dd"))`;
471
+ }
472
+
473
+ // TODO: format those
474
+ case CpfPrimitiveType:
475
+ case CnpjPrimitiveType:
476
+ case EmailPrimitiveType:
477
+ case HtmlPrimitiveType:
478
+ case UrlPrimitiveType:
479
+ case UuidPrimitiveType:
480
+ case Base64PrimitiveType:
481
+ case HexPrimitiveType:
482
+ case XmlPrimitiveType: {
483
+ return `resultWriter_.WriteStringValue(${valueVar})`;
484
+ }
485
+
486
+ case OptionalType: {
487
+ let realBaseType = (type as OptionalType).base;
488
+
489
+ while (realBaseType instanceof TypeReference) {
490
+ realBaseType = realBaseType.type;
491
+ }
492
+
493
+ return `
494
+ if (${valueVar}.IsNone) then
495
+ resultWriter_.WriteNullValue()
496
+ else
497
+ ${encodeType(realBaseType, `${valueVar}.Value`, path, suffix, isRef)}
498
+ `
499
+ .replace(/\n {14}/gu, "\n")
500
+ .trim();
501
+ }
502
+
503
+ case TypeReference:
504
+ return encodeType((type as TypeReference).type, valueVar, path, suffix, isRef);
505
+ case EnumType:
506
+ return `Encode${type.name} ${valueVar} resultWriter_ ${path}`;
507
+ case StructType:
508
+ return `Encode${type.name} ${valueVar} resultWriter_ ${path}`;
509
+ case JsonPrimitiveType:
510
+ return `${valueVar}.WriteTo(resultWriter_)`;
511
+ case ArrayType: {
512
+ return `
513
+ resultWriter_.WriteStartArray()
514
+ for i${suffix} in 0..${valueVar}.Length - 1 do
515
+ ${encodeType((type as ArrayType).base, `${valueVar}.[i${suffix}]`, `${path}`, suffix + 1).replace(/\n/gu, "\n ")}
516
+ resultWriter_.WriteEndArray()
517
+ `
518
+ .replace(/\n {14}/gu, "\n")
519
+ .trim();
520
+ }
521
+
522
+ default:
523
+ throw new Error(`BUG: encodeType with ${type.constructor.name}`);
524
+ }
525
+ }
526
+
527
+ export function generateStruct(struct: StructType): string {
528
+ return `
529
+ type ${struct.name} = {
530
+ ${struct.fields.map(field => `${capitalize(field.name)}: ${generateTypeName(field.type)}`).join(";\n ")}
531
+ } with
532
+ static member Create (${struct.fields.map(field => `${ident(field.name)}: ${generateTypeName(field.type)}`).join(", ")}): ${struct.name} =
533
+ { ${struct.fields.map(field => `${capitalize(field.name)} = ${ident(field.name)}`).join("; ")} }
534
+
535
+ let Decode${struct.name} (json_: JsonElement) (path_: string): ${struct.name} =
536
+ if (json_.ValueKind <> JsonValueKind.Object) then raise (FatalException($"'{path_}' must be an object."))
537
+ ${struct.fields
538
+ .map(
539
+ field =>
540
+ `
541
+ let ${field.name}Json_ = decodeJsonElementStrict ${JSON.stringify(field.name)} json_ $"{path_}.${field.name}"
542
+ let ${ident(field.name)} =
543
+ ${decodeType(field.type, `${field.name}Json_`, `$"{path_}.${field.name}"`, ident(field.name)).replace(/\n/gu, "\n ")}
544
+ `,
545
+ )
546
+ .join("")}
547
+ { ${struct.fields.map(field => `${capitalize(field.name)} = ${ident(field.name)}`).join("; ")} }
548
+
549
+ let Encode${struct.name} (obj_: ${struct.name}) (resultWriter_: Utf8JsonWriter) (path_: string) =
550
+ resultWriter_.WriteStartObject()
551
+ ${struct.fields
552
+ .map(
553
+ field =>
554
+ `
555
+ resultWriter_.WritePropertyName(${JSON.stringify(field.name)})
556
+ ${encodeType(field.type, `obj_.${capitalize(field.name)}`, `$"{path_}.${field.name}"`).replace(/\n/gu, "\n ")}`,
557
+ )
558
+ .join("\n")}
559
+ resultWriter_.WriteEndObject()`;
560
+ }
561
+
562
+ export function generateEnum(type: EnumType): string {
563
+ return `
564
+ type ${type.name} =
565
+ ${type.values.map(({ value }) => `| ${capitalize(value)}`).join("\n ")}
566
+
567
+ let Decode${type.name} (json_: JsonElement) (path_: string): ${type.name} =
568
+ if (json_.ValueKind <> JsonValueKind.String) then raise (FatalException($"'{path_}' must be a string."))
569
+ match json_.GetString() with
570
+ ${type.values.map(({ value }) => `| "${value}" -> ${type.name}.${capitalize(value)}`).join("\n ")}
571
+ | _ -> raise (FatalException($"'{path_}' must be one of: (${type.values.map(({ value }) => `'${value}'`).join(", ")})."))
572
+
573
+ let Encode${type.name} (obj_: ${type.name}) (resultWriter_: Utf8JsonWriter) (path_: string) =
574
+ match obj_ with
575
+ ${type.values.map(({ value }) => `| ${type.name}.${capitalize(value)} -> resultWriter_.WriteStringValue("${value}")`).join("\n ")}
576
+
577
+ `;
578
+ }
package/src/index.ts ADDED
@@ -0,0 +1 @@
1
+ export * from "./fsharp-server";