source: trip-planner-front/node_modules/@angular/material/bundles/material-grid-list-testing.umd.js@ 76712b2

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

initial commit

  • Property mode set to 100644
File size: 26.9 KB
Line 
1(function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/testing'), require('@angular/material/grid-list')) :
3 typeof define === 'function' && define.amd ? define('@angular/material/grid-list/testing', ['exports', '@angular/cdk/testing', '@angular/material/grid-list'], factory) :
4 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.gridList = global.ng.material.gridList || {}, global.ng.material.gridList.testing = {}), global.ng.cdk.testing, global.ng.material.gridList));
5}(this, (function (exports, testing, gridList) { '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 /** Harness for interacting with a standard `MatGridTitle` in tests. */
326 var MatGridTileHarness = /** @class */ (function (_super) {
327 __extends(MatGridTileHarness, _super);
328 function MatGridTileHarness() {
329 var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
330 _this._header = _this.locatorForOptional(".mat-grid-tile-header" /* HEADER */);
331 _this._footer = _this.locatorForOptional(".mat-grid-tile-footer" /* FOOTER */);
332 _this._avatar = _this.locatorForOptional('.mat-grid-avatar');
333 return _this;
334 }
335 /**
336 * Gets a `HarnessPredicate` that can be used to search for a `MatGridTileHarness`
337 * that meets certain criteria.
338 * @param options Options for filtering which dialog instances are considered a match.
339 * @return a `HarnessPredicate` configured with the given options.
340 */
341 MatGridTileHarness.with = function (options) {
342 if (options === void 0) { options = {}; }
343 return new testing.HarnessPredicate(MatGridTileHarness, options)
344 .addOption('headerText', options.headerText, function (harness, pattern) { return testing.HarnessPredicate.stringMatches(harness.getHeaderText(), pattern); })
345 .addOption('footerText', options.footerText, function (harness, pattern) { return testing.HarnessPredicate.stringMatches(harness.getFooterText(), pattern); });
346 };
347 /** Gets the amount of rows that the grid-tile takes up. */
348 MatGridTileHarness.prototype.getRowspan = function () {
349 return __awaiter(this, void 0, void 0, function () {
350 var _a;
351 return __generator(this, function (_b) {
352 switch (_b.label) {
353 case 0:
354 _a = Number;
355 return [4 /*yield*/, this.host()];
356 case 1: return [4 /*yield*/, (_b.sent()).getAttribute('rowspan')];
357 case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
358 }
359 });
360 });
361 };
362 /** Gets the amount of columns that the grid-tile takes up. */
363 MatGridTileHarness.prototype.getColspan = function () {
364 return __awaiter(this, void 0, void 0, function () {
365 var _a;
366 return __generator(this, function (_b) {
367 switch (_b.label) {
368 case 0:
369 _a = Number;
370 return [4 /*yield*/, this.host()];
371 case 1: return [4 /*yield*/, (_b.sent()).getAttribute('colspan')];
372 case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
373 }
374 });
375 });
376 };
377 /** Whether the grid-tile has a header. */
378 MatGridTileHarness.prototype.hasHeader = function () {
379 return __awaiter(this, void 0, void 0, function () {
380 return __generator(this, function (_a) {
381 switch (_a.label) {
382 case 0: return [4 /*yield*/, this._header()];
383 case 1: return [2 /*return*/, (_a.sent()) !== null];
384 }
385 });
386 });
387 };
388 /** Whether the grid-tile has a footer. */
389 MatGridTileHarness.prototype.hasFooter = function () {
390 return __awaiter(this, void 0, void 0, function () {
391 return __generator(this, function (_a) {
392 switch (_a.label) {
393 case 0: return [4 /*yield*/, this._footer()];
394 case 1: return [2 /*return*/, (_a.sent()) !== null];
395 }
396 });
397 });
398 };
399 /** Whether the grid-tile has an avatar. */
400 MatGridTileHarness.prototype.hasAvatar = function () {
401 return __awaiter(this, void 0, void 0, function () {
402 return __generator(this, function (_a) {
403 switch (_a.label) {
404 case 0: return [4 /*yield*/, this._avatar()];
405 case 1: return [2 /*return*/, (_a.sent()) !== null];
406 }
407 });
408 });
409 };
410 /** Gets the text of the header if present. */
411 MatGridTileHarness.prototype.getHeaderText = function () {
412 return __awaiter(this, void 0, void 0, function () {
413 var headerEl;
414 return __generator(this, function (_a) {
415 switch (_a.label) {
416 case 0: return [4 /*yield*/, this._header()];
417 case 1:
418 headerEl = _a.sent();
419 return [2 /*return*/, headerEl ? headerEl.text() : null];
420 }
421 });
422 });
423 };
424 /** Gets the text of the footer if present. */
425 MatGridTileHarness.prototype.getFooterText = function () {
426 return __awaiter(this, void 0, void 0, function () {
427 var headerEl;
428 return __generator(this, function (_a) {
429 switch (_a.label) {
430 case 0: return [4 /*yield*/, this._footer()];
431 case 1:
432 headerEl = _a.sent();
433 return [2 /*return*/, headerEl ? headerEl.text() : null];
434 }
435 });
436 });
437 };
438 return MatGridTileHarness;
439 }(testing.ContentContainerComponentHarness));
440 /** The selector for the host element of a `MatGridTile` instance. */
441 MatGridTileHarness.hostSelector = '.mat-grid-tile';
442
443 /** Harness for interacting with a standard `MatGridList` in tests. */
444 var MatGridListHarness = /** @class */ (function (_super) {
445 __extends(MatGridListHarness, _super);
446 function MatGridListHarness() {
447 var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
448 /**
449 * Tile coordinator that is used by the "MatGridList" for computing
450 * positions of tiles. We leverage the coordinator to provide an API
451 * for retrieving tiles based on visual tile positions.
452 */
453 _this._tileCoordinator = new gridList.ɵTileCoordinator();
454 return _this;
455 }
456 /**
457 * Gets a `HarnessPredicate` that can be used to search for a `MatGridListHarness`
458 * that meets certain criteria.
459 * @param options Options for filtering which dialog instances are considered a match.
460 * @return a `HarnessPredicate` configured with the given options.
461 */
462 MatGridListHarness.with = function (options) {
463 if (options === void 0) { options = {}; }
464 return new testing.HarnessPredicate(MatGridListHarness, options);
465 };
466 /** Gets all tiles of the grid-list. */
467 MatGridListHarness.prototype.getTiles = function (filters) {
468 if (filters === void 0) { filters = {}; }
469 return __awaiter(this, void 0, void 0, function () {
470 return __generator(this, function (_a) {
471 switch (_a.label) {
472 case 0: return [4 /*yield*/, this.locatorForAll(MatGridTileHarness.with(filters))()];
473 case 1: return [2 /*return*/, _a.sent()];
474 }
475 });
476 });
477 };
478 /** Gets the amount of columns of the grid-list. */
479 MatGridListHarness.prototype.getColumns = function () {
480 return __awaiter(this, void 0, void 0, function () {
481 var _a;
482 return __generator(this, function (_b) {
483 switch (_b.label) {
484 case 0:
485 _a = Number;
486 return [4 /*yield*/, this.host()];
487 case 1: return [4 /*yield*/, (_b.sent()).getAttribute('cols')];
488 case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
489 }
490 });
491 });
492 };
493 /**
494 * Gets a tile of the grid-list that is located at the given location.
495 * @param row Zero-based row index.
496 * @param column Zero-based column index.
497 */
498 MatGridListHarness.prototype.getTileAtPosition = function (_a) {
499 var row = _a.row, column = _a.column;
500 return __awaiter(this, void 0, void 0, function () {
501 var _a, tileHarnesses, columns, tileSpans, tiles, i, position, _b, rowspan, colspan;
502 var _this = this;
503 return __generator(this, function (_c) {
504 switch (_c.label) {
505 case 0: return [4 /*yield*/, testing.parallel(function () { return [_this.getTiles(), _this.getColumns()]; })];
506 case 1:
507 _a = __read.apply(void 0, [_c.sent(), 2]), tileHarnesses = _a[0], columns = _a[1];
508 tileSpans = tileHarnesses.map(function (t) { return testing.parallel(function () { return [t.getColspan(), t.getRowspan()]; }); });
509 return [4 /*yield*/, testing.parallel(function () { return tileSpans; })];
510 case 2:
511 tiles = (_c.sent())
512 .map(function (_a) {
513 var _b = __read(_a, 2), colspan = _b[0], rowspan = _b[1];
514 return ({ colspan: colspan, rowspan: rowspan });
515 });
516 // Update the tile coordinator to reflect the current column amount and
517 // rendered tiles. We update upon every call of this method since we do not
518 // know if tiles have been added, removed or updated (in terms of rowspan/colspan).
519 this._tileCoordinator.update(columns, tiles);
520 // The tile coordinator respects the colspan and rowspan for calculating the positions
521 // of tiles, but it does not create multiple position entries if a tile spans over multiple
522 // columns or rows. We want to provide an API where developers can retrieve a tile based on
523 // any position that lies within the visual tile boundaries. For example: If a tile spans
524 // over two columns, then the same tile should be returned for either column indices.
525 for (i = 0; i < this._tileCoordinator.positions.length; i++) {
526 position = this._tileCoordinator.positions[i];
527 _b = tiles[i], rowspan = _b.rowspan, colspan = _b.colspan;
528 // Return the tile harness if the given position visually resolves to the tile.
529 if (column >= position.col && column <= position.col + colspan - 1 && row >= position.row &&
530 row <= position.row + rowspan - 1) {
531 return [2 /*return*/, tileHarnesses[i]];
532 }
533 }
534 throw Error('Could not find tile at given position.');
535 }
536 });
537 });
538 };
539 return MatGridListHarness;
540 }(testing.ComponentHarness));
541 /** The selector for the host element of a `MatGridList` instance. */
542 MatGridListHarness.hostSelector = '.mat-grid-list';
543
544 /**
545 * @license
546 * Copyright Google LLC All Rights Reserved.
547 *
548 * Use of this source code is governed by an MIT-style license that can be
549 * found in the LICENSE file at https://angular.io/license
550 */
551
552 /**
553 * @license
554 * Copyright Google LLC All Rights Reserved.
555 *
556 * Use of this source code is governed by an MIT-style license that can be
557 * found in the LICENSE file at https://angular.io/license
558 */
559
560 exports.MatGridListHarness = MatGridListHarness;
561 exports.MatGridTileHarness = MatGridTileHarness;
562
563 Object.defineProperty(exports, '__esModule', { value: true });
564
565})));
566//# sourceMappingURL=material-grid-list-testing.umd.js.map
Note: See TracBrowser for help on using the repository browser.