@api-client/ui 0.0.5 → 0.0.7
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.
- package/demo/elements/http/http-assertions.html +3 -0
- package/demo/elements/http/http-assertions.ts +1 -1
- package/demo/elements/http/http-flows.html +23 -0
- package/demo/elements/http/http-flows.ts +92 -0
- package/demo/elements/http/index.html +3 -0
- package/demo/pages/http-project/main.ts +5 -6
- package/dist/define/dialog/delete-cookie-action-dialog.d.ts +10 -0
- package/dist/define/dialog/delete-cookie-action-dialog.d.ts.map +1 -0
- package/dist/define/dialog/delete-cookie-action-dialog.js +14 -0
- package/dist/define/dialog/delete-cookie-action-dialog.js.map +1 -0
- package/dist/define/dialog/set-cookie-action-dialog.d.ts +10 -0
- package/dist/define/dialog/set-cookie-action-dialog.d.ts.map +1 -0
- package/dist/define/dialog/set-cookie-action-dialog.js +14 -0
- package/dist/define/dialog/set-cookie-action-dialog.js.map +1 -0
- package/dist/define/http/http-assertions.d.ts +1 -1
- package/dist/define/http/http-assertions.d.ts.map +1 -1
- package/dist/define/http/http-assertions.js +3 -3
- package/dist/define/http/http-assertions.js.map +1 -1
- package/dist/define/http/http-flows.d.ts +10 -0
- package/dist/define/http/http-flows.d.ts.map +1 -0
- package/dist/define/http/http-flows.js +13 -0
- package/dist/define/http/http-flows.js.map +1 -0
- package/dist/define/ui/ui-divider.d.ts +4 -1
- package/dist/define/ui/ui-divider.d.ts.map +1 -1
- package/dist/define/ui/ui-divider.js +11 -2
- package/dist/define/ui/ui-divider.js.map +1 -1
- package/dist/elements/ApiElement.d.ts +4 -0
- package/dist/elements/ApiElement.d.ts.map +1 -1
- package/dist/elements/ApiElement.js +6 -0
- package/dist/elements/ApiElement.js.map +1 -1
- package/dist/elements/amf/ApiAuthorizationEditor.element.js +1 -1
- package/dist/elements/amf/ApiAuthorizationEditor.element.js.map +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.js +2 -1
- package/dist/elements/amf/ApiOperationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiRequest.element.js +1 -1
- package/dist/elements/amf/ApiRequest.element.js.map +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.d.ts +0 -1
- package/dist/elements/amf/ApiRequestEditor.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.js +0 -3
- package/dist/elements/amf/ApiRequestEditor.element.js.map +1 -1
- package/dist/elements/authorization/ui/Authorization.d.ts +2 -1
- package/dist/elements/authorization/ui/Authorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/Authorization.js +0 -3
- package/dist/elements/authorization/ui/Authorization.js.map +1 -1
- package/dist/elements/dialog/DeleteCookieAction.element.d.ts +20 -0
- package/dist/elements/dialog/DeleteCookieAction.element.d.ts.map +1 -0
- package/dist/elements/dialog/DeleteCookieAction.element.js +93 -0
- package/dist/elements/dialog/DeleteCookieAction.element.js.map +1 -0
- package/dist/elements/dialog/DeleteCookieAction.styles.d.ts +3 -0
- package/dist/elements/dialog/DeleteCookieAction.styles.d.ts.map +1 -0
- package/dist/elements/dialog/DeleteCookieAction.styles.js +13 -0
- package/dist/elements/dialog/DeleteCookieAction.styles.js.map +1 -0
- package/dist/elements/dialog/Rename.d.ts +7 -6
- package/dist/elements/dialog/Rename.d.ts.map +1 -1
- package/dist/elements/dialog/Rename.js +7 -6
- package/dist/elements/dialog/Rename.js.map +1 -1
- package/dist/elements/dialog/SetCookieAction.element.d.ts +22 -0
- package/dist/elements/dialog/SetCookieAction.element.d.ts.map +1 -0
- package/dist/elements/dialog/SetCookieAction.element.js +173 -0
- package/dist/elements/dialog/SetCookieAction.element.js.map +1 -0
- package/dist/elements/environment/EnvironmentEditor.d.ts +24 -3
- package/dist/elements/environment/EnvironmentEditor.d.ts.map +1 -1
- package/dist/elements/environment/EnvironmentEditor.js +69 -23
- package/dist/elements/environment/EnvironmentEditor.js.map +1 -1
- package/dist/elements/environment/EnvironmentEditor.styles.d.ts.map +1 -1
- package/dist/elements/environment/EnvironmentEditor.styles.js +5 -0
- package/dist/elements/environment/EnvironmentEditor.styles.js.map +1 -1
- package/dist/elements/environment/ServerEditor.d.ts +3 -3
- package/dist/elements/environment/ServerEditor.d.ts.map +1 -1
- package/dist/elements/environment/ServerEditor.js +3 -6
- package/dist/elements/environment/ServerEditor.js.map +1 -1
- package/dist/elements/environment/VariablesEditor.d.ts +0 -1
- package/dist/elements/environment/VariablesEditor.d.ts.map +1 -1
- package/dist/elements/environment/VariablesEditor.js +3 -6
- package/dist/elements/environment/VariablesEditor.js.map +1 -1
- package/dist/elements/highlight/Prism.styles.d.ts.map +1 -1
- package/dist/elements/highlight/Prism.styles.js +12 -5
- package/dist/elements/highlight/Prism.styles.js.map +1 -1
- package/dist/elements/http/BodyEditor.d.ts +0 -4
- package/dist/elements/http/BodyEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyEditor.js +10 -16
- package/dist/elements/http/BodyEditor.js.map +1 -1
- package/dist/elements/http/BodyMultipartEditor.d.ts +3 -16
- package/dist/elements/http/BodyMultipartEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyMultipartEditor.js +3 -19
- package/dist/elements/http/BodyMultipartEditor.js.map +1 -1
- package/dist/elements/http/BodyTextEditor.d.ts +0 -1
- package/dist/elements/http/BodyTextEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyTextEditor.js +0 -3
- package/dist/elements/http/BodyTextEditor.js.map +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.d.ts +3 -3
- package/dist/elements/http/BodyUrlEncodedEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.js +3 -5
- package/dist/elements/http/BodyUrlEncodedEditor.js.map +1 -1
- package/dist/elements/http/HeadersForm.d.ts +0 -4
- package/dist/elements/http/HeadersForm.d.ts.map +1 -1
- package/dist/elements/http/HeadersForm.js +0 -6
- package/dist/elements/http/HeadersForm.js.map +1 -1
- package/dist/elements/http/HttpAssertions.element.d.ts +55 -0
- package/dist/elements/http/HttpAssertions.element.d.ts.map +1 -0
- package/dist/elements/http/HttpAssertions.element.js +264 -0
- package/dist/elements/http/HttpAssertions.element.js.map +1 -0
- package/dist/elements/http/HttpAssertions.styles.d.ts.map +1 -1
- package/dist/elements/http/HttpAssertions.styles.js +7 -156
- package/dist/elements/http/HttpAssertions.styles.js.map +1 -1
- package/dist/elements/http/HttpFlows.common.d.ts +3 -0
- package/dist/elements/http/HttpFlows.common.d.ts.map +1 -0
- package/dist/elements/http/HttpFlows.common.js +181 -0
- package/dist/elements/http/HttpFlows.common.js.map +1 -0
- package/dist/elements/http/HttpFlows.element.d.ts +97 -0
- package/dist/elements/http/HttpFlows.element.d.ts.map +1 -0
- package/dist/elements/http/HttpFlows.element.js +684 -0
- package/dist/elements/http/HttpFlows.element.js.map +1 -0
- package/dist/elements/http/HttpFlows.styles.d.ts +3 -0
- package/dist/elements/http/HttpFlows.styles.d.ts.map +1 -0
- package/dist/elements/http/HttpFlows.styles.js +28 -0
- package/dist/elements/http/HttpFlows.styles.js.map +1 -0
- package/dist/elements/http/HttpFlowsUi.d.ts +172 -0
- package/dist/elements/http/HttpFlowsUi.d.ts.map +1 -0
- package/dist/elements/http/HttpFlowsUi.js +1256 -0
- package/dist/elements/http/HttpFlowsUi.js.map +1 -0
- package/dist/elements/http/RequestConfigElement.d.ts +0 -1
- package/dist/elements/http/RequestConfigElement.d.ts.map +1 -1
- package/dist/elements/http/RequestConfigElement.js +8 -11
- package/dist/elements/http/RequestConfigElement.js.map +1 -1
- package/dist/elements/http/RequestEditor.d.ts +10 -10
- package/dist/elements/http/RequestEditor.d.ts.map +1 -1
- package/dist/elements/http/RequestEditor.js +62 -23
- package/dist/elements/http/RequestEditor.js.map +1 -1
- package/dist/elements/http/UrlInput.d.ts +3 -3
- package/dist/elements/http/UrlInput.d.ts.map +1 -1
- package/dist/elements/http/UrlInput.js +2 -2
- package/dist/elements/http/UrlInput.js.map +1 -1
- package/dist/elements/http/UrlParamsForm.d.ts +0 -1
- package/dist/elements/http/UrlParamsForm.d.ts.map +1 -1
- package/dist/elements/http/UrlParamsForm.js +0 -3
- package/dist/elements/http/UrlParamsForm.js.map +1 -1
- package/dist/elements/layout/SplitView.styles.d.ts.map +1 -1
- package/dist/elements/layout/SplitView.styles.js +1 -0
- package/dist/elements/layout/SplitView.styles.js.map +1 -1
- package/dist/elements/navigation/AppNavigationItem.styles.d.ts.map +1 -1
- package/dist/elements/navigation/AppNavigationItem.styles.js +2 -0
- package/dist/elements/navigation/AppNavigationItem.styles.js.map +1 -1
- package/dist/elements/project/HttpProjectRequest.d.ts +2 -1
- package/dist/elements/project/HttpProjectRequest.d.ts.map +1 -1
- package/dist/elements/project/HttpProjectRequest.js +14 -5
- package/dist/elements/project/HttpProjectRequest.js.map +1 -1
- package/dist/elements/project/ProjectRunner.d.ts +0 -1
- package/dist/elements/project/ProjectRunner.d.ts.map +1 -1
- package/dist/elements/project/ProjectRunner.js +1 -4
- package/dist/elements/project/ProjectRunner.js.map +1 -1
- package/dist/elements/schema-design/AssociationFormElement.d.ts +0 -1
- package/dist/elements/schema-design/AssociationFormElement.d.ts.map +1 -1
- package/dist/elements/schema-design/AssociationFormElement.js +2 -5
- package/dist/elements/schema-design/AssociationFormElement.js.map +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.d.ts +2 -2
- package/dist/elements/schema-design/DataEntityEditorElement.d.ts.map +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.js +5 -5
- package/dist/elements/schema-design/DataEntityEditorElement.js.map +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.d.ts +0 -1
- package/dist/elements/schema-design/DataSchemaDocument.d.ts.map +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.js +4 -7
- package/dist/elements/schema-design/DataSchemaDocument.js.map +1 -1
- package/dist/elements/schema-design/EntityFormElement.d.ts +0 -1
- package/dist/elements/schema-design/EntityFormElement.d.ts.map +1 -1
- package/dist/elements/schema-design/EntityFormElement.js +4 -7
- package/dist/elements/schema-design/EntityFormElement.js.map +1 -1
- package/dist/elements/schema-design/PropertyFormElement.d.ts +1 -2
- package/dist/elements/schema-design/PropertyFormElement.d.ts.map +1 -1
- package/dist/elements/schema-design/PropertyFormElement.js +8 -11
- package/dist/elements/schema-design/PropertyFormElement.js.map +1 -1
- package/dist/pages/ApplicationScreen.d.ts +1 -1
- package/dist/pages/ApplicationScreen.d.ts.map +1 -1
- package/dist/pages/ApplicationScreen.js +1 -1
- package/dist/pages/ApplicationScreen.js.map +1 -1
- package/dist/pages/api-client/ApiClient.styles.d.ts.map +1 -1
- package/dist/pages/api-client/ApiClient.styles.js +22 -3
- package/dist/pages/api-client/ApiClient.styles.js.map +1 -1
- package/dist/pages/api-client/Authenticate.screen.d.ts +2 -0
- package/dist/pages/api-client/Authenticate.screen.d.ts.map +1 -1
- package/dist/pages/api-client/Authenticate.screen.js +19 -3
- package/dist/pages/api-client/Authenticate.screen.js.map +1 -1
- package/dist/pages/api-client/StoreConfig.screen.d.ts.map +1 -1
- package/dist/pages/api-client/StoreConfig.screen.js +4 -2
- package/dist/pages/api-client/StoreConfig.screen.js.map +1 -1
- package/dist/pages/api-client/StoreConfig.styles.d.ts.map +1 -1
- package/dist/pages/api-client/StoreConfig.styles.js +5 -0
- package/dist/pages/api-client/StoreConfig.styles.js.map +1 -1
- package/dist/pages/api-client/pages/Files.page.d.ts +1 -0
- package/dist/pages/api-client/pages/Files.page.d.ts.map +1 -1
- package/dist/pages/api-client/pages/Files.page.js +2 -1
- package/dist/pages/api-client/pages/Files.page.js.map +1 -1
- package/dist/pages/http-project/HttpProject.screen.d.ts +0 -8
- package/dist/pages/http-project/HttpProject.screen.d.ts.map +1 -1
- package/dist/pages/http-project/HttpProject.screen.js +14 -15
- package/dist/pages/http-project/HttpProject.screen.js.map +1 -1
- package/dist/pages/http-project/types.d.ts +8 -6
- package/dist/pages/http-project/types.d.ts.map +1 -1
- package/dist/pages/http-project/types.js.map +1 -1
- package/dist/styles/m3/surface.module.d.ts.map +1 -1
- package/dist/styles/m3/surface.module.js +11 -27
- package/dist/styles/m3/surface.module.js.map +1 -1
- package/dist/ui/UiElement.d.ts +4 -0
- package/dist/ui/UiElement.d.ts.map +1 -1
- package/dist/ui/UiElement.js +6 -0
- package/dist/ui/UiElement.js.map +1 -1
- package/dist/ui/button/SegmentedButton.styles.d.ts.map +1 -1
- package/dist/ui/button/SegmentedButton.styles.js +3 -1
- package/dist/ui/button/SegmentedButton.styles.js.map +1 -1
- package/dist/ui/dialog/UiDialog.d.ts +3 -0
- package/dist/ui/dialog/UiDialog.d.ts.map +1 -1
- package/dist/ui/dialog/UiDialog.js +3 -0
- package/dist/ui/dialog/UiDialog.js.map +1 -1
- package/dist/ui/effects/ripple.d.ts.map +1 -1
- package/dist/ui/effects/ripple.js +5 -1
- package/dist/ui/effects/ripple.js.map +1 -1
- package/dist/ui/icons/Icons.d.ts +3 -2
- package/dist/ui/icons/Icons.d.ts.map +1 -1
- package/dist/ui/icons/Icons.js +2 -1
- package/dist/ui/icons/Icons.js.map +1 -1
- package/dist/ui/input/CheckedElement.d.ts +1 -1
- package/dist/ui/input/CheckedElement.d.ts.map +1 -1
- package/dist/ui/input/CheckedElement.js +3 -3
- package/dist/ui/input/CheckedElement.js.map +1 -1
- package/dist/ui/input/Input.js +1 -1
- package/dist/ui/input/Input.js.map +1 -1
- package/dist/ui/list/{DividerElement.d.ts → UiDivider.element.d.ts} +6 -6
- package/dist/ui/list/UiDivider.element.d.ts.map +1 -0
- package/dist/ui/list/UiDivider.element.js +39 -0
- package/dist/ui/list/UiDivider.element.js.map +1 -0
- package/dist/ui/list/UiDivider.styles.d.ts +3 -0
- package/dist/ui/list/UiDivider.styles.d.ts.map +1 -0
- package/dist/ui/list/UiDivider.styles.js +49 -0
- package/dist/ui/list/UiDivider.styles.js.map +1 -0
- package/dist/ui/tabs/UiTabs.d.ts +13 -1
- package/dist/ui/tabs/UiTabs.d.ts.map +1 -1
- package/dist/ui/tabs/UiTabs.js +42 -13
- package/dist/ui/tabs/UiTabs.js.map +1 -1
- package/package.json +1 -1
- package/src/define/dialog/delete-cookie-action-dialog.ts +16 -0
- package/src/define/dialog/set-cookie-action-dialog.ts +16 -0
- package/src/define/http/http-assertions.ts +3 -3
- package/src/define/http/http-flows.ts +15 -0
- package/src/define/ui/ui-divider.ts +7 -2
- package/src/elements/ApiElement.ts +7 -0
- package/src/elements/amf/ApiAuthorizationEditor.element.ts +1 -1
- package/src/elements/amf/ApiOperationDocument.element.ts +2 -1
- package/src/elements/amf/ApiRequest.element.ts +1 -1
- package/src/elements/amf/ApiRequestEditor.element.ts +0 -4
- package/src/elements/authorization/ui/Authorization.ts +3 -5
- package/src/elements/dialog/DeleteCookieAction.element.ts +100 -0
- package/src/elements/dialog/DeleteCookieAction.styles.ts +14 -0
- package/src/elements/dialog/Rename.ts +8 -7
- package/src/elements/dialog/SetCookieAction.element.ts +183 -0
- package/src/elements/environment/EnvironmentEditor.styles.ts +5 -0
- package/src/elements/environment/EnvironmentEditor.ts +81 -22
- package/src/elements/environment/ServerEditor.ts +4 -8
- package/src/elements/environment/VariablesEditor.ts +3 -7
- package/src/elements/highlight/Prism.styles.ts +12 -5
- package/src/elements/http/BodyEditor.ts +10 -17
- package/src/elements/http/BodyMultipartEditor.ts +3 -20
- package/src/elements/http/BodyTextEditor.ts +0 -4
- package/src/elements/http/BodyUrlEncodedEditor.ts +5 -8
- package/src/elements/http/HeadersForm.ts +2 -9
- package/src/elements/http/HttpAssertions.element.ts +286 -0
- package/src/elements/http/HttpAssertions.styles.ts +7 -156
- package/src/elements/http/HttpFlows.common.ts +181 -0
- package/src/elements/http/HttpFlows.element.ts +722 -0
- package/src/elements/http/HttpFlows.styles.ts +29 -0
- package/src/elements/http/HttpFlowsUi.ts +1327 -0
- package/src/elements/http/RequestConfigElement.ts +10 -14
- package/src/elements/http/RequestEditor.ts +77 -35
- package/src/elements/http/UrlInput.ts +6 -6
- package/src/elements/http/UrlParamsForm.ts +2 -6
- package/src/elements/layout/SplitView.styles.ts +1 -0
- package/src/elements/navigation/AppNavigationItem.styles.ts +2 -0
- package/src/elements/project/HttpProjectRequest.ts +16 -5
- package/src/elements/project/ProjectRunner.ts +3 -7
- package/src/elements/schema-design/AssociationFormElement.ts +4 -8
- package/src/elements/schema-design/DataEntityEditorElement.ts +8 -8
- package/src/elements/schema-design/DataSchemaDocument.ts +5 -9
- package/src/elements/schema-design/EntityFormElement.ts +6 -10
- package/src/elements/schema-design/PropertyFormElement.ts +11 -15
- package/src/pages/ApplicationScreen.ts +1 -1
- package/src/pages/api-client/ApiClient.styles.ts +22 -3
- package/src/pages/api-client/Authenticate.screen.ts +19 -3
- package/src/pages/api-client/StoreConfig.screen.ts +4 -2
- package/src/pages/api-client/StoreConfig.styles.ts +5 -0
- package/src/pages/api-client/pages/Files.page.ts +2 -1
- package/src/pages/http-project/HttpProject.screen.ts +14 -26
- package/src/pages/http-project/types.ts +8 -6
- package/src/styles/m3/surface.module.ts +11 -27
- package/src/styles/m3/theme.css +36 -0
- package/src/styles/m3/tokens.css +11 -0
- package/src/ui/UiElement.ts +7 -0
- package/src/ui/button/SegmentedButton.styles.ts +3 -1
- package/src/ui/dialog/UiDialog.ts +3 -0
- package/src/ui/effects/ripple.ts +6 -1
- package/src/ui/icons/Icons.ts +3 -2
- package/src/ui/input/CheckedElement.ts +3 -3
- package/src/ui/input/Input.ts +1 -1
- package/src/ui/list/UiDivider.element.ts +41 -0
- package/src/ui/list/UiDivider.styles.ts +49 -0
- package/src/ui/tabs/UiTabs.ts +55 -13
- package/test/amf/authorization/OAuth2Method.test.ts +1 -1
- package/test/elements/http/HttpAssertions.test.ts +5 -6
- package/test/elements/http/HttpFlows.test.ts +485 -0
- package/dist/elements/http/HttpAssertions.d.ts +0 -114
- package/dist/elements/http/HttpAssertions.d.ts.map +0 -1
- package/dist/elements/http/HttpAssertions.js +0 -1146
- package/dist/elements/http/HttpAssertions.js.map +0 -1
- package/dist/elements/http/internals.d.ts +0 -150
- package/dist/elements/http/internals.d.ts.map +0 -1
- package/dist/elements/http/internals.js +0 -150
- package/dist/elements/http/internals.js.map +0 -1
- package/dist/ui/list/DividerElement.d.ts.map +0 -1
- package/dist/ui/list/DividerElement.js +0 -82
- package/dist/ui/list/DividerElement.js.map +0 -1
- package/src/elements/http/HttpAssertions.ts +0 -1187
- package/src/elements/http/internals.ts +0 -151
- package/src/http-client/docs/Files.md +0 -28
- package/src/ui/list/DividerElement.ts +0 -84
|
@@ -84,6 +84,9 @@ export default class UiDialog extends UiElement {
|
|
|
84
84
|
|
|
85
85
|
/**
|
|
86
86
|
* Opens the dialog as modal when toggling dialog's open state.
|
|
87
|
+
*
|
|
88
|
+
* Setting this value after the dialog was opened has no effect.
|
|
89
|
+
*
|
|
87
90
|
* @attribute
|
|
88
91
|
*/
|
|
89
92
|
@property({ type: Boolean }) modal = false;
|
package/src/ui/effects/ripple.ts
CHANGED
|
@@ -152,6 +152,11 @@ export default class UiRipple extends LitElement {
|
|
|
152
152
|
}
|
|
153
153
|
|
|
154
154
|
protected startPressAnimation(positionEvent?: Event | null): void {
|
|
155
|
+
const { mdRoot } = this;
|
|
156
|
+
if (!mdRoot) {
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
|
|
155
160
|
this.determineRippleSize();
|
|
156
161
|
const { startPoint, endPoint } =
|
|
157
162
|
this.getTranslationCoordinates(positionEvent);
|
|
@@ -160,7 +165,7 @@ export default class UiRipple extends LitElement {
|
|
|
160
165
|
|
|
161
166
|
const signal = this.pressAnimationSignal.start();
|
|
162
167
|
|
|
163
|
-
const growAnimation =
|
|
168
|
+
const growAnimation = mdRoot.animate(
|
|
164
169
|
{
|
|
165
170
|
top: [0, 0],
|
|
166
171
|
left: [0, 0],
|
package/src/ui/icons/Icons.ts
CHANGED
|
@@ -5,13 +5,13 @@ import { svg, SVGTemplateResult } from 'lit';
|
|
|
5
5
|
* @param tpl Icon definition
|
|
6
6
|
* @returns Complete SVG icon definition
|
|
7
7
|
*/
|
|
8
|
-
export const iconWrapper = (tpl: SVGTemplateResult, width = 24, height = 24): SVGTemplateResult => svg`<svg viewBox="
|
|
8
|
+
export const iconWrapper = (tpl: SVGTemplateResult, width = 24, height = 24, top = 0, left = 0): SVGTemplateResult => svg`<svg viewBox="${top} ${left} ${width} ${height}" preserveAspectRatio="xMidYMid meet" focusable="false" style="pointer-events: none; display: block; width: 100%; height: 100%;">${tpl}</svg>`;
|
|
9
9
|
|
|
10
10
|
export type IconType =
|
|
11
11
|
'add' | 'api' | 'apps' | 'arrowBack' | 'arrowDropDown' | 'cancel' | 'cancelFilled' | 'check' | 'checkBox' | 'checkBoxBlank' | 'checkIndeterminate' | 'chevronLeft' | 'chevronRight' | 'close' | 'cloud' | 'cloudFilled' | 'collectionsBookmark' | 'deleteFile' | 'deleteOutline' | 'edit' | 'environment' | 'expandMore' |
|
|
12
12
|
'fileDownload' | 'folder' | 'folderFilled' | 'folderShared' | 'help' | 'history' | 'info' | 'key' | 'menu' | 'leaderBoard' |
|
|
13
13
|
'moreVert' | 'openInNew' | 'personAdd' | 'playArrow' | 'project' | 'remove' | 'rename' | 'request' | 'restoreFromTrash' | 'save' |
|
|
14
|
-
'schema' | 'schemaEntity' | 'schemaModel' | 'schemaNamespace' | 'search' | 'send' | 'settings' | 'space' | 'taskAlt' | 'timeline' | 'viewGrid' | 'viewList' | 'visibility' | 'visibilityOff' | 'warning';
|
|
14
|
+
'schema' | 'schemaEntity' | 'schemaModel' | 'schemaNamespace' | 'search' | 'send' | 'settings' | 'space' | 'taskAlt' | 'timeline' | 'tune' | 'viewGrid' | 'viewList' | 'visibility' | 'visibilityOff' | 'warning';
|
|
15
15
|
|
|
16
16
|
export const add = iconWrapper(svg`<path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>`);
|
|
17
17
|
export const api = iconWrapper(svg`<path d="M0,0H24V24H0Z" style="fill:none"/><path d="M22.45,15.1a4.87,4.87,0,0,0-3.74-4.73,5.29,5.29,0,0,0,.05-.56A4.88,4.88,0,0,0,9.3,8.12,2.85,2.85,0,0,0,5,10.54,4.86,4.86,0,0,0,6.48,20H17.87v0A4.87,4.87,0,0,0,22.45,15.1Z"/>`);
|
|
@@ -65,6 +65,7 @@ export const settings = iconWrapper(svg`<path d="M0 0h24v24H0V0z" fill="none"/><
|
|
|
65
65
|
export const space = iconWrapper(svg`<path d="M62.14,110.18a11.26,11.26,0,1,1-11.27,11.26,11.29,11.29,0,0,1,11.27-11.26m0-11.27a22.53,22.53,0,1,0,22.52,22.53A22.6,22.6,0,0,0,62.14,98.91Zm33.78-45A11.26,11.26,0,1,1,84.66,65.13,11.3,11.3,0,0,1,95.92,53.87m0-11.26a22.52,22.52,0,1,0,22.52,22.52A22.58,22.58,0,0,0,95.92,42.61Zm33.78,67.57a11.26,11.26,0,1,1-11.26,11.26,11.28,11.28,0,0,1,11.26-11.26m0-11.27a22.53,22.53,0,1,0,22.53,22.53A22.6,22.6,0,0,0,129.7,98.91Z"/><rect width="192" height="192" style="fill:none"/>`, 192, 192);
|
|
66
66
|
export const taskAlt = iconWrapper(svg`<rect fill="none" height="24" width="24"/><path d="M22,5.18L10.59,16.6l-4.24-4.24l1.41-1.41l2.83,2.83l10-10L22,5.18z M19.79,10.22C19.92,10.79,20,11.39,20,12 c0,4.42-3.58,8-8,8s-8-3.58-8-8c0-4.42,3.58-8,8-8c1.58,0,3.04,0.46,4.28,1.25l1.44-1.44C16.1,2.67,14.13,2,12,2C6.48,2,2,6.48,2,12 c0,5.52,4.48,10,10,10s10-4.48,10-10c0-1.19-0.22-2.33-0.6-3.39L19.79,10.22z"/>`);
|
|
67
67
|
export const timeline = iconWrapper(svg`<path d="M3 18Q2.175 18 1.588 17.413Q1 16.825 1 16Q1 15.175 1.588 14.587Q2.175 14 3 14Q3.15 14 3.263 14Q3.375 14 3.5 14.05L8.05 9.5Q8 9.375 8 9.262Q8 9.15 8 9Q8 8.175 8.588 7.587Q9.175 7 10 7Q10.825 7 11.413 7.587Q12 8.175 12 9Q12 9.05 11.95 9.5L14.5 12.05Q14.625 12 14.738 12Q14.85 12 15 12Q15.15 12 15.262 12Q15.375 12 15.5 12.05L19.05 8.5Q19 8.375 19 8.262Q19 8.15 19 8Q19 7.175 19.587 6.588Q20.175 6 21 6Q21.825 6 22.413 6.588Q23 7.175 23 8Q23 8.825 22.413 9.412Q21.825 10 21 10Q20.85 10 20.738 10Q20.625 10 20.5 9.95L16.95 13.5Q17 13.625 17 13.738Q17 13.85 17 14Q17 14.825 16.413 15.412Q15.825 16 15 16Q14.175 16 13.588 15.412Q13 14.825 13 14Q13 13.85 13 13.738Q13 13.625 13.05 13.5L10.5 10.95Q10.375 11 10.262 11Q10.15 11 10 11Q9.95 11 9.5 10.95L4.95 15.5Q5 15.625 5 15.738Q5 15.85 5 16Q5 16.825 4.412 17.413Q3.825 18 3 18Z"/>`);
|
|
68
|
+
export const tune = iconWrapper(svg`<path d="M440 936V696h80v80h320v80H520v80h-80Zm-320-80v-80h240v80H120Zm160-160v-80H120v-80h160v-80h80v240h-80Zm160-80v-80h400v80H440Zm160-160V216h80v80h160v80H680v80h-80Zm-480-80v-80h400v80H120Z"/>`, 960, 960, 0, 96);
|
|
68
69
|
export const viewGrid = iconWrapper(svg`<rect fill="none" height="24" width="24"/><path d="M3,5v14h18V5H3z M7,7v2H5V7H7z M5,13v-2h2v2H5z M5,15h2v2H5V15z M19,17H9v-2h10V17z M19,13H9v-2h10V13z M19,9H9V7h10V9z"/>`);
|
|
69
70
|
export const viewList = iconWrapper(svg`<g><rect fill="none" height="24" width="24"/></g><path d="M3,3v8h8V3H3z M9,9H5V5h4V9z M3,13v8h8v-8H3z M9,19H5v-4h4V19z M13,3v8h8V3H13z M19,9h-4V5h4V9z M13,13v8h8v-8H13z M19,19h-4v-4h4V19z"/>`);
|
|
70
71
|
export const visibility = iconWrapper(svg`<path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"></path>`);
|
|
@@ -255,10 +255,10 @@ export default class CheckedElement extends UiElement {
|
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
|
|
258
|
-
|
|
258
|
+
override notifyChange(): void {
|
|
259
259
|
// The <input type="checkbox"/> dispatches both events.
|
|
260
260
|
this.dispatchEvent(new Event('input'));
|
|
261
|
-
|
|
261
|
+
super.notifyChange();
|
|
262
262
|
}
|
|
263
263
|
|
|
264
264
|
protected _invalidHandler(): void {
|
|
@@ -280,7 +280,7 @@ export default class CheckedElement extends UiElement {
|
|
|
280
280
|
}
|
|
281
281
|
|
|
282
282
|
protected _postCheckedChange(): void {
|
|
283
|
-
this.
|
|
283
|
+
this.notifyChange();
|
|
284
284
|
this.#_internals.checkValidity();
|
|
285
285
|
}
|
|
286
286
|
|
package/src/ui/input/Input.ts
CHANGED
|
@@ -968,7 +968,7 @@ export default abstract class Input extends UiElement {
|
|
|
968
968
|
return html``;
|
|
969
969
|
}
|
|
970
970
|
return html`
|
|
971
|
-
<span class="label" id="${this.labelId}">${
|
|
971
|
+
<span class="label" id="${this.labelId}" title="label">${label}</span>
|
|
972
972
|
`;
|
|
973
973
|
}
|
|
974
974
|
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { html, LitElement, TemplateResult } from "lit";
|
|
2
|
+
import { property } from "lit/decorators.js";
|
|
3
|
+
|
|
4
|
+
export enum DividerType {
|
|
5
|
+
'full' = 'full',
|
|
6
|
+
'inset' = 'inset',
|
|
7
|
+
'middle' = 'middle',
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* A divider element.
|
|
12
|
+
*/
|
|
13
|
+
export default class UiDivider extends LitElement {
|
|
14
|
+
/**
|
|
15
|
+
* The predefined type of the divider.
|
|
16
|
+
* @attribute
|
|
17
|
+
*/
|
|
18
|
+
@property({ type: String, reflect: true }) type: DividerType;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Whether to render the divider as a vertical separation.
|
|
22
|
+
* @attribute
|
|
23
|
+
*/
|
|
24
|
+
@property({ type: Boolean, reflect: true }) vertical = false;
|
|
25
|
+
|
|
26
|
+
constructor() {
|
|
27
|
+
super();
|
|
28
|
+
this.type = DividerType.full;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
override connectedCallback(): void {
|
|
32
|
+
super.connectedCallback();
|
|
33
|
+
if (!this.hasAttribute('role')) {
|
|
34
|
+
this.setAttribute('role', 'presentation');
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
protected override render(): TemplateResult {
|
|
39
|
+
return html`<div class="container"></div>`;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { css } from "lit";
|
|
2
|
+
|
|
3
|
+
export default css`
|
|
4
|
+
:host {
|
|
5
|
+
display: block;
|
|
6
|
+
margin-top: 8px;
|
|
7
|
+
margin-bottom: 8px;
|
|
8
|
+
|
|
9
|
+
--ui-divider-padding: 16px;
|
|
10
|
+
--ui-divider-vertical-separation: 8px;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.container {
|
|
14
|
+
height: 1px;
|
|
15
|
+
width: 100%;
|
|
16
|
+
box-sizing: border-box;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.container::before {
|
|
20
|
+
content: '';
|
|
21
|
+
height: inherit;
|
|
22
|
+
background-color: var(--md-sys-color-outline-variant);
|
|
23
|
+
display: block;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
:host([type="inset"]) .container {
|
|
27
|
+
padding-left: var(--ui-divider-padding);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
:host([type="middle"]) .container {
|
|
31
|
+
padding-left: var(--ui-divider-padding);
|
|
32
|
+
padding-right: var(--ui-divider-padding);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
:host([vertical]) {
|
|
36
|
+
margin: 0;
|
|
37
|
+
height: auto;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
:host([vertical]) .container {
|
|
41
|
+
width: 1px;
|
|
42
|
+
height: 100%;
|
|
43
|
+
margin: 0 var(--ui-divider-vertical-separation);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
:host([vertical][type="middle"]) .container {
|
|
47
|
+
padding: var(--ui-divider-padding) 0 var(--ui-divider-padding) 0;
|
|
48
|
+
}
|
|
49
|
+
`;
|
package/src/ui/tabs/UiTabs.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable import/no-cycle */
|
|
2
2
|
/* eslint-disable no-param-reassign */
|
|
3
|
-
import { html, LitElement, nothing, TemplateResult } from "lit";
|
|
3
|
+
import { html, LitElement, nothing, PropertyValues, TemplateResult } from "lit";
|
|
4
4
|
import { property, query, queryAssignedElements, state } from "lit/decorators.js";
|
|
5
5
|
import { ClassInfo, classMap } from "lit/directives/class-map.js";
|
|
6
6
|
import { StyleInfo, styleMap } from "lit/directives/style-map.js";
|
|
@@ -38,6 +38,8 @@ export default class UiTabs extends LitElement {
|
|
|
38
38
|
|
|
39
39
|
activeItem: UiTab | null = null;
|
|
40
40
|
|
|
41
|
+
previousItem: UiTab | null = null;
|
|
42
|
+
|
|
41
43
|
@queryAssignedElements({ flatten: true }) protected assignedElements!: HTMLElement[] | null;
|
|
42
44
|
|
|
43
45
|
@query('.pointer') protected pointer!: HTMLElement;
|
|
@@ -80,18 +82,46 @@ export default class UiTabs extends LitElement {
|
|
|
80
82
|
|
|
81
83
|
@state() protected indicated = false;
|
|
82
84
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
+
protected observer: IntersectionObserver;
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* This is set by the intersection observer. Once the tabs are in the view it turns to `true`.
|
|
89
|
+
* This we can properly visualize selection.
|
|
90
|
+
*/
|
|
91
|
+
@state() isVisible?: boolean;
|
|
92
|
+
|
|
93
|
+
constructor() {
|
|
94
|
+
super();
|
|
85
95
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
96
|
+
this.observer = new IntersectionObserver(this.intersectionCallback.bind(this), {
|
|
97
|
+
threshold: 1.0,
|
|
98
|
+
rootMargin: '0px',
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
protected override willUpdate(cp: PropertyValues<this>): void {
|
|
103
|
+
if (cp.has('isVisible')) {
|
|
104
|
+
this.handleVisibility();
|
|
105
|
+
}
|
|
106
|
+
super.willUpdate(cp);
|
|
107
|
+
}
|
|
89
108
|
|
|
90
109
|
override connectedCallback(): void {
|
|
91
110
|
super.connectedCallback();
|
|
92
111
|
if (!this.hasAttribute('role')) {
|
|
93
112
|
this.setAttribute('role', 'tablist');
|
|
94
113
|
}
|
|
114
|
+
this.observer.observe(this);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
override disconnectedCallback(): void {
|
|
118
|
+
super.disconnectedCallback();
|
|
119
|
+
this.observer.unobserve(this);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
protected intersectionCallback(entries: IntersectionObserverEntry[]): void {
|
|
123
|
+
const [entry] = entries;
|
|
124
|
+
this.isVisible = entry.isIntersecting;
|
|
95
125
|
}
|
|
96
126
|
|
|
97
127
|
protected async updateItems(): Promise<void> {
|
|
@@ -143,6 +173,7 @@ export default class UiTabs extends LitElement {
|
|
|
143
173
|
tab.highlight();
|
|
144
174
|
return;
|
|
145
175
|
}
|
|
176
|
+
this.previousItem = activeItem;
|
|
146
177
|
if (activeItem) {
|
|
147
178
|
this.deselectItem(activeItem);
|
|
148
179
|
}
|
|
@@ -172,16 +203,13 @@ export default class UiTabs extends LitElement {
|
|
|
172
203
|
}
|
|
173
204
|
|
|
174
205
|
protected selectItem(tab: UiTab, focus = false): void {
|
|
175
|
-
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
206
|
+
this.activeItem = tab;
|
|
178
207
|
if (this.hasAttribute('tabindex')) {
|
|
179
208
|
this.removeAttribute('tabindex');
|
|
180
209
|
}
|
|
181
210
|
tab.setAttribute('aria-selected', 'true');
|
|
182
211
|
tab.setAttribute('tabindex', '0');
|
|
183
212
|
tab.selected = true;
|
|
184
|
-
this.activeItem = tab;
|
|
185
213
|
tab.priority = this.priority;
|
|
186
214
|
tab.scrollIntoView({ inline: 'nearest', behavior: 'auto', block: 'nearest' });
|
|
187
215
|
if (focus) {
|
|
@@ -196,8 +224,19 @@ export default class UiTabs extends LitElement {
|
|
|
196
224
|
tab.indicated = false;
|
|
197
225
|
}
|
|
198
226
|
|
|
227
|
+
protected handleVisibility(): void {
|
|
228
|
+
const { previousItem, activeItem } = this;
|
|
229
|
+
if (!activeItem) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
this.positionPointer(activeItem, previousItem);
|
|
233
|
+
}
|
|
234
|
+
|
|
199
235
|
protected async positionPointer(tab: UiTab, old?: UiTab | null): Promise<void> {
|
|
200
|
-
const { items, pointer } = this;
|
|
236
|
+
const { items, pointer, isVisible } = this;
|
|
237
|
+
if (!isVisible) {
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
201
240
|
const index = items.indexOf(tab);
|
|
202
241
|
if (index < 0 || !pointer) {
|
|
203
242
|
this.pointerStyles = undefined;
|
|
@@ -209,15 +248,18 @@ export default class UiTabs extends LitElement {
|
|
|
209
248
|
tab.indicated = true;
|
|
210
249
|
return;
|
|
211
250
|
}
|
|
251
|
+
const isPrimary = this.priority === 'primary';
|
|
252
|
+
const final = isPrimary ? this.getPrimaryLeft(tab) : this.getSecondaryLeft(tab);
|
|
253
|
+
if (this.pointerStyles && this.pointerStyles.left === `${final}px`) {
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
212
256
|
|
|
213
257
|
// first position this indicator in the place of the old one.
|
|
214
258
|
// update the view and then run the animation.
|
|
215
259
|
this.indicated = true;
|
|
216
|
-
const isPrimary = this.priority === 'primary';
|
|
217
260
|
const left = isPrimary ? this.getPrimaryLeft(old) : this.getSecondaryLeft(old);
|
|
218
261
|
this.pointerStyles = { left };
|
|
219
262
|
await this.updateComplete;
|
|
220
|
-
const final = isPrimary ? this.getPrimaryLeft(tab) : this.getSecondaryLeft(tab);
|
|
221
263
|
const frames = isPrimary ? this.getPrimaryKeyframes(left, final) : this.getSecondaryKeyframes(left, final);
|
|
222
264
|
|
|
223
265
|
if (this.moveAnimation) {
|
|
@@ -210,7 +210,7 @@ describe.skip('OAuth 2', () => {
|
|
|
210
210
|
it('updates query parameter on token request', async () => {
|
|
211
211
|
const input = (element.shadowRoot!.querySelector('.form-input[name="queryTokenResource"]')) as Input;
|
|
212
212
|
input.value = 'test';
|
|
213
|
-
input.
|
|
213
|
+
input.notifyChange();
|
|
214
214
|
const info = element.serialize() as IOAuth2Authorization;
|
|
215
215
|
const cd = info.customData as IOAuth2CustomData;
|
|
216
216
|
const token = cd.token as IOAuth2TokenRequestCustomData;
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DataSteps, FlowResponseDataEnum, FlowSourceEnum, TransformationSteps,
|
|
3
|
-
HttpAssertions as CoreAssertions,
|
|
3
|
+
HttpAssertions as CoreAssertions, IHttpStep,
|
|
4
4
|
} from '@api-client/core/build/browser.js';
|
|
5
|
-
import { IHttpStep } from '@api-client/core/build/src/models/http-actions/HttpStep.js';
|
|
6
5
|
import { assert, fixture, html } from '@open-wc/testing';
|
|
7
6
|
import { resetMouse, setViewport } from '@web/test-runner-commands';
|
|
8
7
|
import sinon from 'sinon';
|
|
9
|
-
import '../../../src/
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import Input from '../../../src/ui/input/Input.js';
|
|
8
|
+
import type HttpAssertionsElement from '../../../src/elements/http/HttpAssertions.element.js';
|
|
9
|
+
import type UiChip from '../../../src/ui/chip/UiChip.js';
|
|
10
|
+
import type Input from '../../../src/ui/input/Input.js';
|
|
13
11
|
import { UiMock } from '../../helpers/UiMock.js';
|
|
12
|
+
import '../../../src/define/http/http-assertions.js';
|
|
14
13
|
|
|
15
14
|
describe('element', () => {
|
|
16
15
|
describe('http', () => {
|