@vaadin/text-field 22.0.0-alpha9 → 22.0.0
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/README.md
CHANGED
|
@@ -2,7 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
A web component that allows the user to input and edit text.
|
|
4
4
|
|
|
5
|
-
[Live Demo ↗](https://vaadin.com/docs/latest/ds/components/text-field)
|
|
5
|
+
[Documentation + Live Demo ↗](https://vaadin.com/docs/latest/ds/components/text-field)
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/@vaadin/text-field)
|
|
8
|
+
[](https://discord.gg/PHmkCKC)
|
|
6
9
|
|
|
7
10
|
```html
|
|
8
11
|
<vaadin-text-field label="Street Address"></vaadin-text-field>
|
|
@@ -13,7 +16,7 @@ A web component that allows the user to input and edit text.
|
|
|
13
16
|
Install the component:
|
|
14
17
|
|
|
15
18
|
```sh
|
|
16
|
-
npm i @vaadin/text-field
|
|
19
|
+
npm i @vaadin/text-field
|
|
17
20
|
```
|
|
18
21
|
|
|
19
22
|
Once installed, import the component in your application:
|
|
@@ -24,9 +27,8 @@ import '@vaadin/text-field';
|
|
|
24
27
|
|
|
25
28
|
## Themes
|
|
26
29
|
|
|
27
|
-
Vaadin components come with two built-in [themes](https://vaadin.com/docs/latest/ds/customization/using-themes),
|
|
28
|
-
|
|
29
|
-
of the package uses Lumo theme.
|
|
30
|
+
Vaadin components come with two built-in [themes](https://vaadin.com/docs/latest/ds/customization/using-themes), Lumo and Material.
|
|
31
|
+
The [main entrypoint](https://github.com/vaadin/web-components/blob/master/packages/text-field/vaadin-text-field.js) of the package uses Lumo theme.
|
|
30
32
|
|
|
31
33
|
To use the Material theme, import the component from the `theme/material` folder:
|
|
32
34
|
|
|
@@ -46,9 +48,13 @@ Finally, you can import the un-themed component from the `src` folder to get a m
|
|
|
46
48
|
import '@vaadin/text-field/src/vaadin-text-field.js';
|
|
47
49
|
```
|
|
48
50
|
|
|
51
|
+
## Contributing
|
|
52
|
+
|
|
53
|
+
Read the [contributing guide](https://vaadin.com/docs/latest/guide/contributing/overview) to learn about our development process, how to propose bugfixes and improvements, and how to test your changes to Vaadin components.
|
|
54
|
+
|
|
49
55
|
## License
|
|
50
56
|
|
|
51
57
|
Apache License 2.0
|
|
52
58
|
|
|
53
|
-
Vaadin collects development time
|
|
59
|
+
Vaadin collects usage statistics at development time to improve this product.
|
|
54
60
|
For details and to opt-out, see https://github.com/vaadin/vaadin-usage-statistics.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vaadin/text-field",
|
|
3
|
-
"version": "22.0.0
|
|
3
|
+
"version": "22.0.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -32,17 +32,17 @@
|
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@polymer/polymer": "^3.0.0",
|
|
35
|
-
"@vaadin/component-base": "22.0.0
|
|
36
|
-
"@vaadin/field-base": "22.0.0
|
|
37
|
-
"@vaadin/input-container": "22.0.0
|
|
38
|
-
"@vaadin/vaadin-lumo-styles": "22.0.0
|
|
39
|
-
"@vaadin/vaadin-material-styles": "22.0.0
|
|
40
|
-
"@vaadin/vaadin-themable-mixin": "22.0.0
|
|
35
|
+
"@vaadin/component-base": "^22.0.0",
|
|
36
|
+
"@vaadin/field-base": "^22.0.0",
|
|
37
|
+
"@vaadin/input-container": "^22.0.0",
|
|
38
|
+
"@vaadin/vaadin-lumo-styles": "^22.0.0",
|
|
39
|
+
"@vaadin/vaadin-material-styles": "^22.0.0",
|
|
40
|
+
"@vaadin/vaadin-themable-mixin": "^22.0.0"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@esm-bundle/chai": "^4.3.4",
|
|
44
|
-
"@vaadin/testing-helpers": "^0.3.
|
|
44
|
+
"@vaadin/testing-helpers": "^0.3.2",
|
|
45
45
|
"sinon": "^9.2.1"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "b668e9b1a975227fbe34beb70d1cd5b03dce2348"
|
|
48
48
|
}
|
|
@@ -57,11 +57,14 @@ export interface TextFieldEventMap extends HTMLElementEventMap, TextFieldCustomE
|
|
|
57
57
|
*
|
|
58
58
|
* The following shadow DOM parts are available for styling:
|
|
59
59
|
*
|
|
60
|
-
* Part name
|
|
61
|
-
*
|
|
62
|
-
* `label`
|
|
63
|
-
* `input-field`
|
|
64
|
-
* `
|
|
60
|
+
* Part name | Description
|
|
61
|
+
* ---------------------|----------------
|
|
62
|
+
* `label` | The label element
|
|
63
|
+
* `input-field` | The element that wraps prefix, value and suffix
|
|
64
|
+
* `clear-button` | The clear button
|
|
65
|
+
* `error-message` | The error message element
|
|
66
|
+
* `helper-text` | The helper text element wrapper
|
|
67
|
+
* `required-indicator` | The `required` state indicator element
|
|
65
68
|
*
|
|
66
69
|
* The following state attributes are available for styling:
|
|
67
70
|
*
|
package/src/vaadin-text-field.js
CHANGED
|
@@ -3,16 +3,15 @@
|
|
|
3
3
|
* Copyright (c) 2021 Vaadin Ltd.
|
|
4
4
|
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
5
5
|
*/
|
|
6
|
-
import
|
|
6
|
+
import '@vaadin/input-container/src/vaadin-input-container.js';
|
|
7
|
+
import { html, PolymerElement } from '@polymer/polymer';
|
|
7
8
|
import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';
|
|
8
|
-
import { AriaLabelController } from '@vaadin/field-base/src/aria-label-controller.js';
|
|
9
9
|
import { InputController } from '@vaadin/field-base/src/input-controller.js';
|
|
10
10
|
import { InputFieldMixin } from '@vaadin/field-base/src/input-field-mixin.js';
|
|
11
|
+
import { LabelledInputController } from '@vaadin/field-base/src/labelled-input-controller.js';
|
|
11
12
|
import { PatternMixin } from '@vaadin/field-base/src/pattern-mixin.js';
|
|
12
13
|
import { inputFieldShared } from '@vaadin/field-base/src/styles/input-field-shared-styles.js';
|
|
13
|
-
import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
|
|
14
|
-
import { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles.js';
|
|
15
|
-
import '@vaadin/input-container/src/vaadin-input-container.js';
|
|
14
|
+
import { registerStyles, ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
|
|
16
15
|
|
|
17
16
|
registerStyles('vaadin-text-field', inputFieldShared, { moduleId: 'vaadin-text-field-styles' });
|
|
18
17
|
|
|
@@ -47,11 +46,14 @@ registerStyles('vaadin-text-field', inputFieldShared, { moduleId: 'vaadin-text-f
|
|
|
47
46
|
*
|
|
48
47
|
* The following shadow DOM parts are available for styling:
|
|
49
48
|
*
|
|
50
|
-
* Part name
|
|
51
|
-
*
|
|
52
|
-
* `label`
|
|
53
|
-
* `input-field`
|
|
54
|
-
* `
|
|
49
|
+
* Part name | Description
|
|
50
|
+
* ---------------------|----------------
|
|
51
|
+
* `label` | The label element
|
|
52
|
+
* `input-field` | The element that wraps prefix, value and suffix
|
|
53
|
+
* `clear-button` | The clear button
|
|
54
|
+
* `error-message` | The error message element
|
|
55
|
+
* `helper-text` | The helper text element wrapper
|
|
56
|
+
* `required-indicator` | The `required` state indicator element
|
|
55
57
|
*
|
|
56
58
|
* The following state attributes are available for styling:
|
|
57
59
|
*
|
|
@@ -172,7 +174,7 @@ export class TextField extends PatternMixin(InputFieldMixin(ThemableMixin(Elemen
|
|
|
172
174
|
this.ariaTarget = input;
|
|
173
175
|
})
|
|
174
176
|
);
|
|
175
|
-
this.addController(new
|
|
177
|
+
this.addController(new LabelledInputController(this.inputElement, this._labelNode));
|
|
176
178
|
}
|
|
177
179
|
}
|
|
178
180
|
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Copyright (c) 2021 Vaadin Ltd.
|
|
4
4
|
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
5
5
|
*/
|
|
6
|
-
import { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles.js';
|
|
7
6
|
import { inputFieldShared } from '@vaadin/vaadin-lumo-styles/mixins/input-field-shared.js';
|
|
7
|
+
import { registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
|
|
8
8
|
|
|
9
9
|
registerStyles('vaadin-text-field', inputFieldShared, {
|
|
10
10
|
moduleId: 'lumo-text-field-styles'
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Copyright (c) 2021 Vaadin Ltd.
|
|
4
4
|
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
|
|
5
5
|
*/
|
|
6
|
-
import { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles.js';
|
|
7
6
|
import { inputFieldShared } from '@vaadin/vaadin-material-styles/mixins/input-field-shared.js';
|
|
7
|
+
import { registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
|
|
8
8
|
|
|
9
9
|
registerStyles('vaadin-text-field', inputFieldShared, {
|
|
10
10
|
moduleId: 'material-text-field-styles'
|