@nullplatform/mcp 0.1.6 → 0.1.7
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/i18n.js +206 -22
- package/dist/np/client.js +3 -0
- package/dist/np/journey.js +236 -24
- package/dist/tool-names.js +7 -0
- package/dist/tools/action-flow.js +94 -0
- package/dist/tools/approvals.js +2 -2
- package/dist/tools/builds.js +23 -6
- package/dist/tools/create-link.js +163 -0
- package/dist/tools/create-service.js +149 -0
- package/dist/tools/delete-flow.js +30 -0
- package/dist/tools/delete-link.js +95 -0
- package/dist/tools/delete-param.js +76 -0
- package/dist/tools/delete-service.js +108 -0
- package/dist/tools/deployments.js +2 -2
- package/dist/tools/index.js +14 -0
- package/dist/tools/logs.js +2 -2
- package/dist/tools/metrics.js +4 -1
- package/dist/tools/overview.js +2 -2
- package/dist/tools/params.js +78 -17
- package/dist/tools/playbook.js +2 -1
- package/dist/tools/releases.js +2 -2
- package/dist/tools/services.js +2 -2
- package/dist/tools/set-params.js +61 -11
- package/dist/tools/shared.js +4 -0
- package/dist/tools/update-link.js +87 -0
- package/dist/tools/update-service.js +92 -0
- package/dist/ui.js +4 -1
- package/package.json +3 -1
- package/skills/starting-a-new-app/SKILL.md +71 -0
- package/widgets-dist/approvals.html +261 -57
- package/widgets-dist/builds.html +256 -52
- package/widgets-dist/create-app.html +252 -48
- package/widgets-dist/deployments.html +251 -47
- package/widgets-dist/find-apps.html +251 -47
- package/widgets-dist/logs.html +256 -52
- package/widgets-dist/manifest.json +16 -13
- package/widgets-dist/metrics.html +261 -57
- package/widgets-dist/np-panel.html +256 -52
- package/widgets-dist/overview.html +256 -52
- package/widgets-dist/params.html +257 -53
- package/widgets-dist/releases.html +257 -53
- package/widgets-dist/service-action.html +1118 -0
- package/widgets-dist/service-create.html +1117 -0
- package/widgets-dist/{playbook.html → service-delete.html} +258 -58
- package/widgets-dist/service-link.html +1117 -0
- package/widgets-dist/services.html +249 -45
package/dist/i18n.js
CHANGED
|
@@ -39,6 +39,8 @@ const english = {
|
|
|
39
39
|
"header.type": "Type",
|
|
40
40
|
"header.secret": "Secret",
|
|
41
41
|
"header.value": "Value",
|
|
42
|
+
"header.values": "Values",
|
|
43
|
+
"header.source": "Source",
|
|
42
44
|
"header.metric": "Metric",
|
|
43
45
|
"header.now": "Now",
|
|
44
46
|
"header.avg": "Avg",
|
|
@@ -139,6 +141,9 @@ const english = {
|
|
|
139
141
|
"params.count.many": "**{app}** · {count} parameters",
|
|
140
142
|
"params.unset": "_unset_",
|
|
141
143
|
"params.applyHint": "changed values apply on the next `application_deployment_create`.",
|
|
144
|
+
"params.effectiveFor": "**{app}** · effective parameters for **{scope}**",
|
|
145
|
+
"params.ctxApplication": "Application",
|
|
146
|
+
"params.ctxScope": "{scope} (scope)",
|
|
142
147
|
"params.errorLabel": "Couldn't list parameters",
|
|
143
148
|
// — application_log_list tool —
|
|
144
149
|
"logs.noun": "Logs",
|
|
@@ -146,7 +151,8 @@ const english = {
|
|
|
146
151
|
"logs.noScopesHint": "`application_deployment_create` after creating a scope — logs appear once something runs.",
|
|
147
152
|
"logs.empty": "No log lines returned for **{app}**{scope}.",
|
|
148
153
|
"logs.openInDashboard": "open logs in dashboard",
|
|
149
|
-
"logs.lastLines": "**{app}**{scope} — last
|
|
154
|
+
"logs.lastLines.one": "**{app}**{scope} — last line",
|
|
155
|
+
"logs.lastLines.many": "**{app}**{scope} — last {count} lines",
|
|
150
156
|
"logs.errorLabel": "Couldn't read logs",
|
|
151
157
|
"logs.errorSuffix": "The dashboard's Logs view may still have them.",
|
|
152
158
|
// — application_metric_list tool —
|
|
@@ -158,7 +164,8 @@ const english = {
|
|
|
158
164
|
"metrics.title": "**{app}** · {scope} — last {window}",
|
|
159
165
|
"metrics.errorLabel": "Couldn't load metrics",
|
|
160
166
|
// — application_build_list tool —
|
|
161
|
-
"builds.title": "**{app}** ·
|
|
167
|
+
"builds.title.one": "**{app}** · 1 recent build",
|
|
168
|
+
"builds.title.many": "**{app}** · {count} recent builds",
|
|
162
169
|
"builds.branch": "Branch",
|
|
163
170
|
"builds.commit": "Commit",
|
|
164
171
|
"builds.released": "Released",
|
|
@@ -169,20 +176,25 @@ const english = {
|
|
|
169
176
|
"builds.waiting": "build #{build} is still running — `application_build_list` again in a moment to check.",
|
|
170
177
|
"builds.upToDate": "the latest successful build is already released.",
|
|
171
178
|
"builds.assetsTitle": "Assets of build #{build}",
|
|
172
|
-
"builds.noAssets": "Build #{build} has no assets
|
|
179
|
+
"builds.noAssets": "Build #{build} has no assets.",
|
|
180
|
+
"builds.noAssetsRunning": "Build #{build} has no assets yet — it's still building.",
|
|
181
|
+
"builds.noAssetsFailed": "Build #{build} failed before producing any assets.",
|
|
173
182
|
"builds.errorLabel": "Couldn't list builds",
|
|
174
|
-
"releaseList.title": "**{app}** ·
|
|
183
|
+
"releaseList.title.one": "**{app}** · 1 release",
|
|
184
|
+
"releaseList.title.many": "**{app}** · {count} releases",
|
|
175
185
|
"releaseList.none": "**{app}** has no releases yet.",
|
|
176
186
|
"releaseList.noneHint": "cut one from a successful build with `application_release_create`, or just `application_deployment_create`.",
|
|
177
187
|
"releaseList.deployHint": 'deploy an active release with `application_deployment_create version:"x.y.z"`.',
|
|
178
188
|
"releaseList.errorLabel": "Couldn't list releases",
|
|
179
|
-
"deploymentList.title": "**{app}** ·
|
|
189
|
+
"deploymentList.title.one": "**{app}** · 1 deployment",
|
|
190
|
+
"deploymentList.title.many": "**{app}** · {count} deployments",
|
|
180
191
|
"deploymentList.none": "**{app}** has no deployments yet.",
|
|
181
192
|
"deploymentList.group": "{count} scopes (group)",
|
|
182
193
|
"deploymentList.hint": "`application_get` for the live picture, or `application_deployment_update` to drive a rollout.",
|
|
183
194
|
"deploymentList.errorLabel": "Couldn't list deployments",
|
|
184
195
|
// — organization_get tool —
|
|
185
|
-
"overview.title": "Organization overview ·
|
|
196
|
+
"overview.title.one": "Organization overview · 1 application scanned",
|
|
197
|
+
"overview.title.many": "Organization overview · {count} applications scanned",
|
|
186
198
|
"overview.truncated": '_(showing the first {count} — narrow with `organization_get query:"..."`)_',
|
|
187
199
|
"overview.activeRollouts": "Active rollouts ({count})",
|
|
188
200
|
"overview.trouble": "Needs attention ({count})",
|
|
@@ -191,7 +203,8 @@ const english = {
|
|
|
191
203
|
"overview.hintCalm": "everything is steady — nothing rolling out, nothing failed.",
|
|
192
204
|
"overview.errorLabel": "Couldn't build the overview",
|
|
193
205
|
// — application_approval_list tool —
|
|
194
|
-
"approvals.title": "**{app}** ·
|
|
206
|
+
"approvals.title.one": "**{app}** · 1 approval",
|
|
207
|
+
"approvals.title.many": "**{app}** · {count} approvals",
|
|
195
208
|
"approvals.action": "Action",
|
|
196
209
|
"approvals.entity": "Entity",
|
|
197
210
|
"approvals.requestedBy": "Requested by",
|
|
@@ -203,12 +216,88 @@ const english = {
|
|
|
203
216
|
"approvals.actHint": '`application_approval_list action:"approve" approval_id:"{id}"` to let it proceed (uses your permissions).',
|
|
204
217
|
"approvals.errorLabel": "Couldn't load approvals",
|
|
205
218
|
// — application_service_list tool —
|
|
206
|
-
"services.attached": "**{app}** ·
|
|
219
|
+
"services.attached.one": "**{app}** · 1 dependency service",
|
|
220
|
+
"services.attached.many": "**{app}** · {count} dependency services",
|
|
207
221
|
"services.specification": "Type",
|
|
208
222
|
"services.none": "**{app}** has no dependency services attached.",
|
|
209
223
|
"services.catalog": "Available to provision: {catalog}.",
|
|
210
224
|
"services.provisionHint": "provisioning a dependency is a guided flow — create one in the dashboard.",
|
|
211
225
|
"services.errorLabel": "Couldn't load services",
|
|
226
|
+
// — application_service_create tool —
|
|
227
|
+
"createService.errorLabel": "Couldn't provision the service",
|
|
228
|
+
"createService.noSpecs": "**{app}** has no dependency types available to provision here.",
|
|
229
|
+
"createService.pickSpec": "**{app}** — which dependency to provision? ({count} available)",
|
|
230
|
+
"createService.matchAmbiguous": 'Several dependencies match "{query}" — pick one:',
|
|
231
|
+
"createService.category": "Category",
|
|
232
|
+
"createService.provider": "Provider",
|
|
233
|
+
"createService.pickHint": '`application_service_create type:"<name>"` to provision one.',
|
|
234
|
+
"createService.form": "Ready to provision **{spec}** for **{app}** — submit to create it (this creates real cloud resources).",
|
|
235
|
+
"createService.formHint": "submit the panel to provision, or pass `provision:true` with the parameters.",
|
|
236
|
+
"createService.provisioning": "Provisioning **{spec}** as **{name}** — {status}. Real resources are being created.",
|
|
237
|
+
"createService.reused": "**{name}** already exists ({status}) — reusing it, not provisioning a second one.",
|
|
238
|
+
"createService.provisioningHint": "`application_link_create` to link **{name}** to a scope — its connection parameters appear after the link, on the next deploy.",
|
|
239
|
+
// — application_link_create tool —
|
|
240
|
+
"createLink.errorLabel": "Couldn't create the link",
|
|
241
|
+
"createLink.noServices": "**{app}** has no provisioned services to link yet.",
|
|
242
|
+
"createLink.noServicesHint": "`application_service_create` to provision a dependency first.",
|
|
243
|
+
"createLink.pickService": "Which service to link to **{app}**?",
|
|
244
|
+
"createLink.matchAmbiguous": "Several services match — pick one:",
|
|
245
|
+
"createLink.pickHint": '`application_link_create service:"<name>"` to link one.',
|
|
246
|
+
"createLink.noLinkSpec": "No link specification is available for **{service}** in this org.",
|
|
247
|
+
"createLink.form": "Ready to link **{service}** to **{app}** — submit to create the link (a credential link provisions a database user).",
|
|
248
|
+
"createLink.formHint": "submit the panel to create the link, or pass `create:true` with the parameters.",
|
|
249
|
+
"createLink.linking": "Linking **{service}** to {target} — {status}.",
|
|
250
|
+
"createLink.reused": "**{service}** is already linked to {target} ({status}) — reusing that link.",
|
|
251
|
+
"createLink.linkedHint": "redeploy the scope so the new connection parameters reach the runtime.",
|
|
252
|
+
// — application_service_update / application_link_update (run a custom action) —
|
|
253
|
+
"runAction.errorLabel": "Couldn't run the action",
|
|
254
|
+
"runAction.noServices": "**{app}** has no provisioned services to run an action on.",
|
|
255
|
+
"runAction.noServicesHint": "`application_service_create` to provision a dependency first.",
|
|
256
|
+
"runAction.noLinks": "**{app}** has no links to run an action on.",
|
|
257
|
+
"runAction.noLinksHint": "`application_link_create` to link a service first.",
|
|
258
|
+
"runAction.pickService": "Which service to run an action on, in **{app}**?",
|
|
259
|
+
"runAction.serviceAmbiguous": "Several services match — pick one:",
|
|
260
|
+
"runAction.pickServiceHint": '`application_service_update service:"<name>"` to choose one.',
|
|
261
|
+
"runAction.pickLink": "Which link to run an action on, in **{app}**?",
|
|
262
|
+
"runAction.linkAmbiguous": "Several links match — pick one:",
|
|
263
|
+
"runAction.pickLinkHint": '`application_link_update link:"<name>"` to choose one.',
|
|
264
|
+
"runAction.noActions": "**{name}** exposes no runnable actions.",
|
|
265
|
+
"runAction.pickAction": "Which action to run on **{name}**?",
|
|
266
|
+
"runAction.matchAmbiguous": "Several actions match — pick one:",
|
|
267
|
+
"runAction.paramsHeader": "Parameters",
|
|
268
|
+
"runAction.pickHint": 'Pass `action:"<name>"` to choose one.',
|
|
269
|
+
"runAction.form": "Ready to run **{action}** on **{name}** — submit to run it.",
|
|
270
|
+
"runAction.formHint": "submit the panel to run it, or pass `run:true` with the parameters.",
|
|
271
|
+
"runAction.running": "Running **{action}** on **{name}** — {status}.",
|
|
272
|
+
"runAction.ranHint": "the action runs asynchronously; its result appears when it finishes.",
|
|
273
|
+
// — application_service_delete / application_link_delete (deprovision) —
|
|
274
|
+
"deleteEntity.serviceErrorLabel": "Couldn't delete the service",
|
|
275
|
+
"deleteEntity.linkErrorLabel": "Couldn't delete the link",
|
|
276
|
+
"deleteEntity.noServices": "**{app}** has no provisioned services to delete.",
|
|
277
|
+
"deleteEntity.noLinks": "**{app}** has no links to delete.",
|
|
278
|
+
"deleteEntity.pickService": "Which service to delete, in **{app}**?",
|
|
279
|
+
"deleteEntity.serviceAmbiguous": "Several services match — pick one:",
|
|
280
|
+
"deleteEntity.pickServiceHint": '`application_service_delete service:"<name>"` to choose one.',
|
|
281
|
+
"deleteEntity.pickLink": "Which link to delete, in **{app}**?",
|
|
282
|
+
"deleteEntity.linkAmbiguous": "Several links match — pick one:",
|
|
283
|
+
"deleteEntity.pickLinkHint": '`application_link_delete link:"<name>"` to choose one.',
|
|
284
|
+
"deleteEntity.hasLinks": "**{name}** still has {count} active link(s) — they'd be orphaned.",
|
|
285
|
+
"deleteEntity.hasLinksHint": "delete the links first with `application_link_delete`, then the service.",
|
|
286
|
+
"deleteEntity.confirm": "Ready to delete **{name}** and destroy its resources — submit to confirm.",
|
|
287
|
+
"deleteEntity.confirmHint": "submit the panel to delete, or pass `confirm:true`.",
|
|
288
|
+
"deleteEntity.removed": "**{name}** was deleted.",
|
|
289
|
+
"deleteEntity.deprovisioning": "Deleting **{name}** — an agent is deprovisioning its resources.",
|
|
290
|
+
"deleteEntity.deprovisioningHint": "the record is removed once deprovisioning finishes.",
|
|
291
|
+
// — application_parameter_delete tool —
|
|
292
|
+
"deleteParam.errorLabel": "Couldn't delete the parameter",
|
|
293
|
+
"deleteParam.absent": "**{name}** isn't set on **{app}** — nothing to delete.",
|
|
294
|
+
"deleteParam.readOnly": "**{name}** is read-only — a service link injects it.",
|
|
295
|
+
"deleteParam.readOnlyHint": "delete the link that exports it with `application_link_delete`.",
|
|
296
|
+
"deleteParam.confirm": "Ready to delete **{name}** from **{app}** — submit to confirm.",
|
|
297
|
+
"deleteParam.confirmHint": "submit the panel to delete, or pass `confirm:true`.",
|
|
298
|
+
"deleteParam.deleted": "Deleted **{name}** from **{app}**.",
|
|
299
|
+
"deleteParam.deletedHint": "the change applies on the next deploy.",
|
|
300
|
+
"deleteParam.failed": "Couldn't delete **{name}**: {message}",
|
|
212
301
|
// — application_deployment_create tool —
|
|
213
302
|
"deploy.noScopeTypes": "This app has no scopes yet. Available scope types: {types}.",
|
|
214
303
|
"deploy.createScopeHint": '`application_scope_create name:"dev" type:"{type}"`',
|
|
@@ -238,10 +327,13 @@ const english = {
|
|
|
238
327
|
"createRelease.deployHint": "`application_deployment_create release_id:{id}` to ship it.",
|
|
239
328
|
"createRelease.errorLabel": "Couldn't create release",
|
|
240
329
|
// — application_parameter_create tool —
|
|
241
|
-
"setParams.created": "Set
|
|
242
|
-
"setParams.
|
|
243
|
-
"setParams.
|
|
330
|
+
"setParams.created.one": "Set 1 new parameter on **{app}**: {names}.",
|
|
331
|
+
"setParams.created.many": "Set {count} new parameters on **{app}**: {names}.",
|
|
332
|
+
"setParams.updated.one": "Updated 1 existing parameter on **{app}**: {names}.",
|
|
333
|
+
"setParams.updated.many": "Updated {count} existing parameters on **{app}**: {names}.",
|
|
334
|
+
"setParams.mixed": "Set {total} parameters on **{app}** (new: {created}, updated: {updated}): {names}.",
|
|
244
335
|
"setParams.applyHint": "values apply on the next `application_deployment_create`.",
|
|
336
|
+
"setParams.scopeDimConflict": "Can't target both a scope and dimensions for `{name}` — a scope already locates the value. Pick one.",
|
|
245
337
|
"setParams.partial": "Parameter update failed partway: {message}\nAlready-created parameters remain — `application_parameter_list` to inspect.",
|
|
246
338
|
"setParams.errorLabel": "Parameter update failed",
|
|
247
339
|
// — application_create tool —
|
|
@@ -326,6 +418,8 @@ const spanish = {
|
|
|
326
418
|
"header.type": "Tipo",
|
|
327
419
|
"header.secret": "Secreto",
|
|
328
420
|
"header.value": "Valor",
|
|
421
|
+
"header.values": "Valores",
|
|
422
|
+
"header.source": "Origen",
|
|
329
423
|
"header.metric": "Métrica",
|
|
330
424
|
"header.now": "Ahora",
|
|
331
425
|
"header.avg": "Prom",
|
|
@@ -418,13 +512,17 @@ const spanish = {
|
|
|
418
512
|
"params.count.many": "**{app}** · {count} parámetros",
|
|
419
513
|
"params.unset": "_sin valor_",
|
|
420
514
|
"params.applyHint": "los valores cambiados aplican en el próximo `application_deployment_create`.",
|
|
515
|
+
"params.effectiveFor": "**{app}** · parámetros efectivos para **{scope}**",
|
|
516
|
+
"params.ctxApplication": "Aplicación",
|
|
517
|
+
"params.ctxScope": "{scope} (scope)",
|
|
421
518
|
"params.errorLabel": "No pude listar los parámetros",
|
|
422
519
|
"logs.noun": "Los logs",
|
|
423
520
|
"logs.noScopes": "**{app}** no tiene scopes, así que todavía no hay logs de runtime.",
|
|
424
521
|
"logs.noScopesHint": "`application_deployment_create` después de crear un scope — los logs aparecen cuando algo corre.",
|
|
425
522
|
"logs.empty": "No hay líneas de log para **{app}**{scope}.",
|
|
426
523
|
"logs.openInDashboard": "abrir logs en el dashboard",
|
|
427
|
-
"logs.lastLines": "**{app}**{scope} —
|
|
524
|
+
"logs.lastLines.one": "**{app}**{scope} — última línea",
|
|
525
|
+
"logs.lastLines.many": "**{app}**{scope} — últimas {count} líneas",
|
|
428
526
|
"logs.errorLabel": "No pude leer los logs",
|
|
429
527
|
"logs.errorSuffix": "La vista Logs del dashboard puede tenerlos igual.",
|
|
430
528
|
"metrics.noun": "Las métricas",
|
|
@@ -435,7 +533,8 @@ const spanish = {
|
|
|
435
533
|
"metrics.title": "**{app}** · {scope} — últimas {window}",
|
|
436
534
|
"metrics.errorLabel": "No pude cargar las métricas",
|
|
437
535
|
// — application_build_list tool —
|
|
438
|
-
"builds.title": "**{app}** ·
|
|
536
|
+
"builds.title.one": "**{app}** · 1 build reciente",
|
|
537
|
+
"builds.title.many": "**{app}** · {count} builds recientes",
|
|
439
538
|
"builds.branch": "Branch",
|
|
440
539
|
"builds.commit": "Commit",
|
|
441
540
|
"builds.released": "Released",
|
|
@@ -446,20 +545,25 @@ const spanish = {
|
|
|
446
545
|
"builds.waiting": "el build #{build} sigue corriendo — `application_build_list` de nuevo en un momento para chequear.",
|
|
447
546
|
"builds.upToDate": "el último build exitoso ya está publicado.",
|
|
448
547
|
"builds.assetsTitle": "Assets del build #{build}",
|
|
449
|
-
"builds.noAssets": "El build #{build} no tiene assets
|
|
548
|
+
"builds.noAssets": "El build #{build} no tiene assets.",
|
|
549
|
+
"builds.noAssetsRunning": "El build #{build} todavía no tiene assets — sigue compilando.",
|
|
550
|
+
"builds.noAssetsFailed": "El build #{build} falló antes de producir assets.",
|
|
450
551
|
"builds.errorLabel": "No pude listar los builds",
|
|
451
|
-
"releaseList.title": "**{app}** ·
|
|
552
|
+
"releaseList.title.one": "**{app}** · 1 release",
|
|
553
|
+
"releaseList.title.many": "**{app}** · {count} releases",
|
|
452
554
|
"releaseList.none": "**{app}** todavía no tiene releases.",
|
|
453
555
|
"releaseList.noneHint": "cortá uno desde un build exitoso con `application_release_create`, o directamente `application_deployment_create`.",
|
|
454
556
|
"releaseList.deployHint": 'deployá un release activo con `application_deployment_create version:"x.y.z"`.',
|
|
455
557
|
"releaseList.errorLabel": "No pude listar los releases",
|
|
456
|
-
"deploymentList.title": "**{app}** ·
|
|
558
|
+
"deploymentList.title.one": "**{app}** · 1 deployment",
|
|
559
|
+
"deploymentList.title.many": "**{app}** · {count} deployments",
|
|
457
560
|
"deploymentList.none": "**{app}** todavía no tiene deployments.",
|
|
458
561
|
"deploymentList.group": "{count} scopes (grupo)",
|
|
459
562
|
"deploymentList.hint": "`application_get` para la foto en vivo, o `application_deployment_update` para conducir un rollout.",
|
|
460
563
|
"deploymentList.errorLabel": "No pude listar los deployments",
|
|
461
564
|
// — organization_get tool —
|
|
462
|
-
"overview.title": "Panorama de la organización ·
|
|
565
|
+
"overview.title.one": "Panorama de la organización · 1 aplicación escaneada",
|
|
566
|
+
"overview.title.many": "Panorama de la organización · {count} aplicaciones escaneadas",
|
|
463
567
|
"overview.truncated": '_(muestro las primeras {count} — acotá con `organization_get query:"..."`)_',
|
|
464
568
|
"overview.activeRollouts": "Rollouts activos ({count})",
|
|
465
569
|
"overview.trouble": "Requiere atención ({count})",
|
|
@@ -468,7 +572,8 @@ const spanish = {
|
|
|
468
572
|
"overview.hintCalm": "todo tranquilo — nada desplegándose, nada falló.",
|
|
469
573
|
"overview.errorLabel": "No pude armar el panorama",
|
|
470
574
|
// — application_approval_list tool —
|
|
471
|
-
"approvals.title": "**{app}** ·
|
|
575
|
+
"approvals.title.one": "**{app}** · 1 aprobación",
|
|
576
|
+
"approvals.title.many": "**{app}** · {count} aprobaciones",
|
|
472
577
|
"approvals.action": "Acción",
|
|
473
578
|
"approvals.entity": "Entidad",
|
|
474
579
|
"approvals.requestedBy": "Solicitada por",
|
|
@@ -480,12 +585,88 @@ const spanish = {
|
|
|
480
585
|
"approvals.actHint": '`application_approval_list action:"approve" approval_id:"{id}"` para dejarla continuar (usa tus permisos).',
|
|
481
586
|
"approvals.errorLabel": "No pude cargar las aprobaciones",
|
|
482
587
|
// — application_service_list tool —
|
|
483
|
-
"services.attached": "**{app}** ·
|
|
588
|
+
"services.attached.one": "**{app}** · 1 servicio de dependencia",
|
|
589
|
+
"services.attached.many": "**{app}** · {count} servicios de dependencia",
|
|
484
590
|
"services.specification": "Tipo",
|
|
485
591
|
"services.none": "**{app}** no tiene servicios de dependencia conectados.",
|
|
486
592
|
"services.catalog": "Disponibles para aprovisionar: {catalog}.",
|
|
487
593
|
"services.provisionHint": "aprovisionar una dependencia es un flujo guiado — creala en el dashboard.",
|
|
488
594
|
"services.errorLabel": "No pude cargar los servicios",
|
|
595
|
+
// — application_service_create tool —
|
|
596
|
+
"createService.errorLabel": "No pude provisionar el servicio",
|
|
597
|
+
"createService.noSpecs": "**{app}** no tiene tipos de dependencia disponibles para provisionar acá.",
|
|
598
|
+
"createService.pickSpec": "**{app}** — ¿qué dependencia provisionar? ({count} disponibles)",
|
|
599
|
+
"createService.matchAmbiguous": 'Varias dependencias coinciden con "{query}" — elegí una:',
|
|
600
|
+
"createService.category": "Categoría",
|
|
601
|
+
"createService.provider": "Proveedor",
|
|
602
|
+
"createService.pickHint": '`application_service_create type:"<nombre>"` para provisionar una.',
|
|
603
|
+
"createService.form": "Listo para provisionar **{spec}** en **{app}** — confirmá para crearlo (crea recursos cloud reales).",
|
|
604
|
+
"createService.formHint": "confirmá en el panel para provisionar, o pasá `provision:true` con los parámetros.",
|
|
605
|
+
"createService.provisioning": "Provisionando **{spec}** como **{name}** — {status}. Se están creando recursos reales.",
|
|
606
|
+
"createService.reused": "**{name}** ya existe ({status}) — lo reuso, no provisiono un segundo.",
|
|
607
|
+
"createService.provisioningHint": "`application_link_create` para linkear **{name}** a un scope — sus parámetros de conexión aparecen después del link, en el próximo deploy.",
|
|
608
|
+
// — application_link_create tool —
|
|
609
|
+
"createLink.errorLabel": "No pude crear el link",
|
|
610
|
+
"createLink.noServices": "**{app}** todavía no tiene servicios provisionados para linkear.",
|
|
611
|
+
"createLink.noServicesHint": "`application_service_create` para provisionar una dependencia primero.",
|
|
612
|
+
"createLink.pickService": "¿Qué servicio linkear a **{app}**?",
|
|
613
|
+
"createLink.matchAmbiguous": "Varios servicios coinciden — elegí uno:",
|
|
614
|
+
"createLink.pickHint": '`application_link_create service:"<nombre>"` para linkear uno.',
|
|
615
|
+
"createLink.noLinkSpec": "No hay link specification disponible para **{service}** en esta org.",
|
|
616
|
+
"createLink.form": "Listo para linkear **{service}** a **{app}** — confirmá para crear el link (un link de credenciales provisiona un usuario de base de datos).",
|
|
617
|
+
"createLink.formHint": "confirmá en el panel para crear el link, o pasá `create:true` con los parámetros.",
|
|
618
|
+
"createLink.linking": "Linkeando **{service}** a {target} — {status}.",
|
|
619
|
+
"createLink.reused": "**{service}** ya está linkeado a {target} ({status}) — reuso ese link.",
|
|
620
|
+
"createLink.linkedHint": "redeployá el scope para que los nuevos parámetros de conexión lleguen al runtime.",
|
|
621
|
+
// — application_service_update / application_link_update (correr una custom action) —
|
|
622
|
+
"runAction.errorLabel": "No pude correr la acción",
|
|
623
|
+
"runAction.noServices": "**{app}** no tiene servicios provisionados para correr una acción.",
|
|
624
|
+
"runAction.noServicesHint": "`application_service_create` para provisionar una dependencia primero.",
|
|
625
|
+
"runAction.noLinks": "**{app}** no tiene links para correr una acción.",
|
|
626
|
+
"runAction.noLinksHint": "`application_link_create` para linkear un servicio primero.",
|
|
627
|
+
"runAction.pickService": "¿En qué servicio correr una acción, en **{app}**?",
|
|
628
|
+
"runAction.serviceAmbiguous": "Varios servicios coinciden — elegí uno:",
|
|
629
|
+
"runAction.pickServiceHint": '`application_service_update service:"<nombre>"` para elegir uno.',
|
|
630
|
+
"runAction.pickLink": "¿En qué link correr una acción, en **{app}**?",
|
|
631
|
+
"runAction.linkAmbiguous": "Varios links coinciden — elegí uno:",
|
|
632
|
+
"runAction.pickLinkHint": '`application_link_update link:"<nombre>"` para elegir uno.',
|
|
633
|
+
"runAction.noActions": "**{name}** no expone acciones ejecutables.",
|
|
634
|
+
"runAction.pickAction": "¿Qué acción correr en **{name}**?",
|
|
635
|
+
"runAction.matchAmbiguous": "Varias acciones coinciden — elegí una:",
|
|
636
|
+
"runAction.paramsHeader": "Parámetros",
|
|
637
|
+
"runAction.pickHint": 'Pasá `action:"<nombre>"` para elegir una.',
|
|
638
|
+
"runAction.form": "Listo para correr **{action}** en **{name}** — confirmá para ejecutarla.",
|
|
639
|
+
"runAction.formHint": "confirmá en el panel para correrla, o pasá `run:true` con los parámetros.",
|
|
640
|
+
"runAction.running": "Corriendo **{action}** en **{name}** — {status}.",
|
|
641
|
+
"runAction.ranHint": "la acción corre de forma asíncrona; su resultado aparece cuando termina.",
|
|
642
|
+
// — application_service_delete / application_link_delete (deprovision) —
|
|
643
|
+
"deleteEntity.serviceErrorLabel": "No pude borrar el servicio",
|
|
644
|
+
"deleteEntity.linkErrorLabel": "No pude borrar el link",
|
|
645
|
+
"deleteEntity.noServices": "**{app}** no tiene servicios provisionados para borrar.",
|
|
646
|
+
"deleteEntity.noLinks": "**{app}** no tiene links para borrar.",
|
|
647
|
+
"deleteEntity.pickService": "¿Qué servicio borrar, en **{app}**?",
|
|
648
|
+
"deleteEntity.serviceAmbiguous": "Varios servicios coinciden — elegí uno:",
|
|
649
|
+
"deleteEntity.pickServiceHint": '`application_service_delete service:"<nombre>"` para elegir uno.',
|
|
650
|
+
"deleteEntity.pickLink": "¿Qué link borrar, en **{app}**?",
|
|
651
|
+
"deleteEntity.linkAmbiguous": "Varios links coinciden — elegí uno:",
|
|
652
|
+
"deleteEntity.pickLinkHint": '`application_link_delete link:"<nombre>"` para elegir uno.',
|
|
653
|
+
"deleteEntity.hasLinks": "**{name}** todavía tiene {count} link(s) activo(s) — quedarían huérfanos.",
|
|
654
|
+
"deleteEntity.hasLinksHint": "borrá los links primero con `application_link_delete`, después el servicio.",
|
|
655
|
+
"deleteEntity.confirm": "Listo para borrar **{name}** y destruir sus recursos — confirmá para borrar.",
|
|
656
|
+
"deleteEntity.confirmHint": "confirmá en el panel para borrar, o pasá `confirm:true`.",
|
|
657
|
+
"deleteEntity.removed": "**{name}** fue borrado.",
|
|
658
|
+
"deleteEntity.deprovisioning": "Borrando **{name}** — un agente está desaprovisionando sus recursos.",
|
|
659
|
+
"deleteEntity.deprovisioningHint": "el registro se elimina cuando termina el desaprovisionamiento.",
|
|
660
|
+
// — application_parameter_delete tool —
|
|
661
|
+
"deleteParam.errorLabel": "No pude borrar el parámetro",
|
|
662
|
+
"deleteParam.absent": "**{name}** no está seteado en **{app}** — nada que borrar.",
|
|
663
|
+
"deleteParam.readOnly": "**{name}** es de solo lectura — lo inyecta un link de servicio.",
|
|
664
|
+
"deleteParam.readOnlyHint": "borrá el link que lo exporta con `application_link_delete`.",
|
|
665
|
+
"deleteParam.confirm": "Listo para borrar **{name}** de **{app}** — confirmá para borrar.",
|
|
666
|
+
"deleteParam.confirmHint": "confirmá en el panel para borrar, o pasá `confirm:true`.",
|
|
667
|
+
"deleteParam.deleted": "Borré **{name}** de **{app}**.",
|
|
668
|
+
"deleteParam.deletedHint": "el cambio aplica en el próximo deploy.",
|
|
669
|
+
"deleteParam.failed": "No pude borrar **{name}**: {message}",
|
|
489
670
|
"deploy.noScopeTypes": "Esta app no tiene scopes todavía. Tipos de scope disponibles: {types}.",
|
|
490
671
|
"deploy.createScopeHint": '`application_scope_create name:"dev" type:"{type}"`',
|
|
491
672
|
"deploy.usingRelease": "Usando la release existente **{semver}** (#{id}). ",
|
|
@@ -511,10 +692,13 @@ const spanish = {
|
|
|
511
692
|
"createRelease.from": " desde el build #{build} ({branch} @{commit}, {when})",
|
|
512
693
|
"createRelease.deployHint": "`application_deployment_create release_id:{id}` para publicarla.",
|
|
513
694
|
"createRelease.errorLabel": "No pude crear la release",
|
|
514
|
-
"setParams.created": "Configuré
|
|
515
|
-
"setParams.
|
|
516
|
-
"setParams.
|
|
695
|
+
"setParams.created.one": "Configuré 1 parámetro nuevo en **{app}**: {names}.",
|
|
696
|
+
"setParams.created.many": "Configuré {count} parámetros nuevos en **{app}**: {names}.",
|
|
697
|
+
"setParams.updated.one": "Actualicé 1 parámetro existente en **{app}**: {names}.",
|
|
698
|
+
"setParams.updated.many": "Actualicé {count} parámetros existentes en **{app}**: {names}.",
|
|
699
|
+
"setParams.mixed": "Configuré {total} parámetros en **{app}** (nuevos: {created}, actualizados: {updated}): {names}.",
|
|
517
700
|
"setParams.applyHint": "los valores aplican en el próximo `application_deployment_create`.",
|
|
701
|
+
"setParams.scopeDimConflict": "No se puede apuntar a un scope y dimensiones a la vez para `{name}` — el scope ya ubica el valor. Elegí uno.",
|
|
518
702
|
"setParams.partial": "La actualización de parámetros falló a mitad de camino: {message}\nLos parámetros ya creados quedan — `application_parameter_list` para inspeccionar.",
|
|
519
703
|
"setParams.errorLabel": "Falló la actualización de parámetros",
|
|
520
704
|
"createApp.form": "Para crear una aplicación necesito la URL de un repo git y un nombre (el formulario los pide).\nNamespaces: {namespaces}.",
|
package/dist/np/client.js
CHANGED