@ni/nimble-components 29.3.7 → 29.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/dist/all-components-bundle.js +328 -248
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +2732 -2686
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/label-provider/core/index.d.ts +3 -0
- package/dist/esm/label-provider/core/index.js +6 -2
- package/dist/esm/label-provider/core/index.js.map +1 -1
- package/dist/esm/label-provider/core/label-token-defaults.js +2 -1
- package/dist/esm/label-provider/core/label-token-defaults.js.map +1 -1
- package/dist/esm/label-provider/core/label-tokens.d.ts +1 -0
- package/dist/esm/label-provider/core/label-tokens.js +4 -0
- package/dist/esm/label-provider/core/label-tokens.js.map +1 -1
- package/dist/esm/list-option/index.d.ts +1 -0
- package/dist/esm/list-option/index.js +11 -2
- package/dist/esm/list-option/index.js.map +1 -1
- package/dist/esm/select/index.d.ts +3 -1
- package/dist/esm/select/index.js +36 -16
- package/dist/esm/select/index.js.map +1 -1
- package/dist/esm/select/styles.js +33 -1
- package/dist/esm/select/styles.js.map +1 -1
- package/dist/esm/select/template.js +13 -3
- package/dist/esm/select/template.js.map +1 -1
- package/dist/esm/select/testing/select.pageobject.d.ts +1 -0
- package/dist/esm/select/testing/select.pageobject.js +3 -0
- package/dist/esm/select/testing/select.pageobject.js.map +1 -1
- package/dist/esm/select/types.d.ts +4 -0
- package/dist/esm/select/types.js +2 -1
- package/dist/esm/select/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -13,6 +13,7 @@ declare const supportedLabels: {
|
|
|
13
13
|
readonly popupIconInformation: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
14
14
|
readonly filterSearch: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
15
15
|
readonly filterNoResults: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
16
|
+
readonly loading: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
16
17
|
};
|
|
17
18
|
/**
|
|
18
19
|
* Core label provider for Nimble
|
|
@@ -26,6 +27,7 @@ export declare class LabelProviderCore extends LabelProviderBase<typeof supporte
|
|
|
26
27
|
popupIconInformation: string | undefined;
|
|
27
28
|
filterSearch: string | undefined;
|
|
28
29
|
filterNoResults: string | undefined;
|
|
30
|
+
loading: string | undefined;
|
|
29
31
|
protected readonly supportedLabels: {
|
|
30
32
|
readonly popupDismiss: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
31
33
|
readonly numericDecrement: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
@@ -35,6 +37,7 @@ export declare class LabelProviderCore extends LabelProviderBase<typeof supporte
|
|
|
35
37
|
readonly popupIconInformation: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
36
38
|
readonly filterSearch: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
37
39
|
readonly filterNoResults: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
40
|
+
readonly loading: import("@microsoft/fast-foundation").DesignToken<string>;
|
|
38
41
|
};
|
|
39
42
|
}
|
|
40
43
|
export declare const labelProviderCoreTag = "nimble-label-provider-core";
|
|
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import { attr } from '@microsoft/fast-element';
|
|
3
3
|
import { DesignSystem } from '@microsoft/fast-foundation';
|
|
4
4
|
import { LabelProviderBase } from '../base';
|
|
5
|
-
import { popupDismissLabel, numericDecrementLabel, numericIncrementLabel, popupIconErrorLabel, popupIconWarningLabel, popupIconInformationLabel, filterSearchLabel, filterNoResultsLabel } from './label-tokens';
|
|
5
|
+
import { popupDismissLabel, numericDecrementLabel, numericIncrementLabel, popupIconErrorLabel, popupIconWarningLabel, popupIconInformationLabel, filterSearchLabel, filterNoResultsLabel, loadingLabel } from './label-tokens';
|
|
6
6
|
import { styles } from '../base/styles';
|
|
7
7
|
const supportedLabels = {
|
|
8
8
|
popupDismiss: popupDismissLabel,
|
|
@@ -12,7 +12,8 @@ const supportedLabels = {
|
|
|
12
12
|
popupIconWarning: popupIconWarningLabel,
|
|
13
13
|
popupIconInformation: popupIconInformationLabel,
|
|
14
14
|
filterSearch: filterSearchLabel,
|
|
15
|
-
filterNoResults: filterNoResultsLabel
|
|
15
|
+
filterNoResults: filterNoResultsLabel,
|
|
16
|
+
loading: loadingLabel
|
|
16
17
|
};
|
|
17
18
|
/**
|
|
18
19
|
* Core label provider for Nimble
|
|
@@ -47,6 +48,9 @@ __decorate([
|
|
|
47
48
|
__decorate([
|
|
48
49
|
attr({ attribute: 'filter-no-results' })
|
|
49
50
|
], LabelProviderCore.prototype, "filterNoResults", void 0);
|
|
51
|
+
__decorate([
|
|
52
|
+
attr({ attribute: 'loading' })
|
|
53
|
+
], LabelProviderCore.prototype, "loading", void 0);
|
|
50
54
|
const nimbleLabelProviderCore = LabelProviderCore.compose({
|
|
51
55
|
baseName: 'label-provider-core',
|
|
52
56
|
styles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/label-provider/core/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAmB,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EACH,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/label-provider/core/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAmB,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EACH,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,yBAAyB,EACzB,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAQxC,MAAM,eAAe,GAAG;IACpB,YAAY,EAAE,iBAAiB;IAC/B,gBAAgB,EAAE,qBAAqB;IACvC,gBAAgB,EAAE,qBAAqB;IACvC,cAAc,EAAE,mBAAmB;IACnC,gBAAgB,EAAE,qBAAqB;IACvC,oBAAoB,EAAE,yBAAyB;IAC/C,YAAY,EAAE,iBAAiB;IAC/B,eAAe,EAAE,oBAAoB;IACrC,OAAO,EAAE,YAAY;CACf,CAAC;AAEX;;GAEG;AACH,MAAM,OAAO,iBACT,SAAQ,iBAAyC;IADrD;;QA8BgC,oBAAe,GAAG,eAAe,CAAC;IAClE,CAAC;CAAA;AA3BU;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;uDACG;AAGjC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;2DACG;AAGrC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;2DACG;AAGrC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC;yDACE;AAGnC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC;2DACE;AAGrC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,wBAAwB,EAAE,CAAC;+DACE;AAGzC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;uDACG;AAGjC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;0DACE;AAGpC;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;kDACI;AAKvC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,OAAO,CAAC;IACtD,QAAQ,EAAE,qBAAqB;IAC/B,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE;KACrB,UAAU,CAAC,QAAQ,CAAC;KACpB,QAAQ,CAAC,uBAAuB,EAAE,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,4BAA4B,CAAC","sourcesContent":["import { attr } from '@microsoft/fast-element';\nimport { DesignSystem } from '@microsoft/fast-foundation';\nimport { DesignTokensFor, LabelProviderBase } from '../base';\nimport {\n popupDismissLabel,\n numericDecrementLabel,\n numericIncrementLabel,\n popupIconErrorLabel,\n popupIconWarningLabel,\n popupIconInformationLabel,\n filterSearchLabel,\n filterNoResultsLabel,\n loadingLabel\n} from './label-tokens';\nimport { styles } from '../base/styles';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-label-provider-core': LabelProviderCore;\n }\n}\n\nconst supportedLabels = {\n popupDismiss: popupDismissLabel,\n numericDecrement: numericDecrementLabel,\n numericIncrement: numericIncrementLabel,\n popupIconError: popupIconErrorLabel,\n popupIconWarning: popupIconWarningLabel,\n popupIconInformation: popupIconInformationLabel,\n filterSearch: filterSearchLabel,\n filterNoResults: filterNoResultsLabel,\n loading: loadingLabel\n} as const;\n\n/**\n * Core label provider for Nimble\n */\nexport class LabelProviderCore\n extends LabelProviderBase<typeof supportedLabels>\n implements DesignTokensFor<typeof supportedLabels> {\n @attr({ attribute: 'popup-dismiss' })\n public popupDismiss: string | undefined;\n\n @attr({ attribute: 'numeric-decrement' })\n public numericDecrement: string | undefined;\n\n @attr({ attribute: 'numeric-increment' })\n public numericIncrement: string | undefined;\n\n @attr({ attribute: 'popup-icon-error' })\n public popupIconError: string | undefined;\n\n @attr({ attribute: 'popup-icon-warning' })\n public popupIconWarning: string | undefined;\n\n @attr({ attribute: 'popup-icon-information' })\n public popupIconInformation: string | undefined;\n\n @attr({ attribute: 'filter-search' })\n public filterSearch: string | undefined;\n\n @attr({ attribute: 'filter-no-results' })\n public filterNoResults: string | undefined;\n\n @attr({ attribute: 'loading' })\n public loading: string | undefined;\n\n protected override readonly supportedLabels = supportedLabels;\n}\n\nconst nimbleLabelProviderCore = LabelProviderCore.compose({\n baseName: 'label-provider-core',\n styles\n});\n\nDesignSystem.getOrCreate()\n .withPrefix('nimble')\n .register(nimbleLabelProviderCore());\nexport const labelProviderCoreTag = 'nimble-label-provider-core';\n"]}
|
|
@@ -6,6 +6,7 @@ export const coreLabelDefaults = {
|
|
|
6
6
|
popupIconWarningLabel: 'Warning',
|
|
7
7
|
popupIconInformationLabel: 'Information',
|
|
8
8
|
filterSearchLabel: 'Search',
|
|
9
|
-
filterNoResultsLabel: 'No items found'
|
|
9
|
+
filterNoResultsLabel: 'No items found',
|
|
10
|
+
loadingLabel: 'Loading…'
|
|
10
11
|
};
|
|
11
12
|
//# sourceMappingURL=label-token-defaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"label-token-defaults.js","sourceRoot":"","sources":["../../../../src/label-provider/core/label-token-defaults.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,iBAAiB,GAA4C;IACtE,iBAAiB,EAAE,OAAO;IAC1B,qBAAqB,EAAE,WAAW;IAClC,qBAAqB,EAAE,WAAW;IAClC,mBAAmB,EAAE,OAAO;IAC5B,qBAAqB,EAAE,SAAS;IAChC,yBAAyB,EAAE,aAAa;IACxC,iBAAiB,EAAE,QAAQ;IAC3B,oBAAoB,EAAE,gBAAgB;
|
|
1
|
+
{"version":3,"file":"label-token-defaults.js","sourceRoot":"","sources":["../../../../src/label-provider/core/label-token-defaults.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,iBAAiB,GAA4C;IACtE,iBAAiB,EAAE,OAAO;IAC1B,qBAAqB,EAAE,WAAW;IAClC,qBAAqB,EAAE,WAAW;IAClC,mBAAmB,EAAE,OAAO;IAC5B,qBAAqB,EAAE,SAAS;IAChC,yBAAyB,EAAE,aAAa;IACxC,iBAAiB,EAAE,QAAQ;IAC3B,oBAAoB,EAAE,gBAAgB;IACtC,YAAY,EAAE,UAAU;CAC3B,CAAC","sourcesContent":["import type * as TokensNamespace from './label-tokens';\n\ntype TokenName = keyof typeof TokensNamespace;\n\nexport const coreLabelDefaults: { readonly [key in TokenName]: string } = {\n popupDismissLabel: 'Close',\n numericIncrementLabel: 'Increment',\n numericDecrementLabel: 'Decrement',\n popupIconErrorLabel: 'Error',\n popupIconWarningLabel: 'Warning',\n popupIconInformationLabel: 'Information',\n filterSearchLabel: 'Search',\n filterNoResultsLabel: 'No items found',\n loadingLabel: 'Loading…'\n};\n"]}
|
|
@@ -7,3 +7,4 @@ export declare const popupIconWarningLabel: DesignToken<string>;
|
|
|
7
7
|
export declare const popupIconInformationLabel: DesignToken<string>;
|
|
8
8
|
export declare const filterSearchLabel: DesignToken<string>;
|
|
9
9
|
export declare const filterNoResultsLabel: DesignToken<string>;
|
|
10
|
+
export declare const loadingLabel: DesignToken<string>;
|
|
@@ -32,4 +32,8 @@ export const filterNoResultsLabel = DesignToken.create({
|
|
|
32
32
|
name: 'filter-no-results-label',
|
|
33
33
|
cssCustomPropertyName: null
|
|
34
34
|
}).withDefault(coreLabelDefaults.filterNoResultsLabel);
|
|
35
|
+
export const loadingLabel = DesignToken.create({
|
|
36
|
+
name: 'loading-label',
|
|
37
|
+
cssCustomPropertyName: null
|
|
38
|
+
}).withDefault(coreLabelDefaults.loadingLabel);
|
|
35
39
|
//# sourceMappingURL=label-tokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"label-tokens.js","sourceRoot":"","sources":["../../../../src/label-provider/core/label-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAS;IACxD,IAAI,EAAE,qBAAqB;IAC3B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC5D,IAAI,EAAE,yBAAyB;IAC/B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC5D,IAAI,EAAE,yBAAyB;IAC/B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC1D,IAAI,EAAE,wBAAwB;IAC9B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC5D,IAAI,EAAE,0BAA0B;IAChC,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,yBAAyB,GAAG,WAAW,CAAC,MAAM,CAAS;IAChE,IAAI,EAAE,8BAA8B;IACpC,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;AAE5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAS;IACxD,IAAI,EAAE,qBAAqB;IAC3B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC3D,IAAI,EAAE,yBAAyB;IAC/B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC","sourcesContent":["import { DesignToken } from '@microsoft/fast-foundation';\nimport { coreLabelDefaults } from './label-token-defaults';\n\nexport const popupDismissLabel = DesignToken.create<string>({\n name: 'popup-dismiss-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupDismissLabel);\n\nexport const numericDecrementLabel = DesignToken.create<string>({\n name: 'numeric-decrement-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.numericDecrementLabel);\n\nexport const numericIncrementLabel = DesignToken.create<string>({\n name: 'numeric-increment-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.numericIncrementLabel);\n\nexport const popupIconErrorLabel = DesignToken.create<string>({\n name: 'popup-icon-error-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupIconErrorLabel);\n\nexport const popupIconWarningLabel = DesignToken.create<string>({\n name: 'popup-icon-warning-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupIconWarningLabel);\n\nexport const popupIconInformationLabel = DesignToken.create<string>({\n name: 'popup-icon-information-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupIconInformationLabel);\n\nexport const filterSearchLabel = DesignToken.create<string>({\n name: 'filter-search-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.filterSearchLabel);\n\nexport const filterNoResultsLabel = DesignToken.create<string>({\n name: 'filter-no-results-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.filterNoResultsLabel);\n"]}
|
|
1
|
+
{"version":3,"file":"label-tokens.js","sourceRoot":"","sources":["../../../../src/label-provider/core/label-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAS;IACxD,IAAI,EAAE,qBAAqB;IAC3B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC5D,IAAI,EAAE,yBAAyB;IAC/B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC5D,IAAI,EAAE,yBAAyB;IAC/B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC1D,IAAI,EAAE,wBAAwB;IAC9B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAEtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC5D,IAAI,EAAE,0BAA0B;IAChC,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,yBAAyB,GAAG,WAAW,CAAC,MAAM,CAAS;IAChE,IAAI,EAAE,8BAA8B;IACpC,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;AAE5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAS;IACxD,IAAI,EAAE,qBAAqB;IAC3B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAS;IAC3D,IAAI,EAAE,yBAAyB;IAC/B,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;AAEvD,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAS;IACnD,IAAI,EAAE,eAAe;IACrB,qBAAqB,EAAE,IAAI;CAC9B,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC","sourcesContent":["import { DesignToken } from '@microsoft/fast-foundation';\nimport { coreLabelDefaults } from './label-token-defaults';\n\nexport const popupDismissLabel = DesignToken.create<string>({\n name: 'popup-dismiss-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupDismissLabel);\n\nexport const numericDecrementLabel = DesignToken.create<string>({\n name: 'numeric-decrement-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.numericDecrementLabel);\n\nexport const numericIncrementLabel = DesignToken.create<string>({\n name: 'numeric-increment-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.numericIncrementLabel);\n\nexport const popupIconErrorLabel = DesignToken.create<string>({\n name: 'popup-icon-error-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupIconErrorLabel);\n\nexport const popupIconWarningLabel = DesignToken.create<string>({\n name: 'popup-icon-warning-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupIconWarningLabel);\n\nexport const popupIconInformationLabel = DesignToken.create<string>({\n name: 'popup-icon-information-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.popupIconInformationLabel);\n\nexport const filterSearchLabel = DesignToken.create<string>({\n name: 'filter-search-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.filterSearchLabel);\n\nexport const filterNoResultsLabel = DesignToken.create<string>({\n name: 'filter-no-results-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.filterNoResultsLabel);\n\nexport const loadingLabel = DesignToken.create<string>({\n name: 'loading-label',\n cssCustomPropertyName: null\n}).withDefault(coreLabelDefaults.loadingLabel);\n"]}
|
|
@@ -41,6 +41,7 @@ export declare class ListOption extends FoundationListboxOption {
|
|
|
41
41
|
/** @internal */
|
|
42
42
|
get elementTextContent(): string;
|
|
43
43
|
connectedCallback(): void;
|
|
44
|
+
private getListOptionOwner;
|
|
44
45
|
private isListOptionOwner;
|
|
45
46
|
}
|
|
46
47
|
export declare const listOptionTag = "nimble-list-option";
|
|
@@ -47,9 +47,18 @@ export class ListOption extends FoundationListboxOption {
|
|
|
47
47
|
}
|
|
48
48
|
connectedCallback() {
|
|
49
49
|
super.connectedCallback();
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
const owner = this.getListOptionOwner();
|
|
51
|
+
owner?.registerOption(this);
|
|
52
|
+
}
|
|
53
|
+
getListOptionOwner() {
|
|
54
|
+
let parent = this.parentElement;
|
|
55
|
+
while (parent) {
|
|
56
|
+
if (this.isListOptionOwner(parent)) {
|
|
57
|
+
return parent;
|
|
58
|
+
}
|
|
59
|
+
parent = parent.parentElement;
|
|
52
60
|
}
|
|
61
|
+
return undefined;
|
|
53
62
|
}
|
|
54
63
|
isListOptionOwner(parent) {
|
|
55
64
|
if (!parent) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/list-option/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,YAAY,EACZ,aAAa,IAAI,uBAAuB,EAC3C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAStC;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,uBAAuB;IAAvD;;QAII;;;;;;;WAOG;QAEa,WAAM,GAAG,KAAK,CAAC;QAE/B;;;;;;WAMG;QAEI,mBAAc,GAAG,KAAK,CAAC;QAE9B;;;;;;;WAOG;QAEI,iBAAY,GAAG,KAAK,CAAC;QAE5B,gBAAgB;QAET,gBAAW,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/list-option/index.ts"],"names":[],"mappings":";AAAA,OAAO,EACH,YAAY,EACZ,aAAa,IAAI,uBAAuB,EAC3C,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAStC;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,uBAAuB;IAAvD;;QAII;;;;;;;WAOG;QAEa,WAAM,GAAG,KAAK,CAAC;QAE/B;;;;;;WAMG;QAEI,mBAAc,GAAG,KAAK,CAAC;QAE9B;;;;;;;WAOG;QAEI,iBAAY,GAAG,KAAK,CAAC;QAE5B,gBAAgB;QAET,gBAAW,GAAG,KAAK,CAAC;IAuC/B,CAAC;IArCG,gBAAgB;IAChB,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,WAAW;aAClB,aAAa,EAAE;aACf,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;aACrC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAEe,iBAAiB;QAC7B,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,kBAAkB;QACtB,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;QAEhC,OAAO,MAAM,EAAE;YACX,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE;gBAChC,OAAO,MAAM,CAAC;aACjB;YAED,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;SACjC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEO,iBAAiB,CACrB,MAA0B;QAE1B,IAAI,CAAC,MAAM,EAAE;YACT,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,OAAQ,MAA0B,CAAC,cAAc,KAAK,UAAU,CAAC;IAC5E,CAAC;CACJ;AAhEmB;IADf,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;0CACK;AAUxB;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;kDAC1B;AAWvB;IADN,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;gDAC1B;AAIrB;IADN,UAAU;+CACgB;AAyC/B,MAAM,gBAAgB,GAAG,UAAU,CAAC,OAAO,CAAC;IACxC,QAAQ,EAAE,aAAa;IACvB,SAAS,EAAE,uBAAuB;IAClC,QAAQ;IACR,MAAM;CACT,CAAC,CAAC;AAEH,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,aAAa,GAAG,oBAAoB,CAAC","sourcesContent":["import {\n DesignSystem,\n ListboxOption as FoundationListboxOption\n} from '@microsoft/fast-foundation';\nimport { observable, attr } from '@microsoft/fast-element';\nimport { styles } from './styles';\nimport { template } from './template';\nimport type { ListOptionOwner } from '../patterns/dropdown/types';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nimble-list-option': ListOption;\n }\n}\n\n/**\n * A nimble-styled HTML listbox option\n */\nexport class ListOption extends FoundationListboxOption {\n /** @internal */\n public contentSlot!: HTMLSlotElement;\n\n /**\n * The hidden state of the element.\n *\n * @public\n * @defaultValue - false\n * @remarks\n * HTML Attribute: hidden\n */\n @attr({ mode: 'boolean' })\n public override hidden = false;\n\n /**\n * @internal\n * This attribute is required to allow use-cases that offer dynamic filtering\n * (like the Select) to visually hide options that are filtered out, but still\n * allow users to use the native 'hidden' attribute without it being affected\n * by the filtering process.\n */\n @attr({ attribute: 'visually-hidden', mode: 'boolean' })\n public visuallyHidden = false;\n\n /**\n * @internal\n * This attribute is used to control the visual selected state of an option. This\n * is handled independently of the public 'selected' attribute, as 'selected' is\n * representative of the current value of the container control. However, while\n * a dropdown is open users can navigate through the options (requiring visual\n * updates) without changing the value of the container control.\n */\n @attr({ attribute: 'active-option', mode: 'boolean' })\n public activeOption = false;\n\n /** @internal */\n @observable\n public hasOverflow = false;\n\n /** @internal */\n public get elementTextContent(): string {\n return this.contentSlot\n .assignedNodes()\n .map(node => node.textContent?.trim())\n .join(' ');\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n const owner = this.getListOptionOwner();\n owner?.registerOption(this);\n }\n\n private getListOptionOwner(): ListOptionOwner | undefined {\n let parent = this.parentElement;\n\n while (parent) {\n if (this.isListOptionOwner(parent)) {\n return parent;\n }\n\n parent = parent.parentElement;\n }\n\n return undefined;\n }\n\n private isListOptionOwner(\n parent: HTMLElement | null\n ): parent is ListOptionOwner {\n if (!parent) {\n return false;\n }\n\n return typeof (parent as ListOptionOwner).registerOption === 'function';\n }\n}\n\nconst nimbleListOption = ListOption.compose({\n baseName: 'list-option',\n baseClass: FoundationListboxOption,\n template,\n styles\n});\n\nDesignSystem.getOrCreate().withPrefix('nimble').register(nimbleListOption());\nexport const listOptionTag = 'nimble-list-option';\n"]}
|
|
@@ -32,6 +32,7 @@ export declare class Select extends FormAssociatedSelect implements ErrorPattern
|
|
|
32
32
|
errorVisible: boolean;
|
|
33
33
|
filterMode: FilterMode;
|
|
34
34
|
clearable: boolean;
|
|
35
|
+
loadingVisible: boolean;
|
|
35
36
|
/**
|
|
36
37
|
* @internal
|
|
37
38
|
*/
|
|
@@ -160,7 +161,7 @@ export declare class Select extends FormAssociatedSelect implements ErrorPattern
|
|
|
160
161
|
/**
|
|
161
162
|
* @internal
|
|
162
163
|
*/
|
|
163
|
-
|
|
164
|
+
ignoreClickHandler(e: MouseEvent): void;
|
|
164
165
|
/**
|
|
165
166
|
* @internal
|
|
166
167
|
*/
|
|
@@ -302,6 +303,7 @@ export declare class Select extends FormAssociatedSelect implements ErrorPattern
|
|
|
302
303
|
*/
|
|
303
304
|
private setProxyOptions;
|
|
304
305
|
private filterChanged;
|
|
306
|
+
private emitFilterInputEvent;
|
|
305
307
|
private maxHeightChanged;
|
|
306
308
|
private initializeOpenState;
|
|
307
309
|
private updateListboxMaxHeightCssVariable;
|
package/dist/esm/select/index.js
CHANGED
|
@@ -31,6 +31,7 @@ export class Select extends FormAssociatedSelect {
|
|
|
31
31
|
this.errorVisible = false;
|
|
32
32
|
this.filterMode = FilterMode.none;
|
|
33
33
|
this.clearable = false;
|
|
34
|
+
this.loadingVisible = false;
|
|
34
35
|
/**
|
|
35
36
|
* @internal
|
|
36
37
|
*/
|
|
@@ -292,8 +293,8 @@ export class Select extends FormAssociatedSelect {
|
|
|
292
293
|
/**
|
|
293
294
|
* @internal
|
|
294
295
|
*/
|
|
295
|
-
|
|
296
|
-
e.stopPropagation();
|
|
296
|
+
ignoreClickHandler(e) {
|
|
297
|
+
e.stopPropagation();
|
|
297
298
|
}
|
|
298
299
|
/**
|
|
299
300
|
* @internal
|
|
@@ -326,19 +327,24 @@ export class Select extends FormAssociatedSelect {
|
|
|
326
327
|
*/
|
|
327
328
|
inputHandler(e) {
|
|
328
329
|
this.filter = this.filterInput?.value ?? '';
|
|
329
|
-
this.
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
330
|
+
if (this.filterMode === FilterMode.standard) {
|
|
331
|
+
this.filterOptions();
|
|
332
|
+
const enabledOptions = this.filteredOptions.filter(o => !o.disabled);
|
|
333
|
+
let activeOptionIndex = this.filter !== ''
|
|
334
|
+
? this.openActiveIndex ?? this.selectedIndex
|
|
335
|
+
: this.selectedIndex;
|
|
336
|
+
if (enabledOptions.length > 0
|
|
337
|
+
&& !enabledOptions.find(o => o === this.options[activeOptionIndex])) {
|
|
338
|
+
activeOptionIndex = this.options.indexOf(enabledOptions[0]);
|
|
339
|
+
}
|
|
340
|
+
else if (enabledOptions.length === 0) {
|
|
341
|
+
activeOptionIndex = -1;
|
|
342
|
+
}
|
|
343
|
+
this.setActiveOption(activeOptionIndex);
|
|
344
|
+
}
|
|
345
|
+
if (this.filterMode !== FilterMode.none) {
|
|
346
|
+
this.emitFilterInputEvent();
|
|
347
|
+
}
|
|
342
348
|
if (e.inputType.includes('deleteContent') || !this.filter.length) {
|
|
343
349
|
return true;
|
|
344
350
|
}
|
|
@@ -614,6 +620,9 @@ export class Select extends FormAssociatedSelect {
|
|
|
614
620
|
if (this.filterInput) {
|
|
615
621
|
this.filterInput.value = '';
|
|
616
622
|
}
|
|
623
|
+
if (this.filterMode !== FilterMode.none) {
|
|
624
|
+
this.emitFilterInputEvent();
|
|
625
|
+
}
|
|
617
626
|
this.ariaControls = '';
|
|
618
627
|
this.ariaExpanded = 'false';
|
|
619
628
|
}
|
|
@@ -812,7 +821,9 @@ export class Select extends FormAssociatedSelect {
|
|
|
812
821
|
if (option.hidden) {
|
|
813
822
|
return true;
|
|
814
823
|
}
|
|
815
|
-
return
|
|
824
|
+
return this.filterMode === FilterMode.standard
|
|
825
|
+
? !this.filterMatchesText(option.text)
|
|
826
|
+
: false;
|
|
816
827
|
}
|
|
817
828
|
filterMatchesText(text) {
|
|
818
829
|
const filter = this.filter.toLowerCase();
|
|
@@ -911,6 +922,12 @@ export class Select extends FormAssociatedSelect {
|
|
|
911
922
|
filterChanged() {
|
|
912
923
|
this.filterOptions();
|
|
913
924
|
}
|
|
925
|
+
emitFilterInputEvent() {
|
|
926
|
+
const eventDetail = {
|
|
927
|
+
filterText: this.filter
|
|
928
|
+
};
|
|
929
|
+
this.$emit('filter-input', eventDetail, { bubbles: true });
|
|
930
|
+
}
|
|
914
931
|
maxHeightChanged() {
|
|
915
932
|
this.updateListboxMaxHeightCssVariable();
|
|
916
933
|
}
|
|
@@ -945,6 +962,9 @@ __decorate([
|
|
|
945
962
|
__decorate([
|
|
946
963
|
attr({ attribute: 'clearable', mode: 'boolean' })
|
|
947
964
|
], Select.prototype, "clearable", void 0);
|
|
965
|
+
__decorate([
|
|
966
|
+
attr({ attribute: 'loading-visible', mode: 'boolean' })
|
|
967
|
+
], Select.prototype, "loadingVisible", void 0);
|
|
948
968
|
__decorate([
|
|
949
969
|
observable
|
|
950
970
|
], Select.prototype, "displayPlaceholder", void 0);
|