@vscode-elements/elements 2.0.0-pre.2 → 2.0.0-pre.4
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/custom-elements.json +4772 -4593
- package/dist/bundled.js +417 -347
- package/dist/includes/VscElement.d.ts.map +1 -1
- package/dist/includes/VscElement.js +2 -5
- package/dist/includes/VscElement.js.map +1 -1
- package/dist/includes/form-button-widget/base.styles.d.ts.map +1 -1
- package/dist/includes/form-button-widget/base.styles.js +8 -9
- package/dist/includes/form-button-widget/base.styles.js.map +1 -1
- package/dist/includes/test-helpers.d.ts +11 -0
- package/dist/includes/test-helpers.d.ts.map +1 -1
- package/dist/includes/test-helpers.js +36 -0
- package/dist/includes/test-helpers.js.map +1 -1
- package/dist/vscode-badge/vscode-badge.js +1 -1
- package/dist/vscode-badge/vscode-badge.js.map +1 -1
- package/dist/vscode-badge/vscode-badge.styles.d.ts.map +1 -1
- package/dist/vscode-badge/vscode-badge.styles.js +8 -4
- package/dist/vscode-badge/vscode-badge.styles.js.map +1 -1
- package/dist/vscode-button/vscode-button.d.ts +0 -2
- package/dist/vscode-button/vscode-button.d.ts.map +1 -1
- package/dist/vscode-button/vscode-button.js +10 -24
- package/dist/vscode-button/vscode-button.js.map +1 -1
- package/dist/vscode-button/vscode-button.styles.d.ts.map +1 -1
- package/dist/vscode-button/vscode-button.styles.js +31 -18
- package/dist/vscode-button/vscode-button.styles.js.map +1 -1
- package/dist/vscode-button-group/vscode-button-group.d.ts.map +1 -1
- package/dist/vscode-button-group/vscode-button-group.js +2 -3
- package/dist/vscode-button-group/vscode-button-group.js.map +1 -1
- package/dist/vscode-button-group/vscode-button-group.styles.d.ts.map +1 -1
- package/dist/vscode-button-group/vscode-button-group.styles.js +17 -13
- package/dist/vscode-button-group/vscode-button-group.styles.js.map +1 -1
- package/dist/vscode-checkbox/vscode-checkbox.d.ts.map +1 -1
- package/dist/vscode-checkbox/vscode-checkbox.js +0 -10
- package/dist/vscode-checkbox/vscode-checkbox.js.map +1 -1
- package/dist/vscode-context-menu/vscode-context-menu.d.ts +0 -1
- package/dist/vscode-context-menu/vscode-context-menu.d.ts.map +1 -1
- package/dist/vscode-context-menu/vscode-context-menu.js +0 -18
- package/dist/vscode-context-menu/vscode-context-menu.js.map +1 -1
- package/dist/vscode-context-menu/vscode-context-menu.styles.js +4 -4
- package/dist/vscode-context-menu/vscode-context-menu.styles.js.map +1 -1
- package/dist/vscode-context-menu-item/vscode-context-menu-item.styles.js +4 -4
- package/dist/vscode-context-menu-item/vscode-context-menu-item.styles.js.map +1 -1
- package/dist/vscode-divider/vscode-divider.js +1 -1
- package/dist/vscode-divider/vscode-divider.js.map +1 -1
- package/dist/vscode-divider/vscode-divider.styles.d.ts.map +1 -1
- package/dist/vscode-divider/vscode-divider.styles.js +5 -2
- package/dist/vscode-divider/vscode-divider.styles.js.map +1 -1
- package/dist/vscode-form-container/vscode-form-container.d.ts +0 -5
- package/dist/vscode-form-container/vscode-form-container.d.ts.map +1 -1
- package/dist/vscode-form-container/vscode-form-container.js +0 -63
- package/dist/vscode-form-container/vscode-form-container.js.map +1 -1
- package/dist/vscode-label/vscode-label.styles.js +6 -6
- package/dist/vscode-label/vscode-label.styles.js.map +1 -1
- package/dist/vscode-multi-select/vscode-multi-select.d.ts.map +1 -1
- package/dist/vscode-multi-select/vscode-multi-select.js +0 -7
- package/dist/vscode-multi-select/vscode-multi-select.js.map +1 -1
- package/dist/vscode-progress-ring/vscode-progress-ring.styles.d.ts.map +1 -1
- package/dist/vscode-progress-ring/vscode-progress-ring.styles.js +0 -1
- package/dist/vscode-progress-ring/vscode-progress-ring.styles.js.map +1 -1
- package/dist/vscode-radio/vscode-radio.d.ts +0 -1
- package/dist/vscode-radio/vscode-radio.d.ts.map +1 -1
- package/dist/vscode-radio/vscode-radio.js +0 -14
- package/dist/vscode-radio/vscode-radio.js.map +1 -1
- package/dist/vscode-scrollable/vscode-scrollable.d.ts +0 -1
- package/dist/vscode-scrollable/vscode-scrollable.d.ts.map +1 -1
- package/dist/vscode-scrollable/vscode-scrollable.js +0 -1
- package/dist/vscode-scrollable/vscode-scrollable.js.map +1 -1
- package/dist/vscode-single-select/vscode-single-select.d.ts +0 -1
- package/dist/vscode-single-select/vscode-single-select.d.ts.map +1 -1
- package/dist/vscode-single-select/vscode-single-select.js +0 -10
- package/dist/vscode-single-select/vscode-single-select.js.map +1 -1
- package/dist/vscode-tab-header/vscode-tab-header.styles.d.ts.map +1 -1
- package/dist/vscode-tab-header/vscode-tab-header.styles.js +12 -5
- package/dist/vscode-tab-header/vscode-tab-header.styles.js.map +1 -1
- package/dist/vscode-tabs/vscode-tabs.d.ts +0 -2
- package/dist/vscode-tabs/vscode-tabs.d.ts.map +1 -1
- package/dist/vscode-tabs/vscode-tabs.js +7 -13
- package/dist/vscode-tabs/vscode-tabs.js.map +1 -1
- package/dist/vscode-tabs/vscode-tabs.styles.d.ts.map +1 -1
- package/dist/vscode-tabs/vscode-tabs.styles.js +5 -0
- package/dist/vscode-tabs/vscode-tabs.styles.js.map +1 -1
- package/dist/vscode-textarea/vscode-textarea.d.ts.map +1 -1
- package/dist/vscode-textarea/vscode-textarea.js +2 -10
- package/dist/vscode-textarea/vscode-textarea.js.map +1 -1
- package/dist/vscode-textarea/vscode-textarea.styles.js +1 -1
- package/dist/vscode-textarea/vscode-textarea.styles.js.map +1 -1
- package/dist/vscode-textfield/vscode-textfield.d.ts.map +1 -1
- package/dist/vscode-textfield/vscode-textfield.js +31 -35
- package/dist/vscode-textfield/vscode-textfield.js.map +1 -1
- package/dist/vscode-textfield/vscode-textfield.styles.d.ts.map +1 -1
- package/dist/vscode-textfield/vscode-textfield.styles.js +8 -3
- package/dist/vscode-textfield/vscode-textfield.styles.js.map +1 -1
- package/dist/vscode-toolbar-container/vscode-toolbar-container.js +1 -1
- package/dist/vscode-toolbar-container/vscode-toolbar-container.js.map +1 -1
- package/dist/vscode-toolbar-container/vscode-toolbar-container.styles.d.ts.map +1 -1
- package/dist/vscode-toolbar-container/vscode-toolbar-container.styles.js +4 -0
- package/dist/vscode-toolbar-container/vscode-toolbar-container.styles.js.map +1 -1
- package/dist/vscode-tree/helpers.d.ts +4 -6
- package/dist/vscode-tree/helpers.d.ts.map +1 -1
- package/dist/vscode-tree/helpers.js +45 -68
- package/dist/vscode-tree/helpers.js.map +1 -1
- package/dist/vscode-tree/tree-context.d.ts +5 -5
- package/dist/vscode-tree/tree-context.d.ts.map +1 -1
- package/dist/vscode-tree/tree-context.js.map +1 -1
- package/dist/vscode-tree/vscode-tree.d.ts +63 -7
- package/dist/vscode-tree/vscode-tree.d.ts.map +1 -1
- package/dist/vscode-tree/vscode-tree.js +112 -62
- package/dist/vscode-tree/vscode-tree.js.map +1 -1
- package/dist/vscode-tree/vscode-tree.styles.d.ts.map +1 -1
- package/dist/vscode-tree/vscode-tree.styles.js +39 -3
- package/dist/vscode-tree/vscode-tree.styles.js.map +1 -1
- package/dist/vscode-tree-item/vscode-tree-item.d.ts +5 -0
- package/dist/vscode-tree-item/vscode-tree-item.d.ts.map +1 -1
- package/dist/vscode-tree-item/vscode-tree-item.js +78 -37
- package/dist/vscode-tree-item/vscode-tree-item.js.map +1 -1
- package/dist/vscode-tree-item/vscode-tree-item.styles.d.ts.map +1 -1
- package/dist/vscode-tree-item/vscode-tree-item.styles.js +34 -51
- package/dist/vscode-tree-item/vscode-tree-item.styles.js.map +1 -1
- package/package.json +3 -3
- package/vscode.css-custom-data.json +41 -42
- package/vscode.html-custom-data.json +164 -147
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-textfield.js","sourceRoot":"","sources":["../../src/vscode-textfield/vscode-textfield.ts"],"names":[],"mappings":"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","sourcesContent":["import {html, LitElement, TemplateResult} from 'lit';\nimport {property, query, state} from 'lit/decorators.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\nimport {customElement, VscElement} from '../includes/VscElement.js';\nimport styles from './vscode-textfield.styles.js';\nimport {AssociatedFormControl} from '../includes/AssociatedFormControl.js';\n\ntype InputType =\n | 'color'\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'file'\n | 'month'\n | 'number'\n | 'password'\n | 'search'\n | 'tel'\n | 'text'\n | 'time'\n | 'url'\n | 'week';\n\n/**\n * A simple inline textfield\n *\n * When participating in a form, it supports the `:invalid` pseudo class. Otherwise the error styles\n * can be applied through the `invalid` property.\n *\n * @tag vscode-textfield\n *\n * @slot content-before - A slot before the editable area but inside of the component. It is used to place icons.\n * @slot content-after - A slot after the editable area but inside of the component. It is used to place icons.\n *\n * @fires {InputEvent} input\n * @fires {Event} change\n *\n * @cssprop [--vscode-settings-textInputBackground=#313131]\n * @cssprop [--vscode-settings-textInputBorder=var(--vscode-settings-textInputBackground, #3c3c3c)]\n * @cssprop [--vscode-settings-textInputForeground=#cccccc]\n * @cssprop [--vscode-settings-textInputBackground=#313131]\n * @cssprop [--vscode-focusBorder=#0078d4]\n * @cssprop [--vscode-font-family=sans-serif] - A sans-serif font type depends on the host OS.\n * @cssprop [--vscode-font-size=13px]\n * @cssprop [--vscode-font-weight=normal]\n * @cssprop [--vscode-inputValidation-errorBorder=#be1100]\n * @cssprop [--vscode-inputValidation-errorBackground=#5a1d1d]\n * @cssprop [--vscode-input-placeholderForeground=#989898]\n * @cssprop [--vscode-button-background=#0078d4]\n * @cssprop [--vscode-button-foreground=#ffffff]\n * @cssprop [--vscode-button-hoverBackground=#026ec1]\n */\n@customElement('vscode-textfield')\nexport class VscodeTextfield\n extends VscElement\n implements AssociatedFormControl\n{\n static override styles = styles;\n\n /** @internal */\n static formAssociated = true;\n\n /** @internal */\n static override shadowRootOptions: ShadowRootInit = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n @property()\n autocomplete: 'on' | 'off' | undefined = undefined;\n\n @property({type: Boolean, reflect: true})\n override autofocus = false;\n\n @property({attribute: 'default-value'})\n defaultValue = '';\n\n @property({type: Boolean, reflect: true})\n disabled = false;\n\n @property({type: Boolean, reflect: true})\n focused = false;\n\n /**\n * Set error styles on the component. This is only intended to apply styles when custom error\n * validation is implemented. To check whether the component is valid, use the checkValidity method.\n */\n @property({type: Boolean, reflect: true})\n invalid = false;\n\n /**\n * @internal\n * Set `aria-label` for the inner input element. Should not be set,\n * vscode-label will do it automatically.\n */\n @property({attribute: false})\n label = '';\n\n @property({type: Number})\n max: number | undefined = undefined;\n\n @property({type: Number})\n maxLength: number | undefined = undefined;\n\n @property({type: Number})\n min: number | undefined = undefined;\n\n @property({type: Number})\n minLength: number | undefined = undefined;\n\n @property({type: Boolean, reflect: true})\n multiple = false;\n\n @property({reflect: true})\n name: string | undefined = undefined;\n\n /**\n * Specifies a regular expression the form control's value should match.\n * [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern)\n */\n @property()\n pattern: string | undefined = undefined;\n\n @property()\n placeholder: string | undefined = undefined;\n\n @property({type: Boolean, reflect: true})\n readonly = false;\n\n @property({type: Boolean, reflect: true})\n required = false;\n\n @property({type: Number})\n step: number | undefined = undefined;\n\n /**\n * Same as the `type` of the native `<input>` element but only a subset of types are supported.\n * The supported ones are: `color`,`date`,`datetime-local`,`email`,`file`,`month`,`number`,`password`,`search`,`tel`,`text`,`time`,`url`,`week`\n */\n @property({reflect: true})\n set type(val: InputType) {\n const validTypes: InputType[] = [\n 'color',\n 'date',\n 'datetime-local',\n 'email',\n 'file',\n 'month',\n 'number',\n 'password',\n 'search',\n 'tel',\n 'text',\n 'time',\n 'url',\n 'week',\n ];\n\n this._type = (\n validTypes.includes(val as InputType) ? val : 'text'\n ) as InputType;\n }\n get type(): InputType {\n return this._type;\n }\n\n @property()\n set value(val: string) {\n if (this.type !== 'file') {\n this._value = val;\n this._internals.setFormValue(val);\n }\n\n this.updateComplete.then(() => {\n this._setValidityFromInput();\n });\n }\n get value(): string {\n return this._value;\n }\n\n /**\n * Lowercase alias to minLength\n */\n set minlength(val: number) {\n this.minLength = val;\n }\n\n get minlength(): number | undefined {\n return this.minLength;\n }\n\n /**\n * Lowercase alias to maxLength\n */\n set maxlength(val: number) {\n this.maxLength = val;\n }\n\n get maxlength(): number | undefined {\n return this.maxLength;\n }\n\n get form(): HTMLFormElement | null {\n return this._internals.form;\n }\n\n get validity(): ValidityState {\n return this._internals.validity;\n }\n\n get validationMessage() {\n return this._internals.validationMessage;\n }\n\n get willValidate() {\n return this._internals.willValidate;\n }\n\n /**\n * Check the component's validity state when built-in validation is used.\n * Built-in validation is triggered when any validation-related attribute is set. Validation-related\n * attributes are: `max, maxlength, min, minlength, pattern, required, step`.\n * See this [the MDN reference](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/checkValidity) for more details.\n * @returns {boolean}\n */\n checkValidity(): boolean {\n this._setValidityFromInput();\n return this._internals.checkValidity();\n }\n\n reportValidity() {\n this._setValidityFromInput();\n return this._internals.reportValidity();\n }\n\n get wrappedElement(): HTMLInputElement {\n return this._inputEl;\n }\n\n constructor() {\n super();\n this._internals = this.attachInternals();\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.updateComplete.then(() => {\n this._inputEl.checkValidity();\n this._setValidityFromInput();\n this._internals.setFormValue(this._inputEl.value);\n });\n }\n\n override attributeChangedCallback(\n name: string,\n old: string | null,\n value: string | null\n ): void {\n super.attributeChangedCallback(name, old, value);\n\n const validationRelatedAttributes = [\n 'max',\n 'maxlength',\n 'min',\n 'minlength',\n 'pattern',\n 'required',\n 'step',\n ];\n\n if (validationRelatedAttributes.includes(name)) {\n this.updateComplete.then(() => {\n this._setValidityFromInput();\n });\n }\n }\n\n /** @internal */\n formResetCallback(): void {\n this.value = this.defaultValue;\n this.requestUpdate();\n }\n\n /** @internal */\n formStateRestoreCallback(\n state: string,\n _mode: 'restore' | 'autocomplete'\n ): void {\n this.value = state;\n }\n\n @query('#input')\n private _inputEl!: HTMLInputElement;\n\n @state()\n private _value = '';\n\n @state()\n private _type: InputType = 'text';\n\n private _internals: ElementInternals;\n\n private _dataChanged() {\n this._value = this._inputEl.value;\n\n if (this.type === 'file' && this._inputEl.files) {\n for (const f of this._inputEl.files) {\n this._internals.setFormValue(f);\n }\n } else {\n this._internals.setFormValue(this._inputEl.value);\n }\n }\n\n private _setValidityFromInput() {\n if (this._inputEl) {\n this._internals.setValidity(\n this._inputEl.validity,\n this._inputEl.validationMessage,\n this._inputEl\n );\n }\n }\n\n private _onInput(ev: InputEvent) {\n this._dataChanged();\n this._setValidityFromInput();\n\n // native input event dispatched automatically\n /** @deprecated */\n this.dispatchEvent(\n new CustomEvent('vsc-input', {detail: {data: ev.data, originalEvent: ev}})\n );\n }\n\n private _onChange(ev: Event) {\n this._dataChanged();\n this._setValidityFromInput();\n this.dispatchEvent(new Event('change'));\n /** @deprecated */\n this.dispatchEvent(\n new CustomEvent<{data: string; originalEvent: Event}>('vsc-change', {\n detail: {data: this.value, originalEvent: ev},\n })\n );\n }\n\n private _onFocus() {\n this.focused = true;\n }\n\n private _onBlur() {\n this.focused = false;\n }\n\n private _onKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Enter' && this._internals.form) {\n this._internals.form?.requestSubmit();\n }\n }\n\n override render(): TemplateResult {\n return html`\n <slot name=\"content-before\"></slot>\n <input\n id=\"input\"\n type=${this.type}\n ?autofocus=${this.autofocus}\n autocomplete=${ifDefined(this.autocomplete)}\n aria-label=${this.label}\n ?disabled=${this.disabled}\n max=${ifDefined(this.max)}\n maxlength=${ifDefined(this.maxLength)}\n min=${ifDefined(this.min)}\n minlength=${ifDefined(this.minLength)}\n ?multiple=${this.multiple}\n name=${ifDefined(this.name)}\n pattern=${ifDefined(this.pattern)}\n placeholder=${ifDefined(this.placeholder)}\n ?readonly=${this.readonly}\n ?required=${this.required}\n step=${ifDefined(this.step)}\n .value=${this._value}\n @blur=${this._onBlur}\n @change=${this._onChange}\n @focus=${this._onFocus}\n @input=${this._onInput}\n @keydown=${this._onKeyDown}\n >\n <slot name=\"content-after\"></slot>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'vscode-textfield': VscodeTextfield;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"vscode-textfield.js","sourceRoot":"","sources":["../../src/vscode-textfield/vscode-textfield.ts"],"names":[],"mappings":"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","sourcesContent":["import {html, LitElement, TemplateResult} from 'lit';\nimport {property, query, state} from 'lit/decorators.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\nimport {customElement, VscElement} from '../includes/VscElement.js';\nimport styles from './vscode-textfield.styles.js';\nimport {AssociatedFormControl} from '../includes/AssociatedFormControl.js';\n\ntype InputType =\n | 'color'\n | 'date'\n | 'datetime-local'\n | 'email'\n | 'file'\n | 'month'\n | 'number'\n | 'password'\n | 'search'\n | 'tel'\n | 'text'\n | 'time'\n | 'url'\n | 'week';\n\n/**\n * A simple inline textfield\n *\n * When participating in a form, it supports the `:invalid` pseudo class. Otherwise the error styles\n * can be applied through the `invalid` property.\n *\n * @tag vscode-textfield\n *\n * @slot content-before - A slot before the editable area but inside of the component. It is used to place icons.\n * @slot content-after - A slot after the editable area but inside of the component. It is used to place icons.\n *\n * @fires {InputEvent} input\n * @fires {Event} change\n *\n * @cssprop [--vscode-settings-textInputBackground=#313131]\n * @cssprop [--vscode-settings-textInputBorder=var(--vscode-settings-textInputBackground, #3c3c3c)]\n * @cssprop [--vscode-settings-textInputForeground=#cccccc]\n * @cssprop [--vscode-settings-textInputBackground=#313131]\n * @cssprop [--vscode-focusBorder=#0078d4]\n * @cssprop [--vscode-font-family=sans-serif] - A sans-serif font type depends on the host OS.\n * @cssprop [--vscode-font-size=13px]\n * @cssprop [--vscode-font-weight=normal]\n * @cssprop [--vscode-inputValidation-errorBorder=#be1100]\n * @cssprop [--vscode-inputValidation-errorBackground=#5a1d1d]\n * @cssprop [--vscode-input-placeholderForeground=#989898]\n * @cssprop [--vscode-button-background=#0078d4]\n * @cssprop [--vscode-button-foreground=#ffffff]\n * @cssprop [--vscode-button-hoverBackground=#026ec1]\n */\n@customElement('vscode-textfield')\nexport class VscodeTextfield\n extends VscElement\n implements AssociatedFormControl\n{\n static override styles = styles;\n\n /** @internal */\n static formAssociated = true;\n\n /** @internal */\n static override shadowRootOptions: ShadowRootInit = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n @property()\n autocomplete: 'on' | 'off' | undefined = undefined;\n\n @property({type: Boolean, reflect: true})\n override autofocus = false;\n\n @property({attribute: 'default-value'})\n defaultValue = '';\n\n @property({type: Boolean, reflect: true})\n disabled = false;\n\n @property({type: Boolean, reflect: true})\n focused = false;\n\n /**\n * Set error styles on the component. This is only intended to apply styles when custom error\n * validation is implemented. To check whether the component is valid, use the checkValidity method.\n */\n @property({type: Boolean, reflect: true})\n invalid = false;\n\n /**\n * @internal\n * Set `aria-label` for the inner input element. Should not be set,\n * vscode-label will do it automatically.\n */\n @property({attribute: false})\n label = '';\n\n @property({type: Number})\n max: number | undefined = undefined;\n\n @property({type: Number})\n maxLength: number | undefined = undefined;\n\n @property({type: Number})\n min: number | undefined = undefined;\n\n @property({type: Number})\n minLength: number | undefined = undefined;\n\n @property({type: Boolean, reflect: true})\n multiple = false;\n\n @property({reflect: true})\n name: string | undefined = undefined;\n\n /**\n * Specifies a regular expression the form control's value should match.\n * [MDN Reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/pattern)\n */\n @property()\n pattern: string | undefined = undefined;\n\n @property()\n placeholder: string | undefined = undefined;\n\n @property({type: Boolean, reflect: true})\n readonly = false;\n\n @property({type: Boolean, reflect: true})\n required = false;\n\n @property({type: Number})\n step: number | undefined = undefined;\n\n /**\n * Same as the `type` of the native `<input>` element but only a subset of types are supported.\n * The supported ones are: `color`,`date`,`datetime-local`,`email`,`file`,`month`,`number`,`password`,`search`,`tel`,`text`,`time`,`url`,`week`\n */\n @property({reflect: true})\n set type(val: InputType) {\n const validTypes: InputType[] = [\n 'color',\n 'date',\n 'datetime-local',\n 'email',\n 'file',\n 'month',\n 'number',\n 'password',\n 'search',\n 'tel',\n 'text',\n 'time',\n 'url',\n 'week',\n ];\n\n this._type = (\n validTypes.includes(val as InputType) ? val : 'text'\n ) as InputType;\n }\n get type(): InputType {\n return this._type;\n }\n\n @property()\n set value(val: string) {\n if (this.type !== 'file') {\n this._value = val;\n this._internals.setFormValue(val);\n }\n\n this.updateComplete.then(() => {\n this._setValidityFromInput();\n });\n }\n get value(): string {\n return this._value;\n }\n\n /**\n * Lowercase alias to minLength\n */\n set minlength(val: number) {\n this.minLength = val;\n }\n\n get minlength(): number | undefined {\n return this.minLength;\n }\n\n /**\n * Lowercase alias to maxLength\n */\n set maxlength(val: number) {\n this.maxLength = val;\n }\n\n get maxlength(): number | undefined {\n return this.maxLength;\n }\n\n get form(): HTMLFormElement | null {\n return this._internals.form;\n }\n\n get validity(): ValidityState {\n return this._internals.validity;\n }\n\n get validationMessage() {\n return this._internals.validationMessage;\n }\n\n get willValidate() {\n return this._internals.willValidate;\n }\n\n /**\n * Check the component's validity state when built-in validation is used.\n * Built-in validation is triggered when any validation-related attribute is set. Validation-related\n * attributes are: `max, maxlength, min, minlength, pattern, required, step`.\n * See this [the MDN reference](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/checkValidity) for more details.\n * @returns {boolean}\n */\n checkValidity(): boolean {\n this._setValidityFromInput();\n return this._internals.checkValidity();\n }\n\n reportValidity() {\n this._setValidityFromInput();\n return this._internals.reportValidity();\n }\n\n get wrappedElement(): HTMLInputElement {\n return this._inputEl;\n }\n\n constructor() {\n super();\n this._internals = this.attachInternals();\n }\n\n override connectedCallback(): void {\n super.connectedCallback();\n\n this.updateComplete.then(() => {\n this._inputEl.checkValidity();\n this._setValidityFromInput();\n this._internals.setFormValue(this._inputEl.value);\n });\n }\n\n override attributeChangedCallback(\n name: string,\n old: string | null,\n value: string | null\n ): void {\n super.attributeChangedCallback(name, old, value);\n\n const validationRelatedAttributes = [\n 'max',\n 'maxlength',\n 'min',\n 'minlength',\n 'pattern',\n 'required',\n 'step',\n ];\n\n if (validationRelatedAttributes.includes(name)) {\n this.updateComplete.then(() => {\n this._setValidityFromInput();\n });\n }\n }\n\n /** @internal */\n formResetCallback(): void {\n this.value = this.defaultValue;\n this.requestUpdate();\n }\n\n /** @internal */\n formStateRestoreCallback(\n state: string,\n _mode: 'restore' | 'autocomplete'\n ): void {\n this.value = state;\n }\n\n @query('#input')\n private _inputEl!: HTMLInputElement;\n\n @state()\n private _value = '';\n\n @state()\n private _type: InputType = 'text';\n\n private _internals: ElementInternals;\n\n private _dataChanged() {\n this._value = this._inputEl.value;\n\n if (this.type === 'file' && this._inputEl.files) {\n for (const f of this._inputEl.files) {\n this._internals.setFormValue(f);\n }\n } else {\n this._internals.setFormValue(this._inputEl.value);\n }\n }\n\n private _setValidityFromInput() {\n if (this._inputEl) {\n this._internals.setValidity(\n this._inputEl.validity,\n this._inputEl.validationMessage,\n this._inputEl\n );\n }\n }\n\n private _onInput() {\n this._dataChanged();\n this._setValidityFromInput();\n // native input event dispatched automatically\n }\n\n private _onChange() {\n this._dataChanged();\n this._setValidityFromInput();\n this.dispatchEvent(new Event('change'));\n }\n\n private _onFocus() {\n this.focused = true;\n }\n\n private _onBlur() {\n this.focused = false;\n }\n\n private _onKeyDown(ev: KeyboardEvent) {\n if (ev.key === 'Enter' && this._internals.form) {\n this._internals.form?.requestSubmit();\n }\n }\n\n override render(): TemplateResult {\n return html`\n <div class=\"root\">\n <slot name=\"content-before\"></slot>\n <input\n id=\"input\"\n type=${this.type}\n ?autofocus=${this.autofocus}\n autocomplete=${ifDefined(this.autocomplete)}\n aria-label=${this.label}\n ?disabled=${this.disabled}\n max=${ifDefined(this.max)}\n maxlength=${ifDefined(this.maxLength)}\n min=${ifDefined(this.min)}\n minlength=${ifDefined(this.minLength)}\n ?multiple=${this.multiple}\n name=${ifDefined(this.name)}\n pattern=${ifDefined(this.pattern)}\n placeholder=${ifDefined(this.placeholder)}\n ?readonly=${this.readonly}\n ?required=${this.required}\n step=${ifDefined(this.step)}\n .value=${this._value}\n @blur=${this._onBlur}\n @change=${this._onChange}\n @focus=${this._onFocus}\n @input=${this._onInput}\n @keydown=${this._onKeyDown}\n >\n <slot name=\"content-after\"></slot>\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'vscode-textfield': VscodeTextfield;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-textfield.styles.d.ts","sourceRoot":"","sources":["../../src/vscode-textfield/vscode-textfield.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,cAAc,EAAY,MAAM,KAAK,CAAC;AAMnD,QAAA,MAAM,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"vscode-textfield.styles.d.ts","sourceRoot":"","sources":["../../src/vscode-textfield/vscode-textfield.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,cAAc,EAAY,MAAM,KAAK,CAAC;AAMnD,QAAA,MAAM,MAAM,EAAE,cA2Gb,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -6,6 +6,11 @@ const styles = [
|
|
|
6
6
|
defaultStyles,
|
|
7
7
|
css `
|
|
8
8
|
:host {
|
|
9
|
+
display: inline-block;
|
|
10
|
+
width: 320px;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.root {
|
|
9
14
|
align-items: center;
|
|
10
15
|
background-color: var(--vscode-settings-textInputBackground, #313131);
|
|
11
16
|
border-color: var(
|
|
@@ -17,13 +22,13 @@ const styles = [
|
|
|
17
22
|
border-width: 1px;
|
|
18
23
|
box-sizing: border-box;
|
|
19
24
|
color: var(--vscode-settings-textInputForeground, #cccccc);
|
|
20
|
-
display:
|
|
25
|
+
display: flex;
|
|
21
26
|
max-width: 100%;
|
|
22
27
|
position: relative;
|
|
23
|
-
width:
|
|
28
|
+
width: 100%;
|
|
24
29
|
}
|
|
25
30
|
|
|
26
|
-
:host([focused]) {
|
|
31
|
+
:host([focused]) .root {
|
|
27
32
|
border-color: var(--vscode-focusBorder, #0078d4);
|
|
28
33
|
}
|
|
29
34
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-textfield.styles.js","sourceRoot":"","sources":["../../src/vscode-textfield/vscode-textfield.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAkB,SAAS,EAAC,MAAM,KAAK,CAAC;AACnD,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAE3D,MAAM,gBAAgB,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAE1D,MAAM,MAAM,GAAmB;IAC7B,aAAa;IACb,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"vscode-textfield.styles.js","sourceRoot":"","sources":["../../src/vscode-textfield/vscode-textfield.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAkB,SAAS,EAAC,MAAM,KAAK,CAAC;AACnD,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAC,mBAAmB,EAAC,MAAM,wBAAwB,CAAC;AAE3D,MAAM,gBAAgB,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAE1D,MAAM,MAAM,GAAmB;IAC7B,aAAa;IACb,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CA4D0C,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CAkChB,gBAAgB;;;;;;;;;;GAU5D;CACF,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["import {css, CSSResultGroup, unsafeCSS} from 'lit';\nimport defaultStyles from '../includes/default.styles.js';\nimport {getDefaultFontStack} from '../includes/helpers.js';\n\nconst defaultFontStack = unsafeCSS(getDefaultFontStack());\n\nconst styles: CSSResultGroup = [\n defaultStyles,\n css`\n :host {\n display: inline-block;\n width: 320px;\n }\n\n .root {\n align-items: center;\n background-color: var(--vscode-settings-textInputBackground, #313131);\n border-color: var(\n --vscode-settings-textInputBorder,\n var(--vscode-settings-textInputBackground, #3c3c3c)\n );\n border-radius: 2px;\n border-style: solid;\n border-width: 1px;\n box-sizing: border-box;\n color: var(--vscode-settings-textInputForeground, #cccccc);\n display: flex;\n max-width: 100%;\n position: relative;\n width: 100%;\n }\n\n :host([focused]) .root {\n border-color: var(--vscode-focusBorder, #0078d4);\n }\n\n :host([invalid]),\n :host(:invalid) {\n border-color: var(--vscode-inputValidation-errorBorder, #be1100);\n }\n\n :host([invalid]) input,\n :host(:invalid) input {\n background-color: var(--vscode-inputValidation-errorBackground, #5a1d1d);\n }\n\n ::slotted([slot='content-before']) {\n display: block;\n margin-left: 2px;\n }\n\n ::slotted([slot='content-after']) {\n display: block;\n margin-right: 2px;\n }\n\n slot[name='content-before'],\n slot[name='content-after'] {\n align-items: center;\n display: flex;\n }\n\n input {\n background-color: var(--vscode-settings-textInputBackground, #313131);\n border: 0;\n box-sizing: border-box;\n color: var(--vscode-settings-textInputForeground, #cccccc);\n display: block;\n font-family: var(--vscode-font-family, ${defaultFontStack});\n font-size: var(--vscode-font-size, 13px);\n font-weight: var(--vscode-font-weight, 'normal');\n line-height: 18px;\n outline: none;\n padding-bottom: 3px;\n padding-left: 4px;\n padding-right: 4px;\n padding-top: 3px;\n width: 100%;\n }\n\n input:read-only:not([type='file']) {\n cursor: not-allowed;\n }\n\n input::placeholder {\n color: var(--vscode-input-placeholderForeground, #989898);\n opacity: 1;\n }\n\n input[type='file'] {\n line-height: 24px;\n padding-bottom: 0;\n padding-left: 2px;\n padding-top: 0;\n }\n\n input[type='file']::file-selector-button {\n background-color: var(--vscode-button-background, #0078d4);\n border: 0;\n border-radius: 2px;\n color: var(--vscode-button-foreground, #ffffff);\n cursor: pointer;\n font-family: var(--vscode-font-family, ${defaultFontStack});\n font-size: var(--vscode-font-size, 13px);\n font-weight: var(--vscode-font-weight, 'normal');\n line-height: 20px;\n padding: 0 14px;\n }\n\n input[type='file']::file-selector-button:hover {\n background-color: var(--vscode-button-hoverBackground, #026ec1);\n }\n `,\n];\n\nexport default styles;\n"]}
|
|
@@ -14,7 +14,7 @@ import styles from './vscode-toolbar-container.styles.js';
|
|
|
14
14
|
*/
|
|
15
15
|
let VscodeToolbarContainer = class VscodeToolbarContainer extends VscElement {
|
|
16
16
|
render() {
|
|
17
|
-
return html
|
|
17
|
+
return html `<div><slot></slot></div>`;
|
|
18
18
|
}
|
|
19
19
|
};
|
|
20
20
|
VscodeToolbarContainer.styles = styles;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-toolbar-container.js","sourceRoot":"","sources":["../../src/vscode-toolbar-container/vscode-toolbar-container.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,IAAI,EAAiB,MAAM,KAAK,CAAC;AACzC,OAAO,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACpE,OAAO,MAAM,MAAM,sCAAsC,CAAC;AAE1D;;;;GAIG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,UAAU;IAG3C,MAAM;QACb,OAAO,IAAI,CAAA,
|
|
1
|
+
{"version":3,"file":"vscode-toolbar-container.js","sourceRoot":"","sources":["../../src/vscode-toolbar-container/vscode-toolbar-container.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,IAAI,EAAiB,MAAM,KAAK,CAAC;AACzC,OAAO,EAAC,aAAa,EAAE,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACpE,OAAO,MAAM,MAAM,sCAAsC,CAAC;AAE1D;;;;GAIG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,UAAU;IAG3C,MAAM;QACb,OAAO,IAAI,CAAA,0BAA0B,CAAC;IACxC,CAAC;;AAJe,6BAAM,GAAG,MAAM,AAAT,CAAU;AADrB,sBAAsB;IADlC,aAAa,CAAC,0BAA0B,CAAC;GAC7B,sBAAsB,CAMlC","sourcesContent":["import {html, TemplateResult} from 'lit';\nimport {customElement, VscElement} from '../includes/VscElement.js';\nimport styles from './vscode-toolbar-container.styles.js';\n\n/**\n * Simple container to arrange the toolar buttons\n *\n * @tag vscode-toolbar-container\n */\n@customElement('vscode-toolbar-container')\nexport class VscodeToolbarContainer extends VscElement {\n static override styles = styles;\n\n override render(): TemplateResult {\n return html`<div><slot></slot></div>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'vscode-toolbar-container': VscodeToolbarContainer;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-toolbar-container.styles.d.ts","sourceRoot":"","sources":["../../src/vscode-toolbar-container/vscode-toolbar-container.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,cAAc,EAAC,MAAM,KAAK,CAAC;AAGxC,QAAA,MAAM,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"vscode-toolbar-container.styles.d.ts","sourceRoot":"","sources":["../../src/vscode-toolbar-container/vscode-toolbar-container.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,cAAc,EAAC,MAAM,KAAK,CAAC;AAGxC,QAAA,MAAM,MAAM,EAAE,cAab,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-toolbar-container.styles.js","sourceRoot":"","sources":["../../src/vscode-toolbar-container/vscode-toolbar-container.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAiB,MAAM,KAAK,CAAC;AACxC,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAE1D,MAAM,MAAM,GAAmB;IAC7B,aAAa;IACb,GAAG,CAAA
|
|
1
|
+
{"version":3,"file":"vscode-toolbar-container.styles.js","sourceRoot":"","sources":["../../src/vscode-toolbar-container/vscode-toolbar-container.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAiB,MAAM,KAAK,CAAC;AACxC,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAE1D,MAAM,MAAM,GAAmB;IAC7B,aAAa;IACb,GAAG,CAAA;;;;;;;;;;GAUF;CACF,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["import {css, CSSResultGroup} from 'lit';\nimport defaultStyles from '../includes/default.styles.js';\n\nconst styles: CSSResultGroup = [\n defaultStyles,\n css`\n :host {\n display: block;\n }\n\n div {\n gap: 4px;\n display: flex;\n align-items: center;\n }\n `,\n];\n\nexport default styles;\n"]}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import { VscodeTreeItem } from '../vscode-tree-item';
|
|
2
|
-
import type { VscodeTree } from './vscode-tree';
|
|
1
|
+
import type { VscodeTreeItem } from '../vscode-tree-item/vscode-tree-item.js';
|
|
2
|
+
import type { VscodeTree } from './vscode-tree.js';
|
|
3
3
|
export declare const initPathTrackerProps: (parentElement: VscodeTree | VscodeTreeItem, items: VscodeTreeItem[]) => void;
|
|
4
4
|
export declare const findLastChildItem: (item: VscodeTreeItem) => VscodeTreeItem;
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const findClosestAncestorHasNextSibling: (item: VscodeTreeItem) => VscodeTreeItem | null;
|
|
6
6
|
export declare const findNextItem: (item: VscodeTreeItem) => VscodeTreeItem | null;
|
|
7
7
|
export declare const findPrevItem: (item: VscodeTreeItem) => VscodeTreeItem | null;
|
|
8
|
-
export declare
|
|
9
|
-
export declare const selectItemAndAllVisibleDescendants: (item: VscodeTreeItem) => void;
|
|
10
|
-
export declare function getParentItem(childItem: VscodeTreeItem): VscodeTreeItem | null;
|
|
8
|
+
export declare function findParentItem(childItem: VscodeTreeItem): VscodeTreeItem | null;
|
|
11
9
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/vscode-tree/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/vscode-tree/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,yCAAyC,CAAC;AAC5E,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAQjD,eAAO,MAAM,oBAAoB,GAC/B,eAAe,UAAU,GAAG,cAAc,EAC1C,OAAO,cAAc,EAAE,KACtB,IAoBF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,cAAc,KAAG,cAYxD,CAAC;AAEF,eAAO,MAAM,iCAAiC,GAC5C,MAAM,cAAc,KACnB,cAAc,GAAG,IAkBnB,CAAC;AAYF,eAAO,MAAM,YAAY,GAAI,MAAM,cAAc,KAAG,cAAc,GAAG,IAkCpE,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,cAAc,KAAG,cAAc,GAAG,IA0BpE,CAAC;AAEF,wBAAgB,cAAc,CAAC,SAAS,EAAE,cAAc,yBAUvD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const isTreeItem = (item) => item.
|
|
2
|
-
const isTreeRoot = (item) => item.
|
|
1
|
+
const isTreeItem = (item) => item instanceof Element && item.matches('vscode-tree-item');
|
|
2
|
+
const isTreeRoot = (item) => item instanceof Element && item.matches('vscode-tree');
|
|
3
3
|
export const initPathTrackerProps = (parentElement, items) => {
|
|
4
4
|
const numChildren = items.length;
|
|
5
5
|
const parentElementLevel = isTreeRoot(parentElement)
|
|
@@ -8,10 +8,7 @@ export const initPathTrackerProps = (parentElement, items) => {
|
|
|
8
8
|
if ('branch' in parentElement) {
|
|
9
9
|
parentElement.branch = numChildren > 0;
|
|
10
10
|
}
|
|
11
|
-
parentElement.dataset.numChildren = numChildren.toString();
|
|
12
11
|
items.forEach((item, i) => {
|
|
13
|
-
const level = parentElementLevel + 1;
|
|
14
|
-
const index = i.toString();
|
|
15
12
|
if ('path' in parentElement) {
|
|
16
13
|
item.path = [...parentElement.path, i];
|
|
17
14
|
}
|
|
@@ -19,19 +16,14 @@ export const initPathTrackerProps = (parentElement, items) => {
|
|
|
19
16
|
item.path = [i];
|
|
20
17
|
}
|
|
21
18
|
item.level = parentElementLevel + 1;
|
|
22
|
-
item.dataset.level = (parentElementLevel + 1).toString();
|
|
23
|
-
item.dataset.index = i.toString();
|
|
24
|
-
item.dataset.last = i === numChildren - 1 ? 'true' : 'false';
|
|
25
|
-
item.dataset.id = `${level}_${index}`;
|
|
26
19
|
item.dataset.path = item.path.join('.');
|
|
27
20
|
});
|
|
28
21
|
};
|
|
29
22
|
export const findLastChildItem = (item) => {
|
|
30
|
-
const
|
|
31
|
-
if (
|
|
23
|
+
const lastItem = item.lastElementChild;
|
|
24
|
+
if (!lastItem || !isTreeItem(lastItem)) {
|
|
32
25
|
return item;
|
|
33
26
|
}
|
|
34
|
-
const lastItem = children[children.length - 1];
|
|
35
27
|
if (lastItem.branch && lastItem.open) {
|
|
36
28
|
return findLastChildItem(lastItem);
|
|
37
29
|
}
|
|
@@ -39,58 +31,70 @@ export const findLastChildItem = (item) => {
|
|
|
39
31
|
return lastItem;
|
|
40
32
|
}
|
|
41
33
|
};
|
|
42
|
-
export const
|
|
34
|
+
export const findClosestAncestorHasNextSibling = (item) => {
|
|
43
35
|
if (!item.parentElement) {
|
|
44
36
|
return null;
|
|
45
37
|
}
|
|
46
38
|
if (!isTreeItem(item.parentElement)) {
|
|
47
39
|
return null;
|
|
48
40
|
}
|
|
49
|
-
const
|
|
50
|
-
if (
|
|
51
|
-
return
|
|
41
|
+
const nextSiblingOfParent = findNextTreeItemElementSibling(item.parentElement);
|
|
42
|
+
if (nextSiblingOfParent) {
|
|
43
|
+
return nextSiblingOfParent;
|
|
52
44
|
}
|
|
53
45
|
else {
|
|
54
|
-
return
|
|
46
|
+
return findClosestAncestorHasNextSibling(item.parentElement);
|
|
55
47
|
}
|
|
56
48
|
};
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
49
|
+
const findNextTreeItemElementSibling = (item) => {
|
|
50
|
+
let nextSibling = item.nextElementSibling;
|
|
51
|
+
while (nextSibling && !isTreeItem(nextSibling)) {
|
|
52
|
+
nextSibling = nextSibling.nextElementSibling;
|
|
60
53
|
}
|
|
54
|
+
return nextSibling;
|
|
55
|
+
};
|
|
56
|
+
export const findNextItem = (item) => {
|
|
61
57
|
const { parentElement } = item;
|
|
62
|
-
if (!parentElement) {
|
|
58
|
+
if (!parentElement || !isTreeItem(item)) {
|
|
63
59
|
return null;
|
|
64
60
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
if (closestParent) {
|
|
74
|
-
const cpIndex = parseInt(closestParent.dataset.index ?? '', 10) + 1;
|
|
75
|
-
const cpLevel = closestParent.level;
|
|
76
|
-
return (closestParent.parentElement?.querySelector(`vscode-tree-item[level="${cpLevel}"][data-index="${cpIndex}"]`) ?? null);
|
|
61
|
+
let nextItem;
|
|
62
|
+
if (item.branch && item.open) {
|
|
63
|
+
const firstChildItem = item.querySelector('vscode-tree-item');
|
|
64
|
+
if (!firstChildItem) {
|
|
65
|
+
nextItem = findNextTreeItemElementSibling(item);
|
|
66
|
+
if (!nextItem) {
|
|
67
|
+
nextItem = findClosestAncestorHasNextSibling(item);
|
|
68
|
+
}
|
|
77
69
|
}
|
|
78
70
|
else {
|
|
79
|
-
|
|
71
|
+
nextItem = firstChildItem;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
nextItem = findNextTreeItemElementSibling(item);
|
|
76
|
+
if (!nextItem) {
|
|
77
|
+
nextItem = findClosestAncestorHasNextSibling(item);
|
|
80
78
|
}
|
|
81
79
|
}
|
|
82
|
-
|
|
83
|
-
|
|
80
|
+
if (!nextItem) {
|
|
81
|
+
return item;
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
return nextItem;
|
|
85
|
+
}
|
|
84
86
|
};
|
|
85
87
|
export const findPrevItem = (item) => {
|
|
86
88
|
const { parentElement } = item;
|
|
87
|
-
|
|
88
|
-
if (!parentElement) {
|
|
89
|
+
if (!parentElement || !isTreeItem(item)) {
|
|
89
90
|
return null;
|
|
90
91
|
}
|
|
91
|
-
|
|
92
|
+
let prevSibling = item.previousElementSibling;
|
|
93
|
+
while (prevSibling && !isTreeItem(prevSibling)) {
|
|
94
|
+
prevSibling = prevSibling.previousElementSibling;
|
|
95
|
+
}
|
|
92
96
|
if (!prevSibling) {
|
|
93
|
-
if (parentElement
|
|
97
|
+
if (isTreeItem(parentElement)) {
|
|
94
98
|
return parentElement;
|
|
95
99
|
}
|
|
96
100
|
}
|
|
@@ -100,34 +104,7 @@ export const findPrevItem = (item) => {
|
|
|
100
104
|
}
|
|
101
105
|
return prevSibling;
|
|
102
106
|
};
|
|
103
|
-
export
|
|
104
|
-
if (!item.parentElement ||
|
|
105
|
-
item.parentElement.tagName.toLowerCase() !== 'vscode-tree-item') {
|
|
106
|
-
return null;
|
|
107
|
-
}
|
|
108
|
-
const parent = item.parentElement;
|
|
109
|
-
const itemLevel = +(item.dataset.level ?? '');
|
|
110
|
-
if (itemLevel > level) {
|
|
111
|
-
return findAncestorOnSpecificLevel(parent, level);
|
|
112
|
-
}
|
|
113
|
-
if (itemLevel === level) {
|
|
114
|
-
return item;
|
|
115
|
-
}
|
|
116
|
-
return null;
|
|
117
|
-
};
|
|
118
|
-
export const selectItemAndAllVisibleDescendants = (item) => {
|
|
119
|
-
if (!item) {
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
item.selected = true;
|
|
123
|
-
if (item.branch && item.open) {
|
|
124
|
-
const children = item.querySelectorAll(':scope > vscode-tree-item');
|
|
125
|
-
children.forEach((c) => {
|
|
126
|
-
selectItemAndAllVisibleDescendants(c);
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
export function getParentItem(childItem) {
|
|
107
|
+
export function findParentItem(childItem) {
|
|
131
108
|
if (!childItem.parentElement) {
|
|
132
109
|
return null;
|
|
133
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/vscode-tree/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import {VscodeTreeItem} from '../vscode-tree-item';\nimport type {VscodeTree} from './vscode-tree';\n\nconst isTreeItem = (item: HTMLElement): item is VscodeTreeItem =>\n item.tagName.toLowerCase() === 'vscode-tree-item';\n\nconst isTreeRoot = (item: HTMLElement): item is VscodeTree =>\n item.tagName.toLowerCase() === 'vscode-tree';\n\nexport const initPathTrackerProps = (\n parentElement: VscodeTree | VscodeTreeItem,\n items: VscodeTreeItem[]\n): void => {\n const numChildren = items.length;\n const parentElementLevel = isTreeRoot(parentElement)\n ? -1\n : (parentElement as VscodeTreeItem).level;\n\n if ('branch' in parentElement) {\n parentElement.branch = numChildren > 0;\n }\n\n parentElement.dataset.numChildren = numChildren.toString();\n\n items.forEach((item, i) => {\n const level = parentElementLevel + 1;\n const index = i.toString();\n\n if ('path' in parentElement) {\n item.path = [...parentElement.path, i];\n } else {\n item.path = [i];\n }\n\n item.level = parentElementLevel + 1;\n item.dataset.level = (parentElementLevel + 1).toString();\n item.dataset.index = i.toString();\n item.dataset.last = i === numChildren - 1 ? 'true' : 'false';\n item.dataset.id = `${level}_${index}`;\n item.dataset.path = item.path.join('.');\n });\n};\n\nexport const findLastChildItem = (item: VscodeTreeItem): VscodeTreeItem => {\n const children = item.querySelectorAll<VscodeTreeItem>(\n ':scope > vscode-tree-item'\n );\n\n if (children.length < 1) {\n return item;\n }\n\n const lastItem = children[children.length - 1];\n\n if (lastItem.branch && lastItem.open) {\n return findLastChildItem(lastItem);\n } else {\n return lastItem;\n }\n};\n\nexport const findClosestParentHasNextSibling = (\n item: VscodeTreeItem\n): VscodeTreeItem | null => {\n if (!item.parentElement) {\n return null;\n }\n\n if (!isTreeItem(item.parentElement)) {\n return null;\n }\n\n const isLast = item.parentElement.dataset.last === 'true' ? true : false;\n\n if (!isLast) {\n return item.parentElement;\n } else {\n return findClosestParentHasNextSibling(item.parentElement);\n }\n};\n\nexport const findNextItem = (item: VscodeTreeItem): VscodeTreeItem | null => {\n if (item.branch && item.open) {\n return item.querySelector<VscodeTreeItem>('vscode-tree-item');\n }\n\n const {parentElement} = item;\n\n if (!parentElement) {\n return null;\n }\n\n const numSiblings = parseInt(parentElement.dataset.numChildren ?? '0', 10);\n const index = parseInt(item.dataset.index ?? '-1', 10);\n\n let level = 0;\n\n if ('level' in item) {\n level = item.level;\n }\n\n if (index === numSiblings - 1) {\n const closestParent = findClosestParentHasNextSibling(item);\n\n if (closestParent) {\n const cpIndex = parseInt(closestParent.dataset.index ?? '', 10) + 1;\n const cpLevel = closestParent.level;\n\n return (\n closestParent.parentElement?.querySelector(\n `vscode-tree-item[level=\"${cpLevel}\"][data-index=\"${cpIndex}\"]`\n ) ?? null\n );\n } else {\n return null;\n }\n }\n\n const nextElementIndex = Math.min(numSiblings - 1, index + 1);\n\n return parentElement.querySelector<VscodeTreeItem>(\n `vscode-tree-item[level=\"${level}\"][data-index=\"${nextElementIndex}\"]`\n );\n};\n\nexport const findPrevItem = (item: VscodeTreeItem): VscodeTreeItem | null => {\n const {parentElement} = item;\n const index = parseInt(item.dataset.index ?? '-1', 10);\n\n if (!parentElement) {\n return null;\n }\n\n const prevSibling = parentElement.querySelector<VscodeTreeItem>(\n `:scope vscode-tree-item[data-index=\"${index - 1}\"]`\n );\n\n if (!prevSibling) {\n if (parentElement.tagName.toLowerCase() === 'vscode-tree-item') {\n return parentElement as VscodeTreeItem;\n }\n }\n\n if (prevSibling && prevSibling.branch && prevSibling.open) {\n const lastChild = findLastChildItem(prevSibling);\n\n return lastChild;\n }\n\n return prevSibling;\n};\n\nexport const findAncestorOnSpecificLevel = (\n item: VscodeTreeItem,\n level: number\n): VscodeTreeItem | null => {\n if (\n !item.parentElement ||\n item.parentElement.tagName.toLowerCase() !== 'vscode-tree-item'\n ) {\n return null;\n }\n\n const parent = item.parentElement as VscodeTreeItem;\n const itemLevel = +(item.dataset.level ?? '');\n\n if (itemLevel > level) {\n return findAncestorOnSpecificLevel(parent, level);\n }\n\n if (itemLevel === level) {\n return item;\n }\n\n return null;\n};\n\nexport const selectItemAndAllVisibleDescendants = (item: VscodeTreeItem) => {\n if (!item) {\n return;\n }\n\n item.selected = true;\n\n if (item.branch && item.open) {\n const children = item.querySelectorAll<VscodeTreeItem>(\n ':scope > vscode-tree-item'\n );\n\n children.forEach((c) => {\n selectItemAndAllVisibleDescendants(c);\n });\n }\n};\n\nexport function getParentItem(childItem: VscodeTreeItem) {\n if (!childItem.parentElement) {\n return null;\n }\n\n if (!isTreeItem(childItem.parentElement)) {\n return null;\n }\n\n return childItem.parentElement;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/vscode-tree/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import type {VscodeTreeItem} from '../vscode-tree-item/vscode-tree-item.js';\nimport type {VscodeTree} from './vscode-tree.js';\n\nconst isTreeItem = (item: Element | null | undefined): item is VscodeTreeItem =>\n item instanceof Element && item.matches('vscode-tree-item');\n\nconst isTreeRoot = (item: Element | null | undefined): item is VscodeTree =>\n item instanceof Element && item.matches('vscode-tree');\n\nexport const initPathTrackerProps = (\n parentElement: VscodeTree | VscodeTreeItem,\n items: VscodeTreeItem[]\n): void => {\n const numChildren = items.length;\n const parentElementLevel = isTreeRoot(parentElement)\n ? -1\n : (parentElement as VscodeTreeItem).level;\n\n if ('branch' in parentElement) {\n parentElement.branch = numChildren > 0;\n }\n\n items.forEach((item, i) => {\n if ('path' in parentElement) {\n item.path = [...parentElement.path, i];\n } else {\n item.path = [i];\n }\n\n item.level = parentElementLevel + 1;\n item.dataset.path = item.path.join('.');\n });\n};\n\nexport const findLastChildItem = (item: VscodeTreeItem): VscodeTreeItem => {\n const lastItem = item.lastElementChild;\n\n if (!lastItem || !isTreeItem(lastItem)) {\n return item;\n }\n\n if (lastItem.branch && lastItem.open) {\n return findLastChildItem(lastItem);\n } else {\n return lastItem;\n }\n};\n\nexport const findClosestAncestorHasNextSibling = (\n item: VscodeTreeItem\n): VscodeTreeItem | null => {\n if (!item.parentElement) {\n return null;\n }\n\n if (!isTreeItem(item.parentElement)) {\n return null;\n }\n\n const nextSiblingOfParent = findNextTreeItemElementSibling(\n item.parentElement\n );\n\n if (nextSiblingOfParent) {\n return nextSiblingOfParent;\n } else {\n return findClosestAncestorHasNextSibling(item.parentElement);\n }\n};\n\nconst findNextTreeItemElementSibling = (item: VscodeTreeItem) => {\n let nextSibling: Element | null = item.nextElementSibling;\n\n while (nextSibling && !isTreeItem(nextSibling)) {\n nextSibling = nextSibling.nextElementSibling;\n }\n\n return nextSibling;\n};\n\nexport const findNextItem = (item: VscodeTreeItem): VscodeTreeItem | null => {\n const {parentElement} = item;\n\n if (!parentElement || !isTreeItem(item)) {\n return null;\n }\n\n let nextItem: VscodeTreeItem | null;\n\n if (item.branch && item.open) {\n const firstChildItem = item.querySelector('vscode-tree-item');\n\n if (!firstChildItem) {\n nextItem = findNextTreeItemElementSibling(item);\n\n if (!nextItem) {\n nextItem = findClosestAncestorHasNextSibling(item);\n }\n } else {\n nextItem = firstChildItem;\n }\n } else {\n nextItem = findNextTreeItemElementSibling(item);\n\n if (!nextItem) {\n nextItem = findClosestAncestorHasNextSibling(item);\n }\n }\n\n if (!nextItem) {\n return item;\n } else {\n return nextItem;\n }\n};\n\nexport const findPrevItem = (item: VscodeTreeItem): VscodeTreeItem | null => {\n const {parentElement} = item;\n\n if (!parentElement || !isTreeItem(item)) {\n return null;\n }\n\n let prevSibling: Element | null = item.previousElementSibling;\n\n while (prevSibling && !isTreeItem(prevSibling)) {\n prevSibling = prevSibling.previousElementSibling;\n }\n\n if (!prevSibling) {\n if (isTreeItem(parentElement)) {\n return parentElement;\n }\n }\n\n if (prevSibling && prevSibling.branch && prevSibling.open) {\n const lastChild = findLastChildItem(prevSibling);\n\n return lastChild;\n }\n\n return prevSibling;\n};\n\nexport function findParentItem(childItem: VscodeTreeItem) {\n if (!childItem.parentElement) {\n return null;\n }\n\n if (!isTreeItem(childItem.parentElement)) {\n return null;\n }\n\n return childItem.parentElement;\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { VscodeTreeItem } from '../vscode-tree-item';
|
|
2
|
-
import type { ExpandMode, VscodeTree } from './vscode-tree';
|
|
2
|
+
import type { ExpandMode, IndentGuideDisplay, VscodeTree } from './vscode-tree';
|
|
3
3
|
export interface TreeContext {
|
|
4
4
|
isShiftPressed: boolean;
|
|
5
5
|
selectedItems: Set<VscodeTreeItem>;
|
|
@@ -13,18 +13,18 @@ export interface TreeContext {
|
|
|
13
13
|
hasBranchItem: boolean;
|
|
14
14
|
rootElement: VscodeTree | null;
|
|
15
15
|
activeItem: VscodeTreeItem | null;
|
|
16
|
-
highlightedItems
|
|
17
|
-
|
|
16
|
+
highlightedItems?: Set<VscodeTreeItem>;
|
|
17
|
+
highlightIndentGuides?: () => void;
|
|
18
18
|
emitSelectEvent?: () => void;
|
|
19
19
|
}
|
|
20
20
|
export declare const treeContext: {
|
|
21
21
|
__context__: TreeContext;
|
|
22
22
|
};
|
|
23
23
|
export interface ConfigContext {
|
|
24
|
-
readonly
|
|
24
|
+
readonly hideArrows: boolean;
|
|
25
25
|
readonly expandMode: ExpandMode;
|
|
26
26
|
readonly indent: number;
|
|
27
|
-
readonly indentGuides:
|
|
27
|
+
readonly indentGuides: IndentGuideDisplay;
|
|
28
28
|
readonly multiSelect: boolean;
|
|
29
29
|
}
|
|
30
30
|
export declare const configContext: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-context.d.ts","sourceRoot":"","sources":["../../src/vscode-tree/tree-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"tree-context.d.ts","sourceRoot":"","sources":["../../src/vscode-tree/tree-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAC,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAE9E,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IACnC,QAAQ,EAAE,UAAU,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;IAC5C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,cAAc,GAAG,IAAI,CAAC;IACnC,eAAe,EAAE,cAAc,GAAG,IAAI,CAAC;IACvC;;OAEG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;IAClC,gBAAgB,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,eAAO,MAAM,WAAW;;CAA4C,CAAC;AAErE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED,eAAO,MAAM,aAAa;;CAEzB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-context.js","sourceRoot":"","sources":["../../src/vscode-tree/tree-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,cAAc,CAAC;AAsB3C,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAc,aAAa,CAAC,CAAC;AAUrE,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CACxC,MAAM,CAAC,eAAe,CAAC,CACxB,CAAC","sourcesContent":["import {createContext} from '@lit/context';\nimport type {VscodeTreeItem} from '../vscode-tree-item';\nimport type {ExpandMode, VscodeTree} from './vscode-tree';\n\nexport interface TreeContext {\n isShiftPressed: boolean;\n selectedItems: Set<VscodeTreeItem>;\n allItems: NodeListOf<VscodeTreeItem> | null;\n itemListUpToDate: boolean;\n focusedItem: VscodeTreeItem | null;\n prevFocusedItem: VscodeTreeItem | null;\n /** If arrows are visible and `List` component has not any branch item, the\n * extra padding should be removed in the leaf elements before the content\n */\n hasBranchItem: boolean;\n rootElement: VscodeTree | null;\n activeItem: VscodeTreeItem | null;\n highlightedItems
|
|
1
|
+
{"version":3,"file":"tree-context.js","sourceRoot":"","sources":["../../src/vscode-tree/tree-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,cAAc,CAAC;AAsB3C,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAc,aAAa,CAAC,CAAC;AAUrE,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CACxC,MAAM,CAAC,eAAe,CAAC,CACxB,CAAC","sourcesContent":["import {createContext} from '@lit/context';\nimport type {VscodeTreeItem} from '../vscode-tree-item';\nimport type {ExpandMode, IndentGuideDisplay, VscodeTree} from './vscode-tree';\n\nexport interface TreeContext {\n isShiftPressed: boolean;\n selectedItems: Set<VscodeTreeItem>;\n allItems: NodeListOf<VscodeTreeItem> | null;\n itemListUpToDate: boolean;\n focusedItem: VscodeTreeItem | null;\n prevFocusedItem: VscodeTreeItem | null;\n /** If arrows are visible and `List` component has not any branch item, the\n * extra padding should be removed in the leaf elements before the content\n */\n hasBranchItem: boolean;\n rootElement: VscodeTree | null;\n activeItem: VscodeTreeItem | null;\n highlightedItems?: Set<VscodeTreeItem>;\n highlightIndentGuides?: () => void;\n emitSelectEvent?: () => void;\n}\n\nexport const treeContext = createContext<TreeContext>('vscode-list');\n\nexport interface ConfigContext {\n readonly hideArrows: boolean;\n readonly expandMode: ExpandMode;\n readonly indent: number;\n readonly indentGuides: IndentGuideDisplay;\n readonly multiSelect: boolean;\n}\n\nexport const configContext = createContext<ConfigContext>(\n Symbol('configContext')\n);\n"]}
|
|
@@ -4,17 +4,66 @@ import type { VscodeTreeItem } from '../vscode-tree-item';
|
|
|
4
4
|
export type VscTreeSelectEvent = CustomEvent<{
|
|
5
5
|
selectedItems: VscodeTreeItem[];
|
|
6
6
|
}>;
|
|
7
|
-
export declare const
|
|
8
|
-
readonly
|
|
9
|
-
readonly
|
|
7
|
+
export declare const ExpandMode: {
|
|
8
|
+
readonly singleClick: "singleClick";
|
|
9
|
+
readonly doubleClick: "doubleClick";
|
|
10
10
|
};
|
|
11
|
-
export type ExpandMode = (typeof
|
|
11
|
+
export type ExpandMode = (typeof ExpandMode)[keyof typeof ExpandMode];
|
|
12
|
+
export declare const IndentGuides: {
|
|
13
|
+
readonly none: "none";
|
|
14
|
+
readonly onHover: "onHover";
|
|
15
|
+
readonly always: "always";
|
|
16
|
+
};
|
|
17
|
+
export type IndentGuideDisplay = (typeof IndentGuides)[keyof typeof IndentGuides];
|
|
18
|
+
/**
|
|
19
|
+
* @tag vscode-tree
|
|
20
|
+
*/
|
|
12
21
|
export declare class VscodeTree extends VscElement {
|
|
13
22
|
static styles: import("lit").CSSResultGroup;
|
|
14
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Controls how tree folders are expanded when clicked. This property is designed to use
|
|
25
|
+
* the `workbench.tree.expandMode` setting.
|
|
26
|
+
*
|
|
27
|
+
* Valid options are available as constants.
|
|
28
|
+
*
|
|
29
|
+
* ```javascript
|
|
30
|
+
* import {ExpandMode} from '@vscode-elements/elements/dist/vscode-tree/vscode-tree.js';
|
|
31
|
+
*
|
|
32
|
+
* document.querySelector('vscode-tree').expandMode = ExpandMode.singleClick;
|
|
33
|
+
* ```
|
|
34
|
+
*
|
|
35
|
+
* @type {'singleClick' | 'doubleClick'}
|
|
36
|
+
*/
|
|
15
37
|
expandMode: ExpandMode;
|
|
38
|
+
/**
|
|
39
|
+
* Although arrows are always visible in the Tree component by default in VSCode, some icon sets
|
|
40
|
+
* (e.g., Material Icon Theme) allow disabling them in the file explorer view. This flag makes it
|
|
41
|
+
* possible to mimic that behavior.
|
|
42
|
+
*/
|
|
43
|
+
hideArrows: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Controls the indentation in pixels. This property is designed to use the
|
|
46
|
+
* `workbench.tree.indent` setting.
|
|
47
|
+
*/
|
|
16
48
|
indent: number;
|
|
17
|
-
|
|
49
|
+
/**
|
|
50
|
+
* Controls whether the tree should render indent guides. This property is
|
|
51
|
+
* designed to use the `workbench.tree.renderIndentGuides` setting.
|
|
52
|
+
*
|
|
53
|
+
* Valid options are available as constants.
|
|
54
|
+
*
|
|
55
|
+
* ```javascript
|
|
56
|
+
* import {IndentGuides} from '@vscode-elements/elements/dist/vscode-tree/vscode-tree.js';
|
|
57
|
+
*
|
|
58
|
+
* document.querySelector('vscode-tree').expandMode = IndentGuides.onHover;
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* @type {'none' | 'onHover' | 'always'}
|
|
62
|
+
*/
|
|
63
|
+
indentGuides: IndentGuideDisplay;
|
|
64
|
+
/**
|
|
65
|
+
* Allows selecting multiple items.
|
|
66
|
+
*/
|
|
18
67
|
multiSelect: boolean;
|
|
19
68
|
private _treeContextState;
|
|
20
69
|
private _configContext;
|
|
@@ -22,7 +71,13 @@ export declare class VscodeTree extends VscElement {
|
|
|
22
71
|
constructor();
|
|
23
72
|
connectedCallback(): void;
|
|
24
73
|
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
74
|
+
/**
|
|
75
|
+
* Expands all folders.
|
|
76
|
+
*/
|
|
25
77
|
expandAll(): void;
|
|
78
|
+
/**
|
|
79
|
+
* Collapses all folders.
|
|
80
|
+
*/
|
|
26
81
|
collapseAll(): void;
|
|
27
82
|
/**
|
|
28
83
|
* @internal
|
|
@@ -31,7 +86,8 @@ export declare class VscodeTree extends VscElement {
|
|
|
31
86
|
*/
|
|
32
87
|
updateHasBranchItemFlag(): void;
|
|
33
88
|
private _emitSelectEvent;
|
|
34
|
-
private
|
|
89
|
+
private _highlightIndentGuideOfItem;
|
|
90
|
+
private _highlightIndentGuides;
|
|
35
91
|
private _updateConfigContext;
|
|
36
92
|
private _focusItem;
|
|
37
93
|
private _focusPrevItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vscode-tree.d.ts","sourceRoot":"","sources":["../../src/vscode-tree/vscode-tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,cAAc,EAAO,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"vscode-tree.d.ts","sourceRoot":"","sources":["../../src/vscode-tree/vscode-tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,cAAc,EAAO,MAAM,KAAK,CAAC;AAGzD,OAAO,EAAgB,UAAU,EAAC,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAexD,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC;IAAC,aAAa,EAAE,cAAc,EAAE,CAAA;CAAC,CAAC,CAAC;AAEhF,eAAO,MAAM,UAAU;;;CAGb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAEtE,eAAO,MAAM,YAAY;;;;CAIf,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAuBnD;;GAEG;AACH,qBACa,UAAW,SAAQ,UAAU;IACxC,OAAgB,MAAM,+BAAU;IAIhC;;;;;;;;;;;;;OAaG;IAEH,UAAU,EAAE,UAAU,CAAiB;IAEvC;;;;OAIG;IAEH,UAAU,EAAE,OAAO,CAAS;IAE5B;;;OAGG;IAEH,MAAM,EAAE,MAAM,CAAK;IAEnB;;;;;;;;;;;;;OAaG;IAOH,YAAY,EAAE,kBAAkB,CAAa;IAE7C;;OAEG;IAEH,WAAW,EAAE,OAAO,CAAS;IAO7B,OAAO,CAAC,iBAAiB,CAiBvB;IAGF,OAAO,CAAC,cAAc,CAMpB;IAGF,OAAO,CAAC,kBAAkB,CAAoB;;IAarC,iBAAiB,IAAI,IAAI;cAMf,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAY5E;;OAEG;IACH,SAAS;IAUT;;OAEG;IACH,WAAW;IAUX;;;;OAIG;IACH,uBAAuB;IASvB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,sBAAsB;IAmB9B,OAAO,CAAC,oBAAoB;IAwB5B,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,qBAAqB;IA4B7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,uBAAuB,CA8B7B;IAEF,OAAO,CAAC,qBAAqB,CAI3B;IAEF,OAAO,CAAC,iBAAiB,CAevB;IAIO,MAAM,IAAI,cAAc;CAKlC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,UAAU,CAAC;KAC3B;IAED,UAAU,2BAA2B;QACnC,iBAAiB,EAAE,kBAAkB,CAAC;KACvC;CACF"}
|