@nice2dev/i18n 1.0.5 → 1.0.8

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.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { jsx as w } from "react/jsx-runtime";
2
- import { useMemo as u, useContext as k, createContext as y, useEffect as j } from "react";
3
- const E = [
1
+ import { jsx as B } from "react/jsx-runtime";
2
+ import { useMemo as w, useContext as F, createContext as I, useEffect as L, useState as P, useCallback as Q } from "react";
3
+ const j = [
4
4
  "en",
5
5
  "pl",
6
6
  "de",
@@ -23,7 +23,7 @@ const E = [
23
23
  "ko",
24
24
  "zh",
25
25
  "ar"
26
- ], P = {
26
+ ], ve = {
27
27
  // ── Global / Generic ──
28
28
  ok: "OK",
29
29
  cancel: "Cancel",
@@ -415,8 +415,176 @@ const E = [
415
415
  "wm.closeAll": "Close all",
416
416
  "wm.minimizeAll": "Minimize all",
417
417
  "wm.newWindow": "New window",
418
- "wm.moveToFront": "Move to front"
419
- }, T = {
418
+ "wm.moveToFront": "Move to front",
419
+ // ── No-Code Foundation ──
420
+ "noCode.title": "No-Code Studio",
421
+ "noCode.description": "Build applications visually",
422
+ "noCode.newProject": "New Project",
423
+ "noCode.openProject": "Open Project",
424
+ "noCode.saveProject": "Save Project",
425
+ "noCode.exportProject": "Export Project",
426
+ "noCode.importProject": "Import Project",
427
+ "noCode.projectName": "Project Name",
428
+ "noCode.projectSettings": "Project Settings",
429
+ "noCode.recentProjects": "Recent Projects",
430
+ "noCode.templates": "Templates",
431
+ "noCode.preview": "Preview",
432
+ "noCode.codeView": "Code View",
433
+ "noCode.splitView": "Split View",
434
+ "noCode.visualView": "Visual View",
435
+ "noCode.generate": "Generate Code",
436
+ "noCode.deploy": "Deploy",
437
+ // No-Code: Component Designer
438
+ "noCode.componentDesigner.title": "Component Designer",
439
+ "noCode.componentDesigner.newComponent": "New Component",
440
+ "noCode.componentDesigner.componentName": "Component Name",
441
+ "noCode.componentDesigner.addProp": "Add Prop",
442
+ "noCode.componentDesigner.editProp": "Edit Prop",
443
+ "noCode.componentDesigner.deleteProp": "Delete Prop",
444
+ "noCode.componentDesigner.propName": "Prop Name",
445
+ "noCode.componentDesigner.propType": "Prop Type",
446
+ "noCode.componentDesigner.propRequired": "Required",
447
+ "noCode.componentDesigner.propDefault": "Default Value",
448
+ "noCode.componentDesigner.addState": "Add State",
449
+ "noCode.componentDesigner.stateName": "State Name",
450
+ "noCode.componentDesigner.stateType": "State Type",
451
+ "noCode.componentDesigner.stateDefault": "Initial Value",
452
+ "noCode.componentDesigner.addHook": "Add Hook",
453
+ "noCode.componentDesigner.hooks": "Hooks",
454
+ "noCode.componentDesigner.template": "Template",
455
+ "noCode.componentDesigner.styles": "Styles",
456
+ "noCode.componentDesigner.events": "Events",
457
+ "noCode.componentDesigner.palette": "Component Palette",
458
+ "noCode.componentDesigner.dragDrop": "Drag components here",
459
+ // No-Code: Page Builder
460
+ "noCode.pageBuilder.title": "Page Builder",
461
+ "noCode.pageBuilder.newPage": "New Page",
462
+ "noCode.pageBuilder.pageName": "Page Name",
463
+ "noCode.pageBuilder.pageRoute": "Route Path",
464
+ "noCode.pageBuilder.addSection": "Add Section",
465
+ "noCode.pageBuilder.editSection": "Edit Section",
466
+ "noCode.pageBuilder.deleteSection": "Delete Section",
467
+ "noCode.pageBuilder.sectionLayout": "Section Layout",
468
+ "noCode.pageBuilder.columns": "Columns",
469
+ "noCode.pageBuilder.responsive": "Responsive",
470
+ "noCode.pageBuilder.mobile": "Mobile",
471
+ "noCode.pageBuilder.tablet": "Tablet",
472
+ "noCode.pageBuilder.desktop": "Desktop",
473
+ "noCode.pageBuilder.showGrid": "Show Grid",
474
+ "noCode.pageBuilder.hideGrid": "Hide Grid",
475
+ "noCode.pageBuilder.metadata": "Page Metadata",
476
+ "noCode.pageBuilder.seo": "SEO Settings",
477
+ // No-Code: State Designer
478
+ "noCode.stateDesigner.title": "State Designer",
479
+ "noCode.stateDesigner.newStore": "New Store",
480
+ "noCode.stateDesigner.storeName": "Store Name",
481
+ "noCode.stateDesigner.storeType": "Store Type",
482
+ "noCode.stateDesigner.addState": "Add State Field",
483
+ "noCode.stateDesigner.addAction": "Add Action",
484
+ "noCode.stateDesigner.editAction": "Edit Action",
485
+ "noCode.stateDesigner.deleteAction": "Delete Action",
486
+ "noCode.stateDesigner.actionName": "Action Name",
487
+ "noCode.stateDesigner.actionParams": "Parameters",
488
+ "noCode.stateDesigner.actionBody": "Action Body",
489
+ "noCode.stateDesigner.asyncAction": "Async Action",
490
+ "noCode.stateDesigner.addSelector": "Add Selector",
491
+ "noCode.stateDesigner.selectorName": "Selector Name",
492
+ "noCode.stateDesigner.selectorBody": "Selector Logic",
493
+ "noCode.stateDesigner.persistence": "Persistence",
494
+ "noCode.stateDesigner.devtools": "DevTools",
495
+ // No-Code: API Flow
496
+ "noCode.apiFlow.title": "API Flow Designer",
497
+ "noCode.apiFlow.newEndpoint": "New Endpoint",
498
+ "noCode.apiFlow.endpointUrl": "Endpoint URL",
499
+ "noCode.apiFlow.method": "HTTP Method",
500
+ "noCode.apiFlow.headers": "Headers",
501
+ "noCode.apiFlow.body": "Request Body",
502
+ "noCode.apiFlow.response": "Response",
503
+ "noCode.apiFlow.auth": "Authentication",
504
+ "noCode.apiFlow.authType": "Auth Type",
505
+ "noCode.apiFlow.bearerToken": "Bearer Token",
506
+ "noCode.apiFlow.apiKey": "API Key",
507
+ "noCode.apiFlow.testEndpoint": "Test Endpoint",
508
+ "noCode.apiFlow.mockResponse": "Mock Response",
509
+ "noCode.apiFlow.errorHandling": "Error Handling",
510
+ "noCode.apiFlow.retry": "Retry Policy",
511
+ "noCode.apiFlow.cache": "Caching",
512
+ // No-Code: Data Mapper
513
+ "noCode.dataMapper.title": "Data Mapper",
514
+ "noCode.dataMapper.sourceSchema": "Source Schema",
515
+ "noCode.dataMapper.targetSchema": "Target Schema",
516
+ "noCode.dataMapper.addMapping": "Add Mapping",
517
+ "noCode.dataMapper.editMapping": "Edit Mapping",
518
+ "noCode.dataMapper.deleteMapping": "Delete Mapping",
519
+ "noCode.dataMapper.sourceField": "Source Field",
520
+ "noCode.dataMapper.targetField": "Target Field",
521
+ "noCode.dataMapper.transform": "Transform",
522
+ "noCode.dataMapper.validation": "Validation",
523
+ "noCode.dataMapper.testData": "Test Data",
524
+ "noCode.dataMapper.preview": "Preview Result",
525
+ "noCode.dataMapper.autoMap": "Auto Map",
526
+ // No-Code: Event Orchestrator
527
+ "noCode.eventOrchestrator.title": "Event Orchestrator",
528
+ "noCode.eventOrchestrator.newFlow": "New Event Flow",
529
+ "noCode.eventOrchestrator.flowName": "Flow Name",
530
+ "noCode.eventOrchestrator.trigger": "Trigger",
531
+ "noCode.eventOrchestrator.triggerType": "Trigger Type",
532
+ "noCode.eventOrchestrator.addHandler": "Add Handler",
533
+ "noCode.eventOrchestrator.editHandler": "Edit Handler",
534
+ "noCode.eventOrchestrator.deleteHandler": "Delete Handler",
535
+ "noCode.eventOrchestrator.handlerName": "Handler Name",
536
+ "noCode.eventOrchestrator.debounce": "Debounce",
537
+ "noCode.eventOrchestrator.throttle": "Throttle",
538
+ "noCode.eventOrchestrator.delay": "Delay",
539
+ "noCode.eventOrchestrator.condition": "Condition",
540
+ "noCode.eventOrchestrator.chain": "Chain Events",
541
+ // No-Code: Test Builder
542
+ "noCode.testBuilder.title": "Test Builder",
543
+ "noCode.testBuilder.newTest": "New Test",
544
+ "noCode.testBuilder.testName": "Test Name",
545
+ "noCode.testBuilder.testDescription": "Description",
546
+ "noCode.testBuilder.addScenario": "Add Scenario",
547
+ "noCode.testBuilder.editScenario": "Edit Scenario",
548
+ "noCode.testBuilder.deleteScenario": "Delete Scenario",
549
+ "noCode.testBuilder.addAssertion": "Add Assertion",
550
+ "noCode.testBuilder.assertionType": "Assertion Type",
551
+ "noCode.testBuilder.expected": "Expected Value",
552
+ "noCode.testBuilder.actual": "Actual Value",
553
+ "noCode.testBuilder.mock": "Mock Setup",
554
+ "noCode.testBuilder.runTests": "Run Tests",
555
+ "noCode.testBuilder.testsPassed": "Tests Passed",
556
+ "noCode.testBuilder.testsFailed": "Tests Failed",
557
+ "noCode.testBuilder.coverage": "Coverage",
558
+ "noCode.testBuilder.accessibility": "Accessibility Check",
559
+ // No-Code: Code Template
560
+ "noCode.codeTemplate.title": "Code Templates",
561
+ "noCode.codeTemplate.newTemplate": "New Template",
562
+ "noCode.codeTemplate.templateName": "Template Name",
563
+ "noCode.codeTemplate.templateEngine": "Template Engine",
564
+ "noCode.codeTemplate.variables": "Variables",
565
+ "noCode.codeTemplate.addVariable": "Add Variable",
566
+ "noCode.codeTemplate.variableName": "Variable Name",
567
+ "noCode.codeTemplate.variableType": "Variable Type",
568
+ "noCode.codeTemplate.variableDefault": "Default Value",
569
+ "noCode.codeTemplate.generateFiles": "Generate Files",
570
+ "noCode.codeTemplate.outputPath": "Output Path",
571
+ "noCode.codeTemplate.presets": "Presets",
572
+ "noCode.codeTemplate.presetReact": "React Component",
573
+ "noCode.codeTemplate.presetNextPage": "Next.js Page",
574
+ "noCode.codeTemplate.presetHook": "Custom Hook",
575
+ "noCode.codeTemplate.presetStore": "Store Module",
576
+ // No-Code: Code Preview
577
+ "noCode.codePreview.title": "Code Preview",
578
+ "noCode.codePreview.showDiff": "Show Diff",
579
+ "noCode.codePreview.hideDiff": "Hide Diff",
580
+ "noCode.codePreview.copyCode": "Copy Code",
581
+ "noCode.codePreview.downloadCode": "Download Code",
582
+ "noCode.codePreview.importCode": "Import Code",
583
+ "noCode.codePreview.language": "Language",
584
+ "noCode.codePreview.format": "Format Code",
585
+ "noCode.codePreview.linesChanged": "Lines Changed",
586
+ "noCode.codePreview.noChanges": "No Changes"
587
+ }, be = {
420
588
  ok: "OK",
421
589
  cancel: "Anuluj",
422
590
  save: "Zapisz",
@@ -778,8 +946,167 @@ const E = [
778
946
  "wm.closeAll": "Zamknij wszystkie",
779
947
  "wm.minimizeAll": "Minimalizuj wszystkie",
780
948
  "wm.newWindow": "Nowe okno",
781
- "wm.moveToFront": "Na wierzch"
782
- }, F = {
949
+ "wm.moveToFront": "Na wierzch",
950
+ // No-Code Foundation
951
+ "noCode.title": "Studio No-Code",
952
+ "noCode.description": "Twórz aplikacje wizualnie",
953
+ "noCode.newProject": "Nowy projekt",
954
+ "noCode.openProject": "Otwórz projekt",
955
+ "noCode.saveProject": "Zapisz projekt",
956
+ "noCode.exportProject": "Eksportuj projekt",
957
+ "noCode.importProject": "Importuj projekt",
958
+ "noCode.projectName": "Nazwa projektu",
959
+ "noCode.projectSettings": "Ustawienia projektu",
960
+ "noCode.recentProjects": "Ostatnie projekty",
961
+ "noCode.templates": "Szablony",
962
+ "noCode.preview": "Podgląd",
963
+ "noCode.codeView": "Widok kodu",
964
+ "noCode.splitView": "Widok podzielony",
965
+ "noCode.visualView": "Widok wizualny",
966
+ "noCode.generate": "Generuj kod",
967
+ "noCode.deploy": "Wdrożenie",
968
+ "noCode.componentDesigner.title": "Projektant komponentów",
969
+ "noCode.componentDesigner.newComponent": "Nowy komponent",
970
+ "noCode.componentDesigner.componentName": "Nazwa komponentu",
971
+ "noCode.componentDesigner.addProp": "Dodaj właściwość",
972
+ "noCode.componentDesigner.editProp": "Edytuj właściwość",
973
+ "noCode.componentDesigner.deleteProp": "Usuń właściwość",
974
+ "noCode.componentDesigner.propName": "Nazwa właściwości",
975
+ "noCode.componentDesigner.propType": "Typ właściwości",
976
+ "noCode.componentDesigner.propRequired": "Wymagane",
977
+ "noCode.componentDesigner.propDefault": "Wartość domyślna",
978
+ "noCode.componentDesigner.addState": "Dodaj stan",
979
+ "noCode.componentDesigner.stateName": "Nazwa stanu",
980
+ "noCode.componentDesigner.stateType": "Typ stanu",
981
+ "noCode.componentDesigner.stateDefault": "Wartość początkowa",
982
+ "noCode.componentDesigner.addHook": "Dodaj hook",
983
+ "noCode.componentDesigner.hooks": "Hooki",
984
+ "noCode.componentDesigner.template": "Szablon",
985
+ "noCode.componentDesigner.styles": "Style",
986
+ "noCode.componentDesigner.events": "Zdarzenia",
987
+ "noCode.componentDesigner.palette": "Paleta komponentów",
988
+ "noCode.componentDesigner.dragDrop": "Przeciągnij komponenty tutaj",
989
+ "noCode.pageBuilder.title": "Kreator stron",
990
+ "noCode.pageBuilder.newPage": "Nowa strona",
991
+ "noCode.pageBuilder.pageName": "Nazwa strony",
992
+ "noCode.pageBuilder.pageRoute": "Ścieżka",
993
+ "noCode.pageBuilder.addSection": "Dodaj sekcję",
994
+ "noCode.pageBuilder.editSection": "Edytuj sekcję",
995
+ "noCode.pageBuilder.deleteSection": "Usuń sekcję",
996
+ "noCode.pageBuilder.sectionLayout": "Układ sekcji",
997
+ "noCode.pageBuilder.columns": "Kolumny",
998
+ "noCode.pageBuilder.responsive": "Responsywność",
999
+ "noCode.pageBuilder.mobile": "Mobilne",
1000
+ "noCode.pageBuilder.tablet": "Tablet",
1001
+ "noCode.pageBuilder.desktop": "Desktop",
1002
+ "noCode.pageBuilder.showGrid": "Pokaż siatkę",
1003
+ "noCode.pageBuilder.hideGrid": "Ukryj siatkę",
1004
+ "noCode.pageBuilder.metadata": "Metadane strony",
1005
+ "noCode.pageBuilder.seo": "Ustawienia SEO",
1006
+ "noCode.stateDesigner.title": "Projektant stanu",
1007
+ "noCode.stateDesigner.newStore": "Nowy magazyn",
1008
+ "noCode.stateDesigner.storeName": "Nazwa magazynu",
1009
+ "noCode.stateDesigner.storeType": "Typ magazynu",
1010
+ "noCode.stateDesigner.addState": "Dodaj pole stanu",
1011
+ "noCode.stateDesigner.addAction": "Dodaj akcję",
1012
+ "noCode.stateDesigner.editAction": "Edytuj akcję",
1013
+ "noCode.stateDesigner.deleteAction": "Usuń akcję",
1014
+ "noCode.stateDesigner.actionName": "Nazwa akcji",
1015
+ "noCode.stateDesigner.actionParams": "Parametry",
1016
+ "noCode.stateDesigner.actionBody": "Ciało akcji",
1017
+ "noCode.stateDesigner.asyncAction": "Akcja asynchroniczna",
1018
+ "noCode.stateDesigner.addSelector": "Dodaj selektor",
1019
+ "noCode.stateDesigner.selectorName": "Nazwa selektora",
1020
+ "noCode.stateDesigner.selectorBody": "Logika selektora",
1021
+ "noCode.stateDesigner.persistence": "Trwałość",
1022
+ "noCode.stateDesigner.devtools": "Narzędzia deweloperskie",
1023
+ "noCode.apiFlow.title": "Projektant API",
1024
+ "noCode.apiFlow.newEndpoint": "Nowy endpoint",
1025
+ "noCode.apiFlow.endpointUrl": "URL endpointu",
1026
+ "noCode.apiFlow.method": "Metoda HTTP",
1027
+ "noCode.apiFlow.headers": "Nagłówki",
1028
+ "noCode.apiFlow.body": "Ciało żądania",
1029
+ "noCode.apiFlow.response": "Odpowiedź",
1030
+ "noCode.apiFlow.auth": "Uwierzytelnianie",
1031
+ "noCode.apiFlow.authType": "Typ uwierzytelniania",
1032
+ "noCode.apiFlow.bearerToken": "Token Bearer",
1033
+ "noCode.apiFlow.apiKey": "Klucz API",
1034
+ "noCode.apiFlow.testEndpoint": "Testuj endpoint",
1035
+ "noCode.apiFlow.mockResponse": "Mockowa odpowiedź",
1036
+ "noCode.apiFlow.errorHandling": "Obsługa błędów",
1037
+ "noCode.apiFlow.retry": "Polityka ponawiania",
1038
+ "noCode.apiFlow.cache": "Cache",
1039
+ "noCode.dataMapper.title": "Mapowanie danych",
1040
+ "noCode.dataMapper.sourceSchema": "Schemat źródłowy",
1041
+ "noCode.dataMapper.targetSchema": "Schemat docelowy",
1042
+ "noCode.dataMapper.addMapping": "Dodaj mapowanie",
1043
+ "noCode.dataMapper.editMapping": "Edytuj mapowanie",
1044
+ "noCode.dataMapper.deleteMapping": "Usuń mapowanie",
1045
+ "noCode.dataMapper.sourceField": "Pole źródłowe",
1046
+ "noCode.dataMapper.targetField": "Pole docelowe",
1047
+ "noCode.dataMapper.transform": "Transformacja",
1048
+ "noCode.dataMapper.validation": "Walidacja",
1049
+ "noCode.dataMapper.testData": "Dane testowe",
1050
+ "noCode.dataMapper.preview": "Podgląd wyniku",
1051
+ "noCode.dataMapper.autoMap": "Automapowanie",
1052
+ "noCode.eventOrchestrator.title": "Orkiestrator zdarzeń",
1053
+ "noCode.eventOrchestrator.newFlow": "Nowy przepływ",
1054
+ "noCode.eventOrchestrator.flowName": "Nazwa przepływu",
1055
+ "noCode.eventOrchestrator.trigger": "Wyzwalacz",
1056
+ "noCode.eventOrchestrator.triggerType": "Typ wyzwalacza",
1057
+ "noCode.eventOrchestrator.addHandler": "Dodaj handler",
1058
+ "noCode.eventOrchestrator.editHandler": "Edytuj handler",
1059
+ "noCode.eventOrchestrator.deleteHandler": "Usuń handler",
1060
+ "noCode.eventOrchestrator.handlerName": "Nazwa handlera",
1061
+ "noCode.eventOrchestrator.debounce": "Debounce",
1062
+ "noCode.eventOrchestrator.throttle": "Throttle",
1063
+ "noCode.eventOrchestrator.delay": "Opóźnienie",
1064
+ "noCode.eventOrchestrator.condition": "Warunek",
1065
+ "noCode.eventOrchestrator.chain": "Łańcuch zdarzeń",
1066
+ "noCode.testBuilder.title": "Kreator testów",
1067
+ "noCode.testBuilder.newTest": "Nowy test",
1068
+ "noCode.testBuilder.testName": "Nazwa testu",
1069
+ "noCode.testBuilder.testDescription": "Opis",
1070
+ "noCode.testBuilder.addScenario": "Dodaj scenariusz",
1071
+ "noCode.testBuilder.editScenario": "Edytuj scenariusz",
1072
+ "noCode.testBuilder.deleteScenario": "Usuń scenariusz",
1073
+ "noCode.testBuilder.addAssertion": "Dodaj asercję",
1074
+ "noCode.testBuilder.assertionType": "Typ asercji",
1075
+ "noCode.testBuilder.expected": "Oczekiwana wartość",
1076
+ "noCode.testBuilder.actual": "Rzeczywista wartość",
1077
+ "noCode.testBuilder.mock": "Konfiguracja mocków",
1078
+ "noCode.testBuilder.runTests": "Uruchom testy",
1079
+ "noCode.testBuilder.testsPassed": "Testy zaliczone",
1080
+ "noCode.testBuilder.testsFailed": "Testy niezaliczone",
1081
+ "noCode.testBuilder.coverage": "Pokrycie",
1082
+ "noCode.testBuilder.accessibility": "Sprawdzenie dostępności",
1083
+ "noCode.codeTemplate.title": "Szablony kodu",
1084
+ "noCode.codeTemplate.newTemplate": "Nowy szablon",
1085
+ "noCode.codeTemplate.templateName": "Nazwa szablonu",
1086
+ "noCode.codeTemplate.templateEngine": "Silnik szablonów",
1087
+ "noCode.codeTemplate.variables": "Zmienne",
1088
+ "noCode.codeTemplate.addVariable": "Dodaj zmienną",
1089
+ "noCode.codeTemplate.variableName": "Nazwa zmiennej",
1090
+ "noCode.codeTemplate.variableType": "Typ zmiennej",
1091
+ "noCode.codeTemplate.variableDefault": "Wartość domyślna",
1092
+ "noCode.codeTemplate.generateFiles": "Generuj pliki",
1093
+ "noCode.codeTemplate.outputPath": "Ścieżka wyjściowa",
1094
+ "noCode.codeTemplate.presets": "Ustawienia predefiniowane",
1095
+ "noCode.codeTemplate.presetReact": "Komponent React",
1096
+ "noCode.codeTemplate.presetNextPage": "Strona Next.js",
1097
+ "noCode.codeTemplate.presetHook": "Własny Hook",
1098
+ "noCode.codeTemplate.presetStore": "Moduł magazynu",
1099
+ "noCode.codePreview.title": "Podgląd kodu",
1100
+ "noCode.codePreview.showDiff": "Pokaż różnice",
1101
+ "noCode.codePreview.hideDiff": "Ukryj różnice",
1102
+ "noCode.codePreview.copyCode": "Kopiuj kod",
1103
+ "noCode.codePreview.downloadCode": "Pobierz kod",
1104
+ "noCode.codePreview.importCode": "Importuj kod",
1105
+ "noCode.codePreview.language": "Język",
1106
+ "noCode.codePreview.format": "Formatuj kod",
1107
+ "noCode.codePreview.linesChanged": "Zmienione linie",
1108
+ "noCode.codePreview.noChanges": "Brak zmian"
1109
+ }, Ce = {
783
1110
  ok: "OK",
784
1111
  cancel: "Abbrechen",
785
1112
  save: "Speichern",
@@ -1141,8 +1468,167 @@ const E = [
1141
1468
  "wm.closeAll": "Alle schließen",
1142
1469
  "wm.minimizeAll": "Alle minimieren",
1143
1470
  "wm.newWindow": "Neues Fenster",
1144
- "wm.moveToFront": "In den Vordergrund"
1145
- }, R = {
1471
+ "wm.moveToFront": "In den Vordergrund",
1472
+ // No-Code Foundation
1473
+ "noCode.title": "No-Code Studio",
1474
+ "noCode.description": "Anwendungen visuell erstellen",
1475
+ "noCode.newProject": "Neues Projekt",
1476
+ "noCode.openProject": "Projekt öffnen",
1477
+ "noCode.saveProject": "Projekt speichern",
1478
+ "noCode.exportProject": "Projekt exportieren",
1479
+ "noCode.importProject": "Projekt importieren",
1480
+ "noCode.projectName": "Projektname",
1481
+ "noCode.projectSettings": "Projekteinstellungen",
1482
+ "noCode.recentProjects": "Letzte Projekte",
1483
+ "noCode.templates": "Vorlagen",
1484
+ "noCode.preview": "Vorschau",
1485
+ "noCode.codeView": "Code-Ansicht",
1486
+ "noCode.splitView": "Geteilte Ansicht",
1487
+ "noCode.visualView": "Visuelle Ansicht",
1488
+ "noCode.generate": "Code generieren",
1489
+ "noCode.deploy": "Bereitstellen",
1490
+ "noCode.componentDesigner.title": "Komponenten-Designer",
1491
+ "noCode.componentDesigner.newComponent": "Neue Komponente",
1492
+ "noCode.componentDesigner.componentName": "Komponentenname",
1493
+ "noCode.componentDesigner.addProp": "Eigenschaft hinzufügen",
1494
+ "noCode.componentDesigner.editProp": "Eigenschaft bearbeiten",
1495
+ "noCode.componentDesigner.deleteProp": "Eigenschaft löschen",
1496
+ "noCode.componentDesigner.propName": "Eigenschaftsname",
1497
+ "noCode.componentDesigner.propType": "Eigenschaftstyp",
1498
+ "noCode.componentDesigner.propRequired": "Erforderlich",
1499
+ "noCode.componentDesigner.propDefault": "Standardwert",
1500
+ "noCode.componentDesigner.addState": "Status hinzufügen",
1501
+ "noCode.componentDesigner.stateName": "Statusname",
1502
+ "noCode.componentDesigner.stateType": "Statustyp",
1503
+ "noCode.componentDesigner.stateDefault": "Anfangswert",
1504
+ "noCode.componentDesigner.addHook": "Hook hinzufügen",
1505
+ "noCode.componentDesigner.hooks": "Hooks",
1506
+ "noCode.componentDesigner.template": "Vorlage",
1507
+ "noCode.componentDesigner.styles": "Stile",
1508
+ "noCode.componentDesigner.events": "Ereignisse",
1509
+ "noCode.componentDesigner.palette": "Komponentenpalette",
1510
+ "noCode.componentDesigner.dragDrop": "Komponenten hierher ziehen",
1511
+ "noCode.pageBuilder.title": "Seiten-Builder",
1512
+ "noCode.pageBuilder.newPage": "Neue Seite",
1513
+ "noCode.pageBuilder.pageName": "Seitenname",
1514
+ "noCode.pageBuilder.pageRoute": "Route",
1515
+ "noCode.pageBuilder.addSection": "Abschnitt hinzufügen",
1516
+ "noCode.pageBuilder.editSection": "Abschnitt bearbeiten",
1517
+ "noCode.pageBuilder.deleteSection": "Abschnitt löschen",
1518
+ "noCode.pageBuilder.sectionLayout": "Abschnittslayout",
1519
+ "noCode.pageBuilder.columns": "Spalten",
1520
+ "noCode.pageBuilder.responsive": "Responsiv",
1521
+ "noCode.pageBuilder.mobile": "Mobil",
1522
+ "noCode.pageBuilder.tablet": "Tablet",
1523
+ "noCode.pageBuilder.desktop": "Desktop",
1524
+ "noCode.pageBuilder.showGrid": "Raster anzeigen",
1525
+ "noCode.pageBuilder.hideGrid": "Raster ausblenden",
1526
+ "noCode.pageBuilder.metadata": "Seitenmetadaten",
1527
+ "noCode.pageBuilder.seo": "SEO-Einstellungen",
1528
+ "noCode.stateDesigner.title": "Status-Designer",
1529
+ "noCode.stateDesigner.newStore": "Neuer Store",
1530
+ "noCode.stateDesigner.storeName": "Store-Name",
1531
+ "noCode.stateDesigner.storeType": "Store-Typ",
1532
+ "noCode.stateDesigner.addState": "Statusfeld hinzufügen",
1533
+ "noCode.stateDesigner.addAction": "Aktion hinzufügen",
1534
+ "noCode.stateDesigner.editAction": "Aktion bearbeiten",
1535
+ "noCode.stateDesigner.deleteAction": "Aktion löschen",
1536
+ "noCode.stateDesigner.actionName": "Aktionsname",
1537
+ "noCode.stateDesigner.actionParams": "Parameter",
1538
+ "noCode.stateDesigner.actionBody": "Aktionskörper",
1539
+ "noCode.stateDesigner.asyncAction": "Asynchrone Aktion",
1540
+ "noCode.stateDesigner.addSelector": "Selektor hinzufügen",
1541
+ "noCode.stateDesigner.selectorName": "Selektorname",
1542
+ "noCode.stateDesigner.selectorBody": "Selektorlogik",
1543
+ "noCode.stateDesigner.persistence": "Persistenz",
1544
+ "noCode.stateDesigner.devtools": "Entwicklertools",
1545
+ "noCode.apiFlow.title": "API-Flow-Designer",
1546
+ "noCode.apiFlow.newEndpoint": "Neuer Endpunkt",
1547
+ "noCode.apiFlow.endpointUrl": "Endpunkt-URL",
1548
+ "noCode.apiFlow.method": "HTTP-Methode",
1549
+ "noCode.apiFlow.headers": "Header",
1550
+ "noCode.apiFlow.body": "Anfragekörper",
1551
+ "noCode.apiFlow.response": "Antwort",
1552
+ "noCode.apiFlow.auth": "Authentifizierung",
1553
+ "noCode.apiFlow.authType": "Authentifizierungstyp",
1554
+ "noCode.apiFlow.bearerToken": "Bearer-Token",
1555
+ "noCode.apiFlow.apiKey": "API-Schlüssel",
1556
+ "noCode.apiFlow.testEndpoint": "Endpunkt testen",
1557
+ "noCode.apiFlow.mockResponse": "Mock-Antwort",
1558
+ "noCode.apiFlow.errorHandling": "Fehlerbehandlung",
1559
+ "noCode.apiFlow.retry": "Wiederholungsrichtlinie",
1560
+ "noCode.apiFlow.cache": "Cache",
1561
+ "noCode.dataMapper.title": "Datenmapper",
1562
+ "noCode.dataMapper.sourceSchema": "Quellschema",
1563
+ "noCode.dataMapper.targetSchema": "Zielschema",
1564
+ "noCode.dataMapper.addMapping": "Zuordnung hinzufügen",
1565
+ "noCode.dataMapper.editMapping": "Zuordnung bearbeiten",
1566
+ "noCode.dataMapper.deleteMapping": "Zuordnung löschen",
1567
+ "noCode.dataMapper.sourceField": "Quellfeld",
1568
+ "noCode.dataMapper.targetField": "Zielfeld",
1569
+ "noCode.dataMapper.transform": "Transformation",
1570
+ "noCode.dataMapper.validation": "Validierung",
1571
+ "noCode.dataMapper.testData": "Testdaten",
1572
+ "noCode.dataMapper.preview": "Ergebnisvorschau",
1573
+ "noCode.dataMapper.autoMap": "Automatisch zuordnen",
1574
+ "noCode.eventOrchestrator.title": "Ereignis-Orchestrator",
1575
+ "noCode.eventOrchestrator.newFlow": "Neuer Flow",
1576
+ "noCode.eventOrchestrator.flowName": "Flow-Name",
1577
+ "noCode.eventOrchestrator.trigger": "Auslöser",
1578
+ "noCode.eventOrchestrator.triggerType": "Auslösertyp",
1579
+ "noCode.eventOrchestrator.addHandler": "Handler hinzufügen",
1580
+ "noCode.eventOrchestrator.editHandler": "Handler bearbeiten",
1581
+ "noCode.eventOrchestrator.deleteHandler": "Handler löschen",
1582
+ "noCode.eventOrchestrator.handlerName": "Handler-Name",
1583
+ "noCode.eventOrchestrator.debounce": "Entprellen",
1584
+ "noCode.eventOrchestrator.throttle": "Drosseln",
1585
+ "noCode.eventOrchestrator.delay": "Verzögerung",
1586
+ "noCode.eventOrchestrator.condition": "Bedingung",
1587
+ "noCode.eventOrchestrator.chain": "Ereigniskette",
1588
+ "noCode.testBuilder.title": "Test-Builder",
1589
+ "noCode.testBuilder.newTest": "Neuer Test",
1590
+ "noCode.testBuilder.testName": "Testname",
1591
+ "noCode.testBuilder.testDescription": "Beschreibung",
1592
+ "noCode.testBuilder.addScenario": "Szenario hinzufügen",
1593
+ "noCode.testBuilder.editScenario": "Szenario bearbeiten",
1594
+ "noCode.testBuilder.deleteScenario": "Szenario löschen",
1595
+ "noCode.testBuilder.addAssertion": "Assertion hinzufügen",
1596
+ "noCode.testBuilder.assertionType": "Assertionstyp",
1597
+ "noCode.testBuilder.expected": "Erwarteter Wert",
1598
+ "noCode.testBuilder.actual": "Tatsächlicher Wert",
1599
+ "noCode.testBuilder.mock": "Mock-Konfiguration",
1600
+ "noCode.testBuilder.runTests": "Tests ausführen",
1601
+ "noCode.testBuilder.testsPassed": "Tests bestanden",
1602
+ "noCode.testBuilder.testsFailed": "Tests fehlgeschlagen",
1603
+ "noCode.testBuilder.coverage": "Abdeckung",
1604
+ "noCode.testBuilder.accessibility": "Barrierefreiheitsprüfung",
1605
+ "noCode.codeTemplate.title": "Code-Vorlagen",
1606
+ "noCode.codeTemplate.newTemplate": "Neue Vorlage",
1607
+ "noCode.codeTemplate.templateName": "Vorlagenname",
1608
+ "noCode.codeTemplate.templateEngine": "Vorlagen-Engine",
1609
+ "noCode.codeTemplate.variables": "Variablen",
1610
+ "noCode.codeTemplate.addVariable": "Variable hinzufügen",
1611
+ "noCode.codeTemplate.variableName": "Variablenname",
1612
+ "noCode.codeTemplate.variableType": "Variablentyp",
1613
+ "noCode.codeTemplate.variableDefault": "Standardwert",
1614
+ "noCode.codeTemplate.generateFiles": "Dateien generieren",
1615
+ "noCode.codeTemplate.outputPath": "Ausgabepfad",
1616
+ "noCode.codeTemplate.presets": "Voreinstellungen",
1617
+ "noCode.codeTemplate.presetReact": "React-Komponente",
1618
+ "noCode.codeTemplate.presetNextPage": "Next.js-Seite",
1619
+ "noCode.codeTemplate.presetHook": "Benutzerdefinierter Hook",
1620
+ "noCode.codeTemplate.presetStore": "Store-Modul",
1621
+ "noCode.codePreview.title": "Code-Vorschau",
1622
+ "noCode.codePreview.showDiff": "Unterschiede anzeigen",
1623
+ "noCode.codePreview.hideDiff": "Unterschiede ausblenden",
1624
+ "noCode.codePreview.copyCode": "Code kopieren",
1625
+ "noCode.codePreview.downloadCode": "Code herunterladen",
1626
+ "noCode.codePreview.importCode": "Code importieren",
1627
+ "noCode.codePreview.language": "Sprache",
1628
+ "noCode.codePreview.format": "Code formatieren",
1629
+ "noCode.codePreview.linesChanged": "Geänderte Zeilen",
1630
+ "noCode.codePreview.noChanges": "Keine Änderungen"
1631
+ }, ye = {
1146
1632
  ok: "OK",
1147
1633
  cancel: "Annuler",
1148
1634
  save: "Enregistrer",
@@ -1504,8 +1990,167 @@ const E = [
1504
1990
  "wm.closeAll": "Tout fermer",
1505
1991
  "wm.minimizeAll": "Tout réduire",
1506
1992
  "wm.newWindow": "Nouvelle fenêtre",
1507
- "wm.moveToFront": "Au premier plan"
1508
- }, M = {
1993
+ "wm.moveToFront": "Au premier plan",
1994
+ // No-Code Foundation
1995
+ "noCode.title": "Studio No-Code",
1996
+ "noCode.description": "Créez des applications visuellement",
1997
+ "noCode.newProject": "Nouveau projet",
1998
+ "noCode.openProject": "Ouvrir le projet",
1999
+ "noCode.saveProject": "Enregistrer le projet",
2000
+ "noCode.exportProject": "Exporter le projet",
2001
+ "noCode.importProject": "Importer le projet",
2002
+ "noCode.projectName": "Nom du projet",
2003
+ "noCode.projectSettings": "Paramètres du projet",
2004
+ "noCode.recentProjects": "Projets récents",
2005
+ "noCode.templates": "Modèles",
2006
+ "noCode.preview": "Aperçu",
2007
+ "noCode.codeView": "Vue code",
2008
+ "noCode.splitView": "Vue divisée",
2009
+ "noCode.visualView": "Vue visuelle",
2010
+ "noCode.generate": "Générer le code",
2011
+ "noCode.deploy": "Déployer",
2012
+ "noCode.componentDesigner.title": "Concepteur de composants",
2013
+ "noCode.componentDesigner.newComponent": "Nouveau composant",
2014
+ "noCode.componentDesigner.componentName": "Nom du composant",
2015
+ "noCode.componentDesigner.addProp": "Ajouter une propriété",
2016
+ "noCode.componentDesigner.editProp": "Modifier la propriété",
2017
+ "noCode.componentDesigner.deleteProp": "Supprimer la propriété",
2018
+ "noCode.componentDesigner.propName": "Nom de la propriété",
2019
+ "noCode.componentDesigner.propType": "Type de propriété",
2020
+ "noCode.componentDesigner.propRequired": "Obligatoire",
2021
+ "noCode.componentDesigner.propDefault": "Valeur par défaut",
2022
+ "noCode.componentDesigner.addState": "Ajouter un état",
2023
+ "noCode.componentDesigner.stateName": "Nom de l'état",
2024
+ "noCode.componentDesigner.stateType": "Type d'état",
2025
+ "noCode.componentDesigner.stateDefault": "Valeur initiale",
2026
+ "noCode.componentDesigner.addHook": "Ajouter un hook",
2027
+ "noCode.componentDesigner.hooks": "Hooks",
2028
+ "noCode.componentDesigner.template": "Modèle",
2029
+ "noCode.componentDesigner.styles": "Styles",
2030
+ "noCode.componentDesigner.events": "Événements",
2031
+ "noCode.componentDesigner.palette": "Palette de composants",
2032
+ "noCode.componentDesigner.dragDrop": "Glissez les composants ici",
2033
+ "noCode.pageBuilder.title": "Créateur de pages",
2034
+ "noCode.pageBuilder.newPage": "Nouvelle page",
2035
+ "noCode.pageBuilder.pageName": "Nom de la page",
2036
+ "noCode.pageBuilder.pageRoute": "Chemin de route",
2037
+ "noCode.pageBuilder.addSection": "Ajouter une section",
2038
+ "noCode.pageBuilder.editSection": "Modifier la section",
2039
+ "noCode.pageBuilder.deleteSection": "Supprimer la section",
2040
+ "noCode.pageBuilder.sectionLayout": "Disposition de section",
2041
+ "noCode.pageBuilder.columns": "Colonnes",
2042
+ "noCode.pageBuilder.responsive": "Réactif",
2043
+ "noCode.pageBuilder.mobile": "Mobile",
2044
+ "noCode.pageBuilder.tablet": "Tablette",
2045
+ "noCode.pageBuilder.desktop": "Bureau",
2046
+ "noCode.pageBuilder.showGrid": "Afficher la grille",
2047
+ "noCode.pageBuilder.hideGrid": "Masquer la grille",
2048
+ "noCode.pageBuilder.metadata": "Métadonnées de page",
2049
+ "noCode.pageBuilder.seo": "Paramètres SEO",
2050
+ "noCode.stateDesigner.title": "Concepteur d'état",
2051
+ "noCode.stateDesigner.newStore": "Nouveau store",
2052
+ "noCode.stateDesigner.storeName": "Nom du store",
2053
+ "noCode.stateDesigner.storeType": "Type de store",
2054
+ "noCode.stateDesigner.addState": "Ajouter un champ d'état",
2055
+ "noCode.stateDesigner.addAction": "Ajouter une action",
2056
+ "noCode.stateDesigner.editAction": "Modifier l'action",
2057
+ "noCode.stateDesigner.deleteAction": "Supprimer l'action",
2058
+ "noCode.stateDesigner.actionName": "Nom de l'action",
2059
+ "noCode.stateDesigner.actionParams": "Paramètres",
2060
+ "noCode.stateDesigner.actionBody": "Corps de l'action",
2061
+ "noCode.stateDesigner.asyncAction": "Action asynchrone",
2062
+ "noCode.stateDesigner.addSelector": "Ajouter un sélecteur",
2063
+ "noCode.stateDesigner.selectorName": "Nom du sélecteur",
2064
+ "noCode.stateDesigner.selectorBody": "Logique du sélecteur",
2065
+ "noCode.stateDesigner.persistence": "Persistance",
2066
+ "noCode.stateDesigner.devtools": "Outils de développement",
2067
+ "noCode.apiFlow.title": "Concepteur API",
2068
+ "noCode.apiFlow.newEndpoint": "Nouveau endpoint",
2069
+ "noCode.apiFlow.endpointUrl": "URL du endpoint",
2070
+ "noCode.apiFlow.method": "Méthode HTTP",
2071
+ "noCode.apiFlow.headers": "En-têtes",
2072
+ "noCode.apiFlow.body": "Corps de requête",
2073
+ "noCode.apiFlow.response": "Réponse",
2074
+ "noCode.apiFlow.auth": "Authentification",
2075
+ "noCode.apiFlow.authType": "Type d'authentification",
2076
+ "noCode.apiFlow.bearerToken": "Token Bearer",
2077
+ "noCode.apiFlow.apiKey": "Clé API",
2078
+ "noCode.apiFlow.testEndpoint": "Tester le endpoint",
2079
+ "noCode.apiFlow.mockResponse": "Réponse simulée",
2080
+ "noCode.apiFlow.errorHandling": "Gestion des erreurs",
2081
+ "noCode.apiFlow.retry": "Politique de réessai",
2082
+ "noCode.apiFlow.cache": "Cache",
2083
+ "noCode.dataMapper.title": "Mappeur de données",
2084
+ "noCode.dataMapper.sourceSchema": "Schéma source",
2085
+ "noCode.dataMapper.targetSchema": "Schéma cible",
2086
+ "noCode.dataMapper.addMapping": "Ajouter un mapping",
2087
+ "noCode.dataMapper.editMapping": "Modifier le mapping",
2088
+ "noCode.dataMapper.deleteMapping": "Supprimer le mapping",
2089
+ "noCode.dataMapper.sourceField": "Champ source",
2090
+ "noCode.dataMapper.targetField": "Champ cible",
2091
+ "noCode.dataMapper.transform": "Transformation",
2092
+ "noCode.dataMapper.validation": "Validation",
2093
+ "noCode.dataMapper.testData": "Données de test",
2094
+ "noCode.dataMapper.preview": "Aperçu du résultat",
2095
+ "noCode.dataMapper.autoMap": "Mapping automatique",
2096
+ "noCode.eventOrchestrator.title": "Orchestrateur d'événements",
2097
+ "noCode.eventOrchestrator.newFlow": "Nouveau flux",
2098
+ "noCode.eventOrchestrator.flowName": "Nom du flux",
2099
+ "noCode.eventOrchestrator.trigger": "Déclencheur",
2100
+ "noCode.eventOrchestrator.triggerType": "Type de déclencheur",
2101
+ "noCode.eventOrchestrator.addHandler": "Ajouter un handler",
2102
+ "noCode.eventOrchestrator.editHandler": "Modifier le handler",
2103
+ "noCode.eventOrchestrator.deleteHandler": "Supprimer le handler",
2104
+ "noCode.eventOrchestrator.handlerName": "Nom du handler",
2105
+ "noCode.eventOrchestrator.debounce": "Rebond",
2106
+ "noCode.eventOrchestrator.throttle": "Limitation",
2107
+ "noCode.eventOrchestrator.delay": "Délai",
2108
+ "noCode.eventOrchestrator.condition": "Condition",
2109
+ "noCode.eventOrchestrator.chain": "Chaîne d'événements",
2110
+ "noCode.testBuilder.title": "Créateur de tests",
2111
+ "noCode.testBuilder.newTest": "Nouveau test",
2112
+ "noCode.testBuilder.testName": "Nom du test",
2113
+ "noCode.testBuilder.testDescription": "Description",
2114
+ "noCode.testBuilder.addScenario": "Ajouter un scénario",
2115
+ "noCode.testBuilder.editScenario": "Modifier le scénario",
2116
+ "noCode.testBuilder.deleteScenario": "Supprimer le scénario",
2117
+ "noCode.testBuilder.addAssertion": "Ajouter une assertion",
2118
+ "noCode.testBuilder.assertionType": "Type d'assertion",
2119
+ "noCode.testBuilder.expected": "Valeur attendue",
2120
+ "noCode.testBuilder.actual": "Valeur réelle",
2121
+ "noCode.testBuilder.mock": "Configuration des mocks",
2122
+ "noCode.testBuilder.runTests": "Exécuter les tests",
2123
+ "noCode.testBuilder.testsPassed": "Tests réussis",
2124
+ "noCode.testBuilder.testsFailed": "Tests échoués",
2125
+ "noCode.testBuilder.coverage": "Couverture",
2126
+ "noCode.testBuilder.accessibility": "Vérification d'accessibilité",
2127
+ "noCode.codeTemplate.title": "Modèles de code",
2128
+ "noCode.codeTemplate.newTemplate": "Nouveau modèle",
2129
+ "noCode.codeTemplate.templateName": "Nom du modèle",
2130
+ "noCode.codeTemplate.templateEngine": "Moteur de modèle",
2131
+ "noCode.codeTemplate.variables": "Variables",
2132
+ "noCode.codeTemplate.addVariable": "Ajouter une variable",
2133
+ "noCode.codeTemplate.variableName": "Nom de variable",
2134
+ "noCode.codeTemplate.variableType": "Type de variable",
2135
+ "noCode.codeTemplate.variableDefault": "Valeur par défaut",
2136
+ "noCode.codeTemplate.generateFiles": "Générer les fichiers",
2137
+ "noCode.codeTemplate.outputPath": "Chemin de sortie",
2138
+ "noCode.codeTemplate.presets": "Préréglages",
2139
+ "noCode.codeTemplate.presetReact": "Composant React",
2140
+ "noCode.codeTemplate.presetNextPage": "Page Next.js",
2141
+ "noCode.codeTemplate.presetHook": "Hook personnalisé",
2142
+ "noCode.codeTemplate.presetStore": "Module store",
2143
+ "noCode.codePreview.title": "Aperçu du code",
2144
+ "noCode.codePreview.showDiff": "Afficher les différences",
2145
+ "noCode.codePreview.hideDiff": "Masquer les différences",
2146
+ "noCode.codePreview.copyCode": "Copier le code",
2147
+ "noCode.codePreview.downloadCode": "Télécharger le code",
2148
+ "noCode.codePreview.importCode": "Importer le code",
2149
+ "noCode.codePreview.language": "Langage",
2150
+ "noCode.codePreview.format": "Formater le code",
2151
+ "noCode.codePreview.linesChanged": "Lignes modifiées",
2152
+ "noCode.codePreview.noChanges": "Aucune modification"
2153
+ }, Ee = {
1509
2154
  ok: "OK",
1510
2155
  cancel: "Cancelar",
1511
2156
  save: "Guardar",
@@ -1868,7 +2513,7 @@ const E = [
1868
2513
  "wm.minimizeAll": "Minimizar todo",
1869
2514
  "wm.newWindow": "Nueva ventana",
1870
2515
  "wm.moveToFront": "Al frente"
1871
- }, O = {
2516
+ }, Se = {
1872
2517
  ok: "OK",
1873
2518
  cancel: "Annulla",
1874
2519
  save: "Salva",
@@ -1982,7 +2627,7 @@ const E = [
1982
2627
  "lang.ko": "Coreano",
1983
2628
  "lang.zh": "Cinese",
1984
2629
  "lang.ar": "Arabo"
1985
- }, N = {
2630
+ }, ze = {
1986
2631
  ok: "OK",
1987
2632
  cancel: "Cancelar",
1988
2633
  save: "Salvar",
@@ -2345,7 +2990,7 @@ const E = [
2345
2990
  "wm.minimizeAll": "Minimizar todos",
2346
2991
  "wm.newWindow": "Nova janela",
2347
2992
  "wm.moveToFront": "Trazer para frente"
2348
- }, L = {
2993
+ }, De = {
2349
2994
  ok: "OK",
2350
2995
  cancel: "Annuleren",
2351
2996
  save: "Opslaan",
@@ -2430,7 +3075,7 @@ const E = [
2430
3075
  "lang.ko": "Koreaans",
2431
3076
  "lang.zh": "Chinees",
2432
3077
  "lang.ar": "Arabisch"
2433
- }, I = {
3078
+ }, Ae = {
2434
3079
  ok: "OK",
2435
3080
  cancel: "Avbryt",
2436
3081
  save: "Spara",
@@ -2500,7 +3145,7 @@ const E = [
2500
3145
  "lang.ko": "Koreanska",
2501
3146
  "lang.zh": "Kinesiska",
2502
3147
  "lang.ar": "Arabiska"
2503
- }, U = {
3148
+ }, xe = {
2504
3149
  ok: "OK",
2505
3150
  cancel: "Avbryt",
2506
3151
  save: "Lagre",
@@ -2563,7 +3208,7 @@ const E = [
2563
3208
  "lang.ko": "Koreansk",
2564
3209
  "lang.zh": "Kinesisk",
2565
3210
  "lang.ar": "Arabisk"
2566
- }, W = {
3211
+ }, Te = {
2567
3212
  ok: "OK",
2568
3213
  cancel: "Annuller",
2569
3214
  save: "Gem",
@@ -2626,7 +3271,7 @@ const E = [
2626
3271
  "lang.ko": "Koreansk",
2627
3272
  "lang.zh": "Kinesisk",
2628
3273
  "lang.ar": "Arabisk"
2629
- }, K = {
3274
+ }, Pe = {
2630
3275
  ok: "OK",
2631
3276
  cancel: "Peruuta",
2632
3277
  save: "Tallenna",
@@ -2689,7 +3334,7 @@ const E = [
2689
3334
  "lang.ko": "Korea",
2690
3335
  "lang.zh": "Kiina",
2691
3336
  "lang.ar": "Arabia"
2692
- }, Z = {
3337
+ }, je = {
2693
3338
  ok: "OK",
2694
3339
  cancel: "Zrušit",
2695
3340
  save: "Uložit",
@@ -3052,7 +3697,7 @@ const E = [
3052
3697
  "wm.minimizeAll": "Minimalizovat vše",
3053
3698
  "wm.newWindow": "Nové okno",
3054
3699
  "wm.moveToFront": "Přenést dopředu"
3055
- }, q = {
3700
+ }, Fe = {
3056
3701
  ok: "OK",
3057
3702
  cancel: "Zrušiť",
3058
3703
  save: "Uložiť",
@@ -3115,7 +3760,7 @@ const E = [
3115
3760
  "lang.ko": "Kórejčina",
3116
3761
  "lang.zh": "Čínština",
3117
3762
  "lang.ar": "Arabčina"
3118
- }, B = {
3763
+ }, Ne = {
3119
3764
  ok: "OK",
3120
3765
  cancel: "Mégse",
3121
3766
  save: "Mentés",
@@ -3178,7 +3823,7 @@ const E = [
3178
3823
  "lang.ko": "Koreai",
3179
3824
  "lang.zh": "Kínai",
3180
3825
  "lang.ar": "Arab"
3181
- }, V = {
3826
+ }, Me = {
3182
3827
  ok: "OK",
3183
3828
  cancel: "Anulare",
3184
3829
  save: "Salvare",
@@ -3233,7 +3878,7 @@ const E = [
3233
3878
  "lang.ko": "Coreeană",
3234
3879
  "lang.zh": "Chineză",
3235
3880
  "lang.ar": "Arabă"
3236
- }, H = {
3881
+ }, Oe = {
3237
3882
  ok: "OK",
3238
3883
  cancel: "Отказ",
3239
3884
  save: "Запис",
@@ -3288,7 +3933,7 @@ const E = [
3288
3933
  "lang.ko": "Корейски",
3289
3934
  "lang.zh": "Китайски",
3290
3935
  "lang.ar": "Арабски"
3291
- }, G = {
3936
+ }, Re = {
3292
3937
  ok: "OK",
3293
3938
  cancel: "Скасувати",
3294
3939
  save: "Зберегти",
@@ -3651,7 +4296,7 @@ const E = [
3651
4296
  "wm.minimizeAll": "Згорнути всі",
3652
4297
  "wm.newWindow": "Нове вікно",
3653
4298
  "wm.moveToFront": "На передній план"
3654
- }, J = {
4299
+ }, Le = {
3655
4300
  ok: "OK",
3656
4301
  cancel: "キャンセル",
3657
4302
  save: "保存",
@@ -4014,7 +4659,7 @@ const E = [
4014
4659
  "wm.minimizeAll": "すべて最小化",
4015
4660
  "wm.newWindow": "新しいウィンドウ",
4016
4661
  "wm.moveToFront": "最前面に移動"
4017
- }, $ = {
4662
+ }, Be = {
4018
4663
  ok: "확인",
4019
4664
  cancel: "취소",
4020
4665
  save: "저장",
@@ -4377,7 +5022,7 @@ const E = [
4377
5022
  "wm.minimizeAll": "모두 최소화",
4378
5023
  "wm.newWindow": "새 창",
4379
5024
  "wm.moveToFront": "맨 앞으로"
4380
- }, _ = {
5025
+ }, Ie = {
4381
5026
  ok: "确定",
4382
5027
  cancel: "取消",
4383
5028
  save: "保存",
@@ -4740,7 +5385,7 @@ const E = [
4740
5385
  "wm.minimizeAll": "最小化全部",
4741
5386
  "wm.newWindow": "新建窗口",
4742
5387
  "wm.moveToFront": "置于最前"
4743
- }, Y = {
5388
+ }, Ue = {
4744
5389
  ok: "حسناً",
4745
5390
  cancel: "إلغاء",
4746
5391
  save: "حفظ",
@@ -5103,75 +5748,75 @@ const E = [
5103
5748
  "wm.minimizeAll": "تصغير الكل",
5104
5749
  "wm.newWindow": "نافذة جديدة",
5105
5750
  "wm.moveToFront": "نقل إلى الأمام"
5106
- }, c = {
5107
- en: P,
5108
- pl: T,
5109
- de: F,
5110
- fr: R,
5111
- es: M,
5112
- it: O,
5113
- pt: N,
5114
- nl: L,
5115
- sv: I,
5116
- no: U,
5117
- da: W,
5118
- fi: K,
5119
- cs: Z,
5120
- sk: q,
5121
- hu: B,
5122
- ro: V,
5123
- bg: H,
5124
- uk: G,
5125
- ja: J,
5126
- ko: $,
5127
- zh: _,
5128
- ar: Y
5129
- }, Q = (e, o) => o, z = y(Q), xe = ({
5751
+ }, v = {
5752
+ en: ve,
5753
+ pl: be,
5754
+ de: Ce,
5755
+ fr: ye,
5756
+ es: Ee,
5757
+ it: Se,
5758
+ pt: ze,
5759
+ nl: De,
5760
+ sv: Ae,
5761
+ no: xe,
5762
+ da: Te,
5763
+ fi: Pe,
5764
+ cs: je,
5765
+ sk: Fe,
5766
+ hu: Ne,
5767
+ ro: Me,
5768
+ bg: Oe,
5769
+ uk: Re,
5770
+ ja: Le,
5771
+ ko: Be,
5772
+ zh: Ie,
5773
+ ar: Ue
5774
+ }, Ve = (e, o) => o, X = I(Ve), Oo = ({
5130
5775
  t: e,
5131
5776
  lang: o = "en",
5132
- overrides: n,
5777
+ overrides: t,
5133
5778
  children: a
5134
5779
  }) => {
5135
- const r = u(() => {
5780
+ const n = w(() => {
5136
5781
  if (e) return e;
5137
- const t = c[o] ?? c.en, i = n ? { ...t, ...n } : t;
5138
- return (l, s) => i[l] ?? s;
5139
- }, [e, o, n]);
5140
- return /* @__PURE__ */ w(z.Provider, { value: r, children: a });
5782
+ const r = v[o] ?? v.en, i = t ? { ...r, ...t } : r;
5783
+ return (s, d) => i[s] ?? d;
5784
+ }, [e, o, t]);
5785
+ return /* @__PURE__ */ B(X.Provider, { value: n, children: a });
5141
5786
  };
5142
- function Se() {
5143
- return { t: k(z) };
5787
+ function Ro() {
5788
+ return { t: F(X) };
5144
5789
  }
5145
- function Ae(e = "en", o) {
5146
- const n = c[e] ?? c.en, a = o ? { ...n, ...o } : n;
5147
- return (r, t) => a[r] ?? t;
5790
+ function Lo(e = "en", o) {
5791
+ const t = v[e] ?? v.en, a = o ? { ...t, ...o } : t;
5792
+ return (n, r) => a[n] ?? r;
5148
5793
  }
5149
- function Ce(e, o = {}) {
5150
- let n = e.replace(/\{(\w+)\}/g, (a, r) => {
5151
- const t = o[r];
5152
- return t !== void 0 ? String(t) : a;
5794
+ function Bo(e, o = {}) {
5795
+ let t = e.replace(/\{(\w+)\}/g, (a, n) => {
5796
+ const r = o[n];
5797
+ return r !== void 0 ? String(r) : a;
5153
5798
  });
5154
- return n = n.replace(
5799
+ return t = t.replace(
5155
5800
  /\{(\w+),\s*plural,\s*one\{([^}]+)\}\s*other\{([^}]+)\}\}/g,
5156
- (a, r, t, i) => {
5157
- const l = o[r];
5158
- return typeof l != "number" ? a : (l === 1 ? t : i).replace(/#/g, String(l));
5801
+ (a, n, r, i) => {
5802
+ const s = o[n];
5803
+ return typeof s != "number" ? a : (s === 1 ? r : i).replace(/#/g, String(s));
5159
5804
  }
5160
- ), n;
5805
+ ), t;
5161
5806
  }
5162
- function X(e) {
5163
- return E.includes(e);
5807
+ function He(e) {
5808
+ return j.includes(e);
5164
5809
  }
5165
- function De() {
5810
+ function Io() {
5166
5811
  var o;
5167
5812
  if (typeof navigator > "u") return "en";
5168
5813
  const e = (o = navigator.language) == null ? void 0 : o.split("-")[0];
5169
- return X(e) ? e : "en";
5814
+ return He(e) ? e : "en";
5170
5815
  }
5171
- function x(e, o) {
5172
- var t;
5173
- const n = Math.abs(e), a = Math.floor(n), r = e.toString().includes(".") && ((t = e.toString().split(".")[1]) == null ? void 0 : t.length) || 0;
5174
- switch (r > 0 && parseInt(e.toString().split(".")[1] || "0", 10), o) {
5816
+ function ee(e, o) {
5817
+ var r;
5818
+ const t = Math.abs(e), a = Math.floor(t), n = e.toString().includes(".") && ((r = e.toString().split(".")[1]) == null ? void 0 : r.length) || 0;
5819
+ switch (n > 0 && parseInt(e.toString().split(".")[1] || "0", 10), o) {
5175
5820
  // ── English-like (one/other) ───────────────────────────
5176
5821
  case "en":
5177
5822
  case "de":
@@ -5183,29 +5828,29 @@ function x(e, o) {
5183
5828
  case "it":
5184
5829
  case "es":
5185
5830
  case "pt":
5186
- return a === 1 && r === 0 ? "one" : "other";
5831
+ return a === 1 && n === 0 ? "one" : "other";
5187
5832
  // ── French (one/many/other) ────────────────────────────
5188
5833
  case "fr":
5189
- return a === 0 || a === 1 ? "one" : n >= 1e6 ? "many" : "other";
5834
+ return a === 0 || a === 1 ? "one" : t >= 1e6 ? "many" : "other";
5190
5835
  // ── Polish (Slavic: one/few/many/other) ────────────────
5191
5836
  case "pl":
5192
- return a === 1 && r === 0 ? "one" : r === 0 && a % 10 >= 2 && a % 10 <= 4 && !(a % 100 >= 12 && a % 100 <= 14) ? "few" : r === 0 && a !== 1 && (a % 10 === 0 || a % 10 === 1) || r === 0 && a % 10 >= 5 && a % 10 <= 9 || r === 0 && a % 100 >= 12 && a % 100 <= 14 ? "many" : "other";
5837
+ return a === 1 && n === 0 ? "one" : n === 0 && a % 10 >= 2 && a % 10 <= 4 && !(a % 100 >= 12 && a % 100 <= 14) ? "few" : n === 0 && a !== 1 && (a % 10 === 0 || a % 10 === 1) || n === 0 && a % 10 >= 5 && a % 10 <= 9 || n === 0 && a % 100 >= 12 && a % 100 <= 14 ? "many" : "other";
5193
5838
  // ── Ukrainian (Slavic: one/few/many/other) ─────────────
5194
5839
  case "uk":
5195
- return r === 0 && a % 10 === 1 && a % 100 !== 11 ? "one" : r === 0 && a % 10 >= 2 && a % 10 <= 4 && !(a % 100 >= 12 && a % 100 <= 14) ? "few" : r === 0 && a % 10 === 0 || r === 0 && a % 10 >= 5 && a % 10 <= 9 || r === 0 && a % 100 >= 11 && a % 100 <= 14 ? "many" : "other";
5840
+ return n === 0 && a % 10 === 1 && a % 100 !== 11 ? "one" : n === 0 && a % 10 >= 2 && a % 10 <= 4 && !(a % 100 >= 12 && a % 100 <= 14) ? "few" : n === 0 && a % 10 === 0 || n === 0 && a % 10 >= 5 && a % 10 <= 9 || n === 0 && a % 100 >= 11 && a % 100 <= 14 ? "many" : "other";
5196
5841
  // ── Bulgarian (one/other) ──────────────────────────────
5197
5842
  case "bg":
5198
5843
  return e === 1 ? "one" : "other";
5199
5844
  // ── Czech/Slovak (Slavic: one/few/many/other) ──────────
5200
5845
  case "cs":
5201
5846
  case "sk":
5202
- return a === 1 && r === 0 ? "one" : a >= 2 && a <= 4 && r === 0 ? "few" : r !== 0 ? "many" : "other";
5847
+ return a === 1 && n === 0 ? "one" : a >= 2 && a <= 4 && n === 0 ? "few" : n !== 0 ? "many" : "other";
5203
5848
  // ── Hungarian (one/other) ──────────────────────────────
5204
5849
  case "hu":
5205
5850
  return e === 1 ? "one" : "other";
5206
5851
  // ── Romanian (one/few/other) ───────────────────────────
5207
5852
  case "ro":
5208
- return a === 1 && r === 0 ? "one" : r !== 0 || e === 0 || e % 100 >= 2 && e % 100 <= 19 ? "few" : "other";
5853
+ return a === 1 && n === 0 ? "one" : n !== 0 || e === 0 || e % 100 >= 2 && e % 100 <= 19 ? "few" : "other";
5209
5854
  // ── Japanese/Korean/Chinese (other only) ─────────────────
5210
5855
  case "ja":
5211
5856
  case "ko":
@@ -5220,10 +5865,10 @@ function x(e, o) {
5220
5865
  return i >= 3 && i <= 10 ? "few" : i >= 11 && i <= 99 ? "many" : "other";
5221
5866
  }
5222
5867
  default:
5223
- return a === 1 && r === 0 ? "one" : "other";
5868
+ return a === 1 && n === 0 ? "one" : "other";
5224
5869
  }
5225
5870
  }
5226
- function S(e, o) {
5871
+ function oe(e, o) {
5227
5872
  switch (o) {
5228
5873
  // ── English ────────────────────────────────────────────
5229
5874
  case "en":
@@ -5252,28 +5897,28 @@ function S(e, o) {
5252
5897
  return "other";
5253
5898
  }
5254
5899
  }
5255
- function ee(e) {
5256
- var r;
5900
+ function We(e) {
5901
+ var n;
5257
5902
  if (e = e.trim(), !e.includes(","))
5258
5903
  return { type: "simple", name: e };
5259
- const o = e.split(",").map((t) => t.trim()), n = o[0], a = (r = o[1]) == null ? void 0 : r.toLowerCase();
5260
- if (!a || !n) return null;
5904
+ const o = e.split(",").map((r) => r.trim()), t = o[0], a = (n = o[1]) == null ? void 0 : n.toLowerCase();
5905
+ if (!a || !t) return null;
5261
5906
  if (a === "number")
5262
- return { type: "number", name: n, style: o[2] };
5907
+ return { type: "number", name: t, style: o[2] };
5263
5908
  if (a === "date" || a === "time")
5264
- return { type: a, name: n, style: o[2] || "medium" };
5909
+ return { type: a, name: t, style: o[2] || "medium" };
5265
5910
  if (a === "plural" || a === "select" || a === "selectordinal") {
5266
- const t = o.slice(2).join(",").trim(), i = {}, l = /(=?\w+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g;
5267
- let s;
5268
- for (; (s = l.exec(t)) !== null; )
5269
- i[s[1]] = s[2];
5270
- return { type: a, name: n, options: i };
5911
+ const r = o.slice(2).join(",").trim(), i = {}, s = /(=?\w+)\s*\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g;
5912
+ let d;
5913
+ for (; (d = s.exec(r)) !== null; )
5914
+ i[d[1]] = d[2];
5915
+ return { type: a, name: t, options: i };
5271
5916
  }
5272
- return { type: "simple", name: n };
5917
+ return { type: "simple", name: t };
5273
5918
  }
5274
- function ae(e, o, n) {
5919
+ function Ke(e, o, t) {
5275
5920
  const a = {};
5276
- switch (n) {
5921
+ switch (t) {
5277
5922
  case "currency":
5278
5923
  a.style = "currency", a.currency = "USD";
5279
5924
  break;
@@ -5286,103 +5931,103 @@ function ae(e, o, n) {
5286
5931
  }
5287
5932
  return new Intl.NumberFormat(o, a).format(e);
5288
5933
  }
5289
- function oe(e, o, n) {
5934
+ function Ze(e, o, t) {
5290
5935
  const a = e instanceof Date ? e : new Date(e);
5291
- let r;
5292
- switch (n) {
5936
+ let n;
5937
+ switch (t) {
5293
5938
  case "short":
5294
- r = { dateStyle: "short" };
5939
+ n = { dateStyle: "short" };
5295
5940
  break;
5296
5941
  case "long":
5297
- r = { dateStyle: "long" };
5942
+ n = { dateStyle: "long" };
5298
5943
  break;
5299
5944
  case "full":
5300
- r = { dateStyle: "full" };
5945
+ n = { dateStyle: "full" };
5301
5946
  break;
5302
5947
  case "medium":
5303
5948
  default:
5304
- r = { dateStyle: "medium" };
5949
+ n = { dateStyle: "medium" };
5305
5950
  break;
5306
5951
  }
5307
- return new Intl.DateTimeFormat(o, r).format(a);
5952
+ return new Intl.DateTimeFormat(o, n).format(a);
5308
5953
  }
5309
- function re(e, o, n) {
5954
+ function qe(e, o, t) {
5310
5955
  const a = e instanceof Date ? e : new Date(e);
5311
- let r;
5312
- switch (n) {
5956
+ let n;
5957
+ switch (t) {
5313
5958
  case "short":
5314
- r = { timeStyle: "short" };
5959
+ n = { timeStyle: "short" };
5315
5960
  break;
5316
5961
  case "long":
5317
- r = { timeStyle: "long" };
5962
+ n = { timeStyle: "long" };
5318
5963
  break;
5319
5964
  case "full":
5320
- r = { timeStyle: "full" };
5965
+ n = { timeStyle: "full" };
5321
5966
  break;
5322
5967
  case "medium":
5323
5968
  default:
5324
- r = { timeStyle: "medium" };
5969
+ n = { timeStyle: "medium" };
5325
5970
  break;
5326
5971
  }
5327
- return new Intl.DateTimeFormat(o, r).format(a);
5972
+ return new Intl.DateTimeFormat(o, n).format(a);
5328
5973
  }
5329
- function h(e, o, n) {
5330
- return e.replace(/#/g, String(n));
5974
+ function V(e, o, t) {
5975
+ return e.replace(/#/g, String(t));
5331
5976
  }
5332
- function ne(e, o = {}, n = {}) {
5333
- const a = n.lang || "en", r = n.locale || a, t = /\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g;
5334
- return e.replace(t, (i, l) => {
5335
- const s = ee(l);
5336
- if (!s) return i;
5337
- const d = o[s.name];
5338
- if (d === void 0) return i;
5339
- switch (s.type) {
5977
+ function Ge(e, o = {}, t = {}) {
5978
+ const a = t.lang || "en", n = t.locale || a, r = /\{([^{}]*(?:\{[^{}]*\}[^{}]*)*)\}/g;
5979
+ return e.replace(r, (i, s) => {
5980
+ const d = We(s);
5981
+ if (!d) return i;
5982
+ const l = o[d.name];
5983
+ if (l === void 0) return i;
5984
+ switch (d.type) {
5340
5985
  case "simple":
5341
- return String(d);
5986
+ return String(l);
5342
5987
  case "number":
5343
- return typeof d != "number" ? i : ae(d, r, s.style);
5988
+ return typeof l != "number" ? i : Ke(l, n, d.style);
5344
5989
  case "date":
5345
- return oe(d, r, s.style);
5990
+ return Ze(l, n, d.style);
5346
5991
  case "time":
5347
- return re(d, r, s.style);
5992
+ return qe(l, n, d.style);
5348
5993
  case "plural": {
5349
- if (typeof d != "number" || !s.options) return i;
5350
- const m = x(d, a), p = `=${d}`, D = s.options[p] ?? s.options[m] ?? s.options.other ?? "";
5351
- return h(D, s.name, d);
5994
+ if (typeof l != "number" || !d.options) return i;
5995
+ const m = ee(l, a), f = `=${l}`, u = d.options[f] ?? d.options[m] ?? d.options.other ?? "";
5996
+ return V(u, d.name, l);
5352
5997
  }
5353
5998
  case "selectordinal": {
5354
- if (typeof d != "number" || !s.options) return i;
5355
- const m = S(d, a), p = s.options[m] ?? s.options.other ?? "";
5356
- return h(p, s.name, d);
5999
+ if (typeof l != "number" || !d.options) return i;
6000
+ const m = oe(l, a), f = d.options[m] ?? d.options.other ?? "";
6001
+ return V(f, d.name, l);
5357
6002
  }
5358
6003
  case "select": {
5359
- if (!s.options) return i;
5360
- const m = s.options[String(d)] ?? s.options.other ?? "";
5361
- return h(m, s.name, d);
6004
+ if (!d.options) return i;
6005
+ const m = d.options[String(l)] ?? d.options.other ?? "";
6006
+ return V(m, d.name, l);
5362
6007
  }
5363
6008
  default:
5364
6009
  return i;
5365
6010
  }
5366
6011
  });
5367
6012
  }
5368
- function je(e, o = "en") {
5369
- return function(a, r, t) {
5370
- const i = e[a] ?? r;
5371
- return t ? ne(i, t, { lang: o }) : i;
6013
+ function Uo(e, o = "en") {
6014
+ return function(a, n, r) {
6015
+ const i = e[a] ?? n;
6016
+ return r ? Ge(i, r, { lang: o }) : i;
5372
6017
  };
5373
6018
  }
5374
- function Pe(e, o, n = "en") {
5375
- const a = x(e, n);
6019
+ function Vo(e, o, t = "en") {
6020
+ const a = ee(e, t);
5376
6021
  return (o[a] ?? o.other).replace(/#/g, String(e));
5377
6022
  }
5378
- function Te(e, o, n = "en") {
5379
- const a = S(e, n);
6023
+ function Ho(e, o, t = "en") {
6024
+ const a = oe(e, t);
5380
6025
  return (o[a] ?? o.other).replace(/#/g, String(e));
5381
6026
  }
5382
- function Fe(e, o) {
6027
+ function Wo(e, o) {
5383
6028
  return o[e] ?? o.other;
5384
6029
  }
5385
- const te = [
6030
+ const $e = [
5386
6031
  "ar",
5387
6032
  // Arabic
5388
6033
  "he",
@@ -5396,27 +6041,27 @@ const te = [
5396
6041
  "ps"
5397
6042
  // Pashto
5398
6043
  ];
5399
- function A(e) {
5400
- return te.includes(e);
6044
+ function ae(e) {
6045
+ return $e.includes(e);
5401
6046
  }
5402
- function ie(e) {
5403
- return A(e) ? "rtl" : "ltr";
6047
+ function Je(e) {
6048
+ return ae(e) ? "rtl" : "ltr";
5404
6049
  }
5405
- function se(e) {
6050
+ function _e(e) {
5406
6051
  if (typeof document > "u") return;
5407
- const o = ie(e);
6052
+ const o = Je(e);
5408
6053
  document.documentElement.setAttribute("dir", o), document.documentElement.setAttribute("lang", e);
5409
6054
  }
5410
- function Re() {
6055
+ function Ko() {
5411
6056
  return typeof document > "u" ? "ltr" : document.documentElement.getAttribute("dir") || "ltr";
5412
6057
  }
5413
- function le(e, o) {
6058
+ function Ye(e, o) {
5414
6059
  return o ? e.rtl : e.ltr;
5415
6060
  }
5416
- function Me(e) {
6061
+ function Zo(e) {
5417
6062
  return e === "left" ? "right" : "left";
5418
6063
  }
5419
- function de(e, o) {
6064
+ function Qe(e, o) {
5420
6065
  return o && {
5421
6066
  left: "right",
5422
6067
  right: "left",
@@ -5426,7 +6071,7 @@ function de(e, o) {
5426
6071
  "flex-end": "flex-start"
5427
6072
  }[e] || e;
5428
6073
  }
5429
- function ce(e) {
6074
+ function Xe(e) {
5430
6075
  return {
5431
6076
  // Margins
5432
6077
  "margin-left": "margin-inline-start",
@@ -5456,36 +6101,36 @@ function ce(e) {
5456
6101
  "text-align: right": "text-align: end"
5457
6102
  }[e] || e;
5458
6103
  }
5459
- const v = y({
6104
+ const q = I({
5460
6105
  dir: "ltr",
5461
6106
  isRTL: !1,
5462
6107
  flip: (e) => e,
5463
6108
  value: (e) => e.ltr
5464
- }), Oe = ({
6109
+ }), qo = ({
5465
6110
  lang: e,
5466
6111
  autoSetDocument: o = !0,
5467
- children: n
6112
+ children: t
5468
6113
  }) => {
5469
- const a = A(e), r = a ? "rtl" : "ltr";
5470
- j(() => {
5471
- o && se(e);
6114
+ const a = ae(e), n = a ? "rtl" : "ltr";
6115
+ L(() => {
6116
+ o && _e(e);
5472
6117
  }, [e, o]);
5473
- const t = u(() => ({
5474
- dir: r,
6118
+ const r = w(() => ({
6119
+ dir: n,
5475
6120
  isRTL: a,
5476
- flip: (i) => de(i, a),
5477
- value: (i) => le(i, a)
5478
- }), [r, a]);
5479
- return /* @__PURE__ */ w(v.Provider, { value: t, children: n });
6121
+ flip: (i) => Qe(i, a),
6122
+ value: (i) => Ye(i, a)
6123
+ }), [n, a]);
6124
+ return /* @__PURE__ */ B(q.Provider, { value: r, children: t });
5480
6125
  };
5481
- function Ne() {
5482
- return k(v);
6126
+ function Go() {
6127
+ return F(q);
5483
6128
  }
5484
- function Le() {
5485
- return k(v).isRTL;
6129
+ function $o() {
6130
+ return F(q).isRTL;
5486
6131
  }
5487
- function Ie(e) {
5488
- const o = [], n = [
6132
+ function Jo(e) {
6133
+ const o = [], t = [
5489
6134
  "left",
5490
6135
  "right",
5491
6136
  "margin-left",
@@ -5495,11 +6140,11 @@ function Ie(e) {
5495
6140
  "border-left",
5496
6141
  "border-right"
5497
6142
  ];
5498
- for (const [a, r] of Object.entries(e))
5499
- n.includes(a) && o.push(`Use logical property instead of '${a}' → '${ce(a)}'`), a === "text-align" && (r === "left" || r === "right") && o.push(`Use 'text-align: start/end' instead of 'text-align: ${r}'`), a === "float" && (r === "left" || r === "right") && o.push(`Use flexbox or grid instead of 'float: ${r}' for RTL support`);
6143
+ for (const [a, n] of Object.entries(e))
6144
+ t.includes(a) && o.push(`Use logical property instead of '${a}' → '${Xe(a)}'`), a === "text-align" && (n === "left" || n === "right") && o.push(`Use 'text-align: start/end' instead of 'text-align: ${n}'`), a === "float" && (n === "left" || n === "right") && o.push(`Use flexbox or grid instead of 'float: ${n}' for RTL support`);
5500
6145
  return o;
5501
6146
  }
5502
- const f = {
6147
+ const H = {
5503
6148
  // Direction multiplier: 1 for LTR, -1 for RTL
5504
6149
  dirMultiplier: "--nice-dir-multiplier",
5505
6150
  // Inline start (left in LTR, right in RTL)
@@ -5507,50 +6152,50 @@ const f = {
5507
6152
  // Inline end (right in LTR, left in RTL)
5508
6153
  inlineEnd: "--nice-inline-end"
5509
6154
  };
5510
- function Ue(e) {
6155
+ function _o(e) {
5511
6156
  return {
5512
- [f.dirMultiplier]: e ? "-1" : "1",
5513
- [f.inlineStart]: e ? "right" : "left",
5514
- [f.inlineEnd]: e ? "left" : "right"
6157
+ [H.dirMultiplier]: e ? "-1" : "1",
6158
+ [H.inlineStart]: e ? "right" : "left",
6159
+ [H.inlineEnd]: e ? "left" : "right"
5515
6160
  };
5516
6161
  }
5517
- function We() {
5518
- return Object.keys(c.en);
6162
+ function Yo() {
6163
+ return Object.keys(v.en);
5519
6164
  }
5520
- function me(e) {
6165
+ function eo(e) {
5521
6166
  if (e === "en") return [];
5522
- const o = c.en, n = c[e], a = [];
5523
- for (const [r, t] of Object.entries(o))
5524
- n[r] || a.push({ key: r, englishValue: t });
6167
+ const o = v.en, t = v[e], a = [];
6168
+ for (const [n, r] of Object.entries(o))
6169
+ t[n] || a.push({ key: n, englishValue: r });
5525
6170
  return a;
5526
6171
  }
5527
- function ue(e) {
5528
- const o = Object.keys(c.en).length, n = Object.keys(c[e]).length, a = o - n, r = Math.round(n / o * 100);
6172
+ function oo(e) {
6173
+ const o = Object.keys(v.en).length, t = Object.keys(v[e]).length, a = o - t, n = Math.round(t / o * 100);
5529
6174
  return {
5530
6175
  lang: e,
5531
6176
  totalKeys: o,
5532
- translatedKeys: n,
6177
+ translatedKeys: t,
5533
6178
  missingKeys: a,
5534
- coverage: r
6179
+ coverage: n
5535
6180
  };
5536
6181
  }
5537
- function ge() {
5538
- return E.map((e) => ue(e));
6182
+ function ao() {
6183
+ return j.map((e) => oo(e));
5539
6184
  }
5540
- function Ke(e, o) {
5541
- const n = o.map((a) => {
5542
- const r = a.translated.replace(/'/g, "\\'");
5543
- return ` '${a.key}': '${r}',`;
6185
+ function Qo(e, o) {
6186
+ const t = o.map((a) => {
6187
+ const n = a.translated.replace(/'/g, "\\'");
6188
+ return ` '${a.key}': '${n}',`;
5544
6189
  });
5545
6190
  return `// Auto-translated additions for ${e} (review before merging)
5546
6191
  // Generated on ${(/* @__PURE__ */ new Date()).toISOString()}
5547
6192
  {
5548
- ${n.join(`
6193
+ ${t.join(`
5549
6194
  `)}
5550
6195
  }`;
5551
6196
  }
5552
- function Ze() {
5553
- const e = ge();
6197
+ function Xo() {
6198
+ const e = ao();
5554
6199
  let o = `# Translation Coverage Report
5555
6200
 
5556
6201
  Generated: ${(/* @__PURE__ */ new Date()).toISOString()}
@@ -5560,29 +6205,29 @@ Generated: ${(/* @__PURE__ */ new Date()).toISOString()}
5560
6205
  | Language | Translated | Missing | Coverage |
5561
6206
  |----------|------------|---------|----------|
5562
6207
  `;
5563
- for (const n of e) {
5564
- const a = "█".repeat(Math.floor(n.coverage / 10)) + "░".repeat(10 - Math.floor(n.coverage / 10));
5565
- o += `| ${n.lang} | ${n.translatedKeys} | ${n.missingKeys} | ${a} ${n.coverage}% |
6208
+ for (const t of e) {
6209
+ const a = "█".repeat(Math.floor(t.coverage / 10)) + "░".repeat(10 - Math.floor(t.coverage / 10));
6210
+ o += `| ${t.lang} | ${t.translatedKeys} | ${t.missingKeys} | ${a} ${t.coverage}% |
5566
6211
  `;
5567
6212
  }
5568
6213
  o += `
5569
6214
  ## Languages with Missing Translations
5570
6215
 
5571
6216
  `;
5572
- for (const n of e.filter((a) => a.missingKeys > 0)) {
5573
- o += `### ${n.lang.toUpperCase()} (${n.coverage}% complete)
6217
+ for (const t of e.filter((a) => a.missingKeys > 0)) {
6218
+ o += `### ${t.lang.toUpperCase()} (${t.coverage}% complete)
5574
6219
 
5575
6220
  `;
5576
- const a = me(n.lang);
6221
+ const a = eo(t.lang);
5577
6222
  o += `Missing ${a.length} keys:
5578
6223
 
5579
- `, o += "```\n", o += a.slice(0, 10).map((r) => r.key).join(`
6224
+ `, o += "```\n", o += a.slice(0, 10).map((n) => n.key).join(`
5580
6225
  `), a.length > 10 && (o += `
5581
6226
  ... and ${a.length - 10} more`), o += "\n```\n\n";
5582
6227
  }
5583
6228
  return o;
5584
6229
  }
5585
- const pe = {
6230
+ const to = {
5586
6231
  en: "en-US",
5587
6232
  pl: "pl-PL",
5588
6233
  de: "de-DE",
@@ -5606,57 +6251,57 @@ const pe = {
5606
6251
  zh: "zh-CN",
5607
6252
  ar: "ar-SA"
5608
6253
  };
5609
- function g(e) {
5610
- return pe[e] ?? "en-US";
6254
+ function D(e) {
6255
+ return to[e] ?? "en-US";
5611
6256
  }
5612
- function he(e, o = "medium") {
5613
- const n = g(e), a = new Intl.DateTimeFormat(n, { dateStyle: o });
6257
+ function no(e, o = "medium") {
6258
+ const t = D(e), a = new Intl.DateTimeFormat(t, { dateStyle: o });
5614
6259
  return {
5615
- format: (r) => a.format(r instanceof Date ? r : new Date(r)),
5616
- formatRange: (r, t) => {
5617
- const i = r instanceof Date ? r : new Date(r), l = t instanceof Date ? t : new Date(t);
5618
- return a.formatRange(i, l);
6260
+ format: (n) => a.format(n instanceof Date ? n : new Date(n)),
6261
+ formatRange: (n, r) => {
6262
+ const i = n instanceof Date ? n : new Date(n), s = r instanceof Date ? r : new Date(r);
6263
+ return a.formatRange(i, s);
5619
6264
  },
5620
- formatRelative: (r) => be(r instanceof Date ? r : new Date(r), n)
6265
+ formatRelative: (n) => lo(n instanceof Date ? n : new Date(n), t)
5621
6266
  };
5622
6267
  }
5623
- function qe(e, o = "medium") {
5624
- return u(() => he(e, o), [e, o]);
6268
+ function ea(e, o = "medium") {
6269
+ return w(() => no(e, o), [e, o]);
5625
6270
  }
5626
- function fe(e, o = "short") {
5627
- const n = g(e), a = new Intl.DateTimeFormat(n, { timeStyle: o });
6271
+ function ro(e, o = "short") {
6272
+ const t = D(e), a = new Intl.DateTimeFormat(t, { timeStyle: o });
5628
6273
  return {
5629
- format: (r) => a.format(r instanceof Date ? r : new Date(r))
6274
+ format: (n) => a.format(n instanceof Date ? n : new Date(n))
5630
6275
  };
5631
6276
  }
5632
- function Be(e, o = "short") {
5633
- return u(() => fe(e, o), [e, o]);
6277
+ function oa(e, o = "short") {
6278
+ return w(() => ro(e, o), [e, o]);
5634
6279
  }
5635
- function ke(e) {
5636
- const o = g(e);
6280
+ function io(e) {
6281
+ const o = D(e);
5637
6282
  return {
5638
- format: (n) => new Intl.NumberFormat(o).format(n),
5639
- formatCompact: (n) => new Intl.NumberFormat(o, { notation: "compact" }).format(n),
5640
- formatPercent: (n) => new Intl.NumberFormat(o, { style: "percent", maximumFractionDigits: 1 }).format(n)
6283
+ format: (t) => new Intl.NumberFormat(o).format(t),
6284
+ formatCompact: (t) => new Intl.NumberFormat(o, { notation: "compact" }).format(t),
6285
+ formatPercent: (t) => new Intl.NumberFormat(o, { style: "percent", maximumFractionDigits: 1 }).format(t)
5641
6286
  };
5642
6287
  }
5643
- function Ve(e) {
5644
- return u(() => ke(e), [e]);
6288
+ function aa(e) {
6289
+ return w(() => io(e), [e]);
5645
6290
  }
5646
- function ve(e, o = "USD") {
5647
- const n = g(e), a = new Intl.NumberFormat(n, { style: "currency", currency: o });
6291
+ function so(e, o = "USD") {
6292
+ const t = D(e), a = new Intl.NumberFormat(t, { style: "currency", currency: o });
5648
6293
  return {
5649
- format: (r) => a.format(r)
6294
+ format: (n) => a.format(n)
5650
6295
  };
5651
6296
  }
5652
- function He(e, o = "USD") {
5653
- return u(() => ve(e, o), [e, o]);
6297
+ function ta(e, o = "USD") {
6298
+ return w(() => so(e, o), [e, o]);
5654
6299
  }
5655
- function be(e, o) {
5656
- const n = Date.now(), a = e.getTime() - n, r = Math.abs(a), t = new Intl.RelativeTimeFormat(o, { numeric: "auto" });
5657
- return r < 6e4 ? t.format(Math.round(a / 1e3), "second") : r < 36e5 ? t.format(Math.round(a / 6e4), "minute") : r < 864e5 ? t.format(Math.round(a / 36e5), "hour") : r < 2592e6 ? t.format(Math.round(a / 864e5), "day") : r < 31536e6 ? t.format(Math.round(a / 2592e6), "month") : t.format(Math.round(a / 31536e6), "year");
6300
+ function lo(e, o) {
6301
+ const t = Date.now(), a = e.getTime() - t, n = Math.abs(a), r = new Intl.RelativeTimeFormat(o, { numeric: "auto" });
6302
+ return n < 6e4 ? r.format(Math.round(a / 1e3), "second") : n < 36e5 ? r.format(Math.round(a / 6e4), "minute") : n < 864e5 ? r.format(Math.round(a / 36e5), "hour") : n < 2592e6 ? r.format(Math.round(a / 864e5), "day") : n < 31536e6 ? r.format(Math.round(a / 2592e6), "month") : r.format(Math.round(a / 31536e6), "year");
5658
6303
  }
5659
- const C = [
6304
+ const te = [
5660
6305
  { en: "Save", translations: { pl: "Zapisz", de: "Speichern", fr: "Enregistrer", es: "Guardar", uk: "Зберегти", cs: "Uložit", ja: "保存", ko: "저장", zh: "保存", ar: "حفظ" } },
5661
6306
  { en: "Cancel", translations: { pl: "Anuluj", de: "Abbrechen", fr: "Annuler", es: "Cancelar", uk: "Скасувати", cs: "Zrušit", ja: "キャンセル", ko: "취소", zh: "取消", ar: "إلغاء" } },
5662
6307
  { en: "Delete", translations: { pl: "Usuń", de: "Löschen", fr: "Supprimer", es: "Eliminar", uk: "Видалити", cs: "Smazat", ja: "削除", ko: "삭제", zh: "删除", ar: "حذف" } },
@@ -5668,98 +6313,1225 @@ const C = [
5668
6313
  { en: "Error", translations: { pl: "Błąd", de: "Fehler", fr: "Erreur", es: "Error", uk: "Помилка", cs: "Chyba", ja: "エラー", ko: "오류", zh: "错误", ar: "خطأ" } },
5669
6314
  { en: "Success", translations: { pl: "Sukces", de: "Erfolg", fr: "Succès", es: "Éxito", uk: "Успіх", cs: "Úspěch", ja: "成功", ko: "성공", zh: "成功", ar: "نجاح" } }
5670
6315
  ];
5671
- function we(e, o) {
5672
- const n = C.find(
6316
+ function co(e, o) {
6317
+ const t = te.find(
5673
6318
  (a) => a.en.toLowerCase() === e.toLowerCase()
5674
6319
  );
5675
- return n == null ? void 0 : n.translations[o];
6320
+ return t == null ? void 0 : t.translations[o];
5676
6321
  }
5677
- function Ge(e, o, n = 0.8) {
5678
- const a = c.en, r = c[o], t = e.toLowerCase().trim();
6322
+ function na(e, o, t = 0.8) {
6323
+ const a = v.en, n = v[o], r = e.toLowerCase().trim();
5679
6324
  let i;
5680
- for (const [l, s] of Object.entries(a)) {
5681
- const d = r[l];
5682
- if (!d) continue;
5683
- const m = ye(t, s.toLowerCase().trim());
5684
- m >= n && (!i || m > i.similarity) && (i = { key: l, english: s, translated: d, similarity: m });
6325
+ for (const [s, d] of Object.entries(a)) {
6326
+ const l = n[s];
6327
+ if (!l) continue;
6328
+ const m = mo(r, d.toLowerCase().trim());
6329
+ m >= t && (!i || m > i.similarity) && (i = { key: s, english: d, translated: l, similarity: m });
5685
6330
  }
5686
6331
  return i;
5687
6332
  }
5688
- function Je(e) {
5689
- return C.filter((o) => o.translations[e] != null).map((o) => ({ en: o.en, translation: o.translations[e] }));
6333
+ function ra(e) {
6334
+ return te.filter((o) => o.translations[e] != null).map((o) => ({ en: o.en, translation: o.translations[e] }));
5690
6335
  }
5691
- function $e(e) {
5692
- const o = c[e], n = c.en, a = [];
5693
- for (const [r, t] of Object.entries(n)) {
5694
- const i = we(t, e), l = o[r];
5695
- i && l && l !== i && a.push({ key: r, currentTranslation: l, glossaryTranslation: i });
6336
+ function ia(e) {
6337
+ const o = v[e], t = v.en, a = [];
6338
+ for (const [n, r] of Object.entries(t)) {
6339
+ const i = co(r, e), s = o[n];
6340
+ i && s && s !== i && a.push({ key: n, currentTranslation: s, glossaryTranslation: i });
5696
6341
  }
5697
6342
  return a;
5698
6343
  }
5699
- function b(e) {
6344
+ function J(e) {
5700
6345
  const o = /* @__PURE__ */ new Set();
5701
- for (let n = 0; n < e.length - 1; n++)
5702
- o.add(e.substring(n, n + 2));
6346
+ for (let t = 0; t < e.length - 1; t++)
6347
+ o.add(e.substring(t, t + 2));
5703
6348
  return o;
5704
6349
  }
5705
- function ye(e, o) {
6350
+ function mo(e, o) {
5706
6351
  if (e === o) return 1;
5707
6352
  if (e.length < 2 || o.length < 2) return 0;
5708
- const n = b(e), a = b(o);
5709
- let r = 0;
5710
- for (const t of n)
5711
- a.has(t) && r++;
5712
- return 2 * r / (n.size + a.size);
6353
+ const t = J(e), a = J(o);
6354
+ let n = 0;
6355
+ for (const r of t)
6356
+ a.has(r) && n++;
6357
+ return 2 * n / (t.size + a.size);
6358
+ }
6359
+ const ne = {
6360
+ UTC: ["UTC", "Etc/UTC", "Etc/GMT"],
6361
+ NorthAmerica: [
6362
+ "America/New_York",
6363
+ "America/Chicago",
6364
+ "America/Denver",
6365
+ "America/Los_Angeles",
6366
+ "America/Toronto",
6367
+ "America/Vancouver",
6368
+ "America/Mexico_City"
6369
+ ],
6370
+ SouthAmerica: [
6371
+ "America/Sao_Paulo",
6372
+ "America/Buenos_Aires",
6373
+ "America/Lima",
6374
+ "America/Bogota",
6375
+ "America/Santiago"
6376
+ ],
6377
+ Europe: [
6378
+ "Europe/London",
6379
+ "Europe/Paris",
6380
+ "Europe/Berlin",
6381
+ "Europe/Rome",
6382
+ "Europe/Madrid",
6383
+ "Europe/Amsterdam",
6384
+ "Europe/Warsaw",
6385
+ "Europe/Moscow",
6386
+ "Europe/Kiev",
6387
+ "Europe/Stockholm",
6388
+ "Europe/Prague",
6389
+ "Europe/Budapest",
6390
+ "Europe/Bucharest"
6391
+ ],
6392
+ Asia: [
6393
+ "Asia/Tokyo",
6394
+ "Asia/Shanghai",
6395
+ "Asia/Hong_Kong",
6396
+ "Asia/Singapore",
6397
+ "Asia/Seoul",
6398
+ "Asia/Kolkata",
6399
+ "Asia/Dubai",
6400
+ "Asia/Riyadh",
6401
+ "Asia/Tehran",
6402
+ "Asia/Bangkok",
6403
+ "Asia/Jakarta"
6404
+ ],
6405
+ Africa: [
6406
+ "Africa/Cairo",
6407
+ "Africa/Lagos",
6408
+ "Africa/Johannesburg",
6409
+ "Africa/Nairobi",
6410
+ "Africa/Casablanca"
6411
+ ],
6412
+ Oceania: [
6413
+ "Australia/Sydney",
6414
+ "Australia/Melbourne",
6415
+ "Australia/Perth",
6416
+ "Pacific/Auckland",
6417
+ "Pacific/Fiji"
6418
+ ]
6419
+ };
6420
+ function G() {
6421
+ try {
6422
+ return Intl.DateTimeFormat().resolvedOptions().timeZone;
6423
+ } catch {
6424
+ return "UTC";
6425
+ }
6426
+ }
6427
+ function sa(e) {
6428
+ try {
6429
+ return new Intl.DateTimeFormat("en", { timeZone: e }), !0;
6430
+ } catch {
6431
+ return !1;
6432
+ }
6433
+ }
6434
+ function N(e, o = "en", t = /* @__PURE__ */ new Date()) {
6435
+ var b, M;
6436
+ const a = D(o), n = new Intl.DateTimeFormat(a, {
6437
+ timeZone: e,
6438
+ timeZoneName: "long"
6439
+ }), r = new Intl.DateTimeFormat(a, {
6440
+ timeZone: e,
6441
+ timeZoneName: "short"
6442
+ }), i = n.formatToParts(t), s = r.formatToParts(t), d = ((b = i.find((x) => x.type === "timeZoneName")) == null ? void 0 : b.value) || e, l = ((M = s.find((x) => x.type === "timeZoneName")) == null ? void 0 : M.value) || e, m = new Date(t.toLocaleString("en-US", { timeZone: "UTC" })), f = new Date(t.toLocaleString("en-US", { timeZone: e })), u = Math.round((f.getTime() - m.getTime()) / 6e4), p = new Date(t.getFullYear(), 0, 1), k = new Date(t.getFullYear(), 6, 1), g = K(e, p), y = K(e, k), E = K(e, t), C = Math.min(g, y), A = E !== C && g !== y;
6443
+ return {
6444
+ id: e,
6445
+ displayName: d,
6446
+ shortName: l,
6447
+ offsetMinutes: u,
6448
+ offsetString: ho(u),
6449
+ isDST: A
6450
+ };
6451
+ }
6452
+ function da(e = "en", o = /* @__PURE__ */ new Date()) {
6453
+ return Object.values(ne).flat().map((a) => N(a, e, o));
6454
+ }
6455
+ function la(e = "en", o = /* @__PURE__ */ new Date()) {
6456
+ const t = {};
6457
+ for (const [a, n] of Object.entries(ne))
6458
+ t[a] = n.map((r) => N(r, e, o));
6459
+ return t;
6460
+ }
6461
+ function re(e, o, t) {
6462
+ const a = e.toLocaleString("en-US", { timeZone: o }), n = new Date(a), r = e.toLocaleString("en-US", { timeZone: t }), i = new Date(r), s = n.getTime() - i.getTime();
6463
+ return new Date(e.getTime() + s);
6464
+ }
6465
+ function uo(e, o) {
6466
+ const t = o || G();
6467
+ return re(e, t, "UTC");
6468
+ }
6469
+ function po(e, o) {
6470
+ const t = o || G();
6471
+ return re(e, "UTC", t);
6472
+ }
6473
+ function go(e, o, t = {}) {
6474
+ const a = D(e), { dateStyle: n = "medium", timeStyle: r = "short", nameStyle: i = "short" } = t, s = new Intl.DateTimeFormat(a, {
6475
+ timeZone: o,
6476
+ dateStyle: n,
6477
+ timeStyle: r
6478
+ }), d = new Intl.DateTimeFormat(a, {
6479
+ timeZone: o,
6480
+ dateStyle: n,
6481
+ timeStyle: r,
6482
+ timeZoneName: i
6483
+ }), l = new Intl.DateTimeFormat(a, {
6484
+ timeZone: o,
6485
+ timeZoneName: "short"
6486
+ });
6487
+ return {
6488
+ format: (m) => s.format(m),
6489
+ formatWithZone: (m) => d.format(m),
6490
+ getOffset: (m) => N(o, e, m).offsetString,
6491
+ getAbbreviation: (m) => {
6492
+ var u;
6493
+ return ((u = l.formatToParts(m).find((p) => p.type === "timeZoneName")) == null ? void 0 : u.value) || "";
6494
+ }
6495
+ };
6496
+ }
6497
+ function W(e, o = /* @__PURE__ */ new Date()) {
6498
+ return N(e, "en", o).isDST;
6499
+ }
6500
+ function ca(e, o = /* @__PURE__ */ new Date()) {
6501
+ const t = W(e, o);
6502
+ let a = new Date(o);
6503
+ const n = new Date(o);
6504
+ for (n.setFullYear(n.getFullYear() + 1); a < n; )
6505
+ if (a.setDate(a.getDate() + 1), W(e, a) !== t) {
6506
+ a.setDate(a.getDate() - 1);
6507
+ const r = new Date(a);
6508
+ r.setHours(0, 0, 0, 0);
6509
+ const i = new Date(a);
6510
+ for (i.setDate(i.getDate() + 2); i.getTime() - r.getTime() > 6e4; ) {
6511
+ const s = new Date((r.getTime() + i.getTime()) / 2);
6512
+ W(e, s) === t ? r.setTime(s.getTime()) : i.setTime(s.getTime());
6513
+ }
6514
+ return i;
6515
+ }
6516
+ return null;
6517
+ }
6518
+ function ma(e, o, t) {
6519
+ const [a] = P(() => G()), n = o || a, r = w(() => go(e, n, t), [e, n, t]), i = w(() => N(n, e), [n, e]);
6520
+ return {
6521
+ timezone: n,
6522
+ info: i,
6523
+ format: r.format,
6524
+ formatWithZone: r.formatWithZone,
6525
+ getOffset: r.getOffset,
6526
+ getAbbreviation: r.getAbbreviation,
6527
+ toUTC: (s) => uo(s, n),
6528
+ fromUTC: (s) => po(s, n)
6529
+ };
6530
+ }
6531
+ function K(e, o) {
6532
+ const t = o.toLocaleString("en-US", { timeZone: "UTC" }), a = o.toLocaleString("en-US", { timeZone: e }), n = new Date(t), r = new Date(a);
6533
+ return Math.round((r.getTime() - n.getTime()) / 6e4);
6534
+ }
6535
+ function ho(e) {
6536
+ const o = e >= 0 ? "+" : "-", t = Math.abs(e), a = Math.floor(t / 60), n = t % 60;
6537
+ return `${o}${a.toString().padStart(2, "0")}:${n.toString().padStart(2, "0")}`;
6538
+ }
6539
+ const U = {
6540
+ gregory: {
6541
+ id: "gregory",
6542
+ displayName: "Gregorian",
6543
+ monthsInYear: 12,
6544
+ hasEra: !0,
6545
+ isLunar: !1,
6546
+ associatedLanguages: [
6547
+ "en",
6548
+ "de",
6549
+ "fr",
6550
+ "es",
6551
+ "it",
6552
+ "pt",
6553
+ "nl",
6554
+ "pl",
6555
+ "cs",
6556
+ "sk",
6557
+ "hu",
6558
+ "ro",
6559
+ "bg",
6560
+ "uk",
6561
+ "sv",
6562
+ "no",
6563
+ "da",
6564
+ "fi"
6565
+ ]
6566
+ },
6567
+ islamic: {
6568
+ id: "islamic",
6569
+ displayName: "Islamic (Hijri)",
6570
+ monthsInYear: 12,
6571
+ hasEra: !0,
6572
+ isLunar: !0,
6573
+ associatedLanguages: ["ar"]
6574
+ },
6575
+ "islamic-umalqura": {
6576
+ id: "islamic-umalqura",
6577
+ displayName: "Islamic (Umm al-Qura)",
6578
+ monthsInYear: 12,
6579
+ hasEra: !0,
6580
+ isLunar: !0,
6581
+ associatedLanguages: ["ar"]
6582
+ },
6583
+ "islamic-tbla": {
6584
+ id: "islamic-tbla",
6585
+ displayName: "Islamic (Tabular)",
6586
+ monthsInYear: 12,
6587
+ hasEra: !0,
6588
+ isLunar: !0,
6589
+ associatedLanguages: ["ar"]
6590
+ },
6591
+ "islamic-civil": {
6592
+ id: "islamic-civil",
6593
+ displayName: "Islamic (Civil)",
6594
+ monthsInYear: 12,
6595
+ hasEra: !0,
6596
+ isLunar: !0,
6597
+ associatedLanguages: ["ar"]
6598
+ },
6599
+ hebrew: {
6600
+ id: "hebrew",
6601
+ displayName: "Hebrew",
6602
+ monthsInYear: 13,
6603
+ // 12 in regular year, 13 in leap year
6604
+ hasEra: !1,
6605
+ isLunar: !0,
6606
+ associatedLanguages: []
6607
+ },
6608
+ buddhist: {
6609
+ id: "buddhist",
6610
+ displayName: "Buddhist",
6611
+ monthsInYear: 12,
6612
+ hasEra: !0,
6613
+ isLunar: !1,
6614
+ associatedLanguages: []
6615
+ },
6616
+ japanese: {
6617
+ id: "japanese",
6618
+ displayName: "Japanese (Imperial)",
6619
+ monthsInYear: 12,
6620
+ hasEra: !0,
6621
+ isLunar: !1,
6622
+ associatedLanguages: ["ja"]
6623
+ },
6624
+ persian: {
6625
+ id: "persian",
6626
+ displayName: "Persian (Jalali)",
6627
+ monthsInYear: 12,
6628
+ hasEra: !0,
6629
+ isLunar: !1,
6630
+ associatedLanguages: []
6631
+ },
6632
+ chinese: {
6633
+ id: "chinese",
6634
+ displayName: "Chinese",
6635
+ monthsInYear: 12,
6636
+ // Can have leap months
6637
+ hasEra: !0,
6638
+ isLunar: !0,
6639
+ associatedLanguages: ["zh"]
6640
+ },
6641
+ coptic: {
6642
+ id: "coptic",
6643
+ displayName: "Coptic",
6644
+ monthsInYear: 13,
6645
+ hasEra: !0,
6646
+ isLunar: !1,
6647
+ associatedLanguages: []
6648
+ },
6649
+ ethiopic: {
6650
+ id: "ethiopic",
6651
+ displayName: "Ethiopian",
6652
+ monthsInYear: 13,
6653
+ hasEra: !0,
6654
+ isLunar: !1,
6655
+ associatedLanguages: []
6656
+ },
6657
+ indian: {
6658
+ id: "indian",
6659
+ displayName: "Indian (Saka)",
6660
+ monthsInYear: 12,
6661
+ hasEra: !0,
6662
+ isLunar: !1,
6663
+ associatedLanguages: []
6664
+ },
6665
+ roc: {
6666
+ id: "roc",
6667
+ displayName: "Republic of China",
6668
+ monthsInYear: 12,
6669
+ hasEra: !0,
6670
+ isLunar: !1,
6671
+ associatedLanguages: ["zh"]
6672
+ }
6673
+ }, ie = {
6674
+ en: "gregory",
6675
+ pl: "gregory",
6676
+ de: "gregory",
6677
+ fr: "gregory",
6678
+ es: "gregory",
6679
+ it: "gregory",
6680
+ pt: "gregory",
6681
+ nl: "gregory",
6682
+ sv: "gregory",
6683
+ no: "gregory",
6684
+ da: "gregory",
6685
+ fi: "gregory",
6686
+ cs: "gregory",
6687
+ sk: "gregory",
6688
+ hu: "gregory",
6689
+ ro: "gregory",
6690
+ bg: "gregory",
6691
+ uk: "gregory",
6692
+ ja: "japanese",
6693
+ ko: "gregory",
6694
+ zh: "gregory",
6695
+ ar: "islamic"
6696
+ };
6697
+ function se(e, o = "gregory", t = {}) {
6698
+ const a = D(e), { dateStyle: n = "medium", showEra: r = !1, showWeekday: i = !1 } = t, s = {
6699
+ calendar: o,
6700
+ dateStyle: n
6701
+ };
6702
+ i && (delete s.dateStyle, s.weekday = "long", s.year = "numeric", s.month = "long", s.day = "numeric");
6703
+ const d = new Intl.DateTimeFormat(a, s), l = {
6704
+ calendar: o,
6705
+ year: "numeric",
6706
+ month: "long",
6707
+ day: "numeric",
6708
+ era: "long"
6709
+ }, m = new Intl.DateTimeFormat(a, l), f = new Intl.DateTimeFormat(a, { calendar: o, month: "long" }), u = new Intl.DateTimeFormat(a, { calendar: o, weekday: "long" });
6710
+ return {
6711
+ format: (p) => d.format(p),
6712
+ formatWithEra: (p) => m.format(p),
6713
+ getMonthName: (p) => f.format(p),
6714
+ getMonthNames: () => {
6715
+ const p = [], k = new Date(2024, 0, 15);
6716
+ for (let g = 0; g < 12; g++)
6717
+ k.setMonth(g), p.push(f.format(k));
6718
+ return p;
6719
+ },
6720
+ getWeekdayName: (p) => u.format(p),
6721
+ getWeekdayNames: () => {
6722
+ const p = [], k = new Date(2024, 0, 7);
6723
+ for (let g = 0; g < 7; g++)
6724
+ k.setDate(7 + g), p.push(u.format(k));
6725
+ return p;
6726
+ },
6727
+ parseParts: (p) => {
6728
+ var y, E, C, A;
6729
+ const g = new Intl.DateTimeFormat(a, {
6730
+ calendar: o,
6731
+ year: "numeric",
6732
+ month: "numeric",
6733
+ day: "numeric",
6734
+ era: "short"
6735
+ }).formatToParts(p);
6736
+ return {
6737
+ calendar: o,
6738
+ year: parseInt(((y = g.find((b) => b.type === "year")) == null ? void 0 : y.value) || "0", 10),
6739
+ month: parseInt(((E = g.find((b) => b.type === "month")) == null ? void 0 : E.value) || "0", 10),
6740
+ day: parseInt(((C = g.find((b) => b.type === "day")) == null ? void 0 : C.value) || "0", 10),
6741
+ era: (A = g.find((b) => b.type === "era")) == null ? void 0 : A.value,
6742
+ gregorianDate: p
6743
+ };
6744
+ },
6745
+ getEraName: (p) => {
6746
+ var y;
6747
+ return (y = new Intl.DateTimeFormat(a, {
6748
+ calendar: o,
6749
+ era: "long"
6750
+ }).formatToParts(p).find((E) => E.type === "era")) == null ? void 0 : y.value;
6751
+ }
6752
+ };
6753
+ }
6754
+ function de(e, o, t = "en") {
6755
+ return se(t, o).parseParts(e);
6756
+ }
6757
+ function fo(e, o = "en") {
6758
+ return de(/* @__PURE__ */ new Date(), e, o);
6759
+ }
6760
+ const ua = [
6761
+ "Muharram",
6762
+ "Safar",
6763
+ "Rabi' al-Awwal",
6764
+ "Rabi' al-Thani",
6765
+ "Jumada al-Awwal",
6766
+ "Jumada al-Thani",
6767
+ "Rajab",
6768
+ "Sha'ban",
6769
+ "Ramadan",
6770
+ "Shawwal",
6771
+ "Dhu al-Qi'dah",
6772
+ "Dhu al-Hijjah"
6773
+ ];
6774
+ function ko(e) {
6775
+ return (11 * e + 14) % 30 < 11;
6776
+ }
6777
+ function pa(e, o) {
6778
+ return o === 12 ? ko(e) ? 30 : 29 : o % 2 === 1 ? 30 : 29;
6779
+ }
6780
+ const ga = [
6781
+ "Tishrei",
6782
+ "Cheshvan",
6783
+ "Kislev",
6784
+ "Tevet",
6785
+ "Shevat",
6786
+ "Adar",
6787
+ "Nisan",
6788
+ "Iyar",
6789
+ "Sivan",
6790
+ "Tammuz",
6791
+ "Av",
6792
+ "Elul"
6793
+ ], ha = [
6794
+ "Tishrei",
6795
+ "Cheshvan",
6796
+ "Kislev",
6797
+ "Tevet",
6798
+ "Shevat",
6799
+ "Adar I",
6800
+ "Adar II",
6801
+ "Nisan",
6802
+ "Iyar",
6803
+ "Sivan",
6804
+ "Tammuz",
6805
+ "Av",
6806
+ "Elul"
6807
+ ];
6808
+ function fa(e) {
6809
+ return (7 * e + 1) % 19 < 7;
6810
+ }
6811
+ const Z = [
6812
+ { name: "Meiji", kanji: "明治", startDate: new Date(1868, 9, 23) },
6813
+ { name: "Taisho", kanji: "大正", startDate: new Date(1912, 6, 30) },
6814
+ { name: "Showa", kanji: "昭和", startDate: new Date(1926, 11, 25) },
6815
+ { name: "Heisei", kanji: "平成", startDate: new Date(1989, 0, 8) },
6816
+ { name: "Reiwa", kanji: "令和", startDate: new Date(2019, 4, 1) }
6817
+ ];
6818
+ function wo(e) {
6819
+ for (let o = Z.length - 1; o >= 0; o--)
6820
+ if (e >= Z[o].startDate)
6821
+ return Z[o];
6822
+ return null;
6823
+ }
6824
+ function ka(e) {
6825
+ const o = wo(e);
6826
+ return o ? e.getFullYear() - o.startDate.getFullYear() + 1 : null;
6827
+ }
6828
+ const wa = [
6829
+ "Farvardin",
6830
+ "Ordibehesht",
6831
+ "Khordad",
6832
+ "Tir",
6833
+ "Mordad",
6834
+ "Shahrivar",
6835
+ "Mehr",
6836
+ "Aban",
6837
+ "Azar",
6838
+ "Dey",
6839
+ "Bahman",
6840
+ "Esfand"
6841
+ ];
6842
+ function va(e) {
6843
+ return ((e - 474) % 2820 + 2820) % 2820 * 682 % 2816 < 682;
6844
+ }
6845
+ const vo = [
6846
+ "Rat",
6847
+ "Ox",
6848
+ "Tiger",
6849
+ "Rabbit",
6850
+ "Dragon",
6851
+ "Snake",
6852
+ "Horse",
6853
+ "Goat",
6854
+ "Monkey",
6855
+ "Rooster",
6856
+ "Dog",
6857
+ "Pig"
6858
+ ];
6859
+ function ba(e) {
6860
+ return vo[(e - 4) % 12];
6861
+ }
6862
+ const bo = [
6863
+ "Jia",
6864
+ "Yi",
6865
+ "Bing",
6866
+ "Ding",
6867
+ "Wu",
6868
+ "Ji",
6869
+ "Geng",
6870
+ "Xin",
6871
+ "Ren",
6872
+ "Gui"
6873
+ ];
6874
+ function Ca(e) {
6875
+ return bo[(e - 4) % 10];
6876
+ }
6877
+ function ya(e, o, t) {
6878
+ const a = o || ie[e], n = w(
6879
+ () => se(e, a, t),
6880
+ [e, a, t]
6881
+ ), r = w(() => U[a], [a]), i = w(() => fo(a, e), [a, e]);
6882
+ return {
6883
+ calendar: a,
6884
+ info: r,
6885
+ current: i,
6886
+ format: n.format,
6887
+ formatWithEra: n.formatWithEra,
6888
+ getMonthName: n.getMonthName,
6889
+ getMonthNames: n.getMonthNames,
6890
+ getWeekdayName: n.getWeekdayName,
6891
+ getWeekdayNames: n.getWeekdayNames,
6892
+ parseParts: n.parseParts,
6893
+ getEraName: n.getEraName,
6894
+ toCalendar: (s) => de(s, a, e)
6895
+ };
6896
+ }
6897
+ function Ea() {
6898
+ return Object.keys(U);
6899
+ }
6900
+ function Sa(e, o = "en") {
6901
+ const t = { ...U[e] };
6902
+ try {
6903
+ const a = D(o), r = new Intl.DisplayNames([a], { type: "calendar" }).of(e);
6904
+ r && (t.displayName = r);
6905
+ } catch {
6906
+ }
6907
+ return t;
6908
+ }
6909
+ function za(e) {
6910
+ const o = ie[e], t = /* @__PURE__ */ new Set([o]);
6911
+ for (const [a, n] of Object.entries(U))
6912
+ n.associatedLanguages.includes(e) && t.add(a);
6913
+ return t.add("gregory"), Array.from(t);
6914
+ }
6915
+ const $ = {
6916
+ // Lowercase
6917
+ a: "ą",
6918
+ b: "ɓ",
6919
+ c: "ç",
6920
+ d: "ð",
6921
+ e: "ë",
6922
+ f: "ƒ",
6923
+ g: "ğ",
6924
+ h: "ĥ",
6925
+ i: "ï",
6926
+ j: "ĵ",
6927
+ k: "ķ",
6928
+ l: "ľ",
6929
+ m: "ɱ",
6930
+ n: "ñ",
6931
+ o: "ő",
6932
+ p: "þ",
6933
+ q: "ǫ",
6934
+ r: "ř",
6935
+ s: "š",
6936
+ t: "ŧ",
6937
+ u: "ü",
6938
+ v: "ṽ",
6939
+ w: "ŵ",
6940
+ x: "χ",
6941
+ y: "ÿ",
6942
+ z: "ž",
6943
+ // Uppercase
6944
+ A: "Ą",
6945
+ B: "Ɓ",
6946
+ C: "Ç",
6947
+ D: "Ð",
6948
+ E: "Ë",
6949
+ F: "Ƒ",
6950
+ G: "Ğ",
6951
+ H: "Ĥ",
6952
+ I: "Ï",
6953
+ J: "Ĵ",
6954
+ K: "Ķ",
6955
+ L: "Ľ",
6956
+ M: "Ṁ",
6957
+ N: "Ñ",
6958
+ O: "Ő",
6959
+ P: "Þ",
6960
+ Q: "Ǫ",
6961
+ R: "Ř",
6962
+ S: "Š",
6963
+ T: "Ŧ",
6964
+ U: "Ü",
6965
+ V: "Ṽ",
6966
+ W: "Ŵ",
6967
+ X: "Χ",
6968
+ Y: "Ÿ",
6969
+ Z: "Ž"
6970
+ }, Co = {
6971
+ ...$,
6972
+ // Additional mappings
6973
+ a: "ặ",
6974
+ e: "ệ",
6975
+ i: "ị",
6976
+ o: "ộ",
6977
+ u: "ụ",
6978
+ y: "ỵ",
6979
+ A: "Ặ",
6980
+ E: "Ệ",
6981
+ I: "Ị",
6982
+ O: "Ộ",
6983
+ U: "Ụ",
6984
+ Y: "Ỵ"
6985
+ }, yo = "‪", Eo = "‫", _ = "‬", So = "~∼~≈";
6986
+ function Da(e, o = !1) {
6987
+ const t = o ? Co : $;
6988
+ return e.split("").map((a) => t[a] || a).join("");
6989
+ }
6990
+ function Aa(e, o = "[", t = "]") {
6991
+ return `${o}${e}${t}`;
6992
+ }
6993
+ function zo(e, o = 0.3, t = !1) {
6994
+ if (t)
6995
+ return Do(e);
6996
+ const n = Math.ceil(e.length * (1 + o)) - e.length;
6997
+ if (n <= 0) return e;
6998
+ const r = So[0].repeat(n);
6999
+ return e + r;
7000
+ }
7001
+ function Do(e) {
7002
+ const o = /* @__PURE__ */ new Set(["a", "e", "i", "o", "u", "A", "E", "I", "O", "U"]);
7003
+ return e.split("").map((t) => o.has(t) ? t + t : t).join("");
7004
+ }
7005
+ function Ao(e, o = !1) {
7006
+ return o ? `${Eo}${e}${_}` : `${yo}${e}${_}`;
7007
+ }
7008
+ function le(e, o = {}) {
7009
+ const {
7010
+ addBrackets: t = !0,
7011
+ expansionFactor: a = 0.3,
7012
+ addAccents: n = !0,
7013
+ addBidiMarkers: r = !1,
7014
+ useVowelDoubling: i = !1,
7015
+ preservePlaceholders: s = !0,
7016
+ preserveHtml: d = !0,
7017
+ prefix: l = "[",
7018
+ suffix: m = "]"
7019
+ } = o, f = /* @__PURE__ */ new Map();
7020
+ let u = e, p = 0;
7021
+ s && (u = u.replace(/\{[^}]+\}/g, (k) => {
7022
+ const g = `__PH${p++}__`;
7023
+ return f.set(g, k), g;
7024
+ })), d && (u = u.replace(/<[^>]+>/g, (k) => {
7025
+ const g = `__PH${p++}__`;
7026
+ return f.set(g, k), g;
7027
+ })), n && (u = xo(u, f)), a > 0 && (u = zo(u, a, i)), r && (u = Ao(u)), t && (u = `${l}${u}${m}`);
7028
+ for (const [k, g] of f.entries())
7029
+ u = u.replace(k, g);
7030
+ return u;
7031
+ }
7032
+ function xo(e, o) {
7033
+ const t = new Set(o.keys());
7034
+ return e.split("").map((a) => {
7035
+ for (const n of t)
7036
+ if (e.includes(n) && n.includes(a))
7037
+ return a;
7038
+ return $[a] || a;
7039
+ }).join("");
7040
+ }
7041
+ function T(e) {
7042
+ switch (e) {
7043
+ case "accented":
7044
+ return {
7045
+ addBrackets: !0,
7046
+ addAccents: !0,
7047
+ expansionFactor: 0,
7048
+ addBidiMarkers: !1
7049
+ };
7050
+ case "bidi":
7051
+ return {
7052
+ addBrackets: !0,
7053
+ addAccents: !1,
7054
+ expansionFactor: 0,
7055
+ addBidiMarkers: !0
7056
+ };
7057
+ case "expansion":
7058
+ return {
7059
+ addBrackets: !0,
7060
+ addAccents: !1,
7061
+ expansionFactor: 0.4,
7062
+ addBidiMarkers: !1
7063
+ };
7064
+ case "full":
7065
+ default:
7066
+ return {
7067
+ addBrackets: !0,
7068
+ addAccents: !0,
7069
+ expansionFactor: 0.3,
7070
+ addBidiMarkers: !1,
7071
+ useVowelDoubling: !0
7072
+ };
7073
+ }
7074
+ }
7075
+ function xa(e, o) {
7076
+ const t = {};
7077
+ for (const [a, n] of Object.entries(e))
7078
+ t[a] = le(n, o);
7079
+ return t;
7080
+ }
7081
+ function To(e) {
7082
+ return /[^\x00-\x7F]/.test(e);
7083
+ }
7084
+ function Po(e) {
7085
+ if (!e || /^[\d.,-]+$/.test(e) || e.startsWith("["))
7086
+ return !1;
7087
+ const o = /[a-zA-Z]{2,}/.test(e), t = To(e);
7088
+ return o && !t;
7089
+ }
7090
+ function Ta(e, o) {
7091
+ const t = {
7092
+ totalKeys: Object.keys(e).length,
7093
+ hardcodedStrings: [],
7094
+ emptyValues: [],
7095
+ placeholderMismatches: [],
7096
+ potentialIssues: 0
7097
+ };
7098
+ for (const [a, n] of Object.entries(e)) {
7099
+ if (!n || n.trim() === "") {
7100
+ t.emptyValues.push(a), t.potentialIssues++;
7101
+ continue;
7102
+ }
7103
+ if (Po(n) && t.hardcodedStrings.push(a), o && o[a]) {
7104
+ const r = Y(n), i = Y(o[a]), s = r.filter((l) => !i.includes(l)), d = i.filter((l) => !r.includes(l));
7105
+ (s.length > 0 || d.length > 0) && (t.placeholderMismatches.push({
7106
+ key: a,
7107
+ placeholders: [
7108
+ ...s.map((l) => `-${l}`),
7109
+ ...d.map((l) => `+${l}`)
7110
+ ]
7111
+ }), t.potentialIssues++);
7112
+ }
7113
+ }
7114
+ return t;
7115
+ }
7116
+ function Y(e) {
7117
+ return (e.match(/\{([^}]+)\}/g) || []).map((t) => t.replace(/[{}]/g, "").split(",")[0].trim());
7118
+ }
7119
+ const ce = I(null);
7120
+ function Pa({
7121
+ children: e,
7122
+ initialEnabled: o = !1,
7123
+ initialMode: t = "full"
7124
+ }) {
7125
+ const [a, n] = P(o), [r, i] = P(t), s = w(() => T(r), [r]), d = w(() => (m) => a ? le(m, s) : m, [a, s]), l = w(
7126
+ () => ({
7127
+ enabled: a,
7128
+ mode: r,
7129
+ options: s,
7130
+ toggle: () => n((m) => !m),
7131
+ setMode: i,
7132
+ transform: d
7133
+ }),
7134
+ [a, r, s, d]
7135
+ );
7136
+ return /* @__PURE__ */ B(ce.Provider, { value: l, children: e });
7137
+ }
7138
+ function ja() {
7139
+ const e = F(ce);
7140
+ return e || {
7141
+ enabled: !1,
7142
+ mode: "full",
7143
+ options: T("full"),
7144
+ toggle: () => {
7145
+ },
7146
+ setMode: () => {
7147
+ },
7148
+ transform: (o) => o
7149
+ };
7150
+ }
7151
+ const Fa = {
7152
+ /** Minimal: brackets only */
7153
+ MINIMAL: { addBrackets: !0, addAccents: !1, expansionFactor: 0 },
7154
+ /** Accented: brackets + accents */
7155
+ ACCENTED: T("accented"),
7156
+ /** Expanded: brackets + 30% expansion */
7157
+ EXPANDED: T("expansion"),
7158
+ /** Bidi: brackets + RTL markers */
7159
+ BIDI: T("bidi"),
7160
+ /** Full: brackets + accents + expansion */
7161
+ FULL: T("full"),
7162
+ /** Finnish: 40% expansion (Finnish is very long) */
7163
+ FINNISH: { addBrackets: !0, addAccents: !0, expansionFactor: 0.4 },
7164
+ /** German: 35% expansion */
7165
+ GERMAN: { addBrackets: !0, addAccents: !0, expansionFactor: 0.35 },
7166
+ /** CJK: Short expansion, no accents (CJK often shorter) */
7167
+ CJK: { addBrackets: !0, addAccents: !1, expansionFactor: -0.1 }
7168
+ };
7169
+ class jo {
7170
+ constructor(o = 0) {
7171
+ this.cache = /* @__PURE__ */ new Map(), this.ttl = o;
7172
+ }
7173
+ getCacheKey(o, t) {
7174
+ return t ? `${o}:${t}` : o;
7175
+ }
7176
+ get(o, t) {
7177
+ const a = this.getCacheKey(o, t), n = this.cache.get(a);
7178
+ return n ? this.ttl > 0 && Date.now() > n.expiresAt ? (this.cache.delete(a), null) : n.data : null;
7179
+ }
7180
+ set(o, t, a) {
7181
+ const n = this.getCacheKey(o, a), r = Date.now();
7182
+ this.cache.set(n, {
7183
+ data: t,
7184
+ loadedAt: r,
7185
+ expiresAt: this.ttl > 0 ? r + this.ttl : 1 / 0
7186
+ });
7187
+ }
7188
+ has(o, t) {
7189
+ return this.get(o, t) !== null;
7190
+ }
7191
+ delete(o, t) {
7192
+ if (t)
7193
+ this.cache.delete(this.getCacheKey(o, t));
7194
+ else
7195
+ for (const a of this.cache.keys())
7196
+ (a === o || a.startsWith(`${o}:`)) && this.cache.delete(a);
7197
+ }
7198
+ clear() {
7199
+ this.cache.clear();
7200
+ }
7201
+ getStats() {
7202
+ const o = /* @__PURE__ */ new Set();
7203
+ for (const t of this.cache.keys())
7204
+ o.add(t.split(":")[0]);
7205
+ return {
7206
+ size: this.cache.size,
7207
+ languages: Array.from(o)
7208
+ };
7209
+ }
7210
+ }
7211
+ function me(e) {
7212
+ const {
7213
+ loadFn: o,
7214
+ fallbackLang: t = "en",
7215
+ cacheTtl: a = 0,
7216
+ preloadLanguages: n = [],
7217
+ namespaces: r = [],
7218
+ defaultNamespace: i,
7219
+ onLoadStart: s,
7220
+ onLoadComplete: d,
7221
+ onLoadError: l
7222
+ } = e, m = new jo(a), f = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Map();
7223
+ let p = t;
7224
+ const k = /* @__PURE__ */ new Set();
7225
+ function g() {
7226
+ const c = E();
7227
+ k.forEach((h) => h(c));
7228
+ }
7229
+ function y(c, h) {
7230
+ return h ? `${c}:${h}` : c;
7231
+ }
7232
+ function E() {
7233
+ const c = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set();
7234
+ for (const S of j)
7235
+ m.has(S) && c.add(S);
7236
+ for (const S of f) {
7237
+ const O = S.split(":")[0];
7238
+ h.add(O);
7239
+ }
7240
+ return {
7241
+ loadedLanguages: c,
7242
+ loadingLanguages: h,
7243
+ failedLanguages: new Map(u),
7244
+ currentLanguage: p
7245
+ };
7246
+ }
7247
+ async function C(c, h) {
7248
+ const S = y(c, h), O = m.get(c, h);
7249
+ if (O) return O;
7250
+ if (f.has(S))
7251
+ return new Promise((z) => {
7252
+ const R = setInterval(() => {
7253
+ f.has(S) || (clearInterval(R), z(m.get(c, h)));
7254
+ }, 50);
7255
+ });
7256
+ f.add(S), u.delete(c), s == null || s(c, h), g();
7257
+ try {
7258
+ const z = await o(c, h);
7259
+ return m.set(c, z, h), d == null || d(c, h), z;
7260
+ } catch (z) {
7261
+ const R = z instanceof Error ? z : new Error(String(z));
7262
+ return u.set(c, R), l == null || l(c, R, h), c !== t && !h ? (console.warn(`Failed to load ${c}, falling back to ${t}`), C(t, h)) : null;
7263
+ } finally {
7264
+ f.delete(S), g();
7265
+ }
7266
+ }
7267
+ async function A(c) {
7268
+ await Promise.all(c.map((h) => C(h)));
7269
+ }
7270
+ async function b() {
7271
+ n.length !== 0 && await Promise.allSettled(
7272
+ n.map((c) => r.length > 0 ? Promise.all(r.map((h) => C(c, h))) : C(c))
7273
+ );
7274
+ }
7275
+ function M(c, h) {
7276
+ return m.get(c, h);
7277
+ }
7278
+ function x(c, h) {
7279
+ return m.has(c, h);
7280
+ }
7281
+ function pe(c) {
7282
+ for (const h of f)
7283
+ if (h === c || h.startsWith(`${c}:`))
7284
+ return !0;
7285
+ return !1;
7286
+ }
7287
+ function ge() {
7288
+ return m.getStats().languages;
7289
+ }
7290
+ function he(c) {
7291
+ c ? m.delete(c) : m.clear(), g();
7292
+ }
7293
+ async function fe(c) {
7294
+ x(c) || await C(c), p = c, g();
7295
+ }
7296
+ function ke() {
7297
+ return p;
7298
+ }
7299
+ function we(c) {
7300
+ return k.add(c), () => k.delete(c);
7301
+ }
7302
+ return {
7303
+ loadLanguage: C,
7304
+ loadLanguages: A,
7305
+ preloadLanguages: b,
7306
+ getTranslations: M,
7307
+ isLoaded: x,
7308
+ isLoading: pe,
7309
+ getLoadedLanguages: ge,
7310
+ clearCache: he,
7311
+ getState: E,
7312
+ setLanguage: fe,
7313
+ getCurrentLanguage: ke,
7314
+ subscribe: we
7315
+ };
7316
+ }
7317
+ function Na(e, o) {
7318
+ return me({
7319
+ ...o,
7320
+ loadFn: async (t, a) => {
7321
+ const n = a ? `${e}/${t}/${a}.json` : `${e}/${t}.json`, r = await fetch(n);
7322
+ if (!r.ok)
7323
+ throw new Error(`Failed to load translations: ${r.status}`);
7324
+ return r.json();
7325
+ }
7326
+ });
7327
+ }
7328
+ function Ma(e, o) {
7329
+ return me({
7330
+ ...o,
7331
+ loadFn: async (t, a) => (await e(t, a)).default
7332
+ });
7333
+ }
7334
+ const ue = I(null);
7335
+ function Oa({
7336
+ children: e,
7337
+ loader: o,
7338
+ initialLanguage: t,
7339
+ namespace: a
7340
+ }) {
7341
+ const [n, r] = P(() => o.getState()), [i, s] = P(null);
7342
+ L(() => o.subscribe(r), [o]), L(() => {
7343
+ t && !o.isLoaded(t, a) && o.loadLanguage(t, a).catch(s);
7344
+ }, [o, t, a]);
7345
+ const d = w(() => o.getTranslations(n.currentLanguage, a) || {}, [o, n.currentLanguage, a]), l = Q(
7346
+ async (f) => {
7347
+ s(null);
7348
+ try {
7349
+ await o.setLanguage(f);
7350
+ } catch (u) {
7351
+ s(u instanceof Error ? u : new Error(String(u)));
7352
+ }
7353
+ },
7354
+ [o]
7355
+ ), m = w(
7356
+ () => ({
7357
+ loader: o,
7358
+ translations: d,
7359
+ isLoading: n.loadingLanguages.size > 0,
7360
+ error: i,
7361
+ setLanguage: l,
7362
+ currentLanguage: n.currentLanguage,
7363
+ loadedLanguages: Array.from(n.loadedLanguages)
7364
+ }),
7365
+ [o, d, n, i, l]
7366
+ );
7367
+ return /* @__PURE__ */ B(ue.Provider, { value: m, children: e });
7368
+ }
7369
+ function Fo() {
7370
+ const e = F(ue);
7371
+ if (!e)
7372
+ throw new Error("useDynamicI18n must be used within DynamicI18nProvider");
7373
+ return e;
7374
+ }
7375
+ function Ra(e) {
7376
+ const { translations: o, currentLanguage: t, loader: a, isLoading: n } = Fo();
7377
+ return L(() => {
7378
+ e && !a.isLoaded(t, e) && a.loadLanguage(t, e);
7379
+ }, [a, t, e]), { t: Q(
7380
+ (i, s) => {
7381
+ let d = o[i] || i;
7382
+ if (s)
7383
+ for (const [l, m] of Object.entries(s))
7384
+ d = d.replace(new RegExp(`\\{${l}\\}`, "g"), String(m));
7385
+ return d;
7386
+ },
7387
+ [o]
7388
+ ), isLoading: n, currentLanguage: t };
7389
+ }
7390
+ function La(e, o, t) {
7391
+ switch (t) {
7392
+ case "immediate":
7393
+ e.loadLanguages(o);
7394
+ break;
7395
+ case "idle":
7396
+ "requestIdleCallback" in window ? window.requestIdleCallback(() => {
7397
+ e.loadLanguages(o);
7398
+ }) : setTimeout(() => e.loadLanguages(o), 1e3);
7399
+ break;
7400
+ case "visible":
7401
+ if ("IntersectionObserver" in window) {
7402
+ const n = new IntersectionObserver(
7403
+ () => {
7404
+ e.loadLanguages(o), n.disconnect();
7405
+ },
7406
+ { threshold: 0.1 }
7407
+ );
7408
+ n.observe(document.body);
7409
+ } else
7410
+ e.loadLanguages(o);
7411
+ break;
7412
+ case "interaction":
7413
+ const a = () => {
7414
+ e.loadLanguages(o), window.removeEventListener("click", a), window.removeEventListener("keydown", a), window.removeEventListener("touchstart", a);
7415
+ };
7416
+ window.addEventListener("click", a, { once: !0 }), window.addEventListener("keydown", a, { once: !0 }), window.addEventListener("touchstart", a, { once: !0 });
7417
+ break;
7418
+ }
7419
+ }
7420
+ async function Ba(e, o) {
7421
+ const { fallback: t = "en", preferredLanguages: a = [] } = o || {};
7422
+ for (const r of a)
7423
+ if (j.includes(r))
7424
+ return await e.setLanguage(r), r;
7425
+ const n = navigator.language.split("-")[0].toLowerCase();
7426
+ return j.includes(n) ? (await e.setLanguage(n), n) : (await e.setLanguage(t), t);
5713
7427
  }
5714
7428
  export {
5715
- C as NICE_GLOSSARY,
5716
- c as NICE_I18N_DICTIONARIES,
5717
- E as NICE_SUPPORTED_LANGS,
5718
- xe as NiceI18nProvider,
5719
- Oe as RTLProvider,
5720
- f as RTL_CSS_VARS,
5721
- te as RTL_LANGUAGES,
5722
- Ie as analyzeStylesForRTL,
5723
- ve as createCurrencyFormatter,
5724
- he as createDateFormatter,
5725
- je as createICUTranslator,
5726
- ke as createNumberFormatter,
5727
- fe as createTimeFormatter,
5728
- Ae as createTranslator,
5729
- De as detectBrowserLanguage,
5730
- Ge as findSimilarTranslation,
5731
- de as flipAlignment,
5732
- Me as flipHorizontal,
5733
- ne as formatICU,
5734
- Ce as formatMessage,
5735
- Ze as generateCoverageReport,
5736
- Ke as generateTranslationCode,
5737
- ge as getAllTranslationStats,
5738
- Re as getDocumentDirection,
5739
- Je as getGlossaryForLanguage,
5740
- g as getLocaleTag,
5741
- ce as getLogicalProperty,
5742
- me as getMissingTranslations,
5743
- S as getOrdinalCategory,
5744
- x as getPluralCategory,
5745
- Ue as getRTLCSSVars,
5746
- We as getSourceKeys,
5747
- ie as getTextDirection,
5748
- ue as getTranslationStats,
5749
- A as isRTLLanguage,
5750
- X as isSupported,
5751
- we as lookupGlossary,
5752
- Te as ordinal,
5753
- Pe as plural,
5754
- le as rtlValue,
5755
- Fe as select,
5756
- se as setDocumentDirection,
5757
- Le as useIsRTL,
5758
- He as useNiceCurrencyFormat,
5759
- qe as useNiceDateFormat,
5760
- Ve as useNiceNumberFormat,
5761
- Be as useNiceTimeFormat,
5762
- Se as useNiceTranslation,
5763
- Ne as useRTL,
5764
- $e as validateAgainstGlossary
7429
+ U as CALENDAR_INFO,
7430
+ bo as CELESTIAL_STEMS,
7431
+ vo as CHINESE_ZODIAC,
7432
+ ie as DEFAULT_CALENDAR,
7433
+ Oa as DynamicI18nProvider,
7434
+ ga as HEBREW_MONTHS,
7435
+ ha as HEBREW_MONTHS_LEAP,
7436
+ ua as HIJRI_MONTHS,
7437
+ Z as JAPANESE_ERAS,
7438
+ te as NICE_GLOSSARY,
7439
+ v as NICE_I18N_DICTIONARIES,
7440
+ j as NICE_SUPPORTED_LANGS,
7441
+ Oo as NiceI18nProvider,
7442
+ wa as PERSIAN_MONTHS,
7443
+ Fa as PSEUDO_PRESETS,
7444
+ Pa as PseudoLocalizationProvider,
7445
+ qo as RTLProvider,
7446
+ H as RTL_CSS_VARS,
7447
+ $e as RTL_LANGUAGES,
7448
+ ne as TIMEZONE_GROUPS,
7449
+ Da as addAccents,
7450
+ Ao as addBidiMarkers,
7451
+ Aa as addBrackets,
7452
+ Ta as analyzeDictionary,
7453
+ Jo as analyzeStylesForRTL,
7454
+ To as containsNonAscii,
7455
+ re as convertTimezone,
7456
+ se as createCalendarFormatter,
7457
+ so as createCurrencyFormatter,
7458
+ no as createDateFormatter,
7459
+ me as createDynamicLoader,
7460
+ Na as createFetchLoader,
7461
+ Uo as createICUTranslator,
7462
+ Ma as createImportLoader,
7463
+ io as createNumberFormatter,
7464
+ ro as createTimeFormatter,
7465
+ go as createTimezoneFormatter,
7466
+ Lo as createTranslator,
7467
+ Ba as detectAndLoad,
7468
+ Io as detectBrowserLanguage,
7469
+ Po as detectHardcodedText,
7470
+ G as detectTimezone,
7471
+ zo as expandText,
7472
+ na as findSimilarTranslation,
7473
+ Qe as flipAlignment,
7474
+ Zo as flipHorizontal,
7475
+ Ge as formatICU,
7476
+ Bo as formatMessage,
7477
+ po as fromUTC,
7478
+ Xo as generateCoverageReport,
7479
+ Qo as generateTranslationCode,
7480
+ da as getAllTimezones,
7481
+ ao as getAllTranslationStats,
7482
+ Ea as getAvailableCalendars,
7483
+ Sa as getCalendarInfo,
7484
+ Ca as getCelestialStem,
7485
+ ba as getChineseZodiac,
7486
+ fo as getCurrentCalendarDate,
7487
+ Ko as getDocumentDirection,
7488
+ ra as getGlossaryForLanguage,
7489
+ pa as getHijriMonthDays,
7490
+ wo as getJapaneseEra,
7491
+ ka as getJapaneseYear,
7492
+ D as getLocaleTag,
7493
+ Xe as getLogicalProperty,
7494
+ eo as getMissingTranslations,
7495
+ ca as getNextDSTTransition,
7496
+ oe as getOrdinalCategory,
7497
+ ee as getPluralCategory,
7498
+ T as getPseudoLocalizationPreset,
7499
+ _o as getRTLCSSVars,
7500
+ za as getRecommendedCalendars,
7501
+ Yo as getSourceKeys,
7502
+ Je as getTextDirection,
7503
+ N as getTimezoneInfo,
7504
+ la as getTimezonesGrouped,
7505
+ oo as getTranslationStats,
7506
+ W as isDSTActive,
7507
+ fa as isHebrewLeapYear,
7508
+ ko as isHijriLeapYear,
7509
+ va as isPersianLeapYear,
7510
+ ae as isRTLLanguage,
7511
+ He as isSupported,
7512
+ sa as isValidTimezone,
7513
+ co as lookupGlossary,
7514
+ Ho as ordinal,
7515
+ Vo as plural,
7516
+ La as preloadWithStrategy,
7517
+ le as pseudoLocalize,
7518
+ xa as pseudoLocalizeDictionary,
7519
+ Ye as rtlValue,
7520
+ Wo as select,
7521
+ _e as setDocumentDirection,
7522
+ de as toCalendar,
7523
+ uo as toUTC,
7524
+ ya as useCalendar,
7525
+ Fo as useDynamicI18n,
7526
+ Ra as useDynamicTranslation,
7527
+ $o as useIsRTL,
7528
+ ta as useNiceCurrencyFormat,
7529
+ ea as useNiceDateFormat,
7530
+ aa as useNiceNumberFormat,
7531
+ oa as useNiceTimeFormat,
7532
+ Ro as useNiceTranslation,
7533
+ ja as usePseudoLocalization,
7534
+ Go as useRTL,
7535
+ ma as useTimezone,
7536
+ ia as validateAgainstGlossary
5765
7537
  };