@api-client/ui 0.5.47 → 0.5.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/elements/data-table/DataTable.d.ts +1 -1
- package/build/src/elements/data-table/DataTable.js +3 -3
- package/build/src/elements/data-table/DataTable.js.map +1 -1
- package/build/src/elements/file-system/internals/Breadcrumbs.d.ts +1 -1
- package/build/src/elements/file-system/internals/Breadcrumbs.d.ts.map +1 -1
- package/build/src/elements/file-system/internals/Breadcrumbs.js +3 -3
- package/build/src/elements/file-system/internals/Breadcrumbs.js.map +1 -1
- package/build/src/elements/navigation/internals/NavigationItem.d.ts +2 -0
- package/build/src/elements/navigation/internals/NavigationItem.d.ts.map +1 -1
- package/build/src/elements/navigation/internals/NavigationItem.js +4 -2
- package/build/src/elements/navigation/internals/NavigationItem.js.map +1 -1
- package/build/src/elements/user/internals/UserAvatar.d.ts +26 -4
- package/build/src/elements/user/internals/UserAvatar.d.ts.map +1 -1
- package/build/src/elements/user/internals/UserAvatar.js +125 -12
- package/build/src/elements/user/internals/UserAvatar.js.map +1 -1
- package/build/src/elements/user/internals/UserAvatar.styles.d.ts.map +1 -1
- package/build/src/elements/user/internals/UserAvatar.styles.js +6 -11
- package/build/src/elements/user/internals/UserAvatar.styles.js.map +1 -1
- package/build/src/md/button/internals/base.d.ts +1 -1
- package/build/src/md/button/internals/base.d.ts.map +1 -1
- package/build/src/md/button/internals/base.js +2 -2
- package/build/src/md/button/internals/base.js.map +1 -1
- package/build/src/md/checkbox/internals/CheckboxElement.d.ts +1 -1
- package/build/src/md/checkbox/internals/CheckboxElement.d.ts.map +1 -1
- package/build/src/md/checkbox/internals/CheckboxElement.js +2 -2
- package/build/src/md/checkbox/internals/CheckboxElement.js.map +1 -1
- package/build/src/md/collapse/internals/Collapse.d.ts.map +1 -1
- package/build/src/md/collapse/internals/Collapse.js +4 -1
- package/build/src/md/collapse/internals/Collapse.js.map +1 -1
- package/build/src/md/collapse/internals/Collapse.styles.d.ts.map +1 -1
- package/build/src/md/collapse/internals/Collapse.styles.js +1 -0
- package/build/src/md/collapse/internals/Collapse.styles.js.map +1 -1
- package/build/src/md/focus-ring/internals/focus-ring.d.ts +87 -0
- package/build/src/md/focus-ring/internals/focus-ring.d.ts.map +1 -0
- package/build/src/md/focus-ring/internals/focus-ring.js +206 -0
- package/build/src/md/focus-ring/internals/focus-ring.js.map +1 -0
- package/build/src/md/focus-ring/internals/focus-ring.styles.d.ts +3 -0
- package/build/src/md/focus-ring/internals/focus-ring.styles.d.ts.map +1 -0
- package/build/src/md/focus-ring/internals/focus-ring.styles.js +109 -0
- package/build/src/md/focus-ring/internals/focus-ring.styles.js.map +1 -0
- package/build/src/md/focus-ring/ui-focus-ring.d.ts +42 -0
- package/build/src/md/focus-ring/ui-focus-ring.d.ts.map +1 -0
- package/build/src/md/focus-ring/ui-focus-ring.js +58 -0
- package/build/src/md/focus-ring/ui-focus-ring.js.map +1 -0
- package/build/src/md/list/internals/ListItem.d.ts +3 -3
- package/build/src/md/list/internals/ListItem.d.ts.map +1 -1
- package/build/src/md/list/internals/ListItem.js +7 -6
- package/build/src/md/list/internals/ListItem.js.map +1 -1
- package/build/src/md/menu/internal/MenuItem.d.ts +0 -2
- package/build/src/md/menu/internal/MenuItem.d.ts.map +1 -1
- package/build/src/md/menu/internal/MenuItem.js +0 -2
- package/build/src/md/menu/internal/MenuItem.js.map +1 -1
- package/build/src/md/radio/internals/Radio.styles.js +1 -1
- package/build/src/md/radio/internals/Radio.styles.js.map +1 -1
- package/build/src/md/radio/internals/RadioElement.d.ts +1 -0
- package/build/src/md/radio/internals/RadioElement.d.ts.map +1 -1
- package/build/src/md/radio/internals/RadioElement.js +2 -0
- package/build/src/md/radio/internals/RadioElement.js.map +1 -1
- package/build/src/md/select/internals/Select.d.ts +1 -1
- package/build/src/md/select/internals/Select.d.ts.map +1 -1
- package/build/src/md/select/internals/Select.js +2 -2
- package/build/src/md/select/internals/Select.js.map +1 -1
- package/build/src/md/tabs/internals/Tab.d.ts +1 -0
- package/build/src/md/tabs/internals/Tab.d.ts.map +1 -1
- package/build/src/md/tabs/internals/Tab.js +3 -2
- package/build/src/md/tabs/internals/Tab.js.map +1 -1
- package/build/src/md/tabs/internals/Tabs.js +4 -4
- package/build/src/md/tabs/internals/Tabs.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -2
- package/src/elements/data-table/DataTable.ts +3 -3
- package/src/elements/file-system/internals/Breadcrumbs.ts +3 -3
- package/src/elements/navigation/internals/NavigationItem.ts +4 -2
- package/src/elements/user/internals/UserAvatar.styles.ts +6 -11
- package/src/elements/user/internals/UserAvatar.ts +115 -8
- package/src/md/button/internals/base.ts +2 -2
- package/src/md/checkbox/internals/CheckboxElement.ts +2 -2
- package/src/md/collapse/internals/Collapse.styles.ts +1 -0
- package/src/md/collapse/internals/Collapse.ts +4 -1
- package/src/md/focus-ring/internals/focus-ring.styles.ts +109 -0
- package/src/md/focus-ring/internals/focus-ring.ts +184 -0
- package/src/md/focus-ring/ui-focus-ring.ts +46 -0
- package/src/md/list/internals/ListItem.ts +5 -5
- package/src/md/menu/internal/MenuItem.ts +0 -2
- package/src/md/radio/internals/Radio.styles.ts +1 -1
- package/src/md/radio/internals/RadioElement.ts +2 -0
- package/src/md/select/internals/Select.ts +2 -2
- package/src/md/tabs/internals/Tab.ts +4 -2
- package/src/md/tabs/internals/Tabs.ts +4 -4
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { CSSResultOrNative } from 'lit'
|
|
2
|
+
import { customElement } from 'lit/decorators.js'
|
|
3
|
+
import Element from './internals/focus-ring.js'
|
|
4
|
+
import styles from './internals/focus-ring.styles.js'
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A focus ring component that provides a visible focus indicator.
|
|
8
|
+
*
|
|
9
|
+
* This component replaces the Material Design `md-focus-ring` component
|
|
10
|
+
* and provides the same functionality with customizable styling.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```html
|
|
14
|
+
* <!-- Basic usage -->
|
|
15
|
+
* <ui-focus-ring></ui-focus-ring>
|
|
16
|
+
*
|
|
17
|
+
* <!-- With specific control -->
|
|
18
|
+
* <ui-focus-ring .control="${buttonElement}"></ui-focus-ring>
|
|
19
|
+
*
|
|
20
|
+
* <!-- Using for attribute -->
|
|
21
|
+
* <ui-focus-ring for="my-button"></ui-focus-ring>
|
|
22
|
+
*
|
|
23
|
+
* <!-- Inward focus ring -->
|
|
24
|
+
* <ui-focus-ring inward></ui-focus-ring>
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @cssprop --ui-focus-ring-color - The color of the focus ring border.
|
|
28
|
+
* @cssprop --ui-focus-ring-width - The width of the focus ring border.
|
|
29
|
+
* @cssprop --ui-focus-ring-style - The style of the focus ring border (solid, dashed, etc.).
|
|
30
|
+
* @cssprop --ui-focus-ring-shape-start-start - The start-start corner radius.
|
|
31
|
+
* @cssprop --ui-focus-ring-shape-start-end - The start-end corner radius.
|
|
32
|
+
* @cssprop --ui-focus-ring-shape-end-end - The end-end corner radius.
|
|
33
|
+
* @cssprop --ui-focus-ring-shape-end-start - The end-start corner radius.
|
|
34
|
+
*
|
|
35
|
+
* @csspart focus-ring - The focus ring element.
|
|
36
|
+
*/
|
|
37
|
+
@customElement('ui-focus-ring')
|
|
38
|
+
export class UiFocusRingElement extends Element {
|
|
39
|
+
static override styles: CSSResultOrNative[] = [styles]
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
declare global {
|
|
43
|
+
interface HTMLElementTagNameMap {
|
|
44
|
+
'ui-focus-ring': Element
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -6,7 +6,7 @@ import { BeginPressConfig, EndPressConfig } from '../../../controllers/ActionCon
|
|
|
6
6
|
import UiRipple from '../../ripple/internals/ripple.js'
|
|
7
7
|
import { setDisabled } from '../../../lib/disabled.js'
|
|
8
8
|
|
|
9
|
-
import '
|
|
9
|
+
import '../../focus-ring/ui-focus-ring.js'
|
|
10
10
|
import '../../ripple/ui-ripple.js'
|
|
11
11
|
|
|
12
12
|
export enum ListItemLines {
|
|
@@ -57,7 +57,7 @@ export default class UiListItem extends UiElement {
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
/**
|
|
60
|
-
* Whether the
|
|
60
|
+
* Whether the list item is disabled. The user can't interact with the list item when `true`.
|
|
61
61
|
* @attribute
|
|
62
62
|
*/
|
|
63
63
|
@property({ type: Boolean, reflect: true }) accessor disabled = false
|
|
@@ -261,17 +261,17 @@ export default class UiListItem extends UiElement {
|
|
|
261
261
|
`
|
|
262
262
|
}
|
|
263
263
|
|
|
264
|
-
protected renderRipple
|
|
264
|
+
protected renderRipple(): TemplateResult {
|
|
265
265
|
return html`<ui-ripple class="ripple" ?disabled="${this.disabled || this.static}"></ui-ripple>`
|
|
266
266
|
}
|
|
267
267
|
|
|
268
268
|
protected renderFocusRing(): TemplateResult {
|
|
269
|
-
return html`<
|
|
269
|
+
return html`<ui-focus-ring
|
|
270
270
|
part="focus-ring"
|
|
271
271
|
class="focus-ring"
|
|
272
272
|
.control="${this as HTMLElement}"
|
|
273
273
|
inward
|
|
274
|
-
></
|
|
274
|
+
></ui-focus-ring>`
|
|
275
275
|
}
|
|
276
276
|
|
|
277
277
|
protected getStartClasses(): ClassInfo {
|
|
@@ -6,8 +6,6 @@ import UiSubMenu from './SubMenu.js'
|
|
|
6
6
|
import { findElementInShadowRoots } from '../../../lib/Dom.js'
|
|
7
7
|
import { nanoid } from 'nanoid'
|
|
8
8
|
|
|
9
|
-
import '@material/web/focus/md-focus-ring.js'
|
|
10
|
-
import '../../ripple/ui-ripple.js'
|
|
11
9
|
import '../../icons/ui-icon.js'
|
|
12
10
|
|
|
13
11
|
/**
|
|
@@ -5,12 +5,12 @@ export default css`
|
|
|
5
5
|
display: inline-flex;
|
|
6
6
|
align-items: center;
|
|
7
7
|
vertical-align: middle;
|
|
8
|
-
/* outline: none; */
|
|
9
8
|
min-width: 48px;
|
|
10
9
|
height: 48px;
|
|
11
10
|
cursor: pointer;
|
|
12
11
|
position: relative;
|
|
13
12
|
-webkit-tap-highlight-color: transparent;
|
|
13
|
+
outline: none;
|
|
14
14
|
--md-ripple-hover-state-layer-color: var(--md-sys-color-on-surface);
|
|
15
15
|
--md-ripple-focus-state-layer-color: var(--md-sys-color-on-surface);
|
|
16
16
|
--md-ripple-pressed-state-layer-color: var(--md-sys-color-primary);
|
|
@@ -8,6 +8,7 @@ import { ripple } from '../../effects/rippleDirective.js'
|
|
|
8
8
|
import UiRipple from '../../ripple/internals/ripple.js'
|
|
9
9
|
import { EndPressConfig } from '../../../controllers/ActionController.js'
|
|
10
10
|
import '../../ripple/ui-ripple.js'
|
|
11
|
+
import '../../focus-ring/ui-focus-ring.js'
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* A form-associated radio button.
|
|
@@ -110,6 +111,7 @@ export default class RadioElement extends CheckedElement {
|
|
|
110
111
|
pressed,
|
|
111
112
|
})
|
|
112
113
|
return html`
|
|
114
|
+
<ui-focus-ring part="focus-ring" .control="${this as HTMLElement}"></ui-focus-ring>
|
|
113
115
|
<div class="${surfaceClasses}" ${ripple(this.getRipple)}>
|
|
114
116
|
<div class="container"></div>
|
|
115
117
|
<div class="state"></div>
|
|
@@ -10,7 +10,7 @@ import { nanoid } from 'nanoid'
|
|
|
10
10
|
import '../../text-field/ui-outlined-text-field.js'
|
|
11
11
|
import '../../menu/ui-menu.js'
|
|
12
12
|
import '../../icons/ui-icon.js'
|
|
13
|
-
import '
|
|
13
|
+
import '../../focus-ring/ui-focus-ring.js'
|
|
14
14
|
|
|
15
15
|
export interface UiSelectChangeEvent {
|
|
16
16
|
value: string | undefined
|
|
@@ -576,7 +576,7 @@ export default class UiSelect extends LitElement {
|
|
|
576
576
|
}
|
|
577
577
|
|
|
578
578
|
protected renderFocusRing(): TemplateResult {
|
|
579
|
-
return html`<
|
|
579
|
+
return html`<ui-focus-ring part="focus-ring" class="focus-ring" .control="${this as HTMLElement}"></ui-focus-ring>`
|
|
580
580
|
}
|
|
581
581
|
|
|
582
582
|
override render(): TemplateResult {
|
|
@@ -7,7 +7,9 @@ import { isDisabled, setDisabled } from '../../../lib/disabled.js'
|
|
|
7
7
|
import { UiElement } from '../../UiElement.js'
|
|
8
8
|
import type { SizingInfo, TabsPriority } from './Tabs.js'
|
|
9
9
|
import { Easing } from '../../motion/animation.js'
|
|
10
|
+
|
|
10
11
|
import '../../ripple/ui-ripple.js'
|
|
12
|
+
import '../../focus-ring/ui-focus-ring.js'
|
|
11
13
|
|
|
12
14
|
export default class UiTab extends UiElement {
|
|
13
15
|
get disabled(): boolean {
|
|
@@ -229,12 +231,12 @@ export default class UiTab extends UiElement {
|
|
|
229
231
|
}
|
|
230
232
|
|
|
231
233
|
protected renderFocusRing(): TemplateResult {
|
|
232
|
-
return html`<
|
|
234
|
+
return html`<ui-focus-ring
|
|
233
235
|
part="focus-ring"
|
|
234
236
|
class="focus-ring"
|
|
235
237
|
inward
|
|
236
238
|
.control="${this as HTMLElement}"
|
|
237
|
-
></
|
|
239
|
+
></ui-focus-ring>`
|
|
238
240
|
}
|
|
239
241
|
|
|
240
242
|
protected renderRipple(): TemplateResult {
|
|
@@ -85,10 +85,10 @@ export default class UiTabs extends LitElement {
|
|
|
85
85
|
//
|
|
86
86
|
// ```ts
|
|
87
87
|
// html`
|
|
88
|
-
// <
|
|
89
|
-
// <
|
|
90
|
-
// <
|
|
91
|
-
// </
|
|
88
|
+
// <ui-tabs .activeTabIndex=${1}>
|
|
89
|
+
// <ui-tab>First</ui-tab>
|
|
90
|
+
// <ui-tab>Second</ui-tab>
|
|
91
|
+
// </ui-tabs>
|
|
92
92
|
// `;
|
|
93
93
|
// ```
|
|
94
94
|
//
|