pgkiln 0.57.0 → 0.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/apex-feature-parity.md +1 -1
- package/docs/guide/03-builder.md +6 -3
- package/docs/guide/12-development.md +2 -1
- package/package.json +1 -1
- package/src/builder/i18n/de.ts +340 -0
- package/src/builder/i18n/en.ts +340 -0
- package/src/builder/i18n/es.ts +340 -0
- package/src/builder/i18n/fr.ts +340 -0
- package/src/builder/i18n/nl.ts +340 -0
- package/src/builder/i18n/pt.ts +340 -0
- package/src/builder/routes.ts +88 -87
- package/src/builder/shared.ts +86 -77
package/src/builder/i18n/es.ts
CHANGED
|
@@ -1043,4 +1043,344 @@ export const es: BuilderMessages = {
|
|
|
1043
1043
|
'te.failed_stmt': 'Sentencia con error',
|
|
1044
1044
|
'te.title_table': 'Tabla {table}',
|
|
1045
1045
|
'te.title_create': 'Crear tabla',
|
|
1046
|
+
// ------------------------------------------------------------ Shared Components (sprint 124)
|
|
1047
|
+
'comp.nav_entry': 'Entrada de navegación',
|
|
1048
|
+
'comp.nav_entry.plural': 'Menú de navegación',
|
|
1049
|
+
'comp.authz_scheme': 'Esquema de autorización',
|
|
1050
|
+
'comp.authz_scheme.plural': 'Esquemas de autorización',
|
|
1051
|
+
'comp.build_option': 'Opción de compilación',
|
|
1052
|
+
'comp.build_option.plural': 'Opciones de compilación',
|
|
1053
|
+
'comp.page_group': 'Grupo de páginas',
|
|
1054
|
+
'comp.page_group.plural': 'Grupos de páginas',
|
|
1055
|
+
'comp.lov': 'Lista de valores',
|
|
1056
|
+
'comp.lov.plural': 'Listas de valores',
|
|
1057
|
+
'comp.app_item': 'Elemento de aplicación',
|
|
1058
|
+
'comp.app_item.plural': 'Elementos de aplicación',
|
|
1059
|
+
'comp.app_process': 'Proceso de aplicación',
|
|
1060
|
+
'comp.app_process.plural': 'Procesos de aplicación',
|
|
1061
|
+
'comp.app_computation': 'Cálculo de aplicación',
|
|
1062
|
+
'comp.app_computation.plural': 'Cálculos de aplicación',
|
|
1063
|
+
'comp.shortcut': 'Atajo',
|
|
1064
|
+
'comp.shortcut.plural': 'Atajos',
|
|
1065
|
+
'comp.report_query': 'Consulta de informe',
|
|
1066
|
+
'comp.report_query.plural': 'Consultas de informe',
|
|
1067
|
+
'comp.component_group': 'Grupo de componentes',
|
|
1068
|
+
'comp.component_group.plural': 'Grupos de componentes',
|
|
1069
|
+
'comp.automation': 'Automatización',
|
|
1070
|
+
'comp.automation.plural': 'Automatizaciones',
|
|
1071
|
+
'comp.automation_action': 'Acción de automatización',
|
|
1072
|
+
'comp.automation_action.plural': 'Acciones de automatización',
|
|
1073
|
+
'comp.report_layout': 'Diseño de informe',
|
|
1074
|
+
'comp.report_layout.plural': 'Diseños de informe',
|
|
1075
|
+
'comp.document_template': 'Plantilla de documento',
|
|
1076
|
+
'comp.document_template.plural': 'Plantillas de documento',
|
|
1077
|
+
'comp.task_definition': 'Definición de tarea',
|
|
1078
|
+
'comp.task_definition.plural': 'Definiciones de tarea',
|
|
1079
|
+
'comp.workflow_definition': 'Flujo de trabajo',
|
|
1080
|
+
'comp.workflow_definition.plural': 'Flujos de trabajo',
|
|
1081
|
+
'comp.rest_module': 'Módulo REST',
|
|
1082
|
+
'comp.rest_module.plural': 'Módulos REST',
|
|
1083
|
+
'comp.template_component': 'Componente de plantilla',
|
|
1084
|
+
'comp.template_component.plural': 'Componentes de plantilla',
|
|
1085
|
+
'comp.web_credential': 'Credencial web',
|
|
1086
|
+
'comp.web_credential.plural': 'Credenciales web',
|
|
1087
|
+
'comp.rest_source': 'Origen de datos REST',
|
|
1088
|
+
'comp.rest_source.plural': 'Orígenes de datos REST',
|
|
1089
|
+
'comp.data_load_def': 'Definición de carga de datos',
|
|
1090
|
+
'comp.data_load_def.plural': 'Definiciones de carga de datos',
|
|
1091
|
+
'comp.list': 'Lista',
|
|
1092
|
+
'comp.list.plural': 'Listas',
|
|
1093
|
+
'comp.list_entry': 'Entrada de lista',
|
|
1094
|
+
'comp.list_entry.plural': 'Entradas de lista',
|
|
1095
|
+
'comp.supporting_script': 'Script de soporte',
|
|
1096
|
+
'comp.supporting_script.plural': 'Objetos de soporte',
|
|
1097
|
+
'comp.search_config': 'Configuración de búsqueda',
|
|
1098
|
+
'comp.search_config.plural': 'Configuraciones de búsqueda',
|
|
1099
|
+
'comp.email_template': 'Plantilla de correo',
|
|
1100
|
+
'comp.email_template.plural': 'Plantillas de correo',
|
|
1101
|
+
'comp.app_setting': 'Ajuste de aplicación',
|
|
1102
|
+
'comp.app_setting.plural': 'Ajustes de aplicación',
|
|
1103
|
+
'comp.dynamic_translation': 'Traducción dinámica',
|
|
1104
|
+
'comp.dynamic_translation.plural': 'Traducciones dinámicas',
|
|
1105
|
+
'sc.group.logic': 'Lógica de la aplicación',
|
|
1106
|
+
'sc.group.security': 'Seguridad',
|
|
1107
|
+
'sc.group.other': 'Otros componentes',
|
|
1108
|
+
'sc.group.navigation': 'Navegación y búsqueda',
|
|
1109
|
+
'sc.group.ui': 'Interfaz de usuario',
|
|
1110
|
+
'sc.group.files': 'Archivos e informes',
|
|
1111
|
+
'sc.group.data': 'Orígenes de datos',
|
|
1112
|
+
'sc.group.workflows': 'Flujos de trabajo y automatizaciones',
|
|
1113
|
+
'sc.group.globalization': 'Globalización',
|
|
1114
|
+
'sc.group.ai': 'IA generativa',
|
|
1115
|
+
'sc.item.application_items': 'Elementos de aplicación',
|
|
1116
|
+
'sc.item.application_processes': 'Procesos de aplicación',
|
|
1117
|
+
'sc.item.application_computations': 'Cálculos de aplicación',
|
|
1118
|
+
'sc.item.application_settings': 'Ajustes de aplicación',
|
|
1119
|
+
'sc.item.build_options': 'Opciones de compilación',
|
|
1120
|
+
'sc.item.application_definition': 'Definición de la aplicación',
|
|
1121
|
+
'sc.item.access_control': 'Control de acceso',
|
|
1122
|
+
'sc.item.authentication': 'Autenticación',
|
|
1123
|
+
'sc.item.authorization_schemes': 'Esquemas de autorización',
|
|
1124
|
+
'sc.item.security_attributes': 'Atributos de seguridad',
|
|
1125
|
+
'sc.item.sign_in_and_session_management': 'Inicio de sesión y gestión de sesiones',
|
|
1126
|
+
'sc.item.lists_of_values': 'Listas de valores',
|
|
1127
|
+
'sc.item.lists': 'Listas',
|
|
1128
|
+
'sc.item.list_entries': 'Entradas de lista',
|
|
1129
|
+
'sc.item.email_templates': 'Plantillas de correo',
|
|
1130
|
+
'sc.item.shortcuts': 'Atajos',
|
|
1131
|
+
'sc.item.component_groups': 'Grupos de componentes',
|
|
1132
|
+
'sc.item.supporting_objects': 'Objetos de soporte',
|
|
1133
|
+
'sc.item.subscriptions': 'Suscripciones',
|
|
1134
|
+
'sc.item.navigation_menu': 'Menú de navegación',
|
|
1135
|
+
'sc.item.navigation_bar_list': 'Lista de la barra de navegación',
|
|
1136
|
+
'sc.item.breadcrumbs': 'Rutas de navegación',
|
|
1137
|
+
'sc.item.page_groups': 'Grupos de páginas',
|
|
1138
|
+
'sc.item.search_configurations': 'Configuraciones de búsqueda',
|
|
1139
|
+
'sc.item.themes_and_theme_roller': 'Temas y Theme Roller',
|
|
1140
|
+
'sc.item.user_interface_attributes': 'Atributos de la interfaz de usuario',
|
|
1141
|
+
'sc.item.template_components': 'Componentes de plantilla',
|
|
1142
|
+
'sc.item.plug_ins': 'Plug-ins',
|
|
1143
|
+
'sc.item.component_settings': 'Ajustes de componentes',
|
|
1144
|
+
'sc.item.progressive_web_app': 'Aplicación web progresiva',
|
|
1145
|
+
'sc.item.static_application_files': 'Archivos estáticos de la aplicación',
|
|
1146
|
+
'sc.item.report_layouts': 'Diseños de informe',
|
|
1147
|
+
'sc.item.report_queries': 'Consultas de informe',
|
|
1148
|
+
'sc.item.document_templates': 'Plantillas de documento',
|
|
1149
|
+
'sc.item.rest_data_sources': 'Orígenes de datos REST',
|
|
1150
|
+
'sc.item.web_credentials': 'Credenciales web',
|
|
1151
|
+
'sc.item.restful_services': 'Servicios RESTful',
|
|
1152
|
+
'sc.item.data_load_definitions': 'Definiciones de carga de datos',
|
|
1153
|
+
'sc.item.workflows': 'Flujos de trabajo',
|
|
1154
|
+
'sc.item.task_definitions': 'Definiciones de tarea',
|
|
1155
|
+
'sc.item.automations': 'Automatizaciones',
|
|
1156
|
+
'sc.item.translations_and_text_messages': 'Traducciones y mensajes de texto',
|
|
1157
|
+
'sc.item.dynamic_translations': 'Traducciones dinámicas',
|
|
1158
|
+
'sc.item.globalization_attributes': 'Atributos de globalización',
|
|
1159
|
+
'sc.item.ai_services': 'Servicios de IA',
|
|
1160
|
+
'sc.item.ai_agents': 'Agentes de IA',
|
|
1161
|
+
'sc.entries': 'Entradas',
|
|
1162
|
+
'sc.list_sql': 'Esta lista muestra las filas de su consulta; las entradas de abajo no se usan.',
|
|
1163
|
+
'sc.no_entries': 'Todavía no hay entradas.',
|
|
1164
|
+
'sc.add_entry': '+ Añadir entrada',
|
|
1165
|
+
'sc.breadcrumbs_help': 'La ruta de navegación de una página lista las páginas superiores: cada página indica su página padre (Page Designer → página → Breadcrumb parent). Las páginas sin ella muestran Home.',
|
|
1166
|
+
'sc.cs_help': 'Valores por defecto de los tipos de componente integrados, usados cuando un componente no indica nada. Vacío: el valor por defecto de pgkiln.',
|
|
1167
|
+
'sc.cs_now': '{help} {min}–{max}; ahora {now}.',
|
|
1168
|
+
'sc.cs_saved': 'Ajustes de componentes guardados.',
|
|
1169
|
+
'sc.intro': 'Los componentes que comparten las páginas de {app}.',
|
|
1170
|
+
'sc.tree_view': 'Vista de árbol',
|
|
1171
|
+
'sc.create': 'Crear',
|
|
1172
|
+
'sc.search': 'Buscar',
|
|
1173
|
+
'sc.name': 'Nombre',
|
|
1174
|
+
'sc.details': 'Detalles',
|
|
1175
|
+
'sc.nothing_matches': 'No hay coincidencias.',
|
|
1176
|
+
'sc.none_yet': 'Todavía no hay {what}.',
|
|
1177
|
+
'sc.count': '{n} de {total}',
|
|
1178
|
+
'sc.new': 'Nuevo: {what}',
|
|
1179
|
+
'sc.save': 'Guardar',
|
|
1180
|
+
'sc.run_supporting': 'Ejecutar objetos de soporte…',
|
|
1181
|
+
'sc.delete_confirm': '¿Eliminar este elemento ({what})?',
|
|
1182
|
+
'sc.delete': 'Eliminar',
|
|
1183
|
+
'sc.not_found': 'No encontrado.',
|
|
1184
|
+
'sc.groups_title': 'Grupos del proveedor de identidad → roles',
|
|
1185
|
+
'sc.groups_help': 'Con inicio de sesión único, los miembros de estos grupos reciben el rol en esta aplicación y pueden iniciar sesión aunque no figuren arriba.',
|
|
1186
|
+
'sc.remove_mapping': 'Quitar la asignación de {group} a {role}',
|
|
1187
|
+
'sc.no_groups': 'Sin asignaciones de grupos.',
|
|
1188
|
+
'sc.group_label': 'Grupo (como en el token)',
|
|
1189
|
+
'sc.group_ph': 'p. ej. hr-managers',
|
|
1190
|
+
'sc.role_label': 'Rol en esta aplicación',
|
|
1191
|
+
'sc.role_ph': 'p. ej. manager',
|
|
1192
|
+
'sc.add_mapping': 'Añadir asignación',
|
|
1193
|
+
'sc.access': 'Control de acceso',
|
|
1194
|
+
'sc.who': 'Quién puede iniciar sesión',
|
|
1195
|
+
'sc.who.assigned': 'Solo las cuentas listadas abajo (acceso basado en roles)',
|
|
1196
|
+
'sc.who.any': 'Cualquier cuenta activa del directorio',
|
|
1197
|
+
'sc.access_help': 'Las cuentas están en el {directory}; aquí les da acceso a {app} y asigna roles, que comprueban los esquemas de autorización y {fn}. Los cambios de rol se aplican en el próximo inicio de sesión (sus sesiones en esta aplicación terminan).',
|
|
1198
|
+
'sc.directory': 'directorio de usuarios',
|
|
1199
|
+
'sc.account': 'Cuenta',
|
|
1200
|
+
'sc.roles_in_app': 'Roles en esta aplicación',
|
|
1201
|
+
'sc.last_signin': 'Último inicio de sesión',
|
|
1202
|
+
'sc.roles': 'Roles',
|
|
1203
|
+
'sc.inactive': '(inactiva)',
|
|
1204
|
+
'sc.roles_of': 'Roles de {user}',
|
|
1205
|
+
'sc.no_roles': 'sin roles',
|
|
1206
|
+
'sc.revoke_confirm': '¿Revocar el acceso de {user} a {app}?',
|
|
1207
|
+
'sc.revoke': 'Revocar',
|
|
1208
|
+
'sc.no_access': 'Todavía ninguna cuenta tiene acceso.',
|
|
1209
|
+
'sc.grant': 'Conceder acceso',
|
|
1210
|
+
'sc.username_ph': 'nombre de usuario',
|
|
1211
|
+
'sc.existing': 'Una cuenta existente.',
|
|
1212
|
+
'sc.create_in_users': 'Cree cuentas en Usuarios.',
|
|
1213
|
+
'sc.roles_ph': 'separados por comas, o elija abajo',
|
|
1214
|
+
'sc.tree.security': 'Seguridad',
|
|
1215
|
+
'sc.tree.globalization': 'Globalización',
|
|
1216
|
+
'sc.tree.translations': 'Traducciones y mensajes de texto',
|
|
1217
|
+
'sc.tree.files': 'Archivos y plug-ins',
|
|
1218
|
+
'sc.tree.static': 'Archivos estáticos de la aplicación',
|
|
1219
|
+
'sc.tree.subscriptions': 'Suscripciones',
|
|
1220
|
+
'sc.tree.subscribers': 'Suscripciones y suscriptores',
|
|
1221
|
+
'sc.add_kind': 'Añadir {what}',
|
|
1222
|
+
'sc.add': '+ Añadir',
|
|
1223
|
+
'sc.review_run': 'Revisar y ejecutar…',
|
|
1224
|
+
'sc.edit': 'Editar',
|
|
1225
|
+
'sc.saved': '{what}: guardado.',
|
|
1226
|
+
'sc.deleted': '{what}: eliminado.',
|
|
1227
|
+
'sc.access_saved': 'Control de acceso guardado.',
|
|
1228
|
+
'sc.no_account': 'No existe la cuenta «{user}». Créela primero en Usuarios.',
|
|
1229
|
+
'sc.granted': 'Acceso concedido a {user}.',
|
|
1230
|
+
'sc.mapping_added': 'Asignación de grupo añadida. Se aplica en el próximo inicio de sesión.',
|
|
1231
|
+
'sc.mapping_removed': 'Asignación de grupo quitada. Se aplica en el próximo inicio de sesión.',
|
|
1232
|
+
'sc.roles_saved': 'Roles guardados. Se aplican en el próximo inicio de sesión.',
|
|
1233
|
+
'sc.revoked': 'Acceso revocado.',
|
|
1234
|
+
// ------------------------------------------------------------ Application settings (sprint 124)
|
|
1235
|
+
'st.tab.definition': 'Definición',
|
|
1236
|
+
'st.tab.security': 'Seguridad',
|
|
1237
|
+
'st.tab.signin': 'Inicio de sesión',
|
|
1238
|
+
'st.tab.ui': 'Interfaz de usuario',
|
|
1239
|
+
'st.tab.globalization': 'Globalización',
|
|
1240
|
+
'st.tab.errors': 'Errores y sesiones',
|
|
1241
|
+
'st.tab.pwa': 'Aplicación web progresiva',
|
|
1242
|
+
'st.settings': 'Ajustes',
|
|
1243
|
+
'st.name': 'Nombre',
|
|
1244
|
+
'st.alias': 'Alias',
|
|
1245
|
+
'st.version': 'Versión',
|
|
1246
|
+
'st.version_ph': 'Versión 1.0',
|
|
1247
|
+
'st.version_help': 'Se muestra en el pie de las páginas de la aplicación; vacío: ninguna.',
|
|
1248
|
+
'st.home_page': 'Página de inicio',
|
|
1249
|
+
'st.app_type': 'Tipo de aplicación',
|
|
1250
|
+
'st.app_type_help': 'Las aplicaciones de tema y de biblioteca ofrecen su tema o sus componentes compartidos a otras aplicaciones (Shared Components → Suscripciones); Crear aplicación puede partir de una aplicación modelo.',
|
|
1251
|
+
'st.type.standard': 'Estándar',
|
|
1252
|
+
'st.type.theme': 'Aplicación de tema',
|
|
1253
|
+
'st.type.library': 'Aplicación de biblioteca',
|
|
1254
|
+
'st.type.boilerplate': 'Aplicación modelo',
|
|
1255
|
+
'st.authentication': 'Autenticación',
|
|
1256
|
+
'st.auth.app_users': 'Usuarios de la aplicación (página de inicio de sesión)',
|
|
1257
|
+
'st.auth.header': 'Cabecera HTTP (proxy inverso)',
|
|
1258
|
+
'st.auth.database': 'Cuentas de base de datos (roles de PostgreSQL)',
|
|
1259
|
+
'st.auth.custom': 'Personalizada (una función PL/pgSQL)',
|
|
1260
|
+
'st.auth.none': 'Ninguna (pública)',
|
|
1261
|
+
'st.db_role': 'Rol de base de datos (esquema de análisis)',
|
|
1262
|
+
'st.db_role_help': 'Todo el SQL de la aplicación se ejecuta con este rol (SET LOCAL ROLE), así que se aplican los privilegios y la seguridad a nivel de fila. Déjelo vacío solo para aplicaciones internas de confianza.',
|
|
1263
|
+
'st.debug': 'Modo de depuración',
|
|
1264
|
+
'st.debug_help': 'Muestra a los usuarios finales los detalles de los errores de base de datos. Solo para desarrollo.',
|
|
1265
|
+
'st.debug_msgs': 'Mensajes de depuración',
|
|
1266
|
+
'st.debug_on': 'activado, nivel {level}',
|
|
1267
|
+
'st.off': 'desactivado',
|
|
1268
|
+
'st.debug_msgs_help': 'Registra los pasos de cada petición con sus tiempos y los mensajes de {fn}, conservados {days} días.',
|
|
1269
|
+
'st.header_title': 'Autenticación por cabecera HTTP',
|
|
1270
|
+
'st.header_intro': 'Solo se usa cuando la autenticación es «Cabecera HTTP». Un proxy inverso o una pasarela de inicio de sesión único autentica a los usuarios y pasa el nombre de usuario en una cabecera; pgkiln solo confía en ella desde las direcciones de proxy de {env}',
|
|
1271
|
+
'st.header_unset': 'no está configurado en este servidor: se rechaza el inicio de sesión por cabecera',
|
|
1272
|
+
'st.header_name': 'Cabecera con el nombre de usuario',
|
|
1273
|
+
'st.header_name_help': 'La cabecera de la petición con el nombre de usuario (APEX: HTTP Header Variable). Vacío: X-Remote-User. Una cabecera cambiada o ausente termina la sesión.',
|
|
1274
|
+
'st.logout_url': 'URL de cierre de sesión',
|
|
1275
|
+
'st.logout_url_ph': 'p. ej. https://sso.example.com/logout',
|
|
1276
|
+
'st.logout_url_help': 'Adónde lleva «Cerrar sesión» al terminar la sesión, normalmente la página de cierre de sesión del propio proxy. Vacío: una página de «sesión cerrada».',
|
|
1277
|
+
'st.header_auto': 'Crear cuentas automáticamente',
|
|
1278
|
+
'st.header_auto_help': 'Un nombre de usuario desconocido recibe una cuenta nueva con acceso a esta aplicación. Si no, la cuenta debe existir y tener acceso.',
|
|
1279
|
+
'st.db_title': 'Cuentas de base de datos',
|
|
1280
|
+
'st.db_intro': 'Solo se usa cuando la autenticación es «Cuentas de base de datos». Los usuarios inician sesión con un rol de inicio de sesión de PostgreSQL y su contraseña, comprobados con una breve conexión a esta base de datos con ese rol. Los superusuarios y los roles propios de pgkiln siempre se rechazan; sin ninguno de los dos campos nadie puede iniciar sesión.',
|
|
1281
|
+
'st.db_roles': 'Roles permitidos',
|
|
1282
|
+
'st.db_roles_ph': 'p. ej. alice, bob',
|
|
1283
|
+
'st.db_roles_help': 'Roles de inicio de sesión que pueden entrar, separados por comas (nombres exactos).',
|
|
1284
|
+
'st.db_member': 'O miembros del rol',
|
|
1285
|
+
'st.db_member_ph': 'p. ej. app_users_group',
|
|
1286
|
+
'st.db_member_help': 'Todos los miembros de este rol también pueden iniciar sesión.',
|
|
1287
|
+
'st.custom_title': 'Autenticación personalizada',
|
|
1288
|
+
'st.custom_intro': 'Solo se usa cuando la autenticación es «Personalizada». Su propio PL/pgSQL comprueba el nombre de usuario y la contraseña del formulario, con el rol de base de datos de la aplicación; la contraseña se pasa como parámetro y nunca se registra. Los intentos fallidos se limitan como otros inicios de sesión. Sin ninguno de los dos campos nadie puede iniciar sesión.',
|
|
1289
|
+
'st.custom_fn': 'Nombre de la función',
|
|
1290
|
+
'st.custom_fn_ph': 'p. ej. app.check_login',
|
|
1291
|
+
'st.custom_fn_help': 'Una función (p_username text, p_password text) returns boolean, en minúsculas, opcionalmente con su esquema. El rol de la aplicación necesita EXECUTE sobre ella. Tiene prioridad sobre el cuerpo de abajo.',
|
|
1292
|
+
'st.custom_body': 'O cuerpo de la función',
|
|
1293
|
+
'st.custom_body_help': 'PL/pgSQL con p_username y p_password que devuelve true para un inicio de sesión válido, p. ej. {example}',
|
|
1294
|
+
'st.custom_post': 'Código posterior a la autenticación',
|
|
1295
|
+
'st.custom_post_help': 'PL/pgSQL opcional que se ejecuta tras una comprobación correcta, con p_username (y meta.app_user()), p. ej. para registrar el último inicio de sesión. Lanzar una excepción rechaza el inicio de sesión. Los procesos de aplicación «after login» se ejecutan después como siempre.',
|
|
1296
|
+
'st.signin': 'Inicio de sesión',
|
|
1297
|
+
'st.methods': 'Métodos de inicio de sesión',
|
|
1298
|
+
'st.local': 'Nombre de usuario y contraseña',
|
|
1299
|
+
'st.ldap': 'Contraseñas de LDAP: {name}',
|
|
1300
|
+
'st.disabled': '(desactivado)',
|
|
1301
|
+
'st.no_ldap': 'No hay directorios LDAP configurados. {add} para comprobar contraseñas con LDAP o Active Directory.',
|
|
1302
|
+
'st.add_one': 'Añada uno',
|
|
1303
|
+
'st.ldap_help': 'El formulario de usuario y contraseña comprueba las contraseñas LDAP, después de las cuentas locales, así que mantenga ese método activado.',
|
|
1304
|
+
'st.session_group': 'Grupo de sesión compartida',
|
|
1305
|
+
'st.session_group_ph': 'vacío: no compartida',
|
|
1306
|
+
'st.session_group_help': 'Las aplicaciones del mismo grupo (y con el directorio de usuarios como autenticación) comparten el inicio de sesión: tras entrar en una, las demás se abren sin volver a iniciar sesión, cada una con su propia comprobación de acceso y sus roles; cerrar sesión en una la cierra en todas (APEX: session sharing). Minúsculas, dígitos y _.',
|
|
1307
|
+
'st.remember': '«Mantener la sesión iniciada» durante (días)',
|
|
1308
|
+
'st.remember_ph': 'vacío: no se ofrece',
|
|
1309
|
+
'st.remember_help': 'Ofrece una casilla en el formulario de inicio de sesión (APEX: autenticación persistente). El navegador sigue con la sesión iniciada tantos días tras entrar, también cuando termina la sesión; cerrar sesión, una contraseña nueva, la desactivación o la retirada del acceso lo terminan. De 1 a 365.',
|
|
1310
|
+
'st.sso': 'Iniciar sesión con {name}',
|
|
1311
|
+
'st.no_sso': 'No hay proveedores de identidad configurados. {add} para el inicio de sesión único.',
|
|
1312
|
+
'st.theme': 'Tema',
|
|
1313
|
+
'st.base': 'Estilo base',
|
|
1314
|
+
'st.base.iris': 'Iris (el predeterminado para nuevas aplicaciones)',
|
|
1315
|
+
'st.base.lavender': 'Lavender (Iris hasta pgkiln 0.41)',
|
|
1316
|
+
'st.base.standard': 'Standard (pgkiln hasta 0.28)',
|
|
1317
|
+
'st.base_help': 'Colores, esquinas, fuente y sombras de toda la aplicación, en claro y oscuro. Los colores de abajo sustituyen su acento y su cabecera.',
|
|
1318
|
+
'st.accent': 'Color de acento',
|
|
1319
|
+
'st.header_colour': 'Color de la cabecera',
|
|
1320
|
+
'st.accent_dark': 'Color de acento en modo oscuro',
|
|
1321
|
+
'st.header_dark': 'Color de la cabecera en modo oscuro',
|
|
1322
|
+
'st.own_colour': 'Usar este color (si no, la paleta oscura del estilo base)',
|
|
1323
|
+
'st.nav': 'Menú de navegación',
|
|
1324
|
+
'st.nav.side': 'Lateral (plegable)',
|
|
1325
|
+
'st.nav.top': 'Barra superior',
|
|
1326
|
+
'st.nav_help': 'En tabletas y teléfonos el menú es siempre un cajón.',
|
|
1327
|
+
'st.nav_list': 'Lista del menú de navegación',
|
|
1328
|
+
'st.nav_entries': '- las entradas de navegación -',
|
|
1329
|
+
'st.nav_list_help': 'Una lista (Shared Components → Listas) que se muestra como menú de navegación en lugar de las entradas de navegación.',
|
|
1330
|
+
'st.navbar_list': 'Lista de la barra de navegación',
|
|
1331
|
+
'st.none_option': '- ninguna -',
|
|
1332
|
+
'st.navbar_help': 'Una lista que se muestra como enlaces en la cabecera, junto al menú de usuario.',
|
|
1333
|
+
'st.missing': '{name} (¡falta!)',
|
|
1334
|
+
'st.mode': 'Estilo del tema',
|
|
1335
|
+
'st.mode.auto': 'Automático (claro u oscuro, según el dispositivo)',
|
|
1336
|
+
'st.mode.light': 'Claro',
|
|
1337
|
+
'st.mode.dark': 'Oscuro',
|
|
1338
|
+
'st.user_choice': 'Los usuarios pueden elegir claro u oscuro',
|
|
1339
|
+
'st.user_choice_help': 'Añade un interruptor al menú de usuario y a Mi cuenta; la elección se guarda en la cuenta (APEX: «Enable End Users to Choose Theme Style»).',
|
|
1340
|
+
'st.roller': 'Theme Roller: variantes de estilo…',
|
|
1341
|
+
'st.styles_one': '{n} estilo',
|
|
1342
|
+
'st.styles': '{n} estilos',
|
|
1343
|
+
'st.no_styles': 'todavía no hay estilos',
|
|
1344
|
+
'st.language': 'Idioma principal',
|
|
1345
|
+
'st.language_help': 'El idioma en que está hecha la aplicación, p. ej. en, nl, de, en-GB.',
|
|
1346
|
+
'st.languages': 'Idiomas traducidos',
|
|
1347
|
+
'st.languages_ph': 'p. ej. nl, de',
|
|
1348
|
+
'st.languages_help': 'Separados por comas. Traduzca los textos en Shared Components → Globalización.',
|
|
1349
|
+
'st.language_from': 'Idioma derivado de',
|
|
1350
|
+
'st.from.browser': 'Navegador (Accept-Language)',
|
|
1351
|
+
'st.from.user': 'Preferencia del usuario y luego el navegador',
|
|
1352
|
+
'st.from.primary': 'Siempre el idioma principal',
|
|
1353
|
+
'st.language_from_help': 'Los usuarios también pueden cambiar con ?lang=xx o el selector de la página de inicio de sesión.',
|
|
1354
|
+
'st.date_format': 'Formato de fecha',
|
|
1355
|
+
'st.date_format_ph': 'p. ej. DD-MM-YYYY (vacío: según el idioma)',
|
|
1356
|
+
'st.date_format_help': 'Máscaras: YYYY YY MM MON MONTH DD DY DAY HH24 HH MI SS AM',
|
|
1357
|
+
'st.ts_format': 'Formato de fecha y hora',
|
|
1358
|
+
'st.ts_format_ph': 'p. ej. DD-MM-YYYY HH24:MI',
|
|
1359
|
+
'st.save_settings': 'Guardar ajustes',
|
|
1360
|
+
'st.delete_confirm': '¿Eliminar la aplicación {app} y todas sus páginas?',
|
|
1361
|
+
'st.delete': 'Eliminar aplicación',
|
|
1362
|
+
'st.error_fn': 'Función de gestión de errores',
|
|
1363
|
+
'st.error_fn_ph': 'p. ej. sales.error_message',
|
|
1364
|
+
'st.error_fn_help': 'schema.function(jsonb) returns jsonb, ejecutada con el rol de la aplicación: recibe el mensaje y lo que se sabe de un error (code, constraint, table, column, component, page, user, internal, reference) y puede devolver {"message": "…"} para mostrarlo en su lugar. Vacío: ninguna.',
|
|
1365
|
+
'st.warning': 'Aviso de fin de sesión (segundos)',
|
|
1366
|
+
'st.warning_help': 'Los usuarios con sesión iniciada reciben un aviso este tiempo antes de que termine su sesión y pueden seguir conectados (0: sin aviso).',
|
|
1367
|
+
'st.save': 'Guardar',
|
|
1368
|
+
'st.checklist': 'Lista de comprobación de seguridad',
|
|
1369
|
+
'st.ck.role': 'Se ejecuta con un rol de base de datos propio',
|
|
1370
|
+
'st.ck.runtime': '(se ejecuta con la conexión de ejecución)',
|
|
1371
|
+
'st.ck.signin': 'Los usuarios deben iniciar sesión',
|
|
1372
|
+
'st.ck.public': 'Aplicación pública',
|
|
1373
|
+
'st.ck.debug_on': 'El modo de depuración está activado: se muestran detalles de los errores a los usuarios',
|
|
1374
|
+
'st.ck.debug_off': 'El modo de depuración está desactivado',
|
|
1375
|
+
'st.ck.msgs_on': 'Los mensajes de depuración están activados (nivel {level}): se registra cada petición',
|
|
1376
|
+
'st.ck.msgs_off': 'Los mensajes de depuración están desactivados',
|
|
1377
|
+
'st.ck.unprotected': 'Páginas sin protección por suma de comprobación: {n}',
|
|
1378
|
+
'st.ck.public_pages': 'Páginas públicas: {n}',
|
|
1379
|
+
'st.title': 'Ajustes de {app}',
|
|
1380
|
+
'st.err.fn_shape': 'La función de gestión de errores es schema.function, p. ej. sales.error_message.',
|
|
1381
|
+
'st.err.no_fn': 'No existe ninguna función {fn}(jsonb) que devuelva jsonb.',
|
|
1382
|
+
'st.err.warning': 'El aviso de fin de sesión es de 0 a 3600 segundos.',
|
|
1383
|
+
'st.saved': 'Guardado.',
|
|
1384
|
+
'st.settings_saved': 'Ajustes guardados.',
|
|
1385
|
+
'st.app_deleted': 'Aplicación eliminada.',
|
|
1046
1386
|
};
|