tekivex-ui 2.5.15 → 2.6.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/charts.cjs +1 -1
- package/dist/charts.js +22 -553
- package/dist/chunk-B3ph66Zb.js +1 -0
- package/dist/chunk-Bc16rJT-.js +1 -0
- package/dist/chunk-Dike2DLU.js +3 -0
- package/dist/chunk-DjxOP8W4.js +1 -0
- package/dist/chunk-DkoFTL1O.js +1 -0
- package/dist/chunk-DmRB1Blb.js +1 -0
- package/dist/chunk-DnCXUUx5.js +1 -0
- package/dist/chunk-LWkKqC8d.js +1 -0
- package/dist/chunk-PJ50l0JC.js +1 -0
- package/dist/headless.cjs +1 -1
- package/dist/headless.js +1 -442
- package/dist/i18n.cjs +1 -1
- package/dist/i18n.js +1 -733
- package/dist/index.cjs +1 -152
- package/dist/index.d.ts +4 -2
- package/dist/index.js +429 -16786
- package/dist/quantum.cjs +1 -89
- package/dist/quantum.js +74 -2551
- package/dist/realtime.cjs +1 -23
- package/dist/realtime.js +1 -804
- package/dist/src/a11y/index.d.ts +0 -1
- package/dist/src/charts/TkxAreaChart.d.ts +0 -5
- package/dist/src/charts/TkxBarChart.d.ts +0 -3
- package/dist/src/charts/TkxDonutChart.d.ts +0 -5
- package/dist/src/charts/TkxLineChart.d.ts +0 -1
- package/dist/src/charts/TkxPieChart.d.ts +0 -3
- package/dist/src/charts/TkxRadarChart.d.ts +0 -3
- package/dist/src/charts/TkxScatterChart.d.ts +0 -2
- package/dist/src/charts/index.d.ts +0 -1
- package/dist/src/charts/shared.d.ts +0 -3
- package/dist/src/components/TkxAIChatBubble.d.ts +0 -9
- package/dist/src/components/TkxAIConfidenceBar.d.ts +0 -6
- package/dist/src/components/TkxAIThinking.d.ts +0 -6
- package/dist/src/components/TkxAccordion.d.ts +0 -1
- package/dist/src/components/TkxAffix.d.ts +0 -1
- package/dist/src/components/TkxAlert.d.ts +0 -1
- package/dist/src/components/TkxAnchor.d.ts +0 -1
- package/dist/src/components/TkxAppBar.d.ts +0 -1
- package/dist/src/components/TkxAutocomplete.d.ts +0 -1
- package/dist/src/components/TkxAvatar.d.ts +0 -1
- package/dist/src/components/TkxBadge.d.ts +0 -1
- package/dist/src/components/TkxBottomNav.d.ts +0 -1
- package/dist/src/components/TkxBreadcrumb.d.ts +0 -1
- package/dist/src/components/TkxButton.d.ts +0 -1
- package/dist/src/components/TkxCard.d.ts +0 -1
- package/dist/src/components/TkxCarousel.d.ts +0 -1
- package/dist/src/components/TkxCascader.d.ts +0 -1
- package/dist/src/components/TkxChat.d.ts +0 -1
- package/dist/src/components/TkxCheckbox.d.ts +0 -1
- package/dist/src/components/TkxClock.d.ts +0 -1
- package/dist/src/components/TkxColorPicker.d.ts +0 -1
- package/dist/src/components/TkxCommand.d.ts +0 -1
- package/dist/src/components/TkxConfigProvider.d.ts +0 -30
- package/dist/src/components/TkxDataGrid.d.ts +0 -15
- package/dist/src/components/TkxDatePicker.d.ts +0 -1
- package/dist/src/components/TkxDivider.d.ts +0 -1
- package/dist/src/components/TkxDrawer.d.ts +0 -1
- package/dist/src/components/TkxDropdown.d.ts +0 -1
- package/dist/src/components/TkxEmpty.d.ts +0 -1
- package/dist/src/components/TkxFileUpload.d.ts +0 -1
- package/dist/src/components/TkxForm.d.ts +0 -35
- package/dist/src/components/TkxIcon.d.ts +0 -1
- package/dist/src/components/TkxImage.d.ts +0 -1
- package/dist/src/components/TkxInput.d.ts +1 -1
- package/dist/src/components/TkxLayout.d.ts +0 -22
- package/dist/src/components/TkxList.d.ts +0 -1
- package/dist/src/components/TkxLiveFeed.d.ts +0 -1
- package/dist/src/components/TkxLiveLog.d.ts +0 -1
- package/dist/src/components/TkxLiveMetrics.d.ts +0 -1
- package/dist/src/components/TkxLogo.d.ts +0 -1
- package/dist/src/components/TkxMarkdown.d.ts +0 -10
- package/dist/src/components/TkxMasonry.d.ts +0 -1
- package/dist/src/components/TkxMentions.d.ts +0 -1
- package/dist/src/components/TkxMenu.d.ts +0 -1
- package/dist/src/components/TkxModal.d.ts +0 -1
- package/dist/src/components/TkxNumberInput.d.ts +0 -1
- package/dist/src/components/TkxOTP.d.ts +0 -1
- package/dist/src/components/TkxOrgChart.d.ts +32 -0
- package/dist/src/components/TkxPagination.d.ts +0 -1
- package/dist/src/components/TkxPlayground.d.ts +0 -13
- package/dist/src/components/TkxPopover.d.ts +0 -1
- package/dist/src/components/TkxProgress.d.ts +0 -1
- package/dist/src/components/TkxQRCode.d.ts +0 -1
- package/dist/src/components/TkxQuantumForm.d.ts +0 -1
- package/dist/src/components/TkxRadio.d.ts +0 -1
- package/dist/src/components/TkxRating.d.ts +0 -1
- package/dist/src/components/TkxRealTimeChart.d.ts +0 -1
- package/dist/src/components/TkxResult.d.ts +0 -1
- package/dist/src/components/TkxRichTextDisplay.d.ts +0 -1
- package/dist/src/components/TkxSegmented.d.ts +0 -1
- package/dist/src/components/TkxSelect.d.ts +0 -3
- package/dist/src/components/TkxSkeleton.d.ts +0 -1
- package/dist/src/components/TkxSlider.d.ts +0 -1
- package/dist/src/components/TkxSnackbar.d.ts +0 -1
- package/dist/src/components/TkxSpeedDial.d.ts +0 -1
- package/dist/src/components/TkxSpin.d.ts +0 -1
- package/dist/src/components/TkxStatistic.d.ts +0 -1
- package/dist/src/components/TkxStepper.d.ts +0 -1
- package/dist/src/components/TkxTable.d.ts +0 -1
- package/dist/src/components/TkxTabs.d.ts +0 -1
- package/dist/src/components/TkxTag.d.ts +0 -1
- package/dist/src/components/TkxThemeBuilder.d.ts +0 -1
- package/dist/src/components/TkxTimeline.d.ts +0 -1
- package/dist/src/components/TkxToast.d.ts +0 -1
- package/dist/src/components/TkxToggle.d.ts +0 -1
- package/dist/src/components/TkxToolbar.d.ts +0 -1
- package/dist/src/components/TkxTooltip.d.ts +0 -1
- package/dist/src/components/TkxTour.d.ts +0 -1
- package/dist/src/components/TkxTransferList.d.ts +0 -1
- package/dist/src/components/TkxTreeView.d.ts +0 -1
- package/dist/src/components/TkxTypography.d.ts +0 -1
- package/dist/src/components/TkxVideoPlayer.d.ts +0 -1
- package/dist/src/components/TkxWatermark.d.ts +0 -1
- package/dist/src/components/index.d.ts +1 -1
- package/dist/src/engine/css.d.ts +0 -1
- package/dist/src/engine/index.d.ts +0 -1
- package/dist/src/engine/quantum-ai.d.ts +0 -73
- package/dist/src/engine/quantum.d.ts +0 -1
- package/dist/src/engine/security.d.ts +45 -9
- package/dist/src/engine/tkx.d.ts +0 -53
- package/dist/src/engine/wcag.d.ts +0 -1
- package/dist/src/headless/index.d.ts +0 -1
- package/dist/src/headless/useControllable.d.ts +0 -15
- package/dist/src/headless/useDebounce.d.ts +0 -12
- package/dist/src/headless/useDisclosure.d.ts +0 -13
- package/dist/src/headless/useFormState.d.ts +0 -13
- package/dist/src/headless/useInfiniteQuery.d.ts +0 -11
- package/dist/src/headless/useIntersectionObserver.d.ts +0 -10
- package/dist/src/headless/useListSelection.d.ts +0 -9
- package/dist/src/headless/useLocalStorage.d.ts +0 -8
- package/dist/src/headless/useMediaQuery.d.ts +0 -10
- package/dist/src/headless/useRovingTabIndex.d.ts +0 -15
- package/dist/src/headless/useSSE.d.ts +0 -9
- package/dist/src/headless/useThrottle.d.ts +0 -7
- package/dist/src/headless/useWebSocket.d.ts +0 -9
- package/dist/src/hooks/index.d.ts +0 -1
- package/dist/src/i18n/I18nProvider.d.ts +0 -1
- package/dist/src/i18n/index.d.ts +0 -1
- package/dist/src/quantum/index.d.ts +0 -1
- package/dist/src/realtime/index.d.ts +0 -1
- package/dist/src/themes/index.d.ts +0 -1
- package/package.json +5 -3
- package/dist/TkxForm-BaO4wvXt.js +0 -320
- package/dist/TkxForm-M6ttomry.cjs +0 -12
- package/dist/chunk-Bmb41Sf3.cjs +0 -1
- package/dist/hooks-6pRsPOyG.js +0 -58
- package/dist/hooks-mivgRljH.cjs +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/src/a11y/index.d.ts.map +0 -1
- package/dist/src/charts/TkxAreaChart.d.ts.map +0 -1
- package/dist/src/charts/TkxBarChart.d.ts.map +0 -1
- package/dist/src/charts/TkxDonutChart.d.ts.map +0 -1
- package/dist/src/charts/TkxLineChart.d.ts.map +0 -1
- package/dist/src/charts/TkxPieChart.d.ts.map +0 -1
- package/dist/src/charts/TkxRadarChart.d.ts.map +0 -1
- package/dist/src/charts/TkxScatterChart.d.ts.map +0 -1
- package/dist/src/charts/index.d.ts.map +0 -1
- package/dist/src/charts/shared.d.ts.map +0 -1
- package/dist/src/components/TkxAIChatBubble.d.ts.map +0 -1
- package/dist/src/components/TkxAIConfidenceBar.d.ts.map +0 -1
- package/dist/src/components/TkxAIThinking.d.ts.map +0 -1
- package/dist/src/components/TkxAccordion.d.ts.map +0 -1
- package/dist/src/components/TkxAffix.d.ts.map +0 -1
- package/dist/src/components/TkxAlert.d.ts.map +0 -1
- package/dist/src/components/TkxAnchor.d.ts.map +0 -1
- package/dist/src/components/TkxAppBar.d.ts.map +0 -1
- package/dist/src/components/TkxAutocomplete.d.ts.map +0 -1
- package/dist/src/components/TkxAvatar.d.ts.map +0 -1
- package/dist/src/components/TkxBadge.d.ts.map +0 -1
- package/dist/src/components/TkxBottomNav.d.ts.map +0 -1
- package/dist/src/components/TkxBreadcrumb.d.ts.map +0 -1
- package/dist/src/components/TkxButton.d.ts.map +0 -1
- package/dist/src/components/TkxCard.d.ts.map +0 -1
- package/dist/src/components/TkxCarousel.d.ts.map +0 -1
- package/dist/src/components/TkxCascader.d.ts.map +0 -1
- package/dist/src/components/TkxChat.d.ts.map +0 -1
- package/dist/src/components/TkxCheckbox.d.ts.map +0 -1
- package/dist/src/components/TkxClock.d.ts.map +0 -1
- package/dist/src/components/TkxColorPicker.d.ts.map +0 -1
- package/dist/src/components/TkxCommand.d.ts.map +0 -1
- package/dist/src/components/TkxConfigProvider.d.ts.map +0 -1
- package/dist/src/components/TkxDataGrid.d.ts.map +0 -1
- package/dist/src/components/TkxDatePicker.d.ts.map +0 -1
- package/dist/src/components/TkxDivider.d.ts.map +0 -1
- package/dist/src/components/TkxDrawer.d.ts.map +0 -1
- package/dist/src/components/TkxDropdown.d.ts.map +0 -1
- package/dist/src/components/TkxEmpty.d.ts.map +0 -1
- package/dist/src/components/TkxFileUpload.d.ts.map +0 -1
- package/dist/src/components/TkxForm.d.ts.map +0 -1
- package/dist/src/components/TkxIcon.d.ts.map +0 -1
- package/dist/src/components/TkxImage.d.ts.map +0 -1
- package/dist/src/components/TkxInput.d.ts.map +0 -1
- package/dist/src/components/TkxLayout.d.ts.map +0 -1
- package/dist/src/components/TkxList.d.ts.map +0 -1
- package/dist/src/components/TkxLiveFeed.d.ts.map +0 -1
- package/dist/src/components/TkxLiveLog.d.ts.map +0 -1
- package/dist/src/components/TkxLiveMetrics.d.ts.map +0 -1
- package/dist/src/components/TkxLogo.d.ts.map +0 -1
- package/dist/src/components/TkxMarkdown.d.ts.map +0 -1
- package/dist/src/components/TkxMasonry.d.ts.map +0 -1
- package/dist/src/components/TkxMentions.d.ts.map +0 -1
- package/dist/src/components/TkxMenu.d.ts.map +0 -1
- package/dist/src/components/TkxModal.d.ts.map +0 -1
- package/dist/src/components/TkxNumberInput.d.ts.map +0 -1
- package/dist/src/components/TkxOTP.d.ts.map +0 -1
- package/dist/src/components/TkxPagination.d.ts.map +0 -1
- package/dist/src/components/TkxPlayground.d.ts.map +0 -1
- package/dist/src/components/TkxPopover.d.ts.map +0 -1
- package/dist/src/components/TkxProgress.d.ts.map +0 -1
- package/dist/src/components/TkxQRCode.d.ts.map +0 -1
- package/dist/src/components/TkxQuantumForm.d.ts.map +0 -1
- package/dist/src/components/TkxRadio.d.ts.map +0 -1
- package/dist/src/components/TkxRating.d.ts.map +0 -1
- package/dist/src/components/TkxRealTimeChart.d.ts.map +0 -1
- package/dist/src/components/TkxResult.d.ts.map +0 -1
- package/dist/src/components/TkxRichTextDisplay.d.ts.map +0 -1
- package/dist/src/components/TkxSegmented.d.ts.map +0 -1
- package/dist/src/components/TkxSelect.d.ts.map +0 -1
- package/dist/src/components/TkxSkeleton.d.ts.map +0 -1
- package/dist/src/components/TkxSlider.d.ts.map +0 -1
- package/dist/src/components/TkxSnackbar.d.ts.map +0 -1
- package/dist/src/components/TkxSpeedDial.d.ts.map +0 -1
- package/dist/src/components/TkxSpin.d.ts.map +0 -1
- package/dist/src/components/TkxStatistic.d.ts.map +0 -1
- package/dist/src/components/TkxStepper.d.ts.map +0 -1
- package/dist/src/components/TkxTable.d.ts.map +0 -1
- package/dist/src/components/TkxTabs.d.ts.map +0 -1
- package/dist/src/components/TkxTag.d.ts.map +0 -1
- package/dist/src/components/TkxThemeBuilder.d.ts.map +0 -1
- package/dist/src/components/TkxTimeline.d.ts.map +0 -1
- package/dist/src/components/TkxToast.d.ts.map +0 -1
- package/dist/src/components/TkxToggle.d.ts.map +0 -1
- package/dist/src/components/TkxToolbar.d.ts.map +0 -1
- package/dist/src/components/TkxTooltip.d.ts.map +0 -1
- package/dist/src/components/TkxTour.d.ts.map +0 -1
- package/dist/src/components/TkxTransferList.d.ts.map +0 -1
- package/dist/src/components/TkxTreeView.d.ts.map +0 -1
- package/dist/src/components/TkxTypography.d.ts.map +0 -1
- package/dist/src/components/TkxVideoPlayer.d.ts.map +0 -1
- package/dist/src/components/TkxWatermark.d.ts.map +0 -1
- package/dist/src/components/index.d.ts.map +0 -1
- package/dist/src/engine/css.d.ts.map +0 -1
- package/dist/src/engine/index.d.ts.map +0 -1
- package/dist/src/engine/quantum-ai.d.ts.map +0 -1
- package/dist/src/engine/quantum.d.ts.map +0 -1
- package/dist/src/engine/security.d.ts.map +0 -1
- package/dist/src/engine/tkx.d.ts.map +0 -1
- package/dist/src/engine/wcag.d.ts.map +0 -1
- package/dist/src/headless/index.d.ts.map +0 -1
- package/dist/src/headless/useControllable.d.ts.map +0 -1
- package/dist/src/headless/useDebounce.d.ts.map +0 -1
- package/dist/src/headless/useDisclosure.d.ts.map +0 -1
- package/dist/src/headless/useFormState.d.ts.map +0 -1
- package/dist/src/headless/useInfiniteQuery.d.ts.map +0 -1
- package/dist/src/headless/useIntersectionObserver.d.ts.map +0 -1
- package/dist/src/headless/useListSelection.d.ts.map +0 -1
- package/dist/src/headless/useLocalStorage.d.ts.map +0 -1
- package/dist/src/headless/useMediaQuery.d.ts.map +0 -1
- package/dist/src/headless/useRovingTabIndex.d.ts.map +0 -1
- package/dist/src/headless/useSSE.d.ts.map +0 -1
- package/dist/src/headless/useThrottle.d.ts.map +0 -1
- package/dist/src/headless/useWebSocket.d.ts.map +0 -1
- package/dist/src/hooks/index.d.ts.map +0 -1
- package/dist/src/i18n/I18nProvider.d.ts.map +0 -1
- package/dist/src/i18n/index.d.ts.map +0 -1
- package/dist/src/quantum/index.d.ts.map +0 -1
- package/dist/src/realtime/index.d.ts.map +0 -1
- package/dist/src/themes/index.d.ts.map +0 -1
- package/dist/themes-BbJanqiC.js +0 -498
- package/dist/themes-CMq2vWXj.cjs +0 -2
- package/dist/tkx-BoP5V5zy.cjs +0 -4
- package/dist/tkx-mOKMzvUK.js +0 -1174
- package/src/a11y/index.tsx +0 -87
- package/src/charts/TkxAreaChart.tsx +0 -121
- package/src/charts/TkxBarChart.tsx +0 -117
- package/src/charts/TkxDonutChart.tsx +0 -164
- package/src/charts/TkxLineChart.tsx +0 -137
- package/src/charts/TkxPieChart.tsx +0 -103
- package/src/charts/TkxRadarChart.tsx +0 -92
- package/src/charts/TkxScatterChart.tsx +0 -104
- package/src/charts/index.ts +0 -22
- package/src/charts/shared.ts +0 -47
- package/src/components/TkxAIChatBubble.tsx +0 -256
- package/src/components/TkxAIConfidenceBar.tsx +0 -133
- package/src/components/TkxAIThinking.tsx +0 -193
- package/src/components/TkxAccordion.tsx +0 -590
- package/src/components/TkxAffix.tsx +0 -140
- package/src/components/TkxAlert.tsx +0 -94
- package/src/components/TkxAnchor.tsx +0 -195
- package/src/components/TkxAppBar.tsx +0 -262
- package/src/components/TkxAutocomplete.tsx +0 -455
- package/src/components/TkxAvatar.tsx +0 -103
- package/src/components/TkxBadge.tsx +0 -75
- package/src/components/TkxBottomNav.tsx +0 -241
- package/src/components/TkxBreadcrumb.tsx +0 -324
- package/src/components/TkxButton.tsx +0 -155
- package/src/components/TkxCard.tsx +0 -96
- package/src/components/TkxCarousel.tsx +0 -554
- package/src/components/TkxCascader.tsx +0 -278
- package/src/components/TkxChat.tsx +0 -356
- package/src/components/TkxCheckbox.tsx +0 -220
- package/src/components/TkxClock.tsx +0 -603
- package/src/components/TkxColorPicker.tsx +0 -635
- package/src/components/TkxCommand.tsx +0 -646
- package/src/components/TkxConfigProvider.tsx +0 -460
- package/src/components/TkxDataGrid.tsx +0 -941
- package/src/components/TkxDatePicker.tsx +0 -1625
- package/src/components/TkxDivider.tsx +0 -51
- package/src/components/TkxDrawer.tsx +0 -236
- package/src/components/TkxDropdown.tsx +0 -804
- package/src/components/TkxEmpty.tsx +0 -221
- package/src/components/TkxFileUpload.tsx +0 -373
- package/src/components/TkxForm.tsx +0 -683
- package/src/components/TkxIcon.tsx +0 -685
- package/src/components/TkxImage.tsx +0 -279
- package/src/components/TkxInput.tsx +0 -103
- package/src/components/TkxLayout.tsx +0 -649
- package/src/components/TkxList.tsx +0 -244
- package/src/components/TkxLiveFeed.tsx +0 -331
- package/src/components/TkxLiveLog.tsx +0 -472
- package/src/components/TkxLiveMetrics.tsx +0 -315
- package/src/components/TkxLogo.tsx +0 -299
- package/src/components/TkxMarkdown.tsx +0 -855
- package/src/components/TkxMasonry.tsx +0 -178
- package/src/components/TkxMentions.tsx +0 -212
- package/src/components/TkxMenu.tsx +0 -1044
- package/src/components/TkxModal.tsx +0 -122
- package/src/components/TkxNumberInput.tsx +0 -410
- package/src/components/TkxOTP.tsx +0 -297
- package/src/components/TkxPagination.tsx +0 -390
- package/src/components/TkxPlayground.tsx +0 -845
- package/src/components/TkxPopover.tsx +0 -297
- package/src/components/TkxProgress.tsx +0 -114
- package/src/components/TkxQRCode.tsx +0 -176
- package/src/components/TkxQuantumForm.tsx +0 -594
- package/src/components/TkxRadio.tsx +0 -286
- package/src/components/TkxRating.tsx +0 -288
- package/src/components/TkxRealTimeChart.tsx +0 -383
- package/src/components/TkxResult.tsx +0 -130
- package/src/components/TkxRichTextDisplay.tsx +0 -396
- package/src/components/TkxSegmented.tsx +0 -171
- package/src/components/TkxSelect.tsx +0 -1130
- package/src/components/TkxSkeleton.tsx +0 -107
- package/src/components/TkxSlider.tsx +0 -495
- package/src/components/TkxSnackbar.tsx +0 -316
- package/src/components/TkxSpeedDial.tsx +0 -397
- package/src/components/TkxSpin.tsx +0 -263
- package/src/components/TkxStatistic.tsx +0 -263
- package/src/components/TkxStepper.tsx +0 -487
- package/src/components/TkxTable.tsx +0 -424
- package/src/components/TkxTabs.tsx +0 -126
- package/src/components/TkxTag.tsx +0 -321
- package/src/components/TkxThemeBuilder.tsx +0 -687
- package/src/components/TkxTimeline.tsx +0 -305
- package/src/components/TkxToast.tsx +0 -287
- package/src/components/TkxToggle.tsx +0 -95
- package/src/components/TkxToolbar.tsx +0 -262
- package/src/components/TkxTooltip.tsx +0 -85
- package/src/components/TkxTour.tsx +0 -241
- package/src/components/TkxTransferList.tsx +0 -489
- package/src/components/TkxTreeView.tsx +0 -423
- package/src/components/TkxTypography.tsx +0 -267
- package/src/components/TkxVideoPlayer.tsx +0 -1015
- package/src/components/TkxWatermark.tsx +0 -145
- package/src/components/index.ts +0 -80
- package/src/engine/css.ts +0 -126
- package/src/engine/index.ts +0 -12
- package/src/engine/quantum-ai.ts +0 -1045
- package/src/engine/quantum.ts +0 -207
- package/src/engine/security.ts +0 -232
- package/src/engine/tkx.ts +0 -1084
- package/src/engine/wcag.ts +0 -276
- package/src/headless/index.ts +0 -52
- package/src/headless/useControllable.ts +0 -42
- package/src/headless/useDebounce.ts +0 -37
- package/src/headless/useDisclosure.ts +0 -30
- package/src/headless/useFormState.ts +0 -113
- package/src/headless/useInfiniteQuery.ts +0 -155
- package/src/headless/useIntersectionObserver.ts +0 -53
- package/src/headless/useListSelection.ts +0 -103
- package/src/headless/useLocalStorage.ts +0 -48
- package/src/headless/useMediaQuery.ts +0 -39
- package/src/headless/useRovingTabIndex.ts +0 -86
- package/src/headless/useSSE.ts +0 -167
- package/src/headless/useThrottle.ts +0 -48
- package/src/headless/useWebSocket.ts +0 -231
- package/src/hooks/index.ts +0 -122
- package/src/i18n/I18nProvider.tsx +0 -36
- package/src/i18n/index.ts +0 -877
- package/src/quantum/index.ts +0 -39
- package/src/realtime/index.ts +0 -21
- package/src/styles/global.css +0 -167
- package/src/themes/index.ts +0 -294
package/src/i18n/index.ts
DELETED
|
@@ -1,877 +0,0 @@
|
|
|
1
|
-
import { createContext, useContext } from 'react';
|
|
2
|
-
|
|
3
|
-
// ── Direction ───────────────────────────────────────────────────────────────
|
|
4
|
-
|
|
5
|
-
export type Direction = 'ltr' | 'rtl';
|
|
6
|
-
|
|
7
|
-
// ── Locale strings ──────────────────────────────────────────────────────────
|
|
8
|
-
|
|
9
|
-
export interface LocaleStrings {
|
|
10
|
-
// Common
|
|
11
|
-
close: string;
|
|
12
|
-
cancel: string;
|
|
13
|
-
confirm: string;
|
|
14
|
-
save: string;
|
|
15
|
-
delete: string;
|
|
16
|
-
search: string;
|
|
17
|
-
loading: string;
|
|
18
|
-
noResults: string;
|
|
19
|
-
required: string;
|
|
20
|
-
|
|
21
|
-
// Pagination
|
|
22
|
-
previous: string;
|
|
23
|
-
next: string;
|
|
24
|
-
pageOf: (page: number, total: number) => string;
|
|
25
|
-
|
|
26
|
-
// Select
|
|
27
|
-
selectPlaceholder: string;
|
|
28
|
-
clearSelection: string;
|
|
29
|
-
|
|
30
|
-
// DatePicker
|
|
31
|
-
selectDate: string;
|
|
32
|
-
today: string;
|
|
33
|
-
|
|
34
|
-
// FileUpload
|
|
35
|
-
dropFiles: string;
|
|
36
|
-
browse: string;
|
|
37
|
-
|
|
38
|
-
// Table / DataGrid
|
|
39
|
-
noData: string;
|
|
40
|
-
sortAscending: string;
|
|
41
|
-
sortDescending: string;
|
|
42
|
-
filterPlaceholder: string;
|
|
43
|
-
exportCsv: string;
|
|
44
|
-
rowsSelected: (n: number) => string;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
// ── Helper — build a locale without having to re-type every key ─────────────
|
|
48
|
-
|
|
49
|
-
function locale(strings: LocaleStrings): LocaleStrings {
|
|
50
|
-
return strings;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
// ── Locales ─────────────────────────────────────────────────────────────────
|
|
54
|
-
|
|
55
|
-
// English (United States)
|
|
56
|
-
export const enUS = locale({
|
|
57
|
-
close: 'Close',
|
|
58
|
-
cancel: 'Cancel',
|
|
59
|
-
confirm: 'Confirm',
|
|
60
|
-
save: 'Save',
|
|
61
|
-
delete: 'Delete',
|
|
62
|
-
search: 'Search',
|
|
63
|
-
loading: 'Loading...',
|
|
64
|
-
noResults: 'No results found',
|
|
65
|
-
required: 'Required',
|
|
66
|
-
previous: 'Previous',
|
|
67
|
-
next: 'Next',
|
|
68
|
-
pageOf: (page, total) => `Page ${page} of ${total}`,
|
|
69
|
-
selectPlaceholder: 'Select...',
|
|
70
|
-
clearSelection: 'Clear selection',
|
|
71
|
-
selectDate: 'Select a date',
|
|
72
|
-
today: 'Today',
|
|
73
|
-
dropFiles: 'Drop files here or',
|
|
74
|
-
browse: 'Browse',
|
|
75
|
-
noData: 'No data available',
|
|
76
|
-
sortAscending: 'Sort ascending',
|
|
77
|
-
sortDescending: 'Sort descending',
|
|
78
|
-
filterPlaceholder: 'Filter...',
|
|
79
|
-
exportCsv: 'Export CSV',
|
|
80
|
-
rowsSelected: (n) => `${n} row${n === 1 ? '' : 's'} selected`,
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
// Spanish (Spain)
|
|
84
|
-
export const esES = locale({
|
|
85
|
-
close: 'Cerrar',
|
|
86
|
-
cancel: 'Cancelar',
|
|
87
|
-
confirm: 'Confirmar',
|
|
88
|
-
save: 'Guardar',
|
|
89
|
-
delete: 'Eliminar',
|
|
90
|
-
search: 'Buscar',
|
|
91
|
-
loading: 'Cargando...',
|
|
92
|
-
noResults: 'No se encontraron resultados',
|
|
93
|
-
required: 'Requerido',
|
|
94
|
-
previous: 'Anterior',
|
|
95
|
-
next: 'Siguiente',
|
|
96
|
-
pageOf: (page, total) => `Página ${page} de ${total}`,
|
|
97
|
-
selectPlaceholder: 'Seleccionar...',
|
|
98
|
-
clearSelection: 'Limpiar selección',
|
|
99
|
-
selectDate: 'Seleccionar fecha',
|
|
100
|
-
today: 'Hoy',
|
|
101
|
-
dropFiles: 'Suelte archivos aquí o',
|
|
102
|
-
browse: 'Explorar',
|
|
103
|
-
noData: 'No hay datos disponibles',
|
|
104
|
-
sortAscending: 'Orden ascendente',
|
|
105
|
-
sortDescending: 'Orden descendente',
|
|
106
|
-
filterPlaceholder: 'Filtrar...',
|
|
107
|
-
exportCsv: 'Exportar CSV',
|
|
108
|
-
rowsSelected: (n) => `${n} fila${n === 1 ? '' : 's'} seleccionada${n === 1 ? '' : 's'}`,
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
// Portuguese (Brazil)
|
|
112
|
-
export const ptBR = locale({
|
|
113
|
-
close: 'Fechar',
|
|
114
|
-
cancel: 'Cancelar',
|
|
115
|
-
confirm: 'Confirmar',
|
|
116
|
-
save: 'Salvar',
|
|
117
|
-
delete: 'Excluir',
|
|
118
|
-
search: 'Pesquisar',
|
|
119
|
-
loading: 'Carregando...',
|
|
120
|
-
noResults: 'Nenhum resultado encontrado',
|
|
121
|
-
required: 'Obrigatório',
|
|
122
|
-
previous: 'Anterior',
|
|
123
|
-
next: 'Próximo',
|
|
124
|
-
pageOf: (page, total) => `Página ${page} de ${total}`,
|
|
125
|
-
selectPlaceholder: 'Selecionar...',
|
|
126
|
-
clearSelection: 'Limpar seleção',
|
|
127
|
-
selectDate: 'Selecionar data',
|
|
128
|
-
today: 'Hoje',
|
|
129
|
-
dropFiles: 'Solte arquivos aqui ou',
|
|
130
|
-
browse: 'Procurar',
|
|
131
|
-
noData: 'Nenhum dado disponível',
|
|
132
|
-
sortAscending: 'Ordenar crescente',
|
|
133
|
-
sortDescending: 'Ordenar decrescente',
|
|
134
|
-
filterPlaceholder: 'Filtrar...',
|
|
135
|
-
exportCsv: 'Exportar CSV',
|
|
136
|
-
rowsSelected: (n) => `${n} linha${n === 1 ? '' : 's'} selecionada${n === 1 ? '' : 's'}`,
|
|
137
|
-
});
|
|
138
|
-
|
|
139
|
-
// Portuguese (Portugal)
|
|
140
|
-
export const ptPT = locale({
|
|
141
|
-
close: 'Fechar',
|
|
142
|
-
cancel: 'Cancelar',
|
|
143
|
-
confirm: 'Confirmar',
|
|
144
|
-
save: 'Guardar',
|
|
145
|
-
delete: 'Eliminar',
|
|
146
|
-
search: 'Pesquisar',
|
|
147
|
-
loading: 'A carregar...',
|
|
148
|
-
noResults: 'Sem resultados',
|
|
149
|
-
required: 'Obrigatório',
|
|
150
|
-
previous: 'Anterior',
|
|
151
|
-
next: 'Próximo',
|
|
152
|
-
pageOf: (page, total) => `Página ${page} de ${total}`,
|
|
153
|
-
selectPlaceholder: 'Selecionar...',
|
|
154
|
-
clearSelection: 'Limpar seleção',
|
|
155
|
-
selectDate: 'Selecionar data',
|
|
156
|
-
today: 'Hoje',
|
|
157
|
-
dropFiles: 'Largue ficheiros aqui ou',
|
|
158
|
-
browse: 'Procurar',
|
|
159
|
-
noData: 'Sem dados disponíveis',
|
|
160
|
-
sortAscending: 'Ordenar crescente',
|
|
161
|
-
sortDescending: 'Ordenar decrescente',
|
|
162
|
-
filterPlaceholder: 'Filtrar...',
|
|
163
|
-
exportCsv: 'Exportar CSV',
|
|
164
|
-
rowsSelected: (n) => `${n} linha${n === 1 ? '' : 's'} selecionada${n === 1 ? '' : 's'}`,
|
|
165
|
-
});
|
|
166
|
-
|
|
167
|
-
// French (France)
|
|
168
|
-
export const frFR = locale({
|
|
169
|
-
close: 'Fermer',
|
|
170
|
-
cancel: 'Annuler',
|
|
171
|
-
confirm: 'Confirmer',
|
|
172
|
-
save: 'Enregistrer',
|
|
173
|
-
delete: 'Supprimer',
|
|
174
|
-
search: 'Rechercher',
|
|
175
|
-
loading: 'Chargement...',
|
|
176
|
-
noResults: 'Aucun résultat trouvé',
|
|
177
|
-
required: 'Obligatoire',
|
|
178
|
-
previous: 'Précédent',
|
|
179
|
-
next: 'Suivant',
|
|
180
|
-
pageOf: (page, total) => `Page ${page} sur ${total}`,
|
|
181
|
-
selectPlaceholder: 'Sélectionner...',
|
|
182
|
-
clearSelection: 'Effacer la sélection',
|
|
183
|
-
selectDate: 'Sélectionner une date',
|
|
184
|
-
today: "Aujourd'hui",
|
|
185
|
-
dropFiles: 'Déposez les fichiers ici ou',
|
|
186
|
-
browse: 'Parcourir',
|
|
187
|
-
noData: 'Aucune donnée disponible',
|
|
188
|
-
sortAscending: 'Tri croissant',
|
|
189
|
-
sortDescending: 'Tri décroissant',
|
|
190
|
-
filterPlaceholder: 'Filtrer...',
|
|
191
|
-
exportCsv: 'Exporter CSV',
|
|
192
|
-
rowsSelected: (n) => `${n} ligne${n === 1 ? '' : 's'} sélectionnée${n === 1 ? '' : 's'}`,
|
|
193
|
-
});
|
|
194
|
-
|
|
195
|
-
// German (Germany)
|
|
196
|
-
export const deDE = locale({
|
|
197
|
-
close: 'Schließen',
|
|
198
|
-
cancel: 'Abbrechen',
|
|
199
|
-
confirm: 'Bestätigen',
|
|
200
|
-
save: 'Speichern',
|
|
201
|
-
delete: 'Löschen',
|
|
202
|
-
search: 'Suchen',
|
|
203
|
-
loading: 'Wird geladen...',
|
|
204
|
-
noResults: 'Keine Ergebnisse gefunden',
|
|
205
|
-
required: 'Erforderlich',
|
|
206
|
-
previous: 'Zurück',
|
|
207
|
-
next: 'Weiter',
|
|
208
|
-
pageOf: (page, total) => `Seite ${page} von ${total}`,
|
|
209
|
-
selectPlaceholder: 'Auswählen...',
|
|
210
|
-
clearSelection: 'Auswahl löschen',
|
|
211
|
-
selectDate: 'Datum auswählen',
|
|
212
|
-
today: 'Heute',
|
|
213
|
-
dropFiles: 'Dateien hier ablegen oder',
|
|
214
|
-
browse: 'Durchsuchen',
|
|
215
|
-
noData: 'Keine Daten verfügbar',
|
|
216
|
-
sortAscending: 'Aufsteigend sortieren',
|
|
217
|
-
sortDescending: 'Absteigend sortieren',
|
|
218
|
-
filterPlaceholder: 'Filtern...',
|
|
219
|
-
exportCsv: 'CSV exportieren',
|
|
220
|
-
rowsSelected: (n) => `${n} Zeile${n === 1 ? '' : 'n'} ausgewählt`,
|
|
221
|
-
});
|
|
222
|
-
|
|
223
|
-
// Italian (Italy)
|
|
224
|
-
export const itIT = locale({
|
|
225
|
-
close: 'Chiudi',
|
|
226
|
-
cancel: 'Annulla',
|
|
227
|
-
confirm: 'Conferma',
|
|
228
|
-
save: 'Salva',
|
|
229
|
-
delete: 'Elimina',
|
|
230
|
-
search: 'Cerca',
|
|
231
|
-
loading: 'Caricamento...',
|
|
232
|
-
noResults: 'Nessun risultato trovato',
|
|
233
|
-
required: 'Obbligatorio',
|
|
234
|
-
previous: 'Precedente',
|
|
235
|
-
next: 'Successivo',
|
|
236
|
-
pageOf: (page, total) => `Pagina ${page} di ${total}`,
|
|
237
|
-
selectPlaceholder: 'Seleziona...',
|
|
238
|
-
clearSelection: 'Cancella selezione',
|
|
239
|
-
selectDate: 'Seleziona una data',
|
|
240
|
-
today: 'Oggi',
|
|
241
|
-
dropFiles: 'Trascina file qui o',
|
|
242
|
-
browse: 'Sfoglia',
|
|
243
|
-
noData: 'Nessun dato disponibile',
|
|
244
|
-
sortAscending: 'Ordinamento crescente',
|
|
245
|
-
sortDescending: 'Ordinamento decrescente',
|
|
246
|
-
filterPlaceholder: 'Filtra...',
|
|
247
|
-
exportCsv: 'Esporta CSV',
|
|
248
|
-
rowsSelected: (n) => `${n} riga${n === 1 ? '' : 'i'} selezionat${n === 1 ? 'a' : 'e'}`,
|
|
249
|
-
});
|
|
250
|
-
|
|
251
|
-
// Dutch (Netherlands)
|
|
252
|
-
export const nlNL = locale({
|
|
253
|
-
close: 'Sluiten',
|
|
254
|
-
cancel: 'Annuleren',
|
|
255
|
-
confirm: 'Bevestigen',
|
|
256
|
-
save: 'Opslaan',
|
|
257
|
-
delete: 'Verwijderen',
|
|
258
|
-
search: 'Zoeken',
|
|
259
|
-
loading: 'Laden...',
|
|
260
|
-
noResults: 'Geen resultaten gevonden',
|
|
261
|
-
required: 'Verplicht',
|
|
262
|
-
previous: 'Vorige',
|
|
263
|
-
next: 'Volgende',
|
|
264
|
-
pageOf: (page, total) => `Pagina ${page} van ${total}`,
|
|
265
|
-
selectPlaceholder: 'Selecteer...',
|
|
266
|
-
clearSelection: 'Selectie wissen',
|
|
267
|
-
selectDate: 'Selecteer een datum',
|
|
268
|
-
today: 'Vandaag',
|
|
269
|
-
dropFiles: 'Zet bestanden hier neer of',
|
|
270
|
-
browse: 'Bladeren',
|
|
271
|
-
noData: 'Geen gegevens beschikbaar',
|
|
272
|
-
sortAscending: 'Oplopend sorteren',
|
|
273
|
-
sortDescending: 'Aflopend sorteren',
|
|
274
|
-
filterPlaceholder: 'Filteren...',
|
|
275
|
-
exportCsv: 'CSV exporteren',
|
|
276
|
-
rowsSelected: (n) => `${n} rij${n === 1 ? '' : 'en'} geselecteerd`,
|
|
277
|
-
});
|
|
278
|
-
|
|
279
|
-
// Polish (Poland)
|
|
280
|
-
export const plPL = locale({
|
|
281
|
-
close: 'Zamknij',
|
|
282
|
-
cancel: 'Anuluj',
|
|
283
|
-
confirm: 'Potwierdź',
|
|
284
|
-
save: 'Zapisz',
|
|
285
|
-
delete: 'Usuń',
|
|
286
|
-
search: 'Szukaj',
|
|
287
|
-
loading: 'Ładowanie...',
|
|
288
|
-
noResults: 'Nie znaleziono wyników',
|
|
289
|
-
required: 'Wymagane',
|
|
290
|
-
previous: 'Poprzednia',
|
|
291
|
-
next: 'Następna',
|
|
292
|
-
pageOf: (page, total) => `Strona ${page} z ${total}`,
|
|
293
|
-
selectPlaceholder: 'Wybierz...',
|
|
294
|
-
clearSelection: 'Wyczyść wybór',
|
|
295
|
-
selectDate: 'Wybierz datę',
|
|
296
|
-
today: 'Dzisiaj',
|
|
297
|
-
dropFiles: 'Upuść pliki tutaj lub',
|
|
298
|
-
browse: 'Przeglądaj',
|
|
299
|
-
noData: 'Brak danych',
|
|
300
|
-
sortAscending: 'Sortuj rosnąco',
|
|
301
|
-
sortDescending: 'Sortuj malejąco',
|
|
302
|
-
filterPlaceholder: 'Filtruj...',
|
|
303
|
-
exportCsv: 'Eksportuj CSV',
|
|
304
|
-
rowsSelected: (n) => `Wybrano ${n} wier${n === 1 ? 'sz' : 'sze'}`,
|
|
305
|
-
});
|
|
306
|
-
|
|
307
|
-
// Russian (Russia)
|
|
308
|
-
export const ruRU = locale({
|
|
309
|
-
close: 'Закрыть',
|
|
310
|
-
cancel: 'Отмена',
|
|
311
|
-
confirm: 'Подтвердить',
|
|
312
|
-
save: 'Сохранить',
|
|
313
|
-
delete: 'Удалить',
|
|
314
|
-
search: 'Поиск',
|
|
315
|
-
loading: 'Загрузка...',
|
|
316
|
-
noResults: 'Результаты не найдены',
|
|
317
|
-
required: 'Обязательно',
|
|
318
|
-
previous: 'Назад',
|
|
319
|
-
next: 'Вперёд',
|
|
320
|
-
pageOf: (page, total) => `Страница ${page} из ${total}`,
|
|
321
|
-
selectPlaceholder: 'Выбрать...',
|
|
322
|
-
clearSelection: 'Снять выделение',
|
|
323
|
-
selectDate: 'Выбрать дату',
|
|
324
|
-
today: 'Сегодня',
|
|
325
|
-
dropFiles: 'Перетащите файлы сюда или',
|
|
326
|
-
browse: 'Обзор',
|
|
327
|
-
noData: 'Нет данных',
|
|
328
|
-
sortAscending: 'По возрастанию',
|
|
329
|
-
sortDescending: 'По убыванию',
|
|
330
|
-
filterPlaceholder: 'Фильтр...',
|
|
331
|
-
exportCsv: 'Экспорт CSV',
|
|
332
|
-
rowsSelected: (n) => `Выбрано ${n} строк`,
|
|
333
|
-
});
|
|
334
|
-
|
|
335
|
-
// Ukrainian (Ukraine)
|
|
336
|
-
export const ukUA = locale({
|
|
337
|
-
close: 'Закрити',
|
|
338
|
-
cancel: 'Скасувати',
|
|
339
|
-
confirm: 'Підтвердити',
|
|
340
|
-
save: 'Зберегти',
|
|
341
|
-
delete: 'Видалити',
|
|
342
|
-
search: 'Пошук',
|
|
343
|
-
loading: 'Завантаження...',
|
|
344
|
-
noResults: 'Результати не знайдено',
|
|
345
|
-
required: "Обов'язково",
|
|
346
|
-
previous: 'Назад',
|
|
347
|
-
next: 'Далі',
|
|
348
|
-
pageOf: (page, total) => `Сторінка ${page} з ${total}`,
|
|
349
|
-
selectPlaceholder: 'Вибрати...',
|
|
350
|
-
clearSelection: 'Очистити вибір',
|
|
351
|
-
selectDate: 'Вибрати дату',
|
|
352
|
-
today: 'Сьогодні',
|
|
353
|
-
dropFiles: 'Перетягніть файли або',
|
|
354
|
-
browse: 'Огляд',
|
|
355
|
-
noData: 'Немає даних',
|
|
356
|
-
sortAscending: 'За зростанням',
|
|
357
|
-
sortDescending: 'За спаданням',
|
|
358
|
-
filterPlaceholder: 'Фільтр...',
|
|
359
|
-
exportCsv: 'Експорт CSV',
|
|
360
|
-
rowsSelected: (n) => `Вибрано ${n} рядків`,
|
|
361
|
-
});
|
|
362
|
-
|
|
363
|
-
// Turkish (Turkey)
|
|
364
|
-
export const trTR = locale({
|
|
365
|
-
close: 'Kapat',
|
|
366
|
-
cancel: 'İptal',
|
|
367
|
-
confirm: 'Onayla',
|
|
368
|
-
save: 'Kaydet',
|
|
369
|
-
delete: 'Sil',
|
|
370
|
-
search: 'Ara',
|
|
371
|
-
loading: 'Yükleniyor...',
|
|
372
|
-
noResults: 'Sonuç bulunamadı',
|
|
373
|
-
required: 'Zorunlu',
|
|
374
|
-
previous: 'Önceki',
|
|
375
|
-
next: 'Sonraki',
|
|
376
|
-
pageOf: (page, total) => `${total} sayfadan ${page}. sayfa`,
|
|
377
|
-
selectPlaceholder: 'Seçin...',
|
|
378
|
-
clearSelection: 'Seçimi temizle',
|
|
379
|
-
selectDate: 'Tarih seçin',
|
|
380
|
-
today: 'Bugün',
|
|
381
|
-
dropFiles: 'Dosyaları buraya bırakın veya',
|
|
382
|
-
browse: 'Gözat',
|
|
383
|
-
noData: 'Veri yok',
|
|
384
|
-
sortAscending: 'Artan sıralama',
|
|
385
|
-
sortDescending: 'Azalan sıralama',
|
|
386
|
-
filterPlaceholder: 'Filtrele...',
|
|
387
|
-
exportCsv: 'CSV dışa aktar',
|
|
388
|
-
rowsSelected: (n) => `${n} satır seçildi`,
|
|
389
|
-
});
|
|
390
|
-
|
|
391
|
-
// Swedish (Sweden)
|
|
392
|
-
export const svSE = locale({
|
|
393
|
-
close: 'Stäng',
|
|
394
|
-
cancel: 'Avbryt',
|
|
395
|
-
confirm: 'Bekräfta',
|
|
396
|
-
save: 'Spara',
|
|
397
|
-
delete: 'Ta bort',
|
|
398
|
-
search: 'Sök',
|
|
399
|
-
loading: 'Laddar...',
|
|
400
|
-
noResults: 'Inga resultat hittades',
|
|
401
|
-
required: 'Obligatoriskt',
|
|
402
|
-
previous: 'Föregående',
|
|
403
|
-
next: 'Nästa',
|
|
404
|
-
pageOf: (page, total) => `Sida ${page} av ${total}`,
|
|
405
|
-
selectPlaceholder: 'Välj...',
|
|
406
|
-
clearSelection: 'Rensa val',
|
|
407
|
-
selectDate: 'Välj ett datum',
|
|
408
|
-
today: 'Idag',
|
|
409
|
-
dropFiles: 'Släpp filer här eller',
|
|
410
|
-
browse: 'Bläddra',
|
|
411
|
-
noData: 'Inga data tillgängliga',
|
|
412
|
-
sortAscending: 'Sortera stigande',
|
|
413
|
-
sortDescending: 'Sortera fallande',
|
|
414
|
-
filterPlaceholder: 'Filtrera...',
|
|
415
|
-
exportCsv: 'Exportera CSV',
|
|
416
|
-
rowsSelected: (n) => `${n} rad${n === 1 ? '' : 'er'} vald${n === 1 ? '' : 'a'}`,
|
|
417
|
-
});
|
|
418
|
-
|
|
419
|
-
// Danish (Denmark)
|
|
420
|
-
export const daDK = locale({
|
|
421
|
-
close: 'Luk',
|
|
422
|
-
cancel: 'Annuller',
|
|
423
|
-
confirm: 'Bekræft',
|
|
424
|
-
save: 'Gem',
|
|
425
|
-
delete: 'Slet',
|
|
426
|
-
search: 'Søg',
|
|
427
|
-
loading: 'Indlæser...',
|
|
428
|
-
noResults: 'Ingen resultater fundet',
|
|
429
|
-
required: 'Påkrævet',
|
|
430
|
-
previous: 'Forrige',
|
|
431
|
-
next: 'Næste',
|
|
432
|
-
pageOf: (page, total) => `Side ${page} af ${total}`,
|
|
433
|
-
selectPlaceholder: 'Vælg...',
|
|
434
|
-
clearSelection: 'Ryd valg',
|
|
435
|
-
selectDate: 'Vælg en dato',
|
|
436
|
-
today: 'I dag',
|
|
437
|
-
dropFiles: 'Slip filer her eller',
|
|
438
|
-
browse: 'Gennemse',
|
|
439
|
-
noData: 'Ingen data tilgængelige',
|
|
440
|
-
sortAscending: 'Sorter stigende',
|
|
441
|
-
sortDescending: 'Sorter faldende',
|
|
442
|
-
filterPlaceholder: 'Filtrer...',
|
|
443
|
-
exportCsv: 'Eksporter CSV',
|
|
444
|
-
rowsSelected: (n) => `${n} række${n === 1 ? '' : 'r'} valgt`,
|
|
445
|
-
});
|
|
446
|
-
|
|
447
|
-
// Czech (Czech Republic)
|
|
448
|
-
export const csCZ = locale({
|
|
449
|
-
close: 'Zavřít',
|
|
450
|
-
cancel: 'Zrušit',
|
|
451
|
-
confirm: 'Potvrdit',
|
|
452
|
-
save: 'Uložit',
|
|
453
|
-
delete: 'Smazat',
|
|
454
|
-
search: 'Hledat',
|
|
455
|
-
loading: 'Načítání...',
|
|
456
|
-
noResults: 'Žádné výsledky',
|
|
457
|
-
required: 'Povinné',
|
|
458
|
-
previous: 'Předchozí',
|
|
459
|
-
next: 'Další',
|
|
460
|
-
pageOf: (page, total) => `Stránka ${page} z ${total}`,
|
|
461
|
-
selectPlaceholder: 'Vyberte...',
|
|
462
|
-
clearSelection: 'Vymazat výběr',
|
|
463
|
-
selectDate: 'Vyberte datum',
|
|
464
|
-
today: 'Dnes',
|
|
465
|
-
dropFiles: 'Přetáhněte soubory nebo',
|
|
466
|
-
browse: 'Procházet',
|
|
467
|
-
noData: 'Žádná data',
|
|
468
|
-
sortAscending: 'Seřadit vzestupně',
|
|
469
|
-
sortDescending: 'Seřadit sestupně',
|
|
470
|
-
filterPlaceholder: 'Filtrovat...',
|
|
471
|
-
exportCsv: 'Exportovat CSV',
|
|
472
|
-
rowsSelected: (n) => `Vybráno ${n} řádků`,
|
|
473
|
-
});
|
|
474
|
-
|
|
475
|
-
// Hungarian (Hungary)
|
|
476
|
-
export const huHU = locale({
|
|
477
|
-
close: 'Bezárás',
|
|
478
|
-
cancel: 'Mégse',
|
|
479
|
-
confirm: 'Megerősítés',
|
|
480
|
-
save: 'Mentés',
|
|
481
|
-
delete: 'Törlés',
|
|
482
|
-
search: 'Keresés',
|
|
483
|
-
loading: 'Betöltés...',
|
|
484
|
-
noResults: 'Nincs találat',
|
|
485
|
-
required: 'Kötelező',
|
|
486
|
-
previous: 'Előző',
|
|
487
|
-
next: 'Következő',
|
|
488
|
-
pageOf: (page, total) => `${page}. oldal / ${total}`,
|
|
489
|
-
selectPlaceholder: 'Válasszon...',
|
|
490
|
-
clearSelection: 'Kijelölés törlése',
|
|
491
|
-
selectDate: 'Válasszon dátumot',
|
|
492
|
-
today: 'Ma',
|
|
493
|
-
dropFiles: 'Húzza ide a fájlokat vagy',
|
|
494
|
-
browse: 'Tallózás',
|
|
495
|
-
noData: 'Nincs adat',
|
|
496
|
-
sortAscending: 'Növekvő sorrend',
|
|
497
|
-
sortDescending: 'Csökkenő sorrend',
|
|
498
|
-
filterPlaceholder: 'Szűrés...',
|
|
499
|
-
exportCsv: 'CSV exportálása',
|
|
500
|
-
rowsSelected: (n) => `${n} sor kiválasztva`,
|
|
501
|
-
});
|
|
502
|
-
|
|
503
|
-
// Arabic (Saudi Arabia) — RTL
|
|
504
|
-
export const arSA = locale({
|
|
505
|
-
close: 'إغلاق',
|
|
506
|
-
cancel: 'إلغاء',
|
|
507
|
-
confirm: 'تأكيد',
|
|
508
|
-
save: 'حفظ',
|
|
509
|
-
delete: 'حذف',
|
|
510
|
-
search: 'بحث',
|
|
511
|
-
loading: '...جارٍ التحميل',
|
|
512
|
-
noResults: 'لم يتم العثور على نتائج',
|
|
513
|
-
required: 'مطلوب',
|
|
514
|
-
previous: 'السابق',
|
|
515
|
-
next: 'التالي',
|
|
516
|
-
pageOf: (page, total) => `صفحة ${page} من ${total}`,
|
|
517
|
-
selectPlaceholder: '...اختر',
|
|
518
|
-
clearSelection: 'مسح الاختيار',
|
|
519
|
-
selectDate: 'اختر تاريخ',
|
|
520
|
-
today: 'اليوم',
|
|
521
|
-
dropFiles: 'أفلت الملفات هنا أو',
|
|
522
|
-
browse: 'تصفح',
|
|
523
|
-
noData: 'لا توجد بيانات',
|
|
524
|
-
sortAscending: 'ترتيب تصاعدي',
|
|
525
|
-
sortDescending: 'ترتيب تنازلي',
|
|
526
|
-
filterPlaceholder: '...فلترة',
|
|
527
|
-
exportCsv: 'تصدير CSV',
|
|
528
|
-
rowsSelected: (n) => `تم تحديد ${n} صفوف`,
|
|
529
|
-
});
|
|
530
|
-
|
|
531
|
-
// Hebrew (Israel) — RTL
|
|
532
|
-
export const heIL = locale({
|
|
533
|
-
close: 'סגור',
|
|
534
|
-
cancel: 'ביטול',
|
|
535
|
-
confirm: 'אישור',
|
|
536
|
-
save: 'שמור',
|
|
537
|
-
delete: 'מחק',
|
|
538
|
-
search: 'חיפוש',
|
|
539
|
-
loading: 'טוען...',
|
|
540
|
-
noResults: 'לא נמצאו תוצאות',
|
|
541
|
-
required: 'חובה',
|
|
542
|
-
previous: 'הקודם',
|
|
543
|
-
next: 'הבא',
|
|
544
|
-
pageOf: (page, total) => `עמוד ${page} מתוך ${total}`,
|
|
545
|
-
selectPlaceholder: 'בחר...',
|
|
546
|
-
clearSelection: 'נקה בחירה',
|
|
547
|
-
selectDate: 'בחר תאריך',
|
|
548
|
-
today: 'היום',
|
|
549
|
-
dropFiles: 'גרור קבצים לכאן או',
|
|
550
|
-
browse: 'עיון',
|
|
551
|
-
noData: 'אין נתונים',
|
|
552
|
-
sortAscending: 'מיון עולה',
|
|
553
|
-
sortDescending: 'מיון יורד',
|
|
554
|
-
filterPlaceholder: 'סינון...',
|
|
555
|
-
exportCsv: 'ייצוא CSV',
|
|
556
|
-
rowsSelected: (n) => `נבחרו ${n} שורות`,
|
|
557
|
-
});
|
|
558
|
-
|
|
559
|
-
// Persian / Farsi (Iran) — RTL
|
|
560
|
-
export const faIR = locale({
|
|
561
|
-
close: 'بستن',
|
|
562
|
-
cancel: 'لغو',
|
|
563
|
-
confirm: 'تأیید',
|
|
564
|
-
save: 'ذخیره',
|
|
565
|
-
delete: 'حذف',
|
|
566
|
-
search: 'جستجو',
|
|
567
|
-
loading: '...در حال بارگذاری',
|
|
568
|
-
noResults: 'نتیجهای یافت نشد',
|
|
569
|
-
required: 'الزامی',
|
|
570
|
-
previous: 'قبلی',
|
|
571
|
-
next: 'بعدی',
|
|
572
|
-
pageOf: (page, total) => `صفحه ${page} از ${total}`,
|
|
573
|
-
selectPlaceholder: '...انتخاب کنید',
|
|
574
|
-
clearSelection: 'پاک کردن انتخاب',
|
|
575
|
-
selectDate: 'تاریخ را انتخاب کنید',
|
|
576
|
-
today: 'امروز',
|
|
577
|
-
dropFiles: 'فایلها را اینجا رها کنید یا',
|
|
578
|
-
browse: 'مرور',
|
|
579
|
-
noData: 'دادهای موجود نیست',
|
|
580
|
-
sortAscending: 'مرتبسازی صعودی',
|
|
581
|
-
sortDescending: 'مرتبسازی نزولی',
|
|
582
|
-
filterPlaceholder: '...فیلتر',
|
|
583
|
-
exportCsv: 'خروجی CSV',
|
|
584
|
-
rowsSelected: (n) => `${n} ردیف انتخاب شده`,
|
|
585
|
-
});
|
|
586
|
-
|
|
587
|
-
// Japanese (Japan)
|
|
588
|
-
export const jaJP = locale({
|
|
589
|
-
close: '閉じる',
|
|
590
|
-
cancel: 'キャンセル',
|
|
591
|
-
confirm: '確認',
|
|
592
|
-
save: '保存',
|
|
593
|
-
delete: '削除',
|
|
594
|
-
search: '検索',
|
|
595
|
-
loading: '読み込み中...',
|
|
596
|
-
noResults: '結果が見つかりません',
|
|
597
|
-
required: '必須',
|
|
598
|
-
previous: '前へ',
|
|
599
|
-
next: '次へ',
|
|
600
|
-
pageOf: (page, total) => `${total}ページ中${page}ページ`,
|
|
601
|
-
selectPlaceholder: '選択...',
|
|
602
|
-
clearSelection: '選択解除',
|
|
603
|
-
selectDate: '日付を選択',
|
|
604
|
-
today: '今日',
|
|
605
|
-
dropFiles: 'ファイルをドロップまたは',
|
|
606
|
-
browse: '参照',
|
|
607
|
-
noData: 'データなし',
|
|
608
|
-
sortAscending: '昇順',
|
|
609
|
-
sortDescending: '降順',
|
|
610
|
-
filterPlaceholder: 'フィルター...',
|
|
611
|
-
exportCsv: 'CSVエクスポート',
|
|
612
|
-
rowsSelected: (n) => `${n}行選択中`,
|
|
613
|
-
});
|
|
614
|
-
|
|
615
|
-
// Korean (South Korea)
|
|
616
|
-
export const koKR = locale({
|
|
617
|
-
close: '닫기',
|
|
618
|
-
cancel: '취소',
|
|
619
|
-
confirm: '확인',
|
|
620
|
-
save: '저장',
|
|
621
|
-
delete: '삭제',
|
|
622
|
-
search: '검색',
|
|
623
|
-
loading: '로딩 중...',
|
|
624
|
-
noResults: '검색 결과 없음',
|
|
625
|
-
required: '필수',
|
|
626
|
-
previous: '이전',
|
|
627
|
-
next: '다음',
|
|
628
|
-
pageOf: (page, total) => `${total}페이지 중 ${page}페이지`,
|
|
629
|
-
selectPlaceholder: '선택...',
|
|
630
|
-
clearSelection: '선택 해제',
|
|
631
|
-
selectDate: '날짜 선택',
|
|
632
|
-
today: '오늘',
|
|
633
|
-
dropFiles: '여기에 파일을 놓거나',
|
|
634
|
-
browse: '찾아보기',
|
|
635
|
-
noData: '데이터 없음',
|
|
636
|
-
sortAscending: '오름차순 정렬',
|
|
637
|
-
sortDescending: '내림차순 정렬',
|
|
638
|
-
filterPlaceholder: '필터...',
|
|
639
|
-
exportCsv: 'CSV 내보내기',
|
|
640
|
-
rowsSelected: (n) => `${n}개 행 선택됨`,
|
|
641
|
-
});
|
|
642
|
-
|
|
643
|
-
// Chinese Simplified (China)
|
|
644
|
-
export const zhCN = locale({
|
|
645
|
-
close: '关闭',
|
|
646
|
-
cancel: '取消',
|
|
647
|
-
confirm: '确认',
|
|
648
|
-
save: '保存',
|
|
649
|
-
delete: '删除',
|
|
650
|
-
search: '搜索',
|
|
651
|
-
loading: '加载中...',
|
|
652
|
-
noResults: '未找到结果',
|
|
653
|
-
required: '必填',
|
|
654
|
-
previous: '上一页',
|
|
655
|
-
next: '下一页',
|
|
656
|
-
pageOf: (page, total) => `第 ${page} 页,共 ${total} 页`,
|
|
657
|
-
selectPlaceholder: '请选择...',
|
|
658
|
-
clearSelection: '清除选择',
|
|
659
|
-
selectDate: '选择日期',
|
|
660
|
-
today: '今天',
|
|
661
|
-
dropFiles: '将文件拖到此处或',
|
|
662
|
-
browse: '浏览',
|
|
663
|
-
noData: '暂无数据',
|
|
664
|
-
sortAscending: '升序排列',
|
|
665
|
-
sortDescending: '降序排列',
|
|
666
|
-
filterPlaceholder: '筛选...',
|
|
667
|
-
exportCsv: '导出 CSV',
|
|
668
|
-
rowsSelected: (n) => `已选择 ${n} 行`,
|
|
669
|
-
});
|
|
670
|
-
|
|
671
|
-
// Chinese Traditional (Taiwan)
|
|
672
|
-
export const zhTW = locale({
|
|
673
|
-
close: '關閉',
|
|
674
|
-
cancel: '取消',
|
|
675
|
-
confirm: '確認',
|
|
676
|
-
save: '儲存',
|
|
677
|
-
delete: '刪除',
|
|
678
|
-
search: '搜尋',
|
|
679
|
-
loading: '載入中...',
|
|
680
|
-
noResults: '未找到結果',
|
|
681
|
-
required: '必填',
|
|
682
|
-
previous: '上一頁',
|
|
683
|
-
next: '下一頁',
|
|
684
|
-
pageOf: (page, total) => `第 ${page} 頁,共 ${total} 頁`,
|
|
685
|
-
selectPlaceholder: '請選擇...',
|
|
686
|
-
clearSelection: '清除選擇',
|
|
687
|
-
selectDate: '選擇日期',
|
|
688
|
-
today: '今天',
|
|
689
|
-
dropFiles: '將檔案拖曳至此或',
|
|
690
|
-
browse: '瀏覽',
|
|
691
|
-
noData: '暫無資料',
|
|
692
|
-
sortAscending: '升冪排列',
|
|
693
|
-
sortDescending: '降冪排列',
|
|
694
|
-
filterPlaceholder: '篩選...',
|
|
695
|
-
exportCsv: '匯出 CSV',
|
|
696
|
-
rowsSelected: (n) => `已選擇 ${n} 行`,
|
|
697
|
-
});
|
|
698
|
-
|
|
699
|
-
// Thai (Thailand)
|
|
700
|
-
export const thTH = locale({
|
|
701
|
-
close: 'ปิด',
|
|
702
|
-
cancel: 'ยกเลิก',
|
|
703
|
-
confirm: 'ยืนยัน',
|
|
704
|
-
save: 'บันทึก',
|
|
705
|
-
delete: 'ลบ',
|
|
706
|
-
search: 'ค้นหา',
|
|
707
|
-
loading: 'กำลังโหลด...',
|
|
708
|
-
noResults: 'ไม่พบผลลัพธ์',
|
|
709
|
-
required: 'จำเป็น',
|
|
710
|
-
previous: 'ก่อนหน้า',
|
|
711
|
-
next: 'ถัดไป',
|
|
712
|
-
pageOf: (page, total) => `หน้า ${page} จาก ${total}`,
|
|
713
|
-
selectPlaceholder: 'เลือก...',
|
|
714
|
-
clearSelection: 'ล้างการเลือก',
|
|
715
|
-
selectDate: 'เลือกวันที่',
|
|
716
|
-
today: 'วันนี้',
|
|
717
|
-
dropFiles: 'วางไฟล์ที่นี่หรือ',
|
|
718
|
-
browse: 'เรียกดู',
|
|
719
|
-
noData: 'ไม่มีข้อมูล',
|
|
720
|
-
sortAscending: 'เรียงจากน้อยไปมาก',
|
|
721
|
-
sortDescending: 'เรียงจากมากไปน้อย',
|
|
722
|
-
filterPlaceholder: 'กรอง...',
|
|
723
|
-
exportCsv: 'ส่งออก CSV',
|
|
724
|
-
rowsSelected: (n) => `เลือก ${n} แถว`,
|
|
725
|
-
});
|
|
726
|
-
|
|
727
|
-
// Vietnamese (Vietnam)
|
|
728
|
-
export const viVN = locale({
|
|
729
|
-
close: 'Đóng',
|
|
730
|
-
cancel: 'Hủy',
|
|
731
|
-
confirm: 'Xác nhận',
|
|
732
|
-
save: 'Lưu',
|
|
733
|
-
delete: 'Xóa',
|
|
734
|
-
search: 'Tìm kiếm',
|
|
735
|
-
loading: 'Đang tải...',
|
|
736
|
-
noResults: 'Không tìm thấy kết quả',
|
|
737
|
-
required: 'Bắt buộc',
|
|
738
|
-
previous: 'Trước',
|
|
739
|
-
next: 'Tiếp',
|
|
740
|
-
pageOf: (page, total) => `Trang ${page} / ${total}`,
|
|
741
|
-
selectPlaceholder: 'Chọn...',
|
|
742
|
-
clearSelection: 'Xóa lựa chọn',
|
|
743
|
-
selectDate: 'Chọn ngày',
|
|
744
|
-
today: 'Hôm nay',
|
|
745
|
-
dropFiles: 'Thả tệp vào đây hoặc',
|
|
746
|
-
browse: 'Duyệt',
|
|
747
|
-
noData: 'Không có dữ liệu',
|
|
748
|
-
sortAscending: 'Sắp xếp tăng dần',
|
|
749
|
-
sortDescending: 'Sắp xếp giảm dần',
|
|
750
|
-
filterPlaceholder: 'Lọc...',
|
|
751
|
-
exportCsv: 'Xuất CSV',
|
|
752
|
-
rowsSelected: (n) => `Đã chọn ${n} hàng`,
|
|
753
|
-
});
|
|
754
|
-
|
|
755
|
-
// Indonesian (Indonesia)
|
|
756
|
-
export const idID = locale({
|
|
757
|
-
close: 'Tutup',
|
|
758
|
-
cancel: 'Batal',
|
|
759
|
-
confirm: 'Konfirmasi',
|
|
760
|
-
save: 'Simpan',
|
|
761
|
-
delete: 'Hapus',
|
|
762
|
-
search: 'Cari',
|
|
763
|
-
loading: 'Memuat...',
|
|
764
|
-
noResults: 'Tidak ada hasil',
|
|
765
|
-
required: 'Wajib',
|
|
766
|
-
previous: 'Sebelumnya',
|
|
767
|
-
next: 'Berikutnya',
|
|
768
|
-
pageOf: (page, total) => `Halaman ${page} dari ${total}`,
|
|
769
|
-
selectPlaceholder: 'Pilih...',
|
|
770
|
-
clearSelection: 'Hapus pilihan',
|
|
771
|
-
selectDate: 'Pilih tanggal',
|
|
772
|
-
today: 'Hari ini',
|
|
773
|
-
dropFiles: 'Seret file ke sini atau',
|
|
774
|
-
browse: 'Jelajahi',
|
|
775
|
-
noData: 'Tidak ada data',
|
|
776
|
-
sortAscending: 'Urutkan naik',
|
|
777
|
-
sortDescending: 'Urutkan turun',
|
|
778
|
-
filterPlaceholder: 'Filter...',
|
|
779
|
-
exportCsv: 'Ekspor CSV',
|
|
780
|
-
rowsSelected: (n) => `${n} baris dipilih`,
|
|
781
|
-
});
|
|
782
|
-
|
|
783
|
-
// Romanian (Romania)
|
|
784
|
-
export const roRO = locale({
|
|
785
|
-
close: 'Închide',
|
|
786
|
-
cancel: 'Anulează',
|
|
787
|
-
confirm: 'Confirmă',
|
|
788
|
-
save: 'Salvează',
|
|
789
|
-
delete: 'Șterge',
|
|
790
|
-
search: 'Caută',
|
|
791
|
-
loading: 'Se încarcă...',
|
|
792
|
-
noResults: 'Nu s-au găsit rezultate',
|
|
793
|
-
required: 'Obligatoriu',
|
|
794
|
-
previous: 'Anterior',
|
|
795
|
-
next: 'Următor',
|
|
796
|
-
pageOf: (page, total) => `Pagina ${page} din ${total}`,
|
|
797
|
-
selectPlaceholder: 'Selectați...',
|
|
798
|
-
clearSelection: 'Șterge selecția',
|
|
799
|
-
selectDate: 'Selectați o dată',
|
|
800
|
-
today: 'Astăzi',
|
|
801
|
-
dropFiles: 'Trageți fișierele aici sau',
|
|
802
|
-
browse: 'Răsfoiți',
|
|
803
|
-
noData: 'Nu există date',
|
|
804
|
-
sortAscending: 'Sortare crescătoare',
|
|
805
|
-
sortDescending: 'Sortare descrescătoare',
|
|
806
|
-
filterPlaceholder: 'Filtrați...',
|
|
807
|
-
exportCsv: 'Exportați CSV',
|
|
808
|
-
rowsSelected: (n) => `${n} rând${n === 1 ? '' : 'uri'} selectat${n === 1 ? '' : 'e'}`,
|
|
809
|
-
});
|
|
810
|
-
|
|
811
|
-
// ── Locale map ──────────────────────────────────────────────────────────────
|
|
812
|
-
|
|
813
|
-
export const LOCALES = {
|
|
814
|
-
'en-US': enUS,
|
|
815
|
-
'es-ES': esES,
|
|
816
|
-
'pt-BR': ptBR,
|
|
817
|
-
'pt-PT': ptPT,
|
|
818
|
-
'fr-FR': frFR,
|
|
819
|
-
'de-DE': deDE,
|
|
820
|
-
'it-IT': itIT,
|
|
821
|
-
'nl-NL': nlNL,
|
|
822
|
-
'pl-PL': plPL,
|
|
823
|
-
'ru-RU': ruRU,
|
|
824
|
-
'uk-UA': ukUA,
|
|
825
|
-
'tr-TR': trTR,
|
|
826
|
-
'sv-SE': svSE,
|
|
827
|
-
'da-DK': daDK,
|
|
828
|
-
'cs-CZ': csCZ,
|
|
829
|
-
'hu-HU': huHU,
|
|
830
|
-
'ar-SA': arSA,
|
|
831
|
-
'he-IL': heIL,
|
|
832
|
-
'fa-IR': faIR,
|
|
833
|
-
'ja-JP': jaJP,
|
|
834
|
-
'ko-KR': koKR,
|
|
835
|
-
'zh-CN': zhCN,
|
|
836
|
-
'zh-TW': zhTW,
|
|
837
|
-
'th-TH': thTH,
|
|
838
|
-
'vi-VN': viVN,
|
|
839
|
-
'id-ID': idID,
|
|
840
|
-
'ro-RO': roRO,
|
|
841
|
-
} as const;
|
|
842
|
-
|
|
843
|
-
export type LocaleCode = keyof typeof LOCALES;
|
|
844
|
-
|
|
845
|
-
// ── RTL languages ───────────────────────────────────────────────────────────
|
|
846
|
-
|
|
847
|
-
const RTL_LOCALES = new Set<string>(['ar-SA', 'he-IL', 'fa-IR', 'ur-PK']);
|
|
848
|
-
|
|
849
|
-
export function isRTL(locale: string): boolean {
|
|
850
|
-
return RTL_LOCALES.has(locale);
|
|
851
|
-
}
|
|
852
|
-
|
|
853
|
-
// ── Context ─────────────────────────────────────────────────────────────────
|
|
854
|
-
|
|
855
|
-
export interface I18nContextValue {
|
|
856
|
-
locale: LocaleCode;
|
|
857
|
-
direction: Direction;
|
|
858
|
-
strings: LocaleStrings;
|
|
859
|
-
}
|
|
860
|
-
|
|
861
|
-
export const I18nContext = createContext<I18nContextValue>({
|
|
862
|
-
locale: 'en-US',
|
|
863
|
-
direction: 'ltr',
|
|
864
|
-
strings: enUS,
|
|
865
|
-
});
|
|
866
|
-
|
|
867
|
-
export function useI18n(): I18nContextValue {
|
|
868
|
-
return useContext(I18nContext);
|
|
869
|
-
}
|
|
870
|
-
|
|
871
|
-
export function useLocale(): LocaleStrings {
|
|
872
|
-
return useContext(I18nContext).strings;
|
|
873
|
-
}
|
|
874
|
-
|
|
875
|
-
export function useDirection(): Direction {
|
|
876
|
-
return useContext(I18nContext).direction;
|
|
877
|
-
}
|