openproject-primer_view_components 0.18.1 → 0.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (100) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -0
  3. data/app/assets/javascripts/app/components/primer/alpha/action_bar_element.d.ts +3 -2
  4. data/app/assets/javascripts/app/components/primer/alpha/action_menu/action_menu_element.d.ts +20 -0
  5. data/app/assets/javascripts/app/components/primer/beta/nav_list.d.ts +0 -11
  6. data/app/assets/javascripts/app/components/primer/beta/nav_list_group_element.d.ts +19 -0
  7. data/app/assets/javascripts/app/components/primer/primer.d.ts +2 -0
  8. data/app/assets/javascripts/app/components/primer/scrollable_region.d.ts +13 -0
  9. data/app/assets/javascripts/primer_view_components.js +1 -1
  10. data/app/assets/javascripts/primer_view_components.js.map +1 -1
  11. data/app/assets/styles/primer_view_components.css +1 -1
  12. data/app/assets/styles/primer_view_components.css.map +1 -1
  13. data/app/components/primer/alpha/action_bar.css +1 -1
  14. data/app/components/primer/alpha/action_bar.css.map +1 -1
  15. data/app/components/primer/alpha/action_bar.pcss +8 -6
  16. data/app/components/primer/alpha/action_bar_element.d.ts +3 -2
  17. data/app/components/primer/alpha/action_bar_element.js +80 -97
  18. data/app/components/primer/alpha/action_bar_element.ts +84 -89
  19. data/app/components/primer/alpha/action_list/item.rb +13 -1
  20. data/app/components/primer/alpha/action_list.css +1 -1
  21. data/app/components/primer/alpha/action_list.css.json +1 -0
  22. data/app/components/primer/alpha/action_list.css.map +1 -1
  23. data/app/components/primer/alpha/action_list.pcss +3 -1
  24. data/app/components/primer/alpha/action_list.rb +5 -4
  25. data/app/components/primer/alpha/action_menu/action_menu_element.d.ts +20 -0
  26. data/app/components/primer/alpha/action_menu/action_menu_element.js +92 -15
  27. data/app/components/primer/alpha/action_menu/action_menu_element.ts +115 -13
  28. data/app/components/primer/alpha/action_menu/group.rb +23 -0
  29. data/app/components/primer/alpha/action_menu/heading.rb +17 -0
  30. data/app/components/primer/alpha/action_menu/list.html.erb +1 -0
  31. data/app/components/primer/alpha/action_menu/list.rb +62 -51
  32. data/app/components/primer/alpha/action_menu/list_wrapper.rb +40 -0
  33. data/app/components/primer/alpha/action_menu.rb +38 -1
  34. data/app/components/primer/alpha/banner.html.erb +1 -1
  35. data/app/components/primer/alpha/banner.rb +5 -1
  36. data/app/components/primer/alpha/dialog.html.erb +3 -1
  37. data/app/components/primer/alpha/dialog.rb +5 -1
  38. data/app/components/primer/alpha/layout.css +1 -1
  39. data/app/components/primer/alpha/layout.css.map +1 -1
  40. data/app/components/primer/alpha/modal_dialog.ts +1 -1
  41. data/app/components/primer/alpha/overlay.css +1 -1
  42. data/app/components/primer/alpha/overlay.css.json +4 -2
  43. data/app/components/primer/alpha/overlay.css.map +1 -1
  44. data/app/components/primer/alpha/overlay.pcss +12 -2
  45. data/app/components/primer/alpha/text_field.css +1 -1
  46. data/app/components/primer/alpha/text_field.css.map +1 -1
  47. data/app/components/primer/alpha/text_field.pcss +4 -3
  48. data/app/components/primer/alpha/tool_tip.js +22 -5
  49. data/app/components/primer/alpha/tool_tip.ts +24 -5
  50. data/app/components/primer/alpha/underline_nav.css +1 -1
  51. data/app/components/primer/alpha/underline_nav.css.map +1 -1
  52. data/app/components/primer/base_component.rb +20 -18
  53. data/app/components/primer/beta/auto_complete/auto_complete.html.erb +1 -7
  54. data/app/components/primer/beta/auto_complete/item.rb +1 -1
  55. data/app/components/primer/beta/auto_complete.rb +6 -1
  56. data/app/components/primer/beta/base_button.rb +2 -3
  57. data/app/components/primer/beta/blankslate.css +1 -1
  58. data/app/components/primer/beta/blankslate.css.map +1 -1
  59. data/app/components/primer/beta/blankslate.pcss +3 -3
  60. data/app/components/primer/beta/button.css +1 -1
  61. data/app/components/primer/beta/button.css.json +9 -8
  62. data/app/components/primer/beta/button.css.map +1 -1
  63. data/app/components/primer/beta/button.pcss +15 -11
  64. data/app/components/primer/beta/nav_list/group.html.erb +7 -5
  65. data/app/components/primer/beta/nav_list/group.rb +2 -2
  66. data/app/components/primer/beta/nav_list.d.ts +0 -11
  67. data/app/components/primer/beta/nav_list.js +2 -85
  68. data/app/components/primer/beta/nav_list.ts +1 -85
  69. data/app/components/primer/beta/nav_list_group_element.d.ts +19 -0
  70. data/app/components/primer/beta/nav_list_group_element.js +108 -0
  71. data/app/components/primer/beta/nav_list_group_element.ts +97 -0
  72. data/app/components/primer/beta/relative_time.rb +4 -4
  73. data/app/components/primer/component.rb +3 -0
  74. data/app/components/primer/primer.d.ts +2 -0
  75. data/app/components/primer/primer.js +2 -0
  76. data/app/components/primer/primer.ts +2 -0
  77. data/app/components/primer/scrollable_region.d.ts +13 -0
  78. data/app/components/primer/scrollable_region.js +52 -0
  79. data/app/components/primer/scrollable_region.ts +48 -0
  80. data/app/lib/primer/experimental_render_helpers.rb +32 -0
  81. data/app/lib/primer/experimental_slot_helpers.rb +30 -0
  82. data/lib/primer/classify/utilities.rb +3 -4
  83. data/lib/primer/view_components/version.rb +2 -2
  84. data/lib/primer/yard/lookbook_pages_backend.rb +2 -2
  85. data/previews/primer/alpha/action_menu_preview/in_scroll_container.html.erb +11 -0
  86. data/previews/primer/alpha/action_menu_preview.rb +80 -7
  87. data/previews/primer/alpha/banner_preview.rb +3 -2
  88. data/previews/primer/alpha/dialog_preview/with_auto_complete.html.erb +8 -0
  89. data/previews/primer/alpha/dialog_preview.rb +17 -0
  90. data/previews/primer/beta/blankslate_preview/inside_flex_container.html.erb +6 -0
  91. data/previews/primer/beta/blankslate_preview.rb +3 -0
  92. data/previews/primer/beta/nav_list_preview.rb +10 -1
  93. data/static/arguments.json +92 -1
  94. data/static/audited_at.json +4 -1
  95. data/static/classes.json +3 -0
  96. data/static/constants.json +9 -0
  97. data/static/info_arch.json +256 -52
  98. data/static/previews.json +52 -0
  99. data/static/statuses.json +3 -0
  100. metadata +19 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6bc31a730660d5ea0856b3c739b04ad30ead892c3889a4659191e3fa0cc308e2
