@rebasepro/app 0.0.1-canary.4829d6e

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.
Files changed (268) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +174 -0
  3. package/dist/auth/api.d.ts +66 -0
  4. package/dist/auth/index.d.ts +13 -0
  5. package/dist/auth/types.d.ts +127 -0
  6. package/dist/auth/useRebaseAuthController.d.ts +13 -0
  7. package/dist/components/AIIcon.d.ts +17 -0
  8. package/dist/components/AuthSimulationMenu.d.ts +0 -0
  9. package/dist/components/ConfirmationDialog.d.ts +9 -0
  10. package/dist/components/Debug/UIReferenceView.d.ts +13 -0
  11. package/dist/components/Debug/UIStyleGuide.d.ts +2 -0
  12. package/dist/components/Debug/collection-views/CardViewDemo.d.ts +2 -0
  13. package/dist/components/Debug/collection-views/CollectionTableDemo.d.ts +2 -0
  14. package/dist/components/Debug/collection-views/KanbanBoardDemo.d.ts +2 -0
  15. package/dist/components/Debug/collection-views/index.d.ts +3 -0
  16. package/dist/components/Debug/collection-views/sample_data.d.ts +23 -0
  17. package/dist/components/Debug/crm-dashboard/CalendarWidget.d.ts +22 -0
  18. package/dist/components/Debug/crm-dashboard/CrmDashboardDemo.d.ts +2 -0
  19. package/dist/components/Debug/crm-dashboard/DashboardMetrics.d.ts +15 -0
  20. package/dist/components/Debug/crm-dashboard/PipelineOverview.d.ts +34 -0
  21. package/dist/components/Debug/crm-dashboard/RecentActivity.d.ts +19 -0
  22. package/dist/components/Debug/crm-dashboard/TaskFilters.d.ts +30 -0
  23. package/dist/components/Debug/crm-dashboard/TaskTable.d.ts +50 -0
  24. package/dist/components/Debug/crm-dashboard/TasksView.d.ts +41 -0
  25. package/dist/components/ErrorTooltip.d.ts +3 -0
  26. package/dist/components/ErrorView.d.ts +21 -0
  27. package/dist/components/LanguageToggle.d.ts +2 -0
  28. package/dist/components/LoginView/LoginView.d.ts +113 -0
  29. package/dist/components/LoginView/index.d.ts +2 -0
  30. package/dist/components/NotFoundPage.d.ts +2 -0
  31. package/dist/components/RebaseAuth.d.ts +10 -0
  32. package/dist/components/RebaseLogo.d.ts +7 -0
  33. package/dist/components/SchemaDriftBanner.d.ts +27 -0
  34. package/dist/components/UnsavedChangesDialog.d.ts +9 -0
  35. package/dist/components/UserDisplay.d.ts +7 -0
  36. package/dist/components/UserSelectPopover.d.ts +63 -0
  37. package/dist/components/UserSettingsView.d.ts +2 -0
  38. package/dist/components/common/index.d.ts +6 -0
  39. package/dist/components/common/table_height.d.ts +5 -0
  40. package/dist/components/common/types.d.ts +66 -0
  41. package/dist/components/common/useColumnsIds.d.ts +9 -0
  42. package/dist/components/common/useDataTableController.d.ts +45 -0
  43. package/dist/components/common/useDebouncedData.d.ts +9 -0
  44. package/dist/components/common/useScrollRestoration.d.ts +14 -0
  45. package/dist/components/index.d.ts +18 -0
  46. package/dist/contexts/AdminModeController.d.ts +4 -0
  47. package/dist/contexts/AnalyticsContext.d.ts +3 -0
  48. package/dist/contexts/AuthControllerContext.d.ts +3 -0
  49. package/dist/contexts/CollectionScopeContext.d.ts +50 -0
  50. package/dist/contexts/ComponentOverrideContext.d.ts +42 -0
  51. package/dist/contexts/CustomizationControllerContext.d.ts +3 -0
  52. package/dist/contexts/DataDriverContext.d.ts +3 -0
  53. package/dist/contexts/DataSourcesContext.d.ts +31 -0
  54. package/dist/contexts/DatabaseAdminContext.d.ts +3 -0
  55. package/dist/contexts/DialogsProvider.d.ts +4 -0
  56. package/dist/contexts/EffectiveRoleController.d.ts +4 -0
  57. package/dist/contexts/ModeController.d.ts +4 -0
  58. package/dist/contexts/RebaseClientInstanceContext.d.ts +6 -0
  59. package/dist/contexts/RebaseDataContext.d.ts +3 -0
  60. package/dist/contexts/SnackbarProvider.d.ts +2 -0
  61. package/dist/contexts/StorageSourceContext.d.ts +3 -0
  62. package/dist/contexts/StorageSourcesContext.d.ts +25 -0
  63. package/dist/contexts/UserConfigurationPersistenceContext.d.ts +3 -0
  64. package/dist/contexts/index.d.ts +17 -0
  65. package/dist/core/PluginLifecycleManager.d.ts +17 -0
  66. package/dist/core/PluginProviderStack.d.ts +21 -0
  67. package/dist/core/Rebase.d.ts +15 -0
  68. package/dist/core/RebaseProps.d.ts +291 -0
  69. package/dist/core/RebaseRouter.d.ts +4 -0
  70. package/dist/core/RebaseRoutes.d.ts +17 -0
  71. package/dist/core/index.d.ts +4 -0
  72. package/dist/hooks/ApiConfigContext.d.ts +24 -0
  73. package/dist/hooks/data/delete.d.ts +33 -0
  74. package/dist/hooks/data/save.d.ts +40 -0
  75. package/dist/hooks/data/useCollection.d.ts +62 -0
  76. package/dist/hooks/data/useData.d.ts +13 -0
  77. package/dist/hooks/data/useDataOrder.d.ts +12 -0
  78. package/dist/hooks/data/useFetch.d.ts +43 -0
  79. package/dist/hooks/data/useRelationSelector.d.ts +52 -0
  80. package/dist/hooks/index.d.ts +36 -0
  81. package/dist/hooks/useAdminModeController.d.ts +19 -0
  82. package/dist/hooks/useAnalyticsController.d.ts +5 -0
  83. package/dist/hooks/useAuthController.d.ts +11 -0
  84. package/dist/hooks/useAuthSubscription.d.ts +2 -0
  85. package/dist/hooks/useBackendStorageSource.d.ts +30 -0
  86. package/dist/hooks/useBridgeRegistration.d.ts +18 -0
  87. package/dist/hooks/useBrowserTitleAndIcon.d.ts +6 -0
  88. package/dist/hooks/useBuildAdminModeController.d.ts +6 -0
  89. package/dist/hooks/useBuildEffectiveRoleController.d.ts +8 -0
  90. package/dist/hooks/useBuildLocalConfigurationPersistence.d.ts +2 -0
  91. package/dist/hooks/useBuildModeController.d.ts +6 -0
  92. package/dist/hooks/useClipboard.d.ts +57 -0
  93. package/dist/hooks/useCollapsedGroups.d.ts +27 -0
  94. package/dist/hooks/useComponentOverride.d.ts +32 -0
  95. package/dist/hooks/useCustomizationController.d.ts +11 -0
  96. package/dist/hooks/useDialogsController.d.ts +11 -0
  97. package/dist/hooks/useEffectiveRoleController.d.ts +7 -0
  98. package/dist/hooks/useLargeLayout.d.ts +1 -0
  99. package/dist/hooks/useModeController.d.ts +19 -0
  100. package/dist/hooks/usePermissions.d.ts +12 -0
  101. package/dist/hooks/useRebaseClient.d.ts +5 -0
  102. package/dist/hooks/useRebaseContext.d.ts +11 -0
  103. package/dist/hooks/useRebaseRegistry.d.ts +34 -0
  104. package/dist/hooks/useResolvedComponent.d.ts +47 -0
  105. package/dist/hooks/useSlot.d.ts +18 -0
  106. package/dist/hooks/useSnackbarController.d.ts +20 -0
  107. package/dist/hooks/useStorageSource.d.ts +6 -0
  108. package/dist/hooks/useStudioBridge.d.ts +79 -0
  109. package/dist/hooks/useTranslation.d.ts +17 -0
  110. package/dist/hooks/useUnsavedChangesDialog.d.ts +12 -0
  111. package/dist/hooks/useUserConfigurationPersistence.d.ts +8 -0
  112. package/dist/i18n/RebaseI18nProvider.d.ts +33 -0
  113. package/dist/index.d.ts +16 -0
  114. package/dist/index.es.js +16843 -0
  115. package/dist/index.es.js.map +1 -0
  116. package/dist/index.umd.js +17021 -0
  117. package/dist/index.umd.js.map +1 -0
  118. package/dist/internal/common.d.ts +14 -0
  119. package/dist/internal/useRestoreScroll.d.ts +15 -0
  120. package/dist/locales/de.d.ts +2 -0
  121. package/dist/locales/en.d.ts +10 -0
  122. package/dist/locales/es.d.ts +10 -0
  123. package/dist/locales/fr.d.ts +2 -0
  124. package/dist/locales/hi.d.ts +2 -0
  125. package/dist/locales/it.d.ts +2 -0
  126. package/dist/locales/pt.d.ts +7 -0
  127. package/dist/util/constants.d.ts +1 -0
  128. package/dist/util/createFormexStub.d.ts +2 -0
  129. package/dist/util/entity_cache.d.ts +22 -0
  130. package/dist/util/enums.d.ts +5 -0
  131. package/dist/util/icon_list.d.ts +5 -0
  132. package/dist/util/icons.d.ts +20 -0
  133. package/dist/util/index.d.ts +8 -0
  134. package/dist/util/previews.d.ts +4 -0
  135. package/dist/util/useStorageUploadController.d.ts +44 -0
  136. package/dist/vitePlugin.d.ts +60 -0
  137. package/dist/vitePlugin.js +113 -0
  138. package/package.json +145 -0
  139. package/src/auth/api.ts +148 -0
  140. package/src/auth/index.ts +25 -0
  141. package/src/auth/types.ts +115 -0
  142. package/src/auth/useRebaseAuthController.ts +328 -0
  143. package/src/components/AIIcon.tsx +47 -0
  144. package/src/components/AuthSimulationMenu.tsx +0 -0
  145. package/src/components/ConfirmationDialog.tsx +48 -0
  146. package/src/components/Debug/UIReferenceView.tsx +958 -0
  147. package/src/components/Debug/UIStyleGuide.tsx +156 -0
  148. package/src/components/Debug/collection-views/CardViewDemo.tsx +85 -0
  149. package/src/components/Debug/collection-views/CollectionTableDemo.tsx +107 -0
  150. package/src/components/Debug/collection-views/KanbanBoardDemo.tsx +90 -0
  151. package/src/components/Debug/collection-views/index.ts +3 -0
  152. package/src/components/Debug/collection-views/sample_data.ts +42 -0
  153. package/src/components/Debug/crm-dashboard/CalendarWidget.tsx +389 -0
  154. package/src/components/Debug/crm-dashboard/CrmDashboardDemo.tsx +1102 -0
  155. package/src/components/Debug/crm-dashboard/DashboardMetrics.tsx +133 -0
  156. package/src/components/Debug/crm-dashboard/PipelineOverview.tsx +290 -0
  157. package/src/components/Debug/crm-dashboard/RecentActivity.tsx +215 -0
  158. package/src/components/Debug/crm-dashboard/TaskFilters.tsx +184 -0
  159. package/src/components/Debug/crm-dashboard/TaskTable.tsx +427 -0
  160. package/src/components/Debug/crm-dashboard/TasksView.tsx +234 -0
  161. package/src/components/ErrorTooltip.tsx +12 -0
  162. package/src/components/ErrorView.tsx +94 -0
  163. package/src/components/LanguageToggle.tsx +59 -0
  164. package/src/components/LoginView/LoginView.tsx +932 -0
  165. package/src/components/LoginView/index.ts +2 -0
  166. package/src/components/NotFoundPage.tsx +27 -0
  167. package/src/components/RebaseAuth.tsx +27 -0
  168. package/src/components/RebaseLogo.tsx +29 -0
  169. package/src/components/SchemaDriftBanner.tsx +102 -0
  170. package/src/components/UnsavedChangesDialog.tsx +46 -0
  171. package/src/components/UserDisplay.tsx +54 -0
  172. package/src/components/UserSelectPopover.tsx +399 -0
  173. package/src/components/UserSettingsView.tsx +318 -0
  174. package/src/components/common/index.ts +6 -0
  175. package/src/components/common/table_height.tsx +21 -0
  176. package/src/components/common/types.tsx +66 -0
  177. package/src/components/common/useColumnsIds.tsx +222 -0
  178. package/src/components/common/useDataTableController.tsx +514 -0
  179. package/src/components/common/useDebouncedData.ts +49 -0
  180. package/src/components/common/useScrollRestoration.tsx +68 -0
  181. package/src/components/index.tsx +26 -0
  182. package/src/contexts/AdminModeController.tsx +11 -0
  183. package/src/contexts/AnalyticsContext.tsx +4 -0
  184. package/src/contexts/AuthControllerContext.tsx +4 -0
  185. package/src/contexts/CollectionScopeContext.tsx +67 -0
  186. package/src/contexts/ComponentOverrideContext.tsx +81 -0
  187. package/src/contexts/CustomizationControllerContext.tsx +4 -0
  188. package/src/contexts/DataDriverContext.tsx +4 -0
  189. package/src/contexts/DataSourcesContext.tsx +36 -0
  190. package/src/contexts/DatabaseAdminContext.tsx +4 -0
  191. package/src/contexts/DialogsProvider.tsx +56 -0
  192. package/src/contexts/EffectiveRoleController.tsx +12 -0
  193. package/src/contexts/ModeController.tsx +11 -0
  194. package/src/contexts/RebaseClientInstanceContext.tsx +7 -0
  195. package/src/contexts/RebaseDataContext.tsx +4 -0
  196. package/src/contexts/SnackbarProvider.tsx +15 -0
  197. package/src/contexts/StorageSourceContext.tsx +4 -0
  198. package/src/contexts/StorageSourcesContext.tsx +30 -0
  199. package/src/contexts/UserConfigurationPersistenceContext.tsx +4 -0
  200. package/src/contexts/index.ts +17 -0
  201. package/src/core/PluginLifecycleManager.tsx +95 -0
  202. package/src/core/PluginProviderStack.tsx +40 -0
  203. package/src/core/Rebase.tsx +439 -0
  204. package/src/core/RebaseProps.tsx +320 -0
  205. package/src/core/RebaseRouter.tsx +17 -0
  206. package/src/core/RebaseRoutes.tsx +24 -0
  207. package/src/core/index.tsx +5 -0
  208. package/src/hooks/ApiConfigContext.tsx +41 -0
  209. package/src/hooks/data/delete.ts +55 -0
  210. package/src/hooks/data/save.ts +77 -0
  211. package/src/hooks/data/useCollection.tsx +176 -0
  212. package/src/hooks/data/useData.tsx +18 -0
  213. package/src/hooks/data/useDataOrder.ts +26 -0
  214. package/src/hooks/data/useFetch.tsx +140 -0
  215. package/src/hooks/data/useRelationSelector.tsx +234 -0
  216. package/src/hooks/index.tsx +45 -0
  217. package/src/hooks/useAdminModeController.tsx +23 -0
  218. package/src/hooks/useAnalyticsController.tsx +8 -0
  219. package/src/hooks/useAuthController.tsx +14 -0
  220. package/src/hooks/useAuthSubscription.ts +87 -0
  221. package/src/hooks/useBackendStorageSource.ts +288 -0
  222. package/src/hooks/useBridgeRegistration.tsx +32 -0
  223. package/src/hooks/useBrowserTitleAndIcon.tsx +23 -0
  224. package/src/hooks/useBuildAdminModeController.tsx +24 -0
  225. package/src/hooks/useBuildEffectiveRoleController.tsx +31 -0
  226. package/src/hooks/useBuildLocalConfigurationPersistence.tsx +75 -0
  227. package/src/hooks/useBuildModeController.tsx +71 -0
  228. package/src/hooks/useClipboard.tsx +158 -0
  229. package/src/hooks/useCollapsedGroups.ts +116 -0
  230. package/src/hooks/useComponentOverride.tsx +59 -0
  231. package/src/hooks/useCustomizationController.tsx +14 -0
  232. package/src/hooks/useDialogsController.tsx +15 -0
  233. package/src/hooks/useEffectiveRoleController.tsx +10 -0
  234. package/src/hooks/useLargeLayout.tsx +65 -0
  235. package/src/hooks/useModeController.tsx +23 -0
  236. package/src/hooks/usePermissions.ts +44 -0
  237. package/src/hooks/useRebaseClient.tsx +10 -0
  238. package/src/hooks/useRebaseContext.tsx +83 -0
  239. package/src/hooks/useRebaseRegistry.tsx +91 -0
  240. package/src/hooks/useResolvedComponent.tsx +159 -0
  241. package/src/hooks/useSlot.tsx +64 -0
  242. package/src/hooks/useSnackbarController.tsx +52 -0
  243. package/src/hooks/useStorageSource.tsx +11 -0
  244. package/src/hooks/useStudioBridge.tsx +209 -0
  245. package/src/hooks/useTranslation.ts +33 -0
  246. package/src/hooks/useUnsavedChangesDialog.tsx +64 -0
  247. package/src/hooks/useUserConfigurationPersistence.tsx +11 -0
  248. package/src/i18n/RebaseI18nProvider.tsx +160 -0
  249. package/src/index.ts +25 -0
  250. package/src/internal/common.tsx +16 -0
  251. package/src/internal/useRestoreScroll.tsx +69 -0
  252. package/src/locales/de.ts +902 -0
  253. package/src/locales/en.ts +980 -0
  254. package/src/locales/es.ts +922 -0
  255. package/src/locales/fr.ts +901 -0
  256. package/src/locales/hi.ts +901 -0
  257. package/src/locales/it.ts +901 -0
  258. package/src/locales/pt.ts +909 -0
  259. package/src/util/constants.ts +7 -0
  260. package/src/util/createFormexStub.tsx +66 -0
  261. package/src/util/entity_cache.ts +239 -0
  262. package/src/util/enums.ts +32 -0
  263. package/src/util/icon_list.ts +22 -0
  264. package/src/util/icons.tsx +149 -0
  265. package/src/util/index.ts +12 -0
  266. package/src/util/previews.ts +105 -0
  267. package/src/util/useStorageUploadController.tsx +350 -0
  268. package/src/vitePlugin.ts +196 -0
