@mixtint/primer-view-components 0.75.2 → 0.84.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -1
- package/app/assets/javascripts/components/primer/alpha/tree_view/tree_view.d.ts +1 -0
- package/app/assets/javascripts/components/primer/open_project/avatar_fallback.d.ts +28 -0
- package/app/assets/javascripts/components/primer/primer.d.ts +2 -0
- package/app/assets/javascripts/lib/primer/forms/character_counter.d.ts +41 -0
- package/app/assets/javascripts/lib/primer/forms/primer_text_area.d.ts +13 -0
- package/app/assets/javascripts/lib/primer/forms/primer_text_field.d.ts +2 -0
- package/app/assets/javascripts/primer_view_components.js +1 -1
- package/app/assets/javascripts/primer_view_components.js.map +1 -1
- package/app/assets/styles/primer_view_components.css +354 -29
- package/app/assets/styles/primer_view_components.css.map +1 -1
- package/app/components/primer/alpha/action_bar_element.js +68 -77
- package/app/components/primer/alpha/action_list.css +1 -1
- package/app/components/primer/alpha/action_list.js +1 -1
- package/app/components/primer/alpha/action_menu/action_menu_element.js +1 -1
- package/app/components/primer/alpha/dialog.css +12 -0
- package/app/components/primer/alpha/dialog.css.json +2 -1
- package/app/components/primer/alpha/segmented_control.js +1 -1
- package/app/components/primer/alpha/select_panel_element.js +4 -2
- package/app/components/primer/alpha/tab_nav.css +8 -1
- package/app/components/primer/alpha/tab_nav.css.json +1 -0
- package/app/components/primer/alpha/toggle_switch.js +1 -1
- package/app/components/primer/alpha/tool_tip.js +13 -6
- package/app/components/primer/alpha/tree_view/tree_view.d.ts +1 -0
- package/app/components/primer/alpha/tree_view/tree_view.js +28 -20
- package/app/components/primer/alpha/tree_view/tree_view_icon_pair_element.js +1 -1
- package/app/components/primer/alpha/tree_view/tree_view_include_fragment_element.js +1 -1
- package/app/components/primer/alpha/tree_view/tree_view_sub_tree_node_element.js +25 -2
- package/app/components/primer/alpha/x_banner.js +1 -1
- package/app/components/primer/beta/avatar_stack.css +21 -41
- package/app/components/primer/beta/avatar_stack.css.json +7 -5
- package/app/components/primer/beta/blankslate.css +7 -0
- package/app/components/primer/beta/blankslate.css.json +1 -0
- package/app/components/primer/beta/details_toggle_element.js +1 -1
- package/app/components/primer/beta/nav_list.js +1 -1
- package/app/components/primer/beta/nav_list_group_element.js +1 -1
- package/app/components/primer/beta/state.css +1 -2
- package/app/components/primer/beta/timeline_item.css +2 -1
- package/app/components/primer/dialog_helper.js +24 -9
- package/app/components/primer/open_project/avatar_fallback.d.ts +28 -0
- package/app/components/primer/open_project/avatar_fallback.js +105 -0
- package/app/components/primer/open_project/avatar_stack.css +29 -0
- package/app/components/primer/open_project/avatar_stack.css.json +10 -0
- package/app/components/primer/open_project/border_box/collapsible_header.css +72 -10
- package/app/components/primer/open_project/border_box/collapsible_header.css.json +9 -2
- package/app/components/primer/open_project/inline_message.css +42 -0
- package/app/components/primer/open_project/inline_message.css.json +13 -0
- package/app/components/primer/open_project/page_header.css +51 -0
- package/app/components/primer/open_project/page_header.css.json +10 -1
- package/app/components/primer/open_project/pagination.css +87 -0
- package/app/components/primer/open_project/pagination.css.json +24 -0
- package/app/components/primer/primer.d.ts +2 -0
- package/app/components/primer/primer.js +2 -0
- package/app/components/primer/scrollable_region.js +1 -1
- package/app/lib/primer/forms/character_counter.d.ts +41 -0
- package/app/lib/primer/forms/character_counter.js +114 -0
- package/app/lib/primer/forms/primer_multi_input.js +1 -1
- package/app/lib/primer/forms/primer_text_area.d.ts +13 -0
- package/app/lib/primer/forms/primer_text_area.js +53 -0
- package/app/lib/primer/forms/primer_text_field.d.ts +2 -0
- package/app/lib/primer/forms/primer_text_field.js +17 -3
- package/app/lib/primer/forms/toggle_switch_input.js +1 -1
- package/package.json +24 -23
- package/static/arguments.json +235 -9
- package/static/audited_at.json +6 -0
- package/static/classes.json +30 -2
- package/static/constants.json +67 -1
- package/static/form_previews.json +15 -0
- package/static/info_arch.json +1035 -257
- package/static/previews.json +476 -14
- package/static/statuses.json +6 -0
package/static/info_arch.json
CHANGED
|
@@ -1633,6 +1633,19 @@
|
|
|
1633
1633
|
]
|
|
1634
1634
|
}
|
|
1635
1635
|
},
|
|
1636
|
+
{
|
|
1637
|
+
"preview_path": "primer/alpha/action_menu/fullscreen_when_narrow",
|
|
1638
|
+
"name": "fullscreen_when_narrow",
|
|
1639
|
+
"snapshot": "false",
|
|
1640
|
+
"skip_rules": {
|
|
1641
|
+
"wont_fix": [
|
|
1642
|
+
"region"
|
|
1643
|
+
],
|
|
1644
|
+
"will_fix": [
|
|
1645
|
+
"color-contrast"
|
|
1646
|
+
]
|
|
1647
|
+
}
|
|
1648
|
+
},
|
|
1636
1649
|
{
|
|
1637
1650
|
"preview_path": "primer/alpha/action_menu/sub_menus",
|
|
1638
1651
|
"name": "sub_menus",
|
|
@@ -1674,6 +1687,12 @@
|
|
|
1674
1687
|
"default": "N/A",
|
|
1675
1688
|
"description": "One of `:inside_bottom`, `:inside_center`, `:inside_left`, `:inside_right`, `:inside_top`, `:outside_bottom`, `:outside_left`, `:outside_right`, or `:outside_top`."
|
|
1676
1689
|
},
|
|
1690
|
+
{
|
|
1691
|
+
"name": "anchor_when_narrow",
|
|
1692
|
+
"type": "Symbol",
|
|
1693
|
+
"default": "N/A",
|
|
1694
|
+
"description": "One of `:bottom`, `:fullscreen`, `:inherit`, `:left`, or `:right`."
|
|
1695
|
+
},
|
|
1677
1696
|
{
|
|
1678
1697
|
"name": "menu_id",
|
|
1679
1698
|
"type": "String",
|
|
@@ -1749,6 +1768,12 @@
|
|
|
1749
1768
|
"parameters": [],
|
|
1750
1769
|
"return_types": []
|
|
1751
1770
|
},
|
|
1771
|
+
{
|
|
1772
|
+
"name": "anchor_when_narrow",
|
|
1773
|
+
"description": "Returns the value of attribute anchor_when_narrow.",
|
|
1774
|
+
"parameters": [],
|
|
1775
|
+
"return_types": []
|
|
1776
|
+
},
|
|
1752
1777
|
{
|
|
1753
1778
|
"name": "list",
|
|
1754
1779
|
"description": "Returns the value of attribute list.",
|
|
@@ -1927,6 +1952,12 @@
|
|
|
1927
1952
|
"default": "`:outside_right`",
|
|
1928
1953
|
"description": "One of `:inside_bottom`, `:inside_center`, `:inside_left`, `:inside_right`, `:inside_top`, `:outside_bottom`, `:outside_left`, `:outside_right`, or `:outside_top`."
|
|
1929
1954
|
},
|
|
1955
|
+
{
|
|
1956
|
+
"name": "anchor_when_narrow",
|
|
1957
|
+
"type": "Symbol",
|
|
1958
|
+
"default": "`:inherit`",
|
|
1959
|
+
"description": "One of `:bottom`, `:fullscreen`, `:inherit`, `:left`, or `:right`.."
|
|
1960
|
+
},
|
|
1930
1961
|
{
|
|
1931
1962
|
"name": "overlay_arguments",
|
|
1932
1963
|
"type": "Hash",
|
|
@@ -2045,6 +2076,12 @@
|
|
|
2045
2076
|
"default": "`:outside_bottom`",
|
|
2046
2077
|
"description": "One of `:inside_bottom`, `:inside_center`, `:inside_left`, `:inside_right`, `:inside_top`, `:outside_bottom`, `:outside_left`, `:outside_right`, or `:outside_top`."
|
|
2047
2078
|
},
|
|
2079
|
+
{
|
|
2080
|
+
"name": "anchor_when_narrow",
|
|
2081
|
+
"type": "Symbol",
|
|
2082
|
+
"default": "`:inherit`",
|
|
2083
|
+
"description": "One of `:bottom`, `:fullscreen`, `:inherit`, `:left`, or `:right`.."
|
|
2084
|
+
},
|
|
2048
2085
|
{
|
|
2049
2086
|
"name": "dynamic_label",
|
|
2050
2087
|
"type": "Boolean",
|
|
@@ -5119,7 +5156,7 @@
|
|
|
5119
5156
|
{
|
|
5120
5157
|
"fully_qualified_name": "Primer::Alpha::Layout",
|
|
5121
5158
|
"description": "`Layout` provides foundational patterns for responsive pages.\n`Layout` can be used for simple two-column pages, or it can be nested to provide flexible 3-column experiences.\n On smaller screens, `Layout` uses vertically stacked rows to display content.\n\n`Layout` flows as both column, when there's enough horizontal space to render both `Main` and `Sidebar`side-by-side (on a desktop of tablet device, per instance);\nor it flows as a row, when `Main` and `Sidebar` are stacked vertically (e.g. on a mobile device).\n`Layout` should always work in any screen size.",
|
|
5122
|
-
"accessibility_docs": "Keyboard navigation follows the markup order. Decide carefully how the focus order should be be by deciding whether\n`main` or `sidebar` comes first in code. The code order won
|
|
5159
|
+
"accessibility_docs": "Keyboard navigation follows the markup order. Decide carefully how the focus order should be be by deciding whether\n`main` or `sidebar` comes first in code. The code order won't affect the visual position.\n\nWhen using `row_placement: :none` on the sidebar, the sidebar content will be hidden at narrow viewports.\nThis may cause WCAG 1.4.10 Reflow failures if the sidebar contains essential content. Only use `:none`\nwhen the sidebar content is non-essential or available elsewhere on the page.",
|
|
5123
5160
|
"is_form_component": false,
|
|
5124
5161
|
"is_published": true,
|
|
5125
5162
|
"requires_js": false,
|
|
@@ -5194,7 +5231,7 @@
|
|
|
5194
5231
|
"name": "row_placement",
|
|
5195
5232
|
"type": "Symbol",
|
|
5196
5233
|
"default": "N/A",
|
|
5197
|
-
"description": "Sidebar placement when `Layout` is in row mode. One of `:end`, `:none`, or `:start`."
|
|
5234
|
+
"description": "Sidebar placement when `Layout` is in row mode. One of `:end`, `:none`, or `:start`. **Note:** Using `:none` hides the sidebar at narrow viewports, which may cause WCAG 1.4.10 Reflow issues if the sidebar contains essential content."
|
|
5198
5235
|
},
|
|
5199
5236
|
{
|
|
5200
5237
|
"name": "system_arguments",
|
|
@@ -5802,7 +5839,8 @@
|
|
|
5802
5839
|
"snapshot": "true",
|
|
5803
5840
|
"skip_rules": {
|
|
5804
5841
|
"wont_fix": [
|
|
5805
|
-
"region"
|
|
5842
|
+
"region",
|
|
5843
|
+
"label-title-only"
|
|
5806
5844
|
],
|
|
5807
5845
|
"will_fix": [
|
|
5808
5846
|
"color-contrast"
|
|
@@ -6404,6 +6442,12 @@
|
|
|
6404
6442
|
"default": "`:normal`",
|
|
6405
6443
|
"description": "The anchor offset to give the Overlay. One of `:normal` or `:spacious`."
|
|
6406
6444
|
},
|
|
6445
|
+
{
|
|
6446
|
+
"name": "anchor_when_narrow",
|
|
6447
|
+
"type": "Symbol",
|
|
6448
|
+
"default": "`:inherit`",
|
|
6449
|
+
"description": "The position of the Overlay when in a narrow viewport. One of `:bottom`, `:fullscreen`, `:inherit`, `:left`, or `:right`."
|
|
6450
|
+
},
|
|
6407
6451
|
{
|
|
6408
6452
|
"name": "allow_out_of_bounds",
|
|
6409
6453
|
"type": "Boolean",
|
|
@@ -6549,19 +6593,6 @@
|
|
|
6549
6593
|
]
|
|
6550
6594
|
}
|
|
6551
6595
|
},
|
|
6552
|
-
{
|
|
6553
|
-
"preview_path": "primer/alpha/overlay/menu_no_header",
|
|
6554
|
-
"name": "menu_no_header",
|
|
6555
|
-
"snapshot": "false",
|
|
6556
|
-
"skip_rules": {
|
|
6557
|
-
"wont_fix": [
|
|
6558
|
-
"region"
|
|
6559
|
-
],
|
|
6560
|
-
"will_fix": [
|
|
6561
|
-
"color-contrast"
|
|
6562
|
-
]
|
|
6563
|
-
}
|
|
6564
|
-
},
|
|
6565
6596
|
{
|
|
6566
6597
|
"preview_path": "primer/alpha/overlay/middle_of_page",
|
|
6567
6598
|
"name": "middle_of_page",
|
|
@@ -7854,13 +7885,7 @@
|
|
|
7854
7885
|
"name": "form_arguments",
|
|
7855
7886
|
"type": "Hash",
|
|
7856
7887
|
"default": "`{}`",
|
|
7857
|
-
"description": "Form arguments. Supported for
|
|
7858
|
-
},
|
|
7859
|
-
{
|
|
7860
|
-
"name": "use_experimental_non_local_form",
|
|
7861
|
-
"type": "Boolean",
|
|
7862
|
-
"default": "`false`",
|
|
7863
|
-
"description": "A feature flag used to slowly roll out moving the input field (generated from form arguments) to the top of the SelectPanel HTML thus allowing remote fetching to have default form values. At this time, support is only available for the :single select variant. See: https://github.com/github/primer/issues/4923."
|
|
7888
|
+
"description": "Form arguments. Supported for all fetch strategies."
|
|
7864
7889
|
},
|
|
7865
7890
|
{
|
|
7866
7891
|
"name": "show_filter",
|
|
@@ -7940,6 +7965,12 @@
|
|
|
7940
7965
|
"name": "show_button",
|
|
7941
7966
|
"description": "Adds a show button (i.e. a button) that will open the panel when clicked.",
|
|
7942
7967
|
"parameters": [
|
|
7968
|
+
{
|
|
7969
|
+
"name": "icon",
|
|
7970
|
+
"type": "String",
|
|
7971
|
+
"default": "N/A",
|
|
7972
|
+
"description": "Name of {{link_to_octicons}} to use instead of text. If an [icon](https://primer.style/octicons/usage-guidelines/) is provided, a {{#link_to_component}}Primer::Beta::IconButton{{/link_to_component}} will be rendered. Otherwise a {{#link_to_component}}Primer::Beta::Button{{/link_to_component}} will be rendered."
|
|
7973
|
+
},
|
|
7943
7974
|
{
|
|
7944
7975
|
"name": "system_arguments",
|
|
7945
7976
|
"type": "Hash",
|
|
@@ -8263,6 +8294,19 @@
|
|
|
8263
8294
|
]
|
|
8264
8295
|
}
|
|
8265
8296
|
},
|
|
8297
|
+
{
|
|
8298
|
+
"preview_path": "primer/alpha/select_panel/select_panel_with_icon_button",
|
|
8299
|
+
"name": "select_panel_with_icon_button",
|
|
8300
|
+
"snapshot": "interactive",
|
|
8301
|
+
"skip_rules": {
|
|
8302
|
+
"wont_fix": [
|
|
8303
|
+
"region"
|
|
8304
|
+
],
|
|
8305
|
+
"will_fix": [
|
|
8306
|
+
"color-contrast"
|
|
8307
|
+
]
|
|
8308
|
+
}
|
|
8309
|
+
},
|
|
8266
8310
|
{
|
|
8267
8311
|
"preview_path": "primer/alpha/select_panel/with_leading_icons",
|
|
8268
8312
|
"name": "with_leading_icons",
|
|
@@ -8562,7 +8606,7 @@
|
|
|
8562
8606
|
"name": "gap",
|
|
8563
8607
|
"type": "Symbol",
|
|
8564
8608
|
"default": "`GapArg::DEFAULT`",
|
|
8565
|
-
"description": "Specify the gap between children elements in the stack. One of `nil`, `:condensed`, `:normal`, or `:spacious`."
|
|
8609
|
+
"description": "Specify the gap between children elements in the stack. One of `nil`, `:condensed`, `:none`, `:normal`, or `:spacious`."
|
|
8566
8610
|
},
|
|
8567
8611
|
{
|
|
8568
8612
|
"name": "direction",
|
|
@@ -9067,6 +9111,12 @@
|
|
|
9067
9111
|
"default": "N/A",
|
|
9068
9112
|
"description": "When set to `true`, the field will take up all the horizontal space allowed by its container. Defaults to `true`."
|
|
9069
9113
|
},
|
|
9114
|
+
{
|
|
9115
|
+
"name": "character_limit",
|
|
9116
|
+
"type": "Number",
|
|
9117
|
+
"default": "N/A",
|
|
9118
|
+
"description": "Optional character limit for the input. If provided, a character counter will be displayed below the input."
|
|
9119
|
+
},
|
|
9070
9120
|
{
|
|
9071
9121
|
"name": "name",
|
|
9072
9122
|
"type": "String",
|
|
@@ -9301,6 +9351,45 @@
|
|
|
9301
9351
|
"color-contrast"
|
|
9302
9352
|
]
|
|
9303
9353
|
}
|
|
9354
|
+
},
|
|
9355
|
+
{
|
|
9356
|
+
"preview_path": "primer/alpha/text_area/with_character_limit",
|
|
9357
|
+
"name": "with_character_limit",
|
|
9358
|
+
"snapshot": "interactive",
|
|
9359
|
+
"skip_rules": {
|
|
9360
|
+
"wont_fix": [
|
|
9361
|
+
"region"
|
|
9362
|
+
],
|
|
9363
|
+
"will_fix": [
|
|
9364
|
+
"color-contrast"
|
|
9365
|
+
]
|
|
9366
|
+
}
|
|
9367
|
+
},
|
|
9368
|
+
{
|
|
9369
|
+
"preview_path": "primer/alpha/text_area/with_character_limit_over_limit",
|
|
9370
|
+
"name": "with_character_limit_over_limit",
|
|
9371
|
+
"snapshot": "interactive",
|
|
9372
|
+
"skip_rules": {
|
|
9373
|
+
"wont_fix": [
|
|
9374
|
+
"region"
|
|
9375
|
+
],
|
|
9376
|
+
"will_fix": [
|
|
9377
|
+
"color-contrast"
|
|
9378
|
+
]
|
|
9379
|
+
}
|
|
9380
|
+
},
|
|
9381
|
+
{
|
|
9382
|
+
"preview_path": "primer/alpha/text_area/with_character_limit_and_caption",
|
|
9383
|
+
"name": "with_character_limit_and_caption",
|
|
9384
|
+
"snapshot": "true",
|
|
9385
|
+
"skip_rules": {
|
|
9386
|
+
"wont_fix": [
|
|
9387
|
+
"region"
|
|
9388
|
+
],
|
|
9389
|
+
"will_fix": [
|
|
9390
|
+
"color-contrast"
|
|
9391
|
+
]
|
|
9392
|
+
}
|
|
9304
9393
|
}
|
|
9305
9394
|
],
|
|
9306
9395
|
"subcomponents": []
|
|
@@ -9331,6 +9420,12 @@
|
|
|
9331
9420
|
"default": "N/A",
|
|
9332
9421
|
"description": "When set to `true`, the field will take up all the horizontal space allowed by its container. Defaults to `true`."
|
|
9333
9422
|
},
|
|
9423
|
+
{
|
|
9424
|
+
"name": "character_limit",
|
|
9425
|
+
"type": "Number",
|
|
9426
|
+
"default": "N/A",
|
|
9427
|
+
"description": "Optional character limit for the input. If provided, a character counter will be displayed below the input."
|
|
9428
|
+
},
|
|
9334
9429
|
{
|
|
9335
9430
|
"name": "name",
|
|
9336
9431
|
"type": "String",
|
|
@@ -9601,6 +9696,19 @@
|
|
|
9601
9696
|
]
|
|
9602
9697
|
}
|
|
9603
9698
|
},
|
|
9699
|
+
{
|
|
9700
|
+
"preview_path": "primer/alpha/text_field/show_clear_button_with_custom_label",
|
|
9701
|
+
"name": "show_clear_button_with_custom_label",
|
|
9702
|
+
"snapshot": "true",
|
|
9703
|
+
"skip_rules": {
|
|
9704
|
+
"wont_fix": [
|
|
9705
|
+
"region"
|
|
9706
|
+
],
|
|
9707
|
+
"will_fix": [
|
|
9708
|
+
"color-contrast"
|
|
9709
|
+
]
|
|
9710
|
+
}
|
|
9711
|
+
},
|
|
9604
9712
|
{
|
|
9605
9713
|
"preview_path": "primer/alpha/text_field/full_width",
|
|
9606
9714
|
"name": "full_width",
|
|
@@ -9783,6 +9891,45 @@
|
|
|
9783
9891
|
]
|
|
9784
9892
|
}
|
|
9785
9893
|
},
|
|
9894
|
+
{
|
|
9895
|
+
"preview_path": "primer/alpha/text_field/with_character_limit",
|
|
9896
|
+
"name": "with_character_limit",
|
|
9897
|
+
"snapshot": "interactive",
|
|
9898
|
+
"skip_rules": {
|
|
9899
|
+
"wont_fix": [
|
|
9900
|
+
"region"
|
|
9901
|
+
],
|
|
9902
|
+
"will_fix": [
|
|
9903
|
+
"color-contrast"
|
|
9904
|
+
]
|
|
9905
|
+
}
|
|
9906
|
+
},
|
|
9907
|
+
{
|
|
9908
|
+
"preview_path": "primer/alpha/text_field/with_character_limit_over_limit",
|
|
9909
|
+
"name": "with_character_limit_over_limit",
|
|
9910
|
+
"snapshot": "interactive",
|
|
9911
|
+
"skip_rules": {
|
|
9912
|
+
"wont_fix": [
|
|
9913
|
+
"region"
|
|
9914
|
+
],
|
|
9915
|
+
"will_fix": [
|
|
9916
|
+
"color-contrast"
|
|
9917
|
+
]
|
|
9918
|
+
}
|
|
9919
|
+
},
|
|
9920
|
+
{
|
|
9921
|
+
"preview_path": "primer/alpha/text_field/with_character_limit_and_caption",
|
|
9922
|
+
"name": "with_character_limit_and_caption",
|
|
9923
|
+
"snapshot": "true",
|
|
9924
|
+
"skip_rules": {
|
|
9925
|
+
"wont_fix": [
|
|
9926
|
+
"region"
|
|
9927
|
+
],
|
|
9928
|
+
"will_fix": [
|
|
9929
|
+
"color-contrast"
|
|
9930
|
+
]
|
|
9931
|
+
}
|
|
9932
|
+
},
|
|
9786
9933
|
{
|
|
9787
9934
|
"preview_path": "primer/alpha/text_field/with_auto_check_ok",
|
|
9788
9935
|
"name": "with_auto_check_ok",
|
|
@@ -9956,6 +10103,12 @@
|
|
|
9956
10103
|
"type": "String",
|
|
9957
10104
|
"default": "`nil`",
|
|
9958
10105
|
"description": "Custom label to show when the switch is OFF. Defaults to (\"Off\"). Only customize this label if it makes the toggle’s state more meaningful in its specific context. For example, for a \"Show images\" setting, you might use \"Show\" when the switch is OFF."
|
|
10106
|
+
},
|
|
10107
|
+
{
|
|
10108
|
+
"name": "button_type",
|
|
10109
|
+
"type": "Symbol",
|
|
10110
|
+
"default": "`nil`",
|
|
10111
|
+
"description": "The type attribute for the underlying button element. If `nil`, the button will not have a type attribute, which means it will default to \"submit\" if it's inside a form and \"button\" otherwise."
|
|
9959
10112
|
}
|
|
9960
10113
|
],
|
|
9961
10114
|
"slots": [],
|
|
@@ -12278,6 +12431,32 @@
|
|
|
12278
12431
|
}
|
|
12279
12432
|
],
|
|
12280
12433
|
"subcomponents": [
|
|
12434
|
+
{
|
|
12435
|
+
"fully_qualified_name": "Primer::Beta::AutoComplete::NoResultItem",
|
|
12436
|
+
"description": "Use `NoResultItem` to display a message when no autocomplete results are found.\nRenders as a simple div inside the overlay, not as a list item.",
|
|
12437
|
+
"accessibility_docs": null,
|
|
12438
|
+
"is_form_component": false,
|
|
12439
|
+
"is_published": true,
|
|
12440
|
+
"requires_js": false,
|
|
12441
|
+
"component": "AutoComplete::NoResultItem",
|
|
12442
|
+
"status": "beta",
|
|
12443
|
+
"a11y_reviewed": false,
|
|
12444
|
+
"short_name": "AutoCompleteNoResultItem",
|
|
12445
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/no_result_item.rb",
|
|
12446
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/no_result_item/default/",
|
|
12447
|
+
"parameters": [
|
|
12448
|
+
{
|
|
12449
|
+
"name": "system_arguments",
|
|
12450
|
+
"type": "Hash",
|
|
12451
|
+
"default": "N/A",
|
|
12452
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
12453
|
+
}
|
|
12454
|
+
],
|
|
12455
|
+
"slots": [],
|
|
12456
|
+
"methods": [],
|
|
12457
|
+
"previews": [],
|
|
12458
|
+
"subcomponents": []
|
|
12459
|
+
},
|
|
12281
12460
|
{
|
|
12282
12461
|
"fully_qualified_name": "Primer::Beta::AutoComplete::Item",
|
|
12283
12462
|
"description": "Use `AutoCompleteItem` to list results of an auto-completed search.",
|
|
@@ -12370,62 +12549,6 @@
|
|
|
12370
12549
|
"methods": [],
|
|
12371
12550
|
"previews": [],
|
|
12372
12551
|
"subcomponents": []
|
|
12373
|
-
},
|
|
12374
|
-
{
|
|
12375
|
-
"fully_qualified_name": "Primer::Beta::AutoComplete::NoResultItem",
|
|
12376
|
-
"description": "",
|
|
12377
|
-
"accessibility_docs": null,
|
|
12378
|
-
"is_form_component": false,
|
|
12379
|
-
"is_published": true,
|
|
12380
|
-
"requires_js": false,
|
|
12381
|
-
"component": "AutoComplete::NoResultItem",
|
|
12382
|
-
"status": "beta",
|
|
12383
|
-
"a11y_reviewed": false,
|
|
12384
|
-
"short_name": "AutoCompleteNoResultItem",
|
|
12385
|
-
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/no_result_item.rb",
|
|
12386
|
-
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/no_result_item/default/",
|
|
12387
|
-
"parameters": [],
|
|
12388
|
-
"slots": [
|
|
12389
|
-
{
|
|
12390
|
-
"name": "leading_visual",
|
|
12391
|
-
"description": "The leading visual rendered before the link.",
|
|
12392
|
-
"parameters": [
|
|
12393
|
-
{
|
|
12394
|
-
"name": "kwargs",
|
|
12395
|
-
"type": "Hash",
|
|
12396
|
-
"default": "N/A",
|
|
12397
|
-
"description": "The arguments accepted by {{#link_to_component}}Primer::Beta::Avatar{{/link_to_component}} or {{#link_to_component}}Primer::Beta::Octicon{{/link_to_component}}"
|
|
12398
|
-
}
|
|
12399
|
-
]
|
|
12400
|
-
},
|
|
12401
|
-
{
|
|
12402
|
-
"name": "trailing_visual",
|
|
12403
|
-
"description": "The trailing visual rendered after the link.",
|
|
12404
|
-
"parameters": [
|
|
12405
|
-
{
|
|
12406
|
-
"name": "kwargs",
|
|
12407
|
-
"type": "Hash",
|
|
12408
|
-
"default": "N/A",
|
|
12409
|
-
"description": "The arguments accepted by {{#link_to_component}}Primer::Beta::Octicon{{/link_to_component}}, {{#link_to_component}}Primer::Beta::Label{{/link_to_component}}, or {{#link_to_component}}Primer::Beta::Counter{{/link_to_component}}"
|
|
12410
|
-
}
|
|
12411
|
-
]
|
|
12412
|
-
},
|
|
12413
|
-
{
|
|
12414
|
-
"name": "description",
|
|
12415
|
-
"description": "Optional description",
|
|
12416
|
-
"parameters": [
|
|
12417
|
-
{
|
|
12418
|
-
"name": "system_arguments",
|
|
12419
|
-
"type": "Hash",
|
|
12420
|
-
"default": "N/A",
|
|
12421
|
-
"description": "{{link_to_system_arguments_docs}}"
|
|
12422
|
-
}
|
|
12423
|
-
]
|
|
12424
|
-
}
|
|
12425
|
-
],
|
|
12426
|
-
"methods": [],
|
|
12427
|
-
"previews": [],
|
|
12428
|
-
"subcomponents": []
|
|
12429
12552
|
}
|
|
12430
12553
|
]
|
|
12431
12554
|
},
|
|
@@ -12473,6 +12596,12 @@
|
|
|
12473
12596
|
"default": "`nil`",
|
|
12474
12597
|
"description": "The URL to link to. If used, component will be wrapped by an `<a>` tag."
|
|
12475
12598
|
},
|
|
12599
|
+
{
|
|
12600
|
+
"name": "tooltip",
|
|
12601
|
+
"type": "String",
|
|
12602
|
+
"default": "`nil`",
|
|
12603
|
+
"description": "Tooltip text to display on hover when href is provided."
|
|
12604
|
+
},
|
|
12476
12605
|
{
|
|
12477
12606
|
"name": "system_arguments",
|
|
12478
12607
|
"type": "Hash",
|
|
@@ -12687,6 +12816,12 @@
|
|
|
12687
12816
|
"default": "`false`",
|
|
12688
12817
|
"description": "Whether to add a tooltip to the stack or not."
|
|
12689
12818
|
},
|
|
12819
|
+
{
|
|
12820
|
+
"name": "disable_expand",
|
|
12821
|
+
"type": "Boolean",
|
|
12822
|
+
"default": "`false`",
|
|
12823
|
+
"description": "Whether to disable the expand behavior on hover. If true, avatars will not expand."
|
|
12824
|
+
},
|
|
12690
12825
|
{
|
|
12691
12826
|
"name": "body_arguments",
|
|
12692
12827
|
"type": "Hash",
|
|
@@ -12832,23 +12967,49 @@
|
|
|
12832
12967
|
"color-contrast"
|
|
12833
12968
|
]
|
|
12834
12969
|
}
|
|
12835
|
-
}
|
|
12836
|
-
|
|
12837
|
-
|
|
12838
|
-
|
|
12839
|
-
|
|
12840
|
-
|
|
12841
|
-
|
|
12842
|
-
|
|
12843
|
-
|
|
12844
|
-
|
|
12845
|
-
|
|
12846
|
-
|
|
12847
|
-
|
|
12848
|
-
|
|
12849
|
-
|
|
12850
|
-
|
|
12851
|
-
|
|
12970
|
+
},
|
|
12971
|
+
{
|
|
12972
|
+
"preview_path": "primer/beta/avatar_stack/with_individual_tooltips",
|
|
12973
|
+
"name": "with_individual_tooltips",
|
|
12974
|
+
"snapshot": "false",
|
|
12975
|
+
"skip_rules": {
|
|
12976
|
+
"wont_fix": [
|
|
12977
|
+
"region"
|
|
12978
|
+
],
|
|
12979
|
+
"will_fix": [
|
|
12980
|
+
"color-contrast"
|
|
12981
|
+
]
|
|
12982
|
+
}
|
|
12983
|
+
},
|
|
12984
|
+
{
|
|
12985
|
+
"preview_path": "primer/beta/avatar_stack/with_disabled_expand",
|
|
12986
|
+
"name": "with_disabled_expand",
|
|
12987
|
+
"snapshot": "false",
|
|
12988
|
+
"skip_rules": {
|
|
12989
|
+
"wont_fix": [
|
|
12990
|
+
"region"
|
|
12991
|
+
],
|
|
12992
|
+
"will_fix": [
|
|
12993
|
+
"color-contrast"
|
|
12994
|
+
]
|
|
12995
|
+
}
|
|
12996
|
+
}
|
|
12997
|
+
],
|
|
12998
|
+
"subcomponents": []
|
|
12999
|
+
},
|
|
13000
|
+
{
|
|
13001
|
+
"fully_qualified_name": "Primer::Beta::BaseButton",
|
|
13002
|
+
"description": "Use `BaseButton` to render an unstyled `<button>` tag that can be customized.",
|
|
13003
|
+
"accessibility_docs": null,
|
|
13004
|
+
"is_form_component": false,
|
|
13005
|
+
"is_published": true,
|
|
13006
|
+
"requires_js": false,
|
|
13007
|
+
"component": "BaseButton",
|
|
13008
|
+
"status": "beta",
|
|
13009
|
+
"a11y_reviewed": false,
|
|
13010
|
+
"short_name": "BaseButton",
|
|
13011
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/base_button.rb",
|
|
13012
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/base_button/default/",
|
|
12852
13013
|
"parameters": [
|
|
12853
13014
|
{
|
|
12854
13015
|
"name": "tag",
|
|
@@ -17108,6 +17269,12 @@
|
|
|
17108
17269
|
"default": "`TIMEZONENAME_DEFAULT`",
|
|
17109
17270
|
"description": "What format the time zone should take. One of `nil`, `:long`, `:long_generic`, `:long_offset`, `:short`, `:short_generic`, or `:short_offset`."
|
|
17110
17271
|
},
|
|
17272
|
+
{
|
|
17273
|
+
"name": "time_zone",
|
|
17274
|
+
"type": "String",
|
|
17275
|
+
"default": "`nil`",
|
|
17276
|
+
"description": "The IANA time zone identifier to use for formatting (e.g., \"America/New_York\")."
|
|
17277
|
+
},
|
|
17111
17278
|
{
|
|
17112
17279
|
"name": "threshold",
|
|
17113
17280
|
"type": "String",
|
|
@@ -18659,80 +18826,44 @@
|
|
|
18659
18826
|
"subcomponents": []
|
|
18660
18827
|
},
|
|
18661
18828
|
{
|
|
18662
|
-
"fully_qualified_name": "Primer::OpenProject::
|
|
18663
|
-
"description": "
|
|
18829
|
+
"fully_qualified_name": "Primer::OpenProject::AvatarStack",
|
|
18830
|
+
"description": "OpenProject-specific AvatarStack that extends Primer::Beta::AvatarStack\nto support avatar fallbacks with initials.\n\nUses a different slot name (avatar_with_fallbacks) to avoid conflicts with the parent's avatars slot.",
|
|
18664
18831
|
"accessibility_docs": null,
|
|
18665
18832
|
"is_form_component": false,
|
|
18666
18833
|
"is_published": true,
|
|
18667
18834
|
"requires_js": false,
|
|
18668
|
-
"component": "OpenProject::
|
|
18835
|
+
"component": "OpenProject::AvatarStack",
|
|
18669
18836
|
"status": "open_project",
|
|
18670
18837
|
"a11y_reviewed": false,
|
|
18671
|
-
"short_name": "
|
|
18672
|
-
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/
|
|
18673
|
-
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/
|
|
18674
|
-
"parameters": [
|
|
18675
|
-
{
|
|
18676
|
-
"name": "id",
|
|
18677
|
-
"type": "String",
|
|
18678
|
-
"default": "`self.class.generate_id`",
|
|
18679
|
-
"description": "The unique ID of the collapsible header."
|
|
18680
|
-
},
|
|
18681
|
-
{
|
|
18682
|
-
"name": "collapsed",
|
|
18683
|
-
"type": "Boolean",
|
|
18684
|
-
"default": "`false`",
|
|
18685
|
-
"description": "Whether the header is collapsed on initial render."
|
|
18686
|
-
},
|
|
18687
|
-
{
|
|
18688
|
-
"name": "system_arguments",
|
|
18689
|
-
"type": "Hash",
|
|
18690
|
-
"default": "N/A",
|
|
18691
|
-
"description": "{{link_to_system_arguments_docs}}"
|
|
18692
|
-
}
|
|
18693
|
-
],
|
|
18838
|
+
"short_name": "OpenProjectAvatarStack",
|
|
18839
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/avatar_stack.rb",
|
|
18840
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/avatar_stack/default/",
|
|
18841
|
+
"parameters": [],
|
|
18694
18842
|
"slots": [
|
|
18695
18843
|
{
|
|
18696
|
-
"name": "
|
|
18697
|
-
"description": "Required
|
|
18698
|
-
"parameters": [
|
|
18699
|
-
{
|
|
18700
|
-
"name": "system_arguments",
|
|
18701
|
-
"type": "Hash",
|
|
18702
|
-
"default": "N/A",
|
|
18703
|
-
"description": "{{link_to_system_arguments_docs}}"
|
|
18704
|
-
}
|
|
18705
|
-
]
|
|
18706
|
-
},
|
|
18707
|
-
{
|
|
18708
|
-
"name": "count",
|
|
18709
|
-
"description": "Optional count",
|
|
18844
|
+
"name": "avatar_with_fallbacks",
|
|
18845
|
+
"description": "Required list of stacked avatars with fallback support.",
|
|
18710
18846
|
"parameters": [
|
|
18711
18847
|
{
|
|
18712
|
-
"name": "
|
|
18848
|
+
"name": "kwargs",
|
|
18713
18849
|
"type": "Hash",
|
|
18714
18850
|
"default": "N/A",
|
|
18715
|
-
"description": "{{
|
|
18851
|
+
"description": "The same arguments as {{#link_to_component}}Primer::OpenProject::AvatarWithFallback{{/link_to_component}}."
|
|
18716
18852
|
}
|
|
18717
18853
|
]
|
|
18718
|
-
}
|
|
18854
|
+
}
|
|
18855
|
+
],
|
|
18856
|
+
"methods": [
|
|
18719
18857
|
{
|
|
18720
|
-
"name": "
|
|
18721
|
-
"description": "
|
|
18722
|
-
"parameters": [
|
|
18723
|
-
|
|
18724
|
-
"name": "system_arguments",
|
|
18725
|
-
"type": "Hash",
|
|
18726
|
-
"default": "N/A",
|
|
18727
|
-
"description": "{{link_to_system_arguments_docs}}"
|
|
18728
|
-
}
|
|
18729
|
-
]
|
|
18858
|
+
"name": "avatars",
|
|
18859
|
+
"description": "Alias avatar_with_fallbacks as avatars for use in the template",
|
|
18860
|
+
"parameters": [],
|
|
18861
|
+
"return_types": []
|
|
18730
18862
|
}
|
|
18731
18863
|
],
|
|
18732
|
-
"methods": [],
|
|
18733
18864
|
"previews": [
|
|
18734
18865
|
{
|
|
18735
|
-
"preview_path": "primer/open_project/
|
|
18866
|
+
"preview_path": "primer/open_project/avatar_stack/playground",
|
|
18736
18867
|
"name": "playground",
|
|
18737
18868
|
"snapshot": "false",
|
|
18738
18869
|
"skip_rules": {
|
|
@@ -18745,7 +18876,7 @@
|
|
|
18745
18876
|
}
|
|
18746
18877
|
},
|
|
18747
18878
|
{
|
|
18748
|
-
"preview_path": "primer/open_project/
|
|
18879
|
+
"preview_path": "primer/open_project/avatar_stack/default",
|
|
18749
18880
|
"name": "default",
|
|
18750
18881
|
"snapshot": "true",
|
|
18751
18882
|
"skip_rules": {
|
|
@@ -18758,8 +18889,8 @@
|
|
|
18758
18889
|
}
|
|
18759
18890
|
},
|
|
18760
18891
|
{
|
|
18761
|
-
"preview_path": "primer/open_project/
|
|
18762
|
-
"name": "
|
|
18892
|
+
"preview_path": "primer/open_project/avatar_stack/with_fallback_avatars",
|
|
18893
|
+
"name": "with_fallback_avatars",
|
|
18763
18894
|
"snapshot": "true",
|
|
18764
18895
|
"skip_rules": {
|
|
18765
18896
|
"wont_fix": [
|
|
@@ -18771,9 +18902,9 @@
|
|
|
18771
18902
|
}
|
|
18772
18903
|
},
|
|
18773
18904
|
{
|
|
18774
|
-
"preview_path": "primer/open_project/
|
|
18775
|
-
"name": "
|
|
18776
|
-
"snapshot": "
|
|
18905
|
+
"preview_path": "primer/open_project/avatar_stack/mixed_avatars",
|
|
18906
|
+
"name": "mixed_avatars",
|
|
18907
|
+
"snapshot": "false",
|
|
18777
18908
|
"skip_rules": {
|
|
18778
18909
|
"wont_fix": [
|
|
18779
18910
|
"region"
|
|
@@ -18784,9 +18915,22 @@
|
|
|
18784
18915
|
}
|
|
18785
18916
|
},
|
|
18786
18917
|
{
|
|
18787
|
-
"preview_path": "primer/open_project/
|
|
18788
|
-
"name": "
|
|
18789
|
-
"snapshot": "
|
|
18918
|
+
"preview_path": "primer/open_project/avatar_stack/align_right_with_fallbacks",
|
|
18919
|
+
"name": "align_right_with_fallbacks",
|
|
18920
|
+
"snapshot": "false",
|
|
18921
|
+
"skip_rules": {
|
|
18922
|
+
"wont_fix": [
|
|
18923
|
+
"region"
|
|
18924
|
+
],
|
|
18925
|
+
"will_fix": [
|
|
18926
|
+
"color-contrast"
|
|
18927
|
+
]
|
|
18928
|
+
}
|
|
18929
|
+
},
|
|
18930
|
+
{
|
|
18931
|
+
"preview_path": "primer/open_project/avatar_stack/with_tooltip_and_fallbacks",
|
|
18932
|
+
"name": "with_tooltip_and_fallbacks",
|
|
18933
|
+
"snapshot": "false",
|
|
18790
18934
|
"skip_rules": {
|
|
18791
18935
|
"wont_fix": [
|
|
18792
18936
|
"region"
|
|
@@ -18800,24 +18944,54 @@
|
|
|
18800
18944
|
"subcomponents": []
|
|
18801
18945
|
},
|
|
18802
18946
|
{
|
|
18803
|
-
"fully_qualified_name": "Primer::OpenProject::
|
|
18804
|
-
"description": "
|
|
18947
|
+
"fully_qualified_name": "Primer::OpenProject::AvatarWithFallback",
|
|
18948
|
+
"description": "OpenProject-specific Avatar component that extends Primer::Beta::Avatar\nto support fallback rendering with initials when no image source is provided.\n\nUses a \"fallback first\" pattern for flicker-free loading:\n1. Always renders fallback SVG as initial <img> src (visible immediately)\n2. Client-side JS test-loads the real URL in background\n3. On success, swaps to real image; on failure, fallback stays visible\n\nThis approach is inspired by OpenProject's Angular PrincipalRendererService.",
|
|
18805
18949
|
"accessibility_docs": null,
|
|
18806
18950
|
"is_form_component": false,
|
|
18807
18951
|
"is_published": true,
|
|
18808
18952
|
"requires_js": false,
|
|
18809
|
-
"component": "OpenProject::
|
|
18953
|
+
"component": "OpenProject::AvatarWithFallback",
|
|
18810
18954
|
"status": "open_project",
|
|
18811
18955
|
"a11y_reviewed": false,
|
|
18812
|
-
"short_name": "
|
|
18813
|
-
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/
|
|
18814
|
-
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/
|
|
18956
|
+
"short_name": "OpenProjectAvatarWithFallback",
|
|
18957
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/avatar_with_fallback.rb",
|
|
18958
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/avatar_with_fallback/default/",
|
|
18815
18959
|
"parameters": [
|
|
18816
18960
|
{
|
|
18817
|
-
"name": "
|
|
18818
|
-
"type": "
|
|
18819
|
-
"default": "`
|
|
18820
|
-
"description": "
|
|
18961
|
+
"name": "src",
|
|
18962
|
+
"type": "String",
|
|
18963
|
+
"default": "`nil`",
|
|
18964
|
+
"description": "The source URL of the avatar image. When provided, JavaScript will test-load it in the background and swap to it on success. When nil or blank, only the fallback SVG is displayed."
|
|
18965
|
+
},
|
|
18966
|
+
{
|
|
18967
|
+
"name": "alt",
|
|
18968
|
+
"type": "String",
|
|
18969
|
+
"default": "`nil`",
|
|
18970
|
+
"description": "Alt text for the avatar. Used for accessibility and to generate initials for the fallback SVG."
|
|
18971
|
+
},
|
|
18972
|
+
{
|
|
18973
|
+
"name": "size",
|
|
18974
|
+
"type": "Integer",
|
|
18975
|
+
"default": "`20`",
|
|
18976
|
+
"description": "One of `16`, `20`, `24`, `32`, `40`, `48`, `64`, or `80`."
|
|
18977
|
+
},
|
|
18978
|
+
{
|
|
18979
|
+
"name": "shape",
|
|
18980
|
+
"type": "Symbol",
|
|
18981
|
+
"default": "`:circle`",
|
|
18982
|
+
"description": "Shape of the avatar. One of `:circle` or `:square`."
|
|
18983
|
+
},
|
|
18984
|
+
{
|
|
18985
|
+
"name": "href",
|
|
18986
|
+
"type": "String",
|
|
18987
|
+
"default": "`nil`",
|
|
18988
|
+
"description": "The URL to link to. If used, component will be wrapped by an `<a>` tag."
|
|
18989
|
+
},
|
|
18990
|
+
{
|
|
18991
|
+
"name": "unique_id",
|
|
18992
|
+
"type": "String, Integer",
|
|
18993
|
+
"default": "`nil`",
|
|
18994
|
+
"description": "Unique identifier for generating consistent avatar colors across renders."
|
|
18821
18995
|
},
|
|
18822
18996
|
{
|
|
18823
18997
|
"name": "system_arguments",
|
|
@@ -18826,24 +19000,11 @@
|
|
|
18826
19000
|
"description": "{{link_to_system_arguments_docs}}"
|
|
18827
19001
|
}
|
|
18828
19002
|
],
|
|
18829
|
-
"slots": [
|
|
18830
|
-
{
|
|
18831
|
-
"name": "rows",
|
|
18832
|
-
"description": "Use to render a block inside the grid",
|
|
18833
|
-
"parameters": [
|
|
18834
|
-
{
|
|
18835
|
-
"name": "system_arguments",
|
|
18836
|
-
"type": "Hash",
|
|
18837
|
-
"default": "N/A",
|
|
18838
|
-
"description": "{{link_to_system_arguments_docs}}"
|
|
18839
|
-
}
|
|
18840
|
-
]
|
|
18841
|
-
}
|
|
18842
|
-
],
|
|
19003
|
+
"slots": [],
|
|
18843
19004
|
"methods": [],
|
|
18844
19005
|
"previews": [
|
|
18845
19006
|
{
|
|
18846
|
-
"preview_path": "primer/open_project/
|
|
19007
|
+
"preview_path": "primer/open_project/avatar_with_fallback/playground",
|
|
18847
19008
|
"name": "playground",
|
|
18848
19009
|
"snapshot": "false",
|
|
18849
19010
|
"skip_rules": {
|
|
@@ -18856,7 +19017,7 @@
|
|
|
18856
19017
|
}
|
|
18857
19018
|
},
|
|
18858
19019
|
{
|
|
18859
|
-
"preview_path": "primer/open_project/
|
|
19020
|
+
"preview_path": "primer/open_project/avatar_with_fallback/default",
|
|
18860
19021
|
"name": "default",
|
|
18861
19022
|
"snapshot": "true",
|
|
18862
19023
|
"skip_rules": {
|
|
@@ -18869,9 +19030,9 @@
|
|
|
18869
19030
|
}
|
|
18870
19031
|
},
|
|
18871
19032
|
{
|
|
18872
|
-
"preview_path": "primer/open_project/
|
|
18873
|
-
"name": "
|
|
18874
|
-
"snapshot": "
|
|
19033
|
+
"preview_path": "primer/open_project/avatar_with_fallback/with_image",
|
|
19034
|
+
"name": "with_image",
|
|
19035
|
+
"snapshot": "true",
|
|
18875
19036
|
"skip_rules": {
|
|
18876
19037
|
"wont_fix": [
|
|
18877
19038
|
"region"
|
|
@@ -18880,68 +19041,422 @@
|
|
|
18880
19041
|
"color-contrast"
|
|
18881
19042
|
]
|
|
18882
19043
|
}
|
|
18883
|
-
}
|
|
18884
|
-
],
|
|
18885
|
-
"subcomponents": []
|
|
18886
|
-
},
|
|
18887
|
-
{
|
|
18888
|
-
"fully_qualified_name": "Primer::OpenProject::BorderGrid::Cell",
|
|
18889
|
-
"description": "A single cell inside the BorderGrid\nA cell can contain for example an action list or a status badge",
|
|
18890
|
-
"accessibility_docs": null,
|
|
18891
|
-
"is_form_component": false,
|
|
18892
|
-
"is_published": true,
|
|
18893
|
-
"requires_js": false,
|
|
18894
|
-
"component": "OpenProject::BorderGrid::Cell",
|
|
18895
|
-
"status": "open_project",
|
|
18896
|
-
"a11y_reviewed": false,
|
|
18897
|
-
"short_name": "OpenProjectBorderGridCell",
|
|
18898
|
-
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid/cell.rb",
|
|
18899
|
-
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/cell/default/",
|
|
18900
|
-
"parameters": [
|
|
18901
|
-
{
|
|
18902
|
-
"name": "system_arguments",
|
|
18903
|
-
"type": "Hash",
|
|
18904
|
-
"default": "N/A",
|
|
18905
|
-
"description": "{{link_to_system_arguments_docs}}"
|
|
18906
|
-
}
|
|
18907
|
-
],
|
|
18908
|
-
"slots": [],
|
|
18909
|
-
"methods": [],
|
|
18910
|
-
"previews": [],
|
|
18911
|
-
"subcomponents": []
|
|
18912
|
-
},
|
|
18913
|
-
{
|
|
18914
|
-
"fully_qualified_name": "Primer::OpenProject::CollapsibleSection",
|
|
18915
|
-
"description": "A component consisting of a title and collapsible content.\nClicking the title will hide the collapsible content",
|
|
18916
|
-
"accessibility_docs": null,
|
|
18917
|
-
"is_form_component": false,
|
|
18918
|
-
"is_published": true,
|
|
18919
|
-
"requires_js": false,
|
|
18920
|
-
"component": "OpenProject::CollapsibleSection",
|
|
18921
|
-
"status": "open_project",
|
|
18922
|
-
"a11y_reviewed": false,
|
|
18923
|
-
"short_name": "OpenProjectCollapsibleSection",
|
|
18924
|
-
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/collapsible_section.rb",
|
|
18925
|
-
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/collapsible_section/default/",
|
|
18926
|
-
"parameters": [
|
|
18927
|
-
{
|
|
18928
|
-
"name": "id",
|
|
18929
|
-
"type": "String",
|
|
18930
|
-
"default": "`self.class.generate_id`",
|
|
18931
|
-
"description": "The unique ID of the collapsible section."
|
|
18932
19044
|
},
|
|
18933
19045
|
{
|
|
18934
|
-
"
|
|
18935
|
-
"
|
|
18936
|
-
"
|
|
18937
|
-
"
|
|
19046
|
+
"preview_path": "primer/open_project/avatar_with_fallback/fallback_default",
|
|
19047
|
+
"name": "fallback_default",
|
|
19048
|
+
"snapshot": "true",
|
|
19049
|
+
"skip_rules": {
|
|
19050
|
+
"wont_fix": [
|
|
19051
|
+
"region"
|
|
19052
|
+
],
|
|
19053
|
+
"will_fix": [
|
|
19054
|
+
"color-contrast"
|
|
19055
|
+
]
|
|
19056
|
+
}
|
|
18938
19057
|
},
|
|
18939
19058
|
{
|
|
18940
|
-
"
|
|
18941
|
-
"
|
|
18942
|
-
"
|
|
18943
|
-
"
|
|
18944
|
-
|
|
19059
|
+
"preview_path": "primer/open_project/avatar_with_fallback/fallback_single_name",
|
|
19060
|
+
"name": "fallback_single_name",
|
|
19061
|
+
"snapshot": "true",
|
|
19062
|
+
"skip_rules": {
|
|
19063
|
+
"wont_fix": [
|
|
19064
|
+
"region"
|
|
19065
|
+
],
|
|
19066
|
+
"will_fix": [
|
|
19067
|
+
"color-contrast"
|
|
19068
|
+
]
|
|
19069
|
+
}
|
|
19070
|
+
},
|
|
19071
|
+
{
|
|
19072
|
+
"preview_path": "primer/open_project/avatar_with_fallback/fallback_multiple",
|
|
19073
|
+
"name": "fallback_multiple",
|
|
19074
|
+
"snapshot": "false",
|
|
19075
|
+
"skip_rules": {
|
|
19076
|
+
"wont_fix": [
|
|
19077
|
+
"region"
|
|
19078
|
+
],
|
|
19079
|
+
"will_fix": [
|
|
19080
|
+
"color-contrast"
|
|
19081
|
+
]
|
|
19082
|
+
}
|
|
19083
|
+
},
|
|
19084
|
+
{
|
|
19085
|
+
"preview_path": "primer/open_project/avatar_with_fallback/fallback_sizes",
|
|
19086
|
+
"name": "fallback_sizes",
|
|
19087
|
+
"snapshot": "false",
|
|
19088
|
+
"skip_rules": {
|
|
19089
|
+
"wont_fix": [
|
|
19090
|
+
"region"
|
|
19091
|
+
],
|
|
19092
|
+
"will_fix": [
|
|
19093
|
+
"color-contrast"
|
|
19094
|
+
]
|
|
19095
|
+
}
|
|
19096
|
+
},
|
|
19097
|
+
{
|
|
19098
|
+
"preview_path": "primer/open_project/avatar_with_fallback/fallback_square",
|
|
19099
|
+
"name": "fallback_square",
|
|
19100
|
+
"snapshot": "true",
|
|
19101
|
+
"skip_rules": {
|
|
19102
|
+
"wont_fix": [
|
|
19103
|
+
"region"
|
|
19104
|
+
],
|
|
19105
|
+
"will_fix": [
|
|
19106
|
+
"color-contrast"
|
|
19107
|
+
]
|
|
19108
|
+
}
|
|
19109
|
+
},
|
|
19110
|
+
{
|
|
19111
|
+
"preview_path": "primer/open_project/avatar_with_fallback/fallback_as_link",
|
|
19112
|
+
"name": "fallback_as_link",
|
|
19113
|
+
"snapshot": "false",
|
|
19114
|
+
"skip_rules": {
|
|
19115
|
+
"wont_fix": [
|
|
19116
|
+
"region"
|
|
19117
|
+
],
|
|
19118
|
+
"will_fix": [
|
|
19119
|
+
"color-contrast"
|
|
19120
|
+
]
|
|
19121
|
+
}
|
|
19122
|
+
},
|
|
19123
|
+
{
|
|
19124
|
+
"preview_path": "primer/open_project/avatar_with_fallback/broken_image_404",
|
|
19125
|
+
"name": "broken_image_404",
|
|
19126
|
+
"snapshot": "true",
|
|
19127
|
+
"skip_rules": {
|
|
19128
|
+
"wont_fix": [
|
|
19129
|
+
"region"
|
|
19130
|
+
],
|
|
19131
|
+
"will_fix": [
|
|
19132
|
+
"color-contrast"
|
|
19133
|
+
]
|
|
19134
|
+
}
|
|
19135
|
+
},
|
|
19136
|
+
{
|
|
19137
|
+
"preview_path": "primer/open_project/avatar_with_fallback/multiple_broken_images",
|
|
19138
|
+
"name": "multiple_broken_images",
|
|
19139
|
+
"snapshot": "false",
|
|
19140
|
+
"skip_rules": {
|
|
19141
|
+
"wont_fix": [
|
|
19142
|
+
"region"
|
|
19143
|
+
],
|
|
19144
|
+
"will_fix": [
|
|
19145
|
+
"color-contrast"
|
|
19146
|
+
]
|
|
19147
|
+
}
|
|
19148
|
+
}
|
|
19149
|
+
],
|
|
19150
|
+
"subcomponents": []
|
|
19151
|
+
},
|
|
19152
|
+
{
|
|
19153
|
+
"fully_qualified_name": "Primer::OpenProject::BorderBox::CollapsibleHeader",
|
|
19154
|
+
"description": "A component to be used inside Primer::Beta::BorderBox.\nIt will toggle the visibility of the complete Box body",
|
|
19155
|
+
"accessibility_docs": null,
|
|
19156
|
+
"is_form_component": false,
|
|
19157
|
+
"is_published": true,
|
|
19158
|
+
"requires_js": false,
|
|
19159
|
+
"component": "OpenProject::BorderBox::CollapsibleHeader",
|
|
19160
|
+
"status": "open_project",
|
|
19161
|
+
"a11y_reviewed": false,
|
|
19162
|
+
"short_name": "OpenProjectBorderBoxCollapsibleHeader",
|
|
19163
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_box/collapsible_header.rb",
|
|
19164
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_box/collapsible_header/default/",
|
|
19165
|
+
"parameters": [
|
|
19166
|
+
{
|
|
19167
|
+
"name": "id",
|
|
19168
|
+
"type": "String",
|
|
19169
|
+
"default": "`self.class.generate_id`",
|
|
19170
|
+
"description": "The unique ID of the collapsible header."
|
|
19171
|
+
},
|
|
19172
|
+
{
|
|
19173
|
+
"name": "box",
|
|
19174
|
+
"type": "Primer::Beta::BorderBox",
|
|
19175
|
+
"default": "`nil`",
|
|
19176
|
+
"description": "Deprecated. Previously used to reference the parent BorderBox."
|
|
19177
|
+
},
|
|
19178
|
+
{
|
|
19179
|
+
"name": "collapsed",
|
|
19180
|
+
"type": "Boolean",
|
|
19181
|
+
"default": "`false`",
|
|
19182
|
+
"description": "Whether the header is collapsed on initial render."
|
|
19183
|
+
},
|
|
19184
|
+
{
|
|
19185
|
+
"name": "collapsible_id",
|
|
19186
|
+
"type": "String",
|
|
19187
|
+
"default": "`nil`",
|
|
19188
|
+
"description": "The id or ids of the elements that will be collapsed. This should include the BorderBox's list, body and footer. This will be required in future versions."
|
|
19189
|
+
},
|
|
19190
|
+
{
|
|
19191
|
+
"name": "multi_line",
|
|
19192
|
+
"type": "Boolean",
|
|
19193
|
+
"default": "`true`",
|
|
19194
|
+
"description": "Whether the description is on its own line and can wrap across multiple lines."
|
|
19195
|
+
},
|
|
19196
|
+
{
|
|
19197
|
+
"name": "system_arguments",
|
|
19198
|
+
"type": "Hash",
|
|
19199
|
+
"default": "N/A",
|
|
19200
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19201
|
+
}
|
|
19202
|
+
],
|
|
19203
|
+
"slots": [
|
|
19204
|
+
{
|
|
19205
|
+
"name": "title",
|
|
19206
|
+
"description": "Required title",
|
|
19207
|
+
"parameters": [
|
|
19208
|
+
{
|
|
19209
|
+
"name": "tag",
|
|
19210
|
+
"type": "Symbol",
|
|
19211
|
+
"default": "N/A",
|
|
19212
|
+
"description": "One of `:h1`, `:h2`, `:h3`, `:h4`, `:h5`, or `:h6`."
|
|
19213
|
+
},
|
|
19214
|
+
{
|
|
19215
|
+
"name": "system_arguments",
|
|
19216
|
+
"type": "Hash",
|
|
19217
|
+
"default": "N/A",
|
|
19218
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19219
|
+
}
|
|
19220
|
+
]
|
|
19221
|
+
},
|
|
19222
|
+
{
|
|
19223
|
+
"name": "count",
|
|
19224
|
+
"description": "Optional count",
|
|
19225
|
+
"parameters": [
|
|
19226
|
+
{
|
|
19227
|
+
"name": "system_arguments",
|
|
19228
|
+
"type": "Hash",
|
|
19229
|
+
"default": "N/A",
|
|
19230
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19231
|
+
}
|
|
19232
|
+
]
|
|
19233
|
+
},
|
|
19234
|
+
{
|
|
19235
|
+
"name": "description",
|
|
19236
|
+
"description": "Optional description",
|
|
19237
|
+
"parameters": [
|
|
19238
|
+
{
|
|
19239
|
+
"name": "system_arguments",
|
|
19240
|
+
"type": "Hash",
|
|
19241
|
+
"default": "N/A",
|
|
19242
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19243
|
+
}
|
|
19244
|
+
]
|
|
19245
|
+
}
|
|
19246
|
+
],
|
|
19247
|
+
"methods": [],
|
|
19248
|
+
"previews": [
|
|
19249
|
+
{
|
|
19250
|
+
"preview_path": "primer/open_project/border_box/collapsible_header/playground",
|
|
19251
|
+
"name": "playground",
|
|
19252
|
+
"snapshot": "false",
|
|
19253
|
+
"skip_rules": {
|
|
19254
|
+
"wont_fix": [
|
|
19255
|
+
"region"
|
|
19256
|
+
],
|
|
19257
|
+
"will_fix": [
|
|
19258
|
+
"color-contrast"
|
|
19259
|
+
]
|
|
19260
|
+
}
|
|
19261
|
+
},
|
|
19262
|
+
{
|
|
19263
|
+
"preview_path": "primer/open_project/border_box/collapsible_header/default",
|
|
19264
|
+
"name": "default",
|
|
19265
|
+
"snapshot": "true",
|
|
19266
|
+
"skip_rules": {
|
|
19267
|
+
"wont_fix": [
|
|
19268
|
+
"region"
|
|
19269
|
+
],
|
|
19270
|
+
"will_fix": [
|
|
19271
|
+
"color-contrast"
|
|
19272
|
+
]
|
|
19273
|
+
}
|
|
19274
|
+
},
|
|
19275
|
+
{
|
|
19276
|
+
"preview_path": "primer/open_project/border_box/collapsible_header/with_count",
|
|
19277
|
+
"name": "with_count",
|
|
19278
|
+
"snapshot": "true",
|
|
19279
|
+
"skip_rules": {
|
|
19280
|
+
"wont_fix": [
|
|
19281
|
+
"region"
|
|
19282
|
+
],
|
|
19283
|
+
"will_fix": [
|
|
19284
|
+
"color-contrast"
|
|
19285
|
+
]
|
|
19286
|
+
}
|
|
19287
|
+
},
|
|
19288
|
+
{
|
|
19289
|
+
"preview_path": "primer/open_project/border_box/collapsible_header/with_description",
|
|
19290
|
+
"name": "with_description",
|
|
19291
|
+
"snapshot": "true",
|
|
19292
|
+
"skip_rules": {
|
|
19293
|
+
"wont_fix": [
|
|
19294
|
+
"region"
|
|
19295
|
+
],
|
|
19296
|
+
"will_fix": [
|
|
19297
|
+
"color-contrast"
|
|
19298
|
+
]
|
|
19299
|
+
}
|
|
19300
|
+
},
|
|
19301
|
+
{
|
|
19302
|
+
"preview_path": "primer/open_project/border_box/collapsible_header/collapsed",
|
|
19303
|
+
"name": "collapsed",
|
|
19304
|
+
"snapshot": "true",
|
|
19305
|
+
"skip_rules": {
|
|
19306
|
+
"wont_fix": [
|
|
19307
|
+
"region"
|
|
19308
|
+
],
|
|
19309
|
+
"will_fix": [
|
|
19310
|
+
"color-contrast"
|
|
19311
|
+
]
|
|
19312
|
+
}
|
|
19313
|
+
}
|
|
19314
|
+
],
|
|
19315
|
+
"subcomponents": []
|
|
19316
|
+
},
|
|
19317
|
+
{
|
|
19318
|
+
"fully_qualified_name": "Primer::OpenProject::BorderGrid",
|
|
19319
|
+
"description": "A set of blocks that are shown below each other with separator lines in between",
|
|
19320
|
+
"accessibility_docs": null,
|
|
19321
|
+
"is_form_component": false,
|
|
19322
|
+
"is_published": true,
|
|
19323
|
+
"requires_js": false,
|
|
19324
|
+
"component": "OpenProject::BorderGrid",
|
|
19325
|
+
"status": "open_project",
|
|
19326
|
+
"a11y_reviewed": false,
|
|
19327
|
+
"short_name": "OpenProjectBorderGrid",
|
|
19328
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid.rb",
|
|
19329
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/default/",
|
|
19330
|
+
"parameters": [
|
|
19331
|
+
{
|
|
19332
|
+
"name": "spacious",
|
|
19333
|
+
"type": "Boolean",
|
|
19334
|
+
"default": "`false`",
|
|
19335
|
+
"description": "Whether to add margin to the bottom of the component."
|
|
19336
|
+
},
|
|
19337
|
+
{
|
|
19338
|
+
"name": "system_arguments",
|
|
19339
|
+
"type": "Hash",
|
|
19340
|
+
"default": "N/A",
|
|
19341
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19342
|
+
}
|
|
19343
|
+
],
|
|
19344
|
+
"slots": [
|
|
19345
|
+
{
|
|
19346
|
+
"name": "rows",
|
|
19347
|
+
"description": "Use to render a block inside the grid",
|
|
19348
|
+
"parameters": [
|
|
19349
|
+
{
|
|
19350
|
+
"name": "system_arguments",
|
|
19351
|
+
"type": "Hash",
|
|
19352
|
+
"default": "N/A",
|
|
19353
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19354
|
+
}
|
|
19355
|
+
]
|
|
19356
|
+
}
|
|
19357
|
+
],
|
|
19358
|
+
"methods": [],
|
|
19359
|
+
"previews": [
|
|
19360
|
+
{
|
|
19361
|
+
"preview_path": "primer/open_project/border_grid/playground",
|
|
19362
|
+
"name": "playground",
|
|
19363
|
+
"snapshot": "false",
|
|
19364
|
+
"skip_rules": {
|
|
19365
|
+
"wont_fix": [
|
|
19366
|
+
"region"
|
|
19367
|
+
],
|
|
19368
|
+
"will_fix": [
|
|
19369
|
+
"color-contrast"
|
|
19370
|
+
]
|
|
19371
|
+
}
|
|
19372
|
+
},
|
|
19373
|
+
{
|
|
19374
|
+
"preview_path": "primer/open_project/border_grid/default",
|
|
19375
|
+
"name": "default",
|
|
19376
|
+
"snapshot": "true",
|
|
19377
|
+
"skip_rules": {
|
|
19378
|
+
"wont_fix": [
|
|
19379
|
+
"region"
|
|
19380
|
+
],
|
|
19381
|
+
"will_fix": [
|
|
19382
|
+
"color-contrast"
|
|
19383
|
+
]
|
|
19384
|
+
}
|
|
19385
|
+
},
|
|
19386
|
+
{
|
|
19387
|
+
"preview_path": "primer/open_project/border_grid/spacious",
|
|
19388
|
+
"name": "spacious",
|
|
19389
|
+
"snapshot": "false",
|
|
19390
|
+
"skip_rules": {
|
|
19391
|
+
"wont_fix": [
|
|
19392
|
+
"region"
|
|
19393
|
+
],
|
|
19394
|
+
"will_fix": [
|
|
19395
|
+
"color-contrast"
|
|
19396
|
+
]
|
|
19397
|
+
}
|
|
19398
|
+
}
|
|
19399
|
+
],
|
|
19400
|
+
"subcomponents": []
|
|
19401
|
+
},
|
|
19402
|
+
{
|
|
19403
|
+
"fully_qualified_name": "Primer::OpenProject::BorderGrid::Cell",
|
|
19404
|
+
"description": "A single cell inside the BorderGrid\nA cell can contain for example an action list or a status badge",
|
|
19405
|
+
"accessibility_docs": null,
|
|
19406
|
+
"is_form_component": false,
|
|
19407
|
+
"is_published": true,
|
|
19408
|
+
"requires_js": false,
|
|
19409
|
+
"component": "OpenProject::BorderGrid::Cell",
|
|
19410
|
+
"status": "open_project",
|
|
19411
|
+
"a11y_reviewed": false,
|
|
19412
|
+
"short_name": "OpenProjectBorderGridCell",
|
|
19413
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid/cell.rb",
|
|
19414
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/cell/default/",
|
|
19415
|
+
"parameters": [
|
|
19416
|
+
{
|
|
19417
|
+
"name": "system_arguments",
|
|
19418
|
+
"type": "Hash",
|
|
19419
|
+
"default": "N/A",
|
|
19420
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19421
|
+
}
|
|
19422
|
+
],
|
|
19423
|
+
"slots": [],
|
|
19424
|
+
"methods": [],
|
|
19425
|
+
"previews": [],
|
|
19426
|
+
"subcomponents": []
|
|
19427
|
+
},
|
|
19428
|
+
{
|
|
19429
|
+
"fully_qualified_name": "Primer::OpenProject::CollapsibleSection",
|
|
19430
|
+
"description": "A component consisting of a title and collapsible content.\nClicking the title will hide the collapsible content",
|
|
19431
|
+
"accessibility_docs": null,
|
|
19432
|
+
"is_form_component": false,
|
|
19433
|
+
"is_published": true,
|
|
19434
|
+
"requires_js": false,
|
|
19435
|
+
"component": "OpenProject::CollapsibleSection",
|
|
19436
|
+
"status": "open_project",
|
|
19437
|
+
"a11y_reviewed": false,
|
|
19438
|
+
"short_name": "OpenProjectCollapsibleSection",
|
|
19439
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/collapsible_section.rb",
|
|
19440
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/collapsible_section/default/",
|
|
19441
|
+
"parameters": [
|
|
19442
|
+
{
|
|
19443
|
+
"name": "id",
|
|
19444
|
+
"type": "String",
|
|
19445
|
+
"default": "`self.class.generate_id`",
|
|
19446
|
+
"description": "The unique ID of the collapsible section."
|
|
19447
|
+
},
|
|
19448
|
+
{
|
|
19449
|
+
"name": "collapsed",
|
|
19450
|
+
"type": "Boolean",
|
|
19451
|
+
"default": "`false`",
|
|
19452
|
+
"description": "Whether the section is collapsed on initial render."
|
|
19453
|
+
},
|
|
19454
|
+
{
|
|
19455
|
+
"name": "system_arguments",
|
|
19456
|
+
"type": "Hash",
|
|
19457
|
+
"default": "N/A",
|
|
19458
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
19459
|
+
}
|
|
18945
19460
|
],
|
|
18946
19461
|
"slots": [
|
|
18947
19462
|
{
|
|
@@ -19364,6 +19879,18 @@
|
|
|
19364
19879
|
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/drag_handle.rb",
|
|
19365
19880
|
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/drag_handle/default/",
|
|
19366
19881
|
"parameters": [
|
|
19882
|
+
{
|
|
19883
|
+
"name": "size",
|
|
19884
|
+
"type": "Symbol",
|
|
19885
|
+
"default": "`:small`",
|
|
19886
|
+
"description": "One of `:medium`, `:small`, or `:xsmall`."
|
|
19887
|
+
},
|
|
19888
|
+
{
|
|
19889
|
+
"name": "label",
|
|
19890
|
+
"type": "String",
|
|
19891
|
+
"default": "`I18n.t(\"drag_handle.button_drag\")`",
|
|
19892
|
+
"description": "String that can be read by assistive technology. A label should be short and concise. See the accessibility section for more information."
|
|
19893
|
+
},
|
|
19367
19894
|
{
|
|
19368
19895
|
"name": "system_arguments",
|
|
19369
19896
|
"type": "Hash",
|
|
@@ -19667,6 +20194,83 @@
|
|
|
19667
20194
|
],
|
|
19668
20195
|
"subcomponents": []
|
|
19669
20196
|
},
|
|
20197
|
+
{
|
|
20198
|
+
"fully_qualified_name": "Primer::OpenProject::Fieldset",
|
|
20199
|
+
"description": "A low-level component for building fieldsets with unopinionated styling.\n\nThis component is not designed to be used directly, but rather a primitive for\nauthors of other components and form controls.",
|
|
20200
|
+
"accessibility_docs": null,
|
|
20201
|
+
"is_form_component": false,
|
|
20202
|
+
"is_published": true,
|
|
20203
|
+
"requires_js": false,
|
|
20204
|
+
"component": "OpenProject::Fieldset",
|
|
20205
|
+
"status": "open_project",
|
|
20206
|
+
"a11y_reviewed": false,
|
|
20207
|
+
"short_name": "OpenProjectFieldset",
|
|
20208
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/fieldset.rb",
|
|
20209
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/fieldset/default/",
|
|
20210
|
+
"parameters": [
|
|
20211
|
+
{
|
|
20212
|
+
"name": "legend_text",
|
|
20213
|
+
"type": "String",
|
|
20214
|
+
"default": "`nil`",
|
|
20215
|
+
"description": "A legend should be short and concise. The String will also be read by assistive technology."
|
|
20216
|
+
},
|
|
20217
|
+
{
|
|
20218
|
+
"name": "visually_hide_legend",
|
|
20219
|
+
"type": "Boolean",
|
|
20220
|
+
"default": "`false`",
|
|
20221
|
+
"description": "Controls if the legend is visible. If `true`, screen reader only text will be added."
|
|
20222
|
+
},
|
|
20223
|
+
{
|
|
20224
|
+
"name": "system_arguments",
|
|
20225
|
+
"type": "Hash",
|
|
20226
|
+
"default": "N/A",
|
|
20227
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
20228
|
+
}
|
|
20229
|
+
],
|
|
20230
|
+
"slots": [
|
|
20231
|
+
{
|
|
20232
|
+
"name": "legend",
|
|
20233
|
+
"description": null,
|
|
20234
|
+
"parameters": []
|
|
20235
|
+
}
|
|
20236
|
+
],
|
|
20237
|
+
"methods": [
|
|
20238
|
+
{
|
|
20239
|
+
"name": "legend_text",
|
|
20240
|
+
"description": "Returns the value of attribute legend_text.",
|
|
20241
|
+
"parameters": [],
|
|
20242
|
+
"return_types": []
|
|
20243
|
+
}
|
|
20244
|
+
],
|
|
20245
|
+
"previews": [],
|
|
20246
|
+
"subcomponents": []
|
|
20247
|
+
},
|
|
20248
|
+
{
|
|
20249
|
+
"fully_qualified_name": "Primer::OpenProject::Fieldset::LegendComponent",
|
|
20250
|
+
"description": "",
|
|
20251
|
+
"accessibility_docs": null,
|
|
20252
|
+
"is_form_component": false,
|
|
20253
|
+
"is_published": true,
|
|
20254
|
+
"requires_js": false,
|
|
20255
|
+
"component": "OpenProject::Fieldset::Legend",
|
|
20256
|
+
"status": "open_project",
|
|
20257
|
+
"a11y_reviewed": false,
|
|
20258
|
+
"short_name": "OpenProjectFieldsetLegend",
|
|
20259
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/fieldset/legend_component.rb",
|
|
20260
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/fieldset/legend/default/",
|
|
20261
|
+
"parameters": [],
|
|
20262
|
+
"slots": [],
|
|
20263
|
+
"methods": [
|
|
20264
|
+
{
|
|
20265
|
+
"name": "text",
|
|
20266
|
+
"description": "Returns the value of attribute text.",
|
|
20267
|
+
"parameters": [],
|
|
20268
|
+
"return_types": []
|
|
20269
|
+
}
|
|
20270
|
+
],
|
|
20271
|
+
"previews": [],
|
|
20272
|
+
"subcomponents": []
|
|
20273
|
+
},
|
|
19670
20274
|
{
|
|
19671
20275
|
"fully_qualified_name": "Primer::OpenProject::FilterableTreeView",
|
|
19672
20276
|
"description": "A TreeView and associated filter controls for searching nested hierarchies.\n\n## Filter controls\n\n`FilterableTreeView`s can be filtered using two controls, both present in the toolbar above the tree:\n\n1. A free-form query string from a text input field.\n2. A `SegmentedControl` with two options (by default):\n 1. The \"Selected\" option causes the component to only show checked nodes, provided they also satisfy the other\n filter criteria described here.\n 2. The \"All\" option causes the component to show all nodes, provided they also satisfy the other filter\n criteria described here.\n\n## Custom filter modes\n\nIn addition to the default filter modes of `'all'` and `'selected'` described above, `FilterableTreeView` supports\nadding custom filter modes. Adding a filter mode will cause its label to appear in the `SegmentedControl` in the\ntoolbar, and will be passed as the third argument to the filter function (see below).\n\nHere's how to add a custom filter mode in addition to the default ones:\n\n```erb\n<%= render(Primer::OpenProject::FilterableTreeView.new) do |tree_view| %>\n <%# remove this line to prevent adding the default modes %>\n <% tree_view.with_default_filter_modes %>\n <% tree_view.with_filter_mode(name: \"Custom\", system_arguments)\n<% end %>\n```\n\n## Filter behavior\n\nBy default, matching node text is identified by looking for an exact substring match, operating on a lowercased\nversion of both the query string and the node text. For more information, and to provide a customized filter\nfunction, please see the section titled \"Customizing the filter function\" below.\n\nNodes that match the filter appear as normal; nodes that do not match are presented as follows:\n\n1. Leaf nodes are hidden.\n2. Sub-tree nodes with no matching children are hidden.\n3. Sub-tree nodes with at least one matching child are disabled but still visible.\n\n## Checking behavior\n\nBy default, checking a node in a `FilterableTreeView` checks only that node (i.e. no child nodes are checked).\nTo aide in checking children in deeply nested or highly populated hierarchies, a third control exists in the\ntoolbar: the \"Include sub-items\" check box. If this feature is turned on, checking sub-tree nodes causes all\nchildren, both leaf and sub-tree nodes, to also be checked recursively. Moreover, turning this feature on will\ncause the children of any previously checked nodes to be checked recursively. Unchecking a node while in\n\"Include sub-items\" mode will restore that sub-tree and all its children to their previously checked state, so as\nnot to permanently override a user's selections. Unchecking the \"Include sub-items\" check box has a similar effect,\ni.e. restores all previous user selections under currently checked sub-trees.\n\n## JavaScript API\n\n`FilterableTreeView` does not yet have an extensive JavaScript API, but this may change in the future as the\ncomponent is further developed to fit additional use-cases.\n\n### Customizing the filter function\n\nThe filter function can be customized by setting the value of the `filterFn` property to a function with the\nfollowing signature:\n\n```typescript\nexport type FilterFn = (node: HTMLElement, query: string, filterMode?: string) => Range[] | null\n```\n\nThis function will be called once for each node in the tree every time filter controls change (i.e. when the\nfilter mode or query string are altered). The function is called with the following arguments:\n\n|Argument |Description |\n|:-----------|:----------------------------------------------------------------|\n|`node` |The HTML node element, i.e. the element with `role=treeitem` set.|\n|`query` |The query string. |\n|`filterMode`|The filter mode, either `'all'` or `'selected'`. |\n\nThe component expects the filter function to return specific values depending on the type of match:\n\n1. No match - return `null`\n2. Match but no highlights (eg. when the query string is empty) - return an empty array\n3. Match with highlights - return a non-empty array of `Range` objects\n\nExample:\n\n```javascript\nconst filterableTreeView = document.querySelector('filterable-tree-view')\nfilterableTreeView.filterFn = (node, query, filterMode) => {\n // custom filter implementation here\n}\n```\n\nYou can read about `Range` objects here: https://developer.mozilla.org/en-US/docs/Web/API/Range.\n\nFor a complete example demonstrating how to implement a working filter function complete with range highlighting,\nsee the default filter function available in the `FilterableTreeViewElement` JavaScript class, which is part of\nthe Primer source code.\n\n### Events\n\nCurrently `FilterableTreeView` does not emit any events aside from the events already emitted by the `TreeView`\ncomponent.",
|
|
@@ -20159,6 +20763,71 @@
|
|
|
20159
20763
|
],
|
|
20160
20764
|
"subcomponents": []
|
|
20161
20765
|
},
|
|
20766
|
+
{
|
|
20767
|
+
"fully_qualified_name": "Primer::OpenProject::InlineMessage",
|
|
20768
|
+
"description": "A simple component to render warning text.\n\nThe warning text is rendered in the \"attention\" Primer color and\nuses a leading alert Octicon for additional emphasis. This component\nis designed to be used \"inline\", e.g. table cells, and in places\nwhere a Banner component might be overkill.",
|
|
20769
|
+
"accessibility_docs": null,
|
|
20770
|
+
"is_form_component": false,
|
|
20771
|
+
"is_published": true,
|
|
20772
|
+
"requires_js": false,
|
|
20773
|
+
"component": "OpenProject::InlineMessage",
|
|
20774
|
+
"status": "open_project",
|
|
20775
|
+
"a11y_reviewed": false,
|
|
20776
|
+
"short_name": "OpenProjectInlineMessage",
|
|
20777
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/inline_message.rb",
|
|
20778
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/inline_message/default/",
|
|
20779
|
+
"parameters": [
|
|
20780
|
+
{
|
|
20781
|
+
"name": "scheme",
|
|
20782
|
+
"type": "Symbol",
|
|
20783
|
+
"default": "N/A",
|
|
20784
|
+
"description": "One of `:critical`, `:success`, `:unavailable`, or `:warning`."
|
|
20785
|
+
},
|
|
20786
|
+
{
|
|
20787
|
+
"name": "size",
|
|
20788
|
+
"type": "Symbol",
|
|
20789
|
+
"default": "`:medium`",
|
|
20790
|
+
"description": "One of `:medium` or `:small`."
|
|
20791
|
+
},
|
|
20792
|
+
{
|
|
20793
|
+
"name": "system_arguments",
|
|
20794
|
+
"type": "Hash",
|
|
20795
|
+
"default": "N/A",
|
|
20796
|
+
"description": "{{link_to_system_arguments_docs}}"
|
|
20797
|
+
}
|
|
20798
|
+
],
|
|
20799
|
+
"slots": [],
|
|
20800
|
+
"methods": [],
|
|
20801
|
+
"previews": [
|
|
20802
|
+
{
|
|
20803
|
+
"preview_path": "primer/open_project/inline_message/default",
|
|
20804
|
+
"name": "default",
|
|
20805
|
+
"snapshot": "true",
|
|
20806
|
+
"skip_rules": {
|
|
20807
|
+
"wont_fix": [
|
|
20808
|
+
"region"
|
|
20809
|
+
],
|
|
20810
|
+
"will_fix": [
|
|
20811
|
+
"color-contrast"
|
|
20812
|
+
]
|
|
20813
|
+
}
|
|
20814
|
+
},
|
|
20815
|
+
{
|
|
20816
|
+
"preview_path": "primer/open_project/inline_message/playground",
|
|
20817
|
+
"name": "playground",
|
|
20818
|
+
"snapshot": "false",
|
|
20819
|
+
"skip_rules": {
|
|
20820
|
+
"wont_fix": [
|
|
20821
|
+
"region"
|
|
20822
|
+
],
|
|
20823
|
+
"will_fix": [
|
|
20824
|
+
"color-contrast"
|
|
20825
|
+
]
|
|
20826
|
+
}
|
|
20827
|
+
}
|
|
20828
|
+
],
|
|
20829
|
+
"subcomponents": []
|
|
20830
|
+
},
|
|
20162
20831
|
{
|
|
20163
20832
|
"fully_qualified_name": "Primer::OpenProject::InputGroup",
|
|
20164
20833
|
"description": "`InputGroup` is composed of a text field input with a trailing action",
|
|
@@ -20363,7 +21032,7 @@
|
|
|
20363
21032
|
},
|
|
20364
21033
|
{
|
|
20365
21034
|
"name": "breadcrumbs",
|
|
20366
|
-
"description": "
|
|
21035
|
+
"description": "Using PageHeader without breadcrumbs is only recommended in special cases.\nIn doubt, please check the PageHeader component documentation.",
|
|
20367
21036
|
"parameters": [
|
|
20368
21037
|
{
|
|
20369
21038
|
"name": "items",
|
|
@@ -20551,8 +21220,8 @@
|
|
|
20551
21220
|
}
|
|
20552
21221
|
},
|
|
20553
21222
|
{
|
|
20554
|
-
"preview_path": "primer/open_project/page_header/
|
|
20555
|
-
"name": "
|
|
21223
|
+
"preview_path": "primer/open_project/page_header/truncated_breadcrumbs",
|
|
21224
|
+
"name": "truncated_breadcrumbs",
|
|
20556
21225
|
"snapshot": "false",
|
|
20557
21226
|
"skip_rules": {
|
|
20558
21227
|
"wont_fix": [
|
|
@@ -20564,8 +21233,8 @@
|
|
|
20564
21233
|
}
|
|
20565
21234
|
},
|
|
20566
21235
|
{
|
|
20567
|
-
"preview_path": "primer/open_project/page_header/
|
|
20568
|
-
"name": "
|
|
21236
|
+
"preview_path": "primer/open_project/page_header/without_breadcrumbs",
|
|
21237
|
+
"name": "without_breadcrumbs",
|
|
20569
21238
|
"snapshot": "false",
|
|
20570
21239
|
"skip_rules": {
|
|
20571
21240
|
"wont_fix": [
|
|
@@ -20577,8 +21246,8 @@
|
|
|
20577
21246
|
}
|
|
20578
21247
|
},
|
|
20579
21248
|
{
|
|
20580
|
-
"preview_path": "primer/open_project/page_header/
|
|
20581
|
-
"name": "
|
|
21249
|
+
"preview_path": "primer/open_project/page_header/skip_breadcrumb_item",
|
|
21250
|
+
"name": "skip_breadcrumb_item",
|
|
20582
21251
|
"snapshot": "false",
|
|
20583
21252
|
"skip_rules": {
|
|
20584
21253
|
"wont_fix": [
|
|
@@ -20590,8 +21259,34 @@
|
|
|
20590
21259
|
}
|
|
20591
21260
|
},
|
|
20592
21261
|
{
|
|
20593
|
-
"preview_path": "primer/open_project/page_header/
|
|
20594
|
-
"name": "
|
|
21262
|
+
"preview_path": "primer/open_project/page_header/tab_nav",
|
|
21263
|
+
"name": "tab_nav",
|
|
21264
|
+
"snapshot": "false",
|
|
21265
|
+
"skip_rules": {
|
|
21266
|
+
"wont_fix": [
|
|
21267
|
+
"region"
|
|
21268
|
+
],
|
|
21269
|
+
"will_fix": [
|
|
21270
|
+
"color-contrast"
|
|
21271
|
+
]
|
|
21272
|
+
}
|
|
21273
|
+
},
|
|
21274
|
+
{
|
|
21275
|
+
"preview_path": "primer/open_project/page_header/segmented_control",
|
|
21276
|
+
"name": "segmented_control",
|
|
21277
|
+
"snapshot": "false",
|
|
21278
|
+
"skip_rules": {
|
|
21279
|
+
"wont_fix": [
|
|
21280
|
+
"region"
|
|
21281
|
+
],
|
|
21282
|
+
"will_fix": [
|
|
21283
|
+
"color-contrast"
|
|
21284
|
+
]
|
|
21285
|
+
}
|
|
21286
|
+
},
|
|
21287
|
+
{
|
|
21288
|
+
"preview_path": "primer/open_project/page_header/segmented_control_mobile_icons",
|
|
21289
|
+
"name": "segmented_control_mobile_icons",
|
|
20595
21290
|
"snapshot": "false",
|
|
20596
21291
|
"skip_rules": {
|
|
20597
21292
|
"wont_fix": [
|
|
@@ -20714,6 +21409,89 @@
|
|
|
20714
21409
|
"previews": [],
|
|
20715
21410
|
"subcomponents": []
|
|
20716
21411
|
},
|
|
21412
|
+
{
|
|
21413
|
+
"fully_qualified_name": "Primer::OpenProject::Pagination",
|
|
21414
|
+
"description": "",
|
|
21415
|
+
"accessibility_docs": null,
|
|
21416
|
+
"is_form_component": false,
|
|
21417
|
+
"is_published": true,
|
|
21418
|
+
"requires_js": false,
|
|
21419
|
+
"component": "OpenProject::Pagination",
|
|
21420
|
+
"status": "open_project",
|
|
21421
|
+
"a11y_reviewed": false,
|
|
21422
|
+
"short_name": "OpenProjectPagination",
|
|
21423
|
+
"source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/pagination.rb",
|
|
21424
|
+
"lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/pagination/default/",
|
|
21425
|
+
"parameters": [],
|
|
21426
|
+
"slots": [],
|
|
21427
|
+
"methods": [
|
|
21428
|
+
{
|
|
21429
|
+
"name": "page_count",
|
|
21430
|
+
"description": "Returns the value of attribute page_count.",
|
|
21431
|
+
"parameters": [],
|
|
21432
|
+
"return_types": []
|
|
21433
|
+
},
|
|
21434
|
+
{
|
|
21435
|
+
"name": "current_page",
|
|
21436
|
+
"description": "Returns the value of attribute current_page.",
|
|
21437
|
+
"parameters": [],
|
|
21438
|
+
"return_types": []
|
|
21439
|
+
},
|
|
21440
|
+
{
|
|
21441
|
+
"name": "href_builder",
|
|
21442
|
+
"description": "Returns the value of attribute href_builder.",
|
|
21443
|
+
"parameters": [],
|
|
21444
|
+
"return_types": []
|
|
21445
|
+
},
|
|
21446
|
+
{
|
|
21447
|
+
"name": "margin_page_count",
|
|
21448
|
+
"description": "Returns the value of attribute margin_page_count.",
|
|
21449
|
+
"parameters": [],
|
|
21450
|
+
"return_types": []
|
|
21451
|
+
},
|
|
21452
|
+
{
|
|
21453
|
+
"name": "show_pages",
|
|
21454
|
+
"description": "Returns the value of attribute show_pages.",
|
|
21455
|
+
"parameters": [],
|
|
21456
|
+
"return_types": []
|
|
21457
|
+
},
|
|
21458
|
+
{
|
|
21459
|
+
"name": "surrounding_page_count",
|
|
21460
|
+
"description": "Returns the value of attribute surrounding_page_count.",
|
|
21461
|
+
"parameters": [],
|
|
21462
|
+
"return_types": []
|
|
21463
|
+
}
|
|
21464
|
+
],
|
|
21465
|
+
"previews": [
|
|
21466
|
+
{
|
|
21467
|
+
"preview_path": "primer/open_project/pagination/playground",
|
|
21468
|
+
"name": "playground",
|
|
21469
|
+
"snapshot": "false",
|
|
21470
|
+
"skip_rules": {
|
|
21471
|
+
"wont_fix": [
|
|
21472
|
+
"region"
|
|
21473
|
+
],
|
|
21474
|
+
"will_fix": [
|
|
21475
|
+
"color-contrast"
|
|
21476
|
+
]
|
|
21477
|
+
}
|
|
21478
|
+
},
|
|
21479
|
+
{
|
|
21480
|
+
"preview_path": "primer/open_project/pagination/default",
|
|
21481
|
+
"name": "default",
|
|
21482
|
+
"snapshot": "true",
|
|
21483
|
+
"skip_rules": {
|
|
21484
|
+
"wont_fix": [
|
|
21485
|
+
"region"
|
|
21486
|
+
],
|
|
21487
|
+
"will_fix": [
|
|
21488
|
+
"color-contrast"
|
|
21489
|
+
]
|
|
21490
|
+
}
|
|
21491
|
+
}
|
|
21492
|
+
],
|
|
21493
|
+
"subcomponents": []
|
|
21494
|
+
},
|
|
20717
21495
|
{
|
|
20718
21496
|
"fully_qualified_name": "Primer::OpenProject::SidePanel",
|
|
20719
21497
|
"description": "Add a general description of component here\nAdd additional usage considerations or best practices that may aid the user to use the component correctly.",
|