@api-client/ui 0.0.3 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/demo/amf/api-annotation.html +1 -0
- package/demo/amf/api-channel.html +1 -0
- package/demo/amf/api-console.html +1 -0
- package/demo/amf/api-documentation-document.html +1 -0
- package/demo/amf/api-documentation.html +1 -0
- package/demo/amf/api-editor.html +1 -0
- package/demo/amf/api-navigation.html +1 -0
- package/demo/amf/api-operation.html +1 -0
- package/demo/amf/api-payload.html +1 -0
- package/demo/amf/api-request.html +1 -0
- package/demo/amf/api-resource.html +1 -0
- package/demo/amf/api-schema-documentation.html +1 -0
- package/demo/amf/api-security-documentation.html +1 -0
- package/demo/amf/api-server-picker.html +1 -0
- package/demo/amf/api-summary.html +1 -0
- package/demo/amf/bare-components.html +2 -0
- package/demo/amf/index.html +2 -0
- package/demo/amf/oauth-authorize.html +2 -0
- package/demo/amf/request-editor.html +1 -0
- package/demo/elements/authorization/api-key.html +1 -0
- package/demo/elements/authorization/basic.html +1 -0
- package/demo/elements/authorization/bearer.html +1 -0
- package/demo/elements/authorization/cc.html +1 -0
- package/demo/elements/authorization/index.html +2 -0
- package/demo/elements/authorization/ntlm.html +1 -0
- package/demo/elements/authorization/oauth-error.html +2 -0
- package/demo/elements/authorization/oauth-popup.html +2 -0
- package/demo/elements/authorization/oauth2.html +1 -0
- package/demo/elements/authorization/oidc.html +1 -0
- package/demo/elements/authorization/redirect.html +3 -1
- package/demo/elements/context-menu/basic.html +2 -1
- package/demo/elements/context-menu/custom-data.html +2 -1
- package/demo/elements/context-menu/enabled-state.html +2 -1
- package/demo/elements/context-menu/icons.html +2 -1
- package/demo/elements/context-menu/index.html +2 -0
- package/demo/elements/context-menu/nested.html +2 -1
- package/demo/elements/context-menu/no-execute.html +2 -1
- package/demo/elements/context-menu/radio-menu.html +2 -1
- package/demo/elements/context-menu/separators.html +2 -1
- package/demo/elements/environment/environment-editor.html +1 -0
- package/demo/elements/environment/index.html +1 -0
- package/demo/elements/environment/server-editor.html +1 -1
- package/demo/elements/environment/variables-editor.html +1 -1
- package/demo/elements/har/har-viewer.html +1 -0
- package/demo/elements/highlight/index.html +1 -0
- package/demo/elements/highlight/marked-highlight.html +1 -0
- package/demo/elements/highlight/prism-highlight.html +1 -0
- package/demo/elements/http/body-editor.html +1 -0
- package/demo/elements/http/headers.html +1 -0
- package/demo/elements/http/http-assertions.html +1 -0
- package/demo/elements/http/request-editor.html +1 -0
- package/demo/elements/http/request-log.html +1 -0
- package/demo/elements/http/url-editing.html +1 -0
- package/demo/elements/icons/index.html +1 -0
- package/demo/elements/project/project-run-report.html +1 -0
- package/demo/elements/project/request-editor.html +1 -0
- package/demo/elements/ui/buttons/api-button.html +2 -1
- package/demo/elements/ui/buttons/api-icon-button.html +2 -1
- package/demo/elements/ui/buttons/segmented-buttons.html +2 -1
- package/demo/elements/ui/chip/api-chip.html +2 -1
- package/demo/elements/ui/collapse/ui-collapse.html +2 -1
- package/demo/elements/ui/dialog/ui-dialog.html +2 -1
- package/demo/elements/ui/inputs/api-checkbox.html +2 -1
- package/demo/elements/ui/inputs/api-input.html +2 -1
- package/demo/elements/ui/inputs/api-radio.html +2 -1
- package/demo/elements/ui/inputs/api-switch.html +2 -1
- package/demo/elements/ui/list/dropdown-list.html +2 -1
- package/demo/elements/ui/list/list.html +2 -1
- package/demo/elements/ui/notification/snack.html +2 -1
- package/demo/elements/ui/progress/ui-progress.html +2 -1
- package/demo/elements/ui/tabs/tabs.html +2 -1
- package/dist/amf/lib/AmfParameters.js +0 -4
- package/dist/amf/lib/AmfParameters.js.map +1 -1
- package/dist/amf/lib/navigation-layout/EndpointsTree.js +0 -2
- package/dist/amf/lib/navigation-layout/EndpointsTree.js.map +1 -1
- package/dist/amf/lib/navigation-layout/NaturalTree.js +0 -2
- package/dist/amf/lib/navigation-layout/NaturalTree.js.map +1 -1
- package/dist/amf/store/AmfGraphStore.js +0 -2
- package/dist/amf/store/AmfGraphStore.js.map +1 -1
- package/dist/amf/store/AmfStore.js +0 -7
- package/dist/amf/store/AmfStore.js.map +1 -1
- package/dist/bindings/base/HttpClientStoreBindings.js +4 -1
- package/dist/bindings/base/HttpClientStoreBindings.js.map +1 -1
- package/dist/bindings/base/PlatformBindings.js +6 -10
- package/dist/bindings/base/PlatformBindings.js.map +1 -1
- package/dist/bindings/base/ProxyBindings.js +9 -6
- package/dist/bindings/base/ProxyBindings.js.map +1 -1
- package/dist/bindings/base/SharedWorkerThread.js +4 -1
- package/dist/bindings/base/SharedWorkerThread.js.map +1 -1
- package/dist/bindings/base/StoreBindings.js +162 -170
- package/dist/bindings/base/StoreBindings.js.map +1 -1
- package/dist/bindings/web/WebConfigurationBindings.js +22 -24
- package/dist/bindings/web/WebConfigurationBindings.js.map +1 -1
- package/dist/bindings/web/WebFileBindings.js +7 -4
- package/dist/bindings/web/WebFileBindings.js.map +1 -1
- package/dist/bindings/web/WebHttpClientStoreBindings.js +19 -21
- package/dist/bindings/web/WebHttpClientStoreBindings.js.map +1 -1
- package/dist/bindings/web/WebNavigationBindings.js +4 -1
- package/dist/bindings/web/WebNavigationBindings.js.map +1 -1
- package/dist/bindings/web/WebProxyBindings.js +5 -6
- package/dist/bindings/web/WebProxyBindings.js.map +1 -1
- package/dist/bindings/web/WebStoreBindings.js +39 -44
- package/dist/bindings/web/WebStoreBindings.js.map +1 -1
- package/dist/contextual-menu/ContextualMenu.js +10 -19
- package/dist/contextual-menu/ContextualMenu.js.map +1 -1
- package/dist/contextual-menu/ContextualMenuElement.js +4 -32
- package/dist/contextual-menu/ContextualMenuElement.js.map +1 -1
- package/dist/contextual-menu/MenuItem.js +0 -12
- package/dist/contextual-menu/MenuItem.js.map +1 -1
- package/dist/define/amf/api-annotation-document.js +1 -1
- package/dist/define/amf/api-annotation-document.js.map +1 -1
- package/dist/define/amf/api-authorization-editor.js +1 -1
- package/dist/define/amf/api-authorization-editor.js.map +1 -1
- package/dist/define/amf/api-channel-document.js +1 -1
- package/dist/define/amf/api-channel-document.js.map +1 -1
- package/dist/define/amf/api-documentation-document.js +1 -1
- package/dist/define/amf/api-documentation-document.js.map +1 -1
- package/dist/define/amf/api-documentation.js +1 -1
- package/dist/define/amf/api-documentation.js.map +1 -1
- package/dist/define/amf/api-navigation.js +1 -1
- package/dist/define/amf/api-navigation.js.map +1 -1
- package/dist/define/amf/api-operation-document.js +1 -1
- package/dist/define/amf/api-operation-document.js.map +1 -1
- package/dist/define/amf/api-parameter-document.js +1 -1
- package/dist/define/amf/api-parameter-document.js.map +1 -1
- package/dist/define/amf/api-parametrized-security-scheme.js +1 -1
- package/dist/define/amf/api-parametrized-security-scheme.js.map +1 -1
- package/dist/define/amf/api-payload-document.js +1 -1
- package/dist/define/amf/api-payload-document.js.map +1 -1
- package/dist/define/amf/api-request-document.js +1 -1
- package/dist/define/amf/api-request-document.js.map +1 -1
- package/dist/define/amf/api-request-editor.js +1 -1
- package/dist/define/amf/api-request-editor.js.map +1 -1
- package/dist/define/amf/api-request.js +1 -1
- package/dist/define/amf/api-request.js.map +1 -1
- package/dist/define/amf/api-resource-document.js +1 -1
- package/dist/define/amf/api-resource-document.js.map +1 -1
- package/dist/define/amf/api-response-document.js +1 -1
- package/dist/define/amf/api-response-document.js.map +1 -1
- package/dist/define/amf/api-schema-document.js +1 -1
- package/dist/define/amf/api-schema-document.js.map +1 -1
- package/dist/define/amf/api-security-document.js +1 -1
- package/dist/define/amf/api-security-document.js.map +1 -1
- package/dist/define/amf/api-security-requirement-document.js +1 -1
- package/dist/define/amf/api-security-requirement-document.js.map +1 -1
- package/dist/define/amf/api-server-picker.js +1 -1
- package/dist/define/amf/api-server-picker.js.map +1 -1
- package/dist/define/amf/api-summary.js +1 -1
- package/dist/define/amf/api-summary.js.map +1 -1
- package/dist/define/amf/authorization/amf-apikey-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-apikey-authorization.js.map +1 -1
- package/dist/define/amf/authorization/amf-basic-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-basic-authorization.js.map +1 -1
- package/dist/define/amf/authorization/amf-bearer-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-bearer-authorization.js.map +1 -1
- package/dist/define/amf/authorization/amf-oauth2-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-oauth2-authorization.js.map +1 -1
- package/dist/define/amf/authorization/amf-oidc-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-oidc-authorization.js.map +1 -1
- package/dist/define/amf/authorization/amf-passthrough-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-passthrough-authorization.js.map +1 -1
- package/dist/define/amf/authorization/amf-ramlcustom-authorization.js +1 -1
- package/dist/define/amf/authorization/amf-ramlcustom-authorization.js.map +1 -1
- package/dist/define/authorization/apikey-authorization.js +1 -1
- package/dist/define/authorization/apikey-authorization.js.map +1 -1
- package/dist/define/authorization/basic-authorization.js +1 -1
- package/dist/define/authorization/basic-authorization.js.map +1 -1
- package/dist/define/authorization/bearer-authorization.js +1 -1
- package/dist/define/authorization/bearer-authorization.js.map +1 -1
- package/dist/define/authorization/cc-authorization.js +1 -1
- package/dist/define/authorization/cc-authorization.js.map +1 -1
- package/dist/define/authorization/ntlm-authorization.js +1 -1
- package/dist/define/authorization/ntlm-authorization.js.map +1 -1
- package/dist/define/authorization/oauth2-authorization.js +1 -1
- package/dist/define/authorization/oauth2-authorization.js.map +1 -1
- package/dist/define/authorization/oidc-authorization.js +1 -1
- package/dist/define/authorization/oidc-authorization.js.map +1 -1
- package/dist/define/contextual-menu/contextual-menu.js +1 -1
- package/dist/define/contextual-menu/contextual-menu.js.map +1 -1
- package/dist/define/dialog/confirm-delete-dialog.js +1 -1
- package/dist/define/dialog/confirm-delete-dialog.js.map +1 -1
- package/dist/define/dialog/rename-dialog.js +1 -1
- package/dist/define/dialog/rename-dialog.js.map +1 -1
- package/dist/define/files/share-file.js +1 -1
- package/dist/define/files/share-file.js.map +1 -1
- package/dist/define/har/har-viewer.js +1 -1
- package/dist/define/har/har-viewer.js.map +1 -1
- package/dist/define/highlight/marked-highlight.js +1 -1
- package/dist/define/highlight/marked-highlight.js.map +1 -1
- package/dist/define/highlight/prism-highlight.js +1 -1
- package/dist/define/highlight/prism-highlight.js.map +1 -1
- package/dist/define/http/http-assertions.js +1 -1
- package/dist/define/http/http-assertions.js.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/define/http/http-body-multipart-editor.js +1 -1
- package/dist/define/http/http-body-multipart-editor.js.map +1 -1
- package/dist/define/http/http-body-text-editor.js +1 -1
- package/dist/define/http/http-body-text-editor.js.map +1 -1
- package/dist/define/http/http-body-urlencoded-editor.js +1 -1
- package/dist/define/http/http-body-urlencoded-editor.js.map +1 -1
- package/dist/define/http/http-headers-form.js +1 -1
- package/dist/define/http/http-headers-form.js.map +1 -1
- package/dist/define/http/http-log-body.js +1 -1
- package/dist/define/http/http-log-body.js.map +1 -1
- package/dist/define/http/http-log-headers.js +1 -1
- package/dist/define/http/http-log-headers.js.map +1 -1
- package/dist/define/http/http-log-timings.js +1 -1
- package/dist/define/http/http-log-timings.js.map +1 -1
- package/dist/define/http/http-request-config.js +1 -1
- package/dist/define/http/http-request-config.js.map +1 -1
- package/dist/define/http/http-request-editor.js +1 -1
- package/dist/define/http/http-request-editor.js.map +1 -1
- package/dist/define/http/http-request-log.js +1 -1
- package/dist/define/http/http-request-log.js.map +1 -1
- package/dist/define/http/http-snippets.js +1 -1
- package/dist/define/http/http-snippets.js.map +1 -1
- package/dist/define/http/http-url-input.js +1 -1
- package/dist/define/http/http-url-input.js.map +1 -1
- package/dist/define/http/http-url-params-form.js +1 -1
- package/dist/define/http/http-url-params-form.js.map +1 -1
- package/dist/define/http-project/http-project-request-history.js +1 -1
- package/dist/define/http-project/http-project-request-history.js.map +1 -1
- package/dist/define/http-project/http-project-request.js +2 -2
- package/dist/define/http-project/http-project-request.js.map +1 -1
- package/dist/define/http-project/project-navigation.js +1 -1
- package/dist/define/http-project/project-navigation.js.map +1 -1
- package/dist/define/http-project/project-run-report.js +1 -1
- package/dist/define/http-project/project-run-report.js.map +1 -1
- package/dist/define/http-project/project-runner.js +2 -2
- package/dist/define/http-project/project-runner.js.map +1 -1
- package/dist/define/layout/split-view.js +1 -1
- package/dist/define/layout/split-view.js.map +1 -1
- package/dist/define/schema-design/schema-design-navigation.js +1 -1
- package/dist/define/schema-design/schema-design-navigation.js.map +1 -1
- package/dist/define/schema-design/schema-namespace-selector.js +1 -1
- package/dist/define/schema-design/schema-namespace-selector.js.map +1 -1
- package/dist/define/ui/ui-button.js +1 -1
- package/dist/define/ui/ui-button.js.map +1 -1
- package/dist/define/ui/ui-chip.js +1 -1
- package/dist/define/ui/ui-chip.js.map +1 -1
- package/dist/define/ui/ui-collapse.js +1 -1
- package/dist/define/ui/ui-collapse.js.map +1 -1
- package/dist/define/ui/ui-dialog.js +1 -1
- package/dist/define/ui/ui-dialog.js.map +1 -1
- package/dist/define/ui/ui-dropdown-list.js +1 -1
- package/dist/define/ui/ui-dropdown-list.js.map +1 -1
- package/dist/define/ui/ui-icon-button.js +1 -1
- package/dist/define/ui/ui-icon-button.js.map +1 -1
- package/dist/define/ui/ui-icon.js +1 -1
- package/dist/define/ui/ui-icon.js.map +1 -1
- package/dist/define/ui/ui-list-item.js +1 -1
- package/dist/define/ui/ui-list-item.js.map +1 -1
- package/dist/define/ui/ui-list.js +1 -1
- package/dist/define/ui/ui-list.js.map +1 -1
- package/dist/define/ui/ui-listbox.js +1 -1
- package/dist/define/ui/ui-listbox.js.map +1 -1
- package/dist/define/ui/ui-progress.js +1 -1
- package/dist/define/ui/ui-progress.js.map +1 -1
- package/dist/define/ui/ui-segmented-button-set.js +1 -1
- package/dist/define/ui/ui-segmented-button-set.js.map +1 -1
- package/dist/define/ui/ui-segmented-button.js +1 -1
- package/dist/define/ui/ui-segmented-button.js.map +1 -1
- package/dist/define/ui/ui-snackbar.js +1 -1
- package/dist/define/ui/ui-snackbar.js.map +1 -1
- package/dist/define/ui/ui-tab.js +1 -1
- package/dist/define/ui/ui-tab.js.map +1 -1
- package/dist/define/ui/ui-tabs.js +1 -1
- package/dist/define/ui/ui-tabs.js.map +1 -1
- package/dist/directives/data-attr.js +0 -1
- package/dist/directives/data-attr.js.map +1 -1
- package/dist/elements/ApiElement.js +0 -7
- package/dist/elements/ApiElement.js.map +1 -1
- package/dist/elements/amf/ApiAnnotationDocument.element.js +0 -2
- package/dist/elements/amf/ApiAnnotationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiAuthorizationEditor.element.js +0 -32
- package/dist/elements/amf/ApiAuthorizationEditor.element.js.map +1 -1
- package/dist/elements/amf/ApiDocumentation.element.js +0 -91
- package/dist/elements/amf/ApiDocumentation.element.js.map +1 -1
- package/dist/elements/amf/ApiDocumentationBase.js +0 -9
- package/dist/elements/amf/ApiDocumentationBase.js.map +1 -1
- package/dist/elements/amf/ApiDocumentationDocument.element.js +0 -1
- package/dist/elements/amf/ApiDocumentationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiNavigation.element.js +0 -97
- package/dist/elements/amf/ApiNavigation.element.js.map +1 -1
- package/dist/elements/amf/ApiOperationDocument.element.js +0 -76
- package/dist/elements/amf/ApiOperationDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiParameterDocument.element.js +0 -3
- package/dist/elements/amf/ApiParameterDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiParametrizedSecurityScheme.element.js +0 -1
- package/dist/elements/amf/ApiParametrizedSecurityScheme.element.js.map +1 -1
- package/dist/elements/amf/ApiPayloadDocument.element.js +0 -1
- package/dist/elements/amf/ApiPayloadDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiRequest.element.js +0 -78
- package/dist/elements/amf/ApiRequest.element.js.map +1 -1
- package/dist/elements/amf/ApiRequestDocument.element.js +0 -38
- package/dist/elements/amf/ApiRequestDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiRequestEditor.element.js +0 -118
- package/dist/elements/amf/ApiRequestEditor.element.js.map +1 -1
- package/dist/elements/amf/ApiResourceDocument.element.js +0 -75
- package/dist/elements/amf/ApiResourceDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiResponseDocument.element.js +0 -17
- package/dist/elements/amf/ApiResponseDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiSchemaDocument.element.js +0 -28
- package/dist/elements/amf/ApiSchemaDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiSecurityDocument.element.js +0 -28
- package/dist/elements/amf/ApiSecurityDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiSecurityRequirementDocument.element.js +0 -1
- package/dist/elements/amf/ApiSecurityRequirementDocument.element.js.map +1 -1
- package/dist/elements/amf/ApiServerPicker.element.js +2 -65
- package/dist/elements/amf/ApiServerPicker.element.js.map +1 -1
- package/dist/elements/amf/ApiSummary.element.js +0 -26
- package/dist/elements/amf/ApiSummary.element.js.map +1 -1
- package/dist/elements/amf/authorization/AmfApiKey.js +0 -5
- package/dist/elements/amf/authorization/AmfApiKey.js.map +1 -1
- package/dist/elements/amf/authorization/AmfBasic.js +0 -4
- package/dist/elements/amf/authorization/AmfBasic.js.map +1 -1
- package/dist/elements/amf/authorization/AmfBearer.js +0 -4
- package/dist/elements/amf/authorization/AmfBearer.js.map +1 -1
- package/dist/elements/amf/authorization/AmfOauth2.js +0 -13
- package/dist/elements/amf/authorization/AmfOauth2.js.map +1 -1
- package/dist/elements/amf/authorization/AmfOidc.js +0 -4
- package/dist/elements/amf/authorization/AmfOidc.js.map +1 -1
- package/dist/elements/amf/authorization/AmfPassThrough.js +0 -6
- package/dist/elements/amf/authorization/AmfPassThrough.js.map +1 -1
- package/dist/elements/amf/authorization/AmfRamlCustom.js +0 -6
- package/dist/elements/amf/authorization/AmfRamlCustom.js.map +1 -1
- package/dist/elements/authorization/OAuth2Authorize.js +0 -14
- package/dist/elements/authorization/OAuth2Authorize.js.map +1 -1
- package/dist/elements/authorization/OidcAuthorize.js +0 -14
- package/dist/elements/authorization/OidcAuthorize.js.map +1 -1
- package/dist/elements/authorization/ui/ApiKeyAuthorization.js +0 -2
- package/dist/elements/authorization/ui/ApiKeyAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/Authorization.js +18 -32
- package/dist/elements/authorization/ui/Authorization.js.map +1 -1
- package/dist/elements/authorization/ui/CcAuthorization.js +1 -3
- package/dist/elements/authorization/ui/CcAuthorization.js.map +1 -1
- package/dist/elements/authorization/ui/OAuth2Authorization.js +21 -50
- package/dist/elements/authorization/ui/OAuth2Authorization.js.map +1 -1
- package/dist/elements/authorization/ui/OidcAuthorization.js +4 -6
- package/dist/elements/authorization/ui/OidcAuthorization.js.map +1 -1
- package/dist/elements/code/HttpSnippets.js +9 -8
- package/dist/elements/code/HttpSnippets.js.map +1 -1
- package/dist/elements/dialog/ConfirmDelete.js +0 -12
- package/dist/elements/dialog/ConfirmDelete.js.map +1 -1
- package/dist/elements/dialog/Rename.js +0 -6
- package/dist/elements/dialog/Rename.js.map +1 -1
- package/dist/elements/environment/EnvironmentEditor.js +8 -11
- package/dist/elements/environment/EnvironmentEditor.js.map +1 -1
- package/dist/elements/environment/ServerEditor.js +7 -45
- package/dist/elements/environment/ServerEditor.js.map +1 -1
- package/dist/elements/environment/VariablesEditor.js +7 -12
- package/dist/elements/environment/VariablesEditor.js.map +1 -1
- package/dist/elements/files/ShareFile.js +19 -57
- package/dist/elements/files/ShareFile.js.map +1 -1
- package/dist/elements/har/HarViewer.js +6 -7
- package/dist/elements/har/HarViewer.js.map +1 -1
- package/dist/elements/highlight/MarkedHighlight.js +4 -56
- package/dist/elements/highlight/MarkedHighlight.js.map +1 -1
- package/dist/elements/highlight/PrismHighlight.js +9 -18
- package/dist/elements/highlight/PrismHighlight.js.map +1 -1
- package/dist/elements/highlight/PrismHighlighter.js +4 -6
- package/dist/elements/highlight/PrismHighlighter.js.map +1 -1
- package/dist/elements/http/BodyEditor.js +21 -33
- package/dist/elements/http/BodyEditor.js.map +1 -1
- package/dist/elements/http/BodyMultipartEditor.js +17 -18
- package/dist/elements/http/BodyMultipartEditor.js.map +1 -1
- package/dist/elements/http/BodyTextEditor.js +2 -15
- package/dist/elements/http/BodyTextEditor.js.map +1 -1
- package/dist/elements/http/BodyUrlEncodedEditor.js +20 -21
- package/dist/elements/http/BodyUrlEncodedEditor.js.map +1 -1
- package/dist/elements/http/HeadersForm.js +16 -17
- package/dist/elements/http/HeadersForm.js.map +1 -1
- package/dist/elements/http/HttpAssertions.js +8 -6
- package/dist/elements/http/HttpAssertions.js.map +1 -1
- package/dist/elements/http/LogBody.js +10 -21
- package/dist/elements/http/LogBody.js.map +1 -1
- package/dist/elements/http/LogHeaders.js +4 -23
- package/dist/elements/http/LogHeaders.js.map +1 -1
- package/dist/elements/http/LogTimings.js +11 -13
- package/dist/elements/http/LogTimings.js.map +1 -1
- package/dist/elements/http/RequestConfigElement.js +7 -4
- package/dist/elements/http/RequestConfigElement.js.map +1 -1
- package/dist/elements/http/RequestEditor.js +54 -88
- package/dist/elements/http/RequestEditor.js.map +1 -1
- package/dist/elements/http/RequestLog.js +9 -14
- package/dist/elements/http/RequestLog.js.map +1 -1
- package/dist/elements/http/UrlInput.js +15 -25
- package/dist/elements/http/UrlInput.js.map +1 -1
- package/dist/elements/http/UrlParamsForm.js +16 -13
- package/dist/elements/http/UrlParamsForm.js.map +1 -1
- package/dist/elements/layout/LayoutManager.js +16 -24
- package/dist/elements/layout/LayoutManager.js.map +1 -1
- package/dist/elements/layout/LayoutPanelElement.js +17 -23
- package/dist/elements/layout/LayoutPanelElement.js.map +1 -1
- package/dist/elements/layout/SplitItem.js +4 -12
- package/dist/elements/layout/SplitItem.js.map +1 -1
- package/dist/elements/layout/SplitLayout.js +18 -24
- package/dist/elements/layout/SplitLayout.js.map +1 -1
- package/dist/elements/layout/SplitPanel.js +10 -16
- package/dist/elements/layout/SplitPanel.js.map +1 -1
- package/dist/elements/layout/SplitView.js +17 -26
- package/dist/elements/layout/SplitView.js.map +1 -1
- package/dist/elements/navigation/AppNavigationElement.js +8 -47
- package/dist/elements/navigation/AppNavigationElement.js.map +1 -1
- package/dist/elements/navigation/AppNavigationItemElement.js +19 -24
- package/dist/elements/navigation/AppNavigationItemElement.js.map +1 -1
- package/dist/elements/project/HttpProjectRequest.js +0 -38
- package/dist/elements/project/HttpProjectRequest.js.map +1 -1
- package/dist/elements/project/HttpProjectRequestHistory.js +9 -35
- package/dist/elements/project/HttpProjectRequestHistory.js.map +1 -1
- package/dist/elements/project/ProjectNavigation.js +0 -4
- package/dist/elements/project/ProjectNavigation.js.map +1 -1
- package/dist/elements/project/ProjectRunReport.js +4 -15
- package/dist/elements/project/ProjectRunReport.js.map +1 -1
- package/dist/elements/project/ProjectRunner.js +2 -47
- package/dist/elements/project/ProjectRunner.js.map +1 -1
- package/dist/elements/schema-design/AssociationFormElement.js +0 -13
- package/dist/elements/schema-design/AssociationFormElement.js.map +1 -1
- package/dist/elements/schema-design/DataEntityEditorElement.js +0 -22
- package/dist/elements/schema-design/DataEntityEditorElement.js.map +1 -1
- package/dist/elements/schema-design/DataModelVisualizationElement.js +0 -16
- package/dist/elements/schema-design/DataModelVisualizationElement.js.map +1 -1
- package/dist/elements/schema-design/DataSchemaDocument.js +0 -36
- package/dist/elements/schema-design/DataSchemaDocument.js.map +1 -1
- package/dist/elements/schema-design/EntityFormElement.js +0 -18
- package/dist/elements/schema-design/EntityFormElement.js.map +1 -1
- package/dist/elements/schema-design/PropertyFormElement.js +0 -12
- package/dist/elements/schema-design/PropertyFormElement.js.map +1 -1
- package/dist/elements/schema-design/SchemaDesignNavigation.js +0 -9
- package/dist/elements/schema-design/SchemaDesignNavigation.js.map +1 -1
- package/dist/elements/schema-design/SchemaNamespaceSelector.js +0 -9
- package/dist/elements/schema-design/SchemaNamespaceSelector.js.map +1 -1
- package/dist/elements/user/UserAvatarElement.js +0 -9
- package/dist/elements/user/UserAvatarElement.js.map +1 -1
- package/dist/events/http-client/models/CertificatesEvents.js +2 -2
- package/dist/events/http-client/models/CertificatesEvents.js.map +1 -1
- package/dist/http-client/idb/Base.js +5 -10
- package/dist/http-client/idb/Base.js.map +1 -1
- package/dist/http-client/idb/LegacyMockedStore.js +0 -1
- package/dist/http-client/idb/LegacyMockedStore.js.map +1 -1
- package/dist/http-client/idb/MockedStore.js +3 -1
- package/dist/http-client/idb/MockedStore.js.map +1 -1
- package/dist/http-client/store/DataImportProcessor.js +0 -3
- package/dist/http-client/store/DataImportProcessor.js.map +1 -1
- package/dist/http-client/store/HttpClientIdbDatabase.js +8 -7
- package/dist/http-client/store/HttpClientIdbDatabase.js.map +1 -1
- package/dist/http-client/store/IdbThread.js +23 -20
- package/dist/http-client/store/IdbThread.js.map +1 -1
- package/dist/http-client/store/idb/IdbProjectUi.js +4 -1
- package/dist/http-client/store/idb/IdbProjectUi.js.map +1 -1
- package/dist/http-client/store/idb/IdbStore.js +0 -2
- package/dist/http-client/store/idb/IdbStore.js.map +1 -1
- package/dist/http-client/store/idb/IdbUrlHistory.js +4 -1
- package/dist/http-client/store/idb/IdbUrlHistory.js.map +1 -1
- package/dist/http-client/store/idb/IdbWsHistory.js +4 -1
- package/dist/http-client/store/idb/IdbWsHistory.js.map +1 -1
- package/dist/lib/chart/HttpHistoryChart.js +7 -8
- package/dist/lib/chart/HttpHistoryChart.js.map +1 -1
- package/dist/mixins/FileDropMixin.js +0 -1
- package/dist/mixins/FileDropMixin.js.map +1 -1
- package/dist/mixins/RenderableMixin.js +11 -15
- package/dist/mixins/RenderableMixin.js.map +1 -1
- package/dist/pages/ApplicationScreen.js +34 -55
- package/dist/pages/ApplicationScreen.js.map +1 -1
- package/dist/pages/api-client/ApiClient.screen.js +11 -20
- package/dist/pages/api-client/ApiClient.screen.js.map +1 -1
- package/dist/pages/api-client/Authenticate.screen.js +4 -6
- package/dist/pages/api-client/Authenticate.screen.js.map +1 -1
- package/dist/pages/api-client/StoreConfig.screen.js +21 -37
- package/dist/pages/api-client/StoreConfig.screen.js.map +1 -1
- package/dist/pages/api-client/Telemetry.screen.js +1 -2
- package/dist/pages/api-client/Telemetry.screen.js.map +1 -1
- package/dist/pages/api-client/pages/Files.page.js +6 -27
- package/dist/pages/api-client/pages/Files.page.js.map +1 -1
- package/dist/pages/api-client/pages/Settings.page.js +2 -4
- package/dist/pages/api-client/pages/Settings.page.js.map +1 -1
- package/dist/pages/api-client/pages/Trash.page.js +2 -13
- package/dist/pages/api-client/pages/Trash.page.js.map +1 -1
- package/dist/pages/demo/DemoPage.d.ts.map +1 -1
- package/dist/pages/demo/DemoPage.js +25 -24
- package/dist/pages/demo/DemoPage.js.map +1 -1
- package/dist/pages/http-project/HttpProject.screen.js +25 -35
- package/dist/pages/http-project/HttpProject.screen.js.map +1 -1
- package/dist/pages/schema-design/SchemaDesigner.screen.js +14 -27
- package/dist/pages/schema-design/SchemaDesigner.screen.js.map +1 -1
- package/dist/store/HttpStore.js +0 -3
- package/dist/store/HttpStore.js.map +1 -1
- package/dist/store/UserCache.js +5 -5
- package/dist/store/UserCache.js.map +1 -1
- package/dist/ui/UiElement.js +4 -5
- package/dist/ui/UiElement.js.map +1 -1
- package/dist/ui/button/SegmentedButton.js +9 -11
- package/dist/ui/button/SegmentedButton.js.map +1 -1
- package/dist/ui/button/SegmentedButtonsSet.js +6 -7
- package/dist/ui/button/SegmentedButtonsSet.js.map +1 -1
- package/dist/ui/button/UiButton.js +17 -39
- package/dist/ui/button/UiButton.js.map +1 -1
- package/dist/ui/button/UiIconButton.js +9 -35
- package/dist/ui/button/UiIconButton.js.map +1 -1
- package/dist/ui/chip/UiChip.js +9 -49
- package/dist/ui/chip/UiChip.js.map +1 -1
- package/dist/ui/collapse/UiCollapse.js +15 -20
- package/dist/ui/collapse/UiCollapse.js.map +1 -1
- package/dist/ui/controllers/ActionController.js +143 -144
- package/dist/ui/controllers/ActionController.js.map +1 -1
- package/dist/ui/controllers/RadioSelectionController.js +0 -1
- package/dist/ui/controllers/RadioSelectionController.js.map +1 -1
- package/dist/ui/date/DateTime.js +3 -3
- package/dist/ui/date/DateTime.js.map +1 -1
- package/dist/ui/dialog/UiDialog.d.ts +1 -1
- package/dist/ui/dialog/UiDialog.d.ts.map +1 -1
- package/dist/ui/dialog/UiDialog.js +19 -41
- package/dist/ui/dialog/UiDialog.js.map +1 -1
- package/dist/ui/effects/ripple.js +20 -18
- package/dist/ui/effects/ripple.js.map +1 -1
- package/dist/ui/effects/rippleDirective.js +6 -7
- package/dist/ui/effects/rippleDirective.js.map +1 -1
- package/dist/ui/icons/UiIcon.js +4 -3
- package/dist/ui/icons/UiIcon.js.map +1 -1
- package/dist/ui/input/CheckboxElement.js +12 -10
- package/dist/ui/input/CheckboxElement.js.map +1 -1
- package/dist/ui/input/CheckedElement.js +2 -13
- package/dist/ui/input/CheckedElement.js.map +1 -1
- package/dist/ui/input/Input.js +169 -234
- package/dist/ui/input/Input.js.map +1 -1
- package/dist/ui/input/RadioElement.js +13 -11
- package/dist/ui/input/RadioElement.js.map +1 -1
- package/dist/ui/input/SwitchElement.js +0 -18
- package/dist/ui/input/SwitchElement.js.map +1 -1
- package/dist/ui/input/TextAreaElement.js +0 -15
- package/dist/ui/input/TextAreaElement.js.map +1 -1
- package/dist/ui/list/DividerElement.js +5 -10
- package/dist/ui/list/DividerElement.js.map +1 -1
- package/dist/ui/list/UiDropdownList.js +7 -48
- package/dist/ui/list/UiDropdownList.js.map +1 -1
- package/dist/ui/list/UiList.js +3 -15
- package/dist/ui/list/UiList.js.map +1 -1
- package/dist/ui/list/UiListItem.js +4 -17
- package/dist/ui/list/UiListItem.js.map +1 -1
- package/dist/ui/list/UiListbox.js +0 -1
- package/dist/ui/list/UiListbox.js.map +1 -1
- package/dist/ui/notification/SnackNotifications.js +1 -2
- package/dist/ui/notification/SnackNotifications.js.map +1 -1
- package/dist/ui/notification/Snackbar.js +27 -51
- package/dist/ui/notification/Snackbar.js.map +1 -1
- package/dist/ui/progress/Range.js +24 -23
- package/dist/ui/progress/Range.js.map +1 -1
- package/dist/ui/progress/UiProgress.js +0 -11
- package/dist/ui/progress/UiProgress.js.map +1 -1
- package/dist/ui/table/DataTable.js +7 -12
- package/dist/ui/table/DataTable.js.map +1 -1
- package/dist/ui/tabs/UiTab.js +24 -25
- package/dist/ui/tabs/UiTab.js.map +1 -1
- package/dist/ui/tabs/UiTabs.js +21 -35
- package/dist/ui/tabs/UiTabs.js.map +1 -1
- package/dist/visualization/elements/VizWorkspaceElement.js +12 -21
- package/dist/visualization/elements/VizWorkspaceElement.js.map +1 -1
- package/dist/visualization/lib/AssociationAnchors.js +16 -28
- package/dist/visualization/lib/AssociationAnchors.js.map +1 -1
- package/dist/visualization/lib/Point.js +0 -2
- package/dist/visualization/lib/Point.js.map +1 -1
- package/dist/visualization/lib/SelectionManager.js +10 -11
- package/dist/visualization/lib/SelectionManager.js.map +1 -1
- package/dist/visualization/lib/WorkspaceAlignment.js +0 -1
- package/dist/visualization/lib/WorkspaceAlignment.js.map +1 -1
- package/dist/visualization/lib/WorkspaceDebugging.js +5 -8
- package/dist/visualization/lib/WorkspaceDebugging.js.map +1 -1
- package/dist/visualization/lib/WorkspaceEdges.js +17 -19
- package/dist/visualization/lib/WorkspaceEdges.js.map +1 -1
- package/dist/visualization/lib/WorkspaceGestures.js +0 -3
- package/dist/visualization/lib/WorkspaceGestures.js.map +1 -1
- package/dist/visualization/lib/WorkspaceSizing.js +4 -6
- package/dist/visualization/lib/WorkspaceSizing.js.map +1 -1
- package/dist/visualization/lib/lines/RectilinearLine.js +8 -34
- package/dist/visualization/lib/lines/RectilinearLine.js.map +1 -1
- package/dist/visualization/lib/tips/RectilinearTip.js +0 -1
- package/dist/visualization/lib/tips/RectilinearTip.js.map +1 -1
- package/dist/visualization/lib/tips/TipArtist.js +0 -3
- package/dist/visualization/lib/tips/TipArtist.js.map +1 -1
- package/dist/visualization/plugin/dnd/DragAndDropPlugin.js +3 -5
- package/dist/visualization/plugin/dnd/DragAndDropPlugin.js.map +1 -1
- package/dist/visualization/plugin/group-selection/GroupSelection.js +19 -19
- package/dist/visualization/plugin/group-selection/GroupSelection.js.map +1 -1
- package/dist/visualization/plugin/positioning/WorkspaceLayout.js +21 -38
- package/dist/visualization/plugin/positioning/WorkspaceLayout.js.map +1 -1
- package/package.json +3 -2
- package/src/pages/demo/DemoPage.ts +12 -11
- package/src/ui/dialog/UiDialog.ts +6 -4
- package/test/ui/dialog/UiDialog.test.ts +236 -0
- package/tsconfig.json +2 -2
- package/demo/themes/default.css +0 -0
- package/demo/themes/m3/theme.dark.css +0 -40
- package/demo/themes/m3/theme.light.css +0 -40
- package/demo/themes/m3/tokens.css +0 -291
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaDesignNavigation.js","sourceRoot":"","sources":["../../../src/elements/schema-design/SchemaDesignNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { \n DataEntity,\n DataEntityKind,\n DataModel,\n DataModelKind,\n DataNamespace,\n DataNamespaceKind,\n} from '@api-client/core/build/browser.js';\nimport AppNavigation from '../navigation/AppNavigationElement.js';\nimport { Events } from '../../events/Events.js';\nimport '../../define/ui/ui-icon.js';\n\nexport default class SchemaDesignNavigation extends AppNavigation {\n /**\n * The instance of the root DataNamespace.\n */\n @property({ type: Object }) root?: DataNamespace;\n\n /**\n * The key of the selected namespace.\n */\n @property({ type: String }) parentNamespace?: string;\n\n @state() protected _nsSelectorOpened?: boolean;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.setAttribute('aria-label', 'Schema model');\n }\n\n protected _toggleNsSelector(): void {\n this._nsSelectorOpened = !this._nsSelectorOpened;\n }\n\n protected override _commitName(key: string, kind: string, name: string): void {\n const { root } = this;\n if (!root) {\n return;\n }\n if (!name) {\n return;\n }\n if (kind === DataNamespaceKind) {\n const object = key === root.key ? root : root.findNamespace(key);\n if (!object) {\n throw new Error(`Invalid state. Namespace not found.`);\n }\n object.info.name = name;\n } else if (kind === DataModelKind) {\n const object = root.findDataModel(key);\n if (!object) {\n throw new Error(`Invalid state. Data model not found.`);\n }\n object.info.name = name;\n } else if (kind === DataEntityKind) {\n const object = root.definitions.entities.find(e => e.key === key);\n if (!object) {\n throw new Error(`Invalid state. Entity not found.`);\n }\n object.info.name = name;\n } else {\n throw new Error(`Invalid state. Unknown kind.`);\n }\n this.edited = undefined;\n Events.SchemaDesign.changed(this);\n Events.SchemaDesign.State.nameChanged(key, kind, this);\n }\n\n override render(): TemplateResult | string {\n const { root } = this;\n if (!root) {\n return html``;\n }\n const hasChildren = root.items.some(i => [DataNamespaceKind, DataModelKind].includes(i.kind));\n if (!hasChildren) {\n return this.renderEmptyInfo();\n }\n return html`\n <div class=\"headline\">Namespace</div>\n ${this._namespaceTreeTemplate(root)}\n `;\n }\n\n protected renderEmptyInfo(): TemplateResult {\n return html`\n <div class=\"empty-view\">\n <p class=\"empty-message\">There are no schemas to render.</p>\n <p class=\"info\">Right-click here to create your first data model.</p>\n </div>\n `;\n }\n\n protected _namespaceTreeTemplate(root: DataNamespace): TemplateResult {\n const namespaces = root.listNamespaces();\n const dataModels = root.listDataModels();\n const contents: TemplateResult[] = [];\n namespaces.forEach(ns => {\n contents.push(this._namespaceItemTemplate(ns));\n });\n dataModels.forEach(ns => {\n contents.push(this._dataModelItemTemplate(ns));\n });\n\n return this._outerListTemplate(contents);\n }\n\n protected _nsChildrenTemplate(current: DataNamespace): TemplateResult {\n const namespaces = current.listNamespaces();\n const dataModels = current.listDataModels();\n const contents: TemplateResult[] = [];\n namespaces.forEach(ns => {\n contents.push(this._namespaceItemTemplate(ns));\n });\n dataModels.forEach(ns => {\n contents.push(this._dataModelItemTemplate(ns));\n });\n return this._parentListItemTemplate(current.key, current.kind, current.info.name || 'Unnamed namespace', contents, {\n parentIcon: 'schemaNamespace',\n });\n }\n\n protected _namespaceItemTemplate(item: DataNamespace): TemplateResult {\n const hasChildren = item.items.some(i => [DataNamespaceKind, DataModelKind].includes(i.kind));\n if (hasChildren) {\n return this._nsChildrenTemplate(item);\n }\n const label = item.info.renderLabel;\n const content = this._itemContentTemplate('schemaNamespace', label);\n return this._listItemTemplate(item.key, item.kind, label, content);\n }\n\n protected _dataModelItemTemplate(current: DataModel): TemplateResult {\n const hasChildren = !!current.entities.length;\n const label = current.info.renderLabel;\n if (!hasChildren) {\n const content = this._itemContentTemplate('schemaModel', label);\n return this._listItemTemplate(current.key, current.kind, label, content);\n }\n const entities = current.entities.map(i => this._entityItemTemplate(i));\n return this._parentListItemTemplate(current.key, current.kind, label, entities, {\n parentIcon: 'schemaModel',\n });\n }\n\n protected _entityItemTemplate(item: DataEntity): TemplateResult {\n const label = item.info.renderLabel;\n const content = this._itemContentTemplate('schemaEntity', label);\n return this._listItemTemplate(item.key, item.kind, label, content, {\n draggable: true,\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SchemaDesignNavigation.js","sourceRoot":"","sources":["../../../src/elements/schema-design/SchemaDesignNavigation.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { \n DataEntity,\n DataEntityKind,\n DataModel,\n DataModelKind,\n DataNamespace,\n DataNamespaceKind,\n} from '@api-client/core/build/browser.js';\nimport AppNavigation from '../navigation/AppNavigationElement.js';\nimport { Events } from '../../events/Events.js';\nimport '../../define/ui/ui-icon.js';\n\nexport default class SchemaDesignNavigation extends AppNavigation {\n /**\n * The instance of the root DataNamespace.\n */\n @property({ type: Object }) root?: DataNamespace;\n\n /**\n * The key of the selected namespace.\n */\n @property({ type: String }) parentNamespace?: string;\n\n @state() protected _nsSelectorOpened?: boolean;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.setAttribute('aria-label', 'Schema model');\n }\n\n protected _toggleNsSelector(): void {\n this._nsSelectorOpened = !this._nsSelectorOpened;\n }\n\n protected override _commitName(key: string, kind: string, name: string): void {\n const { root } = this;\n if (!root) {\n return;\n }\n if (!name) {\n return;\n }\n if (kind === DataNamespaceKind) {\n const object = key === root.key ? root : root.findNamespace(key);\n if (!object) {\n throw new Error(`Invalid state. Namespace not found.`);\n }\n object.info.name = name;\n } else if (kind === DataModelKind) {\n const object = root.findDataModel(key);\n if (!object) {\n throw new Error(`Invalid state. Data model not found.`);\n }\n object.info.name = name;\n } else if (kind === DataEntityKind) {\n const object = root.definitions.entities.find(e => e.key === key);\n if (!object) {\n throw new Error(`Invalid state. Entity not found.`);\n }\n object.info.name = name;\n } else {\n throw new Error(`Invalid state. Unknown kind.`);\n }\n this.edited = undefined;\n Events.SchemaDesign.changed(this);\n Events.SchemaDesign.State.nameChanged(key, kind, this);\n }\n\n override render(): TemplateResult | string {\n const { root } = this;\n if (!root) {\n return html``;\n }\n const hasChildren = root.items.some(i => [DataNamespaceKind, DataModelKind].includes(i.kind));\n if (!hasChildren) {\n return this.renderEmptyInfo();\n }\n return html`\n <div class=\"headline\">Namespace</div>\n ${this._namespaceTreeTemplate(root)}\n `;\n }\n\n protected renderEmptyInfo(): TemplateResult {\n return html`\n <div class=\"empty-view\">\n <p class=\"empty-message\">There are no schemas to render.</p>\n <p class=\"info\">Right-click here to create your first data model.</p>\n </div>\n `;\n }\n\n protected _namespaceTreeTemplate(root: DataNamespace): TemplateResult {\n const namespaces = root.listNamespaces();\n const dataModels = root.listDataModels();\n const contents: TemplateResult[] = [];\n namespaces.forEach(ns => {\n contents.push(this._namespaceItemTemplate(ns));\n });\n dataModels.forEach(ns => {\n contents.push(this._dataModelItemTemplate(ns));\n });\n\n return this._outerListTemplate(contents);\n }\n\n protected _nsChildrenTemplate(current: DataNamespace): TemplateResult {\n const namespaces = current.listNamespaces();\n const dataModels = current.listDataModels();\n const contents: TemplateResult[] = [];\n namespaces.forEach(ns => {\n contents.push(this._namespaceItemTemplate(ns));\n });\n dataModels.forEach(ns => {\n contents.push(this._dataModelItemTemplate(ns));\n });\n return this._parentListItemTemplate(current.key, current.kind, current.info.name || 'Unnamed namespace', contents, {\n parentIcon: 'schemaNamespace',\n });\n }\n\n protected _namespaceItemTemplate(item: DataNamespace): TemplateResult {\n const hasChildren = item.items.some(i => [DataNamespaceKind, DataModelKind].includes(i.kind));\n if (hasChildren) {\n return this._nsChildrenTemplate(item);\n }\n const label = item.info.renderLabel;\n const content = this._itemContentTemplate('schemaNamespace', label);\n return this._listItemTemplate(item.key, item.kind, label, content);\n }\n\n protected _dataModelItemTemplate(current: DataModel): TemplateResult {\n const hasChildren = !!current.entities.length;\n const label = current.info.renderLabel;\n if (!hasChildren) {\n const content = this._itemContentTemplate('schemaModel', label);\n return this._listItemTemplate(current.key, current.kind, label, content);\n }\n const entities = current.entities.map(i => this._entityItemTemplate(i));\n return this._parentListItemTemplate(current.key, current.kind, label, entities, {\n parentIcon: 'schemaModel',\n });\n }\n\n protected _entityItemTemplate(item: DataEntity): TemplateResult {\n const label = item.info.renderLabel;\n const content = this._itemContentTemplate('schemaEntity', label);\n return this._listItemTemplate(item.key, item.kind, label, content, {\n draggable: true,\n });\n }\n}\n"]}
|
|
@@ -10,15 +10,6 @@ import '../../define/ui/ui-icon.js';
|
|
|
10
10
|
* @fires open - When the element is "open" property change internally through user interaction.
|
|
11
11
|
*/
|
|
12
12
|
export default class SchemaNamespaceSelector extends AppNavigation {
|
|
13
|
-
/**
|
|
14
|
-
* The instance of the root DataNamespace.
|
|
15
|
-
*/
|
|
16
|
-
root;
|
|
17
|
-
/**
|
|
18
|
-
* When opened the selector render the selection tree, not only the label.
|
|
19
|
-
* @attr
|
|
20
|
-
*/
|
|
21
|
-
opened;
|
|
22
13
|
connectedCallback() {
|
|
23
14
|
super.connectedCallback();
|
|
24
15
|
this.setAttribute('aria-label', 'Namespace selection');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaNamespaceSelector.js","sourceRoot":"","sources":["../../../src/elements/schema-design/SchemaNamespaceSelector.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,IAAI,EAAkB,MAAM,KAAK,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,aAAa,MAAM,uCAAuC,CAAC;AAClE,OAAO,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,aAAa;
|
|
1
|
+
{"version":3,"file":"SchemaNamespaceSelector.js","sourceRoot":"","sources":["../../../src/elements/schema-design/SchemaNamespaceSelector.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataNamespace, DataNamespaceKind } from \"@api-client/core/build/browser.js\";\nimport { html, TemplateResult } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport AppNavigation from \"../navigation/AppNavigationElement.js\";\nimport '../../define/ui/ui-icon.js';\n\n/**\n * An element that specializes in rendering a navigation dropdown for the schema / data namespace.\n * \n * @fires open - When the element is \"open\" property change internally through user interaction.\n */\nexport default class SchemaNamespaceSelector extends AppNavigation {\n /**\n * The instance of the root DataNamespace.\n */\n @property({ type: Object }) root?: DataNamespace;\n\n /**\n * When opened the selector render the selection tree, not only the label.\n * @attr\n */\n @property({ type: Boolean, reflect: true }) opened?: boolean;\n\n override connectedCallback(): void {\n super.connectedCallback();\n this.setAttribute('aria-label', 'Namespace selection');\n }\n\n protected _toggleNsSelector(): void {\n this.opened = !this.opened;\n this.dispatchEvent(new Event('open'));\n }\n\n override render(): TemplateResult | string {\n const { root, selected, opened } = this;\n if (!root) {\n return html``;\n }\n const parent = selected ? root.findNamespace(selected) : root;\n if (!parent) {\n // TODO: This should still render but with the invalid selection state so the user\n // can change the selection.\n return html``;\n }\n return html`\n <div class=\"section-title\">Namespace</div>\n <button class=\"selector-label\" @click=\"${this._toggleNsSelector}\">\n <span class=\"label\">${parent.info.name}</span>\n <ui-icon icon=\"arrowDropDown\" class=\"toggle-icon\"></ui-icon>\n </button>\n\n ${opened ? this._namespaceTreeTemplate(root) : ''}\n `;\n }\n\n protected _namespaceTreeTemplate(root: DataNamespace): TemplateResult {\n const children = root.listNamespaces();\n const contents = children.map(item => this._nsItemTemplate(item));\n return this._outerListTemplate(contents);\n }\n\n protected _nsChildrenTemplate(item: DataNamespace): TemplateResult {\n const children = item.listNamespaces();\n const contents = children.map(current => this._nsItemTemplate(current));\n return this._parentListItemTemplate(item.key, item.kind, item.info.name || 'Unnamed namespace', contents);\n }\n\n protected _nsItemTemplate(item: DataNamespace): TemplateResult {\n const hasChildren = item.items.some(i => i.kind === DataNamespaceKind);\n if (hasChildren) {\n return this._nsChildrenTemplate(item);\n }\n const label = item.info.name || 'Unnamed namespace';\n const content = this._itemContentTemplate('schemaNamespace', label);\n return this._listItemTemplate(item.key, item.kind, label, content);\n }\n}\n"]}
|
|
@@ -44,15 +44,6 @@ export default class UserAvatarElement extends LitElement {
|
|
|
44
44
|
}
|
|
45
45
|
`;
|
|
46
46
|
}
|
|
47
|
-
_user;
|
|
48
|
-
/**
|
|
49
|
-
* Set with the user. The computed user initials.
|
|
50
|
-
*/
|
|
51
|
-
userInitials;
|
|
52
|
-
/**
|
|
53
|
-
* The URL to the user picture.
|
|
54
|
-
*/
|
|
55
|
-
userPicture;
|
|
56
47
|
/**
|
|
57
48
|
* @attribute
|
|
58
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserAvatarElement.js","sourceRoot":"","sources":["../../../src/elements/user/UserAvatarElement.ts"],"names":[],"mappings":";AAAA,2CAA2C;AAC3C;;;EAGE;AACF,OAAO,EAAE,IAAI,EAAkB,UAAU,EAAE,GAAG,EAAa,MAAM,KAAK,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAGpD,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAU;IACvD,MAAM,KAAc,MAAM;QACxB,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAkCT,CAAC;IACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"UserAvatarElement.js","sourceRoot":"","sources":["../../../src/elements/user/UserAvatarElement.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable class-methods-use-this */\n/*\nCopyright 2022 Pawel Psztyc\nLicensed under the CC-BY 2.0\n*/\nimport { html, TemplateResult, LitElement, css, CSSResult } from 'lit';\nimport { property, state } from 'lit/decorators.js';\nimport { IUser } from '@api-client/core/build/browser.js';\n\nexport default class UserAvatarElement extends LitElement {\n static override get styles(): CSSResult {\n return css`\n :host {\n display: inline-block;\n width: 40px;\n height: 40px;\n }\n\n .user-icon,\n .avatar-initials {\n background-color: var(--user-avatar-initials-background-color, #0540F2);\n color: var(--user-avatar-initials-color, #fff);\n }\n\n .avatar-initials {\n border-radius: 50%;\n text-transform: uppercase;\n font-size: large;\n border: 1px #0d47a1 solid;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .user-picture {\n border-radius: 50%;\n border: 1px #0d47a1 solid;\n }\n\n .user-icon {\n width: inherit;\n height: inherit;\n }\n `;\n }\n\n private _user?: IUser;\n\n /**\n * Set with the user. The computed user initials.\n */\n @state() protected userInitials?: string;\n\n /**\n * The URL to the user picture.\n */\n @state() protected userPicture?: string;\n\n /**\n * @attribute\n */\n @property({ type: Object })\n get user(): IUser | undefined {\n return this._user;\n }\n\n set user(value: IUser | undefined) {\n const old = this._user;\n if (old === value) {\n return;\n }\n if (old && value && old.key === value.key) {\n return;\n }\n this._user = value;\n this.requestUpdate('user', old);\n this._processUser(value);\n }\n\n protected _processUser(user?: IUser): void {\n if (user) {\n this.userInitials = this._readUserInitials(user);\n this.userPicture = user.picture && user.picture.url;\n } else {\n this.userInitials = undefined;\n this.userPicture = undefined;\n }\n }\n\n protected _readUserInitials(user: IUser): string | undefined {\n const { name } = user;\n if (!name) {\n return undefined;\n }\n const max = 2;\n const parts = name.split(/[\\s-]/).slice(0, max).filter(i => !!i).map(i => i[0]);\n return parts.join('');\n }\n\n protected _pictureError(): void {\n this.userPicture = undefined;\n }\n\n /**\n * @return Template result for an icon\n */\n override render(): TemplateResult {\n const { user, userPicture } = this;\n if (!user || user.key === 'default') {\n return html``;\n }\n if (userPicture) {\n return this.pictureTemplate(userPicture);\n }\n if (this.userInitials) {\n return this.nameTemplate(this.userInitials)\n }\n return this.nameTemplate('')\n }\n\n protected pictureTemplate(url: string): TemplateResult {\n return html`\n <img src=\"${url}\" alt=\"${this.userInitials || 'Thumb'}\" class=\"user-picture user-icon\" @error=\"${this._pictureError}\"/>\n `;\n }\n\n /**\n * Renders a bubble with user initials\n * @param initials The user initials\n */\n protected nameTemplate(initials: string): TemplateResult {\n return html`\n <span class=\"avatar-initials user-icon\">${initials}</span>\n `;\n }\n}\n"]}
|
|
@@ -14,7 +14,7 @@ export class CertificatesEvents {
|
|
|
14
14
|
target.dispatchEvent(e);
|
|
15
15
|
return e.detail.result;
|
|
16
16
|
}
|
|
17
|
-
static State = class {
|
|
17
|
+
static { this.State = class {
|
|
18
18
|
/**
|
|
19
19
|
* Dispatches an event after a client certificate was updated
|
|
20
20
|
*
|
|
@@ -35,6 +35,6 @@ export class CertificatesEvents {
|
|
|
35
35
|
const e = new ContextStateDeleteEvent(EventTypes.HttpClient.Model.Certificate.State.delete, record);
|
|
36
36
|
target.dispatchEvent(e);
|
|
37
37
|
}
|
|
38
|
-
};
|
|
38
|
+
}; }
|
|
39
39
|
}
|
|
40
40
|
//# sourceMappingURL=CertificatesEvents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CertificatesEvents.js","sourceRoot":"","sources":["../../../../src/events/http-client/models/CertificatesEvents.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAGL,gBAAgB,EAGhB,uBAAuB,EACvB,uBAAuB,EAExB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,OAAO,kBAAkB;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAA6B,EAAE,SAAsB,MAAM;QAC3E,MAAM,CAAC,GAAG,IAAI,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnF,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,CAAC,CAAC,MAAM,CAAC,MAAiE,CAAC;IACpF,CAAC;
|
|
1
|
+
{"version":3,"file":"CertificatesEvents.js","sourceRoot":"","sources":["../../../../src/events/http-client/models/CertificatesEvents.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAGL,gBAAgB,EAGhB,uBAAuB,EACvB,uBAAuB,EAExB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,MAAM,OAAO,kBAAkB;IAC7B;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAA6B,EAAE,SAAsB,MAAM;QAC3E,MAAM,CAAC,GAAG,IAAI,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnF,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,CAAC,CAAC,MAAM,CAAC,MAAiE,CAAC;IACpF,CAAC;aAEM,UAAK,GAAG;QACb;;;;;WAKG;QACH,MAAM,CAAC,MAAM,CAAC,MAA4C,EAAE,SAAsB,MAAM;YACtF,MAAM,CAAC,GAAG,IAAI,uBAAuB,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACpG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;QAED;;;;;WAKG;QACH,MAAM,CAAC,MAAM,CAAC,MAA2B,EAAE,SAAsB,MAAM;YACrE,MAAM,CAAC,GAAG,IAAI,uBAAuB,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACpG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;KACF,CAAA","sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { \n ContextChangeRecord, \n ContextDeleteRecord, \n ContextListEvent, \n ContextListResult, \n ContextSpaceListOptions, \n ContextStateDeleteEvent, \n ContextStateUpdateEvent, \n HttpCertificate \n} from '@api-client/core/build/browser.js';\nimport { EventTypes } from '../../EventTypes.js';\n\nexport class CertificatesEvents {\n /**\n * Dispatches an event to list the client certificates data.\n *\n * @param target A node on which to dispatch the event.\n * @param opts Query options.\n * @returns The list result.\n */\n static async list(opts: ContextSpaceListOptions, target: EventTarget = window): Promise<ContextListResult<HttpCertificate> | undefined> {\n const e = new ContextListEvent(EventTypes.HttpClient.Model.Certificate.list, opts);\n target.dispatchEvent(e);\n return e.detail.result as Promise<ContextListResult<HttpCertificate> | undefined>;\n }\n\n static State = class {\n /**\n * Dispatches an event after a client certificate was updated\n *\n * @param record Change record\n * @param target A node on which to dispatch the event.\n */\n static update(record: ContextChangeRecord<HttpCertificate>, target: EventTarget = window): void {\n const e = new ContextStateUpdateEvent(EventTypes.HttpClient.Model.Certificate.State.update, record);\n target.dispatchEvent(e);\n }\n\n /**\n * Dispatches an event after a client certificate was deleted\n *\n * @param record Certificate delete record.\n * @param target A node on which to dispatch the event.\n */\n static delete(record: ContextDeleteRecord, target: EventTarget = window): void {\n const e = new ContextStateDeleteEvent(EventTypes.HttpClient.Model.Certificate.State.delete, record);\n target.dispatchEvent(e);\n }\n }\n}\n"]}
|
|
@@ -23,16 +23,12 @@ import { openDB } from 'idb/with-async-ittr';
|
|
|
23
23
|
* - have the `key` property that is a unique identifier of the entity. if the entity has duplicated entity it will replace the previous entity.
|
|
24
24
|
*/
|
|
25
25
|
export class Base {
|
|
26
|
-
/**
|
|
27
|
-
* Set with `listen()` method or separately. When set the model dispatch events on this node.
|
|
28
|
-
* When not set the model does not dispatch events.
|
|
29
|
-
*/
|
|
30
|
-
eventsTarget = window;
|
|
31
|
-
/**
|
|
32
|
-
* The name of the store.
|
|
33
|
-
*/
|
|
34
|
-
name;
|
|
35
26
|
constructor(name) {
|
|
27
|
+
/**
|
|
28
|
+
* Set with `listen()` method or separately. When set the model dispatch events on this node.
|
|
29
|
+
* When not set the model does not dispatch events.
|
|
30
|
+
*/
|
|
31
|
+
this.eventsTarget = window;
|
|
36
32
|
this.name = name;
|
|
37
33
|
this._listHandler = this._listHandler.bind(this);
|
|
38
34
|
this._readHandler = this._readHandler.bind(this);
|
|
@@ -44,7 +40,6 @@ export class Base {
|
|
|
44
40
|
this._deleteBulkHandler = this._deleteBulkHandler.bind(this);
|
|
45
41
|
// this[deleteModelHandler] = this[deleteModelHandler].bind(this);
|
|
46
42
|
}
|
|
47
|
-
_db;
|
|
48
43
|
/**
|
|
49
44
|
* Opens the ARC store.
|
|
50
45
|
* @returns The reference to the database
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base.js","sourceRoot":"","sources":["../../../src/http-client/idb/Base.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n@license\nCopyright 2018 The Advanced REST client authors <arc@mulesoft.com>\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not\nuse this file except in compliance with the License. You may obtain a copy of\nthe License at\nhttp://www.apache.org/licenses/LICENSE-2.0\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\nWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\nLicense for the specific language governing permissions and limitations under\nthe License.\n*/\n\nimport { \n ContextChangeRecord, ContextDeleteBulkEvent, ContextDeleteEvent, ContextDeleteRecord, ContextListEvent, ContextListOptions, \n ContextListResult, ContextReadBulkEvent, ContextReadEvent, ContextUpdateBulkEvent, ContextUpdateEvent, Events as CoreEvents, \n IAuthorizationData, IBulkOperationResult, ICertificate, IHostRule, IUrl } from '@api-client/core/build/browser.js';\nimport { openDB, DBSchema, IDBPDatabase } from 'idb/with-async-ittr';\n\n/* eslint-disable class-methods-use-this */\n\n// export const deleteModelHandler = Symbol('deleteModelHandler');\n// export const notifyDestroyed = Symbol('notifyDestroyed');\n\nexport type StoreName = 'UrlHistory' | 'WsHistory' | 'AuthCache' | 'Certificates' | 'Hosts' | 'Environments';\n\nexport interface IBaseQueryOptions {\n /**\n * The number of records in the response.\n */\n limit?: number;\n /**\n * Whether to use the `descending` order.\n */\n descending?: boolean;\n /**\n * The key to start paginating from.\n */\n startKey?: string;\n /**\n * The number of records to skip before start capturing records.\n */\n skip?: number;\n}\n\nexport interface IEntityMeta {\n deleted?: boolean;\n}\n\nexport interface IStoredEntity<T = unknown> {\n meta: IEntityMeta;\n data: T;\n}\n\nexport interface IGetOptions {\n /**\n * Whether to return a deleted document.\n */\n deleted?: boolean;\n}\n\ninterface HttpClientDB extends DBSchema {\n UrlHistory: {\n key: string;\n value: IStoredEntity<IUrl>;\n },\n WsHistory: {\n key: string;\n value: IStoredEntity<IUrl>;\n },\n AuthCache: {\n key: string;\n value: IStoredEntity<IAuthorizationData>,\n },\n Certificates: {\n key: string;\n value: IStoredEntity<ICertificate>,\n },\n Hosts: {\n key: string;\n value: IStoredEntity<IHostRule>,\n },\n Environments: {\n key: string;\n value: IStoredEntity<unknown>,\n },\n}\n\n/**\n * A base class for all models.\n * \n * All models have to:\n * \n * - have the `key` property that is a unique identifier of the entity. if the entity has duplicated entity it will replace the previous entity.\n */\nexport class Base {\n /**\n * Set with `listen()` method or separately. When set the model dispatch events on this node.\n * When not set the model does not dispatch events.\n */\n eventsTarget: EventTarget = window;\n\n /**\n * The name of the store.\n */\n name: StoreName;\n\n constructor(name: StoreName) {\n this.name = name;\n\n this._listHandler = this._listHandler.bind(this);\n this._readHandler = this._readHandler.bind(this);\n this._readBulkHandler = this._readBulkHandler.bind(this);\n this._createHandler = this._createHandler.bind(this);\n this._updateHandler = this._updateHandler.bind(this);\n this._updateBulkHandler = this._updateBulkHandler.bind(this);\n this._deleteHandler = this._deleteHandler.bind(this);\n this._deleteBulkHandler = this._deleteBulkHandler.bind(this);\n\n // this[deleteModelHandler] = this[deleteModelHandler].bind(this);\n }\n\n protected _db?: IDBPDatabase<HttpClientDB>;\n\n /**\n * Opens the ARC store.\n * @returns The reference to the database\n */\n async open(): Promise<IDBPDatabase<HttpClientDB>> {\n if (this._db) {\n return this._db;\n }\n const dbResult = await openDB<HttpClientDB>('AdvancedRestClient', 1, {\n upgrade(db) {\n const stores: StoreName[] = [\n 'UrlHistory', 'WsHistory', 'AuthCache', 'Certificates', 'Hosts', 'Environments',\n ];\n const names = db.objectStoreNames;\n for (const name of stores) {\n if (!names.contains(name)) {\n db.createObjectStore(name, { keyPath: 'data.key' });\n }\n }\n },\n });\n this._db = dbResult;\n return dbResult;\n }\n\n /**\n * Database query options for pagination.\n */\n get defaultQueryOptions(): IBaseQueryOptions {\n return {\n limit: 25,\n descending: true,\n };\n }\n\n // /**\n // * Listens for the DOM events.\n // */\n // listen(node: EventTarget = window): void {\n // this.eventsTarget = node;\n // node.addEventListener(EventTypes.HttpClient.Model.destroy, this[deleteModelHandler] as EventListener);\n // }\n\n // /**\n // * Removes the DOM event listeners.\n // */\n // unlisten(node: EventTarget = window): void {\n // node.removeEventListener(EventTypes.HttpClient.Model.destroy, this[deleteModelHandler] as EventListener);\n // }\n\n /**\n * Handles any exception in the model in a unified way.\n * @param e An error object\n * @param noThrow If set the function will not throw error.\n * This allow to do the logic without stopping program.\n */\n protected _handleException(e: Error | unknown, noThrow?: boolean): void {\n let message;\n if (e instanceof Error) {\n message = e.message;\n } else {\n message = JSON.stringify(e);\n }\n if (this.eventsTarget) {\n CoreEvents.Telemetry.exception(message, true, this.eventsTarget);\n }\n if (!noThrow) {\n throw e;\n }\n }\n\n /**\n * Deletes current datastore.\n * Note that `name` property must be set before calling this function.\n */\n async deleteModel(): Promise<void> {\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n await store.clear();\n await tx.done;\n // this[notifyDestroyed](this.name);\n }\n\n // /**\n // * Notifies the application that the model has been removed and data destroyed.\n // *\n // * @param store The name of the deleted store\n // */\n // [notifyDestroyed](store: StoreName): void {\n // if (this.eventsTarget) {\n // Events.HttpClient.Model.destroyed(store, this.eventsTarget);\n // }\n // }\n\n // /**\n // * Handler for `destroy-model` custom event.\n // * Deletes current data when scheduled for deletion.\n // */\n // [deleteModelHandler](e: ModelDeleteEvent): void {\n // if (e.defaultPrevented) {\n // return;\n // }\n // const { stores, detail } = e;\n // if (!stores || !stores.length || !this.name) {\n // return;\n // }\n // /* istanbul ignore else */\n // if (!Array.isArray(detail.result)) {\n // detail.result = [] as Promise<void>[];\n // }\n // if (stores.indexOf(this.name) !== -1) {\n // const { result=[] } = detail;\n // result.push(this.deleteModel());\n // }\n // }\n\n /**\n * Checks if event can be processed giving it's cancellation status or if\n * it was dispatched by current element.\n * @param e Event to test\n * @returns True if event is already cancelled or dispatched by self.\n */\n protected _eventCancelled(e: Event): boolean {\n if (e.defaultPrevented) {\n return true;\n }\n if (!e.cancelable) {\n return true;\n }\n return false;\n }\n\n /**\n * Decodes passed page token back to the passed parameters object.\n * @param token The page token value.\n * @return Restored page query parameters or null if error\n */\n decodePageToken(token: string): IBaseQueryOptions | null {\n if (!token) {\n return null;\n }\n try {\n const decoded = atob(token);\n return JSON.parse(decoded);\n } catch (e) {\n return null;\n }\n }\n\n /**\n * Encodes page parameters into a page token.\n * @param params Parameters to encode\n * @returns Page token\n */\n encodePageToken(params: IBaseQueryOptions): string {\n const str = JSON.stringify(params);\n return btoa(str);\n }\n\n /**\n * Lists all objects in the store.\n *\n * @param opts Query options.\n * @returns A promise resolved to a list of entities.\n */\n async list(opts: ContextListOptions = {}): Promise<ContextListResult<unknown>> {\n const { limit, cursor } = opts;\n let queryOptions: IBaseQueryOptions | undefined;\n if (cursor) {\n const pageOptions = this.decodePageToken(cursor);\n if (pageOptions) {\n queryOptions = pageOptions;\n }\n }\n if (!queryOptions) {\n queryOptions = this.defaultQueryOptions;\n if (limit) {\n queryOptions.limit = limit;\n }\n }\n \n const db = await this.open();\n const items = await this._listEntities(db, this.name, queryOptions);\n let token;\n if (items.length) {\n const copy: IBaseQueryOptions = { ...queryOptions };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const { key } = (items[items.length - 1] as any);\n copy.skip = 1;\n copy.startKey = key as string;\n token = this.encodePageToken(copy);\n }\n return {\n items,\n cursor: token,\n }\n }\n\n protected async _listEntities(db: IDBPDatabase<HttpClientDB>, storeName: StoreName, opts: IBaseQueryOptions): Promise<unknown[]> {\n let adv = opts.skip || 0;\n const { descending, limit = 25, startKey } = opts;\n const tx = db.transaction(storeName, 'readonly');\n const dir = descending === true ? 'prev' : 'next';\n let keyFound = false;\n const items: unknown[] = [];\n for await (const cursor of tx.store.iterate(null, dir)) {\n const info = cursor.value;\n const { meta, data } = info;\n const { key } = data as { key: string };\n if (!key) {\n continue;\n }\n if (startKey && !keyFound) {\n if (key !== startKey) {\n continue;\n }\n keyFound = true;\n }\n if (adv) {\n cursor.advance(adv);\n adv = 0;\n continue;\n }\n if (meta && meta.deleted) {\n continue;\n }\n items.push(data);\n if (items.length >= limit) {\n break;\n }\n }\n return items;\n }\n\n /**\n * A specialized method to perform an update operation.\n * By default it calls `put()` which replaces the whole object.\n * Implement own logic that can perform a PATCH operation instead, if needed.\n * \n * @param value The object to update.\n */\n async update(value: unknown): Promise<ContextChangeRecord<unknown>> {\n return this.put(value);\n }\n\n async put(value: unknown): Promise<ContextChangeRecord<unknown>> {\n const typed = value as { key: string, kind?: string };\n if (!typed.key) {\n throw new Error(`Unable to process the value when inserting to ${this.name}: the key is missing.`);\n }\n const db = await this.open();\n const entity: IStoredEntity = {\n meta: {},\n data: value,\n };\n await db.put(this.name, entity);\n const result: ContextChangeRecord<unknown> = {\n key: typed.key,\n item: { ...typed },\n };\n if (typed.kind) {\n result.kind = typed.kind;\n }\n return result;\n }\n\n async putBulk(values: unknown[]): Promise<IBulkOperationResult<ContextChangeRecord<any>>> {\n if (!Array.isArray(values)) {\n throw new Error(`Unexpected argument. An array must be passed to \"putBulk()\" method.`)\n }\n if (!values.length) {\n return { items: [] };\n }\n const typed = values as { key: string, kind?: string }[];\n const invalid = typed.some(i => !i.key);\n if (invalid) {\n throw new Error(`Unable to process bulk values when inserting to ${this.name}: a key is missing.`);\n }\n const entities: IStoredEntity[] = [];\n const result: ContextChangeRecord<unknown>[] = [];\n\n typed.forEach((data) => {\n entities.push({\n meta: {},\n data,\n });\n const record: ContextChangeRecord<unknown> = {\n key: data.key,\n item: { ...data },\n }\n if (data.kind) {\n record.kind = data.kind;\n }\n result.push(record);\n });\n\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n await Promise.all(entities.map(e => store.put(e)));\n await tx.done;\n return { items: result };\n }\n\n async get(key: string, opts: IGetOptions = {}): Promise<unknown | undefined> {\n if (!key) {\n throw new Error(`The \"key\" argument is missing.`);\n }\n const db = await this.open();\n const value = await db.get(this.name, key);\n if (!value) {\n return undefined;\n }\n if (value.meta.deleted && !opts.deleted) {\n return undefined;\n }\n return value.data;\n }\n\n async getBulk(keys: string[], opts: IGetOptions = {}): Promise<IBulkOperationResult<unknown>> {\n if (!keys) {\n throw new Error(`The \"keys\" argument is missing.`);\n }\n if (!Array.isArray(keys)) {\n throw new Error(`The \"keys\" argument expected to be an array.`);\n }\n const { name } = this;\n const db = await this.open();\n const { store } = db.transaction(name);\n const items = await Promise.all(keys.map(key => store.get(key)));\n const result: (unknown | undefined)[] = items.map((item) => {\n if (!item) {\n return undefined;\n }\n if (item.meta.deleted && !opts.deleted) {\n return undefined;\n }\n return item.data;\n });\n return {\n items: result,\n };\n }\n\n async delete(key: string): Promise<ContextDeleteRecord | undefined> {\n if (!key) {\n throw new Error(`The \"key\" argument is missing.`);\n }\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n let result: ContextDeleteRecord | undefined;\n const item = await store.get(key);\n if (item) {\n item.meta.deleted = true;\n result = {\n key,\n }\n const typed = item.data as any;\n if (typed.kind) {\n result.kind = typed.kind;\n }\n await store.put(item);\n }\n await tx.done;\n return result;\n }\n\n async deleteBulk(keys: string[]): Promise<IBulkOperationResult<ContextDeleteRecord>> {\n if (!keys) {\n throw new Error(`The \"keys\" argument is missing.`);\n }\n if (!Array.isArray(keys)) {\n throw new Error(`The \"keys\" argument expected to be an array.`);\n }\n\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n const result: (ContextDeleteRecord | undefined)[] = [];\n const ps = keys.map(async (key) => {\n if (!key) {\n result.push(undefined);\n return;\n }\n const item = await store.get(key);\n if (!item) {\n result.push(undefined);\n return;\n }\n item.meta.deleted = true;\n const record: ContextDeleteRecord = {\n key,\n }\n const typed = item.data as any;\n if (typed.kind) {\n record.kind = typed.kind;\n }\n result.push(record);\n await store.put(item);\n });\n await Promise.all(ps);\n await tx.done;\n return {\n items: result,\n };\n }\n\n async restore(key: string): Promise<ContextChangeRecord<unknown> | undefined> {\n if (!key) {\n throw new Error(`The \"key\" argument is missing.`);\n }\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n let result: ContextChangeRecord<unknown> | undefined;\n const item = await store.get(key);\n if (item && item.meta.deleted) {\n item.meta.deleted = false;\n result = {\n key,\n item: item.data,\n }\n const typed = item.data as any;\n if (typed.kind) {\n result.kind = typed.kind;\n }\n await store.put(item);\n }\n await tx.done;\n return result;\n }\n\n async restoreBulk(keys: string[]): Promise<(ContextChangeRecord<unknown> | undefined)[] > {\n if (!keys) {\n throw new Error(`The \"keys\" argument is missing.`);\n }\n if (!Array.isArray(keys)) {\n throw new Error(`The \"keys\" argument expected to be an array.`);\n }\n \n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n const result: (ContextChangeRecord<unknown> | undefined)[] = [];\n const ps = keys.map(async (key) => {\n if (!key) {\n result.push(undefined);\n return;\n }\n const item = await store.get(key);\n if (!item || !item.meta.deleted) {\n result.push(undefined);\n return;\n }\n item.meta.deleted = false;\n const record: ContextChangeRecord<unknown> = {\n key,\n item: item.data,\n }\n const typed = item.data as any;\n if (typed.kind) {\n record.kind = typed.kind;\n }\n result.push(record);\n await store.put(item);\n });\n await Promise.all(ps);\n await tx.done;\n return result;\n }\n\n /**\n * A handler for the model list event. To be setup in the child class.\n */\n protected _listHandler(e: ContextListEvent<unknown>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n const { limit, cursor } = e.detail;\n\n e.detail.result = this.list({\n limit,\n cursor,\n });\n }\n\n protected _readHandler(e: ContextReadEvent<unknown>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.get(e.detail.key) as Promise<unknown>;\n }\n\n protected _readBulkHandler(e: ContextReadBulkEvent<unknown>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.getBulk(e.detail.keys);\n }\n\n protected _updateHandler(e: ContextUpdateEvent<any>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.update(e.detail.item);\n }\n\n protected _createHandler(e: ContextUpdateEvent<any>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.put(e.detail.item);\n }\n\n protected _updateBulkHandler(e: ContextUpdateBulkEvent<any>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.putBulk(e.detail.items);\n }\n\n protected _deleteHandler(e: ContextDeleteEvent): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.delete(e.detail.key) as Promise<ContextDeleteRecord>;\n }\n\n protected _deleteBulkHandler(e: ContextDeleteBulkEvent): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.deleteBulk(e.detail.keys);\n }\n\n protected _readDeletedRecordKeys(records: ContextDeleteRecord[]): string[] {\n const ids: string[] = [];\n records.forEach((item) => {\n if (!item || !item.key) {\n throw new Error(`Invalid or missing \"ContextDeleteRecord\" definition.`);\n }\n ids.push(item.key);\n });\n return ids;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Base.js","sourceRoot":"","sources":["../../../src/http-client/idb/Base.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n@license\nCopyright 2018 The Advanced REST client authors <arc@mulesoft.com>\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not\nuse this file except in compliance with the License. You may obtain a copy of\nthe License at\nhttp://www.apache.org/licenses/LICENSE-2.0\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\nWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the\nLicense for the specific language governing permissions and limitations under\nthe License.\n*/\n\nimport { \n ContextChangeRecord, ContextDeleteBulkEvent, ContextDeleteEvent, ContextDeleteRecord, ContextListEvent, ContextListOptions, \n ContextListResult, ContextReadBulkEvent, ContextReadEvent, ContextUpdateBulkEvent, ContextUpdateEvent, Events as CoreEvents, \n IAuthorizationData, IBulkOperationResult, ICertificate, IHostRule, IUrl } from '@api-client/core/build/browser.js';\nimport { openDB, DBSchema, IDBPDatabase } from 'idb/with-async-ittr';\n\n/* eslint-disable class-methods-use-this */\n\n// export const deleteModelHandler = Symbol('deleteModelHandler');\n// export const notifyDestroyed = Symbol('notifyDestroyed');\n\nexport type StoreName = 'UrlHistory' | 'WsHistory' | 'AuthCache' | 'Certificates' | 'Hosts' | 'Environments';\n\nexport interface IBaseQueryOptions {\n /**\n * The number of records in the response.\n */\n limit?: number;\n /**\n * Whether to use the `descending` order.\n */\n descending?: boolean;\n /**\n * The key to start paginating from.\n */\n startKey?: string;\n /**\n * The number of records to skip before start capturing records.\n */\n skip?: number;\n}\n\nexport interface IEntityMeta {\n deleted?: boolean;\n}\n\nexport interface IStoredEntity<T = unknown> {\n meta: IEntityMeta;\n data: T;\n}\n\nexport interface IGetOptions {\n /**\n * Whether to return a deleted document.\n */\n deleted?: boolean;\n}\n\ninterface HttpClientDB extends DBSchema {\n UrlHistory: {\n key: string;\n value: IStoredEntity<IUrl>;\n },\n WsHistory: {\n key: string;\n value: IStoredEntity<IUrl>;\n },\n AuthCache: {\n key: string;\n value: IStoredEntity<IAuthorizationData>,\n },\n Certificates: {\n key: string;\n value: IStoredEntity<ICertificate>,\n },\n Hosts: {\n key: string;\n value: IStoredEntity<IHostRule>,\n },\n Environments: {\n key: string;\n value: IStoredEntity<unknown>,\n },\n}\n\n/**\n * A base class for all models.\n * \n * All models have to:\n * \n * - have the `key` property that is a unique identifier of the entity. if the entity has duplicated entity it will replace the previous entity.\n */\nexport class Base {\n /**\n * Set with `listen()` method or separately. When set the model dispatch events on this node.\n * When not set the model does not dispatch events.\n */\n eventsTarget: EventTarget = window;\n\n /**\n * The name of the store.\n */\n name: StoreName;\n\n constructor(name: StoreName) {\n this.name = name;\n\n this._listHandler = this._listHandler.bind(this);\n this._readHandler = this._readHandler.bind(this);\n this._readBulkHandler = this._readBulkHandler.bind(this);\n this._createHandler = this._createHandler.bind(this);\n this._updateHandler = this._updateHandler.bind(this);\n this._updateBulkHandler = this._updateBulkHandler.bind(this);\n this._deleteHandler = this._deleteHandler.bind(this);\n this._deleteBulkHandler = this._deleteBulkHandler.bind(this);\n\n // this[deleteModelHandler] = this[deleteModelHandler].bind(this);\n }\n\n protected _db?: IDBPDatabase<HttpClientDB>;\n\n /**\n * Opens the ARC store.\n * @returns The reference to the database\n */\n async open(): Promise<IDBPDatabase<HttpClientDB>> {\n if (this._db) {\n return this._db;\n }\n const dbResult = await openDB<HttpClientDB>('AdvancedRestClient', 1, {\n upgrade(db) {\n const stores: StoreName[] = [\n 'UrlHistory', 'WsHistory', 'AuthCache', 'Certificates', 'Hosts', 'Environments',\n ];\n const names = db.objectStoreNames;\n for (const name of stores) {\n if (!names.contains(name)) {\n db.createObjectStore(name, { keyPath: 'data.key' });\n }\n }\n },\n });\n this._db = dbResult;\n return dbResult;\n }\n\n /**\n * Database query options for pagination.\n */\n get defaultQueryOptions(): IBaseQueryOptions {\n return {\n limit: 25,\n descending: true,\n };\n }\n\n // /**\n // * Listens for the DOM events.\n // */\n // listen(node: EventTarget = window): void {\n // this.eventsTarget = node;\n // node.addEventListener(EventTypes.HttpClient.Model.destroy, this[deleteModelHandler] as EventListener);\n // }\n\n // /**\n // * Removes the DOM event listeners.\n // */\n // unlisten(node: EventTarget = window): void {\n // node.removeEventListener(EventTypes.HttpClient.Model.destroy, this[deleteModelHandler] as EventListener);\n // }\n\n /**\n * Handles any exception in the model in a unified way.\n * @param e An error object\n * @param noThrow If set the function will not throw error.\n * This allow to do the logic without stopping program.\n */\n protected _handleException(e: Error | unknown, noThrow?: boolean): void {\n let message;\n if (e instanceof Error) {\n message = e.message;\n } else {\n message = JSON.stringify(e);\n }\n if (this.eventsTarget) {\n CoreEvents.Telemetry.exception(message, true, this.eventsTarget);\n }\n if (!noThrow) {\n throw e;\n }\n }\n\n /**\n * Deletes current datastore.\n * Note that `name` property must be set before calling this function.\n */\n async deleteModel(): Promise<void> {\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n await store.clear();\n await tx.done;\n // this[notifyDestroyed](this.name);\n }\n\n // /**\n // * Notifies the application that the model has been removed and data destroyed.\n // *\n // * @param store The name of the deleted store\n // */\n // [notifyDestroyed](store: StoreName): void {\n // if (this.eventsTarget) {\n // Events.HttpClient.Model.destroyed(store, this.eventsTarget);\n // }\n // }\n\n // /**\n // * Handler for `destroy-model` custom event.\n // * Deletes current data when scheduled for deletion.\n // */\n // [deleteModelHandler](e: ModelDeleteEvent): void {\n // if (e.defaultPrevented) {\n // return;\n // }\n // const { stores, detail } = e;\n // if (!stores || !stores.length || !this.name) {\n // return;\n // }\n // /* istanbul ignore else */\n // if (!Array.isArray(detail.result)) {\n // detail.result = [] as Promise<void>[];\n // }\n // if (stores.indexOf(this.name) !== -1) {\n // const { result=[] } = detail;\n // result.push(this.deleteModel());\n // }\n // }\n\n /**\n * Checks if event can be processed giving it's cancellation status or if\n * it was dispatched by current element.\n * @param e Event to test\n * @returns True if event is already cancelled or dispatched by self.\n */\n protected _eventCancelled(e: Event): boolean {\n if (e.defaultPrevented) {\n return true;\n }\n if (!e.cancelable) {\n return true;\n }\n return false;\n }\n\n /**\n * Decodes passed page token back to the passed parameters object.\n * @param token The page token value.\n * @return Restored page query parameters or null if error\n */\n decodePageToken(token: string): IBaseQueryOptions | null {\n if (!token) {\n return null;\n }\n try {\n const decoded = atob(token);\n return JSON.parse(decoded);\n } catch (e) {\n return null;\n }\n }\n\n /**\n * Encodes page parameters into a page token.\n * @param params Parameters to encode\n * @returns Page token\n */\n encodePageToken(params: IBaseQueryOptions): string {\n const str = JSON.stringify(params);\n return btoa(str);\n }\n\n /**\n * Lists all objects in the store.\n *\n * @param opts Query options.\n * @returns A promise resolved to a list of entities.\n */\n async list(opts: ContextListOptions = {}): Promise<ContextListResult<unknown>> {\n const { limit, cursor } = opts;\n let queryOptions: IBaseQueryOptions | undefined;\n if (cursor) {\n const pageOptions = this.decodePageToken(cursor);\n if (pageOptions) {\n queryOptions = pageOptions;\n }\n }\n if (!queryOptions) {\n queryOptions = this.defaultQueryOptions;\n if (limit) {\n queryOptions.limit = limit;\n }\n }\n \n const db = await this.open();\n const items = await this._listEntities(db, this.name, queryOptions);\n let token;\n if (items.length) {\n const copy: IBaseQueryOptions = { ...queryOptions };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const { key } = (items[items.length - 1] as any);\n copy.skip = 1;\n copy.startKey = key as string;\n token = this.encodePageToken(copy);\n }\n return {\n items,\n cursor: token,\n }\n }\n\n protected async _listEntities(db: IDBPDatabase<HttpClientDB>, storeName: StoreName, opts: IBaseQueryOptions): Promise<unknown[]> {\n let adv = opts.skip || 0;\n const { descending, limit = 25, startKey } = opts;\n const tx = db.transaction(storeName, 'readonly');\n const dir = descending === true ? 'prev' : 'next';\n let keyFound = false;\n const items: unknown[] = [];\n for await (const cursor of tx.store.iterate(null, dir)) {\n const info = cursor.value;\n const { meta, data } = info;\n const { key } = data as { key: string };\n if (!key) {\n continue;\n }\n if (startKey && !keyFound) {\n if (key !== startKey) {\n continue;\n }\n keyFound = true;\n }\n if (adv) {\n cursor.advance(adv);\n adv = 0;\n continue;\n }\n if (meta && meta.deleted) {\n continue;\n }\n items.push(data);\n if (items.length >= limit) {\n break;\n }\n }\n return items;\n }\n\n /**\n * A specialized method to perform an update operation.\n * By default it calls `put()` which replaces the whole object.\n * Implement own logic that can perform a PATCH operation instead, if needed.\n * \n * @param value The object to update.\n */\n async update(value: unknown): Promise<ContextChangeRecord<unknown>> {\n return this.put(value);\n }\n\n async put(value: unknown): Promise<ContextChangeRecord<unknown>> {\n const typed = value as { key: string, kind?: string };\n if (!typed.key) {\n throw new Error(`Unable to process the value when inserting to ${this.name}: the key is missing.`);\n }\n const db = await this.open();\n const entity: IStoredEntity = {\n meta: {},\n data: value,\n };\n await db.put(this.name, entity);\n const result: ContextChangeRecord<unknown> = {\n key: typed.key,\n item: { ...typed },\n };\n if (typed.kind) {\n result.kind = typed.kind;\n }\n return result;\n }\n\n async putBulk(values: unknown[]): Promise<IBulkOperationResult<ContextChangeRecord<any>>> {\n if (!Array.isArray(values)) {\n throw new Error(`Unexpected argument. An array must be passed to \"putBulk()\" method.`)\n }\n if (!values.length) {\n return { items: [] };\n }\n const typed = values as { key: string, kind?: string }[];\n const invalid = typed.some(i => !i.key);\n if (invalid) {\n throw new Error(`Unable to process bulk values when inserting to ${this.name}: a key is missing.`);\n }\n const entities: IStoredEntity[] = [];\n const result: ContextChangeRecord<unknown>[] = [];\n\n typed.forEach((data) => {\n entities.push({\n meta: {},\n data,\n });\n const record: ContextChangeRecord<unknown> = {\n key: data.key,\n item: { ...data },\n }\n if (data.kind) {\n record.kind = data.kind;\n }\n result.push(record);\n });\n\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n await Promise.all(entities.map(e => store.put(e)));\n await tx.done;\n return { items: result };\n }\n\n async get(key: string, opts: IGetOptions = {}): Promise<unknown | undefined> {\n if (!key) {\n throw new Error(`The \"key\" argument is missing.`);\n }\n const db = await this.open();\n const value = await db.get(this.name, key);\n if (!value) {\n return undefined;\n }\n if (value.meta.deleted && !opts.deleted) {\n return undefined;\n }\n return value.data;\n }\n\n async getBulk(keys: string[], opts: IGetOptions = {}): Promise<IBulkOperationResult<unknown>> {\n if (!keys) {\n throw new Error(`The \"keys\" argument is missing.`);\n }\n if (!Array.isArray(keys)) {\n throw new Error(`The \"keys\" argument expected to be an array.`);\n }\n const { name } = this;\n const db = await this.open();\n const { store } = db.transaction(name);\n const items = await Promise.all(keys.map(key => store.get(key)));\n const result: (unknown | undefined)[] = items.map((item) => {\n if (!item) {\n return undefined;\n }\n if (item.meta.deleted && !opts.deleted) {\n return undefined;\n }\n return item.data;\n });\n return {\n items: result,\n };\n }\n\n async delete(key: string): Promise<ContextDeleteRecord | undefined> {\n if (!key) {\n throw new Error(`The \"key\" argument is missing.`);\n }\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n let result: ContextDeleteRecord | undefined;\n const item = await store.get(key);\n if (item) {\n item.meta.deleted = true;\n result = {\n key,\n }\n const typed = item.data as any;\n if (typed.kind) {\n result.kind = typed.kind;\n }\n await store.put(item);\n }\n await tx.done;\n return result;\n }\n\n async deleteBulk(keys: string[]): Promise<IBulkOperationResult<ContextDeleteRecord>> {\n if (!keys) {\n throw new Error(`The \"keys\" argument is missing.`);\n }\n if (!Array.isArray(keys)) {\n throw new Error(`The \"keys\" argument expected to be an array.`);\n }\n\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n const result: (ContextDeleteRecord | undefined)[] = [];\n const ps = keys.map(async (key) => {\n if (!key) {\n result.push(undefined);\n return;\n }\n const item = await store.get(key);\n if (!item) {\n result.push(undefined);\n return;\n }\n item.meta.deleted = true;\n const record: ContextDeleteRecord = {\n key,\n }\n const typed = item.data as any;\n if (typed.kind) {\n record.kind = typed.kind;\n }\n result.push(record);\n await store.put(item);\n });\n await Promise.all(ps);\n await tx.done;\n return {\n items: result,\n };\n }\n\n async restore(key: string): Promise<ContextChangeRecord<unknown> | undefined> {\n if (!key) {\n throw new Error(`The \"key\" argument is missing.`);\n }\n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n let result: ContextChangeRecord<unknown> | undefined;\n const item = await store.get(key);\n if (item && item.meta.deleted) {\n item.meta.deleted = false;\n result = {\n key,\n item: item.data,\n }\n const typed = item.data as any;\n if (typed.kind) {\n result.kind = typed.kind;\n }\n await store.put(item);\n }\n await tx.done;\n return result;\n }\n\n async restoreBulk(keys: string[]): Promise<(ContextChangeRecord<unknown> | undefined)[] > {\n if (!keys) {\n throw new Error(`The \"keys\" argument is missing.`);\n }\n if (!Array.isArray(keys)) {\n throw new Error(`The \"keys\" argument expected to be an array.`);\n }\n \n const db = await this.open();\n const tx = db.transaction(this.name, 'readwrite');\n const { store } = tx;\n const result: (ContextChangeRecord<unknown> | undefined)[] = [];\n const ps = keys.map(async (key) => {\n if (!key) {\n result.push(undefined);\n return;\n }\n const item = await store.get(key);\n if (!item || !item.meta.deleted) {\n result.push(undefined);\n return;\n }\n item.meta.deleted = false;\n const record: ContextChangeRecord<unknown> = {\n key,\n item: item.data,\n }\n const typed = item.data as any;\n if (typed.kind) {\n record.kind = typed.kind;\n }\n result.push(record);\n await store.put(item);\n });\n await Promise.all(ps);\n await tx.done;\n return result;\n }\n\n /**\n * A handler for the model list event. To be setup in the child class.\n */\n protected _listHandler(e: ContextListEvent<unknown>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n const { limit, cursor } = e.detail;\n\n e.detail.result = this.list({\n limit,\n cursor,\n });\n }\n\n protected _readHandler(e: ContextReadEvent<unknown>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.get(e.detail.key) as Promise<unknown>;\n }\n\n protected _readBulkHandler(e: ContextReadBulkEvent<unknown>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.getBulk(e.detail.keys);\n }\n\n protected _updateHandler(e: ContextUpdateEvent<any>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.update(e.detail.item);\n }\n\n protected _createHandler(e: ContextUpdateEvent<any>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.put(e.detail.item);\n }\n\n protected _updateBulkHandler(e: ContextUpdateBulkEvent<any>): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.putBulk(e.detail.items);\n }\n\n protected _deleteHandler(e: ContextDeleteEvent): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.delete(e.detail.key) as Promise<ContextDeleteRecord>;\n }\n\n protected _deleteBulkHandler(e: ContextDeleteBulkEvent): void {\n if (this._eventCancelled(e)) {\n return;\n }\n e.preventDefault();\n e.stopPropagation();\n e.detail.result = this.deleteBulk(e.detail.keys);\n }\n\n protected _readDeletedRecordKeys(records: ContextDeleteRecord[]): string[] {\n const ids: string[] = [];\n records.forEach((item) => {\n if (!item || !item.key) {\n throw new Error(`Invalid or missing \"ContextDeleteRecord\" definition.`);\n }\n ids.push(item.key);\n });\n return ids;\n }\n}\n"]}
|
|
@@ -7,7 +7,6 @@ import 'pouchdb/dist/pouchdb.js';
|
|
|
7
7
|
* @deprecated This relates to the data structure for ARC that is being deprecated. The full migration should finish in 2024.
|
|
8
8
|
*/
|
|
9
9
|
export class LegacyMockedStore {
|
|
10
|
-
mock;
|
|
11
10
|
constructor(init = {}) {
|
|
12
11
|
this.mock = new LegacyMock(init);
|
|
13
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LegacyMockedStore.js","sourceRoot":"","sources":["../../../src/http-client/idb/LegacyMockedStore.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable default-param-last */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable class-methods-use-this */\nimport { \n LegacyMock, ArcDataMockInit, RestApiIndexInit, VariableInit, ARCProject, ARCAuthData, \n ARCCookie, ARCHostRule, ARCUrlHistory, ARCEnvironment, ARCVariable, ARCHistoryRequest, \n ARCSavedRequest, ARCRestApiIndex, ARCRestApi, ARCCertificateIndex, ARCRequestCertificate,\n ProjectCreateInit, RequestHistoryInit, RequestSavedInit, CertificateCreateInit, Entity\n} from '@api-client/core/build/legacy.js';\nimport 'pouchdb/dist/pouchdb.js';\n\nexport interface InsertSavedResult {\n projects: ARCProject[];\n requests: ARCSavedRequest[];\n}\n\n/**\n * @deprecated This relates to the data structure for ARC that is being deprecated. The full migration should finish in 2024.\n */\nexport class LegacyMockedStore {\n mock: LegacyMock;\n\n constructor(init: ArcDataMockInit = {}) {\n this.mock = new LegacyMock(init);\n }\n\n /**\n * @param name The data store name to create.\n */\n db(name: string): PouchDB.Database {\n return new PouchDB(name);\n }\n\n /**\n * Creates `_id` on the original insert object if it wasn't created before and\n * updates `_rev` property.\n * \n * @param insertResponse PouchDB build insert response\n * @param insertedData The original array of inserted objects.\n * @returns This changes contents of te array items which is passed by reference.\n */\n updateRevsAndIds(insertResponse: (PouchDB.Core.Response | PouchDB.Core.Error)[], insertedData: Entity[]): unknown[] {\n const result: Entity[] = [];\n insertResponse.forEach((item, i) => {\n const error = item as PouchDB.Core.Error;\n if (error.error) {\n return;\n }\n const copy = { ...insertedData[i] };\n if (!copy._id) {\n copy._id = item.id;\n }\n copy._rev = item.rev;\n result.push(copy as Entity);\n });\n return result;\n }\n\n /**\n * Generates saved requests data and inserts them into the data store if they\n * are missing.\n * \n * @returns Resolved promise when data are inserted into the datastore. The promise resolves to the generated data object\n */\n async insertSaved(requestsSize = 25, projectsSize = 5, requestsInit?: RequestSavedInit, projectInit?: ProjectCreateInit): Promise<InsertSavedResult> {\n const data = this.mock.http.savedData(requestsSize, projectsSize, requestsInit, projectInit);\n const result: InsertSavedResult = ({\n projects: [],\n requests: [],\n });\n const projectsDb = this.db('legacy-projects');\n const response = await projectsDb.bulkDocs(data.projects);\n result.projects = this.updateRevsAndIds(response, data.projects) as ARCProject[];\n const savedDb = this.db('saved-requests');\n const response2 = await savedDb.bulkDocs(data.requests);\n result.requests = this.updateRevsAndIds(response2, data.requests) as ARCSavedRequest[];\n return result;\n }\n\n /**\n * Generates and saves history data to the data store.\n *\n * @param size The number of requests to generate. Default to 25.\n * @param init History init options.\n * @returns A promise resolved to the generated history list.\n */\n async insertHistory(size?: number, init?: RequestHistoryInit): Promise<ARCHistoryRequest[]> {\n const data = this.mock.http.listHistory(size, init);\n const db = this.db('history-requests');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCHistoryRequest[];\n }\n\n /**\n * Generates and saves a list of project objects.\n *\n * @param size Number of projects to insert. Default to 5.\n */\n async insertProjects(size?: number, init?: ProjectCreateInit): Promise<ARCProject[]> {\n const data = this.mock.http.listProjects(size, init);\n const db = this.db('legacy-projects');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCProject[];\n }\n\n /**\n * Inserts saved data only if the store is empty.\n * @param requestsSize Default 25\n * @param projectsSize Default 5\n * @returns A resolved promise when data are inserted into the datastore.\n */\n async insertSavedIfNotExists(requestsSize?: number, projectsSize?: number, requestsInit?: RequestSavedInit, projectInit?: ProjectCreateInit): Promise<InsertSavedResult> {\n const savedDb = this.db('saved-requests');\n const response = await savedDb.allDocs<ARCSavedRequest>({\n include_docs: true,\n });\n if (!response.rows.length) {\n return this.insertSaved(requestsSize, projectsSize, requestsInit, projectInit);\n }\n const result: InsertSavedResult = {\n requests: response.rows.map(item => item.doc) as ARCSavedRequest[],\n projects: [],\n };\n const projectsDb = this.db('legacy-projects');\n const projectsResponse = await projectsDb.allDocs<ARCProject>({\n include_docs: true,\n });\n result.projects = projectsResponse.rows.map(item => item.doc) as ARCProject[];\n return result;\n }\n\n /**\n * Inserts history data if the store is empty.\n * \n * @param size The number of requests to generate. Default to 25.\n * @param init History init options.\n * @returns Resolved promise when data are inserted into the datastore.\n */\n async insertHistoryIfNotExists(size?: number, init?: RequestHistoryInit): Promise<ARCHistoryRequest[]> {\n const db = this.db('history-requests');\n const response = await db.allDocs<ARCHistoryRequest>({\n include_docs: true,\n });\n if (!response.rows.length) {\n return this.insertHistory(size, init);\n }\n return response.rows.map(item => item.doc) as ARCHistoryRequest[];\n }\n\n /**\n * Destroys saved and projects database.\n * @returns Resolved promise when the data are cleared.\n */\n async destroySaved(): Promise<void> {\n const savedDb = this.db('saved-requests');\n const projectsDb = this.db('legacy-projects');\n await savedDb.destroy();\n await projectsDb.destroy();\n }\n\n /**\n * Destroys history database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyHistory(): Promise<void> {\n const db = this.db('history-requests');\n await db.destroy();\n }\n\n /**\n * Destroys legacy projects database.\n * @returns Resolved promise when the data are cleared.\n */\n async clearLegacyProjects(): Promise<void> {\n const db = this.db('legacy-projects');\n await db.destroy();\n }\n\n /**\n * Generates and saves websocket data to the data store.\n *\n * @param size The number of websocket data to insert.\n */\n async insertWebsockets(size?: number): Promise<ARCUrlHistory[]> {\n const data = this.mock.urls.urls(size);\n const db = this.db('websocket-url-history');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCUrlHistory[];\n }\n\n /**\n * Generates and saves url history data to the data store.\n *\n * @param size The number of URL history data to insert.\n */\n async insertUrlHistory(size?: number): Promise<ARCUrlHistory[]> {\n const data = this.mock.urls.urls(size);\n const db = this.db('url-history');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCUrlHistory[];\n }\n\n /**\n * Destroys websockets URL history database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyWebsockets(): Promise<void> {\n const db = this.db('websocket-url-history');\n await db.destroy();\n }\n\n /**\n * Destroys URL history database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyUrlHistory(): Promise<void> {\n const db = this.db('url-history');\n await db.destroy();\n }\n\n /**\n * Generates and saves variables data to the data store.\n *\n * @param size The number of variables to generate.\n * @returns Promise resolves to inserted variables.\n */\n async insertVariables(size?: number, init?: VariableInit): Promise<ARCVariable[]> {\n const data = this.mock.variables.listVariables(size, init);\n const db = this.db('variables');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCVariable[];\n }\n\n /**\n * Generates and saves variables data to the data store and then environments generated from the variables.\n *\n * @param size The number of variables to generate.\n * @returns Promise resolves to inserted variables.\n */\n async insertVariablesAndEnvironments(size?: number, init?: VariableInit): Promise<ARCVariable[]> {\n const result = await this.insertVariables(size, init);\n const items: ARCVariable[] = [];\n const names: string[] = [];\n result.forEach((variable) => {\n if (variable.environment !== 'default' && !names.includes(variable.environment)) {\n names.push(variable.environment)\n items.push({\n name: variable.environment,\n environment: '',\n value: '',\n });\n }\n });\n if (items.length) {\n const db = this.db('variables-environments');\n await db.bulkDocs(items);\n }\n return result;\n }\n\n /**\n * Destroys variables and environments database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyVariables(): Promise<void> {\n const db = this.db('variables');\n const db2 = this.db('variables-environments');\n await db.destroy();\n await db2.destroy();\n }\n\n /**\n * Generates and saves cookies data to the data store.\n *\n * @param size Number of cookies to insert. Default to 25.\n */\n async insertCookies(size?: number): Promise<ARCCookie[]> {\n const data = this.mock.cookies.cookies(size);\n const db = this.db('cookies');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data as any[]) as ARCCookie[];\n }\n\n /**\n * Destroys cookies database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyCookies(): Promise<void> {\n const db = this.db('cookies');\n await db.destroy();\n }\n\n /**\n * Generates and saves basic auth data to the data store.\n *\n * @param size Number of auth data to insert. Default to 25.\n * @returns Promise resolved to created auth data.\n */\n async insertBasicAuth(size?: number): Promise<ARCAuthData[]> {\n const data = this.mock.authorization.basicList(size);\n const db = this.db('auth-data');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCAuthData[];\n }\n\n /**\n * Destroys auth data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyBasicAuth(): Promise<void> {\n const db = this.db('auth-data');\n await db.destroy();\n }\n\n /**\n * Generates and saves host rules data to the data store.\n *\n * @param size Number of rules to insert. Default to 25.\n * @return {Promise<PouchDB.Core.ExistingDocument<ARCHostRule>[]>} \n */\n async insertHostRules(size?: number): Promise<ARCHostRule[]> {\n const data = this.mock.hostRules.rules(size);\n const db = this.db('host-rules');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCHostRule[];\n }\n\n /**\n * Destroys hosts data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyHostRules(): Promise<void> {\n const db = this.db('host-rules');\n await db.destroy();\n }\n\n async insertApis(size?: number, init?: RestApiIndexInit): Promise<(ARCRestApi[] | ARCRestApiIndex[])[]> {\n let index = this.mock.restApi.apiIndexList(size, init);\n let data = this.mock.restApi.apiDataList(index);\n const indexDb = this.db('api-index');\n const indexResponse = await indexDb.bulkDocs(index);\n index = this.updateRevsAndIds(indexResponse, index) as ARCRestApiIndex[];\n const dataDb = this.db('api-data');\n const dataResponse = await dataDb.bulkDocs(data);\n data = this.updateRevsAndIds(dataResponse, data) as ARCRestApi[];\n return [index, data];\n }\n\n /**\n * Destroys api-index data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyApiIndexes(): Promise<void> {\n const db = this.db('api-index');\n await db.destroy();\n }\n\n /**\n * Destroys api-data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyApiData(): Promise<void> {\n const db = this.db('api-data');\n await db.destroy();\n }\n\n async destroyApisAll(): Promise<void> {\n await this.destroyApiIndexes();\n await this.destroyApiData();\n }\n\n /**\n * @param size The number of certificates to generate.\n * @param opts Create options\n */\n async insertCertificates(size?: number, opts?: CertificateCreateInit): Promise<ARCCertificateIndex[]> {\n const data = this.mock.certificates.clientCertificates(size, opts);\n const responses = [];\n const indexDb = this.db('client-certificates');\n const dataDb = this.db('client-certificates-data');\n for (let i = 0; i < data.length; i++) {\n const cert = data[i];\n const dataEntity: ARCRequestCertificate = ({\n cert: this.mock.certificates.toStore(cert.cert),\n type: cert.type,\n });\n if (cert.key) {\n dataEntity.key = this.mock.certificates.toStore(cert.key);\n }\n const indexEntity: ARCCertificateIndex = ({\n name: cert.name,\n type: cert.type,\n });\n if (cert.created) {\n indexEntity.created = cert.created;\n } else {\n indexEntity.created = Date.now();\n }\n\n /* eslint-disable-next-line no-await-in-loop */\n const dataRes = await dataDb.post(dataEntity);\n indexEntity._id = dataRes.id;\n /* eslint-disable-next-line no-await-in-loop */\n responses[responses.length] = await indexDb.post(indexEntity);\n }\n return this.updateRevsAndIds(responses, data as any[]) as ARCCertificateIndex[];\n }\n\n async destroyClientCertificates(): Promise<void> {\n await this.db('client-certificates').destroy();\n await this.db('client-certificates-data').destroy();\n }\n\n /**\n * Destroys all databases.\n * @return Resolved promise when the data are cleared.\n */\n async destroyAll(): Promise<void> {\n await this.destroySaved();\n await this.destroyHistory();\n await this.destroyWebsockets();\n await this.destroyUrlHistory();\n await this.destroyVariables();\n await this.destroyCookies();\n await this.destroyBasicAuth();\n await this.destroyHostRules();\n await this.destroyApiIndexes();\n await this.destroyApiData();\n await this.destroyClientCertificates();\n }\n\n /**\n * Deeply clones an object.\n * @param {any[]|Date|object} obj Object to be cloned\n * @return {any[]|Date|object} Copied object\n */\n clone<T>(obj: T): T {\n let copy: any;\n if (obj === null || typeof obj !== 'object') {\n return obj;\n }\n if (obj instanceof Date) {\n copy = new Date();\n copy.setTime(obj.getTime());\n return copy;\n }\n if (Array.isArray(obj)) {\n copy = [];\n for (let i = 0, len = obj.length; i < len; i++) {\n copy[i] = this.clone(obj[i]);\n }\n return copy;\n }\n if (obj instanceof Object) {\n copy = {};\n Object.keys(obj).forEach((key) => {\n copy[key] = this.clone((obj as any)[key]);\n });\n return copy;\n }\n throw new Error(\"Unable to copy obj! Its type isn't supported.\");\n }\n\n /**\n * Reads all data from a data store.\n * @param name Name of the data store to read from. Without `_pouch_` prefix\n * @returns Promise resolved to all read docs.\n */\n async getDatastoreData(name: string): Promise<unknown[]> {\n const db = this.db(name);\n const response = await db.allDocs({\n include_docs: true,\n });\n return response.rows.map(item => item.doc);\n }\n\n async getDatastoreRequestData(): Promise<ARCSavedRequest[]> {\n return this.getDatastoreData('saved-requests') as Promise<ARCSavedRequest[]>;\n }\n\n async getDatastoreProjectsData(): Promise<ARCProject[]> {\n return this.getDatastoreData('legacy-projects') as Promise<ARCProject[]>;\n }\n\n async getDatastoreHistoryData(): Promise<ARCHistoryRequest[]> {\n return this.getDatastoreData('history-requests') as Promise<ARCHistoryRequest[]>;\n }\n\n async getDatastoreVariablesData(): Promise<ARCVariable[]> {\n return this.getDatastoreData('variables') as Promise<ARCVariable[]>;\n }\n\n async getDatastoreEnvironmentsData(): Promise<ARCEnvironment[]> {\n return this.getDatastoreData('variables-environments') as Promise<ARCEnvironment[]>;\n }\n\n async getDatastoreCookiesData(): Promise<ARCCookie[]> {\n return this.getDatastoreData('cookies') as Promise<ARCCookie[]>;\n }\n\n async getDatastoreWebsocketsData(): Promise<ARCUrlHistory[]> {\n return this.getDatastoreData('websocket-url-history') as Promise<ARCUrlHistory[]>;\n }\n\n async getDatastoreUrlsData(): Promise<ARCUrlHistory[]> {\n return this.getDatastoreData('url-history') as Promise<ARCUrlHistory[]>;\n }\n\n async getDatastoreAuthData(): Promise<ARCAuthData[]> {\n return this.getDatastoreData('auth-data') as Promise<ARCAuthData[]>;\n }\n\n async getDatastoreHostRulesData(): Promise<ARCHostRule[]> {\n return this.getDatastoreData('host-rules') as Promise<ARCHostRule[]>;\n }\n\n async getDatastoreApiIndexData(): Promise<ARCRestApiIndex[]> {\n return this.getDatastoreData('api-index') as Promise<ARCRestApiIndex[]>;\n }\n\n async getDatastoreHostApiData(): Promise<ARCRestApi[]> {\n return this.getDatastoreData('api-data') as Promise<ARCRestApi[]>;\n }\n\n async getDatastoreClientCertificates(): Promise<(ARCCertificateIndex[] | ARCRequestCertificate[])[]> {\n const certs = await this.getDatastoreData('client-certificates') as ARCCertificateIndex[];\n const data = await this.getDatastoreData('client-certificates-data') as ARCRequestCertificate[];\n return [certs, data];\n }\n\n /**\n * Updates an object in an data store.\n *\n * @param dbName Name of the data store.\n * @param obj The object to be stored.\n * @returns A promise resolved to insert result.\n */\n async updateObject(dbName: string, obj: any): Promise<PouchDB.Core.Response> {\n const db = this.db(dbName);\n return db.put(obj, {\n force: true,\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"LegacyMockedStore.js","sourceRoot":"","sources":["../../../src/http-client/idb/LegacyMockedStore.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable default-param-last */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable class-methods-use-this */\nimport { \n LegacyMock, ArcDataMockInit, RestApiIndexInit, VariableInit, ARCProject, ARCAuthData, \n ARCCookie, ARCHostRule, ARCUrlHistory, ARCEnvironment, ARCVariable, ARCHistoryRequest, \n ARCSavedRequest, ARCRestApiIndex, ARCRestApi, ARCCertificateIndex, ARCRequestCertificate,\n ProjectCreateInit, RequestHistoryInit, RequestSavedInit, CertificateCreateInit, Entity\n} from '@api-client/core/build/legacy.js';\nimport 'pouchdb/dist/pouchdb.js';\n\nexport interface InsertSavedResult {\n projects: ARCProject[];\n requests: ARCSavedRequest[];\n}\n\n/**\n * @deprecated This relates to the data structure for ARC that is being deprecated. The full migration should finish in 2024.\n */\nexport class LegacyMockedStore {\n mock: LegacyMock;\n\n constructor(init: ArcDataMockInit = {}) {\n this.mock = new LegacyMock(init);\n }\n\n /**\n * @param name The data store name to create.\n */\n db(name: string): PouchDB.Database {\n return new PouchDB(name);\n }\n\n /**\n * Creates `_id` on the original insert object if it wasn't created before and\n * updates `_rev` property.\n * \n * @param insertResponse PouchDB build insert response\n * @param insertedData The original array of inserted objects.\n * @returns This changes contents of te array items which is passed by reference.\n */\n updateRevsAndIds(insertResponse: (PouchDB.Core.Response | PouchDB.Core.Error)[], insertedData: Entity[]): unknown[] {\n const result: Entity[] = [];\n insertResponse.forEach((item, i) => {\n const error = item as PouchDB.Core.Error;\n if (error.error) {\n return;\n }\n const copy = { ...insertedData[i] };\n if (!copy._id) {\n copy._id = item.id;\n }\n copy._rev = item.rev;\n result.push(copy as Entity);\n });\n return result;\n }\n\n /**\n * Generates saved requests data and inserts them into the data store if they\n * are missing.\n * \n * @returns Resolved promise when data are inserted into the datastore. The promise resolves to the generated data object\n */\n async insertSaved(requestsSize = 25, projectsSize = 5, requestsInit?: RequestSavedInit, projectInit?: ProjectCreateInit): Promise<InsertSavedResult> {\n const data = this.mock.http.savedData(requestsSize, projectsSize, requestsInit, projectInit);\n const result: InsertSavedResult = ({\n projects: [],\n requests: [],\n });\n const projectsDb = this.db('legacy-projects');\n const response = await projectsDb.bulkDocs(data.projects);\n result.projects = this.updateRevsAndIds(response, data.projects) as ARCProject[];\n const savedDb = this.db('saved-requests');\n const response2 = await savedDb.bulkDocs(data.requests);\n result.requests = this.updateRevsAndIds(response2, data.requests) as ARCSavedRequest[];\n return result;\n }\n\n /**\n * Generates and saves history data to the data store.\n *\n * @param size The number of requests to generate. Default to 25.\n * @param init History init options.\n * @returns A promise resolved to the generated history list.\n */\n async insertHistory(size?: number, init?: RequestHistoryInit): Promise<ARCHistoryRequest[]> {\n const data = this.mock.http.listHistory(size, init);\n const db = this.db('history-requests');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCHistoryRequest[];\n }\n\n /**\n * Generates and saves a list of project objects.\n *\n * @param size Number of projects to insert. Default to 5.\n */\n async insertProjects(size?: number, init?: ProjectCreateInit): Promise<ARCProject[]> {\n const data = this.mock.http.listProjects(size, init);\n const db = this.db('legacy-projects');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCProject[];\n }\n\n /**\n * Inserts saved data only if the store is empty.\n * @param requestsSize Default 25\n * @param projectsSize Default 5\n * @returns A resolved promise when data are inserted into the datastore.\n */\n async insertSavedIfNotExists(requestsSize?: number, projectsSize?: number, requestsInit?: RequestSavedInit, projectInit?: ProjectCreateInit): Promise<InsertSavedResult> {\n const savedDb = this.db('saved-requests');\n const response = await savedDb.allDocs<ARCSavedRequest>({\n include_docs: true,\n });\n if (!response.rows.length) {\n return this.insertSaved(requestsSize, projectsSize, requestsInit, projectInit);\n }\n const result: InsertSavedResult = {\n requests: response.rows.map(item => item.doc) as ARCSavedRequest[],\n projects: [],\n };\n const projectsDb = this.db('legacy-projects');\n const projectsResponse = await projectsDb.allDocs<ARCProject>({\n include_docs: true,\n });\n result.projects = projectsResponse.rows.map(item => item.doc) as ARCProject[];\n return result;\n }\n\n /**\n * Inserts history data if the store is empty.\n * \n * @param size The number of requests to generate. Default to 25.\n * @param init History init options.\n * @returns Resolved promise when data are inserted into the datastore.\n */\n async insertHistoryIfNotExists(size?: number, init?: RequestHistoryInit): Promise<ARCHistoryRequest[]> {\n const db = this.db('history-requests');\n const response = await db.allDocs<ARCHistoryRequest>({\n include_docs: true,\n });\n if (!response.rows.length) {\n return this.insertHistory(size, init);\n }\n return response.rows.map(item => item.doc) as ARCHistoryRequest[];\n }\n\n /**\n * Destroys saved and projects database.\n * @returns Resolved promise when the data are cleared.\n */\n async destroySaved(): Promise<void> {\n const savedDb = this.db('saved-requests');\n const projectsDb = this.db('legacy-projects');\n await savedDb.destroy();\n await projectsDb.destroy();\n }\n\n /**\n * Destroys history database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyHistory(): Promise<void> {\n const db = this.db('history-requests');\n await db.destroy();\n }\n\n /**\n * Destroys legacy projects database.\n * @returns Resolved promise when the data are cleared.\n */\n async clearLegacyProjects(): Promise<void> {\n const db = this.db('legacy-projects');\n await db.destroy();\n }\n\n /**\n * Generates and saves websocket data to the data store.\n *\n * @param size The number of websocket data to insert.\n */\n async insertWebsockets(size?: number): Promise<ARCUrlHistory[]> {\n const data = this.mock.urls.urls(size);\n const db = this.db('websocket-url-history');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCUrlHistory[];\n }\n\n /**\n * Generates and saves url history data to the data store.\n *\n * @param size The number of URL history data to insert.\n */\n async insertUrlHistory(size?: number): Promise<ARCUrlHistory[]> {\n const data = this.mock.urls.urls(size);\n const db = this.db('url-history');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCUrlHistory[];\n }\n\n /**\n * Destroys websockets URL history database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyWebsockets(): Promise<void> {\n const db = this.db('websocket-url-history');\n await db.destroy();\n }\n\n /**\n * Destroys URL history database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyUrlHistory(): Promise<void> {\n const db = this.db('url-history');\n await db.destroy();\n }\n\n /**\n * Generates and saves variables data to the data store.\n *\n * @param size The number of variables to generate.\n * @returns Promise resolves to inserted variables.\n */\n async insertVariables(size?: number, init?: VariableInit): Promise<ARCVariable[]> {\n const data = this.mock.variables.listVariables(size, init);\n const db = this.db('variables');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCVariable[];\n }\n\n /**\n * Generates and saves variables data to the data store and then environments generated from the variables.\n *\n * @param size The number of variables to generate.\n * @returns Promise resolves to inserted variables.\n */\n async insertVariablesAndEnvironments(size?: number, init?: VariableInit): Promise<ARCVariable[]> {\n const result = await this.insertVariables(size, init);\n const items: ARCVariable[] = [];\n const names: string[] = [];\n result.forEach((variable) => {\n if (variable.environment !== 'default' && !names.includes(variable.environment)) {\n names.push(variable.environment)\n items.push({\n name: variable.environment,\n environment: '',\n value: '',\n });\n }\n });\n if (items.length) {\n const db = this.db('variables-environments');\n await db.bulkDocs(items);\n }\n return result;\n }\n\n /**\n * Destroys variables and environments database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyVariables(): Promise<void> {\n const db = this.db('variables');\n const db2 = this.db('variables-environments');\n await db.destroy();\n await db2.destroy();\n }\n\n /**\n * Generates and saves cookies data to the data store.\n *\n * @param size Number of cookies to insert. Default to 25.\n */\n async insertCookies(size?: number): Promise<ARCCookie[]> {\n const data = this.mock.cookies.cookies(size);\n const db = this.db('cookies');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data as any[]) as ARCCookie[];\n }\n\n /**\n * Destroys cookies database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyCookies(): Promise<void> {\n const db = this.db('cookies');\n await db.destroy();\n }\n\n /**\n * Generates and saves basic auth data to the data store.\n *\n * @param size Number of auth data to insert. Default to 25.\n * @returns Promise resolved to created auth data.\n */\n async insertBasicAuth(size?: number): Promise<ARCAuthData[]> {\n const data = this.mock.authorization.basicList(size);\n const db = this.db('auth-data');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCAuthData[];\n }\n\n /**\n * Destroys auth data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyBasicAuth(): Promise<void> {\n const db = this.db('auth-data');\n await db.destroy();\n }\n\n /**\n * Generates and saves host rules data to the data store.\n *\n * @param size Number of rules to insert. Default to 25.\n * @return {Promise<PouchDB.Core.ExistingDocument<ARCHostRule>[]>} \n */\n async insertHostRules(size?: number): Promise<ARCHostRule[]> {\n const data = this.mock.hostRules.rules(size);\n const db = this.db('host-rules');\n const response = await db.bulkDocs(data);\n return this.updateRevsAndIds(response, data) as ARCHostRule[];\n }\n\n /**\n * Destroys hosts data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyHostRules(): Promise<void> {\n const db = this.db('host-rules');\n await db.destroy();\n }\n\n async insertApis(size?: number, init?: RestApiIndexInit): Promise<(ARCRestApi[] | ARCRestApiIndex[])[]> {\n let index = this.mock.restApi.apiIndexList(size, init);\n let data = this.mock.restApi.apiDataList(index);\n const indexDb = this.db('api-index');\n const indexResponse = await indexDb.bulkDocs(index);\n index = this.updateRevsAndIds(indexResponse, index) as ARCRestApiIndex[];\n const dataDb = this.db('api-data');\n const dataResponse = await dataDb.bulkDocs(data);\n data = this.updateRevsAndIds(dataResponse, data) as ARCRestApi[];\n return [index, data];\n }\n\n /**\n * Destroys api-index data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyApiIndexes(): Promise<void> {\n const db = this.db('api-index');\n await db.destroy();\n }\n\n /**\n * Destroys api-data database.\n * @return Resolved promise when the data are cleared.\n */\n async destroyApiData(): Promise<void> {\n const db = this.db('api-data');\n await db.destroy();\n }\n\n async destroyApisAll(): Promise<void> {\n await this.destroyApiIndexes();\n await this.destroyApiData();\n }\n\n /**\n * @param size The number of certificates to generate.\n * @param opts Create options\n */\n async insertCertificates(size?: number, opts?: CertificateCreateInit): Promise<ARCCertificateIndex[]> {\n const data = this.mock.certificates.clientCertificates(size, opts);\n const responses = [];\n const indexDb = this.db('client-certificates');\n const dataDb = this.db('client-certificates-data');\n for (let i = 0; i < data.length; i++) {\n const cert = data[i];\n const dataEntity: ARCRequestCertificate = ({\n cert: this.mock.certificates.toStore(cert.cert),\n type: cert.type,\n });\n if (cert.key) {\n dataEntity.key = this.mock.certificates.toStore(cert.key);\n }\n const indexEntity: ARCCertificateIndex = ({\n name: cert.name,\n type: cert.type,\n });\n if (cert.created) {\n indexEntity.created = cert.created;\n } else {\n indexEntity.created = Date.now();\n }\n\n /* eslint-disable-next-line no-await-in-loop */\n const dataRes = await dataDb.post(dataEntity);\n indexEntity._id = dataRes.id;\n /* eslint-disable-next-line no-await-in-loop */\n responses[responses.length] = await indexDb.post(indexEntity);\n }\n return this.updateRevsAndIds(responses, data as any[]) as ARCCertificateIndex[];\n }\n\n async destroyClientCertificates(): Promise<void> {\n await this.db('client-certificates').destroy();\n await this.db('client-certificates-data').destroy();\n }\n\n /**\n * Destroys all databases.\n * @return Resolved promise when the data are cleared.\n */\n async destroyAll(): Promise<void> {\n await this.destroySaved();\n await this.destroyHistory();\n await this.destroyWebsockets();\n await this.destroyUrlHistory();\n await this.destroyVariables();\n await this.destroyCookies();\n await this.destroyBasicAuth();\n await this.destroyHostRules();\n await this.destroyApiIndexes();\n await this.destroyApiData();\n await this.destroyClientCertificates();\n }\n\n /**\n * Deeply clones an object.\n * @param {any[]|Date|object} obj Object to be cloned\n * @return {any[]|Date|object} Copied object\n */\n clone<T>(obj: T): T {\n let copy: any;\n if (obj === null || typeof obj !== 'object') {\n return obj;\n }\n if (obj instanceof Date) {\n copy = new Date();\n copy.setTime(obj.getTime());\n return copy;\n }\n if (Array.isArray(obj)) {\n copy = [];\n for (let i = 0, len = obj.length; i < len; i++) {\n copy[i] = this.clone(obj[i]);\n }\n return copy;\n }\n if (obj instanceof Object) {\n copy = {};\n Object.keys(obj).forEach((key) => {\n copy[key] = this.clone((obj as any)[key]);\n });\n return copy;\n }\n throw new Error(\"Unable to copy obj! Its type isn't supported.\");\n }\n\n /**\n * Reads all data from a data store.\n * @param name Name of the data store to read from. Without `_pouch_` prefix\n * @returns Promise resolved to all read docs.\n */\n async getDatastoreData(name: string): Promise<unknown[]> {\n const db = this.db(name);\n const response = await db.allDocs({\n include_docs: true,\n });\n return response.rows.map(item => item.doc);\n }\n\n async getDatastoreRequestData(): Promise<ARCSavedRequest[]> {\n return this.getDatastoreData('saved-requests') as Promise<ARCSavedRequest[]>;\n }\n\n async getDatastoreProjectsData(): Promise<ARCProject[]> {\n return this.getDatastoreData('legacy-projects') as Promise<ARCProject[]>;\n }\n\n async getDatastoreHistoryData(): Promise<ARCHistoryRequest[]> {\n return this.getDatastoreData('history-requests') as Promise<ARCHistoryRequest[]>;\n }\n\n async getDatastoreVariablesData(): Promise<ARCVariable[]> {\n return this.getDatastoreData('variables') as Promise<ARCVariable[]>;\n }\n\n async getDatastoreEnvironmentsData(): Promise<ARCEnvironment[]> {\n return this.getDatastoreData('variables-environments') as Promise<ARCEnvironment[]>;\n }\n\n async getDatastoreCookiesData(): Promise<ARCCookie[]> {\n return this.getDatastoreData('cookies') as Promise<ARCCookie[]>;\n }\n\n async getDatastoreWebsocketsData(): Promise<ARCUrlHistory[]> {\n return this.getDatastoreData('websocket-url-history') as Promise<ARCUrlHistory[]>;\n }\n\n async getDatastoreUrlsData(): Promise<ARCUrlHistory[]> {\n return this.getDatastoreData('url-history') as Promise<ARCUrlHistory[]>;\n }\n\n async getDatastoreAuthData(): Promise<ARCAuthData[]> {\n return this.getDatastoreData('auth-data') as Promise<ARCAuthData[]>;\n }\n\n async getDatastoreHostRulesData(): Promise<ARCHostRule[]> {\n return this.getDatastoreData('host-rules') as Promise<ARCHostRule[]>;\n }\n\n async getDatastoreApiIndexData(): Promise<ARCRestApiIndex[]> {\n return this.getDatastoreData('api-index') as Promise<ARCRestApiIndex[]>;\n }\n\n async getDatastoreHostApiData(): Promise<ARCRestApi[]> {\n return this.getDatastoreData('api-data') as Promise<ARCRestApi[]>;\n }\n\n async getDatastoreClientCertificates(): Promise<(ARCCertificateIndex[] | ARCRequestCertificate[])[]> {\n const certs = await this.getDatastoreData('client-certificates') as ARCCertificateIndex[];\n const data = await this.getDatastoreData('client-certificates-data') as ARCRequestCertificate[];\n return [certs, data];\n }\n\n /**\n * Updates an object in an data store.\n *\n * @param dbName Name of the data store.\n * @param obj The object to be stored.\n * @returns A promise resolved to insert result.\n */\n async updateObject(dbName: string, obj: any): Promise<PouchDB.Core.Response> {\n const db = this.db(dbName);\n return db.put(obj, {\n force: true,\n });\n }\n}\n"]}
|
|
@@ -3,6 +3,8 @@ import { ProjectMock } from '@api-client/core/build/browser.js';
|
|
|
3
3
|
* A class that generates HTTP Client data for tests.
|
|
4
4
|
*/
|
|
5
5
|
export class MockedStore {
|
|
6
|
-
|
|
6
|
+
constructor() {
|
|
7
|
+
this.mock = new ProjectMock;
|
|
8
|
+
}
|
|
7
9
|
}
|
|
8
10
|
//# sourceMappingURL=MockedStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MockedStore.js","sourceRoot":"","sources":["../../../src/http-client/idb/MockedStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;GAEG;AACH,MAAM,OAAO,WAAW;
|
|
1
|
+
{"version":3,"file":"MockedStore.js","sourceRoot":"","sources":["../../../src/http-client/idb/MockedStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;GAEG;AACH,MAAM,OAAO,WAAW;IAAxB;QACE,SAAI,GAAG,IAAI,WAAW,CAAC;IACzB,CAAC;CAAA","sourcesContent":["import { ProjectMock } from '@api-client/core/build/browser.js';\n\n/**\n * A class that generates HTTP Client data for tests.\n */\nexport class MockedStore {\n mock = new ProjectMock;\n}\n"]}
|
|
@@ -6,10 +6,7 @@ const PostmanV21Schema = 'https://schema.getpostman.com/json/collection/v2.1.0/c
|
|
|
6
6
|
* A helper class that controls data import logic.
|
|
7
7
|
*/
|
|
8
8
|
export class DataImportProcessor {
|
|
9
|
-
importData;
|
|
10
|
-
analysis;
|
|
11
9
|
#abortCtrl;
|
|
12
|
-
signal;
|
|
13
10
|
constructor() {
|
|
14
11
|
this.#abortCtrl = new AbortController();
|
|
15
12
|
this.signal = this.#abortCtrl.signal;
|