slackapi / python-slack-sdk

Slack Developer Kit for Python
https://slack.dev/python-slack-sdk/
MIT License
3.83k stars 838 forks source link

Support all possible fields for RichTextElementParts.Date #1533

Closed deppe closed 3 weeks ago

deppe commented 1 month ago

The slack_sdk.models.blocks.RichTextElementsParts.Date type supports timestamp, but the actual "date" rich text element supports other fields like url, fallback, format. Can this be extended to properly support all available fields?

documentation: https://api.slack.com/reference/block-kit/blocks#rich_text:~:text=date-,The%20following%20are%20the%20properties%20of%20the,object%20type,-in%20the

block builder example: https://app.slack.com/block-kit-builder/TG4KUE8JV#%7B%22blocks%22:%5B%7B%22type%22:%22rich_text%22,%22elements%22:%5B%7B%22type%22:%22rich_text_section%22,%22elements%22:%5B%7B%22type%22:%22date%22,%22timestamp%22:1720710212,%22format%22:%22%7Bdate_num%7D%20at%20%7Btime%7D%22,%22fallback%22:%22timey%22%7D%5D%7D%5D%7D%5D%7D

vs actual type in slack_sdk library: https://github.com/slackapi/python-slack-sdk/blob/main/slack_sdk/models/blocks/block_elements.py#L2097-L2112

Category (place an x in each of the [ ])

Requirements

Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.

seratch commented 1 month ago

Hi @deppe, thanks for taking the time to report this. You're right that rich text block elements were recently enhanced for third-party apps. Consequently, the model classes in this SDK do not yet support all the newly added properties. Our Java SDK recently resolved the same issue, so the Python SDK can follow suit: https://github.com/slackapi/java-slack-sdk/commit/d226674b3b7bececb40548283d35fdc701c4a3f7

We will resolve this in future releases. If you're interested in contributing to this SDK, your pull requests would be greatly appreciated.