@rpcbase/ui 0.238.0 → 0.240.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/components/AddressAutocompleteInput/index.d.ts.map +1 -1
- package/dist/components/I18nField/index.d.ts +2 -1
- package/dist/components/I18nField/index.d.ts.map +1 -1
- package/dist/helpers/useMapsLibrary.d.ts.map +1 -1
- package/dist/index106.js +36 -36
- package/dist/index11.js +373 -335
- package/dist/index11.js.map +1 -1
- package/dist/index118.js +6 -6
- package/dist/index121.js +10 -10
- package/dist/index123.js +2 -2
- package/dist/index124.js +3 -3
- package/dist/index125.js +1 -1
- package/dist/index127.js +2 -2
- package/dist/index129.js +2 -2
- package/dist/index172.js +3 -3
- package/dist/index175.js +1 -1
- package/dist/index176.js +4 -4
- package/dist/index178.js +1 -1
- package/dist/index182.js +2 -2
- package/dist/index184.js +12 -12
- package/dist/index185.js +1 -1
- package/dist/index187.js +6 -6
- package/dist/index189.js +6 -6
- package/dist/index190.js +5 -5
- package/dist/index193.js +3 -3
- package/dist/index194.js +5 -5
- package/dist/index196.js +20 -59
- package/dist/index196.js.map +1 -1
- package/dist/index197.js +66 -8
- package/dist/index197.js.map +1 -1
- package/dist/index198.js +6 -87
- package/dist/index198.js.map +1 -1
- package/dist/index199.js +11 -19
- package/dist/index199.js.map +1 -1
- package/dist/index200.js +48 -14
- package/dist/index200.js.map +1 -1
- package/dist/index201.js +4 -6
- package/dist/index201.js.map +1 -1
- package/dist/index202.js +29 -5
- package/dist/index202.js.map +1 -1
- package/dist/index203.js +16 -6
- package/dist/index203.js.map +1 -1
- package/dist/index204.js +5 -4
- package/dist/index204.js.map +1 -1
- package/dist/index205.js +21 -6
- package/dist/index205.js.map +1 -1
- package/dist/index206.js +51 -16
- package/dist/index206.js.map +1 -1
- package/dist/index207.js +25 -4
- package/dist/index207.js.map +1 -1
- package/dist/index208.js +41 -4
- package/dist/index208.js.map +1 -1
- package/dist/index209.js +39 -12
- package/dist/index209.js.map +1 -1
- package/dist/index210.js +45 -10
- package/dist/index210.js.map +1 -1
- package/dist/index211.js +20 -13
- package/dist/index211.js.map +1 -1
- package/dist/index212.js +70 -13
- package/dist/index212.js.map +1 -1
- package/dist/index213.js +17 -4
- package/dist/index213.js.map +1 -1
- package/dist/index214.js +11 -5
- package/dist/index214.js.map +1 -1
- package/dist/index215.js +27 -6
- package/dist/index215.js.map +1 -1
- package/dist/index216.js +13 -5
- package/dist/index216.js.map +1 -1
- package/dist/index217.js +17 -53
- package/dist/index217.js.map +1 -1
- package/dist/index218.js +36 -8
- package/dist/index218.js.map +1 -1
- package/dist/index219.js +262 -4
- package/dist/index219.js.map +1 -1
- package/dist/index22.js.map +1 -1
- package/dist/index220.js +278 -4
- package/dist/index220.js.map +1 -1
- package/dist/index221.js +68 -8
- package/dist/index221.js.map +1 -1
- package/dist/index222.js +99 -4
- package/dist/index222.js.map +1 -1
- package/dist/index223.js +83 -4
- package/dist/index223.js.map +1 -1
- package/dist/index224.js +3 -3
- package/dist/index224.js.map +1 -1
- package/dist/index225.js +29 -10
- package/dist/index225.js.map +1 -1
- package/dist/index226.js +16 -9
- package/dist/index226.js.map +1 -1
- package/dist/index227.js +35 -10
- package/dist/index227.js.map +1 -1
- package/dist/index228.js +16 -10
- package/dist/index228.js.map +1 -1
- package/dist/index229.js +3 -10
- package/dist/index229.js.map +1 -1
- package/dist/index230.js +26 -9
- package/dist/index230.js.map +1 -1
- package/dist/index231.js +28 -6
- package/dist/index231.js.map +1 -1
- package/dist/index232.js +4 -6
- package/dist/index232.js.map +1 -1
- package/dist/index233.js +78 -4
- package/dist/index233.js.map +1 -1
- package/dist/index234.js +269 -5
- package/dist/index234.js.map +1 -1
- package/dist/index235.js +11 -6
- package/dist/index235.js.map +1 -1
- package/dist/index236.js +10 -5
- package/dist/index236.js.map +1 -1
- package/dist/index237.js +25 -29
- package/dist/index237.js.map +1 -1
- package/dist/index238.js +16 -12
- package/dist/index238.js.map +1 -1
- package/dist/index239.js +124 -24
- package/dist/index239.js.map +1 -1
- package/dist/index240.js +5 -5
- package/dist/index240.js.map +1 -1
- package/dist/index241.js +40 -16
- package/dist/index241.js.map +1 -1
- package/dist/index242.js +65 -7
- package/dist/index242.js.map +1 -1
- package/dist/index243.js +13 -10
- package/dist/index243.js.map +1 -1
- package/dist/index244.js +7 -10
- package/dist/index244.js.map +1 -1
- package/dist/index245.js +5 -21
- package/dist/index245.js.map +1 -1
- package/dist/index246.js +3 -10
- package/dist/index246.js.map +1 -1
- package/dist/index247.js +10 -9
- package/dist/index247.js.map +1 -1
- package/dist/index248.js +7 -9
- package/dist/index248.js.map +1 -1
- package/dist/index249.js +133 -4
- package/dist/index249.js.map +1 -1
- package/dist/index250.js +399 -5
- package/dist/index250.js.map +1 -1
- package/dist/index251.js +52 -16
- package/dist/index251.js.map +1 -1
- package/dist/index252.js +11 -9
- package/dist/index252.js.map +1 -1
- package/dist/index253.js +11 -18
- package/dist/index253.js.map +1 -1
- package/dist/index254.js +16 -15
- package/dist/index254.js.map +1 -1
- package/dist/index255.js +5 -12
- package/dist/index255.js.map +1 -1
- package/dist/index256.js +6 -20
- package/dist/index256.js.map +1 -1
- package/dist/index257.js +57 -65
- package/dist/index257.js.map +1 -1
- package/dist/index258.js +87 -6
- package/dist/index258.js.map +1 -1
- package/dist/index259.js +6 -11
- package/dist/index259.js.map +1 -1
- package/dist/index260.js +4 -50
- package/dist/index260.js.map +1 -1
- package/dist/index261.js +7 -4
- package/dist/index261.js.map +1 -1
- package/dist/index262.js +16 -29
- package/dist/index262.js.map +1 -1
- package/dist/index263.js +4 -16
- package/dist/index263.js.map +1 -1
- package/dist/index264.js +4 -5
- package/dist/index264.js.map +1 -1
- package/dist/index265.js +12 -21
- package/dist/index265.js.map +1 -1
- package/dist/index266.js +9 -51
- package/dist/index266.js.map +1 -1
- package/dist/index267.js +13 -25
- package/dist/index267.js.map +1 -1
- package/dist/index268.js +13 -41
- package/dist/index268.js.map +1 -1
- package/dist/index269.js +4 -39
- package/dist/index269.js.map +1 -1
- package/dist/index270.js +6 -45
- package/dist/index270.js.map +1 -1
- package/dist/index271.js +6 -20
- package/dist/index271.js.map +1 -1
- package/dist/index272.js +5 -70
- package/dist/index272.js.map +1 -1
- package/dist/index273.js +53 -16
- package/dist/index273.js.map +1 -1
- package/dist/index274.js +8 -11
- package/dist/index274.js.map +1 -1
- package/dist/index275.js +4 -27
- package/dist/index275.js.map +1 -1
- package/dist/index276.js +4 -13
- package/dist/index276.js.map +1 -1
- package/dist/index277.js +8 -18
- package/dist/index277.js.map +1 -1
- package/dist/index278.js +4 -36
- package/dist/index278.js.map +1 -1
- package/dist/index279.js +4 -262
- package/dist/index279.js.map +1 -1
- package/dist/index280.js +3 -278
- package/dist/index280.js.map +1 -1
- package/dist/index281.js +10 -68
- package/dist/index281.js.map +1 -1
- package/dist/index282.js +9 -99
- package/dist/index282.js.map +1 -1
- package/dist/index283.js +9 -83
- package/dist/index283.js.map +1 -1
- package/dist/index284.js +10 -3
- package/dist/index284.js.map +1 -1
- package/dist/index285.js +10 -29
- package/dist/index285.js.map +1 -1
- package/dist/index286.js +9 -16
- package/dist/index286.js.map +1 -1
- package/dist/index287.js +7 -35
- package/dist/index287.js.map +1 -1
- package/dist/index288.js +5 -16
- package/dist/index288.js.map +1 -1
- package/dist/index289.js +4 -3
- package/dist/index289.js.map +1 -1
- package/dist/index290.js +5 -26
- package/dist/index290.js.map +1 -1
- package/dist/index291.js +6 -28
- package/dist/index291.js.map +1 -1
- package/dist/index292.js +6 -4
- package/dist/index292.js.map +1 -1
- package/dist/index293.js +8 -78
- package/dist/index293.js.map +1 -1
- package/dist/index294.js +18 -268
- package/dist/index294.js.map +1 -1
- package/dist/index295.js +15 -10
- package/dist/index295.js.map +1 -1
- package/dist/index296.js +7 -10
- package/dist/index296.js.map +1 -1
- package/dist/index297.js +10 -25
- package/dist/index297.js.map +1 -1
- package/dist/index298.js +10 -16
- package/dist/index298.js.map +1 -1
- package/dist/index299.js +21 -125
- package/dist/index299.js.map +1 -1
- package/dist/index3.js.map +1 -1
- package/dist/index300.js +10 -5
- package/dist/index300.js.map +1 -1
- package/dist/index301.js +9 -40
- package/dist/index301.js.map +1 -1
- package/dist/index302.js +9 -65
- package/dist/index302.js.map +1 -1
- package/dist/index303.js +5 -14
- package/dist/index303.js.map +1 -1
- package/dist/index304.js +5 -7
- package/dist/index304.js.map +1 -1
- package/dist/index305.js +16 -5
- package/dist/index305.js.map +1 -1
- package/dist/index306.js +9 -3
- package/dist/index306.js.map +1 -1
- package/dist/index307.js +18 -10
- package/dist/index307.js.map +1 -1
- package/dist/index308.js +15 -7
- package/dist/index308.js.map +1 -1
- package/dist/index309.js +11 -132
- package/dist/index309.js.map +1 -1
- package/dist/index310.js +29 -399
- package/dist/index310.js.map +1 -1
- package/dist/index311.js +12 -52
- package/dist/index311.js.map +1 -1
- package/dist/index312.js +25 -11
- package/dist/index312.js.map +1 -1
- package/dist/index313.js +5 -11
- package/dist/index313.js.map +1 -1
- package/dist/index321.js +1 -1
- package/dist/index329.js +1 -1
- package/dist/index330.js +1 -1
- package/dist/index334.js +7 -8
- package/dist/index334.js.map +1 -1
- package/dist/index335.js +8 -7
- package/dist/index335.js.map +1 -1
- package/dist/index339.js +1 -1
- package/dist/index345.js +51 -17
- package/dist/index345.js.map +1 -1
- package/dist/index346.js +17 -51
- package/dist/index346.js.map +1 -1
- package/dist/index347.js +5 -122
- package/dist/index347.js.map +1 -1
- package/dist/index348.js +121 -31
- package/dist/index348.js.map +1 -1
- package/dist/index349.js +31 -72
- package/dist/index349.js.map +1 -1
- package/dist/index350.js +70 -139
- package/dist/index350.js.map +1 -1
- package/dist/index351.js +116 -35
- package/dist/index351.js.map +1 -1
- package/dist/index352.js +56 -44
- package/dist/index352.js.map +1 -1
- package/dist/index353.js +49 -14
- package/dist/index353.js.map +1 -1
- package/dist/index354.js +15 -6
- package/dist/index354.js.map +1 -1
- package/dist/index359.js +11 -4
- package/dist/index359.js.map +1 -1
- package/dist/index360.js +17 -18
- package/dist/index360.js.map +1 -1
- package/dist/index361.js +4 -13
- package/dist/index361.js.map +1 -1
- package/dist/index362.js +5 -11
- package/dist/index362.js.map +1 -1
- package/dist/index363.js +19 -15
- package/dist/index363.js.map +1 -1
- package/dist/index364.js +45 -6
- package/dist/index364.js.map +1 -1
- package/dist/index365.js +18 -4
- package/dist/index365.js.map +1 -1
- package/dist/index366.js +5 -21
- package/dist/index366.js.map +1 -1
- package/dist/index367.js +200 -44
- package/dist/index367.js.map +1 -1
- package/dist/index368.js +77 -17
- package/dist/index368.js.map +1 -1
- package/dist/index369.js +5 -5
- package/dist/index369.js.map +1 -1
- package/dist/index370.js +16 -199
- package/dist/index370.js.map +1 -1
- package/dist/index371.js +12 -77
- package/dist/index371.js.map +1 -1
- package/dist/index374.js +3 -3
- package/dist/index375.js +1 -1
- package/dist/index376.js +3 -3
- package/dist/index378.js +2 -2
- package/dist/index380.js +1 -1
- package/dist/index381.js +2 -2
- package/dist/index384.js +2 -2
- package/dist/index386.js +1 -1
- package/dist/index387.js +3 -5
- package/dist/index387.js.map +1 -1
- package/dist/index388.js +3 -5
- package/dist/index388.js.map +1 -1
- package/dist/index389.js +5 -4
- package/dist/index389.js.map +1 -1
- package/dist/index390.js +4 -15
- package/dist/index390.js.map +1 -1
- package/dist/index391.js +4 -9
- package/dist/index391.js.map +1 -1
- package/dist/index392.js +15 -5
- package/dist/index392.js.map +1 -1
- package/dist/index393.js +8 -4
- package/dist/index393.js.map +1 -1
- package/dist/index394.js +5 -545
- package/dist/index394.js.map +1 -1
- package/dist/index395.js +5 -47
- package/dist/index395.js.map +1 -1
- package/dist/index396.js +543 -15
- package/dist/index396.js.map +1 -1
- package/dist/index397.js +47 -6
- package/dist/index397.js.map +1 -1
- package/dist/index398.js +17 -7
- package/dist/index398.js.map +1 -1
- package/dist/index399.js +5 -6
- package/dist/index399.js.map +1 -1
- package/dist/index400.js +7 -7
- package/dist/index400.js.map +1 -1
- package/dist/index401.js +6 -11
- package/dist/index401.js.map +1 -1
- package/dist/index402.js +7 -8
- package/dist/index402.js.map +1 -1
- package/dist/index403.js +11 -12
- package/dist/index403.js.map +1 -1
- package/dist/index404.js +9 -3
- package/dist/index404.js.map +1 -1
- package/dist/index405.js +13 -3
- package/dist/index405.js.map +1 -1
- package/dist/index407.js +1 -1
- package/dist/index408.js +7 -4
- package/dist/index408.js.map +1 -1
- package/dist/index409.js +2 -56
- package/dist/index409.js.map +1 -1
- package/dist/index410.js +43 -67
- package/dist/index410.js.map +1 -1
- package/dist/index411.js +56 -31
- package/dist/index411.js.map +1 -1
- package/dist/index412.js +8 -9
- package/dist/index412.js.map +1 -1
- package/dist/index413.js +2 -153
- package/dist/index413.js.map +1 -1
- package/dist/index414.js +54 -107
- package/dist/index414.js.map +1 -1
- package/dist/index415.js +55 -7
- package/dist/index415.js.map +1 -1
- package/dist/index416.js +5 -2
- package/dist/index416.js.map +1 -1
- package/dist/index417.js +54 -42
- package/dist/index417.js.map +1 -1
- package/dist/index418.js +68 -56
- package/dist/index418.js.map +1 -1
- package/dist/index419.js +31 -8
- package/dist/index419.js.map +1 -1
- package/dist/index420.js +9 -2
- package/dist/index420.js.map +1 -1
- package/dist/index421.js +152 -54
- package/dist/index421.js.map +1 -1
- package/dist/index422.js +108 -56
- package/dist/index422.js.map +1 -1
- package/dist/index423.js +2 -16
- package/dist/index423.js.map +1 -1
- package/dist/index424.js +2 -29
- package/dist/index424.js.map +1 -1
- package/dist/index425.js +2 -13
- package/dist/index425.js.map +1 -1
- package/dist/index426.js +2 -7
- package/dist/index426.js.map +1 -1
- package/dist/index427.js +16 -2
- package/dist/index427.js.map +1 -1
- package/dist/index428.js +29 -2
- package/dist/index428.js.map +1 -1
- package/dist/index429.js +13 -2
- package/dist/index429.js.map +1 -1
- package/dist/index430.js +7 -2
- package/dist/index430.js.map +1 -1
- package/dist/index44.js +1 -1
- package/dist/index45.js +2 -2
- package/dist/index49.js +28 -28
- package/dist/index50.js +21 -21
- package/dist/index51.js +1 -1
- package/dist/index52.js +8 -8
- package/dist/index53.js +2 -2
- package/dist/index55.js +17 -17
- package/dist/index56.js +4 -4
- package/dist/index57.js +3 -3
- package/dist/index58.js +7 -7
- package/dist/index59.js +4 -4
- package/dist/index60.js +12 -12
- package/dist/index61.js +2 -2
- package/dist/index62.js +2 -2
- package/dist/index70.js +1 -1
- package/dist/index71.js +1 -1
- package/dist/index74.js +6 -2
- package/dist/index74.js.map +1 -1
- package/dist/index75.js +8 -2
- package/dist/index75.js.map +1 -1
- package/dist/index76.js +5 -5
- package/dist/index76.js.map +1 -1
- package/dist/index77.js +2 -8
- package/dist/index77.js.map +1 -1
- package/dist/index78.js +2 -6
- package/dist/index78.js.map +1 -1
- package/package.json +1 -1
package/dist/index11.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index11.js","sources":["../src/components/I18nField/index.tsx"],"sourcesContent":["import * as React from \"react\"\nimport Select, {\n type MenuListProps,\n type OptionProps,\n type Props as SelectProps,\n type SelectInstance,\n type SingleValue,\n type StylesConfig,\n components as selectComponents,\n} from \"react-select\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nexport type LanguageCode = string\n\nexport type LocalizedStringEntry<TExtra extends Record<string, unknown> = Record<string, unknown>> = {\n value: string\n updatedAt: Date\n autoTranslated?: boolean\n} & TExtra\n\nexport type LocalizedString<TExtra extends Record<string, unknown> = Record<string, unknown>> = Record<\n LanguageCode,\n LocalizedStringEntry<TExtra>\n>\n\nexport type I18nValue<TExtra extends Record<string, unknown> = Record<string, unknown>> = LocalizedString<TExtra>\n\ntype LocaleContextValue = {\n locale: LanguageCode | null\n setLocale: (next: LanguageCode) => void\n}\n\nconst I18nFieldLocaleContext = React.createContext<LocaleContextValue | null>(null)\n\ntype I18nFieldLocaleProviderProps = {\n children: React.ReactNode\n value?: LanguageCode\n defaultValue?: LanguageCode\n onChange?: (locale: LanguageCode) => void\n}\n\nexport function I18nFieldLocaleProvider({ children, value, defaultValue, onChange }: I18nFieldLocaleProviderProps) {\n const isControlled = value !== undefined\n const [internalLocale, setInternalLocale] = React.useState<LanguageCode>(defaultValue ?? DEFAULT_LOCALE)\n const activeLocale = (value ?? internalLocale) as LanguageCode\n\n const setLocale = React.useCallback(\n (next: LanguageCode) => {\n if (!isControlled) {\n setInternalLocale(next)\n }\n onChange?.(next)\n },\n [isControlled, onChange]\n )\n\n const contextValue = React.useMemo<LocaleContextValue>(\n () => ({\n locale: activeLocale,\n setLocale,\n }),\n [activeLocale, setLocale]\n )\n\n return <I18nFieldLocaleContext.Provider value={contextValue}>{children}</I18nFieldLocaleContext.Provider>\n}\n\ntype I18nFieldProps = Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"value\" | \"defaultValue\" | \"onChange\"\n> &\n Omit<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n \"value\" | \"defaultValue\" | \"onChange\"\n > & {\n value?: I18nValue\n defaultValue?: I18nValue\n locale?: LanguageCode\n defaultLocale?: LanguageCode\n onChange?: (value: I18nValue) => void\n onLocaleChange?: (locale: LanguageCode, option: LanguageOption) => void\n locales?: LanguageCode[]\n multiline?: boolean\n inputClassName?: string\n selectProps?: Partial<SelectProps<LanguageOption, false>>\n selectFooter?: React.ReactNode\n languageSelectTabIndex?: number\n }\n\ntype LanguageOption = {\n value: LanguageCode\n name: string\n code: string\n searchable: string[]\n}\n\nconst DEFAULT_LOCALE: LanguageCode = \"en\"\n\nfunction languageCodeToBadge(code: string) {\n const primary = code.split(\"-\")[0] ?? \"\"\n const normalized = primary.replace(/[^A-Za-z]/g, \"\")\n if (!normalized) return \"?\"\n return normalized.slice(0, 3).toUpperCase()\n}\n\nfunction stripDiacritics(value: string) {\n return value.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\")\n}\n\nfunction normalize(value: string) {\n return stripDiacritics(value).toLowerCase()\n}\n\nfunction resolveLocalizedEntry(value: I18nValue, locale: LanguageCode) {\n if (Object.prototype.hasOwnProperty.call(value, locale)) {\n return value[locale]\n }\n\n const parts = locale.split(\"-\").filter(Boolean)\n while (parts.length > 1) {\n parts.pop()\n const candidate = parts.join(\"-\")\n if (Object.prototype.hasOwnProperty.call(value, candidate)) {\n return value[candidate]\n }\n }\n\n return undefined\n}\n\nfunction resolveLocalizedValue(value: I18nValue, locale: LanguageCode) {\n return resolveLocalizedEntry(value, locale)?.value ?? \"\"\n}\n\nfunction createDisplayNames(locale: string | string[] | undefined, type: \"language\") {\n if (typeof Intl === \"undefined\" || typeof Intl.DisplayNames === \"undefined\") return null\n try {\n const locales = Array.isArray(locale) ? locale : locale ? [locale] : undefined\n return new Intl.DisplayNames(locales, { type })\n } catch {\n return null\n }\n}\n\nfunction safeDisplayName(displayNames: Intl.DisplayNames | null, value: string) {\n if (!displayNames) return undefined\n try {\n return displayNames.of(value) ?? undefined\n } catch {\n return undefined\n }\n}\n\nfunction buildLanguageOptions(locale?: string | string[], allowed?: LanguageCode[]) {\n const displayNames = createDisplayNames(locale, \"language\")\n const englishDisplayNames = createDisplayNames(\"en\", \"language\")\n const pool = (allowed ?? []).filter((code): code is LanguageCode => typeof code === \"string\" && code.length > 0)\n\n return pool\n .map((code) => {\n const name = safeDisplayName(displayNames, code) ?? safeDisplayName(englishDisplayNames, code) ?? code\n return {\n value: code,\n name,\n code,\n searchable: Array.from(\n new Set([\n name,\n safeDisplayName(englishDisplayNames, code) ?? code,\n code.toLowerCase(),\n code.toUpperCase(),\n ])\n ).map((entry) => normalize(entry)),\n }\n })\n .sort((a, b) => a.name.localeCompare(b.name))\n}\n\nconst selectStyles: StylesConfig<LanguageOption, false> = {\n control: () => ({\n display: \"none\",\n }),\n menu: (provided) => ({\n ...provided,\n marginTop: 4,\n borderRadius: \"var(--radius)\",\n boxShadow: \"0 18px 36px rgba(15, 23, 42, 0.18)\",\n backgroundColor: \"hsl(var(--popover))\",\n overflow: \"hidden\",\n zIndex: 30,\n }),\n menuList: (provided) => ({\n ...provided,\n maxHeight: 280,\n padding: 0,\n display: \"flex\",\n flexDirection: \"column\",\n overflow: \"hidden\",\n }),\n option: (provided, state) => ({\n ...provided,\n fontSize: \"0.875rem\",\n backgroundColor: state.isFocused\n ? \"hsl(var(--muted))\"\n : state.isSelected\n ? \"hsl(var(--accent))\"\n : \"transparent\",\n color: state.isSelected\n ? \"hsl(var(--accent-foreground))\"\n : \"hsl(var(--foreground))\",\n cursor: \"pointer\",\n }),\n noOptionsMessage: (provided) => ({\n ...provided,\n fontSize: \"0.875rem\",\n color: \"hsl(var(--muted-foreground))\",\n }),\n}\n\nconst HiddenControl = () => <div style={{ display: \"none\" }} />\nconst NullComponent = () => null\n\ntype SearchMenuContextValue = {\n searchTerm: string\n setSearchTerm: (next: string) => void\n onSearchKeyDown: (event: React.KeyboardEvent<HTMLInputElement>) => void\n searchInputRef: React.RefObject<HTMLInputElement | null>\n selectFooter?: React.ReactNode\n}\n\nconst SearchMenuContext = React.createContext<SearchMenuContextValue | null>(null)\n\n// MenuList must keep a stable component identity across renders: an inline component\n// would be remounted on every keystroke, unmounting the focused search input and\n// closing the menu through the root onBlur handler.\nfunction SearchableMenuList(props: MenuListProps<LanguageOption, false>) {\n const search = React.useContext(SearchMenuContext)\n const { children } = props\n return (\n <selectComponents.MenuList {...props} className=\"!p-0 flex flex-col overflow-hidden\">\n {search ? (\n <div className=\"border-b border-muted px-2 pb-2 pt-2\">\n <input\n ref={search.searchInputRef}\n value={search.searchTerm}\n onChange={(event) => search.setSearchTerm(event.target.value)}\n onKeyDown={search.onSearchKeyDown}\n className=\"w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-ring\"\n placeholder=\"Search language…\"\n />\n </div>\n ) : null}\n <div className=\"max-h-60 overflow-y-auto\">{children}</div>\n {search?.selectFooter ? (\n <div className=\"border-t border-muted bg-muted/60 px-3 py-2 text-xs text-muted-foreground\">\n {search.selectFooter}\n </div>\n ) : null}\n </selectComponents.MenuList>\n )\n}\n\nfunction Option(props: OptionProps<LanguageOption, false>) {\n const { data, innerRef, innerProps, isFocused, isSelected } = props\n return (\n <div\n ref={innerRef}\n {...innerProps}\n className={cn(\n \"flex cursor-pointer items-center justify-between gap-3 px-3 py-2 text-sm\",\n isSelected\n ? \"bg-accent text-accent-foreground\"\n : isFocused\n ? \"bg-muted text-foreground\"\n : \"text-foreground\"\n )}\n >\n <span className=\"flex min-w-0 items-center gap-2\">\n <span className=\"truncate\">{data.name}</span>\n </span>\n <span className=\"text-xs text-muted-foreground uppercase\">{data.code}</span>\n </div>\n )\n}\n\nexport const I18nField = React.forwardRef<HTMLInputElement | HTMLTextAreaElement, I18nFieldProps>(\n function I18nField(props, forwardedRef) {\n const {\n value: valueProp,\n defaultValue,\n locale: localeProp,\n defaultLocale,\n onChange,\n onLocaleChange,\n locales,\n multiline,\n className,\n inputClassName,\n selectProps,\n selectFooter,\n languageSelectTabIndex = -1,\n disabled,\n ...rest\n } = props\n\n type SharedProps = React.InputHTMLAttributes<HTMLInputElement> &\n React.TextareaHTMLAttributes<HTMLTextAreaElement> & { rows?: number }\n\n const { rows, ...restProps } = rest as SharedProps\n\n const initialValue = React.useMemo<I18nValue>(() => valueProp ?? defaultValue ?? {}, [defaultValue, valueProp])\n const [internalValue, setInternalValue] = React.useState<I18nValue>(initialValue)\n const isControlled = valueProp !== undefined\n const currentValue = isControlled ? valueProp ?? {} : internalValue\n const [searchTerm, setSearchTerm] = React.useState(\"\")\n const localeContext = React.useContext(I18nFieldLocaleContext)\n\n const localePool = React.useMemo(() => {\n const pool = Array.from(new Set([...(locales ?? []), ...Object.keys(currentValue)]))\n return buildLanguageOptions(undefined, pool)\n }, [currentValue, locales])\n\n const initialLocale = React.useMemo(() => {\n const candidate =\n localeProp ??\n localeContext?.locale ??\n defaultLocale ??\n (Object.keys(currentValue)[0] as LanguageCode | undefined) ??\n localePool[0]?.value ??\n DEFAULT_LOCALE\n return candidate\n }, [currentValue, defaultLocale, localeContext?.locale, localePool, localeProp])\n\n const [internalLocale, setInternalLocale] = React.useState<LanguageCode>(initialLocale)\n const activeLocale = localeProp ?? localeContext?.locale ?? internalLocale\n\n React.useEffect(() => {\n if (!isControlled) {\n setInternalValue(initialValue)\n }\n }, [initialValue, isControlled])\n\n React.useEffect(() => {\n if (localeProp && localeProp !== internalLocale) {\n setInternalLocale(localeProp)\n }\n }, [internalLocale, localeProp])\n\n React.useEffect(() => {\n if (!localeProp && localeContext?.locale && localeContext.locale !== internalLocale) {\n setInternalLocale(localeContext.locale)\n }\n }, [internalLocale, localeContext?.locale, localeProp])\n\n const selectedOption =\n localePool.find((option) => option.value === activeLocale) ??\n localePool.find((option) => option.value === DEFAULT_LOCALE) ??\n localePool[0] ??\n null\n\n const [menuOpen, setMenuOpen] = React.useState(false)\n const rootRef = React.useRef<HTMLDivElement | null>(null)\n const inputRef = React.useRef<HTMLInputElement | HTMLTextAreaElement | null>(null)\n const triggerRef = React.useRef<HTMLButtonElement | null>(null)\n const containerRef = React.useRef<HTMLDivElement | null>(null)\n const selectRef = React.useRef<SelectInstance<LanguageOption, false> | null>(null)\n const searchInputRef = React.useRef<HTMLInputElement | null>(null)\n const selectionSnapshotRef = React.useRef<{ start: number | null; end: number | null } | null>(null)\n const [menuPosition, setMenuPosition] = React.useState<{ left: number; top: number }>({ left: 0, top: 0 })\n\n React.useImperativeHandle(forwardedRef, () => inputRef.current as HTMLInputElement & HTMLTextAreaElement, [])\n\n const handleLocaleSelect = (option: SingleValue<LanguageOption>) => {\n if (!option) return\n const nextLocale = option.value\n if (!isControlled) {\n setInternalLocale(nextLocale)\n }\n onLocaleChange?.(nextLocale, option)\n localeContext?.setLocale(nextLocale)\n closeMenu(true)\n }\n\n const handleTextChange = (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n const currentEntry = currentValue[activeLocale]\n const nextValue = {\n ...currentValue,\n [activeLocale]: {\n ...(currentEntry ?? {}),\n value: event.target.value,\n updatedAt: new Date(),\n autoTranslated: false,\n },\n }\n if (!isControlled) {\n setInternalValue(nextValue)\n }\n onChange?.(nextValue)\n }\n\n const currentText = resolveLocalizedValue(currentValue, activeLocale)\n\n const filterOption = React.useCallback(\n (option: { data: LanguageOption }) => {\n if (!searchTerm) return true\n const query = normalize(searchTerm)\n return option.data.searchable.some((token) => token.includes(query))\n },\n [searchTerm]\n )\n\n const buttonPosition = multiline ? \"left-2 top-2 -translate-y-0\" : \"left-3 top-1/2 -translate-y-1/2\"\n const inputPaddingLeft = \"pl-10 pr-3\"\n\n const updateMenuPosition = React.useCallback(() => {\n const trigger = triggerRef.current\n const container = containerRef.current\n if (!trigger || !container) return\n const triggerRect = trigger.getBoundingClientRect()\n const containerRect = container.getBoundingClientRect()\n setMenuPosition({\n left: triggerRect.left - containerRect.left,\n top: triggerRect.bottom - containerRect.top + 4,\n })\n }, [])\n\n const isInsideComponent = React.useCallback((target: EventTarget | null) => {\n if (!target || !(target instanceof Node)) return false\n return Boolean(rootRef.current?.contains(target))\n }, [])\n\n const restoreMainFocus = React.useCallback(() => {\n const target = inputRef.current\n if (!target) return\n target.focus()\n const selection = selectionSnapshotRef.current\n if (selection && selection.start != null && selection.end != null) {\n target.setSelectionRange(selection.start, selection.end)\n }\n }, [])\n\n React.useEffect(() => {\n if (!menuOpen) return\n const target = searchInputRef.current\n if (!target) return\n requestAnimationFrame(() => {\n if (document.activeElement === target) return\n target.focus()\n const end = target.value.length\n try {\n target.setSelectionRange(end, end)\n } catch {\n /* ignore */\n }\n })\n }, [menuOpen, searchTerm])\n\n const closeMenu = React.useCallback(\n (restoreFocus = true) => {\n setMenuOpen(false)\n setSearchTerm(\"\")\n if (restoreFocus) {\n requestAnimationFrame(() => {\n restoreMainFocus()\n })\n }\n },\n [restoreMainFocus]\n )\n\n const {\n components: userSelectComponents,\n styles: userSelectStyles,\n classNamePrefix: userClassNamePrefix,\n placeholder: selectPlaceholder,\n noOptionsMessage,\n ...forwardedSelectProps\n } = selectProps ?? {}\n\n const filteredOptions = React.useMemo(() => {\n const query = normalize(searchTerm)\n const rank = (option: LanguageOption) => {\n const code = option.code.toLowerCase()\n if (query && code === query) return 0\n if (query && code.startsWith(query)) return 1\n if (query && option.searchable.some((token) => token.startsWith(query))) return 2\n if (query && option.searchable.some((token) => token.includes(query))) return 3\n return 4\n }\n return localePool\n .filter((option) => filterOption({ data: option }))\n .sort((a, b) => {\n const diff = rank(a) - rank(b)\n if (diff !== 0) return diff\n return a.name.localeCompare(b.name)\n })\n }, [filterOption, localePool, searchTerm])\n\n const handleSearchKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === \"Escape\") {\n event.preventDefault()\n closeMenu(true)\n return\n }\n if (event.key === \"Enter\") {\n event.preventDefault()\n const first = filteredOptions[0]\n if (first) {\n handleLocaleSelect(first)\n }\n return\n }\n if (event.key === \"ArrowDown\" || event.key === \"ArrowUp\") {\n event.preventDefault()\n selectRef.current?.focus()\n }\n }\n\n const searchMenuContextValue: SearchMenuContextValue = {\n searchTerm,\n setSearchTerm,\n onSearchKeyDown: handleSearchKeyDown,\n searchInputRef,\n selectFooter,\n }\n\n const mergedSelectComponents = React.useMemo(\n () => ({\n Control: HiddenControl,\n IndicatorsContainer: NullComponent,\n DropdownIndicator: NullComponent,\n IndicatorSeparator: NullComponent,\n ValueContainer: NullComponent,\n MenuList: SearchableMenuList,\n ...(userSelectComponents ?? {}),\n Option,\n }),\n [userSelectComponents]\n )\n\n const mergedSelectStyles = React.useMemo<StylesConfig<LanguageOption, false>>(\n () => ({\n ...selectStyles,\n ...(userSelectStyles ?? {}),\n }),\n [userSelectStyles]\n )\n\n React.useLayoutEffect(() => {\n if (!menuOpen) return\n updateMenuPosition()\n const handleResize = () => updateMenuPosition()\n window.addEventListener(\"resize\", handleResize)\n return () => window.removeEventListener(\"resize\", handleResize)\n }, [menuOpen, updateMenuPosition])\n\n const sharedFieldProps = {\n ...restProps,\n ref: inputRef as React.Ref<any>,\n disabled,\n value: currentText,\n onChange: handleTextChange,\n onFocus: (event: React.FocusEvent<any>) => {\n if (menuOpen) {\n closeMenu(false)\n }\n restProps.onFocus?.(event)\n },\n onBlur: (event: React.FocusEvent<any>) => {\n if (!isInsideComponent(event.relatedTarget)) {\n closeMenu(false)\n }\n restProps.onBlur?.(event)\n },\n className: cn(\n \"w-full rounded-md border border-input bg-background text-base ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n multiline ? \"min-h-24 py-2\" : \"h-10 py-2\",\n inputPaddingLeft,\n inputClassName\n ),\n placeholder: restProps.placeholder,\n }\n\n return (\n <div\n ref={rootRef}\n className={cn(\"relative flex flex-col\", className)}\n onBlur={(event) => {\n if (!isInsideComponent(event.relatedTarget)) {\n closeMenu(false)\n }\n }}\n >\n <div ref={containerRef} className=\"relative\">\n {multiline ? (\n <textarea rows={rows} {...sharedFieldProps} />\n ) : (\n <input type=\"text\" {...sharedFieldProps} />\n )}\n\n <button\n type=\"button\"\n className={cn(\n \"absolute flex h-6 w-6 items-center justify-center rounded border text-xs font-semibold leading-none transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n buttonPosition,\n disabled ? \"cursor-not-allowed opacity-50 pointer-events-none\" : \"cursor-pointer hover:bg-muted\",\n selectedOption ? \"border-transparent\" : \"border-dashed border-border text-muted-foreground\"\n )}\n aria-label={selectedOption ? `Select language (${selectedOption.code})` : \"Select language\"}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (disabled) return\n const target = inputRef.current\n if (target) {\n selectionSnapshotRef.current = {\n start: target.selectionStart,\n end: target.selectionEnd,\n }\n }\n setSearchTerm(\"\")\n setMenuOpen(true)\n requestAnimationFrame(() => {\n if (searchInputRef.current) {\n searchInputRef.current.focus()\n searchInputRef.current.select()\n } else {\n selectRef.current?.focus()\n }\n })\n }}\n tabIndex={languageSelectTabIndex}\n disabled={disabled}\n ref={triggerRef}\n >\n <span aria-hidden=\"true\">{selectedOption ? languageCodeToBadge(selectedOption.code) : \"?\"}</span>\n </button>\n </div>\n\n <div\n className=\"absolute left-0 top-full z-30 mt-1\"\n style={{\n pointerEvents: menuOpen ? \"auto\" : \"none\",\n width: \"min(260px, 100%)\",\n left: menuPosition.left,\n top: menuPosition.top,\n }}\n >\n <SearchMenuContext.Provider value={searchMenuContextValue}>\n <Select<LanguageOption, false>\n {...forwardedSelectProps}\n menuIsOpen={menuOpen}\n options={filteredOptions}\n value={null}\n onChange={handleLocaleSelect}\n classNamePrefix={userClassNamePrefix ?? \"i18n-language-select\"}\n components={mergedSelectComponents}\n styles={mergedSelectStyles}\n isClearable={false}\n isSearchable={false}\n backspaceRemovesValue={false}\n tabSelectsValue\n menuShouldScrollIntoView={false}\n placeholder={selectPlaceholder ?? \"\"}\n filterOption={filterOption}\n noOptionsMessage={noOptionsMessage}\n onMenuClose={() => closeMenu(true)}\n ref={selectRef}\n />\n </SearchMenuContext.Provider>\n </div>\n </div>\n )\n }\n)\n\nI18nField.displayName = \"I18nField\"\n"],"names":["I18nFieldLocaleContext","React","createContext","I18nFieldLocaleProvider","t0","$","_c","children","value","defaultValue","onChange","isControlled","undefined","internalLocale","setInternalLocale","useState","DEFAULT_LOCALE","activeLocale","t1","next","setLocale","t2","locale","contextValue","t3","languageCodeToBadge","code","normalized","split","replace","slice","toUpperCase","stripDiacritics","normalize","toLowerCase","resolveLocalizedEntry","Object","prototype","hasOwnProperty","call","parts","filter","Boolean","length","pop","candidate","join","resolveLocalizedValue","createDisplayNames","type","Intl","DisplayNames","locales","Array","isArray","safeDisplayName","displayNames","of","buildLanguageOptions","allowed","englishDisplayNames","map","name","searchable","from","Set","entry","sort","a","b","localeCompare","selectStyles","control","display","menu","provided","marginTop","borderRadius","boxShadow","backgroundColor","overflow","zIndex","menuList","maxHeight","padding","flexDirection","option","state","fontSize","isFocused","isSelected","color","cursor","noOptionsMessage","HiddenControl","Symbol","for","jsx","NullComponent","SearchMenuContext","SearchableMenuList","props","search","useContext","selectComponents","searchInputRef","searchTerm","event","setSearchTerm","target","onSearchKeyDown","selectFooter","Option","data","innerRef","innerProps","cn","t4","I18nField","forwardRef","forwardedRef","className","defaultLocale","disabled","inputClassName","localeProp","multiline","onLocaleChange","rest","selectProps","valueProp","languageSelectTabIndex","restProps","rows","initialValue","internalValue","setInternalValue","currentValue","localeContext","pool","keys","localePool","t5","t6","initialLocale","t7","t8","useEffect","t10","t9","t11","t12","t13","t14","find","option_0","_temp","selectedOption","menuOpen","setMenuOpen","rootRef","useRef","inputRef","triggerRef","containerRef","selectRef","selectionSnapshotRef","t15","left","top","menuPosition","setMenuPosition","t16","t17","current","useImperativeHandle","handleLocaleSelect","option_1","nextLocale","closeMenu","t18","currentEntry","nextValue","updatedAt","Date","autoTranslated","handleTextChange","t19","currentText","t20","option_2","query","some","token","includes","filterOption","buttonPosition","t21","trigger","container","triggerRect","getBoundingClientRect","containerRect","bottom","updateMenuPosition","t22","Node","contains","isInsideComponent","t23","target_0","focus","selection","start","end","setSelectionRange","restoreMainFocus","t24","target_1","requestAnimationFrame","document","activeElement","t25","t26","t27","restoreFocus","forwardedSelectProps","selectPlaceholder","userClassNamePrefix","userSelectComponents","userSelectStyles","components","styles","classNamePrefix","placeholder","t28","query_0","rank","option_3","startsWith","token_0","token_1","t29","option_4","diff","filteredOptions","event_0","key","preventDefault","first","handleSearchKeyDown","t30","searchMenuContextValue","t31","t32","Control","IndicatorsContainer","DropdownIndicator","IndicatorSeparator","ValueContainer","MenuList","mergedSelectComponents","t33","t34","mergedSelectStyles","t35","t36","handleResize","window","addEventListener","removeEventListener","useLayoutEffect","t37","event_1","onFocus","t38","event_2","relatedTarget","onBlur","t39","t40","t41","ref","sharedFieldProps","t42","t43","event_3","t44","t45","t46","t47","t48","t49","target_2","selectionStart","selectionEnd","select","t50","t51","t52","_temp2","t53","t54","t55","pointerEvents","width","t56","t57","t58","t59","Select","t60","t61","t62","displayName","event_4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index11.js","sources":["../src/components/I18nField/index.tsx"],"sourcesContent":["import * as React from \"react\"\nimport Select, {\n type MenuListProps,\n type OptionProps,\n type Props as SelectProps,\n type SelectInstance,\n type SingleValue,\n type StylesConfig,\n components as selectComponents,\n} from \"react-select\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nexport type LanguageCode = string\n\nexport type LocalizedStringEntry<TExtra extends Record<string, unknown> = Record<string, unknown>> = {\n value: string\n updatedAt: Date\n autoTranslated?: boolean\n} & TExtra\n\nexport type LocalizedString<TExtra extends Record<string, unknown> = Record<string, unknown>> = Record<\n LanguageCode,\n LocalizedStringEntry<TExtra>\n>\n\nexport type I18nValue<TExtra extends Record<string, unknown> = Record<string, unknown>> = LocalizedString<TExtra>\n\ntype LocaleContextValue = {\n locale: LanguageCode | null\n setLocale: (next: LanguageCode) => void\n}\n\nconst I18nFieldLocaleContext = React.createContext<LocaleContextValue | null>(null)\n\ntype I18nFieldLocaleProviderProps = {\n children: React.ReactNode\n value?: LanguageCode\n defaultValue?: LanguageCode\n onChange?: (locale: LanguageCode) => void\n locales?: LanguageCode[]\n}\n\nexport function I18nFieldLocaleProvider({\n children,\n value,\n defaultValue,\n onChange,\n locales,\n}: I18nFieldLocaleProviderProps) {\n const isControlled = value !== undefined\n const defaultLocale = React.useMemo(\n () => getPreferredLocale([defaultValue, ...getEnvironmentLocales()], locales),\n [defaultValue, locales]\n )\n const [internalLocale, setInternalLocale] = React.useState<LanguageCode>(defaultLocale)\n const activeLocale = (value ?? internalLocale) as LanguageCode\n\n const setLocale = React.useCallback(\n (next: LanguageCode) => {\n if (!isControlled) {\n setInternalLocale(next)\n }\n onChange?.(next)\n },\n [isControlled, onChange]\n )\n\n React.useEffect(() => {\n if (isControlled) return\n setInternalLocale((current) => (resolveLocaleMatch(current, locales) ? current : defaultLocale))\n }, [defaultLocale, isControlled, locales])\n\n const contextValue = React.useMemo<LocaleContextValue>(\n () => ({\n locale: activeLocale,\n setLocale,\n }),\n [activeLocale, setLocale]\n )\n\n return <I18nFieldLocaleContext.Provider value={contextValue}>{children}</I18nFieldLocaleContext.Provider>\n}\n\ntype I18nFieldProps = Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"value\" | \"defaultValue\" | \"onChange\"\n> &\n Omit<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n \"value\" | \"defaultValue\" | \"onChange\"\n > & {\n value?: I18nValue\n defaultValue?: I18nValue\n locale?: LanguageCode\n defaultLocale?: LanguageCode\n onChange?: (value: I18nValue) => void\n onLocaleChange?: (locale: LanguageCode, option: LanguageOption) => void\n locales?: LanguageCode[]\n multiline?: boolean\n inputClassName?: string\n selectProps?: Partial<SelectProps<LanguageOption, false>>\n selectFooter?: React.ReactNode\n languageSelectTabIndex?: number\n }\n\ntype LanguageOption = {\n value: LanguageCode\n name: string\n code: string\n searchable: string[]\n}\n\nconst DEFAULT_LOCALE: LanguageCode = \"en\"\n\nfunction normalizeLocaleCode(code: string) {\n return code.trim().replace(/_/g, \"-\").toLowerCase()\n}\n\nfunction primaryLocaleCode(code: string) {\n return normalizeLocaleCode(code).split(\"-\")[0] ?? \"\"\n}\n\nfunction resolveLocaleMatch(locale: LanguageCode | undefined, locales: LanguageCode[] | undefined) {\n const normalizedLocale = typeof locale === \"string\" ? normalizeLocaleCode(locale) : \"\"\n if (!normalizedLocale) return null\n\n const availableLocales = (locales ?? []).filter(\n (code): code is LanguageCode => typeof code === \"string\" && code.length > 0\n )\n if (availableLocales.length === 0) return locale?.trim() ?? normalizedLocale\n\n return availableLocales.find((code) => normalizeLocaleCode(code) === normalizedLocale) ??\n availableLocales.find((code) => primaryLocaleCode(code) === primaryLocaleCode(normalizedLocale)) ??\n null\n}\n\nfunction getEnvironmentLocales() {\n const candidates: LanguageCode[] = []\n if (typeof document !== \"undefined\") {\n candidates.push(document.documentElement.lang)\n }\n if (typeof navigator !== \"undefined\") {\n candidates.push(...Array.from(navigator.languages ?? []), navigator.language)\n }\n return candidates\n}\n\nfunction getPreferredLocale(candidates: Array<LanguageCode | undefined>, locales?: LanguageCode[]) {\n for (const candidate of candidates) {\n const matchedLocale = resolveLocaleMatch(candidate, locales)\n if (matchedLocale) return matchedLocale\n }\n\n const defaultLocaleMatch = resolveLocaleMatch(DEFAULT_LOCALE, locales)\n if (defaultLocaleMatch) return defaultLocaleMatch\n\n return locales?.[0] ?? DEFAULT_LOCALE\n}\n\nfunction languageCodeToBadge(code: string) {\n const primary = code.split(\"-\")[0] ?? \"\"\n const normalized = primary.replace(/[^A-Za-z]/g, \"\")\n if (!normalized) return \"?\"\n return normalized.slice(0, 3).toUpperCase()\n}\n\nfunction stripDiacritics(value: string) {\n return value.normalize(\"NFD\").replace(/[\\u0300-\\u036f]/g, \"\")\n}\n\nfunction normalize(value: string) {\n return stripDiacritics(value).toLowerCase()\n}\n\nfunction resolveLocalizedEntry(value: I18nValue, locale: LanguageCode) {\n if (Object.prototype.hasOwnProperty.call(value, locale)) {\n return value[locale]\n }\n\n const parts = locale.split(\"-\").filter(Boolean)\n while (parts.length > 1) {\n parts.pop()\n const candidate = parts.join(\"-\")\n if (Object.prototype.hasOwnProperty.call(value, candidate)) {\n return value[candidate]\n }\n }\n\n return undefined\n}\n\nfunction resolveLocalizedValue(value: I18nValue, locale: LanguageCode) {\n return resolveLocalizedEntry(value, locale)?.value ?? \"\"\n}\n\nfunction createDisplayNames(locale: string | string[] | undefined, type: \"language\") {\n if (typeof Intl === \"undefined\" || typeof Intl.DisplayNames === \"undefined\") return null\n try {\n const locales = Array.isArray(locale) ? locale : locale ? [locale] : undefined\n return new Intl.DisplayNames(locales, { type })\n } catch {\n return null\n }\n}\n\nfunction safeDisplayName(displayNames: Intl.DisplayNames | null, value: string) {\n if (!displayNames) return undefined\n try {\n return displayNames.of(value) ?? undefined\n } catch {\n return undefined\n }\n}\n\nfunction buildLanguageOptions(locale?: string | string[], allowed?: LanguageCode[]) {\n const displayNames = createDisplayNames(locale, \"language\")\n const englishDisplayNames = createDisplayNames(\"en\", \"language\")\n const pool = (allowed ?? []).filter((code): code is LanguageCode => typeof code === \"string\" && code.length > 0)\n\n return pool\n .map((code) => {\n const name = safeDisplayName(displayNames, code) ?? safeDisplayName(englishDisplayNames, code) ?? code\n return {\n value: code,\n name,\n code,\n searchable: Array.from(\n new Set([\n name,\n safeDisplayName(englishDisplayNames, code) ?? code,\n code.toLowerCase(),\n code.toUpperCase(),\n ])\n ).map((entry) => normalize(entry)),\n }\n })\n .sort((a, b) => a.name.localeCompare(b.name))\n}\n\nconst selectStyles: StylesConfig<LanguageOption, false> = {\n control: () => ({\n display: \"none\",\n }),\n menu: (provided) => ({\n ...provided,\n marginTop: 4,\n borderRadius: \"var(--radius)\",\n boxShadow: \"0 18px 36px rgba(15, 23, 42, 0.18)\",\n backgroundColor: \"hsl(var(--popover))\",\n overflow: \"hidden\",\n zIndex: 30,\n }),\n menuList: (provided) => ({\n ...provided,\n maxHeight: 280,\n padding: 0,\n display: \"flex\",\n flexDirection: \"column\",\n overflow: \"hidden\",\n }),\n option: (provided, state) => ({\n ...provided,\n fontSize: \"0.875rem\",\n backgroundColor: state.isFocused\n ? \"hsl(var(--muted))\"\n : state.isSelected\n ? \"hsl(var(--accent))\"\n : \"transparent\",\n color: state.isSelected\n ? \"hsl(var(--accent-foreground))\"\n : \"hsl(var(--foreground))\",\n cursor: \"pointer\",\n }),\n noOptionsMessage: (provided) => ({\n ...provided,\n fontSize: \"0.875rem\",\n color: \"hsl(var(--muted-foreground))\",\n }),\n}\n\nconst HiddenControl = () => <div style={{ display: \"none\" }} />\nconst NullComponent = () => null\n\ntype SearchMenuContextValue = {\n searchTerm: string\n setSearchTerm: (next: string) => void\n onSearchKeyDown: (event: React.KeyboardEvent<HTMLInputElement>) => void\n searchInputRef: React.RefObject<HTMLInputElement | null>\n selectFooter?: React.ReactNode\n}\n\nconst SearchMenuContext = React.createContext<SearchMenuContextValue | null>(null)\n\n// MenuList must keep a stable component identity across renders: an inline component\n// would be remounted on every keystroke, unmounting the focused search input and\n// closing the menu through the root onBlur handler.\nfunction SearchableMenuList(props: MenuListProps<LanguageOption, false>) {\n const search = React.useContext(SearchMenuContext)\n const { children } = props\n return (\n <selectComponents.MenuList {...props} className=\"!p-0 flex flex-col overflow-hidden\">\n {search ? (\n <div className=\"border-b border-muted px-2 pb-2 pt-2\">\n <input\n ref={search.searchInputRef}\n value={search.searchTerm}\n onChange={(event) => search.setSearchTerm(event.target.value)}\n onKeyDown={search.onSearchKeyDown}\n className=\"w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-ring\"\n placeholder=\"Search language…\"\n />\n </div>\n ) : null}\n <div className=\"max-h-60 overflow-y-auto\">{children}</div>\n {search?.selectFooter ? (\n <div className=\"border-t border-muted bg-muted/60 px-3 py-2 text-xs text-muted-foreground\">\n {search.selectFooter}\n </div>\n ) : null}\n </selectComponents.MenuList>\n )\n}\n\nfunction Option(props: OptionProps<LanguageOption, false>) {\n const { data, innerRef, innerProps, isFocused, isSelected } = props\n return (\n <div\n ref={innerRef}\n {...innerProps}\n className={cn(\n \"flex cursor-pointer items-center justify-between gap-3 px-3 py-2 text-sm\",\n isSelected\n ? \"bg-accent text-accent-foreground\"\n : isFocused\n ? \"bg-muted text-foreground\"\n : \"text-foreground\"\n )}\n >\n <span className=\"flex min-w-0 items-center gap-2\">\n <span className=\"truncate\">{data.name}</span>\n </span>\n <span className=\"text-xs text-muted-foreground uppercase\">{data.code}</span>\n </div>\n )\n}\n\nexport const I18nField = React.forwardRef<HTMLInputElement | HTMLTextAreaElement, I18nFieldProps>(\n function I18nField(props, forwardedRef) {\n const {\n value: valueProp,\n defaultValue,\n locale: localeProp,\n defaultLocale,\n onChange,\n onLocaleChange,\n locales,\n multiline,\n className,\n inputClassName,\n selectProps,\n selectFooter,\n languageSelectTabIndex = -1,\n disabled,\n ...rest\n } = props\n\n type SharedProps = React.InputHTMLAttributes<HTMLInputElement> &\n React.TextareaHTMLAttributes<HTMLTextAreaElement> & { rows?: number }\n\n const { rows, ...restProps } = rest as SharedProps\n\n const initialValue = React.useMemo<I18nValue>(() => valueProp ?? defaultValue ?? {}, [defaultValue, valueProp])\n const [internalValue, setInternalValue] = React.useState<I18nValue>(initialValue)\n const isControlled = valueProp !== undefined\n const currentValue = isControlled ? valueProp ?? {} : internalValue\n const [searchTerm, setSearchTerm] = React.useState(\"\")\n const localeContext = React.useContext(I18nFieldLocaleContext)\n\n const localePool = React.useMemo(() => {\n const pool = Array.from(new Set([...(locales ?? []), ...Object.keys(currentValue)]))\n return buildLanguageOptions(undefined, pool)\n }, [currentValue, locales])\n\n const initialLocale = React.useMemo(() => {\n const localeValues = localePool.map((option) => option.value)\n return localeProp ??\n localeContext?.locale ??\n getPreferredLocale(\n [defaultLocale, ...getEnvironmentLocales(), Object.keys(currentValue)[0] as LanguageCode | undefined],\n localeValues\n )\n }, [currentValue, defaultLocale, localeContext?.locale, localePool, localeProp])\n\n const [internalLocale, setInternalLocale] = React.useState<LanguageCode>(initialLocale)\n const activeLocale = localeProp ?? localeContext?.locale ?? internalLocale\n\n React.useEffect(() => {\n if (!isControlled) {\n setInternalValue(initialValue)\n }\n }, [initialValue, isControlled])\n\n React.useEffect(() => {\n if (localeProp && localeProp !== internalLocale) {\n setInternalLocale(localeProp)\n }\n }, [internalLocale, localeProp])\n\n React.useEffect(() => {\n if (!localeProp && localeContext?.locale && localeContext.locale !== internalLocale) {\n setInternalLocale(localeContext.locale)\n }\n }, [internalLocale, localeContext?.locale, localeProp])\n\n const selectedOption =\n localePool.find((option) => option.value === activeLocale) ??\n localePool.find((option) => option.value === DEFAULT_LOCALE) ??\n localePool[0] ??\n null\n\n const [menuOpen, setMenuOpen] = React.useState(false)\n const rootRef = React.useRef<HTMLDivElement | null>(null)\n const inputRef = React.useRef<HTMLInputElement | HTMLTextAreaElement | null>(null)\n const triggerRef = React.useRef<HTMLButtonElement | null>(null)\n const containerRef = React.useRef<HTMLDivElement | null>(null)\n const selectRef = React.useRef<SelectInstance<LanguageOption, false> | null>(null)\n const searchInputRef = React.useRef<HTMLInputElement | null>(null)\n const selectionSnapshotRef = React.useRef<{ start: number | null; end: number | null } | null>(null)\n const [menuPosition, setMenuPosition] = React.useState<{ left: number; top: number }>({ left: 0, top: 0 })\n\n React.useImperativeHandle(forwardedRef, () => inputRef.current as HTMLInputElement & HTMLTextAreaElement, [])\n\n const handleLocaleSelect = (option: SingleValue<LanguageOption>) => {\n if (!option) return\n const nextLocale = option.value\n if (!isControlled) {\n setInternalLocale(nextLocale)\n }\n onLocaleChange?.(nextLocale, option)\n localeContext?.setLocale(nextLocale)\n closeMenu(true)\n }\n\n const handleTextChange = (event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n const currentEntry = currentValue[activeLocale]\n const nextValue = {\n ...currentValue,\n [activeLocale]: {\n ...(currentEntry ?? {}),\n value: event.target.value,\n updatedAt: new Date(),\n autoTranslated: false,\n },\n }\n if (!isControlled) {\n setInternalValue(nextValue)\n }\n onChange?.(nextValue)\n }\n\n const currentText = resolveLocalizedValue(currentValue, activeLocale)\n\n const filterOption = React.useCallback(\n (option: { data: LanguageOption }) => {\n if (!searchTerm) return true\n const query = normalize(searchTerm)\n return option.data.searchable.some((token) => token.includes(query))\n },\n [searchTerm]\n )\n\n const buttonPosition = multiline ? \"left-2 top-2 -translate-y-0\" : \"left-3 top-1/2 -translate-y-1/2\"\n const inputPaddingLeft = \"pl-10 pr-3\"\n\n const updateMenuPosition = React.useCallback(() => {\n const trigger = triggerRef.current\n const container = containerRef.current\n if (!trigger || !container) return\n const triggerRect = trigger.getBoundingClientRect()\n const containerRect = container.getBoundingClientRect()\n setMenuPosition({\n left: triggerRect.left - containerRect.left,\n top: triggerRect.bottom - containerRect.top + 4,\n })\n }, [])\n\n const isInsideComponent = React.useCallback((target: EventTarget | null) => {\n if (!target || !(target instanceof Node)) return false\n return Boolean(rootRef.current?.contains(target))\n }, [])\n\n const restoreMainFocus = React.useCallback(() => {\n const target = inputRef.current\n if (!target) return\n target.focus()\n const selection = selectionSnapshotRef.current\n if (selection && selection.start != null && selection.end != null) {\n target.setSelectionRange(selection.start, selection.end)\n }\n }, [])\n\n React.useEffect(() => {\n if (!menuOpen) return\n const target = searchInputRef.current\n if (!target) return\n requestAnimationFrame(() => {\n if (document.activeElement === target) return\n target.focus()\n const end = target.value.length\n try {\n target.setSelectionRange(end, end)\n } catch {\n /* ignore */\n }\n })\n }, [menuOpen, searchTerm])\n\n const closeMenu = React.useCallback(\n (restoreFocus = true) => {\n setMenuOpen(false)\n setSearchTerm(\"\")\n if (restoreFocus) {\n requestAnimationFrame(() => {\n restoreMainFocus()\n })\n }\n },\n [restoreMainFocus]\n )\n\n const {\n components: userSelectComponents,\n styles: userSelectStyles,\n classNamePrefix: userClassNamePrefix,\n placeholder: selectPlaceholder,\n noOptionsMessage,\n ...forwardedSelectProps\n } = selectProps ?? {}\n\n const filteredOptions = React.useMemo(() => {\n const query = normalize(searchTerm)\n const rank = (option: LanguageOption) => {\n const code = option.code.toLowerCase()\n if (query && code === query) return 0\n if (query && code.startsWith(query)) return 1\n if (query && option.searchable.some((token) => token.startsWith(query))) return 2\n if (query && option.searchable.some((token) => token.includes(query))) return 3\n return 4\n }\n return localePool\n .filter((option) => filterOption({ data: option }))\n .sort((a, b) => {\n const diff = rank(a) - rank(b)\n if (diff !== 0) return diff\n return a.name.localeCompare(b.name)\n })\n }, [filterOption, localePool, searchTerm])\n\n const handleSearchKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === \"Escape\") {\n event.preventDefault()\n closeMenu(true)\n return\n }\n if (event.key === \"Enter\") {\n event.preventDefault()\n const first = filteredOptions[0]\n if (first) {\n handleLocaleSelect(first)\n }\n return\n }\n if (event.key === \"ArrowDown\" || event.key === \"ArrowUp\") {\n event.preventDefault()\n selectRef.current?.focus()\n }\n }\n\n const searchMenuContextValue: SearchMenuContextValue = {\n searchTerm,\n setSearchTerm,\n onSearchKeyDown: handleSearchKeyDown,\n searchInputRef,\n selectFooter,\n }\n\n const mergedSelectComponents = React.useMemo(\n () => ({\n Control: HiddenControl,\n IndicatorsContainer: NullComponent,\n DropdownIndicator: NullComponent,\n IndicatorSeparator: NullComponent,\n ValueContainer: NullComponent,\n MenuList: SearchableMenuList,\n ...(userSelectComponents ?? {}),\n Option,\n }),\n [userSelectComponents]\n )\n\n const mergedSelectStyles = React.useMemo<StylesConfig<LanguageOption, false>>(\n () => ({\n ...selectStyles,\n ...(userSelectStyles ?? {}),\n }),\n [userSelectStyles]\n )\n\n React.useLayoutEffect(() => {\n if (!menuOpen) return\n updateMenuPosition()\n const handleResize = () => updateMenuPosition()\n window.addEventListener(\"resize\", handleResize)\n return () => window.removeEventListener(\"resize\", handleResize)\n }, [menuOpen, updateMenuPosition])\n\n const sharedFieldProps = {\n ...restProps,\n ref: inputRef as React.Ref<any>,\n disabled,\n value: currentText,\n onChange: handleTextChange,\n onFocus: (event: React.FocusEvent<any>) => {\n if (menuOpen) {\n closeMenu(false)\n }\n restProps.onFocus?.(event)\n },\n onBlur: (event: React.FocusEvent<any>) => {\n if (!isInsideComponent(event.relatedTarget)) {\n closeMenu(false)\n }\n restProps.onBlur?.(event)\n },\n className: cn(\n \"w-full rounded-md border border-input bg-background text-base ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n multiline ? \"min-h-24 py-2\" : \"h-10 py-2\",\n inputPaddingLeft,\n inputClassName\n ),\n placeholder: restProps.placeholder,\n }\n\n return (\n <div\n ref={rootRef}\n className={cn(\"relative flex flex-col\", className)}\n onBlur={(event) => {\n if (!isInsideComponent(event.relatedTarget)) {\n closeMenu(false)\n }\n }}\n >\n <div ref={containerRef} className=\"relative\">\n {multiline ? (\n <textarea rows={rows} {...sharedFieldProps} />\n ) : (\n <input type=\"text\" {...sharedFieldProps} />\n )}\n\n <button\n type=\"button\"\n className={cn(\n \"absolute flex h-6 w-6 items-center justify-center rounded border text-xs font-semibold leading-none transition focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n buttonPosition,\n disabled ? \"cursor-not-allowed opacity-50 pointer-events-none\" : \"cursor-pointer hover:bg-muted\",\n selectedOption ? \"border-transparent\" : \"border-dashed border-border text-muted-foreground\"\n )}\n aria-label={selectedOption ? `Select language (${selectedOption.code})` : \"Select language\"}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (disabled) return\n const target = inputRef.current\n if (target) {\n selectionSnapshotRef.current = {\n start: target.selectionStart,\n end: target.selectionEnd,\n }\n }\n setSearchTerm(\"\")\n setMenuOpen(true)\n requestAnimationFrame(() => {\n if (searchInputRef.current) {\n searchInputRef.current.focus()\n searchInputRef.current.select()\n } else {\n selectRef.current?.focus()\n }\n })\n }}\n tabIndex={languageSelectTabIndex}\n disabled={disabled}\n ref={triggerRef}\n >\n <span aria-hidden=\"true\">{selectedOption ? languageCodeToBadge(selectedOption.code) : \"?\"}</span>\n </button>\n </div>\n\n <div\n className=\"absolute left-0 top-full z-30 mt-1\"\n style={{\n pointerEvents: menuOpen ? \"auto\" : \"none\",\n width: \"min(260px, 100%)\",\n left: menuPosition.left,\n top: menuPosition.top,\n }}\n >\n <SearchMenuContext.Provider value={searchMenuContextValue}>\n <Select<LanguageOption, false>\n {...forwardedSelectProps}\n menuIsOpen={menuOpen}\n options={filteredOptions}\n value={null}\n onChange={handleLocaleSelect}\n classNamePrefix={userClassNamePrefix ?? \"i18n-language-select\"}\n components={mergedSelectComponents}\n styles={mergedSelectStyles}\n isClearable={false}\n isSearchable={false}\n backspaceRemovesValue={false}\n tabSelectsValue\n menuShouldScrollIntoView={false}\n placeholder={selectPlaceholder ?? \"\"}\n filterOption={filterOption}\n noOptionsMessage={noOptionsMessage}\n onMenuClose={() => closeMenu(true)}\n ref={selectRef}\n />\n </SearchMenuContext.Provider>\n </div>\n </div>\n )\n }\n)\n\nI18nField.displayName = \"I18nField\"\n"],"names":["I18nFieldLocaleContext","React","createContext","I18nFieldLocaleProvider","t0","$","_c","children","value","defaultValue","onChange","locales","isControlled","undefined","t1","getPreferredLocale","getEnvironmentLocales","defaultLocale","internalLocale","setInternalLocale","useState","activeLocale","t2","next","setLocale","t3","t4","current","resolveLocaleMatch","useEffect","t5","locale","contextValue","t6","DEFAULT_LOCALE","normalizeLocaleCode","code","trim","replace","toLowerCase","primaryLocaleCode","split","normalizedLocale","availableLocales","filter","length","find","candidates","document","push","documentElement","lang","navigator","Array","from","languages","language","candidate","matchedLocale","defaultLocaleMatch","languageCodeToBadge","normalized","slice","toUpperCase","stripDiacritics","normalize","resolveLocalizedEntry","Object","prototype","hasOwnProperty","call","parts","Boolean","pop","join","resolveLocalizedValue","createDisplayNames","type","Intl","DisplayNames","isArray","safeDisplayName","displayNames","of","buildLanguageOptions","allowed","englishDisplayNames","map","name","searchable","Set","entry","sort","a","b","localeCompare","selectStyles","control","display","menu","provided","marginTop","borderRadius","boxShadow","backgroundColor","overflow","zIndex","menuList","maxHeight","padding","flexDirection","option","state","fontSize","isFocused","isSelected","color","cursor","noOptionsMessage","HiddenControl","Symbol","for","jsx","NullComponent","SearchMenuContext","SearchableMenuList","props","search","useContext","selectComponents","searchInputRef","searchTerm","event","setSearchTerm","target","onSearchKeyDown","selectFooter","Option","data","innerRef","innerProps","cn","I18nField","forwardRef","forwardedRef","className","disabled","inputClassName","localeProp","multiline","onLocaleChange","rest","selectProps","valueProp","languageSelectTabIndex","restProps","rows","initialValue","internalValue","setInternalValue","currentValue","localeContext","pool","keys","localePool","localeValues","_temp","initialLocale","t7","t8","t10","t9","t11","t12","t13","t14","option_1","_temp2","selectedOption","menuOpen","setMenuOpen","rootRef","useRef","inputRef","triggerRef","containerRef","selectRef","selectionSnapshotRef","t15","left","top","menuPosition","setMenuPosition","t16","t17","useImperativeHandle","handleLocaleSelect","option_2","nextLocale","closeMenu","t18","currentEntry","nextValue","updatedAt","Date","autoTranslated","handleTextChange","t19","currentText","t20","option_3","query","some","token","includes","filterOption","buttonPosition","t21","trigger","container","triggerRect","getBoundingClientRect","containerRect","bottom","updateMenuPosition","t22","Node","contains","isInsideComponent","t23","target_0","focus","selection","start","end","setSelectionRange","restoreMainFocus","t24","target_1","requestAnimationFrame","activeElement","t25","t26","t27","restoreFocus","forwardedSelectProps","selectPlaceholder","userClassNamePrefix","userSelectComponents","userSelectStyles","components","styles","classNamePrefix","placeholder","t28","query_0","rank","option_4","startsWith","token_0","token_1","t29","option_5","diff","filteredOptions","event_0","key","preventDefault","first","handleSearchKeyDown","t30","searchMenuContextValue","t31","t32","Control","IndicatorsContainer","DropdownIndicator","IndicatorSeparator","ValueContainer","MenuList","mergedSelectComponents","t33","t34","mergedSelectStyles","t35","t36","handleResize","window","addEventListener","removeEventListener","useLayoutEffect","t37","event_1","onFocus","t38","event_2","relatedTarget","onBlur","t39","t40","t41","ref","sharedFieldProps","t42","t43","event_3","t44","t45","t46","t47","t48","t49","target_2","selectionStart","selectionEnd","select","t50","t51","t52","_temp3","t53","t54","t55","pointerEvents","width","t56","t57","t58","t59","Select","t60","t61","t62","displayName","option_0","event_4"],"mappings":"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"}
|
package/dist/index118.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { TZDate as c } from "./
|
|
2
|
-
import "./
|
|
3
|
-
import { differenceInCalendarMonths as h } from "./
|
|
4
|
-
import { differenceInCalendarDays as O } from "./
|
|
5
|
-
import { getISOWeek as k } from "./
|
|
6
|
-
import { getWeek as w } from "./
|
|
1
|
+
import { TZDate as c } from "./index257.js";
|
|
2
|
+
import "./index258.js";
|
|
3
|
+
import { differenceInCalendarMonths as h } from "./index266.js";
|
|
4
|
+
import { differenceInCalendarDays as O } from "./index265.js";
|
|
5
|
+
import { getISOWeek as k } from "./index274.js";
|
|
6
|
+
import { getWeek as w } from "./index277.js";
|
|
7
7
|
function W(o, D = {}) {
|
|
8
8
|
const { weekStartsOn: d, locale: g } = D, l = d ?? g?.options?.weekStartsOn ?? 0, r = (t) => {
|
|
9
9
|
const e = typeof t == "number" || typeof t == "string" ? new Date(t) : t;
|
package/dist/index121.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { useEffect as D, useMemo as S } from "react";
|
|
2
|
-
import { getDates as N } from "./
|
|
3
|
-
import { getDays as w } from "./
|
|
4
|
-
import { getDisplayMonths as E } from "./
|
|
5
|
-
import { getInitialMonth as c } from "./
|
|
6
|
-
import { getMonths as b } from "./
|
|
7
|
-
import { getNavMonths as q } from "./
|
|
8
|
-
import { getNextMonth as F } from "./
|
|
9
|
-
import { getPreviousMonth as P } from "./
|
|
10
|
-
import { getWeeks as V } from "./
|
|
11
|
-
import { useControlledValue as Z } from "./
|
|
2
|
+
import { getDates as N } from "./index295.js";
|
|
3
|
+
import { getDays as w } from "./index296.js";
|
|
4
|
+
import { getDisplayMonths as E } from "./index297.js";
|
|
5
|
+
import { getInitialMonth as c } from "./index298.js";
|
|
6
|
+
import { getMonths as b } from "./index299.js";
|
|
7
|
+
import { getNavMonths as q } from "./index300.js";
|
|
8
|
+
import { getNextMonth as F } from "./index301.js";
|
|
9
|
+
import { getPreviousMonth as P } from "./index302.js";
|
|
10
|
+
import { getWeeks as V } from "./index303.js";
|
|
11
|
+
import { useControlledValue as Z } from "./index304.js";
|
|
12
12
|
function _(e, n) {
|
|
13
13
|
const [s, a] = q(e, n), { startOfMonth: i, endOfMonth: g } = n, h = c(e, s, a, n), [m, f] = Z(
|
|
14
14
|
h,
|
package/dist/index123.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useState as a } from "react";
|
|
2
|
-
import { calculateFocusTarget as T } from "./
|
|
3
|
-
import { getNextFocus as v } from "./
|
|
2
|
+
import { calculateFocusTarget as T } from "./index305.js";
|
|
3
|
+
import { getNextFocus as v } from "./index306.js";
|
|
4
4
|
function I(e, o, r, i, f) {
|
|
5
5
|
const { autoFocus: F } = e, [d, m] = a(), c = T(o.days, r, i || (() => !1), d), [s, u] = a(F ? c : void 0);
|
|
6
6
|
return {
|
package/dist/index124.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { useMulti as i } from "./
|
|
2
|
-
import { useRange as o } from "./
|
|
3
|
-
import { useSingle as s } from "./
|
|
1
|
+
import { useMulti as i } from "./index307.js";
|
|
2
|
+
import { useRange as o } from "./index308.js";
|
|
3
|
+
import { useSingle as s } from "./index309.js";
|
|
4
4
|
function f(e, n) {
|
|
5
5
|
const t = s(e, n), r = i(e, n), u = o(e, n);
|
|
6
6
|
switch (e.mode) {
|
package/dist/index125.js
CHANGED
package/dist/index127.js
CHANGED
package/dist/index129.js
CHANGED
package/dist/index172.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import b from "./index191.js";
|
|
2
2
|
import * as c from "react";
|
|
3
3
|
import { createElement as p } from "react";
|
|
4
|
-
import { useMergedRefs as E, useMergedRefsN as g } from "./
|
|
4
|
+
import { useMergedRefs as E, useMergedRefsN as g } from "./index197.js";
|
|
5
5
|
import { getReactElementRef as y } from "./index339.js";
|
|
6
6
|
import { mergeObjects as R } from "./index340.js";
|
|
7
7
|
import { warn as v } from "./index341.js";
|
|
8
|
-
import { EMPTY_OBJECT as f } from "./
|
|
8
|
+
import { EMPTY_OBJECT as f } from "./index204.js";
|
|
9
9
|
import { getStateAttributesProps as w } from "./index342.js";
|
|
10
10
|
import { resolveClassName as C } from "./index343.js";
|
|
11
11
|
import { resolveStyle as T } from "./index344.js";
|
|
12
|
-
import { mergeClassNames as _, mergeProps as h, mergePropsN as k } from "./
|
|
12
|
+
import { mergeClassNames as _, mergeProps as h, mergePropsN as k } from "./index222.js";
|
|
13
13
|
function q(r, e, t = {}) {
|
|
14
14
|
const a = e.render, s = I(e, t);
|
|
15
15
|
if (t.enabled === !1)
|
package/dist/index175.js
CHANGED
package/dist/index176.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import * as l from "react";
|
|
2
|
-
import { isHTMLElement as M } from "./
|
|
3
|
-
import { useStableCallback as H } from "./
|
|
2
|
+
import { isHTMLElement as M } from "./index249.js";
|
|
3
|
+
import { useStableCallback as H } from "./index202.js";
|
|
4
4
|
import { error as y } from "./index355.js";
|
|
5
5
|
import { SafeReact as B } from "./index356.js";
|
|
6
|
-
import { useIsoLayoutEffect as A } from "./
|
|
6
|
+
import { useIsoLayoutEffect as A } from "./index201.js";
|
|
7
7
|
import { useCompositeRootContext as L } from "./index357.js";
|
|
8
8
|
import { useFocusableWhenDisabled as W } from "./index358.js";
|
|
9
|
-
import { mergeProps as $, makeEventPreventable as x } from "./
|
|
9
|
+
import { mergeProps as $, makeEventPreventable as x } from "./index222.js";
|
|
10
10
|
function Y(a = {}) {
|
|
11
11
|
const {
|
|
12
12
|
disabled: o = !1,
|
package/dist/index178.js
CHANGED
package/dist/index182.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as l from "react";
|
|
2
|
-
import { useStableCallback as m } from "./
|
|
3
|
-
import { useAnimationsFinished as f } from "./
|
|
2
|
+
import { useStableCallback as m } from "./index202.js";
|
|
3
|
+
import { useAnimationsFinished as f } from "./index345.js";
|
|
4
4
|
function c(a) {
|
|
5
5
|
const {
|
|
6
6
|
enabled: e = !0,
|
package/dist/index184.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import * as p from "react";
|
|
2
|
-
import { isHTMLElement as G, getNodeName as We, getWindow as _e } from "./
|
|
3
|
-
import { addEventListener as I } from "./
|
|
2
|
+
import { isHTMLElement as G, getNodeName as We, getWindow as _e } from "./index249.js";
|
|
3
|
+
import { addEventListener as I } from "./index240.js";
|
|
4
4
|
import { mergeCleanups as Te } from "./index373.js";
|
|
5
|
-
import { useMergedRefs as Fe } from "./
|
|
6
|
-
import { useValueAsRef as te } from "./
|
|
7
|
-
import { useStableCallback as ne } from "./
|
|
8
|
-
import { useIsoLayoutEffect as _ } from "./
|
|
9
|
-
import { useTimeout as ye } from "./
|
|
10
|
-
import { isWebKit as Ue } from "./
|
|
11
|
-
import { useAnimationFrame as $e } from "./
|
|
12
|
-
import { ownerDocument as O } from "./
|
|
5
|
+
import { useMergedRefs as Fe } from "./index197.js";
|
|
6
|
+
import { useValueAsRef as te } from "./index203.js";
|
|
7
|
+
import { useStableCallback as ne } from "./index202.js";
|
|
8
|
+
import { useIsoLayoutEffect as _ } from "./index201.js";
|
|
9
|
+
import { useTimeout as ye } from "./index225.js";
|
|
10
|
+
import { isWebKit as Ue } from "./index241.js";
|
|
11
|
+
import { useAnimationFrame as $e } from "./index242.js";
|
|
12
|
+
import { ownerDocument as O } from "./index224.js";
|
|
13
13
|
import { FocusGuard as xe } from "./index374.js";
|
|
14
|
-
import { isTypeableCombobox as Ie, getFloatingFocusElement as he, isTypeableElement as Be } from "./
|
|
14
|
+
import { isTypeableCombobox as Ie, getFloatingFocusElement as he, isTypeableElement as Be } from "./index230.js";
|
|
15
15
|
import { isVirtualClick as ze, isVirtualPointerEvent as Je, stopEvent as Qe } from "./index375.js";
|
|
16
16
|
import { isOutsideEvent as ve, getNextTabbable as Xe, getPreviousTabbable as Ye, tabbable as Se, isTabbable as ue, focusable as Ze } from "./index376.js";
|
|
17
17
|
import { getNodeAncestors as Ce, getNodeChildren as ke } from "./index377.js";
|
|
@@ -25,7 +25,7 @@ import { useFloatingTree as rt } from "./index382.js";
|
|
|
25
25
|
import { CLICK_TRIGGER_IDENTIFIER as ot } from "./index192.js";
|
|
26
26
|
import { resolveRef as w } from "./index383.js";
|
|
27
27
|
import { j as oe } from "./index30.js";
|
|
28
|
-
import { activeElement as V, contains as a, getTarget as B } from "./
|
|
28
|
+
import { activeElement as V, contains as a, getTarget as B } from "./index231.js";
|
|
29
29
|
import { triggerHover as st, outsidePress as ut, focusOut as it } from "./index177.js";
|
|
30
30
|
function ct(t, h) {
|
|
31
31
|
const D = _e(B(t));
|
package/dist/index185.js
CHANGED
package/dist/index187.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import * as o from "react";
|
|
2
2
|
import * as I from "react-dom";
|
|
3
|
-
import { isNode as V } from "./
|
|
4
|
-
import { addEventListener as O } from "./
|
|
3
|
+
import { isNode as V } from "./index249.js";
|
|
4
|
+
import { addEventListener as O } from "./index240.js";
|
|
5
5
|
import { mergeCleanups as w } from "./index373.js";
|
|
6
|
-
import { useId as G } from "./
|
|
7
|
-
import { useIsoLayoutEffect as _ } from "./
|
|
8
|
-
import { useStableCallback as L } from "./
|
|
9
|
-
import { EMPTY_OBJECT as k } from "./
|
|
6
|
+
import { useId as G } from "./index346.js";
|
|
7
|
+
import { useIsoLayoutEffect as _ } from "./index201.js";
|
|
8
|
+
import { useStableCallback as L } from "./index202.js";
|
|
9
|
+
import { EMPTY_OBJECT as k } from "./index204.js";
|
|
10
10
|
import { FocusGuard as S } from "./index374.js";
|
|
11
11
|
import { enableFocusInside as T, isOutsideEvent as C, getPreviousTabbable as q, getNextTabbable as A, disableFocusInside as B } from "./index376.js";
|
|
12
12
|
import { createChangeEventDetails as H } from "./index175.js";
|
package/dist/index189.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as t from "react";
|
|
2
|
-
import { useScrollLock as v } from "./
|
|
3
|
-
import { useOpenInteractionType as I } from "./
|
|
2
|
+
import { useScrollLock as v } from "./index348.js";
|
|
3
|
+
import { useOpenInteractionType as I } from "./index215.js";
|
|
4
4
|
import { createChangeEventDetails as A } from "./index175.js";
|
|
5
5
|
import { useImplicitActiveTrigger as M, useOpenStateTransitions as B } from "./index193.js";
|
|
6
|
-
import { useSyncedFloatingRootContext as F } from "./
|
|
7
|
-
import { useRole as H } from "./
|
|
8
|
-
import { useDismiss as K } from "./
|
|
6
|
+
import { useSyncedFloatingRootContext as F } from "./index349.js";
|
|
7
|
+
import { useRole as H } from "./index350.js";
|
|
8
|
+
import { useDismiss as K } from "./index219.js";
|
|
9
9
|
import { useInteractions as L } from "./index195.js";
|
|
10
|
-
import { getTarget as U, contains as V } from "./
|
|
10
|
+
import { getTarget as U, contains as V } from "./index231.js";
|
|
11
11
|
import { imperativeAction as j } from "./index177.js";
|
|
12
12
|
function $(P) {
|
|
13
13
|
const {
|
package/dist/index190.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as i from "react";
|
|
2
|
-
import { useRefWithInit as d } from "./
|
|
3
|
-
import { ReactStore as a } from "./
|
|
4
|
-
import { PopupTriggerMap as p } from "./
|
|
5
|
-
import { popupStoreSelectors as u, createInitialPopupStoreState as c } from "./
|
|
6
|
-
import { createSelector as n } from "./
|
|
2
|
+
import { useRefWithInit as d } from "./index198.js";
|
|
3
|
+
import { ReactStore as a } from "./index351.js";
|
|
4
|
+
import { PopupTriggerMap as p } from "./index352.js";
|
|
5
|
+
import { popupStoreSelectors as u, createInitialPopupStoreState as c } from "./index353.js";
|
|
6
|
+
import { createSelector as n } from "./index354.js";
|
|
7
7
|
const m = {
|
|
8
8
|
...u,
|
|
9
9
|
modal: n((e) => e.modal),
|
package/dist/index193.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as l from "react";
|
|
2
|
-
import { useStableCallback as a } from "./
|
|
3
|
-
import { useIsoLayoutEffect as s } from "./
|
|
4
|
-
import { useTransitionStatus as f } from "./
|
|
2
|
+
import { useStableCallback as a } from "./index202.js";
|
|
3
|
+
import { useIsoLayoutEffect as s } from "./index201.js";
|
|
4
|
+
import { useTransitionStatus as f } from "./index209.js";
|
|
5
5
|
import { useOpenChangeComplete as m } from "./index182.js";
|
|
6
6
|
function d(e, n) {
|
|
7
7
|
const t = l.useRef(null), r = l.useRef(null);
|
package/dist/index194.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as k from "react";
|
|
2
|
-
import { useAnimationFrame as b } from "./
|
|
3
|
-
import { useTimeout as I } from "./
|
|
4
|
-
import { EMPTY_OBJECT as x } from "./
|
|
5
|
-
import { isTypeableElement as L } from "./
|
|
2
|
+
import { useAnimationFrame as b } from "./index242.js";
|
|
3
|
+
import { useTimeout as I } from "./index225.js";
|
|
4
|
+
import { EMPTY_OBJECT as x } from "./index204.js";
|
|
5
|
+
import { isTypeableElement as L } from "./index230.js";
|
|
6
6
|
import { isMouseLikePointerType as M, isClickLikeEvent as S } from "./index375.js";
|
|
7
7
|
import { createChangeEventDetails as y } from "./index175.js";
|
|
8
|
-
import { getTarget as q } from "./
|
|
8
|
+
import { getTarget as q } from "./index231.js";
|
|
9
9
|
import { triggerPress as A } from "./index177.js";
|
|
10
10
|
function G(T, D = {}) {
|
|
11
11
|
const e = "rootStore" in T ? T.rootStore : T, g = e.context.dataRef, {
|