discourse/spec/serializers
Alan Guo Xiang Tan cdba864598
DEV: Support description for properties in objects schema (#26172)
Why this change?

When editing a objects typed theme setting, the input fields which are
rendered should include a description so that the user knows the purpose
of the field which they are changing.

What does this change do?

This change adds support for adding description to each property in the
schema for an object by following a given convention in the locale file.

For a schema like this:

```
objects_setting:
  type: objects
  schema:
    name: section
    properties:
      name:
        type: string
        required: true
      links:
        type: objects
        schema:
          name: link
          properties:
            name:
              type: string
              required: true
              validations:
                max_length: 20
            url:
              type: string
```

Description for each property in the object can be added like so:

```
en:
  theme_metadata:
    settings:
      objects_setting:
        description: <description> for the setting
        schema:
          properties:
            name: <description for the name property>
            links:
              name: <description for the name property in link>
              url: <description for the url property in link>
```

If the a description is not present, the input field will simply not
have an description.

Also note that a description for a theme setting can now be added like
so:

```
en:
  theme_metadata:
    settings:
      some_other_setting: <This will be used as the description>
      objects_setting:
        description: <This will also be used as the description>
```
2024-03-15 07:47:42 +08:00
..
concerns DEV: Update rubocop-discourse to latest version 2024-03-04 15:08:35 +01:00
about_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
admin_plugin_serializer_spec.rb DEV: Update the rubocop-discourse gem 2023-06-26 11:41:52 +02:00
admin_user_action_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
admin_user_list_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
basic_group_serializer_spec.rb DEV: Remove full group refreshes from tests (#25414) 2024-01-25 14:28:26 +08:00
basic_group_user_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
basic_post_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
basic_reviewable_flagged_post_serializer_spec.rb DEV: Update the rubocop-discourse gem 2023-06-26 11:41:52 +02:00
basic_reviewable_queued_post_serializer_spec.rb DEV: Update the rubocop-discourse gem 2023-06-26 11:41:52 +02:00
basic_reviewable_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
basic_reviewable_user_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
basic_user_serializer_spec.rb DEV: Update rubocop-discourse to latest version 2024-03-04 15:08:35 +01:00
category_detailed_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
category_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
category_upload_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
current_user_serializer_spec.rb FIX: serialize can_ignore_users (#25672) 2024-02-14 15:17:19 +11:00
detailed_user_badge_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
directory_item_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
emoji_serializer_spec.rb DEV: Update the rubocop-discourse gem 2023-06-26 11:41:52 +02:00
found_user_serializer_spec.rb DEV: Update rubocop-discourse to latest version 2024-03-04 15:08:35 +01:00
found_user_with_status_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
group_show_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
group_user_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
group_user_with_custom_fields_serializer_spec.rb FEATURE: Hide user status when user is hiding public profile and presence (#24300) 2024-02-26 17:40:48 +04:00
invite_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
listable_topic_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
new_post_result_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
notification_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
pending_post_serializer_spec.rb FIX: Attribute pending post to author in `PendingPostSerialier` (#23369) 2023-09-03 22:14:51 +00:00
post_revision_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
post_serializer_spec.rb DEV: Update rubocop-discourse to latest version 2024-03-04 15:08:35 +01:00
poster_serializer_spec.rb FIX: Include group flair in homepage category topic lists (#21268) 2023-04-27 10:18:16 +08:00
reviewable_flagged_post_serializer_spec.rb DEV: Convert min_trust_to_flag_posts setting to groups (#24864) 2023-12-13 17:18:42 +08:00
reviewable_queued_post_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
reviewable_score_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
reviewable_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
reviewable_user_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
single_sign_on_record_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
site_serializer_spec.rb FIX: Preload parent categories for sidebar (#25726) 2024-02-16 16:39:18 +02:00
suggested_topic_serializer_spec.rb DEV: Update the rubocop-discourse gem 2023-06-26 11:41:52 +02:00
tag_group_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
tag_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
theme_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
theme_settings_serializer_spec.rb DEV: Support description for properties in objects schema (#26172) 2024-03-15 07:47:42 +08:00
topic_link_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
topic_list_item_serializer_spec.rb FEATURE: increase tag description limit to 1000 (#24561) 2023-11-28 08:45:40 +11:00
topic_list_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
topic_tracking_state_item_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
topic_tracking_state_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
topic_view_details_serializer_spec.rb DEV: Convert min_trust_to_flag_posts setting to groups (#24864) 2023-12-13 17:18:42 +08:00
topic_view_posts_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
topic_view_serializer_spec.rb DEV: Remove full group refreshes from tests (#25414) 2024-01-25 14:28:26 +08:00
upload_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
user_auth_token_serializer_spec.rb DEV: revert missing license for maxmind changes (#24538) 2023-11-24 11:31:11 +11:00
user_badge_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
user_bookmark_list_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
user_card_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
user_post_bookmark_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00
user_serializer_spec.rb FEATURE: Enable passkeys by default (#25340) 2024-01-23 17:23:26 +01:00
user_status_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
user_summary_serializer_spec.rb FEATURE: allow disabling user activity tab for non admin users (#25540) 2024-02-05 14:30:36 +05:30
user_with_custom_fields_serializer_spec.rb FEATURE: Hide user status when user is hiding public profile and presence (#24300) 2024-02-26 17:40:48 +04:00
web_hook_post_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
web_hook_topic_view_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
web_hook_user_serializer_spec.rb DEV: Allow fab! without block (#24314) 2023-11-09 16:47:59 -06:00
wizard_serializer_spec.rb DEV: Apply syntax_tree formatting to `spec/*` 2023-01-09 11:49:28 +00:00