4
- data.tar.gz: 3fa693ff182c8a4463ee6a560bf0e09bbd8d96557808531b4869406f9aef8aa8
3
+ metadata.gz: 2e4b0323c06e38ced85cd7397ebe545ccff6a2215dcd969b3a7e281fcf3cb30e
4
+ data.tar.gz: aec6454c1e351b6836a9124980b7d5cd378bf5b9930f6553f516667c270fcf37
5
5
  SHA512:
6
- metadata.gz: 2d0da621a6eb5b480d8da3873cd04f4ffbcea4cf2c6cbd678e192cf08bbc54783967c9bcec0d08e944c6dbdb91e49adcee6e67544ef35967021e0ce7a4962c61
7
- data.tar.gz: a442c1a00c387e8b6a88c9de3186deedbe2895a0aa936c73c9c2ef794184f0002229da5dfafa2ce98f62ad9c651d1ac970c5fa68a6659df7c19739f8be5c0803
6
+ metadata.gz: b64d5218076f13536065c168bff9417f052ae151a571995041d33372539d27350a4d55d7e097f33042ea559af1812f37c866c6a447560767ea9248afcd0233b0
7
+ data.tar.gz: 97d8d9aa7b9b96c2cc38c7a3c40449454cc19877fb46a58edf61917e2baae099c87fe7eb2aa1246991f6c0cf930708d68a6e6e5583c9f0672e9a821961cc909e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,66 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 0.20.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#2445](https://github.com/primer/view_components/pull/2445) [`da60c73`](https://github.com/opf/primer_view_components/commit/da60c7370104a7edd8713d271210e2c9cb3eeb96) Thanks [@camertron](https://github.com/camertron)! - Always convert CSS classes to system arguments in linters
8
+
9
+ - [#2447](https://github.com/primer/view_components/pull/2447) [`08a8e01`](https://github.com/opf/primer_view_components/commit/08a8e012572bb5d2248f89acdaf7329747fd3108) Thanks [@kenyonj](https://github.com/kenyonj)! - Support font_size and border_radius in classify/utilities
10
+
11
+ ### Patch Changes
12
+
13
+ - [#2452](https://github.com/primer/view_components/pull/2452) [`87e03ea`](https://github.com/opf/primer_view_components/commit/87e03ea4dd41822454c72ddb7e55b0aa9294c69c) Thanks [@nicolleromero](https://github.com/nicolleromero)! - Ensure tooltip does not reopen errantly unless focus is visible
14
+
15
+ - [#2456](https://github.com/primer/view_components/pull/2456) [`fd38b17`](https://github.com/opf/primer_view_components/commit/fd38b170014cfadbd8ecc78814f70a5323fda3ee) Thanks [@TylerJDev](https://github.com/TylerJDev)! - Adds visible outlines to `Overlay` and `Tooltip` in high contrast mode.
16
+
17
+ - [#2432](https://github.com/primer/view_components/pull/2432) [`c162880`](https://github.com/opf/primer_view_components/commit/c162880a5a57b86fd6f640d0dd5c9a4548335f09) Thanks [@dylanatsmith](https://github.com/dylanatsmith)! - Remove `user-select: none` to allow users to select form label text
18
+
19
+ - [#2428](https://github.com/primer/view_components/pull/2428) [`4cb9a57`](https://github.com/opf/primer_view_components/commit/4cb9a57de1d507e7c22d7c3cdb39b20e73bc36bc) Thanks [@strackoverflow](https://github.com/strackoverflow)! - Fix an accessibility issue where the Dialog body could not be reached via keyboard navigation
20
+
21
+ - [#2426](https://github.com/primer/view_components/pull/2426) [`78dd9dd`](https://github.com/opf/primer_view_components/commit/78dd9ddb70ee5ade30e243968c87364a80ff1325) Thanks [@camertron](https://github.com/camertron)! - Fix typo in argument passed to event listener in ToolTip
22
+
23
+ - [#2478](https://github.com/primer/view_components/pull/2478) [`6e7b7c2`](https://github.com/opf/primer_view_components/commit/6e7b7c2340339a15b21857ee1fbc734a5760135d) Thanks [@jonrohan](https://github.com/jonrohan)! - Bug fix in ActionBar: When collapsed the menu and tooltips aren't visible in Firefox
24
+
25
+ - [#2411](https://github.com/primer/view_components/pull/2411) [`58e700a`](https://github.com/opf/primer_view_components/commit/58e700ab9222054bc803541d9eccc4877254b1c1) Thanks [@keithamus](https://github.com/keithamus)! - Ensure scroll position does not change when opening ActionMenus
26
+
27
+ - [#2425](https://github.com/primer/view_components/pull/2425) [`65f418f`](https://github.com/opf/primer_view_components/commit/65f418f8f191768b0fc0b92ffd2a681631594631) Thanks [@camertron](https://github.com/camertron)! - Use floats to hide ActionBar items to address Android Chrome overflow issue
28
+
29
+ - [#2455](https://github.com/primer/view_components/pull/2455) [`6ca4ac4`](https://github.com/opf/primer_view_components/commit/6ca4ac4476b00be4f5561ae3ad452c4609dd2928) Thanks [@HDinger](https://github.com/HDinger)! - Make dismiss action on Banner translatable
30
+
31
+ - [#2434](https://github.com/primer/view_components/pull/2434) [`dc87edf`](https://github.com/opf/primer_view_components/commit/dc87edf407d98cdefc32d095fea99909c066a2fc) Thanks [@langermank](https://github.com/langermank)! - Add missing `box-shadow` to text field
32
+
33
+ ## 0.19.0
34
+
35
+ ### Minor Changes
36
+
37
+ - [#2378](https://github.com/primer/view_components/pull/2378) [`81b5acc`](https://github.com/opf/primer_view_components/commit/81b5acc641d2bebc3a634fe0d5d712ad289747cd) Thanks [@keithamus](https://github.com/keithamus)! - Primer::Alpha::ActionList now uses popover
38
+
39
+ - [#2340](https://github.com/primer/view_components/pull/2340) [`b8d0540`](https://github.com/opf/primer_view_components/commit/b8d05407b42ec843f4a46b979779e6db69bd56ba) Thanks [@camertron](https://github.com/camertron)! - Add group support to ActionMenu
40
+
41
+ - [#2393](https://github.com/primer/view_components/pull/2393) [`745eae0`](https://github.com/opf/primer_view_components/commit/745eae0d0be5efa3f368630b49db1eda2a11307e) Thanks [@camertron](https://github.com/camertron)! - [ActionMenu] Don't allow previously hidden items to be checkable; add JavaScript API
42
+
43
+ ### Patch Changes
44
+
45
+ - [#2414](https://github.com/primer/view_components/pull/2414) [`48a2405`](https://github.com/opf/primer_view_components/commit/48a2405a2cdb6865eb57c2ea411fcece026590d0) Thanks [@keithamus](https://github.com/keithamus)! - Prevent other Overlays closing when Escape is pressed while Tooltips are open
46
+
47
+ - [#2426](https://github.com/primer/view_components/pull/2426) [`78dd9dd`](https://github.com/opf/primer_view_components/commit/78dd9ddb70ee5ade30e243968c87364a80ff1325) Thanks [@camertron](https://github.com/camertron)! - Fix typo in argument passed to event listener in ToolTip
48
+
49
+ - [#2379](https://github.com/primer/view_components/pull/2379) [`2c59c33`](https://github.com/opf/primer_view_components/commit/2c59c33bf54e392d743fbdd1076d06bff2151b42) Thanks [@mperrotti](https://github.com/mperrotti)! - Updates 'inactive' state for buttons based on feedback from the a11y team:
50
+
51
+ - inactive buttons need to meet the color contrast ratio minimum
52
+ - inactive buttons shouldn't have aria-disabled since they can still accept interactions such as:
53
+ - hover/focus to show a tooltip
54
+ - click/activate to show a dialog with more detailed info on why it's inactive
55
+
56
+ <!-- Changed components: Button -->
57
+
58
+ - [#2408](https://github.com/primer/view_components/pull/2408) [`57586da`](https://github.com/opf/primer_view_components/commit/57586da49cf0f82c0da4736bc276984d6ea3b479) Thanks [@HDinger](https://github.com/HDinger)! - Fix: Allow month attribute for Primer::Beta::RelativeTime
59
+
60
+ - [#2406](https://github.com/primer/view_components/pull/2406) [`fb9bf25`](https://github.com/opf/primer_view_components/commit/fb9bf257c358add060679d401719993b21ce7f45) Thanks [@strackoverflow](https://github.com/strackoverflow)! - Fix an issue where multiple groups could not be paginated within the same NavList
61
+
62
+ - [#2412](https://github.com/primer/view_components/pull/2412) [`e7c9a6c`](https://github.com/opf/primer_view_components/commit/e7c9a6c62b82ec9ebff575ddd5fbd361fcc40334) Thanks [@camertron](https://github.com/camertron)! - Prevent Blankslates from having a zero width inside flex containers
63
+
3
64
  ## 0.18.1
4
65
 
5
66
  ### Patch Changes
@@ -1,12 +1,13 @@
1
+ import { ActionMenuElement } from './action_menu/action_menu_element';
1
2
  declare class ActionBarElement extends HTMLElement {
2
3
  #private;
3
4
  items: HTMLElement[];
4
5
  itemContainer: HTMLElement;
5
- moreMenu: HTMLElement;
6
+ moreMenu: ActionMenuElement;
6
7
  connectedCallback(): void;
7
8
  disconnectedCallback(): void;
8
9
  menuItemClick(event: Event): void;
9
- update(rect?: DOMRect): void;
10
+ update(): void;
10
11
  }
11
12
  declare global {
12
13
  interface Window {
@@ -6,6 +6,15 @@ type SelectedItem = {
6
6
  value: string | null | undefined;
7
7
  element: Element;
8
8
  };
9
+ export type ItemActivatedEvent = {
10
+ item: Element;
11
+ checked: boolean;
12
+ };
13
+ declare global {
14
+ interface HTMLElementEventMap {
15
+ itemActivated: CustomEvent<ItemActivatedEvent>;
16
+ }
17
+ }
9
18
  export declare class ActionMenuElement extends HTMLElement {
10
19
  #private;
11
20
  includeFragment: IncludeFragmentElement;
@@ -22,6 +31,17 @@ export declare class ActionMenuElement extends HTMLElement {
22
31
  connectedCallback(): void;
23
32
  disconnectedCallback(): void;
24
33
  handleEvent(event: Event): void;
34
+ get items(): HTMLElement[];
35
+ getItemById(itemId: string): HTMLElement | null;
36
+ isItemDisabled(item: Element | null): boolean;
37
+ disableItem(item: Element | null): void;
38
+ enableItem(item: Element | null): void;
39
+ isItemHidden(item: Element | null): boolean;
40
+ hideItem(item: Element | null): void;
41
+ showItem(item: Element | null): void;
42
+ isItemChecked(item: Element | null): boolean;
43
+ checkItem(item: Element | null): void;
44
+ uncheckItem(item: Element | null): void;
25
45
  }
26
46
  declare global {
27
47
  interface Window {
@@ -1,15 +1,6 @@
1
1
  export declare class NavListElement extends HTMLElement {
2
2
  #private;
3
3
  items: HTMLElement[];
4
- showMoreItem: HTMLElement;
5
- focusMarkers: HTMLElement[];
6
- connectedCallback(): void;
7
- get showMoreDisabled(): boolean;
8
- set showMoreDisabled(value: boolean);
9
- set currentPage(value: number);
10
- get currentPage(): number;
11
- get totalPages(): number;
12
- get paginationSrc(): string;
13
4
  selectItemById(itemId: string | null): boolean;
14
5
  selectItemByHref(href: string | null): boolean;
15
6
  selectItemByCurrentLocation(): boolean;
@@ -18,8 +9,6 @@ export declare class NavListElement extends HTMLElement {
18
9
  itemIsExpanded(item: HTMLElement | null): boolean;
19
10
  handleItemWithSubItemClick(e: Event): void;
20
11
  handleItemWithSubItemKeydown(e: KeyboardEvent): void;
21
- private showMore;
22
- private setShowMoreItemState;
23
12
  }
24
13
  declare global {
25
14
  interface Window {
@@ -0,0 +1,19 @@
1
+ export declare class NavListGroupElement extends HTMLElement {
2
+ #private;
3
+ showMoreItem: HTMLElement;
4
+ focusMarkers: HTMLElement[];
5
+ connectedCallback(): void;
6
+ get showMoreDisabled(): boolean;
7
+ set showMoreDisabled(value: boolean);
8
+ set currentPage(value: number);
9
+ get currentPage(): number;
10
+ get totalPages(): number;
11
+ get paginationSrc(): string;
12
+ private showMore;
13
+ private setShowMoreItemState;
14
+ }
15
+ declare global {
16
+ interface Window {
17
+ NavListGroupElement: typeof NavListGroupElement;
18
+ }
19
+ }
@@ -3,9 +3,11 @@ import './alpha/action_bar_element';
3
3
  import './alpha/dropdown';
4
4
  import './anchored_position';
5
5
  import './focus_group';
6
+ import './scrollable_region';
6
7
  import './alpha/image_crop';
7
8
  import './alpha/modal_dialog';
8
9
  import './beta/nav_list';
10
+ import './beta/nav_list_group_element';
9
11
  import './alpha/segmented_control';
10
12
  import './alpha/toggle_switch';
11
13
  import './alpha/tool_tip';
@@ -0,0 +1,13 @@
1
+ export declare class ScrollableRegionElement extends HTMLElement {
2
+ hasOverflow: boolean;
3
+ labelledBy: string;
4
+ observer: ResizeObserver;
5
+ connectedCallback(): void;
6
+ disconnectedCallback(): void;
7
+ attributeChangedCallback(name: string): void;
8
+ }
9
+ declare global {
10
+ interface Window {
11
+ ScrollableRegionElement: typeof ScrollableRegionElement;
12
+ }
13
+ }