@ni/nimble-components 21.0.4 → 21.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.
- package/dist/all-components-bundle.js +300 -132
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +1276 -1265
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/rich-text/base/index.d.ts +19 -3
- package/dist/esm/rich-text/base/index.js +40 -14
- package/dist/esm/rich-text/base/index.js.map +1 -1
- package/dist/esm/rich-text/base/types.d.ts +5 -0
- package/dist/esm/rich-text/base/types.js +2 -0
- package/dist/esm/rich-text/base/types.js.map +1 -0
- package/dist/esm/rich-text/editor/index.d.ts +2 -6
- package/dist/esm/rich-text/editor/index.js +12 -16
- package/dist/esm/rich-text/editor/index.js.map +1 -1
- package/dist/esm/rich-text/models/markdown-parser-mention-configuration.d.ts +0 -1
- package/dist/esm/rich-text/models/markdown-parser-mention-configuration.js +0 -4
- package/dist/esm/rich-text/models/markdown-parser-mention-configuration.js.map +1 -1
- package/dist/esm/rich-text/models/mention-extension-configuration.d.ts +0 -1
- package/dist/esm/rich-text/models/mention-extension-configuration.js +0 -3
- package/dist/esm/rich-text/models/mention-extension-configuration.js.map +1 -1
- package/dist/esm/rich-text/models/rich-text-tracker.d.ts +19 -0
- package/dist/esm/rich-text/models/rich-text-tracker.js +59 -0
- package/dist/esm/rich-text/models/rich-text-tracker.js.map +1 -0
- package/dist/esm/rich-text/models/rich-text-validator.d.ts +15 -0
- package/dist/esm/rich-text/models/rich-text-validator.js +33 -0
- package/dist/esm/rich-text/models/rich-text-validator.js.map +1 -0
- package/dist/esm/table-column/number-text/index.js +9 -23
- package/dist/esm/table-column/number-text/index.js.map +1 -1
- package/dist/esm/table-column/number-text/models/number-text-unit-format.d.ts +23 -0
- package/dist/esm/table-column/number-text/models/number-text-unit-format.js +82 -0
- package/dist/esm/table-column/number-text/models/number-text-unit-format.js.map +1 -0
- package/dist/esm/utilities/unit-format/decimal-unit-format.d.ts +2 -3
- package/dist/esm/utilities/unit-format/default-unit-format.d.ts +6 -2
- package/dist/esm/utilities/unit-format/default-unit-format.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { UnitFormat } from '../../../utilities/unit-format/unit-format';
|
|
2
|
+
import { passthroughUnitScale } from '../../../utilities/unit-format/unit-scale/passthrough-unit-scale';
|
|
3
|
+
import { NumberTextFormat } from '../types';
|
|
4
|
+
import { DefaultUnitFormat } from '../../../utilities/unit-format/default-unit-format';
|
|
5
|
+
import { DecimalUnitFormat } from '../../../utilities/unit-format/decimal-unit-format';
|
|
6
|
+
/**
|
|
7
|
+
* Format for numbers (with optional units) in a number-text table column.
|
|
8
|
+
*/
|
|
9
|
+
export class NumberTextUnitFormat extends UnitFormat {
|
|
10
|
+
constructor(locale, options) {
|
|
11
|
+
super();
|
|
12
|
+
this._resolvedOptions = this.resolveOptions(options);
|
|
13
|
+
this.resolvedUnitFormat = this.resolveUnitFormat(locale, this._resolvedOptions);
|
|
14
|
+
}
|
|
15
|
+
resolvedOptions() {
|
|
16
|
+
return { ...this._resolvedOptions };
|
|
17
|
+
}
|
|
18
|
+
optionsMatch(targetOptions) {
|
|
19
|
+
const targetResolvedOptions = this.resolveOptions(targetOptions);
|
|
20
|
+
return (this._resolvedOptions.decimalDigits
|
|
21
|
+
=== targetResolvedOptions.decimalDigits
|
|
22
|
+
&& this._resolvedOptions.decimalMaximumDigits
|
|
23
|
+
=== targetResolvedOptions.decimalMaximumDigits
|
|
24
|
+
&& this._resolvedOptions.numberTextFormat
|
|
25
|
+
=== targetResolvedOptions.numberTextFormat
|
|
26
|
+
&& this._resolvedOptions.unitScale === targetResolvedOptions.unitScale);
|
|
27
|
+
}
|
|
28
|
+
tryFormat(number) {
|
|
29
|
+
return this.resolvedUnitFormat.format(number);
|
|
30
|
+
}
|
|
31
|
+
resolveUnitFormat(locale, options) {
|
|
32
|
+
const { numberTextFormat, decimalMaximumDigits, decimalDigits, unitScale } = options;
|
|
33
|
+
if (numberTextFormat === NumberTextFormat.default) {
|
|
34
|
+
return new DefaultUnitFormat(locale, {
|
|
35
|
+
unitScale
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
if (typeof decimalDigits === 'number') {
|
|
39
|
+
return new DecimalUnitFormat(locale, {
|
|
40
|
+
minimumFractionDigits: decimalDigits,
|
|
41
|
+
maximumFractionDigits: decimalDigits,
|
|
42
|
+
unitScale
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
return new DecimalUnitFormat(locale, {
|
|
46
|
+
minimumFractionDigits: 0,
|
|
47
|
+
maximumFractionDigits: decimalMaximumDigits,
|
|
48
|
+
unitScale
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
resolveOptions(options) {
|
|
52
|
+
if (!options || options.numberTextFormat === NumberTextFormat.default) {
|
|
53
|
+
return {
|
|
54
|
+
numberTextFormat: NumberTextFormat.default,
|
|
55
|
+
decimalDigits: undefined,
|
|
56
|
+
decimalMaximumDigits: undefined,
|
|
57
|
+
unitScale: options?.unitScale ?? passthroughUnitScale
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
const hasDecimalDigits = typeof options.decimalDigits === 'number';
|
|
61
|
+
const hasDecimalMaximumDigits = typeof options.decimalMaximumDigits === 'number';
|
|
62
|
+
if (hasDecimalDigits && hasDecimalMaximumDigits) {
|
|
63
|
+
throw new Error('decimalDigits and decimalMaximumDigits are mutually exclusive. Do not specify both.');
|
|
64
|
+
}
|
|
65
|
+
if (!hasDecimalDigits && !hasDecimalMaximumDigits) {
|
|
66
|
+
return {
|
|
67
|
+
numberTextFormat: NumberTextFormat.decimal,
|
|
68
|
+
decimalDigits: NumberTextUnitFormat.defaultDecimalDigits,
|
|
69
|
+
decimalMaximumDigits: undefined,
|
|
70
|
+
unitScale: options.unitScale ?? passthroughUnitScale
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
return {
|
|
74
|
+
numberTextFormat: NumberTextFormat.decimal,
|
|
75
|
+
decimalDigits: options.decimalDigits,
|
|
76
|
+
decimalMaximumDigits: options.decimalMaximumDigits,
|
|
77
|
+
unitScale: options.unitScale ?? passthroughUnitScale
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
NumberTextUnitFormat.defaultDecimalDigits = 2;
|
|
82
|
+
//# sourceMappingURL=number-text-unit-format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"number-text-unit-format.js","sourceRoot":"","sources":["../../../../../src/table-column/number-text/models/number-text-unit-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { UnitFormat, UnitFormatOptions } from './unit-format';
|
|
2
|
-
import type { UnitScale } from './unit-scale/unit-scale';
|
|
3
2
|
interface DecimalUnitFormatOptions extends UnitFormatOptions {
|
|
4
3
|
minimumFractionDigits?: number;
|
|
5
4
|
maximumFractionDigits?: number;
|
|
6
|
-
unitScale?: UnitScale;
|
|
7
5
|
}
|
|
6
|
+
declare type ResolvedDecimalUnitFormatOptions = Required<DecimalUnitFormatOptions>;
|
|
8
7
|
/**
|
|
9
8
|
* Format for decimal numbers with units.
|
|
10
9
|
*/
|
|
@@ -15,7 +14,7 @@ export declare class DecimalUnitFormat extends UnitFormat<DecimalUnitFormatOptio
|
|
|
15
14
|
private readonly scaledUnitFormatters;
|
|
16
15
|
private readonly tenPowDecimalDigits;
|
|
17
16
|
constructor(locale: string, { minimumFractionDigits, maximumFractionDigits, unitScale }?: DecimalUnitFormatOptions);
|
|
18
|
-
resolvedOptions():
|
|
17
|
+
resolvedOptions(): ResolvedDecimalUnitFormatOptions;
|
|
19
18
|
protected tryFormat(number: number): string;
|
|
20
19
|
private willRoundToZero;
|
|
21
20
|
}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { UnitFormat, UnitFormatOptions } from './unit-format';
|
|
2
|
+
interface DefaultUnitFormatOptions extends UnitFormatOptions {
|
|
3
|
+
}
|
|
4
|
+
declare type ResolvedDefaultUnitFormatOptions = Required<DefaultUnitFormatOptions>;
|
|
2
5
|
/**
|
|
3
6
|
* Format for numbers with units to show in a tabular form.
|
|
4
7
|
* Large and tiny numbers are shown exponentially and the rest as decimal.
|
|
@@ -14,8 +17,9 @@ export declare class DefaultUnitFormat extends UnitFormat {
|
|
|
14
17
|
private readonly leadingZeroScaledUnitFormatters;
|
|
15
18
|
private readonly exponentialIntlNumberFormatOptions;
|
|
16
19
|
private readonly exponentialScaledUnitFormatter;
|
|
17
|
-
constructor(locale: string, { unitScale }?:
|
|
18
|
-
resolvedOptions():
|
|
20
|
+
constructor(locale: string, { unitScale }?: DefaultUnitFormatOptions);
|
|
21
|
+
resolvedOptions(): ResolvedDefaultUnitFormatOptions;
|
|
19
22
|
protected tryFormat(number: number): string;
|
|
20
23
|
private resolveNumberStyle;
|
|
21
24
|
}
|
|
25
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-unit-format.js","sourceRoot":"","sources":["../../../../src/utilities/unit-format/default-unit-format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAqB,MAAM,eAAe,CAAC;AAG9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"default-unit-format.js","sourceRoot":"","sources":["../../../../src/utilities/unit-format/default-unit-format.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ni/nimble-components",
|
|
3
|
-
"version": "21.0
|
|
3
|
+
"version": "21.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",
|