@scalar/workspace-store 0.40.2 → 0.40.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/client.d.ts +7 -2
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +820 -681
  5. package/dist/entities/auth/index.js +96 -101
  6. package/dist/entities/auth/schema.d.ts +10 -0
  7. package/dist/entities/auth/schema.d.ts.map +1 -1
  8. package/dist/entities/auth/schema.js +42 -116
  9. package/dist/entities/history/index.js +80 -60
  10. package/dist/entities/history/schema.js +94 -88
  11. package/dist/events/bus.js +146 -93
  12. package/dist/events/definitions/analytics.js +1 -1
  13. package/dist/events/definitions/auth.js +1 -1
  14. package/dist/events/definitions/common.js +1 -1
  15. package/dist/events/definitions/cookie.js +1 -1
  16. package/dist/events/definitions/document.js +1 -1
  17. package/dist/events/definitions/environment.js +1 -1
  18. package/dist/events/definitions/hooks.js +1 -1
  19. package/dist/events/definitions/index.js +1 -1
  20. package/dist/events/definitions/meta.js +1 -1
  21. package/dist/events/definitions/operation.js +1 -1
  22. package/dist/events/definitions/server.js +1 -1
  23. package/dist/events/definitions/tabs.js +1 -1
  24. package/dist/events/definitions/tag.js +1 -1
  25. package/dist/events/definitions/ui.js +1 -1
  26. package/dist/events/definitions/workspace.js +1 -1
  27. package/dist/events/index.js +3 -9
  28. package/dist/events/listeners.js +20 -22
  29. package/dist/events/old-definitions.js +15 -12
  30. package/dist/helpers/deep-clone.js +33 -17
  31. package/dist/helpers/detect-changes-proxy.js +95 -57
  32. package/dist/helpers/general.js +78 -23
  33. package/dist/helpers/generate-unique-value.js +77 -45
  34. package/dist/helpers/get-fetch.js +12 -10
  35. package/dist/helpers/get-resolved-ref.js +11 -10
  36. package/dist/helpers/is-non-optional-security-requirement.js +3 -6
  37. package/dist/helpers/merge-object.js +71 -30
  38. package/dist/helpers/overrides-proxy.js +98 -58
  39. package/dist/helpers/unpack-proxy.js +60 -58
  40. package/dist/mutators/auth.js +358 -230
  41. package/dist/mutators/cookie.js +59 -42
  42. package/dist/mutators/document.js +104 -66
  43. package/dist/mutators/environment.js +97 -72
  44. package/dist/mutators/helpers.js +9 -13
  45. package/dist/mutators/index.js +62 -49
  46. package/dist/mutators/operation/body.js +88 -57
  47. package/dist/mutators/operation/extensions.js +20 -12
  48. package/dist/mutators/operation/helpers/fetch-request-to-har.js +144 -107
  49. package/dist/mutators/operation/helpers/fetch-response-to-har.js +143 -95
  50. package/dist/mutators/operation/helpers/get-parameter-position.js +12 -12
  51. package/dist/mutators/operation/helpers/har-to-operation.js +169 -132
  52. package/dist/mutators/operation/helpers/sync-path-parameters.js +109 -60
  53. package/dist/mutators/operation/history.js +60 -64
  54. package/dist/mutators/operation/index.js +25 -49
  55. package/dist/mutators/operation/operation.js +349 -240
  56. package/dist/mutators/operation/parameters.js +157 -93
  57. package/dist/mutators/server.js +213 -152
  58. package/dist/mutators/tabs.js +173 -130
  59. package/dist/mutators/tag.js +131 -97
  60. package/dist/mutators/workspace.js +72 -42
  61. package/dist/navigation/get-navigation-options.js +97 -84
  62. package/dist/navigation/helpers/get-openapi-object.js +46 -29
  63. package/dist/navigation/helpers/get-operation-entries.js +72 -32
  64. package/dist/navigation/helpers/get-parent-entry.js +16 -12
  65. package/dist/navigation/helpers/get-tag-entries.js +56 -29
  66. package/dist/navigation/helpers/get-tag.js +22 -23
  67. package/dist/navigation/helpers/get-x-keys.js +13 -9
  68. package/dist/navigation/helpers/traverse-description.js +90 -72
  69. package/dist/navigation/helpers/traverse-document.js +111 -98
  70. package/dist/navigation/helpers/traverse-examples.js +35 -31
  71. package/dist/navigation/helpers/traverse-paths.js +118 -106
  72. package/dist/navigation/helpers/traverse-schemas.js +65 -64
  73. package/dist/navigation/helpers/traverse-tags.js +158 -129
  74. package/dist/navigation/helpers/traverse-webhooks.js +96 -90
  75. package/dist/navigation/helpers/update-order-ids.js +59 -51
  76. package/dist/navigation/helpers/utils.js +71 -21
  77. package/dist/navigation/index.js +5 -13
  78. package/dist/navigation/types.js +1 -1
  79. package/dist/persistence/index.js +283 -285
  80. package/dist/persistence/indexdb.js +263 -126
  81. package/dist/plugins/bundler/helpers.js +21 -12
  82. package/dist/plugins/bundler/index.d.ts +7 -0
  83. package/dist/plugins/bundler/index.d.ts.map +1 -1
  84. package/dist/plugins/bundler/index.js +305 -171
  85. package/dist/plugins/client/index.js +1 -5
  86. package/dist/plugins/client/persistence.js +95 -90
  87. package/dist/resolve.js +18 -25
  88. package/dist/schemas/compose.js +6 -7
  89. package/dist/schemas/extensions/document/x-internal.js +3 -7
  90. package/dist/schemas/extensions/document/x-scalar-environments.js +16 -22
  91. package/dist/schemas/extensions/document/x-scalar-icon.js +3 -7
  92. package/dist/schemas/extensions/document/x-scalar-ignore.js +3 -7
  93. package/dist/schemas/extensions/document/x-scalar-is-dirty.js +21 -8
  94. package/dist/schemas/extensions/document/x-scalar-original-document-hash.js +17 -8
  95. package/dist/schemas/extensions/document/x-scalar-registry-meta.js +15 -21
  96. package/dist/schemas/extensions/document/x-scalar-sdk-installation.js +5 -13
  97. package/dist/schemas/extensions/document/x-scalar-watch-mode.js +4 -8
  98. package/dist/schemas/extensions/document/x-tags.js +3 -7
  99. package/dist/schemas/extensions/example/x-disabled.js +17 -7
  100. package/dist/schemas/extensions/general/x-scalar-active-environment.js +4 -7
  101. package/dist/schemas/extensions/general/x-scalar-cookies.js +9 -14
  102. package/dist/schemas/extensions/general/x-scalar-order.js +8 -7
  103. package/dist/schemas/extensions/operation/index.js +4 -23
  104. package/dist/schemas/extensions/operation/x-badge.js +42 -50
  105. package/dist/schemas/extensions/operation/x-code-samples.js +8 -12
  106. package/dist/schemas/extensions/operation/x-draft-examples.js +3 -7
  107. package/dist/schemas/extensions/operation/x-post-response.js +18 -7
  108. package/dist/schemas/extensions/operation/x-scalar-disable-parameters.js +57 -13
  109. package/dist/schemas/extensions/operation/x-scalar-selected-content-type.js +9 -7
  110. package/dist/schemas/extensions/operation/x-scalar-stability.js +15 -14
  111. package/dist/schemas/extensions/parameter/x-global.js +12 -7
  112. package/dist/schemas/extensions/schema/x-additional-properties-name.js +10 -7
  113. package/dist/schemas/extensions/schema/x-enum-descriptions.js +17 -12
  114. package/dist/schemas/extensions/schema/x-enum-varnames.js +21 -8
  115. package/dist/schemas/extensions/schema/x-examples.js +3 -7
  116. package/dist/schemas/extensions/schema/x-variable.js +3 -7
  117. package/dist/schemas/extensions/security/index.js +1 -1
  118. package/dist/schemas/extensions/security/x-default-scopes.js +16 -7
  119. package/dist/schemas/extensions/security/x-scalar-credentials-location.js +16 -7
  120. package/dist/schemas/extensions/security/x-scalar-security-body.js +14 -7
  121. package/dist/schemas/extensions/security/x-scalar-security-query.js +14 -7
  122. package/dist/schemas/extensions/security/x-scalar-security-secrets.js +66 -37
  123. package/dist/schemas/extensions/security/x-tokenName.js +11 -7
  124. package/dist/schemas/extensions/security/x-use-pkce.js +6 -10
  125. package/dist/schemas/extensions/server/x-scalar-selected-server.js +3 -7
  126. package/dist/schemas/extensions/tag/index.js +1 -1
  127. package/dist/schemas/extensions/tag/x-display-name.js +11 -7
  128. package/dist/schemas/extensions/tag/x-tag-groups.js +13 -15
  129. package/dist/schemas/extensions/workspace/index.js +2 -11
  130. package/dist/schemas/extensions/workspace/x-scalar-active-proxy.js +13 -7
  131. package/dist/schemas/extensions/workspace/x-scalar-tabs.js +15 -13
  132. package/dist/schemas/extensions.js +11 -15
  133. package/dist/schemas/inmemory-workspace.d.ts +6 -0
  134. package/dist/schemas/inmemory-workspace.d.ts.map +1 -1
  135. package/dist/schemas/inmemory-workspace.js +13 -21
  136. package/dist/schemas/navigation.js +48 -85
  137. package/dist/schemas/reference-config/appearance.js +15 -22
  138. package/dist/schemas/reference-config/features.js +14 -21
  139. package/dist/schemas/reference-config/index.d.ts +2 -0
  140. package/dist/schemas/reference-config/index.d.ts.map +1 -1
  141. package/dist/schemas/reference-config/index.js +42 -44
  142. package/dist/schemas/reference-config/meta.js +11 -18
  143. package/dist/schemas/reference-config/routing.js +7 -14
  144. package/dist/schemas/reference-config/settings.d.ts +2 -0
  145. package/dist/schemas/reference-config/settings.d.ts.map +1 -1
  146. package/dist/schemas/reference-config/settings.js +10 -17
  147. package/dist/schemas/typebox-coerce.js +23 -6
  148. package/dist/schemas/v3.1/strict/callback.js +6 -12
  149. package/dist/schemas/v3.1/strict/components.js +26 -48
  150. package/dist/schemas/v3.1/strict/contact.js +9 -12
  151. package/dist/schemas/v3.1/strict/discriminator.js +11 -10
  152. package/dist/schemas/v3.1/strict/encoding.js +15 -12
  153. package/dist/schemas/v3.1/strict/example.js +11 -13
  154. package/dist/schemas/v3.1/strict/external-documentation.js +7 -10
  155. package/dist/schemas/v3.1/strict/header.js +27 -28
  156. package/dist/schemas/v3.1/strict/info.js +10 -16
  157. package/dist/schemas/v3.1/strict/license.js +9 -12
  158. package/dist/schemas/v3.1/strict/link.js +22 -19
  159. package/dist/schemas/v3.1/strict/media-type.js +17 -16
  160. package/dist/schemas/v3.1/strict/oauth-flow.js +28 -62
  161. package/dist/schemas/v3.1/strict/oauthflows.js +14 -20
  162. package/dist/schemas/v3.1/strict/openapi-document.d.ts +70 -0
  163. package/dist/schemas/v3.1/strict/openapi-document.d.ts.map +1 -1
  164. package/dist/schemas/v3.1/strict/openapi-document.js +126 -210
  165. package/dist/schemas/v3.1/strict/operation.js +16 -43
  166. package/dist/schemas/v3.1/strict/parameter.d.ts +6 -0
  167. package/dist/schemas/v3.1/strict/parameter.d.ts.map +1 -1
  168. package/dist/schemas/v3.1/strict/parameter.js +29 -35
  169. package/dist/schemas/v3.1/strict/path-item.js +36 -40
  170. package/dist/schemas/v3.1/strict/paths.js +8 -11
  171. package/dist/schemas/v3.1/strict/ref-definitions.js +76 -100
  172. package/dist/schemas/v3.1/strict/reference.js +18 -21
  173. package/dist/schemas/v3.1/strict/request-body.js +8 -16
  174. package/dist/schemas/v3.1/strict/response.js +12 -16
  175. package/dist/schemas/v3.1/strict/responses.js +13 -11
  176. package/dist/schemas/v3.1/strict/schema.js +149 -157
  177. package/dist/schemas/v3.1/strict/security-requirement.js +13 -12
  178. package/dist/schemas/v3.1/strict/security-scheme.js +29 -41
  179. package/dist/schemas/v3.1/strict/server-variable.js +9 -12
  180. package/dist/schemas/v3.1/strict/server.js +10 -13
  181. package/dist/schemas/v3.1/strict/tag.js +11 -20
  182. package/dist/schemas/v3.1/strict/type-guards.js +20 -20
  183. package/dist/schemas/v3.1/strict/xml.js +17 -16
  184. package/dist/schemas/workspace-specification/index.js +11 -23
  185. package/dist/schemas/workspace-specification/info.js +4 -8
  186. package/dist/schemas/workspace.d.ts +6 -0
  187. package/dist/schemas/workspace.d.ts.map +1 -1
  188. package/dist/schemas/workspace.js +25 -51
  189. package/dist/schemas.js +2 -6
  190. package/dist/server.js +286 -176
  191. package/dist/workspace-plugin.js +1 -1
  192. package/package.json +13 -19
  193. package/dist/client.js.map +0 -7
  194. package/dist/entities/auth/index.js.map +0 -7
  195. package/dist/entities/auth/schema.js.map +0 -7
  196. package/dist/entities/history/index.js.map +0 -7
  197. package/dist/entities/history/schema.js.map +0 -7
  198. package/dist/events/bus.js.map +0 -7
  199. package/dist/events/definitions/analytics.js.map +0 -7
  200. package/dist/events/definitions/auth.js.map +0 -7
  201. package/dist/events/definitions/common.js.map +0 -7
  202. package/dist/events/definitions/cookie.js.map +0 -7
  203. package/dist/events/definitions/document.js.map +0 -7
  204. package/dist/events/definitions/environment.js.map +0 -7
  205. package/dist/events/definitions/hooks.js.map +0 -7
  206. package/dist/events/definitions/index.js.map +0 -7
  207. package/dist/events/definitions/meta.js.map +0 -7
  208. package/dist/events/definitions/operation.js.map +0 -7
  209. package/dist/events/definitions/server.js.map +0 -7
  210. package/dist/events/definitions/tabs.js.map +0 -7
  211. package/dist/events/definitions/tag.js.map +0 -7
  212. package/dist/events/definitions/ui.js.map +0 -7
  213. package/dist/events/definitions/workspace.js.map +0 -7
  214. package/dist/events/index.js.map +0 -7
  215. package/dist/events/listeners.js.map +0 -7
  216. package/dist/events/old-definitions.js.map +0 -7
  217. package/dist/helpers/apply-selective-updates.d.ts +0 -19
  218. package/dist/helpers/apply-selective-updates.d.ts.map +0 -1
  219. package/dist/helpers/apply-selective-updates.js +0 -37
  220. package/dist/helpers/apply-selective-updates.js.map +0 -7
  221. package/dist/helpers/deep-clone.js.map +0 -7
  222. package/dist/helpers/detect-changes-proxy.js.map +0 -7
  223. package/dist/helpers/general.js.map +0 -7
  224. package/dist/helpers/generate-unique-value.js.map +0 -7
  225. package/dist/helpers/get-fetch.js.map +0 -7
  226. package/dist/helpers/get-resolved-ref.js.map +0 -7
  227. package/dist/helpers/is-non-optional-security-requirement.js.map +0 -7
  228. package/dist/helpers/merge-object.js.map +0 -7
  229. package/dist/helpers/overrides-proxy.js.map +0 -7
  230. package/dist/helpers/unpack-proxy.js.map +0 -7
  231. package/dist/mutators/auth.js.map +0 -7
  232. package/dist/mutators/cookie.js.map +0 -7
  233. package/dist/mutators/document.js.map +0 -7
  234. package/dist/mutators/environment.js.map +0 -7
  235. package/dist/mutators/helpers.js.map +0 -7
  236. package/dist/mutators/index.js.map +0 -7
  237. package/dist/mutators/operation/body.js.map +0 -7
  238. package/dist/mutators/operation/extensions.js.map +0 -7
  239. package/dist/mutators/operation/helpers/fetch-request-to-har.js.map +0 -7
  240. package/dist/mutators/operation/helpers/fetch-response-to-har.js.map +0 -7
  241. package/dist/mutators/operation/helpers/get-parameter-position.js.map +0 -7
  242. package/dist/mutators/operation/helpers/har-to-operation.js.map +0 -7
  243. package/dist/mutators/operation/helpers/sync-path-parameters.js.map +0 -7
  244. package/dist/mutators/operation/history.js.map +0 -7
  245. package/dist/mutators/operation/index.js.map +0 -7
  246. package/dist/mutators/operation/operation.js.map +0 -7
  247. package/dist/mutators/operation/parameters.js.map +0 -7
  248. package/dist/mutators/server.js.map +0 -7
  249. package/dist/mutators/tabs.js.map +0 -7
  250. package/dist/mutators/tag.js.map +0 -7
  251. package/dist/mutators/workspace.js.map +0 -7
  252. package/dist/navigation/get-navigation-options.js.map +0 -7
  253. package/dist/navigation/helpers/get-openapi-object.js.map +0 -7
  254. package/dist/navigation/helpers/get-operation-entries.js.map +0 -7
  255. package/dist/navigation/helpers/get-parent-entry.js.map +0 -7
  256. package/dist/navigation/helpers/get-tag-entries.js.map +0 -7
  257. package/dist/navigation/helpers/get-tag.js.map +0 -7
  258. package/dist/navigation/helpers/get-x-keys.js.map +0 -7
  259. package/dist/navigation/helpers/traverse-description.js.map +0 -7
  260. package/dist/navigation/helpers/traverse-document.js.map +0 -7
  261. package/dist/navigation/helpers/traverse-examples.js.map +0 -7
  262. package/dist/navigation/helpers/traverse-paths.js.map +0 -7
  263. package/dist/navigation/helpers/traverse-schemas.js.map +0 -7
  264. package/dist/navigation/helpers/traverse-tags.js.map +0 -7
  265. package/dist/navigation/helpers/traverse-webhooks.js.map +0 -7
  266. package/dist/navigation/helpers/update-order-ids.js.map +0 -7
  267. package/dist/navigation/helpers/utils.js.map +0 -7
  268. package/dist/navigation/index.js.map +0 -7
  269. package/dist/navigation/types.js.map +0 -7
  270. package/dist/persistence/index.js.map +0 -7
  271. package/dist/persistence/indexdb.js.map +0 -7
  272. package/dist/plugins/bundler/helpers.js.map +0 -7
  273. package/dist/plugins/bundler/index.js.map +0 -7
  274. package/dist/plugins/client/index.js.map +0 -7
  275. package/dist/plugins/client/persistence.js.map +0 -7
  276. package/dist/resolve.js.map +0 -7
  277. package/dist/schemas/compose.js.map +0 -7
  278. package/dist/schemas/extensions/document/x-internal.js.map +0 -7
  279. package/dist/schemas/extensions/document/x-scalar-environments.js.map +0 -7
  280. package/dist/schemas/extensions/document/x-scalar-icon.js.map +0 -7
  281. package/dist/schemas/extensions/document/x-scalar-ignore.js.map +0 -7
  282. package/dist/schemas/extensions/document/x-scalar-is-dirty.js.map +0 -7
  283. package/dist/schemas/extensions/document/x-scalar-original-document-hash.js.map +0 -7
  284. package/dist/schemas/extensions/document/x-scalar-registry-meta.js.map +0 -7
  285. package/dist/schemas/extensions/document/x-scalar-sdk-installation.js.map +0 -7
  286. package/dist/schemas/extensions/document/x-scalar-watch-mode.js.map +0 -7
  287. package/dist/schemas/extensions/document/x-tags.js.map +0 -7
  288. package/dist/schemas/extensions/example/x-disabled.js.map +0 -7
  289. package/dist/schemas/extensions/general/x-scalar-active-environment.js.map +0 -7
  290. package/dist/schemas/extensions/general/x-scalar-cookies.js.map +0 -7
  291. package/dist/schemas/extensions/general/x-scalar-order.js.map +0 -7
  292. package/dist/schemas/extensions/operation/index.js.map +0 -7
  293. package/dist/schemas/extensions/operation/x-badge.js.map +0 -7
  294. package/dist/schemas/extensions/operation/x-code-samples.js.map +0 -7
  295. package/dist/schemas/extensions/operation/x-draft-examples.js.map +0 -7
  296. package/dist/schemas/extensions/operation/x-post-response.js.map +0 -7
  297. package/dist/schemas/extensions/operation/x-scalar-disable-parameters.js.map +0 -7
  298. package/dist/schemas/extensions/operation/x-scalar-selected-content-type.js.map +0 -7
  299. package/dist/schemas/extensions/operation/x-scalar-stability.js.map +0 -7
  300. package/dist/schemas/extensions/parameter/x-global.js.map +0 -7
  301. package/dist/schemas/extensions/schema/x-additional-properties-name.js.map +0 -7
  302. package/dist/schemas/extensions/schema/x-enum-descriptions.js.map +0 -7
  303. package/dist/schemas/extensions/schema/x-enum-varnames.js.map +0 -7
  304. package/dist/schemas/extensions/schema/x-examples.js.map +0 -7
  305. package/dist/schemas/extensions/schema/x-variable.js.map +0 -7
  306. package/dist/schemas/extensions/security/index.js.map +0 -7
  307. package/dist/schemas/extensions/security/x-default-scopes.js.map +0 -7
  308. package/dist/schemas/extensions/security/x-scalar-credentials-location.js.map +0 -7
  309. package/dist/schemas/extensions/security/x-scalar-security-body.js.map +0 -7
  310. package/dist/schemas/extensions/security/x-scalar-security-query.js.map +0 -7
  311. package/dist/schemas/extensions/security/x-scalar-security-secrets.js.map +0 -7
  312. package/dist/schemas/extensions/security/x-tokenName.js.map +0 -7
  313. package/dist/schemas/extensions/security/x-use-pkce.js.map +0 -7
  314. package/dist/schemas/extensions/server/x-scalar-selected-server.js.map +0 -7
  315. package/dist/schemas/extensions/tag/index.js.map +0 -7
  316. package/dist/schemas/extensions/tag/x-display-name.js.map +0 -7
  317. package/dist/schemas/extensions/tag/x-tag-groups.js.map +0 -7
  318. package/dist/schemas/extensions/workspace/index.js.map +0 -7
  319. package/dist/schemas/extensions/workspace/x-scalar-active-proxy.js.map +0 -7
  320. package/dist/schemas/extensions/workspace/x-scalar-tabs.js.map +0 -7
  321. package/dist/schemas/extensions.js.map +0 -7
  322. package/dist/schemas/inmemory-workspace.js.map +0 -7
  323. package/dist/schemas/navigation.js.map +0 -7
  324. package/dist/schemas/reference-config/appearance.js.map +0 -7
  325. package/dist/schemas/reference-config/features.js.map +0 -7
  326. package/dist/schemas/reference-config/index.js.map +0 -7
  327. package/dist/schemas/reference-config/meta.js.map +0 -7
  328. package/dist/schemas/reference-config/routing.js.map +0 -7
  329. package/dist/schemas/reference-config/settings.js.map +0 -7
  330. package/dist/schemas/typebox-coerce.js.map +0 -7
  331. package/dist/schemas/v3.1/strict/callback.js.map +0 -7
  332. package/dist/schemas/v3.1/strict/components.js.map +0 -7
  333. package/dist/schemas/v3.1/strict/contact.js.map +0 -7
  334. package/dist/schemas/v3.1/strict/discriminator.js.map +0 -7
  335. package/dist/schemas/v3.1/strict/encoding.js.map +0 -7
  336. package/dist/schemas/v3.1/strict/example.js.map +0 -7
  337. package/dist/schemas/v3.1/strict/external-documentation.js.map +0 -7
  338. package/dist/schemas/v3.1/strict/header.js.map +0 -7
  339. package/dist/schemas/v3.1/strict/info.js.map +0 -7
  340. package/dist/schemas/v3.1/strict/license.js.map +0 -7
  341. package/dist/schemas/v3.1/strict/link.js.map +0 -7
  342. package/dist/schemas/v3.1/strict/media-type.js.map +0 -7
  343. package/dist/schemas/v3.1/strict/oauth-flow.js.map +0 -7
  344. package/dist/schemas/v3.1/strict/oauthflows.js.map +0 -7
  345. package/dist/schemas/v3.1/strict/openapi-document.js.map +0 -7
  346. package/dist/schemas/v3.1/strict/operation.js.map +0 -7
  347. package/dist/schemas/v3.1/strict/parameter.js.map +0 -7
  348. package/dist/schemas/v3.1/strict/path-item.js.map +0 -7
  349. package/dist/schemas/v3.1/strict/paths.js.map +0 -7
  350. package/dist/schemas/v3.1/strict/ref-definitions.js.map +0 -7
  351. package/dist/schemas/v3.1/strict/reference.js.map +0 -7
  352. package/dist/schemas/v3.1/strict/request-body.js.map +0 -7
  353. package/dist/schemas/v3.1/strict/response.js.map +0 -7
  354. package/dist/schemas/v3.1/strict/responses.js.map +0 -7
  355. package/dist/schemas/v3.1/strict/schema.js.map +0 -7
  356. package/dist/schemas/v3.1/strict/security-requirement.js.map +0 -7
  357. package/dist/schemas/v3.1/strict/security-scheme.js.map +0 -7
  358. package/dist/schemas/v3.1/strict/server-variable.js.map +0 -7
  359. package/dist/schemas/v3.1/strict/server.js.map +0 -7
  360. package/dist/schemas/v3.1/strict/tag.js.map +0 -7
  361. package/dist/schemas/v3.1/strict/type-guards.js.map +0 -7
  362. package/dist/schemas/v3.1/strict/xml.js.map +0 -7
  363. package/dist/schemas/workspace-specification/index.js.map +0 -7
  364. package/dist/schemas/workspace-specification/info.js.map +0 -7
  365. package/dist/schemas/workspace.js.map +0 -7
  366. package/dist/schemas.js.map +0 -7
  367. package/dist/server.js.map +0 -7
  368. package/dist/workspace-plugin.js.map +0 -7
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/response.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nimport type { HeaderObject } from '@/schemas/v3.1/strict/header'\nimport type { MediaTypeObject } from '@/schemas/v3.1/strict/media-type'\n\nimport type { LinkObject } from './link'\nimport { HeaderObjectRef, LinkObjectRef, MediaTypeObjectRef } from './ref-definitions'\nimport { type ReferenceType, reference } from './reference'\n\nexport const ResponseObjectSchemaDefinition = Type.Object({\n /** REQUIRED. A description of the response. CommonMark syntax MAY be used for rich text representation. */\n description: Type.String(),\n /** Maps a header name to its definition. RFC7230 states header names are case insensitive. If a response header is defined with the name \"Content-Type\", it SHALL be ignored. */\n headers: Type.Optional(Type.Record(Type.String(), Type.Union([HeaderObjectRef, reference(HeaderObjectRef)]))),\n /** A map containing descriptions of potential response payloads. The key is a media type or media type range and the value describes it. For responses that match multiple keys, only the most specific key is applicable. e.g. \"text/plain\" overrides \"text/*\" */\n content: Type.Optional(Type.Record(Type.String(), MediaTypeObjectRef)),\n /** A map of operations links that can be followed from the response. The key of the map is a short name for the link, following the naming constraints of the names for Component Objects. */\n links: Type.Optional(Type.Record(Type.String(), Type.Union([LinkObjectRef, reference(LinkObjectRef)]))),\n})\n\n/**\n * Describes a single response from an API operation, including design-time, static links to operations based on the response.\n */\nexport type ResponseObject = {\n /** REQUIRED. A description of the response. CommonMark syntax MAY be used for rich text representation. */\n description: string\n /** Maps a header name to its definition. RFC7230 states header names are case insensitive. If a response header is defined with the name \"Content-Type\", it SHALL be ignored. */\n headers?: Record<string, ReferenceType<HeaderObject>>\n /** A map containing descriptions of potential response payloads. The key is a media type or media type range and the value describes it. For responses that match multiple keys, only the most specific key is applicable. e.g. \"text/plain\" overrides \"text/*\" */\n content?: Record<string, MediaTypeObject>\n /** A map of operations links that can be followed from the response. The key of the map is a short name for the link, following the naming constraints of the names for Component Objects. */\n links?: Record<string, ReferenceType<LinkObject>>\n}\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAMrB,SAAS,iBAAiB,eAAe,0BAA0B;AACnE,SAA6B,iBAAiB;AAEvC,MAAM,iCAAiC,KAAK,OAAO;AAAA;AAAA,EAExD,aAAa,KAAK,OAAO;AAAA;AAAA,EAEzB,SAAS,KAAK,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,KAAK,MAAM,CAAC,iBAAiB,UAAU,eAAe,CAAC,CAAC,CAAC,CAAC;AAAA;AAAA,EAE5G,SAAS,KAAK,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,kBAAkB,CAAC;AAAA;AAAA,EAErE,OAAO,KAAK,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,KAAK,MAAM,CAAC,eAAe,UAAU,aAAa,CAAC,CAAC,CAAC,CAAC;AACxG,CAAC;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/responses.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nimport { ResponseObjectRef } from './ref-definitions'\nimport { type ReferenceType, reference } from './reference'\nimport type { ResponseObject } from './response'\n\n/**\n * A container for the expected responses of an operation. The container maps a HTTP response code to the expected response.\n *\n * The documentation is not necessarily expected to cover all possible HTTP response codes because they may not be known in advance. However, documentation is expected to cover a successful operation response and any known errors.\n *\n * The default MAY be used as a default Response Object for all HTTP codes that are not covered individually by the Responses Object.\n *\n * The Responses Object MUST contain at least one response code, and if only one response code is provided it SHOULD be the response for a successful operation call.\n */\nexport const ResponsesObjectSchemaDefinition = Type.Record(\n Type.String(),\n Type.Union([ResponseObjectRef, reference(ResponseObjectRef)]),\n)\n\n/**\n * A container for the expected responses of an operation. The container maps a HTTP response code to the expected response.\n *\n * The documentation is not necessarily expected to cover all possible HTTP response codes because they may not be known in advance. However, documentation is expected to cover a successful operation response and any known errors.\n *\n * The default MAY be used as a default Response Object for all HTTP codes that are not covered individually by the Responses Object.\n *\n * The Responses Object MUST contain at least one response code, and if only one response code is provided it SHOULD be the response for a successful operation call.\n */\nexport type ResponsesObject = Record<string, ReferenceType<ResponseObject>>\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAErB,SAAS,yBAAyB;AAClC,SAA6B,iBAAiB;AAYvC,MAAM,kCAAkC,KAAK;AAAA,EAClD,KAAK,OAAO;AAAA,EACZ,KAAK,MAAM,CAAC,mBAAmB,UAAU,iBAAiB,CAAC,CAAC;AAC9D;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/schema.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nimport { compose } from '@/schemas/compose'\nimport { type XInternal, XInternalSchema } from '@/schemas/extensions/document/x-internal'\nimport { type XScalarIgnore, XScalarIgnoreSchema } from '@/schemas/extensions/document/x-scalar-ignore'\nimport { XTags } from '@/schemas/extensions/document/x-tags'\nimport {\n type XAdditionalPropertiesName,\n XAdditionalPropertiesNameSchema,\n} from '@/schemas/extensions/schema/x-additional-properties-name'\nimport { type XEnumDescriptions, XEnumDescriptionsSchema } from '@/schemas/extensions/schema/x-enum-descriptions'\nimport { type XEnumVarNames, XEnumVarNamesSchema } from '@/schemas/extensions/schema/x-enum-varnames'\nimport { type XExamples, XExamplesSchema } from '@/schemas/extensions/schema/x-examples'\nimport { type XVariable, XVariableSchema } from '@/schemas/extensions/schema/x-variable'\nimport type { ExternalDocumentationObject } from '@/schemas/v3.1/strict/external-documentation'\nimport type { XMLObject } from '@/schemas/v3.1/strict/xml'\n\nimport type { DiscriminatorObject } from './discriminator'\nimport {\n DiscriminatorObjectRef,\n ExternalDocumentationObjectRef,\n SchemaObjectRef,\n XMLObjectRef,\n} from './ref-definitions'\nimport { type ReferenceObject, ReferenceObjectSchema } from './reference'\n\nexport type SchemaReferenceType<Value> = Value | (ReferenceObject & { '$ref-value': unknown })\n\nconst schemaOrReference = Type.Union([\n SchemaObjectRef,\n compose(ReferenceObjectSchema, Type.Object({ '$ref-value': Type.Unknown() })),\n])\n\n/** We use this type to ensure that we are parsing a schema object as every property can be optional */\ntype _InternalType = CoreProperties & {\n __scalar_: string\n} & Extensions\n\n/**\n * Primitive types that don't have additional validation properties.\n * These types (null, boolean, string, number, integer, object, array) can be used\n * without additional validation constraints.\n *\n * TODO: Type array will actually validate against every union type but we can cross that bridge when we come to it\n */\nconst OtherTypes = Type.Object({\n type: Type.Union([\n Type.Literal('null'),\n Type.Literal('boolean'),\n Type.Array(\n Type.Union([\n Type.Literal('null'),\n Type.Literal('boolean'),\n Type.Literal('string'),\n Type.Literal('number'),\n Type.Literal('integer'),\n Type.Literal('object'),\n Type.Literal('array'),\n ]),\n ),\n ]),\n})\n\ntype OtherType = 'boolean' | 'null' | ('string' | 'number' | 'boolean' | 'object' | 'null' | 'integer' | 'array')[]\n\ntype OtherTypes = CoreProperties & {\n type: OtherType\n} & Extensions\n\nconst Extensions = compose(\n XScalarIgnoreSchema,\n XInternalSchema,\n XVariableSchema,\n XExamplesSchema,\n XEnumDescriptionsSchema,\n XEnumVarNamesSchema,\n XAdditionalPropertiesNameSchema,\n XTags,\n)\n\ntype Extensions = XScalarIgnore &\n XInternal &\n XVariable &\n XEnumDescriptions &\n XEnumVarNames &\n XExamples &\n XAdditionalPropertiesName &\n XTags\n\nconst CorePropertiesWithSchema = Type.Object({\n name: Type.Optional(Type.String()),\n /** A title for the schema. */\n title: Type.Optional(Type.String()),\n /** A description of the schema. */\n description: Type.Optional(Type.String()),\n /** Default value for the schema. */\n default: Type.Optional(Type.Unknown()),\n /** Array of allowed values. */\n enum: Type.Optional(Type.Array(Type.Unknown())),\n /** Constant value that must match exactly. */\n const: Type.Optional(Type.Unknown()),\n /** Media type for content validation. */\n contentMediaType: Type.Optional(Type.String()),\n /** Content encoding. */\n contentEncoding: Type.Optional(Type.String()),\n /** Schema for content validation. */\n contentSchema: Type.Optional(schemaOrReference),\n /** Whether the schema is deprecated. */\n deprecated: Type.Optional(Type.Boolean()),\n /** Adds support for polymorphism. The discriminator is used to determine which of a set of schemas a payload is expected to satisfy. See Composition and Inheritance for more details. */\n discriminator: Type.Optional(DiscriminatorObjectRef),\n /** Whether the schema is read-only. */\n readOnly: Type.Optional(Type.Boolean()),\n /** Whether the schema is write-only. */\n writeOnly: Type.Optional(Type.Boolean()),\n /** This MAY be used only on property schemas. It has no effect on root schemas. Adds additional metadata to describe the XML representation of this property. */\n xml: Type.Optional(XMLObjectRef),\n /** Additional external documentation for this schema. */\n externalDocs: Type.Optional(ExternalDocumentationObjectRef),\n /**\n * A free-form field to include an example of an instance for this schema. To represent examples that cannot be naturally represented in JSON or YAML, a string value can be used to contain the example with escaping where necessary.\n *\n * @deprecated The example field has been deprecated in favor of the JSON Schema examples keyword. Use of example is discouraged, and later versions of this specification may remove it.\n */\n example: Type.Optional(Type.Unknown()),\n /**\n * An array of examples of valid instances for this schema. This keyword follows the JSON Schema Draft 2020-12 specification.\n * Each example should be a valid instance of the schema.\n */\n examples: Type.Optional(Type.Array(Type.Unknown())),\n /** All schemas must be valid. */\n allOf: Type.Optional(Type.Array(schemaOrReference)),\n /** Exactly one schema must be valid. */\n oneOf: Type.Optional(Type.Array(schemaOrReference)),\n /** At least one schema must be valid. */\n anyOf: Type.Optional(Type.Array(schemaOrReference)),\n /** Schema must not be valid. */\n not: Type.Optional(schemaOrReference),\n})\n\ntype CoreProperties = {\n name?: string\n /** A title for the schema. */\n title?: string\n /** A description of the schema. */\n description?: string\n /** Default value for the schema. */\n default?: unknown\n /** Array of allowed values. */\n enum?: unknown[]\n /** Constant value that must match exactly. */\n const?: unknown\n /** Media type for content validation. */\n contentMediaType?: string\n /** Content encoding. */\n contentEncoding?: string\n /** Schema for content validation. */\n contentSchema?: SchemaReferenceType<SchemaObject>\n /** Whether the schema is deprecated. */\n deprecated?: boolean\n /** Adds support for polymorphism. The discriminator is used to determine which of a set of schemas a payload is expected to satisfy. See Composition and Inheritance for more details. */\n discriminator?: DiscriminatorObject\n /** Whether the schema is read-only. */\n readOnly?: boolean\n /** Whether the schema is write-only. */\n writeOnly?: boolean\n /** This MAY be used only on property schemas. It has no effect on root schemas. Adds additional metadata to describe the XML representation of this property. */\n xml?: XMLObject\n /** Additional external documentation for this schema. */\n externalDocs?: ExternalDocumentationObject\n /**\n * A free-form field to include an example of an instance for this schema. To represent examples that cannot be naturally represented in JSON or YAML, a string value can be used to contain the example with escaping where necessary.\n *\n * @deprecated The example field has been deprecated in favor of the JSON Schema examples keyword. Use of example is discouraged, and later versions of this specification may remove it.\n */\n example?: unknown\n /**\n * An array of examples of valid instances for this schema. This keyword follows the JSON Schema Draft 2020-12 specification.\n * Each example should be a valid instance of the schema.\n */\n examples?: unknown[]\n /** All schemas must be valid. */\n allOf?: SchemaReferenceType<SchemaObject>[]\n /** Exactly one schema must be valid. */\n oneOf?: SchemaReferenceType<SchemaObject>[]\n /** At least one schema must be valid. */\n anyOf?: SchemaReferenceType<SchemaObject>[]\n /** Schema must not be valid. */\n not?: SchemaReferenceType<SchemaObject>\n}\n\n/**\n * Numeric validation properties for number and integer types.\n */\nconst NumericProperties = Type.Object({\n type: Type.Union([Type.Literal('number'), Type.Literal('integer')]),\n /** Different subtypes */\n format: Type.Optional(Type.String()),\n /** Number must be a multiple of this value. */\n multipleOf: Type.Optional(Type.Number()),\n /** Maximum value (inclusive). */\n maximum: Type.Optional(Type.Number()),\n /** Maximum value (exclusive). */\n exclusiveMaximum: Type.Optional(Type.Number({ minimum: 0 })),\n /** Minimum value (inclusive). */\n minimum: Type.Optional(Type.Number()),\n /** Minimum value (exclusive). */\n exclusiveMinimum: Type.Optional(Type.Number({ minimum: 0 })),\n})\n\ntype NumericObject = CoreProperties & {\n type: 'number' | 'integer'\n /** Different subtypes */\n format?:\n | 'int8'\n | 'int16'\n | 'int32'\n | 'int64'\n | 'uint8'\n | 'uint16'\n | 'uint32'\n | 'uint64'\n | 'double-int'\n | 'float'\n | 'double'\n | 'decimal'\n | 'decimal128'\n | 'sf-integer'\n | 'sf-decimal'\n | (string & {})\n /** Number must be a multiple of this value. */\n multipleOf?: number\n /** Maximum value (inclusive). */\n maximum?: number\n /** Maximum value (exclusive). */\n exclusiveMaximum?: number\n /** Minimum value (inclusive). */\n minimum?: number\n /** Minimum value (exclusive). */\n exclusiveMinimum?: number\n} & Extensions\n\n/**\n * String validation properties for string types.\n */\nconst StringValidationProperties = Type.Object({\n type: Type.Literal('string'),\n /** Different subtypes - allow any arbitrary string, this negates the purpose of having a union of formats so we type it in typescript instead */\n format: Type.Optional(Type.String()),\n /** Maximum string length. */\n maxLength: Type.Optional(Type.Integer({ minimum: 0 })),\n /** Minimum string length. */\n minLength: Type.Optional(Type.Integer({ minimum: 0 })),\n /** Regular expression pattern. */\n pattern: Type.Optional(Type.String()),\n})\n\n/**\n * Supported string formats in OpenAPI schemas.\n *\n * These provide better type safety for string format validation. We wanted to allow any arbitrary string\n * in the schema, so we type it in typescript instead. This gives us autocomplete while allowing any string!\n */\ntype StringFormat =\n // Date and time formats\n | 'date'\n | 'date-time'\n | 'date-time-local'\n | 'time'\n | 'time-local'\n | 'duration'\n | 'http-date'\n // Network formats\n | 'email'\n | 'idn-email'\n | 'hostname'\n | 'idn-hostname'\n | 'ipv4'\n | 'ipv6'\n | 'uri'\n | 'uri-reference'\n | 'uri-template'\n | 'iri'\n | 'iri-reference'\n | 'uuid'\n // Content formats\n | 'binary'\n | 'byte'\n | 'base64url'\n | 'html'\n | 'commonmark'\n | 'password'\n | 'regex'\n | 'json-pointer'\n | 'relative-json-pointer'\n | 'media-range'\n // Character formats\n | 'char'\n // Structured field string formats\n | 'sf-string'\n | 'sf-token'\n | 'sf-binary'\n | 'sf-boolean'\n | (string & {})\n\ntype StringObject = CoreProperties & {\n type: 'string'\n /** Different subtypes - allow any arbitrary string, this negates the purpose of having a union of formats so we type it in typescript instead */\n format?: StringFormat\n /** Maximum string length. */\n maxLength?: number\n /** Minimum string length. */\n minLength?: number\n /** Regular expression pattern. */\n pattern?: string\n} & Extensions\n\nconst ArrayValidationPropertiesWithSchema = Type.Object({\n type: Type.Literal('array'),\n /** Maximum number of items in array. */\n maxItems: Type.Optional(Type.Integer({ minimum: 0 })),\n /** Minimum number of items in array. */\n minItems: Type.Optional(Type.Integer({ minimum: 0 })),\n /** Whether array items must be unique. */\n uniqueItems: Type.Optional(Type.Boolean()),\n /** Schema for array items. */\n items: Type.Optional(schemaOrReference),\n /** Schema for tuple validation. */\n prefixItems: Type.Optional(Type.Array(schemaOrReference)),\n})\n\ntype ArrayObject = CoreProperties & {\n type: 'array'\n /** Maximum number of items in array. */\n maxItems?: number\n /** Minimum number of items in array. */\n minItems?: number\n /** Whether array items must be unique. */\n uniqueItems?: boolean\n /** Schema for array items. */\n items?: SchemaReferenceType<SchemaObject>\n /** Schema for tuple validation. */\n prefixItems?: SchemaReferenceType<SchemaObject>[]\n} & Extensions\n\nconst ObjectValidationPropertiesWithSchema = Type.Object({\n type: Type.Literal('object'),\n /** Maximum number of properties. */\n maxProperties: Type.Optional(Type.Integer({ minimum: 0 })),\n /** Minimum number of properties. */\n minProperties: Type.Optional(Type.Integer({ minimum: 0 })),\n /** Array of required property names. */\n required: Type.Optional(Type.Array(Type.String())),\n /** Object property definitions. */\n properties: Type.Optional(Type.Record(Type.String(), schemaOrReference)),\n /** Schema for additional properties. */\n additionalProperties: Type.Optional(Type.Union([Type.Boolean(), schemaOrReference])),\n /** Properties matching regex patterns. */\n patternProperties: Type.Optional(Type.Record(Type.String(), schemaOrReference)),\n /** Constraints on property names (JSON Schema propertyNames keyword). */\n propertyNames: Type.Optional(schemaOrReference),\n})\n\ntype ObjectObject = CoreProperties & {\n type: 'object'\n /** Maximum number of properties. */\n maxProperties?: number\n /** Minimum number of properties. */\n minProperties?: number\n /** Array of required property names. */\n required?: string[]\n /** Object property definitions. */\n properties?: Record<string, SchemaReferenceType<SchemaObject>>\n /** Schema for additional properties. */\n additionalProperties?: boolean | SchemaReferenceType<SchemaObject>\n /** Properties matching regex patterns. */\n patternProperties?: Record<string, SchemaReferenceType<SchemaObject>>\n /** Constraints on property names (JSON Schema propertyNames keyword). */\n propertyNames?: SchemaReferenceType<SchemaObject>\n} & Extensions\n\n/** Builds the recursive schema schema */\nexport const SchemaObjectSchemaDefinition = Type.Union([\n // Keep compositions first so they get priority when union is evaluated\n // Make sure there is always a required field so not all properties are optional\n // When all properties are optional (1) typescript will not throw any warnings/error and accepts anything\n // even a non resolved ref and (2) it will match any schema so it will not validate the refs correctly\n compose(Type.Object({ __scalar_: Type.String() }), CorePropertiesWithSchema, Extensions),\n compose(OtherTypes, CorePropertiesWithSchema, Extensions),\n compose(NumericProperties, CorePropertiesWithSchema, Extensions),\n compose(StringValidationProperties, CorePropertiesWithSchema, Extensions),\n compose(ObjectValidationPropertiesWithSchema, CorePropertiesWithSchema, Extensions),\n compose(ArrayValidationPropertiesWithSchema, CorePropertiesWithSchema, Extensions),\n])\n\nexport type SchemaObject = _InternalType | OtherTypes | NumericObject | StringObject | ObjectObject | ArrayObject\nexport type MaybeRefSchemaObject = SchemaReferenceType<SchemaObject>\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/security-requirement.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\n/**\n * Lists the required security schemes to execute this operation. The name used for each property MUST correspond to a security scheme declared in the Security Schemes under the Components Object.\n *\n * A Security Requirement Object MAY refer to multiple security schemes in which case all schemes MUST be satisfied for a request to be authorized. This enables support for scenarios where multiple query parameters or HTTP headers are required to convey security information.\n *\n * When the security field is defined on the OpenAPI Object or Operation Object and contains multiple Security Requirement Objects, only one of the entries in the list needs to be satisfied to authorize the request. This enables support for scenarios where the API allows multiple, independent security schemes.\n *\n * An empty Security Requirement Object ({}) indicates anonymous access is supported.\n */\nexport const SecurityRequirementObjectSchemaDefinition = Type.Partial(\n Type.Record(\n /** Each name MUST correspond to a security scheme which is declared in the Security Schemes under the Components Object. If the security scheme is of type \"oauth2\" or \"openIdConnect\", then the value is a list of scope names required for the execution, and the list MAY be empty if authorization does not require a specified scope. For other security scheme types, the array MAY contain a list of role names which are required for the execution, but are not otherwise defined or exchanged in-band. */\n Type.String(),\n Type.Array(Type.String()),\n ),\n)\n\n/**\n * Lists the required security schemes to execute this operation. The name used for each property MUST correspond to a security scheme declared in the Security Schemes under the Components Object.\n *\n * A Security Requirement Object MAY refer to multiple security schemes in which case all schemes MUST be satisfied for a request to be authorized. This enables support for scenarios where multiple query parameters or HTTP headers are required to convey security information.\n *\n * When the security field is defined on the OpenAPI Object or Operation Object and contains multiple Security Requirement Objects, only one of the entries in the list needs to be satisfied to authorize the request. This enables support for scenarios where the API allows multiple, independent security schemes.\n *\n * The partial allows for an empty Security Requirement Object ({}) to be included.\n */\nexport type SecurityRequirementObject = Partial<\n Record<\n /** Each name MUST correspond to a security scheme which is declared in the Security Schemes under the Components Object. If the security scheme is of type \"oauth2\" or \"openIdConnect\", then the value is a list of scope names required for the execution, and the list MAY be empty if authorization does not require a specified scope. For other security scheme types, the array MAY contain a list of role names which are required for the execution, but are not otherwise defined or exchanged in-band. */\n string,\n string[]\n >\n>\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAWd,MAAM,4CAA4C,KAAK;AAAA,EAC5D,KAAK;AAAA;AAAA,IAEH,KAAK,OAAO;AAAA,IACZ,KAAK,MAAM,KAAK,OAAO,CAAC;AAAA,EAC1B;AACF;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/security-scheme.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nimport { compose } from '@/schemas/compose'\nimport { type XDefaultScopes, XDefaultScopesSchema } from '@/schemas/extensions/security/x-default-scopes'\nimport type { OAuthFlowsObject } from '@/schemas/v3.1/strict/oauthflows'\nimport { OAuthFlowsObjectRef } from '@/schemas/v3.1/strict/ref-definitions'\n\nconst DescriptionSchema = Type.Object({\n /** A description for security scheme. CommonMark syntax MAY be used for rich text representation. */\n description: Type.Optional(Type.String()),\n})\n\ntype Description = {\n /** A description for security scheme. CommonMark syntax MAY be used for rich text representation. */\n description?: string\n}\n\nconst ApiKeySchema = compose(\n DescriptionSchema,\n Type.Object({\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: Type.Literal('apiKey'),\n /** REQUIRED. The name of the header, query or cookie parameter to be used. */\n name: Type.String(),\n /** REQUIRED. The location of the API key. Valid values are \"query\", \"header\", or \"cookie\". */\n in: Type.Union([Type.Literal('query'), Type.Literal('header'), Type.Literal('cookie')]),\n }),\n)\n\nexport type ApiKeyObject = Description & {\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: 'apiKey'\n /** REQUIRED. The name of the header, query or cookie parameter to be used. */\n name: string\n /** REQUIRED. The location of the API key. Valid values are \"query\", \"header\", or \"cookie\". */\n in: 'query' | 'header' | 'cookie'\n}\n\nconst HttpSchema = compose(\n DescriptionSchema,\n Type.Object({\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: Type.Literal('http'),\n /** REQUIRED. The name of the HTTP Authentication scheme to be used in the Authorization header as defined in RFC7235. The values used SHOULD be registered in the IANA Authentication Scheme registry. The value is case-insensitive, as defined in RFC7235. */\n scheme: Type.Union([Type.Literal('basic'), Type.Literal('bearer')]),\n /** A hint to the client to identify how the bearer token is formatted. Bearer tokens are usually generated by an authorization server, so this information is primarily for documentation purposes. */\n bearerFormat: Type.Optional(Type.String()),\n }),\n)\n\nexport type HttpObject = Description & {\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: 'http'\n /** REQUIRED. The name of the HTTP Authentication scheme to be used in the Authorization header as defined in RFC7235. The values used SHOULD be registered in the IANA Authentication Scheme registry. The value is case-insensitive, as defined in RFC7235. */\n scheme: 'basic' | 'bearer'\n /** A hint to the client to identify how the bearer token is formatted. Bearer tokens are usually generated by an authorization server, so this information is primarily for documentation purposes. */\n bearerFormat?: string\n}\n\nconst OAuth2 = compose(\n DescriptionSchema,\n Type.Object({\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: Type.Literal('oauth2'),\n /** REQUIRED. An object containing configuration information for the flow types supported. */\n flows: OAuthFlowsObjectRef,\n }),\n XDefaultScopesSchema,\n)\n\nexport type OAuth2Object = Description & {\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: 'oauth2'\n /** REQUIRED. An object containing configuration information for the flow types supported. */\n flows: OAuthFlowsObject\n} & XDefaultScopes\n\nconst OpenIdConnect = compose(\n DescriptionSchema,\n Type.Object({\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: Type.Literal('openIdConnect'),\n /** REQUIRED. Well-known URL to discover the [[OpenID-Connect-Discovery]] provider metadata. */\n openIdConnectUrl: Type.String(),\n }),\n)\n\nexport type OpenIdConnectObject = Description & {\n /** REQUIRED. The type of the security scheme. Valid values are \"apiKey\", \"http\", \"mutualTLS\", \"oauth2\", \"openIdConnect\". */\n type: 'openIdConnect'\n /** REQUIRED. Well-known URL to discover the [[OpenID-Connect-Discovery]] provider metadata. */\n openIdConnectUrl: string\n}\n\n/**\n * Defines a security scheme that can be used by the operations.\n *\n * Supported schemes are HTTP authentication, an API key (either as a header, a cookie parameter or as a query parameter), mutual TLS (use of a client certificate), OAuth2's common flows (implicit, password, client credentials and authorization code) as defined in RFC6749, and [[OpenID-Connect-Core]]. Please note that as of 2020, the implicit flow is about to be deprecated by OAuth 2.0 Security Best Current Practice. Recommended for most use cases is Authorization Code Grant flow with PKCE.\n */\nexport const SecuritySchemeObjectSchemaDefinition = Type.Union([ApiKeySchema, HttpSchema, OAuth2, OpenIdConnect])\n\nexport type SecuritySchemeObject = ApiKeyObject | HttpObject | OAuth2Object | OpenIdConnectObject\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAErB,SAAS,eAAe;AACxB,SAA8B,4BAA4B;AAE1D,SAAS,2BAA2B;AAEpC,MAAM,oBAAoB,KAAK,OAAO;AAAA;AAAA,EAEpC,aAAa,KAAK,SAAS,KAAK,OAAO,CAAC;AAC1C,CAAC;AAOD,MAAM,eAAe;AAAA,EACnB;AAAA,EACA,KAAK,OAAO;AAAA;AAAA,IAEV,MAAM,KAAK,QAAQ,QAAQ;AAAA;AAAA,IAE3B,MAAM,KAAK,OAAO;AAAA;AAAA,IAElB,IAAI,KAAK,MAAM,CAAC,KAAK,QAAQ,OAAO,GAAG,KAAK,QAAQ,QAAQ,GAAG,KAAK,QAAQ,QAAQ,CAAC,CAAC;AAAA,EACxF,CAAC;AACH;AAWA,MAAM,aAAa;AAAA,EACjB;AAAA,EACA,KAAK,OAAO;AAAA;AAAA,IAEV,MAAM,KAAK,QAAQ,MAAM;AAAA;AAAA,IAEzB,QAAQ,KAAK,MAAM,CAAC,KAAK,QAAQ,OAAO,GAAG,KAAK,QAAQ,QAAQ,CAAC,CAAC;AAAA;AAAA,IAElE,cAAc,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA,EAC3C,CAAC;AACH;AAWA,MAAM,SAAS;AAAA,EACb;AAAA,EACA,KAAK,OAAO;AAAA;AAAA,IAEV,MAAM,KAAK,QAAQ,QAAQ;AAAA;AAAA,IAE3B,OAAO;AAAA,EACT,CAAC;AAAA,EACD;AACF;AASA,MAAM,gBAAgB;AAAA,EACpB;AAAA,EACA,KAAK,OAAO;AAAA;AAAA,IAEV,MAAM,KAAK,QAAQ,eAAe;AAAA;AAAA,IAElC,kBAAkB,KAAK,OAAO;AAAA,EAChC,CAAC;AACH;AAcO,MAAM,uCAAuC,KAAK,MAAM,CAAC,cAAc,YAAY,QAAQ,aAAa,CAAC;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/server-variable.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\n/** An object representing a Server Variable for server URL template substitution. */\nexport const ServerVariableObjectSchemaDefinition = Type.Object({\n /** An enumeration of string values to be used if the substitution options are from a limited set. The array MUST NOT be empty. */\n enum: Type.Optional(Type.Array(Type.String())),\n /** REQUIRED. The default value to use for substitution, which SHALL be sent if an alternate value is not supplied. If the enum is defined, the value MUST exist in the enum's values. Note that this behavior is different from the Schema Object's default keyword, which documents the receiver's behavior rather than inserting the value into the data. */\n default: Type.Optional(Type.String()),\n /** An optional description for the server variable. CommonMark syntax MAY be used for rich text representation. */\n description: Type.Optional(Type.String()),\n})\n\n/** An object representing a Server Variable for server URL template substitution. */\nexport type ServerVariableObject = {\n /** An enumeration of string values to be used if the substitution options are from a limited set. The array MUST NOT be empty. */\n enum?: string[]\n /** REQUIRED. The default value to use for substitution, which SHALL be sent if an alternate value is not supplied. If the enum is defined, the value MUST exist in the enum's values. Note that this behavior is different from the Schema Object's default keyword, which documents the receiver's behavior rather than inserting the value into the data. */\n default?: string\n /** An optional description for the server variable. CommonMark syntax MAY be used for rich text representation. */\n description?: string\n}\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAGd,MAAM,uCAAuC,KAAK,OAAO;AAAA;AAAA,EAE9D,MAAM,KAAK,SAAS,KAAK,MAAM,KAAK,OAAO,CAAC,CAAC;AAAA;AAAA,EAE7C,SAAS,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA;AAAA,EAEpC,aAAa,KAAK,SAAS,KAAK,OAAO,CAAC;AAC1C,CAAC;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/server.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nimport { ServerVariableObjectRef } from './ref-definitions'\nimport type { ServerVariableObject } from './server-variable'\n\n/** An object representing a Server. */\nexport const ServerObjectSchemaDefinition = Type.Object({\n /** REQUIRED. A URL to the target host. This URL supports Server Variables and MAY be relative, to indicate that the host location is relative to the location where the document containing the Server Object is being served. Variable substitutions will be made when a variable is named in {braces}. */\n url: Type.String(),\n /** An optional string describing the host designated by the URL. CommonMark syntax MAY be used for rich text representation. */\n description: Type.Optional(Type.String()),\n /** A map between a variable name and its value. The value is used for substitution in the server's URL template. */\n variables: Type.Optional(Type.Record(Type.String(), ServerVariableObjectRef)),\n})\n\n/** An object representing a Server. */\nexport type ServerObject = {\n /** REQUIRED. A URL to the target host. This URL supports Server Variables and MAY be relative, to indicate that the host location is relative to the location where the document containing the Server Object is being served. Variable substitutions will be made when a variable is named in {braces}. */\n url: string\n /** An optional string describing the host designated by the URL. CommonMark syntax MAY be used for rich text representation. */\n description?: string\n /** A map between a variable name and its value. The value is used for substitution in the server's URL template. */\n variables?: Record<string, ServerVariableObject>\n}\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAErB,SAAS,+BAA+B;AAIjC,MAAM,+BAA+B,KAAK,OAAO;AAAA;AAAA,EAEtD,KAAK,KAAK,OAAO;AAAA;AAAA,EAEjB,aAAa,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA;AAAA,EAExC,WAAW,KAAK,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,uBAAuB,CAAC;AAC9E,CAAC;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/tag.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nimport { compose } from '@/schemas/compose'\nimport { type XInternal, XInternalSchema } from '@/schemas/extensions/document/x-internal'\nimport { type XScalarIgnore, XScalarIgnoreSchema } from '@/schemas/extensions/document/x-scalar-ignore'\nimport { type XScalarOrder, XScalarOrderSchema } from '@/schemas/extensions/general/x-scalar-order'\nimport { type XDisplayName, XDisplayNameSchema } from '@/schemas/extensions/tag/x-display-name'\n\nimport type { ExternalDocumentationObject } from './external-documentation'\nimport { ExternalDocumentationObjectRef } from './ref-definitions'\n\n/** Adds metadata to a single tag that is used by the Operation Object. It is not mandatory to have a Tag Object per tag defined in the Operation Object instances. */\nexport const TagObjectSchemaDefinition = compose(\n Type.Object({\n /** REQUIRED. The name of the tag. */\n name: Type.String(),\n /** A description for the tag. CommonMark syntax MAY be used for rich text representation. */\n description: Type.Optional(Type.String()),\n /** Additional external documentation for this tag. */\n externalDocs: Type.Optional(ExternalDocumentationObjectRef),\n }),\n XDisplayNameSchema,\n XInternalSchema,\n XScalarIgnoreSchema,\n XScalarOrderSchema,\n)\n\n/** Adds metadata to a single tag that is used by the Operation Object. It is not mandatory to have a Tag Object per tag defined in the Operation Object instances. */\nexport type TagObject = {\n /** REQUIRED. The name of the tag. */\n name: string\n /** A description for the tag. CommonMark syntax MAY be used for rich text representation. */\n description?: string\n /** Additional external documentation for this tag. */\n externalDocs?: ExternalDocumentationObject\n} & XDisplayName &\n XInternal &\n XScalarIgnore &\n XScalarOrder\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAErB,SAAS,eAAe;AACxB,SAAyB,uBAAuB;AAChD,SAA6B,2BAA2B;AACxD,SAA4B,0BAA0B;AACtD,SAA4B,0BAA0B;AAGtD,SAAS,sCAAsC;AAGxC,MAAM,4BAA4B;AAAA,EACvC,KAAK,OAAO;AAAA;AAAA,IAEV,MAAM,KAAK,OAAO;AAAA;AAAA,IAElB,aAAa,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA;AAAA,IAExC,cAAc,KAAK,SAAS,8BAA8B;AAAA,EAC5D,CAAC;AAAA,EACD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/type-guards.ts"],
4
- "sourcesContent": ["import type { SchemaObject } from '@/schemas/v3.1/strict/openapi-document'\nimport type { ParameterObject, ParameterWithContentObject } from '@/schemas/v3.1/strict/parameter'\n\nexport const isObjectSchema = (schema: SchemaObject): schema is Extract<SchemaObject, { type: 'object' }> => {\n return (\n 'type' in schema && (schema.type === 'object' || (Array.isArray(schema.type) && schema.type.includes('object')))\n )\n}\n\nexport const isArraySchema = (schema: SchemaObject): schema is Extract<SchemaObject, { type: 'array' }> => {\n return 'type' in schema && (schema.type === 'array' || (Array.isArray(schema.type) && schema.type.includes('array')))\n}\n\nexport const isStringSchema = (schema: SchemaObject): schema is Extract<SchemaObject, { type: 'string' }> => {\n return (\n 'type' in schema && (schema.type === 'string' || (Array.isArray(schema.type) && schema.type.includes('string')))\n )\n}\n\nexport const isNumberSchema = (\n schema: SchemaObject,\n): schema is Extract<SchemaObject, { type: 'number' | 'integer' }> => {\n return (\n 'type' in schema &&\n (schema.type === 'number' ||\n schema.type === 'integer' ||\n (Array.isArray(schema.type) && schema.type.includes('number')) ||\n (Array.isArray(schema.type) && schema.type.includes('integer')))\n )\n}\n\n/** Special type guard to remove our internal type */\nexport const isSchema = (schema: SchemaObject | undefined): schema is Exclude<SchemaObject, { __scalar_: string }> =>\n schema !== undefined && 'type' in schema\n\n/**\n * Type guard to check if the given parameter is a ParameterWithContentObject,\n * i.e., it has a 'content' property defined.\n */\nexport const isContentTypeParameterObject = (parameter: ParameterObject): parameter is ParameterWithContentObject => {\n return 'content' in parameter && parameter.content !== undefined\n}\n"],
5
- "mappings": "AAGO,MAAM,iBAAiB,CAAC,WAA8E;AAC3G,SACE,UAAU,WAAW,OAAO,SAAS,YAAa,MAAM,QAAQ,OAAO,IAAI,KAAK,OAAO,KAAK,SAAS,QAAQ;AAEjH;AAEO,MAAM,gBAAgB,CAAC,WAA6E;AACzG,SAAO,UAAU,WAAW,OAAO,SAAS,WAAY,MAAM,QAAQ,OAAO,IAAI,KAAK,OAAO,KAAK,SAAS,OAAO;AACpH;AAEO,MAAM,iBAAiB,CAAC,WAA8E;AAC3G,SACE,UAAU,WAAW,OAAO,SAAS,YAAa,MAAM,QAAQ,OAAO,IAAI,KAAK,OAAO,KAAK,SAAS,QAAQ;AAEjH;AAEO,MAAM,iBAAiB,CAC5B,WACoE;AACpE,SACE,UAAU,WACT,OAAO,SAAS,YACf,OAAO,SAAS,aACf,MAAM,QAAQ,OAAO,IAAI,KAAK,OAAO,KAAK,SAAS,QAAQ,KAC3D,MAAM,QAAQ,OAAO,IAAI,KAAK,OAAO,KAAK,SAAS,SAAS;AAEnE;AAGO,MAAM,WAAW,CAAC,WACvB,WAAW,UAAa,UAAU;AAM7B,MAAM,+BAA+B,CAAC,cAAwE;AACnH,SAAO,aAAa,aAAa,UAAU,YAAY;AACzD;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/schemas/v3.1/strict/xml.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\n/**\n * A metadata object that allows for more fine-tuned XML model definitions.\n *\n * When using arrays, XML element names are not inferred (for singular/plural forms) and the name field SHOULD be used to add that information. See examples for expected behavior.\n */\nexport const XMLObjectSchemaDefinition = Type.Object({\n /** Replaces the name of the element/attribute used for the described schema property. When defined within items, it will affect the name of the individual XML elements within the list. When defined alongside type being \"array\" (outside the items), it will affect the wrapping element if and only if wrapped is true. If wrapped is false, it will be ignored. */\n name: Type.Optional(Type.String()),\n /** The URI of the namespace definition. Value MUST be in the form of a non-relative URI. */\n namespace: Type.Optional(Type.String()),\n /** The prefix to be used for the name. */\n prefix: Type.Optional(Type.String()),\n /** Declares whether the property definition translates to an attribute instead of an element. Default value is false. */\n attribute: Type.Optional(Type.Boolean()),\n /** MAY be used only for an array definition. Signifies whether the array is wrapped (for example, <books><book/><book/></books>) or unwrapped (<book/><book/>). Default value is false. The definition takes effect only when defined alongside type being \"array\" (outside the items). */\n wrapped: Type.Optional(Type.Boolean()),\n})\n\n/**\n * A metadata object that allows for more fine-tuned XML model definitions.\n *\n * When using arrays, XML element names are not inferred (for singular/plural forms) and the name field SHOULD be used to add that information. See examples for expected behavior.\n */\nexport type XMLObject = {\n /** Replaces the name of the element/attribute used for the described schema property. When defined within items, it will affect the name of the individual XML elements within the list. When defined alongside type being \"array\" (outside the items), it will affect the wrapping element if and only if wrapped is true. If wrapped is false, it will be ignored. */\n name?: string\n /** The URI of the namespace definition. Value MUST be in the form of a non-relative URI. */\n namespace?: string\n /** The prefix to be used for the name. */\n prefix?: string\n /** Declares whether the property definition translates to an attribute instead of an element. Default value is false. */\n attribute?: boolean\n /** MAY be used only for an array definition. Signifies whether the array is wrapped (for example, <books><book/><book/></books>) or unwrapped (<book/><book/>). Default value is false. The definition takes effect only when defined alongside type being \"array\" (outside the items). */\n wrapped?: boolean\n}\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAOd,MAAM,4BAA4B,KAAK,OAAO;AAAA;AAAA,EAEnD,MAAM,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA;AAAA,EAEjC,WAAW,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA;AAAA,EAEtC,QAAQ,KAAK,SAAS,KAAK,OAAO,CAAC;AAAA;AAAA,EAEnC,WAAW,KAAK,SAAS,KAAK,QAAQ,CAAC;AAAA;AAAA,EAEvC,SAAS,KAAK,SAAS,KAAK,QAAQ,CAAC;AACvC,CAAC;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/schemas/workspace-specification/index.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\nimport type { PartialDeep } from 'type-fest'\n\nimport { compose } from '@/schemas/compose'\nimport type { OpenApiDocument } from '@/schemas/v3.1/strict/openapi-document'\nimport { type WorkspaceMeta, WorkspaceMetaSchema } from '@/schemas/workspace'\nimport { type Info, InfoSchema } from '@/schemas/workspace-specification/info'\n\nexport const WorkspaceSpecificationSchema = compose(\n Type.Object({\n workspace: Type.Union([Type.Literal('draft')]),\n info: InfoSchema,\n documents: Type.Optional(\n Type.Record(\n Type.String(),\n Type.Object({\n $ref: Type.String(),\n }),\n ),\n ),\n overrides: Type.Optional(Type.Record(Type.String(), Type.Any())),\n }),\n WorkspaceMetaSchema,\n)\n\nexport type WorkspaceSpecification = {\n workspace: 'draft'\n info: Info\n documents?: Record<string, { $ref: string }>\n overrides?: Record<string, PartialDeep<OpenApiDocument>>\n} & WorkspaceMeta\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAGrB,SAAS,eAAe;AAExB,SAA6B,2BAA2B;AACxD,SAAoB,kBAAkB;AAE/B,MAAM,+BAA+B;AAAA,EAC1C,KAAK,OAAO;AAAA,IACV,WAAW,KAAK,MAAM,CAAC,KAAK,QAAQ,OAAO,CAAC,CAAC;AAAA,IAC7C,MAAM;AAAA,IACN,WAAW,KAAK;AAAA,MACd,KAAK;AAAA,QACH,KAAK,OAAO;AAAA,QACZ,KAAK,OAAO;AAAA,UACV,MAAM,KAAK,OAAO;AAAA,QACpB,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IACA,WAAW,KAAK,SAAS,KAAK,OAAO,KAAK,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC;AAAA,EACjE,CAAC;AAAA,EACD;AACF;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/schemas/workspace-specification/info.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\n\nexport const InfoSchema = Type.Object({\n title: Type.String(),\n description: Type.Optional(Type.String()),\n})\n\nexport type Info = {\n title: string\n description?: string\n}\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AAEd,MAAM,aAAa,KAAK,OAAO;AAAA,EACpC,OAAO,KAAK,OAAO;AAAA,EACnB,aAAa,KAAK,SAAS,KAAK,OAAO,CAAC;AAC1C,CAAC;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/schemas/workspace.ts"],
4
- "sourcesContent": ["import { Type } from '@scalar/typebox'\nimport { AVAILABLE_CLIENTS, type AvailableClients } from '@scalar/types/snippetz'\n\nimport { compose } from '@/schemas/compose'\nimport { extensions } from '@/schemas/extensions'\nimport {\n type XScalarEnvironments,\n xScalarEnvironmentsSchema,\n} from '@/schemas/extensions/document/x-scalar-environments'\nimport {\n type XScalarActiveEnvironment,\n XScalarActiveEnvironmentSchema,\n} from '@/schemas/extensions/general/x-scalar-active-environment'\nimport { type XScalarCookies, xScalarCookiesSchema } from '@/schemas/extensions/general/x-scalar-cookies'\nimport { type XScalarOrder, XScalarOrderSchema } from '@/schemas/extensions/general/x-scalar-order'\nimport { type XScalarActiveProxy, XScalarActiveProxySchema } from '@/schemas/extensions/workspace/x-scalar-active-proxy'\nimport { type XScalarTabs, XScalarTabsSchema } from '@/schemas/extensions/workspace/x-scalar-tabs'\n\nimport { OpenAPIDocumentSchema, type OpenAPIExtensions, type OpenApiDocument } from './v3.1/strict/openapi-document'\n\nexport type WorkspaceDocumentMeta = Omit<\n OpenAPIExtensions,\n 'x-original-oas-version' | 'x-scalar-original-source-url' | 'x-scalar-original-document-hash'\n>\n\n// Note: use Type.Intersect to combine schemas here because Type.Compose does not work as expected with Modules\nexport const WorkspaceDocumentSchema = OpenAPIDocumentSchema\nexport type WorkspaceDocument = OpenApiDocument\n\nexport const ColorModeSchema = Type.Union([Type.Literal('system'), Type.Literal('light'), Type.Literal('dark')])\n\nexport const WorkspaceMetaSchema = Type.Partial(\n compose(\n Type.Object({\n [extensions.workspace.colorMode]: ColorModeSchema,\n [extensions.workspace.defaultClient]: Type.Union(AVAILABLE_CLIENTS.map((client) => Type.Literal(client))),\n [extensions.workspace.activeDocument]: Type.String(),\n [extensions.workspace.theme]: Type.String(),\n [extensions.workspace.sidebarWidth]: Type.Number({ default: 288 }),\n }),\n XScalarActiveProxySchema,\n ),\n)\n\nexport type ColorMode = 'system' | 'light' | 'dark'\n\nexport type WorkspaceMeta = {\n [extensions.workspace.colorMode]?: ColorMode\n [extensions.workspace.defaultClient]?: AvailableClients[number]\n [extensions.workspace.activeDocument]?: string\n [extensions.workspace.theme]?: string\n [extensions.workspace.sidebarWidth]?: number\n} & XScalarActiveProxy\n\nexport const WorkspaceExtensionsSchema = compose(\n xScalarEnvironmentsSchema,\n XScalarActiveEnvironmentSchema,\n XScalarOrderSchema,\n xScalarCookiesSchema,\n XScalarTabsSchema,\n)\n\nexport type WorkspaceExtensions = XScalarEnvironments &\n XScalarActiveEnvironment &\n XScalarOrder &\n XScalarCookies &\n XScalarTabs\n\nexport const WorkspaceSchema = compose(\n WorkspaceMetaSchema,\n Type.Object({\n documents: Type.Record(Type.String(), WorkspaceDocumentSchema),\n /** Active document is possibly undefined if we attempt to lookup with an invalid key */\n activeDocument: Type.Union([Type.Undefined(), WorkspaceDocumentSchema]),\n }),\n WorkspaceExtensionsSchema,\n)\n\nexport type Workspace = WorkspaceMeta & {\n documents: Record<string, WorkspaceDocument>\n activeDocument: WorkspaceDocument | undefined\n} & WorkspaceExtensions\n\nexport type DocumentMetaExtensions = WorkspaceDocumentMeta & OpenAPIExtensions\n"],
5
- "mappings": "AAAA,SAAS,YAAY;AACrB,SAAS,yBAAgD;AAEzD,SAAS,eAAe;AACxB,SAAS,kBAAkB;AAC3B;AAAA,EAEE;AAAA,OACK;AACP;AAAA,EAEE;AAAA,OACK;AACP,SAA8B,4BAA4B;AAC1D,SAA4B,0BAA0B;AACtD,SAAkC,gCAAgC;AAClE,SAA2B,yBAAyB;AAEpD,SAAS,6BAA2E;AAQ7E,MAAM,0BAA0B;AAGhC,MAAM,kBAAkB,KAAK,MAAM,CAAC,KAAK,QAAQ,QAAQ,GAAG,KAAK,QAAQ,OAAO,GAAG,KAAK,QAAQ,MAAM,CAAC,CAAC;AAExG,MAAM,sBAAsB,KAAK;AAAA,EACtC;AAAA,IACE,KAAK,OAAO;AAAA,MACV,CAAC,WAAW,UAAU,SAAS,GAAG;AAAA,MAClC,CAAC,WAAW,UAAU,aAAa,GAAG,KAAK,MAAM,kBAAkB,IAAI,CAAC,WAAW,KAAK,QAAQ,MAAM,CAAC,CAAC;AAAA,MACxG,CAAC,WAAW,UAAU,cAAc,GAAG,KAAK,OAAO;AAAA,MACnD,CAAC,WAAW,UAAU,KAAK,GAAG,KAAK,OAAO;AAAA,MAC1C,CAAC,WAAW,UAAU,YAAY,GAAG,KAAK,OAAO,EAAE,SAAS,IAAI,CAAC;AAAA,IACnE,CAAC;AAAA,IACD;AAAA,EACF;AACF;AAYO,MAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAQO,MAAM,kBAAkB;AAAA,EAC7B;AAAA,EACA,KAAK,OAAO;AAAA,IACV,WAAW,KAAK,OAAO,KAAK,OAAO,GAAG,uBAAuB;AAAA;AAAA,IAE7D,gBAAgB,KAAK,MAAM,CAAC,KAAK,UAAU,GAAG,uBAAuB,CAAC;AAAA,EACxE,CAAC;AAAA,EACD;AACF;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/schemas.ts"],
4
- "sourcesContent": ["// biome-ignore lint/performance/noBarrelFile: This is a barrel file that re-exports workspace schemas\nexport { type Workspace, type WorkspaceDocument, WorkspaceDocumentSchema, WorkspaceSchema } from './schemas/workspace'\n"],
5
- "mappings": "AACA,SAAiD,yBAAyB,uBAAuB;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/server.ts"],
4
- "sourcesContent": ["import fs from 'node:fs/promises'\nimport { cwd } from 'node:process'\n\nimport { parseJsonPointerSegments } from '@scalar/helpers/json/parse-json-pointer-segments'\nimport { getValueAtPath } from '@scalar/helpers/object/get-value-at-path'\nimport type { LoaderPlugin } from '@scalar/json-magic/bundle'\nimport { fetchUrls, readFiles } from '@scalar/json-magic/bundle/plugins/node'\nimport { escapeJsonPointer } from '@scalar/json-magic/helpers/escape-json-pointer'\nimport { upgrade } from '@scalar/openapi-upgrader'\n\nimport { keyOf } from '@/helpers/general'\nimport { createNavigation } from '@/navigation'\nimport type { NavigationOptions } from '@/navigation/get-navigation-options'\nimport { extensions } from '@/schemas/extensions'\nimport type { TraversedDocument } from '@/schemas/navigation'\nimport { coerceValue } from '@/schemas/typebox-coerce'\nimport {\n type ComponentsObject,\n OpenAPIDocumentSchema,\n type OpenApiDocument,\n type OperationObject,\n type PathsObject,\n} from '@/schemas/v3.1/strict/openapi-document'\n\nimport type { Workspace, WorkspaceDocumentMeta, WorkspaceMeta } from './schemas/workspace'\n\nconst DEFAULT_ASSETS_FOLDER = 'assets'\nexport const WORKSPACE_FILE_NAME = 'scalar-workspace.json'\n\ntype WorkspaceDocumentMetaInput = {\n name: string\n meta?: WorkspaceDocumentMeta\n}\n\ntype UrlDoc = { url: string } & WorkspaceDocumentMetaInput\ntype FileDoc = { path: string } & WorkspaceDocumentMetaInput\ntype ObjectDoc = { document: Record<string, unknown> } & WorkspaceDocumentMetaInput\n\ntype WorkspaceDocumentInput = UrlDoc | ObjectDoc | FileDoc\n\ntype CreateServerWorkspaceStoreBase = {\n documents: WorkspaceDocumentInput[]\n meta?: WorkspaceMeta\n navigationOptions?: NavigationOptions\n}\ntype CreateServerWorkspaceStoreProps =\n | ({\n directory?: string\n mode: 'static'\n } & CreateServerWorkspaceStoreBase)\n | ({\n baseUrl: string\n mode: 'ssr'\n } & CreateServerWorkspaceStoreBase)\n\nconst httpMethods = new Set(['get', 'put', 'post', 'delete', 'options', 'head', 'patch', 'trace'])\n\n/**\n * Filters an OpenAPI PathsObject to only include standard HTTP methods.\n * Removes any vendor extensions or other non-HTTP properties.\n *\n * @param paths - The OpenAPI PathsObject to filter\n * @returns A new PathsObject containing only standard HTTP methods\n *\n * @example\n * Input: {\n * \"/users\": {\n * \"get\": {...},\n * \"x-custom\": {...},\n * \"post\": {...}\n * }\n * }\n * Output: {\n * \"/users\": {\n * \"get\": {...},\n * \"post\": {...}\n * }\n * }\n */\nexport function filterHttpMethodsOnly(paths: PathsObject): Record<string, Record<string, OperationObject>> {\n const result: Record<string, Record<string, OperationObject>> = {}\n\n // Todo: skip extension properties\n for (const [path, methods] of Object.entries(paths)) {\n if (!methods) {\n continue\n }\n\n const filteredMethods: Record<string, any> = {}\n\n for (const [method, operation] of Object.entries(methods)) {\n if (httpMethods.has(method.toLowerCase())) {\n filteredMethods[method] = operation\n }\n }\n\n if (Object.keys(filteredMethods).length > 0) {\n result[path] = filteredMethods\n }\n }\n\n return result\n}\n\n/**\n * Escapes path keys in an OpenAPI PathsObject to be JSON Pointer compatible.\n * This is necessary because OpenAPI paths can contain characters that need to be escaped\n * when used as JSON Pointer references (like '/' and '~').\n *\n * @example\n * Input: { \"/users/{id}\": { ... } }\n * Output: { \"/users~1{id}\": { ... } }\n */\nexport function escapePaths(\n paths: Record<string, Record<string, OperationObject>>,\n): Record<string, Record<string, OperationObject>> {\n const result: Record<string, Record<string, OperationObject>> = {}\n\n Object.keys(paths).forEach((path) => {\n if (paths[path]) {\n result[escapeJsonPointer(path)] = paths[path]\n }\n })\n\n return result\n}\n\n/**\n * Externalizes components by turning them into refs.\n */\nexport function externalizeComponentReferences(\n document: OpenApiDocument,\n meta: { mode: 'ssr'; name: string; baseUrl: string } | { mode: 'static'; name: string; directory: string },\n) {\n const result: Record<string, any> = {}\n\n if (!document.components) {\n return result\n }\n\n Object.entries(document.components).forEach(([type, component]) => {\n if (!component || typeof component !== 'object') {\n return\n }\n\n result[type] = {}\n Object.keys(component).forEach((name) => {\n const ref =\n meta.mode === 'ssr'\n ? `${meta.baseUrl}/${meta.name}/components/${type}/${name}#`\n : `./chunks/${meta.name}/components/${type}/${name}.json#`\n\n result[type][name] = { '$ref': ref, $global: true }\n })\n })\n\n return result\n}\n\n/**\n * Externalizes paths operations by turning them into refs.\n */\nexport function externalizePathReferences(\n document: OpenApiDocument,\n meta: { mode: 'ssr'; name: string; baseUrl: string } | { mode: 'static'; name: string; directory: string },\n) {\n const result: Record<string, any> = {}\n\n if (!document.paths) {\n return result\n }\n\n Object.entries(document.paths).forEach(([path, pathItem]) => {\n if (!pathItem || typeof pathItem !== 'object') {\n return\n }\n\n const pathItemRecord = pathItem as Record<string, unknown>\n\n result[path] = {}\n\n const escapedPath = escapeJsonPointer(path)\n\n keyOf(pathItemRecord).forEach((type) => {\n if (httpMethods.has(type)) {\n const ref =\n meta.mode === 'ssr'\n ? `${meta.baseUrl}/${meta.name}/operations/${escapedPath}/${type}#`\n : `./chunks/${meta.name}/operations/${escapedPath}/${type}.json#`\n\n result[path][type] = { '$ref': ref, $global: true }\n } else {\n result[path][type] = pathItemRecord[type]\n }\n })\n })\n\n return result\n}\n\ntype ServerWorkspace = Omit<Workspace, 'activeDocument'>\n\n/**\n * Resolves a workspace document from various input sources (URL, local file, or direct document object).\n *\n * @param workspaceDocument - The document input to resolve, which can be:\n * - A URL to fetch the document from\n * - A local file path to read the document from\n * - A direct document object\n * @returns A promise that resolves to an object containing:\n * - ok: boolean indicating if the resolution was successful\n * - data: The resolved document data\n *\n * @example\n * // Resolve from URL\n * const urlDoc = await loadDocument({ name: 'api', url: 'https://api.example.com/openapi.json' })\n *\n * // Resolve direct document\n * const directDoc = await loadDocument({\n * name: 'inline',\n * document: { openapi: '3.0.0', paths: {} }\n * })\n */\nfunction loadDocument(workspaceDocument: WorkspaceDocumentInput): ReturnType<LoaderPlugin['exec']> {\n if ('url' in workspaceDocument) {\n return fetchUrls().exec(workspaceDocument.url)\n }\n\n if ('path' in workspaceDocument) {\n return readFiles().exec(workspaceDocument.path)\n }\n\n return Promise.resolve({\n ok: true,\n data: workspaceDocument.document,\n raw: JSON.stringify(workspaceDocument.document),\n })\n}\n\n/**\n * Server workspace store interface\n */\nexport type ServerWorkspaceStore = {\n /**\n * Loads and registers a document in the workspace.\n *\n * Supported inputs include:\n * - `url`: fetch and parse an OpenAPI document from a remote URL\n * - `path`: read and parse an OpenAPI document from the filesystem\n * - `document`: use an in-memory OpenAPI object directly\n *\n * If loading fails, the document is not added.\n *\n * @example\n * ```ts\n * await store.addDocument({\n * url: 'https://example.com/openapi.json',\n * name: 'petstore',\n * })\n *\n * await store.addDocument({\n * path: './specs/billing.yaml',\n * name: 'billing',\n * })\n * ```\n *\n * @param input - Source and metadata used to load and register the document\n */\n addDocument: (input: WorkspaceDocumentInput, navigationOptions?: NavigationOptions) => Promise<void>\n /**\n * Generates chunk files for all loaded documents.\n *\n * Only available in `static` mode. Writes chunk files for:\n * - workspace metadata\n * - components (schemas, parameters, responses, etc.)\n * - operations (grouped by path and HTTP method)\n *\n * After generation, workspace references point to relative file paths.\n *\n * @example\n * ```ts\n * const store = await createServerWorkspaceStore({\n * mode: 'static',\n * outputPath: './dist/workspace',\n * meta: { title: 'Docs' },\n * })\n *\n * await store.generateWorkspaceChunks()\n * ```\n *\n * @throws {Error} If called when mode is not 'static'\n */\n generateWorkspaceChunks: () => Promise<void>\n /**\n * Returns the current workspace payload.\n *\n * The payload contains workspace metadata plus sparse documents whose heavy\n * sections are replaced by references:\n * - in `ssr` mode, references resolve from in-memory assets\n * - in `static` mode, references point to generated chunk files\n *\n * @example\n * ```ts\n * const workspace = store.getWorkspace()\n *\n * // Read available document names\n * const names = Object.keys(workspace.documents)\n * ```\n *\n * @returns Workspace metadata and document references used by the client\n */\n getWorkspace: () => ServerWorkspace\n /**\n * Resolves a chunk by JSON Pointer.\n *\n * Pointers can target component and operation chunks for loaded documents.\n * Returns `undefined` when the pointer does not resolve.\n *\n * @example\n * ```ts\n * // Resolve a component chunk\n * const userSchema = store.get('#/petstore/components/schemas/User')\n *\n * // Resolve an operation chunk\n * const listPets = store.get('#/petstore/operations/pets/get')\n * ```\n *\n * @param pointer - JSON Pointer to the desired chunk\n * @returns The resolved chunk, or `undefined` when not found\n */\n get: (pointer: string) => unknown\n}\n\n/**\n * Create server state workspace store\n */\nexport async function createServerWorkspaceStore(\n workspaceProps: CreateServerWorkspaceStoreProps,\n): Promise<ServerWorkspaceStore> {\n /**\n * Base workspace document containing essential metadata and document references.\n *\n * This workspace document provides the minimal information needed for initial rendering.\n * All components and path operations are replaced with references to enable lazy loading.\n *\n * In SSR mode, references point to API endpoints.\n * In static mode, references point to filesystem chunks.\n */\n const workspace: ServerWorkspace = {\n ...workspaceProps.meta,\n documents: {} as Record<string, OpenApiDocument & { [extensions.document.navigation]: TraversedDocument }>,\n }\n\n /**\n * A map of document chunks that can be loaded asynchronously by the client.\n * Each document is split into components and operations to enable lazy loading.\n * The keys are document names and values contain the components and operations\n * for that document.\n */\n const assets = {} as Record<\n string,\n { components?: ComponentsObject; operations?: Record<string, Record<string, OperationObject>> }\n >\n\n /**\n * Adds a new document to the workspace.\n *\n * This function processes an OpenAPI document by:\n * 1. Converting it to OpenAPI 3.1 format if needed\n * 2. Separating it into reusable components and path operations\n * 3. Externalizing references based on the workspace mode (SSR or static)\n * 4. Adding the processed document to the workspace with its metadata\n *\n * The resulting document contains minimal information with externalized references\n * that will be resolved on-demand through the workspace's get() method.\n *\n * @param document - The OpenAPI document to process and add\n * @param meta - Document metadata containing the required name and optional settings\n */\n const addDocumentSync = (\n document: Record<string, unknown>,\n meta: { name: string } & WorkspaceDocumentMeta,\n navigationOptions?: NavigationOptions,\n ) => {\n const { name, ...documentMeta } = meta\n\n const documentV3 = coerceValue(OpenAPIDocumentSchema, upgrade(document, '3.1'))\n\n // add the assets\n assets[meta.name] = {\n components: documentV3.components,\n operations: documentV3.paths && escapePaths(filterHttpMethodsOnly(documentV3.paths)),\n }\n\n const options =\n workspaceProps.mode === 'ssr'\n ? { mode: workspaceProps.mode, name, baseUrl: workspaceProps.baseUrl }\n : { mode: workspaceProps.mode, name, directory: workspaceProps.directory ?? DEFAULT_ASSETS_FOLDER }\n\n const components = externalizeComponentReferences(documentV3, options)\n const paths = externalizePathReferences(documentV3, options)\n\n // Build the sidebar entries\n const navigation = createNavigation(name, documentV3, navigationOptions ?? workspaceProps.navigationOptions)\n\n // The document is now a minimal version with externalized references to components and operations.\n // These references will be resolved asynchronously when needed through the workspace's get() method.\n workspace.documents[meta.name] = {\n ...documentMeta,\n ...documentV3,\n components,\n paths,\n [extensions.document.navigation]: navigation,\n }\n }\n\n /**\n * Adds a new document to the workspace asynchronously.\n *\n * This function:\n * 1. Loads the document using the provided input\n * 2. Checks if the document loaded successfully\n * 3. If successful, adds the document to the workspace using addDocumentSync\n *\n * @param input - The document input containing the document source and metadata\n */\n const addDocument: ServerWorkspaceStore['addDocument'] = async (input, navigationOptions) => {\n const document = await loadDocument(input)\n\n if (!document.ok) {\n console.warn(`Failed to load document \"${input.name}`)\n return\n }\n\n addDocumentSync(document.data as Record<string, unknown>, { name: input.name, ...input.meta }, navigationOptions)\n }\n\n // Load and process all initial documents in parallel\n await Promise.all(workspaceProps.documents.map((document) => addDocument(document)))\n\n return {\n generateWorkspaceChunks: async () => {\n if (workspaceProps.mode !== 'static') {\n throw 'Mode has to be set to `static` to generate filesystem workspace chunks'\n }\n\n // Write the workspace document\n const basePath = `${cwd()}/${workspaceProps.directory ?? DEFAULT_ASSETS_FOLDER}`\n await fs.mkdir(basePath, { recursive: true })\n\n // Write the workspace contents on the file system\n await fs.writeFile(`${basePath}/${WORKSPACE_FILE_NAME}`, JSON.stringify(workspace))\n\n // Write the chunks\n for (const [name, { components, operations }] of Object.entries(assets)) {\n // Write the components chunks\n if (components) {\n for (const [type, component] of Object.entries(components as Record<string, Record<string, unknown>>)) {\n const componentPath = `${basePath}/chunks/${name}/components/${type}`\n await fs.mkdir(componentPath, { recursive: true })\n\n for (const [key, value] of Object.entries(component)) {\n await fs.writeFile(`${componentPath}/${key}.json`, JSON.stringify(value))\n }\n }\n }\n\n // Write the operations chunks\n if (operations) {\n for (const [path, methods] of Object.entries(operations)) {\n const operationPath = `${basePath}/chunks/${name}/operations/${path}`\n await fs.mkdir(operationPath, { recursive: true })\n\n for (const [method, operation] of Object.entries(methods)) {\n await fs.writeFile(`${operationPath}/${method}.json`, JSON.stringify(operation))\n }\n }\n }\n }\n },\n getWorkspace: () => {\n return workspace\n },\n get: (pointer: string) => {\n const pointerPath = (() => {\n if (pointer.startsWith('#')) {\n return pointer.slice(1)\n }\n\n if (pointer.startsWith('/')) {\n return pointer\n }\n\n try {\n return new URL(pointer).pathname\n } catch {\n return pointer\n }\n })()\n\n // Keep the path segments escaped cuz we store them on the filesystem as escaped sequences\n const path = parseJsonPointerSegments(pointerPath).map(escapeJsonPointer)\n return getValueAtPath(assets, path)\n },\n addDocument,\n }\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }