@ni/nimble-components 14.0.0 → 15.1.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.
@@ -18,7 +18,7 @@ import './menu';
18
18
  import './menu-button';
19
19
  import './menu-item';
20
20
  import './number-field';
21
- import './radio-button';
21
+ import './radio';
22
22
  import './radio-group';
23
23
  import './select';
24
24
  import './switch';
@@ -18,7 +18,7 @@ import './menu';
18
18
  import './menu-button';
19
19
  import './menu-item';
20
20
  import './number-field';
21
- import './radio-button';
21
+ import './radio';
22
22
  import './radio-group';
23
23
  import './select';
24
24
  import './switch';
@@ -1 +1 @@
1
- {"version":3,"file":"all-components.js","sourceRoot":"","sources":["../../src/all-components.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,mBAAmB,CAAC;AAC3B,OAAO,cAAc,CAAC;AACtB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,CAAC;AAClB,OAAO,eAAe,CAAC;AACvB,OAAO,YAAY,CAAC;AACpB,OAAO,YAAY,CAAC;AACpB,OAAO,UAAU,CAAC;AAClB,OAAO,UAAU,CAAC;AAClB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,eAAe,CAAC;AACvB,OAAO,QAAQ,CAAC;AAChB,OAAO,eAAe,CAAC;AACvB,OAAO,aAAa,CAAC;AACrB,OAAO,gBAAgB,CAAC;AACxB,OAAO,gBAAgB,CAAC;AACxB,OAAO,eAAe,CAAC;AACvB,OAAO,UAAU,CAAC;AAClB,OAAO,UAAU,CAAC;AAClB,OAAO,OAAO,CAAC;AACf,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,gBAAgB,CAAC;AACxB,OAAO,aAAa,CAAC;AACrB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,iBAAiB,CAAC;AACzB,OAAO,WAAW,CAAC;AACnB,OAAO,WAAW,CAAC;AACnB,OAAO,aAAa,CAAC;AACrB,OAAO,aAAa,CAAC"}
1
+ {"version":3,"file":"all-components.js","sourceRoot":"","sources":["../../src/all-components.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,mBAAmB,CAAC;AAC3B,OAAO,cAAc,CAAC;AACtB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,UAAU,CAAC;AAClB,OAAO,eAAe,CAAC;AACvB,OAAO,YAAY,CAAC;AACpB,OAAO,YAAY,CAAC;AACpB,OAAO,UAAU,CAAC;AAClB,OAAO,UAAU,CAAC;AAClB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,eAAe,CAAC;AACvB,OAAO,QAAQ,CAAC;AAChB,OAAO,eAAe,CAAC;AACvB,OAAO,aAAa,CAAC;AACrB,OAAO,gBAAgB,CAAC;AACxB,OAAO,SAAS,CAAC;AACjB,OAAO,eAAe,CAAC;AACvB,OAAO,UAAU,CAAC;AAClB,OAAO,UAAU,CAAC;AAClB,OAAO,OAAO,CAAC;AACf,OAAO,aAAa,CAAC;AACrB,OAAO,QAAQ,CAAC;AAChB,OAAO,gBAAgB,CAAC;AACxB,OAAO,aAAa,CAAC;AACrB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,iBAAiB,CAAC;AACzB,OAAO,WAAW,CAAC;AACnB,OAAO,WAAW,CAAC;AACnB,OAAO,aAAa,CAAC;AACrB,OAAO,aAAa,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { css } from '@microsoft/fast-element';
2
- import { controlHeight, failColor, bodyDisabledFontColor, borderRgbPartialColor, smallPadding, borderHoverColor, borderWidth } from '../theme-provider/design-tokens';
2
+ import { controlHeight, bodyDisabledFontColor, borderRgbPartialColor, smallPadding, borderHoverColor, borderWidth } from '../theme-provider/design-tokens';
3
3
  import { styles as dropdownStyles } from '../patterns/dropdown/styles';
4
4
  import { styles as errorStyles } from '../patterns/error/styles';
5
5
  import { focusVisible } from '../utilities/style/focus';
@@ -23,10 +23,6 @@ export const styles = css `
23
23
  color: ${bodyDisabledFontColor};
24
24
  }
25
25
 
26
- :host([error-visible])::after {
27
- border-bottom-color: ${failColor};
28
- }
29
-
30
26
  .control {
31
27
  bottom-border-width: var(--ni-private-bottom-border-width);
32
28
  }
@@ -35,19 +31,6 @@ export const styles = css `
35
31
  border-bottom-color: ${borderHoverColor};
36
32
  }
37
33
 
38
- :host([error-visible]) .control {
39
- border-bottom: var(--ni-private-bottom-border-width) solid ${failColor};
40
- }
41
-
42
- :host([disabled]) .control {
43
- border-color: rgba(${borderRgbPartialColor}, 0.1);
44
- }
45
-
46
- :host([error-visible][disabled]) .control,
47
- :host([error-visible][open]) .control {
48
- border-bottom-color: ${failColor};
49
- }
50
-
51
34
  .selected-value {
52
35
  -webkit-appearance: none;
53
36
  background: transparent;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/combobox/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EACH,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACd,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,cAAc;MACd,WAAW;;;;;;cAMH,aAAa,UAAU,WAAW;;;;;;;iBAO/B,qBAAqB;;;;+BAIP,SAAS;;;;;;;;+BAQT,gBAAgB;;;;qEAIsB,SAAS;;;;6BAIjD,qBAAqB;;;;;+BAKnB,SAAS;;;;;;;;;;;;;;;;;qBAiBnB,YAAY;;;;;;;;;;;yBAWR,YAAY;;;;;;uCAME,qBAAqB;uBACrC,aAAa;;;;;;UAM1B,aAAa,CAAC,iBAAiB;uBAClB,YAAY;;;;gBAInB,qBAAqB;;;;;;CAMpC,CAAC,aAAa,CACX,kBAAkB,CACd,kBAAkB,CAAC,KAAK,EACxB,GAAG,CAAA;;uCAE4B,WAAW;;;SAGzC,CACJ,CACJ,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/combobox/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EACH,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACd,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,cAAc;MACd,WAAW;;;;;;cAMH,aAAa,UAAU,WAAW;;;;;;;iBAO/B,qBAAqB;;;;;;;;+BAQP,gBAAgB;;;;;;;;;;;;;;;;;qBAiB1B,YAAY;;;;;;;;;;;yBAWR,YAAY;;;;;;uCAME,qBAAqB;uBACrC,aAAa;;;;;;UAM1B,aAAa,CAAC,iBAAiB;uBAClB,YAAY;;;;gBAInB,qBAAqB;;;;;;CAMpC,CAAC,aAAa,CACX,kBAAkB,CACd,kBAAkB,CAAC,KAAK,EACxB,GAAG,CAAA;;uCAE4B,WAAW;;;SAGzC,CACJ,CACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { css } from '@microsoft/fast-element';
2
2
  import { display } from '@microsoft/fast-foundation';
3
- import { applicationBackgroundColor, bodyFont, bodyFontColor, bodyDisabledFontColor, borderHoverColor, borderWidth, controlHeight, iconSize, popupBorderColor, popupBoxShadowColor, smallDelay, smallPadding, borderRgbPartialColor, standardPadding } from '../../theme-provider/design-tokens';
3
+ import { applicationBackgroundColor, bodyFont, bodyFontColor, bodyDisabledFontColor, borderHoverColor, borderWidth, controlHeight, iconSize, popupBorderColor, popupBoxShadowColor, smallDelay, smallPadding, borderRgbPartialColor, standardPadding, failColor } from '../../theme-provider/design-tokens';
4
4
  import { appearanceBehavior } from '../../utilities/style/appearance';
5
5
  import { focusVisible } from '../../utilities/style/focus';
6
6
  import { DropdownAppearance } from './types';
@@ -45,6 +45,10 @@ export const styles = css `
45
45
  width: calc(100% - 8px);
46
46
  }
47
47
 
48
+ :host([error-visible]):before {
49
+ border-bottom-color: ${failColor};
50
+ }
51
+
48
52
  :host::after {
49
53
  content: '';
50
54
  position: absolute;
@@ -68,6 +72,10 @@ export const styles = css `
68
72
  width: 100%;
69
73
  }
70
74
 
75
+ :host([error-visible]):after {
76
+ border-bottom-color: ${failColor};
77
+ }
78
+
71
79
  :host([disabled]:hover)::after {
72
80
  width: 0px;
73
81
  }
@@ -94,6 +102,12 @@ export const styles = css `
94
102
  border-color: rgba(${borderRgbPartialColor}, 0.1);
95
103
  }
96
104
 
105
+ :host([error-visible]) .control,
106
+ :host([error-visible][open]) .control,
107
+ :host([error-visible][disabled]) .control {
108
+ border-bottom-color: ${failColor};
109
+ }
110
+
97
111
  .listbox {
98
112
  box-sizing: border-box;
99
113
  display: inline-flex;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/patterns/dropdown/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EACH,0BAA0B,EAC1B,QAAQ,EACR,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,eAAe,EAClB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,OAAO,CAAC,aAAa,CAAC;;;;iBAIX,aAAa;gBACd,QAAQ;kBACN,aAAa;;;;;;;mDAOoB,WAAW;;;;;;;;uBAQvC,WAAW;;;;yBAIT,gBAAgB;;4BAEb,UAAU;;;;;;;;;YAS1B,YAAY;;;;;;;4BAOI,WAAW;;;;yBAId,gBAAgB;;4BAEb,UAAU;;;;;;;;;;YAU1B,YAAY;;;;;;;;;;;;;;;iCAeS,qBAAqB;;mBAEnC,WAAW;;;;+BAIC,gBAAgB;;;;;iBAK9B,qBAAqB;6BACT,qBAAqB;;;;;;;;;;;wCAWV,YAAY;;;;;;;kCAOlB,mBAAmB;4BACzB,gBAAgB;4BAChB,0BAA0B;;;;;;;;;;;;;;;;;;;kBAmBpC,aAAa;;;;oBAIX,aAAa,MAAM,YAAY;;;;;;;;;;;6BAWtB,eAAe;;;;iBAI3B,qBAAqB;;;;;;;;;;;;;iBAarB,QAAQ;kBACP,QAAQ;gBACV,aAAa;;;;gBAIb,qBAAqB;;;;;;;;;;;;;;;;;;;;;CAqBpC,CAAC,aAAa,CACX,kBAAkB,CACd,kBAAkB,CAAC,SAAS,EAC5B,GAAG,CAAA;;uCAE4B,WAAW;;;;;qCAKb,qBAAqB;;SAEjD,CACJ,EACD,kBAAkB,CACd,kBAAkB,CAAC,OAAO,EAC1B,GAAG,CAAA;;gCAEqB,WAAW;;;SAGlC,CACJ,EACD,kBAAkB,CACd,kBAAkB,CAAC,KAAK,EACxB,GAAG,CAAA;;yCAE8B,qBAAqB;;;;uCAIvB,WAAW;;;;;yCAKT,qBAAqB;;SAErD,CACJ,CACJ,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/patterns/dropdown/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EACH,0BAA0B,EAC1B,QAAQ,EACR,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,SAAS,EACZ,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,OAAO,CAAC,aAAa,CAAC;;;;iBAIX,aAAa;gBACd,QAAQ;kBACN,aAAa;;;;;;;mDAOoB,WAAW;;;;;;;;uBAQvC,WAAW;;;;yBAIT,gBAAgB;;4BAEb,UAAU;;;;;;;;;YAS1B,YAAY;;;;;+BAKO,SAAS;;;;;;4BAMZ,WAAW;;;;yBAId,gBAAgB;;4BAEb,UAAU;;;;;;;;;;YAU1B,YAAY;;;;;+BAKO,SAAS;;;;;;;;;;;;;;iCAcP,qBAAqB;;mBAEnC,WAAW;;;;+BAIC,gBAAgB;;;;;iBAK9B,qBAAqB;6BACT,qBAAqB;;;;;;+BAMnB,SAAS;;;;;;;;;;;wCAWA,YAAY;;;;;;;kCAOlB,mBAAmB;4BACzB,gBAAgB;4BAChB,0BAA0B;;;;;;;;;;;;;;;;;;;kBAmBpC,aAAa;;;;oBAIX,aAAa,MAAM,YAAY;;;;;;;;;;;6BAWtB,eAAe;;;;iBAI3B,qBAAqB;;;;;;;;;;;;;iBAarB,QAAQ;kBACP,QAAQ;gBACV,aAAa;;;;gBAIb,qBAAqB;;;;;;;;;;;;;;;;;;;;;CAqBpC,CAAC,aAAa,CACX,kBAAkB,CACd,kBAAkB,CAAC,SAAS,EAC5B,GAAG,CAAA;;uCAE4B,WAAW;;;;;qCAKb,qBAAqB;;SAEjD,CACJ,EACD,kBAAkB,CACd,kBAAkB,CAAC,OAAO,EAC1B,GAAG,CAAA;;gCAEqB,WAAW;;;SAGlC,CACJ,EACD,kBAAkB,CACd,kBAAkB,CAAC,KAAK,EACxB,GAAG,CAAA;;yCAE8B,qBAAqB;;;;uCAIvB,WAAW;;;;;yCAKT,qBAAqB;;SAErD,CACJ,CACJ,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { Radio as FoundationRadio } from '@microsoft/fast-foundation';
2
2
  declare global {
3
3
  interface HTMLElementTagNameMap {
4
- 'nimble-radio-button': RadioButton;
4
+ 'nimble-radio': Radio;
5
5
  }
6
6
  }
7
7
  /**
8
8
  * A nimble-styled radio button
9
9
  */
10
- export declare class RadioButton extends FoundationRadio {
10
+ export declare class Radio extends FoundationRadio {
11
11
  }
@@ -4,14 +4,14 @@ import { styles } from './styles';
4
4
  /**
5
5
  * A nimble-styled radio button
6
6
  */
7
- export class RadioButton extends FoundationRadio {
7
+ export class Radio extends FoundationRadio {
8
8
  }
9
- const nimbleRadioButton = RadioButton.compose({
10
- baseName: 'radio-button',
9
+ const nimbleRadio = Radio.compose({
10
+ baseName: 'radio',
11
11
  baseClass: FoundationRadio,
12
12
  template,
13
13
  styles,
14
14
  checkedIndicator: circleFilled16X16.data
15
15
  });
16
- DesignSystem.getOrCreate().withPrefix('nimble').register(nimbleRadioButton());
16
+ DesignSystem.getOrCreate().withPrefix('nimble').register(nimbleRadio());
17
17
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/radio/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,IAAI,eAAe,EACxB,aAAa,IAAI,QAAQ,EACzB,YAAY,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAQlC;;GAEG;AACH,MAAM,OAAO,KAAM,SAAQ,eAAe;CAAG;AAE7C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAe;IAC5C,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,eAAe;IAC1B,QAAQ;IACR,MAAM;IACN,gBAAgB,EAAE,iBAAiB,CAAC,IAAI;CAC3C,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC"}
File without changes
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/radio/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EACH,qBAAqB,EACrB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,aAAa,EACb,QAAQ,EACR,UAAU,EACb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,OAAO,CAAC,aAAa,CAAC;;;gBAGZ,eAAe;;;;;;;;;;;;sBAYT,aAAa;uBACZ,aAAa;;;kBAGlB,WAAW,UAAU,WAAW;;;;;iCAKjB,UAAU;UACjC;AACE;;;GAGG,CAAC,EACR;;;;;iCAKyB,qBAAqB;6BACzB,qBAAqB;;;;wBAI1B,gBAAgB;kCACN,WAAW,IAAI,gBAAgB;;;YAGrD,YAAY;wBACA,gBAAgB;;;YAG5B,YAAY;;;4BAGI,aAAa;6BACZ,aAAa;4BACd,gBAAgB;;;;;;iBAM3B,aAAa;;;;;;iBAMb,qBAAqB;;;;;;;;kBAQpB,QAAQ;iBACT,QAAQ;;;;;;;;;gBAST,WAAW;;;;qBAIN,qBAAqB;;CAEzC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { Select as FoundationSelect } from '@microsoft/fast-foundation';
2
2
  import { DropdownAppearance } from '../patterns/dropdown/types';
3
+ import type { ErrorPattern } from '../patterns/error/types';
3
4
  declare global {
4
5
  interface HTMLElementTagNameMap {
5
6
  'nimble-select': Select;
@@ -8,8 +9,17 @@ declare global {
8
9
  /**
9
10
  * A nimble-styled HTML select
10
11
  */
11
- export declare class Select extends FoundationSelect {
12
+ export declare class Select extends FoundationSelect implements ErrorPattern {
12
13
  appearance: DropdownAppearance;
14
+ /**
15
+ * A message explaining why the value is invalid.
16
+ *
17
+ * @public
18
+ * @remarks
19
+ * HTML Attribute: error-text
20
+ */
21
+ errorText: string | undefined;
22
+ errorVisible: boolean;
13
23
  setPositioning(): void;
14
24
  slottedOptionsChanged(prev: Element[], next: Element[]): void;
15
25
  private maxHeightChanged;
@@ -1,9 +1,11 @@
1
1
  import { __decorate } from "tslib";
2
- import { attr } from '@microsoft/fast-element';
2
+ import { attr, html } from '@microsoft/fast-element';
3
3
  import { DesignSystem, Select as FoundationSelect, selectTemplate as template } from '@microsoft/fast-foundation';
4
4
  import { arrowExpanderDown16X16 } from '@ni/nimble-tokens/dist/icons/js';
5
5
  import { styles } from './styles';
6
6
  import { DropdownAppearance } from '../patterns/dropdown/types';
7
+ import { errorTextTemplate } from '../patterns/error/template';
8
+ import { IconExclamationMark } from '../icons/exclamation-mark';
7
9
  /**
8
10
  * A nimble-styled HTML select
9
11
  */
@@ -11,6 +13,7 @@ export class Select extends FoundationSelect {
11
13
  constructor() {
12
14
  super(...arguments);
13
15
  this.appearance = DropdownAppearance.underline;
16
+ this.errorVisible = false;
14
17
  }
15
18
  // Workaround for https://github.com/microsoft/fast/issues/5123
16
19
  setPositioning() {
@@ -42,12 +45,25 @@ export class Select extends FoundationSelect {
42
45
  __decorate([
43
46
  attr
44
47
  ], Select.prototype, "appearance", void 0);
48
+ __decorate([
49
+ attr({ attribute: 'error-text' })
50
+ ], Select.prototype, "errorText", void 0);
51
+ __decorate([
52
+ attr({ attribute: 'error-visible', mode: 'boolean' })
53
+ ], Select.prototype, "errorVisible", void 0);
45
54
  const nimbleSelect = Select.compose({
46
55
  baseName: 'select',
47
56
  baseClass: FoundationSelect,
48
57
  template,
49
58
  styles,
50
- indicator: arrowExpanderDown16X16.data
59
+ indicator: arrowExpanderDown16X16.data,
60
+ end: html `
61
+ <${DesignSystem.tagFor(IconExclamationMark)}
62
+ severity="error"
63
+ class="error-icon"
64
+ ></${DesignSystem.tagFor(IconExclamationMark)}>
65
+ ${errorTextTemplate}
66
+ `
51
67
  });
52
68
  DesignSystem.getOrCreate().withPrefix('nimble').register(nimbleSelect());
53
69
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/select/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EACH,YAAY,EACZ,MAAM,IAAI,gBAAgB,EAE1B,cAAc,IAAI,QAAQ,EAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAQhE;;GAEG;AACH,MAAM,OAAO,MAAO,SAAQ,gBAAgB;IAA5C;;QAEW,eAAU,GAAuB,kBAAkB,CAAC,SAAS,CAAC;IAqCzE,CAAC;IAnCG,+DAA+D;IAC/C,cAAc;QAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;YACnC,qDAAqD;YACrD,mDAAmD;YACnD,OAAO;SACV;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAED,+DAA+D;IAC/C,qBAAqB,CACjC,IAAe,EACf,IAAe;QAEf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACtB;IACL,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAEO,iCAAiC;QACrC,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAC1B,gCAAgC,EAChC,GAAG,IAAI,CAAC,SAAS,IAAI,CACxB,CAAC;SACL;IACL,CAAC;CACJ;AArCG;IADC,IAAI;0CACgE;AAuCzE,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAgB;IAC/C,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,gBAAgB;IAC3B,QAAQ;IACR,MAAM;IACN,SAAS,EAAE,sBAAsB,CAAC,IAAI;CACzC,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/select/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EACH,YAAY,EACZ,MAAM,IAAI,gBAAgB,EAE1B,cAAc,IAAI,QAAQ,EAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAQhE;;GAEG;AACH,MAAM,OAAO,MAAO,SAAQ,gBAAgB;IAA5C;;QAEW,eAAU,GAAuB,kBAAkB,CAAC,SAAS,CAAC;QAa9D,iBAAY,GAAG,KAAK,CAAC;IAqChC,CAAC;IAnCG,+DAA+D;IAC/C,cAAc;QAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;YACnC,qDAAqD;YACrD,mDAAmD;YACnD,OAAO;SACV;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAED,+DAA+D;IAC/C,qBAAqB,CACjC,IAAe,EACf,IAAe;QAEf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;SACtB;IACL,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAEO,iCAAiC;QACrC,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAC1B,gCAAgC,EAChC,GAAG,IAAI,CAAC,SAAS,IAAI,CACxB,CAAC;SACL;IACL,CAAC;CACJ;AAlDG;IADC,IAAI;0CACgE;AAUrE;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;yCACG;AAGrC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;4CAC1B;AAuChC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAgB;IAC/C,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,gBAAgB;IAC3B,QAAQ;IACR,MAAM;IACN,SAAS,EAAE,sBAAsB,CAAC,IAAI;IACtC,GAAG,EAAE,IAAI,CAAQ;WACV,YAAY,CAAC,MAAM,CAAC,mBAAmB,CAAC;;;aAGtC,YAAY,CAAC,MAAM,CAAC,mBAAmB,CAAC;UAC3C,iBAAiB;KACtB;CACJ,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC"}
@@ -1,6 +1,35 @@
1
1
  import { css } from '@microsoft/fast-element';
2
2
  import { styles as dropdownStyles } from '../patterns/dropdown/styles';
3
+ import { styles as errorStyles } from '../patterns/error/styles';
4
+ import { borderWidth } from '../theme-provider/design-tokens';
5
+ import { appearanceBehavior } from '../utilities/style/appearance';
6
+ import { DropdownAppearance } from './types';
3
7
  export const styles = css `
4
8
  ${dropdownStyles}
5
- `;
9
+ ${errorStyles}
10
+
11
+ ${
12
+ /* We are using flex `order` to define the visual ordering of the selected value,
13
+ error icon, and dropdown arrow because they are not "interactive" i.e. part of the tab order */ ''}
14
+ [part='selected-value'] {
15
+ order: 1;
16
+ }
17
+
18
+ [part='indicator'] {
19
+ order: 3;
20
+ }
21
+
22
+ .error-icon {
23
+ order: 2;
24
+ }
25
+
26
+ .end {
27
+ display: contents;
28
+ }
29
+ `.withBehaviors(appearanceBehavior(DropdownAppearance.block, css `
30
+ :host([error-visible]) .control {
31
+ border-bottom-width: ${borderWidth};
32
+ padding-bottom: 0;
33
+ }
34
+ `));
6
35
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/select/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAEvE,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,cAAc;CACnB,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/select/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,cAAc;MACd,WAAW;;MAEX;AACE;gGACgG,CAAC,EACrG;;;;;;;;;;;;;;;;CAgBH,CAAC,aAAa,CACX,kBAAkB,CACd,kBAAkB,CAAC,KAAK,EACxB,GAAG,CAAA;;uCAE4B,WAAW;;;SAGzC,CACJ,CACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-components",
3
- "version": "14.0.0",
3
+ "version": "15.1.0",
4
4
  "description": "Styled web components for the NI Nimble Design System",
5
5
  "scripts": {
6
6
  "build": "npm run generate-icons && npm run build-components && npm run bundle-components && npm run generate-scss && npm run build-storybook",
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/radio-button/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,IAAI,eAAe,EACxB,aAAa,IAAI,QAAQ,EACzB,YAAY,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAQlC;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAe;CAAG;AAEnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAe;IACxD,QAAQ,EAAE,cAAc;IACxB,SAAS,EAAE,eAAe;IAC1B,QAAQ;IACR,MAAM;IACN,gBAAgB,EAAE,iBAAiB,CAAC,IAAI;CAC3C,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/radio-button/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EACH,qBAAqB,EACrB,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,aAAa,EACb,QAAQ,EACR,UAAU,EACb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;MACnB,OAAO,CAAC,aAAa,CAAC;;;gBAGZ,eAAe;;;;;;;;;;;;sBAYT,aAAa;uBACZ,aAAa;;;kBAGlB,WAAW,UAAU,WAAW;;;;;iCAKjB,UAAU;UACjC;AACE;;;GAGG,CAAC,EACR;;;;;iCAKyB,qBAAqB;6BACzB,qBAAqB;;;;wBAI1B,gBAAgB;kCACN,WAAW,IAAI,gBAAgB;;;YAGrD,YAAY;wBACA,gBAAgB;;;YAG5B,YAAY;;;4BAGI,aAAa;6BACZ,aAAa;4BACd,gBAAgB;;;;;;iBAM3B,aAAa;;;;;;iBAMb,qBAAqB;;;;;;;;kBAQpB,QAAQ;iBACT,QAAQ;;;;;;;;;gBAST,WAAW;;;;qBAIN,qBAAqB;;CAEzC,CAAC"}