@@ -0,0 +1,901 @@
1
+ import { RebaseTranslations } from "@rebasepro/types";
2
+
3
+ export const hi: RebaseTranslations = {
4
+ // ─── Form actions ────────────────────────────────────────────
5
+ save: "सहेजें",
6
+ create: "बनाएं",
7
+ create_copy: "प्रतिलिपि बनाएं",
8
+ save_and_close: "सहेजें और बंद करें",
9
+ create_copy_and_close: "प्रतिलिपि बनाएं और बंद करें",
10
+ create_and_close: "बनाएं और बंद करें",
11
+ discard: "रद्द करें (Discard)",
12
+ clear: "साफ़ करें",
13
+ cancel: "रद्द करें (Cancel)",
14
+
15
+ // ─── Entity actions ──────────────────────────────────────────
16
+ edit: "संपादित करें",
17
+ copy: "कॉपी करें",
18
+ delete: "हटाएं",
19
+ delete_not_allowed: "आपने कम से कम एक ऐसी इकाई चुनी है जिसे आप हटा नहीं सकते",
20
+
21
+ // ─── Delete dialog ───────────────────────────────────────────
22
+ delete_confirmation_title: "हटाएं?",
23
+ delete_confirmation_body: "इससे इकाई (entity) हटा दी जाएगी। क्या आप सुनिश्चित हैं?",
24
+ delete_multiple_confirmation_body: "इससे चयनित इकाइयां (entities) हटा दी जाएंगी। क्या आप सुनिश्चित हैं?",
25
+
26
+ // ─── Unsaved-changes dialog ───────────────────────────────────
27
+ unsaved_changes_title: "सहेजे नहीं गए परिवर्तन",
28
+ unsaved_changes_body: "आपके पास सहेजे नहीं गए परिवर्तन हैं। क्या आप उन्हें रद्द करना चाहते हैं?",
29
+ discard_changes: "परिवर्तन रद्द करें",
30
+ keep_editing: "संपादन जारी रखें",
31
+ clear_form: "फ़ॉर्म साफ़ करें?",
32
+ discard_changes_confirmation: "सभी सहेजे नहीं गए परिवर्तन खो जाएँगे। इसे पूर्ववत नहीं किया जा सकता।",
33
+ clear_form_confirmation: "सभी दर्ज किए गए मान साफ़ कर दिए जाएँगे। इसे पूर्ववत नहीं किया जा सकता।",
34
+
35
+ // ─── Collection table / toolbar ──────────────────────────────
36
+ search: "खोजें",
37
+ find_by_id: "ID द्वारा खोजें",
38
+ find_entity_by_id: "ID द्वारा इकाई खोजें",
39
+ filter: "फ़िल्टर",
40
+ filters: "फ़िल्टर",
41
+ clear_filter: "फ़िल्टर साफ़ करें",
42
+ clear_filter_sort: "फ़िल्टर/सॉर्ट साफ़ करें",
43
+ clear_sort: "सॉर्ट साफ़ करें",
44
+ clear_all: "सभी साफ़ करें",
45
+ no_items: "कोई आइटम नहीं",
46
+ no_entries_found: "कोई प्रविष्टि नहीं मिली",
47
+ all_entries_loaded: "सभी {{count}} प्रविष्टियाँ लोड हो गईं",
48
+ create_your_first_entry: "अपनी पहली प्रविष्टि बनाएं",
49
+ no_results_filter_sort: "लागू किए गए फ़िल्टर/सॉर्ट के साथ कोई परिणाम नहीं",
50
+ no_results_search: "\"{{search}}\" के लिए कोई परिणाम नहीं मिला",
51
+ add: "जोड़ें",
52
+ remove: "हटाएं",
53
+ multiple_entities: "एकाधिक इकाइयां",
54
+ unsaved_changes: "आपके पास {{collectionName}} में सहेजे नहीं गए परिवर्तन हैं।",
55
+ so_empty: "इतना खाली...",
56
+ no_results: "लागू किए गए फ़िल्टर/सॉर्ट के साथ कोई परिणाम नहीं",
57
+ refresh_data: "डेटा रीफ़्रेश करें",
58
+ dark_mode: "डार्क",
59
+ light_mode: "लाइट",
60
+ system_mode: "सिस्टम",
61
+ ok: "ठीक है",
62
+ save_collection_config: "संग्रह संरचना सहेजें",
63
+ search_for_more_icons: "और आइकन खोजें…",
64
+ ai_modified: "AI द्वारा संशोधित",
65
+ size_label: "आकार",
66
+ group_by: "इसके द्वारा समूहित करें",
67
+ initialize_kanban_order: "कानबन क्रम प्रारंभ करें",
68
+ copy_id: "ID कॉपी करें",
69
+ add_specific: "विशिष्ट {{name}} जोड़ें",
70
+ select_specific: "विशिष्ट {{name}} चुनें",
71
+ select_from: "{{name}} से चुनें",
72
+ done: "हो गया",
73
+ log_out: "लॉग आउट",
74
+ column_cannot_be_edited: "इस कॉलम को सीधे संपादित नहीं किया जा सकता",
75
+ close: "बंद करें",
76
+ unsaved_local_changes: "सहेजे नहीं गए स्थानीय परिवर्तन",
77
+ unsaved_local_changes_description: "इस दस्तावेज़ को स्थानीय स्तर पर संपादित किया गया था और इसमें सहेजे नहीं गए परिवर्तन हैं। यदि आप इन्हें लागू नहीं करते हैं तो ये स्थानीय परिवर्तन खो जाएंगे।",
78
+ preview_changes: "परिवर्तनों का पूर्वावलोकन करें",
79
+ apply_changes: "परिवर्तन लागू करें",
80
+ discard_local_changes: "स्थानीय परिवर्तन रद्द करें",
81
+ preview_local_changes: "स्थानीय परिवर्तनों का पूर्वावलोकन करें",
82
+ preview_local_changes_description: "ये वे स्थानीय परिवर्तन हैं जिन्हें फॉर्म पर लागू किया जाएगा।",
83
+ type: "प्रकार",
84
+ string: "स्ट्रिंग",
85
+ number: "नंबर",
86
+ boolean: "बूलियन",
87
+ date: "दिनांक",
88
+ map: "मैप",
89
+ array: "ऐरे",
90
+ arrays_of_arrays_not_supported: "ऐरे के ऐरे समर्थित नहीं हैं।",
91
+ data_type_not_supported: "डेटा प्रकार {{dataType}} अभी समर्थित नहीं है",
92
+ passkey_error_unsupported: "आपका डिवाइस या ब्राउज़र पासकी का समर्थन नहीं करता है।",
93
+
94
+ // ─── Entity form feedback ─────────────────────────────────────
95
+ saved_correctly: "सफलतापूर्वक सहेजा गया",
96
+ error_before_saving: "डेटा तैयार करने में त्रुटि",
97
+ error_after_saving: "सहेजने के बाद की प्रक्रिया में त्रुटि",
98
+ error_saving_entity: "प्रविष्टि सहेजने में त्रुटि",
99
+ entity_does_not_exist: "यह प्रविष्टि डेटाबेस में मौजूद नहीं है",
100
+ form_modified: "इस फ़ॉर्म में बदलाव किए गए हैं",
101
+ form_in_sync: "वर्तमान फ़ॉर्म डेटाबेस के साथ सिंक में है",
102
+ fix_errors_before_saving: "सहेजने से पहले हाइलाइट की गई त्रुटियों को ठीक करें",
103
+
104
+ admin: "एडमिन",
105
+ home: "होम",
106
+ this_form_has_errors: "इस फॉर्म में त्रुटियाँ हैं",
107
+ error_loading_navigation: "नेविगेशन लोड करने में त्रुटि",
108
+ error_loading_auth: "प्रमाणीकरण लोड करने में त्रुटि",
109
+ this_form_has_been_modified: "इस फॉर्म को संशोधित किया गया है",
110
+ current_form_in_sync: "वर्तमान फॉर्म डेटाबेस के साथ सिंक में है",
111
+ open_in_console: "कंसोल में खोलें",
112
+ collection_does_not_exist: "निर्दिष्ट संग्रह मौजूद नहीं है। कंसोल चेक करें",
113
+ unexpected_value: "अप्रत्याशित मान",
114
+ unexpected_value_click_to_edit: "अप्रत्याशित मान। संपादित करने के लिए क्लिक करें",
115
+ unexpected_reference_value: "अप्रत्याशित संदर्भ मान। संपादित करने के लिए क्लिक करें",
116
+ copy_url_to_clipboard: "क्लिपबोर्ड पर URL कॉपी करें",
117
+ open_image_in_new_tab: "नई टैब में छवि खोलें",
118
+ reference_not_set: "संदर्भ सेट नहीं है",
119
+ reference_does_not_exist: "संदर्भ मौजूद नहीं है",
120
+ entity_not_found: "इकाई नहीं मिली",
121
+ file_not_found: "फ़ाइल नहीं मिली",
122
+ unsaved_changes_in_entity: "आपके पास इस इकाई में सहेजे नहीं गए परिवर्तन हैं।",
123
+ delete_this_role: "यह भूमिका हटाएं",
124
+ no_roles_yet: "आपके पास अभी तक कोई भूमिका नहीं है।",
125
+ create_default_roles: "डिफ़ॉल्ट भूमिकाएँ बनाएँ",
126
+ delete_role_confirmation: "क्या आप वाकई इस भूमिका को हटाना चाहते हैं?",
127
+ delete_this_user: "इस उपयोगकर्ता को हटाएं",
128
+ no_users_yet: "अभी तक कोई उपयोगकर्ता नहीं है",
129
+ add_logged_user_as_admin: "लॉग इन उपयोगकर्ता को एडमिन के रूप में जोड़ें",
130
+ add_current_user_as_admin: "वर्तमान उपयोगकर्ता को एडमिन के रूप में जोड़ें",
131
+ create_default_roles_and_add_admin: "डिफ़ॉल्ट भूमिकाएँ बनाएं और वर्तमान उपयोगकर्ता को एडमिन के रूप में जोड़ें",
132
+ delete_user_confirmation: "क्या आप वाकई इस उपयोगकर्ता को हटाना चाहते हैं?",
133
+ create_your_users_and_roles: "अपने उपयोगकर्ता और भूमिकाएँ बनाएँ",
134
+ no_users_or_roles_defined: "आपके पास कोई उपयोगकर्ता या भूमिका परिभाषित नहीं है। आप डिफ़ॉल्ट भूमिकाएँ बना सकते हैं और वर्तमान उपयोगकर्ता को एडमिन के रूप में जोड़ सकते हैं।",
135
+ no_permission_to_view_users: "आपको उपयोगकर्ताओं को देखने की अनुमति नहीं है",
136
+ no_permission_to_view_roles: "आपको भूमिकाओं को देखने की अनुमति नहीं है",
137
+ no_permission_description: "यदि आपको इस अनुभाग तक पहुँच की आवश्यकता है तो किसी व्यवस्थापक से संपर्क करें।",
138
+ save_before_changing_schema: "स्कीमा बदलने से पहले आपको दस्तावेज़ सहेजना होगा",
139
+ edit_schema_for_this_form: "इस फॉर्म के लिए स्कीमा संपादित करें",
140
+ no_permissions_to_edit_collection: "आपके पास इस संग्रह को संपादित करने की अनुमति नहीं है",
141
+ browser_does_not_support_audio: "आपका ब्राउज़र ऑडियो तत्व का समर्थन नहीं करता है।",
142
+ user_not_found: "उपयोगकर्ता नहीं मिला: {{value}}",
143
+
144
+ // ─── Collection view actions ──────────────────────────────────
145
+ delete_selected: "चयनित हटाएं",
146
+ cannot_delete_selected: "आपने कम से कम एक इकाई का चयन किया है जिसे आप हटा नहीं सकते",
147
+
148
+ // ─── Array / field containers ─────────────────────────────────
149
+ add_entry: "जोड़ें",
150
+ add_on_top: "शीर्ष पर जोड़ें",
151
+ add_below: "नीचे जोड़ें",
152
+ add_to_field: "{{fieldName}} में जोड़ें",
153
+ value: "मान",
154
+ key: "कुंजी",
155
+ drag_drop_multiple: "कुछ फ़ाइलों को यहां खींचें और छोड़ें, या फ़ाइलों का चयन करने के लिए क्लिक करें। पुन: क्रमबद्ध करने के लिए खींचें।",
156
+ drag_drop_single: "किसी फ़ाइल को यहां खींचें और छोड़ें, या किसी एक का चयन करने के लिए क्लिक करें",
157
+
158
+ // ─── Navigation / scaffold ────────────────────────────────────
159
+ open_menu: "मेनू खोलें",
160
+ close_drawer: "ड्रॉअर बंद करें",
161
+ navigation_drawer: "नेविगेशन ड्रॉअर",
162
+ collapse: "संक्षिप्त करें",
163
+ expand: "विस्तार करें",
164
+
165
+ // ─── Error states ─────────────────────────────────────────────
166
+ error: "त्रुटि",
167
+ error_uploading_file: "फ़ाइल अपलोड करने में त्रुटि",
168
+ error_deleting: "हटाने में त्रुटि",
169
+ error_before_delete: "हटाने से पहले त्रुटि",
170
+ error_updating_asset: "एसेट अपडेट करने में त्रुटि",
171
+ error_deleting_asset: "एसेट हटाने में त्रुटि",
172
+ error_firestore_index: "इस क्वेरी के लिए Firestore इंडेक्स आवश्यक है।",
173
+ create_index: "इंडेक्स बनाएं",
174
+ value_is_not_reference: "मान एक संदर्भ नहीं है।",
175
+ click_to_edit: "संपादित करने के लिए क्लिक करें",
176
+ data_is_not_array_of_references: "डेटा संदर्भों का ऐरे नहीं है",
177
+
178
+ // ─── Misc ─────────────────────────────────────────────────────
179
+ loading: "लोड हो रहा है",
180
+ local_changes_applied: "स्थानीय परिवर्तन फॉर्म पर लागू किए गए",
181
+ local_changes_discarded: "स्थानीय परिवर्तन रद्द किए गए",
182
+ are_you_sure_leave: "क्या आप वाकई इस पृष्ठ को छोड़ना चाहते हैं?",
183
+ see_console_details: "अधिक विवरण के लिए कंसोल देखें।",
184
+ drop_here_create_group: "नया समूह बनाने के लिए यहां छोड़ें",
185
+ filter_for_null_values: "रिक्त (नल्ल) मानों के लिए फ़िल्टर करें",
186
+ value_updated_elsewhere: "इस मान को कहीं और अपडेट किया गया है",
187
+ add_property: "विशेषता (प्रॉपर्टी) जोड़ें",
188
+ edit_name: "{{name}} संपादित करें",
189
+ this_entity_not_exist: "यह इकाई डेटाबेस में मौजूद नहीं है",
190
+ internal_error: "आंतरिक त्रुटि (Internal ERROR)",
191
+
192
+ // ─── Rename group dialog ──────────────────────────────────────
193
+ rename_group: "समूह का नाम बदलें",
194
+ group_name_label: "समूह का नाम",
195
+ group_name_empty_error: "समूह का नाम खाली नहीं हो सकता।",
196
+ group_name_exists_error: "यह समूह नाम पहले से मौजूद है।",
197
+
198
+ // ─── Search ───────────────────────────────────────────────────
199
+ search_collections: "संग्रह खोजें",
200
+
201
+ // ─── Navigation groups ────────────────────────────────────────
202
+ views_group: "दृश्य",
203
+
204
+ // ─── Entity Edit View ─────────────────────────────────────────
205
+ youd_need_to_save_before_additional_collections: "अतिरिक्त संग्रह जोड़ने से पहले आपको अपनी इकाई को सहेजना होगा",
206
+
207
+ // ─── Not Found Page ───────────────────────────────────────────
208
+ page_not_found: "पृष्ठ नहीं मिला",
209
+ page_not_found_body: "यह पृष्ठ मौजूद नहीं है या आपके पास इस तक पहुंच नहीं हो सकती है",
210
+ back_to_home: "होम पर वापस जाएँ",
211
+
212
+ // ─── Collection Editor ─────────────────────────────────────────
213
+ default_collection_view: "डिफ़ॉल्ट संग्रह दृश्य",
214
+ table_view: "तालिका",
215
+ cards_view: "कार्ड्स",
216
+ kanban_view: "कानबन",
217
+ choose_how_entities_displayed_default: "चुनें कि डिफ़ॉल्ट रूप से इकाइयां कैसे प्रदर्शित होनी चाहिए",
218
+
219
+ document_view: "दस्तावेज़ दृश्य",
220
+ side_panel: "साइड पैनल",
221
+ full_screen: "पूरी स्क्रीन",
222
+ should_documents_opened_full_screen: "क्या दस्तावेज़ों को फ़ुल स्क्रीन में या इनलाइन साइड डायलॉग में खोला जाना चाहिए",
223
+
224
+ select_custom_view: "कस्टम दृश्य चुनें",
225
+ no_custom_views_defined: "कोई कस्टम दृश्य परिभाषित नहीं है। इस डायलॉग का उपयोग करने से पहले कस्टमाइज़ेशन सेटिंग्स में अपने कस्टम दृश्य परिभाषित करें।",
226
+
227
+ select_custom_action: "कस्टम कार्रवाई चुनें",
228
+ no_custom_actions_defined: "कोई कस्टम कार्रवाई परिभाषित नहीं है। इस डायलॉग का उपयोग करने से पहले कस्टमाइज़ेशन सेटिंग्स में अपनी कस्टम कार्रवाइयाँ परिभाषित करें।",
229
+
230
+ no_collections_found: "कोई संग्रह नहीं मिला",
231
+ start_building_collections: "Rebase में आसानी से संग्रह बनाना शुरू करें। उन्हें अपने मौजूदा डेटाबेस डेटा पर मैप करें, फ़ाइलों से आयात करें या हमारे टेम्प्लेट का उपयोग करें।",
232
+ create_first_collection: "अपना पहला संग्रह बनाएं",
233
+ define_collections_programmatically: "आप संग्रहों को प्रोग्रामेटिक रूप से भी परिभाषित कर सकते हैं।",
234
+ edit_collection: "संग्रह संपादित करें",
235
+ no_permissions_edit_collection: "आपके पास इस संग्रह को संपादित करने की अनुमति नहीं है",
236
+ no_permissions_create_collection: "आपके पास संग्रह बनाने की अनुमति नहीं है",
237
+ create_collection: "संग्रह बनाएं",
238
+ update_collection: "संग्रह अपडेट करें",
239
+
240
+ new_collection: "नया संग्रह",
241
+ add_new_collection: "नया संग्रह जोड़ें",
242
+ collection_with_name: "{{name}} संग्रह",
243
+ change_icon: "आइकन बदलें",
244
+ is_subcollection_of: "यह इसका उपसंग्रह (subcollection) है",
245
+ name: "नाम",
246
+ collection_name_description: "इस संग्रह का नाम, आमतौर पर एक बहुवचन नाम (जैसे उत्पाद)",
247
+ path: "पथ (Path)",
248
+ relative_path_to_parent: "मूल (parent) का सापेक्ष पथ (मूल पथ को शामिल करने की आवश्यकता नहीं है)",
249
+ path_in_database: "वह पथ जिसमें यह संग्रह संग्रहीत है, डेटाबेस में",
250
+ singular_name: "एकवचन नाम",
251
+ singular_name_description: "वैकल्पिक रूप से अपनी इकाइयों के लिए एकवचन नाम परिभाषित करें",
252
+ description: "विवरण",
253
+ description_of_collection: "संग्रह का विवरण, आप मार्कडाउन का उपयोग कर सकते हैं",
254
+ collection_id: "संग्रह ID",
255
+ collection_id_description: "यह ID इस संग्रह की पहचान करता है। आम तौर पर पथ के समान।",
256
+ collection_group: "संग्रह समूह",
257
+ collection_group_description: "एक संग्रह समूह में एक ही पथ वाले सभी संग्रह होते हैं। यह आपको एक साथ कई संग्रहों पर क्वेरी करने की अनुमति देता है।",
258
+ advanced_settings: "उन्नत सेटिंग्स",
259
+ doc_history_global: "दस्तावेज़ इतिहास संशोधन सक्षम (यदि विश्व स्तर पर सक्षम हैं)",
260
+ doc_history_enabled: "दस्तावेज़ इतिहास संशोधन सक्षम",
261
+ doc_history_not_enabled: "दस्तावेज़ इतिहास संशोधन सक्षम नहीं",
262
+ doc_history_description: "सक्षम होने पर, इस संग्रह के प्रत्येक दस्तावेज़ में परिवर्तनों का इतिहास होगा। यह ऑडिटिंग उद्देश्यों के लिए उपयोगी है। डेटा आपके डेटाबेस में दस्तावेज़ के एक उपसंग्रह में संग्रहीत होता है, जिसे __history कहा जाता है।",
263
+ document_id_generation: "दस्तावेज़ ID जनरेशन",
264
+ code_defined: "कोड परिभाषित",
265
+ users_must_define_id: "उपयोगकर्ताओं को एक ID परिभाषित करनी होगी",
266
+ users_can_define_id: "उपयोगकर्ता एक ID परिभाषित कर सकते हैं, लेकिन इसकी आवश्यकता नहीं है",
267
+ doc_id_auto_generated: "दस्तावेज़ ID स्वचालित रूप से उत्पन्न होती है",
268
+ config_doc_id_generation: "नई इकाइयां बनाते समय दस्तावेज़ ID कैसे उत्पन्न होती हैं, इसे कॉन्फ़िगर करें।",
269
+ enable_text_search: "इस संग्रह के लिए पाठ खोज (text search) सक्षम करें",
270
+ text_search_description: "इस संग्रह के लिए पाठ खोज की अनुमति दें। यदि आपने पाठ खोज प्रतिनिधि निर्दिष्ट नहीं किया है, तो यह अंतर्निहित स्थानीय पाठ खोज का उपयोग करेगा। बड़े संग्रहों के लिए इसकी अनुशंसा नहीं की जाती है, क्योंकि इससे प्रदर्शन और लागत संबंधी समस्याएं हो सकती हैं।",
271
+ database_id: "डेटाबेस ID",
272
+ default_text: "(डिफ़ॉल्ट)",
273
+
274
+ custom_actions: "कस्टम कार्रवाइयां",
275
+ more_info: "अतिरिक्त जानकारी",
276
+ define_custom_actions_cli: "CLI के साथ अपलोड करके अपनी स्वयं की कस्टम कार्रवाइयां परिभाषित करें।",
277
+ action_defined_in_code: "यह क्रिया कोड में कुंजी (key) के साथ परिभाषित की गई है",
278
+ add_custom_entity_action: "कस्टम इकाई कार्रवाई जोड़ें",
279
+ remove_this_action: "यह क्रिया हटाएँ?",
280
+ remove_action_warning: "यह कोई डेटा नहीं हटाएगा, केवल CMS में कार्रवाई को हटाएगा",
281
+
282
+ subcollections_of: "के उपसंग्रह",
283
+ add_subcollection: "उपसंग्रह जोड़ें",
284
+ custom_views: "कस्टम दृश्य",
285
+ define_custom_views_cli: "CLI के साथ अपलोड करके अपने स्वयं के कस्टम दृश्य परिभाषित करें।",
286
+ view_defined_in_code: "यह दृश्य कोड में कुंजी (key) के साथ परिभाषित किया गया है",
287
+ add_custom_entity_view: "कस्टम इकाई दृश्य जोड़ें",
288
+ delete_this_subcollection: "इस उपसंग्रह को हटाएं?",
289
+ remove_collection_warning: "यह कोई डेटा नहीं हटाएगा, केवल CMS में संग्रह को हटाएगा",
290
+ remove_this_view: "यह दृश्य हटाएँ?",
291
+ remove_view_warning: "यह कोई डेटा नहीं हटाएगा, केवल CMS में दृश्य को हटाएगा",
292
+
293
+ no_collection_selected: "कोई संग्रह नहीं चुना गया",
294
+ code_for_collection: "संग्रह के लिए कोड",
295
+ use_config_define_json: "संग्रह को JSON प्रारूप में परिभाषित करने के लिए इस कॉन्फ़िगरेशन का उपयोग करें।",
296
+ customise_collection_code: "यदि आप कोड में संग्रह को अनुकूलित करना चाहते हैं, तो आप इस संग्रह कोड को अपने CMS ऐप कॉन्फ़िगरेशन में जोड़ सकते हैं।",
297
+ copied: "कॉपी किया गया",
298
+
299
+ property_cant_be_edited: "इस विशेषता को संपादित नहीं किया जा सकता",
300
+ property_not_editable_description: "आपके पास इसे संपादित करने की अनुमति नहीं हो सकती है या इसे कोड में परिभाषित किया गया है और इसे संशोधित नहीं किया जा सकता।",
301
+ delete_this_property: "यह विशेषता हटाएँ?",
302
+ delete_property_warning: "यह कोई डेटा नहीं हटाएगा, केवल संग्रह को संशोधित करेगा।",
303
+ error_must_specify_id: "आपको फ़ील्ड के लिए एक id निर्दिष्ट करना होगा",
304
+ error_id_format: "id में केवल अक्षर, संख्याएं और अंडरस्कोर (_) हो सकते हैं, और यह किसी संख्या से शुरू नहीं हो सकता",
305
+ error_id_already_exists: "इस ID के साथ पहले से ही एक और फ़ील्ड मौजूद है",
306
+ error_must_specify_title: "आपको फ़ील्ड के लिए एक शीर्षक निर्दिष्ट करना होगा",
307
+ custom_or_other: "कस्टम/अन्य",
308
+ select_property_widget: "एक प्रॉपर्टी विजेट का चयन करें",
309
+ error_changing_data_type: "यह विजेट प्रारंभ में चयनित विजेट की तुलना में एक अलग डेटा प्रकार का उपयोग करता है। यह मौजूदा डेटा के साथ त्रुटियों का कारण बन सकता है।",
310
+ required: "आवश्यक",
311
+
312
+ enum_form_dialog: "Enum फॉर्म डायलॉग",
313
+ imported_data_preview: "आयात किए गए डेटा का पूर्वावलोकन",
314
+ entities_with_same_id_overwritten: "समान id वाली इकाइयों को अधिलेखित (overwritten) किया जाएगा",
315
+ collection_editor: "संग्रह संपादक",
316
+ properties_in_this_group: "इस समूह में विशेषताएं",
317
+ data_property_mapping: "डेटा संपत्ति मानचित्रण (मॅपिंग)",
318
+ property_edit_view: "प्रॉपर्टी संपादन दृश्य",
319
+ all_of_these: "ये सभी",
320
+ any_of_these: "इनमें से कोई भी",
321
+
322
+ only_admins_edit_roles: "केवल व्यवस्थापक (Admins) ही भूमिकाएँ संपादित कर सकते हैं",
323
+ error_user_not_found: "उपयोगकर्ता नहीं मिला",
324
+ all_roles: "सभी भूमिकाएँ",
325
+ role: "भूमिका",
326
+ name_of_this_role: "इस भूमिका का नाम",
327
+ id_of_this_role: "इस भूमिका की ID",
328
+ create_entities: "इकाइयाँ बनाएँ",
329
+ read_entities: "इकाइयाँ पढ़ें",
330
+ update_entities: "इकाइयाँ अपडेट करें",
331
+ delete_entities: "इकाइयाँ हटाएँ",
332
+ all_collections: "सभी संग्रह",
333
+ create_entities_in_collections: "संग्रहों में इकाइयाँ बनाएँ",
334
+ access_all_data_in_every_collection: "हर संग्रह में सभी डेटा तक पहुँचें",
335
+ update_data_in_any_collection: "किसी भी संग्रह में डेटा अपडेट करें",
336
+ delete_data_in_any_collection: "किसी भी संग्रह में डेटा हटाएँ",
337
+ allow_all_permissions_in_this_collections: "इन संग्रहों में सभी अनुमतियों की अनुमति दें",
338
+ all: "सभी",
339
+ customise_permissions_description: "आप उन अनुमतियों को अनुकूलित कर सकते हैं जो इस भूमिका से संबंधित उपयोगकर्ता प्रत्येक संग्रह की इकाइयों में कर सकते हैं",
340
+ create_collections: "संग्रह बनाएँ",
341
+ yes: "हाँ",
342
+ no: "नहीं",
343
+ can_user_create_collections: "क्या उपयोगकर्ता संग्रह बना सकता है",
344
+ edit_collections: "संग्रह संपादित करें",
345
+ only_own_collections: "केवल उसकी/उसकी अपनी",
346
+ own: "अपनी",
347
+ can_user_edit_collections: "क्या उपयोगकर्ता संग्रह संपादित कर सकता है",
348
+ delete_collections: "संग्रह हटाएँ",
349
+ can_user_delete_collections: "क्या उपयोगकर्ता संग्रह हटा सकता है",
350
+ error_saving_role: "इस भूमिका को सहेजने में कोई त्रुटि हुई",
351
+ create_role: "भूमिका बनाएँ",
352
+ update: "अपडेट करें",
353
+
354
+ only_admins_change_roles: "केवल व्यवस्थापक ही भूमिकाएँ बदल सकते हैं",
355
+ must_be_at_least_one_admin: "कम से कम एक एडमिन होना चाहिए",
356
+ logged_user_not_found: "लॉग इन उपयोगकर्ता नहीं मिला",
357
+ user: "उपयोगकर्ता (User)",
358
+ user_id: "उपयोगकर्ता ID",
359
+ name_of_this_user: "इस उपयोगकर्ता का नाम",
360
+ email_of_this_user: "इस उपयोगकर्ता का ईमेल",
361
+ roles: "भूमिकाएँ",
362
+ create_user: "उपयोगकर्ता बनाएँ",
363
+
364
+ users: "उपयोगकर्ता (Users)",
365
+ add_user: "उपयोगकर्ता जोड़ें",
366
+ add_role: "भूमिका जोड़ें",
367
+ is_admin: "एडमिन है",
368
+ default_permissions: "डिफ़ॉल्ट अनुमतियाँ",
369
+ created_on: "इस दिन बनाया गया",
370
+ email: "ईमेल",
371
+ id: "ID",
372
+ read: "पढ़ें",
373
+
374
+ column_in_file: "फ़ाइल में कॉलम",
375
+ map_to_property: "प्रॉपर्टी में मैप करें",
376
+ default_values: "डिफ़ॉल्ट मान",
377
+ default_values_description: "आप अनमैप किए गए कॉलम और खाली मानों के लिए एक डिफ़ॉल्ट मान का चयन कर सकते हैं:",
378
+ property: "विशेषता (Property)",
379
+ default_value: "डिफ़ॉल्ट मान",
380
+ autogenerate_id: "ID स्वतः उत्पन्न करें",
381
+ id_column_description: "कॉलम जिसका उपयोग प्रत्येक दस्तावेज़ के लिए ID के रूप में किया जाएगा",
382
+ do_not_set_value: "मान सेट न करें",
383
+ set_value_to_true: "मान को true पर सेट करें",
384
+ set_value_to_false: "मान को false पर सेट करें",
385
+ drag_and_drop_file: "फ़ाइल को यहां खींचें और छोड़ें या अपलोड करने के लिए क्लिक करें",
386
+ error_saving_data: "डेटा सहेजने में त्रुटि",
387
+ retry: "पुनः प्रयास करें",
388
+ saving_data: "डेटा सहेजा जा रहा है",
389
+ entities_saved: "इकाइयाँ सहेजी गईं",
390
+ do_not_close_tab: "इस टैब को बंद न करें अन्यथा आयात बाधित हो जाएगा",
391
+ import: "आयात (Import)",
392
+ import_data: "डेटा आयात करें",
393
+ upload_file_description: "CSV, Excel या JSON फ़ाइल अपलोड करें और इसे अपने मौजूदा स्कीमा में मैप करें",
394
+ back: "पीछे",
395
+ next: "अगला",
396
+ save_data: "डेटा सहेजें",
397
+ use_column_as_id: "इस कॉलम को ID के रूप में उपयोग करें",
398
+ do_not_import_property: "इस विशेषता को आयात न करें",
399
+ entities_will_be_overwritten: "समान ID वाली इकाइयों को अधिलेखित (overwritten) किया जाएगा",
400
+ data_imported_successfully: "डेटा सफलतापूर्वक आयात किया गया",
401
+ export: "निर्यात (Export)",
402
+ export_data: "डेटा निर्यात करें",
403
+ download_table_csv: "इस तालिका की सामग्री को CSV के रूप में डाउनलोड करें",
404
+ csv: "CSV",
405
+ json: "JSON",
406
+ dates_as_timestamps: "टाइमस्टैम्प के रूप में तिथियां",
407
+ dates_as_strings: "स्ट्रिंग्स के रूप में तिथियां",
408
+ flatten_arrays: "ऐरे को फ़्लैट करें",
409
+ download: "डाउनलोड",
410
+ large_number_of_documents: "इस संग्रह में बड़ी संख्या में दस्तावेज़ हैं ({{count}})।",
411
+ include_undefined_values: "अपरिभाषित (undefined) मान शामिल करें",
412
+ submit: "सबमिट करें",
413
+
414
+ no_filterable_properties: "कोई फ़िल्टर करने योग्य गुण उपलब्ध नहीं हैं",
415
+ apply_filters: "फ़िल्टर लागू करें",
416
+ list: "सूची",
417
+ table_view_mode: "तालिका",
418
+ cards: "कार्ड",
419
+ board: "बोर्ड",
420
+ initialize_kanban_order_desc: "यह उन सभी आइटम को अनुक्रमिक क्रम मान निर्दिष्ट करेगा जिनके पास एक नहीं है। आइटम प्रत्येक कॉलम के भीतर अपना वर्तमान क्रम बनाए रखेंगे।",
421
+ kanban_view_not_available: "कानबन दृश्य उपलब्ध नहीं है",
422
+ kanban_view_requires_enum: "कानबन दृश्य के लिए इकाइयों को कॉलम में समूहीकृत करने के लिए एनम (Enum) मानों वाली एक स्ट्रिंग संपत्ति की आवश्यकता होती है। कृपया इस दृश्य का उपयोग करने के लिए अपने संग्रह स्कीमा में एक Enum संपत्ति जोड़ें।",
423
+ no_enum_values_configured: 'प्रॉपर्टी "{{property}}" के लिए कोई एनम मान कॉन्फ़िगर नहीं किया गया है',
424
+ items_need_backfill: "कुछ आइटम के क्रम मान नहीं होते हैं। खींचें-और-छोड़ें (Drag-and-drop) पुनर्रचना को सक्षम करने के लिए प्रारंभ करें।",
425
+ kanban_order_not_configured: "खींचें-और-छोड़ें क्रमबद्धता कॉन्फ़िगर नहीं है। कार्ड की स्थिति बनाए रखने के लिए संग्रह सेटिंग्स में एक क्रम गुण सेट करें।",
426
+ initialize: "प्रारंभ करें",
427
+ confirm_multiple_delete: "एकाधिक विलोपन की पुष्टि करें?",
428
+ delete_entity_confirm_title: "क्या आप इस {{entityName}} को हटाना चाहेंगे?",
429
+ multiple_deleted: "कई हटाए गए",
430
+ some_entities_deleted: "कुछ संस्थाएँ हटा दी गई हैं, लेकिन सभी नहीं",
431
+ error_deleting_entities: "संस्थाओं को हटाने में त्रुटि",
432
+ deleted: "हटाया गया",
433
+
434
+ /** Recently extracted strings for collection editor */
435
+ /** AI Collection Generator Popover */
436
+ generate_collection_with_ai: "AI से संग्रह बनाएं",
437
+ modify_collection_with_ai: "AI से संग्रह संशोधित करें",
438
+ describe_collection_to_create: "वह संग्रह बताएं जिसे आप बनाना चाहते हैं।",
439
+ describe_changes_to_make: "वे परिवर्तन बताएं जो आप इस संग्रह में करना चाहते हैं।",
440
+ ai_placeholder_create: "उदा. नाम, मूल्य, विवरण और श्रेणी के साथ एक उत्पाद संग्रह बनाएं...",
441
+ ai_placeholder_modify: "उदा. स्टोरेज के साथ एक थंबनेल छवि फ़ील्ड जोड़ें, मूल्य को आवश्यक बनाएं...",
442
+ ai_assist: "AI सहायक",
443
+ generating: "उत्पन्न हो रहा है...",
444
+
445
+ this_is_subcollection_of: "यह इसका एक उपसंघ (subcollection) है",
446
+ use_existing_paths_database: "अपने डेटाबेस में मौजूदा पथों में से एक का उपयोग करें:",
447
+ describe_collection_ai: "AI को अपने संग्रह का वर्णन करें:",
448
+ generate_with_ai: "AI के साथ जनरेट करें",
449
+ create_from_json_config: "JSON कॉन्फ़िगरेशन से बनाएँ:",
450
+ paste_json_config: "JSON कॉन्फ़िगरेशन पेस्ट करें",
451
+ create_collection_from_file_formats: "फ़ाइल (csv, json, xls, xslx...) से एक संग्रह बनाएँ",
452
+ select_template: "एक टेम्पलेट चुनें:",
453
+ products: "उत्पाद",
454
+ collection_products_subtitle: "छवियों, कीमतों और स्टॉक वाले उत्पादों का संग्रह",
455
+ collection_users_subtitle: "ईमेल, नाम और भूमिकाओं वाले उपयोगकर्ताओं का एक संग्रह",
456
+ blog_posts: "ब्लॉग पोस्ट",
457
+ collection_blog_posts_subtitle: "छवियों, लेखकों और जटिल सामग्री के साथ ब्लॉग पोस्ट का एक संग्रह",
458
+ pages: "पृष्ठ (Pages)",
459
+ collection_pages_subtitle: "छवियों, लेखकों और जटिल सामग्री के साथ पृष्ठों का एक संग्रह",
460
+ continue_from_scratch: "शुरुआत से जारी रखें",
461
+
462
+ /** Admin views config */
463
+ cms_users: "CMS उपयोगकर्ता",
464
+ roles_menu: "भूमिकाएँ",
465
+ project_settings: "परियोजना सेटिंग",
466
+
467
+ by_signing_in_you_agree_to_our: "साइन इन करके आप हमारे नियमों और शर्तों से सहमत होते हैं",
468
+ terms_and_conditions: "नियम और शर्तें",
469
+ and_our: "और हमारी गोपनीयता नीति",
470
+ privacy_policy: "गोपनीयता नीति",
471
+ email_password: "ईमेल/पासवर्ड",
472
+ sign_in_with_google: "Google से साइन इन करें",
473
+
474
+ // --- Auth error messages ---
475
+ auth_user_not_found: "उपयोगकर्ता नहीं मिला",
476
+ auth_wrong_password: "गलत पासवर्ड। कृपया पुनः प्रयास करें।",
477
+ auth_user_disabled: "उपयोगकर्ता अक्षम है। कृपया समर्थन से संपर्क करें।",
478
+ auth_account_exists_with_different_credential: "विभिन्न साइन-इन विधि के साथ खाता मौजूद है",
479
+ auth_email_already_in_use: "ईमेल पहले से ही उपयोग में है",
480
+ auth_google_permissions_required: "अपने Google Cloud प्रोजेक्ट प्रबंधित करने के लिए आपको अतिरिक्त अनुमतियाँ देने की आवश्यकता है",
481
+ auth_invalid_email_password: "कृपया ईमेल और पासवर्ड दोनों दर्ज करें",
482
+ auth_enter_email_first: "कृपया पहले अपना ईमेल दर्ज करें",
483
+ auth_password_reset_sent: "पासवर्ड रीसेट ईमेल भेजा गया",
484
+ auth_sign_in_account: "अपने खाते में प्रवेश करें",
485
+ auth_create_new_account: "एक नया अकाउंट बनाएँ",
486
+ auth_password: "पासवर्ड",
487
+ auth_reset_password: "पासवर्ड रीसेट करें",
488
+ auth_new_user: "नया उपयोगकर्ता?",
489
+ auth_have_account: "क्या आपके पास एक खाता है?",
490
+ auth_sign_in: "साइन इन करें",
491
+ auth_sign_up: "साइन अप करें",
492
+
493
+
494
+ auto_setup_collections_button: "संग्रहों को स्वचालित रूप से सेट करें",
495
+ auto_setup_collections_title: "संग्रहों की स्वचालित सेटअप",
496
+ auto_setup_collections_desc: "अपने मौजूदा Firestore डेटा के आधार पर संग्रहों को स्वचालित रूप से सेट करें। Rebase को आपके लिए परफेक्ट CMS कॉन्फ़िगर करने दें।",
497
+ this_can_take_a_minute: "इसमें एक मिनट लग सकता है",
498
+ no_collections_found_to_setup: "सेट करने के लिए कोई संग्रह नहीं मिला",
499
+ collections_have_been_setup: "संग्रहों को सेट कर दिया गया है",
500
+ error_setting_up_collections: "संग्रह सेट करने में त्रुटि",
501
+ add_your: "अपने",
502
+ database_collections: "डेटाबेस संग्रह",
503
+ no_unmapped_collections: "कोई असंबद्ध संग्रह नहीं",
504
+ query_and_update_with_datatalk: "DATATALK के साथ प्राकृतिक भाषा में अपना डेटा क्वेरी और अपडेट करें",
505
+ welcome_to_rebase: "Rebase में आपका स्वागत है",
506
+ admin_panel_ready_bring_data: "आपका पैनल तैयार है। अपना डेटा जोड़कर शुरू करें।",
507
+ admin_panel_ready_get_started: "शुरू करें",
508
+ auto_detect_collections: "संग्रहों को स्वचालित रूप से पहचानें",
509
+ auto_detect_collections_desc: "Rebase आपके Firestore डेटा का विश्लेषण करेगा और आपके लिए संग्रहों को स्वचालित रूप से कॉन्फ़िगर करेगा",
510
+ create_a_collection: "एक संग्रह बनाएं",
511
+ create_collection_desc: "अपने संग्रह की संरचना मैन्युअल रूप से परिभाषित करें",
512
+ read_the_docs: "दस्तावेज़ीकरण पढ़ें",
513
+ read_the_docs_desc: "जानें कि Rebase का अधिकतम उपयोग कैसे करें",
514
+ explore_docs: "दस्तावेज़ीकरण देखें",
515
+ want_to_customize_with_code: "क्या आप कोड से Rebase को कस्टमाइज़ करना चाहते हैं?",
516
+ to_scaffold_a_local_project: "एक स्थानीय प्रोजेक्ट बनाने के लिए",
517
+
518
+ // ─── Collection Editor — Validation ──────────────────────────
519
+ validation: "सत्यापन",
520
+ unique: "अद्वितीय",
521
+ required_message: "आवश्यक संदेश",
522
+ required_tooltip: "यदि यह मान सेट नहीं है तो आप इस एंटिटी को सहेज नहीं पाएंगे",
523
+ unique_tooltip: "एक ही मान वाली एक से अधिक एंटिटी नहीं हो सकतीं",
524
+ lowercase: "लोअरकेस",
525
+ uppercase: "अपरकेस",
526
+ trim: "ट्रिम",
527
+ exact_length: "सटीक लंबाई",
528
+ min_length: "न्यूनतम लंबाई",
529
+ max_length: "अधिकतम लंबाई",
530
+ matches_regex: "रेजेक्स से मेल खाता है",
531
+ not_valid_regexp: "वैध रेगुलर एक्सप्रेशन नहीं है",
532
+ regex_helper: "उदा. /^\\d+$/ केवल अंकों के लिए",
533
+ min_value: "न्यूनतम मान",
534
+ max_value: "अधिकतम मान",
535
+ less_than: "से कम",
536
+ more_than: "से अधिक",
537
+ positive_value: "सकारात्मक मान",
538
+ negative_value: "नकारात्मक मान",
539
+ integer_value: "पूर्णांक मान",
540
+
541
+ // ─── Collection Editor — Property Edit ───────────────────────
542
+ invalid_regular_expression: "अमान्य रेगुलर एक्सप्रेशन",
543
+ must_specify_target_collection: "आपको फ़ील्ड के लिए एक लक्ष्य संग्रह निर्दिष्ट करना होगा",
544
+ need_specify_repeat_field: "आपको एक दोहराव फ़ील्ड निर्दिष्ट करना होगा",
545
+ need_specify_block_properties: "आपको इस ब्लॉक के गुण निर्दिष्ट करने होंगे",
546
+ incomplete_condition: "अपूर्ण शर्त - कृपया एक फ़ील्ड चुनें",
547
+ field_name: "फ़ील्ड का नाम",
548
+
549
+ // ─── Collection Editor — Display & Config ────────────────────
550
+ kanban_column_property: "कानबन कॉलम प्रॉपर्टी",
551
+ select_a_property: "एक प्रॉपर्टी चुनें",
552
+ kanban_property_not_found: "प्रॉपर्टी \"{{property}}\" मौजूद नहीं है या एनम स्ट्रिंग प्रॉपर्टी नहीं है। कृपया एक वैध प्रॉपर्टी चुनें या चयन साफ़ करें।",
553
+ no_enum_string_properties: "कोई एनम स्ट्रिंग प्रॉपर्टी नहीं मिली। कानबन दृश्य का उपयोग करने के लिए enumValues के साथ एक स्ट्रिंग प्रॉपर्टी जोड़ें।",
554
+ kanban_column_description: "एंटिटीज़ को कॉलम में समूहित करने के लिए एनम मानों वाली एक स्ट्रिंग प्रॉपर्टी चुनें",
555
+ create_property: "+ \"{{property}}\" प्रॉपर्टी बनाएं",
556
+ order_property: "क्रम प्रॉपर्टी",
557
+ order_property_not_found: "प्रॉपर्टी \"{{property}}\" मौजूद नहीं है या एक संख्या प्रॉपर्टी नहीं है। कृपया एक वैध प्रॉपर्टी चुनें या चयन साफ़ करें।",
558
+ no_number_properties: "कोई संख्या प्रॉपर्टी नहीं मिली। क्रम सक्षम करने के लिए एक संख्या प्रॉपर्टी जोड़ें।",
559
+ order_property_description: "आइटम का क्रम बनाए रखने के लिए एक संख्या प्रॉपर्टी चुनें",
560
+ display_settings: "प्रदर्शन सेटिंग्स",
561
+ default_row_size: "डिफ़ॉल्ट पंक्ति आकार",
562
+ side_dialog_width: "साइड डायलॉग चौड़ाई",
563
+ side_dialog_width_description: "वैकल्पिक रूप से एंटिटी साइड डायलॉग की चौड़ाई (पिक्सेल में) परिभाषित करें। डिफ़ॉल्ट 768px है",
564
+ inline_editing_enabled: "डेटा को सीधे टेबल दृश्य में संपादित किया जा सकता है",
565
+ inline_editing_disabled: "डेटा को केवल फ़ॉर्म दृश्य में संपादित किया जा सकता है",
566
+ inline_editing_description: "फ़ॉर्म दृश्य खोले बिना सीधे टेबल दृश्य में डेटा संपादन की अनुमति दें।",
567
+ include_json_view: "JSON दृश्य शामिल करें",
568
+ no_json_view: "JSON दृश्य शामिल न करें",
569
+ json_view_description: "दस्तावेज़ का JSON प्रतिनिधित्व शामिल करें।",
570
+ not_found_suffix: "नहीं मिला",
571
+
572
+ // ─── Editor ─────────────────────────────────────────────────
573
+ editor_text: "पाठ",
574
+ editor_text_description: "बस सादे पाठ के साथ टाइप करना शुरू करें।",
575
+ editor_heading_1: "शीर्षक 1",
576
+ editor_heading_1_description: "बड़ा अनुभाग शीर्षक।",
577
+ editor_heading_2: "शीर्षक 2",
578
+ editor_heading_2_description: "मध्यम अनुभाग शीर्षक।",
579
+ editor_heading_3: "शीर्षक 3",
580
+ editor_heading_3_description: "छोटा अनुभाग शीर्षक।",
581
+ editor_todo_list: "टू-डू सूची",
582
+ editor_todo_list_description: "टू-डू सूची के साथ कार्यों को ट्रैक करें।",
583
+ editor_bullet_list: "बुलेट सूची",
584
+ editor_bullet_list_description: "एक सरल बुलेट सूची बनाएं।",
585
+ editor_numbered_list: "क्रमांकित सूची",
586
+ editor_numbered_list_description: "नंबरिंग के साथ एक सूची बनाएं।",
587
+ editor_quote: "उद्धरण",
588
+ editor_quote_description: "एक उद्धरण कैप्चर करें।",
589
+ editor_code: "कोड",
590
+ editor_code_description: "एक कोड स्निपेट कैप्चर करें।",
591
+ editor_image: "छवि",
592
+ editor_image_description: "अपने कंप्यूटर से एक छवि अपलोड करें।",
593
+ editor_multiple: "एकाधिक",
594
+ editor_link: "लिंक",
595
+ editor_save: "सहेजें",
596
+ editor_cancel: "रद्द करें",
597
+ editor_remove_link: "लिंक हटाएं",
598
+ editor_paste_or_type_link: "लिंक पेस्ट करें या टाइप करें",
599
+ editor_open_in_new_window: "नई विंडो में खोलें",
600
+ editor_bold: "बोल्ड",
601
+ editor_italic: "इटैलिक",
602
+ editor_underline: "अंडरलाइन",
603
+ editor_strikethrough: "स्ट्राइकथ्रू",
604
+ editor_autocomplete: "स्वतः पूर्ण",
605
+ editor_autocomplete_description: "संदर्भ के आधार पर पाठ जोड़ें।",
606
+
607
+ settings_heading: "सेटिंग्स",
608
+ settings_project_name: "परियोजना का नाम",
609
+ settings_default_language: "डिफ़ॉल्ट भाषा",
610
+ settings_default_language_caption: "इस परियोजना के लिए आधार भाषा चुनें। उपयोगकर्ता अपनी व्यक्तिगत सेटिंग्स में इस प्राथमिकता को बदल सकते हैं।",
611
+ settings_enable_local_text_search: "स्थानीय पाठ खोज सक्षम करें",
612
+ settings_local_text_search_caption: "सभी संग्रहों के लिए स्थानीय पाठ खोज सक्षम करें। इससे आप Rebase खोज पट्टी का उपयोग करके अपने संग्रहों में पाठ फ़ील्ड खोज सकेंगे। ध्यान दें कि इस सुविधा के कारण अधिक पठन हो सकते हैं, क्योंकि यह आपके संग्रहों के सभी पाठ फ़ील्ड को अनुक्रमित करेगी।",
613
+ settings_doc_history_all_collections: "सभी संग्रहों के लिए दस्तावेज़ इतिहास सक्षम",
614
+ settings_doc_history_caption: "सक्षम होने पर, सभी संग्रहों में डिफ़ॉल्ट रूप से इतिहास सक्षम होगा। आप प्रत्येक संग्रह में इस सेटिंग को बदल सकते हैं। इतिहास प्रत्येक दस्तावेज़ की __history उपसंग्रह में सहेजा जाएगा।",
615
+ settings_theme: "थीम",
616
+ settings_primary_color: "प्राथमिक रंग",
617
+ settings_secondary_color: "द्वितीयक रंग",
618
+ settings_sample_theme_components: "नमूना थीम घटक",
619
+ settings_drag_drop_logo: "अपना लोगो यहां खींचें और छोड़ें",
620
+ settings_security_rules: "सुरक्षा नियम",
621
+ settings_security_rules_description: "Rebase डेटा तक पहुंच प्रतिबंधित करने के लिए Firebase सुरक्षा नियमों का उपयोग करता है। Rebase के माध्यम से नया उपयोगकर्ता बनाते समय, कस्टम दावा rebaseUser क्लाइंट प्रोजेक्ट में उपयोगकर्ता में जोड़ा जाता है। निम्नलिखित सुरक्षा नियम जोड़कर, आप सुनिश्चित करते हैं कि Rebase उपयोगकर्ता Rebase के माध्यम से डेटा तक पहुंच सकें।",
622
+ settings_security_rules_add_domain: "कृपया अपने प्रदाता के अनुमत डोमेन में {{domain}} डोमेन जोड़ना याद रखें",
623
+ settings_security_rules_caption: "ये नियम डेटा तक पहुंच को केवल Rebase उपयोगकर्ताओं तक सीमित करते हैं, लेकिन डेटाबेस स्तर पर अनुमतियों को लागू नहीं करते। अनुमतियां फ्रंटएंड में लागू होती हैं, जो अधिकांश परियोजनाओं के लिए ठीक काम करती हैं। यदि आपको डेटाबेस स्तर पर अनुमतियां लागू करने की आवश्यकता है, तो आप इन सुरक्षा नियमों को संशोधित कर सकते हैं। उपयोगकर्ता को सौंपी गई भूमिकाएं Firebase प्रमाणीकरण टोकन में कस्टम दावों के रूप में सेट की जाती हैं, इसलिए आप उन्हें अपने सुरक्षा नियमों में उपयोग कर सकते हैं।",
624
+
625
+ // ─── Text Search Dialog ─────────────────────────────────────
626
+ text_search_dialog_title: "पाठ खोज सक्षम करें",
627
+ text_search_local_not_recommended: "बड़ी संग्रहों के लिए स्थानीय पाठ खोज की अनुशंसा नहीं की जाती है।",
628
+ text_search_local_fetch_warning: "ध्यान दें कि स्थानीय पाठ खोज सक्षम करने के लिए आपके संग्रह से सभी दस्तावेज़ प्राप्त करने और उन्हें ब्राउज़र में संग्रहीत करने की आवश्यकता होगी। बड़ी संग्रहों के लिए यह अक्षम हो सकता है और अतिरिक्त लागत भी लग सकती है।",
629
+ text_search_external_suggestion: "बड़ी संग्रहों के लिए, Algolia या Elastic Search जैसे बाहरी खोज इंजन का उपयोग करने और अपनी कॉन्फ़िगरेशन में एक खोज प्रतिनिधि निर्दिष्ट करने की सलाह दी जाती है।",
630
+ text_search_local_description: "स्थानीय पाठ खोज आपके संग्रह में पाठ खोज सक्षम करने का सबसे सरल तरीका है। यह ब्राउज़र में संग्रह के सभी दस्तावेज़ लोड करता है और खोज स्थानीय रूप से करता है। छोटी संग्रहों के लिए यह अनुशंसित विकल्प है।",
631
+ text_search_own_implementation: "आपने अपना स्वयं का पाठ खोज नियंत्रक लागू किया है। आप अपने संग्रह के लिए पाठ खोज सक्षम कर सकते हैं।",
632
+ text_search_enable_for_collection: "इस संग्रह के लिए सक्षम करें",
633
+ text_search_enable_for_project: "प्रोजेक्ट के लिए सक्षम करें",
634
+ text_search_enabled_snackbar: "स्थानीय पाठ खोज सक्षम की गई",
635
+
636
+ // ─── Missing keys (English placeholders — translate) ───
637
+ no_filter: "No filter",
638
+ is_true: "is true",
639
+ is_false: "is false",
640
+ error_uploading_file_size: "Error uploading file: File is larger than {{maxSize}} bytes",
641
+ error_uploading_file_type: "Error uploading file: File type is not supported",
642
+ drag_drop_files: "Drag 'n' drop some files here, or click here to edit",
643
+ drag_drop_file: "Drag 'n' drop a file here, or click here to edit",
644
+ select_reference: "Select reference",
645
+ select_references: "Select references",
646
+ account_settings: "Account Settings",
647
+ profile: "Profile",
648
+ sessions: "Sessions",
649
+ display_name: "Display Name",
650
+ photo_url: "Photo URL",
651
+ save_profile: "Save Profile",
652
+ saving: "Saving...",
653
+ no_active_sessions: "No active sessions found.",
654
+ revoking: "Revoking...",
655
+ revoke_all_sessions: "Revoke All Sessions",
656
+ unknown_device: "Unknown Device",
657
+ current: "Current",
658
+ role_id: "Role ID",
659
+ role_name: "Role Name",
660
+ add_reference: "Add reference",
661
+ add_reference_to: "Add reference to {{name}}",
662
+ role_deleted_successfully: "Role deleted successfully",
663
+ error_deleting_role: "Error deleting role",
664
+ collection_permissions: "Collection permissions",
665
+ collection: "Collection",
666
+ no_collections_configured: "No collections configured",
667
+ no_security_rules_defined: "No security rules defined — all operations unrestricted",
668
+ no_rules: "no rules",
669
+ bootstrap_admin_success: "You are now an admin! Refreshing...",
670
+ failed_to_bootstrap_admin: "Failed to bootstrap admin",
671
+ user_deleted_successfully: "User deleted successfully",
672
+ error_deleting_user: "Error deleting user",
673
+ add_row_before: "Add row before",
674
+ add_row_after: "Add row after",
675
+ delete_row: "Delete row",
676
+ add_column_before: "Add column before",
677
+ add_column_after: "Add column after",
678
+ delete_column: "Delete column",
679
+ delete_table: "Delete table",
680
+ alt_text: "Alt text",
681
+ title: "Title",
682
+ a_property_of_this_map_has_error: "A property of this map has an error",
683
+ studio_sql_executing_query: "EXECUTING QUERY...",
684
+ studio_sql_query_error: "Query Error",
685
+ studio_sql_run_query_placeholder: "Run a query to see results",
686
+ studio_sql_visual_execution_plan: "Visual Execution Plan",
687
+ studio_sql_success: "SUCCESS",
688
+ studio_sql_no_results: "Query executed successfully but returned no results.",
689
+ studio_sql_rows: "Rows:",
690
+ studio_sql_time: "Time:",
691
+ studio_sql_copy_markdown: "Copy Markdown",
692
+ studio_sql_export_json: "Export JSON",
693
+ studio_sql_export_csv: "Export CSV",
694
+ studio_sql_format_sql: "Format SQL",
695
+ studio_sql_explain: "Explain",
696
+ studio_sql_limit_1000: "Limit 1000",
697
+ studio_sql_remove_from_favorites: "Remove from Favorites",
698
+ studio_sql_add_to_favorites: "Add to Favorites",
699
+ studio_sql_save: "Save",
700
+ studio_sql_run: "Run",
701
+ studio_sql_database: "Database",
702
+ studio_sql_role: "Role",
703
+ studio_sql_admin: "(Admin)",
704
+ studio_sql_select_db: "Select DB",
705
+ studio_sql_query_results: "Query Results",
706
+ studio_sql_save_snippet: "Save SQL Snippet",
707
+ studio_sql_snippet_name: "Snippet Name",
708
+ studio_sql_snippet_name_placeholder: "e.g., Get All Users",
709
+ studio_sql_snippet_saved_local: "This will be saved to your local storage.",
710
+ studio_sql_cancel: "Cancel",
711
+ studio_sql_dangerous_operation: "Dangerous Operation Detected",
712
+ studio_sql_dangerous_operation_body: "The query you are about to run contains potentially destructive operations (DELETE, DROP, TRUNCATE, or UPDATE without WHERE). Are you sure you want to proceed?",
713
+ studio_sql_snippet_saved: "Snippet \"{{name}}\" saved.",
714
+ studio_sql_markdown_copied: "Results copied as Markdown!",
715
+ studio_sql_markdown_copy_failed: "Failed to copy Markdown to clipboard.",
716
+ studio_sql_row_updated: "Row updated successfully.",
717
+ studio_sql_cannot_edit_missing_query: "Cannot edit rows: The underlying query is missing.",
718
+ studio_sql_cannot_resolve_table: "Could not resolve table/primary key",
719
+ studio_sql_missing_pk: "Row is missing primary key column(s): {{columns}}. Cannot safely update.",
720
+ studio_sql_update_failed: "Failed to update: {{message}}",
721
+ studio_sql_execution_not_supported: "SQL execution is not supported by the current data source.",
722
+ studio_sql_error_executing: "An error occurred while executing the query.",
723
+ studio_sql_error_explaining: "An error occurred while explaining the query.",
724
+ studio_sql_save_first_to_favorite: "Please save the snippet first before favoriting.",
725
+ studio_sql_cms: "Collections:",
726
+ studio_sql_cms_collections_tooltip: "Tables in this query that are mapped as CMS collections",
727
+ studio_sql_edit_entity: "Edit {{name}} #{{id}}",
728
+ studio_sql_sql_not_supported: "SQL execution not supported by this data source",
729
+ studio_sql_fetch_error: "Failed to fetch connection options: {{message}}",
730
+ studio_sql_unexpected_format: "Unexpected data format: {{type}}",
731
+ studio_sql_no_tables: "No tables found in this database.",
732
+ studio_sql_schema_fetch_error: "Failed to fetch schema: {{message}}",
733
+ studio_sql_sidebar_snippets: "Snippets",
734
+ studio_sql_sidebar_history: "History",
735
+ studio_sql_sidebar_schema: "Schema",
736
+ studio_sql_sidebar_no_snippets: "No saved snippets",
737
+ studio_sql_sidebar_save_snippet_hint: "Save a query to access it here.",
738
+ studio_sql_sidebar_no_history: "No history",
739
+ studio_sql_sidebar_history_hint: "Executed queries will appear here.",
740
+ studio_sql_sidebar_delete_snippet: "Delete snippet",
741
+ studio_schema_tables: "Tables",
742
+ studio_schema_loading: "Loading schema...",
743
+ studio_schema_no_tables: "No tables found",
744
+ studio_schema_retry: "Retry",
745
+ studio_schema_primary_key: "Primary Key",
746
+ studio_schema_select_all: "SELECT * FROM",
747
+ studio_schema_insert_into: "INSERT INTO",
748
+ studio_schema_update: "UPDATE",
749
+ studio_schema_delete_from: "DELETE FROM",
750
+ studio_schema_columns: "{{count}} columns",
751
+ studio_rls_title: "Row Level Security",
752
+ studio_rls_description: "Manage RLS policies for your tables",
753
+ studio_rls_enabled: "RLS Enabled",
754
+ studio_rls_disabled: "RLS Disabled",
755
+ studio_rls_no_rls: "No RLS",
756
+ studio_rls_enable_rls: "Enable RLS",
757
+ studio_rls_disable_rls: "Disable RLS",
758
+ studio_rls_create_policy: "Create Policy",
759
+ studio_rls_policies: "Policies",
760
+ studio_rls_no_policies: "No policies defined",
761
+ studio_rls_no_policies_desc: "This table has no RLS policies. All rows are accessible based on the RLS status.",
762
+ studio_rls_add_first_policy: "Add your first policy",
763
+ studio_rls_force_rls: "Force RLS",
764
+ studio_rls_force_rls_desc: "When enabled, RLS policies apply to the table owner as well.",
765
+ studio_rls_enable_force_rls: "Enable Force RLS",
766
+ studio_rls_disable_force_rls: "Disable Force RLS",
767
+ studio_rls_edit: "Edit",
768
+ studio_rls_delete: "Delete",
769
+ studio_rls_confirm_delete_title: "Delete Policy",
770
+ studio_rls_confirm_delete_body: "Are you sure you want to delete this policy? This action cannot be undone.",
771
+ studio_rls_confirm_enable_title: "Enable Row Level Security",
772
+ studio_rls_confirm_enable_body: "Enabling RLS will restrict access to rows in this table based on your policies. Make sure you have appropriate policies in place.",
773
+ studio_rls_confirm_disable_title: "Disable Row Level Security",
774
+ studio_rls_confirm_disable_body: "Disabling RLS will make all rows accessible to all roles. Are you sure you want to continue?",
775
+ studio_rls_select_table: "Select a table",
776
+ studio_rls_no_tables: "No tables available",
777
+ studio_rls_error: "Error loading policies",
778
+ studio_rls_retry: "Retry",
779
+ studio_rls_loading: "Loading policies...",
780
+ studio_policy_edit: "Edit Policy",
781
+ studio_policy_create: "Create New Policy",
782
+ studio_policy_defining_rules: "Defining access rules for",
783
+ studio_policy_cancel: "Cancel",
784
+ studio_policy_save: "Save Policy",
785
+ studio_policy_template: "Start from a template (Optional)",
786
+ studio_policy_select_template: "Select a template...",
787
+ studio_policy_name: "Policy Name",
788
+ studio_policy_name_placeholder: "Give your policy a descriptive name",
789
+ studio_policy_behavior: "Policy Behavior",
790
+ studio_policy_permissive: "Permissive",
791
+ studio_policy_permissive_desc: "Combined using \"OR\"",
792
+ studio_policy_restrictive: "Restrictive",
793
+ studio_policy_restrictive_desc: "Combined using \"AND\"",
794
+ studio_policy_command: "Policy Command",
795
+ studio_policy_target_roles: "Target Roles",
796
+ studio_policy_roles_placeholder: "Select roles (defaults to public)",
797
+ studio_policy_using_expr: "USING expression",
798
+ studio_policy_using_expr_desc: "Applies to existing rows (SELECT, UPDATE, DELETE)",
799
+ studio_policy_check_expr: "WITH CHECK expression",
800
+ studio_policy_check_expr_desc: "Applies to new or modified rows (INSERT, UPDATE)",
801
+ studio_policy_help_title: "Row Level Security (RLS) Guide",
802
+ studio_policy_help_intro: "Row Level Security (RLS) allows you to restrict which rows a user can access or modify based on their authentication status or roles.",
803
+ studio_policy_help_step1_title: "1. Select a Template",
804
+ studio_policy_help_step1_desc: "If you're new to RLS, the easiest way to start is by selecting a predefined template from the dropdown. It will automatically configure the policy for common use cases like \"Users can update their own rows\".",
805
+ studio_policy_help_step2_title: "2. Target Roles",
806
+ studio_policy_help_step2_desc: "Choose which users the policy applies to:",
807
+ studio_policy_help_role_public: "Applies to everyone (logged in or not).",
808
+ studio_policy_help_role_authenticated: "Only applies to users who are logged in.",
809
+ studio_policy_help_role_anon: "Only applies to users who are NOT logged in.",
810
+ studio_policy_help_step3_title: "3. USING Expression",
811
+ studio_policy_help_step3_desc: "A SQL condition that must evaluate to true for existing rows to be visible or updatable (SELECT, UPDATE, DELETE).",
812
+ studio_policy_help_step3_example: "Ensures users can only see rows where they are the owner.",
813
+ studio_policy_help_step4_title: "4. WITH CHECK Expression",
814
+ studio_policy_help_step4_desc: "A SQL condition that must evaluate to true for new or modified rows to be saved (INSERT, UPDATE).",
815
+ studio_policy_help_step4_example: "Usually the same as the USING expression when users are only allowed to insert/edit their own data.",
816
+ studio_policy_help_auth_vars_title: "Rebase Auth Variables",
817
+ studio_policy_help_auth_vars_desc: "Rebase provides native helper functions that you can use in your expressions:",
818
+ studio_policy_help_auth_uid: "Returns the current user's ID as text. Example:",
819
+ studio_policy_help_auth_jwt: "Returns the full JWT payload as JSONB so you can check custom claims. Example:",
820
+ studio_policy_help_auth_roles: "Returns the user's role IDs as a comma-separated string. Best used with:",
821
+ studio_policy_help_docs_cta: "To learn more about Postgres policies, check out the official documentation.",
822
+ studio_policy_help_read_docs: "Read Docs",
823
+ studio_policy_help_got_it: "Got it!",
824
+ studio_add_kanban_column: "Add column",
825
+ studio_add_kanban_column_title: "Add Kanban Column",
826
+ studio_add_kanban_column_name: "Column name",
827
+ studio_add_kanban_column_name_placeholder: "New column name",
828
+ studio_add_kanban_column_add: "Add",
829
+ studio_add_kanban_column_cancel: "Cancel",
830
+ studio_collection_view_sql: "SQL Editor",
831
+ studio_collection_view_cms: "CMS View",
832
+ studio_editor_collection_tooltip: "Edit collection schema",
833
+ studio_editor_collection_no_permission: "You don't have permission to edit this collection",
834
+ studio_editor_collection_start_tooltip: "Copy path or edit schema",
835
+ studio_editor_collection_start_no_permission: "You don't have permission to modify this collection",
836
+ studio_editor_collection_start_copied: "Copied!",
837
+ studio_editor_entity_tooltip: "Edit entity schema",
838
+ studio_editor_entity_no_permission: "You don't have permission to edit this entity",
839
+ studio_home_edit_collection: "Edit collection",
840
+ studio_home_delete_collection: "Delete collection",
841
+ studio_home_confirm_delete_title: "Delete collection?",
842
+ studio_home_confirm_delete_body: "Are you sure you want to delete the collection \"{{name}}\"? This action cannot be undone.",
843
+ studio_kanban_setup: "Kanban Setup",
844
+ studio_missing_reference: "Missing reference: {{path}}",
845
+ studio_missing_reference_create: "Create",
846
+ studio_new_collection: "New collection",
847
+ studio_new_collection_card: "New collection",
848
+ studio_new_collection_no_permission: "You don't have permissions to create collections",
849
+ studio_property_add_column: "Add new property",
850
+ studio_property_add_column_no_permission: "You don't have permission to add new properties",
851
+ studio_add_kanban_column_desc: "Add a new option to the \"{{property}}\" property. This will create a new column in the Kanban board.",
852
+ studio_add_kanban_column_adding: "Adding...",
853
+ studio_collection_view_edit: "Edit",
854
+ studio_editor_collection_disabled: "Collection editing is disabled",
855
+ studio_editor_collection_edit: "Edit collection",
856
+ studio_editor_entity_save_first: "You need to save the document before changing the schema",
857
+ studio_editor_entity_edit_schema: "Edit schema for this form",
858
+ studio_editor_collection_start_save_filter: "Save default filter and sort",
859
+ studio_editor_collection_start_clear_filter: "Clear default filter and sort",
860
+ studio_editor_collection_start_reset_filter: "Reset to default filter and sort",
861
+ studio_editor_collection_start_saved: "Default config saved",
862
+ studio_home_duplicate_collection: "Duplicate",
863
+ studio_home_delete: "Delete",
864
+ studio_home_confirm_delete_no_data: "This will not delete any data, only the collection in the CMS",
865
+ studio_home_collection_deleted: "Collection deleted",
866
+ studio_kanban_configure: "Configure Kanban",
867
+ studio_missing_reference_error: "No collection for path: {{path}}",
868
+ studio_new_collection_add: "नया संग्रह जोड़ें",
869
+
870
+ // ─── Property field labels ──────────────────────────────────
871
+ db_column_type: "डेटाबेस कॉलम प्रकार",
872
+ primary_key_unique_id: "प्राथमिक कुंजी / अद्वितीय ID",
873
+ spread_children_as_columns: "बच्चों को कॉलम के रूप में फैलाएं",
874
+ mode: "मोड",
875
+ timezone: "समय क्षेत्र",
876
+ target_collection: "लक्ष्य संग्रह",
877
+
878
+ // ─── Storage property ───────────────────────────────────────
879
+ storage_file_name: "फ़ाइल का नाम",
880
+ storage_path: "संग्रहण पथ",
881
+ storage_max_size: "अधिकतम आकार (बाइट्स में)",
882
+ storage_resize_mode: "आकार बदलने का मोड",
883
+ storage_output_format: "आउटपुट प्रारूप",
884
+ storage_max_width: "अधिकतम चौड़ाई (px)",
885
+ storage_max_height: "अधिकतम ऊंचाई (px)",
886
+ storage_quality: "गुणवत्ता (0-100)",
887
+ storage_file_upload_config: "फ़ाइल अपलोड कॉन्फ़िगरेशन",
888
+ storage_image_resize_config: "इमेज आकार बदलने का कॉन्फ़िगरेशन",
889
+ storage_all_file_types: "सभी फ़ाइल प्रकार अनुमत",
890
+ storage_allowed_file_types: "अनुमत फ़ाइल प्रकार",
891
+ storage_include_bucket_url: "सहेजे गए मान में बकेट URL (s3://...) शामिल करें",
892
+ storage_save_url: "संग्रहण पथ के बजाय URL सहेजें",
893
+
894
+ // ─── DateTime property ──────────────────────────────────────
895
+ datetime_automatic_value: "स्वचालित मान",
896
+
897
+ // ─── Markdown property ──────────────────────────────────────
898
+ markdown_paste_behavior: "पेस्ट व्यवहार",
899
+ markdown_strip_html: "पेस्ट करते समय HTML हटाएं",
900
+ markdown_convert_pasted: "पेस्ट किए गए टेक्स्ट को मार्कडाउन में बदलें"
901
+ };