openproject-primer_view_components 0.71.0 → 0.72.0

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.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/app/assets/javascripts/components/primer/open_project/filterable_tree_view.d.ts +2 -2
  4. data/app/assets/javascripts/components/primer/primer.d.ts +4 -4
  5. data/app/assets/javascripts/primer_view_components.js +1 -1
  6. data/app/assets/javascripts/primer_view_components.js.map +1 -1
  7. data/app/assets/styles/primer_view_components.css +1 -1
  8. data/app/assets/styles/primer_view_components.css.map +1 -1
  9. data/app/components/primer/{open_project → alpha}/file_tree_view/directory_node.rb +1 -1
  10. data/app/components/primer/{open_project → alpha}/file_tree_view/file_node.rb +1 -1
  11. data/app/components/primer/{open_project → alpha}/file_tree_view.rb +1 -1
  12. data/app/components/primer/{open_project → alpha}/skeleton_box.css.json +1 -1
  13. data/app/components/primer/{open_project → alpha}/skeleton_box.css.map +1 -1
  14. data/app/components/primer/{open_project → alpha}/skeleton_box.pcss +1 -1
  15. data/app/components/primer/{open_project → alpha}/skeleton_box.rb +3 -1
  16. data/app/components/primer/{open_project → alpha}/tree_view/icon.rb +2 -2
  17. data/app/components/primer/{open_project → alpha}/tree_view/icon_pair.rb +4 -4
  18. data/app/components/primer/{open_project → alpha}/tree_view/leading_action.rb +2 -2
  19. data/app/components/primer/{open_project → alpha}/tree_view/leaf_node.rb +6 -6
  20. data/app/components/primer/{open_project → alpha}/tree_view/loading_failure_message.rb +2 -2
  21. data/app/components/primer/{open_project → alpha}/tree_view/node.rb +17 -17
  22. data/app/components/primer/{open_project → alpha}/tree_view/skeleton_loader.html.erb +3 -3
  23. data/app/components/primer/{open_project → alpha}/tree_view/skeleton_loader.rb +4 -4
  24. data/app/components/primer/{open_project → alpha}/tree_view/spinner_loader.html.erb +2 -2
  25. data/app/components/primer/{open_project → alpha}/tree_view/spinner_loader.rb +4 -4
  26. data/app/components/primer/{open_project → alpha}/tree_view/sub_tree.html.erb +1 -1
  27. data/app/components/primer/{open_project → alpha}/tree_view/sub_tree.rb +10 -10
  28. data/app/components/primer/{open_project → alpha}/tree_view/sub_tree_container.rb +2 -2
  29. data/app/components/primer/{open_project → alpha}/tree_view/sub_tree_node.rb +15 -15
  30. data/app/components/primer/{open_project → alpha}/tree_view/tree_view_include_fragment_element.js +0 -1
  31. data/app/components/primer/{open_project → alpha}/tree_view/tree_view_include_fragment_element.ts +0 -1
  32. data/app/components/primer/{open_project → alpha}/tree_view/visual.rb +2 -2
  33. data/app/components/primer/{open_project → alpha}/tree_view.css +1 -1
  34. data/app/components/primer/{open_project → alpha}/tree_view.css.json +1 -3
  35. data/app/components/primer/alpha/tree_view.css.map +1 -0
  36. data/app/components/primer/{open_project → alpha}/tree_view.html.erb +1 -0
  37. data/app/components/primer/{open_project → alpha}/tree_view.pcss +6 -15
  38. data/app/components/primer/{open_project → alpha}/tree_view.rb +14 -11
  39. data/app/components/primer/beta/breadcrumbs.css +1 -1
  40. data/app/components/primer/beta/breadcrumbs.css.json +0 -1
  41. data/app/components/primer/beta/breadcrumbs.css.map +1 -1
  42. data/app/components/primer/beta/breadcrumbs.pcss +2 -8
  43. data/app/components/primer/beta/progress_bar.css +1 -1
  44. data/app/components/primer/beta/progress_bar.css.map +1 -1
  45. data/app/components/primer/beta/progress_bar.pcss +3 -2
  46. data/app/components/primer/beta/relative_time.rb +3 -0
  47. data/app/components/primer/open_project/filterable_tree_view/sub_tree.rb +1 -1
  48. data/app/components/primer/open_project/filterable_tree_view.d.ts +2 -2
  49. data/app/components/primer/open_project/filterable_tree_view.html.erb +1 -1
  50. data/app/components/primer/open_project/filterable_tree_view.js +2 -2
  51. data/app/components/primer/open_project/filterable_tree_view.rb +4 -4
  52. data/app/components/primer/open_project/filterable_tree_view.ts +2 -2
  53. data/app/components/primer/primer.d.ts +4 -4
  54. data/app/components/primer/primer.js +4 -4
  55. data/app/components/primer/primer.pcss +2 -2
  56. data/app/components/primer/primer.ts +4 -4
  57. data/app/controllers/primer/view_components/tree_view_items_controller.rb +1 -1
  58. data/app/forms/check_box_with_nested_form.rb +10 -10
  59. data/app/forms/radio_button_with_nested_form.rb +16 -16
  60. data/app/lib/primer/experimental_slot_helpers.rb +2 -2
  61. data/app/views/primer/view_components/tree_view_items/async_alpha.html_fragment.erb +1 -1
  62. data/app/views/primer/view_components/tree_view_items/index.html_fragment.erb +1 -1
  63. data/lib/primer/view_components/version.rb +1 -1
  64. data/previews/primer/{open_project → alpha}/file_tree_view_preview/default.html.erb +1 -1
  65. data/previews/primer/{open_project → alpha}/file_tree_view_preview/playground.html.erb +1 -1
  66. data/previews/primer/{open_project → alpha}/file_tree_view_preview.rb +1 -1
  67. data/previews/primer/{open_project → alpha}/skeleton_box_preview.rb +3 -3
  68. data/previews/primer/{open_project → alpha}/tree_view_preview/async_alpha.html.erb +1 -1
  69. data/previews/primer/{open_project → alpha}/tree_view_preview/buttons.html.erb +1 -1
  70. data/previews/primer/{open_project → alpha}/tree_view_preview/default.html.erb +2 -2
  71. data/previews/primer/{open_project → alpha}/tree_view_preview/empty.html.erb +1 -1
  72. data/previews/primer/alpha/tree_view_preview/form_input.html.erb +14 -0
  73. data/previews/primer/{open_project → alpha}/tree_view_preview/leaf_node_playground.html.erb +1 -1
  74. data/previews/primer/{open_project → alpha}/tree_view_preview/links.html.erb +1 -1
  75. data/previews/primer/{open_project → alpha}/tree_view_preview/loading_failure.html.erb +1 -1
  76. data/previews/primer/{open_project → alpha}/tree_view_preview/loading_skeleton.html.erb +1 -1
  77. data/previews/primer/{open_project → alpha}/tree_view_preview/loading_spinner.html.erb +1 -1
  78. data/previews/primer/{open_project → alpha}/tree_view_preview/playground.html.erb +1 -1
  79. data/previews/primer/{open_project → alpha}/tree_view_preview.rb +17 -8
  80. data/previews/primer/open_project/filterable_tree_view_preview/stress_test.html.erb +28 -0
  81. data/static/arguments.json +1560 -1542
  82. data/static/audited_at.json +17 -17
  83. data/static/classes.json +5 -5
  84. data/static/constants.json +101 -101
  85. data/static/info_arch.json +6203 -6170
  86. data/static/previews.json +34 -21
  87. data/static/statuses.json +17 -17
  88. metadata +86 -84
  89. data/app/components/primer/open_project/tree_view.css.map +0 -1
  90. /data/app/assets/javascripts/components/primer/{open_project → alpha}/tree_view/tree_view.d.ts +0 -0
  91. /data/app/assets/javascripts/components/primer/{open_project → alpha}/tree_view/tree_view_icon_pair_element.d.ts +0 -0
  92. /data/app/assets/javascripts/components/primer/{open_project → alpha}/tree_view/tree_view_include_fragment_element.d.ts +0 -0
  93. /data/app/assets/javascripts/components/primer/{open_project → alpha}/tree_view/tree_view_roving_tab_index.d.ts +0 -0
  94. /data/app/assets/javascripts/components/primer/{open_project → alpha}/tree_view/tree_view_sub_tree_node_element.d.ts +0 -0
  95. /data/app/components/primer/{open_project → alpha}/file_tree_view/directory_node.html.erb +0 -0
  96. /data/app/components/primer/{open_project → alpha}/file_tree_view/file_node.html.erb +0 -0
  97. /data/app/components/primer/{open_project → alpha}/skeleton_box.css +0 -0
  98. /data/app/components/primer/{open_project → alpha}/skeleton_box.html.erb +0 -0
  99. /data/app/components/primer/{open_project → alpha}/tree_view/icon.html.erb +0 -0
  100. /data/app/components/primer/{open_project → alpha}/tree_view/icon_pair.html.erb +0 -0
  101. /data/app/components/primer/{open_project → alpha}/tree_view/leading_action.html.erb +0 -0
  102. /data/app/components/primer/{open_project → alpha}/tree_view/leaf_node.html.erb +0 -0
  103. /data/app/components/primer/{open_project → alpha}/tree_view/loading_failure_message.html.erb +0 -0
  104. /data/app/components/primer/{open_project → alpha}/tree_view/node.html.erb +0 -0
  105. /data/app/components/primer/{open_project → alpha}/tree_view/sub_tree_container.html.erb +0 -0
  106. /data/app/components/primer/{open_project → alpha}/tree_view/sub_tree_node.html.erb +0 -0
  107. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view.d.ts +0 -0
  108. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view.js +0 -0
  109. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view.ts +0 -0
  110. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_icon_pair_element.d.ts +0 -0
  111. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_icon_pair_element.js +0 -0
  112. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_icon_pair_element.ts +0 -0
  113. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_include_fragment_element.d.ts +0 -0
  114. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_roving_tab_index.d.ts +0 -0
  115. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_roving_tab_index.js +0 -0
  116. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_roving_tab_index.ts +0 -0
  117. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_sub_tree_node_element.d.ts +0 -0
  118. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_sub_tree_node_element.js +0 -0
  119. /data/app/components/primer/{open_project → alpha}/tree_view/tree_view_sub_tree_node_element.ts +0 -0
  120. /data/app/components/primer/{open_project → alpha}/tree_view/visual.html.erb +0 -0
@@ -1248,6 +1248,52 @@
1248
1248
  "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/dropdown/menu/item/default/",
1249
1249
  "parameters": []
1250
1250
  },
1251
+ {
1252
+ "component": "FileTreeView",
1253
+ "status": "alpha",
1254
+ "a11y_reviewed": false,
1255
+ "short_name": "FileTreeView",
1256
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/file_tree_view.rb",
1257
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/file_tree_view/default/",
1258
+ "parameters": [
1259
+ {
1260
+ "name": "node_variant",
1261
+ "type": "Symbol",
1262
+ "default": "`:div`",
1263
+ "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
1264
+ },
1265
+ {
1266
+ "name": "form_arguments",
1267
+ "type": "Hash",
1268
+ "default": "`{}`",
1269
+ "description": "These arguments allow the selections made within a `TreeView` to be submitted to the server as part of a Rails form. Pass the `builder:` and `name:` options to this hash. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which are created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission."
1270
+ },
1271
+ {
1272
+ "name": "system_arguments",
1273
+ "type": "Hash",
1274
+ "default": "N/A",
1275
+ "description": "[System arguments](/system-arguments)."
1276
+ }
1277
+ ]
1278
+ },
1279
+ {
1280
+ "component": "FileTreeView::DirectoryNode",
1281
+ "status": "alpha",
1282
+ "a11y_reviewed": false,
1283
+ "short_name": "FileTreeViewDirectoryNode",
1284
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/file_tree_view/directory_node.rb",
1285
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/file_tree_view/directory_node/default/",
1286
+ "parameters": []
1287
+ },
1288
+ {
1289
+ "component": "FileTreeView::FileNode",
1290
+ "status": "alpha",
1291
+ "a11y_reviewed": false,
1292
+ "short_name": "FileTreeViewFileNode",
1293
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/file_tree_view/file_node.rb",
1294
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/file_tree_view/file_node/default/",
1295
+ "parameters": []
1296
+ },
1251
1297
  {
1252
1298
  "component": "FormButton",
1253
1299
  "status": "alpha",
@@ -2635,6 +2681,34 @@
2635
2681
  }
2636
2682
  ]
2637
2683
  },
2684
+ {
2685
+ "component": "SkeletonBox",
2686
+ "status": "alpha",
2687
+ "a11y_reviewed": false,
2688
+ "short_name": "SkeletonBox",
2689
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/skeleton_box.rb",
2690
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/skeleton_box/default/",
2691
+ "parameters": [
2692
+ {
2693
+ "name": "height",
2694
+ "type": "String",
2695
+ "default": "`nil`",
2696
+ "description": "Any valid CSS height."
2697
+ },
2698
+ {
2699
+ "name": "width",
2700
+ "type": "String",
2701
+ "default": "`nil`",
2702
+ "description": "Any valid CSS width."
2703
+ },
2704
+ {
2705
+ "name": "system_arguments",
2706
+ "type": "Hash",
2707
+ "default": "N/A",
2708
+ "description": "[System arguments](/system-arguments)"
2709
+ }
2710
+ ]
2711
+ },
2638
2712
  {
2639
2713
  "component": "Stack",
2640
2714
  "status": "alpha",
@@ -3288,76 +3362,62 @@
3288
3362
  ]
3289
3363
  },
3290
3364
  {
3291
- "component": "UnderlineNav",
3365
+ "component": "TreeView",
3292
3366
  "status": "alpha",
3293
3367
  "a11y_reviewed": false,
3294
- "short_name": "UnderlineNav",
3295
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/underline_nav.rb",
3296
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/underline_nav/default/",
3368
+ "short_name": "TreeView",
3369
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view.rb",
3370
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/default/",
3297
3371
  "parameters": [
3298
3372
  {
3299
- "name": "tag",
3300
- "type": "Symbol",
3301
- "default": "`:nav`",
3302
- "description": "One of `:div` or `:nav`."
3303
- },
3304
- {
3305
- "name": "label",
3306
- "type": "String",
3307
- "default": "N/A",
3308
- "description": "Sets an `aria-label` that helps assistive technology users understand the purpose of the links, and distinguish it from similar elements."
3309
- },
3310
- {
3311
- "name": "align",
3373
+ "name": "node_variant",
3312
3374
  "type": "Symbol",
3313
- "default": "`:left`",
3314
- "description": "One of `:left` or `:right`. - Defaults to left"
3375
+ "default": "`:div`",
3376
+ "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
3315
3377
  },
3316
3378
  {
3317
- "name": "body_arguments",
3379
+ "name": "form_arguments",
3318
3380
  "type": "Hash",
3319
3381
  "default": "`{}`",
3320
- "description": "[System arguments](/system-arguments) for the body wrapper."
3382
+ "description": "These arguments allow the selections made within a `TreeView` to be submitted to the server as part of a Rails form. Pass the `builder:` and `name:` options to this hash. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which are created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission."
3321
3383
  },
3322
3384
  {
3323
3385
  "name": "system_arguments",
3324
3386
  "type": "Hash",
3325
3387
  "default": "N/A",
3326
- "description": "[System arguments](/system-arguments)"
3388
+ "description": "[System arguments](/system-arguments)."
3327
3389
  }
3328
3390
  ]
3329
3391
  },
3330
3392
  {
3331
- "component": "UnderlinePanels",
3393
+ "component": "TreeView::Icon",
3332
3394
  "status": "alpha",
3333
3395
  "a11y_reviewed": false,
3334
- "short_name": "UnderlinePanels",
3335
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/underline_panels.rb",
3336
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/underline_panels/default/",
3396
+ "short_name": "TreeViewIcon",
3397
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/icon.rb",
3398
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/icon/default/",
3337
3399
  "parameters": [
3338
3400
  {
3339
- "name": "label",
3340
- "type": "String",
3341
- "default": "N/A",
3342
- "description": "Sets an `aria-label` that helps assistive technology users understand the purpose of the tabs."
3343
- },
3344
- {
3345
- "name": "align",
3346
- "type": "Symbol",
3347
- "default": "`:left`",
3348
- "description": "One of `:left` or `:right`. - Defaults to left"
3349
- },
3350
- {
3351
- "name": "body_arguments",
3401
+ "name": "system_arguments",
3352
3402
  "type": "Hash",
3353
- "default": "`{}`",
3354
- "description": "[System arguments](/system-arguments) for the body wrapper."
3355
- },
3403
+ "default": "N/A",
3404
+ "description": "The arguments accepted by [Octicon](/components/beta/octicon)."
3405
+ }
3406
+ ]
3407
+ },
3408
+ {
3409
+ "component": "TreeView::IconPair",
3410
+ "status": "alpha",
3411
+ "a11y_reviewed": false,
3412
+ "short_name": "TreeViewIconPair",
3413
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/icon_pair.rb",
3414
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/icon_pair/default/",
3415
+ "parameters": [
3356
3416
  {
3357
- "name": "wrapper_arguments",
3358
- "type": "Hash",
3359
- "default": "`{}`",
3360
- "description": "[System arguments](/system-arguments) for the `TabContainer` wrapper."
3417
+ "name": "expanded",
3418
+ "type": "Boolean",
3419
+ "default": "`false`",
3420
+ "description": "If true, the expanded icon is shown and the collapsed icon is hidden, etc."
3361
3421
  },
3362
3422
  {
3363
3423
  "name": "system_arguments",
@@ -3368,252 +3428,226 @@
3368
3428
  ]
3369
3429
  },
3370
3430
  {
3371
- "component": "Base",
3372
- "status": "beta",
3431
+ "component": "TreeView::LeadingAction",
3432
+ "status": "alpha",
3373
3433
  "a11y_reviewed": false,
3374
- "short_name": "Base",
3375
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/base_component.rb",
3376
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/base/default/",
3377
- "parameters": []
3434
+ "short_name": "TreeViewLeadingAction",
3435
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/leading_action.rb",
3436
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/leading_action/default/",
3437
+ "parameters": [
3438
+ {
3439
+ "name": "action",
3440
+ "type": "ViewComponent::Base",
3441
+ "default": "N/A",
3442
+ "description": "A component or other renderable to use as the action button etc."
3443
+ }
3444
+ ]
3378
3445
  },
3379
3446
  {
3380
- "component": "AutoComplete",
3381
- "status": "beta",
3447
+ "component": "TreeView::LeafNode",
3448
+ "status": "alpha",
3382
3449
  "a11y_reviewed": false,
3383
- "short_name": "AutoComplete",
3384
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete.rb",
3385
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/default/",
3450
+ "short_name": "TreeViewLeafNode",
3451
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/leaf_node.rb",
3452
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/leaf_node/default/",
3386
3453
  "parameters": [
3387
3454
  {
3388
- "name": "label_text",
3455
+ "name": "label",
3389
3456
  "type": "String",
3390
3457
  "default": "N/A",
3391
- "description": "The label of the input."
3458
+ "description": "The node's label, i.e. it's textual content."
3392
3459
  },
3393
3460
  {
3394
- "name": "src",
3395
- "type": "String",
3461
+ "name": "system_arguments",
3462
+ "type": "Hash",
3396
3463
  "default": "N/A",
3397
- "description": "The route to query."
3398
- },
3464
+ "description": "The arguments accepted by [TreeView::Node](/components/alpha/treeviewnode)."
3465
+ }
3466
+ ]
3467
+ },
3468
+ {
3469
+ "component": "TreeView::LoadingFailureMessage",
3470
+ "status": "alpha",
3471
+ "a11y_reviewed": false,
3472
+ "short_name": "TreeViewLoadingFailureMessage",
3473
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/loading_failure_message.rb",
3474
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/loading_failure_message/default/",
3475
+ "parameters": [
3399
3476
  {
3400
- "name": "input_id",
3477
+ "name": "text",
3401
3478
  "type": "String",
3402
- "default": "N/A",
3403
- "description": "Id of the input element."
3479
+ "default": "`Something went wrong`",
3480
+ "description": "The failure message to display."
3404
3481
  },
3405
3482
  {
3406
- "name": "input_name",
3483
+ "name": "retry_button_label",
3407
3484
  "type": "String",
3408
- "default": "`nil`",
3409
- "description": "Optional name of the input element, defaults to `input_id` when not set."
3485
+ "default": "`Retry`",
3486
+ "description": "The text shown on the retry button."
3410
3487
  },
3411
3488
  {
3412
- "name": "list_id",
3413
- "type": "String",
3489
+ "name": "system_arguments",
3490
+ "type": "Hash",
3414
3491
  "default": "N/A",
3415
- "description": "Id of the list element."
3416
- },
3417
- {
3418
- "name": "visually_hide_label",
3419
- "type": "Boolean",
3420
- "default": "`false`",
3421
- "description": "Controls if the label is visible. If `true`, screen reader only text will be added."
3422
- },
3492
+ "description": "[System arguments](/system-arguments)"
3493
+ }
3494
+ ]
3495
+ },
3496
+ {
3497
+ "component": "TreeView::Node",
3498
+ "status": "alpha",
3499
+ "a11y_reviewed": false,
3500
+ "short_name": "TreeViewNode",
3501
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/node.rb",
3502
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/node/default/",
3503
+ "parameters": [
3423
3504
  {
3424
- "name": "show_clear_button",
3425
- "type": "Boolean",
3426
- "default": "`false`",
3427
- "description": "Adds optional clear button."
3505
+ "name": "path",
3506
+ "type": "Array<String>",
3507
+ "default": "N/A",
3508
+ "description": "The node's \"path,\" i.e. this node's label and the labels of all its ancestors. This node should be reachable by traversing the tree following this path."
3428
3509
  },
3429
3510
  {
3430
- "name": "system_arguments",
3431
- "type": "Hash",
3511
+ "name": "node_variant",
3512
+ "type": "Symbol",
3432
3513
  "default": "N/A",
3433
- "description": "[System arguments](/system-arguments)"
3514
+ "description": "The node variant to use for the node's content, i.e. the `:button` or `:div`. One of `:anchor`, `:button`, or `:div`."
3434
3515
  },
3435
3516
  {
3436
- "name": "size",
3437
- "type": "Hash",
3438
- "default": "`:medium`",
3439
- "description": "Input size can be small, medium (default), or large"
3517
+ "name": "href",
3518
+ "type": "String",
3519
+ "default": "`nil`",
3520
+ "description": "The URL to use as the `href` attribute for this node. If set to a truthy value, the `tag:` parameter is ignored and assumed to be `:a`."
3440
3521
  },
3441
3522
  {
3442
- "name": "full_width",
3523
+ "name": "current",
3443
3524
  "type": "Boolean",
3444
3525
  "default": "`false`",
3445
- "description": "Input can be full-width or fit to content"
3526
+ "description": "Whether or not this node is the current node. The current node is styled differently than regular nodes and is the first element that receives focus when tabbing to the `TreeView` component."
3446
3527
  },
3447
3528
  {
3448
- "name": "width",
3449
- "type": "String",
3450
- "default": "`:auto`",
3451
- "description": "Optional parameter to set max width of results list. One of `:auto`, `:large`, `:medium`, `:small`, `:xlarge`, or `:xxlarge`."
3529
+ "name": "select_variant",
3530
+ "type": "Symbol",
3531
+ "default": "`:none`",
3532
+ "description": "Controls the type of checkbox that appears. One of `:multiple` or `:none`."
3452
3533
  },
3453
3534
  {
3454
- "name": "disabled",
3455
- "type": "Boolean",
3535
+ "name": "checked",
3536
+ "type": "Boolean | String",
3456
3537
  "default": "`false`",
3457
- "description": "Disabled input"
3538
+ "description": "The checked state of the node's checkbox. One of `false`, `mixed`, or `true`."
3458
3539
  },
3459
3540
  {
3460
- "name": "invalid",
3541
+ "name": "disabled",
3461
3542
  "type": "Boolean",
3462
3543
  "default": "`false`",
3463
- "description": "Invalid input"
3544
+ "description": "Whether or not the node can be activated. Passing `false` here will cause the node to appear visually disabled but it is still keyboard-focusable."
3464
3545
  },
3465
3546
  {
3466
- "name": "placeholder",
3547
+ "name": "value",
3467
3548
  "type": "String",
3468
3549
  "default": "`nil`",
3469
- "description": "The placeholder text displayed within the input"
3470
- },
3471
- {
3472
- "name": "inset",
3473
- "type": "Boolean",
3474
- "default": "`false`",
3475
- "description": "subtle input background color"
3550
+ "description": "If this node is checked, this value will be sent to the server on form submission."
3476
3551
  },
3477
3552
  {
3478
- "name": "monospace",
3479
- "type": "Boolean",
3480
- "default": "`false`",
3481
- "description": "monospace input font family"
3553
+ "name": "content_arguments",
3554
+ "type": "Hash",
3555
+ "default": "N/A",
3556
+ "description": "Arguments attached to the node's content, i.e the `<button>` or `<a>` element. [System arguments](/system-arguments)"
3482
3557
  }
3483
3558
  ]
3484
3559
  },
