pgkiln 0.80.0 → 0.82.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.
Files changed (85) hide show
  1. package/db/migrations/146_database_model_providers.sql +53 -0
  2. package/db/migrations/147_condition_types.sql +80 -0
  3. package/db/migrations/148_validation_types.sql +44 -0
  4. package/db/migrations/149_dynamic_action_events.sql +45 -0
  5. package/db/migrations/150_process_types.sql +23 -0
  6. package/db/migrations/151_item_types.sql +16 -0
  7. package/db/migrations/152_workflow_diagram_region.sql +10 -0
  8. package/docs/apex-feature-parity.md +12 -10
  9. package/docs/guide/02-concepts.md +3 -3
  10. package/docs/guide/03-builder.md +13 -3
  11. package/docs/guide/04-pages-and-regions.md +17 -3
  12. package/docs/guide/05-items.md +5 -0
  13. package/docs/guide/06-processing.md +104 -17
  14. package/docs/guide/07-dynamic-actions.md +16 -1
  15. package/docs/guide/11-from-apex.md +7 -0
  16. package/examples/hr/hr_79_condition_types.sql +17 -0
  17. package/package.json +1 -1
  18. package/public/app.css +12 -0
  19. package/public/app.js +157 -9
  20. package/src/ai/embeddings.ts +20 -7
  21. package/src/appfiles.ts +4 -4
  22. package/src/builder/advisor.ts +43 -7
  23. package/src/builder/code-editor.ts +14 -10
  24. package/src/builder/components.ts +51 -21
  25. package/src/builder/conditions.ts +64 -0
  26. package/src/builder/db-users.ts +124 -118
  27. package/src/builder/designer.ts +9 -1
  28. package/src/builder/home.ts +42 -40
  29. package/src/builder/i18n/de.ts +464 -0
  30. package/src/builder/i18n/en.ts +464 -0
  31. package/src/builder/i18n/es.ts +464 -0
  32. package/src/builder/i18n/fr.ts +464 -0
  33. package/src/builder/i18n/it.ts +464 -0
  34. package/src/builder/i18n/ja.ts +464 -0
  35. package/src/builder/i18n/ko.ts +464 -0
  36. package/src/builder/i18n/nl.ts +464 -0
  37. package/src/builder/i18n/pt.ts +464 -0
  38. package/src/builder/i18n/zh-cn.ts +464 -0
  39. package/src/builder/i18n/zh-tw.ts +464 -0
  40. package/src/builder/instance.ts +27 -23
  41. package/src/builder/ldap.ts +50 -47
  42. package/src/builder/mail-queue.ts +50 -45
  43. package/src/builder/network-access.ts +46 -43
  44. package/src/builder/region-help.ts +3 -1
  45. package/src/builder/region-settings.ts +30 -5
  46. package/src/builder/vector-column.ts +3 -3
  47. package/src/builder/vector-providers.ts +16 -5
  48. package/src/i18n/ar.ts +5 -0
  49. package/src/i18n/cs.ts +5 -0
  50. package/src/i18n/da.ts +5 -0
  51. package/src/i18n/de.ts +5 -0
  52. package/src/i18n/el.ts +5 -0
  53. package/src/i18n/es.ts +5 -0
  54. package/src/i18n/fi.ts +5 -0
  55. package/src/i18n/fr.ts +5 -0
  56. package/src/i18n/he.ts +5 -0
  57. package/src/i18n/it.ts +5 -0
  58. package/src/i18n/ja.ts +5 -0
  59. package/src/i18n/ko.ts +5 -0
  60. package/src/i18n/nb.ts +5 -0
  61. package/src/i18n/pl.ts +5 -0
  62. package/src/i18n/pt.ts +5 -0
  63. package/src/i18n/ru.ts +5 -0
  64. package/src/i18n/sv.ts +5 -0
  65. package/src/i18n/tr.ts +5 -0
  66. package/src/i18n/uk.ts +5 -0
  67. package/src/i18n/zh.ts +5 -0
  68. package/src/i18n.ts +10 -0
  69. package/src/metadata.ts +72 -9
  70. package/src/runtime/authz.ts +9 -5
  71. package/src/runtime/context.ts +4 -0
  72. package/src/runtime/da-styles.ts +37 -0
  73. package/src/runtime/documents.ts +3 -2
  74. package/src/runtime/engine.ts +95 -13
  75. package/src/runtime/items.ts +33 -0
  76. package/src/runtime/logic.ts +79 -8
  77. package/src/runtime/maps.ts +50 -4
  78. package/src/runtime/process-types.ts +139 -0
  79. package/src/runtime/processes.ts +2 -0
  80. package/src/runtime/regions.ts +4 -0
  81. package/src/runtime/render.ts +13 -2
  82. package/src/runtime/routes.ts +2 -2
  83. package/src/runtime/workflow-diagram.ts +45 -0
  84. package/src/vector.ts +3 -3
  85. package/src/workflow.ts +10 -2
