@sprawlify/solid 0.0.106 → 0.0.107
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/{alert-dialog-anatomy-DviOSpRG.d.ts → alert-dialog-anatomy-B6loNyCs.d.ts} +1 -1
- package/dist/{carousel-anatomy-Cgncj4px.d.ts → carousel-anatomy-zm_3AkEb.d.ts} +1 -1
- package/dist/{checkbox-anatomy-Og29Ch0M.d.ts → checkbox-anatomy-OTXuBLEd.d.ts} +1 -1
- package/dist/{collapsible-BLXaEYy1.js → collapsible-CqDl0d8N.js} +1 -1
- package/dist/{collapsible-FZ1DI91d.jsx → collapsible-DhguH1Yh.jsx} +1 -1
- package/dist/{color-picker-anatomy-D1wJIemo.d.ts → color-picker-anatomy-CjTwpq36.d.ts} +1 -1
- package/dist/combobox-anatomy-Blxrou1S.d.ts +6 -0
- package/dist/components/accordion/index.d.ts +13 -13
- package/dist/components/accordion/index.js +2 -2
- package/dist/components/accordion/index.jsx +2 -2
- package/dist/components/alert-dialog/index.d.ts +18 -18
- package/dist/components/alert-dialog/index.js +2 -2
- package/dist/components/alert-dialog/index.jsx +2 -2
- package/dist/components/anatomy.d.ts +11 -11
- package/dist/components/angle-slider/index.d.ts +19 -19
- package/dist/components/angle-slider/index.js +1 -1
- package/dist/components/angle-slider/index.jsx +1 -1
- package/dist/components/aspect-ratio/index.d.ts +7 -7
- package/dist/components/aspect-ratio/index.js +1 -1
- package/dist/components/aspect-ratio/index.jsx +1 -1
- package/dist/components/avatar/index.d.ts +9 -9
- package/dist/components/avatar/index.js +1 -1
- package/dist/components/avatar/index.jsx +1 -1
- package/dist/components/bottom-sheet/index.d.ts +16 -16
- package/dist/components/bottom-sheet/index.js +1 -1
- package/dist/components/bottom-sheet/index.jsx +1 -1
- package/dist/components/carousel/index.d.ts +26 -26
- package/dist/components/carousel/index.js +1 -1
- package/dist/components/carousel/index.jsx +1 -1
- package/dist/components/checkbox/index.d.ts +18 -18
- package/dist/components/checkbox/index.js +3 -3
- package/dist/components/checkbox/index.jsx +3 -3
- package/dist/components/clipboard/index.d.ts +17 -17
- package/dist/components/clipboard/index.js +1 -1
- package/dist/components/clipboard/index.jsx +1 -1
- package/dist/components/collapsible/index.d.ts +11 -11
- package/dist/components/collapsible/index.js +2 -2
- package/dist/components/collapsible/index.jsx +2 -2
- package/dist/components/collection/index.d.ts +1 -1
- package/dist/components/color-picker/index.d.ts +60 -60
- package/dist/components/color-picker/index.js +3 -3
- package/dist/components/color-picker/index.jsx +6 -4
- package/dist/components/combobox/index.d.ts +36 -36
- package/dist/components/combobox/index.js +3 -3
- package/dist/components/combobox/index.jsx +3 -3
- package/dist/components/date-picker/index.d.ts +55 -55
- package/dist/components/date-picker/index.js +1 -1
- package/dist/components/date-picker/index.jsx +7 -3
- package/dist/components/dialog/index.d.ts +16 -16
- package/dist/components/dialog/index.js +1 -1
- package/dist/components/dialog/index.jsx +1 -1
- package/dist/components/download-trigger/index.d.ts +2 -2
- package/dist/components/download-trigger/index.js +1 -1
- package/dist/components/download-trigger/index.jsx +1 -1
- package/dist/components/dropdown-menu/index.d.ts +40 -40
- package/dist/components/dropdown-menu/index.js +1 -1
- package/dist/components/dropdown-menu/index.jsx +1 -1
- package/dist/components/editable/index.d.ts +21 -21
- package/dist/components/editable/index.js +3 -3
- package/dist/components/editable/index.jsx +3 -3
- package/dist/components/field/index.d.ts +44 -44
- package/dist/components/field/index.js +3 -3
- package/dist/components/field/index.jsx +3 -3
- package/dist/components/fieldset/index.d.ts +18 -18
- package/dist/components/fieldset/index.js +2 -2
- package/dist/components/fieldset/index.jsx +2 -2
- package/dist/components/file-upload/index.d.ts +30 -30
- package/dist/components/file-upload/index.js +3 -3
- package/dist/components/file-upload/index.jsx +6 -4
- package/dist/components/floating-panel/index.d.ts +25 -25
- package/dist/components/floating-panel/index.js +1 -1
- package/dist/components/floating-panel/index.jsx +1 -1
- package/dist/components/focus-trap/index.d.ts +3 -3
- package/dist/components/format/index.d.ts +3 -3
- package/dist/components/format/index.js +1 -1
- package/dist/components/format/index.jsx +1 -1
- package/dist/components/frame/index.js +1 -1
- package/dist/components/frame/index.jsx +1 -1
- package/dist/components/highlight/index.d.ts +1 -1
- package/dist/components/hover-card/index.d.ts +12 -12
- package/dist/components/hover-card/index.js +1 -1
- package/dist/components/hover-card/index.jsx +1 -1
- package/dist/components/image-cropper/index.d.ts +15 -15
- package/dist/components/image-cropper/index.js +1 -1
- package/dist/components/image-cropper/index.jsx +1 -1
- package/dist/components/json-tree-view/index.d.ts +3 -3
- package/dist/components/json-tree-view/index.js +3 -3
- package/dist/components/json-tree-view/index.jsx +3 -3
- package/dist/components/listbox/index.d.ts +27 -27
- package/dist/components/listbox/index.js +1 -1
- package/dist/components/listbox/index.jsx +4 -2
- package/dist/components/marquee/index.d.ts +13 -13
- package/dist/components/marquee/index.js +1 -1
- package/dist/components/marquee/index.jsx +1 -1
- package/dist/components/navigation-menu/index.d.ts +25 -25
- package/dist/components/navigation-menu/index.js +1 -1
- package/dist/components/navigation-menu/index.jsx +1 -1
- package/dist/components/number-input/index.d.ts +19 -19
- package/dist/components/number-input/index.js +3 -3
- package/dist/components/number-input/index.jsx +3 -3
- package/dist/components/pagination/index.d.ts +17 -17
- package/dist/components/pagination/index.js +1 -1
- package/dist/components/pagination/index.jsx +1 -1
- package/dist/components/password-input/index.d.ts +15 -15
- package/dist/components/password-input/index.js +3 -3
- package/dist/components/password-input/index.jsx +3 -3
- package/dist/components/pin-input/index.d.ts +13 -13
- package/dist/components/pin-input/index.js +3 -3
- package/dist/components/pin-input/index.jsx +3 -3
- package/dist/components/popover/index.d.ts +22 -22
- package/dist/components/popover/index.js +1 -1
- package/dist/components/popover/index.jsx +1 -1
- package/dist/components/presence/index.d.ts +1 -1
- package/dist/components/progress/index.d.ts +21 -21
- package/dist/components/progress/index.js +1 -1
- package/dist/components/progress/index.jsx +1 -1
- package/dist/components/qr-code/index.d.ts +13 -13
- package/dist/components/qr-code/index.js +1 -1
- package/dist/components/qr-code/index.jsx +1 -1
- package/dist/components/radio-group/index.d.ts +17 -17
- package/dist/components/radio-group/index.js +2 -2
- package/dist/components/radio-group/index.jsx +2 -2
- package/dist/components/rating-group/index.d.ts +13 -13
- package/dist/components/rating-group/index.js +3 -3
- package/dist/components/rating-group/index.jsx +3 -3
- package/dist/components/scroll-area/index.d.ts +15 -15
- package/dist/components/scroll-area/index.js +1 -1
- package/dist/components/scroll-area/index.jsx +1 -1
- package/dist/components/segment-group/index.d.ts +18 -18
- package/dist/components/segment-group/index.js +1 -1
- package/dist/components/segment-group/index.jsx +1 -1
- package/dist/components/select/index.d.ts +37 -37
- package/dist/components/select/index.js +3 -3
- package/dist/components/select/index.jsx +3 -3
- package/dist/components/separator/index.d.ts +5 -5
- package/dist/components/separator/index.js +1 -1
- package/dist/components/separator/index.jsx +1 -1
- package/dist/components/signature-pad/index.d.ts +17 -17
- package/dist/components/signature-pad/index.js +3 -3
- package/dist/components/signature-pad/index.jsx +6 -4
- package/dist/components/slider/index.d.ts +25 -25
- package/dist/components/slider/index.js +1 -1
- package/dist/components/slider/index.jsx +4 -2
- package/dist/components/splitter/index.d.ts +11 -11
- package/dist/components/splitter/index.js +1 -1
- package/dist/components/splitter/index.jsx +1 -1
- package/dist/components/steps/index.d.ts +25 -25
- package/dist/components/steps/index.js +1 -1
- package/dist/components/steps/index.jsx +1 -1
- package/dist/components/switch/index.d.ts +13 -13
- package/dist/components/switch/index.js +3 -3
- package/dist/components/switch/index.jsx +3 -3
- package/dist/components/tabs/index.d.ts +13 -13
- package/dist/components/tabs/index.js +1 -1
- package/dist/components/tabs/index.jsx +1 -1
- package/dist/components/tags-input/index.d.ts +25 -25
- package/dist/components/tags-input/index.js +3 -3
- package/dist/components/tags-input/index.jsx +3 -3
- package/dist/components/timer/index.d.ts +15 -15
- package/dist/components/timer/index.js +1 -1
- package/dist/components/timer/index.jsx +1 -1
- package/dist/components/toast/index.d.ts +12 -12
- package/dist/components/toast/index.js +1 -1
- package/dist/components/toast/index.jsx +1 -1
- package/dist/components/toggle/index.d.ts +4 -4
- package/dist/components/toggle-group/index.d.ts +7 -7
- package/dist/components/toggle-group/index.js +1 -1
- package/dist/components/toggle-group/index.jsx +1 -1
- package/dist/components/tooltip/index.d.ts +12 -12
- package/dist/components/tooltip/index.js +1 -1
- package/dist/components/tooltip/index.jsx +1 -1
- package/dist/components/tour/index.d.ts +27 -27
- package/dist/components/tour/index.js +1 -1
- package/dist/components/tour/index.jsx +10 -4
- package/dist/components/tree-view/index.d.ts +2 -2
- package/dist/components/tree-view/index.js +3 -3
- package/dist/components/tree-view/index.jsx +3 -3
- package/dist/{date-picker-anatomy-D8sBKGSF.d.ts → date-picker-anatomy-fajEN17J.d.ts} +1 -1
- package/dist/{field-DujBK584.jsx → field-Blp6NDsc.jsx} +2 -2
- package/dist/{field-DLS1xeZs.js → field-GL4C0tUr.js} +2 -2
- package/dist/{field-anatomy-DhMytzIn.d.ts → field-anatomy-DfP5AI6N.d.ts} +1 -1
- package/dist/{fieldset-CKY6kn04.js → fieldset-DQUqxXN2.js} +1 -1
- package/dist/{fieldset-D3jChLai.jsx → fieldset-Lbk9tsVV.jsx} +1 -1
- package/dist/{fieldset-anatomy-t2uR3tz-.d.ts → fieldset-anatomy-DF0TfPdv.d.ts} +1 -1
- package/dist/{index-ChrVCjVn.d.ts → index-BbGXwXgM.d.ts} +2 -2
- package/dist/index-CdpGOel-.d.ts +79 -0
- package/dist/index-D1ooJgqW.d.ts +79 -0
- package/dist/{index-BrsQp6SG.d.ts → index-DJkj8LZ-.d.ts} +34 -34
- package/dist/{index-CUS_uvKg.d.ts → index-Dho3m7QX.d.ts} +4 -4
- package/dist/{index-CQA-E34W.d.ts → index-DiSjSt81.d.ts} +34 -34
- package/dist/{index-NjH8Rhuh.d.ts → index-Ywo5uneC.d.ts} +4 -4
- package/dist/{index-BoZVuuyY.d.ts → index-ZHZGSdr3.d.ts} +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.jsx +2 -2
- package/dist/{listbox-anatomy-D-UZBHuH.d.ts → listbox-anatomy-BVkSa4nW.d.ts} +1 -1
- package/dist/providers-C-cHBiyk.jsx +187 -0
- package/dist/providers-vv33Jo9Q.js +201 -0
- package/dist/{segment-group-anatomy-DwgdyOB9.d.ts → segment-group-anatomy-D6Q31ASD.d.ts} +1 -1
- package/dist/{tour-anatomy-Dls73dW4.d.ts → tour-anatomy-BqYDrHGw.d.ts} +1 -1
- package/dist/{tree-view-Bqvwonpw.js → tree-view-DqjhHVfK.js} +2 -2
- package/dist/{tree-view-DWzZx1Um.jsx → tree-view-nwQzRTs2.jsx} +2 -2
- package/package.json +9 -8
- package/dist/combobox-anatomy-DhuifYOs.d.ts +0 -6
- package/dist/index-B-Vwy4xv.d.ts +0 -52
- package/dist/index-B3r6Uj67.d.ts +0 -52
- package/dist/providers-CEdBpdaX.js +0 -89
- package/dist/providers-DsAwxh4b.jsx +0 -75
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { t as runIfFn } from "./run-if-fn-BV7F-Eeb.js";
|
|
2
|
+
import { t as createContext$1 } from "./create-context-BEnzb67H.js";
|
|
3
|
+
import { Show, createMemo, createSignal } from "solid-js";
|
|
4
|
+
import { createComponent, memo, template, use } from "solid-js/web";
|
|
5
|
+
import { getDocument, getWindow } from "@sprawlify/primitives/dom-query";
|
|
6
|
+
import { createCollator, createFilter, isRTL } from "@sprawlify/primitives/i18n-utils";
|
|
7
|
+
//#region src/providers/environment/use-environment-context.ts
|
|
8
|
+
const [EnvironmentContextProvider, useEnvironmentContext] = createContext$1({
|
|
9
|
+
hookName: "useEnvironmentContext",
|
|
10
|
+
providerName: "<EnvironmentProvider />",
|
|
11
|
+
strict: false,
|
|
12
|
+
defaultValue: () => ({
|
|
13
|
+
getRootNode: () => document,
|
|
14
|
+
getDocument: () => document,
|
|
15
|
+
getWindow: () => window
|
|
16
|
+
})
|
|
17
|
+
});
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region src/providers/environment/environment-provider.tsx
|
|
20
|
+
var _tmpl$ = /* @__PURE__ */ template(`<span hidden>`);
|
|
21
|
+
const EnvironmentProvider = (props) => {
|
|
22
|
+
const [spanRef, setSpanRef] = createSignal();
|
|
23
|
+
const getRootNode = () => runIfFn(props.value) ?? spanRef()?.getRootNode() ?? document;
|
|
24
|
+
return createComponent(EnvironmentContextProvider, {
|
|
25
|
+
value: createMemo(() => ({
|
|
26
|
+
getRootNode,
|
|
27
|
+
getDocument: () => getDocument(getRootNode()),
|
|
28
|
+
getWindow: () => getWindow(getRootNode())
|
|
29
|
+
})),
|
|
30
|
+
get children() {
|
|
31
|
+
return [memo(() => props.children), createComponent(Show, {
|
|
32
|
+
get when() {
|
|
33
|
+
return !props.value;
|
|
34
|
+
},
|
|
35
|
+
get children() {
|
|
36
|
+
var _el$ = _tmpl$();
|
|
37
|
+
use(setSpanRef, _el$);
|
|
38
|
+
return _el$;
|
|
39
|
+
}
|
|
40
|
+
})];
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
};
|
|
44
|
+
//#endregion
|
|
45
|
+
//#region src/providers/locale/use-locale-context.ts
|
|
46
|
+
const [LocaleContextProvider, useLocaleContext] = createContext$1({
|
|
47
|
+
hookName: "useEnvironmentContext",
|
|
48
|
+
providerName: "<EnvironmentProvider />",
|
|
49
|
+
strict: false,
|
|
50
|
+
defaultValue: () => ({
|
|
51
|
+
dir: "ltr",
|
|
52
|
+
locale: "en-US"
|
|
53
|
+
})
|
|
54
|
+
});
|
|
55
|
+
//#endregion
|
|
56
|
+
//#region src/providers/locale/locale-provider.tsx
|
|
57
|
+
const LocaleProvider = (props) => {
|
|
58
|
+
return createComponent(LocaleContextProvider, {
|
|
59
|
+
value: createMemo(() => ({
|
|
60
|
+
locale: props.locale,
|
|
61
|
+
dir: isRTL(props.locale) ? "rtl" : "ltr"
|
|
62
|
+
})),
|
|
63
|
+
get children() {
|
|
64
|
+
return props.children;
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
//#endregion
|
|
69
|
+
//#region src/providers/locale/use-collator.ts
|
|
70
|
+
function useCollator(props = {}) {
|
|
71
|
+
const env = useLocaleContext();
|
|
72
|
+
const locale = () => props.locale ?? env().locale;
|
|
73
|
+
return createMemo(() => {
|
|
74
|
+
const { locale: _, ...options } = props;
|
|
75
|
+
return createCollator(locale(), options);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
//#endregion
|
|
79
|
+
//#region ../../node_modules/.pnpm/@internationalized+date@3.12.0/node_modules/@internationalized/date/dist/DateFormatter.mjs
|
|
80
|
+
let $fb18d541ea1ad717$var$formatterCache = /* @__PURE__ */ new Map();
|
|
81
|
+
var $fb18d541ea1ad717$export$ad991b66133851cf = class {
|
|
82
|
+
/** Formats a date as a string according to the locale and format options passed to the constructor. */ format(value) {
|
|
83
|
+
return this.formatter.format(value);
|
|
84
|
+
}
|
|
85
|
+
/** Formats a date to an array of parts such as separators, numbers, punctuation, and more. */ formatToParts(value) {
|
|
86
|
+
return this.formatter.formatToParts(value);
|
|
87
|
+
}
|
|
88
|
+
/** Formats a date range as a string. */ formatRange(start, end) {
|
|
89
|
+
if (typeof this.formatter.formatRange === "function") return this.formatter.formatRange(start, end);
|
|
90
|
+
if (end < start) throw new RangeError("End date must be >= start date");
|
|
91
|
+
return `${this.formatter.format(start)} \u{2013} ${this.formatter.format(end)}`;
|
|
92
|
+
}
|
|
93
|
+
/** Formats a date range as an array of parts. */ formatRangeToParts(start, end) {
|
|
94
|
+
if (typeof this.formatter.formatRangeToParts === "function") return this.formatter.formatRangeToParts(start, end);
|
|
95
|
+
if (end < start) throw new RangeError("End date must be >= start date");
|
|
96
|
+
let startParts = this.formatter.formatToParts(start);
|
|
97
|
+
let endParts = this.formatter.formatToParts(end);
|
|
98
|
+
return [
|
|
99
|
+
...startParts.map((p) => ({
|
|
100
|
+
...p,
|
|
101
|
+
source: "startRange"
|
|
102
|
+
})),
|
|
103
|
+
{
|
|
104
|
+
type: "literal",
|
|
105
|
+
value: " – ",
|
|
106
|
+
source: "shared"
|
|
107
|
+
},
|
|
108
|
+
...endParts.map((p) => ({
|
|
109
|
+
...p,
|
|
110
|
+
source: "endRange"
|
|
111
|
+
}))
|
|
112
|
+
];
|
|
113
|
+
}
|
|
114
|
+
/** Returns the resolved formatting options based on the values passed to the constructor. */ resolvedOptions() {
|
|
115
|
+
let resolvedOptions = this.formatter.resolvedOptions();
|
|
116
|
+
if ($fb18d541ea1ad717$var$hasBuggyResolvedHourCycle()) {
|
|
117
|
+
if (!this.resolvedHourCycle) this.resolvedHourCycle = $fb18d541ea1ad717$var$getResolvedHourCycle(resolvedOptions.locale, this.options);
|
|
118
|
+
resolvedOptions.hourCycle = this.resolvedHourCycle;
|
|
119
|
+
resolvedOptions.hour12 = this.resolvedHourCycle === "h11" || this.resolvedHourCycle === "h12";
|
|
120
|
+
}
|
|
121
|
+
if (resolvedOptions.calendar === "ethiopic-amete-alem") resolvedOptions.calendar = "ethioaa";
|
|
122
|
+
return resolvedOptions;
|
|
123
|
+
}
|
|
124
|
+
constructor(locale, options = {}) {
|
|
125
|
+
this.formatter = $fb18d541ea1ad717$var$getCachedDateFormatter(locale, options);
|
|
126
|
+
this.options = options;
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
const $fb18d541ea1ad717$var$hour12Preferences = {
|
|
130
|
+
true: { ja: "h11" },
|
|
131
|
+
false: {}
|
|
132
|
+
};
|
|
133
|
+
function $fb18d541ea1ad717$var$getCachedDateFormatter(locale, options = {}) {
|
|
134
|
+
if (typeof options.hour12 === "boolean" && $fb18d541ea1ad717$var$hasBuggyHour12Behavior()) {
|
|
135
|
+
options = { ...options };
|
|
136
|
+
let pref = $fb18d541ea1ad717$var$hour12Preferences[String(options.hour12)][locale.split("-")[0]];
|
|
137
|
+
let defaultHourCycle = options.hour12 ? "h12" : "h23";
|
|
138
|
+
options.hourCycle = pref !== null && pref !== void 0 ? pref : defaultHourCycle;
|
|
139
|
+
delete options.hour12;
|
|
140
|
+
}
|
|
141
|
+
let cacheKey = locale + (options ? Object.entries(options).sort((a, b) => a[0] < b[0] ? -1 : 1).join() : "");
|
|
142
|
+
if ($fb18d541ea1ad717$var$formatterCache.has(cacheKey)) return $fb18d541ea1ad717$var$formatterCache.get(cacheKey);
|
|
143
|
+
let numberFormatter = new Intl.DateTimeFormat(locale, options);
|
|
144
|
+
$fb18d541ea1ad717$var$formatterCache.set(cacheKey, numberFormatter);
|
|
145
|
+
return numberFormatter;
|
|
146
|
+
}
|
|
147
|
+
let $fb18d541ea1ad717$var$_hasBuggyHour12Behavior = null;
|
|
148
|
+
function $fb18d541ea1ad717$var$hasBuggyHour12Behavior() {
|
|
149
|
+
if ($fb18d541ea1ad717$var$_hasBuggyHour12Behavior == null) $fb18d541ea1ad717$var$_hasBuggyHour12Behavior = new Intl.DateTimeFormat("en-US", {
|
|
150
|
+
hour: "numeric",
|
|
151
|
+
hour12: false
|
|
152
|
+
}).format(new Date(2020, 2, 3, 0)) === "24";
|
|
153
|
+
return $fb18d541ea1ad717$var$_hasBuggyHour12Behavior;
|
|
154
|
+
}
|
|
155
|
+
let $fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle = null;
|
|
156
|
+
function $fb18d541ea1ad717$var$hasBuggyResolvedHourCycle() {
|
|
157
|
+
if ($fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle == null) $fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle = new Intl.DateTimeFormat("fr", {
|
|
158
|
+
hour: "numeric",
|
|
159
|
+
hour12: false
|
|
160
|
+
}).resolvedOptions().hourCycle === "h12";
|
|
161
|
+
return $fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle;
|
|
162
|
+
}
|
|
163
|
+
function $fb18d541ea1ad717$var$getResolvedHourCycle(locale, options) {
|
|
164
|
+
if (!options.timeStyle && !options.hour) return void 0;
|
|
165
|
+
locale = locale.replace(/(-u-)?-nu-[a-zA-Z0-9]+/, "");
|
|
166
|
+
locale += (locale.includes("-u-") ? "" : "-u") + "-nu-latn";
|
|
167
|
+
let formatter = $fb18d541ea1ad717$var$getCachedDateFormatter(locale, {
|
|
168
|
+
...options,
|
|
169
|
+
timeZone: void 0
|
|
170
|
+
});
|
|
171
|
+
let min = parseInt(formatter.formatToParts(new Date(2020, 2, 3, 0)).find((p) => p.type === "hour").value, 10);
|
|
172
|
+
let max = parseInt(formatter.formatToParts(new Date(2020, 2, 3, 23)).find((p) => p.type === "hour").value, 10);
|
|
173
|
+
if (min === 0 && max === 23) return "h23";
|
|
174
|
+
if (min === 24 && max === 23) return "h24";
|
|
175
|
+
if (min === 0 && max === 11) return "h11";
|
|
176
|
+
if (min === 12 && max === 11) return "h12";
|
|
177
|
+
throw new Error("Unexpected hour cycle result");
|
|
178
|
+
}
|
|
179
|
+
//#endregion
|
|
180
|
+
//#region src/providers/locale/use-date-formatter.ts
|
|
181
|
+
function useDateFormatter(props = {}) {
|
|
182
|
+
const env = useLocaleContext();
|
|
183
|
+
return createMemo(() => {
|
|
184
|
+
const resolvedProps = runIfFn(props);
|
|
185
|
+
const locale = resolvedProps.locale ?? env().locale;
|
|
186
|
+
const { locale: _, ...options } = resolvedProps;
|
|
187
|
+
return new $fb18d541ea1ad717$export$ad991b66133851cf(locale, options);
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
//#endregion
|
|
191
|
+
//#region src/providers/locale/use-filter.ts
|
|
192
|
+
function useFilter(props) {
|
|
193
|
+
const env = useLocaleContext();
|
|
194
|
+
const locale = createMemo(() => props.locale ?? env().locale);
|
|
195
|
+
return createMemo(() => createFilter({
|
|
196
|
+
...props,
|
|
197
|
+
locale: locale()
|
|
198
|
+
}));
|
|
199
|
+
}
|
|
200
|
+
//#endregion
|
|
201
|
+
export { useLocaleContext as a, LocaleProvider as i, useDateFormatter as n, EnvironmentProvider as o, useCollator as r, useEnvironmentContext as s, useFilter as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _sprawlify_primitives_anatomy0 from "@sprawlify/primitives/anatomy";
|
|
2
2
|
|
|
3
3
|
//#region src/components/segment-group/segment-group-anatomy.d.ts
|
|
4
|
-
declare const segmentGroupAnatomy: _sprawlify_primitives_anatomy0.Anatomy<"
|
|
4
|
+
declare const segmentGroupAnatomy: _sprawlify_primitives_anatomy0.Anatomy<"label" | "root" | "item" | "itemText" | "indicator" | "itemControl">;
|
|
5
5
|
//#endregion
|
|
6
6
|
export { segmentGroupAnatomy as t };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _sprawlify_primitives_anatomy0 from "@sprawlify/primitives/anatomy";
|
|
2
2
|
|
|
3
3
|
//#region src/components/tour/tour-anatomy.d.ts
|
|
4
|
-
declare const tourAnatomy: _sprawlify_primitives_anatomy0.AnatomyInstance<"
|
|
4
|
+
declare const tourAnatomy: _sprawlify_primitives_anatomy0.AnatomyInstance<"content" | "title" | "control" | "positioner" | "backdrop" | "description" | "closeTrigger" | "progressText" | "arrow" | "arrowTip" | "actionTrigger" | "spotlight">;
|
|
5
5
|
//#endregion
|
|
6
6
|
export { tourAnatomy as t };
|
|
@@ -2,11 +2,11 @@ import { t as __exportAll } from "./chunk-pbuEa-1d.js";
|
|
|
2
2
|
import { i as useMachine, n as normalizeProps, r as mergeProps$2 } from "./core-BHfpfUk-.js";
|
|
3
3
|
import { t as runIfFn } from "./run-if-fn-BV7F-Eeb.js";
|
|
4
4
|
import { t as createContext$1 } from "./create-context-BEnzb67H.js";
|
|
5
|
-
import {
|
|
5
|
+
import { a as useLocaleContext, s as useEnvironmentContext } from "./providers-vv33Jo9Q.js";
|
|
6
6
|
import { t as sprawlify } from "./factory-DORgzART.js";
|
|
7
7
|
import { t as createSplitProps } from "./create-split-props-OE-yOtGc.js";
|
|
8
8
|
import { n as splitRenderStrategyProps, r as useRenderStrategyContext, t as RenderStrategyProvider } from "./render-strategy-BAqQL-Hs.js";
|
|
9
|
-
import { a as CollapsibleRoot, c as CollapsibleContent } from "./collapsible-
|
|
9
|
+
import { a as CollapsibleRoot, c as CollapsibleContent } from "./collapsible-CqDl0d8N.js";
|
|
10
10
|
import { createMemo, createUniqueId } from "solid-js";
|
|
11
11
|
import { createComponent, mergeProps as mergeProps$1 } from "solid-js/web";
|
|
12
12
|
import * as treeView from "@sprawlify/primitives/machines/tree-view";
|
|
@@ -2,11 +2,11 @@ import { t as __exportAll } from "./chunk-pQxUBDkX.jsx";
|
|
|
2
2
|
import { i as useMachine, n as normalizeProps, r as mergeProps$1 } from "./core-DUR6M1Mz.jsx";
|
|
3
3
|
import { t as runIfFn } from "./run-if-fn-qkd0iQPO.jsx";
|
|
4
4
|
import { t as createContext$1 } from "./create-context-iBxaUhvx.jsx";
|
|
5
|
-
import {
|
|
5
|
+
import { a as useLocaleContext, s as useEnvironmentContext } from "./providers-C-cHBiyk.jsx";
|
|
6
6
|
import { t as sprawlify } from "./factory-B95XvEzz.jsx";
|
|
7
7
|
import { t as createSplitProps } from "./create-split-props-B2Gc7D9P.jsx";
|
|
8
8
|
import { n as splitRenderStrategyProps, r as useRenderStrategyContext, t as RenderStrategyProvider } from "./render-strategy-6LT04Ztx.jsx";
|
|
9
|
-
import { t as collapsible_exports } from "./collapsible-
|
|
9
|
+
import { t as collapsible_exports } from "./collapsible-DhguH1Yh.jsx";
|
|
10
10
|
import { createMemo, createUniqueId } from "solid-js";
|
|
11
11
|
import * as treeView from "@sprawlify/primitives/machines/tree-view";
|
|
12
12
|
import { anatomy as treeViewAnatomy } from "@sprawlify/primitives/machines/tree-view";
|
package/package.json
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sprawlify/solid",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"type": "module",
|
|
3
|
+
"version": "0.0.107",
|
|
5
4
|
"description": "Solid wrapper for primitives.",
|
|
5
|
+
"license": "MIT",
|
|
6
6
|
"author": "sprawlify <npm@sprawlify.com>",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist"
|
|
9
|
+
],
|
|
10
|
+
"type": "module",
|
|
7
11
|
"main": "./dist/index.js",
|
|
8
12
|
"module": "./dist/index.js",
|
|
9
13
|
"types": "./dist/index.d.ts",
|
|
@@ -324,15 +328,12 @@
|
|
|
324
328
|
"default": "./dist/components/tree-view/index.js"
|
|
325
329
|
}
|
|
326
330
|
},
|
|
327
|
-
"files": [
|
|
328
|
-
"dist"
|
|
329
|
-
],
|
|
330
331
|
"publishConfig": {
|
|
331
332
|
"access": "public"
|
|
332
333
|
},
|
|
333
334
|
"dependencies": {
|
|
334
335
|
"@solid-primitives/keyed": "^1.5.3",
|
|
335
|
-
"@sprawlify/primitives": "0.0.
|
|
336
|
+
"@sprawlify/primitives": "0.0.107"
|
|
336
337
|
},
|
|
337
338
|
"peerDependencies": {
|
|
338
339
|
"solid-js": ">=1.9.10"
|
|
@@ -340,10 +341,10 @@
|
|
|
340
341
|
"engines": {
|
|
341
342
|
"node": ">=24"
|
|
342
343
|
},
|
|
343
|
-
"license": "MIT",
|
|
344
344
|
"scripts": {
|
|
345
345
|
"build": "tsdown",
|
|
346
346
|
"typecheck": "tsc --noEmit",
|
|
347
|
-
"lint": "
|
|
347
|
+
"lint": "oxlint --fix",
|
|
348
|
+
"format": "oxfmt"
|
|
348
349
|
}
|
|
349
350
|
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as _sprawlify_primitives_anatomy0 from "@sprawlify/primitives/anatomy";
|
|
2
|
-
|
|
3
|
-
//#region src/components/combobox/combobox-anatomy.d.ts
|
|
4
|
-
declare const comboboxAnatomy: _sprawlify_primitives_anatomy0.AnatomyInstance<"root" | "control" | "item" | "itemGroup" | "trigger" | "positioner" | "content" | "label" | "input" | "itemIndicator" | "list" | "itemText" | "clearTrigger" | "itemGroupLabel" | "empty">;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { comboboxAnatomy as t };
|
package/dist/index-B-Vwy4xv.d.ts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import * as solid_js0 from "solid-js";
|
|
2
|
-
import { Accessor, Context, JSX, ParentProps } from "solid-js";
|
|
3
|
-
import { FilterOptions, FilterReturn, Locale } from "@sprawlify/primitives/i18n-utils";
|
|
4
|
-
|
|
5
|
-
//#region src/providers/environment/use-environment-context.d.ts
|
|
6
|
-
type RootNode = ShadowRoot | Document | Node;
|
|
7
|
-
interface UseEnvironmentContext {
|
|
8
|
-
getRootNode(): RootNode;
|
|
9
|
-
getDocument(): Document;
|
|
10
|
-
getWindow(): Window & typeof globalThis;
|
|
11
|
-
}
|
|
12
|
-
//#endregion
|
|
13
|
-
//#region src/providers/environment/environment-provider.d.ts
|
|
14
|
-
interface EnvironmentProviderProps {
|
|
15
|
-
children?: JSX.Element;
|
|
16
|
-
value?: RootNode | (() => RootNode);
|
|
17
|
-
}
|
|
18
|
-
declare const EnvironmentProvider: (props: EnvironmentProviderProps) => JSX.Element;
|
|
19
|
-
//#endregion
|
|
20
|
-
//#region src/providers/locale/locale-provider.d.ts
|
|
21
|
-
interface LocaleProviderProps extends ParentProps {
|
|
22
|
-
locale: string;
|
|
23
|
-
}
|
|
24
|
-
declare const LocaleProvider: (props: LocaleProviderProps) => solid_js0.JSX.Element;
|
|
25
|
-
//#endregion
|
|
26
|
-
//#region src/providers/locale/use-collator.d.ts
|
|
27
|
-
interface UseCollatorProps extends Intl.CollatorOptions {
|
|
28
|
-
locale?: string;
|
|
29
|
-
}
|
|
30
|
-
interface UseCollatorReturn extends Accessor<Intl.Collator> {}
|
|
31
|
-
declare function useCollator(props?: UseCollatorProps): UseCollatorReturn;
|
|
32
|
-
//#endregion
|
|
33
|
-
//#region src/providers/locale/use-filter.d.ts
|
|
34
|
-
interface UseFilterProps extends FilterOptions {}
|
|
35
|
-
declare function useFilter(props: UseFilterProps): UseFilterReturn;
|
|
36
|
-
interface UseFilterReturn extends Accessor<FilterReturn> {}
|
|
37
|
-
//#endregion
|
|
38
|
-
//#region src/providers/locale/use-locale-context.d.ts
|
|
39
|
-
interface UseLocaleContext extends Accessor<Locale> {}
|
|
40
|
-
//#endregion
|
|
41
|
-
//#region src/utils/create-context.d.ts
|
|
42
|
-
interface CreateContextOptions<T> {
|
|
43
|
-
strict?: boolean;
|
|
44
|
-
hookName?: string;
|
|
45
|
-
providerName?: string;
|
|
46
|
-
errorMessage?: string;
|
|
47
|
-
defaultValue?: T;
|
|
48
|
-
}
|
|
49
|
-
type CreateContextReturn<T> = [Context<T>['Provider'], () => T, Context<T>];
|
|
50
|
-
declare function createContext$1<T>(options?: CreateContextOptions<T>): CreateContextReturn<T>;
|
|
51
|
-
//#endregion
|
|
52
|
-
export { UseFilterReturn as a, useCollator as c, EnvironmentProvider as d, EnvironmentProviderProps as f, useEnvironmentContext as h, UseFilterProps as i, LocaleProvider as l, UseEnvironmentContext as m, UseLocaleContext as n, useFilter as o, RootNode as p, useLocaleContext as r, UseCollatorProps as s, createContext$1 as t, LocaleProviderProps as u };
|
package/dist/index-B3r6Uj67.d.ts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import * as solid_js0 from "solid-js";
|
|
2
|
-
import { Accessor, Context, JSX, ParentProps } from "solid-js";
|
|
3
|
-
import { FilterOptions, FilterReturn, Locale } from "@sprawlify/primitives/i18n-utils";
|
|
4
|
-
|
|
5
|
-
//#region src/providers/environment/use-environment-context.d.ts
|
|
6
|
-
type RootNode = ShadowRoot | Document | Node;
|
|
7
|
-
interface UseEnvironmentContext {
|
|
8
|
-
getRootNode(): RootNode;
|
|
9
|
-
getDocument(): Document;
|
|
10
|
-
getWindow(): Window & typeof globalThis;
|
|
11
|
-
}
|
|
12
|
-
//#endregion
|
|
13
|
-
//#region src/providers/environment/environment-provider.d.ts
|
|
14
|
-
interface EnvironmentProviderProps {
|
|
15
|
-
children?: JSX.Element;
|
|
16
|
-
value?: RootNode | (() => RootNode);
|
|
17
|
-
}
|
|
18
|
-
declare const EnvironmentProvider: (props: EnvironmentProviderProps) => JSX.Element;
|
|
19
|
-
//#endregion
|
|
20
|
-
//#region src/providers/locale/locale-provider.d.ts
|
|
21
|
-
interface LocaleProviderProps extends ParentProps {
|
|
22
|
-
locale: string;
|
|
23
|
-
}
|
|
24
|
-
declare const LocaleProvider: (props: LocaleProviderProps) => solid_js0.JSX.Element;
|
|
25
|
-
//#endregion
|
|
26
|
-
//#region src/providers/locale/use-collator.d.ts
|
|
27
|
-
interface UseCollatorProps extends Intl.CollatorOptions {
|
|
28
|
-
locale?: string;
|
|
29
|
-
}
|
|
30
|
-
interface UseCollatorReturn extends Accessor<Intl.Collator> {}
|
|
31
|
-
declare function useCollator(props?: UseCollatorProps): UseCollatorReturn;
|
|
32
|
-
//#endregion
|
|
33
|
-
//#region src/providers/locale/use-filter.d.ts
|
|
34
|
-
interface UseFilterProps extends FilterOptions {}
|
|
35
|
-
declare function useFilter(props: UseFilterProps): UseFilterReturn;
|
|
36
|
-
interface UseFilterReturn extends Accessor<FilterReturn> {}
|
|
37
|
-
//#endregion
|
|
38
|
-
//#region src/providers/locale/use-locale-context.d.ts
|
|
39
|
-
interface UseLocaleContext extends Accessor<Locale> {}
|
|
40
|
-
//#endregion
|
|
41
|
-
//#region src/utils/create-context.d.ts
|
|
42
|
-
interface CreateContextOptions<T> {
|
|
43
|
-
strict?: boolean;
|
|
44
|
-
hookName?: string;
|
|
45
|
-
providerName?: string;
|
|
46
|
-
errorMessage?: string;
|
|
47
|
-
defaultValue?: T;
|
|
48
|
-
}
|
|
49
|
-
type CreateContextReturn<T> = [Context<T>['Provider'], () => T, Context<T>];
|
|
50
|
-
declare function createContext$1<T>(options?: CreateContextOptions<T>): CreateContextReturn<T>;
|
|
51
|
-
//#endregion
|
|
52
|
-
export { UseFilterReturn as a, useCollator as c, EnvironmentProvider as d, EnvironmentProviderProps as f, useEnvironmentContext as h, UseFilterProps as i, LocaleProvider as l, UseEnvironmentContext as m, UseLocaleContext as n, useFilter as o, RootNode as p, useLocaleContext as r, UseCollatorProps as s, createContext$1 as t, LocaleProviderProps as u };
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { t as runIfFn } from "./run-if-fn-BV7F-Eeb.js";
|
|
2
|
-
import { t as createContext$1 } from "./create-context-BEnzb67H.js";
|
|
3
|
-
import { Show, createMemo, createSignal } from "solid-js";
|
|
4
|
-
import { createComponent, memo, template, use } from "solid-js/web";
|
|
5
|
-
import { getDocument, getWindow } from "@sprawlify/primitives/dom-query";
|
|
6
|
-
import { createCollator, createFilter, isRTL } from "@sprawlify/primitives/i18n-utils";
|
|
7
|
-
//#region src/providers/environment/use-environment-context.ts
|
|
8
|
-
const [EnvironmentContextProvider, useEnvironmentContext] = createContext$1({
|
|
9
|
-
hookName: "useEnvironmentContext",
|
|
10
|
-
providerName: "<EnvironmentProvider />",
|
|
11
|
-
strict: false,
|
|
12
|
-
defaultValue: () => ({
|
|
13
|
-
getRootNode: () => document,
|
|
14
|
-
getDocument: () => document,
|
|
15
|
-
getWindow: () => window
|
|
16
|
-
})
|
|
17
|
-
});
|
|
18
|
-
//#endregion
|
|
19
|
-
//#region src/providers/environment/environment-provider.tsx
|
|
20
|
-
var _tmpl$ = /* @__PURE__ */ template(`<span hidden>`);
|
|
21
|
-
const EnvironmentProvider = (props) => {
|
|
22
|
-
const [spanRef, setSpanRef] = createSignal();
|
|
23
|
-
const getRootNode = () => runIfFn(props.value) ?? spanRef()?.getRootNode() ?? document;
|
|
24
|
-
return createComponent(EnvironmentContextProvider, {
|
|
25
|
-
value: createMemo(() => ({
|
|
26
|
-
getRootNode,
|
|
27
|
-
getDocument: () => getDocument(getRootNode()),
|
|
28
|
-
getWindow: () => getWindow(getRootNode())
|
|
29
|
-
})),
|
|
30
|
-
get children() {
|
|
31
|
-
return [memo(() => props.children), createComponent(Show, {
|
|
32
|
-
get when() {
|
|
33
|
-
return !props.value;
|
|
34
|
-
},
|
|
35
|
-
get children() {
|
|
36
|
-
var _el$ = _tmpl$();
|
|
37
|
-
use(setSpanRef, _el$);
|
|
38
|
-
return _el$;
|
|
39
|
-
}
|
|
40
|
-
})];
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
};
|
|
44
|
-
//#endregion
|
|
45
|
-
//#region src/providers/locale/use-locale-context.ts
|
|
46
|
-
const [LocaleContextProvider, useLocaleContext] = createContext$1({
|
|
47
|
-
hookName: "useEnvironmentContext",
|
|
48
|
-
providerName: "<EnvironmentProvider />",
|
|
49
|
-
strict: false,
|
|
50
|
-
defaultValue: () => ({
|
|
51
|
-
dir: "ltr",
|
|
52
|
-
locale: "en-US"
|
|
53
|
-
})
|
|
54
|
-
});
|
|
55
|
-
//#endregion
|
|
56
|
-
//#region src/providers/locale/locale-provider.tsx
|
|
57
|
-
const LocaleProvider = (props) => {
|
|
58
|
-
return createComponent(LocaleContextProvider, {
|
|
59
|
-
value: createMemo(() => ({
|
|
60
|
-
locale: props.locale,
|
|
61
|
-
dir: isRTL(props.locale) ? "rtl" : "ltr"
|
|
62
|
-
})),
|
|
63
|
-
get children() {
|
|
64
|
-
return props.children;
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
//#endregion
|
|
69
|
-
//#region src/providers/locale/use-collator.ts
|
|
70
|
-
function useCollator(props = {}) {
|
|
71
|
-
const env = useLocaleContext();
|
|
72
|
-
const locale = () => props.locale ?? env().locale;
|
|
73
|
-
return createMemo(() => {
|
|
74
|
-
const { locale: _, ...options } = props;
|
|
75
|
-
return createCollator(locale(), options);
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
//#endregion
|
|
79
|
-
//#region src/providers/locale/use-filter.ts
|
|
80
|
-
function useFilter(props) {
|
|
81
|
-
const env = useLocaleContext();
|
|
82
|
-
const locale = createMemo(() => props.locale ?? env().locale);
|
|
83
|
-
return createMemo(() => createFilter({
|
|
84
|
-
...props,
|
|
85
|
-
locale: locale()
|
|
86
|
-
}));
|
|
87
|
-
}
|
|
88
|
-
//#endregion
|
|
89
|
-
export { EnvironmentProvider as a, useLocaleContext as i, useCollator as n, useEnvironmentContext as o, LocaleProvider as r, useFilter as t };
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { t as runIfFn } from "./run-if-fn-qkd0iQPO.jsx";
|
|
2
|
-
import { t as createContext$1 } from "./create-context-iBxaUhvx.jsx";
|
|
3
|
-
import { Show, createMemo, createSignal } from "solid-js";
|
|
4
|
-
import { getDocument, getWindow } from "@sprawlify/primitives/dom-query";
|
|
5
|
-
import { createCollator, createFilter, isRTL } from "@sprawlify/primitives/i18n-utils";
|
|
6
|
-
//#region src/providers/environment/use-environment-context.ts
|
|
7
|
-
const [EnvironmentContextProvider, useEnvironmentContext] = createContext$1({
|
|
8
|
-
hookName: "useEnvironmentContext",
|
|
9
|
-
providerName: "<EnvironmentProvider />",
|
|
10
|
-
strict: false,
|
|
11
|
-
defaultValue: () => ({
|
|
12
|
-
getRootNode: () => document,
|
|
13
|
-
getDocument: () => document,
|
|
14
|
-
getWindow: () => window
|
|
15
|
-
})
|
|
16
|
-
});
|
|
17
|
-
//#endregion
|
|
18
|
-
//#region src/providers/environment/environment-provider.tsx
|
|
19
|
-
const EnvironmentProvider = (props) => {
|
|
20
|
-
const [spanRef, setSpanRef] = createSignal();
|
|
21
|
-
const getRootNode = () => runIfFn(props.value) ?? spanRef()?.getRootNode() ?? document;
|
|
22
|
-
const environment = createMemo(() => ({
|
|
23
|
-
getRootNode,
|
|
24
|
-
getDocument: () => getDocument(getRootNode()),
|
|
25
|
-
getWindow: () => getWindow(getRootNode())
|
|
26
|
-
}));
|
|
27
|
-
return <EnvironmentContextProvider value={environment}>
|
|
28
|
-
{props.children}
|
|
29
|
-
<Show when={!props.value}>
|
|
30
|
-
<span hidden ref={setSpanRef} />
|
|
31
|
-
</Show>
|
|
32
|
-
</EnvironmentContextProvider>;
|
|
33
|
-
};
|
|
34
|
-
//#endregion
|
|
35
|
-
//#region src/providers/locale/use-locale-context.ts
|
|
36
|
-
const [LocaleContextProvider, useLocaleContext] = createContext$1({
|
|
37
|
-
hookName: "useEnvironmentContext",
|
|
38
|
-
providerName: "<EnvironmentProvider />",
|
|
39
|
-
strict: false,
|
|
40
|
-
defaultValue: () => ({
|
|
41
|
-
dir: "ltr",
|
|
42
|
-
locale: "en-US"
|
|
43
|
-
})
|
|
44
|
-
});
|
|
45
|
-
//#endregion
|
|
46
|
-
//#region src/providers/locale/locale-provider.tsx
|
|
47
|
-
const LocaleProvider = (props) => {
|
|
48
|
-
const context = createMemo(() => ({
|
|
49
|
-
locale: props.locale,
|
|
50
|
-
dir: isRTL(props.locale) ? "rtl" : "ltr"
|
|
51
|
-
}));
|
|
52
|
-
return <LocaleContextProvider value={context}>{props.children}</LocaleContextProvider>;
|
|
53
|
-
};
|
|
54
|
-
//#endregion
|
|
55
|
-
//#region src/providers/locale/use-collator.ts
|
|
56
|
-
function useCollator(props = {}) {
|
|
57
|
-
const env = useLocaleContext();
|
|
58
|
-
const locale = () => props.locale ?? env().locale;
|
|
59
|
-
return createMemo(() => {
|
|
60
|
-
const { locale: _, ...options } = props;
|
|
61
|
-
return createCollator(locale(), options);
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
//#endregion
|
|
65
|
-
//#region src/providers/locale/use-filter.ts
|
|
66
|
-
function useFilter(props) {
|
|
67
|
-
const env = useLocaleContext();
|
|
68
|
-
const locale = createMemo(() => props.locale ?? env().locale);
|
|
69
|
-
return createMemo(() => createFilter({
|
|
70
|
-
...props,
|
|
71
|
-
locale: locale()
|
|
72
|
-
}));
|
|
73
|
-
}
|
|
74
|
-
//#endregion
|
|
75
|
-
export { EnvironmentProvider as a, useLocaleContext as i, useCollator as n, useEnvironmentContext as o, LocaleProvider as r, useFilter as t };
|