3485
3560
  {
3486
- "component": "AutoComplete::Item",
3487
- "status": "beta",
3561
+ "component": "TreeView::SkeletonLoader",
3562
+ "status": "alpha",
3488
3563
  "a11y_reviewed": false,
3489
- "short_name": "AutoCompleteItem",
3490
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/item.rb",
3491
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/item/default/",
3564
+ "short_name": "TreeViewSkeletonLoader",
3565
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/skeleton_loader.rb",
3566
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/skeleton_loader/default/",
3492
3567
  "parameters": [
3493
3568
  {
3494
- "name": "value",
3569
+ "name": "src",
3495
3570
  "type": "String",
3496
3571
  "default": "N/A",
3497
- "description": "Value of the item."
3498
- },
3499
- {
3500
- "name": "selected",
3501
- "type": "Boolean",
3502
- "default": "`false`",
3503
- "description": "Whether the item is selected."
3504
- },
3505
- {
3506
- "name": "disabled",
3507
- "type": "Boolean",
3508
- "default": "`false`",
3509
- "description": "Whether the item is disabled."
3510
- },
3511
- {
3512
- "name": "description_variant",
3513
- "type": "Hash",
3514
- "default": "`:block`",
3515
- "description": "Changes the description style. Allowed values are :inline, :block"
3572
+ "description": "The URL to fetch nodes from."
3516
3573
  },
3517
3574
  {
3518
- "name": "description",
3519
- "type": "String",
3520
- "default": "N/A",
3521
- "description": "Display description text below label"
3575
+ "name": "count",
3576
+ "type": "Integer",
3577
+ "default": "`3`",
3578
+ "description": "The number of skeleton nodes to render."
3522
3579
  },
3523
3580
  {
3524
3581
  "name": "system_arguments",
3525
3582
  "type": "Hash",
3526
3583
  "default": "N/A",
3527
- "description": "[System arguments](/system-arguments)"
3584
+ "description": "The arguments accepted by [TreeView::SubTreeContainer](/components/alpha/treeviewsubtreecontainer)."
3528
3585
  }
3529
3586
  ]
3530
3587
  },
3531
3588
  {
3532
- "component": "AutoComplete::NoResultItem",
3533
- "status": "beta",
3534
- "a11y_reviewed": false,
3535
- "short_name": "AutoCompleteNoResultItem",
3536
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/no_result_item.rb",
3537
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/no_result_item/default/",
3538
- "parameters": []
3539
- },
3540
- {
3541
- "component": "Avatar",
3542
- "status": "beta",
3589
+ "component": "TreeView::SpinnerLoader",
3590
+ "status": "alpha",
3543
3591
  "a11y_reviewed": false,
3544
- "short_name": "Avatar",
3545
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/avatar.rb",
3546
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/avatar/default/",
3592
+ "short_name": "TreeViewSpinnerLoader",
3593
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/spinner_loader.rb",
3594
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/spinner_loader/default/",
3547
3595
  "parameters": [
3548
3596
  {
3549
3597
  "name": "src",
3550
3598
  "type": "String",
3551
3599
  "default": "N/A",
3552
- "description": "The source url of the avatar image."
3553
- },
3554
- {
3555
- "name": "alt",
3556
- "type": "String",
3557
- "default": "`nil`",
3558
- "description": "Passed through to alt on img tag."
3600
+ "description": "The URL to fetch nodes from."
3559
3601
  },
3560
3602
  {
3561
- "name": "size",
3562
- "type": "Integer",
3563
- "default": "`20`",
3564
- "description": "One of `16`, `20`, `24`, `32`, `40`, `48`, `64`, or `80`."
3565
- },
3603
+ "name": "system_arguments",
3604
+ "type": "Hash",
3605
+ "default": "N/A",
3606
+ "description": "The arguments accepted by [TreeView::SubTreeContainer](/components/alpha/treeviewsubtreecontainer)."
3607
+ }
3608
+ ]
3609
+ },
3610
+ {
3611
+ "component": "TreeView::SubTree",
3612
+ "status": "alpha",
3613
+ "a11y_reviewed": false,
3614
+ "short_name": "TreeViewSubTree",
3615
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/sub_tree.rb",
3616
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/sub_tree/default/",
3617
+ "parameters": [
3566
3618
  {
3567
- "name": "shape",
3619
+ "name": "node_variant",
3568
3620
  "type": "Symbol",
3569
- "default": "`:circle`",
3570
- "description": "Shape of the avatar. One of `:circle` or `:square`."
3571
- },
3572
- {
3573
- "name": "href",
3574
- "type": "String",
3575
- "default": "`nil`",
3576
- "description": "The URL to link to. If used, component will be wrapped by an `<a>` tag."
3621
+ "default": "N/A",
3622
+ "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
3577
3623
  },
3578
3624
  {
3579
3625
  "name": "system_arguments",
3580
3626
  "type": "Hash",
3581
3627
  "default": "N/A",
3582
- "description": "[System arguments](/system-arguments)"
3628
+ "description": "The arguments accepted by [TreeView::SubTreeContainer](/components/alpha/treeviewsubtreecontainer)."
3583
3629
  }
3584
3630
  ]
3585
3631
  },
