You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+42-27Lines changed: 42 additions & 27 deletions
Original file line number
Diff line number
Diff line change
@@ -1,18 +1,33 @@
1
1
# Changelog
2
2
3
-
## General changes
3
+
## Old components vs this repository
4
+
5
+
### User (consumer) changelog
6
+
7
+
The UI in most cases is consistent with the previous version, except for the following items:
8
+
9
+
- Removed an option to disable a single parameter. The rationale is that these parameters are defined in the API and the request editor and the outgoing HTTP request should reflect what the API author designed.
10
+
- Changes titles of operations and resource: added sub title describing the section.
11
+
- The URI and query parameters are now combined into a single section: Parameters.
12
+
- The information architecture for parameters changed for better readability and accessibility.
13
+
- Schema documentation was redesigned to better visualize complex objects.
14
+
- Authorization now support OpenID Connect which can be defined in an OAS file.
15
+
16
+
### Developer changelog
17
+
18
+
#### General changes
4
19
5
20
The `compatibility` has been renamed to `anypoint`.
6
21
7
22
The `selected` property has been renamed to `domainId` which is the id of the graph node rendered by the AMF parser.
8
23
9
24
The `selectedType` has been renamed to `domainType`. This is a value generated by the navigation element to help to reduce the scope of searching for an object in the graph model.
10
25
11
-
The components now ignore (in most cases) the rendered AMF graph model and instead uses the serialized graph objects to a simpler JavaScript objects. This serialization happens in the `ApiSerializer` class.
26
+
The components do not read the generated graph model anymore (generated through the AMF library LD+JSON model). See **docs/architecture.md** for detailed description.
12
27
13
-
## Documentation components
28
+
####Documentation components
14
29
15
-
### Api navigation
30
+
#####Api navigation
16
31
17
32
The API navigate event definition changed. With this version the detail object has the following properties.
18
33
@@ -29,16 +44,16 @@ import { Events } from '@api-components/amf-components';
-`serverId` the domain id of the selected API server.
147
162
-`tryItButton` - the opposite of the previous `noTryIt`
148
163
-`asyncApi` - indicates the rendered API is an async API.
149
164
-`requestMimeType` - The mime type of rendered request.
150
165
151
-
## Request editor components
166
+
####Request editor components
152
167
153
-
### Authorization
168
+
#####Authorization
154
169
155
-
#### Configuration and HTTP request
170
+
######Configuration and HTTP request
156
171
157
172
The authorization has been moved into this library and has a new API surface.
158
173
@@ -169,33 +184,33 @@ To maximize the compatibility with 0.2.0 use the following configuration:
169
184
></api-request-editor>
170
185
```
171
186
172
-
### Caching values
187
+
#####Caching values
173
188
174
189
The editor has a new boolean property `globalCache`. Once set it instruct the caching mechanism to cache user input in memory. The cached values are kept in memory even when API spec change.
175
190
Use the `src/lib/InputCache.js` class to manipulate the cache programmatically when needed.
176
191
177
192
When the `globalCache` is not set then the values are stored in a reference to the editor element. After removing the element from the DOM all cached properties are GC'd.
With version `0.2.x` it was possible to set `server`, `baseUri`, and `protocols` properties so the component is able to compute the endpoint URL without having the `server` value read from the AMF graph model. This turned out to be a feature that is not used so it is removed in `0.3.0`. Use `baseUri` to override any value defined in the servers.
189
204
Note, when `baseUri` is set it takes precedence over any other URI configuration (like a selected server).
190
205
191
-
### URL editor
206
+
#####URL editor
192
207
193
208
The URL editor is optional by default. The input won't be rendered until the `urlEditor` property is set.
194
209
For a better user experience do not set this option unless crucial for the application. To give user a feedback when updating parameters use option `urlLabel`.
195
210
196
211
Additionally, the user entered values are now updated on input value change rather than user input. This reduces UI changes (especially with URL editor enabled) while typing value into the editor.
197
212
198
-
### Body editor
213
+
#####Body editor
199
214
200
215
The body editor has been re-created from scratch. The new editor uses monaco editor to render the body input.
201
216
This requires loading monaco environment before the editor is rendered and activated.
@@ -214,7 +229,7 @@ await MonacoLoader.monacoReady(); // waits until all libraries are loaded.
214
229
215
230
Note, Monaco does not support encapsulation. Once loaded a global `Monaco` variable is created.
216
231
217
-
## Events
232
+
####Events
218
233
219
234
With this version the following events are deprecated:
RequestEvents.apiRequest(window, { /* the request definition */ });
245
260
```
246
261
247
-
## Tests
262
+
####Tests
248
263
249
264
The tests for Firefox currently fails because `playwright` uses a previous version of the browser which has no support for ES modules in web workers. However, the current version support them. Firefox is temporarily removed from tests.
The components, unlike previously, do not rely on the graph model generated by the AMF parser. Instead they use a custom JavaScript objects generated by the [src/helpers/AmfSerializer.js](AmfSerializer) class.
66
+
These models are provided to the components by the [src/store/AmfStore.js](AmfStore) or the [src/store/DomEventsAmfStore.js](DomEventsAmfStore). This was developers implementing the components have the most flexibility of providing the console with the graph model that source may be in a different location (like HTTP queries).
67
+
68
+
See [docs/architecture.md](docs/architecture.md) for more details.
69
+
65
70
### Monaco editor
66
71
67
72
The request editor uses the Monaco editor (by Microsoft) to render the body editor.
0 commit comments