@@ -1958,4 +1958,468 @@ export const it: BuilderMessages = {
1958
1958
  'us.mfa_reset_help': 'Rimuove le app di autenticazione e i codici di recupero di {user} e lo disconnette ovunque. Dove un’applicazione richiede l’accesso a due fattori, aggiungerà una nuova app al prossimo accesso. Viene registrato.',
1959
1959
  'us.mfa_reset_done': 'L’accesso a due fattori di {user} è stato reimpostato.',
1960
1960
  'us.mfa_reason_needed': 'Indicare un motivo per la reimpostazione.',
1961
+ // ------------------------------------------------------------ Mail queue (sprint 152)
1962
+ 'mq.title': 'Coda di posta',
1963
+ 'mq.refused': 'Solo gli amministratori e gli amministratori dell\'area di lavoro vedono la coda di posta.',
1964
+ 'mq.period.24': 'Ultime 24 ore',
1965
+ 'mq.period.48': 'Ultime 48 ore',
1966
+ 'mq.period.168': 'Ultimi 7 giorni',
1967
+ 'mq.period': 'Periodo',
1968
+ 'mq.workspace': 'Area di lavoro',
1969
+ 'mq.all_workspaces': 'Tutte le aree di lavoro',
1970
+ 'mq.app': 'Applicazione',
1971
+ 'mq.all_apps': 'Tutte le applicazioni',
1972
+ 'mq.intro_ws': 'Consegna della posta dell\'area di lavoro {workspace}: cosa è stato messo in coda, inviato e non riuscito, quale posta viene ritentata, quanto tempo hanno impiegato i provider e gli errori con la risposta del provider. La posta viene conservata 30 giorni.',
1973
+ 'mq.intro_all': 'Consegna della posta di tutte le aree di lavoro: cosa è stato messo in coda, inviato e non riuscito, quale posta viene ritentata, quanto tempo hanno impiegato i provider e gli errori con la risposta del provider. La posta viene conservata 30 giorni.',
1974
+ 'mq.only_yours': 'Vede solo le applicazioni della sua area di lavoro.',
1975
+ 'mq.stat.queued': 'in coda ora',
1976
+ 'mq.stat.retrying': 'in nuovo tentativo',
1977
+ 'mq.stat.sending': 'in invio',
1978
+ 'mq.stat.sent': 'inviati',
1979
+ 'mq.stat.failed': 'non riusciti',
1980
+ 'mq.stat.delivered': 'consegnati',
1981
+ 'mq.stat.avg': 'chiamata media al provider',
1982
+ 'mq.per_hour': 'All\'ora',
1983
+ 'mq.col.hour': 'Ora (UTC)',
1984
+ 'mq.col.hour_short': 'Ora',
1985
+ 'mq.col.queued': 'In coda',
1986
+ 'mq.col.sent': 'Inviati',
1987
+ 'mq.col.failed': 'Non riusciti',
1988
+ 'mq.col.retrying': 'Nuovo tentativo',
1989
+ 'mq.none_period': 'Nessuna posta in questo periodo.',
1990
+ 'mq.slowest': 'Chiamate al provider più lente',
1991
+ 'mq.col.when': 'Quando (UTC)',
1992
+ 'mq.col.when_short': 'Quando',
1993
+ 'mq.col.service': 'Servizio',
1994
+ 'mq.col.status': 'Stato',
1995
+ 'mq.col.time': 'Durata',
1996
+ 'mq.status.sent': 'inviato',
1997
+ 'mq.status.error': 'errore',
1998
+ 'mq.status.retrying': 'nuovo tentativo',
1999
+ 'mq.status.sending': 'in invio',
2000
+ 'mq.status.cancelled': 'annullato',
2001
+ 'mq.none_calls': 'Nessuna chiamata al provider in questo periodo.',
2002
+ 'mq.per_app': 'Per area di lavoro e applicazione',
2003
+ 'mq.col.average': 'Media',
2004
+ 'mq.col.slowest': 'Il più lento',
2005
+ 'mq.failures': 'Errori',
2006
+ 'mq.failures_intro': 'Posta che non verrà più ritentata: il provider l\'ha rifiutata, oppure non è riuscita {n} volte. {retry} la rimette in coda con nuovi tentativi; {purge} la elimina.',
2007
+ 'mq.col.failed_at': 'Non riuscito (UTC)',
2008
+ 'mq.col.to': 'A',
2009
+ 'mq.col.subject': 'Oggetto',
2010
+ 'mq.col.answer': 'Risposta del provider',
2011
+ 'mq.col.actions': 'Azioni',
2012
+ 'mq.queued_at': 'messo in coda {when}',
2013
+ 'mq.attempts_one': '{n} tentativo',
2014
+ 'mq.attempts': '{n} tentativi',
2015
+ 'mq.retry': 'Riprova',
2016
+ 'mq.purge': 'Elimina',
2017
+ 'mq.purge_confirm': 'Eliminare questa posta?',
2018
+ 'mq.none_failed': 'Nessuna posta non riuscita.',
2019
+ 'mq.retry_all': 'Riprova tutti i non riusciti',
2020
+ 'mq.purge_all': 'Elimina tutti i non riusciti',
2021
+ 'mq.purge_all_confirm': 'Eliminare tutta la posta non riuscita mostrata qui?',
2022
+ 'mq.requeued': 'La posta è di nuovo in coda.',
2023
+ 'mq.changed': 'Nel frattempo la posta è cambiata.',
2024
+ 'mq.deleted': 'La posta è stata eliminata.',
2025
+ 'mq.only_done': 'Si può eliminare solo la posta inviata, non riuscita o annullata.',
2026
+ 'mq.n_requeued_one': '{n} messaggio rimesso in coda.',
2027
+ 'mq.n_requeued': '{n} messaggi rimessi in coda.',
2028
+ 'mq.n_deleted_one': '{n} messaggio eliminato.',
2029
+ 'mq.n_deleted': '{n} messaggi eliminati.',
2030
+ // ------------------------------------------------------------ Network access (sprint 152)
2031
+ 'na.title': 'Accesso alla rete',
2032
+ 'na.refused': 'Solo gli amministratori e gli amministratori dell\'area di lavoro gestiscono l\'accesso alla rete.',
2033
+ 'na.none': 'Nessuno.',
2034
+ 'na.url_invalid': 'L\'URL non è valido.',
2035
+ 'na.url_ok': '{host} può essere chiamato dalle applicazioni di questa area di lavoro (l\'indirizzo risolto viene controllato al momento della chiamata).',
2036
+ 'na.intro': 'Quali servizi web possono chiamare le applicazioni: {web_request}, origini dati REST, il processo e il passo di workflow Invoke API, gli endpoint token delle credenziali web, l\'object storage e i cataloghi di origini REST. L\'elenco dell\'installazione vale per ogni area di lavoro; l\'elenco proprio di un\'area di lavoro può solo restringerlo, mai ampliarlo. Gli indirizzi privati e di loopback restano rifiutati a meno che l\'installazione non li consenta, qualunque cosa elenchi un\'area di lavoro.',
2037
+ 'na.workspace': 'Area di lavoro {name}',
2038
+ 'na.outgoing': 'Chiamate in uscita delle applicazioni di quest\'area di lavoro',
2039
+ 'na.any_host': 'Qualsiasi host consentito dall\'installazione',
2040
+ 'na.only_hosts': 'Solo gli host qui sotto (e anche l\'installazione deve consentirli)',
2041
+ 'na.hosts': 'Host',
2042
+ 'na.hosts_help': 'Uno per riga: {a}, {b} per i suoi sottodomini, {c} solo per una porta. Nessuno schema o percorso. Limitato senza host: nessuna chiamata in uscita.',
2043
+ 'na.unreachable': 'Non nell\'elenco dell\'installazione, quindi mai raggiungibile: {hosts}.',
2044
+ 'na.servers_on_hosts': 'Server remoti su questi host: {list}.',
2045
+ 'na.save': 'Salva',
2046
+ 'na.installation': 'Installazione',
2047
+ 'na.installation_note': 'Impostato nell\'ambiente del server dai suoi amministratori ({env}).',
2048
+ 'na.any_public': 'Qualsiasi host pubblico ({star}).',
2049
+ 'na.private': 'Host privati',
2050
+ 'na.private_note': 'Host con indirizzi privati o di loopback che possono essere chiamati ({env}).',
2051
+ 'na.servers': 'Server remoti',
2052
+ 'na.servers_intro': 'Gli host che i {link} di quest\'area di lavoro rappresentano ora: le origini dati REST, i cataloghi e i servizi di IA su un server chiamano questo host.',
2053
+ 'na.servers_link': 'server remoti',
2054
+ 'na.col.server': 'Server',
2055
+ 'na.col.host': 'Host',
2056
+ 'na.col.from': 'Origine',
2057
+ 'na.col.called': 'Verrebbe chiamato',
2058
+ 'na.host_none': 'nessuno',
2059
+ 'na.base_url': 'URL di base',
2060
+ 'na.no': 'no',
2061
+ 'na.yes': 'sì',
2062
+ 'na.no_servers': 'Nessun server remoto.',
2063
+ 'na.check': 'Verifica un URL',
2064
+ 'na.url': 'URL',
2065
+ 'na.check_btn': 'Verifica',
2066
+ 'na.check_note': 'Non viene chiamato nulla: questo applica gli elenchi all\'URL così come sono ora.',
2067
+ 'na.workspaces': 'Aree di lavoro',
2068
+ 'na.col.workspace': 'Area di lavoro',
2069
+ 'na.col.outgoing': 'Chiamate in uscita',
2070
+ 'na.n_hosts_one': '{n} host',
2071
+ 'na.n_hosts': '{n} host',
2072
+ 'na.inst_list': 'l\'elenco dell\'installazione',
2073
+ 'na.ws_list': 'l\'elenco dell\'area di lavoro',
2074
+ 'na.refusals': 'Chiamate rifiutate',
2075
+ 'na.refusals_intro': 'Le ultime 100 chiamate di quest\'area di lavoro rifiutate da un elenco (conservate 7 giorni). Anche il log di debug dell\'applicazione le contiene.',
2076
+ 'na.col.when': 'Quando (UTC)',
2077
+ 'na.col.when_short': 'Quando',
2078
+ 'na.col.app': 'Applicazione',
2079
+ 'na.col.call': 'Chiamata',
2080
+ 'na.col.refused_by': 'Rifiutata da',
2081
+ 'na.no_refusals': 'Nessuna chiamata rifiutata.',
2082
+ 'na.saved_only': 'Salvato: le applicazioni di quest\'area di lavoro chiamano solo questi host.',
2083
+ 'na.saved_none': 'Salvato: le applicazioni di quest\'area di lavoro non chiamano alcun host.',
2084
+ 'na.saved_inst': 'Salvato: vale l\'elenco dell\'installazione.',
2085
+ // ------------------------------------------------------------ Workspace utilities and dashboard (sprint 152)
2086
+ 'wu.title': 'Utilità dell\'area di lavoro',
2087
+ 'wu.users': 'Utenti',
2088
+ 'wu.users_text': 'Account delle persone che usano le applicazioni e il loro accesso.',
2089
+ 'wu.app_groups': 'Gruppi di applicazioni',
2090
+ 'wu.app_groups_text': 'Organizza le applicazioni di quest\'area di lavoro in gruppi.',
2091
+ 'wu.gallery': 'Galleria di app',
2092
+ 'wu.gallery_text': 'Applicazioni di esempio e iniziali da installare, e i modelli di quest\'area di lavoro.',
2093
+ 'wu.providers': 'Provider di identità',
2094
+ 'wu.providers_text': 'Accesso con OpenID Connect e SAML.',
2095
+ 'wu.ldap': 'Directory LDAP',
2096
+ 'wu.ldap_text': 'Accedi con gli account della directory.',
2097
+ 'wu.password_policy': 'Criteri per le password',
2098
+ 'wu.password_policy_text': 'Lunghezza, complessità e durata delle password.',
2099
+ 'wu.developers': 'Sviluppatori',
2100
+ 'wu.developers_text': 'Chi può usare questo builder.',
2101
+ 'wu.sql': 'SQL Workshop',
2102
+ 'wu.sql_text': 'Esegui SQL, sfoglia gli oggetti e carica dati.',
2103
+ 'wu.backups': 'Gestisci i backup',
2104
+ 'wu.backups_text': 'I backup di ogni applicazione di quest\'area di lavoro; esegui il backup di tutte in una volta.',
2105
+ 'wu.files': 'File statici dell\'area di lavoro',
2106
+ 'wu.files_text': 'CSS, JavaScript, immagini e font che ogni applicazione di quest\'area di lavoro può caricare ({tag}).',
2107
+ 'wu.servers': 'Server remoti',
2108
+ 'wu.servers_text': 'URL di base con nome per origini dati REST, cataloghi e servizi di IA: cambia un valore per spostarli tutti.',
2109
+ 'wu.remote_dbs': 'Database remoti',
2110
+ 'wu.remote_dbs_text': 'Le tabelle di un altro database PostgreSQL come tabelle esterne (postgres_fdw) che le applicazioni interrogano come le proprie (amministratori).',
2111
+ 'wu.credentials': 'Credenziali web',
2112
+ 'wu.credentials_text': 'Chiavi e client OAuth2 che le applicazioni di quest\'area di lavoro usano per nome (segreti cifrati, sola scrittura).',
2113
+ 'wu.catalogs': 'Cataloghi di origini REST',
2114
+ 'wu.catalogs_text': 'Servizi web descritti una volta per l\'area di lavoro (ad es. da un documento OpenAPI); le applicazioni ne creano origini dati REST.',
2115
+ 'wu.export': 'Esporta e importa',
2116
+ 'wu.export_text': 'I componenti di quest\'area di lavoro in un file: impostazioni, sviluppatori, gruppi, link, cataloghi, script, blueprint (amministratori dell\'area di lavoro).',
2117
+ 'wu.dashboard': 'Dashboard',
2118
+ 'wu.dashboard_text': 'Utilizzo e problemi in tutta l\'area di lavoro.',
2119
+ 'wu.instance': 'Impostazioni dell\'istanza',
2120
+ 'wu.instance_text': 'Durata della sessione, limitazione degli accessi e configurazione del server (amministratori).',
2121
+ 'wu.workspaces': 'Aree di lavoro',
2122
+ 'wu.workspaces_text': 'Gruppi di applicazioni e i loro sviluppatori (amministratori).',
2123
+ 'wu.workspace': 'Area di lavoro {name}',
2124
+ 'wu.workspace_text': 'Nome, sviluppatori, preferenze e link di estensione (amministratori dell\'area di lavoro).',
2125
+ 'wu.ui_defaults': 'Valori predefiniti dell\'interfaccia',
2126
+ 'wu.ui_defaults_text': 'Etichette, maschere di formato, guida ed elenchi di valori per colonna di tabella, usati dalle procedure guidate delle pagine.',
2127
+ 'wu.icons': 'Icone',
2128
+ 'wu.icons_text': 'Sfoglia le icone del selettore di icone.',
2129
+ 'wu.vectors': 'Provider di vettori',
2130
+ 'wu.vectors_text': 'Embedding per la ricerca per significato: i provider di vettori delle applicazioni, le loro colonne vettoriali e se pgvector è installato.',
2131
+ 'wu.ai': 'Servizi di IA',
2132
+ 'wu.ai_text': 'Claude, OpenAI, Gemini e servizi compatibili con OpenAI per le applicazioni: modelli, chiavi, limiti e utilizzo (amministratori).',
2133
+ 'wu.mail': 'Servizi di posta',
2134
+ 'wu.mail_text': 'SMTP, Microsoft 365, Amazon SES, Resend, Postmark, SendGrid o Mailgun per la posta delle applicazioni (amministratori).',
2135
+ 'wu.otel': 'OpenTelemetry',
2136
+ 'wu.otel_text': 'Tracce, log e metriche verso il tuo monitoraggio tramite un OpenTelemetry Collector; /metrics per Prometheus (amministratori).',
2137
+ 'wu.installation': 'Installazione',
2138
+ 'wu.installation_text': 'Versione, esecuzioni di installazione e aggiornamento, migrazioni applicate (amministratori).',
2139
+ 'wu.about': 'Informazioni',
2140
+ 'wu.about_text': 'Le utilità dell\'area di lavoro contengono ciò che le sue applicazioni condividono: utenti e accesso, gruppi, la galleria e report tra le applicazioni.',
2141
+ 'wu.learn_more': 'Ulteriori informazioni …',
2142
+ 'wu.cross_app': 'Report tra applicazioni',
2143
+ 'wu.side': 'Informazioni e report',
2144
+ 'wd.title': 'Dashboard dell\'area di lavoro',
2145
+ 'wd.crumb': 'Dashboard',
2146
+ 'wd.apps': 'applicazioni',
2147
+ 'wd.pages': 'pagine',
2148
+ 'wd.accounts': 'account attivi',
2149
+ 'wd.views': 'visualizzazioni di pagina (24 h)',
2150
+ 'wd.users': 'utenti distinti (24 h)',
2151
+ 'wd.failures': 'accessi non riusciti / bloccati (24 h)',
2152
+ 'wd.problems': 'errori / accesso negato (24 h)',
2153
+ 'wd.per_app': 'Applicazioni (7 giorni)',
2154
+ 'wd.col.app': 'Applicazione',
2155
+ 'wd.col.views_day': 'Visualizzazioni (24 h)',
2156
+ 'wd.col.views_week': 'Visualizzazioni (7 giorni)',
2157
+ 'wd.col.users': 'Utenti',
2158
+ 'wd.col.avg': 'ms medi',
2159
+ 'wd.col.problems': 'Errori / negati',
2160
+ 'wd.activity': 'Attività',
2161
+ // ------------------------------------------------------------ Instance settings (sprint 152)
2162
+ 'ins.title': 'Impostazioni dell\'istanza',
2163
+ 'ins.refused': 'Solo gli amministratori modificano le impostazioni dell\'istanza.',
2164
+ 'ins.intro': 'Impostazioni per ogni applicazione e per il builder di questa installazione. Un valore impostato qui prevale sulla variabile d\'ambiente; vuoto usa la variabile d\'ambiente o il valore predefinito. Gli altri server di questa installazione recepiscono una modifica entro 30 secondi.',
2165
+ 'ins.sessions': 'Sessioni e accesso',
2166
+ 'ins.in_effect': 'In vigore: {value} ({origin}; {env}, predefinito {default}).',
2167
+ 'ins.origin.builder': 'impostato qui',
2168
+ 'ins.origin.environment': 'variabile d\'ambiente',
2169
+ 'ins.origin.default': 'predefinito',
2170
+ 'ins.save': 'Salva',
2171
+ 'ins.checks': 'Controlli di blocco',
2172
+ 'ins.attention_one': '{n} di questi richiede attenzione.',
2173
+ 'ins.attention': '{n} di questi richiedono attenzione.',
2174
+ 'ins.nothing': 'Niente richiede attenzione.',
2175
+ 'ins.checks_cli': 'Gli stessi controlli girano sul server con {cmd}; {url} mostra quali passkey un nuovo indirizzo renderebbe inutilizzabili.',
2176
+ 'ins.level.ok': 'OK',
2177
+ 'ins.level.info': 'Nota',
2178
+ 'ins.level.warning': 'Avviso',
2179
+ 'ins.level.error': 'Errore',
2180
+ 'ins.have_copy': 'Ho una copia di questa chiave',
2181
+ 'ins.configuration': 'Configurazione',
2182
+ 'ins.config_intro': 'Variabili d\'ambiente di questo server (capitolo 1 della guida). I segreti mostrano solo se sono impostati.',
2183
+ 'ins.col.variable': 'Variabile',
2184
+ 'ins.col.value': 'Valore',
2185
+ 'ins.col.purpose': 'Scopo',
2186
+ 'ins.backup_ok': 'Backup della chiave dell\'istanza confermato.',
2187
+ 'ins.no_key': 'PGKILN_SECRET_KEY non è impostata.',
2188
+ 'ins.saved': 'Impostazioni dell\'istanza salvate.',
2189
+ // ------------------------------------------------------------ LDAP directories (sprint 152)
2190
+ 'ldap.title': 'Directory LDAP',
2191
+ 'ldap.server': 'Server',
2192
+ 'ldap.name': 'Nome',
2193
+ 'ldap.name_help': 'in minuscolo, ad es. corp o ad',
2194
+ 'ldap.display_name': 'Nome visualizzato',
2195
+ 'ldap.url': 'URL',
2196
+ 'ldap.url_help': 'ldaps:// (TLS) o ldap://, con StartTLS qui sotto. ldap:// semplice invia le password in chiaro.',
2197
+ 'ldap.bind_dn': 'DN dell\'account di servizio',
2198
+ 'ldap.bind_dn_help': 'Cerca gli utenti (e i gruppi). Vuoto: una ricerca anonima.',
2199
+ 'ldap.bind_password': 'Password dell\'account di servizio',
2200
+ 'ldap.password_stored': 'È memorizzata una password. Lascia vuoto per mantenerla.',
2201
+ 'ldap.start_tls': 'StartTLS (per URL ldap://)',
2202
+ 'ldap.tls_verify': 'Verifica il certificato del server',
2203
+ 'ldap.tls_verify_help': 'Disattiva solo per server di prova con certificati autofirmati.',
2204
+ 'ldap.remove_password': 'Rimuovi la password memorizzata (ricerca anonima)',
2205
+ 'ldap.users': 'Utenti',
2206
+ 'ldap.user_base': 'Base di ricerca degli utenti',
2207
+ 'ldap.user_filter': 'Filtro utenti',
2208
+ 'ldap.user_filter_help': '{username} viene sostituito dal nome utente con escape. Active Directory: {ad}',
2209
+ 'ldap.username_attr': 'Attributo del nome utente',
2210
+ 'ldap.username_attr_help': 'Il nome utente pgkiln; AD: sAMAccountName',
2211
+ 'ldap.display_attr': 'Attributo del nome visualizzato',
2212
+ 'ldap.email_attr': 'Attributo e-mail',
2213
+ 'ldap.auto_create': 'Crea automaticamente gli account al primo accesso',
2214
+ 'ldap.auto_create_help': 'Altrimenti possono accedere solo le persone con un account esistente (stesso nome utente).',
2215
+ 'ldap.groups': 'Gruppi (associati ai ruoli nel controllo di accesso di ogni applicazione)',
2216
+ 'ldap.group_attr': 'Attributo di gruppo dell\'utente',
2217
+ 'ldap.group_attr_help': 'DN dei gruppi; il primo valore di ciascuno è il nome del gruppo. Vuoto: non usato.',
2218
+ 'ldap.group_base': 'Base di ricerca dei gruppi',
2219
+ 'ldap.group_base_help': 'Facoltativo: cerca anche i gruppi.',
2220
+ 'ldap.group_filter': 'Filtro gruppi',
2221
+ 'ldap.group_filter_help': '{dn}: il DN dell\'utente, {username}: il nome utente (entrambi con escape).',
2222
+ 'ldap.group_name_attr': 'Attributo del nome del gruppo',
2223
+ 'ldap.enabled': 'Attivato',
2224
+ 'ldap.add': 'Aggiungi directory',
2225
+ 'ldap.save': 'Salva',
2226
+ 'ldap.intro': 'OpenLDAP, Active Directory e altri server LDAP. Il modulo di accesso di un\'applicazione controlla prima le password locali, poi le directory attivate in {where}. I gruppi della directory sono associati ai ruoli nel {access} di ogni applicazione.',
2227
+ 'ldap.where': 'Impostazioni → Metodi di accesso',
2228
+ 'ldap.access': 'controllo di accesso',
2229
+ 'ldap.directories': 'Directory',
2230
+ 'ldap.col.directory': 'Directory',
2231
+ 'ldap.col.used_by': 'Usata da',
2232
+ 'ldap.col.linked': 'Account collegati',
2233
+ 'ldap.col.status': 'Stato',
2234
+ 'ldap.no_apps': 'nessuna app',
2235
+ 'ldap.status_enabled': 'attivato',
2236
+ 'ldap.status_disabled': 'disattivato',
2237
+ 'ldap.status_auto': 'creazione automatica',
2238
+ 'ldap.none': 'Ancora nessuna directory LDAP.',
2239
+ 'ldap.settings': 'Impostazioni',
2240
+ 'ldap.delete_confirm': 'Eliminare {name}? I collegamenti agli account vengono rimossi; gli account restano.',
2241
+ 'ldap.delete': 'Elimina directory',
2242
+ 'ldap.test': 'Verifica connessione',
2243
+ 'ldap.test_intro': 'Si connette, esegue il bind con l\'account di servizio (o in modo anonimo) e controlla la base di ricerca; con un nome utente, cerca l\'utente con il filtro. Nessuna password viene controllata.',
2244
+ 'ldap.test_username': 'Nome utente (facoltativo)',
2245
+ 'ldap.test_username_label': 'Nome utente da cercare',
2246
+ 'ldap.test_btn': 'Verifica',
2247
+ 'ldap.added': 'Directory aggiunta. Verifica la connessione, poi attivala per un\'applicazione.',
2248
+ 'ldap.saved': 'Directory salvata.',
2249
+ 'ldap.test_failed': 'La verifica non è riuscita: {error}',
2250
+ 'ldap.deleted': 'Directory eliminata.',
2251
+ // ------------------------------------------------------------ Database users (sprint 153)
2252
+ 'dbu.title': 'Utenti del database',
2253
+ 'dbu.priv.none': 'Nessuno',
2254
+ 'dbu.priv.read': 'Lettura (SELECT)',
2255
+ 'dbu.priv.write': 'Lettura e scrittura',
2256
+ 'dbu.existing.none': 'Nessuna modifica',
2257
+ 'dbu.existing.read': 'Concedi lettura',
2258
+ 'dbu.existing.write': 'Concedi lettura e scrittura',
2259
+ 'dbu.existing.revoke': 'Revoca tutto',
2260
+ 'dbu.pw.none': 'Nessuna password',
2261
+ 'dbu.pw.set': 'Imposta una password',
2262
+ 'dbu.pw.keep': 'Mantieni la password',
2263
+ 'dbu.pw.new': 'Imposta una nuova password',
2264
+ 'dbu.pw.remove': 'Rimuovi la password',
2265
+ 'dbu.role': 'Ruolo',
2266
+ 'dbu.name': 'Nome',
2267
+ 'dbu.name_help': 'Lettere, cifre, _ e $; i nomi che iniziano con pg_ o pgkiln sono riservati.',
2268
+ 'dbu.sign_in': 'Accesso',
2269
+ 'dbu.can_login': 'Può accedere (LOGIN)',
2270
+ 'dbu.can_login_help': 'Un ruolo senza questo è un ruolo di gruppo: altri ne ottengono i privilegi essendone membri.',
2271
+ 'dbu.password': 'Password',
2272
+ 'dbu.password_help': 'La password si digita al passo successivo, dopo aver rivisto lo SQL. Viene memorizzata come verificatore SCRAM-SHA-256 e mai mostrata.',
2273
+ 'dbu.valid_until': 'Valido fino al',
2274
+ 'dbu.valid_until_help': 'La password smette di funzionare dopo questa data (VALID UNTIL). Vuoto: non scade.',
2275
+ 'dbu.conn_limit': 'Limite di connessioni',
2276
+ 'dbu.conn_limit_help': 'Vuoto: nessun limite.',
2277
+ 'dbu.search_path': 'Schema predefinito (percorso di ricerca)',
2278
+ 'dbu.search_path_help': 'Schemi, separati da virgole, per le sessioni di questo ruolo in questo database. Vuoto: il predefinito del server.',
2279
+ 'dbu.comment': 'Commento',
2280
+ 'dbu.member_of': 'Membro di',
2281
+ 'dbu.member_of_intro': 'Il ruolo ottiene i privilegi dei ruoli di cui è membro. I ruoli propri di pgkiln, i superutenti, i ruoli di accesso e i ruoli predefiniti che raggiungono i file del server non si possono concedere qui.',
2282
+ 'dbu.no_groups': 'Non ci sono ruoli di gruppo da concedere.',
2283
+ 'dbu.schemas': 'Schemi',
2284
+ 'dbu.schemas_intro': '{usage} consente al ruolo di usare gli oggetti di uno schema (per quanto lo permettano i loro privilegi), {create} di crearvi oggetti. {future} sono privilegi predefiniti sulle tabelle (e, per la scrittura, sulle sequenze) che la connessione proprietaria di pgkiln vi crea d\'ora in poi; {existing} concede o revoca una volta sulle tabelle presenti ora. Gli schemi propri di pgkiln non sono elencati.',
2285
+ 'dbu.col.schema': 'Schema',
2286
+ 'dbu.col.usage': 'Uso',
2287
+ 'dbu.col.create': 'Creazione',
2288
+ 'dbu.col.future': 'Tabelle future',
2289
+ 'dbu.col.existing': 'Tabelle esistenti',
2290
+ 'dbu.usage_on': 'Uso di {schema}',
2291
+ 'dbu.create_in': 'Creazione in {schema}',
2292
+ 'dbu.future_in': 'Tabelle future in {schema}',
2293
+ 'dbu.existing_in': 'Tabelle esistenti in {schema}',
2294
+ 'dbu.custom': 'Come sono (personalizzato)',
2295
+ 'dbu.no_schemas': 'Nessuno schema.',
2296
+ 'dbu.review': 'Rivedi SQL',
2297
+ 'dbu.cancel': 'Annulla',
2298
+ 'dbu.sql': 'SQL',
2299
+ 'dbu.sql_intro': 'Queste istruzioni vengono eseguite in un\'unica transazione quando le applichi: tutte o nessuna.',
2300
+ 'dbu.sql_masked': 'La password appare come \'********\': pgkiln invia a PostgreSQL solo il suo verificatore SCRAM-SHA-256.',
2301
+ 'dbu.generated_sql': 'SQL generato',
2302
+ 'dbu.nothing_sql': 'Niente da cambiare: il ruolo è come dice il modulo.',
2303
+ 'dbu.confirm_password': 'Conferma password',
2304
+ 'dbu.password_note': 'Almeno 8 caratteri. Viene sottoposta a hash da pgkiln prima di raggiungere il database e non viene conservata.',
2305
+ 'dbu.apply': 'Applica',
2306
+ 'dbu.back_form': 'Torna al modulo',
2307
+ 'dbu.tag.in_use': 'in uso',
2308
+ 'dbu.tag.superuser': 'superutente',
2309
+ 'dbu.tag.bypassrls': 'ignora RLS',
2310
+ 'dbu.tag.createrole': 'crea ruoli',
2311
+ 'dbu.tag.createdb': 'crea DB',
2312
+ 'dbu.tag.replication': 'replica',
2313
+ 'dbu.never': 'mai',
2314
+ 'dbu.expired': 'scaduto',
2315
+ 'dbu.in_days_one': 'tra {n} giorno',
2316
+ 'dbu.in_days': 'tra {n} giorni',
2317
+ 'dbu.f.all': 'Tutti i ruoli',
2318
+ 'dbu.f.login': 'Può accedere',
2319
+ 'dbu.f.expiring': 'Password in scadenza entro 30 giorni',
2320
+ 'dbu.f.bypassrls': 'Ignora la sicurezza a livello di riga',
2321
+ 'dbu.f.owners': 'Senza accesso, ma proprietari di oggetti',
2322
+ 'dbu.f.pgkiln': 'Propri di pgkiln',
2323
+ 'dbu.list_intro': 'I ruoli PostgreSQL di questo server (pg_roles), senza i ruoli predefiniti pg_.',
2324
+ 'dbu.create_user': 'Crea utente del database',
2325
+ 'dbu.filters': 'Filtri',
2326
+ 'dbu.search_roles': 'Cerca ruoli',
2327
+ 'dbu.search': 'Cerca',
2328
+ 'dbu.col.attributes': 'Attributi',
2329
+ 'dbu.col.connections': 'Connessioni',
2330
+ 'dbu.col.owns': 'Possiede',
2331
+ 'dbu.yes': 'Sì',
2332
+ 'dbu.no': 'No',
2333
+ 'dbu.no_limit': 'nessun limite',
2334
+ 'dbu.owns_schemas': 'schemi {list}',
2335
+ 'dbu.n_objects_one': '{n} oggetto',
2336
+ 'dbu.n_objects': '{n} oggetti',
2337
+ 'dbu.nothing': 'niente',
2338
+ 'dbu.elsewhere': '(+{n} altrove)',
2339
+ 'dbu.no_roles': 'Nessun ruolo.',
2340
+ 'dbu.list_note': 'PostgreSQL non registra quando è stato creato un ruolo. I ruoli {pgkiln} sono le connessioni e i ruoli propri di pgkiln: sono mostrati, non modificati qui. I ruoli {in_use} da un\'applicazione o da un\'area di lavoro isolata si possono modificare ma non eliminare.',
2341
+ 'dbu.details': 'Dettagli',
2342
+ 'dbu.no_login': 'Nessun accesso (un ruolo di gruppo)',
2343
+ 'dbu.members': 'Membri',
2344
+ 'dbu.used_by': 'Usato da',
2345
+ 'dbu.none': 'nessuno',
2346
+ 'dbu.owned_first': '{n} oggetti, i primi {first}:',
2347
+ 'dbu.nothing_here': 'niente in questo database',
2348
+ 'dbu.owned_other': '{n} in altri database o condivisi',
2349
+ 'dbu.protected': '{name} è uno dei ruoli propri di pgkiln (la sua connessione proprietaria o di runtime, un ruolo pgkiln_ o il superutente di bootstrap): pgkiln ne ha bisogno così com\'è, quindi qui non viene modificato né eliminato.',
2350
+ 'dbu.role_title': 'Ruolo {name}',
2351
+ 'dbu.drop_role_link': 'Elimina ruolo…',
2352
+ 'dbu.used_change_only_one': '{users} usa questo ruolo: si può modificare, non eliminare.',
2353
+ 'dbu.used_change_only': '{users} usano questo ruolo: si può modificare, non eliminare.',
2354
+ 'dbu.create_title': 'Crea l\'utente del database {name}',
2355
+ 'dbu.change_title': 'Modifica il ruolo {name}',
2356
+ 'dbu.crumb.create': 'Crea',
2357
+ 'dbu.crumb.review': 'Revisione',
2358
+ 'dbu.crumb.drop': 'Elimina',
2359
+ 'dbu.exists': 'Esiste già un ruolo chiamato {name}.',
2360
+ 'dbu.changed_since': 'Le istruzioni sono cambiate da quando le hai riviste (il ruolo o il modulo è cambiato): rivedile di nuovo.',
2361
+ 'dbu.nothing_change': 'Niente da cambiare.',
2362
+ 'dbu.rolled_back': '{nothing}: le istruzioni sono state eseguite in un\'unica transazione, annullata.',
2363
+ 'dbu.nothing_changed': 'Non è stato modificato nulla',
2364
+ 'dbu.created_one': 'Creato il ruolo {name}: {n} istruzione.',
2365
+ 'dbu.created': 'Creato il ruolo {name}: {n} istruzioni.',
2366
+ 'dbu.changed_one': 'Modificato il ruolo {name}: {n} istruzione.',
2367
+ 'dbu.changed': 'Modificato il ruolo {name}: {n} istruzioni.',
2368
+ 'dbu.drop_title': 'Elimina il ruolo {name}',
2369
+ 'dbu.drop_refused_one': '{users} usa {name}: non viene eliminato finché lo fa.',
2370
+ 'dbu.drop_refused': '{users} usano {name}: non viene eliminato finché lo fanno.',
2371
+ 'dbu.owns_here_one': '{name} possiede {n} oggetto in questo database',
2372
+ 'dbu.owns_here': '{name} possiede {n} oggetti in questo database',
2373
+ 'dbu.owns_elsewhere': 'e {n} in altri database o condivisi (database, tablespace)',
2374
+ 'dbu.reassign_note': 'Riassegnali a un altro ruolo o eliminali con il ruolo.',
2375
+ 'dbu.elsewhere_note': 'Gli oggetti in altri database vanno prima riassegnati o eliminati lì, altrimenti DROP ROLE non riesce.',
2376
+ 'dbu.owned_objects': 'Oggetti posseduti',
2377
+ 'dbu.objects_it_owns': 'Oggetti che possiede',
2378
+ 'dbu.reassign_to': 'Riassegna a {name}',
2379
+ 'dbu.drop_owned': 'Eliminali con il ruolo (DROP OWNED)',
2380
+ 'dbu.owns_nothing': 'Qui non possiede nulla: revoca solo i suoi privilegi',
2381
+ 'dbu.drop_owned_help': 'DROP OWNED revoca anche i privilegi concessi al ruolo in questo database.',
2382
+ 'dbu.drop_objects_one': 'Elimina l\'oggetto ({n}) posseduto da {name}, con i suoi dati',
2383
+ 'dbu.drop_objects': 'Elimina i {n} oggetti posseduti da {name}, con i loro dati',
2384
+ 'dbu.drop_confirm': 'Eliminare il ruolo {name}?',
2385
+ 'dbu.drop_btn': 'Elimina ruolo',
2386
+ 'dbu.choose_target': 'Scegli un ruolo a cui riassegnare gli oggetti.',
2387
+ 'dbu.changed_since_drop': 'Le istruzioni sono cambiate da quando le hai riviste: rivedile di nuovo.',
2388
+ 'dbu.tick_box': 'Spunta la casella per eliminare gli oggetti posseduti da {name}, oppure riassegnali.',
2389
+ 'dbu.dropped': 'Eliminato il ruolo {name}.',
2390
+ // ------------------------------------------------------------ server-side conditions in words (sprint 154)
2391
+ 'cond.sql': 'Quando l\'espressione SQL è vera',
2392
+ 'cond.exists': 'Quando la query restituisce una riga',
2393
+ 'cond.not_exists': 'Quando la query non restituisce righe',
2394
+ 'cond.function_body': 'Quando il corpo della funzione restituisce true',
2395
+ 'cond.item_null': 'Quando {item} è vuoto',
2396
+ 'cond.item_not_null': 'Quando {item} non è vuoto',
2397
+ 'cond.item_zero': 'Quando {item} è zero',
2398
+ 'cond.item_not_zero': 'Quando {item} non è zero',
2399
+ 'cond.item_null_or_zero': 'Quando {item} è vuoto o zero',
2400
+ 'cond.item_not_null_or_zero': 'Quando {item} non è né vuoto né zero',
2401
+ 'cond.item_equals': 'Quando {item} è {value}',
2402
+ 'cond.item_not_equals': 'Quando {item} non è {value}',
2403
+ 'cond.item_equals_item': 'Quando {item} è uguale a {value}',
2404
+ 'cond.item_not_equals_item': 'Quando {item} è diverso da {value}',
2405
+ 'cond.item_in_list': 'Quando {item} è uno tra {value}',
2406
+ 'cond.item_not_in_list': 'Quando {item} non è nessuno tra {value}',
2407
+ 'cond.request_in': 'Quando la richiesta è {value}',
2408
+ 'cond.request_not_in': 'Quando la richiesta non è {value}',
2409
+ 'cond.page_in': 'Nella pagina {value}',
2410
+ 'cond.page_not_in': 'Non nella pagina {value}',
2411
+ 'cond.page_is_dialog': 'Quando la pagina è una finestra di dialogo modale',
2412
+ 'cond.page_is_not_dialog': 'Quando la pagina non è una finestra di dialogo modale',
2413
+ 'cond.user_signed_in': 'Quando l\'utente ha eseguito l\'accesso',
2414
+ 'cond.user_public': 'Quando l\'utente non ha eseguito l\'accesso',
2415
+ 'cond.language_in': 'Quando la lingua è {value}',
2416
+ 'cond.language_not_in': 'Quando la lingua non è {value}',
2417
+ 'cond.always': 'Sempre',
2418
+ 'cond.never': 'Mai',
2419
+ // ------------------------------------------------------------ gallery: sprint 158 and 160 types
2420
+ 'gallery.region.workflow_diagram': 'Diagramma del flusso di lavoro',
2421
+ 'gallery.item.image_upload': 'Caricamento immagine',
2422
+ 'gallery.item.autocomplete': 'Campo di testo con completamento automatico',
2423
+ 'gallery.item.percent_graph': 'Grafico percentuale',
2424
+ 'gallery.item.display_map': 'Mostra mappa',
1961
2425
  };