EnxDev opened a new pull request, #40440:
URL: https://github.com/apache/superset/pull/40440

   ### SUMMARY
   
   Wires up the `superset.chatbot` contribution point in the host app's 
frontend API and `views` namespace, and adds `getActiveChatbot()` resolution 
logic.
   
   **What this introduces:**
   - `views.registerChatbot()` — extensions call this to register their chatbot 
provider
   - `getActiveChatbot(adminSelectedId, enabledMap)` — resolves the active 
chatbot: first-to-register, or the admin-pinned extension if set and enabled
   - `subscribeToLocation(CHATBOT_LOCATION, cb)` — reactive hook so 
`ChatbotMount` re-resolves after any extension registers
   
   **Stack:**
   1. [Contribution point 
definition](https://github.com/apache/superset/pull/40439) ← merged first
   2. **This PR** — frontend API entry point
   3. Eager loading at startup
   4. Admin configuration UI
   5. Backend settings persistence & permissions
   6. Context sharing namespaces
   
   ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
   
   N/A — no visible UI change yet.
   
   ### TESTING INSTRUCTIONS
   
   1. In a test extension: `window.superset.views.registerChatbot({ id: 
'my-bot', provider: () => <div>Hi</div> })`
   2. Verify `getActiveChatbot(null, {})` returns the registered chatbot
   3. Verify `ChatbotMount` renders the provider output in the bottom-right 
corner
   
   ### ADDITIONAL INFORMATION
   
   - [ ] Has associated issue:
   - [ ] Required feature flags:
   - [x] Changes UI
   - [ ] Includes DB Migration
   - [x] Introduces new feature or API
   - [ ] Removes existing feature or API


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to