adobe / adobe/da-nx

Make the chat "+" menu extensible from org/site configuration

Open
#696 0 comments 0 reactions 0 assignees View on GitHub
ew
Dominant language
JavaScript
Stars
8
Forks
38
Avg merge
1d 11h
Merged PRs (30d)
44

Description

PR [da-nx#695](https://github.com/adobe/da-nx/pull/695) adds **Manage Enterprise Context** as another hard-coded Coworker menu item. This is acceptable as an interim step, but integrations should not require a da-nx release for every new action.

Extend the chat "+" menu using the same configuration model as Canvas’s Prepare menu:

- da-live loads org and site configuration through `fetchDaConfigs()`.
- Merge built-in, org, and site entries with precedence **built-in -> org -> site**.
- Pass normalized extension entries to whichever chat implementation `loadChat()` returns (`nx-chat` or `nx-chat-ao`).
- da-nx exposes a stable property for additional menu items and dispatches a composed custom event when an extension item is selected.
- da-live owns the resulting action, initially supporting safe external links and host-defined handlers.
- Re-evaluate entries when the active org/site changes.

Suggested entry shape:

```json
{
"id": "enterprise-context",
"title": "Manage Enterprise Context",
"icon": "context",
"href": "https://experience.adobe.com/#/experiencemanager/enterprise-context"
}
```

Contributor guide

Open the contributing guide

Research direction

Start by tracing da-live's fetchDaConfigs() flow and the loadChat() implementations for nx-chat and nx-chat-ao, then compare their extension handling with Canvas's Prepare menu configuration model. Done means built-in, org, and site entries merge in the stated precedence, active org/site changes re-evaluate the menu, and da-nx emits the composed selection event for da-live to handle.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.