@api-client/ui 0.2.3 → 0.2.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/.aiexclude +3 -0
- package/.vscode/settings.json +6 -3
- package/build/src/elements/authorization/ui/ApiKeyAuthorization.d.ts +1 -1
- package/build/src/elements/authorization/ui/ApiKeyAuthorization.d.ts.map +1 -1
- package/build/src/elements/authorization/ui/ApiKeyAuthorization.js +7 -7
- package/build/src/elements/authorization/ui/ApiKeyAuthorization.js.map +1 -1
- package/build/src/elements/authorization/ui/Authorization.styles.js +4 -4
- package/build/src/elements/authorization/ui/Authorization.styles.js.map +1 -1
- package/build/src/elements/authorization/ui/BasicAuthorization.d.ts +1 -1
- package/build/src/elements/authorization/ui/BasicAuthorization.d.ts.map +1 -1
- package/build/src/elements/authorization/ui/BasicAuthorization.js +5 -5
- package/build/src/elements/authorization/ui/BasicAuthorization.js.map +1 -1
- package/build/src/elements/authorization/ui/BearerAuthorization.d.ts +1 -1
- package/build/src/elements/authorization/ui/BearerAuthorization.d.ts.map +1 -1
- package/build/src/elements/authorization/ui/BearerAuthorization.js +3 -3
- package/build/src/elements/authorization/ui/BearerAuthorization.js.map +1 -1
- package/build/src/elements/authorization/ui/NtlmAuthorization.d.ts +1 -1
- package/build/src/elements/authorization/ui/NtlmAuthorization.d.ts.map +1 -1
- package/build/src/elements/authorization/ui/NtlmAuthorization.js +7 -7
- package/build/src/elements/authorization/ui/NtlmAuthorization.js.map +1 -1
- package/build/src/elements/authorization/ui/OAuth2Authorization.d.ts +1 -1
- package/build/src/elements/authorization/ui/OAuth2Authorization.d.ts.map +1 -1
- package/build/src/elements/authorization/ui/OAuth2Authorization.js +32 -27
- package/build/src/elements/authorization/ui/OAuth2Authorization.js.map +1 -1
- package/build/src/elements/authorization/ui/OidcAuthorization.js +4 -4
- package/build/src/elements/authorization/ui/OidcAuthorization.js.map +1 -1
- package/build/src/elements/autocomplete/autocomplete-input.d.ts +10 -0
- package/build/src/elements/autocomplete/autocomplete-input.d.ts.map +1 -0
- package/build/src/{md/text-field/ui-text-field.js → elements/autocomplete/autocomplete-input.js} +9 -9
- package/build/src/elements/autocomplete/autocomplete-input.js.map +1 -0
- package/build/src/elements/autocomplete/internals/autocomplete.d.ts +257 -0
- package/build/src/elements/autocomplete/internals/autocomplete.d.ts.map +1 -0
- package/build/src/elements/autocomplete/internals/autocomplete.js +619 -0
- package/build/src/elements/autocomplete/internals/autocomplete.js.map +1 -0
- package/build/src/elements/autocomplete/internals/autocomplete.styles.d.ts +3 -0
- package/build/src/elements/autocomplete/internals/autocomplete.styles.d.ts.map +1 -0
- package/build/src/elements/autocomplete/internals/autocomplete.styles.js +25 -0
- package/build/src/elements/autocomplete/internals/autocomplete.styles.js.map +1 -0
- package/build/src/elements/dialog/internals/DeleteCookieAction.element.d.ts +1 -1
- package/build/src/elements/dialog/internals/DeleteCookieAction.element.d.ts.map +1 -1
- package/build/src/elements/dialog/internals/DeleteCookieAction.element.js +5 -5
- package/build/src/elements/dialog/internals/DeleteCookieAction.element.js.map +1 -1
- package/build/src/elements/dialog/internals/Rename.d.ts +1 -1
- package/build/src/elements/dialog/internals/Rename.d.ts.map +1 -1
- package/build/src/elements/dialog/internals/Rename.js +3 -3
- package/build/src/elements/dialog/internals/Rename.js.map +1 -1
- package/build/src/elements/dialog/internals/SetCookieAction.element.d.ts +1 -1
- package/build/src/elements/dialog/internals/SetCookieAction.element.d.ts.map +1 -1
- package/build/src/elements/dialog/internals/SetCookieAction.element.js +9 -9
- package/build/src/elements/dialog/internals/SetCookieAction.element.js.map +1 -1
- package/build/src/elements/environment/EnvironmentEditor.d.ts +1 -1
- package/build/src/elements/environment/EnvironmentEditor.d.ts.map +1 -1
- package/build/src/elements/environment/EnvironmentEditor.js +3 -3
- package/build/src/elements/environment/EnvironmentEditor.js.map +1 -1
- package/build/src/elements/environment/EnvironmentEditor.styles.js +1 -1
- package/build/src/elements/environment/EnvironmentEditor.styles.js.map +1 -1
- package/build/src/elements/environment/ServerEditor.d.ts +1 -1
- package/build/src/elements/environment/ServerEditor.d.ts.map +1 -1
- package/build/src/elements/environment/ServerEditor.js +7 -7
- package/build/src/elements/environment/ServerEditor.js.map +1 -1
- package/build/src/elements/environment/ServerEditor.styles.js +1 -1
- package/build/src/elements/environment/ServerEditor.styles.js.map +1 -1
- package/build/src/elements/http/BodyMultipartEditor.d.ts.map +1 -1
- package/build/src/elements/http/BodyMultipartEditor.js +4 -0
- package/build/src/elements/http/BodyMultipartEditor.js.map +1 -1
- package/build/src/elements/http/CertificateAdd.element.d.ts +1 -1
- package/build/src/elements/http/CertificateAdd.element.d.ts.map +1 -1
- package/build/src/elements/http/CertificateAdd.element.js +8 -8
- package/build/src/elements/http/CertificateAdd.element.js.map +1 -1
- package/build/src/elements/http/CertificateAdd.styles.js +1 -1
- package/build/src/elements/http/CertificateAdd.styles.js.map +1 -1
- package/build/src/elements/http/HttpAssertions.element.js +3 -3
- package/build/src/elements/http/HttpAssertions.element.js.map +1 -1
- package/build/src/elements/http/HttpFlows.element.js +3 -3
- package/build/src/elements/http/HttpFlows.element.js.map +1 -1
- package/build/src/elements/http/HttpFlowsUi.d.ts +1 -1
- package/build/src/elements/http/HttpFlowsUi.d.ts.map +1 -1
- package/build/src/elements/http/HttpFlowsUi.js +31 -31
- package/build/src/elements/http/HttpFlowsUi.js.map +1 -1
- package/build/src/elements/http/RequestConfigElement.d.ts +1 -1
- package/build/src/elements/http/RequestConfigElement.d.ts.map +1 -1
- package/build/src/elements/http/RequestConfigElement.js +7 -7
- package/build/src/elements/http/RequestConfigElement.js.map +1 -1
- package/build/src/elements/http/UrlParamsForm.d.ts +1 -1
- package/build/src/elements/http/UrlParamsForm.d.ts.map +1 -1
- package/build/src/elements/http/UrlParamsForm.js +1 -1
- package/build/src/elements/http/UrlParamsForm.js.map +1 -1
- package/build/src/elements/project/ProjectRunner.d.ts +1 -1
- package/build/src/elements/project/ProjectRunner.d.ts.map +1 -1
- package/build/src/elements/project/ProjectRunner.js +5 -5
- package/build/src/elements/project/ProjectRunner.js.map +1 -1
- package/build/src/md/input/Input.d.ts +0 -15
- package/build/src/md/input/Input.d.ts.map +1 -1
- package/build/src/md/input/Input.js +7 -42
- package/build/src/md/input/Input.js.map +1 -1
- package/build/src/md/list/internals/List.d.ts +7 -2
- package/build/src/md/list/internals/List.d.ts.map +1 -1
- package/build/src/md/list/internals/List.js +6 -0
- package/build/src/md/list/internals/List.js.map +1 -1
- package/build/src/md/list/internals/ListItem.styles.d.ts.map +1 -1
- package/build/src/md/list/internals/ListItem.styles.js +8 -0
- package/build/src/md/list/internals/ListItem.styles.js.map +1 -1
- package/build/src/md/listbox/internals/Listbox.d.ts +2 -2
- package/build/src/md/listbox/internals/Listbox.d.ts.map +1 -1
- package/build/src/md/listbox/internals/Listbox.js.map +1 -1
- package/build/src/md/text-area/internals/TextAreaElement.d.ts.map +1 -1
- package/build/src/md/text-area/internals/TextAreaElement.js +0 -5
- package/build/src/md/text-area/internals/TextAreaElement.js.map +1 -1
- package/build/src/md/text-area/ui-text-area.d.ts.map +1 -1
- package/build/src/md/text-area/ui-text-area.js +3 -2
- package/build/src/md/text-area/ui-text-area.js.map +1 -1
- package/build/src/md/text-field/internals/{TextFieldElement.d.ts → TextField.d.ts} +2 -2
- package/build/src/md/text-field/internals/TextField.d.ts.map +1 -0
- package/build/src/md/text-field/internals/{TextFieldElement.js → TextField.js} +2 -5
- package/build/src/md/text-field/internals/TextField.js.map +1 -0
- package/build/src/md/text-field/internals/{TextField.styles.d.ts → common.styles.d.ts} +1 -1
- package/build/src/md/text-field/internals/common.styles.d.ts.map +1 -0
- package/build/src/md/text-field/internals/{TextField.styles.js → common.styles.js} +8 -94
- package/build/src/md/text-field/internals/common.styles.js.map +1 -0
- package/build/src/md/text-field/internals/filled.styles.d.ts +3 -0
- package/build/src/md/text-field/internals/filled.styles.d.ts.map +1 -0
- package/build/src/md/text-field/internals/filled.styles.js +107 -0
- package/build/src/md/text-field/internals/filled.styles.js.map +1 -0
- package/build/src/md/text-field/internals/outlined.styles.d.ts +3 -0
- package/build/src/md/text-field/internals/outlined.styles.d.ts.map +1 -0
- package/build/src/md/text-field/internals/outlined.styles.js +43 -0
- package/build/src/md/text-field/internals/outlined.styles.js.map +1 -0
- package/build/src/md/text-field/ui-filled-text-field.d.ts +11 -0
- package/build/src/md/text-field/ui-filled-text-field.d.ts.map +1 -0
- package/build/src/md/text-field/ui-filled-text-field.js +28 -0
- package/build/src/md/text-field/ui-filled-text-field.js.map +1 -0
- package/build/src/md/text-field/ui-outlined-text-field.d.ts +11 -0
- package/build/src/md/text-field/ui-outlined-text-field.d.ts.map +1 -0
- package/build/src/md/text-field/ui-outlined-text-field.js +28 -0
- package/build/src/md/text-field/ui-outlined-text-field.js.map +1 -0
- package/build/src/types/input.d.ts +1 -1
- package/build/src/types/input.d.ts.map +1 -1
- package/build/src/types/input.js.map +1 -1
- package/demo/elements/authorization/oauth-authorize.html +4 -4
- package/demo/elements/authorization/oauth-authorize.ts +1 -1
- package/demo/elements/autocomplete/index.html +64 -0
- package/demo/elements/autocomplete/index.ts +171 -0
- package/demo/elements/http/body-editor.ts +3 -3
- package/demo/elements/index.html +15 -11
- package/demo/md/index.html +1 -1
- package/demo/md/inputs/input.html +10 -15
- package/demo/md/inputs/input.ts +389 -101
- package/demo/page.css +4 -0
- package/package.json +1 -1
- package/src/elements/authorization/ui/ApiKeyAuthorization.ts +7 -7
- package/src/elements/authorization/ui/Authorization.styles.ts +4 -4
- package/src/elements/authorization/ui/BasicAuthorization.ts +5 -5
- package/src/elements/authorization/ui/BearerAuthorization.ts +3 -3
- package/src/elements/authorization/ui/NtlmAuthorization.ts +7 -7
- package/src/elements/authorization/ui/OAuth2Authorization.ts +32 -27
- package/src/elements/authorization/ui/OidcAuthorization.ts +4 -4
- package/src/elements/autocomplete/autocomplete-input.ts +14 -0
- package/src/elements/autocomplete/internals/autocomplete.styles.ts +25 -0
- package/src/elements/autocomplete/internals/autocomplete.ts +599 -0
- package/src/elements/dialog/internals/DeleteCookieAction.element.ts +5 -5
- package/src/elements/dialog/internals/Rename.ts +3 -3
- package/src/elements/dialog/internals/SetCookieAction.element.ts +9 -9
- package/src/elements/environment/EnvironmentEditor.styles.ts +1 -1
- package/src/elements/environment/EnvironmentEditor.ts +3 -3
- package/src/elements/environment/ServerEditor.styles.ts +1 -1
- package/src/elements/environment/ServerEditor.ts +7 -7
- package/src/elements/http/BodyMultipartEditor.ts +4 -0
- package/src/elements/http/CertificateAdd.element.ts +8 -8
- package/src/elements/http/CertificateAdd.styles.ts +1 -1
- package/src/elements/http/HttpAssertions.element.ts +3 -3
- package/src/elements/http/HttpFlows.element.ts +3 -3
- package/src/elements/http/HttpFlowsUi.ts +31 -31
- package/src/elements/http/RequestConfigElement.ts +7 -7
- package/src/elements/http/UrlParamsForm.ts +1 -1
- package/src/elements/project/ProjectRunner.ts +5 -5
- package/src/md/input/Input.ts +6 -21
- package/src/md/list/internals/List.ts +14 -2
- package/src/md/list/internals/ListItem.styles.ts +8 -0
- package/src/md/listbox/internals/Listbox.ts +2 -2
- package/src/md/text-area/internals/TextAreaElement.ts +0 -5
- package/src/md/text-area/ui-text-area.ts +3 -2
- package/src/md/text-field/internals/{TextFieldElement.ts → TextField.ts} +1 -4
- package/src/md/text-field/internals/{TextField.styles.ts → common.styles.ts} +7 -93
- package/src/md/text-field/internals/filled.styles.ts +107 -0
- package/src/md/text-field/internals/outlined.styles.ts +43 -0
- package/src/md/text-field/ui-filled-text-field.ts +16 -0
- package/src/md/text-field/ui-outlined-text-field.ts +16 -0
- package/src/types/input.ts +0 -1
- package/test/elements/authorization/basic-method.test.ts +3 -3
- package/test/elements/authorization/bearer-method.test.ts +2 -2
- package/test/elements/authorization/ntlm-method.test.ts +4 -4
- package/test/elements/autocomplete/autocomplete-input.spec.ts +643 -0
- package/test/elements/http/BodyMultipartEditorElement.test.ts +15 -16
- package/test/elements/http/CertificateAdd.test.ts +11 -11
- package/test/elements/http/HttpAssertions.test.ts +9 -9
- package/test/elements/http/HttpFlows.test.ts +4 -4
- package/build/src/md/text-field/internals/TextField.styles.d.ts.map +0 -1
- package/build/src/md/text-field/internals/TextField.styles.js.map +0 -1
- package/build/src/md/text-field/internals/TextFieldElement.d.ts.map +0 -1
- package/build/src/md/text-field/internals/TextFieldElement.js.map +0 -1
- package/build/src/md/text-field/ui-text-field.d.ts +0 -11
- package/build/src/md/text-field/ui-text-field.d.ts.map +0 -1
- package/build/src/md/text-field/ui-text-field.js.map +0 -1
- package/src/md/text-field/ui-text-field.ts +0 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentEditor.js","sourceRoot":"","sources":["../../../../src/elements/environment/EnvironmentEditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult, CSSResult } from 'lit'\nimport { property, state } from 'lit/decorators.js'\nimport { Environment, type IEnvironment } from '@api-client/core/models/Environment.js'\nimport { type IProperty } from '@api-client/core/models/Property.js'\nimport { type IServer, Server } from '@api-client/core/models/Server.js'\nimport { type AuthorizationType } from '@api-client/core/models/Authorization.js'\nimport { type IRequestAuthorization, RequestAuthorization } from '@api-client/core/models/RequestAuthorization.js'\nimport { live } from 'lit/directives/live.js'\nimport ApiElement from '../ApiElement.js'\nimport ServerEditor from './ServerEditor.js'\nimport VariablesEditor from './VariablesEditor.js'\nimport { Events } from '../../events/Events.js'\nimport Input from '../../md/input/Input.js'\nimport elementStyles from './EnvironmentEditor.styles.js'\nimport SwitchElement from '../../md/switch/internals/SwitchElement.js'\nimport { authTypeToLabel } from '../authorization/AuthLabels.js'\nimport { Authorization } from '../authorization/ui/Authorization.js'\nimport { TabSelectionDetail } from '../../md/tabs/internals/Tabs.js'\n\nimport '../../define/environment/server-editor.js'\nimport '../../define/environment/variables-editor.js'\nimport '../../md/icons/ui-icon.js'\nimport '../../md/text-field/ui-text-field.js'\nimport '../../md/switch/ui-switch.js'\nimport '../../md/icon-button/ui-icon-button.js'\nimport '../../md/button/ui-filled-tonal-button.js'\nimport '../../md/divider/ui-divider.js'\nimport '../../md/tabs/ui-tabs.js'\nimport '../../md/tabs/ui-tab.js'\nimport '../../define/authorization/basic-authorization.js'\nimport '../../define/authorization/bearer-authorization.js'\nimport '../../define/authorization/ntlm-authorization.js'\nimport '../../define/authorization/apikey-authorization.js'\nimport '../../define/authorization/oauth2-authorization.js'\nimport '../../define/authorization/oidc-authorization.js'\nimport '../../define/authorization/cc-authorization.js'\n\ntype EditorPage = 'server' | 'variables' | 'authorization'\n\n/**\n * An element that renders a form to set up an environment.\n */\nexport default class EnvironmentEditor extends ApiElement {\n static override get styles(): CSSResult[] {\n return [elementStyles]\n }\n\n /**\n * The environment schema to edit.\n */\n @property({ type: Object }) accessor environment: IEnvironment = new Environment().toJSON()\n\n /**\n * Redirect URL for the OAuth2 authorization.\n * If can be also set by dispatching `oauth2-redirect-url-changed`\n * with `value` property on the `detail` object.\n * @attribute\n */\n @property({ type: String }) accessor oauth2RedirectUri: string | undefined\n\n @state() accessor encapsulateHelp: boolean\n\n /**\n * @attribute\n */\n @property({ type: String }) accessor selected: EditorPage\n\n constructor() {\n super()\n this.encapsulateHelp = false\n this.selected = 'server'\n }\n\n updateName(value: string): void {\n this.environment.info.name = value\n this.notifyChange()\n Events.HttpProject.State.nameChanged(this.environment.key, this.environment.kind, this)\n }\n\n updateEncapsulated(value: boolean): void {\n this.environment.encapsulated = value\n this.notifyChange()\n }\n\n deleteServer(): void {\n this.environment.server = undefined\n this.requestUpdate()\n this.notifyChange()\n }\n\n updateVariables(value?: IProperty[]): void {\n if (value) {\n this.environment.variables = value\n }\n this.notifyChange()\n // when modifying variables they won't be reflected in the server editor.\n const node = this.shadowRoot?.querySelector('server-editor')\n if (node) {\n node.generateValue()\n }\n }\n\n protected handleServerChange(e: Event): void {\n const editor = e.target as ServerEditor\n const value = editor.getSchema()\n this.environment.server = value\n this.notifyChange()\n }\n\n protected handleVariableChange(e: Event): void {\n const editor = e.target as VariablesEditor\n const { variables } = editor\n this.updateVariables(variables)\n }\n\n protected _createServerHandler(): void {\n const server = new Server()\n this.environment.server = server.toJSON()\n this.requestUpdate()\n }\n\n protected handleEncapsulatedChange(e: Event): void {\n const input = e.target as SwitchElement\n this.updateEncapsulated(!!input.checked)\n }\n\n protected handleNameChange(e: Event): void {\n const input = e.target as Input\n this.updateName(input.value)\n input.checkValidity()\n }\n\n protected handleToggleHelp(): void {\n this.encapsulateHelp = !this.encapsulateHelp\n }\n\n protected handleServerDelete(): void {\n this.deleteServer()\n }\n\n protected handleAuthAdd(e: CustomEvent): void {\n const target = e.detail.item as HTMLElement | undefined\n if (!target) {\n return\n }\n const selected = target.dataset.type as AuthorizationType | undefined\n if (!selected) {\n return\n }\n this.addAuthorization(selected)\n }\n\n /**\n * Adds a new authorization object to the request for the given type.\n *\n * @returns The created instance of the authorization.\n */\n addAuthorization(type: AuthorizationType): RequestAuthorization {\n const cnf = RequestAuthorization.fromTypedConfig(type, {}, false)\n cnf.enabled = true\n if (!this.environment.authorization) {\n this.environment.authorization = []\n }\n this.environment.authorization.push(cnf.toJSON())\n this.notifyChange()\n this.requestUpdate()\n return cnf\n }\n\n protected handleAuthChange(e: Event): void {\n const editor = e.target as Authorization\n const { authorization } = editor\n this.updateAuthorization(authorization as IRequestAuthorization, editor.checkValidity())\n }\n\n protected handleAuthDelete(e: Event): void {\n const editor = e.target as Authorization\n const { authorization } = editor\n if (!authorization) {\n return\n }\n this.removeAuthorization(authorization.type)\n }\n\n /**\n * Updates authorization schema on the editor.\n * @param schema The new schema to replace the old one\n * @param isValid Whether the schema is valid.\n */\n updateAuthorization(schema: IRequestAuthorization, isValid: boolean): void {\n const { authorization } = this.environment\n if (!authorization) {\n return\n }\n const index = authorization.findIndex((i) => i.type === schema.type)\n if (index === -1) {\n return\n }\n schema.valid = isValid\n authorization[index] = schema\n this.notifyChange()\n }\n\n /**\n * Removes authorization schema from the editor.\n * @param type The authorization type to remove.\n */\n removeAuthorization(type: string): void {\n const { authorization } = this.environment\n if (!authorization) {\n return\n }\n const index = authorization.findIndex((i) => i.type === type)\n if (index === -1) {\n return\n }\n authorization.splice(index, 1)\n this.notifyChange()\n this.requestUpdate()\n }\n\n protected handleTabSelection(e: CustomEvent<TabSelectionDetail>): void {\n const { item } = e.detail\n const { page } = item.dataset\n if (!page) {\n return\n }\n this.selected = page as EditorPage\n }\n\n protected override render(): TemplateResult {\n return html` ${this.renderHeader()} ${this.renderEnvironmentEditor()} ${this.renderTabs()} ${this.renderPage()} `\n }\n\n protected renderHeader(): TemplateResult {\n return html`<div class=\"section-title\">Environment</div>`\n }\n\n protected renderPage(): TemplateResult {\n switch (this.selected) {\n case 'authorization':\n return this.renderAuthorization()\n case 'variables':\n return this.renderVariables()\n default:\n return this.renderServerTemplate()\n }\n }\n\n protected renderEnvironmentEditor(): TemplateResult {\n return html`\n <section aria-label=\"Environment configuration\">${this.renderNameInput()} ${this.renderEncapsulate()}</section>\n `\n }\n\n protected renderNameInput(): TemplateResult {\n const { environment } = this\n return html` <div class=\"form-item\">\n <ui-text-field\n name=\"name\"\n label=\"Environment name\"\n required\n .value=\"${live(environment.info.name || '')}\"\n @change=\"${this.handleNameChange}\"\n ></ui-text-field>\n </div>`\n }\n\n protected renderEncapsulate(): TemplateResult {\n const { encapsulateHelp } = this\n return html`\n <div class=\"encapsulate-item\">${this.renderEncapsulateInput()} ${this.renderEncapsulateInfoToggle()}</div>\n ${encapsulateHelp\n ? html`\n <div class=\"help-banner\">\n By default when running requests in a folder the application reads all environments up to the project\n root. The variables are then combined into a single object. When <i>encapsulated</i> is enabled, the\n program stops reading environments above the folder the environment is defined.\n </div>\n `\n : ''}\n `\n }\n\n protected renderEncapsulateInput(): TemplateResult {\n const { environment } = this\n return html`\n <label>\n <ui-switch\n name=\"encapsulated\"\n .checked=\"${environment.encapsulated || false}\"\n @change=\"${this.handleEncapsulatedChange}\"\n aria-label=\"Encapsulate the environment\"\n ></ui-switch>\n Encapsulate the environment\n </label>\n `\n }\n\n protected renderEncapsulateInfoToggle(): TemplateResult {\n return html`\n <ui-icon-button aria-label=\"Show or hide help topic\" @click=\"${this.handleToggleHelp}\">\n <ui-icon icon=\"info\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `\n }\n\n protected renderServerTemplate(): TemplateResult {\n const { server } = this.environment\n return html`\n <section aria-label=\"Server information\" id=\"server\" class=\"editor-container\">\n ${server ? this.renderServerEditor(server) : this.renderNoServer()}\n </section>\n `\n }\n\n protected renderNoServer(): TemplateResult {\n return html`\n <div class=\"section-title\">Server</div>\n <p class=\"empty-info\">No server defined.</p>\n <ui-filled-tonal-button @click=\"${this._createServerHandler}\">Create server</ui-filled-tonal-button>\n `\n }\n\n protected renderServerEditor(server: IServer): TemplateResult {\n const { uri, basePath, description, protocol } = server\n return html`\n <server-editor\n .uri=\"${uri}\"\n .basePath=\"${basePath}\"\n .description=\"${description}\"\n .protocol=\"${protocol}\"\n .variables=\"${this.environment.variables}\"\n @change=\"${this.handleServerChange}\"\n @delete=\"${this.handleServerDelete}\"\n ></server-editor>\n `\n }\n\n protected renderVariables(): TemplateResult {\n return html`\n <section aria-label=\"Variables\" id=\"variables\" class=\"editor-container\">${this.renderVariablesEditor()}</section>\n `\n }\n\n protected renderVariablesEditor(): TemplateResult {\n const { variables } = this.environment\n return html`<variables-editor .variables=\"${variables}\" @change=\"${this.handleVariableChange}\"></variables-editor>`\n }\n\n protected renderAuthorization(): TemplateResult {\n const { authorization = [] } = this.environment\n return html`\n <section id=\"authorization\" aria-label=\"Authorization\" class=\"editor-container\">\n <div class=\"section-title\">Authorization</div>\n <p class=\"auth-info\">\n The authorization is applied to all requests in the current folder when the request is executed.\n </p>\n ${this.renderAuthorizationActions(authorization)} ${this.renderAuthorizationList(authorization)}\n </section>\n `\n }\n\n protected renderAuthorizationActions(current: IRequestAuthorization[] = []): TemplateResult {\n const all = ['basic', 'oauth 2', 'open id', 'bearer', 'api key', 'ntlm', 'client certificate']\n const toRender: string[] = all.filter((type) => !current.some((i) => i.type === type))\n return html`\n <ui-dropdown-list verticalAlign=\"top\" @select=\"${this.handleAuthAdd}\" class=\"auth-dropdown\" closeOnOutsideClick>\n <ui-filled-tonal-button\n title=\"Add authorization option\"\n aria-label=\"Opens a menu to select authorization option\"\n ?disabled=\"${!toRender.length}\"\n >\n <ui-icon icon=\"arrowDropDown\" slot=\"icon\" role=\"presentation\"></ui-icon>\n Add\n </ui-filled-tonal-button>\n <ui-list slot=\"dropdown\" role=\"menu\"> ${this.renderAuthorizationOptions(toRender)} </ui-list>\n </ui-dropdown-list>\n `\n }\n\n protected renderAuthorizationOptions(available: string[]): TemplateResult {\n return html`\n ${available.map(\n (type) => html` <ui-list-item role=\"menuitem\" data-type=\"${type}\"> ${authTypeToLabel(type)} </ui-list-item> `\n )}\n `\n }\n\n protected renderAuthorizationList(authorization: IRequestAuthorization[] = []): TemplateResult[] {\n if (!Array.isArray(authorization) || !authorization.length) {\n return [this.renderEmptyAuthorization()]\n }\n return authorization.map((item, index) => {\n let content: TemplateResult | undefined\n switch (item.type) {\n case 'basic':\n content = this.renderBasicAuthorization(item)\n break\n case 'bearer':\n content = this.renderBearerAuthorization(item)\n break\n case 'ntlm':\n content = this.renderNtlmAuthorization(item)\n break\n case 'oauth 2':\n content = this.renderOauthAuthorization(item)\n break\n case 'open id':\n content = this.renderOidcAuthorization(item)\n break\n case 'client certificate':\n content = this.renderCCAuthorization(item)\n break\n case 'api key':\n content = this.renderApiKeyAuthorization(item)\n break\n default:\n }\n if (content) {\n const isLast = authorization.length === index + 1\n return html` ${content} ${!isLast ? html`<ui-divider></ui-divider>` : ''} `\n }\n return html``\n })\n }\n\n protected renderEmptyAuthorization(): TemplateResult {\n return html``\n }\n\n protected renderBasicAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <basic-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></basic-authorization>\n `\n }\n\n protected renderBearerAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <bearer-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></bearer-authorization>\n `\n }\n\n protected renderNtlmAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <ntlm-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></ntlm-authorization>\n `\n }\n\n protected renderOauthAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <oauth2-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n .defaultRedirectUri=\"${this.oauth2RedirectUri}\"\n ></oauth2-authorization>\n `\n }\n\n protected renderOidcAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <oidc-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n .defaultRedirectUri=\"${this.oauth2RedirectUri}\"\n ></oidc-authorization>\n `\n }\n\n protected renderCCAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <cc-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></cc-authorization>\n `\n }\n\n protected renderApiKeyAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <apikey-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></apikey-authorization>\n `\n }\n\n protected renderTabs(): TemplateResult {\n return html`\n <ui-tabs .selected=\"${this.selected}\" @select=\"${this.handleTabSelection}\">\n <ui-tab aria-controls=\"server\" data-page=\"server\">Server</ui-tab>\n <ui-tab aria-controls=\"variables\" data-page=\"variables\">Variables</ui-tab>\n <ui-tab aria-controls=\"authorization\" data-page=\"authorization\">Authorization</ui-tab>\n </ui-tabs>\n `\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"EnvironmentEditor.js","sourceRoot":"","sources":["../../../../src/elements/environment/EnvironmentEditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult, CSSResult } from 'lit'\nimport { property, state } from 'lit/decorators.js'\nimport { Environment, type IEnvironment } from '@api-client/core/models/Environment.js'\nimport { type IProperty } from '@api-client/core/models/Property.js'\nimport { type IServer, Server } from '@api-client/core/models/Server.js'\nimport { type AuthorizationType } from '@api-client/core/models/Authorization.js'\nimport { type IRequestAuthorization, RequestAuthorization } from '@api-client/core/models/RequestAuthorization.js'\nimport { live } from 'lit/directives/live.js'\nimport ApiElement from '../ApiElement.js'\nimport ServerEditor from './ServerEditor.js'\nimport VariablesEditor from './VariablesEditor.js'\nimport { Events } from '../../events/Events.js'\nimport Input from '../../md/input/Input.js'\nimport elementStyles from './EnvironmentEditor.styles.js'\nimport SwitchElement from '../../md/switch/internals/SwitchElement.js'\nimport { authTypeToLabel } from '../authorization/AuthLabels.js'\nimport { Authorization } from '../authorization/ui/Authorization.js'\nimport { TabSelectionDetail } from '../../md/tabs/internals/Tabs.js'\n\nimport '../../define/environment/server-editor.js'\nimport '../../define/environment/variables-editor.js'\nimport '../../md/icons/ui-icon.js'\nimport '../../md/text-field/ui-filled-text-field.js'\nimport '../../md/switch/ui-switch.js'\nimport '../../md/icon-button/ui-icon-button.js'\nimport '../../md/button/ui-filled-tonal-button.js'\nimport '../../md/divider/ui-divider.js'\nimport '../../md/tabs/ui-tabs.js'\nimport '../../md/tabs/ui-tab.js'\nimport '../../define/authorization/basic-authorization.js'\nimport '../../define/authorization/bearer-authorization.js'\nimport '../../define/authorization/ntlm-authorization.js'\nimport '../../define/authorization/apikey-authorization.js'\nimport '../../define/authorization/oauth2-authorization.js'\nimport '../../define/authorization/oidc-authorization.js'\nimport '../../define/authorization/cc-authorization.js'\n\ntype EditorPage = 'server' | 'variables' | 'authorization'\n\n/**\n * An element that renders a form to set up an environment.\n */\nexport default class EnvironmentEditor extends ApiElement {\n static override get styles(): CSSResult[] {\n return [elementStyles]\n }\n\n /**\n * The environment schema to edit.\n */\n @property({ type: Object }) accessor environment: IEnvironment = new Environment().toJSON()\n\n /**\n * Redirect URL for the OAuth2 authorization.\n * If can be also set by dispatching `oauth2-redirect-url-changed`\n * with `value` property on the `detail` object.\n * @attribute\n */\n @property({ type: String }) accessor oauth2RedirectUri: string | undefined\n\n @state() accessor encapsulateHelp: boolean\n\n /**\n * @attribute\n */\n @property({ type: String }) accessor selected: EditorPage\n\n constructor() {\n super()\n this.encapsulateHelp = false\n this.selected = 'server'\n }\n\n updateName(value: string): void {\n this.environment.info.name = value\n this.notifyChange()\n Events.HttpProject.State.nameChanged(this.environment.key, this.environment.kind, this)\n }\n\n updateEncapsulated(value: boolean): void {\n this.environment.encapsulated = value\n this.notifyChange()\n }\n\n deleteServer(): void {\n this.environment.server = undefined\n this.requestUpdate()\n this.notifyChange()\n }\n\n updateVariables(value?: IProperty[]): void {\n if (value) {\n this.environment.variables = value\n }\n this.notifyChange()\n // when modifying variables they won't be reflected in the server editor.\n const node = this.shadowRoot?.querySelector('server-editor')\n if (node) {\n node.generateValue()\n }\n }\n\n protected handleServerChange(e: Event): void {\n const editor = e.target as ServerEditor\n const value = editor.getSchema()\n this.environment.server = value\n this.notifyChange()\n }\n\n protected handleVariableChange(e: Event): void {\n const editor = e.target as VariablesEditor\n const { variables } = editor\n this.updateVariables(variables)\n }\n\n protected _createServerHandler(): void {\n const server = new Server()\n this.environment.server = server.toJSON()\n this.requestUpdate()\n }\n\n protected handleEncapsulatedChange(e: Event): void {\n const input = e.target as SwitchElement\n this.updateEncapsulated(!!input.checked)\n }\n\n protected handleNameChange(e: Event): void {\n const input = e.target as Input\n this.updateName(input.value)\n input.checkValidity()\n }\n\n protected handleToggleHelp(): void {\n this.encapsulateHelp = !this.encapsulateHelp\n }\n\n protected handleServerDelete(): void {\n this.deleteServer()\n }\n\n protected handleAuthAdd(e: CustomEvent): void {\n const target = e.detail.item as HTMLElement | undefined\n if (!target) {\n return\n }\n const selected = target.dataset.type as AuthorizationType | undefined\n if (!selected) {\n return\n }\n this.addAuthorization(selected)\n }\n\n /**\n * Adds a new authorization object to the request for the given type.\n *\n * @returns The created instance of the authorization.\n */\n addAuthorization(type: AuthorizationType): RequestAuthorization {\n const cnf = RequestAuthorization.fromTypedConfig(type, {}, false)\n cnf.enabled = true\n if (!this.environment.authorization) {\n this.environment.authorization = []\n }\n this.environment.authorization.push(cnf.toJSON())\n this.notifyChange()\n this.requestUpdate()\n return cnf\n }\n\n protected handleAuthChange(e: Event): void {\n const editor = e.target as Authorization\n const { authorization } = editor\n this.updateAuthorization(authorization as IRequestAuthorization, editor.checkValidity())\n }\n\n protected handleAuthDelete(e: Event): void {\n const editor = e.target as Authorization\n const { authorization } = editor\n if (!authorization) {\n return\n }\n this.removeAuthorization(authorization.type)\n }\n\n /**\n * Updates authorization schema on the editor.\n * @param schema The new schema to replace the old one\n * @param isValid Whether the schema is valid.\n */\n updateAuthorization(schema: IRequestAuthorization, isValid: boolean): void {\n const { authorization } = this.environment\n if (!authorization) {\n return\n }\n const index = authorization.findIndex((i) => i.type === schema.type)\n if (index === -1) {\n return\n }\n schema.valid = isValid\n authorization[index] = schema\n this.notifyChange()\n }\n\n /**\n * Removes authorization schema from the editor.\n * @param type The authorization type to remove.\n */\n removeAuthorization(type: string): void {\n const { authorization } = this.environment\n if (!authorization) {\n return\n }\n const index = authorization.findIndex((i) => i.type === type)\n if (index === -1) {\n return\n }\n authorization.splice(index, 1)\n this.notifyChange()\n this.requestUpdate()\n }\n\n protected handleTabSelection(e: CustomEvent<TabSelectionDetail>): void {\n const { item } = e.detail\n const { page } = item.dataset\n if (!page) {\n return\n }\n this.selected = page as EditorPage\n }\n\n protected override render(): TemplateResult {\n return html` ${this.renderHeader()} ${this.renderEnvironmentEditor()} ${this.renderTabs()} ${this.renderPage()} `\n }\n\n protected renderHeader(): TemplateResult {\n return html`<div class=\"section-title\">Environment</div>`\n }\n\n protected renderPage(): TemplateResult {\n switch (this.selected) {\n case 'authorization':\n return this.renderAuthorization()\n case 'variables':\n return this.renderVariables()\n default:\n return this.renderServerTemplate()\n }\n }\n\n protected renderEnvironmentEditor(): TemplateResult {\n return html`\n <section aria-label=\"Environment configuration\">${this.renderNameInput()} ${this.renderEncapsulate()}</section>\n `\n }\n\n protected renderNameInput(): TemplateResult {\n const { environment } = this\n return html` <div class=\"form-item\">\n <ui-filled-text-field\n name=\"name\"\n label=\"Environment name\"\n required\n .value=\"${live(environment.info.name || '')}\"\n @change=\"${this.handleNameChange}\"\n ></ui-filled-text-field>\n </div>`\n }\n\n protected renderEncapsulate(): TemplateResult {\n const { encapsulateHelp } = this\n return html`\n <div class=\"encapsulate-item\">${this.renderEncapsulateInput()} ${this.renderEncapsulateInfoToggle()}</div>\n ${encapsulateHelp\n ? html`\n <div class=\"help-banner\">\n By default when running requests in a folder the application reads all environments up to the project\n root. The variables are then combined into a single object. When <i>encapsulated</i> is enabled, the\n program stops reading environments above the folder the environment is defined.\n </div>\n `\n : ''}\n `\n }\n\n protected renderEncapsulateInput(): TemplateResult {\n const { environment } = this\n return html`\n <label>\n <ui-switch\n name=\"encapsulated\"\n .checked=\"${environment.encapsulated || false}\"\n @change=\"${this.handleEncapsulatedChange}\"\n aria-label=\"Encapsulate the environment\"\n ></ui-switch>\n Encapsulate the environment\n </label>\n `\n }\n\n protected renderEncapsulateInfoToggle(): TemplateResult {\n return html`\n <ui-icon-button aria-label=\"Show or hide help topic\" @click=\"${this.handleToggleHelp}\">\n <ui-icon icon=\"info\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `\n }\n\n protected renderServerTemplate(): TemplateResult {\n const { server } = this.environment\n return html`\n <section aria-label=\"Server information\" id=\"server\" class=\"editor-container\">\n ${server ? this.renderServerEditor(server) : this.renderNoServer()}\n </section>\n `\n }\n\n protected renderNoServer(): TemplateResult {\n return html`\n <div class=\"section-title\">Server</div>\n <p class=\"empty-info\">No server defined.</p>\n <ui-filled-tonal-button @click=\"${this._createServerHandler}\">Create server</ui-filled-tonal-button>\n `\n }\n\n protected renderServerEditor(server: IServer): TemplateResult {\n const { uri, basePath, description, protocol } = server\n return html`\n <server-editor\n .uri=\"${uri}\"\n .basePath=\"${basePath}\"\n .description=\"${description}\"\n .protocol=\"${protocol}\"\n .variables=\"${this.environment.variables}\"\n @change=\"${this.handleServerChange}\"\n @delete=\"${this.handleServerDelete}\"\n ></server-editor>\n `\n }\n\n protected renderVariables(): TemplateResult {\n return html`\n <section aria-label=\"Variables\" id=\"variables\" class=\"editor-container\">${this.renderVariablesEditor()}</section>\n `\n }\n\n protected renderVariablesEditor(): TemplateResult {\n const { variables } = this.environment\n return html`<variables-editor .variables=\"${variables}\" @change=\"${this.handleVariableChange}\"></variables-editor>`\n }\n\n protected renderAuthorization(): TemplateResult {\n const { authorization = [] } = this.environment\n return html`\n <section id=\"authorization\" aria-label=\"Authorization\" class=\"editor-container\">\n <div class=\"section-title\">Authorization</div>\n <p class=\"auth-info\">\n The authorization is applied to all requests in the current folder when the request is executed.\n </p>\n ${this.renderAuthorizationActions(authorization)} ${this.renderAuthorizationList(authorization)}\n </section>\n `\n }\n\n protected renderAuthorizationActions(current: IRequestAuthorization[] = []): TemplateResult {\n const all = ['basic', 'oauth 2', 'open id', 'bearer', 'api key', 'ntlm', 'client certificate']\n const toRender: string[] = all.filter((type) => !current.some((i) => i.type === type))\n return html`\n <ui-dropdown-list verticalAlign=\"top\" @select=\"${this.handleAuthAdd}\" class=\"auth-dropdown\" closeOnOutsideClick>\n <ui-filled-tonal-button\n title=\"Add authorization option\"\n aria-label=\"Opens a menu to select authorization option\"\n ?disabled=\"${!toRender.length}\"\n >\n <ui-icon icon=\"arrowDropDown\" slot=\"icon\" role=\"presentation\"></ui-icon>\n Add\n </ui-filled-tonal-button>\n <ui-list slot=\"dropdown\" role=\"menu\"> ${this.renderAuthorizationOptions(toRender)} </ui-list>\n </ui-dropdown-list>\n `\n }\n\n protected renderAuthorizationOptions(available: string[]): TemplateResult {\n return html`\n ${available.map(\n (type) => html` <ui-list-item role=\"menuitem\" data-type=\"${type}\"> ${authTypeToLabel(type)} </ui-list-item> `\n )}\n `\n }\n\n protected renderAuthorizationList(authorization: IRequestAuthorization[] = []): TemplateResult[] {\n if (!Array.isArray(authorization) || !authorization.length) {\n return [this.renderEmptyAuthorization()]\n }\n return authorization.map((item, index) => {\n let content: TemplateResult | undefined\n switch (item.type) {\n case 'basic':\n content = this.renderBasicAuthorization(item)\n break\n case 'bearer':\n content = this.renderBearerAuthorization(item)\n break\n case 'ntlm':\n content = this.renderNtlmAuthorization(item)\n break\n case 'oauth 2':\n content = this.renderOauthAuthorization(item)\n break\n case 'open id':\n content = this.renderOidcAuthorization(item)\n break\n case 'client certificate':\n content = this.renderCCAuthorization(item)\n break\n case 'api key':\n content = this.renderApiKeyAuthorization(item)\n break\n default:\n }\n if (content) {\n const isLast = authorization.length === index + 1\n return html` ${content} ${!isLast ? html`<ui-divider></ui-divider>` : ''} `\n }\n return html``\n })\n }\n\n protected renderEmptyAuthorization(): TemplateResult {\n return html``\n }\n\n protected renderBasicAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <basic-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></basic-authorization>\n `\n }\n\n protected renderBearerAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <bearer-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></bearer-authorization>\n `\n }\n\n protected renderNtlmAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <ntlm-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></ntlm-authorization>\n `\n }\n\n protected renderOauthAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <oauth2-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n .defaultRedirectUri=\"${this.oauth2RedirectUri}\"\n ></oauth2-authorization>\n `\n }\n\n protected renderOidcAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <oidc-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n .defaultRedirectUri=\"${this.oauth2RedirectUri}\"\n ></oidc-authorization>\n `\n }\n\n protected renderCCAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <cc-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></cc-authorization>\n `\n }\n\n protected renderApiKeyAuthorization(auth: IRequestAuthorization): TemplateResult {\n return html`\n <apikey-authorization\n .authorization=\"${auth}\"\n class=\"auth-panel\"\n canDelete\n canToggle\n @change=\"${this.handleAuthChange}\"\n @delete=\"${this.handleAuthDelete}\"\n ></apikey-authorization>\n `\n }\n\n protected renderTabs(): TemplateResult {\n return html`\n <ui-tabs .selected=\"${this.selected}\" @select=\"${this.handleTabSelection}\">\n <ui-tab aria-controls=\"server\" data-page=\"server\">Server</ui-tab>\n <ui-tab aria-controls=\"variables\" data-page=\"variables\">Variables</ui-tab>\n <ui-tab aria-controls=\"authorization\" data-page=\"authorization\">Authorization</ui-tab>\n </ui-tabs>\n `\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentEditor.styles.js","sourceRoot":"","sources":["../../../../src/elements/environment/EnvironmentEditor.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n display: block;\n max-width: 900px;\n }\n\n ui-text-field {\n margin: 0;\n width: 100%;\n }\n\n .section-title {\n font-family: var(--md-sys-typescale-title-large-font);\n font-weight: var(--md-sys-typescale-title-large-weight);\n font-size: var(--md-sys-typescale-title-large-size);\n letter-spacing: var(--md-sys-typescale-title-large-tracking);\n line-height: var(--md-sys-typescale-title-large-height);\n\n display: flex;\n align-items: center;\n margin-bottom: 20px;\n height: 48px;\n }\n\n .form-item,\n .encapsulate-item {\n margin-bottom: 20px;\n }\n\n .encapsulate-item {\n display: flex;\n align-items: center;\n }\n\n .encapsulate-item label {\n font-family: var(--md-sys-typescale-label-large-font);\n font-weight: var(--md-sys-typescale-label-large-weight);\n font-size: var(--md-sys-typescale-label-large-size);\n letter-spacing: var(--md-sys-typescale-label-large-tracking);\n line-height: var(--md-sys-typescale-label-large-height);\n }\n\n .empty-info,\n .help-banner {\n font-family: var(--md-sys-typescale-body-large-font);\n font-weight: var(--md-sys-typescale-body-large-weight);\n font-size: var(--md-sys-typescale-body-large-size);\n letter-spacing: var(--md-sys-typescale-body-large-tracking);\n line-height: var(--md-sys-typescale-body-large-height);\n }\n\n .auth-info {\n font-family: var(--md-sys-typescale-body-small-font);\n font-weight: var(--md-sys-typescale-body-small-weight);\n font-size: var(--md-sys-typescale-body-small-size);\n letter-spacing: var(--md-sys-typescale-body-small-tracking);\n line-height: var(--md-sys-typescale-body-small-height);\n }\n\n ui-switch {\n margin-right: 12px;\n }\n\n ui-divider {\n margin: 40px 0;\n }\n`\n"]}
|
|
1
|
+
{"version":3,"file":"EnvironmentEditor.styles.js","sourceRoot":"","sources":["../../../../src/elements/environment/EnvironmentEditor.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkEjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n display: block;\n max-width: 900px;\n }\n\n ui-filled-text-field {\n margin: 0;\n width: 100%;\n }\n\n .section-title {\n font-family: var(--md-sys-typescale-title-large-font);\n font-weight: var(--md-sys-typescale-title-large-weight);\n font-size: var(--md-sys-typescale-title-large-size);\n letter-spacing: var(--md-sys-typescale-title-large-tracking);\n line-height: var(--md-sys-typescale-title-large-height);\n\n display: flex;\n align-items: center;\n margin-bottom: 20px;\n height: 48px;\n }\n\n .form-item,\n .encapsulate-item {\n margin-bottom: 20px;\n }\n\n .encapsulate-item {\n display: flex;\n align-items: center;\n }\n\n .encapsulate-item label {\n font-family: var(--md-sys-typescale-label-large-font);\n font-weight: var(--md-sys-typescale-label-large-weight);\n font-size: var(--md-sys-typescale-label-large-size);\n letter-spacing: var(--md-sys-typescale-label-large-tracking);\n line-height: var(--md-sys-typescale-label-large-height);\n }\n\n .empty-info,\n .help-banner {\n font-family: var(--md-sys-typescale-body-large-font);\n font-weight: var(--md-sys-typescale-body-large-weight);\n font-size: var(--md-sys-typescale-body-large-size);\n letter-spacing: var(--md-sys-typescale-body-large-tracking);\n line-height: var(--md-sys-typescale-body-large-height);\n }\n\n .auth-info {\n font-family: var(--md-sys-typescale-body-small-font);\n font-weight: var(--md-sys-typescale-body-small-weight);\n font-size: var(--md-sys-typescale-body-small-size);\n letter-spacing: var(--md-sys-typescale-body-small-tracking);\n line-height: var(--md-sys-typescale-body-small-height);\n }\n\n ui-switch {\n margin-right: 12px;\n }\n\n ui-divider {\n margin: 40px 0;\n }\n`\n"]}
|
|
@@ -2,7 +2,7 @@ import { TemplateResult, CSSResult, PropertyValues } from 'lit';
|
|
|
2
2
|
import { type IProperty } from '@api-client/core/models/Property.js';
|
|
3
3
|
import { type IServer, Server } from '@api-client/core/models/Server.js';
|
|
4
4
|
import ApiElement from '../ApiElement.js';
|
|
5
|
-
import '../../md/text-field/ui-text-field.js';
|
|
5
|
+
import '../../md/text-field/ui-filled-text-field.js';
|
|
6
6
|
import '../../md/icons/ui-icon.js';
|
|
7
7
|
import '../../md/icon-button/ui-icon-button.js';
|
|
8
8
|
export declare const DefaultProtocols: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerEditor.d.ts","sourceRoot":"","sources":["../../../../src/elements/environment/ServerEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAGrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAA;AAGxE,OAAO,UAAU,MAAM,kBAAkB,CAAA;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"ServerEditor.d.ts","sourceRoot":"","sources":["../../../../src/elements/environment/ServerEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAGrE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAA;AAGxE,OAAO,UAAU,MAAM,kBAAkB,CAAA;AACzC,OAAO,6CAA6C,CAAA;AACpD,OAAO,2BAA2B,CAAA;AAClC,OAAO,wCAAwC,CAAA;AAE/C,eAAO,MAAM,gBAAgB,UAAsB,CAAA;AAEnD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU;IAClD,WAAoB,MAAM,IAAI,SAAS,EAAE,CAExC;IAED;;;;;;;;;OASG;IACyB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;IAE5D;;;;;OAKG;IACyB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAEjE;;;;;OAKG;IACyB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAEjE;;;;OAIG;IACyB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IAEpE;;;OAGG;IACwB,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,SAAS,CAAA;IAEtE;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAEhC;;OAEG;IACH,SAAS,CAAC,cAAc,SAAe;IAEP,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAO;cAE7E,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAO7D;;;;OAIG;IACH,aAAa,IAAI,IAAI;IAKrB,SAAS,CAAC,UAAU,IAAI,IAAI;IAM5B,SAAS,CAAC,YAAY,IAAI,IAAI;IAQ9B;;OAEG;IACH,SAAS,IAAI,OAAO;IAKpB;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU,GAAG,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAK3E,SAAS,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAMzC,SAAS,CAAC,oBAAoB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAM9C,SAAS,CAAC,oBAAoB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAM9C,SAAS,CAAC,YAAY,IAAI,IAAI;IAIrB,MAAM,IAAI,cAAc;IAQjC,SAAS,CAAC,YAAY,IAAI,cAAc;IASxC,SAAS,CAAC,cAAc,IAAI,cAAc;IAc1C,SAAS,CAAC,mBAAmB,IAAI,cAAc;IAY/C,SAAS,CAAC,mBAAmB,IAAI,cAAc;IAW/C,SAAS,CAAC,WAAW,IAAI,cAAc,GAAG,MAAM;IAWhD,SAAS,CAAC,kBAAkB,IAAI,cAAc;CAO/C"}
|
|
@@ -5,7 +5,7 @@ import { live } from 'lit/directives/live.js';
|
|
|
5
5
|
import { Server } from '@api-client/core/models/Server.js';
|
|
6
6
|
import elementStyles from './ServerEditor.styles.js';
|
|
7
7
|
import ApiElement from '../ApiElement.js';
|
|
8
|
-
import '../../md/text-field/ui-text-field.js';
|
|
8
|
+
import '../../md/text-field/ui-filled-text-field.js';
|
|
9
9
|
import '../../md/icons/ui-icon.js';
|
|
10
10
|
import '../../md/icon-button/ui-icon-button.js';
|
|
11
11
|
export const DefaultProtocols = ['http:', 'https:'];
|
|
@@ -183,35 +183,35 @@ let ServerEditor = (() => {
|
|
|
183
183
|
renderUriInput() {
|
|
184
184
|
return html `
|
|
185
185
|
<div class="form-item">
|
|
186
|
-
<ui-text-field
|
|
186
|
+
<ui-filled-text-field
|
|
187
187
|
required
|
|
188
188
|
name="uri"
|
|
189
189
|
.value="${live(this.uri || '')}"
|
|
190
190
|
label="URI"
|
|
191
191
|
@change="${this.handleUriChange}"
|
|
192
|
-
></ui-text-field>
|
|
192
|
+
></ui-filled-text-field>
|
|
193
193
|
</div>
|
|
194
194
|
`;
|
|
195
195
|
}
|
|
196
196
|
renderProtocolInput() {
|
|
197
197
|
return html ` <div class="form-item">
|
|
198
|
-
<ui-text-field
|
|
198
|
+
<ui-filled-text-field
|
|
199
199
|
name="protocol"
|
|
200
200
|
.value="${live(this.protocol || '')}"
|
|
201
201
|
.list="${DefaultProtocols}"
|
|
202
202
|
label="Protocol (optional)"
|
|
203
203
|
@change="${this.handleProtocolChange}"
|
|
204
|
-
></ui-text-field>
|
|
204
|
+
></ui-filled-text-field>
|
|
205
205
|
</div>`;
|
|
206
206
|
}
|
|
207
207
|
renderBasePathInput() {
|
|
208
208
|
return html ` <div class="form-item">
|
|
209
|
-
<ui-text-field
|
|
209
|
+
<ui-filled-text-field
|
|
210
210
|
name="basePath"
|
|
211
211
|
.value="${live(this.basePath || '')}"
|
|
212
212
|
label="Base path (optional)"
|
|
213
213
|
@change="${this.handleBasePathChange}"
|
|
214
|
-
></ui-text-field>
|
|
214
|
+
></ui-filled-text-field>
|
|
215
215
|
</div>`;
|
|
216
216
|
}
|
|
217
217
|
renderValue() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerEditor.js","sourceRoot":"","sources":["../../../../src/elements/environment/ServerEditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult, CSSResult, PropertyValues } from 'lit'\nimport { property, query } from 'lit/decorators.js'\nimport { live } from 'lit/directives/live.js'\nimport { type IProperty } from '@api-client/core/models/Property.js'\nimport { type IServer, Server } from '@api-client/core/models/Server.js'\nimport elementStyles from './ServerEditor.styles.js'\nimport Input from '../../md/input/Input.js'\nimport ApiElement from '../ApiElement.js'\nimport '../../md/text-field/ui-text-field.js'\nimport '../../md/icons/ui-icon.js'\nimport '../../md/icon-button/ui-icon-button.js'\n\nexport const DefaultProtocols = ['http:', 'https:']\n\n/**\n * An element to render a view for a server definition with a form to edit it.\n *\n * @fires change - When a value change.\n * @fires delete - When the user requested server definition delete.\n */\nexport default class ServerEditor extends ApiElement {\n static override get styles(): CSSResult[] {\n return [elementStyles]\n }\n\n /**\n * The base URI of the server.\n *\n * Note, the URL can contain URI templates (e.g. `http://{host}.api.com/v1`)\n * In this case the variable is replaced with the system or project variables.\n *\n * For simplicity, the `uri` can be the full base URI with protocol, host, and the `basePath`\n *\n * @attribute\n */\n @property({ type: String }) accessor uri: string | undefined\n\n /**\n * Usually included in the `uri`. When the `uri` is missing a protocol\n * this is then used.\n *\n * @attribute\n */\n @property({ type: String }) accessor protocol: string | undefined\n\n /**\n * The base path for the server. It starts with the `/`.\n * When set, it is appended to the `uri` value.\n *\n * @attribute\n */\n @property({ type: String }) accessor basePath: string | undefined\n\n /**\n * Optional description of the server.\n *\n * @attribute\n */\n @property({ type: String }) accessor description: string | undefined\n\n /**\n * Optional list of variables to set on the environment.\n * When set it evaluates the final URI value against these properties.\n */\n @property({ type: Array }) accessor variables: IProperty[] | undefined\n\n /**\n * The computed value of the full URI from the values.\n */\n protected valueInternal?: string\n\n /**\n * The server logic used with computations.\n */\n protected serverInternal = new Server()\n\n @query('#protocolInput', false) protected accessor protocolInput: HTMLInputElement | null = null\n\n protected override willUpdate(cp: PropertyValues<this>): void {\n if (cp.has('uri') || cp.has('protocol') || cp.has('basePath') || cp.has('description')) {\n this.setupValue()\n }\n super.willUpdate(cp)\n }\n\n /**\n * Updates the value of the generated base URI.\n * This can be called from the outside of the component to force computation.\n * This is helpful when deep-updating variables.\n */\n generateValue(): void {\n this.setupValue()\n this.requestUpdate()\n }\n\n protected setupValue(): void {\n const { serverInternal } = this\n this.updateServer()\n this.valueInternal = serverInternal.readUri(this.variables)\n }\n\n protected updateServer(): void {\n const { serverInternal, uri = '', protocol, basePath, description } = this\n serverInternal.uri = uri\n serverInternal.protocol = protocol\n serverInternal.basePath = basePath\n serverInternal.description = description\n }\n\n /**\n * Creates a schema for the current values.\n */\n getSchema(): IServer {\n this.updateServer()\n return this.serverInternal.toJSON()\n }\n\n /**\n * Updates name/value of a parameter on a specific index.\n */\n updateProperty(field: 'uri' | 'basePath' | 'protocol', value: string): void {\n this[field] = value\n this.notifyChange()\n }\n\n protected handleUriChange(e: Event): void {\n const input = e.target as Input\n this.updateProperty('uri', input.value)\n input.checkValidity()\n }\n\n protected handleBasePathChange(e: Event): void {\n const input = e.target as Input\n this.updateProperty('basePath', input.value)\n input.checkValidity()\n }\n\n protected handleProtocolChange(e: Event): void {\n const input = e.target as Input\n this.updateProperty('protocol', input.value)\n input.checkValidity()\n }\n\n protected handleDelete(): void {\n this.dispatchEvent(new Event('delete'))\n }\n\n override render(): TemplateResult {\n return html`\n ${this.renderHeader()}\n <form>${this.renderUriInput()} ${this.renderProtocolInput()} ${this.renderBasePathInput()}</form>\n ${this.renderValue()}\n `\n }\n\n protected renderHeader(): TemplateResult {\n return html`\n <div class=\"header\">\n <div class=\"section-title\">Server</div>\n ${this.renderDeleteButton()}\n </div>\n `\n }\n\n protected renderUriInput(): TemplateResult {\n return html`\n <div class=\"form-item\">\n <ui-text-field\n required\n name=\"uri\"\n .value=\"${live(this.uri || '')}\"\n label=\"URI\"\n @change=\"${this.handleUriChange}\"\n ></ui-text-field>\n </div>\n `\n }\n\n protected renderProtocolInput(): TemplateResult {\n return html` <div class=\"form-item\">\n <ui-text-field\n name=\"protocol\"\n .value=\"${live(this.protocol || '')}\"\n .list=\"${DefaultProtocols}\"\n label=\"Protocol (optional)\"\n @change=\"${this.handleProtocolChange}\"\n ></ui-text-field>\n </div>`\n }\n\n protected renderBasePathInput(): TemplateResult {\n return html` <div class=\"form-item\">\n <ui-text-field\n name=\"basePath\"\n .value=\"${live(this.basePath || '')}\"\n label=\"Base path (optional)\"\n @change=\"${this.handleBasePathChange}\"\n ></ui-text-field>\n </div>`\n }\n\n protected renderValue(): TemplateResult | string {\n const { valueInternal } = this\n if (!valueInternal) {\n return ''\n }\n return html`\n <div class=\"uri-label\">Server URI</div>\n <div class=\"value-preview\">${valueInternal}</div>\n `\n }\n\n protected renderDeleteButton(): TemplateResult {\n return html`\n <ui-icon-button aria-label=\"Remove this server\" @click=\"${this.handleDelete}\">\n <ui-icon icon=\"deleteOutline\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"ServerEditor.js","sourceRoot":"","sources":["../../../../src/elements/environment/ServerEditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult, CSSResult, PropertyValues } from 'lit'\nimport { property, query } from 'lit/decorators.js'\nimport { live } from 'lit/directives/live.js'\nimport { type IProperty } from '@api-client/core/models/Property.js'\nimport { type IServer, Server } from '@api-client/core/models/Server.js'\nimport elementStyles from './ServerEditor.styles.js'\nimport Input from '../../md/input/Input.js'\nimport ApiElement from '../ApiElement.js'\nimport '../../md/text-field/ui-filled-text-field.js'\nimport '../../md/icons/ui-icon.js'\nimport '../../md/icon-button/ui-icon-button.js'\n\nexport const DefaultProtocols = ['http:', 'https:']\n\n/**\n * An element to render a view for a server definition with a form to edit it.\n *\n * @fires change - When a value change.\n * @fires delete - When the user requested server definition delete.\n */\nexport default class ServerEditor extends ApiElement {\n static override get styles(): CSSResult[] {\n return [elementStyles]\n }\n\n /**\n * The base URI of the server.\n *\n * Note, the URL can contain URI templates (e.g. `http://{host}.api.com/v1`)\n * In this case the variable is replaced with the system or project variables.\n *\n * For simplicity, the `uri` can be the full base URI with protocol, host, and the `basePath`\n *\n * @attribute\n */\n @property({ type: String }) accessor uri: string | undefined\n\n /**\n * Usually included in the `uri`. When the `uri` is missing a protocol\n * this is then used.\n *\n * @attribute\n */\n @property({ type: String }) accessor protocol: string | undefined\n\n /**\n * The base path for the server. It starts with the `/`.\n * When set, it is appended to the `uri` value.\n *\n * @attribute\n */\n @property({ type: String }) accessor basePath: string | undefined\n\n /**\n * Optional description of the server.\n *\n * @attribute\n */\n @property({ type: String }) accessor description: string | undefined\n\n /**\n * Optional list of variables to set on the environment.\n * When set it evaluates the final URI value against these properties.\n */\n @property({ type: Array }) accessor variables: IProperty[] | undefined\n\n /**\n * The computed value of the full URI from the values.\n */\n protected valueInternal?: string\n\n /**\n * The server logic used with computations.\n */\n protected serverInternal = new Server()\n\n @query('#protocolInput', false) protected accessor protocolInput: HTMLInputElement | null = null\n\n protected override willUpdate(cp: PropertyValues<this>): void {\n if (cp.has('uri') || cp.has('protocol') || cp.has('basePath') || cp.has('description')) {\n this.setupValue()\n }\n super.willUpdate(cp)\n }\n\n /**\n * Updates the value of the generated base URI.\n * This can be called from the outside of the component to force computation.\n * This is helpful when deep-updating variables.\n */\n generateValue(): void {\n this.setupValue()\n this.requestUpdate()\n }\n\n protected setupValue(): void {\n const { serverInternal } = this\n this.updateServer()\n this.valueInternal = serverInternal.readUri(this.variables)\n }\n\n protected updateServer(): void {\n const { serverInternal, uri = '', protocol, basePath, description } = this\n serverInternal.uri = uri\n serverInternal.protocol = protocol\n serverInternal.basePath = basePath\n serverInternal.description = description\n }\n\n /**\n * Creates a schema for the current values.\n */\n getSchema(): IServer {\n this.updateServer()\n return this.serverInternal.toJSON()\n }\n\n /**\n * Updates name/value of a parameter on a specific index.\n */\n updateProperty(field: 'uri' | 'basePath' | 'protocol', value: string): void {\n this[field] = value\n this.notifyChange()\n }\n\n protected handleUriChange(e: Event): void {\n const input = e.target as Input\n this.updateProperty('uri', input.value)\n input.checkValidity()\n }\n\n protected handleBasePathChange(e: Event): void {\n const input = e.target as Input\n this.updateProperty('basePath', input.value)\n input.checkValidity()\n }\n\n protected handleProtocolChange(e: Event): void {\n const input = e.target as Input\n this.updateProperty('protocol', input.value)\n input.checkValidity()\n }\n\n protected handleDelete(): void {\n this.dispatchEvent(new Event('delete'))\n }\n\n override render(): TemplateResult {\n return html`\n ${this.renderHeader()}\n <form>${this.renderUriInput()} ${this.renderProtocolInput()} ${this.renderBasePathInput()}</form>\n ${this.renderValue()}\n `\n }\n\n protected renderHeader(): TemplateResult {\n return html`\n <div class=\"header\">\n <div class=\"section-title\">Server</div>\n ${this.renderDeleteButton()}\n </div>\n `\n }\n\n protected renderUriInput(): TemplateResult {\n return html`\n <div class=\"form-item\">\n <ui-filled-text-field\n required\n name=\"uri\"\n .value=\"${live(this.uri || '')}\"\n label=\"URI\"\n @change=\"${this.handleUriChange}\"\n ></ui-filled-text-field>\n </div>\n `\n }\n\n protected renderProtocolInput(): TemplateResult {\n return html` <div class=\"form-item\">\n <ui-filled-text-field\n name=\"protocol\"\n .value=\"${live(this.protocol || '')}\"\n .list=\"${DefaultProtocols}\"\n label=\"Protocol (optional)\"\n @change=\"${this.handleProtocolChange}\"\n ></ui-filled-text-field>\n </div>`\n }\n\n protected renderBasePathInput(): TemplateResult {\n return html` <div class=\"form-item\">\n <ui-filled-text-field\n name=\"basePath\"\n .value=\"${live(this.basePath || '')}\"\n label=\"Base path (optional)\"\n @change=\"${this.handleBasePathChange}\"\n ></ui-filled-text-field>\n </div>`\n }\n\n protected renderValue(): TemplateResult | string {\n const { valueInternal } = this\n if (!valueInternal) {\n return ''\n }\n return html`\n <div class=\"uri-label\">Server URI</div>\n <div class=\"value-preview\">${valueInternal}</div>\n `\n }\n\n protected renderDeleteButton(): TemplateResult {\n return html`\n <ui-icon-button aria-label=\"Remove this server\" @click=\"${this.handleDelete}\">\n <ui-icon icon=\"deleteOutline\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerEditor.styles.js","sourceRoot":"","sources":["../../../../src/elements/environment/ServerEditor.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n display: block;\n }\n\n .form-item {\n margin: 20px 0;\n }\n\n ui-text-field {\n margin: 0;\n width: 100%;\n }\n\n .uri-label {\n font-family: var(--md-sys-typescale-label-large-font);\n font-weight: var(--md-sys-typescale-label-large-weight);\n font-size: var(--md-sys-typescale-label-large-size);\n letter-spacing: var(--md-sys-typescale-label-large-tracking);\n line-height: var(--md-sys-typescale-label-large-height);\n }\n\n .value-preview {\n margin-top: 4px;\n padding: 8px 12px;\n background-color: var(--md-sys-color-surface);\n position: relative;\n\n font-family: var(--md-sys-typescale-body-medium-font);\n font-weight: var(--md-sys-typescale-body-medium-weight);\n font-size: var(--md-sys-typescale-body-medium-size);\n letter-spacing: var(--md-sys-typescale-body-medium-tracking);\n line-height: var(--md-sys-typescale-body-medium-height);\n }\n\n .value-preview::before {\n content: '';\n background-color: var(--md-sys-color-primary);\n position: absolute;\n inset: 0;\n border-radius: inherit;\n z-index: -1;\n }\n\n .header {\n display: flex;\n align-items: center;\n }\n\n .section-title {\n flex: 1;\n font-family: var(--md-sys-typescale-title-large-font);\n font-weight: var(--md-sys-typescale-title-large-weight);\n font-size: var(--md-sys-typescale-title-large-size);\n letter-spacing: var(--md-sys-typescale-title-large-tracking);\n line-height: var(--md-sys-typescale-title-large-height);\n }\n`\n"]}
|
|
1
|
+
{"version":3,"file":"ServerEditor.styles.js","sourceRoot":"","sources":["../../../../src/elements/environment/ServerEditor.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,eAAe,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDjB,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport default css`\n :host {\n display: block;\n }\n\n .form-item {\n margin: 20px 0;\n }\n\n ui-filled-text-field {\n margin: 0;\n width: 100%;\n }\n\n .uri-label {\n font-family: var(--md-sys-typescale-label-large-font);\n font-weight: var(--md-sys-typescale-label-large-weight);\n font-size: var(--md-sys-typescale-label-large-size);\n letter-spacing: var(--md-sys-typescale-label-large-tracking);\n line-height: var(--md-sys-typescale-label-large-height);\n }\n\n .value-preview {\n margin-top: 4px;\n padding: 8px 12px;\n background-color: var(--md-sys-color-surface);\n position: relative;\n\n font-family: var(--md-sys-typescale-body-medium-font);\n font-weight: var(--md-sys-typescale-body-medium-weight);\n font-size: var(--md-sys-typescale-body-medium-size);\n letter-spacing: var(--md-sys-typescale-body-medium-tracking);\n line-height: var(--md-sys-typescale-body-medium-height);\n }\n\n .value-preview::before {\n content: '';\n background-color: var(--md-sys-color-primary);\n position: absolute;\n inset: 0;\n border-radius: inherit;\n z-index: -1;\n }\n\n .header {\n display: flex;\n align-items: center;\n }\n\n .section-title {\n flex: 1;\n font-family: var(--md-sys-typescale-title-large-font);\n font-weight: var(--md-sys-typescale-title-large-weight);\n font-size: var(--md-sys-typescale-title-large-size);\n letter-spacing: var(--md-sys-typescale-title-large-tracking);\n line-height: var(--md-sys-typescale-title-large-height);\n }\n`\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BodyMultipartEditor.d.ts","sourceRoot":"","sources":["../../../../src/elements/http/BodyMultipartEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAEnD,OAAO,EAGL,KAAK,cAAc,EAGpB,MAAM,wDAAwD,CAAA;AAK/D,OAAO,UAAU,MAAM,kBAAkB,CAAA;AACzC,OAAO,2BAA2B,CAAA;AAClC,OAAO,8BAA8B,CAAA;AACrC,OAAO,wCAAwC,CAAA;AAC/C,OAAO,mCAAmC,CAAA;AAU1C,eAAO,MAAM,kBAAkB,SAAa,CAAA;AAuB5C;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,UAAU;IACzD;;;OAGG;IACyC,QAAQ,CAAC,QAAQ,UAAQ;IAErE;;;OAGG;IACyC,QAAQ,CAAC,QAAQ,UAAQ;IAErE;;OAEG;IAC0B,QAAQ,CAAC,aAAa,EAAE,OAAO,GAAG,SAAS,CAAA;IAExE;;;;;OAKG;IACH,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED,IACI,KAAK,CAAC,KAAK,EAAE,QAAQ,EAExB;IAED;;OAEG;IACH,SAAS,CAAC,aAAa,EAAE,cAAc,EAAE,CAAK;IAE9C;;;;OAIG;IACH,IAAI,KAAK,IAAI,cAAc,EAAE,CAE5B;IAED,IACI,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,SAAS,EAc5C;IAED;;OAEG;IACH,UAAU,IAAI,QAAQ;IAoBtB;;;;OAIG;cACa,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;cA0BrD,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;cAgBtD,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;cAetD,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"BodyMultipartEditor.d.ts","sourceRoot":"","sources":["../../../../src/elements/http/BodyMultipartEditor.ts"],"names":[],"mappings":"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"}
|
|
@@ -221,10 +221,14 @@ let BodyMultipartEditor = (() => {
|
|
|
221
221
|
async updateModel(value) {
|
|
222
222
|
if (!value || !(value instanceof FormData)) {
|
|
223
223
|
this.model = [];
|
|
224
|
+
setTimeout(() => {
|
|
225
|
+
this.dispatchEvent(new CustomEvent('modelupdate', { bubbles: false, composed: false }));
|
|
226
|
+
});
|
|
224
227
|
return;
|
|
225
228
|
}
|
|
226
229
|
const payload = await PayloadSerializer.stringifyFormData(value);
|
|
227
230
|
this.model = payload.data;
|
|
231
|
+
this.dispatchEvent(new CustomEvent('modelupdate', { bubbles: false, composed: false }));
|
|
228
232
|
}
|
|
229
233
|
/**
|
|
230
234
|
* Adds an instance of a file to the form data
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BodyMultipartEditor.js","sourceRoot":"","sources":["../../../../src/elements/http/BodyMultipartEditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult, nothing } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport {\n type IBlobMeta,\n type IFileMeta,\n type IMultipartBody,\n type ISafePayload,\n PayloadSerializer,\n} from '@api-client/core/lib/transformers/PayloadSerializer.js'\nimport { queryRequestHeaders } from '@api-client/core/lib/definitions/HttpDefinitions.js'\nimport { live } from 'lit/directives/live.js'\nimport SwitchElement from '../../md/switch/internals/SwitchElement.js'\nimport Input from '../../md/input/Input.js'\nimport ApiElement from '../ApiElement.js'\nimport '../../md/icons/ui-icon.js'\nimport '../../md/switch/ui-switch.js'\nimport '../../md/icon-button/ui-icon-button.js'\nimport '../../md/button/ui-text-button.js'\n\nlet hasSupport: boolean\ntry {\n const fd = new FormData()\n fd.append('test', new Blob(['.'], { type: 'image/jpg' }), 'test.jpg')\n hasSupport = 'entries' in fd\n} catch {\n hasSupport = false\n}\nexport const hasFormDataSupport = hasSupport\n\nfunction normalizePartValue(item: IMultipartBody): void {\n if (typeof item.value === 'string') {\n const oldValue = item.value\n item.value = {\n type: 'string',\n data: oldValue,\n }\n }\n}\n\nlet mimeSuggestions: string[] = []\n\n;((): void => {\n const items = queryRequestHeaders('content-type')\n const item = items.find((i) => i.key.toLowerCase() === 'content-type')\n if (!item || !item.autocomplete) {\n return\n }\n mimeSuggestions = item.autocomplete\n})()\n\n/**\n * Multipart payload editor.\n *\n * The element internally uses a generated from a FormData model. It is API Client's `IMultipartBody` array.\n * The FormData is generated on-fly when accessing the `value` getter. It also regenerates the model when\n * the `value` property change. Because of that you should never set the value on the editor but only manipulate the\n * `model` property.\n */\nexport default class BodyMultipartEditor extends ApiElement {\n /**\n * When set the editor is in read only mode.\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor readOnly = false\n\n /**\n * When set all controls are disabled in the form\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor disabled = false\n\n /**\n * @attribute\n */\n @property({ type: Boolean }) accessor allowFormInfo: boolean | undefined\n\n /**\n * The value of this form.\n * When reading the `value` it generated the FormData from the model values.\n * When setting this property is regenerates the `model` to the value in the FormData.\n * When setting to anything other than the `FormData` it sets the `model` to an empty array.\n */\n get value(): FormData {\n return this.toFormData()\n }\n\n @property({ type: Object })\n set value(value: FormData) {\n this.updateModel(value)\n }\n\n /**\n * The model used by the external application\n */\n protected modelInternal: IMultipartBody[] = []\n\n /**\n * Computed data model for the view.\n * Don't set both `value` and `model`. If the model exists then\n * set only it or otherwise the `value` setter override the model.\n */\n get model(): IMultipartBody[] {\n return this.modelInternal\n }\n\n @property({ type: Array })\n set model(value: IMultipartBody[] | undefined) {\n const old = this.modelInternal\n if (old === value) {\n return\n }\n if (Array.isArray(value)) {\n this.modelInternal = value\n } else {\n this.modelInternal = []\n }\n this.requestUpdate('model', old)\n if (value) {\n this.upgradeLegacy(value)\n }\n }\n\n /**\n * @returns The FormData from the current model.\n */\n toFormData(): FormData {\n const validItems = this.modelInternal.filter((item) => {\n const { name, value } = item\n if (!name) {\n return false\n }\n if (typeof value === 'string') {\n return true\n }\n if (value.type === 'string') {\n return true\n }\n if (value.type === 'blob' || value.type === 'file') {\n return !!value.data && !!value.data.length\n }\n return true\n })\n return PayloadSerializer.deserializeFormData(validItems)\n }\n\n /**\n * Makes an attempt to upgrade old definitions of the `IMultipartBody`.\n * If this fails, the form will show error instead of part field.\n * @param value The current model.\n */\n protected async upgradeLegacy(value: IMultipartBody[]): Promise<void> {\n const ps: Promise<void>[] = []\n for (const part of value) {\n if (part.isFile === undefined) {\n continue\n }\n if (part.isFile === false && !part.type) {\n delete part.isFile\n const oldValue = (part.value || '') as string\n part.value = {\n type: 'string',\n data: oldValue,\n }\n } else if (part.isFile === false && part.type) {\n ps.push(this.upgradeLegacyBlob(part))\n } else {\n ps.push(this.upgradeLegacyFile(part))\n }\n }\n if (ps.length) {\n await Promise.allSettled(ps)\n this.requestUpdate()\n this.notifyChange()\n }\n }\n\n protected async upgradeLegacyBlob(part: IMultipartBody): Promise<void> {\n if (typeof part.value !== 'string') {\n return\n }\n const readBlob = PayloadSerializer.deserializeBlobLegacy(part.value as string)\n if (!readBlob) {\n return\n }\n const contents = await readBlob.text()\n part.blobText = contents || ''\n const blob = new Blob([part.blobText as string], { type: part.type })\n part.value = await PayloadSerializer.stringifyBlob(blob)\n delete part.type\n delete part.isFile\n }\n\n protected async upgradeLegacyFile(part: IMultipartBody): Promise<void> {\n if (typeof part.value !== 'string') {\n return\n }\n const readBlob = PayloadSerializer.deserializeBlobLegacy(part.value as string)\n if (!readBlob) {\n return\n }\n const fname = part.fileName || 'unknown-file.txt'\n const file = new File([readBlob], fname, { type: readBlob.type })\n part.value = await PayloadSerializer.stringifyFile(file)\n delete part.fileName\n delete part.isFile\n }\n\n protected async updateModel(value?: unknown): Promise<void> {\n if (!value || !(value instanceof FormData)) {\n this.model = []\n return\n }\n const payload = await PayloadSerializer.stringifyFormData(value as FormData)\n this.model = payload.data as IMultipartBody[]\n }\n\n /**\n * Adds an instance of a file to the form data\n */\n async addFile(file: File): Promise<void> {\n if (this.readOnly || this.disabled) {\n return\n }\n const { model } = this\n const entry = await PayloadSerializer.serializeFormDataEntry(file.name, file)\n model.push(entry)\n this.notifyChange()\n this.requestUpdate()\n }\n\n /**\n * Removes all parameters.\n */\n clear(): void {\n this.model = []\n this.notifyChange()\n }\n\n /**\n * Adds an empty text part item to the form.\n */\n addEmptyText(): void {\n if (this.readOnly || this.disabled) {\n return\n }\n const { model } = this\n const obj: IMultipartBody = {\n name: '',\n value: {\n data: '',\n type: 'string',\n },\n enabled: true,\n }\n model.push(obj)\n this.requestUpdate()\n }\n\n /**\n * Adds an empty file part item to the form.\n */\n addEmptyFile(): void {\n if (this.readOnly || this.disabled) {\n return\n }\n const { model } = this\n const obj: IMultipartBody = {\n name: '',\n value: {\n data: [],\n type: 'file',\n },\n enabled: true,\n }\n model.push(obj)\n this.requestUpdate()\n }\n\n /**\n * Removes a parameter from an index.\n */\n removeProperty(index: number): void {\n const items = this.modelInternal\n items.splice(index, 1)\n this.requestUpdate()\n this.notifyChange()\n }\n\n /**\n * Toggles enabled state of a parameter.\n */\n toggleProperty(index: number, enabled: boolean): void {\n const items = this.modelInternal\n const item = items[index]\n item.enabled = enabled\n this.notifyChange()\n }\n\n updatePartName(index: number, value: string): void {\n const item = this.modelInternal[index]\n const old = item.name\n if (old === value) {\n return\n }\n item.name = value\n this.notifyChange()\n }\n\n updateTextPartValue(index: number, value: string): void {\n const item = this.modelInternal[index]\n normalizePartValue(item)\n const typedValue = item.value as ISafePayload\n if (typedValue.data === value) {\n return\n }\n typedValue.data = value\n this.notifyChange()\n }\n\n async updateBlobPartValue(index: number, value: string): Promise<void> {\n const item = this.modelInternal[index]\n normalizePartValue(item)\n const typedValue = item.value as ISafePayload\n if (typedValue.data === value) {\n return\n }\n item.blobText = value\n const blob = new Blob([value], { type: typedValue.meta?.mime || 'text/plain' })\n item.value = await PayloadSerializer.stringifyBlob(blob)\n this.notifyChange()\n }\n\n async updateFileValue(index: number, file: File): Promise<void> {\n const item = this.modelInternal[index]\n if (!item || !file) {\n return\n }\n item.value = await PayloadSerializer.stringifyFile(file)\n this.notifyChange()\n this.requestUpdate()\n }\n\n async changePartMime(index: number, value: string): Promise<void> {\n const item = this.modelInternal[index]\n if (!item) {\n return\n }\n normalizePartValue(item)\n // change the type from text to blob, if needed\n const typedValue = item.value as ISafePayload\n\n if (typedValue.type === 'string') {\n item.blobText = typedValue.data as string\n } else if (!item.blobText && typedValue.data) {\n const restored = PayloadSerializer.deserializeBlob(typedValue) as Blob\n item.blobText = await restored.text()\n }\n const blob = new Blob([item.blobText || ''], { type: value })\n item.value = await PayloadSerializer.stringifyBlob(blob)\n this.notifyChange()\n }\n\n protected handleRemove(e: Event): void {\n const node = e.currentTarget as HTMLElement\n const index = Number(node.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.removeProperty(index)\n }\n\n protected handleToggle(e: Event): void {\n const node = e.currentTarget as SwitchElement\n const index = Number(node.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.toggleProperty(index, !!node.checked)\n }\n\n protected handleFilePick(e: Event): void {\n const node = e.target as HTMLElement\n const input = node.nextElementSibling as HTMLInputElement\n input.click()\n }\n\n protected handleFilePartValue(e: Event): void {\n e.stopPropagation()\n const input = e.target as HTMLInputElement\n if (!input.files) {\n return\n }\n const index = Number(input.dataset.index)\n this.updateFileValue(index, input.files[0])\n }\n\n protected handleNameChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.updatePartName(index, input.value)\n input.checkValidity()\n }\n\n protected handleValueChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.updateTextPartValue(index, input.value)\n input.checkValidity()\n }\n\n protected handleBlobValueChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.updateBlobPartValue(index, input.value)\n input.checkValidity()\n }\n\n protected handleMimeChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.changePartMime(index, input.value)\n input.checkValidity()\n }\n\n override render(): TemplateResult {\n if (!hasSupport) {\n return this.renderNoSupport()\n }\n return html` ${this.renderList()} ${this.renderMimeList()} ${this.renderFormInfo()} `\n }\n\n protected renderFormInfo(): TemplateResult | typeof nothing {\n if (!this.allowFormInfo) {\n return nothing\n }\n return html`\n <p class=\"form-info\">\n Note that the content-type header will be added when the request is sent. We encourage you to use variables to\n insert sensitive data.\n </p>\n `\n }\n\n protected renderList(): TemplateResult {\n const items = this.model\n if (!Array.isArray(items) || !items.length) {\n return this.renderEmptyMessage()\n }\n return this.renderParams(items)\n }\n\n protected renderNoSupport(): TemplateResult {\n return html` <div class=\"empty-message\">Your browser does not support this editor</div> `\n }\n\n protected renderEmptyMessage(): TemplateResult {\n return html` <div class=\"empty-message\">No parameters added</div> `\n }\n\n protected renderParams(items: IMultipartBody[]): TemplateResult {\n return html` ${items.map((item, index) => this.renderParam(item, index))} `\n }\n\n protected renderToggleButton(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <ui-switch\n .checked=\"${!!part.enabled}\"\n @change=\"${this.handleToggle}\"\n aria-label=\"Toggle this parameter\"\n data-index=\"${index}\"\n ?disabled=\"${this.readOnly}\"\n ></ui-switch>\n `\n }\n\n protected renderDeleteParameter(index: number): TemplateResult {\n return html`\n <ui-icon-button\n aria-label=\"Delete this parameter\"\n data-index=\"${index}\"\n @click=\"${this.handleRemove}\"\n ?disabled=\"${this.readOnly}\"\n class=\"delete-button\"\n >\n <ui-icon icon=\"deleteOutline\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `\n }\n\n protected renderNameField(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <div class=\"input-wrapper name-input\">\n <div class=\"error\" role=\"presentation\">Name is required</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"name\"\n required\n autocomplete=\"off\"\n .value=\"${live(part.name)}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Part name value\"\n placeholder=\"Part name\"\n @change=\"${this.handleNameChange}\"\n />\n </div>\n `\n }\n\n protected renderValueField(part: IMultipartBody, index: number): TemplateResult {\n const value = ((part.value as ISafePayload).data as string) || ''\n return html`\n <div class=\"input-wrapper value-input\">\n <div class=\"error\" role=\"presentation\">Value is required</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"value\"\n required\n .value=\"${live(value)}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Text part value\"\n placeholder=\"Part text value\"\n @change=\"${this.handleValueChange}\"\n />\n </div>\n `\n }\n\n protected renderBlobValueField(part: IMultipartBody, index: number): TemplateResult {\n const { blobText } = part\n return html`\n <div class=\"input-wrapper value-input\">\n <div class=\"error\" role=\"presentation\">Value is required</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"value\"\n required\n .value=\"${live(blobText || '')}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Text part value\"\n placeholder=\"Part text value\"\n @change=\"${this.handleBlobValueChange}\"\n />\n </div>\n `\n }\n\n protected renderMimeField(index: number, value?: string): TemplateResult {\n return html`\n <div class=\"input-wrapper mime-input\">\n <div class=\"error\" role=\"presentation\">Invalid character</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"value\"\n .value=\"${live(value || '')}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Text part mime - optional value\"\n placeholder=\"Part mime (optional)\"\n @change=\"${this.handleMimeChange}\"\n list=\"mime-list\"\n />\n </div>\n `\n }\n\n protected renderParam(part: IMultipartBody, index: number): TemplateResult {\n if (typeof part.isFile === 'boolean') {\n // When this is still set it means that when setting the model something went wrong.\n // This also mean we can't recover from here so the only option is to remove the part.\n return this.renderIncompatiblePart(index)\n }\n normalizePartValue(part)\n const value = part.value as ISafePayload\n if (value.type === 'string') {\n return this.renderTextPart(part, index)\n }\n if (value.type === 'blob') {\n return this.renderBlobPart(part, index)\n }\n return this.renderFilePart(part, index)\n }\n\n protected renderTextPart(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <div class=\"param-row\">\n ${this.renderToggleButton(part, index)} ${this.renderNameField(part, index)}\n ${this.renderValueField(part, index)} ${this.renderMimeField(index)} ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderBlobPart(part: IMultipartBody, index: number): TemplateResult {\n const item = part.value as ISafePayload\n const meta = item && (item.meta as IBlobMeta | undefined)\n return html`\n <div class=\"param-row\">\n ${this.renderToggleButton(part, index)} ${this.renderNameField(part, index)}\n ${this.renderBlobValueField(part, index)} ${this.renderMimeField(index, meta && meta.mime)}\n ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderFilePart(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <div class=\"param-row\">\n ${this.renderToggleButton(part, index)} ${this.renderNameField(part, index)}\n ${this.renderFileField(part, index)} ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderFileField(part: IMultipartBody, index: number): TemplateResult {\n const { readOnly } = this\n const item = part.value as ISafePayload\n const meta = item && (item.meta as IFileMeta | undefined)\n return html`\n <div class=\"input-wrapper file-input\">\n <ui-text-button @click=\"${this.handleFilePick}\" ?disabled=\"${readOnly}\" class=\"choose-button\"\n >Choose file</ui-text-button\n >\n <input type=\"file\" hidden data-index=\"${index}\" @change=\"${this.handleFilePartValue}\" />\n ${meta ? html`<span class=\"file-info\">${meta.name} (${meta.mime}), ${item.data.length} bytes</span>` : ''}\n </div>\n `\n }\n\n protected renderIncompatiblePart(index: number): TemplateResult {\n return html`\n <div class=\"param-row\">\n <p class=\"incompatible-part\">This part cannot be rendered. Please, remove this part.</p>\n ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderMimeList(): TemplateResult {\n return html`\n <datalist id=\"mime-list\">${mimeSuggestions.map((i) => html`<option value=\"${i}\"></option>`)}</datalist>\n `\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"BodyMultipartEditor.js","sourceRoot":"","sources":["../../../../src/elements/http/BodyMultipartEditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, TemplateResult, nothing } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport {\n type IBlobMeta,\n type IFileMeta,\n type IMultipartBody,\n type ISafePayload,\n PayloadSerializer,\n} from '@api-client/core/lib/transformers/PayloadSerializer.js'\nimport { queryRequestHeaders } from '@api-client/core/lib/definitions/HttpDefinitions.js'\nimport { live } from 'lit/directives/live.js'\nimport SwitchElement from '../../md/switch/internals/SwitchElement.js'\nimport Input from '../../md/input/Input.js'\nimport ApiElement from '../ApiElement.js'\nimport '../../md/icons/ui-icon.js'\nimport '../../md/switch/ui-switch.js'\nimport '../../md/icon-button/ui-icon-button.js'\nimport '../../md/button/ui-text-button.js'\n\nlet hasSupport: boolean\ntry {\n const fd = new FormData()\n fd.append('test', new Blob(['.'], { type: 'image/jpg' }), 'test.jpg')\n hasSupport = 'entries' in fd\n} catch {\n hasSupport = false\n}\nexport const hasFormDataSupport = hasSupport\n\nfunction normalizePartValue(item: IMultipartBody): void {\n if (typeof item.value === 'string') {\n const oldValue = item.value\n item.value = {\n type: 'string',\n data: oldValue,\n }\n }\n}\n\nlet mimeSuggestions: string[] = []\n\n;((): void => {\n const items = queryRequestHeaders('content-type')\n const item = items.find((i) => i.key.toLowerCase() === 'content-type')\n if (!item || !item.autocomplete) {\n return\n }\n mimeSuggestions = item.autocomplete\n})()\n\n/**\n * Multipart payload editor.\n *\n * The element internally uses a generated from a FormData model. It is API Client's `IMultipartBody` array.\n * The FormData is generated on-fly when accessing the `value` getter. It also regenerates the model when\n * the `value` property change. Because of that you should never set the value on the editor but only manipulate the\n * `model` property.\n */\nexport default class BodyMultipartEditor extends ApiElement {\n /**\n * When set the editor is in read only mode.\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor readOnly = false\n\n /**\n * When set all controls are disabled in the form\n * @attribute\n */\n @property({ type: Boolean, reflect: true }) accessor disabled = false\n\n /**\n * @attribute\n */\n @property({ type: Boolean }) accessor allowFormInfo: boolean | undefined\n\n /**\n * The value of this form.\n * When reading the `value` it generated the FormData from the model values.\n * When setting this property is regenerates the `model` to the value in the FormData.\n * When setting to anything other than the `FormData` it sets the `model` to an empty array.\n */\n get value(): FormData {\n return this.toFormData()\n }\n\n @property({ type: Object })\n set value(value: FormData) {\n this.updateModel(value)\n }\n\n /**\n * The model used by the external application\n */\n protected modelInternal: IMultipartBody[] = []\n\n /**\n * Computed data model for the view.\n * Don't set both `value` and `model`. If the model exists then\n * set only it or otherwise the `value` setter override the model.\n */\n get model(): IMultipartBody[] {\n return this.modelInternal\n }\n\n @property({ type: Array })\n set model(value: IMultipartBody[] | undefined) {\n const old = this.modelInternal\n if (old === value) {\n return\n }\n if (Array.isArray(value)) {\n this.modelInternal = value\n } else {\n this.modelInternal = []\n }\n this.requestUpdate('model', old)\n if (value) {\n this.upgradeLegacy(value)\n }\n }\n\n /**\n * @returns The FormData from the current model.\n */\n toFormData(): FormData {\n const validItems = this.modelInternal.filter((item) => {\n const { name, value } = item\n if (!name) {\n return false\n }\n if (typeof value === 'string') {\n return true\n }\n if (value.type === 'string') {\n return true\n }\n if (value.type === 'blob' || value.type === 'file') {\n return !!value.data && !!value.data.length\n }\n return true\n })\n return PayloadSerializer.deserializeFormData(validItems)\n }\n\n /**\n * Makes an attempt to upgrade old definitions of the `IMultipartBody`.\n * If this fails, the form will show error instead of part field.\n * @param value The current model.\n */\n protected async upgradeLegacy(value: IMultipartBody[]): Promise<void> {\n const ps: Promise<void>[] = []\n for (const part of value) {\n if (part.isFile === undefined) {\n continue\n }\n if (part.isFile === false && !part.type) {\n delete part.isFile\n const oldValue = (part.value || '') as string\n part.value = {\n type: 'string',\n data: oldValue,\n }\n } else if (part.isFile === false && part.type) {\n ps.push(this.upgradeLegacyBlob(part))\n } else {\n ps.push(this.upgradeLegacyFile(part))\n }\n }\n if (ps.length) {\n await Promise.allSettled(ps)\n this.requestUpdate()\n this.notifyChange()\n }\n }\n\n protected async upgradeLegacyBlob(part: IMultipartBody): Promise<void> {\n if (typeof part.value !== 'string') {\n return\n }\n const readBlob = PayloadSerializer.deserializeBlobLegacy(part.value as string)\n if (!readBlob) {\n return\n }\n const contents = await readBlob.text()\n part.blobText = contents || ''\n const blob = new Blob([part.blobText as string], { type: part.type })\n part.value = await PayloadSerializer.stringifyBlob(blob)\n delete part.type\n delete part.isFile\n }\n\n protected async upgradeLegacyFile(part: IMultipartBody): Promise<void> {\n if (typeof part.value !== 'string') {\n return\n }\n const readBlob = PayloadSerializer.deserializeBlobLegacy(part.value as string)\n if (!readBlob) {\n return\n }\n const fname = part.fileName || 'unknown-file.txt'\n const file = new File([readBlob], fname, { type: readBlob.type })\n part.value = await PayloadSerializer.stringifyFile(file)\n delete part.fileName\n delete part.isFile\n }\n\n protected async updateModel(value?: unknown): Promise<void> {\n if (!value || !(value instanceof FormData)) {\n this.model = []\n setTimeout(() => {\n this.dispatchEvent(new CustomEvent('modelupdate', { bubbles: false, composed: false }))\n })\n return\n }\n const payload = await PayloadSerializer.stringifyFormData(value as FormData)\n this.model = payload.data as IMultipartBody[]\n this.dispatchEvent(new CustomEvent('modelupdate', { bubbles: false, composed: false }))\n }\n\n /**\n * Adds an instance of a file to the form data\n */\n async addFile(file: File): Promise<void> {\n if (this.readOnly || this.disabled) {\n return\n }\n const { model } = this\n const entry = await PayloadSerializer.serializeFormDataEntry(file.name, file)\n model.push(entry)\n this.notifyChange()\n this.requestUpdate()\n }\n\n /**\n * Removes all parameters.\n */\n clear(): void {\n this.model = []\n this.notifyChange()\n }\n\n /**\n * Adds an empty text part item to the form.\n */\n addEmptyText(): void {\n if (this.readOnly || this.disabled) {\n return\n }\n const { model } = this\n const obj: IMultipartBody = {\n name: '',\n value: {\n data: '',\n type: 'string',\n },\n enabled: true,\n }\n model.push(obj)\n this.requestUpdate()\n }\n\n /**\n * Adds an empty file part item to the form.\n */\n addEmptyFile(): void {\n if (this.readOnly || this.disabled) {\n return\n }\n const { model } = this\n const obj: IMultipartBody = {\n name: '',\n value: {\n data: [],\n type: 'file',\n },\n enabled: true,\n }\n model.push(obj)\n this.requestUpdate()\n }\n\n /**\n * Removes a parameter from an index.\n */\n removeProperty(index: number): void {\n const items = this.modelInternal\n items.splice(index, 1)\n this.requestUpdate()\n this.notifyChange()\n }\n\n /**\n * Toggles enabled state of a parameter.\n */\n toggleProperty(index: number, enabled: boolean): void {\n const items = this.modelInternal\n const item = items[index]\n item.enabled = enabled\n this.notifyChange()\n }\n\n updatePartName(index: number, value: string): void {\n const item = this.modelInternal[index]\n const old = item.name\n if (old === value) {\n return\n }\n item.name = value\n this.notifyChange()\n }\n\n updateTextPartValue(index: number, value: string): void {\n const item = this.modelInternal[index]\n normalizePartValue(item)\n const typedValue = item.value as ISafePayload\n if (typedValue.data === value) {\n return\n }\n typedValue.data = value\n this.notifyChange()\n }\n\n async updateBlobPartValue(index: number, value: string): Promise<void> {\n const item = this.modelInternal[index]\n normalizePartValue(item)\n const typedValue = item.value as ISafePayload\n if (typedValue.data === value) {\n return\n }\n item.blobText = value\n const blob = new Blob([value], { type: typedValue.meta?.mime || 'text/plain' })\n item.value = await PayloadSerializer.stringifyBlob(blob)\n this.notifyChange()\n }\n\n async updateFileValue(index: number, file: File): Promise<void> {\n const item = this.modelInternal[index]\n if (!item || !file) {\n return\n }\n item.value = await PayloadSerializer.stringifyFile(file)\n this.notifyChange()\n this.requestUpdate()\n }\n\n async changePartMime(index: number, value: string): Promise<void> {\n const item = this.modelInternal[index]\n if (!item) {\n return\n }\n normalizePartValue(item)\n // change the type from text to blob, if needed\n const typedValue = item.value as ISafePayload\n\n if (typedValue.type === 'string') {\n item.blobText = typedValue.data as string\n } else if (!item.blobText && typedValue.data) {\n const restored = PayloadSerializer.deserializeBlob(typedValue) as Blob\n item.blobText = await restored.text()\n }\n const blob = new Blob([item.blobText || ''], { type: value })\n item.value = await PayloadSerializer.stringifyBlob(blob)\n this.notifyChange()\n }\n\n protected handleRemove(e: Event): void {\n const node = e.currentTarget as HTMLElement\n const index = Number(node.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.removeProperty(index)\n }\n\n protected handleToggle(e: Event): void {\n const node = e.currentTarget as SwitchElement\n const index = Number(node.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.toggleProperty(index, !!node.checked)\n }\n\n protected handleFilePick(e: Event): void {\n const node = e.target as HTMLElement\n const input = node.nextElementSibling as HTMLInputElement\n input.click()\n }\n\n protected handleFilePartValue(e: Event): void {\n e.stopPropagation()\n const input = e.target as HTMLInputElement\n if (!input.files) {\n return\n }\n const index = Number(input.dataset.index)\n this.updateFileValue(index, input.files[0])\n }\n\n protected handleNameChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.updatePartName(index, input.value)\n input.checkValidity()\n }\n\n protected handleValueChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.updateTextPartValue(index, input.value)\n input.checkValidity()\n }\n\n protected handleBlobValueChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.updateBlobPartValue(index, input.value)\n input.checkValidity()\n }\n\n protected handleMimeChange(e: Event): void {\n const input = e.target as Input\n const index = Number(input.dataset.index)\n if (Number.isNaN(index)) {\n return\n }\n this.changePartMime(index, input.value)\n input.checkValidity()\n }\n\n override render(): TemplateResult {\n if (!hasSupport) {\n return this.renderNoSupport()\n }\n return html` ${this.renderList()} ${this.renderMimeList()} ${this.renderFormInfo()} `\n }\n\n protected renderFormInfo(): TemplateResult | typeof nothing {\n if (!this.allowFormInfo) {\n return nothing\n }\n return html`\n <p class=\"form-info\">\n Note that the content-type header will be added when the request is sent. We encourage you to use variables to\n insert sensitive data.\n </p>\n `\n }\n\n protected renderList(): TemplateResult {\n const items = this.model\n if (!Array.isArray(items) || !items.length) {\n return this.renderEmptyMessage()\n }\n return this.renderParams(items)\n }\n\n protected renderNoSupport(): TemplateResult {\n return html` <div class=\"empty-message\">Your browser does not support this editor</div> `\n }\n\n protected renderEmptyMessage(): TemplateResult {\n return html` <div class=\"empty-message\">No parameters added</div> `\n }\n\n protected renderParams(items: IMultipartBody[]): TemplateResult {\n return html` ${items.map((item, index) => this.renderParam(item, index))} `\n }\n\n protected renderToggleButton(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <ui-switch\n .checked=\"${!!part.enabled}\"\n @change=\"${this.handleToggle}\"\n aria-label=\"Toggle this parameter\"\n data-index=\"${index}\"\n ?disabled=\"${this.readOnly}\"\n ></ui-switch>\n `\n }\n\n protected renderDeleteParameter(index: number): TemplateResult {\n return html`\n <ui-icon-button\n aria-label=\"Delete this parameter\"\n data-index=\"${index}\"\n @click=\"${this.handleRemove}\"\n ?disabled=\"${this.readOnly}\"\n class=\"delete-button\"\n >\n <ui-icon icon=\"deleteOutline\" role=\"presentation\"></ui-icon>\n </ui-icon-button>\n `\n }\n\n protected renderNameField(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <div class=\"input-wrapper name-input\">\n <div class=\"error\" role=\"presentation\">Name is required</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"name\"\n required\n autocomplete=\"off\"\n .value=\"${live(part.name)}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Part name value\"\n placeholder=\"Part name\"\n @change=\"${this.handleNameChange}\"\n />\n </div>\n `\n }\n\n protected renderValueField(part: IMultipartBody, index: number): TemplateResult {\n const value = ((part.value as ISafePayload).data as string) || ''\n return html`\n <div class=\"input-wrapper value-input\">\n <div class=\"error\" role=\"presentation\">Value is required</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"value\"\n required\n .value=\"${live(value)}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Text part value\"\n placeholder=\"Part text value\"\n @change=\"${this.handleValueChange}\"\n />\n </div>\n `\n }\n\n protected renderBlobValueField(part: IMultipartBody, index: number): TemplateResult {\n const { blobText } = part\n return html`\n <div class=\"input-wrapper value-input\">\n <div class=\"error\" role=\"presentation\">Value is required</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"value\"\n required\n .value=\"${live(blobText || '')}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Text part value\"\n placeholder=\"Part text value\"\n @change=\"${this.handleBlobValueChange}\"\n />\n </div>\n `\n }\n\n protected renderMimeField(index: number, value?: string): TemplateResult {\n return html`\n <div class=\"input-wrapper mime-input\">\n <div class=\"error\" role=\"presentation\">Invalid character</div>\n <div class=\"state\"></div>\n <input\n type=\"text\"\n name=\"value\"\n .value=\"${live(value || '')}\"\n data-index=\"${index}\"\n ?readOnly=\"${this.readOnly}\"\n aria-label=\"Text part mime - optional value\"\n placeholder=\"Part mime (optional)\"\n @change=\"${this.handleMimeChange}\"\n list=\"mime-list\"\n />\n </div>\n `\n }\n\n protected renderParam(part: IMultipartBody, index: number): TemplateResult {\n if (typeof part.isFile === 'boolean') {\n // When this is still set it means that when setting the model something went wrong.\n // This also mean we can't recover from here so the only option is to remove the part.\n return this.renderIncompatiblePart(index)\n }\n normalizePartValue(part)\n const value = part.value as ISafePayload\n if (value.type === 'string') {\n return this.renderTextPart(part, index)\n }\n if (value.type === 'blob') {\n return this.renderBlobPart(part, index)\n }\n return this.renderFilePart(part, index)\n }\n\n protected renderTextPart(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <div class=\"param-row\">\n ${this.renderToggleButton(part, index)} ${this.renderNameField(part, index)}\n ${this.renderValueField(part, index)} ${this.renderMimeField(index)} ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderBlobPart(part: IMultipartBody, index: number): TemplateResult {\n const item = part.value as ISafePayload\n const meta = item && (item.meta as IBlobMeta | undefined)\n return html`\n <div class=\"param-row\">\n ${this.renderToggleButton(part, index)} ${this.renderNameField(part, index)}\n ${this.renderBlobValueField(part, index)} ${this.renderMimeField(index, meta && meta.mime)}\n ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderFilePart(part: IMultipartBody, index: number): TemplateResult {\n return html`\n <div class=\"param-row\">\n ${this.renderToggleButton(part, index)} ${this.renderNameField(part, index)}\n ${this.renderFileField(part, index)} ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderFileField(part: IMultipartBody, index: number): TemplateResult {\n const { readOnly } = this\n const item = part.value as ISafePayload\n const meta = item && (item.meta as IFileMeta | undefined)\n return html`\n <div class=\"input-wrapper file-input\">\n <ui-text-button @click=\"${this.handleFilePick}\" ?disabled=\"${readOnly}\" class=\"choose-button\"\n >Choose file</ui-text-button\n >\n <input type=\"file\" hidden data-index=\"${index}\" @change=\"${this.handleFilePartValue}\" />\n ${meta ? html`<span class=\"file-info\">${meta.name} (${meta.mime}), ${item.data.length} bytes</span>` : ''}\n </div>\n `\n }\n\n protected renderIncompatiblePart(index: number): TemplateResult {\n return html`\n <div class=\"param-row\">\n <p class=\"incompatible-part\">This part cannot be rendered. Please, remove this part.</p>\n ${this.renderDeleteParameter(index)}\n </div>\n `\n }\n\n protected renderMimeList(): TemplateResult {\n return html`\n <datalist id=\"mime-list\">${mimeSuggestions.map((i) => html`<option value=\"${i}\"></option>`)}</datalist>\n `\n }\n}\n"]}
|
|
@@ -4,7 +4,7 @@ import ApiElement from '../ApiElement.js';
|
|
|
4
4
|
import type { ISegmentedButtonSelectionDetail } from '../../md/segmented-button/internals/SegmentedButtonsSet.js';
|
|
5
5
|
import '../../md/segmented-button/ui-segmented-button.js';
|
|
6
6
|
import '../../md/segmented-button/ui-segmented-button-set.js';
|
|
7
|
-
import '../../md/text-field/ui-text-field.js';
|
|
7
|
+
import '../../md/text-field/ui-filled-text-field.js';
|
|
8
8
|
import '../../md/button/ui-text-button.js';
|
|
9
9
|
import '../../md/button/ui-filled-button.js';
|
|
10
10
|
import '../../md/button/ui-filled-tonal-button.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CertificateAdd.element.d.ts","sourceRoot":"","sources":["../../../../src/elements/http/CertificateAdd.element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAQ,OAAO,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AAG9D,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,8CAA8C,CAAA;AAGhG,OAAO,UAAU,MAAM,kBAAkB,CAAA;AAGzC,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,4DAA4D,CAAA;AAKjH,OAAO,kDAAkD,CAAA;AACzD,OAAO,sDAAsD,CAAA;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"CertificateAdd.element.d.ts","sourceRoot":"","sources":["../../../../src/elements/http/CertificateAdd.element.ts"],"names":[],"mappings":"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"}
|