@universal-material/web 3.3.20 → 3.4.1
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 +9414 -9340
- package/package.json +2 -1
- package/typeahead/typeahead-template-render.d.ts +6 -0
- package/typeahead/typeahead-template-render.d.ts.map +1 -0
- package/typeahead/typeahead-template-render.js +25 -0
- package/typeahead/typeahead-template-render.js.map +1 -0
- package/typeahead/typeahead.d.ts +3 -2
- package/typeahead/typeahead.d.ts.map +1 -1
- package/typeahead/typeahead.js +12 -3
- package/typeahead/typeahead.js.map +1 -1
- package/vscode.html-custom-data.json +146 -131
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@universal-material/web",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.1",
|
|
4
4
|
"description": "Material web components",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -64,6 +64,7 @@
|
|
|
64
64
|
"@angular/compiler": "^20.0.0",
|
|
65
65
|
"@angular/compiler-cli": "^20.0.0",
|
|
66
66
|
"@angular/core": "^20.0.0",
|
|
67
|
+
"@angular/elements": "^20.0.0",
|
|
67
68
|
"@angular/forms": "^20.0.0",
|
|
68
69
|
"@angular/platform-browser": "^20.0.0",
|
|
69
70
|
"@angular/router": "^20.0.0",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeahead-template-render.d.ts","sourceRoot":"","sources":["../../src/typeahead/typeahead-template-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAU,MAAM,KAAK,CAAC;AAG/C,qBACa,uBAAwB,SAAQ,UAAU;IACzC,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAQ;IAE/C,MAAM;CAShB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { html, LitElement, render } from 'lit';
|
|
3
|
+
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
+
let TypeaheadTemplateRender = class TypeaheadTemplateRender extends LitElement {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
this.content = null;
|
|
8
|
+
}
|
|
9
|
+
render() {
|
|
10
|
+
if (this.content instanceof HTMLElement || typeof this.content === 'string') {
|
|
11
|
+
return html `${this.content}`;
|
|
12
|
+
}
|
|
13
|
+
const container = document.createElement('div');
|
|
14
|
+
render(this.content, container);
|
|
15
|
+
return html `${container}`;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
__decorate([
|
|
19
|
+
property()
|
|
20
|
+
], TypeaheadTemplateRender.prototype, "content", void 0);
|
|
21
|
+
TypeaheadTemplateRender = __decorate([
|
|
22
|
+
customElement('u-typeahead-template-render')
|
|
23
|
+
], TypeaheadTemplateRender);
|
|
24
|
+
export { TypeaheadTemplateRender };
|
|
25
|
+
//# sourceMappingURL=typeahead-template-render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeahead-template-render.js","sourceRoot":"","sources":["../../src/typeahead/typeahead-template-render.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGrD,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,UAAU;IAAhD;;QACO,YAAO,GAAgC,IAAI,CAAC;IAW1D,CAAC;IATU,MAAM;QACb,IAAI,IAAI,CAAC,OAAO,YAAY,WAAW,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5E,OAAO,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAChC,OAAO,IAAI,CAAA,GAAG,SAAS,EAAE,CAAC;IAC5B,CAAC;CACF,CAAA;AAXa;IAAX,QAAQ,EAAE;wDAA6C;AAD7C,uBAAuB;IADnC,aAAa,CAAC,6BAA6B,CAAC;GAChC,uBAAuB,CAYnC","sourcesContent":["import { html, LitElement, render } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('u-typeahead-template-render')\nexport class TypeaheadTemplateRender extends LitElement {\n @property() content: string | HTMLElement | null = null;\n\n override render() {\n if (this.content instanceof HTMLElement || typeof this.content === 'string') {\n return html`${this.content}`;\n }\n\n const container = document.createElement('div');\n render(this.content, container);\n return html`${container}`;\n }\n}\n"]}
|
package/typeahead/typeahead.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { HTMLTemplateResult, LitElement } from 'lit';
|
|
1
|
+
import { HTMLTemplateResult, LitElement, TemplateResult } from 'lit';
|
|
2
2
|
import { UmMenuItem } from '../menu/menu-item.js';
|
|
3
3
|
import { UmMenu } from '../menu/menu.js';
|
|
4
4
|
import '../menu/menu.js';
|
|
5
5
|
import '../menu/menu-item.js';
|
|
6
6
|
import './highlight.js';
|
|
7
|
+
import './typeahead-template-render.js';
|
|
7
8
|
export interface Data {
|
|
8
9
|
label: string;
|
|
9
10
|
value: any;
|
|
@@ -26,7 +27,7 @@ export declare class UmTypeahead extends LitElement {
|
|
|
26
27
|
*
|
|
27
28
|
* _Note:_ Subject to signature change
|
|
28
29
|
*/
|
|
29
|
-
template: ((term: string, value: any) => string) | undefined;
|
|
30
|
+
template: ((term: string, value: any) => string | HTMLElement | TemplateResult) | undefined;
|
|
30
31
|
/**
|
|
31
32
|
* The time in milliseconds before triggering an update in the results.
|
|
32
33
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typeahead.d.ts","sourceRoot":"","sources":["../../src/typeahead/typeahead.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,kBAAkB,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"typeahead.d.ts","sourceRoot":"","sources":["../../src/typeahead/typeahead.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,kBAAkB,EAAE,UAAU,EAAU,cAAc,EAAE,MAAM,KAAK,CAAC;AAGnF,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAKzC,OAAO,iBAAiB,CAAC;AACzB,OAAO,sBAAsB,CAAC;AAC9B,OAAO,gBAAgB,CAAC;AACxB,OAAO,gCAAgC,CAAC;AAExC,MAAM,WAAW,IAAI;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;CACZ;AAED,qBACa,WAAY,SAAQ,UAAU;;IACzC,MAAM,CAAC,QAAQ,CAAC,cAAc,QAAQ;IAEtC,OAAgB,MAAM,0BAAU;IAsBvB,OAAO,CAAC,OAAO,CAAS;IAEjC;;OAEG;IACM,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAE1E;;OAEG;IACH,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,SAAS,CAAC;IAEhD;;;;OAIG;IACH,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,MAAM,GAAG,WAAW,GAAG,cAAc,CAAC,GAAG,SAAS,CAAC;IAE5F;;OAEG;IACwC,QAAQ,SAAO;IAE1D;;OAEG;IACwC,KAAK,SAAM;IAEtD;;;;OAIG;IACwC,SAAS,SAAK;IAEzD;;;;OAIG;IAEH,WAAW,UAAS;IAEpB;;OAEG;IACyC,QAAQ,UAAS;IAE7D;;OAEG;IAC0B,YAAY,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,CAAS;IAEzE;;OAEG;IACmC,UAAU,UAAS;IAEY,SAAS,UAAS;IAE1D,WAAW,EAAE,UAAU,GAAG,OAAO,CAAc;IAE5E,IAAI,IAAI,IAAI,eAAe,GAAG,IAAI,CAEjC;IAED;;OAEG;IACH,IAAI,KAAK,IAAI,GAAG,CAEf;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,GAAG,EAOnB;IAEQ,KAAK;IAId,KAAK;IASL;;OAEG;IACH,IACI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAEjC;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAMrC;IAEgB,KAAK,EAAG,MAAM,CAAC;IACP,SAAS,EAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IAE5D,IAAI,UAAU,IAAI,UAAU,EAAE,CAE7B;;IAOQ,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAgBhF,iBAAiB;IAWjB,oBAAoB;cA2GV,MAAM,IAAI,kBAAkB;CA4KhD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,aAAa,EAAE,WAAW,CAAC;KAC5B;CACF"}
|
package/typeahead/typeahead.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { html, LitElement } from 'lit';
|
|
3
|
-
import { unsafeHTML } from 'lit-html/directives/unsafe-html.js';
|
|
2
|
+
import { html, LitElement, render } from 'lit';
|
|
4
3
|
import { customElement, property, query, queryAll, state } from 'lit/decorators.js';
|
|
5
4
|
import { MenuFieldNavigationController } from '../shared/menu-field/menu-field-navigation-controller.js';
|
|
6
5
|
import { normalizeText } from '../shared/normalize-text.js';
|
|
@@ -8,6 +7,7 @@ import { styles } from './typeahead.styles.js';
|
|
|
8
7
|
import '../menu/menu.js';
|
|
9
8
|
import '../menu/menu-item.js';
|
|
10
9
|
import './highlight.js';
|
|
10
|
+
import './typeahead-template-render.js';
|
|
11
11
|
let UmTypeahead = class UmTypeahead extends LitElement {
|
|
12
12
|
static { this.formAssociated = true; }
|
|
13
13
|
static { this.styles = styles; }
|
|
@@ -230,7 +230,7 @@ let UmTypeahead = class UmTypeahead extends LitElement {
|
|
|
230
230
|
<u-menu manualFocus manualClose anchor-corner="auto-start" positioning="${this.positioning}">
|
|
231
231
|
${this.results.map(result => {
|
|
232
232
|
const content = this.template
|
|
233
|
-
?
|
|
233
|
+
? this.#renderTemplate(result.value)
|
|
234
234
|
: html `
|
|
235
235
|
<u-highlight .term=${this.#termNormalized} .result=${result.label}></u-highlight>
|
|
236
236
|
`;
|
|
@@ -246,6 +246,15 @@ let UmTypeahead = class UmTypeahead extends LitElement {
|
|
|
246
246
|
</u-menu>
|
|
247
247
|
`;
|
|
248
248
|
}
|
|
249
|
+
#renderTemplate(value) {
|
|
250
|
+
const content = this.template(this.#termNormalized, value);
|
|
251
|
+
if (content instanceof HTMLElement || typeof content === 'string') {
|
|
252
|
+
return html `${content}`;
|
|
253
|
+
}
|
|
254
|
+
const container = document.createElement('div');
|
|
255
|
+
render(content, container);
|
|
256
|
+
return html `${container}`;
|
|
257
|
+
}
|
|
249
258
|
async #updateResults(lazy = false) {
|
|
250
259
|
const term = this.#getTargetValue();
|
|
251
260
|
const termNormalized = normalizeText(term).toLowerCase();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typeahead.js","sourceRoot":"","sources":["../../src/typeahead/typeahead.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, HTMLTemplateResult, LitElement } from 'lit';\nimport { unsafeHTML } from 'lit-html/directives/unsafe-html.js';\nimport { customElement, property, query, queryAll, state } from 'lit/decorators.js';\n\nimport { UmMenuItem } from '../menu/menu-item.js';\nimport { UmMenu } from '../menu/menu.js';\nimport { MenuFieldNavigationController } from '../shared/menu-field/menu-field-navigation-controller.js';\nimport { normalizeText } from '../shared/normalize-text.js';\nimport { styles } from './typeahead.styles.js';\n\nimport '../menu/menu.js';\nimport '../menu/menu-item.js';\nimport './highlight.js';\n\nexport interface Data {\n label: string;\n value: any;\n}\n\n@customElement('u-typeahead')\nexport class UmTypeahead extends LitElement {\n static readonly formAssociated = true;\n\n static override styles = styles;\n\n #targetId: string | undefined;\n\n #connected = false;\n #target:\n | (HTMLElement & {\n autocomplete: 'on' | 'off' | string | null;\n input?: HTMLInputElement;\n _container?: HTMLElement;\n value: string;\n })\n | null = null;\n #documentMutationObserver: MutationObserver | null = null;\n #targetResizeObserver: ResizeObserver | null = null;\n readonly #navigationController = new MenuFieldNavigationController(this);\n #termNormalized = '';\n #debounceTimeout: number | null = null;\n #value: any;\n readonly #elementInternals: ElementInternals;\n\n // @ts-ignore\n @state() private results: Data[];\n\n /**\n * The datasource of the typeahead. Accepts an `Array` or a `Promise<[]>`.\n */\n @state() source: (any[] | ((term: string) => Promise<any[]>)) | undefined;\n\n /**\n * A function return a string based on a result from the `source`. Useful when the source results are objects.\n */\n formatter: ((value: any) => string) | undefined;\n\n /**\n * A string representing an HTML to be rendered inside the menu item. If set, it will replace the `u-highlight`.\n *\n * _Note:_ Subject to signature change\n */\n template: ((term: string, value: any) => string) | undefined;\n\n /**\n * The time in milliseconds before triggering an update in the results.\n */\n @property({ type: Number, reflect: true }) debounce = 300;\n\n /**\n * The number of suggestions to show\n */\n @property({ type: Number, reflect: true }) limit = 10;\n\n /**\n * How many characters must be typed before show suggestions\n *\n * _Note:_ Not used when the source is a `Promise`\n */\n @property({ type: Number, reflect: true }) minLength = 2;\n\n /**\n * Whether the menu will be show when the target get focus.\n *\n * _Note:_ The `minLength` will still be applied\n */\n @property({ type: Boolean, attribute: 'open-on-focus', reflect: true })\n openOnFocus = false;\n\n /**\n * If `true`, model values will not be restricted only to items selected from the menu.\n */\n @property({ type: Boolean, reflect: true }) editable = false;\n\n /**\n * The value for the `autocomplete` attribute for the target element.\n */\n @property({ reflect: true }) autocomplete: 'on' | 'off' | string = 'off';\n\n /**\n * The value for the `spellcheck` attribute for the target element.\n */\n @property({ reflect: true }) override spellcheck = false;\n\n @property({ type: Boolean, attribute: 'fit-target', reflect: true }) fitTarget = false;\n\n @property({ reflect: true }) positioning: 'relative' | 'fixed' = 'relative';\n\n get form(): HTMLFormElement | null {\n return this.#elementInternals.form;\n }\n\n /**\n * Gets or sets the current value of the typeahead.\n */\n get value(): any {\n return this.#value;\n }\n\n set value(value: any) {\n this.#value = value;\n this.#elementInternals.setFormValue(value);\n\n if (this.#connected) {\n this.#setValueOnTarget();\n }\n }\n\n override focus() {\n this.#target?.focus();\n }\n\n clear() {\n if (!this.#target) {\n return;\n }\n\n this.#termNormalized = '';\n this.#setTargetValue('');\n }\n\n /**\n * The id of the target element to attach the typeahead.\n */\n @property({ reflect: true, attribute: 'target-id' })\n get targetId(): string | undefined {\n return this.#targetId;\n }\n\n set targetId(value: string | undefined) {\n this.#targetId = value;\n\n if (this.#connected) {\n this.#attach();\n }\n }\n\n @query('u-menu') _menu!: UmMenu;\n @queryAll('u-menu-item') menuItems!: NodeListOf<UmMenuItem>;\n\n get _menuItems(): UmMenuItem[] {\n return Array.from(this.menuItems);\n }\n\n constructor() {\n super();\n this.#elementInternals = this.attachInternals();\n }\n\n override attributeChangedCallback(name: string, _old: string | null, value: string | null) {\n super.attributeChangedCallback(name, _old, value);\n\n if (!this.#target) {\n return;\n }\n\n if (name === 'autocomplete') {\n this.#target.autocomplete = value;\n }\n\n if (name === 'spellcheck') {\n this.#target.spellcheck = value === 'true';\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this.#connected = true;\n this.#attach();\n this.#documentMutationObserver = new MutationObserver(() => this.#attach());\n this.#documentMutationObserver.observe(document, {\n attributes: true,\n childList: true,\n });\n }\n\n override disconnectedCallback() {\n super.disconnectedCallback();\n this.#connected = false;\n this.#detach();\n this.#documentMutationObserver!.disconnect();\n this.#documentMutationObserver = null;\n }\n\n #attach() {\n if (!this.targetId) {\n this.#detach();\n this.#target = null;\n this.#setMenuAnchor();\n return;\n }\n\n const newTarget = document.getElementById(this.targetId) as HTMLInputElement;\n\n if (newTarget === this.#target) {\n return;\n }\n\n this.#detach();\n\n if (!newTarget) {\n return;\n }\n\n this.#target = newTarget;\n this.#setMenuAnchor();\n newTarget.role = 'combobox';\n newTarget.autocomplete = this.autocomplete as any;\n newTarget.spellcheck = this.spellcheck;\n newTarget.autocapitalize = 'off';\n\n newTarget.addEventListener('click', this.#handleClick);\n newTarget.addEventListener('input', this.#handleInput);\n this.#navigationController.attach(newTarget);\n newTarget.addEventListener('focus', this.#handleFocus);\n this.#targetResizeObserver = new ResizeObserver(() => this.#setMenuWidthProperty());\n this.#targetResizeObserver.observe(newTarget);\n\n if (this.value) {\n this.#setValueOnTarget();\n }\n }\n\n #detach() {\n this.#target?.removeEventListener('click', this.#handleClick);\n this.#target?.removeEventListener('input', this.#handleInput);\n this.#navigationController.detach();\n this.#target?.removeEventListener('focus', this.#handleFocus);\n }\n\n #handleItemMouseDown(e: Event) {\n e.preventDefault();\n }\n\n #handleClick(e: Event) {\n e.stopPropagation();\n }\n\n readonly #handleFocus = async () => {\n if (this.openOnFocus) {\n await this.#updateResults();\n }\n };\n\n readonly #handleInput = () => {\n if (this.#debounceTimeout) {\n clearTimeout(this.#debounceTimeout);\n }\n\n this.#setValueAndDispatchEvents(this.editable ? this.#getTargetValue() : null, true);\n\n this.#debounceTimeout = setTimeout(async () => await this.#updateResults(true), this.debounce);\n };\n\n #getItemClickHandler(data: Data) {\n return () => {\n const selectedEvent = new CustomEvent('selected', {\n cancelable: true,\n detail: data.value,\n });\n\n this.dispatchEvent(selectedEvent);\n\n if (selectedEvent.defaultPrevented) {\n return;\n }\n\n this.#setValueAndDispatchEvents(data.value);\n };\n }\n\n #setValueAndDispatchEvents(value: any, direct = false) {\n if (!direct) {\n this.value = value;\n } else {\n this.#value = value;\n this.#elementInternals.setFormValue(value);\n }\n\n this.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }));\n this.dispatchEvent(new Event('change', { bubbles: true }));\n }\n\n protected override render(): HTMLTemplateResult {\n if (!this.results?.length) {\n return html``;\n }\n\n setTimeout(() => {\n this.#setMenuAnchor();\n this._menu.open = true;\n this.#navigationController.focusMenu(this._menuItems[0], 0);\n });\n\n return html`\n <u-menu manualFocus manualClose anchor-corner=\"auto-start\" positioning=\"${this.positioning}\">\n ${this.results.map(result => {\n const content = this.template\n ? unsafeHTML(this.template(this.#termNormalized, result.value))\n : html`\n <u-highlight .term=${this.#termNormalized} .result=${result.label}></u-highlight>\n `;\n\n return html`\n <u-menu-item\n @mousedown=${this.#handleItemMouseDown}\n @click=${this.#getItemClickHandler(result)}\n tabindex=\"-1\">\n ${content}\n </u-menu-item>\n `;\n })}\n </u-menu>\n `;\n }\n\n async #updateResults(lazy = false) {\n const term = this.#getTargetValue();\n\n const termNormalized = normalizeText(term).toLowerCase();\n\n if (lazy && termNormalized === this.#termNormalized && this._menu?.open === true) {\n return;\n }\n\n this.#termNormalized = termNormalized;\n\n if (termNormalized.length < this.minLength) {\n this.results = [];\n return;\n }\n\n this.results = await this.#getData();\n this.results = this.results.slice(0, this.limit || this.results.length);\n }\n\n async #getData(): Promise<Data[]> {\n if (!this.source) {\n return [];\n }\n\n let values: any[];\n\n let filter = false;\n\n if (this.source instanceof Array) {\n values = this.source;\n filter = true;\n } else {\n const source = this.source as (term: string) => Promise<any[]>;\n values = await source(this.#termNormalized);\n }\n\n const result = values.map(source => ({\n label: this.formatter ? this.formatter(source) : source.toString(),\n value: source,\n }));\n\n if (!filter) {\n return result;\n }\n\n return result.filter(t => normalizeText(t.label).toLowerCase()\n .includes(this.#termNormalized));\n }\n\n #setValueOnTarget() {\n if (!this.#target) {\n return;\n }\n\n const textValue = this.#getTextValue();\n this.#termNormalized = normalizeText(textValue)?.toLowerCase();\n\n if (this.#target.tagName === 'U-TEXT-FIELD') {\n this.#target.value = textValue;\n return;\n }\n\n if (this.#target.input) {\n this.#target.input.value = textValue;\n return;\n }\n\n this.#target.value = textValue;\n }\n\n #getTargetValue(): string {\n return this.#target!.input?.value ?? this.#target!.value;\n }\n\n #setTargetValue(value: string): void {\n const targetInput = this.#target?.input ?? this.#target;\n\n if (targetInput) {\n targetInput.value = value;\n }\n }\n\n #setMenuAnchor() {\n if (!this._menu) {\n return;\n }\n\n this._menu.anchorElement = this.#getMenuAnchor();\n }\n\n #getMenuAnchor() {\n if (!this.#target) {\n return null;\n }\n\n if (this.#target.tagName === 'U-CHIP-FIELD') {\n return this.#target.input;\n }\n\n if (this.#target.tagName === 'U-SEARCH') {\n return this.#target.input;\n }\n\n if (this.#target.tagName === 'U-TEXT-FIELD') {\n return this.#target._container;\n }\n\n return this.#target;\n }\n\n #getTextValue(): string {\n if (!this.value) {\n return '';\n }\n\n return this.formatter ? this.formatter(this.value) : this.value;\n }\n\n #setMenuWidthProperty(): void {\n if (!this.fitTarget || !this.#target) {\n this.style.removeProperty('--_menu-width');\n return;\n }\n\n this.style.setProperty('--_menu-width', `${this.#target.clientWidth}px`);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'u-typeahead': UmTypeahead;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"typeahead.js","sourceRoot":"","sources":["../../src/typeahead/typeahead.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, HTMLTemplateResult, LitElement, render, TemplateResult } from 'lit';\nimport { customElement, property, query, queryAll, state } from 'lit/decorators.js';\n\nimport { UmMenuItem } from '../menu/menu-item.js';\nimport { UmMenu } from '../menu/menu.js';\nimport { MenuFieldNavigationController } from '../shared/menu-field/menu-field-navigation-controller.js';\nimport { normalizeText } from '../shared/normalize-text.js';\nimport { styles } from './typeahead.styles.js';\n\nimport '../menu/menu.js';\nimport '../menu/menu-item.js';\nimport './highlight.js';\nimport './typeahead-template-render.js';\n\nexport interface Data {\n label: string;\n value: any;\n}\n\n@customElement('u-typeahead')\nexport class UmTypeahead extends LitElement {\n static readonly formAssociated = true;\n\n static override styles = styles;\n\n #targetId: string | undefined;\n\n #connected = false;\n #target:\n | (HTMLElement & {\n autocomplete: 'on' | 'off' | string | null;\n input?: HTMLInputElement;\n _container?: HTMLElement;\n value: string;\n })\n | null = null;\n #documentMutationObserver: MutationObserver | null = null;\n #targetResizeObserver: ResizeObserver | null = null;\n readonly #navigationController = new MenuFieldNavigationController(this);\n #termNormalized = '';\n #debounceTimeout: number | null = null;\n #value: any;\n readonly #elementInternals: ElementInternals;\n\n // @ts-ignore\n @state() private results: Data[];\n\n /**\n * The datasource of the typeahead. Accepts an `Array` or a `Promise<[]>`.\n */\n @state() source: (any[] | ((term: string) => Promise<any[]>)) | undefined;\n\n /**\n * A function return a string based on a result from the `source`. Useful when the source results are objects.\n */\n formatter: ((value: any) => string) | undefined;\n\n /**\n * A string representing an HTML to be rendered inside the menu item. If set, it will replace the `u-highlight`.\n *\n * _Note:_ Subject to signature change\n */\n template: ((term: string, value: any) => string | HTMLElement | TemplateResult) | undefined;\n\n /**\n * The time in milliseconds before triggering an update in the results.\n */\n @property({ type: Number, reflect: true }) debounce = 300;\n\n /**\n * The number of suggestions to show\n */\n @property({ type: Number, reflect: true }) limit = 10;\n\n /**\n * How many characters must be typed before show suggestions\n *\n * _Note:_ Not used when the source is a `Promise`\n */\n @property({ type: Number, reflect: true }) minLength = 2;\n\n /**\n * Whether the menu will be show when the target get focus.\n *\n * _Note:_ The `minLength` will still be applied\n */\n @property({ type: Boolean, attribute: 'open-on-focus', reflect: true })\n openOnFocus = false;\n\n /**\n * If `true`, model values will not be restricted only to items selected from the menu.\n */\n @property({ type: Boolean, reflect: true }) editable = false;\n\n /**\n * The value for the `autocomplete` attribute for the target element.\n */\n @property({ reflect: true }) autocomplete: 'on' | 'off' | string = 'off';\n\n /**\n * The value for the `spellcheck` attribute for the target element.\n */\n @property({ reflect: true }) override spellcheck = false;\n\n @property({ type: Boolean, attribute: 'fit-target', reflect: true }) fitTarget = false;\n\n @property({ reflect: true }) positioning: 'relative' | 'fixed' = 'relative';\n\n get form(): HTMLFormElement | null {\n return this.#elementInternals.form;\n }\n\n /**\n * Gets or sets the current value of the typeahead.\n */\n get value(): any {\n return this.#value;\n }\n\n set value(value: any) {\n this.#value = value;\n this.#elementInternals.setFormValue(value);\n\n if (this.#connected) {\n this.#setValueOnTarget();\n }\n }\n\n override focus() {\n this.#target?.focus();\n }\n\n clear() {\n if (!this.#target) {\n return;\n }\n\n this.#termNormalized = '';\n this.#setTargetValue('');\n }\n\n /**\n * The id of the target element to attach the typeahead.\n */\n @property({ reflect: true, attribute: 'target-id' })\n get targetId(): string | undefined {\n return this.#targetId;\n }\n\n set targetId(value: string | undefined) {\n this.#targetId = value;\n\n if (this.#connected) {\n this.#attach();\n }\n }\n\n @query('u-menu') _menu!: UmMenu;\n @queryAll('u-menu-item') menuItems!: NodeListOf<UmMenuItem>;\n\n get _menuItems(): UmMenuItem[] {\n return Array.from(this.menuItems);\n }\n\n constructor() {\n super();\n this.#elementInternals = this.attachInternals();\n }\n\n override attributeChangedCallback(name: string, _old: string | null, value: string | null) {\n super.attributeChangedCallback(name, _old, value);\n\n if (!this.#target) {\n return;\n }\n\n if (name === 'autocomplete') {\n this.#target.autocomplete = value;\n }\n\n if (name === 'spellcheck') {\n this.#target.spellcheck = value === 'true';\n }\n }\n\n override connectedCallback() {\n super.connectedCallback();\n this.#connected = true;\n this.#attach();\n this.#documentMutationObserver = new MutationObserver(() => this.#attach());\n this.#documentMutationObserver.observe(document, {\n attributes: true,\n childList: true,\n });\n }\n\n override disconnectedCallback() {\n super.disconnectedCallback();\n this.#connected = false;\n this.#detach();\n this.#documentMutationObserver!.disconnect();\n this.#documentMutationObserver = null;\n }\n\n #attach() {\n if (!this.targetId) {\n this.#detach();\n this.#target = null;\n this.#setMenuAnchor();\n return;\n }\n\n const newTarget = document.getElementById(this.targetId) as HTMLInputElement;\n\n if (newTarget === this.#target) {\n return;\n }\n\n this.#detach();\n\n if (!newTarget) {\n return;\n }\n\n this.#target = newTarget;\n this.#setMenuAnchor();\n newTarget.role = 'combobox';\n newTarget.autocomplete = this.autocomplete as any;\n newTarget.spellcheck = this.spellcheck;\n newTarget.autocapitalize = 'off';\n\n newTarget.addEventListener('click', this.#handleClick);\n newTarget.addEventListener('input', this.#handleInput);\n this.#navigationController.attach(newTarget);\n newTarget.addEventListener('focus', this.#handleFocus);\n this.#targetResizeObserver = new ResizeObserver(() => this.#setMenuWidthProperty());\n this.#targetResizeObserver.observe(newTarget);\n\n if (this.value) {\n this.#setValueOnTarget();\n }\n }\n\n #detach() {\n this.#target?.removeEventListener('click', this.#handleClick);\n this.#target?.removeEventListener('input', this.#handleInput);\n this.#navigationController.detach();\n this.#target?.removeEventListener('focus', this.#handleFocus);\n }\n\n #handleItemMouseDown(e: Event) {\n e.preventDefault();\n }\n\n #handleClick(e: Event) {\n e.stopPropagation();\n }\n\n readonly #handleFocus = async () => {\n if (this.openOnFocus) {\n await this.#updateResults();\n }\n };\n\n readonly #handleInput = () => {\n if (this.#debounceTimeout) {\n clearTimeout(this.#debounceTimeout);\n }\n\n this.#setValueAndDispatchEvents(this.editable ? this.#getTargetValue() : null, true);\n\n this.#debounceTimeout = setTimeout(async () => await this.#updateResults(true), this.debounce);\n };\n\n #getItemClickHandler(data: Data) {\n return () => {\n const selectedEvent = new CustomEvent('selected', {\n cancelable: true,\n detail: data.value,\n });\n\n this.dispatchEvent(selectedEvent);\n\n if (selectedEvent.defaultPrevented) {\n return;\n }\n\n this.#setValueAndDispatchEvents(data.value);\n };\n }\n\n #setValueAndDispatchEvents(value: any, direct = false) {\n if (!direct) {\n this.value = value;\n } else {\n this.#value = value;\n this.#elementInternals.setFormValue(value);\n }\n\n this.dispatchEvent(new InputEvent('input', { bubbles: true, composed: true }));\n this.dispatchEvent(new Event('change', { bubbles: true }));\n }\n\n protected override render(): HTMLTemplateResult {\n if (!this.results?.length) {\n return html``;\n }\n\n setTimeout(() => {\n this.#setMenuAnchor();\n this._menu.open = true;\n this.#navigationController.focusMenu(this._menuItems[0], 0);\n });\n\n return html`\n <u-menu manualFocus manualClose anchor-corner=\"auto-start\" positioning=\"${this.positioning}\">\n ${this.results.map(result => {\n const content = this.template\n ? this.#renderTemplate(result.value)\n : html`\n <u-highlight .term=${this.#termNormalized} .result=${result.label}></u-highlight>\n `;\n\n return html`\n <u-menu-item\n @mousedown=${this.#handleItemMouseDown}\n @click=${this.#getItemClickHandler(result)}\n tabindex=\"-1\">\n ${content}\n </u-menu-item>\n `;\n })}\n </u-menu>\n `;\n }\n\n #renderTemplate(value: any): TemplateResult {\n const content = this.template!(this.#termNormalized, value);\n\n if (content instanceof HTMLElement || typeof content === 'string') {\n return html`${content}`;\n }\n\n const container = document.createElement('div');\n render(content, container);\n return html`${container}`;\n }\n\n async #updateResults(lazy = false) {\n const term = this.#getTargetValue();\n\n const termNormalized = normalizeText(term).toLowerCase();\n\n if (lazy && termNormalized === this.#termNormalized && this._menu?.open === true) {\n return;\n }\n\n this.#termNormalized = termNormalized;\n\n if (termNormalized.length < this.minLength) {\n this.results = [];\n return;\n }\n\n this.results = await this.#getData();\n this.results = this.results.slice(0, this.limit || this.results.length);\n }\n\n async #getData(): Promise<Data[]> {\n if (!this.source) {\n return [];\n }\n\n let values: any[];\n\n let filter = false;\n\n if (this.source instanceof Array) {\n values = this.source;\n filter = true;\n } else {\n const source = this.source as (term: string) => Promise<any[]>;\n values = await source(this.#termNormalized);\n }\n\n const result = values.map(source => ({\n label: this.formatter ? this.formatter(source) : source.toString(),\n value: source,\n }));\n\n if (!filter) {\n return result;\n }\n\n return result.filter(t => normalizeText(t.label).toLowerCase()\n .includes(this.#termNormalized));\n }\n\n #setValueOnTarget() {\n if (!this.#target) {\n return;\n }\n\n const textValue = this.#getTextValue();\n this.#termNormalized = normalizeText(textValue)?.toLowerCase();\n\n if (this.#target.tagName === 'U-TEXT-FIELD') {\n this.#target.value = textValue;\n return;\n }\n\n if (this.#target.input) {\n this.#target.input.value = textValue;\n return;\n }\n\n this.#target.value = textValue;\n }\n\n #getTargetValue(): string {\n return this.#target!.input?.value ?? this.#target!.value;\n }\n\n #setTargetValue(value: string): void {\n const targetInput = this.#target?.input ?? this.#target;\n\n if (targetInput) {\n targetInput.value = value;\n }\n }\n\n #setMenuAnchor() {\n if (!this._menu) {\n return;\n }\n\n this._menu.anchorElement = this.#getMenuAnchor();\n }\n\n #getMenuAnchor() {\n if (!this.#target) {\n return null;\n }\n\n if (this.#target.tagName === 'U-CHIP-FIELD') {\n return this.#target.input;\n }\n\n if (this.#target.tagName === 'U-SEARCH') {\n return this.#target.input;\n }\n\n if (this.#target.tagName === 'U-TEXT-FIELD') {\n return this.#target._container;\n }\n\n return this.#target;\n }\n\n #getTextValue(): string {\n if (!this.value) {\n return '';\n }\n\n return this.formatter ? this.formatter(this.value) : this.value;\n }\n\n #setMenuWidthProperty(): void {\n if (!this.fitTarget || !this.#target) {\n this.style.removeProperty('--_menu-width');\n return;\n }\n\n this.style.setProperty('--_menu-width', `${this.#target.clientWidth}px`);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'u-typeahead': UmTypeahead;\n }\n}\n"]}
|
|
@@ -66,6 +66,17 @@
|
|
|
66
66
|
],
|
|
67
67
|
"references": []
|
|
68
68
|
},
|
|
69
|
+
{
|
|
70
|
+
"name": "u-badge",
|
|
71
|
+
"description": "\n---\n",
|
|
72
|
+
"attributes": [
|
|
73
|
+
{
|
|
74
|
+
"name": "static",
|
|
75
|
+
"values": []
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"references": []
|
|
79
|
+
},
|
|
69
80
|
{
|
|
70
81
|
"name": "u-button-field",
|
|
71
82
|
"description": "\n---\n",
|
|
@@ -144,17 +155,6 @@
|
|
|
144
155
|
],
|
|
145
156
|
"references": []
|
|
146
157
|
},
|
|
147
|
-
{
|
|
148
|
-
"name": "u-badge",
|
|
149
|
-
"description": "\n---\n",
|
|
150
|
-
"attributes": [
|
|
151
|
-
{
|
|
152
|
-
"name": "static",
|
|
153
|
-
"values": []
|
|
154
|
-
}
|
|
155
|
-
],
|
|
156
|
-
"references": []
|
|
157
|
-
},
|
|
158
158
|
{
|
|
159
159
|
"name": "u-button-set",
|
|
160
160
|
"description": "\n---\n",
|
|
@@ -531,50 +531,6 @@
|
|
|
531
531
|
],
|
|
532
532
|
"references": []
|
|
533
533
|
},
|
|
534
|
-
{
|
|
535
|
-
"name": "u-card-content",
|
|
536
|
-
"description": "\n---\n",
|
|
537
|
-
"attributes": [
|
|
538
|
-
{
|
|
539
|
-
"name": "has-content",
|
|
540
|
-
"values": []
|
|
541
|
-
}
|
|
542
|
-
],
|
|
543
|
-
"references": []
|
|
544
|
-
},
|
|
545
|
-
{
|
|
546
|
-
"name": "u-card-media",
|
|
547
|
-
"description": "\n---\n",
|
|
548
|
-
"attributes": [
|
|
549
|
-
{
|
|
550
|
-
"name": "wide",
|
|
551
|
-
"values": []
|
|
552
|
-
}
|
|
553
|
-
],
|
|
554
|
-
"references": []
|
|
555
|
-
},
|
|
556
|
-
{
|
|
557
|
-
"name": "u-card",
|
|
558
|
-
"description": "\n---\n",
|
|
559
|
-
"attributes": [
|
|
560
|
-
{
|
|
561
|
-
"name": "variant",
|
|
562
|
-
"description": "The Card variant to render.",
|
|
563
|
-
"values": [
|
|
564
|
-
{
|
|
565
|
-
"name": "filled"
|
|
566
|
-
},
|
|
567
|
-
{
|
|
568
|
-
"name": "elevated"
|
|
569
|
-
},
|
|
570
|
-
{
|
|
571
|
-
"name": "outlined"
|
|
572
|
-
}
|
|
573
|
-
]
|
|
574
|
-
}
|
|
575
|
-
],
|
|
576
|
-
"references": []
|
|
577
|
-
},
|
|
578
534
|
{
|
|
579
535
|
"name": "u-calendar",
|
|
580
536
|
"description": "\n---\n\n\n### **Events:**\n - **input**\n- **change**",
|
|
@@ -614,69 +570,45 @@
|
|
|
614
570
|
"references": []
|
|
615
571
|
},
|
|
616
572
|
{
|
|
617
|
-
"name": "u-
|
|
573
|
+
"name": "u-card-content",
|
|
618
574
|
"description": "\n---\n",
|
|
619
575
|
"attributes": [
|
|
620
576
|
{
|
|
621
|
-
"name": "
|
|
622
|
-
"values": []
|
|
623
|
-
},
|
|
624
|
-
{
|
|
625
|
-
"name": "hide-state-layer",
|
|
626
|
-
"values": []
|
|
627
|
-
},
|
|
628
|
-
{
|
|
629
|
-
"name": "indeterminate",
|
|
630
|
-
"values": []
|
|
631
|
-
},
|
|
632
|
-
{
|
|
633
|
-
"name": "name",
|
|
634
|
-
"values": []
|
|
635
|
-
},
|
|
636
|
-
{
|
|
637
|
-
"name": "disabled",
|
|
638
|
-
"values": []
|
|
639
|
-
},
|
|
640
|
-
{
|
|
641
|
-
"name": "value",
|
|
642
|
-
"description": "The element value to use in form submission when checked.",
|
|
643
|
-
"values": []
|
|
644
|
-
},
|
|
645
|
-
{
|
|
646
|
-
"name": "checked",
|
|
577
|
+
"name": "has-content",
|
|
647
578
|
"values": []
|
|
648
579
|
}
|
|
649
580
|
],
|
|
650
581
|
"references": []
|
|
651
582
|
},
|
|
652
583
|
{
|
|
653
|
-
"name": "u-
|
|
584
|
+
"name": "u-card-media",
|
|
654
585
|
"description": "\n---\n",
|
|
655
586
|
"attributes": [
|
|
656
587
|
{
|
|
657
|
-
"name": "
|
|
658
|
-
"values": []
|
|
659
|
-
},
|
|
660
|
-
{
|
|
661
|
-
"name": "indeterminate",
|
|
662
|
-
"values": []
|
|
663
|
-
},
|
|
664
|
-
{
|
|
665
|
-
"name": "name",
|
|
666
|
-
"values": []
|
|
667
|
-
},
|
|
668
|
-
{
|
|
669
|
-
"name": "disabled",
|
|
670
|
-
"values": []
|
|
671
|
-
},
|
|
672
|
-
{
|
|
673
|
-
"name": "value",
|
|
674
|
-
"description": "The element value to use in form submission when checked.",
|
|
588
|
+
"name": "wide",
|
|
675
589
|
"values": []
|
|
676
|
-
}
|
|
590
|
+
}
|
|
591
|
+
],
|
|
592
|
+
"references": []
|
|
593
|
+
},
|
|
594
|
+
{
|
|
595
|
+
"name": "u-card",
|
|
596
|
+
"description": "\n---\n",
|
|
597
|
+
"attributes": [
|
|
677
598
|
{
|
|
678
|
-
"name": "
|
|
679
|
-
"
|
|
599
|
+
"name": "variant",
|
|
600
|
+
"description": "The Card variant to render.",
|
|
601
|
+
"values": [
|
|
602
|
+
{
|
|
603
|
+
"name": "filled"
|
|
604
|
+
},
|
|
605
|
+
{
|
|
606
|
+
"name": "elevated"
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
"name": "outlined"
|
|
610
|
+
}
|
|
611
|
+
]
|
|
680
612
|
}
|
|
681
613
|
],
|
|
682
614
|
"references": []
|
|
@@ -773,6 +705,74 @@
|
|
|
773
705
|
],
|
|
774
706
|
"references": []
|
|
775
707
|
},
|
|
708
|
+
{
|
|
709
|
+
"name": "u-checkbox-list-item",
|
|
710
|
+
"description": "\n---\n",
|
|
711
|
+
"attributes": [
|
|
712
|
+
{
|
|
713
|
+
"name": "leading",
|
|
714
|
+
"values": []
|
|
715
|
+
},
|
|
716
|
+
{
|
|
717
|
+
"name": "hide-state-layer",
|
|
718
|
+
"values": []
|
|
719
|
+
},
|
|
720
|
+
{
|
|
721
|
+
"name": "indeterminate",
|
|
722
|
+
"values": []
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
"name": "name",
|
|
726
|
+
"values": []
|
|
727
|
+
},
|
|
728
|
+
{
|
|
729
|
+
"name": "disabled",
|
|
730
|
+
"values": []
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"name": "value",
|
|
734
|
+
"description": "The element value to use in form submission when checked.",
|
|
735
|
+
"values": []
|
|
736
|
+
},
|
|
737
|
+
{
|
|
738
|
+
"name": "checked",
|
|
739
|
+
"values": []
|
|
740
|
+
}
|
|
741
|
+
],
|
|
742
|
+
"references": []
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
"name": "u-checkbox",
|
|
746
|
+
"description": "\n---\n",
|
|
747
|
+
"attributes": [
|
|
748
|
+
{
|
|
749
|
+
"name": "hide-state-layer",
|
|
750
|
+
"values": []
|
|
751
|
+
},
|
|
752
|
+
{
|
|
753
|
+
"name": "indeterminate",
|
|
754
|
+
"values": []
|
|
755
|
+
},
|
|
756
|
+
{
|
|
757
|
+
"name": "name",
|
|
758
|
+
"values": []
|
|
759
|
+
},
|
|
760
|
+
{
|
|
761
|
+
"name": "disabled",
|
|
762
|
+
"values": []
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
"name": "value",
|
|
766
|
+
"description": "The element value to use in form submission when checked.",
|
|
767
|
+
"values": []
|
|
768
|
+
},
|
|
769
|
+
{
|
|
770
|
+
"name": "checked",
|
|
771
|
+
"values": []
|
|
772
|
+
}
|
|
773
|
+
],
|
|
774
|
+
"references": []
|
|
775
|
+
},
|
|
776
776
|
{
|
|
777
777
|
"name": "u-chip-field",
|
|
778
778
|
"description": "\n---\n\n\n### **Events:**\n - **change**",
|
|
@@ -1200,43 +1200,41 @@
|
|
|
1200
1200
|
"references": []
|
|
1201
1201
|
},
|
|
1202
1202
|
{
|
|
1203
|
-
"name": "u-
|
|
1203
|
+
"name": "u-radio-list-item",
|
|
1204
1204
|
"description": "\n---\n",
|
|
1205
1205
|
"attributes": [
|
|
1206
1206
|
{
|
|
1207
|
-
"name": "
|
|
1207
|
+
"name": "leading",
|
|
1208
1208
|
"values": []
|
|
1209
1209
|
},
|
|
1210
1210
|
{
|
|
1211
|
-
"name": "
|
|
1211
|
+
"name": "hide-state-layer",
|
|
1212
1212
|
"values": []
|
|
1213
|
-
}
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1213
|
+
},
|
|
1214
|
+
{
|
|
1215
|
+
"name": "name",
|
|
1216
|
+
"values": []
|
|
1217
|
+
},
|
|
1218
|
+
{
|
|
1219
|
+
"name": "disabled",
|
|
1220
|
+
"values": []
|
|
1221
|
+
},
|
|
1221
1222
|
{
|
|
1222
1223
|
"name": "value",
|
|
1224
|
+
"description": "The element value to use in form submission when checked.",
|
|
1223
1225
|
"values": []
|
|
1224
1226
|
},
|
|
1225
1227
|
{
|
|
1226
|
-
"name": "
|
|
1228
|
+
"name": "checked",
|
|
1227
1229
|
"values": []
|
|
1228
1230
|
}
|
|
1229
1231
|
],
|
|
1230
1232
|
"references": []
|
|
1231
1233
|
},
|
|
1232
1234
|
{
|
|
1233
|
-
"name": "u-radio
|
|
1235
|
+
"name": "u-radio",
|
|
1234
1236
|
"description": "\n---\n",
|
|
1235
1237
|
"attributes": [
|
|
1236
|
-
{
|
|
1237
|
-
"name": "leading",
|
|
1238
|
-
"values": []
|
|
1239
|
-
},
|
|
1240
1238
|
{
|
|
1241
1239
|
"name": "hide-state-layer",
|
|
1242
1240
|
"values": []
|
|
@@ -1262,28 +1260,30 @@
|
|
|
1262
1260
|
"references": []
|
|
1263
1261
|
},
|
|
1264
1262
|
{
|
|
1265
|
-
"name": "u-
|
|
1263
|
+
"name": "u-circular-progress",
|
|
1266
1264
|
"description": "\n---\n",
|
|
1267
1265
|
"attributes": [
|
|
1268
1266
|
{
|
|
1269
|
-
"name": "
|
|
1270
|
-
"values": []
|
|
1271
|
-
},
|
|
1272
|
-
{
|
|
1273
|
-
"name": "name",
|
|
1267
|
+
"name": "value",
|
|
1274
1268
|
"values": []
|
|
1275
1269
|
},
|
|
1276
1270
|
{
|
|
1277
|
-
"name": "
|
|
1271
|
+
"name": "max",
|
|
1278
1272
|
"values": []
|
|
1279
|
-
}
|
|
1273
|
+
}
|
|
1274
|
+
],
|
|
1275
|
+
"references": []
|
|
1276
|
+
},
|
|
1277
|
+
{
|
|
1278
|
+
"name": "u-progress-bar",
|
|
1279
|
+
"description": "\n---\n",
|
|
1280
|
+
"attributes": [
|
|
1280
1281
|
{
|
|
1281
1282
|
"name": "value",
|
|
1282
|
-
"description": "The element value to use in form submission when checked.",
|
|
1283
1283
|
"values": []
|
|
1284
1284
|
},
|
|
1285
1285
|
{
|
|
1286
|
-
"name": "
|
|
1286
|
+
"name": "max",
|
|
1287
1287
|
"values": []
|
|
1288
1288
|
}
|
|
1289
1289
|
],
|
|
@@ -1905,6 +1905,21 @@
|
|
|
1905
1905
|
],
|
|
1906
1906
|
"references": []
|
|
1907
1907
|
},
|
|
1908
|
+
{
|
|
1909
|
+
"name": "u-typeahead-template-render",
|
|
1910
|
+
"description": "\n---\n",
|
|
1911
|
+
"attributes": [
|
|
1912
|
+
{
|
|
1913
|
+
"name": "content",
|
|
1914
|
+
"values": [
|
|
1915
|
+
{
|
|
1916
|
+
"name": "HTMLElement"
|
|
1917
|
+
}
|
|
1918
|
+
]
|
|
1919
|
+
}
|
|
1920
|
+
],
|
|
1921
|
+
"references": []
|
|
1922
|
+
},
|
|
1908
1923
|
{
|
|
1909
1924
|
"name": "u-typeahead",
|
|
1910
1925
|
"description": "\n---\n\n\n### **Events:**\n - **input**\n- **change**",
|