@objectstack/platform-objects 7.2.0 → 7.2.1

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.
@@ -8,9 +8,13 @@ var SETUP_APP = {
8
8
  icon: "settings",
9
9
  active: true,
10
10
  isDefault: false,
11
- // ADR-0010 — core admin UI must not be overlay-edited or deleted.
12
- _lock: "full",
13
- _lockReason: "Core admin UI shipped by @objectstack/platform-objects \u2014 see ADR-0010.",
11
+ // ADR-0010 §3.7 author-facing protection block. Loader translates
12
+ // this into the `_lock` envelope at registration time.
13
+ protection: {
14
+ lock: "full",
15
+ reason: "Core admin UI shipped by @objectstack/platform-objects \u2014 see ADR-0010.",
16
+ docsUrl: "https://docs.objectstack.ai/adr/0010-metadata-protection"
17
+ },
14
18
  branding: {
15
19
  primaryColor: "#475569"
16
20
  // Slate-600 — neutral admin palette
@@ -242,6 +246,31 @@ var STUDIO_APP = {
242
246
  // Indigo-500 — distinct from Setup's slate
243
247
  },
244
248
  requiredPermissions: ["studio.access"],
249
+ contextSelectors: [
250
+ {
251
+ // Package scope — pinned to the sidebar header. Selecting a package
252
+ // injects `{active_package}` into every `metadata:resource` nav
253
+ // item below, so the whole workbench filters to that package in
254
+ // one click. Options come from the installed-packages REST surface,
255
+ // narrowed to project-scoped packages: this dropdown exists so
256
+ // third-party developers can scope to *their* custom package, so we
257
+ // deliberately hide the platform's own system/cloud kernel packages
258
+ // (auth, security, audit, queue, …) which are not user-authored.
259
+ id: "active_package",
260
+ label: "Package",
261
+ icon: "package",
262
+ optionsSource: {
263
+ endpoint: "/api/v1/packages",
264
+ valueKey: "manifest.id",
265
+ labelKey: "manifest.name",
266
+ filter: [{ key: "manifest.scope", op: "nin", value: ["system", "cloud"] }]
267
+ },
268
+ includeAll: true,
269
+ allValue: "",
270
+ persist: "query",
271
+ placement: "sidebar_header"
272
+ }
273
+ ],
245
274
  navigation: [
246
275
  {
247
276
  id: "group_overview",
@@ -272,7 +301,7 @@ var STUDIO_APP = {
272
301
  type: "component",
273
302
  label: "Objects",
274
303
  componentRef: "metadata:resource",
275
- params: { type: "object" },
304
+ params: { type: "object", package: "{active_package}" },
276
305
  icon: "box"
277
306
  },
278
307
  {
@@ -280,7 +309,7 @@ var STUDIO_APP = {
280
309
  type: "component",
281
310
  label: "Validations",
282
311
  componentRef: "metadata:resource",
283
- params: { type: "validation" },
312
+ params: { type: "validation", package: "{active_package}" },
284
313
  icon: "check-square"
285
314
  }
286
315
  ]
@@ -297,7 +326,7 @@ var STUDIO_APP = {
297
326
  type: "component",
298
327
  label: "Apps",
299
328
  componentRef: "metadata:resource",
300
- params: { type: "app" },
329
+ params: { type: "app", package: "{active_package}" },
301
330
  icon: "app-window"
302
331
  },
303
332
  {
@@ -305,7 +334,7 @@ var STUDIO_APP = {
305
334
  type: "component",
306
335
  label: "Views",
307
336
  componentRef: "metadata:resource",
308
- params: { type: "view" },
337
+ params: { type: "view", package: "{active_package}" },
309
338
  icon: "table"
310
339
  },
311
340
  {
@@ -313,7 +342,7 @@ var STUDIO_APP = {
313
342
  type: "component",
314
343
  label: "Pages",
315
344
  componentRef: "metadata:resource",
316
- params: { type: "page" },
345
+ params: { type: "page", package: "{active_package}" },
317
346
  icon: "file-text"
318
347
  },
319
348
  {
@@ -321,7 +350,7 @@ var STUDIO_APP = {
321
350
  type: "component",
322
351
  label: "Dashboards",
323
352
  componentRef: "metadata:resource",
324
- params: { type: "dashboard" },
353
+ params: { type: "dashboard", package: "{active_package}" },
325
354
  icon: "layout-dashboard"
326
355
  },
327
356
  {
@@ -329,7 +358,7 @@ var STUDIO_APP = {
329
358
  type: "component",
330
359
  label: "Reports",
331
360
  componentRef: "metadata:resource",
332
- params: { type: "report" },
361
+ params: { type: "report", package: "{active_package}" },
333
362
  icon: "bar-chart-3"
334
363
  }
335
364
  ]
@@ -346,7 +375,7 @@ var STUDIO_APP = {
346
375
  type: "component",
347
376
  label: "Actions",
348
377
  componentRef: "metadata:resource",
349
- params: { type: "action" },
378
+ params: { type: "action", package: "{active_package}" },
350
379
  icon: "mouse-pointer-click"
351
380
  },
352
381
  {
@@ -354,7 +383,7 @@ var STUDIO_APP = {
354
383
  type: "component",
355
384
  label: "Hooks",
356
385
  componentRef: "metadata:resource",
357
- params: { type: "hook" },
386
+ params: { type: "hook", package: "{active_package}" },
358
387
  icon: "webhook"
359
388
  }
360
389
  ]
@@ -371,7 +400,7 @@ var STUDIO_APP = {
371
400
  type: "component",
372
401
  label: "Flows",
373
402
  componentRef: "metadata:resource",
374
- params: { type: "flow" },
403
+ params: { type: "flow", package: "{active_package}" },
375
404
  icon: "git-branch"
376
405
  },
377
406
  {
@@ -379,7 +408,7 @@ var STUDIO_APP = {
379
408
  type: "component",
380
409
  label: "Workflow Rules",
381
410
  componentRef: "metadata:resource",
382
- params: { type: "workflow" },
411
+ params: { type: "workflow", package: "{active_package}" },
383
412
  icon: "zap"
384
413
  },
385
414
  {
@@ -387,7 +416,7 @@ var STUDIO_APP = {
387
416
  type: "component",
388
417
  label: "Approval Processes",
389
418
  componentRef: "metadata:resource",
390
- params: { type: "approval" },
419
+ params: { type: "approval", package: "{active_package}" },
391
420
  icon: "check-circle"
392
421
  }
393
422
  ]
@@ -406,7 +435,7 @@ var STUDIO_APP = {
406
435
  type: "component",
407
436
  label: "Agents",
408
437
  componentRef: "metadata:resource",
409
- params: { type: "agent" },
438
+ params: { type: "agent", package: "{active_package}" },
410
439
  icon: "bot"
411
440
  },
412
441
  {
@@ -414,7 +443,7 @@ var STUDIO_APP = {
414
443
  type: "component",
415
444
  label: "Tools",
416
445
  componentRef: "metadata:resource",
417
- params: { type: "tool" },
446
+ params: { type: "tool", package: "{active_package}" },
418
447
  icon: "wrench"
419
448
  },
420
449
  {
@@ -422,7 +451,7 @@ var STUDIO_APP = {
422
451
  type: "component",
423
452
  label: "Skills",
424
453
  componentRef: "metadata:resource",
425
- params: { type: "skill" },
454
+ params: { type: "skill", package: "{active_package}" },
426
455
  icon: "brain"
427
456
  }
428
457
  ]
@@ -475,7 +504,7 @@ var STUDIO_APP = {
475
504
  type: "component",
476
505
  label: "Email Templates",
477
506
  componentRef: "metadata:resource",
478
- params: { type: "email_template" },
507
+ params: { type: "email_template", package: "{active_package}" },
479
508
  icon: "mail"
480
509
  }
481
510
  ]