PackageTrack

npm

@scalar/types

0.18.3scalar/scalar

Types to work with Scalar packages

Release timeline

130 releases since 2024
20242026

One column per month.

Releases

  1. 0.18.328 Aug 2026
    Release notes

    Patch Changes

    • #9983: Bump the zod catalog to ^4.4.3 so the standalone bundle ships a single zod instead of two (4.3.5 from @scalar/types plus 4.4.3 from the ai / @ai-sdk peer). This makes standalone.js ~68KB raw / ~18KB gzip smaller.

    • #9967: Add a new @scalar/openapi-validator package that validates OpenAPI documents on its own. @scalar/openapi-parser now uses it under the hood.

      Two type-level changes in @scalar/openapi-parser are worth noting:

      • ErrorObject.path is now string | string[] instead of string[]. Schema errors carry a JSON Pointer string, semantic errors carry path segments — both shapes were already produced at runtime, the type just says so now. Narrow with Array.isArray before treating it as a list.
      • The unused ValidationOutcome type and the internal OpenApiDocument alias are no longer exported.
    Open source →
  2. 0.18.220 Aug 2026
    Release notes

    Patch Changes

    • #9941: Republish every package through npm trusted publishing. No functional changes.
    Open source →
  3. 0.18.013 Aug 2026
    Release notes

    Minor Changes

    • #9868: Control OAuth2 flow tabs from your OpenAPI document. Add x-order to a flow to set the order of the tabs in the auth section (the first tab is selected by default, so the lowest x-order also becomes the default flow), and add x-scalar-ignore to a flow to hide its tab — useful for flows that cannot run in the browser, like Client Credentials, which usually fails on CORS. x-scalar-ignore on a whole security scheme now hides it from the auth selector too.
    Open source →
  4. 0.17.17 Aug 2026
    Release notes

    Patch Changes

    • #9684: Type the defaultHttpClient config against the real client ids. targetKey and clientKey were plain string, so there was no autocomplete and no error when the value was wrong — for example passing the display title 'Fetch' instead of the client id 'fetch', which silently did nothing. They are now typed to the actual targets and clients, in both the @scalar/types and @scalar/schemas definitions.
    Open source →
  5. 0.17.031 Jul 2026
    Release notes

    Minor Changes

    • #9711: feat: add pluginUrls configuration option to load API Reference plugins from URLs

      Each entry must point to an ESM module that exports a plugin (the same shape as the plugins entries) as its default export. The standalone build (Scalar.createApiReference) imports the modules before the API reference mounts and registers their default exports alongside the plugins passed directly. Unlike plugins, the new option is JSON-serializable, so integrations that pass their configuration as JSON (for example the Docker container or Scalar for Aspire) can load plugins without replacing the whole bundle.

    Patch Changes

    • #9683: Surface the required OAuth scopes for an operation as a dedicated "OAuth scopes" section below the description (above parameters), instead of only inside the "Auth Required" badge popover. Scopes are de-duplicated across security alternatives and shown in both the modern and classic layouts, as well as on AsyncAPI operations.
    • #9680: Tie a snippetz plugin's client to its target at the type level. Before, a plugin could pair any target with any client (for example node + curl) without a type error. Now target: 'node' only allows node clients, and TypeScript catches mistakes like using the display title 'Fetch' where the lowercase client id 'fetch' is expected.
    • #9685: Type the hiddenClients config against the real target and client ids. It was Record<string, boolean | string[]> | string[] | true, so there was no autocomplete and no error on a typo. An array entry is now typed as a target ('node'), a client name ('fetch'), or a full id ('node/fetch'), and the record form is keyed by target. Runtime stays permissive, so unknown names are still ignored gracefully as before.
    Open source →
  6. 0.16.416 Jul 2026
    Release notes

    Patch Changes

    • #9719: docs: update the Scalar platform overview block in the README
    Open source →
  7. 0.16.315 Jul 2026
    Release notes

    Patch Changes

    • #9710: Republish so the updated README (with the Scalar platform overview) reaches npm. Also renames the README generator metadata in package.json from readme to scalarReadme: npm treats a readme field as the readme text itself, so affected packages were published with a literal [object Object] readme on the registry instead of README.md.
    Open source →
  8. 0.16.28 Jul 2026
    Release notes

    Patch Changes

    • #9639: Add a read-only accessor for the global authentication state to the plugin API. Plugin lifecycle hooks (onInit, onConfigChange) now receive an auth accessor alongside config, and the plugin manager exposes getAuthState() for view components. Plugins can read stored secrets and the selected security schemes via auth.export(), auth.getAuthSecrets(documentName, schemeName), and auth.getAuthSelectedSchemas(payload) without being able to mutate auth.
    Open source →
  9. 0.16.12 Jul 2026
    Release notes

    Patch Changes

    • #9630: Render AsyncAPI tags without the extra horizontal indentation on nested channels, and replace the empty "Operations" card in an AsyncAPI tag header with a "Channels" card that lists the channels in the tag.
    Open source →
  10. 0.16.026 Jun 2026
    Release notes

    Minor Changes

    • #9597: Add API Reference UI localization configuration with built-in English, Russian, Spanish, French, German, Simplified Chinese and Arabic translations, including automatic RTL direction for Arabic locales.

      Update the shared theme reset so text inputs align to the logical start by default for RTL documents.

      Add a mergeObjects deep-merge helper to @scalar/helpers, used by the localization layer to merge translation overrides onto the built-in locale.

    Patch Changes

    • #9577: Stop marking the per-source title and slug as deprecated. They are the supported way to name a document and its URL when using multiple sources, so the deprecation note (and editor strike-through) was misleading.
    Open source →
  11. 0.15.022 Jun 2026
    Release notes

    Minor Changes

    • #9515: feat: add requestBuilt client plugin hook and onRequestBuilt configuration callback that receive the exact fetch Request that is sent over the wire

      The hook runs after the request has been built, right before it is sent. Header mutations apply to the outgoing request and the body bytes match what the server receives, which makes request signing possible: hashing the body of a rebuilt multipart/form-data request would produce a different multipart boundary than the request that is actually sent.

    Open source →
  12. 0.14.017 Jun 2026
    Release notes

    Minor Changes

    • #9478: Add content.start plugin view slot and sidebar visibility option for plugin view components.
      • content.start: A new view slot that renders custom plugin components before the Introduction/Info section (at the top of the content area).
      • sidebar option on ViewComponent: Plugins can now opt-in to display a sidebar entry for their custom views by providing sidebar: { show: true, label: 'My Page' }. Omitting sidebar or setting show: false hides the entry from the sidebar. The entry hooks into the existing navigation, so clicking it scrolls to the plugin view and it highlights as it scrolls into view.

    Patch Changes

    • #9529: Remove the unused isLoading configuration option. It was never wired to a consumer, so it had no effect on the rendered references.
    • #9528: Remove the unused onSpecUpdate configuration option. It was never wired to a consumer, so the callback never fired.
    Open source →
  13. 0.13.311 Jun 2026
    Release notes

    Patch Changes

    • #9342: fix: resolve operations when OpenAPI path items use $ref

      Path entries and webhooks can reference components.pathItems instead of inlining operations. Navigation, mutators, search, and markdown export now resolve path-item references before reading HTTP methods and path-level parameters.

    Open source →
  14. 0.13.29 Jun 2026
    Release notes

    Patch Changes

    • #9471: Restore support for the deprecated source install command on x-scalar-sdk-installation. When set, it is appended to description as a fenced code block (or used on its own when there is no description). description remains the promoted field.
    Open source →
  15. 0.13.19 Jun 2026

    Nothing published for this version

  16. 0.13.08 Jun 2026
    Release notes

    Minor Changes

    • #9398: feat: read code samples from x-readme, x-stainless and x-scalar extensions

      In addition to x-codeSamples, the code sample picker now reads custom samples from x-scalar-examples, x-stainless-snippets, x-stainless-examples, and x-readme.code-samples. When more than one is present on an operation, the highest-priority source is used (x-scalar-examples > x-stainless-snippets > x-stainless-examples > x-readme > x-codeSamples).

    • #9422: Add a nonce option for Content Security Policy support.

      When you pass a nonce, the rendered HTML stamps it onto the inline <script> and the CDN <script> tag (and Scalar's own <style> tags, plus a matching <meta property="csp-nonce">). This lets the API Reference run under a strict script-src with no unsafe-inline and no unsafe-eval.

      ApiReference({
        url: '/openapi.json',
        // Match this value in your `script-src` CSP directive.
        nonce: 'r4nd0m',
      })
      

      Note: style-src still needs 'unsafe-inline'. The reference renders inline style="…" attributes, which a CSP nonce can never authorize (nonces only apply to <script>, <style> and <link> elements), so a nonce-only style-src is not possible. The win is a fully strict script-src.

    • #9400: feat(api-reference): add expandAllSchemaProperties config option.

      When enabled, nested schema properties are expanded by default while keeping the "Show/Hide Child Attributes" button available for manual collapsing. Expansion is cycle-safe: every finite branch is expanded fully, and self-referential ($ref or inline) schemas stop at the point they would otherwise recurse forever.

    Patch Changes

    • #9438: feat(api-reference): add an AsyncAPI server selector

      Adds a server selector for AsyncAPI documents in the API reference introduction. It mirrors the OpenAPI server selector but works with the AsyncAPI server shape (a named map of host/protocol/pathname), labelling each server with its constructed connection URL.

      Server selection and variable changes are now persisted to the workspace store via new asyncapi-server:update:selected and asyncapi-server:update:variables events and their mutators, mirroring the OpenAPI wiring.

    Open source →
  17. 0.12.32 Jun 2026
    Release notes

    Patch Changes

    • #9340: feat: add getChannelConnectionContext for AsyncAPI WebSocket channels

      Add channel connection context helpers that resolve channel, messages, parameters, servers, security, and connection URL for WebSocket client UI.

    • #9309: feat: add modelsSectionLabel configuration ('Models' | 'Schemas' | string) to use OpenAPI-style Schemas terminology in the sidebar, content, and search.

    • #7618: feat(api-reference): add setPageTitle to customize the browser tab title

      Pass a setPageTitle function to control the browser tab title. It is called whenever the section in view changes — on sidebar clicks, on scroll, and when switching documents — and receives the section title and the active OpenAPI document:

      setPageTitle: ({ title, document }) => `${document.title} – ${title}`
      
    Open source →
  18. 0.12.222 May 2026
    Release notes

    Patch Changes

    • #9313: feat: add AsyncAPI connection URL builder and server list helpers
    Open source →
  19. 0.12.122 May 2026
    Release notes

    Patch Changes

    • #9311: feat: add typed AsyncAPI WebSocket binding schema
      • Add asyncApiWsBindingObject for bindings.ws with method, query, headers, and bindingVersion
      • Add asyncApiSchemaObjectOrReference (Schema Object | Reference Object) for WebSocket binding fields that exclude Multi Format Schema Object
      • Regenerate @scalar/types/asyncapi/3.1 types
    Open source →
  20. 0.12.021 May 2026
    Release notes

    Minor Changes

    • #9264: feat: add AsyncAPI 3.1 types and @scalar/types/asyncapi/3.1 export
    • #9297: feat: add asyncapi extensions

    Patch Changes

    • #9169: feat: add customFetch to the api-reference configuration and forward it to the API client so requests (including "Test Request" calls) use the custom fetch — enabling things like credentials: 'include'. The previous fetch option is deprecated and migrated automatically with a console warning.
    • #9294: refactor: move the schemas to the schemas folder and generate the types from schemas
    • #9292: refactor: move extensions to the schema package
    Open source →
  21. 0.11.014 May 2026
    Release notes

    Minor Changes

    • #9211: feat: write pure types without using the zod schemas
    Open source →
  22. 0.9.65 May 2026

    Nothing published for this version

  23. 0.9.530 Apr 2026

    Nothing published for this version

  24. 0.9.429 Apr 2026

    Nothing published for this version

  25. 0.9.328 Apr 2026

    Nothing published for this version

  26. 0.9.223 Apr 2026

    Nothing published for this version

  27. 0.9.118 Apr 2026
    Release notes

    Patch Changes

    • #8862: add python/aiohttp as a supported code snippet client and expose it through shared snippet client types and config schemas
    • #8810: refactor: move telemetry to an optional plugin
    Open source →
  28. 0.9.016 Apr 2026
    Release notes

    Minor Changes

    • #8771: feat(snippetz): migrate R code snippets from httr to httr2

    Patch Changes

    • #8817: feat(snippetz): add a Laravel HTTP client plugin for PHP snippets

      Added a new php/laravel client generator in @scalar/snippetz, including comprehensive request coverage for headers, cookies, auth, query params, JSON, multipart, form-encoded, binary, and fallback bodies.

      Updated generated client registries and schema wiring so the new client is available across Scalar:

      • @scalar/types GROUPED_CLIENTS / AVAILABLE_CLIENTS
      • @scalar/workspace-store reference-config schema
      • generated docs and integration client enums

      Updated api-client expectations for the increased total built-in client count.

    Open source →
  29. 0.8.09 Apr 2026
    Release notes

    Minor Changes

    • #8695: feat: suport pre/post request scripts
    Open source →
  30. 0.7.63 Apr 2026
    Release notes

    Patch Changes

    • #8661: fix(api-client): support OAuth redirect callback override for Electron-friendly flows
    • #8664: refactor: replace wildcard export barrels with explicit named re-exports
    Open source →
  31. 0.7.525 Mar 2026
    Release notes

    Patch Changes

    • #8574: feat: make external urls configurable
    Open source →
  32. 0.7.418 Mar 2026
    Release notes

    Patch Changes

    • #8466: chore: new build pipeline
    Open source →
  33. 0.7.312 Mar 2026
    Release notes

    Patch Changes

    Updated Dependencies

    • @scalar/[email protected]
      • #8420: fix TypeScript access to navigator.userAgentData in isMacOS without ts-expect-error
    Open source →
  34. 0.7.210 Mar 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  35. 0.7.110 Mar 2026
    Release notes

    Patch Changes

    • #8381: feat: add mcp config support
    Open source →
  36. 0.7.04 Mar 2026
    Release notes

    Minor Changes

    • #8322: chore: bump required node version to >=22 (LTS)

    Patch Changes

    Updated Dependencies

    Open source →
  37. 0.6.103 Mar 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  38. 0.6.92 Mar 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  39. 0.6.826 Feb 2026
    Release notes

    Patch Changes

    • #8274: feat(agent): add config to hide search api
    Open source →
  40. 0.6.724 Feb 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  41. 0.6.619 Feb 2026
    Release notes

    Patch Changes

    • #8212: chore: version bump

    Updated Dependencies

    Open source →
  42. 0.6.316 Feb 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  43. 0.6.23 Feb 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  44. 0.6.130 Jan 2026
    Release notes

    Patch Changes

    • #8000: fix(agent): change enabled flag to disabled
    • #7995: feat: enable/disable agent scalar

    Updated Dependencies

    Open source →
  45. 0.6.028 Jan 2026
    Release notes

    Minor Changes

    • #7959: feat(agent): add agent scalar to localhost
    Open source →
  46. 0.5.1024 Jan 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  47. 0.5.924 Jan 2026
    Release notes

    Patch Changes

    • #7866: chore: expose har types
    Open source →
  48. 0.5.816 Jan 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  49. 0.5.714 Jan 2026
    Release notes

    Patch Changes

    Updated Dependencies

    Open source →
  50. 0.5.68 Jan 2026
    Release notes

    Patch Changes

    • #7661: fix: all issues for client modal v2 preparation

    Updated Dependencies

    Open source →
  51. 0.5.58 Jan 2026
    Release notes

    Patch Changes

    • #7605: fix: all issues for client modal v2 preparation

    Updated Dependencies

    Open source →
  52. 0.5.418 Dec 2025
    Release notes

    Patch Changes

    • #7567: feat: add code samples to client v2

    Updated Dependencies

    Open source →
  53. 0.5.210 Dec 2025
    Release notes

    Patch Changes

    Open source →
  54. 0.5.14 Dec 2025
    Release notes

    Patch Changes

    Open source →
  55. 0.5.019 Nov 2025
    Release notes

    Minor Changes

    Patch Changes

    Open source →
  56. 0.4.03 Nov 2025
    Release notes

    Minor Changes

    • #7129 6ec8c29 Thanks @geoffgscott! - Simplify ApiReferences state management and migrate to new shared sidebar component. Eliminates the useSidebar and useNav hooks in favour of event bubbling and centralized state management in ApiReference.vue

    Patch Changes

    Open source →
  57. 0.3.214 Oct 2025
    Release notes

    Patch Changes

    • f3e17d8: fix(types): allow async callbacks for event handlers
    • Updated dependencies [f69e7cc]
    Open source →
  58. 0.3.18 Oct 2025
    Release notes

    Patch Changes

    • 1e01464: Adds a new ApiReferenceConfigWithSource type and make the base ApiReferenceConfig type agnostic of any document sources.
    • Updated dependencies [15c4240]
    Open source →
  59. 0.3.02 Oct 2025
    Release notes

    Minor Changes

    • 008a0f3: feat: migrate to Zod 4

    Patch Changes

    Open source →
  60. 0.2.1619 Sept 2025
    Release notes

    Patch Changes

    • 005fba9: feat: documentDownloadType: 'direct'
    Open source →