@nice2dev/i18n 1.0.19 → 1.0.21
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/index.cjs +9 -9
- package/dist/index.mjs +1378 -648
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as B } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo as
|
|
2
|
+
import { useMemo as b, useContext as N, createContext as I, useEffect as L, useState as P, useCallback as ee } from "react";
|
|
3
3
|
const j = [
|
|
4
4
|
"en",
|
|
5
5
|
"pl",
|
|
@@ -40,7 +40,7 @@ const j = [
|
|
|
40
40
|
// Filipino
|
|
41
41
|
"ms"
|
|
42
42
|
// Malay
|
|
43
|
-
],
|
|
43
|
+
], ye = {
|
|
44
44
|
// ── Global / Generic ──
|
|
45
45
|
ok: "OK",
|
|
46
46
|
cancel: "Cancel",
|
|
@@ -120,6 +120,77 @@ const j = [
|
|
|
120
120
|
"nav.notifications": "Notifications",
|
|
121
121
|
"nav.profile": "Profile",
|
|
122
122
|
"nav.logout": "Log out",
|
|
123
|
+
"nav.help": "Help",
|
|
124
|
+
"navShell.home.title": "Home",
|
|
125
|
+
"navShell.help.next": "Next",
|
|
126
|
+
"navShell.help.back": "Back",
|
|
127
|
+
"navShell.help.finish": "Finish",
|
|
128
|
+
"navShell.help.skip": "Skip",
|
|
129
|
+
"navShell.help.stepOf": "of",
|
|
130
|
+
"navShell.help.topNav.title": "Top navigation",
|
|
131
|
+
"navShell.help.topNav.body": "Use the top bar to switch workspaces, search, change theme or language, and open notifications.",
|
|
132
|
+
"navShell.help.sidebar.title": "Sidebar",
|
|
133
|
+
"navShell.help.sidebar.body": "Browse the available views grouped by section. Pick a view to open it in a new tab.",
|
|
134
|
+
"navShell.help.tabs.title": "Tabs",
|
|
135
|
+
"navShell.help.tabs.body": "Each open view lives in its own tab. Pin frequently used ones and right-click for more actions.",
|
|
136
|
+
"navShell.help.content.title": "Workspace",
|
|
137
|
+
"navShell.help.content.body": "The main area shows the active view. Switching tabs or sidebar entries swaps the content here.",
|
|
138
|
+
"navShell.home.subtitle": "Pick up where you left off.",
|
|
139
|
+
"navShell.home.empty": "Open a view from the sidebar or the tabs above to fill your workspace.",
|
|
140
|
+
"navShell.home.greeting.morning": "Good morning",
|
|
141
|
+
"navShell.home.greeting.afternoon": "Good afternoon",
|
|
142
|
+
"navShell.home.greeting.evening": "Good evening",
|
|
143
|
+
"navShell.home.greeting.night": "Hello",
|
|
144
|
+
"navShell.home.sections.openTabs": "Open now",
|
|
145
|
+
"navShell.home.sections.shortcuts": "Your shortcuts",
|
|
146
|
+
"navShell.home.sections.allViews": "All views",
|
|
147
|
+
// ── Sidebar context menu ──
|
|
148
|
+
"sidebar.menu.open": "Open",
|
|
149
|
+
"sidebar.menu.openNewTab": "Open in new tab",
|
|
150
|
+
"sidebar.menu.openBrowserTab": "Open in new browser tab",
|
|
151
|
+
"sidebar.menu.pinFavorite": "Add to favorites",
|
|
152
|
+
"sidebar.menu.unpinFavorite": "Remove from favorites",
|
|
153
|
+
"sidebar.menu.hide": "Hide",
|
|
154
|
+
"sidebar.menu.copyLink": "Copy link",
|
|
155
|
+
"sidebar.menu.pinSource": "Pin source",
|
|
156
|
+
"sidebar.menu.unpinSource": "Unpin source",
|
|
157
|
+
"sidebar.menu.hideSource": "Hide source",
|
|
158
|
+
// ── Sidebar preferences (categories + pages) ──
|
|
159
|
+
"sidebar.prefs.general": "General",
|
|
160
|
+
"sidebar.prefs.display": "Display",
|
|
161
|
+
"sidebar.prefs.order": "Order",
|
|
162
|
+
"sidebar.prefs.hidden": "Hidden items",
|
|
163
|
+
"sidebar.prefs.reset": "Reset",
|
|
164
|
+
"sidebar.prefs.general.title": "General",
|
|
165
|
+
"sidebar.prefs.general.desc": "Behavior of the sidebar tree and what a left click does.",
|
|
166
|
+
"sidebar.prefs.general.autoExpand": "Auto-expand all branches",
|
|
167
|
+
"sidebar.prefs.general.autoExpandHint": "When off, branches start collapsed and remember the last state per session.",
|
|
168
|
+
"sidebar.prefs.general.leftClickBehavior": "Left-click behavior",
|
|
169
|
+
"sidebar.prefs.general.focusExisting": "Focus the existing tab",
|
|
170
|
+
"sidebar.prefs.general.openNew": "Always open in a new tab",
|
|
171
|
+
"sidebar.prefs.general.leftClickHint": 'Right-click → "Open in new tab" is always available regardless of this setting.',
|
|
172
|
+
"sidebar.prefs.display.title": "Display",
|
|
173
|
+
"sidebar.prefs.display.desc": "Which modes appear in the strip and how deep the tree goes per mode.",
|
|
174
|
+
"sidebar.prefs.display.enableModeIcons": "Show mode switcher icons",
|
|
175
|
+
"sidebar.prefs.display.enabledModes": "Visible modes",
|
|
176
|
+
"sidebar.prefs.display.preferencesAlwaysOn": "Preferences is always shown.",
|
|
177
|
+
"sidebar.prefs.display.maxDepth": "Tree depth per mode",
|
|
178
|
+
"sidebar.prefs.order.title": "Order items",
|
|
179
|
+
"sidebar.prefs.order.desc": "Drag items to reorder how they appear in the selected mode.",
|
|
180
|
+
"sidebar.prefs.order.pickMode": "Mode",
|
|
181
|
+
"sidebar.prefs.order.visibilityHint": "Order applies to top-level items inside each source group. Collapse a source header to see only top-level entries when verifying the change.",
|
|
182
|
+
"sidebar.prefs.order.empty": "No reorderable items in this mode.",
|
|
183
|
+
"sidebar.prefs.order.resetMode": "Reset to default order",
|
|
184
|
+
"sidebar.prefs.hidden.title": "Hidden items",
|
|
185
|
+
"sidebar.prefs.hidden.desc": "Items you hid from the tree. Restore them to bring them back.",
|
|
186
|
+
"sidebar.prefs.hidden.empty": "Nothing hidden yet.",
|
|
187
|
+
"sidebar.prefs.hidden.restore": "Restore",
|
|
188
|
+
"sidebar.prefs.reset.title": "Reset",
|
|
189
|
+
"sidebar.prefs.reset.desc": "Clear every customisation and restore the original sidebar layout.",
|
|
190
|
+
"sidebar.prefs.reset.button": "Reset all preferences",
|
|
191
|
+
"sidebar.prefs.reset.confirm": "This will erase your favorites, hidden items, custom order, and all other sidebar preferences. This cannot be undone.",
|
|
192
|
+
"sidebar.prefs.reset.confirmYes": "Yes, reset everything",
|
|
193
|
+
"sidebar.prefs.reset.cancel": "Cancel",
|
|
123
194
|
// ── Carousel ──
|
|
124
195
|
"carousel.prev": "Previous slide",
|
|
125
196
|
"carousel.next": "Next slide",
|
|
@@ -600,8 +671,121 @@ const j = [
|
|
|
600
671
|
"noCode.codePreview.language": "Language",
|
|
601
672
|
"noCode.codePreview.format": "Format Code",
|
|
602
673
|
"noCode.codePreview.linesChanged": "Lines Changed",
|
|
603
|
-
"noCode.codePreview.noChanges": "No Changes"
|
|
604
|
-
|
|
674
|
+
"noCode.codePreview.noChanges": "No Changes",
|
|
675
|
+
// ── Vector Editor ──
|
|
676
|
+
"vectorEditor.menu.file": "File",
|
|
677
|
+
"vectorEditor.menu.edit": "Edit",
|
|
678
|
+
"vectorEditor.menu.object": "Object",
|
|
679
|
+
"vectorEditor.menu.path": "Path",
|
|
680
|
+
"vectorEditor.menu.view": "View",
|
|
681
|
+
"vectorEditor.menu.newCanvas": "New canvas",
|
|
682
|
+
"vectorEditor.menu.openSvg": "Open SVG…",
|
|
683
|
+
"vectorEditor.menu.pasteSvg": "Paste SVG…",
|
|
684
|
+
"vectorEditor.menu.exportSvg": "Export SVG",
|
|
685
|
+
"vectorEditor.menu.exportPng": "Export PNG",
|
|
686
|
+
"vectorEditor.menu.exportJpg": "Export JPG",
|
|
687
|
+
"vectorEditor.menu.exportWebp": "Export WebP",
|
|
688
|
+
"vectorEditor.menu.exportBmp": "Export BMP",
|
|
689
|
+
"vectorEditor.menu.saveToLibrary": "📦 Save to Library",
|
|
690
|
+
"vectorEditor.menu.exportIconSnippet": "📋 Export Icon Snippet",
|
|
691
|
+
"vectorEditor.menu.exportIcon": "📋 Export Icon",
|
|
692
|
+
"vectorEditor.menu.undo": "Undo (Ctrl+Z)",
|
|
693
|
+
"vectorEditor.menu.redo": "Redo (Ctrl+Y)",
|
|
694
|
+
"vectorEditor.menu.copy": "Copy (Ctrl+C)",
|
|
695
|
+
"vectorEditor.menu.paste": "Paste (Ctrl+V)",
|
|
696
|
+
"vectorEditor.menu.duplicate": "Duplicate (Ctrl+D)",
|
|
697
|
+
"vectorEditor.menu.delete": "Delete (Del)",
|
|
698
|
+
"vectorEditor.menu.bringToFront": "Bring to Front",
|
|
699
|
+
"vectorEditor.menu.sendToBack": "Send to Back",
|
|
700
|
+
"vectorEditor.menu.flipH": "Flip Horizontal",
|
|
701
|
+
"vectorEditor.menu.flipV": "Flip Vertical",
|
|
702
|
+
"vectorEditor.menu.alignLeft": "Align Left",
|
|
703
|
+
"vectorEditor.menu.alignCenter": "Align Center",
|
|
704
|
+
"vectorEditor.menu.alignRight": "Align Right",
|
|
705
|
+
"vectorEditor.menu.union": "Union (∪)",
|
|
706
|
+
"vectorEditor.menu.subtract": "Subtract (−)",
|
|
707
|
+
"vectorEditor.menu.intersect": "Intersect (∩)",
|
|
708
|
+
"vectorEditor.menu.exclude": "Exclude (⊕)",
|
|
709
|
+
"vectorEditor.menu.outlineStroke": "Outline stroke",
|
|
710
|
+
"vectorEditor.menu.snapToGrid": "Snap to grid",
|
|
711
|
+
"vectorEditor.menu.snap": "Snap",
|
|
712
|
+
"vectorEditor.menu.secondShape": "2nd Shape",
|
|
713
|
+
"vectorEditor.tabs.properties": "Properties",
|
|
714
|
+
"vectorEditor.tabs.layers": "Layers",
|
|
715
|
+
"vectorEditor.tabs.library": "Library",
|
|
716
|
+
"vectorEditor.tabs.timeline": "Timeline",
|
|
717
|
+
"vectorEditor.timeline.preset": "Preset",
|
|
718
|
+
"vectorEditor.timeline.duration": "Duration (ms)",
|
|
719
|
+
"vectorEditor.timeline.repeat": "Repeat",
|
|
720
|
+
"vectorEditor.timeline.direction": "Direction",
|
|
721
|
+
"vectorEditor.timeline.remove": "Remove animation",
|
|
722
|
+
"vectorEditor.timeline.play": "Play",
|
|
723
|
+
"vectorEditor.timeline.pause": "Pause",
|
|
724
|
+
"vectorEditor.timeline.stop": "Stop",
|
|
725
|
+
"vectorEditor.timeline.copyCss": "Copy CSS",
|
|
726
|
+
"vectorEditor.timeline.keyframes": "Keyframes",
|
|
727
|
+
"vectorEditor.timeline.addKeyframe": "+ Add keyframe",
|
|
728
|
+
"vectorEditor.timeline.noSelection": "Select a shape to animate.",
|
|
729
|
+
"vectorEditor.timeline.animationTitle": "Animation",
|
|
730
|
+
"vectorEditor.timeline.playbackTitle": "Playback",
|
|
731
|
+
"vectorEditor.timeline.attachHint": "Select a shape to attach an animation.",
|
|
732
|
+
"vectorEditor.timeline.playLabel": "▶ Play",
|
|
733
|
+
"vectorEditor.timeline.pauseLabel": "⏸ Pause",
|
|
734
|
+
"vectorEditor.timeline.stopLabel": "⏹ Stop",
|
|
735
|
+
"vectorEditor.timeline.copyCssKeyframes": "📋 Copy CSS keyframes",
|
|
736
|
+
"vectorEditor.timeline.tLabel": "t",
|
|
737
|
+
"vectorEditor.layers.empty": "No layers yet. Use the tools to draw, or insert from the Library tab.",
|
|
738
|
+
"vectorEditor.layers.moveUp": "Move up",
|
|
739
|
+
"vectorEditor.layers.moveDown": "Move down",
|
|
740
|
+
"vectorEditor.library.passProp": "Pass a library prop to NiceVectorEditor to populate this tab with insertable icons.",
|
|
741
|
+
"vectorEditor.statusBar.zoom": "Zoom",
|
|
742
|
+
"vectorEditor.statusBar.shapes": "shape(s)",
|
|
743
|
+
"vectorEditor.statusBar.selected": "Selected",
|
|
744
|
+
"vectorEditor.statusBar.snap": "Snap",
|
|
745
|
+
"vectorEditor.library.empty": "No icons in library.",
|
|
746
|
+
"vectorEditor.snippet.title": "✅ Icon snippet copied to clipboard",
|
|
747
|
+
"vectorEditor.snippet.pasteHint": "Paste into",
|
|
748
|
+
"vectorEditor.snippet.copyAgain": "Copy again",
|
|
749
|
+
"vectorEditor.snippet.close": "Close",
|
|
750
|
+
"vectorEditor.properties.appearance": "Appearance",
|
|
751
|
+
"vectorEditor.properties.fill": "Fill",
|
|
752
|
+
"vectorEditor.properties.solid": "Solid",
|
|
753
|
+
"vectorEditor.properties.gradient": "Gradient",
|
|
754
|
+
"vectorEditor.properties.hideEditor": "▼ Hide Editor",
|
|
755
|
+
"vectorEditor.properties.editGradient": "► Edit Gradient",
|
|
756
|
+
"vectorEditor.properties.type": "Type",
|
|
757
|
+
"vectorEditor.properties.linear": "Linear",
|
|
758
|
+
"vectorEditor.properties.radial": "Radial",
|
|
759
|
+
"vectorEditor.properties.angle": "Angle",
|
|
760
|
+
"vectorEditor.properties.cx": "CX",
|
|
761
|
+
"vectorEditor.properties.cy": "CY",
|
|
762
|
+
"vectorEditor.properties.r": "R",
|
|
763
|
+
"vectorEditor.properties.colorStops": "Color Stops:",
|
|
764
|
+
"vectorEditor.properties.addStop": "+ Add Stop",
|
|
765
|
+
"vectorEditor.properties.removeStop": "- Remove",
|
|
766
|
+
"vectorEditor.properties.stroke": "Stroke",
|
|
767
|
+
"vectorEditor.properties.width": "Width",
|
|
768
|
+
"vectorEditor.properties.opacity": "Opacity",
|
|
769
|
+
"vectorEditor.properties.rotation": "Rotation",
|
|
770
|
+
"vectorEditor.properties.toolOptions": "Tool Options",
|
|
771
|
+
"vectorEditor.properties.radius": "Radius",
|
|
772
|
+
"vectorEditor.properties.sides": "Sides",
|
|
773
|
+
"vectorEditor.properties.points": "Points",
|
|
774
|
+
"vectorEditor.properties.innerR": "Inner R",
|
|
775
|
+
"vectorEditor.properties.size": "Size",
|
|
776
|
+
"vectorEditor.properties.font": "Font",
|
|
777
|
+
"vectorEditor.properties.grid": "Grid",
|
|
778
|
+
"vectorEditor.properties.transform": "Transform",
|
|
779
|
+
"vectorEditor.properties.x": "X",
|
|
780
|
+
"vectorEditor.properties.y": "Y",
|
|
781
|
+
"vectorEditor.properties.w": "W",
|
|
782
|
+
"vectorEditor.properties.h": "H",
|
|
783
|
+
"vectorEditor.layers.title": "Layers",
|
|
784
|
+
"vectorEditor.layers.show": "Show",
|
|
785
|
+
"vectorEditor.layers.hide": "Hide",
|
|
786
|
+
"vectorEditor.layers.lock": "Lock",
|
|
787
|
+
"vectorEditor.layers.unlock": "Unlock"
|
|
788
|
+
}, Ee = {
|
|
605
789
|
ok: "OK",
|
|
606
790
|
cancel: "Anuluj",
|
|
607
791
|
save: "Zapisz",
|
|
@@ -679,6 +863,77 @@ const j = [
|
|
|
679
863
|
"nav.notifications": "Powiadomienia",
|
|
680
864
|
"nav.profile": "Profil",
|
|
681
865
|
"nav.logout": "Wyloguj się",
|
|
866
|
+
"nav.help": "Pomoc",
|
|
867
|
+
"navShell.home.title": "Pulpit",
|
|
868
|
+
"navShell.help.next": "Dalej",
|
|
869
|
+
"navShell.help.back": "Wstecz",
|
|
870
|
+
"navShell.help.finish": "Zakończ",
|
|
871
|
+
"navShell.help.skip": "Pomiń",
|
|
872
|
+
"navShell.help.stepOf": "z",
|
|
873
|
+
"navShell.help.topNav.title": "Górny pasek",
|
|
874
|
+
"navShell.help.topNav.body": "Z górnego paska zmienisz workspace, wyszukasz treści, zmienisz motyw lub język i sprawdzisz powiadomienia.",
|
|
875
|
+
"navShell.help.sidebar.title": "Panel boczny",
|
|
876
|
+
"navShell.help.sidebar.body": "Przeglądaj dostępne widoki pogrupowane w sekcje. Wybierz widok, aby otworzyć go w nowej karcie.",
|
|
877
|
+
"navShell.help.tabs.title": "Karty",
|
|
878
|
+
"navShell.help.tabs.body": "Każdy otwarty widok ma własną kartę. Przypnij te najczęściej używane, a prawym przyciskiem otworzysz dodatkowe akcje.",
|
|
879
|
+
"navShell.help.content.title": "Obszar roboczy",
|
|
880
|
+
"navShell.help.content.body": "Tutaj wyświetla się aktywny widok. Zmiana karty lub pozycji w panelu bocznym podmienia zawartość w tym miejscu.",
|
|
881
|
+
"navShell.home.subtitle": "Wróć tam, gdzie skończyłeś.",
|
|
882
|
+
"navShell.home.empty": "Otwórz widok z panelu bocznego lub kart powyżej, aby wypełnić obszar roboczy.",
|
|
883
|
+
"navShell.home.greeting.morning": "Dzień dobry",
|
|
884
|
+
"navShell.home.greeting.afternoon": "Miłego popołudnia",
|
|
885
|
+
"navShell.home.greeting.evening": "Dobry wieczór",
|
|
886
|
+
"navShell.home.greeting.night": "Witaj",
|
|
887
|
+
"navShell.home.sections.openTabs": "Otwarte teraz",
|
|
888
|
+
"navShell.home.sections.shortcuts": "Twoje skróty",
|
|
889
|
+
"navShell.home.sections.allViews": "Wszystkie widoki",
|
|
890
|
+
// ── Sidebar context menu ──
|
|
891
|
+
"sidebar.menu.open": "Otwórz",
|
|
892
|
+
"sidebar.menu.openNewTab": "Otwórz w nowej karcie",
|
|
893
|
+
"sidebar.menu.openBrowserTab": "Otwórz w nowej karcie przeglądarki",
|
|
894
|
+
"sidebar.menu.pinFavorite": "Dodaj do ulubionych",
|
|
895
|
+
"sidebar.menu.unpinFavorite": "Usuń z ulubionych",
|
|
896
|
+
"sidebar.menu.hide": "Ukryj",
|
|
897
|
+
"sidebar.menu.copyLink": "Kopiuj link",
|
|
898
|
+
"sidebar.menu.pinSource": "Przypnij źródło",
|
|
899
|
+
"sidebar.menu.unpinSource": "Odepnij źródło",
|
|
900
|
+
"sidebar.menu.hideSource": "Ukryj źródło",
|
|
901
|
+
// ── Sidebar preferences (categories + pages) ──
|
|
902
|
+
"sidebar.prefs.general": "Ogólne",
|
|
903
|
+
"sidebar.prefs.display": "Wygląd",
|
|
904
|
+
"sidebar.prefs.order": "Kolejność",
|
|
905
|
+
"sidebar.prefs.hidden": "Ukryte elementy",
|
|
906
|
+
"sidebar.prefs.reset": "Reset",
|
|
907
|
+
"sidebar.prefs.general.title": "Ogólne",
|
|
908
|
+
"sidebar.prefs.general.desc": "Zachowanie drzewa nawigacji i to, co robi lewy klik.",
|
|
909
|
+
"sidebar.prefs.general.autoExpand": "Rozwijaj wszystkie gałęzie",
|
|
910
|
+
"sidebar.prefs.general.autoExpandHint": "Po wyłączeniu gałęzie startują zwinięte i zapamiętują ostatni stan sesji.",
|
|
911
|
+
"sidebar.prefs.general.leftClickBehavior": "Zachowanie lewego kliku",
|
|
912
|
+
"sidebar.prefs.general.focusExisting": "Aktywuj istniejącą kartę",
|
|
913
|
+
"sidebar.prefs.general.openNew": "Zawsze otwórz w nowej karcie",
|
|
914
|
+
"sidebar.prefs.general.leftClickHint": 'Prawy klik → „Otwórz w nowej karcie" jest zawsze dostępny, niezależnie od tego ustawienia.',
|
|
915
|
+
"sidebar.prefs.display.title": "Wygląd",
|
|
916
|
+
"sidebar.prefs.display.desc": "Które tryby pokazują się w pasku i jak głębokie ma być drzewo w każdym trybie.",
|
|
917
|
+
"sidebar.prefs.display.enableModeIcons": "Pokaż ikony przełącznika trybów",
|
|
918
|
+
"sidebar.prefs.display.enabledModes": "Widoczne tryby",
|
|
919
|
+
"sidebar.prefs.display.preferencesAlwaysOn": "Preferencje są zawsze widoczne.",
|
|
920
|
+
"sidebar.prefs.display.maxDepth": "Głębokość drzewa per tryb",
|
|
921
|
+
"sidebar.prefs.order.title": "Kolejność elementów",
|
|
922
|
+
"sidebar.prefs.order.desc": "Przeciągnij pozycje, żeby zmienić ich kolejność w wybranym trybie.",
|
|
923
|
+
"sidebar.prefs.order.pickMode": "Tryb",
|
|
924
|
+
"sidebar.prefs.order.visibilityHint": "Kolejność dotyczy elementów top-level wewnątrz każdej grupy źródła. Zwiń nagłówek źródła, aby zobaczyć tylko elementy top-level i sprawdzić efekt zmiany.",
|
|
925
|
+
"sidebar.prefs.order.empty": "Brak elementów do uporządkowania w tym trybie.",
|
|
926
|
+
"sidebar.prefs.order.resetMode": "Przywróć domyślną kolejność",
|
|
927
|
+
"sidebar.prefs.hidden.title": "Ukryte elementy",
|
|
928
|
+
"sidebar.prefs.hidden.desc": "Elementy, które ukryłeś z drzewa. Przywróć, żeby wróciły.",
|
|
929
|
+
"sidebar.prefs.hidden.empty": "Nic jeszcze nie zostało ukryte.",
|
|
930
|
+
"sidebar.prefs.hidden.restore": "Przywróć",
|
|
931
|
+
"sidebar.prefs.reset.title": "Reset",
|
|
932
|
+
"sidebar.prefs.reset.desc": "Wyczyść wszystkie ustawienia i przywróć oryginalny układ panelu bocznego.",
|
|
933
|
+
"sidebar.prefs.reset.button": "Zresetuj wszystkie preferencje",
|
|
934
|
+
"sidebar.prefs.reset.confirm": "To usunie ulubione, ukryte elementy, własną kolejność i wszystkie inne preferencje panelu bocznego. Tej operacji nie da się cofnąć.",
|
|
935
|
+
"sidebar.prefs.reset.confirmYes": "Tak, resetuj wszystko",
|
|
936
|
+
"sidebar.prefs.reset.cancel": "Anuluj",
|
|
682
937
|
"carousel.prev": "Poprzedni slajd",
|
|
683
938
|
"carousel.next": "Następny slajd",
|
|
684
939
|
"carousel.slide": "Slajd",
|
|
@@ -1122,8 +1377,121 @@ const j = [
|
|
|
1122
1377
|
"noCode.codePreview.language": "Język",
|
|
1123
1378
|
"noCode.codePreview.format": "Formatuj kod",
|
|
1124
1379
|
"noCode.codePreview.linesChanged": "Zmienione linie",
|
|
1125
|
-
"noCode.codePreview.noChanges": "Brak zmian"
|
|
1126
|
-
|
|
1380
|
+
"noCode.codePreview.noChanges": "Brak zmian",
|
|
1381
|
+
// ── Edytor wektorowy ──
|
|
1382
|
+
"vectorEditor.menu.file": "Plik",
|
|
1383
|
+
"vectorEditor.menu.edit": "Edycja",
|
|
1384
|
+
"vectorEditor.menu.object": "Obiekt",
|
|
1385
|
+
"vectorEditor.menu.path": "Ścieżka",
|
|
1386
|
+
"vectorEditor.menu.view": "Widok",
|
|
1387
|
+
"vectorEditor.menu.newCanvas": "Nowy obszar",
|
|
1388
|
+
"vectorEditor.menu.openSvg": "Otwórz SVG…",
|
|
1389
|
+
"vectorEditor.menu.pasteSvg": "Wklej SVG…",
|
|
1390
|
+
"vectorEditor.menu.exportSvg": "Eksportuj SVG",
|
|
1391
|
+
"vectorEditor.menu.exportPng": "Eksportuj PNG",
|
|
1392
|
+
"vectorEditor.menu.exportJpg": "Eksportuj JPG",
|
|
1393
|
+
"vectorEditor.menu.exportWebp": "Eksportuj WebP",
|
|
1394
|
+
"vectorEditor.menu.exportBmp": "Eksportuj BMP",
|
|
1395
|
+
"vectorEditor.menu.saveToLibrary": "📦 Zapisz do biblioteki",
|
|
1396
|
+
"vectorEditor.menu.exportIconSnippet": "📋 Eksportuj snippet ikony",
|
|
1397
|
+
"vectorEditor.menu.exportIcon": "📋 Eksportuj ikonę",
|
|
1398
|
+
"vectorEditor.menu.undo": "Cofnij (Ctrl+Z)",
|
|
1399
|
+
"vectorEditor.menu.redo": "Ponów (Ctrl+Y)",
|
|
1400
|
+
"vectorEditor.menu.copy": "Kopiuj (Ctrl+C)",
|
|
1401
|
+
"vectorEditor.menu.paste": "Wklej (Ctrl+V)",
|
|
1402
|
+
"vectorEditor.menu.duplicate": "Duplikuj (Ctrl+D)",
|
|
1403
|
+
"vectorEditor.menu.delete": "Usuń (Del)",
|
|
1404
|
+
"vectorEditor.menu.bringToFront": "Przenieś na wierzch",
|
|
1405
|
+
"vectorEditor.menu.sendToBack": "Przenieś na spód",
|
|
1406
|
+
"vectorEditor.menu.flipH": "Odbij poziomo",
|
|
1407
|
+
"vectorEditor.menu.flipV": "Odbij pionowo",
|
|
1408
|
+
"vectorEditor.menu.alignLeft": "Wyrównaj do lewej",
|
|
1409
|
+
"vectorEditor.menu.alignCenter": "Wyrównaj do środka",
|
|
1410
|
+
"vectorEditor.menu.alignRight": "Wyrównaj do prawej",
|
|
1411
|
+
"vectorEditor.menu.union": "Suma (∪)",
|
|
1412
|
+
"vectorEditor.menu.subtract": "Różnica (−)",
|
|
1413
|
+
"vectorEditor.menu.intersect": "Część wspólna (∩)",
|
|
1414
|
+
"vectorEditor.menu.exclude": "Wykluczenie (⊕)",
|
|
1415
|
+
"vectorEditor.menu.outlineStroke": "Zamień obrys na kształt",
|
|
1416
|
+
"vectorEditor.menu.snapToGrid": "Przyciągaj do siatki",
|
|
1417
|
+
"vectorEditor.menu.snap": "Siatka",
|
|
1418
|
+
"vectorEditor.menu.secondShape": "2-gi kształt",
|
|
1419
|
+
"vectorEditor.tabs.properties": "Właściwości",
|
|
1420
|
+
"vectorEditor.tabs.layers": "Warstwy",
|
|
1421
|
+
"vectorEditor.tabs.library": "Biblioteka",
|
|
1422
|
+
"vectorEditor.tabs.timeline": "Oś czasu",
|
|
1423
|
+
"vectorEditor.timeline.preset": "Preset",
|
|
1424
|
+
"vectorEditor.timeline.duration": "Czas (ms)",
|
|
1425
|
+
"vectorEditor.timeline.repeat": "Powtórzenia",
|
|
1426
|
+
"vectorEditor.timeline.direction": "Kierunek",
|
|
1427
|
+
"vectorEditor.timeline.remove": "Usuń animację",
|
|
1428
|
+
"vectorEditor.timeline.play": "Odtwórz",
|
|
1429
|
+
"vectorEditor.timeline.pause": "Pauza",
|
|
1430
|
+
"vectorEditor.timeline.stop": "Stop",
|
|
1431
|
+
"vectorEditor.timeline.copyCss": "Kopiuj CSS",
|
|
1432
|
+
"vectorEditor.timeline.keyframes": "Klatki kluczowe",
|
|
1433
|
+
"vectorEditor.timeline.addKeyframe": "+ Dodaj klatkę",
|
|
1434
|
+
"vectorEditor.timeline.noSelection": "Zaznacz kształt, aby animować.",
|
|
1435
|
+
"vectorEditor.timeline.animationTitle": "Animacja",
|
|
1436
|
+
"vectorEditor.timeline.playbackTitle": "Odtwarzanie",
|
|
1437
|
+
"vectorEditor.timeline.attachHint": "Zaznacz kształt, aby dodać animację.",
|
|
1438
|
+
"vectorEditor.timeline.playLabel": "▶ Odtwórz",
|
|
1439
|
+
"vectorEditor.timeline.pauseLabel": "⏸ Pauza",
|
|
1440
|
+
"vectorEditor.timeline.stopLabel": "⏹ Stop",
|
|
1441
|
+
"vectorEditor.timeline.copyCssKeyframes": "📋 Kopiuj CSS keyframes",
|
|
1442
|
+
"vectorEditor.timeline.tLabel": "t",
|
|
1443
|
+
"vectorEditor.layers.empty": "Brak warstw. Użyj narzędzi albo wstaw z zakładki Biblioteka.",
|
|
1444
|
+
"vectorEditor.layers.moveUp": "Przenieś w górę",
|
|
1445
|
+
"vectorEditor.layers.moveDown": "Przenieś w dół",
|
|
1446
|
+
"vectorEditor.library.passProp": "Przekaż prop library do NiceVectorEditor, aby wypełnić tę zakładkę ikonami do wstawienia.",
|
|
1447
|
+
"vectorEditor.statusBar.zoom": "Zoom",
|
|
1448
|
+
"vectorEditor.statusBar.shapes": "kształt(y)",
|
|
1449
|
+
"vectorEditor.statusBar.selected": "Zaznaczony",
|
|
1450
|
+
"vectorEditor.statusBar.snap": "Siatka",
|
|
1451
|
+
"vectorEditor.library.empty": "Brak ikon w bibliotece.",
|
|
1452
|
+
"vectorEditor.snippet.title": "✅ Snippet ikony skopiowany do schowka",
|
|
1453
|
+
"vectorEditor.snippet.pasteHint": "Wklej do",
|
|
1454
|
+
"vectorEditor.snippet.copyAgain": "Skopiuj ponownie",
|
|
1455
|
+
"vectorEditor.snippet.close": "Zamknij",
|
|
1456
|
+
"vectorEditor.properties.appearance": "Wygląd",
|
|
1457
|
+
"vectorEditor.properties.fill": "Wypełnienie",
|
|
1458
|
+
"vectorEditor.properties.solid": "Jednolite",
|
|
1459
|
+
"vectorEditor.properties.gradient": "Gradient",
|
|
1460
|
+
"vectorEditor.properties.hideEditor": "▼ Ukryj edytor",
|
|
1461
|
+
"vectorEditor.properties.editGradient": "► Edytuj gradient",
|
|
1462
|
+
"vectorEditor.properties.type": "Typ",
|
|
1463
|
+
"vectorEditor.properties.linear": "Liniowy",
|
|
1464
|
+
"vectorEditor.properties.radial": "Promienisty",
|
|
1465
|
+
"vectorEditor.properties.angle": "Kąt",
|
|
1466
|
+
"vectorEditor.properties.cx": "CX",
|
|
1467
|
+
"vectorEditor.properties.cy": "CY",
|
|
1468
|
+
"vectorEditor.properties.r": "R",
|
|
1469
|
+
"vectorEditor.properties.colorStops": "Punkty koloru:",
|
|
1470
|
+
"vectorEditor.properties.addStop": "+ Dodaj punkt",
|
|
1471
|
+
"vectorEditor.properties.removeStop": "- Usuń",
|
|
1472
|
+
"vectorEditor.properties.stroke": "Obrys",
|
|
1473
|
+
"vectorEditor.properties.width": "Szerokość",
|
|
1474
|
+
"vectorEditor.properties.opacity": "Przezroczystość",
|
|
1475
|
+
"vectorEditor.properties.rotation": "Obrót",
|
|
1476
|
+
"vectorEditor.properties.toolOptions": "Opcje narzędzia",
|
|
1477
|
+
"vectorEditor.properties.radius": "Promień",
|
|
1478
|
+
"vectorEditor.properties.sides": "Boki",
|
|
1479
|
+
"vectorEditor.properties.points": "Wierzchołki",
|
|
1480
|
+
"vectorEditor.properties.innerR": "Promień wewn.",
|
|
1481
|
+
"vectorEditor.properties.size": "Rozmiar",
|
|
1482
|
+
"vectorEditor.properties.font": "Czcionka",
|
|
1483
|
+
"vectorEditor.properties.grid": "Siatka",
|
|
1484
|
+
"vectorEditor.properties.transform": "Transformacja",
|
|
1485
|
+
"vectorEditor.properties.x": "X",
|
|
1486
|
+
"vectorEditor.properties.y": "Y",
|
|
1487
|
+
"vectorEditor.properties.w": "W",
|
|
1488
|
+
"vectorEditor.properties.h": "H",
|
|
1489
|
+
"vectorEditor.layers.title": "Warstwy",
|
|
1490
|
+
"vectorEditor.layers.show": "Pokaż",
|
|
1491
|
+
"vectorEditor.layers.hide": "Ukryj",
|
|
1492
|
+
"vectorEditor.layers.lock": "Zablokuj",
|
|
1493
|
+
"vectorEditor.layers.unlock": "Odblokuj"
|
|
1494
|
+
}, Ce = {
|
|
1127
1495
|
ok: "OK",
|
|
1128
1496
|
cancel: "Abbrechen",
|
|
1129
1497
|
save: "Speichern",
|
|
@@ -1644,7 +2012,188 @@ const j = [
|
|
|
1644
2012
|
"noCode.codePreview.language": "Sprache",
|
|
1645
2013
|
"noCode.codePreview.format": "Code formatieren",
|
|
1646
2014
|
"noCode.codePreview.linesChanged": "Geänderte Zeilen",
|
|
1647
|
-
"noCode.codePreview.noChanges": "Keine Änderungen"
|
|
2015
|
+
"noCode.codePreview.noChanges": "Keine Änderungen",
|
|
2016
|
+
// ── Navigation / Help / Home / Sidebar / Vector Editor (P2.5 backfill) ──
|
|
2017
|
+
"nav.help": "Hilfe",
|
|
2018
|
+
"navShell.home.title": "Start",
|
|
2019
|
+
"navShell.help.next": "Weiter",
|
|
2020
|
+
"navShell.help.back": "Zurück",
|
|
2021
|
+
"navShell.help.finish": "Fertig",
|
|
2022
|
+
"navShell.help.skip": "Überspringen",
|
|
2023
|
+
"navShell.help.stepOf": "von",
|
|
2024
|
+
"navShell.help.topNav.title": "Obere Navigation",
|
|
2025
|
+
"navShell.help.topNav.body": "Über die obere Leiste wechseln Sie Arbeitsbereiche, suchen, ändern Theme oder Sprache und öffnen Benachrichtigungen.",
|
|
2026
|
+
"navShell.help.sidebar.title": "Seitenleiste",
|
|
2027
|
+
"navShell.help.sidebar.body": "Durchsuchen Sie verfügbare Ansichten gruppiert nach Bereich. Wählen Sie eine Ansicht, um sie in einem neuen Tab zu öffnen.",
|
|
2028
|
+
"navShell.help.tabs.title": "Tabs",
|
|
2029
|
+
"navShell.help.tabs.body": "Jede geöffnete Ansicht lebt in einem eigenen Tab. Häufig genutzte anheften und mit Rechtsklick weitere Aktionen aufrufen.",
|
|
2030
|
+
"navShell.help.content.title": "Arbeitsbereich",
|
|
2031
|
+
"navShell.help.content.body": "Im Hauptbereich wird die aktive Ansicht angezeigt. Wechsel von Tabs oder Seitenleisten-Einträgen tauscht den Inhalt hier.",
|
|
2032
|
+
"navShell.home.subtitle": "Machen Sie dort weiter, wo Sie aufgehört haben.",
|
|
2033
|
+
"navShell.home.empty": "Öffnen Sie eine Ansicht aus der Seitenleiste oder den Tabs oben, um Ihren Arbeitsbereich zu füllen.",
|
|
2034
|
+
"navShell.home.greeting.morning": "Guten Morgen",
|
|
2035
|
+
"navShell.home.greeting.afternoon": "Guten Tag",
|
|
2036
|
+
"navShell.home.greeting.evening": "Guten Abend",
|
|
2037
|
+
"navShell.home.greeting.night": "Hallo",
|
|
2038
|
+
"navShell.home.sections.openTabs": "Jetzt geöffnet",
|
|
2039
|
+
"navShell.home.sections.shortcuts": "Ihre Verknüpfungen",
|
|
2040
|
+
"navShell.home.sections.allViews": "Alle Ansichten",
|
|
2041
|
+
"sidebar.menu.open": "Öffnen",
|
|
2042
|
+
"sidebar.menu.openNewTab": "In neuem Tab öffnen",
|
|
2043
|
+
"sidebar.menu.openBrowserTab": "In neuem Browser-Tab öffnen",
|
|
2044
|
+
"sidebar.menu.pinFavorite": "Zu Favoriten hinzufügen",
|
|
2045
|
+
"sidebar.menu.unpinFavorite": "Aus Favoriten entfernen",
|
|
2046
|
+
"sidebar.menu.hide": "Ausblenden",
|
|
2047
|
+
"sidebar.menu.copyLink": "Link kopieren",
|
|
2048
|
+
"sidebar.menu.pinSource": "Quelle anheften",
|
|
2049
|
+
"sidebar.menu.unpinSource": "Quelle lösen",
|
|
2050
|
+
"sidebar.menu.hideSource": "Quelle ausblenden",
|
|
2051
|
+
"sidebar.prefs.general": "Allgemein",
|
|
2052
|
+
"sidebar.prefs.display": "Anzeige",
|
|
2053
|
+
"sidebar.prefs.order": "Reihenfolge",
|
|
2054
|
+
"sidebar.prefs.hidden": "Ausgeblendete Elemente",
|
|
2055
|
+
"sidebar.prefs.reset": "Zurücksetzen",
|
|
2056
|
+
"sidebar.prefs.general.title": "Allgemein",
|
|
2057
|
+
"sidebar.prefs.general.desc": "Verhalten des Seitenleisten-Baums und Aktion bei Linksklick.",
|
|
2058
|
+
"sidebar.prefs.general.autoExpand": "Alle Zweige automatisch erweitern",
|
|
2059
|
+
"sidebar.prefs.general.autoExpandHint": "Wenn deaktiviert, starten Zweige eingeklappt und merken sich den letzten Zustand pro Sitzung.",
|
|
2060
|
+
"sidebar.prefs.general.leftClickBehavior": "Verhalten beim Linksklick",
|
|
2061
|
+
"sidebar.prefs.general.focusExisting": "Vorhandenen Tab fokussieren",
|
|
2062
|
+
"sidebar.prefs.general.openNew": "Immer in neuem Tab öffnen",
|
|
2063
|
+
"sidebar.prefs.general.leftClickHint": "Rechtsklick → „In neuem Tab öffnen“ ist unabhängig von dieser Einstellung immer verfügbar.",
|
|
2064
|
+
"sidebar.prefs.display.title": "Anzeige",
|
|
2065
|
+
"sidebar.prefs.display.desc": "Welche Modi in der Leiste erscheinen und wie tief der Baum pro Modus reicht.",
|
|
2066
|
+
"sidebar.prefs.display.enableModeIcons": "Modus-Umschalter-Symbole anzeigen",
|
|
2067
|
+
"sidebar.prefs.display.enabledModes": "Sichtbare Modi",
|
|
2068
|
+
"sidebar.prefs.display.preferencesAlwaysOn": "Einstellungen werden immer angezeigt.",
|
|
2069
|
+
"sidebar.prefs.display.maxDepth": "Baumtiefe pro Modus",
|
|
2070
|
+
"sidebar.prefs.order.title": "Elemente sortieren",
|
|
2071
|
+
"sidebar.prefs.order.desc": "Ziehen Sie Elemente, um deren Reihenfolge im gewählten Modus zu ändern.",
|
|
2072
|
+
"sidebar.prefs.order.pickMode": "Modus",
|
|
2073
|
+
"sidebar.prefs.order.empty": "Keine sortierbaren Elemente in diesem Modus.",
|
|
2074
|
+
"sidebar.prefs.order.resetMode": "Auf Standardreihenfolge zurücksetzen",
|
|
2075
|
+
"sidebar.prefs.hidden.title": "Ausgeblendete Elemente",
|
|
2076
|
+
"sidebar.prefs.hidden.desc": "Aus dem Baum ausgeblendete Elemente. Stellen Sie sie wieder her, um sie zurückzubringen.",
|
|
2077
|
+
"sidebar.prefs.hidden.empty": "Nichts ausgeblendet.",
|
|
2078
|
+
"sidebar.prefs.hidden.restore": "Wiederherstellen",
|
|
2079
|
+
"sidebar.prefs.reset.title": "Zurücksetzen",
|
|
2080
|
+
"sidebar.prefs.reset.desc": "Alle Anpassungen löschen und das ursprüngliche Seitenleisten-Layout wiederherstellen.",
|
|
2081
|
+
"sidebar.prefs.reset.button": "Alle Einstellungen zurücksetzen",
|
|
2082
|
+
"sidebar.prefs.reset.confirm": "Dies löscht Ihre Favoriten, ausgeblendete Elemente, eigene Reihenfolge und alle weiteren Seitenleisten-Einstellungen. Dieser Vorgang kann nicht rückgängig gemacht werden.",
|
|
2083
|
+
"sidebar.prefs.reset.confirmYes": "Ja, alles zurücksetzen",
|
|
2084
|
+
"sidebar.prefs.reset.cancel": "Abbrechen",
|
|
2085
|
+
"vectorEditor.menu.file": "Datei",
|
|
2086
|
+
"vectorEditor.menu.edit": "Bearbeiten",
|
|
2087
|
+
"vectorEditor.menu.object": "Objekt",
|
|
2088
|
+
"vectorEditor.menu.path": "Pfad",
|
|
2089
|
+
"vectorEditor.menu.view": "Ansicht",
|
|
2090
|
+
"vectorEditor.menu.newCanvas": "Neue Leinwand",
|
|
2091
|
+
"vectorEditor.menu.openSvg": "SVG öffnen…",
|
|
2092
|
+
"vectorEditor.menu.pasteSvg": "SVG einfügen…",
|
|
2093
|
+
"vectorEditor.menu.exportSvg": "SVG exportieren",
|
|
2094
|
+
"vectorEditor.menu.exportPng": "PNG exportieren",
|
|
2095
|
+
"vectorEditor.menu.exportJpg": "JPG exportieren",
|
|
2096
|
+
"vectorEditor.menu.exportWebp": "WebP exportieren",
|
|
2097
|
+
"vectorEditor.menu.exportBmp": "BMP exportieren",
|
|
2098
|
+
"vectorEditor.menu.saveToLibrary": "📦 In Bibliothek speichern",
|
|
2099
|
+
"vectorEditor.menu.exportIconSnippet": "📋 Icon-Snippet exportieren",
|
|
2100
|
+
"vectorEditor.menu.exportIcon": "📋 Icon exportieren",
|
|
2101
|
+
"vectorEditor.menu.undo": "Rückgängig (Strg+Z)",
|
|
2102
|
+
"vectorEditor.menu.redo": "Wiederherstellen (Strg+Y)",
|
|
2103
|
+
"vectorEditor.menu.copy": "Kopieren (Strg+C)",
|
|
2104
|
+
"vectorEditor.menu.paste": "Einfügen (Strg+V)",
|
|
2105
|
+
"vectorEditor.menu.duplicate": "Duplizieren (Strg+D)",
|
|
2106
|
+
"vectorEditor.menu.delete": "Löschen (Entf)",
|
|
2107
|
+
"vectorEditor.menu.bringToFront": "In den Vordergrund",
|
|
2108
|
+
"vectorEditor.menu.sendToBack": "In den Hintergrund",
|
|
2109
|
+
"vectorEditor.menu.flipH": "Horizontal spiegeln",
|
|
2110
|
+
"vectorEditor.menu.flipV": "Vertikal spiegeln",
|
|
2111
|
+
"vectorEditor.menu.alignLeft": "Links ausrichten",
|
|
2112
|
+
"vectorEditor.menu.alignCenter": "Zentriert ausrichten",
|
|
2113
|
+
"vectorEditor.menu.alignRight": "Rechts ausrichten",
|
|
2114
|
+
"vectorEditor.menu.union": "Vereinigung (∪)",
|
|
2115
|
+
"vectorEditor.menu.subtract": "Subtraktion (−)",
|
|
2116
|
+
"vectorEditor.menu.intersect": "Schnittmenge (∩)",
|
|
2117
|
+
"vectorEditor.menu.exclude": "Ausschluss (⊕)",
|
|
2118
|
+
"vectorEditor.menu.outlineStroke": "Kontur in Pfad umwandeln",
|
|
2119
|
+
"vectorEditor.menu.snapToGrid": "Am Raster ausrichten",
|
|
2120
|
+
"vectorEditor.menu.snap": "Raster",
|
|
2121
|
+
"vectorEditor.menu.secondShape": "2. Form",
|
|
2122
|
+
"vectorEditor.tabs.properties": "Eigenschaften",
|
|
2123
|
+
"vectorEditor.tabs.layers": "Ebenen",
|
|
2124
|
+
"vectorEditor.tabs.library": "Bibliothek",
|
|
2125
|
+
"vectorEditor.tabs.timeline": "Zeitleiste",
|
|
2126
|
+
"vectorEditor.timeline.preset": "Vorlage",
|
|
2127
|
+
"vectorEditor.timeline.duration": "Dauer (ms)",
|
|
2128
|
+
"vectorEditor.timeline.repeat": "Wiederholen",
|
|
2129
|
+
"vectorEditor.timeline.direction": "Richtung",
|
|
2130
|
+
"vectorEditor.timeline.remove": "Animation entfernen",
|
|
2131
|
+
"vectorEditor.timeline.play": "Abspielen",
|
|
2132
|
+
"vectorEditor.timeline.pause": "Pause",
|
|
2133
|
+
"vectorEditor.timeline.stop": "Stopp",
|
|
2134
|
+
"vectorEditor.timeline.copyCss": "CSS kopieren",
|
|
2135
|
+
"vectorEditor.timeline.keyframes": "Keyframes",
|
|
2136
|
+
"vectorEditor.timeline.addKeyframe": "+ Keyframe hinzufügen",
|
|
2137
|
+
"vectorEditor.timeline.noSelection": "Form auswählen, um sie zu animieren.",
|
|
2138
|
+
"vectorEditor.timeline.animationTitle": "Animation",
|
|
2139
|
+
"vectorEditor.timeline.playbackTitle": "Wiedergabe",
|
|
2140
|
+
"vectorEditor.timeline.attachHint": "Form auswählen, um eine Animation hinzuzufügen.",
|
|
2141
|
+
"vectorEditor.timeline.playLabel": "▶ Abspielen",
|
|
2142
|
+
"vectorEditor.timeline.pauseLabel": "⏸ Pause",
|
|
2143
|
+
"vectorEditor.timeline.stopLabel": "⏹ Stopp",
|
|
2144
|
+
"vectorEditor.timeline.copyCssKeyframes": "📋 CSS-Keyframes kopieren",
|
|
2145
|
+
"vectorEditor.timeline.tLabel": "t",
|
|
2146
|
+
"vectorEditor.layers.empty": "Noch keine Ebenen. Verwenden Sie die Werkzeuge zum Zeichnen oder fügen Sie aus der Bibliothek ein.",
|
|
2147
|
+
"vectorEditor.layers.moveUp": "Nach oben",
|
|
2148
|
+
"vectorEditor.layers.moveDown": "Nach unten",
|
|
2149
|
+
"vectorEditor.library.passProp": "Übergeben Sie eine library-Property an NiceVectorEditor, um diesen Tab mit einfügbaren Icons zu füllen.",
|
|
2150
|
+
"vectorEditor.statusBar.zoom": "Zoom",
|
|
2151
|
+
"vectorEditor.statusBar.shapes": "Form(en)",
|
|
2152
|
+
"vectorEditor.statusBar.selected": "Ausgewählt",
|
|
2153
|
+
"vectorEditor.statusBar.snap": "Raster",
|
|
2154
|
+
"vectorEditor.library.empty": "Keine Icons in der Bibliothek.",
|
|
2155
|
+
"vectorEditor.snippet.title": "✅ Icon-Snippet in die Zwischenablage kopiert",
|
|
2156
|
+
"vectorEditor.snippet.pasteHint": "Einfügen in",
|
|
2157
|
+
"vectorEditor.snippet.copyAgain": "Erneut kopieren",
|
|
2158
|
+
"vectorEditor.snippet.close": "Schließen",
|
|
2159
|
+
"vectorEditor.properties.appearance": "Erscheinungsbild",
|
|
2160
|
+
"vectorEditor.properties.fill": "Füllung",
|
|
2161
|
+
"vectorEditor.properties.solid": "Einfarbig",
|
|
2162
|
+
"vectorEditor.properties.gradient": "Verlauf",
|
|
2163
|
+
"vectorEditor.properties.hideEditor": "▼ Editor ausblenden",
|
|
2164
|
+
"vectorEditor.properties.editGradient": "► Verlauf bearbeiten",
|
|
2165
|
+
"vectorEditor.properties.type": "Typ",
|
|
2166
|
+
"vectorEditor.properties.linear": "Linear",
|
|
2167
|
+
"vectorEditor.properties.radial": "Radial",
|
|
2168
|
+
"vectorEditor.properties.angle": "Winkel",
|
|
2169
|
+
"vectorEditor.properties.cx": "CX",
|
|
2170
|
+
"vectorEditor.properties.cy": "CY",
|
|
2171
|
+
"vectorEditor.properties.r": "R",
|
|
2172
|
+
"vectorEditor.properties.colorStops": "Farbstopps:",
|
|
2173
|
+
"vectorEditor.properties.addStop": "+ Stopp hinzufügen",
|
|
2174
|
+
"vectorEditor.properties.removeStop": "- Entfernen",
|
|
2175
|
+
"vectorEditor.properties.stroke": "Kontur",
|
|
2176
|
+
"vectorEditor.properties.width": "Breite",
|
|
2177
|
+
"vectorEditor.properties.opacity": "Deckkraft",
|
|
2178
|
+
"vectorEditor.properties.rotation": "Drehung",
|
|
2179
|
+
"vectorEditor.properties.toolOptions": "Werkzeug-Optionen",
|
|
2180
|
+
"vectorEditor.properties.radius": "Radius",
|
|
2181
|
+
"vectorEditor.properties.sides": "Seiten",
|
|
2182
|
+
"vectorEditor.properties.points": "Punkte",
|
|
2183
|
+
"vectorEditor.properties.innerR": "Innerer R",
|
|
2184
|
+
"vectorEditor.properties.size": "Größe",
|
|
2185
|
+
"vectorEditor.properties.font": "Schrift",
|
|
2186
|
+
"vectorEditor.properties.grid": "Raster",
|
|
2187
|
+
"vectorEditor.properties.transform": "Transformation",
|
|
2188
|
+
"vectorEditor.properties.x": "X",
|
|
2189
|
+
"vectorEditor.properties.y": "Y",
|
|
2190
|
+
"vectorEditor.properties.w": "B",
|
|
2191
|
+
"vectorEditor.properties.h": "H",
|
|
2192
|
+
"vectorEditor.layers.title": "Ebenen",
|
|
2193
|
+
"vectorEditor.layers.show": "Einblenden",
|
|
2194
|
+
"vectorEditor.layers.hide": "Ausblenden",
|
|
2195
|
+
"vectorEditor.layers.lock": "Sperren",
|
|
2196
|
+
"vectorEditor.layers.unlock": "Entsperren"
|
|
1648
2197
|
}, Se = {
|
|
1649
2198
|
ok: "OK",
|
|
1650
2199
|
cancel: "Annuler",
|
|
@@ -2166,7 +2715,188 @@ const j = [
|
|
|
2166
2715
|
"noCode.codePreview.language": "Langage",
|
|
2167
2716
|
"noCode.codePreview.format": "Formater le code",
|
|
2168
2717
|
"noCode.codePreview.linesChanged": "Lignes modifiées",
|
|
2169
|
-
"noCode.codePreview.noChanges": "Aucune modification"
|
|
2718
|
+
"noCode.codePreview.noChanges": "Aucune modification",
|
|
2719
|
+
// ── Navigation / Help / Home / Sidebar / Vector Editor (P2.5 backfill) ──
|
|
2720
|
+
"nav.help": "Aide",
|
|
2721
|
+
"navShell.home.title": "Accueil",
|
|
2722
|
+
"navShell.help.next": "Suivant",
|
|
2723
|
+
"navShell.help.back": "Retour",
|
|
2724
|
+
"navShell.help.finish": "Terminer",
|
|
2725
|
+
"navShell.help.skip": "Passer",
|
|
2726
|
+
"navShell.help.stepOf": "sur",
|
|
2727
|
+
"navShell.help.topNav.title": "Navigation supérieure",
|
|
2728
|
+
"navShell.help.topNav.body": "Utilisez la barre supérieure pour changer d'espace de travail, rechercher, modifier le thème ou la langue, et ouvrir les notifications.",
|
|
2729
|
+
"navShell.help.sidebar.title": "Barre latérale",
|
|
2730
|
+
"navShell.help.sidebar.body": "Parcourez les vues disponibles regroupées par section. Choisissez une vue pour l’ouvrir dans un nouvel onglet.",
|
|
2731
|
+
"navShell.help.tabs.title": "Onglets",
|
|
2732
|
+
"navShell.help.tabs.body": "Chaque vue ouverte vit dans son propre onglet. Épinglez celles que vous utilisez souvent et faites un clic droit pour plus d'actions.",
|
|
2733
|
+
"navShell.help.content.title": "Espace de travail",
|
|
2734
|
+
"navShell.help.content.body": "La zone principale affiche la vue active. Changer d’onglet ou d’entrée latérale échange le contenu ici.",
|
|
2735
|
+
"navShell.home.subtitle": "Reprenez là où vous en étiez.",
|
|
2736
|
+
"navShell.home.empty": "Ouvrez une vue depuis la barre latérale ou les onglets ci-dessus pour remplir votre espace de travail.",
|
|
2737
|
+
"navShell.home.greeting.morning": "Bonjour",
|
|
2738
|
+
"navShell.home.greeting.afternoon": "Bon après-midi",
|
|
2739
|
+
"navShell.home.greeting.evening": "Bonsoir",
|
|
2740
|
+
"navShell.home.greeting.night": "Bonjour",
|
|
2741
|
+
"navShell.home.sections.openTabs": "Ouverts maintenant",
|
|
2742
|
+
"navShell.home.sections.shortcuts": "Vos raccourcis",
|
|
2743
|
+
"navShell.home.sections.allViews": "Toutes les vues",
|
|
2744
|
+
"sidebar.menu.open": "Ouvrir",
|
|
2745
|
+
"sidebar.menu.openNewTab": "Ouvrir dans un nouvel onglet",
|
|
2746
|
+
"sidebar.menu.openBrowserTab": "Ouvrir dans un nouvel onglet du navigateur",
|
|
2747
|
+
"sidebar.menu.pinFavorite": "Ajouter aux favoris",
|
|
2748
|
+
"sidebar.menu.unpinFavorite": "Retirer des favoris",
|
|
2749
|
+
"sidebar.menu.hide": "Masquer",
|
|
2750
|
+
"sidebar.menu.copyLink": "Copier le lien",
|
|
2751
|
+
"sidebar.menu.pinSource": "Épingler la source",
|
|
2752
|
+
"sidebar.menu.unpinSource": "Détacher la source",
|
|
2753
|
+
"sidebar.menu.hideSource": "Masquer la source",
|
|
2754
|
+
"sidebar.prefs.general": "Général",
|
|
2755
|
+
"sidebar.prefs.display": "Affichage",
|
|
2756
|
+
"sidebar.prefs.order": "Ordre",
|
|
2757
|
+
"sidebar.prefs.hidden": "Éléments masqués",
|
|
2758
|
+
"sidebar.prefs.reset": "Réinitialiser",
|
|
2759
|
+
"sidebar.prefs.general.title": "Général",
|
|
2760
|
+
"sidebar.prefs.general.desc": "Comportement de l'arborescence latérale et action du clic gauche.",
|
|
2761
|
+
"sidebar.prefs.general.autoExpand": "Développer automatiquement toutes les branches",
|
|
2762
|
+
"sidebar.prefs.general.autoExpandHint": "Lorsque désactivé, les branches démarrent repliées et conservent leur dernier état par session.",
|
|
2763
|
+
"sidebar.prefs.general.leftClickBehavior": "Comportement du clic gauche",
|
|
2764
|
+
"sidebar.prefs.general.focusExisting": "Focaliser l’onglet existant",
|
|
2765
|
+
"sidebar.prefs.general.openNew": "Toujours ouvrir dans un nouvel onglet",
|
|
2766
|
+
"sidebar.prefs.general.leftClickHint": "Le clic droit → « Ouvrir dans un nouvel onglet » est toujours disponible quel que soit ce paramètre.",
|
|
2767
|
+
"sidebar.prefs.display.title": "Affichage",
|
|
2768
|
+
"sidebar.prefs.display.desc": "Quels modes apparaissent dans la barre et la profondeur de l'arbre par mode.",
|
|
2769
|
+
"sidebar.prefs.display.enableModeIcons": "Afficher les icônes du sélecteur de mode",
|
|
2770
|
+
"sidebar.prefs.display.enabledModes": "Modes visibles",
|
|
2771
|
+
"sidebar.prefs.display.preferencesAlwaysOn": "Les préférences sont toujours affichées.",
|
|
2772
|
+
"sidebar.prefs.display.maxDepth": "Profondeur d’arbre par mode",
|
|
2773
|
+
"sidebar.prefs.order.title": "Ordonner les éléments",
|
|
2774
|
+
"sidebar.prefs.order.desc": "Faites glisser les éléments pour réorganiser leur affichage dans le mode sélectionné.",
|
|
2775
|
+
"sidebar.prefs.order.pickMode": "Mode",
|
|
2776
|
+
"sidebar.prefs.order.empty": "Aucun élément réorganisable dans ce mode.",
|
|
2777
|
+
"sidebar.prefs.order.resetMode": "Rétablir l’ordre par défaut",
|
|
2778
|
+
"sidebar.prefs.hidden.title": "Éléments masqués",
|
|
2779
|
+
"sidebar.prefs.hidden.desc": "Éléments que vous avez masqués de l'arborescence. Restaurez-les pour les ramener.",
|
|
2780
|
+
"sidebar.prefs.hidden.empty": "Rien de masqué pour l’instant.",
|
|
2781
|
+
"sidebar.prefs.hidden.restore": "Restaurer",
|
|
2782
|
+
"sidebar.prefs.reset.title": "Réinitialiser",
|
|
2783
|
+
"sidebar.prefs.reset.desc": "Effacer toutes les personnalisations et restaurer la disposition d'origine de la barre latérale.",
|
|
2784
|
+
"sidebar.prefs.reset.button": "Réinitialiser toutes les préférences",
|
|
2785
|
+
"sidebar.prefs.reset.confirm": "Cela effacera vos favoris, éléments masqués, ordre personnalisé et toutes les autres préférences de la barre latérale. Cette action est irréversible.",
|
|
2786
|
+
"sidebar.prefs.reset.confirmYes": "Oui, tout réinitialiser",
|
|
2787
|
+
"sidebar.prefs.reset.cancel": "Annuler",
|
|
2788
|
+
"vectorEditor.menu.file": "Fichier",
|
|
2789
|
+
"vectorEditor.menu.edit": "Édition",
|
|
2790
|
+
"vectorEditor.menu.object": "Objet",
|
|
2791
|
+
"vectorEditor.menu.path": "Chemin",
|
|
2792
|
+
"vectorEditor.menu.view": "Affichage",
|
|
2793
|
+
"vectorEditor.menu.newCanvas": "Nouveau canevas",
|
|
2794
|
+
"vectorEditor.menu.openSvg": "Ouvrir un SVG…",
|
|
2795
|
+
"vectorEditor.menu.pasteSvg": "Coller un SVG…",
|
|
2796
|
+
"vectorEditor.menu.exportSvg": "Exporter en SVG",
|
|
2797
|
+
"vectorEditor.menu.exportPng": "Exporter en PNG",
|
|
2798
|
+
"vectorEditor.menu.exportJpg": "Exporter en JPG",
|
|
2799
|
+
"vectorEditor.menu.exportWebp": "Exporter en WebP",
|
|
2800
|
+
"vectorEditor.menu.exportBmp": "Exporter en BMP",
|
|
2801
|
+
"vectorEditor.menu.saveToLibrary": "📦 Enregistrer dans la bibliothèque",
|
|
2802
|
+
"vectorEditor.menu.exportIconSnippet": "📋 Exporter l’extrait d’icône",
|
|
2803
|
+
"vectorEditor.menu.exportIcon": "📋 Exporter l’icône",
|
|
2804
|
+
"vectorEditor.menu.undo": "Annuler (Ctrl+Z)",
|
|
2805
|
+
"vectorEditor.menu.redo": "Rétablir (Ctrl+Y)",
|
|
2806
|
+
"vectorEditor.menu.copy": "Copier (Ctrl+C)",
|
|
2807
|
+
"vectorEditor.menu.paste": "Coller (Ctrl+V)",
|
|
2808
|
+
"vectorEditor.menu.duplicate": "Dupliquer (Ctrl+D)",
|
|
2809
|
+
"vectorEditor.menu.delete": "Supprimer (Suppr)",
|
|
2810
|
+
"vectorEditor.menu.bringToFront": "Mettre au premier plan",
|
|
2811
|
+
"vectorEditor.menu.sendToBack": "Mettre à l’arrière-plan",
|
|
2812
|
+
"vectorEditor.menu.flipH": "Retourner horizontalement",
|
|
2813
|
+
"vectorEditor.menu.flipV": "Retourner verticalement",
|
|
2814
|
+
"vectorEditor.menu.alignLeft": "Aligner à gauche",
|
|
2815
|
+
"vectorEditor.menu.alignCenter": "Centrer",
|
|
2816
|
+
"vectorEditor.menu.alignRight": "Aligner à droite",
|
|
2817
|
+
"vectorEditor.menu.union": "Union (∪)",
|
|
2818
|
+
"vectorEditor.menu.subtract": "Soustraire (−)",
|
|
2819
|
+
"vectorEditor.menu.intersect": "Intersection (∩)",
|
|
2820
|
+
"vectorEditor.menu.exclude": "Exclusion (⊕)",
|
|
2821
|
+
"vectorEditor.menu.outlineStroke": "Vectoriser le contour",
|
|
2822
|
+
"vectorEditor.menu.snapToGrid": "Aligner sur la grille",
|
|
2823
|
+
"vectorEditor.menu.snap": "Grille",
|
|
2824
|
+
"vectorEditor.menu.secondShape": "2e forme",
|
|
2825
|
+
"vectorEditor.tabs.properties": "Propriétés",
|
|
2826
|
+
"vectorEditor.tabs.layers": "Calques",
|
|
2827
|
+
"vectorEditor.tabs.library": "Bibliothèque",
|
|
2828
|
+
"vectorEditor.tabs.timeline": "Chronologie",
|
|
2829
|
+
"vectorEditor.timeline.preset": "Préréglage",
|
|
2830
|
+
"vectorEditor.timeline.duration": "Durée (ms)",
|
|
2831
|
+
"vectorEditor.timeline.repeat": "Répétitions",
|
|
2832
|
+
"vectorEditor.timeline.direction": "Direction",
|
|
2833
|
+
"vectorEditor.timeline.remove": "Supprimer l’animation",
|
|
2834
|
+
"vectorEditor.timeline.play": "Lecture",
|
|
2835
|
+
"vectorEditor.timeline.pause": "Pause",
|
|
2836
|
+
"vectorEditor.timeline.stop": "Arrêt",
|
|
2837
|
+
"vectorEditor.timeline.copyCss": "Copier le CSS",
|
|
2838
|
+
"vectorEditor.timeline.keyframes": "Images clés",
|
|
2839
|
+
"vectorEditor.timeline.addKeyframe": "+ Ajouter une image clé",
|
|
2840
|
+
"vectorEditor.timeline.noSelection": "Sélectionnez une forme à animer.",
|
|
2841
|
+
"vectorEditor.timeline.animationTitle": "Animation",
|
|
2842
|
+
"vectorEditor.timeline.playbackTitle": "Lecture",
|
|
2843
|
+
"vectorEditor.timeline.attachHint": "Sélectionnez une forme pour y attacher une animation.",
|
|
2844
|
+
"vectorEditor.timeline.playLabel": "▶ Lecture",
|
|
2845
|
+
"vectorEditor.timeline.pauseLabel": "⏸ Pause",
|
|
2846
|
+
"vectorEditor.timeline.stopLabel": "⏹ Arrêt",
|
|
2847
|
+
"vectorEditor.timeline.copyCssKeyframes": "📋 Copier les images clés CSS",
|
|
2848
|
+
"vectorEditor.timeline.tLabel": "t",
|
|
2849
|
+
"vectorEditor.layers.empty": "Aucun calque pour l’instant. Utilisez les outils pour dessiner ou insérez depuis l’onglet Bibliothèque.",
|
|
2850
|
+
"vectorEditor.layers.moveUp": "Monter",
|
|
2851
|
+
"vectorEditor.layers.moveDown": "Descendre",
|
|
2852
|
+
"vectorEditor.library.passProp": "Passez une prop library à NiceVectorEditor pour remplir cet onglet avec des icônes insérables.",
|
|
2853
|
+
"vectorEditor.statusBar.zoom": "Zoom",
|
|
2854
|
+
"vectorEditor.statusBar.shapes": "forme(s)",
|
|
2855
|
+
"vectorEditor.statusBar.selected": "Sélectionné",
|
|
2856
|
+
"vectorEditor.statusBar.snap": "Grille",
|
|
2857
|
+
"vectorEditor.library.empty": "Aucune icône dans la bibliothèque.",
|
|
2858
|
+
"vectorEditor.snippet.title": "✅ Extrait d’icône copié dans le presse-papiers",
|
|
2859
|
+
"vectorEditor.snippet.pasteHint": "Coller dans",
|
|
2860
|
+
"vectorEditor.snippet.copyAgain": "Copier à nouveau",
|
|
2861
|
+
"vectorEditor.snippet.close": "Fermer",
|
|
2862
|
+
"vectorEditor.properties.appearance": "Apparence",
|
|
2863
|
+
"vectorEditor.properties.fill": "Remplissage",
|
|
2864
|
+
"vectorEditor.properties.solid": "Uni",
|
|
2865
|
+
"vectorEditor.properties.gradient": "Dégradé",
|
|
2866
|
+
"vectorEditor.properties.hideEditor": "▼ Masquer l’éditeur",
|
|
2867
|
+
"vectorEditor.properties.editGradient": "► Modifier le dégradé",
|
|
2868
|
+
"vectorEditor.properties.type": "Type",
|
|
2869
|
+
"vectorEditor.properties.linear": "Linéaire",
|
|
2870
|
+
"vectorEditor.properties.radial": "Radial",
|
|
2871
|
+
"vectorEditor.properties.angle": "Angle",
|
|
2872
|
+
"vectorEditor.properties.cx": "CX",
|
|
2873
|
+
"vectorEditor.properties.cy": "CY",
|
|
2874
|
+
"vectorEditor.properties.r": "R",
|
|
2875
|
+
"vectorEditor.properties.colorStops": "Étapes de couleur :",
|
|
2876
|
+
"vectorEditor.properties.addStop": "+ Ajouter une étape",
|
|
2877
|
+
"vectorEditor.properties.removeStop": "- Supprimer",
|
|
2878
|
+
"vectorEditor.properties.stroke": "Contour",
|
|
2879
|
+
"vectorEditor.properties.width": "Largeur",
|
|
2880
|
+
"vectorEditor.properties.opacity": "Opacité",
|
|
2881
|
+
"vectorEditor.properties.rotation": "Rotation",
|
|
2882
|
+
"vectorEditor.properties.toolOptions": "Options de l’outil",
|
|
2883
|
+
"vectorEditor.properties.radius": "Rayon",
|
|
2884
|
+
"vectorEditor.properties.sides": "Côtés",
|
|
2885
|
+
"vectorEditor.properties.points": "Points",
|
|
2886
|
+
"vectorEditor.properties.innerR": "R intérieur",
|
|
2887
|
+
"vectorEditor.properties.size": "Taille",
|
|
2888
|
+
"vectorEditor.properties.font": "Police",
|
|
2889
|
+
"vectorEditor.properties.grid": "Grille",
|
|
2890
|
+
"vectorEditor.properties.transform": "Transformation",
|
|
2891
|
+
"vectorEditor.properties.x": "X",
|
|
2892
|
+
"vectorEditor.properties.y": "Y",
|
|
2893
|
+
"vectorEditor.properties.w": "L",
|
|
2894
|
+
"vectorEditor.properties.h": "H",
|
|
2895
|
+
"vectorEditor.layers.title": "Calques",
|
|
2896
|
+
"vectorEditor.layers.show": "Afficher",
|
|
2897
|
+
"vectorEditor.layers.hide": "Masquer",
|
|
2898
|
+
"vectorEditor.layers.lock": "Verrouiller",
|
|
2899
|
+
"vectorEditor.layers.unlock": "Déverrouiller"
|
|
2170
2900
|
}, ze = {
|
|
2171
2901
|
ok: "OK",
|
|
2172
2902
|
cancel: "Cancelar",
|
|
@@ -4676,7 +5406,7 @@ const j = [
|
|
|
4676
5406
|
"wm.minimizeAll": "すべて最小化",
|
|
4677
5407
|
"wm.newWindow": "新しいウィンドウ",
|
|
4678
5408
|
"wm.moveToFront": "最前面に移動"
|
|
4679
|
-
},
|
|
5409
|
+
}, We = {
|
|
4680
5410
|
ok: "확인",
|
|
4681
5411
|
cancel: "취소",
|
|
4682
5412
|
save: "저장",
|
|
@@ -5039,7 +5769,7 @@ const j = [
|
|
|
5039
5769
|
"wm.minimizeAll": "모두 최소화",
|
|
5040
5770
|
"wm.newWindow": "새 창",
|
|
5041
5771
|
"wm.moveToFront": "맨 앞으로"
|
|
5042
|
-
},
|
|
5772
|
+
}, Ve = {
|
|
5043
5773
|
ok: "确定",
|
|
5044
5774
|
cancel: "取消",
|
|
5045
5775
|
save: "保存",
|
|
@@ -5402,7 +6132,7 @@ const j = [
|
|
|
5402
6132
|
"wm.minimizeAll": "最小化全部",
|
|
5403
6133
|
"wm.newWindow": "新建窗口",
|
|
5404
6134
|
"wm.moveToFront": "置于最前"
|
|
5405
|
-
},
|
|
6135
|
+
}, Ue = {
|
|
5406
6136
|
ok: "حسناً",
|
|
5407
6137
|
cancel: "إلغاء",
|
|
5408
6138
|
save: "حفظ",
|
|
@@ -5765,7 +6495,7 @@ const j = [
|
|
|
5765
6495
|
"wm.minimizeAll": "تصغير الكل",
|
|
5766
6496
|
"wm.newWindow": "نافذة جديدة",
|
|
5767
6497
|
"wm.moveToFront": "نقل إلى الأمام"
|
|
5768
|
-
},
|
|
6498
|
+
}, He = {
|
|
5769
6499
|
ok: "ठीक है",
|
|
5770
6500
|
cancel: "रद्द करें",
|
|
5771
6501
|
save: "सहेजें",
|
|
@@ -5776,7 +6506,7 @@ const j = [
|
|
|
5776
6506
|
error: "त्रुटि",
|
|
5777
6507
|
success: "सफलता",
|
|
5778
6508
|
search: "खोजें"
|
|
5779
|
-
},
|
|
6509
|
+
}, Ke = {
|
|
5780
6510
|
ok: "ঠিক আছে",
|
|
5781
6511
|
cancel: "বাতিল",
|
|
5782
6512
|
save: "সংরক্ষণ",
|
|
@@ -5820,7 +6550,7 @@ const j = [
|
|
|
5820
6550
|
error: "Kesalahan",
|
|
5821
6551
|
success: "Berhasil",
|
|
5822
6552
|
search: "Cari"
|
|
5823
|
-
},
|
|
6553
|
+
}, Je = {
|
|
5824
6554
|
ok: "Sawa",
|
|
5825
6555
|
cancel: "Ghairi",
|
|
5826
6556
|
save: "Hifadhi",
|
|
@@ -5831,7 +6561,7 @@ const j = [
|
|
|
5831
6561
|
error: "Hitilafu",
|
|
5832
6562
|
success: "Imefanikiwa",
|
|
5833
6563
|
search: "Tafuta"
|
|
5834
|
-
},
|
|
6564
|
+
}, Ye = {
|
|
5835
6565
|
ok: "OK",
|
|
5836
6566
|
cancel: "Kanselahin",
|
|
5837
6567
|
save: "I-save",
|
|
@@ -5842,7 +6572,7 @@ const j = [
|
|
|
5842
6572
|
error: "Error",
|
|
5843
6573
|
success: "Tagumpay",
|
|
5844
6574
|
search: "Maghanap"
|
|
5845
|
-
},
|
|
6575
|
+
}, $e = {
|
|
5846
6576
|
ok: "OK",
|
|
5847
6577
|
cancel: "Batal",
|
|
5848
6578
|
save: "Simpan",
|
|
@@ -5853,10 +6583,10 @@ const j = [
|
|
|
5853
6583
|
error: "Ralat",
|
|
5854
6584
|
success: "Berjaya",
|
|
5855
6585
|
search: "Cari"
|
|
5856
|
-
},
|
|
5857
|
-
en:
|
|
5858
|
-
pl:
|
|
5859
|
-
de:
|
|
6586
|
+
}, k = {
|
|
6587
|
+
en: ye,
|
|
6588
|
+
pl: Ee,
|
|
6589
|
+
de: Ce,
|
|
5860
6590
|
fr: Se,
|
|
5861
6591
|
es: ze,
|
|
5862
6592
|
it: De,
|
|
@@ -5873,18 +6603,18 @@ const j = [
|
|
|
5873
6603
|
bg: Le,
|
|
5874
6604
|
uk: Be,
|
|
5875
6605
|
ja: Ie,
|
|
5876
|
-
ko:
|
|
5877
|
-
zh:
|
|
5878
|
-
ar:
|
|
5879
|
-
hi:
|
|
5880
|
-
bn:
|
|
6606
|
+
ko: We,
|
|
6607
|
+
zh: Ve,
|
|
6608
|
+
ar: Ue,
|
|
6609
|
+
hi: He,
|
|
6610
|
+
bn: Ke,
|
|
5881
6611
|
th: Ze,
|
|
5882
6612
|
vi: qe,
|
|
5883
6613
|
id: Ge,
|
|
5884
|
-
sw:
|
|
5885
|
-
fil:
|
|
5886
|
-
ms:
|
|
5887
|
-
},
|
|
6614
|
+
sw: Je,
|
|
6615
|
+
fil: Ye,
|
|
6616
|
+
ms: $e
|
|
6617
|
+
}, Y = {
|
|
5888
6618
|
save: "Zapisz",
|
|
5889
6619
|
cancel: "Anuluj",
|
|
5890
6620
|
ok: "OK",
|
|
@@ -5908,7 +6638,7 @@ const j = [
|
|
|
5908
6638
|
"form.invalidValue": "Proszę podać prawidłową wartość.",
|
|
5909
6639
|
"auth.signIn": "Proszę się zalogować",
|
|
5910
6640
|
"auth.signOut": "Proszę się wylogować"
|
|
5911
|
-
},
|
|
6641
|
+
}, $ = {
|
|
5912
6642
|
save: "Zapisz",
|
|
5913
6643
|
cancel: "Anuluj",
|
|
5914
6644
|
ok: "OK",
|
|
@@ -5932,62 +6662,62 @@ const j = [
|
|
|
5932
6662
|
"form.invalidValue": "Wpisz prawidłową wartość.",
|
|
5933
6663
|
"auth.signIn": "Zaloguj się",
|
|
5934
6664
|
"auth.signOut": "Wyloguj się"
|
|
5935
|
-
},
|
|
5936
|
-
"pl-PL": { formal:
|
|
5937
|
-
pl: { formal:
|
|
6665
|
+
}, _e = {
|
|
6666
|
+
"pl-PL": { formal: Y, informal: $ },
|
|
6667
|
+
pl: { formal: Y, informal: $ }
|
|
5938
6668
|
};
|
|
5939
6669
|
function qo(e) {
|
|
5940
6670
|
var o;
|
|
5941
|
-
return { ...
|
|
6671
|
+
return { ...k.pl, ...((o = _e.pl) == null ? void 0 : o[e]) ?? {} };
|
|
5942
6672
|
}
|
|
5943
6673
|
const Qe = (e, o) => o, oe = I(Qe), Go = ({
|
|
5944
6674
|
t: e,
|
|
5945
6675
|
lang: o = "en",
|
|
5946
|
-
overrides:
|
|
5947
|
-
children:
|
|
6676
|
+
overrides: r,
|
|
6677
|
+
children: t
|
|
5948
6678
|
}) => {
|
|
5949
|
-
const
|
|
6679
|
+
const a = b(() => {
|
|
5950
6680
|
if (e)
|
|
5951
6681
|
return e;
|
|
5952
|
-
const
|
|
5953
|
-
return (s,
|
|
5954
|
-
}, [e, o,
|
|
5955
|
-
return /* @__PURE__ */ B(oe.Provider, { value:
|
|
6682
|
+
const n = k[o] ?? k.en, i = r ? { ...n, ...r } : n;
|
|
6683
|
+
return (s, d) => i[s] ?? d;
|
|
6684
|
+
}, [e, o, r]);
|
|
6685
|
+
return /* @__PURE__ */ B(oe.Provider, { value: a, children: t });
|
|
5956
6686
|
};
|
|
5957
|
-
function
|
|
6687
|
+
function Jo() {
|
|
5958
6688
|
return { t: N(oe) };
|
|
5959
6689
|
}
|
|
5960
|
-
function
|
|
5961
|
-
const
|
|
5962
|
-
return (
|
|
6690
|
+
function Yo(e = "en", o) {
|
|
6691
|
+
const r = k[e] ?? k.en, t = o ? { ...r, ...o } : r;
|
|
6692
|
+
return (a, n) => t[a] ?? n;
|
|
5963
6693
|
}
|
|
5964
|
-
function
|
|
5965
|
-
let
|
|
5966
|
-
const
|
|
5967
|
-
return
|
|
6694
|
+
function $o(e, o = {}) {
|
|
6695
|
+
let r = e.replace(/\{(\w+)\}/g, (t, a) => {
|
|
6696
|
+
const n = o[a];
|
|
6697
|
+
return n !== void 0 ? String(n) : t;
|
|
5968
6698
|
});
|
|
5969
|
-
return
|
|
6699
|
+
return r = r.replace(
|
|
5970
6700
|
/\{(\w+),\s*plural,\s*one\{([^}]+)\}\s*other\{([^}]+)\}\}/g,
|
|
5971
|
-
(a, n,
|
|
5972
|
-
const s = o[
|
|
5973
|
-
return typeof s != "number" ?
|
|
6701
|
+
(t, a, n, i) => {
|
|
6702
|
+
const s = o[a];
|
|
6703
|
+
return typeof s != "number" ? t : (s === 1 ? n : i).replace(/#/g, String(s));
|
|
5974
6704
|
}
|
|
5975
|
-
),
|
|
6705
|
+
), r;
|
|
5976
6706
|
}
|
|
5977
6707
|
function Xe(e) {
|
|
5978
6708
|
return j.includes(e);
|
|
5979
6709
|
}
|
|
5980
|
-
function
|
|
6710
|
+
function _o() {
|
|
5981
6711
|
var o;
|
|
5982
6712
|
if (typeof navigator > "u")
|
|
5983
6713
|
return "en";
|
|
5984
6714
|
const e = (o = navigator.language) == null ? void 0 : o.split("-")[0];
|
|
5985
6715
|
return Xe(e) ? e : "en";
|
|
5986
6716
|
}
|
|
5987
|
-
function
|
|
5988
|
-
var
|
|
5989
|
-
const
|
|
5990
|
-
switch (
|
|
6717
|
+
function te(e, o) {
|
|
6718
|
+
var n;
|
|
6719
|
+
const r = Math.abs(e), t = Math.floor(r), a = e.toString().includes(".") && ((n = e.toString().split(".")[1]) == null ? void 0 : n.length) || 0;
|
|
6720
|
+
switch (a > 0 && parseInt(e.toString().split(".")[1] || "0", 10), o) {
|
|
5991
6721
|
// ── English-like (one/other) ───────────────────────────
|
|
5992
6722
|
case "en":
|
|
5993
6723
|
case "de":
|
|
@@ -5999,29 +6729,29 @@ function ae(e, o) {
|
|
|
5999
6729
|
case "it":
|
|
6000
6730
|
case "es":
|
|
6001
6731
|
case "pt":
|
|
6002
|
-
return
|
|
6732
|
+
return t === 1 && a === 0 ? "one" : "other";
|
|
6003
6733
|
// ── French (one/many/other) ────────────────────────────
|
|
6004
6734
|
case "fr":
|
|
6005
|
-
return
|
|
6735
|
+
return t === 0 || t === 1 ? "one" : r >= 1e6 ? "many" : "other";
|
|
6006
6736
|
// ── Polish (Slavic: one/few/many/other) ────────────────
|
|
6007
6737
|
case "pl":
|
|
6008
|
-
return
|
|
6738
|
+
return t === 1 && a === 0 ? "one" : a === 0 && t % 10 >= 2 && t % 10 <= 4 && !(t % 100 >= 12 && t % 100 <= 14) ? "few" : a === 0 && t !== 1 && (t % 10 === 0 || t % 10 === 1) || a === 0 && t % 10 >= 5 && t % 10 <= 9 || a === 0 && t % 100 >= 12 && t % 100 <= 14 ? "many" : "other";
|
|
6009
6739
|
// ── Ukrainian (Slavic: one/few/many/other) ─────────────
|
|
6010
6740
|
case "uk":
|
|
6011
|
-
return
|
|
6741
|
+
return a === 0 && t % 10 === 1 && t % 100 !== 11 ? "one" : a === 0 && t % 10 >= 2 && t % 10 <= 4 && !(t % 100 >= 12 && t % 100 <= 14) ? "few" : a === 0 && t % 10 === 0 || a === 0 && t % 10 >= 5 && t % 10 <= 9 || a === 0 && t % 100 >= 11 && t % 100 <= 14 ? "many" : "other";
|
|
6012
6742
|
// ── Bulgarian (one/other) ──────────────────────────────
|
|
6013
6743
|
case "bg":
|
|
6014
6744
|
return e === 1 ? "one" : "other";
|
|
6015
6745
|
// ── Czech/Slovak (Slavic: one/few/many/other) ──────────
|
|
6016
6746
|
case "cs":
|
|
6017
6747
|
case "sk":
|
|
6018
|
-
return
|
|
6748
|
+
return t === 1 && a === 0 ? "one" : t >= 2 && t <= 4 && a === 0 ? "few" : a !== 0 ? "many" : "other";
|
|
6019
6749
|
// ── Hungarian (one/other) ──────────────────────────────
|
|
6020
6750
|
case "hu":
|
|
6021
6751
|
return e === 1 ? "one" : "other";
|
|
6022
6752
|
// ── Romanian (one/few/other) ───────────────────────────
|
|
6023
6753
|
case "ro":
|
|
6024
|
-
return
|
|
6754
|
+
return t === 1 && a === 0 ? "one" : a !== 0 || e === 0 || e % 100 >= 2 && e % 100 <= 19 ? "few" : "other";
|
|
6025
6755
|
// ── Japanese/Korean/Chinese (other only) ─────────────────
|
|
6026
6756
|
case "ja":
|
|
6027
6757
|
case "ko":
|
|
@@ -6044,10 +6774,10 @@ function ae(e, o) {
|
|
|
6044
6774
|
return new Intl.PluralRules(o).select(e);
|
|
6045
6775
|
} catch {
|
|
6046
6776
|
}
|
|
6047
|
-
return
|
|
6777
|
+
return t === 1 && a === 0 ? "one" : "other";
|
|
6048
6778
|
}
|
|
6049
6779
|
}
|
|
6050
|
-
function
|
|
6780
|
+
function re(e, o) {
|
|
6051
6781
|
switch (o) {
|
|
6052
6782
|
// ── English ────────────────────────────────────────────
|
|
6053
6783
|
case "en":
|
|
@@ -6082,118 +6812,118 @@ function te(e, o) {
|
|
|
6082
6812
|
}
|
|
6083
6813
|
}
|
|
6084
6814
|
function eo(e) {
|
|
6085
|
-
var
|
|
6815
|
+
var a;
|
|
6086
6816
|
if (e = e.trim(), !e.includes(","))
|
|
6087
6817
|
return { type: "simple", name: e };
|
|
6088
|
-
const o = e.split(",").map((
|
|
6089
|
-
if (!
|
|
6818
|
+
const o = e.split(",").map((n) => n.trim()), r = o[0], t = (a = o[1]) == null ? void 0 : a.toLowerCase();
|
|
6819
|
+
if (!t || !r)
|
|
6090
6820
|
return null;
|
|
6091
|
-
if (
|
|
6092
|
-
return { type: "number", name:
|
|
6093
|
-
if (
|
|
6094
|
-
return { type:
|
|
6095
|
-
if (
|
|
6096
|
-
const
|
|
6097
|
-
let
|
|
6098
|
-
for (; (
|
|
6099
|
-
i[
|
|
6100
|
-
return { type:
|
|
6821
|
+
if (t === "number")
|
|
6822
|
+
return { type: "number", name: r, style: o[2] };
|
|
6823
|
+
if (t === "date" || t === "time")
|
|
6824
|
+
return { type: t, name: r, style: o[2] || "medium" };
|
|
6825
|
+
if (t === "plural" || t === "select" || t === "selectordinal") {
|
|
6826
|
+
const n = o.slice(2).join(",").trim(), i = {}, s = /(=?\w+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g;
|
|
6827
|
+
let d;
|
|
6828
|
+
for (; (d = s.exec(n)) !== null; )
|
|
6829
|
+
i[d[1]] = d[2];
|
|
6830
|
+
return { type: t, name: r, options: i };
|
|
6101
6831
|
}
|
|
6102
|
-
return { type: "simple", name:
|
|
6832
|
+
return { type: "simple", name: r };
|
|
6103
6833
|
}
|
|
6104
|
-
function oo(e, o,
|
|
6105
|
-
const
|
|
6106
|
-
switch (
|
|
6834
|
+
function oo(e, o, r) {
|
|
6835
|
+
const t = {};
|
|
6836
|
+
switch (r) {
|
|
6107
6837
|
case "currency":
|
|
6108
|
-
|
|
6838
|
+
t.style = "currency", t.currency = "USD";
|
|
6109
6839
|
break;
|
|
6110
6840
|
case "percent":
|
|
6111
|
-
|
|
6841
|
+
t.style = "percent";
|
|
6112
6842
|
break;
|
|
6113
6843
|
case "integer":
|
|
6114
|
-
|
|
6844
|
+
t.maximumFractionDigits = 0;
|
|
6115
6845
|
break;
|
|
6116
6846
|
}
|
|
6117
|
-
return new Intl.NumberFormat(o,
|
|
6847
|
+
return new Intl.NumberFormat(o, t).format(e);
|
|
6118
6848
|
}
|
|
6119
|
-
function
|
|
6120
|
-
const
|
|
6121
|
-
let
|
|
6122
|
-
switch (
|
|
6849
|
+
function to(e, o, r) {
|
|
6850
|
+
const t = e instanceof Date ? e : new Date(e);
|
|
6851
|
+
let a;
|
|
6852
|
+
switch (r) {
|
|
6123
6853
|
case "short":
|
|
6124
|
-
|
|
6854
|
+
a = { dateStyle: "short" };
|
|
6125
6855
|
break;
|
|
6126
6856
|
case "long":
|
|
6127
|
-
|
|
6857
|
+
a = { dateStyle: "long" };
|
|
6128
6858
|
break;
|
|
6129
6859
|
case "full":
|
|
6130
|
-
|
|
6860
|
+
a = { dateStyle: "full" };
|
|
6131
6861
|
break;
|
|
6132
6862
|
case "medium":
|
|
6133
6863
|
default:
|
|
6134
|
-
|
|
6864
|
+
a = { dateStyle: "medium" };
|
|
6135
6865
|
break;
|
|
6136
6866
|
}
|
|
6137
|
-
return new Intl.DateTimeFormat(o,
|
|
6867
|
+
return new Intl.DateTimeFormat(o, a).format(t);
|
|
6138
6868
|
}
|
|
6139
|
-
function
|
|
6140
|
-
const
|
|
6141
|
-
let
|
|
6142
|
-
switch (
|
|
6869
|
+
function ro(e, o, r) {
|
|
6870
|
+
const t = e instanceof Date ? e : new Date(e);
|
|
6871
|
+
let a;
|
|
6872
|
+
switch (r) {
|
|
6143
6873
|
case "short":
|
|
6144
|
-
|
|
6874
|
+
a = { timeStyle: "short" };
|
|
6145
6875
|
break;
|
|
6146
6876
|
case "long":
|
|
6147
|
-
|
|
6877
|
+
a = { timeStyle: "long" };
|
|
6148
6878
|
break;
|
|
6149
6879
|
case "full":
|
|
6150
|
-
|
|
6880
|
+
a = { timeStyle: "full" };
|
|
6151
6881
|
break;
|
|
6152
6882
|
case "medium":
|
|
6153
6883
|
default:
|
|
6154
|
-
|
|
6884
|
+
a = { timeStyle: "medium" };
|
|
6155
6885
|
break;
|
|
6156
6886
|
}
|
|
6157
|
-
return new Intl.DateTimeFormat(o,
|
|
6887
|
+
return new Intl.DateTimeFormat(o, a).format(t);
|
|
6158
6888
|
}
|
|
6159
|
-
function
|
|
6160
|
-
return e.replace(/#/g, String(
|
|
6889
|
+
function V(e, o, r) {
|
|
6890
|
+
return e.replace(/#/g, String(r));
|
|
6161
6891
|
}
|
|
6162
|
-
function
|
|
6163
|
-
const
|
|
6164
|
-
return e.replace(
|
|
6165
|
-
const
|
|
6166
|
-
if (!
|
|
6892
|
+
function ao(e, o = {}, r = {}) {
|
|
6893
|
+
const t = r.lang || "en", a = r.locale || t, n = /\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g;
|
|
6894
|
+
return e.replace(n, (i, s) => {
|
|
6895
|
+
const d = eo(s);
|
|
6896
|
+
if (!d)
|
|
6167
6897
|
return i;
|
|
6168
|
-
const
|
|
6169
|
-
if (
|
|
6898
|
+
const l = o[d.name];
|
|
6899
|
+
if (l === void 0)
|
|
6170
6900
|
return i;
|
|
6171
|
-
switch (
|
|
6901
|
+
switch (d.type) {
|
|
6172
6902
|
case "simple":
|
|
6173
|
-
return String(
|
|
6903
|
+
return String(l);
|
|
6174
6904
|
case "number":
|
|
6175
|
-
return typeof
|
|
6905
|
+
return typeof l != "number" ? i : oo(l, a, d.style);
|
|
6176
6906
|
case "date":
|
|
6177
|
-
return
|
|
6907
|
+
return to(l, a, d.style);
|
|
6178
6908
|
case "time":
|
|
6179
|
-
return
|
|
6909
|
+
return ro(l, a, d.style);
|
|
6180
6910
|
case "plural": {
|
|
6181
|
-
if (typeof
|
|
6911
|
+
if (typeof l != "number" || !d.options)
|
|
6182
6912
|
return i;
|
|
6183
|
-
const
|
|
6184
|
-
return
|
|
6913
|
+
const p = te(l, t), f = `=${l}`, u = d.options[f] ?? d.options[p] ?? d.options.other ?? "";
|
|
6914
|
+
return V(u, d.name, l);
|
|
6185
6915
|
}
|
|
6186
6916
|
case "selectordinal": {
|
|
6187
|
-
if (typeof
|
|
6917
|
+
if (typeof l != "number" || !d.options)
|
|
6188
6918
|
return i;
|
|
6189
|
-
const
|
|
6190
|
-
return
|
|
6919
|
+
const p = re(l, t), f = d.options[p] ?? d.options.other ?? "";
|
|
6920
|
+
return V(f, d.name, l);
|
|
6191
6921
|
}
|
|
6192
6922
|
case "select": {
|
|
6193
|
-
if (!
|
|
6923
|
+
if (!d.options)
|
|
6194
6924
|
return i;
|
|
6195
|
-
const
|
|
6196
|
-
return
|
|
6925
|
+
const p = d.options[String(l)] ?? d.options.other ?? "";
|
|
6926
|
+
return V(p, d.name, l);
|
|
6197
6927
|
}
|
|
6198
6928
|
default:
|
|
6199
6929
|
return i;
|
|
@@ -6201,23 +6931,23 @@ function no(e, o = {}, t = {}) {
|
|
|
6201
6931
|
});
|
|
6202
6932
|
}
|
|
6203
6933
|
function Qo(e, o = "en") {
|
|
6204
|
-
return function(a, n
|
|
6205
|
-
const i = e[
|
|
6206
|
-
return
|
|
6934
|
+
return function(t, a, n) {
|
|
6935
|
+
const i = e[t] ?? a;
|
|
6936
|
+
return n ? ao(i, n, { lang: o }) : i;
|
|
6207
6937
|
};
|
|
6208
6938
|
}
|
|
6209
|
-
function Xo(e, o,
|
|
6210
|
-
const
|
|
6211
|
-
return (o[
|
|
6939
|
+
function Xo(e, o, r = "en") {
|
|
6940
|
+
const t = te(e, r);
|
|
6941
|
+
return (o[t] ?? o.other).replace(/#/g, String(e));
|
|
6212
6942
|
}
|
|
6213
|
-
function
|
|
6214
|
-
const
|
|
6215
|
-
return (o[
|
|
6943
|
+
function et(e, o, r = "en") {
|
|
6944
|
+
const t = re(e, r);
|
|
6945
|
+
return (o[t] ?? o.other).replace(/#/g, String(e));
|
|
6216
6946
|
}
|
|
6217
|
-
function
|
|
6947
|
+
function ot(e, o) {
|
|
6218
6948
|
return o[e] ?? o.other;
|
|
6219
6949
|
}
|
|
6220
|
-
const
|
|
6950
|
+
const no = [
|
|
6221
6951
|
"ar",
|
|
6222
6952
|
// Arabic
|
|
6223
6953
|
"he",
|
|
@@ -6231,11 +6961,11 @@ const ro = [
|
|
|
6231
6961
|
"ps"
|
|
6232
6962
|
// Pashto
|
|
6233
6963
|
];
|
|
6234
|
-
function
|
|
6235
|
-
return
|
|
6964
|
+
function ae(e) {
|
|
6965
|
+
return no.includes(e);
|
|
6236
6966
|
}
|
|
6237
6967
|
function io(e) {
|
|
6238
|
-
return
|
|
6968
|
+
return ae(e) ? "rtl" : "ltr";
|
|
6239
6969
|
}
|
|
6240
6970
|
function so(e) {
|
|
6241
6971
|
if (typeof document > "u")
|
|
@@ -6243,13 +6973,13 @@ function so(e) {
|
|
|
6243
6973
|
const o = io(e);
|
|
6244
6974
|
document.documentElement.setAttribute("dir", o), document.documentElement.setAttribute("lang", e);
|
|
6245
6975
|
}
|
|
6246
|
-
function
|
|
6976
|
+
function tt() {
|
|
6247
6977
|
return typeof document > "u" ? "ltr" : document.documentElement.getAttribute("dir") || "ltr";
|
|
6248
6978
|
}
|
|
6249
6979
|
function lo(e, o) {
|
|
6250
6980
|
return o ? e.rtl : e.ltr;
|
|
6251
6981
|
}
|
|
6252
|
-
function
|
|
6982
|
+
function rt(e) {
|
|
6253
6983
|
return e === "left" ? "right" : "left";
|
|
6254
6984
|
}
|
|
6255
6985
|
function co(e, o) {
|
|
@@ -6262,7 +6992,7 @@ function co(e, o) {
|
|
|
6262
6992
|
"flex-end": "flex-start"
|
|
6263
6993
|
}[e] || e;
|
|
6264
6994
|
}
|
|
6265
|
-
function
|
|
6995
|
+
function po(e) {
|
|
6266
6996
|
return {
|
|
6267
6997
|
// Margins
|
|
6268
6998
|
"margin-left": "margin-inline-start",
|
|
@@ -6297,34 +7027,34 @@ const q = I({
|
|
|
6297
7027
|
isRTL: !1,
|
|
6298
7028
|
flip: (e) => e,
|
|
6299
7029
|
value: (e) => e.ltr
|
|
6300
|
-
}),
|
|
7030
|
+
}), at = ({
|
|
6301
7031
|
lang: e,
|
|
6302
7032
|
autoSetDocument: o = !0,
|
|
6303
|
-
children:
|
|
7033
|
+
children: r
|
|
6304
7034
|
}) => {
|
|
6305
|
-
const
|
|
7035
|
+
const t = ae(e), a = t ? "rtl" : "ltr";
|
|
6306
7036
|
L(() => {
|
|
6307
7037
|
o && so(e);
|
|
6308
7038
|
}, [e, o]);
|
|
6309
|
-
const
|
|
7039
|
+
const n = b(
|
|
6310
7040
|
() => ({
|
|
6311
|
-
dir:
|
|
6312
|
-
isRTL:
|
|
6313
|
-
flip: (i) => co(i,
|
|
6314
|
-
value: (i) => lo(i,
|
|
7041
|
+
dir: a,
|
|
7042
|
+
isRTL: t,
|
|
7043
|
+
flip: (i) => co(i, t),
|
|
7044
|
+
value: (i) => lo(i, t)
|
|
6315
7045
|
}),
|
|
6316
|
-
[
|
|
7046
|
+
[a, t]
|
|
6317
7047
|
);
|
|
6318
|
-
return /* @__PURE__ */ B(q.Provider, { value:
|
|
7048
|
+
return /* @__PURE__ */ B(q.Provider, { value: n, children: r });
|
|
6319
7049
|
};
|
|
6320
|
-
function
|
|
7050
|
+
function nt() {
|
|
6321
7051
|
return N(q);
|
|
6322
7052
|
}
|
|
6323
|
-
function
|
|
7053
|
+
function it() {
|
|
6324
7054
|
return N(q).isRTL;
|
|
6325
7055
|
}
|
|
6326
|
-
function
|
|
6327
|
-
const o = [],
|
|
7056
|
+
function st(e) {
|
|
7057
|
+
const o = [], r = [
|
|
6328
7058
|
"left",
|
|
6329
7059
|
"right",
|
|
6330
7060
|
"margin-left",
|
|
@@ -6334,11 +7064,11 @@ function sa(e) {
|
|
|
6334
7064
|
"border-left",
|
|
6335
7065
|
"border-right"
|
|
6336
7066
|
];
|
|
6337
|
-
for (const [
|
|
6338
|
-
|
|
7067
|
+
for (const [t, a] of Object.entries(e))
|
|
7068
|
+
r.includes(t) && o.push(`Use logical property instead of '${t}' → '${po(t)}'`), t === "text-align" && (a === "left" || a === "right") && o.push(`Use 'text-align: start/end' instead of 'text-align: ${a}'`), t === "float" && (a === "left" || a === "right") && o.push(`Use flexbox or grid instead of 'float: ${a}' for RTL support`);
|
|
6339
7069
|
return o;
|
|
6340
7070
|
}
|
|
6341
|
-
const
|
|
7071
|
+
const U = {
|
|
6342
7072
|
// Direction multiplier: 1 for LTR, -1 for RTL
|
|
6343
7073
|
dirMultiplier: "--nice-dir-multiplier",
|
|
6344
7074
|
// Inline start (left in LTR, right in RTL)
|
|
@@ -6346,50 +7076,50 @@ const H = {
|
|
|
6346
7076
|
// Inline end (right in LTR, left in RTL)
|
|
6347
7077
|
inlineEnd: "--nice-inline-end"
|
|
6348
7078
|
};
|
|
6349
|
-
function
|
|
7079
|
+
function dt(e) {
|
|
6350
7080
|
return {
|
|
6351
|
-
[
|
|
6352
|
-
[
|
|
6353
|
-
[
|
|
7081
|
+
[U.dirMultiplier]: e ? "-1" : "1",
|
|
7082
|
+
[U.inlineStart]: e ? "right" : "left",
|
|
7083
|
+
[U.inlineEnd]: e ? "left" : "right"
|
|
6354
7084
|
};
|
|
6355
7085
|
}
|
|
6356
|
-
function
|
|
6357
|
-
return Object.keys(
|
|
7086
|
+
function lt() {
|
|
7087
|
+
return Object.keys(k.en);
|
|
6358
7088
|
}
|
|
6359
7089
|
function uo(e) {
|
|
6360
7090
|
if (e === "en")
|
|
6361
7091
|
return [];
|
|
6362
|
-
const o =
|
|
6363
|
-
for (const [
|
|
6364
|
-
|
|
6365
|
-
return
|
|
7092
|
+
const o = k.en, r = k[e], t = [];
|
|
7093
|
+
for (const [a, n] of Object.entries(o))
|
|
7094
|
+
r[a] || t.push({ key: a, englishValue: n });
|
|
7095
|
+
return t;
|
|
6366
7096
|
}
|
|
6367
|
-
function
|
|
6368
|
-
const o = Object.keys(
|
|
7097
|
+
function mo(e) {
|
|
7098
|
+
const o = Object.keys(k.en).length, r = Object.keys(k[e]).length, t = o - r, a = Math.round(r / o * 100);
|
|
6369
7099
|
return {
|
|
6370
7100
|
lang: e,
|
|
6371
7101
|
totalKeys: o,
|
|
6372
|
-
translatedKeys:
|
|
6373
|
-
missingKeys:
|
|
6374
|
-
coverage:
|
|
7102
|
+
translatedKeys: r,
|
|
7103
|
+
missingKeys: t,
|
|
7104
|
+
coverage: a
|
|
6375
7105
|
};
|
|
6376
7106
|
}
|
|
6377
7107
|
function go() {
|
|
6378
|
-
return j.map((e) =>
|
|
7108
|
+
return j.map((e) => mo(e));
|
|
6379
7109
|
}
|
|
6380
|
-
function
|
|
6381
|
-
const
|
|
6382
|
-
const
|
|
6383
|
-
return ` '${
|
|
7110
|
+
function ct(e, o) {
|
|
7111
|
+
const r = o.map((t) => {
|
|
7112
|
+
const a = t.translated.replace(/'/g, "\\'");
|
|
7113
|
+
return ` '${t.key}': '${a}',`;
|
|
6384
7114
|
});
|
|
6385
7115
|
return `// Auto-translated additions for ${e} (review before merging)
|
|
6386
7116
|
// Generated on ${(/* @__PURE__ */ new Date()).toISOString()}
|
|
6387
7117
|
{
|
|
6388
|
-
${
|
|
7118
|
+
${r.join(`
|
|
6389
7119
|
`)}
|
|
6390
7120
|
}`;
|
|
6391
7121
|
}
|
|
6392
|
-
function
|
|
7122
|
+
function pt() {
|
|
6393
7123
|
const e = go();
|
|
6394
7124
|
let o = `# Translation Coverage Report
|
|
6395
7125
|
|
|
@@ -6400,25 +7130,25 @@ Generated: ${(/* @__PURE__ */ new Date()).toISOString()}
|
|
|
6400
7130
|
| Language | Translated | Missing | Coverage |
|
|
6401
7131
|
|----------|------------|---------|----------|
|
|
6402
7132
|
`;
|
|
6403
|
-
for (const
|
|
6404
|
-
const
|
|
6405
|
-
o += `| ${
|
|
7133
|
+
for (const r of e) {
|
|
7134
|
+
const t = "█".repeat(Math.floor(r.coverage / 10)) + "░".repeat(10 - Math.floor(r.coverage / 10));
|
|
7135
|
+
o += `| ${r.lang} | ${r.translatedKeys} | ${r.missingKeys} | ${t} ${r.coverage}% |
|
|
6406
7136
|
`;
|
|
6407
7137
|
}
|
|
6408
7138
|
o += `
|
|
6409
7139
|
## Languages with Missing Translations
|
|
6410
7140
|
|
|
6411
7141
|
`;
|
|
6412
|
-
for (const
|
|
6413
|
-
o += `### ${
|
|
7142
|
+
for (const r of e.filter((t) => t.missingKeys > 0)) {
|
|
7143
|
+
o += `### ${r.lang.toUpperCase()} (${r.coverage}% complete)
|
|
6414
7144
|
|
|
6415
7145
|
`;
|
|
6416
|
-
const
|
|
6417
|
-
o += `Missing ${
|
|
7146
|
+
const t = uo(r.lang);
|
|
7147
|
+
o += `Missing ${t.length} keys:
|
|
6418
7148
|
|
|
6419
|
-
`, o += "```\n", o +=
|
|
6420
|
-
`),
|
|
6421
|
-
... and ${
|
|
7149
|
+
`, o += "```\n", o += t.slice(0, 10).map((a) => a.key).join(`
|
|
7150
|
+
`), t.length > 10 && (o += `
|
|
7151
|
+
... and ${t.length - 10} more`), o += "\n```\n\n";
|
|
6422
7152
|
}
|
|
6423
7153
|
return o;
|
|
6424
7154
|
}
|
|
@@ -6458,53 +7188,53 @@ function D(e) {
|
|
|
6458
7188
|
return ho[e] ?? "en-US";
|
|
6459
7189
|
}
|
|
6460
7190
|
function fo(e, o = "medium") {
|
|
6461
|
-
const
|
|
7191
|
+
const r = D(e), t = new Intl.DateTimeFormat(r, { dateStyle: o });
|
|
6462
7192
|
return {
|
|
6463
|
-
format: (
|
|
6464
|
-
formatRange: (
|
|
6465
|
-
const i =
|
|
6466
|
-
return
|
|
7193
|
+
format: (a) => t.format(a instanceof Date ? a : new Date(a)),
|
|
7194
|
+
formatRange: (a, n) => {
|
|
7195
|
+
const i = a instanceof Date ? a : new Date(a), s = n instanceof Date ? n : new Date(n);
|
|
7196
|
+
return t.formatRange(i, s);
|
|
6467
7197
|
},
|
|
6468
|
-
formatRelative: (
|
|
7198
|
+
formatRelative: (a) => wo(a instanceof Date ? a : new Date(a), r)
|
|
6469
7199
|
};
|
|
6470
7200
|
}
|
|
6471
|
-
function
|
|
6472
|
-
return
|
|
7201
|
+
function ut(e, o = "medium") {
|
|
7202
|
+
return b(() => fo(e, o), [e, o]);
|
|
6473
7203
|
}
|
|
6474
|
-
function
|
|
6475
|
-
const
|
|
7204
|
+
function vo(e, o = "short") {
|
|
7205
|
+
const r = D(e), t = new Intl.DateTimeFormat(r, { timeStyle: o });
|
|
6476
7206
|
return {
|
|
6477
|
-
format: (
|
|
7207
|
+
format: (a) => t.format(a instanceof Date ? a : new Date(a))
|
|
6478
7208
|
};
|
|
6479
7209
|
}
|
|
6480
|
-
function
|
|
6481
|
-
return
|
|
7210
|
+
function mt(e, o = "short") {
|
|
7211
|
+
return b(() => vo(e, o), [e, o]);
|
|
6482
7212
|
}
|
|
6483
|
-
function
|
|
7213
|
+
function bo(e) {
|
|
6484
7214
|
const o = D(e);
|
|
6485
7215
|
return {
|
|
6486
|
-
format: (
|
|
6487
|
-
formatCompact: (
|
|
6488
|
-
formatPercent: (
|
|
7216
|
+
format: (r) => new Intl.NumberFormat(o).format(r),
|
|
7217
|
+
formatCompact: (r) => new Intl.NumberFormat(o, { notation: "compact" }).format(r),
|
|
7218
|
+
formatPercent: (r) => new Intl.NumberFormat(o, { style: "percent", maximumFractionDigits: 1 }).format(r)
|
|
6489
7219
|
};
|
|
6490
7220
|
}
|
|
6491
|
-
function
|
|
6492
|
-
return
|
|
7221
|
+
function gt(e) {
|
|
7222
|
+
return b(() => bo(e), [e]);
|
|
6493
7223
|
}
|
|
6494
|
-
function
|
|
6495
|
-
const
|
|
7224
|
+
function ko(e, o = "USD") {
|
|
7225
|
+
const r = D(e), t = new Intl.NumberFormat(r, { style: "currency", currency: o });
|
|
6496
7226
|
return {
|
|
6497
|
-
format: (
|
|
7227
|
+
format: (a) => t.format(a)
|
|
6498
7228
|
};
|
|
6499
7229
|
}
|
|
6500
|
-
function
|
|
6501
|
-
return
|
|
7230
|
+
function ht(e, o = "USD") {
|
|
7231
|
+
return b(() => ko(e, o), [e, o]);
|
|
6502
7232
|
}
|
|
6503
|
-
function
|
|
6504
|
-
const
|
|
6505
|
-
return
|
|
7233
|
+
function wo(e, o) {
|
|
7234
|
+
const r = Date.now(), t = e.getTime() - r, a = Math.abs(t), n = new Intl.RelativeTimeFormat(o, { numeric: "auto" });
|
|
7235
|
+
return a < 6e4 ? n.format(Math.round(t / 1e3), "second") : a < 36e5 ? n.format(Math.round(t / 6e4), "minute") : a < 864e5 ? n.format(Math.round(t / 36e5), "hour") : a < 2592e6 ? n.format(Math.round(t / 864e5), "day") : a < 31536e6 ? n.format(Math.round(t / 2592e6), "month") : n.format(Math.round(t / 31536e6), "year");
|
|
6506
7236
|
}
|
|
6507
|
-
const
|
|
7237
|
+
const ne = [
|
|
6508
7238
|
{
|
|
6509
7239
|
en: "Save",
|
|
6510
7240
|
translations: {
|
|
@@ -6656,52 +7386,52 @@ const re = [
|
|
|
6656
7386
|
}
|
|
6657
7387
|
}
|
|
6658
7388
|
];
|
|
6659
|
-
function
|
|
6660
|
-
const
|
|
6661
|
-
return
|
|
7389
|
+
function yo(e, o) {
|
|
7390
|
+
const r = ne.find((t) => t.en.toLowerCase() === e.toLowerCase());
|
|
7391
|
+
return r == null ? void 0 : r.translations[o];
|
|
6662
7392
|
}
|
|
6663
|
-
function
|
|
6664
|
-
const
|
|
7393
|
+
function ft(e, o, r = 0.8) {
|
|
7394
|
+
const t = k.en, a = k[o], n = e.toLowerCase().trim();
|
|
6665
7395
|
let i;
|
|
6666
|
-
for (const [s,
|
|
6667
|
-
const
|
|
6668
|
-
if (!
|
|
7396
|
+
for (const [s, d] of Object.entries(t)) {
|
|
7397
|
+
const l = a[s];
|
|
7398
|
+
if (!l)
|
|
6669
7399
|
continue;
|
|
6670
|
-
const
|
|
6671
|
-
|
|
7400
|
+
const p = Eo(n, d.toLowerCase().trim());
|
|
7401
|
+
p >= r && (!i || p > i.similarity) && (i = { key: s, english: d, translated: l, similarity: p });
|
|
6672
7402
|
}
|
|
6673
7403
|
return i;
|
|
6674
7404
|
}
|
|
6675
|
-
function
|
|
6676
|
-
return
|
|
7405
|
+
function vt(e) {
|
|
7406
|
+
return ne.filter((o) => o.translations[e] != null).map((o) => ({
|
|
6677
7407
|
en: o.en,
|
|
6678
7408
|
translation: o.translations[e]
|
|
6679
7409
|
}));
|
|
6680
7410
|
}
|
|
6681
|
-
function
|
|
6682
|
-
const o =
|
|
6683
|
-
for (const [
|
|
6684
|
-
const i =
|
|
6685
|
-
i && s && s !== i &&
|
|
7411
|
+
function bt(e) {
|
|
7412
|
+
const o = k[e], r = k.en, t = [];
|
|
7413
|
+
for (const [a, n] of Object.entries(r)) {
|
|
7414
|
+
const i = yo(n, e), s = o[a];
|
|
7415
|
+
i && s && s !== i && t.push({ key: a, currentTranslation: s, glossaryTranslation: i });
|
|
6686
7416
|
}
|
|
6687
|
-
return
|
|
7417
|
+
return t;
|
|
6688
7418
|
}
|
|
6689
|
-
function
|
|
7419
|
+
function _(e) {
|
|
6690
7420
|
const o = /* @__PURE__ */ new Set();
|
|
6691
|
-
for (let
|
|
6692
|
-
o.add(e.substring(
|
|
7421
|
+
for (let r = 0; r < e.length - 1; r++)
|
|
7422
|
+
o.add(e.substring(r, r + 2));
|
|
6693
7423
|
return o;
|
|
6694
7424
|
}
|
|
6695
|
-
function
|
|
7425
|
+
function Eo(e, o) {
|
|
6696
7426
|
if (e === o)
|
|
6697
7427
|
return 1;
|
|
6698
7428
|
if (e.length < 2 || o.length < 2)
|
|
6699
7429
|
return 0;
|
|
6700
|
-
const
|
|
6701
|
-
let
|
|
6702
|
-
for (const
|
|
6703
|
-
|
|
6704
|
-
return 2 *
|
|
7430
|
+
const r = _(e), t = _(o);
|
|
7431
|
+
let a = 0;
|
|
7432
|
+
for (const n of r)
|
|
7433
|
+
t.has(n) && a++;
|
|
7434
|
+
return 2 * a / (r.size + t.size);
|
|
6705
7435
|
}
|
|
6706
7436
|
const ie = {
|
|
6707
7437
|
UTC: ["UTC", "Etc/UTC", "Etc/GMT"],
|
|
@@ -6771,117 +7501,117 @@ function G() {
|
|
|
6771
7501
|
return "UTC";
|
|
6772
7502
|
}
|
|
6773
7503
|
}
|
|
6774
|
-
function
|
|
7504
|
+
function kt(e) {
|
|
6775
7505
|
try {
|
|
6776
7506
|
return new Intl.DateTimeFormat("en", { timeZone: e }), !0;
|
|
6777
7507
|
} catch {
|
|
6778
7508
|
return !1;
|
|
6779
7509
|
}
|
|
6780
7510
|
}
|
|
6781
|
-
function F(e, o = "en",
|
|
6782
|
-
var
|
|
6783
|
-
const
|
|
7511
|
+
function F(e, o = "en", r = /* @__PURE__ */ new Date()) {
|
|
7512
|
+
var w, M;
|
|
7513
|
+
const t = D(o), a = new Intl.DateTimeFormat(t, {
|
|
6784
7514
|
timeZone: e,
|
|
6785
7515
|
timeZoneName: "long"
|
|
6786
|
-
}),
|
|
7516
|
+
}), n = new Intl.DateTimeFormat(t, {
|
|
6787
7517
|
timeZone: e,
|
|
6788
7518
|
timeZoneName: "short"
|
|
6789
|
-
}), i =
|
|
7519
|
+
}), i = a.formatToParts(r), s = n.formatToParts(r), d = ((w = i.find((x) => x.type === "timeZoneName")) == null ? void 0 : w.value) || e, l = ((M = s.find((x) => x.type === "timeZoneName")) == null ? void 0 : M.value) || e, p = new Date(r.toLocaleString("en-US", { timeZone: "UTC" })), f = new Date(r.toLocaleString("en-US", { timeZone: e })), u = Math.round((f.getTime() - p.getTime()) / 6e4), m = new Date(r.getFullYear(), 0, 1), v = new Date(r.getFullYear(), 6, 1), g = K(e, m), E = K(e, v), C = K(e, r), y = Math.min(g, E), A = C !== y && g !== E;
|
|
6790
7520
|
return {
|
|
6791
7521
|
id: e,
|
|
6792
|
-
displayName:
|
|
6793
|
-
shortName:
|
|
7522
|
+
displayName: d,
|
|
7523
|
+
shortName: l,
|
|
6794
7524
|
offsetMinutes: u,
|
|
6795
7525
|
offsetString: Do(u),
|
|
6796
7526
|
isDST: A
|
|
6797
7527
|
};
|
|
6798
7528
|
}
|
|
6799
|
-
function
|
|
6800
|
-
return Object.values(ie).flat().map((
|
|
7529
|
+
function wt(e = "en", o = /* @__PURE__ */ new Date()) {
|
|
7530
|
+
return Object.values(ie).flat().map((t) => F(t, e, o));
|
|
6801
7531
|
}
|
|
6802
|
-
function
|
|
6803
|
-
const
|
|
6804
|
-
for (const [
|
|
6805
|
-
t
|
|
6806
|
-
return
|
|
7532
|
+
function yt(e = "en", o = /* @__PURE__ */ new Date()) {
|
|
7533
|
+
const r = {};
|
|
7534
|
+
for (const [t, a] of Object.entries(ie))
|
|
7535
|
+
r[t] = a.map((n) => F(n, e, o));
|
|
7536
|
+
return r;
|
|
6807
7537
|
}
|
|
6808
|
-
function se(e, o,
|
|
6809
|
-
const
|
|
7538
|
+
function se(e, o, r) {
|
|
7539
|
+
const t = e.toLocaleString("en-US", { timeZone: o }), a = new Date(t), n = e.toLocaleString("en-US", { timeZone: r }), i = new Date(n), s = a.getTime() - i.getTime();
|
|
6810
7540
|
return new Date(e.getTime() + s);
|
|
6811
7541
|
}
|
|
6812
|
-
function
|
|
6813
|
-
const
|
|
6814
|
-
return se(e,
|
|
7542
|
+
function Co(e, o) {
|
|
7543
|
+
const r = o || G();
|
|
7544
|
+
return se(e, r, "UTC");
|
|
6815
7545
|
}
|
|
6816
7546
|
function So(e, o) {
|
|
6817
|
-
const
|
|
6818
|
-
return se(e, "UTC",
|
|
7547
|
+
const r = o || G();
|
|
7548
|
+
return se(e, "UTC", r);
|
|
6819
7549
|
}
|
|
6820
|
-
function zo(e, o,
|
|
6821
|
-
const
|
|
7550
|
+
function zo(e, o, r = {}) {
|
|
7551
|
+
const t = D(e), { dateStyle: a = "medium", timeStyle: n = "short", nameStyle: i = "short" } = r, s = new Intl.DateTimeFormat(t, {
|
|
6822
7552
|
timeZone: o,
|
|
6823
|
-
dateStyle:
|
|
6824
|
-
timeStyle:
|
|
6825
|
-
}),
|
|
7553
|
+
dateStyle: a,
|
|
7554
|
+
timeStyle: n
|
|
7555
|
+
}), d = new Intl.DateTimeFormat(t, {
|
|
6826
7556
|
timeZone: o,
|
|
6827
|
-
dateStyle:
|
|
6828
|
-
timeStyle:
|
|
7557
|
+
dateStyle: a,
|
|
7558
|
+
timeStyle: n,
|
|
6829
7559
|
timeZoneName: i
|
|
6830
|
-
}),
|
|
7560
|
+
}), l = new Intl.DateTimeFormat(t, {
|
|
6831
7561
|
timeZone: o,
|
|
6832
7562
|
timeZoneName: "short"
|
|
6833
7563
|
});
|
|
6834
7564
|
return {
|
|
6835
|
-
format: (
|
|
6836
|
-
formatWithZone: (
|
|
6837
|
-
getOffset: (
|
|
6838
|
-
getAbbreviation: (
|
|
7565
|
+
format: (p) => s.format(p),
|
|
7566
|
+
formatWithZone: (p) => d.format(p),
|
|
7567
|
+
getOffset: (p) => F(o, e, p).offsetString,
|
|
7568
|
+
getAbbreviation: (p) => {
|
|
6839
7569
|
var u;
|
|
6840
|
-
return ((u =
|
|
7570
|
+
return ((u = l.formatToParts(p).find((m) => m.type === "timeZoneName")) == null ? void 0 : u.value) || "";
|
|
6841
7571
|
}
|
|
6842
7572
|
};
|
|
6843
7573
|
}
|
|
6844
|
-
function
|
|
7574
|
+
function H(e, o = /* @__PURE__ */ new Date()) {
|
|
6845
7575
|
return F(e, "en", o).isDST;
|
|
6846
7576
|
}
|
|
6847
|
-
function
|
|
6848
|
-
const
|
|
6849
|
-
for (
|
|
6850
|
-
if (
|
|
6851
|
-
|
|
6852
|
-
const
|
|
6853
|
-
|
|
6854
|
-
const i = new Date(
|
|
6855
|
-
for (i.setDate(i.getDate() + 2); i.getTime() -
|
|
6856
|
-
const s = new Date((
|
|
6857
|
-
|
|
7577
|
+
function Et(e, o = /* @__PURE__ */ new Date()) {
|
|
7578
|
+
const r = H(e, o), t = new Date(o), a = new Date(o);
|
|
7579
|
+
for (a.setFullYear(a.getFullYear() + 1); t < a; )
|
|
7580
|
+
if (t.setDate(t.getDate() + 1), H(e, t) !== r) {
|
|
7581
|
+
t.setDate(t.getDate() - 1);
|
|
7582
|
+
const n = new Date(t);
|
|
7583
|
+
n.setHours(0, 0, 0, 0);
|
|
7584
|
+
const i = new Date(t);
|
|
7585
|
+
for (i.setDate(i.getDate() + 2); i.getTime() - n.getTime() > 6e4; ) {
|
|
7586
|
+
const s = new Date((n.getTime() + i.getTime()) / 2);
|
|
7587
|
+
H(e, s) === r ? n.setTime(s.getTime()) : i.setTime(s.getTime());
|
|
6858
7588
|
}
|
|
6859
7589
|
return i;
|
|
6860
7590
|
}
|
|
6861
7591
|
return null;
|
|
6862
7592
|
}
|
|
6863
|
-
function
|
|
6864
|
-
const [
|
|
7593
|
+
function Ct(e, o, r) {
|
|
7594
|
+
const [t] = P(() => G()), a = o || t, n = b(() => zo(e, a, r), [e, a, r]), i = b(() => F(a, e), [a, e]);
|
|
6865
7595
|
return {
|
|
6866
|
-
timezone:
|
|
7596
|
+
timezone: a,
|
|
6867
7597
|
info: i,
|
|
6868
|
-
format:
|
|
6869
|
-
formatWithZone:
|
|
6870
|
-
getOffset:
|
|
6871
|
-
getAbbreviation:
|
|
6872
|
-
toUTC: (s) =>
|
|
6873
|
-
fromUTC: (s) => So(s,
|
|
7598
|
+
format: n.format,
|
|
7599
|
+
formatWithZone: n.formatWithZone,
|
|
7600
|
+
getOffset: n.getOffset,
|
|
7601
|
+
getAbbreviation: n.getAbbreviation,
|
|
7602
|
+
toUTC: (s) => Co(s, a),
|
|
7603
|
+
fromUTC: (s) => So(s, a)
|
|
6874
7604
|
};
|
|
6875
7605
|
}
|
|
6876
|
-
function
|
|
6877
|
-
const
|
|
6878
|
-
return Math.round((
|
|
7606
|
+
function K(e, o) {
|
|
7607
|
+
const r = o.toLocaleString("en-US", { timeZone: "UTC" }), t = o.toLocaleString("en-US", { timeZone: e }), a = new Date(r), n = new Date(t);
|
|
7608
|
+
return Math.round((n.getTime() - a.getTime()) / 6e4);
|
|
6879
7609
|
}
|
|
6880
7610
|
function Do(e) {
|
|
6881
|
-
const o = e >= 0 ? "+" : "-",
|
|
6882
|
-
return `${o}${
|
|
7611
|
+
const o = e >= 0 ? "+" : "-", r = Math.abs(e), t = Math.floor(r / 60), a = r % 60;
|
|
7612
|
+
return `${o}${t.toString().padStart(2, "0")}:${a.toString().padStart(2, "0")}`;
|
|
6883
7613
|
}
|
|
6884
|
-
const
|
|
7614
|
+
const W = {
|
|
6885
7615
|
gregory: {
|
|
6886
7616
|
id: "gregory",
|
|
6887
7617
|
displayName: "Gregorian",
|
|
@@ -7015,7 +7745,7 @@ const U = {
|
|
|
7015
7745
|
isLunar: !1,
|
|
7016
7746
|
associatedLanguages: ["zh"]
|
|
7017
7747
|
}
|
|
7018
|
-
},
|
|
7748
|
+
}, de = {
|
|
7019
7749
|
en: "gregory",
|
|
7020
7750
|
pl: "gregory",
|
|
7021
7751
|
de: "gregory",
|
|
@@ -7047,70 +7777,70 @@ const U = {
|
|
|
7047
7777
|
fil: "gregory",
|
|
7048
7778
|
ms: "gregory"
|
|
7049
7779
|
};
|
|
7050
|
-
function
|
|
7051
|
-
const
|
|
7780
|
+
function le(e, o = "gregory", r = {}) {
|
|
7781
|
+
const t = D(e), { dateStyle: a = "medium", showEra: n = !1, showWeekday: i = !1 } = r, s = {
|
|
7052
7782
|
calendar: o,
|
|
7053
|
-
dateStyle:
|
|
7783
|
+
dateStyle: a
|
|
7054
7784
|
};
|
|
7055
7785
|
i && (delete s.dateStyle, s.weekday = "long", s.year = "numeric", s.month = "long", s.day = "numeric");
|
|
7056
|
-
const
|
|
7786
|
+
const d = new Intl.DateTimeFormat(t, s), l = {
|
|
7057
7787
|
calendar: o,
|
|
7058
7788
|
year: "numeric",
|
|
7059
7789
|
month: "long",
|
|
7060
7790
|
day: "numeric",
|
|
7061
7791
|
era: "long"
|
|
7062
|
-
},
|
|
7792
|
+
}, p = new Intl.DateTimeFormat(t, l), f = new Intl.DateTimeFormat(t, { calendar: o, month: "long" }), u = new Intl.DateTimeFormat(t, { calendar: o, weekday: "long" });
|
|
7063
7793
|
return {
|
|
7064
|
-
format: (
|
|
7065
|
-
formatWithEra: (
|
|
7066
|
-
getMonthName: (
|
|
7794
|
+
format: (m) => d.format(m),
|
|
7795
|
+
formatWithEra: (m) => p.format(m),
|
|
7796
|
+
getMonthName: (m) => f.format(m),
|
|
7067
7797
|
getMonthNames: () => {
|
|
7068
|
-
const
|
|
7798
|
+
const m = [], v = new Date(2024, 0, 15);
|
|
7069
7799
|
for (let g = 0; g < 12; g++)
|
|
7070
|
-
|
|
7071
|
-
return
|
|
7800
|
+
v.setMonth(g), m.push(f.format(v));
|
|
7801
|
+
return m;
|
|
7072
7802
|
},
|
|
7073
|
-
getWeekdayName: (
|
|
7803
|
+
getWeekdayName: (m) => u.format(m),
|
|
7074
7804
|
getWeekdayNames: () => {
|
|
7075
|
-
const
|
|
7805
|
+
const m = [], v = new Date(2024, 0, 7);
|
|
7076
7806
|
for (let g = 0; g < 7; g++)
|
|
7077
|
-
|
|
7078
|
-
return
|
|
7807
|
+
v.setDate(7 + g), m.push(u.format(v));
|
|
7808
|
+
return m;
|
|
7079
7809
|
},
|
|
7080
|
-
parseParts: (
|
|
7081
|
-
var
|
|
7082
|
-
const g = new Intl.DateTimeFormat(
|
|
7810
|
+
parseParts: (m) => {
|
|
7811
|
+
var E, C, y, A;
|
|
7812
|
+
const g = new Intl.DateTimeFormat(t, {
|
|
7083
7813
|
calendar: o,
|
|
7084
7814
|
year: "numeric",
|
|
7085
7815
|
month: "numeric",
|
|
7086
7816
|
day: "numeric",
|
|
7087
7817
|
era: "short"
|
|
7088
|
-
}).formatToParts(
|
|
7818
|
+
}).formatToParts(m);
|
|
7089
7819
|
return {
|
|
7090
7820
|
calendar: o,
|
|
7091
|
-
year: parseInt(((
|
|
7092
|
-
month: parseInt(((
|
|
7093
|
-
day: parseInt(((
|
|
7094
|
-
era: (A = g.find((
|
|
7095
|
-
gregorianDate:
|
|
7821
|
+
year: parseInt(((E = g.find((w) => w.type === "year")) == null ? void 0 : E.value) || "0", 10),
|
|
7822
|
+
month: parseInt(((C = g.find((w) => w.type === "month")) == null ? void 0 : C.value) || "0", 10),
|
|
7823
|
+
day: parseInt(((y = g.find((w) => w.type === "day")) == null ? void 0 : y.value) || "0", 10),
|
|
7824
|
+
era: (A = g.find((w) => w.type === "era")) == null ? void 0 : A.value,
|
|
7825
|
+
gregorianDate: m
|
|
7096
7826
|
};
|
|
7097
7827
|
},
|
|
7098
|
-
getEraName: (
|
|
7099
|
-
var
|
|
7100
|
-
return (
|
|
7828
|
+
getEraName: (m) => {
|
|
7829
|
+
var E;
|
|
7830
|
+
return (E = new Intl.DateTimeFormat(t, {
|
|
7101
7831
|
calendar: o,
|
|
7102
7832
|
era: "long"
|
|
7103
|
-
}).formatToParts(
|
|
7833
|
+
}).formatToParts(m).find((C) => C.type === "era")) == null ? void 0 : E.value;
|
|
7104
7834
|
}
|
|
7105
7835
|
};
|
|
7106
7836
|
}
|
|
7107
|
-
function ce(e, o,
|
|
7108
|
-
return
|
|
7837
|
+
function ce(e, o, r = "en") {
|
|
7838
|
+
return le(r, o).parseParts(e);
|
|
7109
7839
|
}
|
|
7110
7840
|
function Ao(e, o = "en") {
|
|
7111
7841
|
return ce(/* @__PURE__ */ new Date(), e, o);
|
|
7112
7842
|
}
|
|
7113
|
-
const
|
|
7843
|
+
const St = [
|
|
7114
7844
|
"Muharram",
|
|
7115
7845
|
"Safar",
|
|
7116
7846
|
"Rabi' al-Awwal",
|
|
@@ -7127,10 +7857,10 @@ const Sa = [
|
|
|
7127
7857
|
function xo(e) {
|
|
7128
7858
|
return (11 * e + 14) % 30 < 11;
|
|
7129
7859
|
}
|
|
7130
|
-
function
|
|
7860
|
+
function zt(e, o) {
|
|
7131
7861
|
return o === 12 ? xo(e) ? 30 : 29 : o % 2 === 1 ? 30 : 29;
|
|
7132
7862
|
}
|
|
7133
|
-
const
|
|
7863
|
+
const Dt = [
|
|
7134
7864
|
"Tishrei",
|
|
7135
7865
|
"Cheshvan",
|
|
7136
7866
|
"Kislev",
|
|
@@ -7143,7 +7873,7 @@ const Da = [
|
|
|
7143
7873
|
"Tammuz",
|
|
7144
7874
|
"Av",
|
|
7145
7875
|
"Elul"
|
|
7146
|
-
],
|
|
7876
|
+
], At = [
|
|
7147
7877
|
"Tishrei",
|
|
7148
7878
|
"Cheshvan",
|
|
7149
7879
|
"Kislev",
|
|
@@ -7158,7 +7888,7 @@ const Da = [
|
|
|
7158
7888
|
"Av",
|
|
7159
7889
|
"Elul"
|
|
7160
7890
|
];
|
|
7161
|
-
function
|
|
7891
|
+
function xt(e) {
|
|
7162
7892
|
return (7 * e + 1) % 19 < 7;
|
|
7163
7893
|
}
|
|
7164
7894
|
const Z = [
|
|
@@ -7174,11 +7904,11 @@ function To(e) {
|
|
|
7174
7904
|
return Z[o];
|
|
7175
7905
|
return null;
|
|
7176
7906
|
}
|
|
7177
|
-
function
|
|
7907
|
+
function Tt(e) {
|
|
7178
7908
|
const o = To(e);
|
|
7179
7909
|
return o ? e.getFullYear() - o.startDate.getFullYear() + 1 : null;
|
|
7180
7910
|
}
|
|
7181
|
-
const
|
|
7911
|
+
const Pt = [
|
|
7182
7912
|
"Farvardin",
|
|
7183
7913
|
"Ordibehesht",
|
|
7184
7914
|
"Khordad",
|
|
@@ -7192,7 +7922,7 @@ const Pa = [
|
|
|
7192
7922
|
"Bahman",
|
|
7193
7923
|
"Esfand"
|
|
7194
7924
|
];
|
|
7195
|
-
function
|
|
7925
|
+
function jt(e) {
|
|
7196
7926
|
return ((e - 474) % 2820 + 2820) % 2820 * 682 % 2816 < 682;
|
|
7197
7927
|
}
|
|
7198
7928
|
const Po = [
|
|
@@ -7209,7 +7939,7 @@ const Po = [
|
|
|
7209
7939
|
"Dog",
|
|
7210
7940
|
"Pig"
|
|
7211
7941
|
];
|
|
7212
|
-
function
|
|
7942
|
+
function Nt(e) {
|
|
7213
7943
|
return Po[(e - 4) % 12];
|
|
7214
7944
|
}
|
|
7215
7945
|
const jo = [
|
|
@@ -7224,48 +7954,48 @@ const jo = [
|
|
|
7224
7954
|
"Ren",
|
|
7225
7955
|
"Gui"
|
|
7226
7956
|
];
|
|
7227
|
-
function
|
|
7957
|
+
function Ft(e) {
|
|
7228
7958
|
return jo[(e - 4) % 10];
|
|
7229
7959
|
}
|
|
7230
|
-
function
|
|
7231
|
-
const
|
|
7232
|
-
() =>
|
|
7233
|
-
[e,
|
|
7234
|
-
),
|
|
7960
|
+
function Mt(e, o, r) {
|
|
7961
|
+
const t = o || de[e], a = b(
|
|
7962
|
+
() => le(e, t, r),
|
|
7963
|
+
[e, t, r]
|
|
7964
|
+
), n = b(() => W[t], [t]), i = b(() => Ao(t, e), [t, e]);
|
|
7235
7965
|
return {
|
|
7236
|
-
calendar:
|
|
7237
|
-
info:
|
|
7966
|
+
calendar: t,
|
|
7967
|
+
info: n,
|
|
7238
7968
|
current: i,
|
|
7239
|
-
format:
|
|
7240
|
-
formatWithEra:
|
|
7241
|
-
getMonthName:
|
|
7242
|
-
getMonthNames:
|
|
7243
|
-
getWeekdayName:
|
|
7244
|
-
getWeekdayNames:
|
|
7245
|
-
parseParts:
|
|
7246
|
-
getEraName:
|
|
7247
|
-
toCalendar: (s) => ce(s,
|
|
7969
|
+
format: a.format,
|
|
7970
|
+
formatWithEra: a.formatWithEra,
|
|
7971
|
+
getMonthName: a.getMonthName,
|
|
7972
|
+
getMonthNames: a.getMonthNames,
|
|
7973
|
+
getWeekdayName: a.getWeekdayName,
|
|
7974
|
+
getWeekdayNames: a.getWeekdayNames,
|
|
7975
|
+
parseParts: a.parseParts,
|
|
7976
|
+
getEraName: a.getEraName,
|
|
7977
|
+
toCalendar: (s) => ce(s, t, e)
|
|
7248
7978
|
};
|
|
7249
7979
|
}
|
|
7250
|
-
function
|
|
7251
|
-
return Object.keys(
|
|
7980
|
+
function Ot() {
|
|
7981
|
+
return Object.keys(W);
|
|
7252
7982
|
}
|
|
7253
|
-
function
|
|
7254
|
-
const
|
|
7983
|
+
function Rt(e, o = "en") {
|
|
7984
|
+
const r = { ...W[e] };
|
|
7255
7985
|
try {
|
|
7256
|
-
const
|
|
7257
|
-
|
|
7986
|
+
const t = D(o), n = new Intl.DisplayNames([t], { type: "calendar" }).of(e);
|
|
7987
|
+
n && (r.displayName = n);
|
|
7258
7988
|
} catch {
|
|
7259
7989
|
}
|
|
7260
|
-
return
|
|
7990
|
+
return r;
|
|
7261
7991
|
}
|
|
7262
|
-
function
|
|
7263
|
-
const o =
|
|
7264
|
-
for (const [
|
|
7265
|
-
|
|
7266
|
-
return
|
|
7992
|
+
function Lt(e) {
|
|
7993
|
+
const o = de[e], r = /* @__PURE__ */ new Set([o]);
|
|
7994
|
+
for (const [t, a] of Object.entries(W))
|
|
7995
|
+
a.associatedLanguages.includes(e) && r.add(t);
|
|
7996
|
+
return r.add("gregory"), Array.from(r);
|
|
7267
7997
|
}
|
|
7268
|
-
const
|
|
7998
|
+
const J = {
|
|
7269
7999
|
// Lowercase
|
|
7270
8000
|
a: "ą",
|
|
7271
8001
|
b: "ɓ",
|
|
@@ -7321,7 +8051,7 @@ const $ = {
|
|
|
7321
8051
|
Y: "Ÿ",
|
|
7322
8052
|
Z: "Ž"
|
|
7323
8053
|
}, No = {
|
|
7324
|
-
|
|
8054
|
+
...J,
|
|
7325
8055
|
// Additional mappings
|
|
7326
8056
|
a: "ặ",
|
|
7327
8057
|
e: "ệ",
|
|
@@ -7336,60 +8066,60 @@ const $ = {
|
|
|
7336
8066
|
U: "Ụ",
|
|
7337
8067
|
Y: "Ỵ"
|
|
7338
8068
|
}, Fo = "", Mo = "", Q = "", Oo = "~∼~≈";
|
|
7339
|
-
function
|
|
7340
|
-
const
|
|
7341
|
-
return e.split("").map((
|
|
8069
|
+
function Bt(e, o = !1) {
|
|
8070
|
+
const r = o ? No : J;
|
|
8071
|
+
return e.split("").map((t) => r[t] || t).join("");
|
|
7342
8072
|
}
|
|
7343
|
-
function
|
|
7344
|
-
return `${o}${e}${
|
|
8073
|
+
function It(e, o = "[", r = "]") {
|
|
8074
|
+
return `${o}${e}${r}`;
|
|
7345
8075
|
}
|
|
7346
|
-
function Ro(e, o = 0.3,
|
|
7347
|
-
if (
|
|
8076
|
+
function Ro(e, o = 0.3, r = !1) {
|
|
8077
|
+
if (r)
|
|
7348
8078
|
return Lo(e);
|
|
7349
|
-
const
|
|
7350
|
-
if (
|
|
8079
|
+
const a = Math.ceil(e.length * (1 + o)) - e.length;
|
|
8080
|
+
if (a <= 0)
|
|
7351
8081
|
return e;
|
|
7352
|
-
const
|
|
7353
|
-
return e +
|
|
8082
|
+
const n = Oo[0].repeat(a);
|
|
8083
|
+
return e + n;
|
|
7354
8084
|
}
|
|
7355
8085
|
function Lo(e) {
|
|
7356
8086
|
const o = /* @__PURE__ */ new Set(["a", "e", "i", "o", "u", "A", "E", "I", "O", "U"]);
|
|
7357
|
-
return e.split("").map((
|
|
8087
|
+
return e.split("").map((r) => o.has(r) ? r + r : r).join("");
|
|
7358
8088
|
}
|
|
7359
8089
|
function Bo(e, o = !1) {
|
|
7360
8090
|
return o ? `${Mo}${e}${Q}` : `${Fo}${e}${Q}`;
|
|
7361
8091
|
}
|
|
7362
|
-
function
|
|
8092
|
+
function pe(e, o = {}) {
|
|
7363
8093
|
const {
|
|
7364
|
-
addBrackets:
|
|
7365
|
-
expansionFactor:
|
|
7366
|
-
addAccents:
|
|
7367
|
-
addBidiMarkers:
|
|
8094
|
+
addBrackets: r = !0,
|
|
8095
|
+
expansionFactor: t = 0.3,
|
|
8096
|
+
addAccents: a = !0,
|
|
8097
|
+
addBidiMarkers: n = !1,
|
|
7368
8098
|
useVowelDoubling: i = !1,
|
|
7369
8099
|
preservePlaceholders: s = !0,
|
|
7370
|
-
preserveHtml:
|
|
7371
|
-
prefix:
|
|
7372
|
-
suffix:
|
|
8100
|
+
preserveHtml: d = !0,
|
|
8101
|
+
prefix: l = "[",
|
|
8102
|
+
suffix: p = "]"
|
|
7373
8103
|
} = o, f = /* @__PURE__ */ new Map();
|
|
7374
|
-
let u = e,
|
|
7375
|
-
s && (u = u.replace(/\{[^}]+\}/g, (
|
|
7376
|
-
const g = `__PH${
|
|
7377
|
-
return f.set(g,
|
|
7378
|
-
})),
|
|
7379
|
-
const g = `__PH${
|
|
7380
|
-
return f.set(g,
|
|
7381
|
-
})),
|
|
7382
|
-
for (const [
|
|
7383
|
-
u = u.replace(
|
|
8104
|
+
let u = e, m = 0;
|
|
8105
|
+
s && (u = u.replace(/\{[^}]+\}/g, (v) => {
|
|
8106
|
+
const g = `__PH${m++}__`;
|
|
8107
|
+
return f.set(g, v), g;
|
|
8108
|
+
})), d && (u = u.replace(/<[^>]+>/g, (v) => {
|
|
8109
|
+
const g = `__PH${m++}__`;
|
|
8110
|
+
return f.set(g, v), g;
|
|
8111
|
+
})), a && (u = Io(u, f)), t > 0 && (u = Ro(u, t, i)), n && (u = Bo(u)), r && (u = `${l}${u}${p}`);
|
|
8112
|
+
for (const [v, g] of f.entries())
|
|
8113
|
+
u = u.replace(v, g);
|
|
7384
8114
|
return u;
|
|
7385
8115
|
}
|
|
7386
8116
|
function Io(e, o) {
|
|
7387
|
-
const
|
|
7388
|
-
return e.split("").map((
|
|
7389
|
-
for (const
|
|
7390
|
-
if (e.includes(
|
|
7391
|
-
return
|
|
7392
|
-
return
|
|
8117
|
+
const r = new Set(o.keys());
|
|
8118
|
+
return e.split("").map((t) => {
|
|
8119
|
+
for (const a of r)
|
|
8120
|
+
if (e.includes(a) && a.includes(t))
|
|
8121
|
+
return t;
|
|
8122
|
+
return J[t] || t;
|
|
7393
8123
|
}).join("");
|
|
7394
8124
|
}
|
|
7395
8125
|
function T(e) {
|
|
@@ -7426,70 +8156,70 @@ function T(e) {
|
|
|
7426
8156
|
};
|
|
7427
8157
|
}
|
|
7428
8158
|
}
|
|
7429
|
-
function
|
|
7430
|
-
const
|
|
7431
|
-
for (const [
|
|
7432
|
-
t
|
|
7433
|
-
return
|
|
8159
|
+
function Wt(e, o) {
|
|
8160
|
+
const r = {};
|
|
8161
|
+
for (const [t, a] of Object.entries(e))
|
|
8162
|
+
r[t] = pe(a, o);
|
|
8163
|
+
return r;
|
|
7434
8164
|
}
|
|
7435
|
-
function
|
|
8165
|
+
function Wo(e) {
|
|
7436
8166
|
return /[^\x00-\x7F]/.test(e);
|
|
7437
8167
|
}
|
|
7438
|
-
function
|
|
8168
|
+
function Vo(e) {
|
|
7439
8169
|
if (!e || /^[\d.,-]+$/.test(e) || e.startsWith("["))
|
|
7440
8170
|
return !1;
|
|
7441
|
-
const o = /[a-zA-Z]{2,}/.test(e),
|
|
7442
|
-
return o && !
|
|
8171
|
+
const o = /[a-zA-Z]{2,}/.test(e), r = Wo(e);
|
|
8172
|
+
return o && !r;
|
|
7443
8173
|
}
|
|
7444
|
-
function
|
|
7445
|
-
const
|
|
8174
|
+
function Vt(e, o) {
|
|
8175
|
+
const r = {
|
|
7446
8176
|
totalKeys: Object.keys(e).length,
|
|
7447
8177
|
hardcodedStrings: [],
|
|
7448
8178
|
emptyValues: [],
|
|
7449
8179
|
placeholderMismatches: [],
|
|
7450
8180
|
potentialIssues: 0
|
|
7451
8181
|
};
|
|
7452
|
-
for (const [
|
|
7453
|
-
if (!
|
|
7454
|
-
|
|
8182
|
+
for (const [t, a] of Object.entries(e)) {
|
|
8183
|
+
if (!a || a.trim() === "") {
|
|
8184
|
+
r.emptyValues.push(t), r.potentialIssues++;
|
|
7455
8185
|
continue;
|
|
7456
8186
|
}
|
|
7457
|
-
if (
|
|
7458
|
-
const
|
|
7459
|
-
(s.length > 0 ||
|
|
7460
|
-
key:
|
|
8187
|
+
if (Vo(a) && r.hardcodedStrings.push(t), o && o[t]) {
|
|
8188
|
+
const n = X(a), i = X(o[t]), s = n.filter((l) => !i.includes(l)), d = i.filter((l) => !n.includes(l));
|
|
8189
|
+
(s.length > 0 || d.length > 0) && (r.placeholderMismatches.push({
|
|
8190
|
+
key: t,
|
|
7461
8191
|
placeholders: [
|
|
7462
|
-
...s.map((
|
|
7463
|
-
...
|
|
8192
|
+
...s.map((l) => `-${l}`),
|
|
8193
|
+
...d.map((l) => `+${l}`)
|
|
7464
8194
|
]
|
|
7465
|
-
}),
|
|
8195
|
+
}), r.potentialIssues++);
|
|
7466
8196
|
}
|
|
7467
8197
|
}
|
|
7468
|
-
return
|
|
8198
|
+
return r;
|
|
7469
8199
|
}
|
|
7470
8200
|
function X(e) {
|
|
7471
|
-
return (e.match(/\{([^}]+)\}/g) || []).map((
|
|
8201
|
+
return (e.match(/\{([^}]+)\}/g) || []).map((r) => r.replace(/[{}]/g, "").split(",")[0].trim());
|
|
7472
8202
|
}
|
|
7473
8203
|
const ue = I(null);
|
|
7474
|
-
function
|
|
8204
|
+
function Ut({
|
|
7475
8205
|
children: e,
|
|
7476
8206
|
initialEnabled: o = !1,
|
|
7477
|
-
initialMode:
|
|
8207
|
+
initialMode: r = "full"
|
|
7478
8208
|
}) {
|
|
7479
|
-
const [
|
|
8209
|
+
const [t, a] = P(o), [n, i] = P(r), s = b(() => T(n), [n]), d = b(() => (p) => t ? pe(p, s) : p, [t, s]), l = b(
|
|
7480
8210
|
() => ({
|
|
7481
|
-
enabled:
|
|
7482
|
-
mode:
|
|
8211
|
+
enabled: t,
|
|
8212
|
+
mode: n,
|
|
7483
8213
|
options: s,
|
|
7484
|
-
toggle: () =>
|
|
8214
|
+
toggle: () => a((p) => !p),
|
|
7485
8215
|
setMode: i,
|
|
7486
|
-
transform:
|
|
8216
|
+
transform: d
|
|
7487
8217
|
}),
|
|
7488
|
-
[
|
|
8218
|
+
[t, n, s, d]
|
|
7489
8219
|
);
|
|
7490
|
-
return /* @__PURE__ */ B(ue.Provider, { value:
|
|
8220
|
+
return /* @__PURE__ */ B(ue.Provider, { value: l, children: e });
|
|
7491
8221
|
}
|
|
7492
|
-
function
|
|
8222
|
+
function Ht() {
|
|
7493
8223
|
const e = N(ue);
|
|
7494
8224
|
return e || {
|
|
7495
8225
|
enabled: !1,
|
|
@@ -7502,7 +8232,7 @@ function Ka() {
|
|
|
7502
8232
|
transform: (o) => o
|
|
7503
8233
|
};
|
|
7504
8234
|
}
|
|
7505
|
-
const
|
|
8235
|
+
const Kt = {
|
|
7506
8236
|
/** Minimal: brackets only */
|
|
7507
8237
|
MINIMAL: { addBrackets: !0, addAccents: !1, expansionFactor: 0 },
|
|
7508
8238
|
/** Accented: brackets + accents */
|
|
@@ -7520,73 +8250,73 @@ const Va = {
|
|
|
7520
8250
|
/** CJK: Short expansion, no accents (CJK often shorter) */
|
|
7521
8251
|
CJK: { addBrackets: !0, addAccents: !1, expansionFactor: -0.1 }
|
|
7522
8252
|
};
|
|
7523
|
-
class
|
|
8253
|
+
class Uo {
|
|
7524
8254
|
constructor(o = 0) {
|
|
7525
8255
|
this.cache = /* @__PURE__ */ new Map(), this.ttl = o;
|
|
7526
8256
|
}
|
|
7527
|
-
getCacheKey(o,
|
|
7528
|
-
return
|
|
8257
|
+
getCacheKey(o, r) {
|
|
8258
|
+
return r ? `${o}:${r}` : o;
|
|
7529
8259
|
}
|
|
7530
|
-
get(o,
|
|
7531
|
-
const
|
|
7532
|
-
return
|
|
8260
|
+
get(o, r) {
|
|
8261
|
+
const t = this.getCacheKey(o, r), a = this.cache.get(t);
|
|
8262
|
+
return a ? this.ttl > 0 && Date.now() > a.expiresAt ? (this.cache.delete(t), null) : a.data : null;
|
|
7533
8263
|
}
|
|
7534
|
-
set(o,
|
|
7535
|
-
const
|
|
7536
|
-
this.cache.set(
|
|
7537
|
-
data:
|
|
7538
|
-
loadedAt:
|
|
7539
|
-
expiresAt: this.ttl > 0 ?
|
|
8264
|
+
set(o, r, t) {
|
|
8265
|
+
const a = this.getCacheKey(o, t), n = Date.now();
|
|
8266
|
+
this.cache.set(a, {
|
|
8267
|
+
data: r,
|
|
8268
|
+
loadedAt: n,
|
|
8269
|
+
expiresAt: this.ttl > 0 ? n + this.ttl : 1 / 0
|
|
7540
8270
|
});
|
|
7541
8271
|
}
|
|
7542
|
-
has(o,
|
|
7543
|
-
return this.get(o,
|
|
8272
|
+
has(o, r) {
|
|
8273
|
+
return this.get(o, r) !== null;
|
|
7544
8274
|
}
|
|
7545
|
-
delete(o,
|
|
7546
|
-
if (
|
|
7547
|
-
this.cache.delete(this.getCacheKey(o,
|
|
8275
|
+
delete(o, r) {
|
|
8276
|
+
if (r)
|
|
8277
|
+
this.cache.delete(this.getCacheKey(o, r));
|
|
7548
8278
|
else
|
|
7549
|
-
for (const
|
|
7550
|
-
(
|
|
8279
|
+
for (const t of this.cache.keys())
|
|
8280
|
+
(t === o || t.startsWith(`${o}:`)) && this.cache.delete(t);
|
|
7551
8281
|
}
|
|
7552
8282
|
clear() {
|
|
7553
8283
|
this.cache.clear();
|
|
7554
8284
|
}
|
|
7555
8285
|
getStats() {
|
|
7556
8286
|
const o = /* @__PURE__ */ new Set();
|
|
7557
|
-
for (const
|
|
7558
|
-
o.add(
|
|
8287
|
+
for (const r of this.cache.keys())
|
|
8288
|
+
o.add(r.split(":")[0]);
|
|
7559
8289
|
return {
|
|
7560
8290
|
size: this.cache.size,
|
|
7561
8291
|
languages: Array.from(o)
|
|
7562
8292
|
};
|
|
7563
8293
|
}
|
|
7564
8294
|
}
|
|
7565
|
-
function
|
|
8295
|
+
function me(e) {
|
|
7566
8296
|
const {
|
|
7567
8297
|
loadFn: o,
|
|
7568
|
-
fallbackLang:
|
|
7569
|
-
cacheTtl:
|
|
7570
|
-
preloadLanguages:
|
|
7571
|
-
namespaces:
|
|
8298
|
+
fallbackLang: r = "en",
|
|
8299
|
+
cacheTtl: t = 0,
|
|
8300
|
+
preloadLanguages: a = [],
|
|
8301
|
+
namespaces: n = [],
|
|
7572
8302
|
defaultNamespace: i,
|
|
7573
8303
|
onLoadStart: s,
|
|
7574
|
-
onLoadComplete:
|
|
7575
|
-
onLoadError:
|
|
7576
|
-
} = e,
|
|
7577
|
-
let
|
|
7578
|
-
const
|
|
8304
|
+
onLoadComplete: d,
|
|
8305
|
+
onLoadError: l
|
|
8306
|
+
} = e, p = new Uo(t), f = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Map();
|
|
8307
|
+
let m = r;
|
|
8308
|
+
const v = /* @__PURE__ */ new Set();
|
|
7579
8309
|
function g() {
|
|
7580
|
-
const c =
|
|
7581
|
-
|
|
8310
|
+
const c = C();
|
|
8311
|
+
v.forEach((h) => h(c));
|
|
7582
8312
|
}
|
|
7583
|
-
function
|
|
8313
|
+
function E(c, h) {
|
|
7584
8314
|
return h ? `${c}:${h}` : c;
|
|
7585
8315
|
}
|
|
7586
|
-
function
|
|
8316
|
+
function C() {
|
|
7587
8317
|
const c = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set();
|
|
7588
8318
|
for (const S of j)
|
|
7589
|
-
|
|
8319
|
+
p.has(S) && c.add(S);
|
|
7590
8320
|
for (const S of f) {
|
|
7591
8321
|
const O = S.split(":")[0];
|
|
7592
8322
|
h.add(O);
|
|
@@ -7595,43 +8325,43 @@ function pe(e) {
|
|
|
7595
8325
|
loadedLanguages: c,
|
|
7596
8326
|
loadingLanguages: h,
|
|
7597
8327
|
failedLanguages: new Map(u),
|
|
7598
|
-
currentLanguage:
|
|
8328
|
+
currentLanguage: m
|
|
7599
8329
|
};
|
|
7600
8330
|
}
|
|
7601
|
-
async function
|
|
7602
|
-
const S =
|
|
8331
|
+
async function y(c, h) {
|
|
8332
|
+
const S = E(c, h), O = p.get(c, h);
|
|
7603
8333
|
if (O)
|
|
7604
8334
|
return O;
|
|
7605
8335
|
if (f.has(S))
|
|
7606
8336
|
return new Promise((z) => {
|
|
7607
8337
|
const R = setInterval(() => {
|
|
7608
|
-
f.has(S) || (clearInterval(R), z(
|
|
8338
|
+
f.has(S) || (clearInterval(R), z(p.get(c, h)));
|
|
7609
8339
|
}, 50);
|
|
7610
8340
|
});
|
|
7611
8341
|
f.add(S), u.delete(c), s == null || s(c, h), g();
|
|
7612
8342
|
try {
|
|
7613
8343
|
const z = await o(c, h);
|
|
7614
|
-
return
|
|
8344
|
+
return p.set(c, z, h), d == null || d(c, h), z;
|
|
7615
8345
|
} catch (z) {
|
|
7616
8346
|
const R = z instanceof Error ? z : new Error(String(z));
|
|
7617
|
-
return u.set(c, R),
|
|
8347
|
+
return u.set(c, R), l == null || l(c, R, h), c !== r && !h ? (console.warn(`Failed to load ${c}, falling back to ${r}`), y(r, h)) : null;
|
|
7618
8348
|
} finally {
|
|
7619
8349
|
f.delete(S), g();
|
|
7620
8350
|
}
|
|
7621
8351
|
}
|
|
7622
8352
|
async function A(c) {
|
|
7623
|
-
await Promise.all(c.map((h) =>
|
|
8353
|
+
await Promise.all(c.map((h) => y(h)));
|
|
7624
8354
|
}
|
|
7625
|
-
async function
|
|
7626
|
-
|
|
7627
|
-
|
|
8355
|
+
async function w() {
|
|
8356
|
+
a.length !== 0 && await Promise.allSettled(
|
|
8357
|
+
a.map((c) => n.length > 0 ? Promise.all(n.map((h) => y(c, h))) : y(c))
|
|
7628
8358
|
);
|
|
7629
8359
|
}
|
|
7630
8360
|
function M(c, h) {
|
|
7631
|
-
return
|
|
8361
|
+
return p.get(c, h);
|
|
7632
8362
|
}
|
|
7633
8363
|
function x(c, h) {
|
|
7634
|
-
return
|
|
8364
|
+
return p.has(c, h);
|
|
7635
8365
|
}
|
|
7636
8366
|
function he(c) {
|
|
7637
8367
|
for (const h of f)
|
|
@@ -7640,64 +8370,64 @@ function pe(e) {
|
|
|
7640
8370
|
return !1;
|
|
7641
8371
|
}
|
|
7642
8372
|
function fe() {
|
|
7643
|
-
return
|
|
8373
|
+
return p.getStats().languages;
|
|
7644
8374
|
}
|
|
7645
|
-
function
|
|
7646
|
-
c ?
|
|
8375
|
+
function ve(c) {
|
|
8376
|
+
c ? p.delete(c) : p.clear(), g();
|
|
7647
8377
|
}
|
|
7648
|
-
async function
|
|
7649
|
-
x(c) || await
|
|
8378
|
+
async function be(c) {
|
|
8379
|
+
x(c) || await y(c), m = c, g();
|
|
7650
8380
|
}
|
|
7651
|
-
function
|
|
7652
|
-
return
|
|
8381
|
+
function ke() {
|
|
8382
|
+
return m;
|
|
7653
8383
|
}
|
|
7654
|
-
function
|
|
7655
|
-
return
|
|
8384
|
+
function we(c) {
|
|
8385
|
+
return v.add(c), () => v.delete(c);
|
|
7656
8386
|
}
|
|
7657
8387
|
return {
|
|
7658
|
-
loadLanguage:
|
|
8388
|
+
loadLanguage: y,
|
|
7659
8389
|
loadLanguages: A,
|
|
7660
|
-
preloadLanguages:
|
|
8390
|
+
preloadLanguages: w,
|
|
7661
8391
|
getTranslations: M,
|
|
7662
8392
|
isLoaded: x,
|
|
7663
8393
|
isLoading: he,
|
|
7664
8394
|
getLoadedLanguages: fe,
|
|
7665
|
-
clearCache:
|
|
7666
|
-
getState:
|
|
7667
|
-
setLanguage:
|
|
7668
|
-
getCurrentLanguage:
|
|
7669
|
-
subscribe:
|
|
8395
|
+
clearCache: ve,
|
|
8396
|
+
getState: C,
|
|
8397
|
+
setLanguage: be,
|
|
8398
|
+
getCurrentLanguage: ke,
|
|
8399
|
+
subscribe: we
|
|
7670
8400
|
};
|
|
7671
8401
|
}
|
|
7672
|
-
function
|
|
7673
|
-
return
|
|
8402
|
+
function Zt(e, o) {
|
|
8403
|
+
return me({
|
|
7674
8404
|
...o,
|
|
7675
|
-
loadFn: async (
|
|
7676
|
-
const
|
|
7677
|
-
if (!
|
|
7678
|
-
throw new Error(`Failed to load translations: ${
|
|
7679
|
-
return
|
|
8405
|
+
loadFn: async (r, t) => {
|
|
8406
|
+
const a = t ? `${e}/${r}/${t}.json` : `${e}/${r}.json`, n = await fetch(a);
|
|
8407
|
+
if (!n.ok)
|
|
8408
|
+
throw new Error(`Failed to load translations: ${n.status}`);
|
|
8409
|
+
return n.json();
|
|
7680
8410
|
}
|
|
7681
8411
|
});
|
|
7682
8412
|
}
|
|
7683
|
-
function
|
|
7684
|
-
return
|
|
8413
|
+
function qt(e, o) {
|
|
8414
|
+
return me({
|
|
7685
8415
|
...o,
|
|
7686
|
-
loadFn: async (
|
|
8416
|
+
loadFn: async (r, t) => (await e(r, t)).default
|
|
7687
8417
|
});
|
|
7688
8418
|
}
|
|
7689
8419
|
const ge = I(null);
|
|
7690
|
-
function
|
|
8420
|
+
function Gt({
|
|
7691
8421
|
children: e,
|
|
7692
8422
|
loader: o,
|
|
7693
|
-
initialLanguage:
|
|
7694
|
-
namespace:
|
|
8423
|
+
initialLanguage: r,
|
|
8424
|
+
namespace: t
|
|
7695
8425
|
}) {
|
|
7696
|
-
const [
|
|
7697
|
-
L(() => o.subscribe(
|
|
7698
|
-
|
|
7699
|
-
}, [o,
|
|
7700
|
-
const
|
|
8426
|
+
const [a, n] = P(() => o.getState()), [i, s] = P(null);
|
|
8427
|
+
L(() => o.subscribe(n), [o]), L(() => {
|
|
8428
|
+
r && !o.isLoaded(r, t) && o.loadLanguage(r, t).catch(s);
|
|
8429
|
+
}, [o, r, t]);
|
|
8430
|
+
const d = b(() => o.getTranslations(a.currentLanguage, t) || {}, [o, a.currentLanguage, t]), l = ee(
|
|
7701
8431
|
async (f) => {
|
|
7702
8432
|
s(null);
|
|
7703
8433
|
try {
|
|
@@ -7707,43 +8437,43 @@ function Ga({
|
|
|
7707
8437
|
}
|
|
7708
8438
|
},
|
|
7709
8439
|
[o]
|
|
7710
|
-
),
|
|
8440
|
+
), p = b(
|
|
7711
8441
|
() => ({
|
|
7712
8442
|
loader: o,
|
|
7713
|
-
translations:
|
|
7714
|
-
isLoading:
|
|
8443
|
+
translations: d,
|
|
8444
|
+
isLoading: a.loadingLanguages.size > 0,
|
|
7715
8445
|
error: i,
|
|
7716
|
-
setLanguage:
|
|
7717
|
-
currentLanguage:
|
|
7718
|
-
loadedLanguages: Array.from(
|
|
8446
|
+
setLanguage: l,
|
|
8447
|
+
currentLanguage: a.currentLanguage,
|
|
8448
|
+
loadedLanguages: Array.from(a.loadedLanguages)
|
|
7719
8449
|
}),
|
|
7720
|
-
[o,
|
|
8450
|
+
[o, d, a, i, l]
|
|
7721
8451
|
);
|
|
7722
|
-
return /* @__PURE__ */ B(ge.Provider, { value:
|
|
8452
|
+
return /* @__PURE__ */ B(ge.Provider, { value: p, children: e });
|
|
7723
8453
|
}
|
|
7724
|
-
function
|
|
8454
|
+
function Ho() {
|
|
7725
8455
|
const e = N(ge);
|
|
7726
8456
|
if (!e)
|
|
7727
8457
|
throw new Error("useDynamicI18n must be used within DynamicI18nProvider");
|
|
7728
8458
|
return e;
|
|
7729
8459
|
}
|
|
7730
|
-
function
|
|
7731
|
-
const { translations: o, currentLanguage:
|
|
8460
|
+
function Jt(e) {
|
|
8461
|
+
const { translations: o, currentLanguage: r, loader: t, isLoading: a } = Ho();
|
|
7732
8462
|
return L(() => {
|
|
7733
|
-
e && !
|
|
7734
|
-
}, [
|
|
8463
|
+
e && !t.isLoaded(r, e) && t.loadLanguage(r, e);
|
|
8464
|
+
}, [t, r, e]), { t: ee(
|
|
7735
8465
|
(i, s) => {
|
|
7736
|
-
let
|
|
8466
|
+
let d = o[i] || i;
|
|
7737
8467
|
if (s)
|
|
7738
|
-
for (const [
|
|
7739
|
-
|
|
7740
|
-
return
|
|
8468
|
+
for (const [l, p] of Object.entries(s))
|
|
8469
|
+
d = d.replace(new RegExp(`\\{${l}\\}`, "g"), String(p));
|
|
8470
|
+
return d;
|
|
7741
8471
|
},
|
|
7742
8472
|
[o]
|
|
7743
|
-
), isLoading:
|
|
8473
|
+
), isLoading: a, currentLanguage: r };
|
|
7744
8474
|
}
|
|
7745
|
-
function
|
|
7746
|
-
switch (
|
|
8475
|
+
function Yt(e, o, r) {
|
|
8476
|
+
switch (r) {
|
|
7747
8477
|
case "immediate":
|
|
7748
8478
|
e.loadLanguages(o);
|
|
7749
8479
|
break;
|
|
@@ -7754,142 +8484,142 @@ function Ja(e, o, t) {
|
|
|
7754
8484
|
break;
|
|
7755
8485
|
case "visible":
|
|
7756
8486
|
if ("IntersectionObserver" in window) {
|
|
7757
|
-
const
|
|
8487
|
+
const t = new IntersectionObserver(
|
|
7758
8488
|
() => {
|
|
7759
|
-
e.loadLanguages(o),
|
|
8489
|
+
e.loadLanguages(o), t.disconnect();
|
|
7760
8490
|
},
|
|
7761
8491
|
{ threshold: 0.1 }
|
|
7762
8492
|
);
|
|
7763
|
-
|
|
8493
|
+
t.observe(document.body);
|
|
7764
8494
|
} else
|
|
7765
8495
|
e.loadLanguages(o);
|
|
7766
8496
|
break;
|
|
7767
8497
|
case "interaction": {
|
|
7768
|
-
const
|
|
7769
|
-
e.loadLanguages(o), window.removeEventListener("click",
|
|
8498
|
+
const t = () => {
|
|
8499
|
+
e.loadLanguages(o), window.removeEventListener("click", t), window.removeEventListener("keydown", t), window.removeEventListener("touchstart", t);
|
|
7770
8500
|
};
|
|
7771
|
-
window.addEventListener("click",
|
|
8501
|
+
window.addEventListener("click", t, { once: !0 }), window.addEventListener("keydown", t, { once: !0 }), window.addEventListener("touchstart", t, { once: !0 });
|
|
7772
8502
|
break;
|
|
7773
8503
|
}
|
|
7774
8504
|
}
|
|
7775
8505
|
}
|
|
7776
|
-
async function
|
|
7777
|
-
const { fallback:
|
|
7778
|
-
for (const
|
|
7779
|
-
if (j.includes(
|
|
7780
|
-
return await e.setLanguage(
|
|
7781
|
-
const
|
|
7782
|
-
return j.includes(
|
|
8506
|
+
async function $t(e, o) {
|
|
8507
|
+
const { fallback: r = "en", preferredLanguages: t = [] } = o || {};
|
|
8508
|
+
for (const n of t)
|
|
8509
|
+
if (j.includes(n))
|
|
8510
|
+
return await e.setLanguage(n), n;
|
|
8511
|
+
const a = navigator.language.split("-")[0].toLowerCase();
|
|
8512
|
+
return j.includes(a) ? (await e.setLanguage(a), a) : (await e.setLanguage(r), r);
|
|
7783
8513
|
}
|
|
7784
8514
|
export {
|
|
7785
|
-
|
|
8515
|
+
W as CALENDAR_INFO,
|
|
7786
8516
|
jo as CELESTIAL_STEMS,
|
|
7787
8517
|
Po as CHINESE_ZODIAC,
|
|
7788
|
-
|
|
7789
|
-
|
|
7790
|
-
|
|
7791
|
-
|
|
7792
|
-
|
|
8518
|
+
de as DEFAULT_CALENDAR,
|
|
8519
|
+
Gt as DynamicI18nProvider,
|
|
8520
|
+
Dt as HEBREW_MONTHS,
|
|
8521
|
+
At as HEBREW_MONTHS_LEAP,
|
|
8522
|
+
St as HIJRI_MONTHS,
|
|
7793
8523
|
Z as JAPANESE_ERAS,
|
|
7794
|
-
|
|
7795
|
-
|
|
7796
|
-
|
|
8524
|
+
ne as NICE_GLOSSARY,
|
|
8525
|
+
k as NICE_I18N_DICTIONARIES,
|
|
8526
|
+
_e as NICE_I18N_VARIANTS,
|
|
7797
8527
|
j as NICE_SUPPORTED_LANGS,
|
|
7798
8528
|
Go as NiceI18nProvider,
|
|
7799
|
-
|
|
7800
|
-
|
|
7801
|
-
|
|
7802
|
-
|
|
7803
|
-
|
|
7804
|
-
|
|
8529
|
+
Pt as PERSIAN_MONTHS,
|
|
8530
|
+
Kt as PSEUDO_PRESETS,
|
|
8531
|
+
Ut as PseudoLocalizationProvider,
|
|
8532
|
+
at as RTLProvider,
|
|
8533
|
+
U as RTL_CSS_VARS,
|
|
8534
|
+
no as RTL_LANGUAGES,
|
|
7805
8535
|
ie as TIMEZONE_GROUPS,
|
|
7806
|
-
|
|
8536
|
+
Bt as addAccents,
|
|
7807
8537
|
Bo as addBidiMarkers,
|
|
7808
|
-
|
|
7809
|
-
|
|
7810
|
-
|
|
7811
|
-
|
|
8538
|
+
It as addBrackets,
|
|
8539
|
+
Vt as analyzeDictionary,
|
|
8540
|
+
st as analyzeStylesForRTL,
|
|
8541
|
+
Wo as containsNonAscii,
|
|
7812
8542
|
se as convertTimezone,
|
|
7813
|
-
|
|
7814
|
-
|
|
8543
|
+
le as createCalendarFormatter,
|
|
8544
|
+
ko as createCurrencyFormatter,
|
|
7815
8545
|
fo as createDateFormatter,
|
|
7816
|
-
|
|
7817
|
-
|
|
8546
|
+
me as createDynamicLoader,
|
|
8547
|
+
Zt as createFetchLoader,
|
|
7818
8548
|
Qo as createICUTranslator,
|
|
7819
|
-
|
|
7820
|
-
|
|
7821
|
-
|
|
8549
|
+
qt as createImportLoader,
|
|
8550
|
+
bo as createNumberFormatter,
|
|
8551
|
+
vo as createTimeFormatter,
|
|
7822
8552
|
zo as createTimezoneFormatter,
|
|
7823
|
-
|
|
7824
|
-
|
|
7825
|
-
|
|
7826
|
-
|
|
8553
|
+
Yo as createTranslator,
|
|
8554
|
+
$t as detectAndLoad,
|
|
8555
|
+
_o as detectBrowserLanguage,
|
|
8556
|
+
Vo as detectHardcodedText,
|
|
7827
8557
|
G as detectTimezone,
|
|
7828
8558
|
Ro as expandText,
|
|
7829
|
-
|
|
8559
|
+
ft as findSimilarTranslation,
|
|
7830
8560
|
co as flipAlignment,
|
|
7831
|
-
|
|
7832
|
-
|
|
7833
|
-
|
|
8561
|
+
rt as flipHorizontal,
|
|
8562
|
+
ao as formatICU,
|
|
8563
|
+
$o as formatMessage,
|
|
7834
8564
|
So as fromUTC,
|
|
7835
|
-
|
|
7836
|
-
|
|
7837
|
-
|
|
8565
|
+
pt as generateCoverageReport,
|
|
8566
|
+
ct as generateTranslationCode,
|
|
8567
|
+
wt as getAllTimezones,
|
|
7838
8568
|
go as getAllTranslationStats,
|
|
7839
|
-
|
|
7840
|
-
|
|
7841
|
-
|
|
7842
|
-
|
|
8569
|
+
Ot as getAvailableCalendars,
|
|
8570
|
+
Rt as getCalendarInfo,
|
|
8571
|
+
Ft as getCelestialStem,
|
|
8572
|
+
Nt as getChineseZodiac,
|
|
7843
8573
|
Ao as getCurrentCalendarDate,
|
|
7844
|
-
|
|
7845
|
-
|
|
7846
|
-
|
|
8574
|
+
tt as getDocumentDirection,
|
|
8575
|
+
vt as getGlossaryForLanguage,
|
|
8576
|
+
zt as getHijriMonthDays,
|
|
7847
8577
|
To as getJapaneseEra,
|
|
7848
|
-
|
|
8578
|
+
Tt as getJapaneseYear,
|
|
7849
8579
|
D as getLocaleTag,
|
|
7850
|
-
|
|
8580
|
+
po as getLogicalProperty,
|
|
7851
8581
|
uo as getMissingTranslations,
|
|
7852
|
-
|
|
7853
|
-
|
|
7854
|
-
|
|
8582
|
+
Et as getNextDSTTransition,
|
|
8583
|
+
re as getOrdinalCategory,
|
|
8584
|
+
te as getPluralCategory,
|
|
7855
8585
|
T as getPseudoLocalizationPreset,
|
|
7856
|
-
|
|
7857
|
-
|
|
7858
|
-
|
|
8586
|
+
dt as getRTLCSSVars,
|
|
8587
|
+
Lt as getRecommendedCalendars,
|
|
8588
|
+
lt as getSourceKeys,
|
|
7859
8589
|
io as getTextDirection,
|
|
7860
8590
|
F as getTimezoneInfo,
|
|
7861
|
-
|
|
7862
|
-
|
|
7863
|
-
|
|
7864
|
-
|
|
8591
|
+
yt as getTimezonesGrouped,
|
|
8592
|
+
mo as getTranslationStats,
|
|
8593
|
+
H as isDSTActive,
|
|
8594
|
+
xt as isHebrewLeapYear,
|
|
7865
8595
|
xo as isHijriLeapYear,
|
|
7866
|
-
|
|
7867
|
-
|
|
8596
|
+
jt as isPersianLeapYear,
|
|
8597
|
+
ae as isRTLLanguage,
|
|
7868
8598
|
Xe as isSupported,
|
|
7869
|
-
|
|
7870
|
-
|
|
7871
|
-
|
|
8599
|
+
kt as isValidTimezone,
|
|
8600
|
+
yo as lookupGlossary,
|
|
8601
|
+
et as ordinal,
|
|
7872
8602
|
Xo as plural,
|
|
7873
|
-
|
|
7874
|
-
|
|
7875
|
-
|
|
8603
|
+
Yt as preloadWithStrategy,
|
|
8604
|
+
pe as pseudoLocalize,
|
|
8605
|
+
Wt as pseudoLocalizeDictionary,
|
|
7876
8606
|
qo as resolvePlVariant,
|
|
7877
8607
|
lo as rtlValue,
|
|
7878
|
-
|
|
8608
|
+
ot as select,
|
|
7879
8609
|
so as setDocumentDirection,
|
|
7880
8610
|
ce as toCalendar,
|
|
7881
|
-
|
|
7882
|
-
|
|
7883
|
-
|
|
7884
|
-
|
|
7885
|
-
|
|
7886
|
-
|
|
7887
|
-
|
|
7888
|
-
|
|
7889
|
-
|
|
7890
|
-
|
|
7891
|
-
|
|
7892
|
-
|
|
7893
|
-
|
|
7894
|
-
|
|
8611
|
+
Co as toUTC,
|
|
8612
|
+
Mt as useCalendar,
|
|
8613
|
+
Ho as useDynamicI18n,
|
|
8614
|
+
Jt as useDynamicTranslation,
|
|
8615
|
+
it as useIsRTL,
|
|
8616
|
+
ht as useNiceCurrencyFormat,
|
|
8617
|
+
ut as useNiceDateFormat,
|
|
8618
|
+
gt as useNiceNumberFormat,
|
|
8619
|
+
mt as useNiceTimeFormat,
|
|
8620
|
+
Jo as useNiceTranslation,
|
|
8621
|
+
Ht as usePseudoLocalization,
|
|
8622
|
+
nt as useRTL,
|
|
8623
|
+
Ct as useTimezone,
|
|
8624
|
+
bt as validateAgainstGlossary
|
|
7895
8625
|
};
|