@spectrum-web-components/number-field 1.1.0 → 1.1.2

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.
Files changed (49) hide show
  1. package/package.json +9 -9
  2. package/sp-number-field.d.ts +6 -0
  3. package/sp-number-field.dev.js +5 -0
  4. package/sp-number-field.dev.js.map +7 -0
  5. package/sp-number-field.js +2 -0
  6. package/sp-number-field.js.map +7 -0
  7. package/src/NumberField.d.ts +117 -0
  8. package/src/NumberField.dev.js +675 -0
  9. package/src/NumberField.dev.js.map +7 -0
  10. package/src/NumberField.js +57 -0
  11. package/src/NumberField.js.map +7 -0
  12. package/src/index.d.ts +1 -0
  13. package/src/index.dev.js +3 -0
  14. package/src/index.dev.js.map +7 -0
  15. package/src/index.js +2 -0
  16. package/src/index.js.map +7 -0
  17. package/src/number-field-overrides.css.d.ts +2 -0
  18. package/src/number-field-overrides.css.dev.js +7 -0
  19. package/src/number-field-overrides.css.dev.js.map +7 -0
  20. package/src/number-field-overrides.css.js +4 -0
  21. package/src/number-field-overrides.css.js.map +7 -0
  22. package/src/number-field.css.d.ts +2 -0
  23. package/src/number-field.css.dev.js +7 -0
  24. package/src/number-field.css.dev.js.map +7 -0
  25. package/src/number-field.css.js +4 -0
  26. package/src/number-field.css.js.map +7 -0
  27. package/src/spectrum-number-field.css.d.ts +2 -0
  28. package/src/spectrum-number-field.css.dev.js +7 -0
  29. package/src/spectrum-number-field.css.dev.js.map +7 -0
  30. package/src/spectrum-number-field.css.js +4 -0
  31. package/src/spectrum-number-field.css.js.map +7 -0
  32. package/stories/number-field-sizes.stories.js +29 -0
  33. package/stories/number-field-sizes.stories.js.map +7 -0
  34. package/stories/number-field.stories.js +425 -0
  35. package/stories/number-field.stories.js.map +7 -0
  36. package/test/benchmark/basic-test.js +8 -0
  37. package/test/benchmark/basic-test.js.map +7 -0
  38. package/test/helpers.js +45 -0
  39. package/test/helpers.js.map +7 -0
  40. package/test/inputs.test.js +433 -0
  41. package/test/inputs.test.js.map +7 -0
  42. package/test/number-field-memory.test.js +5 -0
  43. package/test/number-field-memory.test.js.map +7 -0
  44. package/test/number-field-sizes.test-vrt.js +5 -0
  45. package/test/number-field-sizes.test-vrt.js.map +7 -0
  46. package/test/number-field.test-vrt.js +5 -0
  47. package/test/number-field.test-vrt.js.map +7 -0
  48. package/test/number-field.test.js +1739 -0
  49. package/test/number-field.test.js.map +7 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spectrum-web-components/number-field",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -59,13 +59,13 @@
59
59
  ],
60
60
  "dependencies": {
61
61
  "@internationalized/number": "^3.6.0",
62
- "@spectrum-web-components/base": "^1.1.0",
63
- "@spectrum-web-components/icon": "^1.1.0",
64
- "@spectrum-web-components/icons-ui": "^1.1.0",
65
- "@spectrum-web-components/infield-button": "^1.1.0",
66
- "@spectrum-web-components/reactive-controllers": "^1.1.0",
67
- "@spectrum-web-components/shared": "^1.1.0",
68
- "@spectrum-web-components/textfield": "^1.1.0"
62
+ "@spectrum-web-components/base": "^1.1.2",
63
+ "@spectrum-web-components/icon": "^1.1.2",
64
+ "@spectrum-web-components/icons-ui": "^1.1.2",
65
+ "@spectrum-web-components/infield-button": "^1.1.2",
66
+ "@spectrum-web-components/reactive-controllers": "^1.1.2",
67
+ "@spectrum-web-components/shared": "^1.1.2",
68
+ "@spectrum-web-components/textfield": "^1.1.2"
69
69
  },
