Commit Graph

633 Commits

Author SHA1 Message Date
Vladimír Gorej
3a86443322 fix: add missing HTML id attributes (#9563)
Refs #9523

Co-authored-by: Reges Mendes <reges.mendes@gmail.com>
2024-02-09 10:53:21 +01:00
Vladimír Gorej
252c81ae8e refactor: replace defaultProps with JavaScript default parameters (#9464)
This change in specific to React components and
React@18 version.

Refs #9456
2024-01-08 10:45:09 +01:00
Joon Kyoung
d5a51463ff fix: use JavaScript default parameters instead React's defaultProps (#9453) 2024-01-04 14:32:21 +01:00
Artur
9a7c4c0593 fix(auth): allow password managers to pre-fill input fields (#9390)
HTML disallows having multiple IDs with the same value.

In reality this is for 1Password's feature where you can create
custom fields named like input IDs and 1Password fill pre-fill that.
2023-11-22 09:48:09 +01:00
Ochuko Pedro
8f93354c81 fix(styling): ensure authorize button stays on the right (#9387)
Refs #8940 
Refs #9325
2023-11-20 13:00:21 +01:00
Ochuko Pedro
e34d8fb874 fix(styling): make Operations more responsive on smaller screens (#9325)
Along with the operations, Topbar and Authorization button
has been made more responsive as well.

Refs #8940
2023-11-10 18:17:05 +01:00
Michał Korczak
f803fa3410 fix(response-body): show download button both for non-empty Blob and string responses (#9343)
Co-authored-by: Vladimír Gorej <vladimir.gorej@gmail.com>

Refs #9298
2023-11-09 14:48:16 +01:00
Maggie Wachs
2a4afd94f6 fix(a11y): remove redundant aria-label from accordion button (#9361) 2023-11-09 13:54:10 +01:00
Patryk Rosiak
1addcfebb5 feat: add wrapper for version labels (#9264)
Refs #9167
2023-09-28 19:21:03 +02:00
Krzysztof Kowalczyk
c2c6ba60b1 feat(operation-summary): move JumpToPath component after collapse/expand icons (#9230)
The goal if to have collapse/expand icon always 
in the extreme right possition.

Refs #9111
2023-09-22 12:07:24 +02:00
Vladimír Gorej
b7f533174a fix(security): allow more strict CSP for SVG assets (#9209)
Refs #7540
2023-09-14 12:34:13 +02:00
Jelle Aret
2c04153614 feat(a11y): provide additional context for authorization and logout button (#8999)
Refs #8998

Co-authored-by: Vladimír Gorej <vladimir.gorej@gmail.com>
2023-09-07 10:00:03 +02:00
Vladimír Gorej
edd1153723 feat: expose plugins and presets on SwaggerUI global symbol (#9189)
Part of this commit is also:
- complete plugins consolidation
- complete presets consolidation
- build system consolidation

Refs #9188
2023-09-05 09:56:51 +02:00
Krzysztof Kowalczyk
4b48e36c09 feat(info): indicate OpenAPI 2.0 definition version (#9167) 2023-08-31 13:09:48 +02:00
Aleksandr Vladykin
c90ef50e73 fix(ui): make download button accessible via keyboard (#8974)
Refs #8881
2023-08-16 17:06:50 +02:00
Vladimír Gorej
377b54a998 fix(ui): change copy to clipboard button location (#9111)
Refs #8465
Refs #8153
Refs #8131
2023-08-16 16:43:31 +02:00
Damian Polewski
f3ea2a251d feat: add Icons plugin
* Change existing icons to React wrapper components

* Add `icons` plugin to expose Icon components to plugin system

* Create components that re-export Lock and Unlock components so they can be changed separately in Authorise top button and Authorise operation summary button

* Add new Lock and Unlock icons to `auth` plugin

---------

Co-authored-by: Vladimír Gorej <vladimir.gorej@smartbear.com>
2023-07-20 14:51:17 +02:00
Vladimír Gorej
1ce9ce0cda refactor: use samples plugin to generate schemas examples (#8728)
Refs #8577
2023-06-01 14:09:02 +02:00
Vladimir Gorej
b4e9544f5f Merge branch 'master' into next 2023-04-26 14:01:09 +02:00
Krzysztof Kowalczyk
cdfc4de43e fix(response-body): remove download button when content is empty (#8579)
Co-authored-by: Vladimír Gorej <vladimir.gorej@gmail.com>
2023-04-26 13:42:49 +02:00
Vladimir Gorej
10a2397e81 Merge branch 'master' into next 2023-03-21 14:19:43 +01:00
Vladimír Gorej
47e12f1de3 refactor(oas31): simplify Webhooks component by utilizing selectors (#8481)
Refs #8474
2023-03-17 18:14:23 +01:00
Vladimír Gorej
8b274414ab refactor(oas31): concentrate OpenAPI 3.1.0 code to separate plugin (#8475)
Refs #8474
2023-03-16 12:05:19 +01:00
Enzzo
44e2700c74 fix: decode model schema name on model component (#8400)
Refs #5626
2023-03-13 11:59:44 +01:00
Tim Lai
4557b2497b feat: OpenAPI 3.1 support (#8367)
- New top-level field - `webhooks`. This allows describing out-of-band webhooks that are available as part of the API.

- New top-level field - `jsonSchemaDialect`. This allows defining of a default `$schema` value for Schema Objects

- The Info Object has a new `summary` field.

- The License Object now has a new `identifier` field for SPDX licenses. This `identifier` field is mutually exclusive with the `url` field. Either can be used in OpenAPI 3.1 definitions.

- Components Object now has a new entry `pathItems`, to allow for reusable Path Item Objects to be defined within a valid OpenAPI document.

- `License` and `Contact` components are now exported and available via `getComponent`

- New version predicates and selectors for `isOpenAPI30` and `isOpenAPI31`. This avoids needing to change the usage of `isOAS3` selector.

- New OAS3 components: `Webhooks`

- New OAS3 wrapped components: `Info`, `License`
2023-02-03 14:06:56 -08:00
Mathias Spanhove
ffe24d5a83 fix(try-it-out): reset of oas3 requestBody should use default values (#8265)
Co-authored-by: Mathias Spanhove <mathias.spanhove@katoennatie.com>
2022-11-08 15:23:19 -08:00
Andreas Born
7b0ac1ae28 fix: show client secret input for PKCE auth code flow (#8268)
* fix: show client secret input for PKCE auth code flow

PKCE and Client Secrets are allowed to coexist and neither is designed
as a replacement for the other. [1] It is wrong to assume that a client
secret must not or cannot be used in combination with PKCE. Quite the
opposite, when possible both PKCE and client secret should be used. [2]
So the premises of #6290 and #8146 are not correct.

Admittedly, for users of the PKCE mechanism WITHOUT a client secret it
might be a minor nuisance to see the client secret input in the Swagger
UI. But they can just leave it empty. On the other hand, for users of
the PKCE mechanism WITH a client secret it is more than just a nuisance
if the client secret input is not shown. The Swagger UI becomes unusable
for them (unless they've set a default value for the client secret,
which will be used hiddenly without being shown to the user).

Therefore the right course of action for now would be to revert #7438 to
show the client secret input always regardless of PKCE. In the future a
new flag could be introduced to hide the client secret input regardless
of the PKCE flag.

[1] https://oauth.net/2/pkce/
[2] https://www.oauth.com/oauth2-servers/pkce/

* docs: explain why client secret input is shown despite PKCE
2022-11-04 15:46:38 -07:00
Dan Wallis
130a1be133 feat(try-it-out): display validation error messages (#8212) 2022-10-14 09:36:13 -07:00
twjasa
6c03465257 fix: expand model if depth <= defaultModelExpandDepth (#8186) 2022-09-21 15:57:37 -07:00
Fabian Schneider
6ae2693d47 feat: Render external docs links and descriptions (#7559)
Co-authored-by: Tim Lai <timothy.lai@smartbear.com>
2022-08-17 10:42:36 -07:00
Andreas Deininger
9891d97201 docs: fix typos and update https references (#8154)
Co-authored-by: Tim Lai <timothy.lai@smartbear.com>
2022-08-12 10:14:27 -07:00
Vladimir Slesarev
c63737d574 fix(auth): client_secret may appear in non-authcode flows while also using PKCE (#8146) 2022-08-10 09:28:37 -07:00
Tim Lai
d68b7485b1 fix(lint): upcoming eslint@8 reported errors (#8105)
* fix: duplicate propTypes

* chore(lint): fix extra semicolon
2022-07-19 14:46:43 -07:00
Tim Lai
80cffc2544 fix: audio src cache change (#8102)
* #8057 Fix audio src change issue caused by reconciliation algorithm and that is why audio file load is not starting.


Co-authored-by: Roman Melnyk <r.melnyk@smartrockstars.com>
2022-07-19 11:10:28 -07:00
Tomas Bruckner
0d5227bb5d feat(ux): add copy to clipboard to operation summary (#8094) 2022-07-18 10:48:57 -07:00
twjasa
a7e23b5a55 fix: remove dead code and format document (#8048) 2022-06-03 09:40:13 -07:00
Maciej Matyjas
abeb168696 fix(ui): avoid empty div when there are no externalDocs (#7997)
* fix(ui): avoid empty div when there are no externalDocs

* test(ui): existence of externalDocs div when present/absent from spec
2022-05-12 15:45:14 -07:00
Tim Lai
10db26d4e8 refactor(live-response): move h4 to inside div class request-url (#7954) 2022-03-28 11:11:23 -07:00
Tim Lai
9250e209d4 fix(request-snippets): prevent scrolling errors from missing function (#7941)
* fix(request-snippets): prevent scrolling errors from missing function

* refactor(request-snippets): migrate to functional component

* fix(curl): remove undefined prop and function

* test(live-response): fix import of RequestSnippets
2022-03-24 11:23:42 -07:00
twjasa
77d0bb960b feat: add modelcollapse to primitive models (#7557)
* update: primitive-model test with modelcollapse

Co-authored-by: Tim Lai <timothy.lai@gmail.com>
2022-03-21 14:50:14 -07:00
Vladimir Gorej
6c10e4a070 fix(auth): compensate for uninitialized config
Refs #7814
2022-01-31 14:27:46 +01:00
Christian Egli
c6d8d779d0 feat: do not ask for client secret when using auth code with PKCE (#7438)
Co-authored-by: Ignacio Lozano <nacholozano@gmail.com>
Co-authored-by: Vladimir Gorej <vladimir.gorej@gmail.com>

Refs #6290
2022-01-26 10:56:09 +01:00
Vladimir Gorej
8b1c4a7c1a feat(error-handling): introduce unified and configurable error handling (#7761)
Refs #7778
2022-01-24 16:12:13 +01:00
Vladimir Gorej
f3d38987aa fix: request JumpToPath components always as container
Refs https://github.com/swagger-api/swagger-editor/issues/2099
2021-11-26 10:52:00 +01:00
Vladimir Gorej
b299be764f fix: introduce Error Boundaries to handle unexpected failures (#7671)
Two new components have been updated via plugin system: ErrorBoundary and Fallback.
These components can be overridden by user plugins.

Refs #7647
2021-11-25 13:47:22 +01:00
Vladimir Gorej
7cc2657699 fix(highlight-code): fix regression code highlight behavior
Refs #7603
2021-11-05 11:54:14 +01:00
Vladimir Gorej
fb7e98a431 fix(servers): prevent UI crash when chaning Server with variables
Closes #7525
2021-11-04 16:27:27 +01:00
Vladimir Gorej
46b4e5cf3f fix(highlight-code): handle mousewheel events properly
SyntaxHighlighter component doesn't support ref. We had
to use different approach to finds it's DOM Node using
ref of the root Node of the render tree for HighlightCode
component.

Refs #7497
2021-11-03 09:49:50 +01:00
Mahtis Michel
5a5a27e9d5 fix(param-body): fix loosing focus in Try It when typing (#7548)
Originally reported as SWOS-418

Closes #7477
2021-11-03 09:49:50 +01:00
Vladimir Gorej
8553943875 refactor(highlight-code): add UNSAFE prefix for lifecycle methods
Refs #7497
2021-11-03 09:49:50 +01:00