jekyll-v4-theme-primer 0.10.0 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +6 -3
- data/_includes/theme.html +1 -1
- data/_sass/@primer/css/base/normalize.scss +1 -0
- data/_sass/@primer/css/core/index.scss +0 -1
- data/_sass/@primer/css/forms/form-group.scss +2 -1
- data/_sass/@primer/css/forms/index.scss +0 -1
- data/_sass/@primer/css/labels/index.scss +0 -1
- data/_sass/@primer/css/layout/app-frame.scss +6 -6
- data/_sass/@primer/css/layout/stack.scss +6 -6
- data/_sass/@primer/css/markdown/lists.scss +4 -4
- data/_sass/@primer/css/primitives/index.scss +9 -9
- data/_sass/@primer/css/support/variables/misc.scss +1 -1
- data/_sass/@primer/css/utilities/borders.scss +8 -8
- data/_sass/@primer/css/utilities/visibility-display.scss +10 -9
- data/_sass/@primer/view-components/app/assets/javascripts/primer_view_components.js +1 -1
- data/_sass/@primer/view-components/app/assets/javascripts/primer_view_components.js.map +1 -1
- data/_sass/@primer/view-components/app/assets/styles/primer_view_components.css +3 -3
- data/_sass/@primer/view-components/app/assets/styles/primer_view_components.css.map +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/action_list.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/action_list.css.json +131 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/action_menu/action_menu_element.d.ts +29 -0
- data/_sass/@primer/view-components/app/components/primer/alpha/action_menu/action_menu_element.js +217 -0
- data/_sass/@primer/view-components/app/components/primer/alpha/auto_complete.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/auto_complete.css.json +23 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/banner.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/banner.css.json +24 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/button_marketing.css.json +33 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/dialog.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/dialog.css.json +80 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/dropdown.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/dropdown.css.json +40 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/layout.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/layout.css.json +80 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/menu.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/menu.css.json +28 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/modal_dialog.js +12 -0
- data/_sass/@primer/view-components/app/components/primer/alpha/nav_list.d.ts +7 -4
- data/_sass/@primer/view-components/app/components/primer/alpha/nav_list.js +121 -9
- data/_sass/@primer/view-components/app/components/primer/alpha/overlay.css +1 -0
- data/_sass/@primer/view-components/app/components/primer/alpha/overlay.css.json +8 -0
- data/_sass/@primer/view-components/app/components/primer/alpha/segmented_control.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/segmented_control.css.json +31 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/tab_nav.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/tab_nav.css.json +24 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/text_field.css +3 -3
- data/_sass/@primer/view-components/app/components/primer/alpha/text_field.css.json +134 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/toggle_switch.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/toggle_switch.css.json +40 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/underline_nav.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/alpha/underline_nav.css.json +28 -1
- data/_sass/@primer/view-components/app/components/primer/anchored_position.d.ts +27 -0
- data/_sass/@primer/view-components/app/components/primer/anchored_position.js +149 -0
- data/_sass/@primer/view-components/app/components/primer/beta/avatar.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/avatar.css.json +17 -1
- data/_sass/@primer/view-components/app/components/primer/beta/avatar_stack.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/avatar_stack.css.json +28 -1
- data/_sass/@primer/view-components/app/components/primer/beta/blankslate.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/blankslate.css.json +22 -1
- data/_sass/@primer/view-components/app/components/primer/beta/border_box.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/border_box.css.json +54 -1
- data/_sass/@primer/view-components/app/components/primer/beta/breadcrumbs.css.json +11 -1
- data/_sass/@primer/view-components/app/components/primer/beta/button.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/button.css.json +71 -1
- data/_sass/@primer/view-components/app/components/primer/beta/counter.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/counter.css.json +10 -1
- data/_sass/@primer/view-components/app/components/primer/beta/flash.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/flash.css.json +27 -1
- data/_sass/@primer/view-components/app/components/primer/beta/label.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/label.css.json +25 -1
- data/_sass/@primer/view-components/app/components/primer/beta/link.css.json +19 -1
- data/_sass/@primer/view-components/app/components/primer/beta/popover.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/popover.css.json +39 -1
- data/_sass/@primer/view-components/app/components/primer/beta/progress_bar.css.json +10 -1
- data/_sass/@primer/view-components/app/components/primer/beta/state.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/state.css.json +13 -1
- data/_sass/@primer/view-components/app/components/primer/beta/subhead.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/subhead.css.json +12 -1
- data/_sass/@primer/view-components/app/components/primer/beta/timeline_item.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/timeline_item.css.json +16 -1
- data/_sass/@primer/view-components/app/components/primer/beta/truncate.css +1 -1
- data/_sass/@primer/view-components/app/components/primer/beta/truncate.css.json +12 -1
- data/_sass/@primer/view-components/app/components/primer/focus_group.d.ts +19 -0
- data/_sass/@primer/view-components/app/components/primer/focus_group.js +144 -0
- data/_sass/@primer/view-components/app/components/primer/primer.d.ts +5 -2
- data/_sass/@primer/view-components/app/components/primer/primer.js +5 -2
- data/_sass/@primer/view-components/app/components/primer/truncate.css.json +13 -1
- data/_sass/@primer/view-components/lib/primer/forms/primer_text_field.js +17 -6
- data/_sass/@primer/view-components/package.json +6 -4
- data/_sass/@primer/view-components/static/arguments.json +2167 -346
- data/_sass/@primer/view-components/static/audited_at.json +22 -22
- data/_sass/@primer/view-components/static/classes.json +579 -0
- data/_sass/@primer/view-components/static/constants.json +215 -61
- data/_sass/@primer/view-components/static/info_arch.json +9090 -0
- data/_sass/@primer/view-components/static/previews.json +2020 -0
- data/_sass/@primer/view-components/static/statuses.json +23 -23
- data/_sass/{jekyll-theme-primer.scss → jekyll-v4-theme-primer.scss} +3 -3
- data/_sass/primer.scss +1 -1
- data/assets/css/style.scss +1 -1
- metadata +16 -15
- data/_sass/@primer/css/actionlist/action-list-item-divider.scss +0 -48
- data/_sass/@primer/css/actionlist/action-list-item.scss +0 -593
- data/_sass/@primer/css/actionlist/action-list-tree.scss +0 -118
- data/_sass/@primer/css/actionlist/action-list-variables.scss +0 -8
- data/_sass/@primer/css/actionlist/action-list.scss +0 -67
- data/_sass/@primer/css/actionlist/index.scss +0 -6
- data/_sass/@primer/css/forms/form-validation.scss +0 -265
- data/_sass/@primer/css/labels/diffstat.scss +0 -37
- data/_sass/@primer/view-components/app/components/primer/time_ago_component.d.ts +0 -1
- data/_sass/@primer/view-components/app/components/primer/time_ago_component.js +0 -1
- /data/_sass/@primer/view-components/app/components/primer/{local_time.d.ts → beta/relative_time.d.ts} +0 -0
- /data/_sass/@primer/view-components/app/components/primer/{local_time.js → beta/relative_time.js} +0 -0
@@ -1 +1,39 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "beta/popover",
|
3
|
+
"selectors": [
|
4
|
+
".Popover",
|
5
|
+
".Popover-message",
|
6
|
+
".Popover-message:after",
|
7
|
+
".Popover-message:before",
|
8
|
+
".Popover-message--no-caret:after",
|
9
|
+
".Popover-message--no-caret:before",
|
10
|
+
".Popover-message--bottom-left:after",
|
11
|
+
".Popover-message--bottom-left:before",
|
12
|
+
".Popover-message--bottom-right:after",
|
13
|
+
".Popover-message--bottom-right:before",
|
14
|
+
".Popover-message--bottom:after",
|
15
|
+
".Popover-message--bottom:before",
|
16
|
+
".Popover-message--bottom-right",
|
17
|
+
".Popover-message--top-right",
|
18
|
+
".Popover-message--top-right:after",
|
19
|
+
".Popover-message--top-right:before",
|
20
|
+
".Popover-message--bottom-left",
|
21
|
+
".Popover-message--top-left",
|
22
|
+
".Popover-message--top-left:after",
|
23
|
+
".Popover-message--top-left:before",
|
24
|
+
".Popover-message--left-bottom:after",
|
25
|
+
".Popover-message--left-bottom:before",
|
26
|
+
".Popover-message--left-top:after",
|
27
|
+
".Popover-message--left-top:before",
|
28
|
+
".Popover-message--left:after",
|
29
|
+
".Popover-message--left:before",
|
30
|
+
".Popover-message--right-bottom:after",
|
31
|
+
".Popover-message--right-bottom:before",
|
32
|
+
".Popover-message--right-top:after",
|
33
|
+
".Popover-message--right-top:before",
|
34
|
+
".Popover-message--right:after",
|
35
|
+
".Popover-message--right:before",
|
36
|
+
".Popover-message--large",
|
37
|
+
".Popover-message>.btn-octicon"
|
38
|
+
]
|
39
|
+
}
|
@@ -1 +1,10 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "beta/progress_bar",
|
3
|
+
"selectors": [
|
4
|
+
".Progress",
|
5
|
+
".Progress--large",
|
6
|
+
".Progress--small",
|
7
|
+
".Progress-item",
|
8
|
+
".Progress-item+.Progress-item"
|
9
|
+
]
|
10
|
+
}
|
@@ -1 +1 @@
|
|
1
|
-
.State,.state{border-radius:2em;display:inline-block;font-size:var(--
|
1
|
+
.State,.state{border-radius:2em;display:inline-block;font-size:var(--text-body-size-medium,14px);font-weight:var(--base-text-weight-medium,500);line-height:var(--control-medium-lineBoxHeight,20px);padding:5px var(--control-medium-paddingInline-normal,12px);text-align:center;white-space:nowrap}.State,.State--draft,.state{background-color:var(--color-neutral-emphasis);border:var(--borderWidth-thin,1px) solid #0000;color:var(--color-fg-on-emphasis)}.State--open{background-color:var(--color-open-emphasis)}.State--merged,.State--open{color:var(--color-fg-on-emphasis)}.State--merged{background-color:var(--color-done-emphasis)}.State--closed{background-color:var(--color-closed-emphasis);color:var(--color-fg-on-emphasis)}.State--small{font-size:var(--text-body-size-small,12px);line-height:var(--base-size-24,24px);padding:0 10px}.State--small .octicon{width:1em}
|
@@ -1 +1,13 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "beta/state",
|
3
|
+
"selectors": [
|
4
|
+
".State",
|
5
|
+
".state",
|
6
|
+
".State--draft",
|
7
|
+
".State--open",
|
8
|
+
".State--merged",
|
9
|
+
".State--closed",
|
10
|
+
".State--small",
|
11
|
+
".State--small .octicon"
|
12
|
+
]
|
13
|
+
}
|
@@ -1 +1 @@
|
|
1
|
-
.Subhead{border-bottom:var(--
|
1
|
+
.Subhead{border-bottom:var(--borderWidth-thin,1px) solid var(--color-border-muted);display:flex;flex-flow:row wrap;justify-content:flex-end;margin-bottom:var(--stack-gap-normal,16px);padding-bottom:var(--stack-padding-condensed,8px)}.Subhead--spacious{margin-top:var(--base-size-40,40px)}.Subhead-heading{flex:1 1 auto;font-size:24px;font-weight:var(--base-text-weight-normal,400);order:0}.Subhead-heading--danger{color:var(--color-danger-fg);font-weight:var(--base-text-weight-semibold,600)}.Subhead-description{color:var(--color-fg-muted);flex:1 100%;font-size:var(--text-body-size-medium,14px);order:2}.Subhead-actions{align-self:center;justify-content:flex-end;margin:var(--base-size-4,4px) 0 var(--base-size-4,4px) var(--base-size-4,4px);order:1}.Subhead-actions+.Subhead-description{margin-top:var(--base-size-4,4px)}
|
@@ -1 +1,12 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "beta/subhead",
|
3
|
+
"selectors": [
|
4
|
+
".Subhead",
|
5
|
+
".Subhead--spacious",
|
6
|
+
".Subhead-heading",
|
7
|
+
".Subhead-heading--danger",
|
8
|
+
".Subhead-description",
|
9
|
+
".Subhead-actions",
|
10
|
+
".Subhead-actions+.Subhead-description"
|
11
|
+
]
|
12
|
+
}
|
@@ -1 +1 @@
|
|
1
|
-
.TimelineItem{display:flex;margin-left:var(--
|
1
|
+
.TimelineItem{display:flex;margin-left:var(--stack-gap-normal,16px);padding:var(--stack-padding-normal,16px) 0;position:relative}.TimelineItem:before{background-color:var(--color-border-muted);bottom:0;content:"";display:block;left:0;position:absolute;top:0;width:var(--borderWidth-thick,2px)}.TimelineItem:target .TimelineItem-badge{border-color:var(--color-accent-emphasis);box-shadow:0 0 .2em var(--color-accent-muted)}.TimelineItem-badge{align-items:center;background-color:var(--color-timeline-badge-bg);border:var(--borderWidth-thick,2px) solid var(--color-canvas-default);border-radius:50%;color:var(--color-fg-muted);display:flex;flex-shrink:0;height:var(--control-medium-size,32px);justify-content:center;margin-left:calc(var(--control-medium-size, 32px)/-2 + 1px);margin-right:var(--controlStack-medium-gap-condensed,8px);position:relative;width:var(--control-medium-size,32px);z-index:1}.TimelineItem-badge--success{background-color:var(--color-success-emphasis);border:var(--borderWidth-thin,1px) solid #0000;color:var(--color-fg-on-emphasis)}.TimelineItem-body{color:var(--color-fg-muted);flex:auto;margin-top:var(--base-size-4,4px);max-width:100%;min-width:0}.TimelineItem-avatar{left:-72px;position:absolute;z-index:1}.TimelineItem-break{background-color:var(--color-canvas-default);border:0;border-top:var(--borderWidth-thicker,4px) solid var(--color-border-default);height:var(--stack-gap-spacious,24px);margin:0;margin-bottom:calc(var(--stack-gap-normal, 16px)*-1);margin-left:-56px;position:relative;z-index:1}.TimelineItem--condensed{padding-bottom:0;padding-top:var(--base-size-4,4px)}.TimelineItem--condensed:last-child{padding-bottom:var(--stack-gap-normal,16px)}.TimelineItem--condensed .TimelineItem-badge{background-color:var(--color-canvas-default);border:0;color:var(--color-fg-muted);height:var(--base-size-16,16px);margin-bottom:var(--base-size-8,8px);margin-top:var(--base-size-8,8px)}
|
@@ -1 +1,16 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "beta/timeline_item",
|
3
|
+
"selectors": [
|
4
|
+
".TimelineItem",
|
5
|
+
".TimelineItem:before",
|
6
|
+
".TimelineItem:target .TimelineItem-badge",
|
7
|
+
".TimelineItem-badge",
|
8
|
+
".TimelineItem-badge--success",
|
9
|
+
".TimelineItem-body",
|
10
|
+
".TimelineItem-avatar",
|
11
|
+
".TimelineItem-break",
|
12
|
+
".TimelineItem--condensed",
|
13
|
+
".TimelineItem--condensed:last-child",
|
14
|
+
".TimelineItem--condensed .TimelineItem-badge"
|
15
|
+
]
|
16
|
+
}
|
@@ -1 +1 @@
|
|
1
|
-
.Truncate{display:inline-flex;max-width:100%;min-width:0}.Truncate>.Truncate-text{max-width:-moz-fit-content;max-width:fit-content;min-width:1ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Truncate>.Truncate-text+.Truncate-text{margin-left:var(--
|
1
|
+
.Truncate{display:inline-flex;max-width:100%;min-width:0}.Truncate>.Truncate-text{max-width:-moz-fit-content;max-width:fit-content;min-width:1ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Truncate>.Truncate-text+.Truncate-text{margin-left:var(--control-small-gap,4px)}.Truncate>.Truncate-text.Truncate-text--primary{flex-basis:200%}.Truncate>.Truncate-text.Truncate-text--expandable:active,.Truncate>.Truncate-text.Truncate-text--expandable:focus,.Truncate>.Truncate-text.Truncate-text--expandable:hover{cursor:pointer;flex-shrink:0;max-width:100%!important}
|
@@ -1 +1,12 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "beta/truncate",
|
3
|
+
"selectors": [
|
4
|
+
".Truncate",
|
5
|
+
".Truncate>.Truncate-text",
|
6
|
+
".Truncate>.Truncate-text+.Truncate-text",
|
7
|
+
".Truncate>.Truncate-text.Truncate-text--primary",
|
8
|
+
".Truncate>.Truncate-text.Truncate-text--expandable:active",
|
9
|
+
".Truncate>.Truncate-text.Truncate-text--expandable:focus",
|
10
|
+
".Truncate>.Truncate-text.Truncate-text--expandable:hover"
|
11
|
+
]
|
12
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import '@oddbird/popover-polyfill';
|
2
|
+
export default class FocusGroupElement extends HTMLElement {
|
3
|
+
#private;
|
4
|
+
get nowrap(): boolean;
|
5
|
+
set nowrap(value: boolean);
|
6
|
+
get direction(): 'horizontal' | 'vertical' | 'both';
|
7
|
+
set direction(value: 'horizontal' | 'vertical' | 'both');
|
8
|
+
get retain(): boolean;
|
9
|
+
set retain(value: boolean);
|
10
|
+
get mnemonics(): boolean;
|
11
|
+
connectedCallback(): void;
|
12
|
+
disconnectedCallback(): void;
|
13
|
+
handleEvent(event: Event): void;
|
14
|
+
}
|
15
|
+
declare global {
|
16
|
+
interface Window {
|
17
|
+
FocusGroupElement: typeof FocusGroupElement;
|
18
|
+
}
|
19
|
+
}
|
@@ -0,0 +1,144 @@
|
|
1
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
2
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
5
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
6
|
+
};
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
11
|
+
};
|
12
|
+
var _FocusGroupElement_instances, _FocusGroupElement_abortController, _FocusGroupElement_items_get;
|
13
|
+
import '@oddbird/popover-polyfill';
|
14
|
+
const menuItemSelector = '[role="menuitem"],[role="menuitemcheckbox"],[role="menuitemradio"]';
|
15
|
+
const popoverSelector = (() => {
|
16
|
+
try {
|
17
|
+
document.querySelector(':open');
|
18
|
+
return ':open';
|
19
|
+
}
|
20
|
+
catch (_a) {
|
21
|
+
return '.\\:open';
|
22
|
+
}
|
23
|
+
})();
|
24
|
+
const getMnemonicFor = (item) => { var _a; return (_a = item.textContent) === null || _a === void 0 ? void 0 : _a.trim()[0].toLowerCase(); };
|
25
|
+
const printable = /^\S$/;
|
26
|
+
export default class FocusGroupElement extends HTMLElement {
|
27
|
+
constructor() {
|
28
|
+
super(...arguments);
|
29
|
+
_FocusGroupElement_instances.add(this);
|
30
|
+
_FocusGroupElement_abortController.set(this, null);
|
31
|
+
}
|
32
|
+
get nowrap() {
|
33
|
+
return this.hasAttribute('nowrap');
|
34
|
+
}
|
35
|
+
set nowrap(value) {
|
36
|
+
this.toggleAttribute('nowrap', value);
|
37
|
+
}
|
38
|
+
get direction() {
|
39
|
+
if (this.getAttribute('direction') === 'horizontal')
|
40
|
+
return 'horizontal';
|
41
|
+
return 'vertical';
|
42
|
+
}
|
43
|
+
set direction(value) {
|
44
|
+
this.setAttribute('direction', `${value}`);
|
45
|
+
}
|
46
|
+
get retain() {
|
47
|
+
return this.hasAttribute('retain');
|
48
|
+
}
|
49
|
+
set retain(value) {
|
50
|
+
this.toggleAttribute('retain', value);
|
51
|
+
}
|
52
|
+
get mnemonics() {
|
53
|
+
return this.hasAttribute('mnemonics');
|
54
|
+
}
|
55
|
+
connectedCallback() {
|
56
|
+
__classPrivateFieldSet(this, _FocusGroupElement_abortController, new AbortController(), "f");
|
57
|
+
const { signal } = __classPrivateFieldGet(this, _FocusGroupElement_abortController, "f");
|
58
|
+
this.addEventListener('keydown', this, { signal });
|
59
|
+
this.addEventListener('click', this, { signal });
|
60
|
+
this.addEventListener('mouseover', this, { signal });
|
61
|
+
this.addEventListener('focusin', this, { signal });
|
62
|
+
}
|
63
|
+
disconnectedCallback() {
|
64
|
+
var _a;
|
65
|
+
(_a = __classPrivateFieldGet(this, _FocusGroupElement_abortController, "f")) === null || _a === void 0 ? void 0 : _a.abort();
|
66
|
+
}
|
67
|
+
handleEvent(event) {
|
68
|
+
const { direction, nowrap } = this;
|
69
|
+
if (event.type === 'focusin') {
|
70
|
+
if (this.retain && event.target instanceof Element && event.target.matches(menuItemSelector)) {
|
71
|
+
for (const item of __classPrivateFieldGet(this, _FocusGroupElement_instances, "a", _FocusGroupElement_items_get)) {
|
72
|
+
item.setAttribute('tabindex', item === event.target ? '0' : '-1');
|
73
|
+
}
|
74
|
+
}
|
75
|
+
}
|
76
|
+
else if (event instanceof KeyboardEvent) {
|
77
|
+
const items = Array.from(__classPrivateFieldGet(this, _FocusGroupElement_instances, "a", _FocusGroupElement_items_get));
|
78
|
+
let index = items.indexOf(event.target);
|
79
|
+
const key = event.key;
|
80
|
+
if (key === 'Up' || key === 'ArrowUp') {
|
81
|
+
if (direction === 'vertical' || direction === 'both') {
|
82
|
+
index -= index < 0 ? 0 : 1;
|
83
|
+
}
|
84
|
+
}
|
85
|
+
else if (key === 'Down' || key === 'ArrowDown') {
|
86
|
+
if (direction === 'vertical' || direction === 'both') {
|
87
|
+
index += 1;
|
88
|
+
}
|
89
|
+
}
|
90
|
+
else if (event.key === 'Left' || event.key === 'ArrowLeft') {
|
91
|
+
if (direction === 'horizontal' || direction === 'both') {
|
92
|
+
index -= 1;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
else if (event.key === 'Right' || event.key === 'ArrowRight') {
|
96
|
+
if (direction === 'horizontal' || direction === 'both') {
|
97
|
+
index += 1;
|
98
|
+
}
|
99
|
+
}
|
100
|
+
else if (event.key === 'Home' || event.key === 'PageUp') {
|
101
|
+
index = 0;
|
102
|
+
}
|
103
|
+
else if (event.key === 'End' || event.key === 'PageDown') {
|
104
|
+
index = items.length - 1;
|
105
|
+
}
|
106
|
+
else if (this.mnemonics && printable.test(key)) {
|
107
|
+
const mnemonic = key.toLowerCase();
|
108
|
+
const offset = index > 0 && getMnemonicFor(event.target) === mnemonic ? index : 0;
|
109
|
+
index = items.findIndex((item, i) => i > offset && getMnemonicFor(item) === mnemonic);
|
110
|
+
if (index < 0 && !nowrap) {
|
111
|
+
index = items.findIndex(item => getMnemonicFor(item) === mnemonic);
|
112
|
+
}
|
113
|
+
}
|
114
|
+
else {
|
115
|
+
return;
|
116
|
+
}
|
117
|
+
if (nowrap && index < 0)
|
118
|
+
index = 0;
|
119
|
+
if (!nowrap && index >= items.length)
|
120
|
+
index = 0;
|
121
|
+
const focusEl = items.at(Math.min(index, items.length - 1));
|
122
|
+
{
|
123
|
+
let el = focusEl;
|
124
|
+
do {
|
125
|
+
el = el.closest(`[popover]:not(${popoverSelector})`);
|
126
|
+
if ((el === null || el === void 0 ? void 0 : el.popover) === 'auto') {
|
127
|
+
el.showPopover();
|
128
|
+
}
|
129
|
+
else {
|
130
|
+
el = (el === null || el === void 0 ? void 0 : el.parentElement) || null;
|
131
|
+
}
|
132
|
+
} while (el);
|
133
|
+
}
|
134
|
+
focusEl === null || focusEl === void 0 ? void 0 : focusEl.focus();
|
135
|
+
}
|
136
|
+
}
|
137
|
+
}
|
138
|
+
_FocusGroupElement_abortController = new WeakMap(), _FocusGroupElement_instances = new WeakSet(), _FocusGroupElement_items_get = function _FocusGroupElement_items_get() {
|
139
|
+
return this.querySelectorAll(menuItemSelector);
|
140
|
+
};
|
141
|
+
if (!customElements.get('focus-group')) {
|
142
|
+
window.FocusGroupElement = FocusGroupElement;
|
143
|
+
customElements.define('focus-group', FocusGroupElement);
|
144
|
+
}
|
@@ -1,4 +1,7 @@
|
|
1
|
+
import '@oddbird/popover-polyfill';
|
1
2
|
import './alpha/dropdown';
|
3
|
+
import './anchored_position';
|
4
|
+
import './focus_group';
|
2
5
|
import './alpha/image_crop';
|
3
6
|
import './alpha/modal_dialog';
|
4
7
|
import './alpha/nav_list';
|
@@ -8,9 +11,9 @@ import './alpha/tool_tip';
|
|
8
11
|
import './alpha/x_banner';
|
9
12
|
import './beta/auto_complete/auto_complete';
|
10
13
|
import './beta/clipboard_copy';
|
11
|
-
import './
|
14
|
+
import './beta/relative_time';
|
12
15
|
import './alpha/tab_container';
|
13
|
-
import './time_ago_component';
|
14
16
|
import '../../../lib/primer/forms/primer_multi_input';
|
15
17
|
import '../../../lib/primer/forms/primer_text_field';
|
16
18
|
import '../../../lib/primer/forms/toggle_switch_input';
|
19
|
+
import './alpha/action_menu/action_menu_element';
|
@@ -1,4 +1,7 @@
|
|
1
|
+
import '@oddbird/popover-polyfill';
|
1
2
|
import './alpha/dropdown';
|
3
|
+
import './anchored_position';
|
4
|
+
import './focus_group';
|
2
5
|
import './alpha/image_crop';
|
3
6
|
import './alpha/modal_dialog';
|
4
7
|
import './alpha/nav_list';
|
@@ -8,9 +11,9 @@ import './alpha/tool_tip';
|
|
8
11
|
import './alpha/x_banner';
|
9
12
|
import './beta/auto_complete/auto_complete';
|
10
13
|
import './beta/clipboard_copy';
|
11
|
-
import './
|
14
|
+
import './beta/relative_time';
|
12
15
|
import './alpha/tab_container';
|
13
|
-
import './time_ago_component';
|
14
16
|
import '../../../lib/primer/forms/primer_multi_input';
|
15
17
|
import '../../../lib/primer/forms/primer_text_field';
|
16
18
|
import '../../../lib/primer/forms/toggle_switch_input';
|
19
|
+
import './alpha/action_menu/action_menu_element';
|
@@ -1 +1,13 @@
|
|
1
|
-
{
|
1
|
+
{
|
2
|
+
"name": "truncate",
|
3
|
+
"selectors": [
|
4
|
+
".css-truncate .css-truncate-overflow",
|
5
|
+
".css-truncate .css-truncate-target",
|
6
|
+
".css-truncate.css-truncate-overflow",
|
7
|
+
".css-truncate.css-truncate-target",
|
8
|
+
".css-truncate.expandable.css-truncate-target:hover",
|
9
|
+
".css-truncate.expandable.zeroclipboard-is-hover .css-truncate-target",
|
10
|
+
".css-truncate.expandable.zeroclipboard-is-hover.css-truncate-target",
|
11
|
+
".css-truncate.expandable:hover .css-truncate-target"
|
12
|
+
]
|
13
|
+
}
|
@@ -18,7 +18,10 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
|
|
18
18
|
var _PrimerTextFieldElement_abortController;
|
19
19
|
import '@github/auto-check-element';
|
20
20
|
import { controller, target } from '@github/catalyst';
|
21
|
-
|
21
|
+
// eslint-disable-next-line custom-elements/expose-class-on-global
|
22
|
+
let PrimerTextFieldElement =
|
23
|
+
// eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
|
24
|
+
class PrimerTextFieldElement extends HTMLElement {
|
22
25
|
constructor() {
|
23
26
|
super(...arguments);
|
24
27
|
_PrimerTextFieldElement_abortController.set(this, void 0);
|
@@ -27,22 +30,29 @@ let PrimerTextFieldElement = class PrimerTextFieldElement extends HTMLElement {
|
|
27
30
|
var _a;
|
28
31
|
(_a = __classPrivateFieldGet(this, _PrimerTextFieldElement_abortController, "f")) === null || _a === void 0 ? void 0 : _a.abort();
|
29
32
|
const { signal } = (__classPrivateFieldSet(this, _PrimerTextFieldElement_abortController, new AbortController(), "f"));
|
30
|
-
this.inputElement.addEventListener('auto-check-success', () => {
|
31
|
-
|
32
|
-
|
33
|
+
this.inputElement.addEventListener('auto-check-success', () => {
|
34
|
+
this.clearError();
|
35
|
+
}, { signal });
|
36
|
+
this.inputElement.addEventListener('auto-check-error', async (event) => {
|
37
|
+
const errorMessage = await event.detail.response.text();
|
38
|
+
this.setError(errorMessage);
|
33
39
|
}, { signal });
|
34
40
|
}
|
35
41
|
disconnectedCallback() {
|
36
42
|
var _a;
|
37
43
|
(_a = __classPrivateFieldGet(this, _PrimerTextFieldElement_abortController, "f")) === null || _a === void 0 ? void 0 : _a.abort();
|
38
44
|
}
|
45
|
+
clearContents() {
|
46
|
+
this.inputElement.value = '';
|
47
|
+
this.inputElement.focus();
|
48
|
+
}
|
39
49
|
clearError() {
|
40
50
|
this.inputElement.removeAttribute('invalid');
|
41
51
|
this.validationElement.hidden = true;
|
42
|
-
this.validationMessageElement.
|
52
|
+
this.validationMessageElement.textContent = '';
|
43
53
|
}
|
44
54
|
setError(message) {
|
45
|
-
this.validationMessageElement.
|
55
|
+
this.validationMessageElement.textContent = message;
|
46
56
|
this.validationElement.hidden = false;
|
47
57
|
this.inputElement.setAttribute('invalid', 'true');
|
48
58
|
}
|
@@ -59,4 +69,5 @@ __decorate([
|
|
59
69
|
], PrimerTextFieldElement.prototype, "validationMessageElement", void 0);
|
60
70
|
PrimerTextFieldElement = __decorate([
|
61
71
|
controller
|
72
|
+
// eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
|
62
73
|
], PrimerTextFieldElement);
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@primer/view-components",
|
3
|
-
"version": "0.
|
3
|
+
"version": "0.1.8",
|
4
4
|
"description": "ViewComponents for the Primer Design System",
|
5
5
|
"main": "app/assets/javascripts/primer_view_components.js",
|
6
6
|
"module": "app/components/primer/primer.js",
|
@@ -50,20 +50,22 @@
|
|
50
50
|
"@github/clipboard-copy-element": "^1.1.2",
|
51
51
|
"@github/details-menu-element": "^1.0.12",
|
52
52
|
"@github/image-crop-element": "^5.0.0",
|
53
|
+
"@github/include-fragment-element": "^6.1.1",
|
53
54
|
"@github/mini-throttle": "^2.1.0",
|
54
55
|
"@github/relative-time-element": "^4.0.0",
|
55
56
|
"@github/tab-container-element": "^3.1.2",
|
57
|
+
"@oddbird/popover-polyfill": "^0.1.1",
|
56
58
|
"@primer/behaviors": "^1.2.0"
|
57
59
|
},
|
58
60
|
"devDependencies": {
|
59
61
|
"@changesets/changelog-github": "^0.4.6",
|
60
62
|
"@changesets/cli": "^2.24.1",
|
61
63
|
"@github/browserslist-config": "^1.0.0",
|
62
|
-
"@github/prettier-config": "0.0.4",
|
63
64
|
"@github/markdownlint-github": "^0.2.2",
|
65
|
+
"@github/prettier-config": "0.0.4",
|
64
66
|
"@playwright/test": "^1.27.1",
|
65
|
-
"@primer/css": "
|
66
|
-
"@primer/primitives": "^7.
|
67
|
+
"@primer/css": "21.0.1",
|
68
|
+
"@primer/primitives": "^7.11.7",
|
67
69
|
"@rollup/plugin-node-resolve": "^13.3.0",
|
68
70
|
"@rollup/plugin-typescript": "^8.3.3",
|
69
71
|
"@typescript-eslint/eslint-plugin": "^5.31.0",
|