@openmrs/esm-framework 9.0.3-pre.4708 → 9.0.3-pre.4728
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/.turbo/turbo-build.log +1 -1
- package/docs/functions/matchLocale.md +62 -0
- package/docs/interfaces/OpenmrsDateRangePickerProps.md +11 -1
- package/docs/variables/OpenmrsDateRangePicker.md +1 -1
- package/mock-jest.tsx +1 -1
- package/mock.tsx +1 -1
- package/package.json +21 -21
- package/typedoc.json +1 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
[O3 Framework](../API.md) / matchLocale
|
|
2
|
+
|
|
3
|
+
# Function: matchLocale()
|
|
4
|
+
|
|
5
|
+
> **matchLocale**(`requested`, `available`, `fallback?`): `undefined` \| `string`
|
|
6
|
+
|
|
7
|
+
Defined in: [packages/framework/esm-utils/src/match-locale.ts:53](https://github.com/openmrs/openmrs-esm-core/blob/main/packages/framework/esm-utils/src/match-locale.ts#L53)
|
|
8
|
+
|
|
9
|
+
Resolves a requested locale against a list of available locales using the
|
|
10
|
+
BCP 47 lookup algorithm (RFC 4647, §3.4).
|
|
11
|
+
|
|
12
|
+
Tags are compared in canonical form via Intl.Locale, so casing and
|
|
13
|
+
underscore-vs-hyphen differences in the inputs do not affect matching. The
|
|
14
|
+
value returned is taken verbatim from `available`, preserving the caller's
|
|
15
|
+
original casing.
|
|
16
|
+
|
|
17
|
+
In addition to the truncation steps prescribed by RFC 4647, this function
|
|
18
|
+
also performs prefix expansion at each level: when the requested tag is
|
|
19
|
+
truncated to a more general range (e.g. `en` after stripping `en-CA`), any
|
|
20
|
+
available locale whose canonical form begins with that range plus a hyphen
|
|
21
|
+
(e.g. `en-US`, `en-GB`) is treated as a match. This is a relaxation of the
|
|
22
|
+
strict lookup algorithm but typically reflects user intent — a user who
|
|
23
|
+
asked for `en-CA` will usually accept `en-US` over a non-English fallback.
|
|
24
|
+
|
|
25
|
+
Tags that fail to parse are skipped with a console warning; they never match
|
|
26
|
+
and never throw.
|
|
27
|
+
|
|
28
|
+
## Parameters
|
|
29
|
+
|
|
30
|
+
### requested
|
|
31
|
+
|
|
32
|
+
The locale the caller would like to use, or `null`/`undefined`
|
|
33
|
+
if no preference is known.
|
|
34
|
+
|
|
35
|
+
`undefined` | `null` | `string`
|
|
36
|
+
|
|
37
|
+
### available
|
|
38
|
+
|
|
39
|
+
readonly `string`[]
|
|
40
|
+
|
|
41
|
+
The list of locales the application supports.
|
|
42
|
+
|
|
43
|
+
### fallback?
|
|
44
|
+
|
|
45
|
+
`string`
|
|
46
|
+
|
|
47
|
+
The value to return when no match is found. Defaults to
|
|
48
|
+
`undefined`.
|
|
49
|
+
|
|
50
|
+
## Returns
|
|
51
|
+
|
|
52
|
+
`undefined` \| `string`
|
|
53
|
+
|
|
54
|
+
The matched locale from `available`, or `fallback` if nothing matches.
|
|
55
|
+
|
|
56
|
+
## Example
|
|
57
|
+
|
|
58
|
+
```ts
|
|
59
|
+
matchLocale('en-CA', ['en-US', 'en-GB', 'fr-FR'], 'en-US'); // => 'en-US'
|
|
60
|
+
matchLocale('fr-BE', ['en-US', 'fr-FR', 'de-DE'], 'en-US'); // => 'fr-FR'
|
|
61
|
+
matchLocale('zh-Hant-TW', ['zh-Hant', 'zh-Hans', 'en'], 'en'); // => 'zh-Hant'
|
|
62
|
+
```
|
|
@@ -716,6 +716,16 @@ By default, this is determined by the user's locale.
|
|
|
716
716
|
|
|
717
717
|
***
|
|
718
718
|
|
|
719
|
+
### size?
|
|
720
|
+
|
|
721
|
+
> `optional` **size**: `"sm"` \| `"md"` \| `"lg"`
|
|
722
|
+
|
|
723
|
+
Defined in: [packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx:36](https://github.com/openmrs/openmrs-esm-core/blob/main/packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx#L36)
|
|
724
|
+
|
|
725
|
+
Specifies the size of the input. Currently supports either `sm`, `md`, or `lg` as an option
|
|
726
|
+
|
|
727
|
+
***
|
|
728
|
+
|
|
719
729
|
### slot?
|
|
720
730
|
|
|
721
731
|
> `optional` **slot**: `null` \| `string`
|
|
@@ -812,6 +822,6 @@ or invalid via ARIA.
|
|
|
812
822
|
|
|
813
823
|
> `optional` **value**: \[`DateInputValue`, `DateInputValue`\]
|
|
814
824
|
|
|
815
|
-
Defined in: [packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx:
|
|
825
|
+
Defined in: [packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx:38](https://github.com/openmrs/openmrs-esm-core/blob/main/packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx#L38)
|
|
816
826
|
|
|
817
827
|
The value (controlled)
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
> `const` **OpenmrsDateRangePicker**: `ForwardRefExoticComponent`\<[`OpenmrsDateRangePickerProps`](../interfaces/OpenmrsDateRangePickerProps.md) & `RefAttributes`\<`HTMLDivElement`\>\>
|
|
6
6
|
|
|
7
|
-
Defined in: [packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx:
|
|
7
|
+
Defined in: [packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx:44](https://github.com/openmrs/openmrs-esm-core/blob/main/packages/framework/esm-styleguide/src/datepicker/openmrs-date-range-picker.component.tsx#L44)
|
|
8
8
|
|
|
9
9
|
A date range picker to enter or select a date and time range. Based on React Aria, but styled to look like Carbon.
|
package/mock-jest.tsx
CHANGED
|
@@ -17,7 +17,7 @@ export * from '@openmrs/esm-state/mock';
|
|
|
17
17
|
export * from '@openmrs/esm-styleguide/mock';
|
|
18
18
|
export * from '@openmrs/esm-translations/mock';
|
|
19
19
|
|
|
20
|
-
export { parseDate, formatDate, formatDatetime, formatTime, isOmrsDateToday } from '@openmrs/esm-utils';
|
|
20
|
+
export { parseDate, formatDate, formatDatetime, formatTime, isOmrsDateToday, matchLocale } from '@openmrs/esm-utils';
|
|
21
21
|
|
|
22
22
|
/* esm-globals */
|
|
23
23
|
|
package/mock.tsx
CHANGED
|
@@ -18,7 +18,7 @@ export * from '@openmrs/esm-state/mock';
|
|
|
18
18
|
export * from '@openmrs/esm-styleguide/mock';
|
|
19
19
|
export * from '@openmrs/esm-translations/mock';
|
|
20
20
|
|
|
21
|
-
export { parseDate, formatDate, formatDatetime, formatTime, isOmrsDateToday } from '@openmrs/esm-utils';
|
|
21
|
+
export { parseDate, formatDate, formatDatetime, formatTime, isOmrsDateToday, matchLocale } from '@openmrs/esm-utils';
|
|
22
22
|
|
|
23
23
|
/* esm-globals */
|
|
24
24
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openmrs/esm-framework",
|
|
3
|
-
"version": "9.0.3-pre.
|
|
3
|
+
"version": "9.0.3-pre.4728",
|
|
4
4
|
"license": "MPL-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
},
|
|
29
29
|
"source": true,
|
|
30
30
|
"scripts": {
|
|
31
|
-
"document": "../../../document.sh
|
|
31
|
+
"document": "../../../tools/document.sh",
|
|
32
32
|
"test": "cross-env TZ=UTC vitest run --passWithNoTests",
|
|
33
33
|
"test:watch": "cross-env TZ=UTC vitest watch",
|
|
34
34
|
"coverage": "cross-env TZ=UTC vitest run --coverage --passWithNoTests",
|
|
@@ -59,24 +59,24 @@
|
|
|
59
59
|
"access": "public"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@openmrs/esm-api": "9.0.3-pre.
|
|
63
|
-
"@openmrs/esm-config": "9.0.3-pre.
|
|
64
|
-
"@openmrs/esm-context": "9.0.3-pre.
|
|
65
|
-
"@openmrs/esm-dynamic-loading": "9.0.3-pre.
|
|
66
|
-
"@openmrs/esm-emr-api": "9.0.3-pre.
|
|
67
|
-
"@openmrs/esm-error-handling": "9.0.3-pre.
|
|
68
|
-
"@openmrs/esm-expression-evaluator": "9.0.3-pre.
|
|
69
|
-
"@openmrs/esm-extensions": "9.0.3-pre.
|
|
70
|
-
"@openmrs/esm-feature-flags": "9.0.3-pre.
|
|
71
|
-
"@openmrs/esm-globals": "9.0.3-pre.
|
|
72
|
-
"@openmrs/esm-navigation": "9.0.3-pre.
|
|
73
|
-
"@openmrs/esm-offline": "9.0.3-pre.
|
|
74
|
-
"@openmrs/esm-react-utils": "9.0.3-pre.
|
|
75
|
-
"@openmrs/esm-routes": "9.0.3-pre.
|
|
76
|
-
"@openmrs/esm-state": "9.0.3-pre.
|
|
77
|
-
"@openmrs/esm-styleguide": "9.0.3-pre.
|
|
78
|
-
"@openmrs/esm-translations": "9.0.3-pre.
|
|
79
|
-
"@openmrs/esm-utils": "9.0.3-pre.
|
|
62
|
+
"@openmrs/esm-api": "9.0.3-pre.4728",
|
|
63
|
+
"@openmrs/esm-config": "9.0.3-pre.4728",
|
|
64
|
+
"@openmrs/esm-context": "9.0.3-pre.4728",
|
|
65
|
+
"@openmrs/esm-dynamic-loading": "9.0.3-pre.4728",
|
|
66
|
+
"@openmrs/esm-emr-api": "9.0.3-pre.4728",
|
|
67
|
+
"@openmrs/esm-error-handling": "9.0.3-pre.4728",
|
|
68
|
+
"@openmrs/esm-expression-evaluator": "9.0.3-pre.4728",
|
|
69
|
+
"@openmrs/esm-extensions": "9.0.3-pre.4728",
|
|
70
|
+
"@openmrs/esm-feature-flags": "9.0.3-pre.4728",
|
|
71
|
+
"@openmrs/esm-globals": "9.0.3-pre.4728",
|
|
72
|
+
"@openmrs/esm-navigation": "9.0.3-pre.4728",
|
|
73
|
+
"@openmrs/esm-offline": "9.0.3-pre.4728",
|
|
74
|
+
"@openmrs/esm-react-utils": "9.0.3-pre.4728",
|
|
75
|
+
"@openmrs/esm-routes": "9.0.3-pre.4728",
|
|
76
|
+
"@openmrs/esm-state": "9.0.3-pre.4728",
|
|
77
|
+
"@openmrs/esm-styleguide": "9.0.3-pre.4728",
|
|
78
|
+
"@openmrs/esm-translations": "9.0.3-pre.4728",
|
|
79
|
+
"@openmrs/esm-utils": "9.0.3-pre.4728"
|
|
80
80
|
},
|
|
81
81
|
"peerDependencies": {
|
|
82
82
|
"dayjs": "1.x",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"swr": "2.x"
|
|
90
90
|
},
|
|
91
91
|
"devDependencies": {
|
|
92
|
-
"@openmrs/typedoc-plugin-file-categories": "9.0.3-pre.
|
|
92
|
+
"@openmrs/typedoc-plugin-file-categories": "9.0.3-pre.4728",
|
|
93
93
|
"@swc/cli": "0.8.1",
|
|
94
94
|
"@swc/core": "1.15.21",
|
|
95
95
|
"@vitest/coverage-v8": "^4.1.2",
|
package/typedoc.json
CHANGED