source: trip-planner-front/node_modules/@angular/material/bundles/material-progress-spinner.umd.js@ 59329aa

Last change on this file since 59329aa was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 41.2 KB
Line 
1(function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/material/core'), require('@angular/cdk/coercion'), require('@angular/cdk/platform'), require('@angular/platform-browser/animations')) :
3 typeof define === 'function' && define.amd ? define('@angular/material/progress-spinner', ['exports', '@angular/core', '@angular/common', '@angular/material/core', '@angular/cdk/coercion', '@angular/cdk/platform', '@angular/platform-browser/animations'], factory) :
4 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.progressSpinner = {}), global.ng.core, global.ng.common, global.ng.material.core, global.ng.cdk.coercion, global.ng.cdk.platform, global.ng.platformBrowser.animations));
5}(this, (function (exports, core$1, common, core, coercion, platform, animations) { 'use strict';
6
7 /*! *****************************************************************************
8 Copyright (c) Microsoft Corporation.
9
10 Permission to use, copy, modify, and/or distribute this software for any
11 purpose with or without fee is hereby granted.
12
13 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14 REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15 AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16 INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17 LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 PERFORMANCE OF THIS SOFTWARE.
20 ***************************************************************************** */
21 /* global Reflect, Promise */
22 var extendStatics = function (d, b) {
23 extendStatics = Object.setPrototypeOf ||
24 ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
25 function (d, b) { for (var p in b)
26 if (Object.prototype.hasOwnProperty.call(b, p))
27 d[p] = b[p]; };
28 return extendStatics(d, b);
29 };
30 function __extends(d, b) {
31 if (typeof b !== "function" && b !== null)
32 throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
33 extendStatics(d, b);
34 function __() { this.constructor = d; }
35 d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
36 }
37 var __assign = function () {
38 __assign = Object.assign || function __assign(t) {
39 for (var s, i = 1, n = arguments.length; i < n; i++) {
40 s = arguments[i];
41 for (var p in s)
42 if (Object.prototype.hasOwnProperty.call(s, p))
43 t[p] = s[p];
44 }
45 return t;
46 };
47 return __assign.apply(this, arguments);
48 };
49 function __rest(s, e) {
50 var t = {};
51 for (var p in s)
52 if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
53 t[p] = s[p];
54 if (s != null && typeof Object.getOwnPropertySymbols === "function")
55 for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
56 if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
57 t[p[i]] = s[p[i]];
58 }
59 return t;
60 }
61 function __decorate(decorators, target, key, desc) {
62 var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
63 if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
64 r = Reflect.decorate(decorators, target, key, desc);
65 else
66 for (var i = decorators.length - 1; i >= 0; i--)
67 if (d = decorators[i])
68 r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
69 return c > 3 && r && Object.defineProperty(target, key, r), r;
70 }
71 function __param(paramIndex, decorator) {
72 return function (target, key) { decorator(target, key, paramIndex); };
73 }
74 function __metadata(metadataKey, metadataValue) {
75 if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
76 return Reflect.metadata(metadataKey, metadataValue);
77 }
78 function __awaiter(thisArg, _arguments, P, generator) {
79 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
80 return new (P || (P = Promise))(function (resolve, reject) {
81 function fulfilled(value) { try {
82 step(generator.next(value));
83 }
84 catch (e) {
85 reject(e);
86 } }
87 function rejected(value) { try {
88 step(generator["throw"](value));
89 }
90 catch (e) {
91 reject(e);
92 } }
93 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
94 step((generator = generator.apply(thisArg, _arguments || [])).next());
95 });
96 }
97 function __generator(thisArg, body) {
98 var _ = { label: 0, sent: function () { if (t[0] & 1)
99 throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
100 return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
101 function verb(n) { return function (v) { return step([n, v]); }; }
102 function step(op) {
103 if (f)
104 throw new TypeError("Generator is already executing.");
105 while (_)
106 try {
107 if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
108 return t;
109 if (y = 0, t)
110 op = [op[0] & 2, t.value];
111 switch (op[0]) {
112 case 0:
113 case 1:
114 t = op;
115 break;
116 case 4:
117 _.label++;
118 return { value: op[1], done: false };
119 case 5:
120 _.label++;
121 y = op[1];
122 op = [0];
123 continue;
124 case 7:
125 op = _.ops.pop();
126 _.trys.pop();
127 continue;
128 default:
129 if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
130 _ = 0;
131 continue;
132 }
133 if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
134 _.label = op[1];
135 break;
136 }
137 if (op[0] === 6 && _.label < t[1]) {
138 _.label = t[1];
139 t = op;
140 break;
141 }
142 if (t && _.label < t[2]) {
143 _.label = t[2];
144 _.ops.push(op);
145 break;
146 }
147 if (t[2])
148 _.ops.pop();
149 _.trys.pop();
150 continue;
151 }
152 op = body.call(thisArg, _);
153 }
154 catch (e) {
155 op = [6, e];
156 y = 0;
157 }
158 finally {
159 f = t = 0;
160 }
161 if (op[0] & 5)
162 throw op[1];
163 return { value: op[0] ? op[1] : void 0, done: true };
164 }
165 }
166 var __createBinding = Object.create ? (function (o, m, k, k2) {
167 if (k2 === undefined)
168 k2 = k;
169 Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
170 }) : (function (o, m, k, k2) {
171 if (k2 === undefined)
172 k2 = k;
173 o[k2] = m[k];
174 });
175 function __exportStar(m, o) {
176 for (var p in m)
177 if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
178 __createBinding(o, m, p);
179 }
180 function __values(o) {
181 var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
182 if (m)
183 return m.call(o);
184 if (o && typeof o.length === "number")
185 return {
186 next: function () {
187 if (o && i >= o.length)
188 o = void 0;
189 return { value: o && o[i++], done: !o };
190 }
191 };
192 throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
193 }
194 function __read(o, n) {
195 var m = typeof Symbol === "function" && o[Symbol.iterator];
196 if (!m)
197 return o;
198 var i = m.call(o), r, ar = [], e;
199 try {
200 while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
201 ar.push(r.value);
202 }
203 catch (error) {
204 e = { error: error };
205 }
206 finally {
207 try {
208 if (r && !r.done && (m = i["return"]))
209 m.call(i);
210 }
211 finally {
212 if (e)
213 throw e.error;
214 }
215 }
216 return ar;
217 }
218 /** @deprecated */
219 function __spread() {
220 for (var ar = [], i = 0; i < arguments.length; i++)
221 ar = ar.concat(__read(arguments[i]));
222 return ar;
223 }
224 /** @deprecated */
225 function __spreadArrays() {
226 for (var s = 0, i = 0, il = arguments.length; i < il; i++)
227 s += arguments[i].length;
228 for (var r = Array(s), k = 0, i = 0; i < il; i++)
229 for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
230 r[k] = a[j];
231 return r;
232 }
233 function __spreadArray(to, from, pack) {
234 if (pack || arguments.length === 2)
235 for (var i = 0, l = from.length, ar; i < l; i++) {
236 if (ar || !(i in from)) {
237 if (!ar)
238 ar = Array.prototype.slice.call(from, 0, i);
239 ar[i] = from[i];
240 }
241 }
242 return to.concat(ar || from);
243 }
244 function __await(v) {
245 return this instanceof __await ? (this.v = v, this) : new __await(v);
246 }
247 function __asyncGenerator(thisArg, _arguments, generator) {
248 if (!Symbol.asyncIterator)
249 throw new TypeError("Symbol.asyncIterator is not defined.");
250 var g = generator.apply(thisArg, _arguments || []), i, q = [];
251 return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
252 function verb(n) { if (g[n])
253 i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
254 function resume(n, v) { try {
255 step(g[n](v));
256 }
257 catch (e) {
258 settle(q[0][3], e);
259 } }
260 function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
261 function fulfill(value) { resume("next", value); }
262 function reject(value) { resume("throw", value); }
263 function settle(f, v) { if (f(v), q.shift(), q.length)
264 resume(q[0][0], q[0][1]); }
265 }
266 function __asyncDelegator(o) {
267 var i, p;
268 return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
269 function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
270 }
271 function __asyncValues(o) {
272 if (!Symbol.asyncIterator)
273 throw new TypeError("Symbol.asyncIterator is not defined.");
274 var m = o[Symbol.asyncIterator], i;
275 return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
276 function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
277 function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
278 }
279 function __makeTemplateObject(cooked, raw) {
280 if (Object.defineProperty) {
281 Object.defineProperty(cooked, "raw", { value: raw });
282 }
283 else {
284 cooked.raw = raw;
285 }
286 return cooked;
287 }
288 ;
289 var __setModuleDefault = Object.create ? (function (o, v) {
290 Object.defineProperty(o, "default", { enumerable: true, value: v });
291 }) : function (o, v) {
292 o["default"] = v;
293 };
294 function __importStar(mod) {
295 if (mod && mod.__esModule)
296 return mod;
297 var result = {};
298 if (mod != null)
299 for (var k in mod)
300 if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
301 __createBinding(result, mod, k);
302 __setModuleDefault(result, mod);
303 return result;
304 }
305 function __importDefault(mod) {
306 return (mod && mod.__esModule) ? mod : { default: mod };
307 }
308 function __classPrivateFieldGet(receiver, state, kind, f) {
309 if (kind === "a" && !f)
310 throw new TypeError("Private accessor was defined without a getter");
311 if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
312 throw new TypeError("Cannot read private member from an object whose class did not declare it");
313 return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
314 }
315 function __classPrivateFieldSet(receiver, state, value, kind, f) {
316 if (kind === "m")
317 throw new TypeError("Private method is not writable");
318 if (kind === "a" && !f)
319 throw new TypeError("Private accessor was defined without a setter");
320 if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
321 throw new TypeError("Cannot write private member to an object whose class did not declare it");
322 return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
323 }
324
325 /**
326 * Base reference size of the spinner.
327 * @docs-private
328 */
329 var BASE_SIZE = 100;
330 /**
331 * Base reference stroke width of the spinner.
332 * @docs-private
333 */
334 var BASE_STROKE_WIDTH = 10;
335 // Boilerplate for applying mixins to MatProgressSpinner.
336 /** @docs-private */
337 var _MatProgressSpinnerBase = core.mixinColor(/** @class */ (function () {
338 function class_1(_elementRef) {
339 this._elementRef = _elementRef;
340 }
341 return class_1;
342 }()), 'primary');
343 /** Injection token to be used to override the default options for `mat-progress-spinner`. */
344 var MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS = new core$1.InjectionToken('mat-progress-spinner-default-options', {
345 providedIn: 'root',
346 factory: MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY,
347 });
348 /** @docs-private */
349 function MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY() {
350 return { diameter: BASE_SIZE };
351 }
352 // .0001 percentage difference is necessary in order to avoid unwanted animation frames
353 // for example because the animation duration is 4 seconds, .1% accounts to 4ms
354 // which are enough to see the flicker described in
355 // https://github.com/angular/components/issues/8984
356 var INDETERMINATE_ANIMATION_TEMPLATE = "\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n";
357 /**
358 * `<mat-progress-spinner>` component.
359 */
360 var MatProgressSpinner = /** @class */ (function (_super) {
361 __extends(MatProgressSpinner, _super);
362 function MatProgressSpinner(elementRef, platform, _document, animationMode, defaults) {
363 var _this = _super.call(this, elementRef) || this;
364 _this._document = _document;
365 _this._diameter = BASE_SIZE;
366 _this._value = 0;
367 _this._fallbackAnimation = false;
368 /** Mode of the progress circle */
369 _this.mode = 'determinate';
370 var trackedDiameters = MatProgressSpinner._diameters;
371 _this._spinnerAnimationLabel = _this._getSpinnerAnimationLabel();
372 // The base size is already inserted via the component's structural styles. We still
373 // need to track it so we don't end up adding the same styles again.
374 if (!trackedDiameters.has(_document.head)) {
375 trackedDiameters.set(_document.head, new Set([BASE_SIZE]));
376 }
377 _this._fallbackAnimation = platform.EDGE || platform.TRIDENT;
378 _this._noopAnimations = animationMode === 'NoopAnimations' &&
379 (!!defaults && !defaults._forceAnimations);
380 if (defaults) {
381 if (defaults.diameter) {
382 _this.diameter = defaults.diameter;
383 }
384 if (defaults.strokeWidth) {
385 _this.strokeWidth = defaults.strokeWidth;
386 }
387 }
388 return _this;
389 }
390 Object.defineProperty(MatProgressSpinner.prototype, "diameter", {
391 /** The diameter of the progress spinner (will set width and height of svg). */
392 get: function () { return this._diameter; },
393 set: function (size) {
394 this._diameter = coercion.coerceNumberProperty(size);
395 this._spinnerAnimationLabel = this._getSpinnerAnimationLabel();
396 // If this is set before `ngOnInit`, the style root may not have been resolved yet.
397 if (!this._fallbackAnimation && this._styleRoot) {
398 this._attachStyleNode();
399 }
400 },
401 enumerable: false,
402 configurable: true
403 });
404 Object.defineProperty(MatProgressSpinner.prototype, "strokeWidth", {
405 /** Stroke width of the progress spinner. */
406 get: function () {
407 return this._strokeWidth || this.diameter / 10;
408 },
409 set: function (value) {
410 this._strokeWidth = coercion.coerceNumberProperty(value);
411 },
412 enumerable: false,
413 configurable: true
414 });
415 Object.defineProperty(MatProgressSpinner.prototype, "value", {
416 /** Value of the progress circle. */
417 get: function () {
418 return this.mode === 'determinate' ? this._value : 0;
419 },
420 set: function (newValue) {
421 this._value = Math.max(0, Math.min(100, coercion.coerceNumberProperty(newValue)));
422 },
423 enumerable: false,
424 configurable: true
425 });
426 MatProgressSpinner.prototype.ngOnInit = function () {
427 var element = this._elementRef.nativeElement;
428 // Note that we need to look up the root node in ngOnInit, rather than the constructor, because
429 // Angular seems to create the element outside the shadow root and then moves it inside, if the
430 // node is inside an `ngIf` and a ShadowDom-encapsulated component.
431 this._styleRoot = platform._getShadowRoot(element) || this._document.head;
432 this._attachStyleNode();
433 // On IE and Edge, we can't animate the `stroke-dashoffset`
434 // reliably so we fall back to a non-spec animation.
435 var animationClass = "mat-progress-spinner-indeterminate" + (this._fallbackAnimation ? '-fallback' : '') + "-animation";
436 element.classList.add(animationClass);
437 };
438 /** The radius of the spinner, adjusted for stroke width. */
439 MatProgressSpinner.prototype._getCircleRadius = function () {
440 return (this.diameter - BASE_STROKE_WIDTH) / 2;
441 };
442 /** The view box of the spinner's svg element. */
443 MatProgressSpinner.prototype._getViewBox = function () {
444 var viewBox = this._getCircleRadius() * 2 + this.strokeWidth;
445 return "0 0 " + viewBox + " " + viewBox;
446 };
447 /** The stroke circumference of the svg circle. */
448 MatProgressSpinner.prototype._getStrokeCircumference = function () {
449 return 2 * Math.PI * this._getCircleRadius();
450 };
451 /** The dash offset of the svg circle. */
452 MatProgressSpinner.prototype._getStrokeDashOffset = function () {
453 if (this.mode === 'determinate') {
454 return this._getStrokeCircumference() * (100 - this._value) / 100;
455 }
456 // In fallback mode set the circle to 80% and rotate it with CSS.
457 if (this._fallbackAnimation && this.mode === 'indeterminate') {
458 return this._getStrokeCircumference() * 0.2;
459 }
460 return null;
461 };
462 /** Stroke width of the circle in percent. */
463 MatProgressSpinner.prototype._getCircleStrokeWidth = function () {
464 return this.strokeWidth / this.diameter * 100;
465 };
466 /** Dynamically generates a style tag containing the correct animation for this diameter. */
467 MatProgressSpinner.prototype._attachStyleNode = function () {
468 var styleRoot = this._styleRoot;
469 var currentDiameter = this._diameter;
470 var diameters = MatProgressSpinner._diameters;
471 var diametersForElement = diameters.get(styleRoot);
472 if (!diametersForElement || !diametersForElement.has(currentDiameter)) {
473 var styleTag = this._document.createElement('style');
474 styleTag.setAttribute('mat-spinner-animation', this._spinnerAnimationLabel);
475 styleTag.textContent = this._getAnimationText();
476 styleRoot.appendChild(styleTag);
477 if (!diametersForElement) {
478 diametersForElement = new Set();
479 diameters.set(styleRoot, diametersForElement);
480 }
481 diametersForElement.add(currentDiameter);
482 }
483 };
484 /** Generates animation styles adjusted for the spinner's diameter. */
485 MatProgressSpinner.prototype._getAnimationText = function () {
486 var strokeCircumference = this._getStrokeCircumference();
487 return INDETERMINATE_ANIMATION_TEMPLATE
488 // Animation should begin at 5% and end at 80%
489 .replace(/START_VALUE/g, "" + 0.95 * strokeCircumference)
490 .replace(/END_VALUE/g, "" + 0.2 * strokeCircumference)
491 .replace(/DIAMETER/g, "" + this._spinnerAnimationLabel);
492 };
493 /** Returns the circle diameter formatted for use with the animation-name CSS property. */
494 MatProgressSpinner.prototype._getSpinnerAnimationLabel = function () {
495 // The string of a float point number will include a period ‘.’ character,
496 // which is not valid for a CSS animation-name.
497 return this.diameter.toString().replace('.', '_');
498 };
499 return MatProgressSpinner;
500 }(_MatProgressSpinnerBase));
501 /**
502 * Tracks diameters of existing instances to de-dupe generated styles (default d = 100).
503 * We need to keep track of which elements the diameters were attached to, because for
504 * elements in the Shadow DOM the style tags are attached to the shadow root, rather
505 * than the document head.
506 */
507 MatProgressSpinner._diameters = new WeakMap();
508 MatProgressSpinner.decorators = [
509 { type: core$1.Component, args: [{
510 selector: 'mat-progress-spinner',
511 exportAs: 'matProgressSpinner',
512 host: {
513 'role': 'progressbar',
514 'class': 'mat-progress-spinner',
515 // set tab index to -1 so screen readers will read the aria-label
516 // Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox
517 'tabindex': '-1',
518 '[class._mat-animation-noopable]': "_noopAnimations",
519 '[style.width.px]': 'diameter',
520 '[style.height.px]': 'diameter',
521 '[attr.aria-valuemin]': 'mode === "determinate" ? 0 : null',
522 '[attr.aria-valuemax]': 'mode === "determinate" ? 100 : null',
523 '[attr.aria-valuenow]': 'mode === "determinate" ? value : null',
524 '[attr.mode]': 'mode',
525 },
526 inputs: ['color'],
527 template: "<!--\n preserveAspectRatio of xMidYMid meet as the center of the viewport is the circle's\n center. The center of the circle will remain at the center of the mat-progress-spinner\n element containing the SVG. `focusable=\"false\"` prevents IE from allowing the user to\n tab into the SVG element.\n-->\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<svg\n [style.width.px]=\"diameter\"\n [style.height.px]=\"diameter\"\n [attr.viewBox]=\"_getViewBox()\"\n preserveAspectRatio=\"xMidYMid meet\"\n focusable=\"false\"\n [ngSwitch]=\"mode === 'indeterminate'\"\n aria-hidden=\"true\">\n\n <!--\n Technically we can reuse the same `circle` element, however Safari has an issue that breaks\n the SVG rendering in determinate mode, after switching between indeterminate and determinate.\n Using a different element avoids the issue. An alternative to this is adding `display: none`\n for a split second and then removing it when switching between modes, but it's hard to know\n for how long to hide the element and it can cause the UI to blink.\n -->\n <circle\n *ngSwitchCase=\"true\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.r]=\"_getCircleRadius()\"\n [style.animation-name]=\"'mat-progress-spinner-stroke-rotate-' + _spinnerAnimationLabel\"\n [style.stroke-dashoffset.px]=\"_getStrokeDashOffset()\"\n [style.stroke-dasharray.px]=\"_getStrokeCircumference()\"\n [style.stroke-width.%]=\"_getCircleStrokeWidth()\"></circle>\n\n <circle\n *ngSwitchCase=\"false\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.r]=\"_getCircleRadius()\"\n [style.stroke-dashoffset.px]=\"_getStrokeDashOffset()\"\n [style.stroke-dasharray.px]=\"_getStrokeCircumference()\"\n [style.stroke-width.%]=\"_getCircleStrokeWidth()\"></circle>\n</svg>\n",
528 changeDetection: core$1.ChangeDetectionStrategy.OnPush,
529 encapsulation: core$1.ViewEncapsulation.None,
530 styles: [".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n"]
531 },] }
532 ];
533 MatProgressSpinner.ctorParameters = function () { return [
534 { type: core$1.ElementRef },
535 { type: platform.Platform },
536 { type: undefined, decorators: [{ type: core$1.Optional }, { type: core$1.Inject, args: [common.DOCUMENT,] }] },
537 { type: String, decorators: [{ type: core$1.Optional }, { type: core$1.Inject, args: [animations.ANIMATION_MODULE_TYPE,] }] },
538 { type: undefined, decorators: [{ type: core$1.Inject, args: [MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,] }] }
539 ]; };
540 MatProgressSpinner.propDecorators = {
541 diameter: [{ type: core$1.Input }],
542 strokeWidth: [{ type: core$1.Input }],
543 mode: [{ type: core$1.Input }],
544 value: [{ type: core$1.Input }]
545 };
546 /**
547 * `<mat-spinner>` component.
548 *
549 * This is a component definition to be used as a convenience reference to create an
550 * indeterminate `<mat-progress-spinner>` instance.
551 */
552 var MatSpinner = /** @class */ (function (_super) {
553 __extends(MatSpinner, _super);
554 function MatSpinner(elementRef, platform, document, animationMode, defaults) {
555 var _this = _super.call(this, elementRef, platform, document, animationMode, defaults) || this;
556 _this.mode = 'indeterminate';
557 return _this;
558 }
559 return MatSpinner;
560 }(MatProgressSpinner));
561 MatSpinner.decorators = [
562 { type: core$1.Component, args: [{
563 selector: 'mat-spinner',
564 host: {
565 'role': 'progressbar',
566 'mode': 'indeterminate',
567 'class': 'mat-spinner mat-progress-spinner',
568 '[class._mat-animation-noopable]': "_noopAnimations",
569 '[style.width.px]': 'diameter',
570 '[style.height.px]': 'diameter',
571 },
572 inputs: ['color'],
573 template: "<!--\n preserveAspectRatio of xMidYMid meet as the center of the viewport is the circle's\n center. The center of the circle will remain at the center of the mat-progress-spinner\n element containing the SVG. `focusable=\"false\"` prevents IE from allowing the user to\n tab into the SVG element.\n-->\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<svg\n [style.width.px]=\"diameter\"\n [style.height.px]=\"diameter\"\n [attr.viewBox]=\"_getViewBox()\"\n preserveAspectRatio=\"xMidYMid meet\"\n focusable=\"false\"\n [ngSwitch]=\"mode === 'indeterminate'\"\n aria-hidden=\"true\">\n\n <!--\n Technically we can reuse the same `circle` element, however Safari has an issue that breaks\n the SVG rendering in determinate mode, after switching between indeterminate and determinate.\n Using a different element avoids the issue. An alternative to this is adding `display: none`\n for a split second and then removing it when switching between modes, but it's hard to know\n for how long to hide the element and it can cause the UI to blink.\n -->\n <circle\n *ngSwitchCase=\"true\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.r]=\"_getCircleRadius()\"\n [style.animation-name]=\"'mat-progress-spinner-stroke-rotate-' + _spinnerAnimationLabel\"\n [style.stroke-dashoffset.px]=\"_getStrokeDashOffset()\"\n [style.stroke-dasharray.px]=\"_getStrokeCircumference()\"\n [style.stroke-width.%]=\"_getCircleStrokeWidth()\"></circle>\n\n <circle\n *ngSwitchCase=\"false\"\n cx=\"50%\"\n cy=\"50%\"\n [attr.r]=\"_getCircleRadius()\"\n [style.stroke-dashoffset.px]=\"_getStrokeDashOffset()\"\n [style.stroke-dasharray.px]=\"_getStrokeCircumference()\"\n [style.stroke-width.%]=\"_getCircleStrokeWidth()\"></circle>\n</svg>\n",
574 changeDetection: core$1.ChangeDetectionStrategy.OnPush,
575 encapsulation: core$1.ViewEncapsulation.None,
576 styles: [".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n"]
577 },] }
578 ];
579 MatSpinner.ctorParameters = function () { return [
580 { type: core$1.ElementRef },
581 { type: platform.Platform },
582 { type: undefined, decorators: [{ type: core$1.Optional }, { type: core$1.Inject, args: [common.DOCUMENT,] }] },
583 { type: String, decorators: [{ type: core$1.Optional }, { type: core$1.Inject, args: [animations.ANIMATION_MODULE_TYPE,] }] },
584 { type: undefined, decorators: [{ type: core$1.Inject, args: [MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS,] }] }
585 ]; };
586
587 /**
588 * @license
589 * Copyright Google LLC All Rights Reserved.
590 *
591 * Use of this source code is governed by an MIT-style license that can be
592 * found in the LICENSE file at https://angular.io/license
593 */
594 var MatProgressSpinnerModule = /** @class */ (function () {
595 function MatProgressSpinnerModule() {
596 }
597 return MatProgressSpinnerModule;
598 }());
599 MatProgressSpinnerModule.decorators = [
600 { type: core$1.NgModule, args: [{
601 imports: [core.MatCommonModule, common.CommonModule],
602 exports: [
603 MatProgressSpinner,
604 MatSpinner,
605 core.MatCommonModule
606 ],
607 declarations: [
608 MatProgressSpinner,
609 MatSpinner
610 ],
611 },] }
612 ];
613
614 /**
615 * @license
616 * Copyright Google LLC All Rights Reserved.
617 *
618 * Use of this source code is governed by an MIT-style license that can be
619 * found in the LICENSE file at https://angular.io/license
620 */
621
622 /**
623 * Generated bundle index. Do not edit.
624 */
625
626 exports.MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS = MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS;
627 exports.MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY = MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY;
628 exports.MatProgressSpinner = MatProgressSpinner;
629 exports.MatProgressSpinnerModule = MatProgressSpinnerModule;
630 exports.MatSpinner = MatSpinner;
631
632 Object.defineProperty(exports, '__esModule', { value: true });
633
634})));
635//# sourceMappingURL=material-progress-spinner.umd.js.map
Note: See TracBrowser for help on using the repository browser.