@angular/material 12.2.7 → 12.2.8
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/badge/badge.d.ts +15 -14
- package/badge/index.metadata.json +1 -1
- package/bundles/material-badge.umd.js +77 -79
- package/bundles/material-badge.umd.js.map +1 -1
- package/bundles/material-core.umd.js +2 -2
- package/bundles/material-core.umd.js.map +1 -1
- package/bundles/material-expansion.umd.js +1 -1
- package/bundles/material-stepper.umd.js +2 -2
- package/core/index.metadata.json +1 -1
- package/core/typography/_typography.scss +7 -2
- package/esm2015/badge/badge.js +63 -80
- package/esm2015/core/common-behaviors/common-module.js +1 -1
- package/esm2015/core/version.js +1 -1
- package/esm2015/expansion/expansion-panel-header.js +1 -1
- package/esm2015/stepper/step-header.js +1 -1
- package/esm2015/stepper/stepper.js +1 -1
- package/expansion/index.metadata.json +1 -1
- package/fesm2015/badge.js +62 -79
- package/fesm2015/badge.js.map +1 -1
- package/fesm2015/core.js +2 -2
- package/fesm2015/core.js.map +1 -1
- package/fesm2015/expansion.js +1 -1
- package/fesm2015/stepper.js +2 -2
- package/package.json +2 -2
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.mjs +1 -1
- package/stepper/index.metadata.json +1 -1
package/fesm2015/badge.js
CHANGED
|
@@ -16,6 +16,7 @@ let nextId = 0;
|
|
|
16
16
|
/** @docs-private */
|
|
17
17
|
const _MatBadgeBase = mixinDisabled(class {
|
|
18
18
|
});
|
|
19
|
+
const BADGE_CONTENT_CLASS = 'mat-badge-content';
|
|
19
20
|
/** Directive to display a text badge. */
|
|
20
21
|
class MatBadge extends _MatBadgeBase {
|
|
21
22
|
constructor(_ngZone, _elementRef, _ariaDescriber, _renderer, _animationMode) {
|
|
@@ -25,8 +26,6 @@ class MatBadge extends _MatBadgeBase {
|
|
|
25
26
|
this._ariaDescriber = _ariaDescriber;
|
|
26
27
|
this._renderer = _renderer;
|
|
27
28
|
this._animationMode = _animationMode;
|
|
28
|
-
/** Whether the badge has any content. */
|
|
29
|
-
this._hasContent = false;
|
|
30
29
|
this._color = 'primary';
|
|
31
30
|
this._overlap = true;
|
|
32
31
|
/**
|
|
@@ -38,6 +37,8 @@ class MatBadge extends _MatBadgeBase {
|
|
|
38
37
|
this.size = 'medium';
|
|
39
38
|
/** Unique id for the badge */
|
|
40
39
|
this._id = nextId++;
|
|
40
|
+
/** Whether the OnInit lifecycle hook has run yet */
|
|
41
|
+
this._isInitialized = false;
|
|
41
42
|
if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
42
43
|
const nativeElement = _elementRef.nativeElement;
|
|
43
44
|
if (nativeElement.nodeType !== nativeElement.ELEMENT_NODE) {
|
|
@@ -56,18 +57,17 @@ class MatBadge extends _MatBadgeBase {
|
|
|
56
57
|
set overlap(val) {
|
|
57
58
|
this._overlap = coerceBooleanProperty(val);
|
|
58
59
|
}
|
|
60
|
+
/** The content for the badge */
|
|
61
|
+
get content() {
|
|
62
|
+
return this._content;
|
|
63
|
+
}
|
|
64
|
+
set content(newContent) {
|
|
65
|
+
this._updateRenderedContent(newContent);
|
|
66
|
+
}
|
|
59
67
|
/** Message used to describe the decorated element via aria-describedby */
|
|
60
68
|
get description() { return this._description; }
|
|
61
69
|
set description(newDescription) {
|
|
62
|
-
|
|
63
|
-
const badgeElement = this._badgeElement;
|
|
64
|
-
this._updateHostAriaDescription(newDescription, this._description);
|
|
65
|
-
this._description = newDescription;
|
|
66
|
-
if (badgeElement) {
|
|
67
|
-
newDescription ? badgeElement.setAttribute('aria-label', newDescription) :
|
|
68
|
-
badgeElement.removeAttribute('aria-label');
|
|
69
|
-
}
|
|
70
|
-
}
|
|
70
|
+
this._updateHostAriaDescription(newDescription);
|
|
71
71
|
}
|
|
72
72
|
/** Whether the badge is hidden. */
|
|
73
73
|
get hidden() { return this._hidden; }
|
|
@@ -82,60 +82,44 @@ class MatBadge extends _MatBadgeBase {
|
|
|
82
82
|
isAfter() {
|
|
83
83
|
return this.position.indexOf('before') === -1;
|
|
84
84
|
}
|
|
85
|
-
ngOnChanges(changes) {
|
|
86
|
-
const contentChange = changes['content'];
|
|
87
|
-
if (contentChange) {
|
|
88
|
-
const value = contentChange.currentValue;
|
|
89
|
-
this._hasContent = value != null && `${value}`.trim().length > 0;
|
|
90
|
-
this._updateTextContent();
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
ngOnDestroy() {
|
|
94
|
-
const badgeElement = this._badgeElement;
|
|
95
|
-
if (badgeElement) {
|
|
96
|
-
if (this.description) {
|
|
97
|
-
this._ariaDescriber.removeDescription(badgeElement, this.description);
|
|
98
|
-
}
|
|
99
|
-
// When creating a badge through the Renderer, Angular will keep it in an index.
|
|
100
|
-
// We have to destroy it ourselves, otherwise it'll be retained in memory.
|
|
101
|
-
if (this._renderer.destroyNode) {
|
|
102
|
-
this._renderer.destroyNode(badgeElement);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
85
|
/**
|
|
107
|
-
* Gets the element into which the badge's content is being rendered.
|
|
108
|
-
*
|
|
86
|
+
* Gets the element into which the badge's content is being rendered. Undefined if the element
|
|
87
|
+
* hasn't been created (e.g. if the badge doesn't have content).
|
|
109
88
|
*/
|
|
110
89
|
getBadgeElement() {
|
|
111
90
|
return this._badgeElement;
|
|
112
91
|
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
92
|
+
ngOnInit() {
|
|
93
|
+
// We may have server-side rendered badge that we need to clear.
|
|
94
|
+
// We need to do this in ngOnInit because the full content of the component
|
|
95
|
+
// on which the badge is attached won't necessarily be in the DOM until this point.
|
|
96
|
+
this._clearExistingBadges();
|
|
97
|
+
if (this.content && !this._badgeElement) {
|
|
116
98
|
this._badgeElement = this._createBadgeElement();
|
|
99
|
+
this._updateRenderedContent(this.content);
|
|
117
100
|
}
|
|
118
|
-
|
|
119
|
-
|
|
101
|
+
this._isInitialized = true;
|
|
102
|
+
}
|
|
103
|
+
ngOnDestroy() {
|
|
104
|
+
// ViewEngine only: when creating a badge through the Renderer, Angular remembers its index.
|
|
105
|
+
// We have to destroy it ourselves, otherwise it'll be retained in memory.
|
|
106
|
+
if (this._renderer.destroyNode) {
|
|
107
|
+
this._renderer.destroyNode(this._badgeElement);
|
|
120
108
|
}
|
|
121
|
-
|
|
109
|
+
this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this.description);
|
|
122
110
|
}
|
|
123
111
|
/** Creates the badge element */
|
|
124
112
|
_createBadgeElement() {
|
|
125
113
|
const badgeElement = this._renderer.createElement('span');
|
|
126
114
|
const activeClass = 'mat-badge-active';
|
|
127
|
-
const contentClass = 'mat-badge-content';
|
|
128
|
-
// Clear any existing badges which may have persisted from a server-side render.
|
|
129
|
-
this._clearExistingBadges(contentClass);
|
|
130
115
|
badgeElement.setAttribute('id', `mat-badge-content-${this._id}`);
|
|
131
|
-
|
|
132
|
-
|
|
116
|
+
// The badge is aria-hidden because we don't want it to appear in the page's navigation
|
|
117
|
+
// flow. Instead, we use the badge to describe the decorated element with aria-describedby.
|
|
118
|
+
badgeElement.setAttribute('aria-hidden', 'true');
|
|
119
|
+
badgeElement.classList.add(BADGE_CONTENT_CLASS);
|
|
133
120
|
if (this._animationMode === 'NoopAnimations') {
|
|
134
121
|
badgeElement.classList.add('_mat-animation-noopable');
|
|
135
122
|
}
|
|
136
|
-
if (this.description) {
|
|
137
|
-
badgeElement.setAttribute('aria-label', this.description);
|
|
138
|
-
}
|
|
139
123
|
this._elementRef.nativeElement.appendChild(badgeElement);
|
|
140
124
|
// animate in after insertion
|
|
141
125
|
if (typeof requestAnimationFrame === 'function' && this._animationMode !== 'NoopAnimations') {
|
|
@@ -150,48 +134,47 @@ class MatBadge extends _MatBadgeBase {
|
|
|
150
134
|
}
|
|
151
135
|
return badgeElement;
|
|
152
136
|
}
|
|
153
|
-
/**
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
137
|
+
/** Update the text content of the badge element in the DOM, creating the element if necessary. */
|
|
138
|
+
_updateRenderedContent(newContent) {
|
|
139
|
+
const newContentNormalized = `${newContent !== null && newContent !== void 0 ? newContent : ''}`.trim();
|
|
140
|
+
// Don't create the badge element if the directive isn't initialized because we want to
|
|
141
|
+
// append the badge element to the *end* of the host element's content for backwards
|
|
142
|
+
// compatibility.
|
|
143
|
+
if (this._isInitialized && newContentNormalized && !this._badgeElement) {
|
|
144
|
+
this._badgeElement = this._createBadgeElement();
|
|
159
145
|
}
|
|
146
|
+
if (this._badgeElement) {
|
|
147
|
+
this._badgeElement.textContent = newContentNormalized;
|
|
148
|
+
}
|
|
149
|
+
this._content = newContentNormalized;
|
|
150
|
+
}
|
|
151
|
+
/** Updates the host element's aria description via AriaDescriber. */
|
|
152
|
+
_updateHostAriaDescription(newDescription) {
|
|
153
|
+
this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this.description);
|
|
160
154
|
if (newDescription) {
|
|
161
|
-
this._ariaDescriber.describe(
|
|
155
|
+
this._ariaDescriber.describe(this._elementRef.nativeElement, newDescription);
|
|
162
156
|
}
|
|
157
|
+
this._description = newDescription;
|
|
163
158
|
}
|
|
164
159
|
/** Adds css theme class given the color to the component host */
|
|
165
160
|
_setColor(colorPalette) {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
if (colorPalette) {
|
|
172
|
-
classList.add(`mat-badge-${colorPalette}`);
|
|
173
|
-
}
|
|
161
|
+
const classList = this._elementRef.nativeElement.classList;
|
|
162
|
+
classList.remove(`mat-badge-${this._color}`);
|
|
163
|
+
if (colorPalette) {
|
|
164
|
+
classList.add(`mat-badge-${colorPalette}`);
|
|
174
165
|
}
|
|
175
166
|
}
|
|
176
167
|
/** Clears any existing badges that might be left over from server-side rendering. */
|
|
177
|
-
_clearExistingBadges(
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
element.removeChild(currentChild);
|
|
168
|
+
_clearExistingBadges() {
|
|
169
|
+
// Only check direct children of this host element in order to avoid deleting
|
|
170
|
+
// any badges that might exist in descendant elements.
|
|
171
|
+
const badges = this._elementRef.nativeElement.querySelectorAll(`:scope > .${BADGE_CONTENT_CLASS}`);
|
|
172
|
+
for (const badgeElement of Array.from(badges)) {
|
|
173
|
+
if (badgeElement !== this._badgeElement) {
|
|
174
|
+
badgeElement.remove();
|
|
185
175
|
}
|
|
186
176
|
}
|
|
187
177
|
}
|
|
188
|
-
/** Gets the string representation of the badge content. */
|
|
189
|
-
_stringifyContent() {
|
|
190
|
-
// Convert null and undefined to an empty string which is consistent
|
|
191
|
-
// with how Angular handles them in inside template interpolations.
|
|
192
|
-
const content = this.content;
|
|
193
|
-
return content == null ? '' : `${content}`;
|
|
194
|
-
}
|
|
195
178
|
}
|
|
196
179
|
MatBadge.decorators = [
|
|
197
180
|
{ type: Directive, args: [{
|
|
@@ -207,7 +190,7 @@ MatBadge.decorators = [
|
|
|
207
190
|
'[class.mat-badge-small]': 'size === "small"',
|
|
208
191
|
'[class.mat-badge-medium]': 'size === "medium"',
|
|
209
192
|
'[class.mat-badge-large]': 'size === "large"',
|
|
210
|
-
'[class.mat-badge-hidden]': 'hidden || !
|
|
193
|
+
'[class.mat-badge-hidden]': 'hidden || !content',
|
|
211
194
|
'[class.mat-badge-disabled]': 'disabled',
|
|
212
195
|
},
|
|
213
196
|
},] }
|
package/fesm2015/badge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"badge.js","sources":["../../../../../../src/material/badge/badge.ts","../../../../../../src/material/badge/badge-module.ts","../../../../../../src/material/badge/public-api.ts","../../../../../../src/material/badge/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {AriaDescriber} from '@angular/cdk/a11y';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {\n Directive,\n ElementRef,\n Inject,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n Optional,\n Renderer2,\n SimpleChanges,\n} from '@angular/core';\nimport {CanDisable, mixinDisabled, ThemePalette} from '@angular/material/core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\n\n\nlet nextId = 0;\n\n// Boilerplate for applying mixins to MatBadge.\n/** @docs-private */\nconst _MatBadgeBase = mixinDisabled(class {});\n\n/** Allowed position options for matBadgePosition */\nexport type MatBadgePosition =\n 'above after' | 'above before' | 'below before' | 'below after' |\n 'before' | 'after' | 'above' | 'below';\n\n/** Allowed size options for matBadgeSize */\nexport type MatBadgeSize = 'small' | 'medium' | 'large';\n\n/** Directive to display a text badge. */\n@Directive({\n selector: '[matBadge]',\n inputs: ['disabled: matBadgeDisabled'],\n host: {\n 'class': 'mat-badge',\n '[class.mat-badge-overlap]': 'overlap',\n '[class.mat-badge-above]': 'isAbove()',\n '[class.mat-badge-below]': '!isAbove()',\n '[class.mat-badge-before]': '!isAfter()',\n '[class.mat-badge-after]': 'isAfter()',\n '[class.mat-badge-small]': 'size === \"small\"',\n '[class.mat-badge-medium]': 'size === \"medium\"',\n '[class.mat-badge-large]': 'size === \"large\"',\n '[class.mat-badge-hidden]': 'hidden || !_hasContent',\n '[class.mat-badge-disabled]': 'disabled',\n },\n})\nexport class MatBadge extends _MatBadgeBase implements OnDestroy, OnChanges, CanDisable {\n /** Whether the badge has any content. */\n _hasContent = false;\n\n /** The color of the badge. Can be `primary`, `accent`, or `warn`. */\n @Input('matBadgeColor')\n get color(): ThemePalette { return this._color; }\n set color(value: ThemePalette) {\n this._setColor(value);\n this._color = value;\n }\n private _color: ThemePalette = 'primary';\n\n /** Whether the badge should overlap its contents or not */\n @Input('matBadgeOverlap')\n get overlap(): boolean { return this._overlap; }\n set overlap(val: boolean) {\n this._overlap = coerceBooleanProperty(val);\n }\n private _overlap: boolean = true;\n\n /**\n * Position the badge should reside.\n * Accepts any combination of 'above'|'below' and 'before'|'after'\n */\n @Input('matBadgePosition') position: MatBadgePosition = 'above after';\n\n /** The content for the badge */\n @Input('matBadge') content: string | number | undefined | null;\n\n /** Message used to describe the decorated element via aria-describedby */\n @Input('matBadgeDescription')\n get description(): string { return this._description; }\n set description(newDescription: string) {\n if (newDescription !== this._description) {\n const badgeElement = this._badgeElement;\n this._updateHostAriaDescription(newDescription, this._description);\n this._description = newDescription;\n\n if (badgeElement) {\n newDescription ? badgeElement.setAttribute('aria-label', newDescription) :\n badgeElement.removeAttribute('aria-label');\n }\n }\n }\n private _description: string;\n\n /** Size of the badge. Can be 'small', 'medium', or 'large'. */\n @Input('matBadgeSize') size: MatBadgeSize = 'medium';\n\n /** Whether the badge is hidden. */\n @Input('matBadgeHidden')\n get hidden(): boolean { return this._hidden; }\n set hidden(val: boolean) {\n this._hidden = coerceBooleanProperty(val);\n }\n private _hidden: boolean;\n\n /** Unique id for the badge */\n _id: number = nextId++;\n\n private _badgeElement: HTMLElement | undefined;\n\n constructor(\n private _ngZone: NgZone,\n private _elementRef: ElementRef<HTMLElement>,\n private _ariaDescriber: AriaDescriber,\n private _renderer: Renderer2,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) private _animationMode?: string) {\n super();\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n const nativeElement = _elementRef.nativeElement;\n if (nativeElement.nodeType !== nativeElement.ELEMENT_NODE) {\n throw Error('matBadge must be attached to an element node.');\n }\n }\n }\n\n /** Whether the badge is above the host or not */\n isAbove(): boolean {\n return this.position.indexOf('below') === -1;\n }\n\n /** Whether the badge is after the host or not */\n isAfter(): boolean {\n return this.position.indexOf('before') === -1;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const contentChange = changes['content'];\n\n if (contentChange) {\n const value = contentChange.currentValue;\n this._hasContent = value != null && `${value}`.trim().length > 0;\n this._updateTextContent();\n }\n }\n\n ngOnDestroy() {\n const badgeElement = this._badgeElement;\n\n if (badgeElement) {\n if (this.description) {\n this._ariaDescriber.removeDescription(badgeElement, this.description);\n }\n\n // When creating a badge through the Renderer, Angular will keep it in an index.\n // We have to destroy it ourselves, otherwise it'll be retained in memory.\n if (this._renderer.destroyNode) {\n this._renderer.destroyNode(badgeElement);\n }\n }\n }\n\n /**\n * Gets the element into which the badge's content is being rendered.\n * Undefined if the element hasn't been created (e.g. if the badge doesn't have content).\n */\n getBadgeElement(): HTMLElement | undefined {\n return this._badgeElement;\n }\n\n /** Injects a span element into the DOM with the content. */\n private _updateTextContent(): HTMLSpanElement {\n if (!this._badgeElement) {\n this._badgeElement = this._createBadgeElement();\n } else {\n this._badgeElement.textContent = this._stringifyContent();\n }\n return this._badgeElement;\n }\n\n /** Creates the badge element */\n private _createBadgeElement(): HTMLElement {\n const badgeElement = this._renderer.createElement('span');\n const activeClass = 'mat-badge-active';\n const contentClass = 'mat-badge-content';\n\n // Clear any existing badges which may have persisted from a server-side render.\n this._clearExistingBadges(contentClass);\n badgeElement.setAttribute('id', `mat-badge-content-${this._id}`);\n badgeElement.classList.add(contentClass);\n badgeElement.textContent = this._stringifyContent();\n\n if (this._animationMode === 'NoopAnimations') {\n badgeElement.classList.add('_mat-animation-noopable');\n }\n\n if (this.description) {\n badgeElement.setAttribute('aria-label', this.description);\n }\n\n this._elementRef.nativeElement.appendChild(badgeElement);\n\n // animate in after insertion\n if (typeof requestAnimationFrame === 'function' && this._animationMode !== 'NoopAnimations') {\n this._ngZone.runOutsideAngular(() => {\n requestAnimationFrame(() => {\n badgeElement.classList.add(activeClass);\n });\n });\n } else {\n badgeElement.classList.add(activeClass);\n }\n\n return badgeElement;\n }\n\n /** Sets the aria-label property on the element */\n private _updateHostAriaDescription(newDescription: string, oldDescription: string): void {\n // ensure content available before setting label\n const content = this._updateTextContent();\n\n if (oldDescription) {\n this._ariaDescriber.removeDescription(content, oldDescription);\n }\n\n if (newDescription) {\n this._ariaDescriber.describe(content, newDescription);\n }\n }\n\n /** Adds css theme class given the color to the component host */\n private _setColor(colorPalette: ThemePalette) {\n if (colorPalette !== this._color) {\n const classList = this._elementRef.nativeElement.classList;\n if (this._color) {\n classList.remove(`mat-badge-${this._color}`);\n }\n if (colorPalette) {\n classList.add(`mat-badge-${colorPalette}`);\n }\n }\n }\n\n /** Clears any existing badges that might be left over from server-side rendering. */\n private _clearExistingBadges(cssClass: string) {\n const element = this._elementRef.nativeElement;\n let childCount = element.children.length;\n\n // Use a reverse while, because we'll be removing elements from the list as we're iterating.\n while (childCount--) {\n const currentChild = element.children[childCount];\n\n if (currentChild.classList.contains(cssClass)) {\n element.removeChild(currentChild);\n }\n }\n }\n\n /** Gets the string representation of the badge content. */\n private _stringifyContent(): string {\n // Convert null and undefined to an empty string which is consistent\n // with how Angular handles them in inside template interpolations.\n const content = this.content;\n return content == null ? '' : `${content}`;\n }\n\n static ngAcceptInputType_disabled: BooleanInput;\n static ngAcceptInputType_hidden: BooleanInput;\n static ngAcceptInputType_overlap: BooleanInput;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {A11yModule} from '@angular/cdk/a11y';\nimport {MatBadge} from './badge';\n\n\n@NgModule({\n imports: [\n A11yModule,\n MatCommonModule\n ],\n exports: [MatBadge, MatCommonModule],\n declarations: [MatBadge],\n})\nexport class MatBadgeModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './badge-module';\nexport * from './badge';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"badge.js","sources":["../../../../../../src/material/badge/badge.ts","../../../../../../src/material/badge/badge-module.ts","../../../../../../src/material/badge/public-api.ts","../../../../../../src/material/badge/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {AriaDescriber} from '@angular/cdk/a11y';\nimport {BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {\n Directive,\n ElementRef,\n Inject,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport {CanDisable, mixinDisabled, ThemePalette} from '@angular/material/core';\nimport {ANIMATION_MODULE_TYPE} from '@angular/platform-browser/animations';\n\n\nlet nextId = 0;\n\n// Boilerplate for applying mixins to MatBadge.\n/** @docs-private */\nconst _MatBadgeBase = mixinDisabled(class {});\n\n/** Allowed position options for matBadgePosition */\nexport type MatBadgePosition =\n 'above after' | 'above before' | 'below before' | 'below after' |\n 'before' | 'after' | 'above' | 'below';\n\n/** Allowed size options for matBadgeSize */\nexport type MatBadgeSize = 'small' | 'medium' | 'large';\n\nconst BADGE_CONTENT_CLASS = 'mat-badge-content';\n\n/** Directive to display a text badge. */\n@Directive({\n selector: '[matBadge]',\n inputs: ['disabled: matBadgeDisabled'],\n host: {\n 'class': 'mat-badge',\n '[class.mat-badge-overlap]': 'overlap',\n '[class.mat-badge-above]': 'isAbove()',\n '[class.mat-badge-below]': '!isAbove()',\n '[class.mat-badge-before]': '!isAfter()',\n '[class.mat-badge-after]': 'isAfter()',\n '[class.mat-badge-small]': 'size === \"small\"',\n '[class.mat-badge-medium]': 'size === \"medium\"',\n '[class.mat-badge-large]': 'size === \"large\"',\n '[class.mat-badge-hidden]': 'hidden || !content',\n '[class.mat-badge-disabled]': 'disabled',\n },\n})\nexport class MatBadge extends _MatBadgeBase implements OnInit, OnDestroy, CanDisable {\n /** The color of the badge. Can be `primary`, `accent`, or `warn`. */\n @Input('matBadgeColor')\n get color(): ThemePalette { return this._color; }\n set color(value: ThemePalette) {\n this._setColor(value);\n this._color = value;\n }\n private _color: ThemePalette = 'primary';\n\n /** Whether the badge should overlap its contents or not */\n @Input('matBadgeOverlap')\n get overlap(): boolean { return this._overlap; }\n set overlap(val: boolean) {\n this._overlap = coerceBooleanProperty(val);\n }\n private _overlap: boolean = true;\n\n /**\n * Position the badge should reside.\n * Accepts any combination of 'above'|'below' and 'before'|'after'\n */\n @Input('matBadgePosition') position: MatBadgePosition = 'above after';\n\n /** The content for the badge */\n @Input('matBadge')\n get content(): string | number | undefined | null {\n return this._content;\n }\n set content(newContent: string | number | undefined | null) {\n this._updateRenderedContent(newContent);\n }\n private _content: string | number | undefined | null;\n\n /** Message used to describe the decorated element via aria-describedby */\n @Input('matBadgeDescription')\n get description(): string { return this._description; }\n set description(newDescription: string) {\n this._updateHostAriaDescription(newDescription);\n }\n private _description: string;\n\n /** Size of the badge. Can be 'small', 'medium', or 'large'. */\n @Input('matBadgeSize') size: MatBadgeSize = 'medium';\n\n /** Whether the badge is hidden. */\n @Input('matBadgeHidden')\n get hidden(): boolean { return this._hidden; }\n set hidden(val: boolean) {\n this._hidden = coerceBooleanProperty(val);\n }\n private _hidden: boolean;\n\n /** Unique id for the badge */\n _id: number = nextId++;\n\n /** Visible badge element. */\n private _badgeElement: HTMLElement | undefined;\n\n /** Whether the OnInit lifecycle hook has run yet */\n private _isInitialized = false;\n\n constructor(\n private _ngZone: NgZone,\n private _elementRef: ElementRef<HTMLElement>,\n private _ariaDescriber: AriaDescriber,\n private _renderer: Renderer2,\n @Optional() @Inject(ANIMATION_MODULE_TYPE) private _animationMode?: string) {\n super();\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n const nativeElement = _elementRef.nativeElement;\n if (nativeElement.nodeType !== nativeElement.ELEMENT_NODE) {\n throw Error('matBadge must be attached to an element node.');\n }\n }\n }\n\n /** Whether the badge is above the host or not */\n isAbove(): boolean {\n return this.position.indexOf('below') === -1;\n }\n\n /** Whether the badge is after the host or not */\n isAfter(): boolean {\n return this.position.indexOf('before') === -1;\n }\n\n /**\n * Gets the element into which the badge's content is being rendered. Undefined if the element\n * hasn't been created (e.g. if the badge doesn't have content).\n */\n getBadgeElement(): HTMLElement | undefined {\n return this._badgeElement;\n }\n\n ngOnInit() {\n // We may have server-side rendered badge that we need to clear.\n // We need to do this in ngOnInit because the full content of the component\n // on which the badge is attached won't necessarily be in the DOM until this point.\n this._clearExistingBadges();\n\n if (this.content && !this._badgeElement) {\n this._badgeElement = this._createBadgeElement();\n this._updateRenderedContent(this.content);\n }\n\n this._isInitialized = true;\n }\n\n ngOnDestroy() {\n // ViewEngine only: when creating a badge through the Renderer, Angular remembers its index.\n // We have to destroy it ourselves, otherwise it'll be retained in memory.\n if (this._renderer.destroyNode) {\n this._renderer.destroyNode(this._badgeElement);\n }\n\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this.description);\n }\n\n /** Creates the badge element */\n private _createBadgeElement(): HTMLElement {\n const badgeElement = this._renderer.createElement('span');\n const activeClass = 'mat-badge-active';\n\n badgeElement.setAttribute('id', `mat-badge-content-${this._id}`);\n\n // The badge is aria-hidden because we don't want it to appear in the page's navigation\n // flow. Instead, we use the badge to describe the decorated element with aria-describedby.\n badgeElement.setAttribute('aria-hidden', 'true');\n badgeElement.classList.add(BADGE_CONTENT_CLASS);\n\n if (this._animationMode === 'NoopAnimations') {\n badgeElement.classList.add('_mat-animation-noopable');\n }\n\n this._elementRef.nativeElement.appendChild(badgeElement);\n\n // animate in after insertion\n if (typeof requestAnimationFrame === 'function' && this._animationMode !== 'NoopAnimations') {\n this._ngZone.runOutsideAngular(() => {\n requestAnimationFrame(() => {\n badgeElement.classList.add(activeClass);\n });\n });\n } else {\n badgeElement.classList.add(activeClass);\n }\n\n return badgeElement;\n }\n\n /** Update the text content of the badge element in the DOM, creating the element if necessary. */\n private _updateRenderedContent(newContent: string | number | undefined | null): void {\n const newContentNormalized: string = `${newContent ?? ''}`.trim();\n\n // Don't create the badge element if the directive isn't initialized because we want to\n // append the badge element to the *end* of the host element's content for backwards\n // compatibility.\n if (this._isInitialized && newContentNormalized && !this._badgeElement) {\n this._badgeElement = this._createBadgeElement();\n }\n\n if (this._badgeElement) {\n this._badgeElement.textContent = newContentNormalized;\n }\n\n this._content = newContentNormalized;\n }\n\n /** Updates the host element's aria description via AriaDescriber. */\n private _updateHostAriaDescription(newDescription: string): void {\n this._ariaDescriber.removeDescription(this._elementRef.nativeElement, this.description);\n if (newDescription) {\n this._ariaDescriber.describe(this._elementRef.nativeElement, newDescription);\n }\n this._description = newDescription;\n }\n\n /** Adds css theme class given the color to the component host */\n private _setColor(colorPalette: ThemePalette) {\n const classList = this._elementRef.nativeElement.classList;\n classList.remove(`mat-badge-${this._color}`);\n if (colorPalette) {\n classList.add(`mat-badge-${colorPalette}`);\n }\n }\n\n /** Clears any existing badges that might be left over from server-side rendering. */\n private _clearExistingBadges() {\n // Only check direct children of this host element in order to avoid deleting\n // any badges that might exist in descendant elements.\n const badges =\n this._elementRef.nativeElement.querySelectorAll(`:scope > .${BADGE_CONTENT_CLASS}`);\n for (const badgeElement of Array.from(badges)) {\n if (badgeElement !== this._badgeElement) {\n badgeElement.remove();\n }\n }\n }\n\n static ngAcceptInputType_disabled: BooleanInput;\n static ngAcceptInputType_hidden: BooleanInput;\n static ngAcceptInputType_overlap: BooleanInput;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '@angular/material/core';\nimport {A11yModule} from '@angular/cdk/a11y';\nimport {MatBadge} from './badge';\n\n\n@NgModule({\n imports: [\n A11yModule,\n MatCommonModule\n ],\n exports: [MatBadge, MatCommonModule],\n declarations: [MatBadge],\n})\nexport class MatBadgeModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './badge-module';\nexport * from './badge';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/fesm2015/core.js
CHANGED
|
@@ -19,7 +19,7 @@ import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
|
|
|
19
19
|
* found in the LICENSE file at https://angular.io/license
|
|
20
20
|
*/
|
|
21
21
|
/** Current version of Angular Material. */
|
|
22
|
-
const VERSION$1 = new Version('12.2.
|
|
22
|
+
const VERSION$1 = new Version('12.2.8');
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
25
|
* @license
|
|
@@ -53,7 +53,7 @@ AnimationDurations.EXITING = '195ms';
|
|
|
53
53
|
// i.e. avoid core to depend on the @angular/material primary entry-point
|
|
54
54
|
// Can be removed once the Material primary entry-point no longer
|
|
55
55
|
// re-exports all secondary entry-points
|
|
56
|
-
const VERSION = new Version('12.2.
|
|
56
|
+
const VERSION = new Version('12.2.8');
|
|
57
57
|
/** @docs-private */
|
|
58
58
|
function MATERIAL_SANITY_CHECKS_FACTORY() {
|
|
59
59
|
return true;
|