3586
3632
  {
3587
- "component": "AvatarStack",
3588
- "status": "beta",
3633
+ "component": "TreeView::SubTreeContainer",
3634
+ "status": "alpha",
3589
3635
  "a11y_reviewed": false,
3590
- "short_name": "AvatarStack",
3591
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/avatar_stack.rb",
3592
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/avatar_stack/default/",
3636
+ "short_name": "TreeViewSubTreeContainer",
3637
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/sub_tree_container.rb",
3638
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/sub_tree_container/default/",
3593
3639
  "parameters": [
3594
3640
  {
3595
- "name": "tag",
3596
- "type": "Symbol",
3597
- "default": "`:div`",
3598
- "description": "One of `:div` or `:span`."
3599
- },
3600
- {
3601
- "name": "align",
3602
- "type": "Symbol",
3603
- "default": "`:left`",
3604
- "description": "One of `:left` or `:right`."
3641
+ "name": "path",
3642
+ "type": "Array<String>",
3643
+ "default": "N/A",
3644
+ "description": "The path to this node."
3605
3645
  },
3606
3646
  {
3607
- "name": "tooltipped",
3647
+ "name": "expanded",
3608
3648
  "type": "Boolean",
3609
3649
  "default": "`false`",
3610
- "description": "Whether to add a tooltip to the stack or not."
3611
- },
3612
- {
3613
- "name": "body_arguments",
3614
- "type": "Hash",
3615
- "default": "`{}`",
3616
- "description": "Parameters to add to the Body. If `tooltipped` is set, has the same arguments as [Tooltip](/components/tooltip). The default tag is `:div` but can be changed using `tag:` to one of `:div` or `:span`."
3650
+ "description": "Whether or not this sub-tree node renders expanded."
3617
3651
  },
3618
3652
  {
3619
3653
  "name": "system_arguments",
@@ -3624,115 +3658,117 @@
3624
3658
  ]
3625
3659
  },
3626
3660
  {
3627
- "component": "BaseButton",
3628
- "status": "beta",
3661
+ "component": "TreeView::SubTreeNode",
3662
+ "status": "alpha",
3629
3663
  "a11y_reviewed": false,
3630
- "short_name": "BaseButton",
3631
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/base_button.rb",
3632
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/base_button/default/",
3664
+ "short_name": "TreeViewSubTreeNode",
3665
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/sub_tree_node.rb",
3666
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/sub_tree_node/default/",
3633
3667
  "parameters": [
3634
3668
  {
3635
- "name": "tag",
3636
- "type": "Symbol",
3637
- "default": "`:button`",
3638
- "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
3669
+ "name": "label",
3670
+ "type": "String",
3671
+ "default": "N/A",
3672
+ "description": "The node's label, i.e. it's textual content."
3639
3673
  },
3640
3674
  {
3641
- "name": "type",
3675
+ "name": "path",
3676
+ "type": "Array<String>",
3677
+ "default": "N/A",
3678
+ "description": "The node's \"path,\" i.e. this node's label and the labels of all its ancestors. This node should be reachable by traversing the tree following this path."
3679
+ },
3680
+ {
3681
+ "name": "node_variant",
3642
3682
  "type": "Symbol",
3643
- "default": "`:button`",
3644
- "description": "One of `:button`, `:reset`, or `:submit`."
3683
+ "default": "N/A",
3684
+ "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
3645
3685
  },
3646
3686
  {
3647
- "name": "block",
3648
- "type": "Boolean",
3649
- "default": "`false`",
3650
- "description": "Whether button is full-width with `display: block`."
3687
+ "name": "sub_tree_component_klass",
3688
+ "type": "Class",
3689
+ "default": "`SubTree`",
3690
+ "description": "The class to use for the sub-tree instead of the default [TreeView::SubTree](/components/alpha/treeviewsubtree)"
3651
3691
  },
3652
3692
  {
3653
- "name": "disabled",
3693
+ "name": "expanded",
3654
3694
  "type": "Boolean",
3655
3695
  "default": "`false`",
3656
- "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
3696
+ "description": "Whether or not this sub-tree should be rendered expanded."
3657
3697
  },
3658
3698
  {
3659
- "name": "inactive",
3660
- "type": "Boolean",
3661
- "default": "`false`",
3662
- "description": "Whether the button looks visually disabled, but can still accept all the same interactions as an enabled button."
3699
+ "name": "select_strategy",
3700
+ "type": "Symbol",
3701
+ "default": "`:mixed_descendants`",
3702
+ "description": "What should happen when this sub-tree node is checked. One of `:descendants`, `:mixed_descendants`, or `:self`."
3663
3703
  },
3664
3704
  {
3665
3705
  "name": "system_arguments",
3666
3706
  "type": "Hash",
3667
3707
  "default": "N/A",
3668
- "description": "[System arguments](/system-arguments)"
3708
+ "description": "The arguments accepted by [TreeView::Node](/components/alpha/treeviewnode)."
3669
3709
  }
3670
3710
  ]
3671
3711
  },
3672
3712
  {
3673
- "component": "Blankslate",
3674
- "status": "beta",
3713
+ "component": "TreeView::Visual",
3714
+ "status": "alpha",
3675
3715
  "a11y_reviewed": false,
3676
- "short_name": "Blankslate",
3677
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/blankslate.rb",
3678
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/blankslate/default/",
3716
+ "short_name": "TreeViewVisual",
3717
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/tree_view/visual.rb",
3718
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/tree_view/visual/default/",
3679
3719
  "parameters": [
3680
3720
  {
3681
- "name": "narrow",
3682
- "type": "Boolean",
3683
- "default": "`false`",
3684
- "description": "Adds a maximum width of `485px` to the Blankslate."
3685
- },
3686
- {
3687
- "name": "spacious",
3688
- "type": "Boolean",
3689
- "default": "`false`",
3690
- "description": "Increases the padding from `32px` to `80px 40px`."
3721
+ "name": "id",
3722
+ "type": "String",
3723
+ "default": "N/A",
3724
+ "description": "This visual's HTML ID."
3691
3725
  },
3692
3726
  {
3693
- "name": "border",
3694
- "type": "Boolean",
3695
- "default": "`false`",
3696
- "description": "Adds a border around the Blankslate."
3727
+ "name": "visual",
3728
+ "type": "ViewComponent::Base",
3729
+ "default": "N/A",
3730
+ "description": "A renderable component like an instance of [Octicon](/components/beta/octicon) to render as the visual."
3697
3731
  },
3698
3732
  {
3699
- "name": "system_arguments",
3700
- "type": "Hash",
3701
- "default": "N/A",
3702
- "description": "[System arguments](/system-arguments)"
3733
+ "name": "label",
3734
+ "type": "String",
3735
+ "default": "`nil`",
3736
+ "description": "Text describing this visual that will be visible only to screen readers."
3703
3737
  }
3704
3738
  ]
3705
3739
  },
3706
3740
  {
3707
- "component": "BorderBox",
3708
- "status": "beta",
3741
+ "component": "UnderlineNav",
3742
+ "status": "alpha",
3709
3743
  "a11y_reviewed": false,
3710
- "short_name": "BorderBox",
3711
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/border_box.rb",
3712
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/border_box/default/",
3744
+ "short_name": "UnderlineNav",
3745
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/underline_nav.rb",
3746
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/underline_nav/default/",
3713
3747
  "parameters": [
3714
3748
  {
3715
- "name": "padding",
3749
+ "name": "tag",
3716
3750
  "type": "Symbol",
3717
- "default": "`:default`",
3718
- "description": "One of `:condensed`, `:default`, or `:spacious`."
3751
+ "default": "`:nav`",
3752
+ "description": "One of `:div` or `:nav`."
3719
3753
  },
3720
3754
  {
3721
- "name": "system_arguments",
3722
- "type": "Hash",
3755
+ "name": "label",
3756
+ "type": "String",
3723
3757
  "default": "N/A",
3724
- "description": "[System arguments](/system-arguments)"
3725
- }
3726
- ]
3727
- },
3728
- {
3729
- "component": "BorderBox::Header",
3730
- "status": "beta",
3731
- "a11y_reviewed": false,
3732
- "short_name": "BorderBoxHeader",
3733
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/border_box/header.rb",
3734
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/border_box/header/default/",
3735
- "parameters": [
3758
+ "description": "Sets an `aria-label` that helps assistive technology users understand the purpose of the links, and distinguish it from similar elements."
3759
+ },
3760
+ {
3761
+ "name": "align",
3762
+ "type": "Symbol",
3763
+ "default": "`:left`",
3764
+ "description": "One of `:left` or `:right`. - Defaults to left"
3765
+ },
3766
+ {
3767
+ "name": "body_arguments",
3768
+ "type": "Hash",
3769
+ "default": "`{}`",
3770
+ "description": "[System arguments](/system-arguments) for the body wrapper."
3771
+ },
3736
3772
  {
3737
3773
  "name": "system_arguments",
3738
3774
  "type": "Hash",
@@ -3742,125 +3778,197 @@
3742
3778
  ]
3743
3779
  },
3744
3780
  {
3745
- "component": "Breadcrumbs",
3746
- "status": "beta",
3781
+ "component": "UnderlinePanels",
3782
+ "status": "alpha",
3747
3783
  "a11y_reviewed": false,
3748
- "short_name": "Breadcrumbs",
3749
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/breadcrumbs.rb",
3750
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/breadcrumbs/default/",
3784
+ "short_name": "UnderlinePanels",
3785
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/alpha/underline_panels.rb",
3786
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/alpha/underline_panels/default/",
3751
3787
  "parameters": [
3752
3788
  {
3753
- "name": "system_arguments",
3754
- "type": "Hash",
3789
+ "name": "label",
3790
+ "type": "String",
3791
+ "default": "N/A",
3792
+ "description": "Sets an `aria-label` that helps assistive technology users understand the purpose of the tabs."
3793
+ },
3794
+ {
3795
+ "name": "align",
3796
+ "type": "Symbol",
3797
+ "default": "`:left`",
3798
+ "description": "One of `:left` or `:right`. - Defaults to left"
3799
+ },
3800
+ {
3801
+ "name": "body_arguments",
3802
+ "type": "Hash",
3803
+ "default": "`{}`",
3804
+ "description": "[System arguments](/system-arguments) for the body wrapper."
3805
+ },
3806
+ {
3807
+ "name": "wrapper_arguments",
3808
+ "type": "Hash",
3809
+ "default": "`{}`",
3810
+ "description": "[System arguments](/system-arguments) for the `TabContainer` wrapper."
3811
+ },
3812
+ {
3813
+ "name": "system_arguments",
3814
+ "type": "Hash",
3755
3815
  "default": "N/A",
3756
3816
  "description": "[System arguments](/system-arguments)"
3757
3817
  }
3758
3818
  ]
3759
3819
  },
3760
3820
  {
3761
- "component": "Breadcrumbs::Item",
3762
- "status": "alpha",
3821
+ "component": "Base",
3822
+ "status": "beta",
3763
3823
  "a11y_reviewed": false,
3764
- "short_name": "BreadcrumbsItem",
3765
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/breadcrumbs/item.rb",
3766
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/breadcrumbs/item/default/",
3824
+ "short_name": "Base",
3825
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/base_component.rb",
3826
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/base/default/",
3767
3827
  "parameters": []
3768
3828
  },
3769
3829
  {
3770
- "component": "Button",
3830
+ "component": "AutoComplete",
3771
3831
  "status": "beta",
3772
3832
  "a11y_reviewed": false,
3773
- "short_name": "Button",
3774
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/button.rb",
3775
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/button/default/",
3833
+ "short_name": "AutoComplete",
3834
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete.rb",
3835
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/default/",
3776
3836
  "parameters": [
3777
3837
  {
3778
- "name": "base_button_class",
3779
- "type": "Class",
3780
- "default": "`Primer::Beta::BaseButton`",
3781
- "description": "The button class to render."
3838
+ "name": "label_text",
3839
+ "type": "String",
3840
+ "default": "N/A",
3841
+ "description": "The label of the input."
3782
3842
  },
3783
3843
  {
3784
- "name": "scheme",
3785
- "type": "Symbol",
3786
- "default": "`:default`",
3787
- "description": "One of `:danger`, `:default`, `:invisible`, `:link`, `:primary`, or `:secondary`."
3844
+ "name": "src",
3845
+ "type": "String",
3846
+ "default": "N/A",
3847
+ "description": "The route to query."
3788
3848
  },
3789
3849
  {
3790
- "name": "size",
3791
- "type": "Symbol",
3792
- "default": "`:medium`",
3793
- "description": "One of `:large`, `:medium`, or `:small`."
3850
+ "name": "input_id",
3851
+ "type": "String",
3852
+ "default": "N/A",
3853
+ "description": "Id of the input element."
3794
3854
  },
3795
3855
  {
3796
- "name": "block",
3856
+ "name": "input_name",
3857
+ "type": "String",
3858
+ "default": "`nil`",
3859
+ "description": "Optional name of the input element, defaults to `input_id` when not set."
3860
+ },
3861
+ {
3862
+ "name": "list_id",
3863
+ "type": "String",
3864
+ "default": "N/A",
3865
+ "description": "Id of the list element."
3866
+ },
3867
+ {
3868
+ "name": "visually_hide_label",
3797
3869
  "type": "Boolean",
3798
3870
  "default": "`false`",
3799
- "description": "Whether button is full-width with `display: block`."
3871
+ "description": "Controls if the label is visible. If `true`, screen reader only text will be added."
3800
3872
  },
3801
3873
  {
3802
- "name": "align_content",
3803
- "type": "Symbol",
3804
- "default": "`:center`",
3805
- "description": "One of `:center` or `:start`."
3874
+ "name": "show_clear_button",
3875
+ "type": "Boolean",
3876
+ "default": "`false`",
3877
+ "description": "Adds optional clear button."
3806
3878
  },
3807
3879
  {
3808
- "name": "tag",
3809
- "type": "Symbol",
3810
- "default": "`:button`",
3811
- "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
3880
+ "name": "system_arguments",
3881
+ "type": "Hash",
3882
+ "default": "N/A",
3883
+ "description": "[System arguments](/system-arguments)"
3812
3884
  },
3813
3885
  {
3814
- "name": "type",
3815
- "type": "Symbol",
3816
- "default": "`:button`",
3817
- "description": "One of `:button`, `:reset`, or `:submit`."
3886
+ "name": "size",
3887
+ "type": "Hash",
3888
+ "default": "`:medium`",
3889
+ "description": "Input size can be small, medium (default), or large"
3818
3890
  },
3819
3891
  {
3820
- "name": "inactive",
3892
+ "name": "full_width",
3821
3893
  "type": "Boolean",
3822
- "default": "N/A",
3823
- "description": "Whether the button looks visually disabled, but can still accept all the same interactions as an enabled button."
3894
+ "default": "`false`",
3895
+ "description": "Input can be full-width or fit to content"
3896
+ },
3897
+ {
3898
+ "name": "width",
3899
+ "type": "String",
3900
+ "default": "`:auto`",
3901
+ "description": "Optional parameter to set max width of results list. One of `:auto`, `:large`, `:medium`, `:small`, `:xlarge`, or `:xxlarge`."
3824
3902
  },
3825
3903
  {
3826
3904
  "name": "disabled",
3827
3905
  "type": "Boolean",
3828
3906
  "default": "`false`",
3829
- "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
3907
+ "description": "Disabled input"
3830
3908
  },
3831
3909
  {
3832
- "name": "label_wrap",
3910
+ "name": "invalid",
3833
3911
  "type": "Boolean",
3834
3912
  "default": "`false`",
3835
- "description": "Whether or not the button label text wraps and the button height expands."
3913
+ "description": "Invalid input"
3836
3914
  },
3837
3915
  {
3838
- "name": "system_arguments",
3839
- "type": "Hash",
3840
- "default": "N/A",
3841
- "description": "[System arguments](/system-arguments)"
3916
+ "name": "placeholder",
3917
+ "type": "String",
3918
+ "default": "`nil`",
3919
+ "description": "The placeholder text displayed within the input"
3920
+ },
3921
+ {
3922
+ "name": "inset",
3923
+ "type": "Boolean",
3924
+ "default": "`false`",
3925
+ "description": "subtle input background color"
3926
+ },
3927
+ {
3928
+ "name": "monospace",
3929
+ "type": "Boolean",
3930
+ "default": "`false`",
3931
+ "description": "monospace input font family"
3842
3932
  }
3843
3933
  ]
3844
3934
  },
3845
3935
  {
3846
- "component": "ButtonGroup",
3936
+ "component": "AutoComplete::Item",
3847
3937
  "status": "beta",
3848
3938
  "a11y_reviewed": false,
3849
- "short_name": "ButtonGroup",
3850
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/button_group.rb",
3851
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/button_group/default/",
3939
+ "short_name": "AutoCompleteItem",
3940
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/item.rb",
3941
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/item/default/",
3852
3942
  "parameters": [
3853
3943
  {
3854
- "name": "scheme",
3855
- "type": "Symbol",
3856
- "default": "`:default`",
3857
- "description": "DEPRECATED. One of `:danger`, `:default`, `:invisible`, `:link`, `:primary`, or `:secondary`."
3944
+ "name": "value",
3945
+ "type": "String",
3946
+ "default": "N/A",
3947
+ "description": "Value of the item."
3858
3948
  },
3859
3949
  {
3860
- "name": "size",
3861
- "type": "Symbol",
3862
- "default": "`:medium`",
3863
- "description": "One of `:large`, `:medium`, or `:small`."
3950
+ "name": "selected",
3951
+ "type": "Boolean",
3952
+ "default": "`false`",
3953
+ "description": "Whether the item is selected."
3954
+ },
3955
+ {
3956
+ "name": "disabled",
3957
+ "type": "Boolean",
3958
+ "default": "`false`",
3959
+ "description": "Whether the item is disabled."
3960
+ },
3961
+ {
3962
+ "name": "description_variant",
3963
+ "type": "Hash",
3964
+ "default": "`:block`",
3965
+ "description": "Changes the description style. Allowed values are :inline, :block"
3966
+ },
3967
+ {
3968
+ "name": "description",
3969
+ "type": "String",
3970
+ "default": "N/A",
3971
+ "description": "Display description text below label"
3864
3972
  },
3865
3973
  {
3866
3974
  "name": "system_arguments",
@@ -3871,52 +3979,51 @@
3871
3979
  ]
3872
3980
  },
3873
3981
  {
3874
- "component": "ButtonGroup::MenuButton",
3875
- "status": "alpha",
3982
+ "component": "AutoComplete::NoResultItem",
3983
+ "status": "beta",
3876
3984
  "a11y_reviewed": false,
3877
- "short_name": "ButtonGroupMenuButton",
3878
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/button_group/menu_button.rb",
3879
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/button_group/menu_button/default/",
3880
- "parameters": [
3881
- {
3882
- "name": "menu_arguments",
3883
- "type": "Hash",
3884
- "default": "`{}`",
3885
- "description": "The arguments accepted by [ActionMenu](/components/alpha/actionmenu)."
3886
- },
3887
- {
3888
- "name": "button_arguments",
3889
- "type": "Hash",
3890
- "default": "`{}`",
3891
- "description": "The arguments accepted by [Button](/components/beta/button) or [IconButton](/components/beta/iconbutton), depending on the value of the `icon:` argument."
3892
- }
3893
- ]
3985
+ "short_name": "AutoCompleteNoResultItem",
3986
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/auto_complete/no_result_item.rb",
3987
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/auto_complete/no_result_item/default/",
3988
+ "parameters": []
3894
3989
  },
3895
3990
  {
3896
- "component": "ClipboardCopy",
3991
+ "component": "Avatar",
3897
3992
  "status": "beta",
3898
3993
  "a11y_reviewed": false,
3899
- "short_name": "ClipboardCopy",
3900
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/clipboard_copy.rb",
3901
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/clipboard_copy/default/",
3994
+ "short_name": "Avatar",
3995
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/avatar.rb",
3996
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/avatar/default/",
3902
3997
  "parameters": [
3903
3998
  {
3904
- "name": "aria-label",
3999
+ "name": "src",
3905
4000
  "type": "String",
3906
4001
  "default": "N/A",
3907
- "description": "String that will be read to screenreaders when the component is focused"
4002
+ "description": "The source url of the avatar image."
3908
4003
  },
3909
4004
  {
3910
- "name": "value",
4005
+ "name": "alt",
3911
4006
  "type": "String",
3912
4007
  "default": "`nil`",
3913
- "description": "Text to copy into the users clipboard when they click the component."
4008
+ "description": "Passed through to alt on img tag."
3914
4009
  },
3915
4010
  {
3916
- "name": "for",
4011
+ "name": "size",
4012
+ "type": "Integer",
4013
+ "default": "`20`",
4014
+ "description": "One of `16`, `20`, `24`, `32`, `40`, `48`, `64`, or `80`."
4015
+ },
4016
+ {
4017
+ "name": "shape",
4018
+ "type": "Symbol",
4019
+ "default": "`:circle`",
4020
+ "description": "Shape of the avatar. One of `:circle` or `:square`."
4021
+ },
4022
+ {
4023
+ "name": "href",
3917
4024
  "type": "String",
3918
- "default": "N/A",
3919
- "description": "Element id from where to get the copied value."
4025
+ "default": "`nil`",
4026
+ "description": "The URL to link to. If used, component will be wrapped by an `<a>` tag."
3920
4027
  },
3921
4028
  {
3922
4029
  "name": "system_arguments",
@@ -3927,42 +4034,36 @@
3927
4034
  ]
3928
4035
  },
3929
4036
  {
3930
- "component": "ClipboardCopyBaseButton",
4037
+ "component": "AvatarStack",
3931
4038
  "status": "beta",
3932
4039
  "a11y_reviewed": false,
3933
- "short_name": "ClipboardCopyBaseButton",
3934
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/clipboard_copy_base_button.rb",
3935
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/clipboard_copy_base_button/default/",
4040
+ "short_name": "AvatarStack",
4041
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/avatar_stack.rb",
4042
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/avatar_stack/default/",
3936
4043
  "parameters": [
3937
4044
  {
3938
4045
  "name": "tag",
3939
4046
  "type": "Symbol",
3940
- "default": "`:button`",
3941
- "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
4047
+ "default": "`:div`",
4048
+ "description": "One of `:div` or `:span`."
3942
4049
  },
3943
4050
  {
3944
- "name": "type",
4051
+ "name": "align",
3945
4052
  "type": "Symbol",
3946
- "default": "`:button`",
3947
- "description": "One of `:button`, `:reset`, or `:submit`."
3948
- },
3949
- {
3950
- "name": "block",
3951
- "type": "Boolean",
3952
- "default": "`false`",
3953
- "description": "Whether button is full-width with `display: block`."
4053
+ "default": "`:left`",
4054
+ "description": "One of `:left` or `:right`."
3954
4055
  },
3955
4056
  {
3956
- "name": "disabled",
4057
+ "name": "tooltipped",
3957
4058
  "type": "Boolean",
3958
4059
  "default": "`false`",
3959
- "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
4060
+ "description": "Whether to add a tooltip to the stack or not."
3960
4061
  },
3961
4062
  {
3962
- "name": "inactive",
3963
- "type": "Boolean",
3964
- "default": "`false`",
3965
- "description": "Whether the button looks visually disabled, but can still accept all the same interactions as an enabled button."
4063
+ "name": "body_arguments",
4064
+ "type": "Hash",
4065
+ "default": "`{}`",
4066
+ "description": "Parameters to add to the Body. If `tooltipped` is set, has the same arguments as [Tooltip](/components/tooltip). The default tag is `:div` but can be changed using `tag:` to one of `:div` or `:span`."
3966
4067
  },
3967
4068
  {
3968
4069
  "name": "system_arguments",
@@ -3973,40 +4074,42 @@
3973
4074
  ]
3974
4075
  },
3975
4076
  {
3976
- "component": "ClipboardCopyButton",
4077
+ "component": "BaseButton",
3977
4078
  "status": "beta",
3978
4079
  "a11y_reviewed": false,
3979
- "short_name": "ClipboardCopyButton",
3980
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/clipboard_copy_button.rb",
3981
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/clipboard_copy_button/default/",
4080
+ "short_name": "BaseButton",
4081
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/base_button.rb",
4082
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/base_button/default/",
3982
4083
  "parameters": [
3983
4084
  {
3984
- "name": "system_arguments",
3985
- "type": "Hash",
3986
- "default": "N/A",
3987
- "description": "The arguments accepted by [Button](/components/beta/button) and [ClipboardCopy](/components/beta/clipboardcopy)."
3988
- }
3989
- ]
3990
- },
3991
- {
3992
- "component": "CloseButton",
3993
- "status": "beta",
3994
- "a11y_reviewed": false,
3995
- "short_name": "CloseButton",
3996
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/close_button.rb",
3997
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/close_button/default/",
3998
- "parameters": [
4085
+ "name": "tag",
4086
+ "type": "Symbol",
4087
+ "default": "`:button`",
4088
+ "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
4089
+ },
3999
4090
  {
4000
4091
  "name": "type",
4001
4092
  "type": "Symbol",
4002
4093
  "default": "`:button`",
4003
- "description": "One of `:button` or `:submit`."
4094
+ "description": "One of `:button`, `:reset`, or `:submit`."
4095
+ },
4096
+ {
4097
+ "name": "block",
4098
+ "type": "Boolean",
4099
+ "default": "`false`",
4100
+ "description": "Whether button is full-width with `display: block`."
4004
4101
  },
4005
4102
  {
4006
4103
  "name": "disabled",
4007
4104
  "type": "Boolean",
4008
4105
  "default": "`false`",
4009
- "description": "Whether or not the button is disabled."
4106
+ "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
4107
+ },
4108
+ {
4109
+ "name": "inactive",
4110
+ "type": "Boolean",
4111
+ "default": "`false`",
4112
+ "description": "Whether the button looks visually disabled, but can still accept all the same interactions as an enabled button."
4010
4113
  },
4011
4114
  {
4012
4115
  "name": "system_arguments",
@@ -4017,48 +4120,30 @@
4017
4120
  ]
4018
4121
  },
4019
4122
  {
4020
- "component": "Counter",
4123
+ "component": "Blankslate",
4021
4124
  "status": "beta",
4022
4125
  "a11y_reviewed": false,
4023
- "short_name": "Counter",
4024
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/counter.rb",
4025
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/counter/default/",
4126
+ "short_name": "Blankslate",
4127
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/blankslate.rb",
4128
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/blankslate/default/",
4026
4129
  "parameters": [
4027
4130
  {
4028
- "name": "count",
4029
- "type": "Integer, Float::INFINITY, nil",
4030
- "default": "`0`",
4031
- "description": "The number to be displayed (e.x. # of issues, pull requests)"
4032
- },
4033
- {
4034
- "name": "scheme",
4035
- "type": "Symbol",
4036
- "default": "`:default`",
4037
- "description": "Color scheme. One of `:default`, `:primary`, or `:secondary`."
4038
- },
4039
- {
4040
- "name": "limit",
4041
- "type": "Integer, nil",
4042
- "default": "`5_000`",
4043
- "description": "Maximum value to display. Pass `nil` for no limit. (e.x. if `count` == 6,000 and `limit` == 5000, counter will display \"5,000+\")"
4044
- },
4045
- {
4046
- "name": "hide_if_zero",
4131
+ "name": "narrow",
4047
4132
  "type": "Boolean",
4048
4133
  "default": "`false`",
4049
- "description": "If true, a `hidden` attribute is added to the counter if `count` is zero."
4134
+ "description": "Adds a maximum width of `485px` to the Blankslate."
4050
4135
  },
4051
4136
  {
4052
- "name": "text",
4053
- "type": "String",
4054
- "default": "`\"\"`",
4055
- "description": "Text to display instead of count."
4137
+ "name": "spacious",
4138
+ "type": "Boolean",
4139
+ "default": "`false`",
4140
+ "description": "Increases the padding from `32px` to `80px 40px`."
4056
4141
  },
4057
4142
  {
4058
- "name": "round",
4143
+ "name": "border",
4059
4144
  "type": "Boolean",
4060
4145
  "default": "`false`",
4061
- "description": "Whether to apply our standard rounding logic to value."
4146
+ "description": "Adds a border around the Blankslate."
4062
4147
  },
4063
4148
  {
4064
4149
  "name": "system_arguments",
@@ -4069,30 +4154,18 @@
4069
4154
  ]
4070
4155
  },
4071
4156
  {
4072
- "component": "Details",
4157
+ "component": "BorderBox",
4073
4158
  "status": "beta",
4074
4159
  "a11y_reviewed": false,
4075
- "short_name": "Details",
4076
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/details.rb",
4077
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/details/default/",
4160
+ "short_name": "BorderBox",
4161
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/border_box.rb",
4162
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/border_box/default/",
4078
4163
  "parameters": [
4079
4164
  {
4080
- "name": "overlay",
4165
+ "name": "padding",
4081
4166
  "type": "Symbol",
4082
- "default": "`:none`",
4083
- "description": "Dictates the type of overlay to render with. One of `:dark`, `:default`, or `:none`."
4084
- },
4085
- {
4086
- "name": "reset",
4087
- "type": "Boolean",
4088
- "default": "`false`",
4089
- "description": "Defaults to false. If set to true, it will remove the default caret and remove style from the summary element"
4090
- },
4091
- {
4092
- "name": "disabled",
4093
- "type": "Boolean",
4094
- "default": "`false`",
4095
- "description": "Whether or not to disable the summary button."
4167
+ "default": "`:default`",
4168
+ "description": "One of `:condensed`, `:default`, or `:spacious`."
4096
4169
  },
4097
4170
  {
4098
4171
  "name": "system_arguments",
@@ -4103,43 +4176,13 @@
4103
4176
  ]
4104
4177
  },
4105
4178
  {
4106
- "component": "Flash",
4107
- "status": "deprecated",
4179
+ "component": "BorderBox::Header",
4180
+ "status": "beta",
4108
4181
  "a11y_reviewed": false,
4109
- "short_name": "Flash",
4110
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/flash.rb",
4111
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/flash/default/",
4182
+ "short_name": "BorderBoxHeader",
4183
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/border_box/header.rb",
4184
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/border_box/header/default/",
4112
4185
  "parameters": [
4113
- {
4114
- "name": "full",
4115
- "type": "Boolean",
4116
- "default": "`false`",
4117
- "description": "Whether the component should take up the full width of the screen."
4118
- },
4119
- {
4120
- "name": "spacious",
4121
- "type": "Boolean",
4122
- "default": "`false`",
4123
- "description": "Whether to add margin to the bottom of the component."
4124
- },
4125
- {
4126
- "name": "dismissible",
4127
- "type": "Boolean",
4128
- "default": "`false`",
4129
- "description": "Whether the component can be dismissed with an X button."
4130
- },
4131
- {
4132
- "name": "icon",
4133
- "type": "Symbol",
4134
- "default": "`nil`",
4135
- "description": "Name of Octicon icon to use."
4136
- },
4137
- {
4138
- "name": "scheme",
4139
- "type": "Symbol",
4140
- "default": "`:default`",
4141
- "description": "One of `:danger`, `:default`, `:success`, or `:warning`."
4142
- },
4143
4186
  {
4144
4187
  "name": "system_arguments",
4145
4188
  "type": "Hash",
@@ -4149,19 +4192,13 @@
4149
4192
  ]
4150
4193
  },
4151
4194
  {
4152
- "component": "Heading",
4195
+ "component": "Breadcrumbs",
4153
4196
  "status": "beta",
4154
4197
  "a11y_reviewed": false,
4155
- "short_name": "Heading",
4156
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/heading.rb",
4157
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/heading/default/",
4198
+ "short_name": "Breadcrumbs",
4199
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/breadcrumbs.rb",
4200
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/breadcrumbs/default/",
4158
4201
  "parameters": [
4159
- {
4160
- "name": "tag",
4161
- "type": "String",
4162
- "default": "N/A",
4163
- "description": "One of `:h1`, `:h2`, `:h3`, `:h4`, `:h5`, or `:h6`."
4164
- },
4165
4202
  {
4166
4203
  "name": "system_arguments",
4167
4204
  "type": "Hash",
@@ -4171,30 +4208,33 @@
4171
4208
  ]
4172
4209
  },
4173
4210
  {
4174
- "component": "IconButton",
4211
+ "component": "Breadcrumbs::Item",
4212
+ "status": "alpha",
4213
+ "a11y_reviewed": false,
4214
+ "short_name": "BreadcrumbsItem",
4215
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/breadcrumbs/item.rb",
4216
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/breadcrumbs/item/default/",
4217
+ "parameters": []
4218
+ },
4219
+ {
4220
+ "component": "Button",
4175
4221
  "status": "beta",
4176
4222
  "a11y_reviewed": false,
4177
- "short_name": "IconButton",
4178
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/icon_button.rb",
4179
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/icon_button/default/",
4223
+ "short_name": "Button",
4224
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/button.rb",
4225
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/button/default/",
4180
4226
  "parameters": [
4181
4227
  {
4182
- "name": "icon",
4183
- "type": "String",
4184
- "default": "N/A",
4185
- "description": "Name of [Octicon](https://primer.style/octicons/) to use."
4186
- },
4187
- {
4188
- "name": "tag",
4189
- "type": "Symbol",
4190
- "default": "N/A",
4191
- "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
4228
+ "name": "base_button_class",
4229
+ "type": "Class",
4230
+ "default": "`Primer::Beta::BaseButton`",
4231
+ "description": "The button class to render."
4192
4232
  },
4193
4233
  {
4194
4234
  "name": "scheme",
4195
4235
  "type": "Symbol",
4196
4236
  "default": "`:default`",
4197
- "description": "One of `:danger`, `:default`, `:invisible`, `:primary`, or `:secondary`."
4237
+ "description": "One of `:danger`, `:default`, `:invisible`, `:link`, `:primary`, or `:secondary`."
4198
4238
  },
4199
4239
  {
4200
4240
  "name": "size",
@@ -4203,40 +4243,46 @@
4203
4243
  "description": "One of `:large`, `:medium`, or `:small`."
4204
4244
  },
4205
4245
  {
4206
- "name": "disabled",
4246
+ "name": "block",
4207
4247
  "type": "Boolean",
4208
4248
  "default": "`false`",
4209
- "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
4249
+ "description": "Whether button is full-width with `display: block`."
4210
4250
  },
4211
4251
  {
4212
- "name": "type",
4252
+ "name": "align_content",
4213
4253
  "type": "Symbol",
4214
- "default": "N/A",
4215
- "description": "One of `:button`, `:reset`, or `:submit`."
4254
+ "default": "`:center`",
4255
+ "description": "One of `:center` or `:start`."
4216
4256
  },
4217
4257
  {
4218
- "name": "aria-label",
4219
- "type": "String",
4220
- "default": "N/A",
4221
- "description": "String that can be read by assistive technology. A label should be short and concise. See the accessibility section for more information."
4258
+ "name": "tag",
4259
+ "type": "Symbol",
4260
+ "default": "`:button`",
4261
+ "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
4222
4262
  },
4223
4263
  {
4224
- "name": "aria-description",
4225
- "type": "String",
4226
- "default": "N/A",
4227
- "description": "String that can be read by assistive technology. A description can be longer as it is intended to provide more context and information. See the accessibility section for more information."
4264
+ "name": "type",
4265
+ "type": "Symbol",
4266
+ "default": "`:button`",
4267
+ "description": "One of `:button`, `:reset`, or `:submit`."
4228
4268
  },
4229
4269
  {
4230
- "name": "show_tooltip",
4270
+ "name": "inactive",
4231
4271
  "type": "Boolean",
4232
- "default": "`true`",
4233
- "description": "Whether or not to show a tooltip when this button is hovered. Tooltips should only be hidden if the aria label is redundant, i.e. if the icon has a widely understood definition."
4272
+ "default": "N/A",
4273
+ "description": "Whether the button looks visually disabled, but can still accept all the same interactions as an enabled button."
4234
4274
  },
4235
4275
  {
4236
- "name": "tooltip_direction",
4237
- "type": "Symbol",
4238
- "default": "`:s`",
4239
- "description": "One of `:e`, `:n`, `:ne`, `:nw`, `:s`, `:se`, `:sw`, or `:w`."
4276
+ "name": "disabled",
4277
+ "type": "Boolean",
4278
+ "default": "`false`",
4279
+ "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
4280
+ },
4281
+ {
4282
+ "name": "label_wrap",
4283
+ "type": "Boolean",
4284
+ "default": "`false`",
4285
+ "description": "Whether or not the button label text wraps and the button height expands."
4240
4286
  },
4241
4287
  {
4242
4288
  "name": "system_arguments",
@@ -4247,42 +4293,80 @@
4247
4293
  ]
4248
4294
  },
4249
4295
  {
4250
- "component": "Label",
4296
+ "component": "ButtonGroup",
4251
4297
  "status": "beta",
4252
4298
  "a11y_reviewed": false,
4253
- "short_name": "Label",
4254
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/label.rb",
4255
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/label/default/",
4299
+ "short_name": "ButtonGroup",
4300
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/button_group.rb",
4301
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/button_group/default/",
4256
4302
  "parameters": [
4257
- {
4258
- "name": "tag",
4259
- "type": "Symbol",
4260
- "default": "`:span`",
4261
- "description": "One of `:a`, `:div`, `:span`, or `:summary`."
4262
- },
4263
4303
  {
4264
4304
  "name": "scheme",
4265
4305
  "type": "Symbol",
4266
4306
  "default": "`:default`",
4267
- "description": "One of `:accent`, `:attention`, `:danger`, `:default`, `:done`, `:info`, `:orange`, `:primary`, `:purple`, `:secondary`, `:severe`, `:sponsors`, `:success`, or `:warning`."
4307
+ "description": "DEPRECATED. One of `:danger`, `:default`, `:invisible`, `:link`, `:primary`, or `:secondary`."
4268
4308
  },
4269
4309
  {
4270
4310
  "name": "size",
4271
4311
  "type": "Symbol",
4272
4312
  "default": "`:medium`",
4273
- "description": "One of `:large` or `:medium`."
4313
+ "description": "One of `:large`, `:medium`, or `:small`."
4274
4314
  },
4275
4315
  {
4276
- "name": "inline",
4277
- "type": "Boolean",
4278
- "default": "`false`",
4279
- "description": "Whether or not to render this label inline."
4316
+ "name": "system_arguments",
4317
+ "type": "Hash",
4318
+ "default": "N/A",
4319
+ "description": "[System arguments](/system-arguments)"
4320
+ }
4321
+ ]
4322
+ },
4323
+ {
4324
+ "component": "ButtonGroup::MenuButton",
4325
+ "status": "alpha",
4326
+ "a11y_reviewed": false,
4327
+ "short_name": "ButtonGroupMenuButton",
4328
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/button_group/menu_button.rb",
4329
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/button_group/menu_button/default/",
4330
+ "parameters": [
4331
+ {
4332
+ "name": "menu_arguments",
4333
+ "type": "Hash",
4334
+ "default": "`{}`",
4335
+ "description": "The arguments accepted by [ActionMenu](/components/alpha/actionmenu)."
4280
4336
  },
4281
4337
  {
4282
- "name": "variant",
4283
- "type": "Symbol",
4284
- "default": "`:none`",
4285
- "description": "One of `:inline`, `:large`, or `:none`."
4338
+ "name": "button_arguments",
4339
+ "type": "Hash",
4340
+ "default": "`{}`",
4341
+ "description": "The arguments accepted by [Button](/components/beta/button) or [IconButton](/components/beta/iconbutton), depending on the value of the `icon:` argument."
4342
+ }
4343
+ ]
4344
+ },
4345
+ {
4346
+ "component": "ClipboardCopy",
4347
+ "status": "beta",
4348
+ "a11y_reviewed": false,
4349
+ "short_name": "ClipboardCopy",
4350
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/clipboard_copy.rb",
4351
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/clipboard_copy/default/",
4352
+ "parameters": [
4353
+ {
4354
+ "name": "aria-label",
4355
+ "type": "String",
4356
+ "default": "N/A",
4357
+ "description": "String that will be read to screenreaders when the component is focused"
4358
+ },
4359
+ {
4360
+ "name": "value",
4361
+ "type": "String",
4362
+ "default": "`nil`",
4363
+ "description": "Text to copy into the users clipboard when they click the component."
4364
+ },
4365
+ {
4366
+ "name": "for",
4367
+ "type": "String",
4368
+ "default": "N/A",
4369
+ "description": "Element id from where to get the copied value."
4286
4370
  },
4287
4371
  {
4288
4372
  "name": "system_arguments",
@@ -4293,36 +4377,42 @@
4293
4377
  ]
4294
4378
  },
4295
4379
  {
4296
- "component": "Link",
4380
+ "component": "ClipboardCopyBaseButton",
4297
4381
  "status": "beta",
4298
4382
  "a11y_reviewed": false,
4299
- "short_name": "Link",
4300
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/link.rb",
4301
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/link/default/",
4383
+ "short_name": "ClipboardCopyBaseButton",
4384
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/clipboard_copy_base_button.rb",
4385
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/clipboard_copy_base_button/default/",
4302
4386
  "parameters": [
4303
4387
  {
4304
- "name": "href",
4305
- "type": "String",
4306
- "default": "`nil`",
4307
- "description": "URL to be used for the Link. Required. If the requirements are not met an error will be raised in non production environments. In production, an empty link element will be rendered."
4388
+ "name": "tag",
4389
+ "type": "Symbol",
4390
+ "default": "`:button`",
4391
+ "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
4308
4392
  },
4309
4393
  {
4310
- "name": "scheme",
4394
+ "name": "type",
4311
4395
  "type": "Symbol",
4312
- "default": "`:default`",
4313
- "description": "One of `:default`, `:primary`, or `:secondary`."
4396
+ "default": "`:button`",
4397
+ "description": "One of `:button`, `:reset`, or `:submit`."
4314
4398
  },
4315
4399
  {
4316
- "name": "muted",
4400
+ "name": "block",
4317
4401
  "type": "Boolean",
4318
4402
  "default": "`false`",
4319
- "description": "Uses light gray for Link color, and blue on hover."
4403
+ "description": "Whether button is full-width with `display: block`."
4320
4404
  },
4321
4405
  {
4322
- "name": "underline",
4406
+ "name": "disabled",
4323
4407
  "type": "Boolean",
4324
4408
  "default": "`false`",
4325
- "description": "Whether or not to underline the link."
4409
+ "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
4410
+ },
4411
+ {
4412
+ "name": "inactive",
4413
+ "type": "Boolean",
4414
+ "default": "`false`",
4415
+ "description": "Whether the button looks visually disabled, but can still accept all the same interactions as an enabled button."
4326
4416
  },
4327
4417
  {
4328
4418
  "name": "system_arguments",
@@ -4333,40 +4423,40 @@
4333
4423
  ]
4334
4424
  },
4335
4425
  {
4336
- "component": "Markdown",
4426
+ "component": "ClipboardCopyButton",
4337
4427
  "status": "beta",
4338
4428
  "a11y_reviewed": false,
4339
- "short_name": "Markdown",
4340
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/markdown.rb",
4341
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/markdown/default/",
4429
+ "short_name": "ClipboardCopyButton",
4430
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/clipboard_copy_button.rb",
4431
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/clipboard_copy_button/default/",
4342
4432
  "parameters": [
4343
- {
4344
- "name": "tag",
4345
- "type": "Symbol",
4346
- "default": "`:div`",
4347
- "description": "One of `:article`, `:div`, or `:td`."
4348
- },
4349
4433
  {
4350
4434
  "name": "system_arguments",
4351
4435
  "type": "Hash",
4352
4436
  "default": "N/A",
4353
- "description": "[System arguments](/system-arguments)"
4437
+ "description": "The arguments accepted by [Button](/components/beta/button) and [ClipboardCopy](/components/beta/clipboardcopy)."
4354
4438
  }
4355
4439
  ]
4356
4440
  },
4357
4441
  {
4358
- "component": "NavList",
4442
+ "component": "CloseButton",
4359
4443
  "status": "beta",
4360
- "a11y_reviewed": true,
4361
- "short_name": "NavList",
4362
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list.rb",
4363
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/default/",
4444
+ "a11y_reviewed": false,
4445
+ "short_name": "CloseButton",
4446
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/close_button.rb",
4447
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/close_button/default/",
4364
4448
  "parameters": [
4365
4449
  {
4366
- "name": "selected_item_id",
4450
+ "name": "type",
4367
4451
  "type": "Symbol",
4368
- "default": "`nil`",
4369
- "description": "The ID of the currently selected item. The default is `nil`, meaning no item is selected."
4452
+ "default": "`:button`",
4453
+ "description": "One of `:button` or `:submit`."
4454
+ },
4455
+ {
4456
+ "name": "disabled",
4457
+ "type": "Boolean",
4458
+ "default": "`false`",
4459
+ "description": "Whether or not the button is disabled."
4370
4460
  },
4371
4461
  {
4372
4462
  "name": "system_arguments",
@@ -4377,18 +4467,48 @@
4377
4467
  ]
4378
4468
  },
4379
4469
  {
4380
- "component": "NavList::Divider",
4381
- "status": "alpha",
4470
+ "component": "Counter",
4471
+ "status": "beta",
4382
4472
  "a11y_reviewed": false,
4383
- "short_name": "NavListDivider",
4384
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/divider.rb",
4385
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/divider/default/",
4473
+ "short_name": "Counter",
4474
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/counter.rb",
4475
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/counter/default/",
4386
4476
  "parameters": [
4477
+ {
4478
+ "name": "count",
4479
+ "type": "Integer, Float::INFINITY, nil",
4480
+ "default": "`0`",
4481
+ "description": "The number to be displayed (e.x. # of issues, pull requests)"
4482
+ },
4387
4483
  {
4388
4484
  "name": "scheme",
4389
4485
  "type": "Symbol",
4390
- "default": "`:subtle`",
4391
- "description": "Display a background color if scheme is `filled`."
4486
+ "default": "`:default`",
4487
+ "description": "Color scheme. One of `:default`, `:primary`, or `:secondary`."
4488
+ },
4489
+ {
4490
+ "name": "limit",
4491
+ "type": "Integer, nil",
4492
+ "default": "`5_000`",
4493
+ "description": "Maximum value to display. Pass `nil` for no limit. (e.x. if `count` == 6,000 and `limit` == 5000, counter will display \"5,000+\")"
4494
+ },
4495
+ {
4496
+ "name": "hide_if_zero",
4497
+ "type": "Boolean",
4498
+ "default": "`false`",
4499
+ "description": "If true, a `hidden` attribute is added to the counter if `count` is zero."
4500
+ },
4501
+ {
4502
+ "name": "text",
4503
+ "type": "String",
4504
+ "default": "`\"\"`",
4505
+ "description": "Text to display instead of count."
4506
+ },
4507
+ {
4508
+ "name": "round",
4509
+ "type": "Boolean",
4510
+ "default": "`false`",
4511
+ "description": "Whether to apply our standard rounding logic to value."
4392
4512
  },
4393
4513
  {
4394
4514
  "name": "system_arguments",
@@ -4399,18 +4519,30 @@
4399
4519
  ]
4400
4520
  },
4401
4521
  {
4402
- "component": "NavList::Group",
4403
- "status": "alpha",
4404
- "a11y_reviewed": true,
4405
- "short_name": "NavListGroup",
4406
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/group.rb",
4407
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/group/default/",
4522
+ "component": "Details",
4523
+ "status": "beta",
4524
+ "a11y_reviewed": false,
4525
+ "short_name": "Details",
4526
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/details.rb",
4527
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/details/default/",
4408
4528
  "parameters": [
4409
4529
  {
4410
- "name": "selected_item_id",
4530
+ "name": "overlay",
4411
4531
  "type": "Symbol",
4412
- "default": "`nil`",
4413
- "description": "The ID of the currently selected item. Used internally."
4532
+ "default": "`:none`",
4533
+ "description": "Dictates the type of overlay to render with. One of `:dark`, `:default`, or `:none`."
4534
+ },
4535
+ {
4536
+ "name": "reset",
4537
+ "type": "Boolean",
4538
+ "default": "`false`",
4539
+ "description": "Defaults to false. If set to true, it will remove the default caret and remove style from the summary element"
4540
+ },
4541
+ {
4542
+ "name": "disabled",
4543
+ "type": "Boolean",
4544
+ "default": "`false`",
4545
+ "description": "Whether or not to disable the summary button."
4414
4546
  },
4415
4547
  {
4416
4548
  "name": "system_arguments",
@@ -4421,30 +4553,42 @@
4421
4553
  ]
4422
4554
  },
4423
4555
  {
4424
- "component": "NavList::Heading",
4425
- "status": "alpha",
4556
+ "component": "Flash",
4557
+ "status": "deprecated",
4426
4558
  "a11y_reviewed": false,
4427
- "short_name": "NavListHeading",
4428
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/heading.rb",
4429
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/heading/default/",
4559
+ "short_name": "Flash",
4560
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/flash.rb",
4561
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/flash/default/",
4430
4562
  "parameters": [
4431
4563
  {
4432
- "name": "title",
4433
- "type": "String",
4434
- "default": "N/A",
4435
- "description": "The text content of the heading."
4564
+ "name": "full",
4565
+ "type": "Boolean",
4566
+ "default": "`false`",
4567
+ "description": "Whether the component should take up the full width of the screen."
4436
4568
  },
4437
4569
  {
4438
- "name": "id",
4439
- "type": "String",
4440
- "default": "`self.class.generate_id`",
4441
- "description": "The value of the ID HTML attribute. Auto-generated by default."
4570
+ "name": "spacious",
4571
+ "type": "Boolean",
4572
+ "default": "`false`",
4573
+ "description": "Whether to add margin to the bottom of the component."
4442
4574
  },
4443
4575
  {
4444
- "name": "heading_level",
4445
- "type": "Integer",
4446
- "default": "`2`",
4447
- "description": "The heading level, i.e. 2 for an `<h2>`, 3 for an `<h3>`, etc."
4576
+ "name": "dismissible",
4577
+ "type": "Boolean",
4578
+ "default": "`false`",
4579
+ "description": "Whether the component can be dismissed with an X button."
4580
+ },
4581
+ {
4582
+ "name": "icon",
4583
+ "type": "Symbol",
4584
+ "default": "`nil`",
4585
+ "description": "Name of Octicon icon to use."
4586
+ },
4587
+ {
4588
+ "name": "scheme",
4589
+ "type": "Symbol",
4590
+ "default": "`:default`",
4591
+ "description": "One of `:danger`, `:default`, `:success`, or `:warning`."
4448
4592
  },
4449
4593
  {
4450
4594
  "name": "system_arguments",
@@ -4455,36 +4599,94 @@
4455
4599
  ]
4456
4600
  },
4457
4601
  {
4458
- "component": "NavList::Item",
4459
- "status": "alpha",
4602
+ "component": "Heading",
4603
+ "status": "beta",
4460
4604
  "a11y_reviewed": false,
4461
- "short_name": "NavListItem",
4462
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/item.rb",
4463
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/item/default/",
4605
+ "short_name": "Heading",
4606
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/heading.rb",
4607
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/heading/default/",
4464
4608
  "parameters": [
4465
4609
  {
4466
- "name": "selected_item_id",
4610
+ "name": "tag",
4611
+ "type": "String",
4612
+ "default": "N/A",
4613
+ "description": "One of `:h1`, `:h2`, `:h3`, `:h4`, `:h5`, or `:h6`."
4614
+ },
4615
+ {
4616
+ "name": "system_arguments",
4617
+ "type": "Hash",
4618
+ "default": "N/A",
4619
+ "description": "[System arguments](/system-arguments)"
4620
+ }
4621
+ ]
4622
+ },
4623
+ {
4624
+ "component": "IconButton",
4625
+ "status": "beta",
4626
+ "a11y_reviewed": false,
4627
+ "short_name": "IconButton",
4628
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/icon_button.rb",
4629
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/icon_button/default/",
4630
+ "parameters": [
4631
+ {
4632
+ "name": "icon",
4633
+ "type": "String",
4634
+ "default": "N/A",
4635
+ "description": "Name of [Octicon](https://primer.style/octicons/) to use."
4636
+ },
4637
+ {
4638
+ "name": "tag",
4467
4639
  "type": "Symbol",
4468
- "default": "`nil`",
4469
- "description": "The ID of the currently selected list item. Used internally."
4640
+ "default": "N/A",
4641
+ "description": "One of `:a`, `:button`, `:clipboard-copy`, or `:summary`."
4470
4642
  },
4471
4643
  {
4472
- "name": "selected_by_ids",
4473
- "type": "Array<Symbol>",
4474
- "default": "`[]`",
4475
- "description": "The list of IDs that select this item. In other words, if the `selected_item_id` attribute on the parent `NavList` is set to one of these IDs, the item will appear selected."
4644
+ "name": "scheme",
4645
+ "type": "Symbol",
4646
+ "default": "`:default`",
4647
+ "description": "One of `:danger`, `:default`, `:invisible`, `:primary`, or `:secondary`."
4476
4648
  },
4477
4649
  {
4478
- "name": "expanded",
4650
+ "name": "size",
4651
+ "type": "Symbol",
4652
+ "default": "`:medium`",
4653
+ "description": "One of `:large`, `:medium`, or `:small`."
4654
+ },
4655
+ {
4656
+ "name": "disabled",
4479
4657
  "type": "Boolean",
4480
4658
  "default": "`false`",
4481
- "description": "Whether this item shows (expands) or hides (collapses) its list of sub items."
4659
+ "description": "Whether or not the button is disabled. If true, this option forces `tag:` to `:button`."
4482
4660
  },
4483
4661
  {
4484
- "name": "sub_item",
4662
+ "name": "type",
4663
+ "type": "Symbol",
4664
+ "default": "N/A",
4665
+ "description": "One of `:button`, `:reset`, or `:submit`."
4666
+ },
4667
+ {
4668
+ "name": "aria-label",
4669
+ "type": "String",
4670
+ "default": "N/A",
4671
+ "description": "String that can be read by assistive technology. A label should be short and concise. See the accessibility section for more information."
4672
+ },
4673
+ {
4674
+ "name": "aria-description",
4675
+ "type": "String",
4676
+ "default": "N/A",
4677
+ "description": "String that can be read by assistive technology. A description can be longer as it is intended to provide more context and information. See the accessibility section for more information."
4678
+ },
4679
+ {
4680
+ "name": "show_tooltip",
4485
4681
  "type": "Boolean",
4486
- "default": "`false`",
4487
- "description": "Whether or not this item is nested under a parent item. Used internally."
4682
+ "default": "`true`",
4683
+ "description": "Whether or not to show a tooltip when this button is hovered. Tooltips should only be hidden if the aria label is redundant, i.e. if the icon has a widely understood definition."
4684
+ },
4685
+ {
4686
+ "name": "tooltip_direction",
4687
+ "type": "Symbol",
4688
+ "default": "`:s`",
4689
+ "description": "One of `:e`, `:n`, `:ne`, `:nw`, `:s`, `:se`, `:sw`, or `:w`."
4488
4690
  },
4489
4691
  {
4490
4692
  "name": "system_arguments",
@@ -4495,36 +4697,42 @@
4495
4697
  ]
4496
4698
  },
4497
4699
  {
4498
- "component": "Octicon",
4700
+ "component": "Label",
4499
4701
  "status": "beta",
4500
4702
  "a11y_reviewed": false,
4501
- "short_name": "Octicon",
4502
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/octicon.rb",
4503
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/octicon/default/",
4703
+ "short_name": "Label",
4704
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/label.rb",
4705
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/label/default/",
4504
4706
  "parameters": [
4505
4707
  {
4506
- "name": "icon_name",
4507
- "type": "Symbol, String",
4508
- "default": "`nil`",
4509
- "description": "Name of [Octicon](https://primer.style/octicons/) to use."
4708
+ "name": "tag",
4709
+ "type": "Symbol",
4710
+ "default": "`:span`",
4711
+ "description": "One of `:a`, `:div`, `:span`, or `:summary`."
4510
4712
  },
4511
4713
  {
4512
- "name": "icon",
4513
- "type": "Symbol, String",
4514
- "default": "`nil`",
4515
- "description": "Name of [Octicon](https://primer.style/octicons/) to use."
4714
+ "name": "scheme",
4715
+ "type": "Symbol",
4716
+ "default": "`:default`",
4717
+ "description": "One of `:accent`, `:attention`, `:danger`, `:default`, `:done`, `:info`, `:orange`, `:primary`, `:purple`, `:secondary`, `:severe`, `:sponsors`, `:success`, or `:warning`."
4516
4718
  },
4517
4719
  {
4518
4720
  "name": "size",
4519
4721
  "type": "Symbol",
4520
- "default": "`:small`",
4521
- "description": "One of `:xsmall` (`12`), `:small` (`16`), or `:medium` (`24`)."
4722
+ "default": "`:medium`",
4723
+ "description": "One of `:large` or `:medium`."
4522
4724
  },
4523
4725
  {
4524
- "name": "use_symbol",
4726
+ "name": "inline",
4525
4727
  "type": "Boolean",
4526
4728
  "default": "`false`",
4527
- "description": "EXPERIMENTAL (May change or be removed) - Set to true when using with [OcticonSymbols](/components/alpha/octiconsymbols)."
4729
+ "description": "Whether or not to render this label inline."
4730
+ },
4731
+ {
4732
+ "name": "variant",
4733
+ "type": "Symbol",
4734
+ "default": "`:none`",
4735
+ "description": "One of `:inline`, `:large`, or `:none`."
4528
4736
  },
4529
4737
  {
4530
4738
  "name": "system_arguments",
@@ -4535,13 +4743,37 @@
4535
4743
  ]
4536
4744
  },
4537
4745
  {
4538
- "component": "Popover",
4746
+ "component": "Link",
4539
4747
  "status": "beta",
4540
4748
  "a11y_reviewed": false,
4541
- "short_name": "Popover",
4542
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/popover.rb",
4543
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/popover/default/",
4749
+ "short_name": "Link",
4750
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/link.rb",
4751
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/link/default/",
4544
4752
  "parameters": [
4753
+ {
4754
+ "name": "href",
4755
+ "type": "String",
4756
+ "default": "`nil`",
4757
+ "description": "URL to be used for the Link. Required. If the requirements are not met an error will be raised in non production environments. In production, an empty link element will be rendered."
4758
+ },
4759
+ {
4760
+ "name": "scheme",
4761
+ "type": "Symbol",
4762
+ "default": "`:default`",
4763
+ "description": "One of `:default`, `:primary`, or `:secondary`."
4764
+ },
4765
+ {
4766
+ "name": "muted",
4767
+ "type": "Boolean",
4768
+ "default": "`false`",
4769
+ "description": "Uses light gray for Link color, and blue on hover."
4770
+ },
4771
+ {
4772
+ "name": "underline",
4773
+ "type": "Boolean",
4774
+ "default": "`false`",
4775
+ "description": "Whether or not to underline the link."
4776
+ },
4545
4777
  {
4546
4778
  "name": "system_arguments",
4547
4779
  "type": "Hash",
@@ -4551,18 +4783,18 @@
4551
4783
  ]
4552
4784
  },
4553
4785
  {
4554
- "component": "ProgressBar",
4786
+ "component": "Markdown",
4555
4787
  "status": "beta",
4556
4788
  "a11y_reviewed": false,
4557
- "short_name": "ProgressBar",
4558
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/progress_bar.rb",
4559
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/progress_bar/default/",
4789
+ "short_name": "Markdown",
4790
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/markdown.rb",
4791
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/markdown/default/",
4560
4792
  "parameters": [
4561
4793
  {
4562
- "name": "size",
4794
+ "name": "tag",
4563
4795
  "type": "Symbol",
4564
- "default": "`:default`",
4565
- "description": "One of `:default`, `:large`, or `:small`. Increases height."
4796
+ "default": "`:div`",
4797
+ "description": "One of `:article`, `:div`, or `:td`."
4566
4798
  },
4567
4799
  {
4568
4800
  "name": "system_arguments",
@@ -4573,36 +4805,254 @@
4573
4805
  ]
4574
4806
  },
4575
4807
  {
4576
- "component": "RelativeTime",
4808
+ "component": "NavList",
4577
4809
  "status": "beta",
4578
- "a11y_reviewed": false,
4579
- "short_name": "RelativeTime",
4580
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/relative_time.rb",
4581
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/relative_time/default/",
4810
+ "a11y_reviewed": true,
4811
+ "short_name": "NavList",
4812
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list.rb",
4813
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/default/",
4582
4814
  "parameters": [
4583
4815
  {
4584
- "name": "datetime",
4585
- "type": "Time",
4586
- "default": "N/A",
4587
- "description": "The time to be formatted."
4588
- },
4589
- {
4590
- "name": "tense",
4816
+ "name": "selected_item_id",
4591
4817
  "type": "Symbol",
4592
- "default": "`:auto`",
4593
- "description": "Which tense to use. One of `:auto`, `:future`, or `:past`."
4594
- },
4595
- {
4596
- "name": "prefix",
4597
- "type": "String",
4598
4818
  "default": "`nil`",
4599
- "description": "What to prefix the relative time display with."
4819
+ "description": "The ID of the currently selected item. The default is `nil`, meaning no item is selected."
4600
4820
  },
4601
4821
  {
4602
- "name": "second",
4822
+ "name": "system_arguments",
4823
+ "type": "Hash",
4824
+ "default": "N/A",
4825
+ "description": "[System arguments](/system-arguments)"
4826
+ }
4827
+ ]
4828
+ },
4829
+ {
4830
+ "component": "NavList::Divider",
4831
+ "status": "alpha",
4832
+ "a11y_reviewed": false,
4833
+ "short_name": "NavListDivider",
4834
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/divider.rb",
4835
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/divider/default/",
4836
+ "parameters": [
4837
+ {
4838
+ "name": "scheme",
4603
4839
  "type": "Symbol",
4604
- "default": "`SECOND_DEFAULT`",
4605
- "description": "What format seconds should take. One of `nil`, `:numeric`, or `:two_digit`."
4840
+ "default": "`:subtle`",
4841
+ "description": "Display a background color if scheme is `filled`."
4842
+ },
4843
+ {
4844
+ "name": "system_arguments",
4845
+ "type": "Hash",
4846
+ "default": "N/A",
4847
+ "description": "[System arguments](/system-arguments)"
4848
+ }
4849
+ ]
4850
+ },
4851
+ {
4852
+ "component": "NavList::Group",
4853
+ "status": "alpha",
4854
+ "a11y_reviewed": true,
4855
+ "short_name": "NavListGroup",
4856
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/group.rb",
4857
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/group/default/",
4858
+ "parameters": [
4859
+ {
4860
+ "name": "selected_item_id",
4861
+ "type": "Symbol",
4862
+ "default": "`nil`",
4863
+ "description": "The ID of the currently selected item. Used internally."
4864
+ },
4865
+ {
4866
+ "name": "system_arguments",
4867
+ "type": "Hash",
4868
+ "default": "N/A",
4869
+ "description": "[System arguments](/system-arguments)"
4870
+ }
4871
+ ]
4872
+ },
4873
+ {
4874
+ "component": "NavList::Heading",
4875
+ "status": "alpha",
4876
+ "a11y_reviewed": false,
4877
+ "short_name": "NavListHeading",
4878
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/heading.rb",
4879
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/heading/default/",
4880
+ "parameters": [
4881
+ {
4882
+ "name": "title",
4883
+ "type": "String",
4884
+ "default": "N/A",
4885
+ "description": "The text content of the heading."
4886
+ },
4887
+ {
4888
+ "name": "id",
4889
+ "type": "String",
4890
+ "default": "`self.class.generate_id`",
4891
+ "description": "The value of the ID HTML attribute. Auto-generated by default."
4892
+ },
4893
+ {
4894
+ "name": "heading_level",
4895
+ "type": "Integer",
4896
+ "default": "`2`",
4897
+ "description": "The heading level, i.e. 2 for an `<h2>`, 3 for an `<h3>`, etc."
4898
+ },
4899
+ {
4900
+ "name": "system_arguments",
4901
+ "type": "Hash",
4902
+ "default": "N/A",
4903
+ "description": "[System arguments](/system-arguments)"
4904
+ }
4905
+ ]
4906
+ },
4907
+ {
4908
+ "component": "NavList::Item",
4909
+ "status": "alpha",
4910
+ "a11y_reviewed": false,
4911
+ "short_name": "NavListItem",
4912
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/nav_list/item.rb",
4913
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/nav_list/item/default/",
4914
+ "parameters": [
4915
+ {
4916
+ "name": "selected_item_id",
4917
+ "type": "Symbol",
4918
+ "default": "`nil`",
4919
+ "description": "The ID of the currently selected list item. Used internally."
4920
+ },
4921
+ {
4922
+ "name": "selected_by_ids",
4923
+ "type": "Array<Symbol>",
4924
+ "default": "`[]`",
4925
+ "description": "The list of IDs that select this item. In other words, if the `selected_item_id` attribute on the parent `NavList` is set to one of these IDs, the item will appear selected."
4926
+ },
4927
+ {
4928
+ "name": "expanded",
4929
+ "type": "Boolean",
4930
+ "default": "`false`",
4931
+ "description": "Whether this item shows (expands) or hides (collapses) its list of sub items."
4932
+ },
4933
+ {
4934
+ "name": "sub_item",
4935
+ "type": "Boolean",
4936
+ "default": "`false`",
4937
+ "description": "Whether or not this item is nested under a parent item. Used internally."
4938
+ },
4939
+ {
4940
+ "name": "system_arguments",
4941
+ "type": "Hash",
4942
+ "default": "N/A",
4943
+ "description": "[System arguments](/system-arguments)"
4944
+ }
4945
+ ]
4946
+ },
4947
+ {
4948
+ "component": "Octicon",
4949
+ "status": "beta",
4950
+ "a11y_reviewed": false,
4951
+ "short_name": "Octicon",
4952
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/octicon.rb",
4953
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/octicon/default/",
4954
+ "parameters": [
4955
+ {
4956
+ "name": "icon_name",
4957
+ "type": "Symbol, String",
4958
+ "default": "`nil`",
4959
+ "description": "Name of [Octicon](https://primer.style/octicons/) to use."
4960
+ },
4961
+ {
4962
+ "name": "icon",
4963
+ "type": "Symbol, String",
4964
+ "default": "`nil`",
4965
+ "description": "Name of [Octicon](https://primer.style/octicons/) to use."
4966
+ },
4967
+ {
4968
+ "name": "size",
4969
+ "type": "Symbol",
4970
+ "default": "`:small`",
4971
+ "description": "One of `:xsmall` (`12`), `:small` (`16`), or `:medium` (`24`)."
4972
+ },
4973
+ {
4974
+ "name": "use_symbol",
4975
+ "type": "Boolean",
4976
+ "default": "`false`",
4977
+ "description": "EXPERIMENTAL (May change or be removed) - Set to true when using with [OcticonSymbols](/components/alpha/octiconsymbols)."
4978
+ },
4979
+ {
4980
+ "name": "system_arguments",
4981
+ "type": "Hash",
4982
+ "default": "N/A",
4983
+ "description": "[System arguments](/system-arguments)"
4984
+ }
4985
+ ]
4986
+ },
4987
+ {
4988
+ "component": "Popover",
4989
+ "status": "beta",
4990
+ "a11y_reviewed": false,
4991
+ "short_name": "Popover",
4992
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/popover.rb",
4993
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/popover/default/",
4994
+ "parameters": [
4995
+ {
4996
+ "name": "system_arguments",
4997
+ "type": "Hash",
4998
+ "default": "N/A",
4999
+ "description": "[System arguments](/system-arguments)"
5000
+ }
5001
+ ]
5002
+ },
5003
+ {
5004
+ "component": "ProgressBar",
5005
+ "status": "beta",
5006
+ "a11y_reviewed": false,
5007
+ "short_name": "ProgressBar",
5008
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/progress_bar.rb",
5009
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/progress_bar/default/",
5010
+ "parameters": [
5011
+ {
5012
+ "name": "size",
5013
+ "type": "Symbol",
5014
+ "default": "`:default`",
5015
+ "description": "One of `:default`, `:large`, or `:small`. Increases height."
5016
+ },
5017
+ {
5018
+ "name": "system_arguments",
5019
+ "type": "Hash",
5020
+ "default": "N/A",
5021
+ "description": "[System arguments](/system-arguments)"
5022
+ }
5023
+ ]
5024
+ },
5025
+ {
5026
+ "component": "RelativeTime",
5027
+ "status": "beta",
5028
+ "a11y_reviewed": false,
5029
+ "short_name": "RelativeTime",
5030
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/beta/relative_time.rb",
5031
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/beta/relative_time/default/",
5032
+ "parameters": [
5033
+ {
5034
+ "name": "datetime",
5035
+ "type": "Time",
5036
+ "default": "N/A",
5037
+ "description": "The time to be formatted."
5038
+ },
5039
+ {
5040
+ "name": "tense",
5041
+ "type": "Symbol",
5042
+ "default": "`:auto`",
5043
+ "description": "Which tense to use. One of `:auto`, `:future`, or `:past`."
5044
+ },
5045
+ {
5046
+ "name": "prefix",
5047
+ "type": "String",
5048
+ "default": "`nil`",
5049
+ "description": "What to prefix the relative time display with."
5050
+ },
5051
+ {
5052
+ "name": "second",
5053
+ "type": "Symbol",
5054
+ "default": "`SECOND_DEFAULT`",
5055
+ "description": "What format seconds should take. One of `nil`, `:numeric`, or `:two_digit`."
4606
5056
  },
4607
5057
  {
4608
5058
  "name": "minute",
@@ -4688,6 +5138,12 @@
4688
5138
  "default": "`false`",
4689
5139
  "description": "Removes the `title` attribute provided on the element by default."
4690
5140
  },
5141
+ {
5142
+ "name": "aria_hidden",
5143
+ "type": "Boolean",
5144
+ "default": "`nil`",
5145
+ "description": "Set if the element is hidden or not."
5146
+ },
4691
5147
  {
4692
5148
  "name": "system_arguments",
4693
5149
  "type": "Hash",
@@ -5129,479 +5585,60 @@
5129
5585
  "name": "aria-label",
5130
5586
  "type": "String",
5131
5587
  "default": "N/A",
5132
- "description": "String that can be read by assistive technology. A label should be short and concise. See the accessibility section for more information."
5133
- },
5134
- {
5135
- "name": "aria-description",
5136
- "type": "String",
5137
- "default": "N/A",
5138
- "description": "String that can be read by assistive technology. A description can be longer as it is intended to provide more context and information. See the accessibility section for more information."
5139
- },
5140
- {
5141
- "name": "tooltip_direction",
5142
- "type": "Symbol",
5143
- "default": "`:s`",
5144
- "description": "One of `:e`, `:n`, `:ne`, `:nw`, `:s`, `:se`, `:sw`, or `:w`."
5145
- },
5146
- {
5147
- "name": "box",
5148
- "type": "Boolean",
5149
- "default": "`false`",
5150
- "description": "Whether the button is in a [BorderBox](/components/beta/borderbox). If `true`, the button will have the `Box-btn-octicon` class."
5151
- },
5152
- {
5153
- "name": "system_arguments",
5154
- "type": "Hash",
5155
- "default": "N/A",
5156
- "description": "[System arguments](/system-arguments)"
5157
- }
5158
- ]
5159
- },
5160
- {
5161
- "component": "Layout",
5162
- "status": "deprecated",
5163
- "a11y_reviewed": false,
5164
- "short_name": "Layout",
5165
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/layout_component.rb",
5166
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/layout/default/",
5167
- "parameters": [
5168
- {
5169
- "name": "responsive",
5170
- "type": "Boolean",
5171
- "default": "`false`",
5172
- "description": "Whether to collapse layout to a single column at smaller widths."
5173
- },
5174
- {
5175
- "name": "side",
5176
- "type": "Symbol",
5177
- "default": "`:right`",
5178
- "description": "Which side to display the sidebar on. One of `:left` or `:right`."
5179
- },
5180
- {
5181
- "name": "sidebar_col",
5182
- "type": "Integer",
5183
- "default": "`3`",
5184
- "description": "Sidebar column width."
5185
- },
5186
- {
5187
- "name": "system_arguments",
5188
- "type": "Hash",
5189
- "default": "N/A",
5190
- "description": "[System arguments](/system-arguments)"
5191
- }
5192
- ]
5193
- },
5194
- {
5195
- "component": "Navigation::Tab",
5196
- "status": "deprecated",
5197
- "a11y_reviewed": false,
5198
- "short_name": "NavigationTab",
5199
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/navigation/tab_component.rb",
5200
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/navigation/tab/default/",
5201
- "parameters": [
5202
- {
5203
- "name": "list",
5204
- "type": "Boolean",
5205
- "default": "`false`",
5206
- "description": "Whether the Tab is an item in a `<ul>` list."
5207
- },
5208
- {
5209
- "name": "selected",
5210
- "type": "Boolean",
5211
- "default": "`false`",
5212
- "description": "Whether the Tab is selected or not."
5213
- },
5214
- {
5215
- "name": "with_panel",
5216
- "type": "Boolean",
5217
- "default": "`false`",
5218
- "description": "Whether the Tab has an associated panel."
5219
- },
5220
- {
5221
- "name": "panel_id",
5222
- "type": "String",
5223
- "default": "`\"\"`",
5224
- "description": "Only applies if `with_panel` is `true`. Unique id of panel."
5225
- },
5226
- {
5227
- "name": "icon_classes",
5228
- "type": "Boolean",
5229
- "default": "`\"\"`",
5230
- "description": "Classes that must always be applied to icons."
5231
- },
5232
- {
5233
- "name": "wrapper_arguments",
5234
- "type": "Hash",
5235
- "default": "`{}`",
5236
- "description": "[System arguments](/system-arguments) to be used in the `<li>` wrapper when the tab is an item in a list."
5237
- },
5238
- {
5239
- "name": "system_arguments",
5240
- "type": "Hash",
5241
- "default": "N/A",
5242
- "description": "[System arguments](/system-arguments)"
5243
- }
5244
- ]
5245
- },
5246
- {
5247
- "component": "OpenProject::BorderBox::CollapsibleHeader",
5248
- "status": "open_project",
5249
- "a11y_reviewed": false,
5250
- "short_name": "OpenProjectBorderBoxCollapsibleHeader",
5251
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_box/collapsible_header.rb",
5252
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_box/collapsible_header/default/",
5253
- "parameters": [
5254
- {
5255
- "name": "id",
5256
- "type": "String",
5257
- "default": "`self.class.generate_id`",
5258
- "description": "The unique ID of the collapsible header."
5259
- },
5260
- {
5261
- "name": "collapsed",
5262
- "type": "Boolean",
5263
- "default": "`false`",
5264
- "description": "Whether the header is collapsed on initial render."
5265
- },
5266
- {
5267
- "name": "system_arguments",
5268
- "type": "Hash",
5269
- "default": "N/A",
5270
- "description": "[System arguments](/system-arguments)"
5271
- }
5272
- ]
5273
- },
5274
- {
5275
- "component": "OpenProject::BorderGrid",
5276
- "status": "open_project",
5277
- "a11y_reviewed": false,
5278
- "short_name": "OpenProjectBorderGrid",
5279
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid.rb",
5280
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/default/",
5281
- "parameters": [
5282
- {
5283
- "name": "spacious",
5284
- "type": "Boolean",
5285
- "default": "`false`",
5286
- "description": "Whether to add margin to the bottom of the component."
5287
- },
5288
- {
5289
- "name": "system_arguments",
5290
- "type": "Hash",
5291
- "default": "N/A",
5292
- "description": "[System arguments](/system-arguments)"
5293
- }
5294
- ]
5295
- },
5296
- {
5297
- "component": "OpenProject::BorderGrid::Cell",
5298
- "status": "open_project",
5299
- "a11y_reviewed": false,
5300
- "short_name": "OpenProjectBorderGridCell",
5301
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid/cell.rb",
5302
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/cell/default/",
5303
- "parameters": [
5304
- {
5305
- "name": "system_arguments",
5306
- "type": "Hash",
5307
- "default": "N/A",
5308
- "description": "[System arguments](/system-arguments)"
5309
- }
5310
- ]
5311
- },
5312
- {
5313
- "component": "OpenProject::CollapsibleSection",
5314
- "status": "open_project",
5315
- "a11y_reviewed": false,
5316
- "short_name": "OpenProjectCollapsibleSection",
5317
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/collapsible_section.rb",
5318
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/collapsible_section/default/",
5319
- "parameters": [
5320
- {
5321
- "name": "id",
5322
- "type": "String",
5323
- "default": "`self.class.generate_id`",
5324
- "description": "The unique ID of the collapsible section."
5325
- },
5326
- {
5327
- "name": "collapsed",
5328
- "type": "Boolean",
5329
- "default": "`false`",
5330
- "description": "Whether the section is collapsed on initial render."
5331
- },
5332
- {
5333
- "name": "system_arguments",
5334
- "type": "Hash",
5335
- "default": "N/A",
5336
- "description": "[System arguments](/system-arguments)"
5337
- }
5338
- ]
5339
- },
5340
- {
5341
- "component": "OpenProject::DangerDialog",
5342
- "status": "open_project",
5343
- "a11y_reviewed": false,
5344
- "short_name": "OpenProjectDangerDialog",
5345
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/danger_dialog.rb",
5346
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/danger_dialog/default/",
5347
- "parameters": [
5348
- {
5349
- "name": "form_arguments",
5350
- "type": "Hash",
5351
- "default": "`{}`",
5352
- "description": "Allows the dialog to submit a form. Pass EITHER the `builder:` option to this hash to reuse an existing Rails form, or `action:` if you prefer the component to render the form tag itself. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which is created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission."
5353
- },
5354
- {
5355
- "name": "id",
5356
- "type": "String",
5357
- "default": "`self.class.generate_id`",
5358
- "description": "The id of the dialog."
5359
- },
5360
- {
5361
- "name": "title",
5362
- "type": "String",
5363
- "default": "N/A",
5364
- "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
5365
- },
5366
- {
5367
- "name": "confirm_button_text",
5368
- "type": "String",
5369
- "default": "`nil`",
5370
- "description": "The text of the confirm button. Will default to `I18n.t(\"button_delete\")`, or `I18n.t(\"button_delete_permanently\")` if `confirmation_check_box` slot has been passed to the component."
5371
- },
5372
- {
5373
- "name": "cancel_button_text",
5374
- "type": "String",
5375
- "default": "`nil`",
5376
- "description": "The text of the cancel button. Will default to `I18n.t(\"button_cancel\")`."
5377
- },
5378
- {
5379
- "name": "system_arguments",
5380
- "type": "Hash",
5381
- "default": "N/A",
5382
- "description": "[System arguments](/system-arguments)"
5383
- }
5384
- ]
5385
- },
5386
- {
5387
- "component": "OpenProject::DangerDialog::ConfirmationCheckBox",
5388
- "status": "open_project",
5389
- "a11y_reviewed": false,
5390
- "short_name": "OpenProjectDangerDialogConfirmationCheckBox",
5391
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/danger_dialog/confirmation_check_box.rb",
5392
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/danger_dialog/confirmation_check_box/default/",
5393
- "parameters": [
5394
- {
5395
- "name": "check_box_id",
5396
- "type": "String",
5397
- "default": "`self.class.generate_id`",
5398
- "description": "The id of the check_box input."
5399
- },
5400
- {
5401
- "name": "check_box_name",
5402
- "type": "String",
5403
- "default": "N/A",
5404
- "description": "The name of the check_box input."
5405
- },
5406
- {
5407
- "name": "system_arguments",
5408
- "type": "Hash",
5409
- "default": "N/A",
5410
- "description": "[System arguments](/system-arguments)"
5411
- }
5412
- ]
5413
- },
5414
- {
5415
- "component": "OpenProject::DangerDialog::FormWrapper",
5416
- "status": "open_project",
5417
- "a11y_reviewed": false,
5418
- "short_name": "OpenProjectDangerDialogFormWrapper",
5419
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/danger_dialog/form_wrapper.rb",
5420
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/danger_dialog/form_wrapper/default/",
5421
- "parameters": []
5422
- },
5423
- {
5424
- "component": "OpenProject::DragHandle",
5425
- "status": "open_project",
5426
- "a11y_reviewed": false,
5427
- "short_name": "OpenProjectDragHandle",
5428
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/drag_handle.rb",
5429
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/drag_handle/default/",
5430
- "parameters": [
5431
- {
5432
- "name": "system_arguments",
5433
- "type": "Hash",
5434
- "default": "N/A",
5435
- "description": "[System arguments](/system-arguments)"
5436
- }
5437
- ]
5438
- },
5439
- {
5440
- "component": "OpenProject::FeedbackDialog",
5441
- "status": "open_project",
5442
- "a11y_reviewed": false,
5443
- "short_name": "OpenProjectFeedbackDialog",
5444
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/feedback_dialog.rb",
5445
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/feedback_dialog/default/",
5446
- "parameters": [
5447
- {
5448
- "name": "title",
5449
- "type": "String",
5450
- "default": "N/A",
5451
- "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
5452
- },
5453
- {
5454
- "name": "system_arguments",
5455
- "type": "Hash",
5456
- "default": "N/A",
5457
- "description": "[System arguments](/system-arguments)"
5458
- }
5459
- ]
5460
- },
5461
- {
5462
- "component": "OpenProject::FeedbackMessage",
5463
- "status": "open_project",
5464
- "a11y_reviewed": false,
5465
- "short_name": "OpenProjectFeedbackMessage",
5466
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/feedback_message.rb",
5467
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/feedback_message/default/",
5468
- "parameters": [
5469
- {
5470
- "name": "icon_arguments",
5471
- "type": "Hash",
5472
- "default": "`{}`",
5473
- "description": "special arguments for the icon"
5474
- },
5475
- {
5476
- "name": "loading",
5477
- "type": "Boolean",
5478
- "default": "`false`",
5479
- "description": "Show a loading spinner instead of an icon"
5480
- },
5481
- {
5482
- "name": "system_arguments",
5483
- "type": "Hash",
5484
- "default": "N/A",
5485
- "description": "[System arguments](/system-arguments)"
5486
- }
5487
- ]
5488
- },
5489
- {
5490
- "component": "OpenProject::FileTreeView",
5491
- "status": "alpha",
5492
- "a11y_reviewed": false,
5493
- "short_name": "OpenProjectFileTreeView",
5494
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/file_tree_view.rb",
5495
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/file_tree_view/default/",
5496
- "parameters": [
5497
- {
5498
- "name": "node_variant",
5499
- "type": "Symbol",
5500
- "default": "`:div`",
5501
- "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
5502
- },
5503
- {
5504
- "name": "system_arguments",
5505
- "type": "Hash",
5506
- "default": "N/A",
5507
- "description": "[System arguments](/system-arguments)."
5508
- }
5509
- ]
5510
- },
5511
- {
5512
- "component": "OpenProject::FileTreeView::DirectoryNode",
5513
- "status": "alpha",
5514
- "a11y_reviewed": false,
5515
- "short_name": "OpenProjectFileTreeViewDirectoryNode",
5516
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/file_tree_view/directory_node.rb",
5517
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/file_tree_view/directory_node/default/",
5518
- "parameters": []
5519
- },
5520
- {
5521
- "component": "OpenProject::FileTreeView::FileNode",
5522
- "status": "alpha",
5523
- "a11y_reviewed": false,
5524
- "short_name": "OpenProjectFileTreeViewFileNode",
5525
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/file_tree_view/file_node.rb",
5526
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/file_tree_view/file_node/default/",
5527
- "parameters": []
5528
- },
5529
- {
5530
- "component": "OpenProject::FilterableTreeView",
5531
- "status": "alpha",
5532
- "a11y_reviewed": false,
5533
- "short_name": "OpenProjectFilterableTreeView",
5534
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/filterable_tree_view.rb",
5535
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/filterable_tree_view/default/",
5536
- "parameters": [
5537
- {
5538
- "name": "tree_view_arguments",
5539
- "type": "Hash",
5540
- "default": "`{}`",
5541
- "description": "Arguments that will be passed to the underlying [OpenProject::TreeView](/components/openprojecttreeview) component."
5542
- },
5543
- {
5544
- "name": "form_arguments",
5545
- "type": "Hash",
5546
- "default": "`{}`",
5547
- "description": "Form arguments that will be passed to the underlying [OpenProject::TreeView](/components/openprojecttreeview) component. These arguments allow the selections made within a `FilterableTreeView` to be submitted to the server as part of a Rails form. Pass the `builder:` and `name:` options to this hash. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which are created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission."
5548
- },
5549
- {
5550
- "name": "filter_input_arguments",
5551
- "type": "Hash",
5552
- "default": "`DEFAULT_FILTER_INPUT_ARGUMENTS.dup`",
5553
- "description": "Arguments that will be passed to the [TextField](/components/alpha/textfield) component."
5554
- },
5555
- {
5556
- "name": "filter_mode_control_arguments",
5557
- "type": "Hash",
5558
- "default": "`DEFAULT_FILTER_MODE_CONTROL_ARGUMENTS.dup`",
5559
- "description": "Arguments that will be passed to the [SegmentedControl](/components/alpha/segmentedcontrol) component."
5560
- },
5561
- {
5562
- "name": "include_sub_items_check_box_arguments",
5563
- "type": "Hash",
5564
- "default": "`DEFAULT_INCLUDE_SUB_ITEMS_CHECK_BOX_ARGUMENTS.dup`",
5565
- "description": "Arguments that will be passed to the [CheckBox](/components/alpha/checkbox) component."
5588
+ "description": "String that can be read by assistive technology. A label should be short and concise. See the accessibility section for more information."
5566
5589
  },
5567
5590
  {
5568
- "name": "no_results_node_arguments",
5569
- "type": "Hash",
5570
- "default": "`DEFAULT_NO_RESULTS_NODE_ARGUMENTS.dup`",
5571
- "description": "Arguments that will be passed to a [OpenProject::TreeView::LeafNode](/components/openprojecttreeviewleafnode) component that appears when no items match the filter criteria."
5572
- }
5573
- ]
5574
- },
5575
- {
5576
- "component": "OpenProject::FilterableTreeView::SubTree",
5577
- "status": "alpha",
5578
- "a11y_reviewed": false,
5579
- "short_name": "OpenProjectFilterableTreeViewSubTree",
5580
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/filterable_tree_view/sub_tree.rb",
5581
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/filterable_tree_view/sub_tree/default/",
5582
- "parameters": [
5591
+ "name": "aria-description",
5592
+ "type": "String",
5593
+ "default": "N/A",
5594
+ "description": "String that can be read by assistive technology. A description can be longer as it is intended to provide more context and information. See the accessibility section for more information."
5595
+ },
5583
5596
  {
5584
- "name": "node_variant",
5597
+ "name": "tooltip_direction",
5585
5598
  "type": "Symbol",
5586
- "default": "N/A",
5587
- "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
5599
+ "default": "`:s`",
5600
+ "description": "One of `:e`, `:n`, `:ne`, `:nw`, `:s`, `:se`, `:sw`, or `:w`."
5601
+ },
5602
+ {
5603
+ "name": "box",
5604
+ "type": "Boolean",
5605
+ "default": "`false`",
5606
+ "description": "Whether the button is in a [BorderBox](/components/beta/borderbox). If `true`, the button will have the `Box-btn-octicon` class."
5588
5607
  },
5589
5608
  {
5590
5609
  "name": "system_arguments",
5591
5610
  "type": "Hash",
5592
5611
  "default": "N/A",
5593
- "description": "The arguments accepted by [OpenProject::TreeView::SubTreeContainer](/components/openprojecttreeviewsubtreecontainer)."
5612
+ "description": "[System arguments](/system-arguments)"
5594
5613
  }
5595
5614
  ]
5596
5615
  },
5597
5616
  {
5598
- "component": "OpenProject::FlexLayout",
5599
- "status": "open_project",
5617
+ "component": "Layout",
5618
+ "status": "deprecated",
5600
5619
  "a11y_reviewed": false,
5601
- "short_name": "OpenProjectFlexLayout",
5602
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/flex_layout.rb",
5603
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/flex_layout/default/",
5620
+ "short_name": "Layout",
5621
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/layout_component.rb",
5622
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/layout/default/",
5604
5623
  "parameters": [
5624
+ {
5625
+ "name": "responsive",
5626
+ "type": "Boolean",
5627
+ "default": "`false`",
5628
+ "description": "Whether to collapse layout to a single column at smaller widths."
5629
+ },
5630
+ {
5631
+ "name": "side",
5632
+ "type": "Symbol",
5633
+ "default": "`:right`",
5634
+ "description": "Which side to display the sidebar on. One of `:left` or `:right`."
5635
+ },
5636
+ {
5637
+ "name": "sidebar_col",
5638
+ "type": "Integer",
5639
+ "default": "`3`",
5640
+ "description": "Sidebar column width."
5641
+ },
5605
5642
  {
5606
5643
  "name": "system_arguments",
5607
5644
  "type": "Hash",
@@ -5611,18 +5648,48 @@
5611
5648
  ]
5612
5649
  },
5613
5650
  {
5614
- "component": "OpenProject::GridLayout",
5615
- "status": "open_project",
5651
+ "component": "Navigation::Tab",
5652
+ "status": "deprecated",
5616
5653
  "a11y_reviewed": false,
5617
- "short_name": "OpenProjectGridLayout",
5618
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/grid_layout.rb",
5619
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/grid_layout/default/",
5654
+ "short_name": "NavigationTab",
5655
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/navigation/tab_component.rb",
5656
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/navigation/tab/default/",
5620
5657
  "parameters": [
5621
5658
  {
5622
- "name": "css_class",
5659
+ "name": "list",
5660
+ "type": "Boolean",
5661
+ "default": "`false`",
5662
+ "description": "Whether the Tab is an item in a `<ul>` list."
5663
+ },
5664
+ {
5665
+ "name": "selected",
5666
+ "type": "Boolean",
5667
+ "default": "`false`",
5668
+ "description": "Whether the Tab is selected or not."
5669
+ },
5670
+ {
5671
+ "name": "with_panel",
5672
+ "type": "Boolean",
5673
+ "default": "`false`",
5674
+ "description": "Whether the Tab has an associated panel."
5675
+ },
5676
+ {
5677
+ "name": "panel_id",
5623
5678
  "type": "String",
5624
- "default": "N/A",
5625
- "description": "The basic css class applied on the grid-container"
5679
+ "default": "`\"\"`",
5680
+ "description": "Only applies if `with_panel` is `true`. Unique id of panel."
5681
+ },
5682
+ {
5683
+ "name": "icon_classes",
5684
+ "type": "Boolean",
5685
+ "default": "`\"\"`",
5686
+ "description": "Classes that must always be applied to icons."
5687
+ },
5688
+ {
5689
+ "name": "wrapper_arguments",
5690
+ "type": "Hash",
5691
+ "default": "`{}`",
5692
+ "description": "[System arguments](/system-arguments) to be used in the `<li>` wrapper when the tab is an item in a list."
5626
5693
  },
5627
5694
  {
5628
5695
  "name": "system_arguments",
@@ -5633,36 +5700,24 @@
5633
5700
  ]
5634
5701
  },
5635
5702
  {
5636
- "component": "OpenProject::GridLayout::Area",
5703
+ "component": "OpenProject::BorderBox::CollapsibleHeader",
5637
5704
  "status": "open_project",
5638
5705
  "a11y_reviewed": false,
5639
- "short_name": "OpenProjectGridLayoutArea",
5640
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/grid_layout/area.rb",
5641
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/grid_layout/area/default/",
5706
+ "short_name": "OpenProjectBorderBoxCollapsibleHeader",
5707
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_box/collapsible_header.rb",
5708
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_box/collapsible_header/default/",
5642
5709
  "parameters": [
5643
5710
  {
5644
- "name": "css_class",
5711
+ "name": "id",
5645
5712
  "type": "String",
5646
- "default": "N/A",
5647
- "description": "The basic css class applied on the grid-container"
5648
- },
5649
- {
5650
- "name": "area_name",
5651
- "type": "Symbol",
5652
- "default": "N/A",
5653
- "description": "The specific area name, used for creating the element class and the \"grid-area\" style"
5654
- },
5655
- {
5656
- "name": "component",
5657
- "type": "ViewComponent::Base",
5658
- "default": "`Primer::BaseComponent`",
5659
- "description": "The instance of the component to be rendered."
5713
+ "default": "`self.class.generate_id`",
5714
+ "description": "The unique ID of the collapsible header."
5660
5715
  },
5661
5716
  {
5662
- "name": "tag",
5663
- "type": "Symbol",
5664
- "default": "`:div`",
5665
- "description": "One of `:div` or `:span`."
5717
+ "name": "collapsed",
5718
+ "type": "Boolean",
5719
+ "default": "`false`",
5720
+ "description": "Whether the header is collapsed on initial render."
5666
5721
  },
5667
5722
  {
5668
5723
  "name": "system_arguments",
@@ -5673,13 +5728,19 @@
5673
5728
  ]
5674
5729
  },
5675
5730
  {
5676
- "component": "OpenProject::Heading",
5731
+ "component": "OpenProject::BorderGrid",
5677
5732
  "status": "open_project",
5678
5733
  "a11y_reviewed": false,
5679
- "short_name": "OpenProjectHeading",
5680
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/heading.rb",
5681
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/heading/default/",
5734
+ "short_name": "OpenProjectBorderGrid",
5735
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid.rb",
5736
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/default/",
5682
5737
  "parameters": [
5738
+ {
5739
+ "name": "spacious",
5740
+ "type": "Boolean",
5741
+ "default": "`false`",
5742
+ "description": "Whether to add margin to the bottom of the component."
5743
+ },
5683
5744
  {
5684
5745
  "name": "system_arguments",
5685
5746
  "type": "Hash",
@@ -5689,12 +5750,12 @@
5689
5750
  ]
5690
5751
  },
5691
5752
  {
5692
- "component": "OpenProject::InputGroup",
5753
+ "component": "OpenProject::BorderGrid::Cell",
5693
5754
  "status": "open_project",
5694
5755
  "a11y_reviewed": false,
5695
- "short_name": "OpenProjectInputGroup",
5696
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/input_group.rb",
5697
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/input_group/default/",
5756
+ "short_name": "OpenProjectBorderGridCell",
5757
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/border_grid/cell.rb",
5758
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/border_grid/cell/default/",
5698
5759
  "parameters": [
5699
5760
  {
5700
5761
  "name": "system_arguments",
@@ -5705,18 +5766,24 @@
5705
5766
  ]
5706
5767
  },
5707
5768
  {
5708
- "component": "OpenProject::PageHeader",
5769
+ "component": "OpenProject::CollapsibleSection",
5709
5770
  "status": "open_project",
5710
5771
  "a11y_reviewed": false,
5711
- "short_name": "OpenProjectPageHeader",
5712
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header.rb",
5713
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/default/",
5772
+ "short_name": "OpenProjectCollapsibleSection",
5773
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/collapsible_section.rb",
5774
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/collapsible_section/default/",
5714
5775
  "parameters": [
5715
5776
  {
5716
- "name": "mobile_menu_label",
5777
+ "name": "id",
5717
5778
  "type": "String",
5718
- "default": "`I18n.t(\"label_more\")`",
5719
- "description": "The tooltip label of the mobile menu"
5779
+ "default": "`self.class.generate_id`",
5780
+ "description": "The unique ID of the collapsible section."
5781
+ },
5782
+ {
5783
+ "name": "collapsed",
5784
+ "type": "Boolean",
5785
+ "default": "`false`",
5786
+ "description": "Whether the section is collapsed on initial render."
5720
5787
  },
5721
5788
  {
5722
5789
  "name": "system_arguments",
@@ -5727,56 +5794,95 @@
5727
5794
  ]
5728
5795
  },
5729
5796
  {
5730
- "component": "OpenProject::PageHeader::Dialog",
5797
+ "component": "OpenProject::DangerDialog",
5731
5798
  "status": "open_project",
5732
5799
  "a11y_reviewed": false,
5733
- "short_name": "OpenProjectPageHeaderDialog",
5734
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header/dialog.rb",
5735
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/dialog/default/",
5800
+ "short_name": "OpenProjectDangerDialog",
5801
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/danger_dialog.rb",
5802
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/danger_dialog/default/",
5736
5803
  "parameters": [
5737
5804
  {
5738
- "name": "dialog_arguments",
5805
+ "name": "form_arguments",
5739
5806
  "type": "Hash",
5740
5807
  "default": "`{}`",
5741
- "description": "The arguments accepted by [Dialog](/components/alpha/dialog)."
5808
+ "description": "Allows the dialog to submit a form. Pass EITHER the `builder:` option to this hash to reuse an existing Rails form, or `action:` if you prefer the component to render the form tag itself. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which is created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission."
5742
5809
  },
5743
5810
  {
5744
- "name": "button_arguments",
5811
+ "name": "id",
5812
+ "type": "String",
5813
+ "default": "`self.class.generate_id`",
5814
+ "description": "The id of the dialog."
5815
+ },
5816
+ {
5817
+ "name": "title",
5818
+ "type": "String",
5819
+ "default": "N/A",
5820
+ "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
5821
+ },
5822
+ {
5823
+ "name": "confirm_button_text",
5824
+ "type": "String",
5825
+ "default": "`nil`",
5826
+ "description": "The text of the confirm button. Will default to `I18n.t(\"button_delete\")`, or `I18n.t(\"button_delete_permanently\")` if `confirmation_check_box` slot has been passed to the component."
5827
+ },
5828
+ {
5829
+ "name": "cancel_button_text",
5830
+ "type": "String",
5831
+ "default": "`nil`",
5832
+ "description": "The text of the cancel button. Will default to `I18n.t(\"button_cancel\")`."
5833
+ },
5834
+ {
5835
+ "name": "system_arguments",
5745
5836
  "type": "Hash",
5746
- "default": "`{}`",
5747
- "description": "The arguments accepted by [Button](/components/beta/button) or [IconButton](/components/beta/iconbutton), depending on the value of the `icon:` argument."
5837
+ "default": "N/A",
5838
+ "description": "[System arguments](/system-arguments)"
5748
5839
  }
5749
5840
  ]
5750
5841
  },
5751
5842
  {
5752
- "component": "OpenProject::PageHeader::Menu",
5843
+ "component": "OpenProject::DangerDialog::ConfirmationCheckBox",
5753
5844
  "status": "open_project",
5754
5845
  "a11y_reviewed": false,
5755
- "short_name": "OpenProjectPageHeaderMenu",
5756
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header/menu.rb",
5757
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/menu/default/",
5846
+ "short_name": "OpenProjectDangerDialogConfirmationCheckBox",
5847
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/danger_dialog/confirmation_check_box.rb",
5848
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/danger_dialog/confirmation_check_box/default/",
5758
5849
  "parameters": [
5759
5850
  {
5760
- "name": "menu_arguments",
5761
- "type": "Hash",
5762
- "default": "`{}`",
5763
- "description": "The arguments accepted by [ActionMenu](/components/alpha/actionmenu)."
5851
+ "name": "check_box_id",
5852
+ "type": "String",
5853
+ "default": "`self.class.generate_id`",
5854
+ "description": "The id of the check_box input."
5764
5855
  },
5765
5856
  {
5766
- "name": "button_arguments",
5857
+ "name": "check_box_name",
5858
+ "type": "String",
5859
+ "default": "N/A",
5860
+ "description": "The name of the check_box input."
5861
+ },
5862
+ {
5863
+ "name": "system_arguments",
5767
5864
  "type": "Hash",
5768
- "default": "`{}`",
5769
- "description": "The arguments accepted by [Button](/components/beta/button) or [IconButton](/components/beta/iconbutton), depending on the value of the `icon:` argument."
5865
+ "default": "N/A",
5866
+ "description": "[System arguments](/system-arguments)"
5770
5867
  }
5771
5868
  ]
5772
5869
  },
5773
5870
  {
5774
- "component": "OpenProject::PageHeader::Title",
5871
+ "component": "OpenProject::DangerDialog::FormWrapper",
5872
+ "status": "open_project",
5873
+ "a11y_reviewed": false,
5874
+ "short_name": "OpenProjectDangerDialogFormWrapper",
5875
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/danger_dialog/form_wrapper.rb",
5876
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/danger_dialog/form_wrapper/default/",
5877
+ "parameters": []
5878
+ },
5879
+ {
5880
+ "component": "OpenProject::DragHandle",
5775
5881
  "status": "open_project",
5776
5882
  "a11y_reviewed": false,
5777
- "short_name": "OpenProjectPageHeaderTitle",
5778
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header/title.rb",
5779
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/title/default/",
5883
+ "short_name": "OpenProjectDragHandle",
5884
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/drag_handle.rb",
5885
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/drag_handle/default/",
5780
5886
  "parameters": [
5781
5887
  {
5782
5888
  "name": "system_arguments",
@@ -5787,13 +5893,19 @@
5787
5893
  ]
5788
5894
  },
5789
5895
  {
5790
- "component": "OpenProject::SidePanel",
5896
+ "component": "OpenProject::FeedbackDialog",
5791
5897
  "status": "open_project",
5792
5898
  "a11y_reviewed": false,
5793
- "short_name": "OpenProjectSidePanel",
5794
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/side_panel.rb",
5795
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/side_panel/default/",
5899
+ "short_name": "OpenProjectFeedbackDialog",
5900
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/feedback_dialog.rb",
5901
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/feedback_dialog/default/",
5796
5902
  "parameters": [
5903
+ {
5904
+ "name": "title",
5905
+ "type": "String",
5906
+ "default": "N/A",
5907
+ "description": "The title of the dialog. Although visually hidden, a label is rendered for assistive technologies."
5908
+ },
5797
5909
  {
5798
5910
  "name": "system_arguments",
5799
5911
  "type": "Hash",
@@ -5803,33 +5915,24 @@
5803
5915
  ]
5804
5916
  },
5805
5917
  {
5806
- "component": "OpenProject::SidePanel::Section",
5918
+ "component": "OpenProject::FeedbackMessage",
5807
5919
  "status": "open_project",
5808
5920
  "a11y_reviewed": false,
5809
- "short_name": "OpenProjectSidePanelSection",
5810
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/side_panel/section.rb",
5811
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/side_panel/section/default/",
5812
- "parameters": []
5813
- },
5814
- {
5815
- "component": "OpenProject::SkeletonBox",
5816
- "status": "alpha",
5817
- "a11y_reviewed": false,
5818
- "short_name": "OpenProjectSkeletonBox",
5819
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/skeleton_box.rb",
5820
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/skeleton_box/default/",
5921
+ "short_name": "OpenProjectFeedbackMessage",
5922
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/feedback_message.rb",
5923
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/feedback_message/default/",
5821
5924
  "parameters": [
5822
5925
  {
5823
- "name": "height",
5824
- "type": "String",
5825
- "default": "`nil`",
5826
- "description": "Any valid CSS height."
5926
+ "name": "icon_arguments",
5927
+ "type": "Hash",
5928
+ "default": "`{}`",
5929
+ "description": "special arguments for the icon"
5827
5930
  },
5828
5931
  {
5829
- "name": "width",
5830
- "type": "String",
5831
- "default": "`nil`",
5832
- "description": "Any valid CSS width."
5932
+ "name": "loading",
5933
+ "type": "Boolean",
5934
+ "default": "`false`",
5935
+ "description": "Show a loading spinner instead of an icon"
5833
5936
  },
5834
5937
  {
5835
5938
  "name": "system_arguments",
@@ -5840,63 +5943,81 @@
5840
5943
  ]
5841
5944
  },
5842
5945
  {
5843
- "component": "OpenProject::SubHeader",
5844
- "status": "open_project",
5946
+ "component": "OpenProject::FilterableTreeView",
5947
+ "status": "alpha",
5845
5948
  "a11y_reviewed": false,
5846
- "short_name": "OpenProjectSubHeader",
5847
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header.rb",
5848
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/default/",
5949
+ "short_name": "OpenProjectFilterableTreeView",
5950
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/filterable_tree_view.rb",
5951
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/filterable_tree_view/default/",
5849
5952
  "parameters": [
5850
5953
  {
5851
- "name": "system_arguments",
5954
+ "name": "tree_view_arguments",
5852
5955
  "type": "Hash",
5853
- "default": "N/A",
5854
- "description": "[System arguments](/system-arguments)"
5956
+ "default": "`{}`",
5957
+ "description": "Arguments that will be passed to the underlying [TreeView](/components/alpha/treeview) component."
5958
+ },
5959
+ {
5960
+ "name": "form_arguments",
5961
+ "type": "Hash",
5962
+ "default": "`{}`",
5963
+ "description": "Form arguments that will be passed to the underlying [TreeView](/components/alpha/treeview) component. These arguments allow the selections made within a `FilterableTreeView` to be submitted to the server as part of a Rails form. Pass the `builder:` and `name:` options to this hash. `builder:` should be an instance of `ActionView::Helpers::FormBuilder`, which are created by the standard Rails `#form_with` and `#form_for` helpers. The `name:` option is the desired name of the field that will be included in the params sent to the server on form submission."
5964
+ },
5965
+ {
5966
+ "name": "filter_input_arguments",
5967
+ "type": "Hash",
5968
+ "default": "`DEFAULT_FILTER_INPUT_ARGUMENTS.dup`",
5969
+ "description": "Arguments that will be passed to the [TextField](/components/alpha/textfield) component."
5970
+ },
5971
+ {
5972
+ "name": "filter_mode_control_arguments",
5973
+ "type": "Hash",
5974
+ "default": "`DEFAULT_FILTER_MODE_CONTROL_ARGUMENTS.dup`",
5975
+ "description": "Arguments that will be passed to the [SegmentedControl](/components/alpha/segmentedcontrol) component."
5976
+ },
5977
+ {
5978
+ "name": "include_sub_items_check_box_arguments",
5979
+ "type": "Hash",
5980
+ "default": "`DEFAULT_INCLUDE_SUB_ITEMS_CHECK_BOX_ARGUMENTS.dup`",
5981
+ "description": "Arguments that will be passed to the [CheckBox](/components/alpha/checkbox) component."
5982
+ },
5983
+ {
5984
+ "name": "no_results_node_arguments",
5985
+ "type": "Hash",
5986
+ "default": "`DEFAULT_NO_RESULTS_NODE_ARGUMENTS.dup`",
5987
+ "description": "Arguments that will be passed to a [TreeView::LeafNode](/components/alpha/treeviewleafnode) component that appears when no items match the filter criteria."
5855
5988
  }
5856
5989
  ]
5857
5990
  },
5858
5991
  {
5859
- "component": "OpenProject::SubHeader::Button",
5860
- "status": "open_project",
5992
+ "component": "OpenProject::FilterableTreeView::SubTree",
5993
+ "status": "alpha",
5861
5994
  "a11y_reviewed": false,
5862
- "short_name": "OpenProjectSubHeaderButton",
5863
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/button.rb",
5864
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/button/default/",
5995
+ "short_name": "OpenProjectFilterableTreeViewSubTree",
5996
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/filterable_tree_view/sub_tree.rb",
5997
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/filterable_tree_view/sub_tree/default/",
5865
5998
  "parameters": [
5866
5999
  {
5867
- "name": "icon",
6000
+ "name": "node_variant",
5868
6001
  "type": "Symbol",
5869
6002
  "default": "N/A",
5870
- "description": "The name of an [Octicon](https://primer.style/octicons/) icon to use as leading visual"
6003
+ "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
5871
6004
  },
5872
6005
  {
5873
6006
  "name": "system_arguments",
5874
6007
  "type": "Hash",
5875
6008
  "default": "N/A",
5876
- "description": "[System arguments](/system-arguments)"
6009
+ "description": "The arguments accepted by [TreeView::SubTreeContainer](/components/alpha/treeviewsubtreecontainer)."
5877
6010
  }
5878
6011
  ]
5879
6012
  },
5880
6013
  {
5881
- "component": "OpenProject::SubHeader::ButtonGroup",
6014
+ "component": "OpenProject::FlexLayout",
5882
6015
  "status": "open_project",
5883
6016
  "a11y_reviewed": false,
5884
- "short_name": "OpenProjectSubHeaderButtonGroup",
5885
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/button_group.rb",
5886
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/button_group/default/",
6017
+ "short_name": "OpenProjectFlexLayout",
6018
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/flex_layout.rb",
6019
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/flex_layout/default/",
5887
6020
  "parameters": [
5888
- {
5889
- "name": "scheme",
5890
- "type": "Symbol",
5891
- "default": "`:default`",
5892
- "description": "DEPRECATED. One of `:danger`, `:default`, `:invisible`, `:link`, `:primary`, or `:secondary`."
5893
- },
5894
- {
5895
- "name": "size",
5896
- "type": "Symbol",
5897
- "default": "`:medium`",
5898
- "description": "One of `:large`, `:medium`, or `:small`."
5899
- },
5900
6021
  {
5901
6022
  "name": "system_arguments",
5902
6023
  "type": "Hash",
@@ -5906,36 +6027,18 @@
5906
6027
  ]
5907
6028
  },
5908
6029
  {
5909
- "component": "OpenProject::SubHeader::Menu",
6030
+ "component": "OpenProject::GridLayout",
5910
6031
  "status": "open_project",
5911
6032
  "a11y_reviewed": false,
5912
- "short_name": "OpenProjectSubHeaderMenu",
5913
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/menu.rb",
5914
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/menu/default/",
6033
+ "short_name": "OpenProjectGridLayout",
6034
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/grid_layout.rb",
6035
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/grid_layout/default/",
5915
6036
  "parameters": [
5916
6037
  {
5917
- "name": "icon_only",
5918
- "type": "Boolean",
5919
- "default": "`false`",
5920
- "description": "Whether the trigger button is an IconButton"
5921
- },
5922
- {
5923
- "name": "leading_icon",
5924
- "type": "Symbol",
5925
- "default": "N/A",
5926
- "description": "Name of Octicon icon to use as either leading icon or IconButton."
5927
- },
5928
- {
5929
- "name": "label",
6038
+ "name": "css_class",
5930
6039
  "type": "String",
5931
6040
  "default": "N/A",
5932
- "description": "The button label"
5933
- },
5934
- {
5935
- "name": "button_arguments",
5936
- "type": "Hash",
5937
- "default": "`{}`",
5938
- "description": "Additional arguments for the button"
6041
+ "description": "The basic css class applied on the grid-container"
5939
6042
  },
5940
6043
  {
5941
6044
  "name": "system_arguments",
@@ -5946,30 +6049,36 @@
5946
6049
  ]
5947
6050
  },
5948
6051
  {
5949
- "component": "OpenProject::SubHeader::SegmentedControl",
6052
+ "component": "OpenProject::GridLayout::Area",
5950
6053
  "status": "open_project",
5951
- "a11y_reviewed": true,
5952
- "short_name": "OpenProjectSubHeaderSegmentedControl",
5953
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/segmented_control.rb",
5954
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/segmented_control/default/",
6054
+ "a11y_reviewed": false,
6055
+ "short_name": "OpenProjectGridLayoutArea",
6056
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/grid_layout/area.rb",
6057
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/grid_layout/area/default/",
5955
6058
  "parameters": [
5956
6059
  {
5957
- "name": "hide_labels",
5958
- "type": "Boolean",
5959
- "default": "`false`",
5960
- "description": "Whether to hide the labels and only show the icons"
6060
+ "name": "css_class",
6061
+ "type": "String",
6062
+ "default": "N/A",
6063
+ "description": "The basic css class applied on the grid-container"
5961
6064
  },
5962
6065
  {
5963
- "name": "full_width",
5964
- "type": "Boolean",
5965
- "default": "`false`",
5966
- "description": "If the component should be full width"
6066
+ "name": "area_name",
6067
+ "type": "Symbol",
6068
+ "default": "N/A",
6069
+ "description": "The specific area name, used for creating the element class and the \"grid-area\" style"
5967
6070
  },
5968
6071
  {
5969
- "name": "size",
6072
+ "name": "component",
6073
+ "type": "ViewComponent::Base",
6074
+ "default": "`Primer::BaseComponent`",
6075
+ "description": "The instance of the component to be rendered."
6076
+ },
6077
+ {
6078
+ "name": "tag",
5970
6079
  "type": "Symbol",
5971
- "default": "`:medium`",
5972
- "description": "One of `:large`, `:medium`, or `:small`."
6080
+ "default": "`:div`",
6081
+ "description": "One of `:div` or `:span`."
5973
6082
  },
5974
6083
  {
5975
6084
  "name": "system_arguments",
@@ -5980,56 +6089,50 @@
5980
6089
  ]
5981
6090
  },
5982
6091
  {
5983
- "component": "OpenProject::TreeView",
5984
- "status": "alpha",
6092
+ "component": "OpenProject::Heading",
6093
+ "status": "open_project",
5985
6094
  "a11y_reviewed": false,
5986
- "short_name": "OpenProjectTreeView",
5987
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view.rb",
5988
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/default/",
6095
+ "short_name": "OpenProjectHeading",
6096
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/heading.rb",
6097
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/heading/default/",
5989
6098
  "parameters": [
5990
- {
5991
- "name": "node_variant",
5992
- "type": "Symbol",
5993
- "default": "`:div`",
5994
- "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
5995
- },
5996
6099
  {
5997
6100
  "name": "system_arguments",
5998
6101
  "type": "Hash",
5999
6102
  "default": "N/A",
6000
- "description": "[System arguments](/system-arguments)."
6103
+ "description": "[System arguments](/system-arguments)"
6001
6104
  }
6002
6105
  ]
6003
6106
  },
6004
6107
  {
6005
- "component": "OpenProject::TreeView::Icon",
6006
- "status": "alpha",
6108
+ "component": "OpenProject::InputGroup",
6109
+ "status": "open_project",
6007
6110
  "a11y_reviewed": false,
6008
- "short_name": "OpenProjectTreeViewIcon",
6009
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/icon.rb",
6010
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/icon/default/",
6111
+ "short_name": "OpenProjectInputGroup",
6112
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/input_group.rb",
6113
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/input_group/default/",
6011
6114
  "parameters": [
6012
6115
  {
6013
6116
  "name": "system_arguments",
6014
6117
  "type": "Hash",
6015
6118
  "default": "N/A",
6016
- "description": "The arguments accepted by [Octicon](/components/beta/octicon)."
6119
+ "description": "[System arguments](/system-arguments)"
6017
6120
  }
6018
6121
  ]
6019
6122
  },
6020
6123
  {
6021
- "component": "OpenProject::TreeView::IconPair",
6022
- "status": "alpha",
6124
+ "component": "OpenProject::PageHeader",
6125
+ "status": "open_project",
6023
6126
  "a11y_reviewed": false,
6024
- "short_name": "OpenProjectTreeViewIconPair",
6025
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/icon_pair.rb",
6026
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/icon_pair/default/",
6127
+ "short_name": "OpenProjectPageHeader",
6128
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header.rb",
6129
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/default/",
6027
6130
  "parameters": [
6028
6131
  {
6029
- "name": "expanded",
6030
- "type": "Boolean",
6031
- "default": "`false`",
6032
- "description": "If true, the expanded icon is shown and the collapsed icon is hidden, etc."
6132
+ "name": "mobile_menu_label",
6133
+ "type": "String",
6134
+ "default": "`I18n.t(\"label_more\")`",
6135
+ "description": "The tooltip label of the mobile menu"
6033
6136
  },
6034
6137
  {
6035
6138
  "name": "system_arguments",
@@ -6040,226 +6143,147 @@
6040
6143
  ]
6041
6144
  },
6042
6145
  {
6043
- "component": "OpenProject::TreeView::LeadingAction",
6044
- "status": "alpha",
6045
- "a11y_reviewed": false,
6046
- "short_name": "OpenProjectTreeViewLeadingAction",
6047
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/leading_action.rb",
6048
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/leading_action/default/",
6049
- "parameters": [
6050
- {
6051
- "name": "action",
6052
- "type": "ViewComponent::Base",
6053
- "default": "N/A",
6054
- "description": "A component or other renderable to use as the action button etc."
6055
- }
6056
- ]
6057
- },
6058
- {
6059
- "component": "OpenProject::TreeView::LeafNode",
6060
- "status": "alpha",
6146
+ "component": "OpenProject::PageHeader::Dialog",
6147
+ "status": "open_project",
6061
6148
  "a11y_reviewed": false,
6062
- "short_name": "OpenProjectTreeViewLeafNode",
6063
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/leaf_node.rb",
6064
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/leaf_node/default/",
6149
+ "short_name": "OpenProjectPageHeaderDialog",
6150
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header/dialog.rb",
6151
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/dialog/default/",
6065
6152
  "parameters": [
6066
6153
  {
6067
- "name": "label",
6068
- "type": "String",
6069
- "default": "N/A",
6070
- "description": "The node's label, i.e. it's textual content."
6154
+ "name": "dialog_arguments",
6155
+ "type": "Hash",
6156
+ "default": "`{}`",
6157
+ "description": "The arguments accepted by [Dialog](/components/alpha/dialog)."
6071
6158
  },
6072
6159
  {
6073
- "name": "system_arguments",
6160
+ "name": "button_arguments",
6074
6161
  "type": "Hash",
6075
- "default": "N/A",
6076
- "description": "The arguments accepted by [OpenProject::TreeView::Node](/components/openprojecttreeviewnode)."
6162
+ "default": "`{}`",
6163
+ "description": "The arguments accepted by [Button](/components/beta/button) or [IconButton](/components/beta/iconbutton), depending on the value of the `icon:` argument."
6077
6164
  }
6078
6165
  ]
6079
6166
  },
6080
6167
  {
6081
- "component": "OpenProject::TreeView::LoadingFailureMessage",
6082
- "status": "alpha",
6168
+ "component": "OpenProject::PageHeader::Menu",
6169
+ "status": "open_project",
6083
6170
  "a11y_reviewed": false,
6084
- "short_name": "OpenProjectTreeViewLoadingFailureMessage",
6085
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/loading_failure_message.rb",
6086
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/loading_failure_message/default/",
6171
+ "short_name": "OpenProjectPageHeaderMenu",
6172
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header/menu.rb",
6173
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/menu/default/",
6087
6174
  "parameters": [
6088
6175
  {
6089
- "name": "text",
6090
- "type": "String",
6091
- "default": "`Something went wrong`",
6092
- "description": "The failure message to display."
6093
- },
6094
- {
6095
- "name": "retry_button_label",
6096
- "type": "String",
6097
- "default": "`Retry`",
6098
- "description": "The text shown on the retry button."
6176
+ "name": "menu_arguments",
6177
+ "type": "Hash",
6178
+ "default": "`{}`",
6179
+ "description": "The arguments accepted by [ActionMenu](/components/alpha/actionmenu)."
6099
6180
  },
6100
6181
  {
6101
- "name": "system_arguments",
6182
+ "name": "button_arguments",
6102
6183
  "type": "Hash",
6103
- "default": "N/A",
6104
- "description": "[System arguments](/system-arguments)"
6184
+ "default": "`{}`",
6185
+ "description": "The arguments accepted by [Button](/components/beta/button) or [IconButton](/components/beta/iconbutton), depending on the value of the `icon:` argument."
6105
6186
  }
6106
6187
  ]
6107
6188
  },
6108
6189
  {
6109
- "component": "OpenProject::TreeView::Node",
6110
- "status": "alpha",
6190
+ "component": "OpenProject::PageHeader::Title",
6191
+ "status": "open_project",
6111
6192
  "a11y_reviewed": false,
6112
- "short_name": "OpenProjectTreeViewNode",
6113
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/node.rb",
6114
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/node/default/",
6193
+ "short_name": "OpenProjectPageHeaderTitle",
6194
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/page_header/title.rb",
6195
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/page_header/title/default/",
6115
6196
  "parameters": [
6116
6197
  {
6117
- "name": "path",
6118
- "type": "Array<String>",
6119
- "default": "N/A",
6120
- "description": "The node's \"path,\" i.e. this node's label and the labels of all its ancestors. This node should be reachable by traversing the tree following this path."
6121
- },
6122
- {
6123
- "name": "node_variant",
6124
- "type": "Symbol",
6125
- "default": "N/A",
6126
- "description": "The node variant to use for the node's content, i.e. the `:button` or `:div`. One of `:anchor`, `:button`, or `:div`."
6127
- },
6128
- {
6129
- "name": "href",
6130
- "type": "String",
6131
- "default": "`nil`",
6132
- "description": "The URL to use as the `href` attribute for this node. If set to a truthy value, the `tag:` parameter is ignored and assumed to be `:a`."
6133
- },
6134
- {
6135
- "name": "current",
6136
- "type": "Boolean",
6137
- "default": "`false`",
6138
- "description": "Whether or not this node is the current node. The current node is styled differently than regular nodes and is the first element that receives focus when tabbing to the `TreeView` component."
6139
- },
6140
- {
6141
- "name": "select_variant",
6142
- "type": "Symbol",
6143
- "default": "`:none`",
6144
- "description": "Controls the type of checkbox that appears. One of `:multiple` or `:none`."
6145
- },
6146
- {
6147
- "name": "checked",
6148
- "type": "Boolean | String",
6149
- "default": "`false`",
6150
- "description": "The checked state of the node's checkbox. One of `false`, `mixed`, or `true`."
6151
- },
6152
- {
6153
- "name": "disabled",
6154
- "type": "Boolean",
6155
- "default": "`false`",
6156
- "description": "Whether or not the node can be activated. Passing `false` here will cause the node to appear visually disabled but it is still keyboard-focusable."
6157
- },
6158
- {
6159
- "name": "value",
6160
- "type": "String",
6161
- "default": "`nil`",
6162
- "description": "If this node is checked, this value will be sent to the server on form submission."
6163
- },
6164
- {
6165
- "name": "content_arguments",
6198
+ "name": "system_arguments",
6166
6199
  "type": "Hash",
6167
6200
  "default": "N/A",
6168
- "description": "Arguments attached to the node's content, i.e the `<button>` or `<a>` element. [System arguments](/system-arguments)"
6201
+ "description": "[System arguments](/system-arguments)"
6169
6202
  }
6170
6203
  ]
6171
6204
  },
6172
6205
  {
6173
- "component": "OpenProject::TreeView::SkeletonLoader",
6174
- "status": "alpha",
6206
+ "component": "OpenProject::SidePanel",
6207
+ "status": "open_project",
6175
6208
  "a11y_reviewed": false,
6176
- "short_name": "OpenProjectTreeViewSkeletonLoader",
6177
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/skeleton_loader.rb",
6178
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/skeleton_loader/default/",
6209
+ "short_name": "OpenProjectSidePanel",
6210
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/side_panel.rb",
6211
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/side_panel/default/",
6179
6212
  "parameters": [
6180
- {
6181
- "name": "src",
6182
- "type": "String",
6183
- "default": "N/A",
6184
- "description": "The URL to fetch nodes from."
6185
- },
6186
- {
6187
- "name": "count",
6188
- "type": "Integer",
6189
- "default": "`3`",
6190
- "description": "The number of skeleton nodes to render."
6191
- },
6192
6213
  {
6193
6214
  "name": "system_arguments",
6194
6215
  "type": "Hash",
6195
6216
  "default": "N/A",
6196
- "description": "The arguments accepted by [OpenProject::TreeView::SubTreeContainer](/components/openprojecttreeviewsubtreecontainer)."
6217
+ "description": "[System arguments](/system-arguments)"
6197
6218
  }
6198
6219
  ]
6199
6220
  },
6200
6221
  {
6201
- "component": "OpenProject::TreeView::SpinnerLoader",
6202
- "status": "alpha",
6222
+ "component": "OpenProject::SidePanel::Section",
6223
+ "status": "open_project",
6224
+ "a11y_reviewed": false,
6225
+ "short_name": "OpenProjectSidePanelSection",
6226
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/side_panel/section.rb",
6227
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/side_panel/section/default/",
6228
+ "parameters": []
6229
+ },
6230
+ {
6231
+ "component": "OpenProject::SubHeader",
6232
+ "status": "open_project",
6203
6233
  "a11y_reviewed": false,
6204
- "short_name": "OpenProjectTreeViewSpinnerLoader",
6205
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/spinner_loader.rb",
6206
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/spinner_loader/default/",
6234
+ "short_name": "OpenProjectSubHeader",
6235
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header.rb",
6236
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/default/",
6207
6237
  "parameters": [
6208
- {
6209
- "name": "src",
6210
- "type": "String",
6211
- "default": "N/A",
6212
- "description": "The URL to fetch nodes from."
6213
- },
6214
6238
  {
6215
6239
  "name": "system_arguments",
6216
6240
  "type": "Hash",
6217
6241
  "default": "N/A",
6218
- "description": "The arguments accepted by [OpenProject::TreeView::SubTreeContainer](/components/openprojecttreeviewsubtreecontainer)."
6242
+ "description": "[System arguments](/system-arguments)"
6219
6243
  }
6220
6244
  ]
6221
6245
  },
6222
6246
  {
6223
- "component": "OpenProject::TreeView::SubTree",
6224
- "status": "alpha",
6247
+ "component": "OpenProject::SubHeader::Button",
6248
+ "status": "open_project",
6225
6249
  "a11y_reviewed": false,
6226
- "short_name": "OpenProjectTreeViewSubTree",
6227
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/sub_tree.rb",
6228
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/sub_tree/default/",
6250
+ "short_name": "OpenProjectSubHeaderButton",
6251
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/button.rb",
6252
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/button/default/",
6229
6253
  "parameters": [
6230
6254
  {
6231
- "name": "node_variant",
6255
+ "name": "icon",
6232
6256
  "type": "Symbol",
6233
6257
  "default": "N/A",
6234
- "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
6258
+ "description": "The name of an [Octicon](https://primer.style/octicons/) icon to use as leading visual"
6235
6259
  },
6236
6260
  {
6237
6261
  "name": "system_arguments",
6238
6262
  "type": "Hash",
6239
6263
  "default": "N/A",
6240
- "description": "The arguments accepted by [OpenProject::TreeView::SubTreeContainer](/components/openprojecttreeviewsubtreecontainer)."
6264
+ "description": "[System arguments](/system-arguments)"
6241
6265
  }
6242
6266
  ]
6243
6267
  },
6244
6268
  {
6245
- "component": "OpenProject::TreeView::SubTreeContainer",
6246
- "status": "alpha",
6269
+ "component": "OpenProject::SubHeader::ButtonGroup",
6270
+ "status": "open_project",
6247
6271
  "a11y_reviewed": false,
6248
- "short_name": "OpenProjectTreeViewSubTreeContainer",
6249
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/sub_tree_container.rb",
6250
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/sub_tree_container/default/",
6272
+ "short_name": "OpenProjectSubHeaderButtonGroup",
6273
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/button_group.rb",
6274
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/button_group/default/",
6251
6275
  "parameters": [
6252
6276
  {
6253
- "name": "path",
6254
- "type": "Array<String>",
6255
- "default": "N/A",
6256
- "description": "The path to this node."
6277
+ "name": "scheme",
6278
+ "type": "Symbol",
6279
+ "default": "`:default`",
6280
+ "description": "DEPRECATED. One of `:danger`, `:default`, `:invisible`, `:link`, `:primary`, or `:secondary`."
6257
6281
  },
6258
6282
  {
6259
- "name": "expanded",
6260
- "type": "Boolean",
6261
- "default": "`false`",
6262
- "description": "Whether or not this sub-tree node renders expanded."
6283
+ "name": "size",
6284
+ "type": "Symbol",
6285
+ "default": "`:medium`",
6286
+ "description": "One of `:large`, `:medium`, or `:small`."
6263
6287
  },
6264
6288
  {
6265
6289
  "name": "system_arguments",
@@ -6270,82 +6294,76 @@
6270
6294
  ]
6271
6295
  },
6272
6296
  {
6273
- "component": "OpenProject::TreeView::SubTreeNode",
6274
- "status": "alpha",
6297
+ "component": "OpenProject::SubHeader::Menu",
6298
+ "status": "open_project",
6275
6299
  "a11y_reviewed": false,
6276
- "short_name": "OpenProjectTreeViewSubTreeNode",
6277
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/sub_tree_node.rb",
6278
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/sub_tree_node/default/",
6300
+ "short_name": "OpenProjectSubHeaderMenu",
6301
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/menu.rb",
6302
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/menu/default/",
6279
6303
  "parameters": [
6280
6304
  {
6281
- "name": "label",
6282
- "type": "String",
6283
- "default": "N/A",
6284
- "description": "The node's label, i.e. it's textual content."
6285
- },
6286
- {
6287
- "name": "path",
6288
- "type": "Array<String>",
6289
- "default": "N/A",
6290
- "description": "The node's \"path,\" i.e. this node's label and the labels of all its ancestors. This node should be reachable by traversing the tree following this path."
6305
+ "name": "icon_only",
6306
+ "type": "Boolean",
6307
+ "default": "`false`",
6308
+ "description": "Whether the trigger button is an IconButton"
6291
6309
  },
6292
6310
  {
6293
- "name": "node_variant",
6311
+ "name": "leading_icon",
6294
6312
  "type": "Symbol",
6295
6313
  "default": "N/A",
6296
- "description": "The variant to use for this node. One of `:anchor`, `:button`, or `:div`."
6297
- },
6298
- {
6299
- "name": "sub_tree_component_klass",
6300
- "type": "Class",
6301
- "default": "`SubTree`",
6302
- "description": "The class to use for the sub-tree instead of the default [OpenProject::TreeView::SubTree](/components/openprojecttreeviewsubtree)"
6314
+ "description": "Name of Octicon icon to use as either leading icon or IconButton."
6303
6315
  },
6304
6316
  {
6305
- "name": "expanded",
6306
- "type": "Boolean",
6307
- "default": "`false`",
6308
- "description": "Whether or not this sub-tree should be rendered expanded."
6317
+ "name": "label",
6318
+ "type": "String",
6319
+ "default": "N/A",
6320
+ "description": "The button label"
6309
6321
  },
6310
6322
  {
6311
- "name": "select_strategy",
6312
- "type": "Symbol",
6313
- "default": "`:mixed_descendants`",
6314
- "description": "What should happen when this sub-tree node is checked. One of `:descendants`, `:mixed_descendants`, or `:self`."
6323
+ "name": "button_arguments",
6324
+ "type": "Hash",
6325
+ "default": "`{}`",
6326
+ "description": "Additional arguments for the button"
6315
6327
  },
6316
6328
  {
6317
6329
  "name": "system_arguments",
6318
6330
  "type": "Hash",
6319
6331
  "default": "N/A",
6320
- "description": "The arguments accepted by [OpenProject::TreeView::Node](/components/openprojecttreeviewnode)."
6332
+ "description": "[System arguments](/system-arguments)"
6321
6333
  }
6322
6334
  ]
6323
6335
  },
6324
6336
  {
6325
- "component": "OpenProject::TreeView::Visual",
6326
- "status": "alpha",
6327
- "a11y_reviewed": false,
6328
- "short_name": "OpenProjectTreeViewVisual",
6329
- "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/tree_view/visual.rb",
6330
- "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/tree_view/visual/default/",
6337
+ "component": "OpenProject::SubHeader::SegmentedControl",
6338
+ "status": "open_project",
6339
+ "a11y_reviewed": true,
6340
+ "short_name": "OpenProjectSubHeaderSegmentedControl",
6341
+ "source": "https://github.com/primer/view_components/tree/main/app/components/primer/open_project/sub_header/segmented_control.rb",
6342
+ "lookbook": "https://primer.style/view-components/lookbook/inspect/primer/open_project/sub_header/segmented_control/default/",
6331
6343
  "parameters": [
6332
6344
  {
6333
- "name": "id",
6334
- "type": "String",
6335
- "default": "N/A",
6336
- "description": "This visual's HTML ID."
6345
+ "name": "hide_labels",
6346
+ "type": "Boolean",
6347
+ "default": "`false`",
6348
+ "description": "Whether to hide the labels and only show the icons"
6337
6349
  },
6338
6350
  {
6339
- "name": "visual",
6340
- "type": "ViewComponent::Base",
6341
- "default": "N/A",
6342
- "description": "A renderable component like an instance of [Octicon](/components/beta/octicon) to render as the visual."
6351
+ "name": "full_width",
6352
+ "type": "Boolean",
6353
+ "default": "`false`",
6354
+ "description": "If the component should be full width"
6343
6355
  },
6344
6356
  {
6345
- "name": "label",
6346
- "type": "String",
6347
- "default": "`nil`",
6348
- "description": "Text describing this visual that will be visible only to screen readers."
6357
+ "name": "size",
6358
+ "type": "Symbol",
6359
+ "default": "`:medium`",
6360
+ "description": "One of `:large`, `:medium`, or `:small`."
6361
+ },
6362
+ {
6363
+ "name": "system_arguments",
6364
+ "type": "Hash",
6365
+ "default": "N/A",
6366
+ "description": "[System arguments](/system-arguments)"
6349
6367
  }
6350
6368
  ]
6351
6369
  },