@firecms/core 3.1.0 → 3.2.0-canary.9c3d298
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/EntityCollectionView/CollectionDataErrorBanner.d.ts +4 -0
- package/dist/components/ErrorBoundary.d.ts +3 -1
- package/dist/components/HomePage/DefaultHomePage.d.ts +0 -1
- package/dist/components/LanguageToggle.d.ts +1 -0
- package/dist/components/UnsavedChangesDialog.d.ts +1 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/core/DrawerNavigationGroup.d.ts +2 -2
- package/dist/editor/components/SlashCommandMenu.d.ts +6 -0
- package/dist/editor/components/editor-bubble-item.d.ts +8 -0
- package/dist/editor/components/editor-bubble.d.ts +8 -0
- package/dist/editor/components/image-bubble.d.ts +5 -0
- package/dist/editor/components/index.d.ts +16 -0
- package/dist/editor/components/table-bubble.d.ts +5 -0
- package/dist/editor/editor.d.ts +30 -0
- package/dist/editor/extensions/HighlightDecorationExtension.d.ts +24 -0
- package/dist/editor/extensions/Image/index.d.ts +6 -0
- package/dist/editor/extensions/Image.d.ts +6 -0
- package/dist/editor/extensions/TextLoadingDecorationExtension.d.ts +16 -0
- package/dist/editor/extensions/clipboard.d.ts +7 -0
- package/dist/editor/extensions/custom-keymap.d.ts +1 -0
- package/dist/editor/extensions/drag-and-drop.d.ts +9 -0
- package/dist/editor/hooks/useProseMirror.d.ts +13 -0
- package/dist/editor/hooks/useProseMirrorContext.d.ts +9 -0
- package/dist/editor/index.d.ts +2 -0
- package/dist/editor/markdown.d.ts +5 -0
- package/dist/editor/nodeViews/ImageComponent.d.ts +3 -0
- package/dist/editor/nodeViews/ReactNodeView.d.ts +29 -0
- package/dist/editor/nodeViews/TaskItemComponent.d.ts +3 -0
- package/dist/editor/nodeViews/index.d.ts +6 -0
- package/dist/editor/plugins/index.d.ts +2 -0
- package/dist/editor/plugins/inputrules.d.ts +6 -0
- package/dist/editor/plugins/placeholderPlugin.d.ts +3 -0
- package/dist/editor/plugins/slashCommandPlugin.d.ts +12 -0
- package/dist/editor/schema.d.ts +2 -0
- package/dist/editor/selectors/ai-selector.d.ts +0 -0
- package/dist/editor/selectors/color-selector.d.ts +10 -0
- package/dist/editor/selectors/link-selector.d.ts +8 -0
- package/dist/editor/selectors/node-selector.d.ts +15 -0
- package/dist/editor/selectors/text-buttons.d.ts +1 -0
- package/dist/editor/types.d.ts +5 -0
- package/dist/editor/useProseMirror.d.ts +16 -0
- package/dist/editor/utils/prosemirror-utils.d.ts +6 -0
- package/dist/editor/utils/remove_classes.d.ts +1 -0
- package/dist/editor/utils/useDebouncedCallback.d.ts +1 -0
- package/dist/form/field_bindings/MarkdownEditorFieldBinding.d.ts +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useBuildNavigationController.d.ts +0 -1
- package/dist/hooks/useCollapsedGroups.d.ts +3 -3
- package/dist/hooks/useTranslation.d.ts +17 -0
- package/dist/i18n/FireCMSi18nProvider.d.ts +33 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.es.js +12898 -2265
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +12877 -2264
- package/dist/index.umd.js.map +1 -1
- package/dist/locales/de.d.ts +2 -0
- package/dist/locales/en.d.ts +10 -0
- package/dist/locales/es.d.ts +10 -0
- package/dist/locales/fr.d.ts +2 -0
- package/dist/locales/hi.d.ts +2 -0
- package/dist/locales/it.d.ts +2 -0
- package/dist/locales/pt.d.ts +7 -0
- package/dist/types/customization_controller.d.ts +2 -1
- package/dist/types/firecms.d.ts +2 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/navigation.d.ts +2 -2
- package/dist/types/plugins.d.ts +7 -0
- package/dist/types/storage.d.ts +1 -0
- package/dist/types/translations.d.ts +646 -0
- package/dist/util/useStorageUploadController.d.ts +10 -1
- package/package.json +45 -9
- package/src/app/Scaffold.tsx +7 -5
- package/src/components/AIIcon.tsx +3 -1
- package/src/components/ArrayContainer.tsx +6 -4
- package/src/components/ClearFilterSortButton.tsx +6 -3
- package/src/components/ConfirmationDialog.tsx +4 -2
- package/src/components/DeleteEntityDialog.tsx +10 -7
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +6 -3
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +3 -1
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +3 -2
- package/src/components/EntityCollectionView/BoardSortableList.tsx +3 -1
- package/src/components/EntityCollectionView/CollectionDataErrorBanner.tsx +43 -0
- package/src/components/EntityCollectionView/EntityCollectionBoardView.tsx +16 -43
- package/src/components/EntityCollectionView/EntityCollectionCardView.tsx +17 -25
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +26 -18
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +4 -3
- package/src/components/EntityCollectionView/EntityCollectionViewStartActions.tsx +4 -2
- package/src/components/EntityCollectionView/FiltersDialog.tsx +8 -5
- package/src/components/EntityCollectionView/ViewModeToggle.tsx +11 -8
- package/src/components/EntityView.tsx +3 -2
- package/src/components/ErrorBoundary.tsx +27 -15
- package/src/components/HomePage/DefaultHomePage.tsx +19 -13
- package/src/components/HomePage/HomePageDnD.tsx +3 -1
- package/src/components/HomePage/NavigationGroup.tsx +3 -1
- package/src/components/HomePage/RenameGroupDialog.tsx +15 -13
- package/src/components/LanguageToggle.tsx +66 -0
- package/src/components/NotFoundPage.tsx +5 -3
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +9 -7
- package/src/components/ReferenceWidget.tsx +3 -2
- package/src/components/SearchIconsView.tsx +3 -1
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +11 -0
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +15 -2
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +11 -0
- package/src/components/UnsavedChangesDialog.tsx +6 -4
- package/src/components/VirtualTable/VirtualTable.performance.test.tsx +1 -0
- package/src/components/VirtualTable/VirtualTableHeader.tsx +12 -10
- package/src/components/common/default_entity_actions.tsx +4 -0
- package/src/components/common/useDataSourceTableController.tsx +12 -4
- package/src/components/index.tsx +1 -0
- package/src/core/DefaultAppBar.tsx +14 -10
- package/src/core/DefaultDrawer.tsx +8 -2
- package/src/core/DrawerNavigationGroup.tsx +5 -3
- package/src/core/EntityEditView.tsx +4 -3
- package/src/core/EntityEditViewFormActions.tsx +24 -17
- package/src/core/EntitySidePanel.tsx +6 -5
- package/src/core/FireCMS.tsx +33 -6
- package/src/editor/components/SlashCommandMenu.tsx +516 -0
- package/src/editor/components/editor-bubble-item.tsx +32 -0
- package/src/editor/components/editor-bubble.tsx +118 -0
- package/src/editor/components/image-bubble.tsx +156 -0
- package/src/editor/components/index.ts +14 -0
- package/src/editor/components/table-bubble.tsx +165 -0
- package/src/editor/editor.tsx +455 -0
- package/src/editor/extensions/HighlightDecorationExtension.ts +114 -0
- package/src/editor/extensions/Image/index.ts +133 -0
- package/src/editor/extensions/Image.ts +159 -0
- package/src/editor/extensions/TextLoadingDecorationExtension.tsx +107 -0
- package/src/editor/extensions/clipboard.ts +72 -0
- package/src/editor/extensions/custom-keymap.ts +24 -0
- package/src/editor/extensions/drag-and-drop.tsx +480 -0
- package/src/editor/hooks/useProseMirror.ts +124 -0
- package/src/editor/hooks/useProseMirrorContext.ts +15 -0
- package/src/editor/index.ts +2 -0
- package/src/editor/markdown.ts +172 -0
- package/src/editor/nodeViews/ImageComponent.tsx +20 -0
- package/src/editor/nodeViews/ReactNodeView.tsx +89 -0
- package/src/editor/nodeViews/TaskItemComponent.tsx +29 -0
- package/src/editor/nodeViews/index.ts +35 -0
- package/src/editor/plugins/index.ts +58 -0
- package/src/editor/plugins/inputrules.ts +82 -0
- package/src/editor/plugins/placeholderPlugin.ts +55 -0
- package/src/editor/plugins/slashCommandPlugin.ts +61 -0
- package/src/editor/schema.ts +240 -0
- package/src/editor/selectors/ai-selector.tsx +111 -0
- package/src/editor/selectors/color-selector.tsx +200 -0
- package/src/editor/selectors/link-selector.tsx +118 -0
- package/src/editor/selectors/node-selector.tsx +157 -0
- package/src/editor/selectors/text-buttons.tsx +86 -0
- package/src/editor/types.ts +6 -0
- package/src/editor/useProseMirror.ts +126 -0
- package/src/editor/utils/prosemirror-utils.ts +108 -0
- package/src/editor/utils/remove_classes.ts +17 -0
- package/src/editor/utils/useDebouncedCallback.ts +25 -0
- package/src/form/EntityForm.tsx +16 -3
- package/src/form/EntityFormActions.tsx +19 -12
- package/src/form/PropertyFieldBinding.tsx +3 -2
- package/src/form/components/LocalChangesMenu.tsx +13 -13
- package/src/form/components/StorageItemPreview.tsx +3 -2
- package/src/form/components/StorageUploadProgress.tsx +18 -3
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +4 -4
- package/src/form/field_bindings/BlockFieldBinding.tsx +5 -2
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +23 -18
- package/src/form/field_bindings/MapFieldBinding.tsx +4 -3
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +33 -19
- package/src/form/field_bindings/RepeatFieldBinding.tsx +3 -1
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +4 -3
- package/src/hooks/index.tsx +1 -0
- package/src/hooks/useBuildNavigationController.tsx +45 -18
- package/src/hooks/useCollapsedGroups.ts +7 -6
- package/src/hooks/useTranslation.ts +31 -0
- package/src/i18n/FireCMSi18nProvider.tsx +160 -0
- package/src/index.ts +4 -0
- package/src/internal/useBuildSideEntityController.tsx +22 -20
- package/src/locales/de.ts +691 -0
- package/src/locales/en.ts +703 -0
- package/src/locales/es.ts +703 -0
- package/src/locales/fr.ts +691 -0
- package/src/locales/hi.ts +691 -0
- package/src/locales/it.ts +691 -0
- package/src/locales/pt.ts +700 -0
- package/src/preview/components/UrlComponentPreview.tsx +4 -2
- package/src/preview/components/UserPreview.tsx +3 -1
- package/src/types/customization_controller.tsx +2 -1
- package/src/types/firecms.tsx +2 -1
- package/src/types/index.ts +1 -0
- package/src/types/navigation.ts +2 -2
- package/src/types/plugins.tsx +8 -0
- package/src/types/properties.ts +1 -0
- package/src/types/storage.ts +2 -1
- package/src/types/translations.ts +725 -0
- package/src/util/useStorageUploadController.tsx +23 -29
|
@@ -0,0 +1,700 @@
|
|
|
1
|
+
import { FireCMSTranslations } from "../types/translations";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Portuguese (pt) translations for @firecms/core.
|
|
5
|
+
*
|
|
6
|
+
* @group Core
|
|
7
|
+
*/
|
|
8
|
+
export const pt: FireCMSTranslations = {
|
|
9
|
+
// ─── Form actions ────────────────────────────────────────────
|
|
10
|
+
save: "Guardar",
|
|
11
|
+
create: "Criar",
|
|
12
|
+
create_copy: "Criar cópia",
|
|
13
|
+
save_and_close: "Guardar e fechar",
|
|
14
|
+
create_copy_and_close: "Criar cópia e fechar",
|
|
15
|
+
create_and_close: "Criar e fechar",
|
|
16
|
+
discard: "Descartar",
|
|
17
|
+
clear: "Limpar",
|
|
18
|
+
cancel: "Cancelar",
|
|
19
|
+
|
|
20
|
+
// ─── Entity actions ──────────────────────────────────────────
|
|
21
|
+
edit: "Editar",
|
|
22
|
+
copy: "Copiar",
|
|
23
|
+
delete: "Eliminar",
|
|
24
|
+
|
|
25
|
+
// ─── Delete dialog ───────────────────────────────────────────
|
|
26
|
+
delete_confirmation_title: "Eliminar?",
|
|
27
|
+
delete_confirmation_body: "Esta ação eliminará a entidade. Tem a certeza?",
|
|
28
|
+
delete_multiple_confirmation_body: "Esta ação eliminará as entidades selecionadas. Tem a certeza?",
|
|
29
|
+
|
|
30
|
+
// ─── Unsaved-changes dialog ───────────────────────────────────
|
|
31
|
+
unsaved_changes_title: "Alterações não guardadas",
|
|
32
|
+
unsaved_changes_body: "Tem alterações não guardadas. Deseja descartá-las?",
|
|
33
|
+
discard_changes: "Descartar alterações",
|
|
34
|
+
keep_editing: "Continuar a editar",
|
|
35
|
+
|
|
36
|
+
// ─── Collection table / toolbar ──────────────────────────────
|
|
37
|
+
search: "Pesquisar",
|
|
38
|
+
find_by_id: "Encontrar por ID",
|
|
39
|
+
find_entity_by_id: "Encontrar entidade por ID",
|
|
40
|
+
filter: "Filtrar",
|
|
41
|
+
filters: "Filtros",
|
|
42
|
+
clear_filter: "Limpar filtro",
|
|
43
|
+
clear_filter_sort: "Limpar filtro/ordenação",
|
|
44
|
+
clear_sort: "Limpar ordenação",
|
|
45
|
+
no_items: "Sem itens",
|
|
46
|
+
no_entries_found: "Nenhum registo encontrado",
|
|
47
|
+
all_entries_loaded: "Todos os {{count}} registos carregados",
|
|
48
|
+
create_your_first_entry: "Crie o seu primeiro registo",
|
|
49
|
+
no_results_filter_sort: "Sem resultados com o filtro/ordenação aplicado",
|
|
50
|
+
add: "Adicionar",
|
|
51
|
+
remove: "Remover",
|
|
52
|
+
multiple_entities: "Múltiplas entidades",
|
|
53
|
+
unsaved_changes: "Tem alterações não guardadas em {{collectionName}}.",
|
|
54
|
+
so_empty: "Tão vazio...",
|
|
55
|
+
no_results: "Sem resultados com o filtro/ordenação aplicado",
|
|
56
|
+
refresh_data: "Atualizar dados",
|
|
57
|
+
dark_mode: "Escuro",
|
|
58
|
+
light_mode: "Claro",
|
|
59
|
+
system_mode: "Sistema",
|
|
60
|
+
ok: "Ok",
|
|
61
|
+
save_collection_config: "Guardar estrutura da coleção",
|
|
62
|
+
search_for_more_icons: "Pesquisar mais ícones…",
|
|
63
|
+
ai_modified: "Modificado por IA",
|
|
64
|
+
size_label: "Tamanho",
|
|
65
|
+
group_by: "Agrupar por",
|
|
66
|
+
initialize_kanban_order: "Inicializar Ordem Kanban",
|
|
67
|
+
copy_id: "Copiar ID",
|
|
68
|
+
add_specific: "Adicionar {{name}}",
|
|
69
|
+
select_specific: "Selecionar {{name}}",
|
|
70
|
+
select_from: "Selecionar de {{name}}",
|
|
71
|
+
done: "Concluído",
|
|
72
|
+
log_out: "Terminar sessão",
|
|
73
|
+
license_needed: "Licença necessária",
|
|
74
|
+
license_description: "Precisa de uma licença válida para usar o FireCMS PRO. Por favor contacte {{email}} para mais informações.",
|
|
75
|
+
column_cannot_be_edited: "Esta coluna não pode ser editada diretamente",
|
|
76
|
+
close: "Fechar",
|
|
77
|
+
unsaved_local_changes: "Alterações locais não guardadas",
|
|
78
|
+
unsaved_local_changes_description: "Este documento foi editado localmente e tem alterações não guardadas. Estas alterações locais serão perdidas se não as aplicar.",
|
|
79
|
+
preview_changes: "Pré-visualizar alterações",
|
|
80
|
+
apply_changes: "Aplicar alterações",
|
|
81
|
+
discard_local_changes: "Descartar alterações locais",
|
|
82
|
+
preview_local_changes: "Pré-visualizar alterações locais",
|
|
83
|
+
preview_local_changes_description: "Estas são as alterações locais que serão aplicadas ao formulário.",
|
|
84
|
+
type: "Tipo",
|
|
85
|
+
string: "string",
|
|
86
|
+
number: "número",
|
|
87
|
+
boolean: "booleano",
|
|
88
|
+
date: "data",
|
|
89
|
+
map: "mapa",
|
|
90
|
+
array: "lista",
|
|
91
|
+
arrays_of_arrays_not_supported: "Listas de listas não são suportadas.",
|
|
92
|
+
data_type_not_supported: "Tipo de dados {{dataType}} ainda não suportado",
|
|
93
|
+
passkey_error_unsupported: "O seu dispositivo ou browser não suporta passkeys.",
|
|
94
|
+
|
|
95
|
+
admin: "Administrador",
|
|
96
|
+
home: "Início",
|
|
97
|
+
this_form_has_errors: "Este formulário tem erros",
|
|
98
|
+
error_loading_navigation: "Erro ao carregar navegação",
|
|
99
|
+
error_loading_auth: "Erro ao carregar autenticação",
|
|
100
|
+
this_form_has_been_modified: "Este formulário foi modificado",
|
|
101
|
+
current_form_in_sync: "O formulário atual está sincronizado com a base de dados",
|
|
102
|
+
open_in_console: "Abrir na consola",
|
|
103
|
+
collection_does_not_exist: "A coleção especificada não existe. Verifique a consola",
|
|
104
|
+
unexpected_value: "Valor inesperado",
|
|
105
|
+
unexpected_value_click_to_edit: "Valor inesperado. Clique para editar",
|
|
106
|
+
unexpected_reference_value: "Valor de referência inesperado. Clique para editar",
|
|
107
|
+
copy_url_to_clipboard: "Copiar URL para a área de transferência",
|
|
108
|
+
open_image_in_new_tab: "Abrir imagem numa nova aba",
|
|
109
|
+
reference_not_set: "Referência não definida",
|
|
110
|
+
reference_does_not_exist: "A referência não existe",
|
|
111
|
+
entity_not_found: "Entidade não encontrada",
|
|
112
|
+
file_not_found: "Ficheiro não encontrado",
|
|
113
|
+
unsaved_changes_in_entity: "Tem alterações não guardadas nesta entidade.",
|
|
114
|
+
delete_this_role: "Eliminar esta função",
|
|
115
|
+
no_roles_yet: "Ainda não tem nenhuma função.",
|
|
116
|
+
create_default_roles: "Criar funções predefinidas",
|
|
117
|
+
delete_role_confirmation: "Tem a certeza de que quer eliminar esta função?",
|
|
118
|
+
delete_this_user: "Eliminar este utilizador",
|
|
119
|
+
no_users_yet: "Ainda não existem utilizadores",
|
|
120
|
+
add_logged_user_as_admin: "Adicionar o utilizador com sessão iniciada como administrador",
|
|
121
|
+
add_current_user_as_admin: "Adicionar utilizador atual como administrador",
|
|
122
|
+
create_default_roles_and_add_admin: "Criar funções predefinidas e adicionar utilizador atual como administrador",
|
|
123
|
+
delete_user_confirmation: "Tem a certeza de que quer eliminar este utilizador?",
|
|
124
|
+
create_your_users_and_roles: "Crie os seus utilizadores e funções",
|
|
125
|
+
no_users_or_roles_defined: "Não tem utilizadores ou funções definidas. Pode criar funções predefinidas e adicionar o utilizador atual como administrador.",
|
|
126
|
+
save_before_changing_schema: "Precisa de guardar o documento antes de alterar o esquema",
|
|
127
|
+
edit_schema_for_this_form: "Editar esquema para este formulário",
|
|
128
|
+
no_permissions_to_edit_collection: "Não tem permissões para editar esta coleção",
|
|
129
|
+
browser_does_not_support_audio: "O seu browser não suporta o elemento de áudio.",
|
|
130
|
+
user_not_found: "Utilizador não encontrado: {{value}}",
|
|
131
|
+
|
|
132
|
+
// ─── Collection view actions ──────────────────────────────────
|
|
133
|
+
delete_selected: "Eliminar",
|
|
134
|
+
cannot_delete_selected: "Selecionou pelo menos uma entidade que não pode eliminar",
|
|
135
|
+
|
|
136
|
+
// ─── Array / field containers ─────────────────────────────────
|
|
137
|
+
add_entry: "Adicionar",
|
|
138
|
+
add_on_top: "Adicionar no topo",
|
|
139
|
+
add_below: "Adicionar abaixo",
|
|
140
|
+
add_to_field: "Adicionar a {{fieldName}}",
|
|
141
|
+
value: "Valor",
|
|
142
|
+
key: "Chave",
|
|
143
|
+
drag_drop_multiple: "Arraste e solte ficheiros aqui, ou clique para selecionar. Arraste para reordenar.",
|
|
144
|
+
drag_drop_single: "Arraste e solte um ficheiro aqui, ou clique para selecionar um",
|
|
145
|
+
|
|
146
|
+
// ─── Navigation / scaffold ────────────────────────────────────
|
|
147
|
+
open_menu: "Abrir menu",
|
|
148
|
+
close_drawer: "Fechar painel lateral",
|
|
149
|
+
navigation_drawer: "Painel lateral de navegação",
|
|
150
|
+
|
|
151
|
+
// ─── Error states ─────────────────────────────────────────────
|
|
152
|
+
error: "Erro",
|
|
153
|
+
error_uploading_file: "Erro ao carregar ficheiro",
|
|
154
|
+
error_deleting: "Erro ao eliminar",
|
|
155
|
+
error_before_delete: "Erro antes de eliminar",
|
|
156
|
+
error_updating_asset: "Erro ao atualizar recurso",
|
|
157
|
+
error_deleting_asset: "Erro ao eliminar recurso",
|
|
158
|
+
error_firestore_index: "É necessário um índice Firestore para esta consulta.",
|
|
159
|
+
create_index: "Criar índice",
|
|
160
|
+
value_is_not_reference: "O valor não é uma referência.",
|
|
161
|
+
click_to_edit: "Clique para editar",
|
|
162
|
+
data_is_not_array_of_references: "Os dados não são uma lista de referências",
|
|
163
|
+
|
|
164
|
+
// ─── Misc ─────────────────────────────────────────────────────
|
|
165
|
+
loading: "A carregar",
|
|
166
|
+
local_changes_applied: "Alterações locais aplicadas ao formulário",
|
|
167
|
+
local_changes_discarded: "Alterações locais descartadas",
|
|
168
|
+
are_you_sure_leave: "Tem a certeza de que quer sair desta página?",
|
|
169
|
+
see_console_details: "Consulte a consola para mais detalhes.",
|
|
170
|
+
drop_here_create_group: "Solte aqui para criar um novo grupo",
|
|
171
|
+
filter_for_null_values: "Filtrar valores nulos",
|
|
172
|
+
value_updated_elsewhere: "Este valor foi atualizado noutro local",
|
|
173
|
+
add_property: "Adicionar propriedade",
|
|
174
|
+
edit_name: "Editar {{name}}",
|
|
175
|
+
this_entity_not_exist: "Esta entidade não existe na base de dados",
|
|
176
|
+
internal_error: "ERRO interno",
|
|
177
|
+
|
|
178
|
+
// ─── Rename group dialog ──────────────────────────────────────
|
|
179
|
+
rename_group: "Renomear Grupo",
|
|
180
|
+
group_name_label: "Nome do Grupo",
|
|
181
|
+
group_name_empty_error: "O nome do grupo não pode estar vazio.",
|
|
182
|
+
group_name_exists_error: "Este nome de grupo já existe.",
|
|
183
|
+
|
|
184
|
+
// ─── Search ───────────────────────────────────────────────────
|
|
185
|
+
search_collections: "Pesquisar coleções",
|
|
186
|
+
|
|
187
|
+
// ─── Navigation groups ────────────────────────────────────────
|
|
188
|
+
views_group: "Visualizações",
|
|
189
|
+
|
|
190
|
+
// ─── Entity Edit View ─────────────────────────────────────────
|
|
191
|
+
youd_need_to_save_before_additional_collections: "Precisa de guardar a sua entidade antes de adicionar coleções adicionais",
|
|
192
|
+
|
|
193
|
+
// ─── Not Found Page ───────────────────────────────────────────
|
|
194
|
+
page_not_found: "Página não encontrada",
|
|
195
|
+
page_not_found_body: "Esta página não existe ou pode não ter acesso a ela",
|
|
196
|
+
back_to_home: "Voltar ao início",
|
|
197
|
+
|
|
198
|
+
// ─── Collection Editor ─────────────────────────────────────────
|
|
199
|
+
default_collection_view: "Vista de coleção predefinida",
|
|
200
|
+
table_view: "Tabela",
|
|
201
|
+
cards_view: "Cartões",
|
|
202
|
+
kanban_view: "Kanban",
|
|
203
|
+
choose_how_entities_displayed_default: "Escolha como as entidades devem ser exibidas por padrão",
|
|
204
|
+
|
|
205
|
+
document_view: "Vista de documento",
|
|
206
|
+
side_panel: "Painel lateral",
|
|
207
|
+
full_screen: "Ecrã inteiro",
|
|
208
|
+
should_documents_opened_full_screen: "Os documentos devem ser abertos em ecrã inteiro ou num painel lateral inline",
|
|
209
|
+
|
|
210
|
+
select_custom_view: "Selecionar vista personalizada",
|
|
211
|
+
no_custom_views_defined: "Nenhuma vista personalizada definida. Defina as suas vistas personalizadas nas definições de personalização, antes de usar este diálogo.",
|
|
212
|
+
|
|
213
|
+
select_custom_action: "Selecionar ação personalizada",
|
|
214
|
+
no_custom_actions_defined: "Nenhuma ação personalizada definida. Defina as suas ações personalizadas nas definições de personalização, antes de usar este diálogo.",
|
|
215
|
+
|
|
216
|
+
no_collections_found: "Nenhuma coleção encontrada",
|
|
217
|
+
start_building_collections: "Comece a criar coleções no FireCMS facilmente. Mapeie-as aos dados existentes na sua base de dados, importe de ficheiros ou use os nossos modelos.",
|
|
218
|
+
create_first_collection: "Crie a sua primeira coleção",
|
|
219
|
+
define_collections_programmatically: "Também pode definir coleções programaticamente.",
|
|
220
|
+
edit_collection: "Editar coleção",
|
|
221
|
+
no_permissions_edit_collection: "Não tem permissões para editar esta coleção",
|
|
222
|
+
no_permissions_create_collection: "Não tem permissões para criar coleções",
|
|
223
|
+
create_collection: "Criar coleção",
|
|
224
|
+
update_collection: "Atualizar coleção",
|
|
225
|
+
|
|
226
|
+
new_collection: "Nova coleção",
|
|
227
|
+
add_new_collection: "Adicionar nova coleção",
|
|
228
|
+
collection_with_name: "Coleção {{name}}",
|
|
229
|
+
change_icon: "Alterar ícone",
|
|
230
|
+
is_subcollection_of: "Esta é uma subcoleção de",
|
|
231
|
+
name: "Nome",
|
|
232
|
+
collection_name_description: "Nome desta coleção, normalmente um nome no plural (ex. Produtos)",
|
|
233
|
+
path: "Caminho",
|
|
234
|
+
relative_path_to_parent: "Caminho relativo ao pai (não é necessário incluir o caminho do pai)",
|
|
235
|
+
path_in_database: "Caminho em que esta coleção está armazenada na base de dados",
|
|
236
|
+
singular_name: "Nome singular",
|
|
237
|
+
singular_name_description: "Opcionalmente defina um nome singular para as suas entidades",
|
|
238
|
+
description: "Descrição",
|
|
239
|
+
description_of_collection: "Descrição da coleção, pode usar markdown",
|
|
240
|
+
collection_id: "ID da coleção",
|
|
241
|
+
collection_id_description: "Este ID identifica esta coleção. Normalmente igual ao caminho.",
|
|
242
|
+
collection_group: "Grupo de coleções",
|
|
243
|
+
collection_group_description: "Um grupo de coleções consiste em todas as coleções com o mesmo caminho. Isto permite consultar várias coleções ao mesmo tempo.",
|
|
244
|
+
advanced_settings: "Definições avançadas",
|
|
245
|
+
doc_history_global: "Revisões do histórico do documento ativadas se ativadas globalmente",
|
|
246
|
+
doc_history_enabled: "Revisões do histórico do documento ATIVADAS",
|
|
247
|
+
doc_history_not_enabled: "Revisões do histórico do documento NÃO ativadas",
|
|
248
|
+
doc_history_description: "Quando ativado, cada documento nesta coleção terá um histórico de alterações. Útil para fins de auditoria. Os dados são armazenados numa subcoleção do documento na sua base de dados, chamada __history.",
|
|
249
|
+
document_id_generation: "Geração de IDs de documentos",
|
|
250
|
+
code_defined: "Definido por código",
|
|
251
|
+
users_must_define_id: "Os utilizadores devem definir um ID",
|
|
252
|
+
users_can_define_id: "Os utilizadores podem definir um ID, mas não é obrigatório",
|
|
253
|
+
doc_id_auto_generated: "O ID do documento é gerado automaticamente",
|
|
254
|
+
config_doc_id_generation: "Configure como os IDs de documentos são gerados ao criar novas entidades.",
|
|
255
|
+
enable_text_search: "Ativar pesquisa de texto para esta coleção",
|
|
256
|
+
text_search_description: "Permitir pesquisa de texto para esta coleção. Se não especificou um delegado de pesquisa de texto, será usada a pesquisa de texto local integrada. Não recomendado para grandes coleções, pois pode causar problemas de desempenho e custo.",
|
|
257
|
+
database_id: "ID da base de dados",
|
|
258
|
+
default_text: "(predefinição)",
|
|
259
|
+
|
|
260
|
+
custom_actions: "Ações personalizadas",
|
|
261
|
+
more_info: "Mais informações",
|
|
262
|
+
define_custom_actions_cli: "Defina as suas próprias ações personalizadas carregando-as com o CLI.",
|
|
263
|
+
action_defined_in_code: "Esta ação está definida em código com a chave",
|
|
264
|
+
add_custom_entity_action: "Adicionar ação de entidade personalizada",
|
|
265
|
+
remove_this_action: "Remover esta ação?",
|
|
266
|
+
remove_action_warning: "Isto não eliminará nenhum dado, apenas a ação no CMS",
|
|
267
|
+
|
|
268
|
+
subcollections_of: "Subcoleções de",
|
|
269
|
+
add_subcollection: "Adicionar subcoleção",
|
|
270
|
+
custom_views: "Vistas personalizadas",
|
|
271
|
+
define_custom_views_cli: "Defina as suas próprias vistas personalizadas carregando-as com o CLI.",
|
|
272
|
+
view_defined_in_code: "Esta vista está definida em código com a chave",
|
|
273
|
+
add_custom_entity_view: "Adicionar vista de entidade personalizada",
|
|
274
|
+
delete_this_subcollection: "Eliminar esta subcoleção?",
|
|
275
|
+
remove_collection_warning: "Isto não eliminará nenhum dado, apenas a coleção no CMS",
|
|
276
|
+
remove_this_view: "Remover esta vista?",
|
|
277
|
+
remove_view_warning: "Isto não eliminará nenhum dado, apenas a vista no CMS",
|
|
278
|
+
|
|
279
|
+
no_collection_selected: "Nenhuma coleção selecionada",
|
|
280
|
+
code_for_collection: "Código para",
|
|
281
|
+
use_config_define_json: "Use esta configuração para definir a coleção em formato JSON.",
|
|
282
|
+
customise_collection_code: "Se quiser personalizar a coleção em código, pode adicionar este código de coleção à configuração da sua aplicação CMS.",
|
|
283
|
+
copied: "Copiado",
|
|
284
|
+
|
|
285
|
+
property_cant_be_edited: "Esta propriedade não pode ser editada",
|
|
286
|
+
property_not_editable_description: "Pode não ter permissão para editá-la ou está definida em código com o sinalizador editável definido como falso.",
|
|
287
|
+
delete_this_property: "Eliminar esta propriedade?",
|
|
288
|
+
delete_property_warning: "Isto não eliminará nenhum dado, apenas modificará a coleção.",
|
|
289
|
+
error_must_specify_id: "Deve especificar um id para o campo",
|
|
290
|
+
error_id_format: "O id só pode conter letras, números e underscores (_), e não pode começar com um número",
|
|
291
|
+
error_id_already_exists: "Já existe outro campo com este ID",
|
|
292
|
+
error_must_specify_title: "Deve especificar um título para o campo",
|
|
293
|
+
custom_or_other: "Personalizado/Outro",
|
|
294
|
+
select_property_widget: "Selecionar um widget de propriedade",
|
|
295
|
+
error_changing_data_type: "Este widget usa um tipo de dados diferente do widget inicialmente selecionado. Isto pode causar erros com dados existentes.",
|
|
296
|
+
required: "Obrigatório",
|
|
297
|
+
|
|
298
|
+
enum_form_dialog: "Diálogo de formulário enum",
|
|
299
|
+
imported_data_preview: "Pré-visualização de dados importados",
|
|
300
|
+
entities_with_same_id_overwritten: "Entidades com o mesmo id serão substituídas",
|
|
301
|
+
collection_editor: "Editor de coleção",
|
|
302
|
+
properties_in_this_group: "Propriedades neste grupo",
|
|
303
|
+
data_property_mapping: "Mapeamento de propriedade de dados",
|
|
304
|
+
property_edit_view: "Vista de edição de propriedade",
|
|
305
|
+
all_of_these: "Todos estes",
|
|
306
|
+
any_of_these: "Qualquer um destes",
|
|
307
|
+
|
|
308
|
+
only_admins_edit_roles: "Apenas administradores podem editar funções",
|
|
309
|
+
error_user_not_found: "Utilizador não encontrado",
|
|
310
|
+
role: "Função",
|
|
311
|
+
name_of_this_role: "Nome desta função",
|
|
312
|
+
id_of_this_role: "ID desta função",
|
|
313
|
+
create_entities: "Criar entidades",
|
|
314
|
+
read_entities: "Ler entidades",
|
|
315
|
+
update_entities: "Atualizar entidades",
|
|
316
|
+
delete_entities: "Eliminar entidades",
|
|
317
|
+
all_collections: "Todas as coleções",
|
|
318
|
+
create_entities_in_collections: "Criar entidades em coleções",
|
|
319
|
+
access_all_data_in_every_collection: "Aceder a todos os dados em todas as coleções",
|
|
320
|
+
update_data_in_any_collection: "Atualizar dados em qualquer coleção",
|
|
321
|
+
delete_data_in_any_collection: "Eliminar dados em qualquer coleção",
|
|
322
|
+
allow_all_permissions_in_this_collections: "Permitir todas as permissões nestas coleções",
|
|
323
|
+
all: "Todos",
|
|
324
|
+
customise_permissions_description: "Pode personalizar as permissões que os utilizadores relacionados com esta função podem realizar nas entidades de cada coleção",
|
|
325
|
+
create_collections: "Criar coleções",
|
|
326
|
+
yes: "Sim",
|
|
327
|
+
no: "Não",
|
|
328
|
+
can_user_create_collections: "O utilizador pode criar coleções",
|
|
329
|
+
edit_collections: "Editar coleções",
|
|
330
|
+
only_own_collections: "Apenas as suas próprias",
|
|
331
|
+
own: "Próprias",
|
|
332
|
+
can_user_edit_collections: "O utilizador pode editar coleções",
|
|
333
|
+
delete_collections: "Eliminar coleções",
|
|
334
|
+
can_user_delete_collections: "O utilizador pode eliminar coleções",
|
|
335
|
+
error_saving_role: "Ocorreu um erro ao guardar esta função",
|
|
336
|
+
create_role: "Criar função",
|
|
337
|
+
update: "Atualizar",
|
|
338
|
+
|
|
339
|
+
only_admins_change_roles: "Apenas administradores podem alterar funções",
|
|
340
|
+
must_be_at_least_one_admin: "Deve existir pelo menos um administrador",
|
|
341
|
+
logged_user_not_found: "Utilizador com sessão iniciada não encontrado",
|
|
342
|
+
user: "Utilizador",
|
|
343
|
+
user_id: "ID do utilizador",
|
|
344
|
+
name_of_this_user: "Nome deste utilizador",
|
|
345
|
+
email_of_this_user: "Email deste utilizador",
|
|
346
|
+
roles: "Funções",
|
|
347
|
+
create_user: "Criar utilizador",
|
|
348
|
+
|
|
349
|
+
users: "Utilizadores",
|
|
350
|
+
add_user: "Adicionar utilizador",
|
|
351
|
+
add_role: "Adicionar função",
|
|
352
|
+
is_admin: "É Administrador",
|
|
353
|
+
default_permissions: "Permissões predefinidas",
|
|
354
|
+
created_on: "Criado em",
|
|
355
|
+
email: "Email",
|
|
356
|
+
id: "ID",
|
|
357
|
+
read: "Ler",
|
|
358
|
+
|
|
359
|
+
column_in_file: "Coluna no ficheiro",
|
|
360
|
+
map_to_property: "Mapear para propriedade",
|
|
361
|
+
default_values: "Valores predefinidos",
|
|
362
|
+
default_values_description: "Pode selecionar um valor predefinido para colunas não mapeadas e valores vazios:",
|
|
363
|
+
property: "Propriedade",
|
|
364
|
+
default_value: "Valor predefinido",
|
|
365
|
+
autogenerate_id: "Gerar ID automaticamente",
|
|
366
|
+
id_column_description: "Coluna que será usada como ID para cada documento",
|
|
367
|
+
do_not_set_value: "Não definir valor",
|
|
368
|
+
set_value_to_true: "Definir valor como verdadeiro",
|
|
369
|
+
set_value_to_false: "Definir valor como falso",
|
|
370
|
+
drag_and_drop_file: "Arraste e solte um ficheiro aqui ou clique para carregar",
|
|
371
|
+
error_saving_data: "Erro ao guardar dados",
|
|
372
|
+
retry: "Tentar novamente",
|
|
373
|
+
saving_data: "A guardar dados",
|
|
374
|
+
entities_saved: "entidades guardadas",
|
|
375
|
+
do_not_close_tab: "Não feche este separador ou a importação será interrompida",
|
|
376
|
+
import: "Importar",
|
|
377
|
+
import_data: "Importar dados",
|
|
378
|
+
upload_file_description: "Carregue um ficheiro CSV, Excel ou JSON e mapeie-o para o esquema existente",
|
|
379
|
+
back: "Voltar",
|
|
380
|
+
next: "Seguinte",
|
|
381
|
+
save_data: "Guardar dados",
|
|
382
|
+
use_column_as_id: "Usar esta coluna como ID",
|
|
383
|
+
do_not_import_property: "Não importar esta propriedade",
|
|
384
|
+
entities_will_be_overwritten: "Entidades com o mesmo id serão substituídas",
|
|
385
|
+
data_imported_successfully: "Dados importados com sucesso",
|
|
386
|
+
export: "Exportar",
|
|
387
|
+
export_data: "Exportar dados",
|
|
388
|
+
download_table_csv: "Descarregar o conteúdo desta tabela como CSV",
|
|
389
|
+
csv: "CSV",
|
|
390
|
+
json: "JSON",
|
|
391
|
+
dates_as_timestamps: "Datas como timestamps",
|
|
392
|
+
dates_as_strings: "Datas como strings",
|
|
393
|
+
flatten_arrays: "Achatar listas",
|
|
394
|
+
download: "Descarregar",
|
|
395
|
+
large_number_of_documents: "Esta coleção tem um grande número de documentos ({{count}}).",
|
|
396
|
+
include_undefined_values: "Incluir valores indefinidos",
|
|
397
|
+
submit: "Submeter",
|
|
398
|
+
|
|
399
|
+
no_filterable_properties: "Não há propriedades filtráveis disponíveis",
|
|
400
|
+
apply_filters: "Aplicar filtros",
|
|
401
|
+
list: "Lista",
|
|
402
|
+
cards: "Cartões",
|
|
403
|
+
board: "Quadro",
|
|
404
|
+
initialize_kanban_order_desc: "Isto atribuirá valores de ordem sequenciais a todos os itens que não tenham um. Os itens manterão a sua ordem atual dentro de cada coluna.",
|
|
405
|
+
kanban_view_not_available: "A vista Kanban não está disponível",
|
|
406
|
+
kanban_view_requires_enum: "A vista Kanban requer uma propriedade de string com valores enum para agrupar entidades em colunas. Adicione uma propriedade enum ao esquema da sua coleção para usar esta vista.",
|
|
407
|
+
no_enum_values_configured: 'Nenhum valor enum configurado para a propriedade "{{property}}"',
|
|
408
|
+
items_need_backfill: "Alguns itens não têm valores de ordem. Inicialize para ativar a reordenação por arrastar e soltar.",
|
|
409
|
+
initialize: "Inicializar",
|
|
410
|
+
confirm_multiple_delete: "Confirmar eliminação múltipla?",
|
|
411
|
+
delete_entity_confirm_title: "Deseja eliminar este/a {{entityName}}?",
|
|
412
|
+
|
|
413
|
+
/** AI Collection Generator Popover */
|
|
414
|
+
generate_collection_with_ai: "Gerar Coleção com IA",
|
|
415
|
+
modify_collection_with_ai: "Modificar Coleção com IA",
|
|
416
|
+
describe_collection_to_create: "Descreva a coleção que quer criar.",
|
|
417
|
+
describe_changes_to_make: "Descreva as alterações que quer fazer a esta coleção.",
|
|
418
|
+
ai_placeholder_create: "ex.: Criar uma coleção de produtos com nome, preço, descrição e categoria...",
|
|
419
|
+
ai_placeholder_modify: "ex.: Adicionar um campo de imagem miniatura com armazenamento, tornar o preço obrigatório...",
|
|
420
|
+
ai_assist: "Assistente IA",
|
|
421
|
+
generating: "A gerar...",
|
|
422
|
+
|
|
423
|
+
/** Recently extracted strings for collection editor */
|
|
424
|
+
this_is_subcollection_of: "Esta é uma subcoleção de",
|
|
425
|
+
use_existing_paths_database: "Use um dos caminhos existentes na sua base de dados:",
|
|
426
|
+
describe_collection_ai: "Descreva a sua coleção à IA:",
|
|
427
|
+
generate_with_ai: "Gerar com IA",
|
|
428
|
+
create_from_json_config: "Criar a partir de configuração JSON:",
|
|
429
|
+
paste_json_config: "Colar Configuração JSON",
|
|
430
|
+
create_collection_from_file_formats: "Criar uma coleção a partir de um ficheiro (csv, json, xls, xslx...)",
|
|
431
|
+
select_template: "Selecionar um modelo:",
|
|
432
|
+
products: "Produtos",
|
|
433
|
+
collection_products_subtitle: "Uma coleção de produtos com imagens, preços e stock",
|
|
434
|
+
collection_users_subtitle: "Uma coleção de utilizadores com emails, nomes e funções",
|
|
435
|
+
blog_posts: "Publicações de blog",
|
|
436
|
+
collection_blog_posts_subtitle: "Uma coleção de publicações de blog com imagens, autores e conteúdo complexo",
|
|
437
|
+
pages: "Páginas",
|
|
438
|
+
collection_pages_subtitle: "Uma coleção de páginas com imagens, autores e conteúdo complexo",
|
|
439
|
+
continue_from_scratch: "Continuar do zero",
|
|
440
|
+
|
|
441
|
+
/** Admin views config */
|
|
442
|
+
cms_users: "Utilizadores do CMS",
|
|
443
|
+
roles_menu: "Funções",
|
|
444
|
+
project_settings: "Definições do projeto",
|
|
445
|
+
|
|
446
|
+
// ─── FireCMS Cloud Login ──────────────────────────────────────
|
|
447
|
+
build_admin_panel_in_minutes: "Construa o Seu Painel de Administração Firebase em Minutos",
|
|
448
|
+
go_live_instantly: "Entre em produção instantaneamente:",
|
|
449
|
+
create_production_ready_back_offices: "Crie back-offices prontos para produção",
|
|
450
|
+
without_the_frontend_hassle: "sem o trabalho de frontend.",
|
|
451
|
+
automatic_setup: "Configuração automática",
|
|
452
|
+
from_your_existing_firestore_data: "a partir dos seus dados Firestore existentes.",
|
|
453
|
+
seamless_real_time_firebase_integration: "Integração Firebase em tempo real sem falhas.",
|
|
454
|
+
intuitive_spreadsheet_like_ui: "Interface intuitiva semelhante a uma folha de cálculo",
|
|
455
|
+
your_whole_team_can_use: "que toda a sua equipa pode usar.",
|
|
456
|
+
focus_on_your_app: "Foque-se na sua aplicação,",
|
|
457
|
+
not_the_admin_panel: "não no painel de administração.",
|
|
458
|
+
join_our_newsletter: "Subscreva a nossa newsletter. Sem spam, apenas atualizações importantes!",
|
|
459
|
+
by_signing_in_you_agree_to_our: "Ao iniciar sessão, concorda com os nossos",
|
|
460
|
+
terms_and_conditions: "Termos e Condições",
|
|
461
|
+
and_our: "e a nossa",
|
|
462
|
+
privacy_policy: "Política de privacidade",
|
|
463
|
+
firecms_cloud_google_disclosure: "O uso das APIs Google e a transferência de informações recebidas pela FireCMS Cloud para qualquer outra aplicação seguirá a",
|
|
464
|
+
google_api_services_user_data_policy: "Política de Dados de Utilizador dos Serviços da API Google",
|
|
465
|
+
including_the_limited_use_requirements: "incluindo os requisitos de Uso Limitado.",
|
|
466
|
+
email_password: "Email/palavra-passe",
|
|
467
|
+
sign_in_with_google: "Iniciar sessão com Google",
|
|
468
|
+
|
|
469
|
+
// --- Auth error messages ---
|
|
470
|
+
auth_user_not_found: "Utilizador não encontrado",
|
|
471
|
+
auth_wrong_password: "Palavra-passe incorreta. Por favor tente novamente.",
|
|
472
|
+
auth_user_disabled: "Utilizador desativado. Por favor contacte o suporte.",
|
|
473
|
+
auth_account_exists_with_different_credential: "Conta existente com método de início de sessão diferente",
|
|
474
|
+
auth_email_already_in_use: "O email já está em uso",
|
|
475
|
+
auth_google_permissions_required: "Precisa de conceder permissões adicionais para gerir os seus projetos Google Cloud",
|
|
476
|
+
auth_invalid_email_password: "Por favor introduza o email e a palavra-passe",
|
|
477
|
+
auth_enter_email_first: "Por favor introduza primeiro o seu email",
|
|
478
|
+
auth_password_reset_sent: "Email de redefinição de palavra-passe enviado",
|
|
479
|
+
auth_sign_in_account: "Iniciar sessão na sua conta",
|
|
480
|
+
auth_create_new_account: "Criar uma nova conta",
|
|
481
|
+
auth_password: "Palavra-passe",
|
|
482
|
+
auth_reset_password: "Redefinir palavra-passe",
|
|
483
|
+
auth_new_user: "Novo utilizador?",
|
|
484
|
+
auth_have_account: "Já tem uma conta?",
|
|
485
|
+
auth_sign_in: "Iniciar Sessão",
|
|
486
|
+
auth_sign_up: "Registar",
|
|
487
|
+
|
|
488
|
+
// --- SaaS Subscriptions ---
|
|
489
|
+
subscriptions: "Subscrições",
|
|
490
|
+
manage_your_subscriptions_in_stripe: "Gerir as suas subscrições no Stripe",
|
|
491
|
+
go_to_your_stripe_portal: "Aceda ao seu portal Stripe para ver o histórico de faturação. Pode também gerir as subscrições associadas ao utilizador com sessão iniciada.",
|
|
492
|
+
your_pro_licenses: "As suas licenças PRO",
|
|
493
|
+
create_new_license: "Criar nova licença",
|
|
494
|
+
create_subscriptions_in_this_section: "Crie subscrições nesta secção apenas para o FireCMS PRO auto-hospedado. Se estiver a usar o FireCMS Cloud, pode atualizar o seu projeto nas definições do projeto.",
|
|
495
|
+
if_you_are_an_agency: "Se for uma agência, pode revender a sua licença aos seus clientes.",
|
|
496
|
+
if_you_have_any_questions: "Se tiver alguma dúvida ou precisar de ajuda, contacte-nos em",
|
|
497
|
+
you_have_not_created_any_pro_licenses: "Ainda não criou nenhuma licença FireCMS PRO",
|
|
498
|
+
archive: "Arquivar",
|
|
499
|
+
licensed_projects_lowercase: "projetos licenciados",
|
|
500
|
+
manage: "Gerir",
|
|
501
|
+
update_payment_method: "Atualizar método de pagamento",
|
|
502
|
+
your_firecms_cloud_projects: "Os seus projetos FireCMS Cloud",
|
|
503
|
+
status_active: "Ativo",
|
|
504
|
+
status_trialing: "Em avaliação",
|
|
505
|
+
status_past_due: "Com pagamento em atraso",
|
|
506
|
+
status_canceled: "Cancelado",
|
|
507
|
+
status_unpaid: "Não pago",
|
|
508
|
+
status_incomplete: "Incompleto",
|
|
509
|
+
status_incomplete_expired: "Incompleto expirado",
|
|
510
|
+
status_unknown: "Desconhecido",
|
|
511
|
+
|
|
512
|
+
plan_free: "Não subscrito",
|
|
513
|
+
plan_cloud_plus: "Subscrito",
|
|
514
|
+
plan_pro: "Pro",
|
|
515
|
+
plan_unknown: "Plano Desconhecido",
|
|
516
|
+
|
|
517
|
+
auto_setup_collections_button: "Configurar coleções automaticamente",
|
|
518
|
+
auto_setup_collections_title: "Configurar coleções automaticamente?",
|
|
519
|
+
auto_setup_collections_desc: "Isto criará automaticamente configurações de coleção para coleções que <b>NÃO</b> estão já mapeadas",
|
|
520
|
+
this_can_take_a_minute: "Isto pode demorar um ou dois minutos",
|
|
521
|
+
no_collections_found_to_setup: "Nenhuma coleção encontrada para configurar.",
|
|
522
|
+
collections_have_been_setup: "As coleções foram configuradas automaticamente.",
|
|
523
|
+
error_setting_up_collections: "Erro ao configurar coleções automaticamente",
|
|
524
|
+
|
|
525
|
+
// --- Home Suggestions ---
|
|
526
|
+
add_your: "Adicione as suas",
|
|
527
|
+
database_collections: "coleções da base de dados",
|
|
528
|
+
to_firecms: "ao FireCMS",
|
|
529
|
+
no_unmapped_collections: "Sem coleções não mapeadas na base de dados",
|
|
530
|
+
query_and_update_with_datatalk: "Consulte e atualize os seus dados em linguagem natural com",
|
|
531
|
+
|
|
532
|
+
// --- SaaS Welcome ---
|
|
533
|
+
welcome_to_firecms: "Bem-vindo ao FireCMS Cloud",
|
|
534
|
+
admin_panel_ready_bring_data: "O seu painel de administração está pronto. Vamos importar os seus dados.",
|
|
535
|
+
admin_panel_ready_get_started: "O seu painel de administração está pronto. Veja como começar.",
|
|
536
|
+
auto_detect_collections: "Detetar coleções automaticamente",
|
|
537
|
+
auto_detect_collections_desc: "Deixe a IA analisar a sua base de dados e gerar automaticamente esquemas de coleção.",
|
|
538
|
+
create_a_collection: "Criar uma coleção",
|
|
539
|
+
create_collection_desc: "Defina manualmente a sua primeira coleção do zero usando o editor visual.",
|
|
540
|
+
read_the_docs: "Ler a documentação",
|
|
541
|
+
read_the_docs_desc: "Saiba como personalizar campos, vistas, ações e muito mais.",
|
|
542
|
+
explore_docs: "Explorar documentação",
|
|
543
|
+
want_to_customize_with_code: "Quer personalizar com código? Execute",
|
|
544
|
+
to_scaffold_a_local_project: "para criar um projeto local.",
|
|
545
|
+
|
|
546
|
+
// ─── Collection Editor — Validation ──────────────────────────
|
|
547
|
+
validation: "Validação",
|
|
548
|
+
unique: "Único",
|
|
549
|
+
required_message: "Mensagem de campo obrigatório",
|
|
550
|
+
required_tooltip: "Você não poderá salvar esta entidade se este valor não estiver definido",
|
|
551
|
+
unique_tooltip: "Não pode haver múltiplas entidades com o mesmo valor",
|
|
552
|
+
lowercase: "Minúsculas",
|
|
553
|
+
uppercase: "Maiúsculas",
|
|
554
|
+
trim: "Remover espaços",
|
|
555
|
+
exact_length: "Comprimento exato",
|
|
556
|
+
min_length: "Comprimento mín.",
|
|
557
|
+
max_length: "Comprimento máx.",
|
|
558
|
+
matches_regex: "Corresponde a regex",
|
|
559
|
+
not_valid_regexp: "Expressão regular inválida",
|
|
560
|
+
regex_helper: "ex. /^\\d+$/ apenas para dígitos",
|
|
561
|
+
min_value: "Valor mín.",
|
|
562
|
+
max_value: "Valor máx.",
|
|
563
|
+
less_than: "Menor que",
|
|
564
|
+
more_than: "Maior que",
|
|
565
|
+
positive_value: "Valor positivo",
|
|
566
|
+
negative_value: "Valor negativo",
|
|
567
|
+
integer_value: "Valor inteiro",
|
|
568
|
+
|
|
569
|
+
// ─── Collection Editor — Property Edit ───────────────────────
|
|
570
|
+
invalid_regular_expression: "Expressão regular inválida",
|
|
571
|
+
must_specify_target_collection: "Você deve especificar uma coleção de destino para o campo",
|
|
572
|
+
need_specify_repeat_field: "Você precisa especificar um campo de repetição",
|
|
573
|
+
need_specify_block_properties: "Você precisa especificar as propriedades deste bloco",
|
|
574
|
+
incomplete_condition: "Condição incompleta - por favor selecione um campo",
|
|
575
|
+
field_name: "Nome do campo",
|
|
576
|
+
|
|
577
|
+
// ─── Collection Editor — Display & Config ────────────────────
|
|
578
|
+
kanban_column_property: "Propriedade de coluna Kanban",
|
|
579
|
+
select_a_property: "Selecionar uma propriedade",
|
|
580
|
+
kanban_property_not_found: "A propriedade \"{{property}}\" não existe ou não é uma propriedade string com enum. Selecione uma propriedade válida ou limpe a seleção.",
|
|
581
|
+
no_enum_string_properties: "Nenhuma propriedade string com enum encontrada. Adicione uma propriedade string com enumValues para usar a visualização Kanban.",
|
|
582
|
+
kanban_column_description: "Selecione uma propriedade string com valores enum para agrupar entidades em colunas",
|
|
583
|
+
create_property: "+ Criar propriedade \"{{property}}\"",
|
|
584
|
+
order_property: "Propriedade de ordem",
|
|
585
|
+
order_property_not_found: "A propriedade \"{{property}}\" não existe ou não é uma propriedade numérica. Selecione uma propriedade válida ou limpe a seleção.",
|
|
586
|
+
no_number_properties: "Nenhuma propriedade numérica encontrada. Adicione uma propriedade numérica para habilitar a ordenação.",
|
|
587
|
+
order_property_description: "Selecione uma propriedade numérica para manter a ordem dos itens",
|
|
588
|
+
display_settings: "Configurações de exibição",
|
|
589
|
+
default_row_size: "Tamanho de linha padrão",
|
|
590
|
+
side_dialog_width: "Largura do diálogo lateral",
|
|
591
|
+
side_dialog_width_description: "Defina opcionalmente a largura (em pixels) do diálogo lateral de entidades. O padrão é 768px",
|
|
592
|
+
inline_editing_enabled: "Os dados podem ser editados diretamente na visualização de tabela",
|
|
593
|
+
inline_editing_disabled: "Os dados só podem ser editados na visualização de formulário",
|
|
594
|
+
inline_editing_description: "Permitir edição de dados diretamente na visualização de tabela, sem abrir a visualização de formulário.",
|
|
595
|
+
include_json_view: "Incluir visualização JSON",
|
|
596
|
+
no_json_view: "Não incluir visualização JSON",
|
|
597
|
+
json_view_description: "Incluir a representação JSON do documento.",
|
|
598
|
+
not_found_suffix: "não encontrado",
|
|
599
|
+
|
|
600
|
+
// ─── Editor ─────────────────────────────────────────────────
|
|
601
|
+
editor_text: "Texto",
|
|
602
|
+
editor_text_description: "Comece simplesmente a escrever em texto simples.",
|
|
603
|
+
editor_heading_1: "Título 1",
|
|
604
|
+
editor_heading_1_description: "Título de secção grande.",
|
|
605
|
+
editor_heading_2: "Título 2",
|
|
606
|
+
editor_heading_2_description: "Título de secção médio.",
|
|
607
|
+
editor_heading_3: "Título 3",
|
|
608
|
+
editor_heading_3_description: "Título de secção pequeno.",
|
|
609
|
+
editor_todo_list: "Lista de Tarefas",
|
|
610
|
+
editor_todo_list_description: "Acompanhe tarefas com uma lista de afazeres.",
|
|
611
|
+
editor_bullet_list: "Lista com Marcadores",
|
|
612
|
+
editor_bullet_list_description: "Crie uma lista simples com marcadores.",
|
|
613
|
+
editor_numbered_list: "Lista Numerada",
|
|
614
|
+
editor_numbered_list_description: "Crie uma lista com numeração.",
|
|
615
|
+
editor_quote: "Citação",
|
|
616
|
+
editor_quote_description: "Capture uma citação.",
|
|
617
|
+
editor_code: "Código",
|
|
618
|
+
editor_code_description: "Capture um snippet de código.",
|
|
619
|
+
editor_image: "Imagem",
|
|
620
|
+
editor_image_description: "Carregue uma imagem do seu computador.",
|
|
621
|
+
editor_multiple: "Múltiplos",
|
|
622
|
+
editor_link: "Ligação",
|
|
623
|
+
editor_save: "Guardar",
|
|
624
|
+
editor_cancel: "Cancelar",
|
|
625
|
+
editor_remove_link: "Remover ligação",
|
|
626
|
+
editor_paste_or_type_link: "Cole ou escreva a ligação",
|
|
627
|
+
editor_open_in_new_window: "Abrir numa nova janela",
|
|
628
|
+
editor_bold: "Negrito",
|
|
629
|
+
editor_italic: "Itálico",
|
|
630
|
+
editor_underline: "Sublinhado",
|
|
631
|
+
editor_strikethrough: "Riscado",
|
|
632
|
+
editor_autocomplete: "Preenchimento automático",
|
|
633
|
+
editor_autocomplete_description: "Adicione texto com base no contexto.",
|
|
634
|
+
|
|
635
|
+
// ─── Cloud Project Settings ──────────────────────────────────
|
|
636
|
+
settings_subscription_plan: "Plano de subscrição",
|
|
637
|
+
settings_subscribed_to: "Está atualmente subscrito ao",
|
|
638
|
+
settings_no_active_subscription: "Atualmente não existe uma subscrição ativa para este projeto.",
|
|
639
|
+
settings_trial_valid_until: "O seu período de teste é válido até {{date}}.",
|
|
640
|
+
settings_features_intro: "Estas são algumas das funcionalidades que já está a usufruir com o FireCMS Cloud",
|
|
641
|
+
settings_feature_managed_service: "Serviço gerido sempre atualizado",
|
|
642
|
+
settings_feature_local_text_search: "Pesquisa de texto local",
|
|
643
|
+
settings_feature_unlimited_users_roles: "Utilizadores e funções ilimitados",
|
|
644
|
+
settings_feature_theme_logo: "Personalização de tema e logótipo",
|
|
645
|
+
settings_feature_custom_fields_views: "Campos de formulário e vistas personalizadas",
|
|
646
|
+
settings_feature_secondary_databases: "Bases de dados secundárias",
|
|
647
|
+
settings_feature_ai_content: "Geração de conteúdo com IA da OpenAI e Google",
|
|
648
|
+
settings_feature_unlimited_export: "Exportação de dados ilimitada",
|
|
649
|
+
settings_feature_appcheck: "AppCheck",
|
|
650
|
+
settings_heading: "Definições",
|
|
651
|
+
settings_project_name: "Nome do projeto",
|
|
652
|
+
settings_default_language: "Idioma predefinido",
|
|
653
|
+
settings_default_language_caption: "Selecione o idioma base para este projeto. Os utilizadores podem alterar esta preferência nas suas definições pessoais.",
|
|
654
|
+
settings_enable_local_text_search: "Ativar pesquisa de texto local",
|
|
655
|
+
settings_local_text_search_caption: "Ative a pesquisa de texto local para todas as coleções. Isto permitirá pesquisar campos de texto nas suas coleções usando a barra de pesquisa do FireCMS. Note que esta funcionalidade pode resultar num maior número de leituras, pois todos os campos de texto das suas coleções serão indexados.",
|
|
656
|
+
settings_doc_history_all_collections: "Histórico de documentos ativado para todas as coleções",
|
|
657
|
+
settings_doc_history_caption: "Quando ativado, todas as coleções terão o histórico ativado por predefinição. Pode alterar esta definição em cada coleção. O histórico será guardado na subcoleção __history de cada documento.",
|
|
658
|
+
settings_theme: "Tema",
|
|
659
|
+
settings_primary_color: "Cor primária",
|
|
660
|
+
settings_secondary_color: "Cor secundária",
|
|
661
|
+
settings_sample_theme_components: "Exemplos de componentes do tema",
|
|
662
|
+
settings_drag_drop_logo: "Arraste e solte o seu logótipo aqui",
|
|
663
|
+
settings_create_subscription: "Criar uma subscrição",
|
|
664
|
+
settings_stripe_disclaimer: "Será redirecionado para o Stripe para completar a sua subscrição. A faturação é mensal, com base no número máximo de utilizadores do mês. Cancele a qualquer momento – já pagou o período de faturação atual, pelo que não serão aplicados custos adicionais após o cancelamento.",
|
|
665
|
+
settings_subscription_is: "A subscrição está",
|
|
666
|
+
settings_next_payment_on: "O próximo pagamento é a {{date}}.",
|
|
667
|
+
settings_seats_count: "Tem",
|
|
668
|
+
settings_seat: "lugar",
|
|
669
|
+
settings_seats: "lugares",
|
|
670
|
+
settings_per_seat: "a {{price}}/lugar/{{interval}}",
|
|
671
|
+
settings_current_price: "O preço atual é",
|
|
672
|
+
settings_per_user_usage: "por utilizador (baseado em utilização).",
|
|
673
|
+
settings_cancelled_active_until: "Esta subscrição foi cancelada e estará ativa até {{date}}.",
|
|
674
|
+
settings_no_additional_charges: "Não serão aplicados custos adicionais após o cancelamento.",
|
|
675
|
+
settings_manage_subscription: "Gerir subscrição",
|
|
676
|
+
settings_security_rules: "Regras de segurança",
|
|
677
|
+
settings_security_rules_description: "O FireCMS utiliza as regras de segurança do Firebase para restringir o acesso aos dados. Ao criar um novo utilizador através do FireCMS, o atributo personalizado fireCMSUser é adicionado ao utilizador no projeto cliente. Ao adicionar as seguintes regras de segurança ao seu projeto, garante que os utilizadores do FireCMS possam aceder aos dados através do FireCMS.",
|
|
678
|
+
settings_security_rules_add_domain: "Lembre-se de adicionar o domínio {{domain}} aos domínios permitidos do seu fornecedor",
|
|
679
|
+
settings_security_rules_caption: "Estas regras restringem o acesso aos dados apenas aos utilizadores do FireCMS, mas não aplicam as permissões ao nível da base de dados. As permissões são aplicadas no frontend, o que funciona bem para a maioria dos projetos. Se precisar de aplicar as permissões ao nível da base de dados, pode modificar estas regras de segurança. As funções atribuídas a um utilizador são definidas como atributos personalizados no token de autenticação do Firebase, pelo que pode utilizá-las nas suas regras de segurança.",
|
|
680
|
+
settings_appcheck: "AppCheck",
|
|
681
|
+
settings_appcheck_description: "Pode ativar o AppCheck para proteger os seus serviços Firebase contra abusos. Consulte a documentação do Firebase para configuração. Quando tiver um fornecedor configurado, pode ativá-lo aqui. Terá de fornecer um segredo nas definições do seu projeto Firebase e uma chave de site na configuração do FireCMS.",
|
|
682
|
+
settings_appcheck_add_domain: "Lembre-se de adicionar o domínio {{domain}} aos domínios permitidos do seu fornecedor",
|
|
683
|
+
settings_appcheck_enable: "Ativar AppCheck",
|
|
684
|
+
settings_appcheck_site_key: "Chave de site",
|
|
685
|
+
settings_appcheck_update: "Atualizar AppCheck",
|
|
686
|
+
settings_appcheck_refresh_note: "Poderá ter de atualizar a página após guardar para ver as alterações.",
|
|
687
|
+
settings_appcheck_updated: "AppCheck atualizado",
|
|
688
|
+
settings_appcheck_error: "Erro ao atualizar o AppCheck",
|
|
689
|
+
|
|
690
|
+
// ─── Text Search Dialog ─────────────────────────────────────
|
|
691
|
+
text_search_dialog_title: "Ativar pesquisa de texto",
|
|
692
|
+
text_search_local_not_recommended: "A pesquisa de texto local não é recomendada para coleções grandes.",
|
|
693
|
+
text_search_local_fetch_warning: "Note que ativar a pesquisa de texto local requer descarregar todos os documentos da sua coleção e armazená-los no navegador. Isto pode ser ineficiente para coleções grandes e gerar custos adicionais.",
|
|
694
|
+
text_search_external_suggestion: "Para coleções maiores, recomendamos usar um motor de pesquisa externo como Algolia ou Elastic Search e atribuir um delegado de pesquisa à sua configuração.",
|
|
695
|
+
text_search_local_description: "A pesquisa de texto local é a forma mais simples de ativar a pesquisa de texto na sua coleção. Carrega todos os documentos da coleção no navegador e efetua a pesquisa localmente. É a opção recomendada para coleções pequenas.",
|
|
696
|
+
text_search_own_implementation: "Implementou o seu próprio controlador de pesquisa de texto. Pode ativar a pesquisa de texto para a sua coleção.",
|
|
697
|
+
text_search_enable_for_collection: "Ativar para esta coleção",
|
|
698
|
+
text_search_enable_for_project: "Ativar para o projeto",
|
|
699
|
+
text_search_enabled_snackbar: "Pesquisa de texto local ativada"
|
|
700
|
+
};
|