Implement external_select block kit for Slack#397
Conversation
- block_suggestion handler for slack webgook - new <ExternalSelect/> to chat modal jsx - new .onOptionsLoad()
|
@Franz1241 is attempting to deploy a commit to the Vercel Labs Team on Vercel. A member of the Team first needs to authorize it. |
|
Hey @dancer hope its okay to tag you. I noticed youve worked on some Slack-related PRs recently and thought you might be the right person to review this |
|
ping me anytime and will take a look later today |
|
Tysm |
# Conflicts: # packages/adapter-slack/src/index.test.ts
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
perfect this is great thank you so much @Franz1241 sorry for getting to it a bit late will be on the next release cc: @bensabic |
|
also ping me anytime ❤️ will make a follow up to this pr as i see 2 things e.g. initial_option & option_groups |
|
Awesome, thanks a lot 🙌 |
* feat(slack): external_select's block kit implementation - block_suggestion handler for slack webgook - new <ExternalSelect/> to chat modal jsx - new .onOptionsLoad() * feat: add tests for new external_selec implementation * feat(docs): Slack externa_select docs * chore: changeset * chore: remove docs from changeset --------- Co-authored-by: dancer <josh@afterima.ge>
external_select as per Slack Docs
Summary
<ExternalSelect>modal element backed by Slack'sexternal_selectblock, so modals can populate dropdowns from a remote/large data source instead of being limited to static<Select>optionsonOptionsLoad(actionId, handler)for registering loaders. Handlers receive{actionId, query, user, adapter, raw}and return normalized{label, value}[]. Specific action IDs run before catch-all handlers; per-handler errors are isolatedblock_suggestioninteractive payloads, callschat.processOptionsLoad, and converts results into Slack option objects (capped at 100, per Slack's limit).optionsarray and logs a warning, rather than failing the request or leaving Slack hanging.Test plan
-
pnpm validateruns 16/16Closes #398