@api-client/ui 0.0.13 → 0.0.15
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/_old/ApiFilesElement.ts +1 -1
- package/_old/AppSettingsMenuElement.ts +1 -1
- package/_old/FileMaps.ts +1 -1
- package/demo/amf/api-annotation.ts +1 -1
- package/demo/amf/api-console.ts +1 -1
- package/demo/amf/api-editor.ts +1 -1
- package/demo/amf/api-operation.ts +1 -1
- package/demo/amf/api-payload.ts +1 -1
- package/demo/amf/api-request.ts +1 -1
- package/demo/amf/api-resource.ts +1 -1
- package/demo/amf/api-schema-documentation.ts +1 -1
- package/demo/amf/bare-components.ts +1 -1
- package/demo/amf/lib/AmfDemoPage.ts +1 -1
- package/demo/amf/oauth-authorize.ts +1 -1
- package/demo/elements/authorization/api-key.ts +1 -1
- package/demo/elements/authorization/basic.ts +1 -1
- package/demo/elements/authorization/bearer.ts +1 -1
- package/demo/elements/authorization/cc.ts +1 -1
- package/demo/elements/authorization/ntlm.ts +1 -1
- package/demo/elements/authorization/oauth-authorize.ts +1 -1
- package/demo/elements/authorization/oauth2.ts +1 -1
- package/demo/elements/authorization/oidc.ts +1 -1
- package/demo/elements/environment/environment-editor.ts +1 -1
- package/demo/elements/environment/server-editor.ts +1 -1
- package/demo/elements/environment/variables-editor.ts +1 -1
- package/demo/elements/har/har-viewer.ts +1 -1
- package/demo/elements/http/body-editor.ts +1 -1
- package/demo/elements/http/headers.ts +1 -1
- package/demo/elements/http/http-assertions.ts +1 -1
- package/demo/elements/http/http-flows.ts +1 -1
- package/demo/elements/http/request-editor.ts +1 -1
- package/demo/elements/http/request-log.ts +1 -1
- package/demo/elements/http/url-editing.ts +1 -1
- package/demo/elements/project/project-run-report.ts +1 -1
- package/demo/elements/project/request-editor.ts +1 -1
- package/demo/elements/store/file-picker.ts +1 -1
- package/demo/elements/ui/list/list.ts +1 -1
- package/demo/layout/index.ts +1 -1
- package/demo/lib/DemoBindings.ts +1 -1
- package/demo/lib/amf/AmfPartialGraphStore.ts +1 -1
- package/demo/lib/amf/AmfPartialModel.ts +1 -1
- package/dist/amf/lib/AmfInputParser.d.ts +1 -1
- package/dist/amf/lib/AmfInputParser.d.ts.map +1 -1
- package/dist/amf/lib/AmfInputParser.js +1 -1
- package/dist/amf/lib/AmfInputParser.js.map +1 -1
- package/dist/amf/lib/AmfParameters.d.ts +1 -1
- package/dist/amf/lib/AmfParameters.d.ts.map +1 -1
- package/dist/amf/lib/AmfParameters.js +1 -1
- package/dist/amf/lib/AmfParameters.js.map +1 -1
- package/dist/amf/lib/AmfSecurity.d.ts +1 -1
- package/dist/amf/lib/AmfSecurity.d.ts.map +1 -1
- package/dist/amf/lib/AmfSecurity.js.map +1 -1
- package/dist/amf/lib/Oauth2RamlCustomData.d.ts +1 -1
- package/dist/amf/lib/Oauth2RamlCustomData.d.ts.map +1 -1
- package/dist/amf/lib/Oauth2RamlCustomData.js +1 -1
- package/dist/amf/lib/Oauth2RamlCustomData.js.map +1 -1
- package/dist/amf/lib/PayloadUtils.d.ts +1 -1
- package/dist/amf/lib/PayloadUtils.d.ts.map +1 -1
- package/dist/amf/lib/PayloadUtils.js +1 -1
- package/dist/amf/lib/PayloadUtils.js.map +1 -1
- package/dist/amf/lib/QueryParameterProcessor.d.ts +1 -1
- package/dist/amf/lib/QueryParameterProcessor.d.ts.map +1 -1
- package/dist/amf/lib/QueryParameterProcessor.js +1 -1
- package/dist/amf/lib/QueryParameterProcessor.js.map +1 -1
- package/dist/amf/lib/Utils.d.ts +1 -1
- package/dist/amf/lib/Utils.d.ts.map +1 -1
- package/dist/amf/lib/Utils.js +1 -1
- package/dist/amf/lib/Utils.js.map +1 -1
- package/dist/amf/store/AmfGraphStore.d.ts +1 -1
- package/dist/amf/store/AmfGraphStore.d.ts.map +1 -1
- package/dist/amf/store/AmfGraphStore.js +1 -1
- package/dist/amf/store/AmfGraphStore.js.map +1 -1
- package/dist/amf/store/AmfStore.d.ts +1 -1
- package/dist/amf/store/AmfStore.d.ts.map +1 -1
- package/dist/amf/store/AmfStore.js +1 -1
- package/dist/amf/store/AmfStore.js.map +1 -1
- package/dist/amf/store/InMemAmfGraphStore.d.ts +2 -2
- package/dist/amf/store/InMemAmfGraphStore.d.ts.map +1 -1
- package/dist/amf/store/InMemAmfGraphStore.js +1 -1
- package/dist/amf/store/InMemAmfGraphStore.js.map +1 -1
- package/dist/amf/types.d.ts +1 -1
- package/dist/amf/types.d.ts.map +1 -1
- package/dist/amf/types.js.map +1 -1
- package/dist/bindings/base/HttpClientStoreBindings.d.ts +1 -1
- package/dist/bindings/base/HttpClientStoreBindings.d.ts.map +1 -1
- package/dist/bindings/base/HttpClientStoreBindings.js.map +1 -1
- package/dist/bindings/base/IoThread.d.ts +1 -1
- package/dist/bindings/base/IoThread.d.ts.map +1 -1
- package/dist/bindings/base/IoThread.js +1 -1
- package/dist/bindings/base/IoThread.js.map +1 -1
- package/dist/bindings/base/PlatformBindings.d.ts +1 -1
- package/dist/bindings/base/PlatformBindings.d.ts.map +1 -1
- package/dist/bindings/base/PlatformBindings.js +1 -1
- package/dist/bindings/base/PlatformBindings.js.map +1 -1
- package/dist/bindings/base/ProxyBindings.d.ts +1 -1
- package/dist/bindings/base/ProxyBindings.d.ts.map +1 -1
- package/dist/bindings/base/ProxyBindings.js +1 -1
- package/dist/bindings/base/ProxyBindings.js.map +1 -1
- package/dist/bindings/base/StoreBindings.d.ts +1 -1
- package/dist/bindings/base/StoreBindings.d.ts.map +1 -1
- package/dist/bindings/base/StoreBindings.js +1 -1
- package/dist/bindings/base/StoreBindings.js.map +1 -1
- package/dist/bindings/web/WebConfigurationBindings.d.ts +1 -1
- package/dist/bindings/web/WebConfigurationBindings.d.ts.map +1 -1
- package/dist/bindings/web/WebConfigurationBindings.js.map +1 -1
- package/dist/bindings/web/WebFileBindings.js +1 -1
- package/dist/bindings/web/WebFileBindings.js.map +1 -1
- package/dist/bindings/web/WebHttpClientStoreBindings.d.ts +1 -1
- package/dist/bindings/web/WebHttpClientStoreBindings.d.ts.map +1 -1
- package/dist/bindings/web/WebHttpClientStoreBindings.js.map +1 -1
- package/dist/bindings/web/WebProxyBindings.d.ts +1 -1
- package/dist/bindings/web/WebProxyBindings.d.ts.map +1 -1
- package/dist/bindings/web/WebProxyBindings.js +1 -1
- package/dist/bindings/web/WebProxyBindings.js.map +1 -1
- package/dist/bindings/web/WebStoreBindings.d.ts +1 -1
- package/dist/bindings/web/WebStoreBindings.d.ts.map +1 -1
- package/dist/bindings/web/WebStoreBindings.js +1 -1
- package/dist/bindings/web/WebStoreBindings.js.map +1 -1
- package/dist/code-snippets/Bash/CurlSnippet.d.ts +1 -1
- package/dist/code-snippets/Bash/CurlSnippet.d.ts.map +1 -1
- package/dist/code-snippets/Bash/CurlSnippet.js.map +1 -1
- package/dist/code-snippets/C/CcurlSnippet.d.ts +1 -1
- package/dist/code-snippets/C/CcurlSnippet.d.ts.map +1 -1
- package/dist/code-snippets/C/CcurlSnippet.js.map +1 -1
- package/dist/code-snippets/CodeSnippet.d.ts +1 -1
- package/dist/code-snippets/CodeSnippet.d.ts.map +1 -1
- package/dist/code-snippets/CodeSnippet.js +1 -1
- package/dist/code-snippets/CodeSnippet.js.map +1 -1
- package/dist/code-snippets/Dart/DartSnippet.d.ts +1 -1
- package/dist/code-snippets/Dart/DartSnippet.d.ts.map +1 -1
- package/dist/code-snippets/Dart/DartSnippet.js.map +1 -1
- package/dist/code-snippets/HTTP/RawSnippet.d.ts +1 -1
- package/dist/code-snippets/HTTP/RawSnippet.d.ts.map +1 -1
- package/dist/code-snippets/HTTP/RawSnippet.js.map +1 -1
- package/dist/code-snippets/Java/PlatformSnippet.d.ts +1 -1
- package/dist/code-snippets/Java/PlatformSnippet.d.ts.map +1 -1
- package/dist/code-snippets/Java/PlatformSnippet.js.map +1 -1
- package/dist/code-snippets/Java/SpringSnippet.d.ts +1 -1
- package/dist/code-snippets/Java/SpringSnippet.d.ts.map +1 -1
- package/dist/code-snippets/Java/SpringSnippet.js.map +1 -1
- package/dist/code-snippets/JavaScript/AsyncFetchSnippet.d.ts +1 -1
- package/dist/code-snippets/JavaScript/AsyncFetchSnippet.d.ts.map +1 -1
- package/dist/code-snippets/JavaScript/AsyncFetchSnippet.js.map +1 -1
- package/dist/code-snippets/JavaScript/AxiosSnippet.d.ts +1 -1
- package/dist/code-snippets/JavaScript/AxiosSnippet.d.ts.map +1 -1
- package/dist/code-snippets/JavaScript/AxiosSnippet.js.map +1 -1
- package/dist/code-snippets/JavaScript/FetchSnippet.d.ts +1 -1
- package/dist/code-snippets/JavaScript/FetchSnippet.d.ts.map +1 -1
- package/dist/code-snippets/JavaScript/FetchSnippet.js.map +1 -1
- package/dist/code-snippets/JavaScript/NodeSnippet.d.ts +1 -1
- package/dist/code-snippets/JavaScript/NodeSnippet.d.ts.map +1 -1
- package/dist/code-snippets/JavaScript/NodeSnippet.js.map +1 -1
- package/dist/code-snippets/JavaScript/XhrSnippet.d.ts +1 -1
- package/dist/code-snippets/JavaScript/XhrSnippet.d.ts.map +1 -1
- package/dist/code-snippets/JavaScript/XhrSnippet.js.map +1 -1
- package/dist/code-snippets/JavaScript/jQuerySnippet.d.ts +1 -1
- package/dist/code-snippets/JavaScript/jQuerySnippet.d.ts.map +1 -1
- package/dist/code-snippets/JavaScript/jQuerySnippet.js.map +1 -1
- package/dist/code-snippets/Python/Python27Snippet.d.ts +1 -1
- package/dist/code-snippets/Python/Python27Snippet.d.ts.map +1 -1
- package/dist/code-snippets/Python/Python27Snippet.js.map +1 -1
- package/dist/code-snippets/Python/Python31Snippet.d.ts +1 -1
- package/dist/code-snippets/Python/Python31Snippet.d.ts.map +1 -1
- package/dist/code-snippets/Python/Python31Snippet.js.map +1 -1
- package/dist/code-snippets/Python/RequestsSnippet.d.ts +1 -1
- package/dist/code-snippets/Python/RequestsSnippet.d.ts.map +1 -1
- package/dist/code-snippets/Python/RequestsSnippet.js.map +1 -1
- package/dist/define/http/http-body-editor.d.ts.map +1 -1
- package/dist/define/http/http-body-editor.js +1 -1
- package/dist/define/http/http-body-editor.js.map +1 -1
- package/dist/elements/amf/ApiAnnotationDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiAnnotationDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiAnnotationDocument.element.js +1 -1
- package/dist/elements/amf/ApiAnnotationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiAuthorizationEditor.element.d.ts +1 -1
- package/dist/elements/amf/ApiAuthorizationEditor.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiAuthorizationEditor.element.js.map +1 -1
- package/dist/elements/amf/ApiChannelDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiChannelDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiChannelDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiDocumentation.element.d.ts +1 -1
- package/dist/elements/amf/ApiDocumentation.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiDocumentation.element.js +1 -1
- package/dist/elements/amf/ApiDocumentation.element.js.map +1 -1
- package/dist/elements/amf/ApiDocumentationBase.d.ts +1 -1
- package/dist/elements/amf/ApiDocumentationBase.d.ts.map +1 -1
- package/dist/elements/amf/ApiDocumentationBase.js +1 -1
- package/dist/elements/amf/ApiDocumentationBase.js.map +1 -1
- package/dist/elements/amf/ApiDocumentationDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiDocumentationDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiDocumentationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiNavigation.element.d.ts +1 -1
- package/dist/elements/amf/ApiNavigation.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiNavigation.element.js.map +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.js +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiParameterDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiParameterDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiParameterDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiParametrizedSecurityScheme.element.d.ts +1 -1
- package/dist/elements/amf/ApiParametrizedSecurityScheme.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiParametrizedSecurityScheme.element.js +1 -1
- package/dist/elements/amf/ApiParametrizedSecurityScheme.element.js.map +1 -1
- package/dist/elements/amf/ApiPayloadDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiPayloadDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiPayloadDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiRequest.element.d.ts +1 -1
- package/dist/elements/amf/ApiRequest.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiRequest.element.js.map +1 -1
- package/dist/elements/amf/ApiRequestDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiRequestDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiRequestDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.d.ts +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.js +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.js.map +1 -1
- package/dist/elements/amf/ApiResourceDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiResourceDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiResourceDocument.element.js +1 -1
- package/dist/elements/amf/ApiResourceDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiResponseDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiResponseDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiResponseDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiSchemaDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiSchemaDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiSchemaDocument.element.js +1 -1
- package/dist/elements/amf/ApiSchemaDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiSecurityDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiSecurityDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiSecurityDocument.element.js +1 -1
- package/dist/elements/amf/ApiSecurityDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiSecurityRequirementDocument.element.d.ts +1 -1
- package/dist/elements/amf/ApiSecurityRequirementDocument.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiSecurityRequirementDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiServerPicker.element.d.ts +1 -1
- package/dist/elements/amf/ApiServerPicker.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiServerPicker.element.js +1 -1
- package/dist/elements/amf/ApiServerPicker.element.js.map +1 -1
- package/dist/elements/amf/ApiSummary.element.d.ts +1 -1
- package/dist/elements/amf/ApiSummary.element.d.ts.map +1 -1
- package/dist/elements/amf/ApiSummary.element.js +1 -1
- package/dist/elements/amf/ApiSummary.element.js.map +1 -1
- package/dist/elements/amf/SchemaCommonTemplates.d.ts +1 -1
- package/dist/elements/amf/SchemaCommonTemplates.d.ts.map +1 -1
- package/dist/elements/amf/SchemaCommonTemplates.js +1 -1
- package/dist/elements/amf/SchemaCommonTemplates.js.map +1 -1
- package/dist/elements/amf/authorization/AmfApiKey.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfApiKey.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfApiKey.js +1 -1
- package/dist/elements/amf/authorization/AmfApiKey.js.map +1 -1
- package/dist/elements/amf/authorization/AmfBasic.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfBasic.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfBasic.js +1 -1
- package/dist/elements/amf/authorization/AmfBasic.js.map +1 -1
- package/dist/elements/amf/authorization/AmfBearer.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfBearer.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfBearer.js +1 -1
- package/dist/elements/amf/authorization/AmfBearer.js.map +1 -1
- package/dist/elements/amf/authorization/AmfOauth2.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfOauth2.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfOauth2.js +1 -1
- package/dist/elements/amf/authorization/AmfOauth2.js.map +1 -1
- package/dist/elements/amf/authorization/AmfOidc.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfOidc.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfOidc.js +1 -1
- package/dist/elements/amf/authorization/AmfOidc.js.map +1 -1
- package/dist/elements/amf/authorization/AmfPassThrough.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfPassThrough.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfPassThrough.js +1 -1
- package/dist/elements/amf/authorization/AmfPassThrough.js.map +1 -1
- package/dist/elements/amf/authorization/AmfRamlCustom.d.ts +1 -1
- package/dist/elements/amf/authorization/AmfRamlCustom.d.ts.map +1 -1
- package/dist/elements/amf/authorization/AmfRamlCustom.js +1 -1
- package/dist/elements/amf/authorization/AmfRamlCustom.js.map +1 -1
- package/dist/elements/authorization/OAuth2Authorize.d.ts +1 -1
- package/dist/elements/authorization/OAuth2Authorize.d.ts.map +1 -1
- package/dist/elements/authorization/OAuth2Authorize.js +1 -1
- package/dist/elements/authorization/OAuth2Authorize.js.map +1 -1
- package/dist/elements/authorization/OidcAuthorize.d.ts +1 -1
- package/dist/elements/authorization/OidcAuthorize.d.ts.map +1 -1
- package/dist/elements/authorization/OidcAuthorize.js +1 -1
- package/dist/elements/authorization/OidcAuthorize.js.map +1 -1
- package/dist/elements/authorization/ui/ApiKeyAuthorization.d.ts +1 -1
- package/dist/elements/authorization/ui/ApiKeyAuthorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/ApiKeyAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/Authorization.d.ts +1 -1
- package/dist/elements/authorization/ui/Authorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/Authorization.js.map +1 -1
- package/dist/elements/authorization/ui/BasicAuthorization.d.ts +1 -1
- package/dist/elements/authorization/ui/BasicAuthorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/BasicAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/BearerAuthorization.d.ts +1 -1
- package/dist/elements/authorization/ui/BearerAuthorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/BearerAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/CcAuthorization.d.ts +1 -1
- package/dist/elements/authorization/ui/CcAuthorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/CcAuthorization.js +1 -1
- package/dist/elements/authorization/ui/CcAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/NtlmAuthorization.d.ts +1 -1
- package/dist/elements/authorization/ui/NtlmAuthorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/NtlmAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/OAuth2Authorization.d.ts +1 -1
- package/dist/elements/authorization/ui/OAuth2Authorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/OAuth2Authorization.js +1 -1
- package/dist/elements/authorization/ui/OAuth2Authorization.js.map +1 -1
- package/dist/elements/authorization/ui/OidcAuthorization.d.ts +1 -1
- package/dist/elements/authorization/ui/OidcAuthorization.d.ts.map +1 -1
- package/dist/elements/authorization/ui/OidcAuthorization.js +1 -1
- package/dist/elements/authorization/ui/OidcAuthorization.js.map +1 -1
- package/dist/elements/code/HttpSnippets.d.ts +1 -1
- package/dist/elements/code/HttpSnippets.d.ts.map +1 -1
- package/dist/elements/code/HttpSnippets.js.map +1 -1
- package/dist/elements/dialog/DeleteCookieAction.element.d.ts +1 -1
- package/dist/elements/dialog/DeleteCookieAction.element.d.ts.map +1 -1
- package/dist/elements/dialog/DeleteCookieAction.element.js +1 -1
- package/dist/elements/dialog/DeleteCookieAction.element.js.map +1 -1
- package/dist/elements/dialog/SetCookieAction.element.d.ts +1 -1
- package/dist/elements/dialog/SetCookieAction.element.d.ts.map +1 -1
- package/dist/elements/dialog/SetCookieAction.element.js +1 -1
- package/dist/elements/dialog/SetCookieAction.element.js.map +1 -1
- package/dist/elements/environment/EnvironmentEditor.d.ts +1 -1
- package/dist/elements/environment/EnvironmentEditor.d.ts.map +1 -1
- package/dist/elements/environment/EnvironmentEditor.js +1 -1
- package/dist/elements/environment/EnvironmentEditor.js.map +1 -1
- package/dist/elements/environment/ServerEditor.d.ts +1 -1
- package/dist/elements/environment/ServerEditor.d.ts.map +1 -1
- package/dist/elements/environment/ServerEditor.js +1 -1
- package/dist/elements/environment/ServerEditor.js.map +1 -1
- package/dist/elements/environment/VariablesEditor.d.ts +1 -1
- package/dist/elements/environment/VariablesEditor.d.ts.map +1 -1
- package/dist/elements/environment/VariablesEditor.js +1 -1
- package/dist/elements/environment/VariablesEditor.js.map +1 -1
- package/dist/elements/har/HarViewer.js +1 -1
- package/dist/elements/har/HarViewer.js.map +1 -1
- package/dist/elements/http/BodyEditor.d.ts +1 -1
- package/dist/elements/http/BodyEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyEditor.js +6 -6
- package/dist/elements/http/BodyEditor.js.map +1 -1
- package/dist/elements/http/BodyEditor.styles.d.ts +1 -1
- package/dist/elements/http/BodyEditor.styles.d.ts.map +1 -1
- package/dist/elements/http/BodyEditor.styles.js +5 -19
- package/dist/elements/http/BodyEditor.styles.js.map +1 -1
- package/dist/elements/http/BodyMultipartEditor.d.ts +1 -1
- package/dist/elements/http/BodyMultipartEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyMultipartEditor.js +1 -1
- package/dist/elements/http/BodyMultipartEditor.js.map +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.d.ts +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.d.ts.map +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.js +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.js.map +1 -1
- package/dist/elements/http/CertificateAdd.element.d.ts +1 -1
- package/dist/elements/http/CertificateAdd.element.d.ts.map +1 -1
- package/dist/elements/http/CertificateAdd.element.js +1 -1
- package/dist/elements/http/CertificateAdd.element.js.map +1 -1
- package/dist/elements/http/HeadersForm.d.ts +1 -1
- package/dist/elements/http/HeadersForm.d.ts.map +1 -1
- package/dist/elements/http/HeadersForm.js +1 -1
- package/dist/elements/http/HeadersForm.js.map +1 -1
- package/dist/elements/http/HttpAssertions.element.d.ts +1 -1
- package/dist/elements/http/HttpAssertions.element.d.ts.map +1 -1
- package/dist/elements/http/HttpAssertions.element.js.map +1 -1
- package/dist/elements/http/HttpFlows.element.d.ts +1 -1
- package/dist/elements/http/HttpFlows.element.d.ts.map +1 -1
- package/dist/elements/http/HttpFlows.element.js.map +1 -1
- package/dist/elements/http/HttpFlowsUi.d.ts +1 -1
- package/dist/elements/http/HttpFlowsUi.d.ts.map +1 -1
- package/dist/elements/http/HttpFlowsUi.js +1 -1
- package/dist/elements/http/HttpFlowsUi.js.map +1 -1
- package/dist/elements/http/LogBody.d.ts +1 -1
- package/dist/elements/http/LogBody.d.ts.map +1 -1
- package/dist/elements/http/LogBody.js +1 -1
- package/dist/elements/http/LogBody.js.map +1 -1
- package/dist/elements/http/LogHeaders.d.ts +1 -1
- package/dist/elements/http/LogHeaders.d.ts.map +1 -1
- package/dist/elements/http/LogHeaders.js +1 -1
- package/dist/elements/http/LogHeaders.js.map +1 -1
- package/dist/elements/http/LogTimings.d.ts +1 -1
- package/dist/elements/http/LogTimings.d.ts.map +1 -1
- package/dist/elements/http/LogTimings.js.map +1 -1
- package/dist/elements/http/RequestAuth.template.d.ts +1 -1
- package/dist/elements/http/RequestAuth.template.d.ts.map +1 -1
- package/dist/elements/http/RequestAuth.template.js.map +1 -1
- package/dist/elements/http/RequestConfigElement.d.ts +1 -1
- package/dist/elements/http/RequestConfigElement.d.ts.map +1 -1
- package/dist/elements/http/RequestConfigElement.js +1 -1
- package/dist/elements/http/RequestConfigElement.js.map +1 -1
- package/dist/elements/http/RequestEditor.d.ts +2 -2
- package/dist/elements/http/RequestEditor.d.ts.map +1 -1
- package/dist/elements/http/RequestEditor.js +1 -1
- package/dist/elements/http/RequestEditor.js.map +1 -1
- package/dist/elements/http/RequestLog.d.ts +1 -1
- package/dist/elements/http/RequestLog.d.ts.map +1 -1
- package/dist/elements/http/RequestLog.js +1 -1
- package/dist/elements/http/RequestLog.js.map +1 -1
- package/dist/elements/http/UrlEncodeUtils.d.ts +1 -1
- package/dist/elements/http/UrlEncodeUtils.d.ts.map +1 -1
- package/dist/elements/http/UrlEncodeUtils.js +1 -1
- package/dist/elements/http/UrlEncodeUtils.js.map +1 -1
- package/dist/elements/http/UrlInput.d.ts +1 -1
- package/dist/elements/http/UrlInput.d.ts.map +1 -1
- package/dist/elements/http/UrlInput.js.map +1 -1
- package/dist/elements/http/UrlParamsForm.d.ts +1 -1
- package/dist/elements/http/UrlParamsForm.d.ts.map +1 -1
- package/dist/elements/http/UrlParamsForm.js +1 -1
- package/dist/elements/http/UrlParamsForm.js.map +1 -1
- package/dist/elements/layout/SplitPanel.js +1 -1
- package/dist/elements/layout/SplitPanel.js.map +1 -1
- package/dist/elements/navigation/AppNavigationElement.js +1 -1
- package/dist/elements/navigation/AppNavigationElement.js.map +1 -1
- package/dist/elements/project/HttpProjectRequest.d.ts +2 -2
- package/dist/elements/project/HttpProjectRequest.d.ts.map +1 -1
- package/dist/elements/project/HttpProjectRequest.js +1 -1
- package/dist/elements/project/HttpProjectRequest.js.map +1 -1
- package/dist/elements/project/HttpProjectRequestHistory.d.ts +1 -1
- package/dist/elements/project/HttpProjectRequestHistory.d.ts.map +1 -1
- package/dist/elements/project/HttpProjectRequestHistory.js +1 -1
- package/dist/elements/project/HttpProjectRequestHistory.js.map +1 -1
- package/dist/elements/project/ProjectNavigation.d.ts +1 -1
- package/dist/elements/project/ProjectNavigation.d.ts.map +1 -1
- package/dist/elements/project/ProjectNavigation.js +1 -1
- package/dist/elements/project/ProjectNavigation.js.map +1 -1
- package/dist/elements/project/ProjectRunReport.d.ts +1 -1
- package/dist/elements/project/ProjectRunReport.d.ts.map +1 -1
- package/dist/elements/project/ProjectRunReport.js +1 -1
- package/dist/elements/project/ProjectRunReport.js.map +1 -1
- package/dist/elements/project/ProjectRunner.d.ts +1 -1
- package/dist/elements/project/ProjectRunner.d.ts.map +1 -1
- package/dist/elements/project/ProjectRunner.js +1 -1
- package/dist/elements/project/ProjectRunner.js.map +1 -1
- package/dist/elements/project/ProjectRunnerNavigationElement.d.ts +1 -1
- package/dist/elements/project/ProjectRunnerNavigationElement.d.ts.map +1 -1
- package/dist/elements/project/ProjectRunnerNavigationElement.js +1 -1
- package/dist/elements/project/ProjectRunnerNavigationElement.js.map +1 -1
- package/dist/elements/schema-design/AssociationFormElement.d.ts +1 -1
- package/dist/elements/schema-design/AssociationFormElement.d.ts.map +1 -1
- package/dist/elements/schema-design/AssociationFormElement.js +1 -1
- package/dist/elements/schema-design/AssociationFormElement.js.map +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.d.ts +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.d.ts.map +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.js +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.js.map +1 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.d.ts +1 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.d.ts.map +1 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.js.map +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.d.ts +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.d.ts.map +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.js +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.js.map +1 -1
- package/dist/elements/schema-design/EntityFormElement.d.ts +1 -1
- package/dist/elements/schema-design/EntityFormElement.d.ts.map +1 -1
- package/dist/elements/schema-design/EntityFormElement.js +1 -1
- package/dist/elements/schema-design/EntityFormElement.js.map +1 -1
- package/dist/elements/schema-design/PropertyFormElement.d.ts +1 -1
- package/dist/elements/schema-design/PropertyFormElement.d.ts.map +1 -1
- package/dist/elements/schema-design/PropertyFormElement.js +1 -1
- package/dist/elements/schema-design/PropertyFormElement.js.map +1 -1
- package/dist/elements/schema-design/SchemaDesignNavigation.d.ts +1 -1
- package/dist/elements/schema-design/SchemaDesignNavigation.d.ts.map +1 -1
- package/dist/elements/schema-design/SchemaDesignNavigation.js +1 -1
- package/dist/elements/schema-design/SchemaDesignNavigation.js.map +1 -1
- package/dist/elements/schema-design/SchemaNamespaceSelector.d.ts +1 -1
- package/dist/elements/schema-design/SchemaNamespaceSelector.d.ts.map +1 -1
- package/dist/elements/schema-design/SchemaNamespaceSelector.js +1 -1
- package/dist/elements/schema-design/SchemaNamespaceSelector.js.map +1 -1
- package/dist/elements/store/FilePicker.element.d.ts +1 -1
- package/dist/elements/store/FilePicker.element.d.ts.map +1 -1
- package/dist/elements/store/FilePicker.element.js +1 -1
- package/dist/elements/store/FilePicker.element.js.map +1 -1
- package/dist/elements/store/FilesLib.d.ts +2 -2
- package/dist/elements/store/FilesLib.d.ts.map +1 -1
- package/dist/elements/store/FilesLib.js +1 -1
- package/dist/elements/store/FilesLib.js.map +1 -1
- package/dist/elements/store/ShareFile.element.d.ts +1 -1
- package/dist/elements/store/ShareFile.element.d.ts.map +1 -1
- package/dist/elements/store/ShareFile.element.js +1 -1
- package/dist/elements/store/ShareFile.element.js.map +1 -1
- package/dist/elements/user/UserAvatarElement.d.ts +1 -1
- package/dist/elements/user/UserAvatarElement.d.ts.map +1 -1
- package/dist/elements/user/UserAvatarElement.js.map +1 -1
- package/dist/events/BroadcastUiEvents.d.ts +1 -1
- package/dist/events/BroadcastUiEvents.d.ts.map +1 -1
- package/dist/events/BroadcastUiEvents.js.map +1 -1
- package/dist/events/Events.d.ts +30 -30
- package/dist/events/HttpClientEvents.d.ts +1 -1
- package/dist/events/HttpClientEvents.d.ts.map +1 -1
- package/dist/events/HttpClientEvents.js +1 -1
- package/dist/events/HttpClientEvents.js.map +1 -1
- package/dist/events/HttpProjectEvents.d.ts +1 -1
- package/dist/events/HttpProjectEvents.d.ts.map +1 -1
- package/dist/events/HttpProjectEvents.js +1 -1
- package/dist/events/HttpProjectEvents.js.map +1 -1
- package/dist/events/StoreEvents.d.ts +1 -1
- package/dist/events/StoreEvents.d.ts.map +1 -1
- package/dist/events/StoreEvents.js +1 -1
- package/dist/events/StoreEvents.js.map +1 -1
- package/dist/events/amf/ApiEvents.d.ts +1 -1
- package/dist/events/amf/ApiEvents.d.ts.map +1 -1
- package/dist/events/amf/ApiEvents.js.map +1 -1
- package/dist/events/amf/DocumentationEvents.d.ts +1 -1
- package/dist/events/amf/DocumentationEvents.d.ts.map +1 -1
- package/dist/events/amf/DocumentationEvents.js.map +1 -1
- package/dist/events/amf/EndpointEvents.d.ts +1 -1
- package/dist/events/amf/EndpointEvents.d.ts.map +1 -1
- package/dist/events/amf/EndpointEvents.js.map +1 -1
- package/dist/events/amf/Events.d.ts +17 -17
- package/dist/events/amf/OperationEvents.d.ts +1 -1
- package/dist/events/amf/OperationEvents.d.ts.map +1 -1
- package/dist/events/amf/OperationEvents.js.map +1 -1
- package/dist/events/amf/PayloadEvents.d.ts +1 -1
- package/dist/events/amf/PayloadEvents.d.ts.map +1 -1
- package/dist/events/amf/PayloadEvents.js.map +1 -1
- package/dist/events/amf/RequestEvents.d.ts +1 -1
- package/dist/events/amf/RequestEvents.d.ts.map +1 -1
- package/dist/events/amf/RequestEvents.js.map +1 -1
- package/dist/events/amf/ResponseEvents.d.ts +1 -1
- package/dist/events/amf/ResponseEvents.d.ts.map +1 -1
- package/dist/events/amf/ResponseEvents.js.map +1 -1
- package/dist/events/amf/SecurityEvents.d.ts +1 -1
- package/dist/events/amf/SecurityEvents.d.ts.map +1 -1
- package/dist/events/amf/SecurityEvents.js.map +1 -1
- package/dist/events/amf/ServerEvents.d.ts +1 -1
- package/dist/events/amf/ServerEvents.d.ts.map +1 -1
- package/dist/events/amf/ServerEvents.js.map +1 -1
- package/dist/events/amf/TypeEvents.d.ts +1 -1
- package/dist/events/amf/TypeEvents.d.ts.map +1 -1
- package/dist/events/amf/TypeEvents.js.map +1 -1
- package/dist/http-client/idb/Arc18DataUpgrade.js +1 -1
- package/dist/http-client/idb/Arc18DataUpgrade.js.map +1 -1
- package/dist/http-client/idb/Base.d.ts +1 -1
- package/dist/http-client/idb/Base.d.ts.map +1 -1
- package/dist/http-client/idb/Base.js +1 -1
- package/dist/http-client/idb/Base.js.map +1 -1
- package/dist/http-client/idb/LegacyBodyProcessor.d.ts +1 -1
- package/dist/http-client/idb/LegacyBodyProcessor.d.ts.map +1 -1
- package/dist/http-client/idb/LegacyBodyProcessor.js.map +1 -1
- package/dist/http-client/idb/MockedStore.d.ts +1 -1
- package/dist/http-client/idb/MockedStore.d.ts.map +1 -1
- package/dist/http-client/idb/MockedStore.js +1 -1
- package/dist/http-client/idb/MockedStore.js.map +1 -1
- package/dist/http-client/store/Cursor.js +3 -3
- package/dist/http-client/store/Cursor.js.map +1 -1
- package/dist/http-client/store/DataImportProcessor.d.ts +2 -2
- package/dist/http-client/store/DataImportProcessor.d.ts.map +1 -1
- package/dist/http-client/store/DataImportProcessor.js +2 -2
- package/dist/http-client/store/DataImportProcessor.js.map +1 -1
- package/dist/http-client/store/HttpClientIdbDatabase.d.ts +1 -1
- package/dist/http-client/store/HttpClientIdbDatabase.d.ts.map +1 -1
- package/dist/http-client/store/HttpClientIdbDatabase.js +2 -6
- package/dist/http-client/store/HttpClientIdbDatabase.js.map +1 -1
- package/dist/http-client/store/IdbThread.d.ts +1 -1
- package/dist/http-client/store/IdbThread.d.ts.map +1 -1
- package/dist/http-client/store/IdbThread.js.map +1 -1
- package/dist/http-client/store/State.d.ts +1 -3
- package/dist/http-client/store/State.d.ts.map +1 -1
- package/dist/http-client/store/State.js.map +1 -1
- package/dist/http-client/store/idb/IdbProjectUi.d.ts +1 -1
- package/dist/http-client/store/idb/IdbProjectUi.d.ts.map +1 -1
- package/dist/http-client/store/idb/IdbProjectUi.js +1 -1
- package/dist/http-client/store/idb/IdbProjectUi.js.map +1 -1
- package/dist/http-client/store/idb/IdbStore.d.ts +1 -10
- package/dist/http-client/store/idb/IdbStore.d.ts.map +1 -1
- package/dist/http-client/store/idb/IdbStore.js +0 -48
- package/dist/http-client/store/idb/IdbStore.js.map +1 -1
- package/dist/http-client/store/idb/IdbUrlHistory.d.ts +1 -1
- package/dist/http-client/store/idb/IdbUrlHistory.d.ts.map +1 -1
- package/dist/http-client/store/idb/IdbUrlHistory.js.map +1 -1
- package/dist/http-client/store/idb/IdbWsHistory.d.ts +1 -1
- package/dist/http-client/store/idb/IdbWsHistory.d.ts.map +1 -1
- package/dist/http-client/store/idb/IdbWsHistory.js.map +1 -1
- package/dist/http-client/store/stores/ProjectUi.d.ts +1 -1
- package/dist/http-client/store/stores/ProjectUi.d.ts.map +1 -1
- package/dist/http-client/store/stores/ProjectUi.js.map +1 -1
- package/dist/http-client/store/stores/UrlHistory.d.ts +1 -1
- package/dist/http-client/store/stores/UrlHistory.d.ts.map +1 -1
- package/dist/http-client/store/stores/UrlHistory.js.map +1 -1
- package/dist/http-client/store/stores/WsHistory.d.ts +1 -1
- package/dist/http-client/store/stores/WsHistory.d.ts.map +1 -1
- package/dist/http-client/store/stores/WsHistory.js.map +1 -1
- package/dist/http-client/store/types.d.ts +2 -56
- package/dist/http-client/store/types.d.ts.map +1 -1
- package/dist/http-client/store/types.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/chart/HttpHistoryChart.d.ts +1 -1
- package/dist/lib/chart/HttpHistoryChart.d.ts.map +1 -1
- package/dist/lib/chart/HttpHistoryChart.js +1 -1
- package/dist/lib/chart/HttpHistoryChart.js.map +1 -1
- package/dist/lib/http/Har.d.ts +1 -1
- package/dist/lib/http/Har.d.ts.map +1 -1
- package/dist/lib/http/Har.js.map +1 -1
- package/dist/lib/http/HeadersArray.js +1 -1
- package/dist/lib/http/HeadersArray.js.map +1 -1
- package/dist/lib/http/Payload.d.ts +1 -1
- package/dist/lib/http/Payload.d.ts.map +1 -1
- package/dist/lib/http/Payload.js.map +1 -1
- package/dist/lib/http/Url.d.ts +1 -1
- package/dist/lib/http/Url.d.ts.map +1 -1
- package/dist/lib/http/Url.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.screen.d.ts +5 -5
- package/dist/pages/api-client/ApiClient.screen.d.ts.map +1 -1
- package/dist/pages/api-client/ApiClient.screen.js +3 -3
- package/dist/pages/api-client/ApiClient.screen.js.map +1 -1
- package/dist/pages/api-client/AppInfo.d.ts +1 -1
- package/dist/pages/api-client/AppInfo.d.ts.map +1 -1
- package/dist/pages/api-client/AppInfo.js.map +1 -1
- package/dist/pages/api-client/StoreConfig.screen.js +1 -1
- package/dist/pages/api-client/StoreConfig.screen.js.map +1 -1
- package/dist/pages/api-client/pages/Files.page.d.ts +1 -1
- package/dist/pages/api-client/pages/Files.page.d.ts.map +1 -1
- package/dist/pages/api-client/pages/Files.page.js +1 -1
- package/dist/pages/api-client/pages/Files.page.js.map +1 -1
- package/dist/pages/api-client/pages/Shared.page.d.ts +1 -1
- package/dist/pages/api-client/pages/Shared.page.d.ts.map +1 -1
- package/dist/pages/api-client/pages/Shared.page.js.map +1 -1
- package/dist/pages/api-client/pages/Trash.page.d.ts +1 -1
- package/dist/pages/api-client/pages/Trash.page.d.ts.map +1 -1
- package/dist/pages/api-client/pages/Trash.page.js +3 -11
- package/dist/pages/api-client/pages/Trash.page.js.map +1 -1
- package/dist/pages/http-project/AppInfo.d.ts +1 -1
- package/dist/pages/http-project/AppInfo.d.ts.map +1 -1
- package/dist/pages/http-project/AppInfo.js.map +1 -1
- package/dist/pages/http-project/HttpClientCommands.js +1 -1
- package/dist/pages/http-project/HttpClientCommands.js.map +1 -1
- package/dist/pages/http-project/HttpProject.screen.d.ts +1 -1
- package/dist/pages/http-project/HttpProject.screen.d.ts.map +1 -1
- package/dist/pages/http-project/HttpProject.screen.js +1 -1
- package/dist/pages/http-project/HttpProject.screen.js.map +1 -1
- package/dist/pages/http-project/types.d.ts +1 -1
- package/dist/pages/http-project/types.d.ts.map +1 -1
- package/dist/pages/http-project/types.js.map +1 -1
- package/dist/pages/schema-design/AppInfo.d.ts +1 -1
- package/dist/pages/schema-design/AppInfo.d.ts.map +1 -1
- package/dist/pages/schema-design/AppInfo.js.map +1 -1
- package/dist/pages/schema-design/SchemaDesigner.screen.d.ts +1 -1
- package/dist/pages/schema-design/SchemaDesigner.screen.d.ts.map +1 -1
- package/dist/pages/schema-design/SchemaDesigner.screen.js +1 -1
- package/dist/pages/schema-design/SchemaDesigner.screen.js.map +1 -1
- package/dist/pages/schema-design/SchemaDesignerCommands.d.ts +1 -1
- package/dist/pages/schema-design/SchemaDesignerCommands.d.ts.map +1 -1
- package/dist/pages/schema-design/SchemaDesignerCommands.js +1 -1
- package/dist/pages/schema-design/SchemaDesignerCommands.js.map +1 -1
- package/dist/store/FileSystem.d.ts +1 -1
- package/dist/store/FileSystem.d.ts.map +1 -1
- package/dist/store/FileSystem.js.map +1 -1
- package/dist/store/HttpStore.d.ts +1 -1
- package/dist/store/HttpStore.d.ts.map +1 -1
- package/dist/store/HttpStore.js +1 -1
- package/dist/store/HttpStore.js.map +1 -1
- package/dist/store/UserCache.d.ts +1 -1
- package/dist/store/UserCache.d.ts.map +1 -1
- package/dist/store/UserCache.js.map +1 -1
- package/dist/ui/chip/UiChip.js +1 -1
- package/dist/ui/chip/UiChip.js.map +1 -1
- package/dist/ui/list/UiDropdownList.js +1 -1
- package/dist/ui/list/UiDropdownList.js.map +1 -1
- package/dist/ui/notification/Snackbar.js +1 -1
- package/dist/ui/notification/Snackbar.js.map +1 -1
- package/dist/visualization/plugin/positioning/DataModelLayout.d.ts +1 -1
- package/dist/visualization/plugin/positioning/DataModelLayout.d.ts.map +1 -1
- package/dist/visualization/plugin/positioning/DataModelLayout.js.map +1 -1
- package/package.json +4 -4
- package/src/amf/lib/AmfInputParser.ts +1 -1
- package/src/amf/lib/AmfParameters.ts +1 -1
- package/src/amf/lib/AmfSecurity.ts +1 -1
- package/src/amf/lib/Oauth2RamlCustomData.ts +1 -1
- package/src/amf/lib/PayloadUtils.ts +1 -1
- package/src/amf/lib/QueryParameterProcessor.ts +1 -1
- package/src/amf/lib/Utils.ts +1 -1
- package/src/amf/store/AmfGraphStore.ts +1 -1
- package/src/amf/store/AmfStore.ts +1 -1
- package/src/amf/store/InMemAmfGraphStore.ts +1 -1
- package/src/amf/types.ts +1 -1
- package/src/bindings/base/HttpClientStoreBindings.ts +1 -1
- package/src/bindings/base/IoThread.ts +1 -1
- package/src/bindings/base/PlatformBindings.ts +1 -1
- package/src/bindings/base/ProxyBindings.ts +1 -1
- package/src/bindings/base/StoreBindings.ts +1 -1
- package/src/bindings/web/WebConfigurationBindings.ts +1 -1
- package/src/bindings/web/WebFileBindings.ts +1 -1
- package/src/bindings/web/WebHttpClientStoreBindings.ts +1 -1
- package/src/bindings/web/WebProxyBindings.ts +1 -1
- package/src/bindings/web/WebStoreBindings.ts +1 -1
- package/src/code-snippets/Bash/CurlSnippet.ts +1 -1
- package/src/code-snippets/C/CcurlSnippet.ts +1 -1
- package/src/code-snippets/CodeSnippet.ts +1 -1
- package/src/code-snippets/Dart/DartSnippet.ts +1 -1
- package/src/code-snippets/HTTP/RawSnippet.ts +1 -1
- package/src/code-snippets/Java/PlatformSnippet.ts +1 -1
- package/src/code-snippets/Java/SpringSnippet.ts +1 -1
- package/src/code-snippets/JavaScript/AsyncFetchSnippet.ts +1 -1
- package/src/code-snippets/JavaScript/AxiosSnippet.ts +1 -1
- package/src/code-snippets/JavaScript/FetchSnippet.ts +1 -1
- package/src/code-snippets/JavaScript/NodeSnippet.ts +1 -1
- package/src/code-snippets/JavaScript/XhrSnippet.ts +1 -1
- package/src/code-snippets/JavaScript/jQuerySnippet.ts +1 -1
- package/src/code-snippets/Python/Python27Snippet.ts +1 -1
- package/src/code-snippets/Python/Python31Snippet.ts +1 -1
- package/src/code-snippets/Python/RequestsSnippet.ts +1 -1
- package/src/define/http/http-body-editor.ts +1 -1
- package/src/elements/amf/ApiAnnotationDocument.element.ts +1 -1
- package/src/elements/amf/ApiAuthorizationEditor.element.ts +1 -1
- package/src/elements/amf/ApiChannelDocument.element.ts +1 -1
- package/src/elements/amf/ApiDocumentation.element.ts +1 -1
- package/src/elements/amf/ApiDocumentationBase.ts +1 -1
- package/src/elements/amf/ApiDocumentationDocument.element.ts +1 -1
- package/src/elements/amf/ApiNavigation.element.ts +1 -1
- package/src/elements/amf/ApiOperationDocument.element.ts +1 -1
- package/src/elements/amf/ApiParameterDocument.element.ts +1 -1
- package/src/elements/amf/ApiParametrizedSecurityScheme.element.ts +1 -1
- package/src/elements/amf/ApiPayloadDocument.element.ts +1 -1
- package/src/elements/amf/ApiRequest.element.ts +1 -1
- package/src/elements/amf/ApiRequestDocument.element.ts +1 -1
- package/src/elements/amf/ApiRequestEditor.element.ts +1 -1
- package/src/elements/amf/ApiResourceDocument.element.ts +1 -1
- package/src/elements/amf/ApiResponseDocument.element.ts +1 -1
- package/src/elements/amf/ApiSchemaDocument.element.ts +1 -1
- package/src/elements/amf/ApiSecurityDocument.element.ts +1 -1
- package/src/elements/amf/ApiSecurityRequirementDocument.element.ts +1 -1
- package/src/elements/amf/ApiServerPicker.element.ts +1 -1
- package/src/elements/amf/ApiSummary.element.ts +1 -1
- package/src/elements/amf/SchemaCommonTemplates.ts +1 -1
- package/src/elements/amf/authorization/AmfApiKey.ts +1 -1
- package/src/elements/amf/authorization/AmfBasic.ts +1 -1
- package/src/elements/amf/authorization/AmfBearer.ts +1 -1
- package/src/elements/amf/authorization/AmfOauth2.ts +1 -1
- package/src/elements/amf/authorization/AmfOidc.ts +1 -1
- package/src/elements/amf/authorization/AmfPassThrough.ts +1 -1
- package/src/elements/amf/authorization/AmfRamlCustom.ts +1 -1
- package/src/elements/authorization/OAuth2Authorize.ts +1 -1
- package/src/elements/authorization/OidcAuthorize.ts +1 -1
- package/src/elements/authorization/ui/ApiKeyAuthorization.ts +1 -1
- package/src/elements/authorization/ui/Authorization.ts +1 -1
- package/src/elements/authorization/ui/BasicAuthorization.ts +1 -1
- package/src/elements/authorization/ui/BearerAuthorization.ts +1 -1
- package/src/elements/authorization/ui/CcAuthorization.ts +1 -1
- package/src/elements/authorization/ui/NtlmAuthorization.ts +1 -1
- package/src/elements/authorization/ui/OAuth2Authorization.ts +1 -1
- package/src/elements/authorization/ui/OidcAuthorization.ts +1 -1
- package/src/elements/code/HttpSnippets.ts +1 -1
- package/src/elements/dialog/DeleteCookieAction.element.ts +1 -1
- package/src/elements/dialog/SetCookieAction.element.ts +2 -2
- package/src/elements/environment/EnvironmentEditor.ts +1 -1
- package/src/elements/environment/ServerEditor.ts +1 -1
- package/src/elements/environment/VariablesEditor.ts +1 -1
- package/src/elements/har/HarViewer.ts +1 -1
- package/src/elements/http/BodyEditor.styles.ts +5 -19
- package/src/elements/http/BodyEditor.ts +6 -6
- package/src/elements/http/BodyMultipartEditor.ts +1 -1
- package/src/elements/http/BodyUrlEncodedEditor.ts +1 -1
- package/src/elements/http/CertificateAdd.element.ts +1 -1
- package/src/elements/http/HeadersForm.ts +1 -1
- package/src/elements/http/HttpAssertions.element.ts +1 -1
- package/src/elements/http/HttpFlows.element.ts +1 -1
- package/src/elements/http/HttpFlowsUi.ts +1 -1
- package/src/elements/http/LogBody.ts +1 -1
- package/src/elements/http/LogHeaders.ts +1 -1
- package/src/elements/http/LogTimings.ts +1 -1
- package/src/elements/http/RequestAuth.template.ts +1 -1
- package/src/elements/http/RequestConfigElement.ts +1 -1
- package/src/elements/http/RequestEditor.ts +2 -2
- package/src/elements/http/RequestLog.ts +1 -1
- package/src/elements/http/UrlEncodeUtils.ts +1 -1
- package/src/elements/http/UrlInput.ts +1 -1
- package/src/elements/http/UrlParamsForm.ts +1 -1
- package/src/elements/layout/SplitPanel.ts +1 -1
- package/src/elements/navigation/AppNavigationElement.ts +1 -1
- package/src/elements/project/HttpProjectRequest.ts +2 -2
- package/src/elements/project/HttpProjectRequestHistory.ts +1 -1
- package/src/elements/project/ProjectNavigation.ts +1 -1
- package/src/elements/project/ProjectRunReport.ts +1 -1
- package/src/elements/project/ProjectRunner.ts +1 -1
- package/src/elements/project/ProjectRunnerNavigationElement.ts +1 -1
- package/src/elements/schema-design/AssociationFormElement.ts +1 -1
- package/src/elements/schema-design/DataEntityEditorElement.ts +1 -1
- package/src/elements/schema-design/DataModelVisualizationElement.ts +1 -1
- package/src/elements/schema-design/DataSchemaDocument.ts +1 -1
- package/src/elements/schema-design/EntityFormElement.ts +1 -1
- package/src/elements/schema-design/PropertyFormElement.ts +2 -2
- package/src/elements/schema-design/SchemaDesignNavigation.ts +1 -1
- package/src/elements/schema-design/SchemaNamespaceSelector.ts +1 -1
- package/src/elements/store/FilePicker.element.ts +1 -1
- package/src/elements/store/FilesLib.ts +2 -2
- package/src/elements/store/ShareFile.element.ts +1 -1
- package/src/elements/user/UserAvatarElement.ts +1 -1
- package/src/events/BroadcastUiEvents.ts +1 -1
- package/src/events/HttpClientEvents.ts +1 -1
- package/src/events/HttpProjectEvents.ts +1 -1
- package/src/events/StoreEvents.ts +1 -1
- package/src/events/amf/ApiEvents.ts +1 -1
- package/src/events/amf/DocumentationEvents.ts +1 -1
- package/src/events/amf/EndpointEvents.ts +1 -1
- package/src/events/amf/OperationEvents.ts +1 -1
- package/src/events/amf/PayloadEvents.ts +1 -1
- package/src/events/amf/RequestEvents.ts +1 -1
- package/src/events/amf/ResponseEvents.ts +1 -1
- package/src/events/amf/SecurityEvents.ts +1 -1
- package/src/events/amf/ServerEvents.ts +1 -1
- package/src/events/amf/TypeEvents.ts +1 -1
- package/src/http-client/idb/Arc18DataUpgrade.ts +1 -1
- package/src/http-client/idb/Base.ts +1 -1
- package/src/http-client/idb/LegacyBodyProcessor.ts +1 -1
- package/src/http-client/idb/MockedStore.ts +1 -1
- package/src/http-client/store/Cursor.ts +3 -3
- package/src/http-client/store/DataImportProcessor.ts +2 -2
- package/src/http-client/store/HttpClientIdbDatabase.ts +6 -10
- package/src/http-client/store/IdbThread.ts +1 -1
- package/src/http-client/store/State.ts +1 -5
- package/src/http-client/store/idb/IdbProjectUi.ts +1 -1
- package/src/http-client/store/idb/IdbStore.ts +1 -51
- package/src/http-client/store/idb/IdbUrlHistory.ts +1 -1
- package/src/http-client/store/idb/IdbWsHistory.ts +1 -1
- package/src/http-client/store/stores/ProjectUi.ts +1 -1
- package/src/http-client/store/stores/UrlHistory.ts +1 -1
- package/src/http-client/store/stores/WsHistory.ts +1 -1
- package/src/http-client/store/types.ts +2 -57
- package/src/index.ts +3 -0
- package/src/lib/chart/HttpHistoryChart.ts +1 -1
- package/src/lib/http/Har.ts +1 -1
- package/src/lib/http/HeadersArray.ts +1 -1
- package/src/lib/http/Payload.ts +1 -1
- package/src/lib/http/Url.ts +1 -1
- package/src/pages/ApplicationScreen.ts +1 -1
- package/src/pages/api-client/ApiClient.screen.ts +8 -8
- package/src/pages/api-client/AppInfo.ts +1 -1
- package/src/pages/api-client/StoreConfig.screen.ts +1 -1
- package/src/pages/api-client/pages/Files.page.ts +1 -1
- package/src/pages/api-client/pages/Shared.page.ts +1 -1
- package/src/pages/api-client/pages/Trash.page.ts +3 -10
- package/src/pages/http-project/AppInfo.ts +1 -1
- package/src/pages/http-project/HttpClientCommands.ts +1 -1
- package/src/pages/http-project/HttpProject.screen.ts +1 -1
- package/src/pages/http-project/types.ts +1 -1
- package/src/pages/schema-design/AppInfo.ts +1 -1
- package/src/pages/schema-design/SchemaDesigner.screen.ts +1 -1
- package/src/pages/schema-design/SchemaDesignerCommands.ts +1 -1
- package/src/store/FileSystem.ts +1 -1
- package/src/store/HttpStore.ts +1 -1
- package/src/store/UserCache.ts +1 -1
- package/src/ui/chip/UiChip.ts +1 -1
- package/src/ui/list/UiDropdownList.ts +1 -1
- package/src/ui/notification/Snackbar.ts +1 -1
- package/src/visualization/plugin/positioning/DataModelLayout.ts +1 -1
- package/test/amf/AmfLoader.ts +1 -1
- package/test/amf/authorization/ApiAuthorizationEditorElement.oas.test.ts +1 -1
- package/test/amf/authorization/ApiAuthorizationEditorElement.raml.test.ts +1 -1
- package/test/amf/authorization/ApiKeyMethod.test.ts +1 -1
- package/test/amf/authorization/CustomMethod.test.ts +1 -1
- package/test/amf/authorization/OAuth2-21143.test.ts +1 -1
- package/test/amf/authorization/OAuth2-flows.test.ts +1 -1
- package/test/amf/authorization/OAuth2-pkce.test.ts +1 -1
- package/test/amf/authorization/OAuth2Method.test.ts +1 -1
- package/test/amf/authorization/PassThroughMethod.test.ts +1 -1
- package/test/amf/elements/ApiAnnotationDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiDocumentationDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiDocumentationElement.test.ts +1 -1
- package/test/amf/elements/ApiOperationDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiRequestDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiResourceDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiResponseDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiSchemaDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiSecurityDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiSecurityRequirementDocumentElement.test.ts +1 -1
- package/test/amf/elements/ApiServerPickerElement.test.ts +1 -1
- package/test/amf/elements/ApiSummaryElement.test.ts +1 -1
- package/test/amf/elements/SE-12957.test.ts +1 -1
- package/test/amf/http-request/APIC-289.test.ts +1 -1
- package/test/amf/http-request/APIC-298.test.ts +1 -1
- package/test/amf/http-request/APIC-689.test.ts +1 -1
- package/test/amf/http-request/ApiRequestEditorElement.test.ts +1 -1
- package/test/amf/http-request/ApiRequestElement.test.ts +1 -1
- package/test/amf/http-request/SE-12042.test.ts +1 -1
- package/test/amf/http-request/SE-12957.test.ts +1 -1
- package/test/amf/lib/UrlUtils.test.ts +1 -1
- package/test/amf/navigation/ApiNavigationElement.test.ts +1 -1
- package/test/elements/authorization/basic-method.test.ts +1 -1
- package/test/elements/authorization/bearer-method.test.ts +1 -1
- package/test/elements/authorization/ntlm-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-client-credentials-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-code-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-custom-grant-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-device-code-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-implicit-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-jwt-method.test.ts +1 -1
- package/test/elements/authorization/oauth2-password-method.test.ts +1 -1
- package/test/elements/authorization/openid-method.test.ts +1 -1
- package/test/elements/http/BodyFormdataEditorElement.test.ts +1 -1
- package/test/elements/http/HttpAssertions.test.ts +1 -1
- package/test/elements/http/HttpFlows.test.ts +1 -1
- package/test/elements/http/UrlEncodeUtils.test.ts +1 -1
- package/test/elements/store/FilePicker.test.ts +1 -1
- package/test/helpers/StoreHelper.ts +1 -1
- package/web-dev-server.config.mjs +2 -0
- package/web-test-runner.config.mjs +2 -2
- package/dist/http-client/store/Validator.d.ts +0 -4
- package/dist/http-client/store/Validator.d.ts.map +0 -1
- package/dist/http-client/store/Validator.js +0 -32
- package/dist/http-client/store/Validator.js.map +0 -1
- package/src/http-client/store/Validator.ts +0 -33
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VariablesEditor.js","sourceRoot":"","sources":["../../../src/elements/environment/VariablesEditor.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable class-methods-use-this */\nimport { html, TemplateResult, CSSResult } from 'lit';\nimport { live } from 'lit/directives/live.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { IProperty, Property } from '@api-client/core/build/browser.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { variableValueLabel } from '../../lib/environments/Utils.js';\nimport { IconType } from '../../ui/icons/Icons.js';\nimport ApiElement from '../ApiElement.js';\nimport elementStyles from './VariablesEditor.styles.js';\nimport Input from '../../ui/input/Input.js';\nimport SwitchElement from '../../ui/input/SwitchElement.js';\nimport '../../define/ui/ui-icon.js';\nimport '../../define/ui/ui-list.js';\nimport '../../define/ui/ui-list-item.js';\nimport '../../define/ui/ui-switch.js';\nimport '../../define/ui/ui-icon-button.js';\n\n/**\n * An element to render a list of variables with an ability to edit them.\n */\nexport default class VariablesEditor extends ApiElement {\n static override get styles(): CSSResult[] {\n return [elementStyles];\n }\n\n /**\n * The list of variables to render or edit.\n * This list is mutated. If you don't want this to mutate changes \n * make a copy first. \n */\n @property({ type: Array }) variables?: IProperty[];\n\n /**\n * By default all values are masked. When this is set it renders all values visible.\n */\n @property({ type: Boolean }) renderValues = false;\n\n @state() protected editedVariable?: number;\n\n @query('.editor') protected editor?: HTMLElement;\n\n /**\n * Updates name/value of a parameter on a specific index.\n */\n updateProperty(index: number, field: 'name' | 'value', value: string): void {\n const { variables = [] } = this;\n if (!variables[index]) {\n return;\n }\n variables[index][field] = value;\n this.notifyChange();\n }\n\n /**\n * Removes a parameter from an index.\n */\n removeProperty(index: number): void {\n const { variables = [] } = this;\n if (!variables[index]) {\n return;\n }\n variables.splice(index, 1);\n this.notifyChange();\n this.requestUpdate();\n }\n\n /**\n * Toggles enabled state of a parameter.\n */\n toggleProperty(index: number, enabled: boolean): void {\n const { variables = [] } = this;\n if (!variables[index]) {\n return;\n }\n const variable = variables[index];\n if (variable.enabled === enabled) {\n return;\n }\n variable.enabled = enabled;\n this.notifyChange();\n }\n\n protected handleAddVariable(): void {\n if (!this.variables) {\n this.variables = [];\n }\n const item = Property.String();\n const index = this.variables.push(item.toJSON());\n this.editedVariable = index - 1;\n this.requestUpdate();\n this.ensureEditorInView();\n }\n\n protected async ensureEditorInView(): Promise<void> {\n await this.updateComplete;\n const { editor } = this;\n if (editor) {\n editor.scrollIntoView();\n }\n }\n\n /**\n * Toggles visibility of the variable values.\n */\n protected handleVisibilityToggle(): void {\n this.renderValues = !this.renderValues;\n }\n\n /**\n * A handler for the click event on the variable edit icon.\n * Sets state to edit this variable\n */\n protected handleEditVariable(e: Event): void {\n const node = e.currentTarget as HTMLElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.editedVariable = index;\n }\n\n protected handleNameChange(e: Event): void {\n const input = e.target as Input;\n const index = Number(input.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.updateProperty(index, 'name', input.value);\n input.checkValidity();\n }\n\n protected handleValueChange(e: Event): void {\n const input = e.target as Input;\n const index = Number(input.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.updateProperty(index, 'value', input.value);\n input.checkValidity();\n }\n\n /**\n * Removes the variable from the environment\n */\n protected handleVariableDelete(e: Event): void {\n const node = e.currentTarget as HTMLElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.removeProperty(index);\n }\n\n protected handleRemove(e: Event): void {\n const node = e.currentTarget as HTMLElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.removeProperty(index);\n }\n\n protected handleToggle(e: Event): void {\n const node = e.currentTarget as SwitchElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.toggleProperty(index, node.checked);\n }\n\n /**\n * A handler for the variable editor close button click.\n */\n protected handleEditorClose(): void {\n this.editedVariable = undefined;\n this.requestUpdate();\n }\n\n protected override render(): TemplateResult {\n return html`\n ${this.renderHeader()}\n ${this.renderList()}\n `;\n }\n\n protected renderHeader(): TemplateResult {\n return html`\n <div class=\"header\">\n <div class=\"section-title\">Variables</div>\n ${this.renderAddButton()}\n ${this.renderToggleVisibilityButton()}\n </div>\n `;\n }\n\n protected renderAddButton(): TemplateResult {\n return html`\n <ui-icon-button\n title=\"Add a variable\"\n aria-label=\"Activate to add a new variable\"\n @click=\"${this.handleAddVariable}\"\n data-action=\"add-variables\"\n ><ui-icon icon=\"add\"></ui-icon></ui-icon-button>\n `;\n }\n\n protected renderToggleVisibilityButton(): TemplateResult {\n const icon = (this.renderValues ? 'visibilityOff' : 'visibility') as IconType;\n return html`\n <ui-icon-button\n title=\"Toggle values visibility\"\n aria-label=\"Activate to toggle variables visibility\"\n @click=\"${this.handleVisibilityToggle}\"\n data-action=\"toggle-visibility\"\n ><ui-icon icon=\"${icon}\"></ui-icon></ui-icon-button>\n `;\n }\n\n protected renderList(): TemplateResult {\n const { variables } = this;\n if (!Array.isArray(variables) || !variables.length) {\n return this.renderEmptyInfo();\n }\n\n return html`\n <ul class=\"variables-list\">\n ${variables.map((item, index) => this.renderListItem(item, index))}\n </ul>\n `;\n }\n\n protected renderEmptyInfo(): TemplateResult {\n return html`<p class=\"empty-message\">This environment has no variables.</p>`;\n }\n\n /**\n * @param item The variable to render.\n * @returns The template for the variable line or variable editor\n */\n protected renderListItem(item: IProperty | Property, index: number): TemplateResult {\n if (this.editedVariable === index) {\n return this.renderEditor(item, index);\n }\n const classes = {\n disabled: !item.enabled,\n 'variable-item': true,\n };\n return html`\n <li class=${classMap(classes)}>\n <span class=\"variable-name\">${item.name}</span>\n <span class=\"variable-value\">${variableValueLabel(item.value as string || '', !this.renderValues)}</span>\n ${this.renderListActions(index)}\n </li>`;\n }\n\n /**\n * @param index The index of the property on the list\n * @returns The template for list item actions\n */\n protected renderListActions(index: number): TemplateResult {\n return html`\n <div class=\"list-actions\">\n ${this.renderEditButton(index)}\n ${this.renderDeleteButton(index)}\n </div>`;\n }\n\n /**\n * @param item The variable to render.\n * @returns The template for the variables editor\n */\n protected renderEditor(item: IProperty | Property, index: number): TemplateResult {\n return html`\n <li class=\"editor\">\n <div class=\"param-row\">\n ${this.renderToggleButton(item, index)}\n ${this.renderNameField(item, index)}\n ${this.renderValueField(item, index)}\n ${this.renderCloseEditor(index)}\n </div>\n </li>\n `;\n }\n\n protected renderToggleButton(item: IProperty | Property, index: number): TemplateResult {\n return html`\n <ui-switch \n .checked=\"${!!item.enabled}\" \n @change=\"${this.handleToggle}\" \n title=\"Toggle variable enabled\"\n aria-label=\"Toggle variable enabled state\"\n data-index=\"${index}\"\n ></ui-switch>\n `;\n }\n\n protected renderDeleteButton(index: number): TemplateResult {\n return html`\n <ui-icon-button \n aria-label=\"Deletes this variable\" \n title=\"Deletes this variable\" \n data-index=\"${index}\" \n @click=\"${this.handleRemove}\"\n data-action=\"delete-editor\"\n >\n <ui-icon icon=\"deleteOutline\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `;\n }\n\n protected renderEditButton(index: number): TemplateResult {\n return html`\n <ui-icon-button \n aria-label=\"Edits this variable\" \n title=\"Edits this variable\" \n data-index=\"${index}\" \n @click=\"${this.handleEditVariable}\"\n data-action=\"edit\"\n >\n <ui-icon icon=\"edit\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `;\n }\n\n protected renderCloseEditor(index: number): TemplateResult {\n return html`\n <ui-icon-button \n aria-label=\"Closes the editor\" \n title=\"Closes the editor\" \n data-index=\"${index}\" \n @click=\"${this.handleEditorClose}\"\n data-action=\"close-editor\"\n >\n <ui-icon icon=\"close\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `;\n }\n\n protected renderNameField(item: IProperty | Property, index: number): TemplateResult {\n return html`\n <div class=\"input-wrapper name-input\">\n <div class=\"error\" role=\"presentation\">Invalid character</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"name\"\n autocomplete=\"off\"\n .value=\"${live(item.name)}\" \n data-index=\"${index}\"\n pattern=\"[a-zA-Z0-9_]+\" \n required\n aria-label=\"Variable name\"\n @change=\"${this.handleNameChange}\"\n />\n </div>\n `;\n }\n\n protected renderValueField(item: IProperty | Property, index: number): TemplateResult {\n const type = this.renderValues ? 'text' : 'password';\n return html`\n <div class=\"input-wrapper value-input\">\n <div class=\"error\" role=\"presentation\">Invalid character</div>\n <div class=\"state\"></div>\n <input\n type=\"${type}\"\n name=\"value\"\n .value=\"${live(item.value as string)}\" \n data-index=\"${index}\"\n aria-label=\"Variable value\"\n @change=\"${this.handleValueChange}\"\n />\n </div>\n `;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"VariablesEditor.js","sourceRoot":"","sources":["../../../src/elements/environment/VariablesEditor.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable class-methods-use-this */\nimport { html, TemplateResult, CSSResult } from 'lit';\nimport { live } from 'lit/directives/live.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { IProperty, Property } from '@api-client/core/build/esm/browser.js';\nimport { property, query, state } from 'lit/decorators.js';\nimport { variableValueLabel } from '../../lib/environments/Utils.js';\nimport { IconType } from '../../ui/icons/Icons.js';\nimport ApiElement from '../ApiElement.js';\nimport elementStyles from './VariablesEditor.styles.js';\nimport Input from '../../ui/input/Input.js';\nimport SwitchElement from '../../ui/input/SwitchElement.js';\nimport '../../define/ui/ui-icon.js';\nimport '../../define/ui/ui-list.js';\nimport '../../define/ui/ui-list-item.js';\nimport '../../define/ui/ui-switch.js';\nimport '../../define/ui/ui-icon-button.js';\n\n/**\n * An element to render a list of variables with an ability to edit them.\n */\nexport default class VariablesEditor extends ApiElement {\n static override get styles(): CSSResult[] {\n return [elementStyles];\n }\n\n /**\n * The list of variables to render or edit.\n * This list is mutated. If you don't want this to mutate changes \n * make a copy first. \n */\n @property({ type: Array }) variables?: IProperty[];\n\n /**\n * By default all values are masked. When this is set it renders all values visible.\n */\n @property({ type: Boolean }) renderValues = false;\n\n @state() protected editedVariable?: number;\n\n @query('.editor') protected editor?: HTMLElement;\n\n /**\n * Updates name/value of a parameter on a specific index.\n */\n updateProperty(index: number, field: 'name' | 'value', value: string): void {\n const { variables = [] } = this;\n if (!variables[index]) {\n return;\n }\n variables[index][field] = value;\n this.notifyChange();\n }\n\n /**\n * Removes a parameter from an index.\n */\n removeProperty(index: number): void {\n const { variables = [] } = this;\n if (!variables[index]) {\n return;\n }\n variables.splice(index, 1);\n this.notifyChange();\n this.requestUpdate();\n }\n\n /**\n * Toggles enabled state of a parameter.\n */\n toggleProperty(index: number, enabled: boolean): void {\n const { variables = [] } = this;\n if (!variables[index]) {\n return;\n }\n const variable = variables[index];\n if (variable.enabled === enabled) {\n return;\n }\n variable.enabled = enabled;\n this.notifyChange();\n }\n\n protected handleAddVariable(): void {\n if (!this.variables) {\n this.variables = [];\n }\n const item = Property.String();\n const index = this.variables.push(item.toJSON());\n this.editedVariable = index - 1;\n this.requestUpdate();\n this.ensureEditorInView();\n }\n\n protected async ensureEditorInView(): Promise<void> {\n await this.updateComplete;\n const { editor } = this;\n if (editor) {\n editor.scrollIntoView();\n }\n }\n\n /**\n * Toggles visibility of the variable values.\n */\n protected handleVisibilityToggle(): void {\n this.renderValues = !this.renderValues;\n }\n\n /**\n * A handler for the click event on the variable edit icon.\n * Sets state to edit this variable\n */\n protected handleEditVariable(e: Event): void {\n const node = e.currentTarget as HTMLElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.editedVariable = index;\n }\n\n protected handleNameChange(e: Event): void {\n const input = e.target as Input;\n const index = Number(input.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.updateProperty(index, 'name', input.value);\n input.checkValidity();\n }\n\n protected handleValueChange(e: Event): void {\n const input = e.target as Input;\n const index = Number(input.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.updateProperty(index, 'value', input.value);\n input.checkValidity();\n }\n\n /**\n * Removes the variable from the environment\n */\n protected handleVariableDelete(e: Event): void {\n const node = e.currentTarget as HTMLElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.removeProperty(index);\n }\n\n protected handleRemove(e: Event): void {\n const node = e.currentTarget as HTMLElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.removeProperty(index);\n }\n\n protected handleToggle(e: Event): void {\n const node = e.currentTarget as SwitchElement;\n const index = Number(node.dataset.index);\n if (Number.isNaN(index)) {\n return;\n }\n this.toggleProperty(index, node.checked);\n }\n\n /**\n * A handler for the variable editor close button click.\n */\n protected handleEditorClose(): void {\n this.editedVariable = undefined;\n this.requestUpdate();\n }\n\n protected override render(): TemplateResult {\n return html`\n ${this.renderHeader()}\n ${this.renderList()}\n `;\n }\n\n protected renderHeader(): TemplateResult {\n return html`\n <div class=\"header\">\n <div class=\"section-title\">Variables</div>\n ${this.renderAddButton()}\n ${this.renderToggleVisibilityButton()}\n </div>\n `;\n }\n\n protected renderAddButton(): TemplateResult {\n return html`\n <ui-icon-button\n title=\"Add a variable\"\n aria-label=\"Activate to add a new variable\"\n @click=\"${this.handleAddVariable}\"\n data-action=\"add-variables\"\n ><ui-icon icon=\"add\"></ui-icon></ui-icon-button>\n `;\n }\n\n protected renderToggleVisibilityButton(): TemplateResult {\n const icon = (this.renderValues ? 'visibilityOff' : 'visibility') as IconType;\n return html`\n <ui-icon-button\n title=\"Toggle values visibility\"\n aria-label=\"Activate to toggle variables visibility\"\n @click=\"${this.handleVisibilityToggle}\"\n data-action=\"toggle-visibility\"\n ><ui-icon icon=\"${icon}\"></ui-icon></ui-icon-button>\n `;\n }\n\n protected renderList(): TemplateResult {\n const { variables } = this;\n if (!Array.isArray(variables) || !variables.length) {\n return this.renderEmptyInfo();\n }\n\n return html`\n <ul class=\"variables-list\">\n ${variables.map((item, index) => this.renderListItem(item, index))}\n </ul>\n `;\n }\n\n protected renderEmptyInfo(): TemplateResult {\n return html`<p class=\"empty-message\">This environment has no variables.</p>`;\n }\n\n /**\n * @param item The variable to render.\n * @returns The template for the variable line or variable editor\n */\n protected renderListItem(item: IProperty | Property, index: number): TemplateResult {\n if (this.editedVariable === index) {\n return this.renderEditor(item, index);\n }\n const classes = {\n disabled: !item.enabled,\n 'variable-item': true,\n };\n return html`\n <li class=${classMap(classes)}>\n <span class=\"variable-name\">${item.name}</span>\n <span class=\"variable-value\">${variableValueLabel(item.value as string || '', !this.renderValues)}</span>\n ${this.renderListActions(index)}\n </li>`;\n }\n\n /**\n * @param index The index of the property on the list\n * @returns The template for list item actions\n */\n protected renderListActions(index: number): TemplateResult {\n return html`\n <div class=\"list-actions\">\n ${this.renderEditButton(index)}\n ${this.renderDeleteButton(index)}\n </div>`;\n }\n\n /**\n * @param item The variable to render.\n * @returns The template for the variables editor\n */\n protected renderEditor(item: IProperty | Property, index: number): TemplateResult {\n return html`\n <li class=\"editor\">\n <div class=\"param-row\">\n ${this.renderToggleButton(item, index)}\n ${this.renderNameField(item, index)}\n ${this.renderValueField(item, index)}\n ${this.renderCloseEditor(index)}\n </div>\n </li>\n `;\n }\n\n protected renderToggleButton(item: IProperty | Property, index: number): TemplateResult {\n return html`\n <ui-switch \n .checked=\"${!!item.enabled}\" \n @change=\"${this.handleToggle}\" \n title=\"Toggle variable enabled\"\n aria-label=\"Toggle variable enabled state\"\n data-index=\"${index}\"\n ></ui-switch>\n `;\n }\n\n protected renderDeleteButton(index: number): TemplateResult {\n return html`\n <ui-icon-button \n aria-label=\"Deletes this variable\" \n title=\"Deletes this variable\" \n data-index=\"${index}\" \n @click=\"${this.handleRemove}\"\n data-action=\"delete-editor\"\n >\n <ui-icon icon=\"deleteOutline\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `;\n }\n\n protected renderEditButton(index: number): TemplateResult {\n return html`\n <ui-icon-button \n aria-label=\"Edits this variable\" \n title=\"Edits this variable\" \n data-index=\"${index}\" \n @click=\"${this.handleEditVariable}\"\n data-action=\"edit\"\n >\n <ui-icon icon=\"edit\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `;\n }\n\n protected renderCloseEditor(index: number): TemplateResult {\n return html`\n <ui-icon-button \n aria-label=\"Closes the editor\" \n title=\"Closes the editor\" \n data-index=\"${index}\" \n @click=\"${this.handleEditorClose}\"\n data-action=\"close-editor\"\n >\n <ui-icon icon=\"close\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `;\n }\n\n protected renderNameField(item: IProperty | Property, index: number): TemplateResult {\n return html`\n <div class=\"input-wrapper name-input\">\n <div class=\"error\" role=\"presentation\">Invalid character</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"name\"\n autocomplete=\"off\"\n .value=\"${live(item.name)}\" \n data-index=\"${index}\"\n pattern=\"[a-zA-Z0-9_]+\" \n required\n aria-label=\"Variable name\"\n @change=\"${this.handleNameChange}\"\n />\n </div>\n `;\n }\n\n protected renderValueField(item: IProperty | Property, index: number): TemplateResult {\n const type = this.renderValues ? 'text' : 'password';\n return html`\n <div class=\"input-wrapper value-input\">\n <div class=\"error\" role=\"presentation\">Invalid character</div>\n <div class=\"state\"></div>\n <input\n type=\"${type}\"\n name=\"value\"\n .value=\"${live(item.value as string)}\" \n data-index=\"${index}\"\n aria-label=\"Variable value\"\n @change=\"${this.handleValueChange}\"\n />\n </div>\n `;\n }\n}\n"]}
|
|
@@ -4,7 +4,7 @@ import { classMap } from 'lit/directives/class-map.js';
|
|
|
4
4
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
5
5
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
6
6
|
import { property } from 'lit/decorators.js';
|
|
7
|
-
import { DataCalculator } from '@api-client/core/build/browser.js';
|
|
7
|
+
import { DataCalculator } from '@api-client/core/build/esm/browser.js';
|
|
8
8
|
import ApiElement from '../ApiElement.js';
|
|
9
9
|
import '../../define/ui/ui-tab.js';
|
|
10
10
|
import '../../define/ui/ui-tabs.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HarViewer.js","sourceRoot":"","sources":["../../../src/elements/har/HarViewer.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult } from 'lit';\nimport { ClassInfo, classMap } from 'lit/directives/class-map.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { property } from 'lit/decorators.js';\n// eslint-disable-next-line import/no-unresolved\nimport { Har, Page, Entry, Request, Response, Header, QueryString, Timings } from 'har-format';\nimport { DataCalculator } from '@api-client/core/build/browser.js';\nimport ApiElement from '../ApiElement.js';\nimport '../../define/ui/ui-tab.js';\nimport '../../define/ui/ui-tabs.js';\nimport '../../define/ui/ui-list.js';\nimport '../../define/ui/ui-list-item.js';\nimport '../../define/ui/ui-divider.js';\nimport { UiListSelection } from '../../ui/list/UiList.js';\nimport UiTabs, { TabSelectionDetail } from '../../ui/tabs/UiTabs.js';\nimport { SortableEntry, sortEntires } from './HarUtils.js';\n\nexport enum HarTab {\n request = 'request',\n response = 'response',\n requestContent = 'request-content',\n responseContent = 'response-content',\n cookies = 'cookies',\n}\n\nexport interface RenderedPage {\n page: Page;\n entries: RenderedEntry[];\n totalTime: number;\n}\n\nexport interface RenderedEntry extends SortableEntry {\n requestTime: string;\n visualTimings?: RenderedEntryTimings;\n requestFormattedDate: string;\n\n requestSizes: EntrySizing;\n responseSizes: EntrySizing;\n}\n\nexport interface RenderedEntryTimings {\n total: number;\n totalValue: number;\n delay?: number;\n blocked?: number;\n connect?: number;\n dns?: number;\n ssl?: number;\n send?: number;\n receive?: number;\n wait?: number;\n}\n\nexport interface EntrySizing {\n headers: string;\n headersComputed: boolean;\n body: string;\n bodyComputed: boolean;\n sum: string;\n sumComputed: boolean;\n}\n\n/** used when generating keys for entires */\nlet nextId = 0;\n\n/**\n * An element that renders the UI for HAR data.\n */\nexport default class HarViewer extends ApiElement {\n protected harInternal?: Har;\n\n protected ignorePagesInternal?: boolean;\n\n /** \n * The HAR object to render.\n */\n @property({ type: Object })\n get har(): Har | undefined {\n return this.harInternal;\n }\n\n set har(value: Har | undefined) {\n const old = this.harInternal;\n if (old === value) {\n return;\n }\n this.harInternal = value;\n this.processHar();\n }\n\n /** \n * When set it ignores pages matching and renders all requests in a single table.\n */\n @property({ type: Boolean })\n get ignorePages(): boolean | undefined {\n return this.ignorePagesInternal;\n }\n\n set ignorePages(value: boolean | undefined) {\n const old = this.ignorePagesInternal;\n if (old === value) {\n return;\n }\n this.ignorePagesInternal = value;\n this.processHar();\n }\n\n entries?: RenderedEntry[];\n\n pages?: RenderedPage[];\n\n openedPages: string[] = [];\n \n openedEntries: string[] = [];\n\n protected selectedTabs = new Map<string, HarTab>();\n\n /**\n * Called when the `har` or `ignorePages` changed.\n */\n processHar(): void {\n this.entries = undefined;\n this.pages = undefined;\n const { har, ignorePages } = this;\n if (!har || !har.log) {\n this.requestUpdate();\n return;\n }\n const { log } = har;\n const { pages, entries, } = log;\n if (!entries || !entries.length) {\n this.requestUpdate();\n return;\n }\n const items = sortEntires(entries);\n if (ignorePages || !pages || !pages.length) {\n this.computeEntriesOnly(items);\n } else {\n this.computePages(pages, items);\n }\n }\n\n /**\n * Performs computations to render entries only.\n * @param entries The list of entries to process.\n */\n computeEntriesOnly(entries: SortableEntry[]): void {\n const totalTime = this.computeTotalTime(entries[0], entries[entries.length - 1]);\n this.entries = this.computeRenderedEntries(entries, totalTime);\n this.openedEntries = [];\n this.requestUpdate();\n }\n\n /**\n * Performs computations to render entries by page.\n * @param pages The list of pages to process.\n * @param entries The list of entries to process.\n */\n computePages(pages: Page[], entries: SortableEntry[]): void {\n const result: RenderedPage[] = [];\n const opened: string[] = [];\n pages.forEach((page) => {\n opened.push(page.id);\n const items = entries.filter((entry) => entry.pageref === page.id);\n const totalTime = this.computeTotalTime(items[0], items[items.length - 1])\n const item: RenderedPage = ({\n page,\n entries: this.computeRenderedEntries(items, totalTime),\n totalTime,\n });\n result.push(item);\n });\n this.pages = result;\n this.openedPages = opened;\n this.openedEntries = [];\n this.requestUpdate();\n }\n\n /**\n * @param entries The entries to perform computations on.\n * @param totalTime The total time of all entries rendered in the group\n */\n computeRenderedEntries(entries: SortableEntry[], totalTime: number): RenderedEntry[] {\n const result: RenderedEntry[] = [];\n if (!Array.isArray(entries) || !entries.length) {\n return result;\n }\n // This expects entires to be sorted by time (as required by the spec).\n const [startEntry] = entries;\n const startTime = startEntry.timestamp;\n entries.forEach((entry) => {\n const d = new Date(entry.timestamp);\n const visualTimings = this.computeVisualTimes(entry.timings, entry.timestamp - startTime, totalTime);\n const numType: \"numeric\" | \"2-digit\" = 'numeric';\n const options: Intl.DateTimeFormatOptions = ({\n hour: numType,\n minute: numType,\n second: numType,\n fractionalSecondDigits: 3,\n });\n const format = new Intl.DateTimeFormat(undefined, options);\n const requestTime = format.format(d);\n const format2 = new Intl.DateTimeFormat(undefined , {\n timeStyle: 'medium',\n dateStyle: 'medium',\n });\n const requestFormattedDate = format2.format(d);\n const requestSizes = this.computeEntrySizeInfo(entry.request);\n const responseSizes = this.computeEntrySizeInfo(entry.response);\n const id = String(nextId++);\n const item: RenderedEntry = {\n requestTime,\n requestFormattedDate,\n requestSizes,\n responseSizes,\n ...entry,\n id,\n };\n if (visualTimings) {\n item.visualTimings = visualTimings;\n }\n result.push(item);\n });\n return result;\n }\n\n protected computeEntrySizeInfo(info: Request|Response): EntrySizing {\n const result: EntrySizing = ({\n headersComputed: false,\n bodyComputed: false,\n body: '',\n headers: '',\n sum: '',\n sumComputed: false,\n });\n\n let { headersSize=0, bodySize=0 } = info;\n const { headers } = info;\n if (headersSize < 1) {\n const parts: string[] = [];\n (headers || []).forEach((header) => {\n const key = header.name;\n if (key && key.trim() !== '') {\n let value;\n if (Array.isArray(header.value)) {\n value = header.value.join(',');\n } else {\n value = header.value;\n }\n let line = '';\n line += `${key}: `;\n if (typeof value !== 'undefined') {\n value = value.split('\\n').join(' ');\n line += value;\n }\n parts.push(line);\n }\n });\n const hdrStr = parts.join('\\n');\n headersSize = DataCalculator.stringSize(hdrStr);\n result.headersComputed = true;\n }\n if (bodySize < 1) {\n const typedRequest = (info as Request);\n const typedResponse = (info as Response);\n if (typedResponse.content) {\n if (typedResponse.content.size) {\n bodySize = typedResponse.content.size;\n } else if (typedResponse.content.text) {\n bodySize = DataCalculator.stringSize(typedResponse.content.text);\n result.bodyComputed = true;\n }\n } else if (typedRequest.postData && typedRequest.postData.text) {\n bodySize = DataCalculator.stringSize(typedRequest.postData.text);\n result.bodyComputed = true;\n }\n }\n if (bodySize < 0) {\n bodySize = 0;\n }\n result.body = DataCalculator.bytesToSize(bodySize);\n result.headers = DataCalculator.bytesToSize(headersSize);\n result.sum = DataCalculator.bytesToSize(headersSize + bodySize);\n result.sumComputed = result.bodyComputed || result.headersComputed;\n return result;\n }\n\n /**\n * @param code The status code to test for classes.\n * @returns List of classes to be set on the status code\n */\n computeStatusClasses(code: number): ClassInfo {\n const classes = {\n 'status-code': true,\n error: code >= 500 || code === 0,\n warning: code >= 400 && code < 500,\n info: code >= 300 && code < 400,\n };\n return classes;\n }\n\n /**\n * Computes the total time of page requests.\n * @param first The earliest entry in the range\n * @param last The latest entry in the range\n * @returns The total time of the page. Used to build the timeline.\n */\n computeTotalTime(first: Entry, last: Entry): number {\n if (first === last) {\n return this.sumTimings(last.timings);\n }\n const startTime = new Date(first.startedDateTime).getTime();\n const endTime = new Date(last.startedDateTime).getTime();\n const lastDuration = this.sumTimings(last.timings);\n return endTime - startTime + lastDuration;\n }\n\n /**\n * @param timings The entry's timings object.\n * @param delay The timestamp when the first request started.\n * @param total The number of milliseconds all entries took.\n */\n computeVisualTimes(timings: Timings, delay: number, total: number): RenderedEntryTimings|undefined {\n if (!timings) {\n return undefined;\n }\n const timingsSum = this.sumTimings(timings);\n const totalPercent = timingsSum / total * 100;\n const result: RenderedEntryTimings = ({\n total: totalPercent,\n totalValue: timingsSum,\n });\n if (delay) {\n result.delay = delay / total * 100;\n }\n if (typeof timings.blocked === 'number' && timings.blocked > 0) {\n result.blocked = timings.blocked / timingsSum * 100;\n }\n if (typeof timings.connect === 'number' && timings.connect > 0) {\n result.connect = timings.connect / timingsSum * 100;\n }\n if (typeof timings.dns === 'number' && timings.dns > 0) {\n result.dns = timings.dns / timingsSum * 100;\n }\n if (typeof timings.receive === 'number' && timings.receive > 0) {\n result.receive = timings.receive / timingsSum * 100;\n }\n if (typeof timings.send === 'number' && timings.send > 0) {\n result.send = timings.send / timingsSum * 100;\n }\n if (typeof timings.ssl === 'number' && timings.ssl > 0) {\n result.ssl = timings.ssl / timingsSum * 100;\n }\n if (typeof timings.wait === 'number' && timings.wait > 0) {\n result.wait = timings.wait / timingsSum * 100;\n }\n return result;\n }\n\n /**\n * Sums all timing values.\n * @param timings The timings object to compute\n * @returns The total time, excluding -1s\n */\n protected sumTimings(timings: Timings): number {\n let result = 0;\n if (!timings) {\n return result;\n }\n if (typeof timings.blocked === 'number' && timings.blocked > 0) {\n result += timings.blocked;\n }\n if (typeof timings.connect === 'number' && timings.connect > 0) {\n result += timings.connect;\n }\n if (typeof timings.dns === 'number' && timings.dns > 0) {\n result += timings.dns;\n }\n if (typeof timings.receive === 'number' && timings.receive > 0) {\n result += timings.receive;\n }\n if (typeof timings.send === 'number' && timings.send > 0) {\n result += timings.send;\n }\n if (typeof timings.ssl === 'number' && timings.ssl > 0) {\n result += timings.ssl;\n }\n if (typeof timings.wait === 'number' && timings.wait > 0) {\n result += timings.wait;\n }\n return result;\n }\n\n /**\n * A handler for the page label click to toggle the page entries.\n */\n protected pageClickHandler(e: Event): void {\n const node = (e.currentTarget as HTMLElement);\n const id = node.dataset.page;\n if (id) {\n this.togglePage(id);\n }\n }\n\n /**\n * A handler for the page label keydown to toggle the page entries on space key.\n */\n protected pageKeydownHandler(e: KeyboardEvent): void {\n if (e.code !== 'Space') {\n return;\n }\n const node = (e.target as HTMLElement);\n const id = node.dataset.page;\n if (id) {\n this.togglePage(id);\n }\n }\n\n /**\n * Toggles the visibility of the page entries.\n * @param id The id of the page.\n */\n protected togglePage(id: string): void {\n const allOpened = this.openedPages;\n const index = allOpened.indexOf(id);\n if (index === -1) {\n allOpened.push(id);\n } else {\n allOpened.splice(index, 1);\n }\n this.requestUpdate();\n }\n\n /**\n * Handler for the list item selection event.\n */\n protected handleEntrySelection(e: CustomEvent<UiListSelection>): void {\n const { item } = e.detail;\n const { entry } = item.dataset;\n if (!entry) {\n return;\n }\n const { openedEntries = [] } = this;\n if (openedEntries.includes(entry)) {\n const index = openedEntries.indexOf(entry);\n openedEntries.splice(index, 1);\n } else {\n openedEntries.push(entry);\n }\n this.openedEntries = openedEntries;\n this.requestUpdate();\n }\n\n /**\n * Handler for the list item selection event.\n */\n protected handleDetailsTabSelection(e: CustomEvent<TabSelectionDetail>): void {\n const { select } = e.detail;\n const { entry } = (e.target as UiTabs).dataset;\n if (!select || !entry) {\n return;\n }\n this.selectedTabs.set(entry, select as HarTab);\n this.requestUpdate();\n }\n\n override render(): TemplateResult {\n const { pages } = this;\n if (Array.isArray(pages) && pages.length) {\n return this.renderPages(pages);\n }\n const { entries } = this;\n if (Array.isArray(entries) && entries.length) {\n return this.renderEntries(entries);\n }\n return html``;\n }\n\n /**\n * @returns Template for the pages table\n */\n protected renderPages(pages: RenderedPage[]): TemplateResult {\n return html`\n <div class=\"pages\">\n ${pages.map((info) => this.renderPage(info))}\n </div>\n `;\n }\n\n /**\n * @returns Template for a single page\n */\n protected renderPage(info: RenderedPage): TemplateResult {\n const allOpened = this.openedPages;\n const opened = allOpened.includes(info.page.id);\n return html`\n <section class=\"page\">\n ${this.renderPageHeader(info.page, info.totalTime)}\n <div class=\"page-content\" ?hidden=\"${!opened}\">\n <div class=\"page-entries\">\n ${this.renderEntriesList(info.entries)}\n </div>\n </div>\n </section>\n `;\n }\n\n /**\n * @returns Template for the pages table\n */\n protected renderPageHeader(page: Page, totalTime: number): TemplateResult {\n return html`\n <div class=\"page-header\" @click=\"${this.pageClickHandler}\" @keydown=\"${this.pageKeydownHandler}\" tabindex=\"0\" data-page=\"${page.id}\">\n <span class=\"label\">${page.title || 'Unknown page'}</span>\n ${this.renderLoadingTime(totalTime)}\n </div>\n `;\n }\n\n /**\n * @returns Template for the entries table\n */\n protected renderEntries(entries: RenderedEntry[]): TemplateResult {\n return html`\n <section class=\"entries-list\">\n ${this.renderEntriesList(entries)}\n </section>\n `;\n }\n\n /**\n * @returns The template for the entries list\n */\n protected renderEntriesList(entries: RenderedEntry[]): TemplateResult {\n return html`\n <ui-list \n @select=\"${this.handleEntrySelection}\" \n aria-label=\"Select a list item to see details\"\n role=\"list\"\n >\n ${entries.map((item) => this.renderEntry(item))}\n </ui-list>\n `;\n }\n\n /**\n * @returns The template for a single entry\n */\n protected renderEntry(entry: RenderedEntry): TemplateResult {\n const { request, response, timings, visualTimings, id, responseSizes } = entry;\n const allSelected = this.openedEntries;\n const selected = allSelected.includes(`${id}`);\n return html`\n <ui-list-item class=\"entry-item\" data-entry=\"${id}\">\n <div class=\"time\">\n ${entry.requestTime}\n </div>\n <div class=\"entry-body\">\n <div class=\"entry-detail-line\">\n ${this.renderStatusLabel(response.status, response.statusText)}\n ${this.renderLoadingTime(entry.time)}\n ${this.renderResponseSize(responseSizes)}\n </div>\n <div class=\"entry-location\" title=\"${request.url}\">${request.method} ${request.url}</div>\n </div>\n <div class=\"entry-timings\">\n ${this.timingsTemplate(timings, visualTimings, selected)}</div>\n </div>\n </ui-list-item>\n ${selected ? this.entryDetails(entry) : ''}\n <ui-divider type=\"inset\"></ui-divider>\n `;\n }\n\n /**\n * @param status The response status code\n * @param statusText The response reason part of the status.\n * @returns The template for the status message\n */\n protected renderStatusLabel(status: number, statusText = ''): TemplateResult {\n const codeClasses = this.computeStatusClasses(status);\n return html`\n <span class=\"${classMap(codeClasses)}\">${status}</span>\n <span class=\"message\">${statusText}</span>\n `;\n }\n\n /**\n * @param value The response loading time\n * @returns Template for the loading time message\n */\n protected renderLoadingTime(value: number): TemplateResult | string {\n if (Number.isNaN(value)) {\n return '';\n }\n const roundedValue = Math.round(value || 0);\n return html`<span class=\"loading-time-label\">Time: ${roundedValue} ms</span>`;\n }\n\n /**\n * @returns Template for the response size\n */\n protected renderResponseSize(sizing: EntrySizing): TemplateResult | string {\n return html`<span class=\"response-size-label\">Size: ${sizing.sum}</span>`;\n }\n\n /**\n * @param timings The entry's timings\n * @param visualTimings The computed visual timings for the template\n * @param fullWidth When set then it renders the timeline in the whole available space.\n * @returns The template for the timings timeline\n */\n protected timingsTemplate(timings: Timings, visualTimings?: RenderedEntryTimings, fullWidth = false): TemplateResult | string {\n if (!visualTimings) {\n return '';\n }\n const { total, delay, blocked, connect, dns, receive, send, ssl, wait, } = visualTimings;\n const styles = {\n width: fullWidth ? '100%' : `${total}%`,\n };\n return html`\n ${fullWidth ? '' : this.timingTemplate(delay, 'delay')}\n <div class=\"entry-timings-value\" style=\"${styleMap(styles)}\">\n ${this.timingTemplate(blocked, 'blocked', 'Blocked', timings)}\n ${this.timingTemplate(dns, 'dns', 'DNS', timings)}\n ${this.timingTemplate(connect, 'connect', 'Connecting', timings)}\n ${this.timingTemplate(ssl, 'ssl', 'SSL negotiation', timings)}\n ${this.timingTemplate(send, 'send', 'Sending', timings)}\n ${this.timingTemplate(wait, 'wait', 'Waiting', timings)}\n ${this.timingTemplate(receive, 'receive', 'Receiving', timings)}\n </div>\n `;\n }\n\n /**\n * @param width\n * @param type Added to the class name.\n * @param label The label to use in the title attribute\n * @param timings The entry's timings object\n * @returns The template for a timing timeline item\n */\n protected timingTemplate(width: number | undefined, type: keyof RenderedEntryTimings | keyof Timings, label?: string, timings?: Timings): TemplateResult | string {\n if (!width) {\n return '';\n }\n const styles = {\n width: `${width}%`,\n };\n const classes = {\n 'timing-entry': true,\n [type]: true,\n };\n const time = timings && timings[type as keyof Timings];\n const title = typeof time === 'number' ? `${label}: ${Math.round(time)}ms` : undefined;\n return html`\n <div class=\"${classMap(classes)}\" style=\"${styleMap(styles)}\" title=\"${ifDefined(title)}\"></div>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for an entry details.\n */\n protected entryDetails(entry: RenderedEntry): TemplateResult {\n const { id } = entry;\n const selectedTab = this.selectedTabs.get(String(id)) || HarTab.request;\n return html`\n <section class=\"entry-details\">\n ${this.entryDetailsTabsTemplate(entry, selectedTab)}\n <div class=\"details-content\" tabindex=\"0\">\n ${this.entryDetailsContentTemplate(entry, selectedTab)}\n </div>\n </section>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @param selected The index of the selected tab\n * @returns The template for entry details content tabs.\n */\n protected entryDetailsTabsTemplate(entry: RenderedEntry, selected: string): TemplateResult {\n const { id, request, response } = entry;\n const { postData, cookies: requestCookies } = request;\n const { content, cookies: responseCookies } = response;\n const hashRequestContent = !!postData && !!postData.text;\n const hashResponseContent = !!content && !!content.text;\n const hasRequestCookies = Array.isArray(requestCookies) && !!requestCookies.length;\n const hasResponseCookies = Array.isArray(responseCookies) && !!responseCookies.length;\n const hasCookies = hasRequestCookies || hasResponseCookies;\n return html`\n <ui-tabs \n priority=\"secondary\" \n selectedAttribute=\"data-selected\" \n .selected=\"${selected}\" \n @select=\"${this.handleDetailsTabSelection}\" \n data-entry=\"${id}\"\n >\n <ui-tab data-selected=\"${HarTab.request}\">Request</ui-tab>\n <ui-tab data-selected=\"${HarTab.response}\">Response</ui-tab>\n <ui-tab data-selected=\"${HarTab.requestContent}\" ?hidden=\"${!hashRequestContent}\">Request content</ui-tab>\n <ui-tab data-selected=\"${HarTab.responseContent}\" ?hidden=\"${!hashResponseContent}\">Response content</ui-tab>\n <ui-tab data-selected=\"${HarTab.cookies}\" ?hidden=\"${!hasCookies}\">Cookies</ui-tab>\n </ui-tabs>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @param selected The index of the selected tab\n * @returns The template for entry details content.\n */\n protected entryDetailsContentTemplate(entry: RenderedEntry, selected?: HarTab): TemplateResult | string {\n switch (selected) {\n case HarTab.request: return this.entryDetailsRequestTemplate(entry);\n case HarTab.response: return this.entryDetailsResponseTemplate(entry);\n case HarTab.requestContent: return this.entryDetailsRequestBodyTemplate(entry);\n case HarTab.responseContent: return this.entryDetailsResponseBodyTemplate(entry);\n case HarTab.cookies: return this.entryDetailsCookiesTemplate(entry);\n default: return '';\n }\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's request content.\n */\n protected entryDetailsRequestTemplate(entry: RenderedEntry): TemplateResult {\n const { request, requestFormattedDate, serverIPAddress, requestSizes } = entry;\n const { headers, url, method, httpVersion, queryString } = request;\n return html`\n <div class=\"entry-details-title\">Request on ${requestFormattedDate}</div>\n <dl class=\"details-list\">\n <dt>General</dt>\n <dd>\n ${this.definitionTemplate('URL', url)}\n ${this.definitionTemplate('HTTP version', httpVersion)}\n ${this.definitionTemplate('Operation', method)}\n ${this.definitionTemplate('Remote Address', serverIPAddress)}\n </dd>\n ${this.headersTemplate(headers)}\n ${this.queryParamsTemplate(queryString)}\n ${this.sizesTemplate(requestSizes)}\n </dl>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's response content.\n */\n protected entryDetailsResponseTemplate(entry: RenderedEntry): TemplateResult {\n const { response, responseSizes } = entry;\n const { headers } = response;\n return html`\n <dl class=\"details-list\">\n ${this.headersTemplate(headers)}\n ${this.sizesTemplate(responseSizes)}\n </dl>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's request body preview.\n */\n protected entryDetailsRequestBodyTemplate(entry: RenderedEntry): TemplateResult {\n const { request } = entry;\n const { postData } = request;\n if (!postData || !postData.text) {\n return html`<p>No request body data.</p>`;\n }\n return html`\n <pre><code class=\"body-preview\">${postData.text}</code></pre>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's response body preview.\n */\n protected entryDetailsResponseBodyTemplate(entry: RenderedEntry): TemplateResult {\n const { response } = entry;\n const { content } = response;\n if (!content || !content.text) {\n return html`<p>No request body data.</p>`;\n }\n return html`\n <pre><code class=\"body-preview\">${content.text}</code></pre>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's cookies.\n */\n protected entryDetailsCookiesTemplate(entry: RenderedEntry): TemplateResult {\n const { request, response } = entry;\n const { cookies: requestCookies } = request;\n const { cookies: responseCookies } = response;\n const hasRequestCookies = Array.isArray(requestCookies) && !!requestCookies.length;\n const hasResponseCookies = Array.isArray(responseCookies) && !!responseCookies.length;\n\n return html`\n <dl class=\"details-list\">\n <dt>Request cookies</dt>\n <dd>\n ${hasRequestCookies ? requestCookies.map((item) => this.definitionTemplate(item.name, item.value)) : \n html`No cookies recorded.`}\n </dd>\n\n <dt>Response cookies</dt>\n <dd>\n ${hasResponseCookies ? responseCookies.map((item) => this.definitionTemplate(item.name, item.value)) : \n html`No cookies recorded.`}\n </dd>\n </dl>\n `;\n }\n\n /**\n * @param term Definition label\n * @param value Definition value\n * @returns The template for the definition.\n */\n protected definitionTemplate(term: string, value?: string): TemplateResult | string {\n if (!value) {\n return '';\n }\n return html`\n <p class=\"definition\">\n <dfn>${term}:</dfn> ${value}\n </p>\n `;\n }\n\n /**\n * @returns The template for the list of headers.\n */\n protected headersTemplate(headers: Header[]): TemplateResult | string {\n return html`\n <dt>Headers</dt>\n <dd>\n ${Array.isArray(headers) && headers.length ? \n headers.map((item) => this.definitionTemplate(item.name, item.value)) : \n html`No headers recorded.`}\n </dd>\n `;\n }\n\n /**\n * @returns The template for the query parameters.\n */\n protected queryParamsTemplate(params: QueryString[]): TemplateResult | string {\n if (!Array.isArray(params) || !params.length) {\n return '';\n }\n return html`\n <dt>Query parameters</dt>\n <dd>\n ${params.map((item) => this.definitionTemplate(item.name, item.value))}\n </dd>\n `;\n }\n\n /**\n * @returns The template for sizes information\n */\n protected sizesTemplate(sizes: EntrySizing): TemplateResult {\n return html`\n <dt>Size</dt>\n <dd>\n ${this.definitionTemplate('Headers', sizes.headers)}\n ${this.definitionTemplate('Body', sizes.body)}\n ${this.definitionTemplate('Total', sizes.sum)}\n </dd>`;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"HarViewer.js","sourceRoot":"","sources":["../../../src/elements/har/HarViewer.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult } from 'lit';\nimport { ClassInfo, classMap } from 'lit/directives/class-map.js';\nimport { styleMap } from 'lit/directives/style-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { property } from 'lit/decorators.js';\n// eslint-disable-next-line import/no-unresolved\nimport { Har, Page, Entry, Request, Response, Header, QueryString, Timings } from 'har-format';\nimport { DataCalculator } from '@api-client/core/build/esm/browser.js';\nimport ApiElement from '../ApiElement.js';\nimport '../../define/ui/ui-tab.js';\nimport '../../define/ui/ui-tabs.js';\nimport '../../define/ui/ui-list.js';\nimport '../../define/ui/ui-list-item.js';\nimport '../../define/ui/ui-divider.js';\nimport { UiListSelection } from '../../ui/list/UiList.js';\nimport UiTabs, { TabSelectionDetail } from '../../ui/tabs/UiTabs.js';\nimport { SortableEntry, sortEntires } from './HarUtils.js';\n\nexport enum HarTab {\n request = 'request',\n response = 'response',\n requestContent = 'request-content',\n responseContent = 'response-content',\n cookies = 'cookies',\n}\n\nexport interface RenderedPage {\n page: Page;\n entries: RenderedEntry[];\n totalTime: number;\n}\n\nexport interface RenderedEntry extends SortableEntry {\n requestTime: string;\n visualTimings?: RenderedEntryTimings;\n requestFormattedDate: string;\n\n requestSizes: EntrySizing;\n responseSizes: EntrySizing;\n}\n\nexport interface RenderedEntryTimings {\n total: number;\n totalValue: number;\n delay?: number;\n blocked?: number;\n connect?: number;\n dns?: number;\n ssl?: number;\n send?: number;\n receive?: number;\n wait?: number;\n}\n\nexport interface EntrySizing {\n headers: string;\n headersComputed: boolean;\n body: string;\n bodyComputed: boolean;\n sum: string;\n sumComputed: boolean;\n}\n\n/** used when generating keys for entires */\nlet nextId = 0;\n\n/**\n * An element that renders the UI for HAR data.\n */\nexport default class HarViewer extends ApiElement {\n protected harInternal?: Har;\n\n protected ignorePagesInternal?: boolean;\n\n /** \n * The HAR object to render.\n */\n @property({ type: Object })\n get har(): Har | undefined {\n return this.harInternal;\n }\n\n set har(value: Har | undefined) {\n const old = this.harInternal;\n if (old === value) {\n return;\n }\n this.harInternal = value;\n this.processHar();\n }\n\n /** \n * When set it ignores pages matching and renders all requests in a single table.\n */\n @property({ type: Boolean })\n get ignorePages(): boolean | undefined {\n return this.ignorePagesInternal;\n }\n\n set ignorePages(value: boolean | undefined) {\n const old = this.ignorePagesInternal;\n if (old === value) {\n return;\n }\n this.ignorePagesInternal = value;\n this.processHar();\n }\n\n entries?: RenderedEntry[];\n\n pages?: RenderedPage[];\n\n openedPages: string[] = [];\n \n openedEntries: string[] = [];\n\n protected selectedTabs = new Map<string, HarTab>();\n\n /**\n * Called when the `har` or `ignorePages` changed.\n */\n processHar(): void {\n this.entries = undefined;\n this.pages = undefined;\n const { har, ignorePages } = this;\n if (!har || !har.log) {\n this.requestUpdate();\n return;\n }\n const { log } = har;\n const { pages, entries, } = log;\n if (!entries || !entries.length) {\n this.requestUpdate();\n return;\n }\n const items = sortEntires(entries);\n if (ignorePages || !pages || !pages.length) {\n this.computeEntriesOnly(items);\n } else {\n this.computePages(pages, items);\n }\n }\n\n /**\n * Performs computations to render entries only.\n * @param entries The list of entries to process.\n */\n computeEntriesOnly(entries: SortableEntry[]): void {\n const totalTime = this.computeTotalTime(entries[0], entries[entries.length - 1]);\n this.entries = this.computeRenderedEntries(entries, totalTime);\n this.openedEntries = [];\n this.requestUpdate();\n }\n\n /**\n * Performs computations to render entries by page.\n * @param pages The list of pages to process.\n * @param entries The list of entries to process.\n */\n computePages(pages: Page[], entries: SortableEntry[]): void {\n const result: RenderedPage[] = [];\n const opened: string[] = [];\n pages.forEach((page) => {\n opened.push(page.id);\n const items = entries.filter((entry) => entry.pageref === page.id);\n const totalTime = this.computeTotalTime(items[0], items[items.length - 1])\n const item: RenderedPage = ({\n page,\n entries: this.computeRenderedEntries(items, totalTime),\n totalTime,\n });\n result.push(item);\n });\n this.pages = result;\n this.openedPages = opened;\n this.openedEntries = [];\n this.requestUpdate();\n }\n\n /**\n * @param entries The entries to perform computations on.\n * @param totalTime The total time of all entries rendered in the group\n */\n computeRenderedEntries(entries: SortableEntry[], totalTime: number): RenderedEntry[] {\n const result: RenderedEntry[] = [];\n if (!Array.isArray(entries) || !entries.length) {\n return result;\n }\n // This expects entires to be sorted by time (as required by the spec).\n const [startEntry] = entries;\n const startTime = startEntry.timestamp;\n entries.forEach((entry) => {\n const d = new Date(entry.timestamp);\n const visualTimings = this.computeVisualTimes(entry.timings, entry.timestamp - startTime, totalTime);\n const numType: \"numeric\" | \"2-digit\" = 'numeric';\n const options: Intl.DateTimeFormatOptions = ({\n hour: numType,\n minute: numType,\n second: numType,\n fractionalSecondDigits: 3,\n });\n const format = new Intl.DateTimeFormat(undefined, options);\n const requestTime = format.format(d);\n const format2 = new Intl.DateTimeFormat(undefined , {\n timeStyle: 'medium',\n dateStyle: 'medium',\n });\n const requestFormattedDate = format2.format(d);\n const requestSizes = this.computeEntrySizeInfo(entry.request);\n const responseSizes = this.computeEntrySizeInfo(entry.response);\n const id = String(nextId++);\n const item: RenderedEntry = {\n requestTime,\n requestFormattedDate,\n requestSizes,\n responseSizes,\n ...entry,\n id,\n };\n if (visualTimings) {\n item.visualTimings = visualTimings;\n }\n result.push(item);\n });\n return result;\n }\n\n protected computeEntrySizeInfo(info: Request|Response): EntrySizing {\n const result: EntrySizing = ({\n headersComputed: false,\n bodyComputed: false,\n body: '',\n headers: '',\n sum: '',\n sumComputed: false,\n });\n\n let { headersSize=0, bodySize=0 } = info;\n const { headers } = info;\n if (headersSize < 1) {\n const parts: string[] = [];\n (headers || []).forEach((header) => {\n const key = header.name;\n if (key && key.trim() !== '') {\n let value;\n if (Array.isArray(header.value)) {\n value = header.value.join(',');\n } else {\n value = header.value;\n }\n let line = '';\n line += `${key}: `;\n if (typeof value !== 'undefined') {\n value = value.split('\\n').join(' ');\n line += value;\n }\n parts.push(line);\n }\n });\n const hdrStr = parts.join('\\n');\n headersSize = DataCalculator.stringSize(hdrStr);\n result.headersComputed = true;\n }\n if (bodySize < 1) {\n const typedRequest = (info as Request);\n const typedResponse = (info as Response);\n if (typedResponse.content) {\n if (typedResponse.content.size) {\n bodySize = typedResponse.content.size;\n } else if (typedResponse.content.text) {\n bodySize = DataCalculator.stringSize(typedResponse.content.text);\n result.bodyComputed = true;\n }\n } else if (typedRequest.postData && typedRequest.postData.text) {\n bodySize = DataCalculator.stringSize(typedRequest.postData.text);\n result.bodyComputed = true;\n }\n }\n if (bodySize < 0) {\n bodySize = 0;\n }\n result.body = DataCalculator.bytesToSize(bodySize);\n result.headers = DataCalculator.bytesToSize(headersSize);\n result.sum = DataCalculator.bytesToSize(headersSize + bodySize);\n result.sumComputed = result.bodyComputed || result.headersComputed;\n return result;\n }\n\n /**\n * @param code The status code to test for classes.\n * @returns List of classes to be set on the status code\n */\n computeStatusClasses(code: number): ClassInfo {\n const classes = {\n 'status-code': true,\n error: code >= 500 || code === 0,\n warning: code >= 400 && code < 500,\n info: code >= 300 && code < 400,\n };\n return classes;\n }\n\n /**\n * Computes the total time of page requests.\n * @param first The earliest entry in the range\n * @param last The latest entry in the range\n * @returns The total time of the page. Used to build the timeline.\n */\n computeTotalTime(first: Entry, last: Entry): number {\n if (first === last) {\n return this.sumTimings(last.timings);\n }\n const startTime = new Date(first.startedDateTime).getTime();\n const endTime = new Date(last.startedDateTime).getTime();\n const lastDuration = this.sumTimings(last.timings);\n return endTime - startTime + lastDuration;\n }\n\n /**\n * @param timings The entry's timings object.\n * @param delay The timestamp when the first request started.\n * @param total The number of milliseconds all entries took.\n */\n computeVisualTimes(timings: Timings, delay: number, total: number): RenderedEntryTimings|undefined {\n if (!timings) {\n return undefined;\n }\n const timingsSum = this.sumTimings(timings);\n const totalPercent = timingsSum / total * 100;\n const result: RenderedEntryTimings = ({\n total: totalPercent,\n totalValue: timingsSum,\n });\n if (delay) {\n result.delay = delay / total * 100;\n }\n if (typeof timings.blocked === 'number' && timings.blocked > 0) {\n result.blocked = timings.blocked / timingsSum * 100;\n }\n if (typeof timings.connect === 'number' && timings.connect > 0) {\n result.connect = timings.connect / timingsSum * 100;\n }\n if (typeof timings.dns === 'number' && timings.dns > 0) {\n result.dns = timings.dns / timingsSum * 100;\n }\n if (typeof timings.receive === 'number' && timings.receive > 0) {\n result.receive = timings.receive / timingsSum * 100;\n }\n if (typeof timings.send === 'number' && timings.send > 0) {\n result.send = timings.send / timingsSum * 100;\n }\n if (typeof timings.ssl === 'number' && timings.ssl > 0) {\n result.ssl = timings.ssl / timingsSum * 100;\n }\n if (typeof timings.wait === 'number' && timings.wait > 0) {\n result.wait = timings.wait / timingsSum * 100;\n }\n return result;\n }\n\n /**\n * Sums all timing values.\n * @param timings The timings object to compute\n * @returns The total time, excluding -1s\n */\n protected sumTimings(timings: Timings): number {\n let result = 0;\n if (!timings) {\n return result;\n }\n if (typeof timings.blocked === 'number' && timings.blocked > 0) {\n result += timings.blocked;\n }\n if (typeof timings.connect === 'number' && timings.connect > 0) {\n result += timings.connect;\n }\n if (typeof timings.dns === 'number' && timings.dns > 0) {\n result += timings.dns;\n }\n if (typeof timings.receive === 'number' && timings.receive > 0) {\n result += timings.receive;\n }\n if (typeof timings.send === 'number' && timings.send > 0) {\n result += timings.send;\n }\n if (typeof timings.ssl === 'number' && timings.ssl > 0) {\n result += timings.ssl;\n }\n if (typeof timings.wait === 'number' && timings.wait > 0) {\n result += timings.wait;\n }\n return result;\n }\n\n /**\n * A handler for the page label click to toggle the page entries.\n */\n protected pageClickHandler(e: Event): void {\n const node = (e.currentTarget as HTMLElement);\n const id = node.dataset.page;\n if (id) {\n this.togglePage(id);\n }\n }\n\n /**\n * A handler for the page label keydown to toggle the page entries on space key.\n */\n protected pageKeydownHandler(e: KeyboardEvent): void {\n if (e.code !== 'Space') {\n return;\n }\n const node = (e.target as HTMLElement);\n const id = node.dataset.page;\n if (id) {\n this.togglePage(id);\n }\n }\n\n /**\n * Toggles the visibility of the page entries.\n * @param id The id of the page.\n */\n protected togglePage(id: string): void {\n const allOpened = this.openedPages;\n const index = allOpened.indexOf(id);\n if (index === -1) {\n allOpened.push(id);\n } else {\n allOpened.splice(index, 1);\n }\n this.requestUpdate();\n }\n\n /**\n * Handler for the list item selection event.\n */\n protected handleEntrySelection(e: CustomEvent<UiListSelection>): void {\n const { item } = e.detail;\n const { entry } = item.dataset;\n if (!entry) {\n return;\n }\n const { openedEntries = [] } = this;\n if (openedEntries.includes(entry)) {\n const index = openedEntries.indexOf(entry);\n openedEntries.splice(index, 1);\n } else {\n openedEntries.push(entry);\n }\n this.openedEntries = openedEntries;\n this.requestUpdate();\n }\n\n /**\n * Handler for the list item selection event.\n */\n protected handleDetailsTabSelection(e: CustomEvent<TabSelectionDetail>): void {\n const { select } = e.detail;\n const { entry } = (e.target as UiTabs).dataset;\n if (!select || !entry) {\n return;\n }\n this.selectedTabs.set(entry, select as HarTab);\n this.requestUpdate();\n }\n\n override render(): TemplateResult {\n const { pages } = this;\n if (Array.isArray(pages) && pages.length) {\n return this.renderPages(pages);\n }\n const { entries } = this;\n if (Array.isArray(entries) && entries.length) {\n return this.renderEntries(entries);\n }\n return html``;\n }\n\n /**\n * @returns Template for the pages table\n */\n protected renderPages(pages: RenderedPage[]): TemplateResult {\n return html`\n <div class=\"pages\">\n ${pages.map((info) => this.renderPage(info))}\n </div>\n `;\n }\n\n /**\n * @returns Template for a single page\n */\n protected renderPage(info: RenderedPage): TemplateResult {\n const allOpened = this.openedPages;\n const opened = allOpened.includes(info.page.id);\n return html`\n <section class=\"page\">\n ${this.renderPageHeader(info.page, info.totalTime)}\n <div class=\"page-content\" ?hidden=\"${!opened}\">\n <div class=\"page-entries\">\n ${this.renderEntriesList(info.entries)}\n </div>\n </div>\n </section>\n `;\n }\n\n /**\n * @returns Template for the pages table\n */\n protected renderPageHeader(page: Page, totalTime: number): TemplateResult {\n return html`\n <div class=\"page-header\" @click=\"${this.pageClickHandler}\" @keydown=\"${this.pageKeydownHandler}\" tabindex=\"0\" data-page=\"${page.id}\">\n <span class=\"label\">${page.title || 'Unknown page'}</span>\n ${this.renderLoadingTime(totalTime)}\n </div>\n `;\n }\n\n /**\n * @returns Template for the entries table\n */\n protected renderEntries(entries: RenderedEntry[]): TemplateResult {\n return html`\n <section class=\"entries-list\">\n ${this.renderEntriesList(entries)}\n </section>\n `;\n }\n\n /**\n * @returns The template for the entries list\n */\n protected renderEntriesList(entries: RenderedEntry[]): TemplateResult {\n return html`\n <ui-list \n @select=\"${this.handleEntrySelection}\" \n aria-label=\"Select a list item to see details\"\n role=\"list\"\n >\n ${entries.map((item) => this.renderEntry(item))}\n </ui-list>\n `;\n }\n\n /**\n * @returns The template for a single entry\n */\n protected renderEntry(entry: RenderedEntry): TemplateResult {\n const { request, response, timings, visualTimings, id, responseSizes } = entry;\n const allSelected = this.openedEntries;\n const selected = allSelected.includes(`${id}`);\n return html`\n <ui-list-item class=\"entry-item\" data-entry=\"${id}\">\n <div class=\"time\">\n ${entry.requestTime}\n </div>\n <div class=\"entry-body\">\n <div class=\"entry-detail-line\">\n ${this.renderStatusLabel(response.status, response.statusText)}\n ${this.renderLoadingTime(entry.time)}\n ${this.renderResponseSize(responseSizes)}\n </div>\n <div class=\"entry-location\" title=\"${request.url}\">${request.method} ${request.url}</div>\n </div>\n <div class=\"entry-timings\">\n ${this.timingsTemplate(timings, visualTimings, selected)}</div>\n </div>\n </ui-list-item>\n ${selected ? this.entryDetails(entry) : ''}\n <ui-divider type=\"inset\"></ui-divider>\n `;\n }\n\n /**\n * @param status The response status code\n * @param statusText The response reason part of the status.\n * @returns The template for the status message\n */\n protected renderStatusLabel(status: number, statusText = ''): TemplateResult {\n const codeClasses = this.computeStatusClasses(status);\n return html`\n <span class=\"${classMap(codeClasses)}\">${status}</span>\n <span class=\"message\">${statusText}</span>\n `;\n }\n\n /**\n * @param value The response loading time\n * @returns Template for the loading time message\n */\n protected renderLoadingTime(value: number): TemplateResult | string {\n if (Number.isNaN(value)) {\n return '';\n }\n const roundedValue = Math.round(value || 0);\n return html`<span class=\"loading-time-label\">Time: ${roundedValue} ms</span>`;\n }\n\n /**\n * @returns Template for the response size\n */\n protected renderResponseSize(sizing: EntrySizing): TemplateResult | string {\n return html`<span class=\"response-size-label\">Size: ${sizing.sum}</span>`;\n }\n\n /**\n * @param timings The entry's timings\n * @param visualTimings The computed visual timings for the template\n * @param fullWidth When set then it renders the timeline in the whole available space.\n * @returns The template for the timings timeline\n */\n protected timingsTemplate(timings: Timings, visualTimings?: RenderedEntryTimings, fullWidth = false): TemplateResult | string {\n if (!visualTimings) {\n return '';\n }\n const { total, delay, blocked, connect, dns, receive, send, ssl, wait, } = visualTimings;\n const styles = {\n width: fullWidth ? '100%' : `${total}%`,\n };\n return html`\n ${fullWidth ? '' : this.timingTemplate(delay, 'delay')}\n <div class=\"entry-timings-value\" style=\"${styleMap(styles)}\">\n ${this.timingTemplate(blocked, 'blocked', 'Blocked', timings)}\n ${this.timingTemplate(dns, 'dns', 'DNS', timings)}\n ${this.timingTemplate(connect, 'connect', 'Connecting', timings)}\n ${this.timingTemplate(ssl, 'ssl', 'SSL negotiation', timings)}\n ${this.timingTemplate(send, 'send', 'Sending', timings)}\n ${this.timingTemplate(wait, 'wait', 'Waiting', timings)}\n ${this.timingTemplate(receive, 'receive', 'Receiving', timings)}\n </div>\n `;\n }\n\n /**\n * @param width\n * @param type Added to the class name.\n * @param label The label to use in the title attribute\n * @param timings The entry's timings object\n * @returns The template for a timing timeline item\n */\n protected timingTemplate(width: number | undefined, type: keyof RenderedEntryTimings | keyof Timings, label?: string, timings?: Timings): TemplateResult | string {\n if (!width) {\n return '';\n }\n const styles = {\n width: `${width}%`,\n };\n const classes = {\n 'timing-entry': true,\n [type]: true,\n };\n const time = timings && timings[type as keyof Timings];\n const title = typeof time === 'number' ? `${label}: ${Math.round(time)}ms` : undefined;\n return html`\n <div class=\"${classMap(classes)}\" style=\"${styleMap(styles)}\" title=\"${ifDefined(title)}\"></div>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for an entry details.\n */\n protected entryDetails(entry: RenderedEntry): TemplateResult {\n const { id } = entry;\n const selectedTab = this.selectedTabs.get(String(id)) || HarTab.request;\n return html`\n <section class=\"entry-details\">\n ${this.entryDetailsTabsTemplate(entry, selectedTab)}\n <div class=\"details-content\" tabindex=\"0\">\n ${this.entryDetailsContentTemplate(entry, selectedTab)}\n </div>\n </section>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @param selected The index of the selected tab\n * @returns The template for entry details content tabs.\n */\n protected entryDetailsTabsTemplate(entry: RenderedEntry, selected: string): TemplateResult {\n const { id, request, response } = entry;\n const { postData, cookies: requestCookies } = request;\n const { content, cookies: responseCookies } = response;\n const hashRequestContent = !!postData && !!postData.text;\n const hashResponseContent = !!content && !!content.text;\n const hasRequestCookies = Array.isArray(requestCookies) && !!requestCookies.length;\n const hasResponseCookies = Array.isArray(responseCookies) && !!responseCookies.length;\n const hasCookies = hasRequestCookies || hasResponseCookies;\n return html`\n <ui-tabs \n priority=\"secondary\" \n selectedAttribute=\"data-selected\" \n .selected=\"${selected}\" \n @select=\"${this.handleDetailsTabSelection}\" \n data-entry=\"${id}\"\n >\n <ui-tab data-selected=\"${HarTab.request}\">Request</ui-tab>\n <ui-tab data-selected=\"${HarTab.response}\">Response</ui-tab>\n <ui-tab data-selected=\"${HarTab.requestContent}\" ?hidden=\"${!hashRequestContent}\">Request content</ui-tab>\n <ui-tab data-selected=\"${HarTab.responseContent}\" ?hidden=\"${!hashResponseContent}\">Response content</ui-tab>\n <ui-tab data-selected=\"${HarTab.cookies}\" ?hidden=\"${!hasCookies}\">Cookies</ui-tab>\n </ui-tabs>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @param selected The index of the selected tab\n * @returns The template for entry details content.\n */\n protected entryDetailsContentTemplate(entry: RenderedEntry, selected?: HarTab): TemplateResult | string {\n switch (selected) {\n case HarTab.request: return this.entryDetailsRequestTemplate(entry);\n case HarTab.response: return this.entryDetailsResponseTemplate(entry);\n case HarTab.requestContent: return this.entryDetailsRequestBodyTemplate(entry);\n case HarTab.responseContent: return this.entryDetailsResponseBodyTemplate(entry);\n case HarTab.cookies: return this.entryDetailsCookiesTemplate(entry);\n default: return '';\n }\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's request content.\n */\n protected entryDetailsRequestTemplate(entry: RenderedEntry): TemplateResult {\n const { request, requestFormattedDate, serverIPAddress, requestSizes } = entry;\n const { headers, url, method, httpVersion, queryString } = request;\n return html`\n <div class=\"entry-details-title\">Request on ${requestFormattedDate}</div>\n <dl class=\"details-list\">\n <dt>General</dt>\n <dd>\n ${this.definitionTemplate('URL', url)}\n ${this.definitionTemplate('HTTP version', httpVersion)}\n ${this.definitionTemplate('Operation', method)}\n ${this.definitionTemplate('Remote Address', serverIPAddress)}\n </dd>\n ${this.headersTemplate(headers)}\n ${this.queryParamsTemplate(queryString)}\n ${this.sizesTemplate(requestSizes)}\n </dl>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's response content.\n */\n protected entryDetailsResponseTemplate(entry: RenderedEntry): TemplateResult {\n const { response, responseSizes } = entry;\n const { headers } = response;\n return html`\n <dl class=\"details-list\">\n ${this.headersTemplate(headers)}\n ${this.sizesTemplate(responseSizes)}\n </dl>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's request body preview.\n */\n protected entryDetailsRequestBodyTemplate(entry: RenderedEntry): TemplateResult {\n const { request } = entry;\n const { postData } = request;\n if (!postData || !postData.text) {\n return html`<p>No request body data.</p>`;\n }\n return html`\n <pre><code class=\"body-preview\">${postData.text}</code></pre>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's response body preview.\n */\n protected entryDetailsResponseBodyTemplate(entry: RenderedEntry): TemplateResult {\n const { response } = entry;\n const { content } = response;\n if (!content || !content.text) {\n return html`<p>No request body data.</p>`;\n }\n return html`\n <pre><code class=\"body-preview\">${content.text}</code></pre>\n `;\n }\n\n /**\n * @param entry The entry to render\n * @returns The template for entry's cookies.\n */\n protected entryDetailsCookiesTemplate(entry: RenderedEntry): TemplateResult {\n const { request, response } = entry;\n const { cookies: requestCookies } = request;\n const { cookies: responseCookies } = response;\n const hasRequestCookies = Array.isArray(requestCookies) && !!requestCookies.length;\n const hasResponseCookies = Array.isArray(responseCookies) && !!responseCookies.length;\n\n return html`\n <dl class=\"details-list\">\n <dt>Request cookies</dt>\n <dd>\n ${hasRequestCookies ? requestCookies.map((item) => this.definitionTemplate(item.name, item.value)) : \n html`No cookies recorded.`}\n </dd>\n\n <dt>Response cookies</dt>\n <dd>\n ${hasResponseCookies ? responseCookies.map((item) => this.definitionTemplate(item.name, item.value)) : \n html`No cookies recorded.`}\n </dd>\n </dl>\n `;\n }\n\n /**\n * @param term Definition label\n * @param value Definition value\n * @returns The template for the definition.\n */\n protected definitionTemplate(term: string, value?: string): TemplateResult | string {\n if (!value) {\n return '';\n }\n return html`\n <p class=\"definition\">\n <dfn>${term}:</dfn> ${value}\n </p>\n `;\n }\n\n /**\n * @returns The template for the list of headers.\n */\n protected headersTemplate(headers: Header[]): TemplateResult | string {\n return html`\n <dt>Headers</dt>\n <dd>\n ${Array.isArray(headers) && headers.length ? \n headers.map((item) => this.definitionTemplate(item.name, item.value)) : \n html`No headers recorded.`}\n </dd>\n `;\n }\n\n /**\n * @returns The template for the query parameters.\n */\n protected queryParamsTemplate(params: QueryString[]): TemplateResult | string {\n if (!Array.isArray(params) || !params.length) {\n return '';\n }\n return html`\n <dt>Query parameters</dt>\n <dd>\n ${params.map((item) => this.definitionTemplate(item.name, item.value))}\n </dd>\n `;\n }\n\n /**\n * @returns The template for sizes information\n */\n protected sizesTemplate(sizes: EntrySizing): TemplateResult {\n return html`\n <dt>Size</dt>\n <dd>\n ${this.definitionTemplate('Headers', sizes.headers)}\n ${this.definitionTemplate('Body', sizes.body)}\n ${this.definitionTemplate('Total', sizes.sum)}\n </dd>`;\n }\n}\n"]}
|
|
@@ -12,7 +12,7 @@ License for the specific language governing permissions and limitations under
|
|
|
12
12
|
the License.
|
|
13
13
|
*/
|
|
14
14
|
import { TemplateResult, PropertyValues, nothing } from 'lit';
|
|
15
|
-
import { IBodyMetaModel, IMultipartBody, IProperty, IRawBody, ISafePayload, IUrlEncodedBodyMeta } from '@api-client/core/build/browser.js';
|
|
15
|
+
import { IBodyMetaModel, IMultipartBody, IProperty, IRawBody, ISafePayload, IUrlEncodedBodyMeta } from '@api-client/core/build/esm/browser.js';
|
|
16
16
|
import BodyUrlEncodedEditor from './BodyUrlEncodedEditor.js';
|
|
17
17
|
import BodyMultipartEditor from './BodyMultipartEditor.js';
|
|
18
18
|
import ApiElement from '../ApiElement.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BodyEditor.d.ts","sourceRoot":"","sources":["../../../src/elements/http/BodyEditor.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;EAYE;AACF,OAAO,EAAQ,cAAc,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,mBAAmB,EAAqB,MAAM,
|
|
1
|
+
{"version":3,"file":"BodyEditor.d.ts","sourceRoot":"","sources":["../../../src/elements/http/BodyEditor.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ the License.
|
|
|
16
16
|
*/
|
|
17
17
|
import { html, nothing } from 'lit';
|
|
18
18
|
import { property, query } from 'lit/decorators.js';
|
|
19
|
-
import { PayloadSerializer } from '@api-client/core/build/browser.js';
|
|
19
|
+
import { PayloadSerializer } from '@api-client/core/build/esm/browser.js';
|
|
20
20
|
import { ifProperty } from '../../directives/if-property.js';
|
|
21
21
|
import { Events } from '../../events/Events.js';
|
|
22
22
|
import ApiElement from '../ApiElement.js';
|
|
@@ -616,7 +616,7 @@ export default class BodyEditor extends ApiElement {
|
|
|
616
616
|
>
|
|
617
617
|
URL decode
|
|
618
618
|
</ui-button>
|
|
619
|
-
<label title="When set it automatically encodes the values before sending the request">
|
|
619
|
+
<label title="When set it automatically encodes the values before sending the request" class="label-medium">
|
|
620
620
|
<ui-checkbox .checked="${autoEncode}" @change="${this.handleUrlEncodeAutoChange}"></ui-checkbox>
|
|
621
621
|
Encode on send
|
|
622
622
|
</label>
|
|
@@ -728,7 +728,7 @@ export default class BodyEditor extends ApiElement {
|
|
|
728
728
|
}
|
|
729
729
|
renderFormInfo() {
|
|
730
730
|
return html `
|
|
731
|
-
<p class="form-info">
|
|
731
|
+
<p class="form-info body-small">
|
|
732
732
|
Note that the content-type header will be added when the request is sent.
|
|
733
733
|
</p>
|
|
734
734
|
`;
|
|
@@ -752,7 +752,7 @@ export default class BodyEditor extends ApiElement {
|
|
|
752
752
|
const { value } = this;
|
|
753
753
|
const { size, name } = value;
|
|
754
754
|
return html `
|
|
755
|
-
<div class="file-info">
|
|
755
|
+
<div class="file-info label-medium">
|
|
756
756
|
<span class="file-name">${name || 'unknown name'}</span>
|
|
757
757
|
<span class="file-size">${size} bytes</span>
|
|
758
758
|
<ui-icon-button
|
|
@@ -772,7 +772,7 @@ export default class BodyEditor extends ApiElement {
|
|
|
772
772
|
}
|
|
773
773
|
const id = this.invalidMimeMessage;
|
|
774
774
|
return html `
|
|
775
|
-
<div class="invalid-mime">
|
|
775
|
+
<div class="invalid-mime body-medium">
|
|
776
776
|
<ui-icon icon="warning" class="warning-icon"></ui-icon>
|
|
777
777
|
${id === 1 ? this.renderFixableInvalidMime('multipart/form-data') : ''}
|
|
778
778
|
${id === 2 ? this.renderFixableInvalidMime('application/x-www-form-urlencoded') : ''}
|
|
@@ -784,7 +784,7 @@ export default class BodyEditor extends ApiElement {
|
|
|
784
784
|
*/
|
|
785
785
|
renderFixableInvalidMime(suggested) {
|
|
786
786
|
return html `
|
|
787
|
-
<p class="message">
|
|
787
|
+
<p class="message body-medium">
|
|
788
788
|
The <code>content-type</code> header has different value than <b>${suggested}</b>.
|
|
789
789
|
</p>
|
|
790
790
|
<ui-button class="fix" type="tonal" title="Updates the content type header for the request" @click="${this.autoFixMime}">Fix</ui-button>
|