70
70
  "devDependencies": {
71
71
  "@formatjs/intl-numberformat": "^8.3.5",
@@ -77,5 +77,5 @@
77
77
  "./sp-*.js",
78
78
  "./**/*.dev.js"
79
79
  ],
80
- "gitHead": "e3c6e52501451acc6fa85b10dd718267b80a01ab"
80
+ "gitHead": "9ee45f2dfd3ac1939072726d00195c6c05d9a562"
81
81
  }
@@ -0,0 +1,6 @@
1
+ import { NumberField } from './src/NumberField.js';
2
+ declare global {
3
+ interface HTMLElementTagNameMap {
4
+ 'sp-number-field': NumberField;
5
+ }
6
+ }
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ import { NumberField } from "./src/NumberField.dev.js";
3
+ import { defineElement } from "@spectrum-web-components/base/src/define-element.js";
4
+ defineElement("sp-number-field", NumberField);
5
+ //# sourceMappingURL=sp-number-field.dev.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["sp-number-field.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { NumberField } from './src/NumberField.dev.js'\nimport { defineElement } from '@spectrum-web-components/base/src/define-element.js';\n\ndefineElement('sp-number-field', NumberField);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'sp-number-field': NumberField;\n }\n}\n"],
5
+ "mappings": ";AAYA,SAAS,mBAAmB;AAC5B,SAAS,qBAAqB;AAE9B,cAAc,mBAAmB,WAAW;",
6
+ "names": []
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";import{NumberField as e}from"./src/NumberField.js";import{defineElement as m}from"@spectrum-web-components/base/src/define-element.js";m("sp-number-field",e);
2
+ //# sourceMappingURL=sp-number-field.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["sp-number-field.ts"],
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport { NumberField } from './src/NumberField.js';\nimport { defineElement } from '@spectrum-web-components/base/src/define-element.js';\n\ndefineElement('sp-number-field', NumberField);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'sp-number-field': NumberField;\n }\n}\n"],
5
+ "mappings": "aAYA,OAAS,eAAAA,MAAmB,uBAC5B,OAAS,iBAAAC,MAAqB,sDAE9BA,EAAc,kBAAmBD,CAAW",
6
+ "names": ["NumberField", "defineElement"]
7
+ }
@@ -0,0 +1,117 @@
1
+ import { NumberFormatter, NumberParser } from '@internationalized/number';
2
+ import { CSSResultArray, PropertyValues, TemplateResult } from '@spectrum-web-components/base';
3
+ import '@spectrum-web-components/icons-ui/icons/sp-icon-chevron100.js';
4
+ import '@spectrum-web-components/icons-ui/icons/sp-icon-chevron200.js';
5
+ import '@spectrum-web-components/icons-ui/icons/sp-icon-chevron50.js';
6
+ import '@spectrum-web-components/icons-ui/icons/sp-icon-chevron75.js';
7
+ import '@spectrum-web-components/infield-button/sp-infield-button.js';
8
+ import { TextfieldBase } from '@spectrum-web-components/textfield';
9
+ export declare const FRAMES_PER_CHANGE = 5;
10
+ export declare const CHANGE_DEBOUNCE_MS = 100;
11
+ export declare const indeterminatePlaceholder = "-";
12
+ export declare const remapMultiByteCharacters: Record<string, string>;
13
+ /**
14
+ * @element sp-number-field
15
+ * @slot help-text - default or non-negative help text to associate to your form element
16
+ * @slot negative-help-text - negative help text to associate to your form element when `invalid`
17
+ */
18
+ export declare class NumberField extends TextfieldBase {
19
+ static get styles(): CSSResultArray;
20
+ private buttons;
21
+ focused: boolean;
22
+ _forcedUnit: string;
23
+ /**
24
+ * An `&lt;sp-number-field&gt;` element will process its numeric value with
25
+ * `new Intl.NumberFormat(this.resolvedLanguage, this.formatOptions).format(this.valueAsNumber)`
26
+ * in order to prepare it for visual delivery in the input. In order to customize this
27
+ * processing supply your own `Intl.NumberFormatOptions` object here.
28
+ *
29
+ * See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat
30
+ */
31
+ formatOptions: Intl.NumberFormatOptions;
32
+ /**
33
+ * Whether the stepper UI is hidden or not.
34
+ */
35
+ hideStepper: boolean;
36
+ indeterminate: boolean;
37
+ keyboardFocused: boolean;
38
+ max?: number;
39
+ min?: number;
40
+ /**
41
+ * The distance by which to alter the value of the element when taking a "step".
42
+ *
43
+ * When `this.formatOptions.style === 'percentage'` the default step will be
44
+ * set to 0.01 unless otherwise supplied to the element.
45
+ */
46
+ step?: number;
47
+ managedInput: boolean;
48
+ stepModifier: number;
49
+ set value(rawValue: number);
50
+ get value(): number;
51
+ private get inputValue();
52
+ _value: number;
53
+ private _trackingValue;
54
+ private lastCommitedValue?;
55
+ private setValue;
56
+ /**
57
+ * Retreive the value of the element parsed to a Number.
58
+ */
59
+ get valueAsString(): string;
60
+ set valueAsString(value: string);
61
+ get formattedValue(): string;
62
+ private decimalsChars;
63
+ private valueBeforeFocus;
64
+ private isIntentDecimal;
65
+ private convertValueToNumber;
66
+ private get _step();
67
+ private nextChange;
68
+ private changeCount;
69
+ private findChange;
70
+ private change;
71
+ private safty;
72
+ private languageResolver;
73
+ private handlePointerdown;
74
+ private startChange;
75
+ private doChange;
76
+ private handlePointermove;
77
+ private handlePointerup;
78
+ private doNextChange;
79
+ private stepBy;
80
+ private increment;
81
+ private decrement;
82
+ private handleKeydown;
83
+ private queuedChangeEvent;
84
+ protected onScroll(event: WheelEvent): void;
85
+ protected onFocus(): void;
86
+ protected onBlur(_event: FocusEvent): void;
87
+ private handleFocusin;
88
+ private handleFocusout;
89
+ private wasIndeterminate;
90
+ private indeterminateValue?;
91
+ protected handleChange(): void;
92
+ protected handleCompositionStart(): void;
93
+ protected handleCompositionEnd(): void;
94
+ private hasRecentlyReceivedPointerDown;
95
+ protected handleInputElementPointerdown(): void;
96
+ protected handleInput(event: InputEvent): void;
97
+ private valueWithLimits;
98
+ private validateInput;
99
+ protected get displayValue(): string;
100
+ protected clearNumberFormatterCache(): void;
101
+ protected get numberFormatter(): NumberFormatter;
102
+ protected clearValueFormatterCache(): void;
103
+ protected get valueFormatter(): NumberFormatter;
104
+ private _numberFormatter?;
105
+ private _numberFormatterFocused?;
106
+ private _valueFormatter?;
107
+ protected get numberParser(): NumberParser;
108
+ applyFocusElementLabel: (value?: string) => void;
109
+ private _numberParser?;
110
+ private _numberParserFocused?;
111
+ protected renderField(): TemplateResult;
112
+ protected update(changes: PropertyValues): void;
113
+ willUpdate(changes: PropertyValues): void;
114
+ private isComposing;
115
+ protected firstUpdated(changes: PropertyValues): void;
116
+ protected updated(changes: PropertyValues<this>): void;
117
+ }