source: trip-planner-front/node_modules/@angular/material/bundles/material-form-field-testing.umd.js@ eed0bf8

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

initial commit

  • Property mode set to 100644
File size: 34.6 KB
Line 
1(function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/material/form-field/testing/control'), require('@angular/cdk/testing'), require('@angular/material/datepicker/testing'), require('@angular/material/input/testing'), require('@angular/material/select/testing')) :
3 typeof define === 'function' && define.amd ? define('@angular/material/form-field/testing', ['exports', '@angular/material/form-field/testing/control', '@angular/cdk/testing', '@angular/material/datepicker/testing', '@angular/material/input/testing', '@angular/material/select/testing'], factory) :
4 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.formField = global.ng.material.formField || {}, global.ng.material.formField.testing = {}), global.ng.material.formField.testing.control, global.ng.cdk.testing, global.ng.material.datepicker.testing, global.ng.material.input.testing, global.ng.material.select.testing));
5}(this, (function (exports, control, testing, testing$3, testing$1, testing$2) { '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 var _MatFormFieldHarnessBase = /** @class */ (function (_super) {
326 __extends(_MatFormFieldHarnessBase, _super);
327 function _MatFormFieldHarnessBase() {
328 return _super !== null && _super.apply(this, arguments) || this;
329 }
330 /** Gets the label of the form-field. */
331 _MatFormFieldHarnessBase.prototype.getLabel = function () {
332 return __awaiter(this, void 0, void 0, function () {
333 var labelEl;
334 return __generator(this, function (_a) {
335 switch (_a.label) {
336 case 0: return [4 /*yield*/, this._label()];
337 case 1:
338 labelEl = _a.sent();
339 return [2 /*return*/, labelEl ? labelEl.text() : null];
340 }
341 });
342 });
343 };
344 /** Whether the form-field has errors. */
345 _MatFormFieldHarnessBase.prototype.hasErrors = function () {
346 return __awaiter(this, void 0, void 0, function () {
347 return __generator(this, function (_a) {
348 switch (_a.label) {
349 case 0: return [4 /*yield*/, this.getTextErrors()];
350 case 1: return [2 /*return*/, (_a.sent()).length > 0];
351 }
352 });
353 });
354 };
355 /** Whether the form-field is disabled. */
356 _MatFormFieldHarnessBase.prototype.isDisabled = function () {
357 return __awaiter(this, void 0, void 0, function () {
358 return __generator(this, function (_a) {
359 switch (_a.label) {
360 case 0: return [4 /*yield*/, this.host()];
361 case 1: return [2 /*return*/, (_a.sent()).hasClass('mat-form-field-disabled')];
362 }
363 });
364 });
365 };
366 /** Whether the form-field is currently autofilled. */
367 _MatFormFieldHarnessBase.prototype.isAutofilled = function () {
368 return __awaiter(this, void 0, void 0, function () {
369 return __generator(this, function (_a) {
370 switch (_a.label) {
371 case 0: return [4 /*yield*/, this.host()];
372 case 1: return [2 /*return*/, (_a.sent()).hasClass('mat-form-field-autofilled')];
373 }
374 });
375 });
376 };
377 // Implementation of the "getControl" method overload signatures.
378 _MatFormFieldHarnessBase.prototype.getControl = function (type) {
379 return __awaiter(this, void 0, void 0, function () {
380 var _a, select, input, datepickerInput, dateRangeInput;
381 var _this = this;
382 return __generator(this, function (_b) {
383 switch (_b.label) {
384 case 0:
385 if (type) {
386 return [2 /*return*/, this.locatorForOptional(type)()];
387 }
388 return [4 /*yield*/, testing.parallel(function () { return [
389 _this._selectControl(),
390 _this._inputControl(),
391 _this._datepickerInputControl(),
392 _this._dateRangeInputControl()
393 ]; })];
394 case 1:
395 _a = __read.apply(void 0, [_b.sent(), 4]), select = _a[0], input = _a[1], datepickerInput = _a[2], dateRangeInput = _a[3];
396 // Match the datepicker inputs first since they can also have a `MatInput`.
397 return [2 /*return*/, datepickerInput || dateRangeInput || select || input];
398 }
399 });
400 });
401 };
402 /** Gets the theme color of the form-field. */
403 _MatFormFieldHarnessBase.prototype.getThemeColor = function () {
404 return __awaiter(this, void 0, void 0, function () {
405 var hostEl, _a, isAccent, isWarn;
406 return __generator(this, function (_b) {
407 switch (_b.label) {
408 case 0: return [4 /*yield*/, this.host()];
409 case 1:
410 hostEl = _b.sent();
411 return [4 /*yield*/, testing.parallel(function () {
412 return [hostEl.hasClass('mat-accent'), hostEl.hasClass('mat-warn')];
413 })];
414 case 2:
415 _a = __read.apply(void 0, [_b.sent(), 2]), isAccent = _a[0], isWarn = _a[1];
416 if (isAccent) {
417 return [2 /*return*/, 'accent'];
418 }
419 else if (isWarn) {
420 return [2 /*return*/, 'warn'];
421 }
422 return [2 /*return*/, 'primary'];
423 }
424 });
425 });
426 };
427 /** Gets error messages which are currently displayed in the form-field. */
428 _MatFormFieldHarnessBase.prototype.getTextErrors = function () {
429 return __awaiter(this, void 0, void 0, function () {
430 var errors;
431 return __generator(this, function (_a) {
432 switch (_a.label) {
433 case 0: return [4 /*yield*/, this._errors()];
434 case 1:
435 errors = _a.sent();
436 return [2 /*return*/, testing.parallel(function () { return errors.map(function (e) { return e.text(); }); })];
437 }
438 });
439 });
440 };
441 /** Gets hint messages which are currently displayed in the form-field. */
442 _MatFormFieldHarnessBase.prototype.getTextHints = function () {
443 return __awaiter(this, void 0, void 0, function () {
444 var hints;
445 return __generator(this, function (_a) {
446 switch (_a.label) {
447 case 0: return [4 /*yield*/, this._hints()];
448 case 1:
449 hints = _a.sent();
450 return [2 /*return*/, testing.parallel(function () { return hints.map(function (e) { return e.text(); }); })];
451 }
452 });
453 });
454 };
455 /**
456 * Gets a reference to the container element which contains all projected
457 * prefixes of the form-field.
458 * @deprecated Use `getPrefixText` instead.
459 * @breaking-change 11.0.0
460 */
461 _MatFormFieldHarnessBase.prototype.getHarnessLoaderForPrefix = function () {
462 return __awaiter(this, void 0, void 0, function () {
463 return __generator(this, function (_a) {
464 return [2 /*return*/, this._prefixContainer()];
465 });
466 });
467 };
468 /** Gets the text inside the prefix element. */
469 _MatFormFieldHarnessBase.prototype.getPrefixText = function () {
470 return __awaiter(this, void 0, void 0, function () {
471 var prefix;
472 return __generator(this, function (_a) {
473 switch (_a.label) {
474 case 0: return [4 /*yield*/, this._prefixContainer()];
475 case 1:
476 prefix = _a.sent();
477 return [2 /*return*/, prefix ? prefix.text() : ''];
478 }
479 });
480 });
481 };
482 /**
483 * Gets a reference to the container element which contains all projected
484 * suffixes of the form-field.
485 * @deprecated Use `getSuffixText` instead.
486 * @breaking-change 11.0.0
487 */
488 _MatFormFieldHarnessBase.prototype.getHarnessLoaderForSuffix = function () {
489 return __awaiter(this, void 0, void 0, function () {
490 return __generator(this, function (_a) {
491 return [2 /*return*/, this._suffixContainer()];
492 });
493 });
494 };
495 /** Gets the text inside the suffix element. */
496 _MatFormFieldHarnessBase.prototype.getSuffixText = function () {
497 return __awaiter(this, void 0, void 0, function () {
498 var suffix;
499 return __generator(this, function (_a) {
500 switch (_a.label) {
501 case 0: return [4 /*yield*/, this._suffixContainer()];
502 case 1:
503 suffix = _a.sent();
504 return [2 /*return*/, suffix ? suffix.text() : ''];
505 }
506 });
507 });
508 };
509 /**
510 * Whether the form control has been touched. Returns "null"
511 * if no form control is set up.
512 */
513 _MatFormFieldHarnessBase.prototype.isControlTouched = function () {
514 return __awaiter(this, void 0, void 0, function () {
515 return __generator(this, function (_a) {
516 switch (_a.label) {
517 case 0: return [4 /*yield*/, this._hasFormControl()];
518 case 1:
519 if (!(_a.sent())) {
520 return [2 /*return*/, null];
521 }
522 return [4 /*yield*/, this.host()];
523 case 2: return [2 /*return*/, (_a.sent()).hasClass('ng-touched')];
524 }
525 });
526 });
527 };
528 /**
529 * Whether the form control is dirty. Returns "null"
530 * if no form control is set up.
531 */
532 _MatFormFieldHarnessBase.prototype.isControlDirty = function () {
533 return __awaiter(this, void 0, void 0, function () {
534 return __generator(this, function (_a) {
535 switch (_a.label) {
536 case 0: return [4 /*yield*/, this._hasFormControl()];
537 case 1:
538 if (!(_a.sent())) {
539 return [2 /*return*/, null];
540 }
541 return [4 /*yield*/, this.host()];
542 case 2: return [2 /*return*/, (_a.sent()).hasClass('ng-dirty')];
543 }
544 });
545 });
546 };
547 /**
548 * Whether the form control is valid. Returns "null"
549 * if no form control is set up.
550 */
551 _MatFormFieldHarnessBase.prototype.isControlValid = function () {
552 return __awaiter(this, void 0, void 0, function () {
553 return __generator(this, function (_a) {
554 switch (_a.label) {
555 case 0: return [4 /*yield*/, this._hasFormControl()];
556 case 1:
557 if (!(_a.sent())) {
558 return [2 /*return*/, null];
559 }
560 return [4 /*yield*/, this.host()];
561 case 2: return [2 /*return*/, (_a.sent()).hasClass('ng-valid')];
562 }
563 });
564 });
565 };
566 /**
567 * Whether the form control is pending validation. Returns "null"
568 * if no form control is set up.
569 */
570 _MatFormFieldHarnessBase.prototype.isControlPending = function () {
571 return __awaiter(this, void 0, void 0, function () {
572 return __generator(this, function (_a) {
573 switch (_a.label) {
574 case 0: return [4 /*yield*/, this._hasFormControl()];
575 case 1:
576 if (!(_a.sent())) {
577 return [2 /*return*/, null];
578 }
579 return [4 /*yield*/, this.host()];
580 case 2: return [2 /*return*/, (_a.sent()).hasClass('ng-pending')];
581 }
582 });
583 });
584 };
585 /** Checks whether the form-field control has set up a form control. */
586 _MatFormFieldHarnessBase.prototype._hasFormControl = function () {
587 return __awaiter(this, void 0, void 0, function () {
588 var hostEl, _a, isTouched, isUntouched;
589 return __generator(this, function (_b) {
590 switch (_b.label) {
591 case 0: return [4 /*yield*/, this.host()];
592 case 1:
593 hostEl = _b.sent();
594 return [4 /*yield*/, testing.parallel(function () { return [hostEl.hasClass('ng-touched'), hostEl.hasClass('ng-untouched')]; })];
595 case 2:
596 _a = __read.apply(void 0, [_b.sent(), 2]), isTouched = _a[0], isUntouched = _a[1];
597 return [2 /*return*/, isTouched || isUntouched];
598 }
599 });
600 });
601 };
602 return _MatFormFieldHarnessBase;
603 }(testing.ComponentHarness));
604 /** Harness for interacting with a standard Material form-field's in tests. */
605 var MatFormFieldHarness = /** @class */ (function (_super) {
606 __extends(MatFormFieldHarness, _super);
607 function MatFormFieldHarness() {
608 var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
609 _this._prefixContainer = _this.locatorForOptional('.mat-form-field-prefix');
610 _this._suffixContainer = _this.locatorForOptional('.mat-form-field-suffix');
611 _this._label = _this.locatorForOptional('.mat-form-field-label');
612 _this._errors = _this.locatorForAll('.mat-error');
613 _this._hints = _this.locatorForAll('mat-hint, .mat-hint');
614 _this._inputControl = _this.locatorForOptional(testing$1.MatInputHarness);
615 _this._selectControl = _this.locatorForOptional(testing$2.MatSelectHarness);
616 _this._datepickerInputControl = _this.locatorForOptional(testing$3.MatDatepickerInputHarness);
617 _this._dateRangeInputControl = _this.locatorForOptional(testing$3.MatDateRangeInputHarness);
618 return _this;
619 }
620 /**
621 * Gets a `HarnessPredicate` that can be used to search for a `MatFormFieldHarness` that meets
622 * certain criteria.
623 * @param options Options for filtering which form field instances are considered a match.
624 * @return a `HarnessPredicate` configured with the given options.
625 */
626 MatFormFieldHarness.with = function (options) {
627 var _this = this;
628 if (options === void 0) { options = {}; }
629 return new testing.HarnessPredicate(MatFormFieldHarness, options)
630 .addOption('floatingLabelText', options.floatingLabelText, function (harness, text) { return __awaiter(_this, void 0, void 0, function () { var _a, _b; return __generator(this, function (_c) {
631 switch (_c.label) {
632 case 0:
633 _b = (_a = testing.HarnessPredicate).stringMatches;
634 return [4 /*yield*/, harness.getLabel()];
635 case 1: return [2 /*return*/, _b.apply(_a, [_c.sent(), text])];
636 }
637 }); }); })
638 .addOption('hasErrors', options.hasErrors, function (harness, hasErrors) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
639 switch (_a.label) {
640 case 0: return [4 /*yield*/, harness.hasErrors()];
641 case 1: return [2 /*return*/, (_a.sent()) === hasErrors];
642 }
643 }); }); });
644 };
645 /** Gets the appearance of the form-field. */
646 MatFormFieldHarness.prototype.getAppearance = function () {
647 return __awaiter(this, void 0, void 0, function () {
648 var hostClasses, appearanceMatch;
649 return __generator(this, function (_a) {
650 switch (_a.label) {
651 case 0: return [4 /*yield*/, this.host()];
652 case 1: return [4 /*yield*/, (_a.sent()).getAttribute('class')];
653 case 2:
654 hostClasses = _a.sent();
655 if (hostClasses !== null) {
656 appearanceMatch = hostClasses.match(/mat-form-field-appearance-(legacy|standard|fill|outline)(?:$| )/);
657 if (appearanceMatch) {
658 return [2 /*return*/, appearanceMatch[1]];
659 }
660 }
661 throw Error('Could not determine appearance of form-field.');
662 }
663 });
664 });
665 };
666 /** Whether the form-field has a label. */
667 MatFormFieldHarness.prototype.hasLabel = function () {
668 return __awaiter(this, void 0, void 0, function () {
669 return __generator(this, function (_a) {
670 switch (_a.label) {
671 case 0: return [4 /*yield*/, this.host()];
672 case 1: return [2 /*return*/, (_a.sent()).hasClass('mat-form-field-has-label')];
673 }
674 });
675 });
676 };
677 /** Whether the label is currently floating. */
678 MatFormFieldHarness.prototype.isLabelFloating = function () {
679 return __awaiter(this, void 0, void 0, function () {
680 var host, _a, hasLabel, shouldFloat;
681 var _this = this;
682 return __generator(this, function (_b) {
683 switch (_b.label) {
684 case 0: return [4 /*yield*/, this.host()];
685 case 1:
686 host = _b.sent();
687 return [4 /*yield*/, testing.parallel(function () { return [
688 _this.hasLabel(),
689 host.hasClass('mat-form-field-should-float'),
690 ]; })];
691 case 2:
692 _a = __read.apply(void 0, [_b.sent(), 2]), hasLabel = _a[0], shouldFloat = _a[1];
693 // If there is no label, the label conceptually can never float. The `should-float` class
694 // is just always set regardless of whether the label is displayed or not.
695 return [2 /*return*/, hasLabel && shouldFloat];
696 }
697 });
698 });
699 };
700 return MatFormFieldHarness;
701 }(_MatFormFieldHarnessBase));
702 MatFormFieldHarness.hostSelector = '.mat-form-field';
703
704 /**
705 * @license
706 * Copyright Google LLC All Rights Reserved.
707 *
708 * Use of this source code is governed by an MIT-style license that can be
709 * found in the LICENSE file at https://angular.io/license
710 */
711
712 /**
713 * @license
714 * Copyright Google LLC All Rights Reserved.
715 *
716 * Use of this source code is governed by an MIT-style license that can be
717 * found in the LICENSE file at https://angular.io/license
718 */
719
720 exports.MatFormFieldHarness = MatFormFieldHarness;
721 exports._MatFormFieldHarnessBase = _MatFormFieldHarnessBase;
722 Object.keys(control).forEach(function (k) {
723 if (k !== 'default' && !exports.hasOwnProperty(k)) Object.defineProperty(exports, k, {
724 enumerable: true,
725 get: function () {
726 return control[k];
727 }
728 });
729 });
730
731 Object.defineProperty(exports, '__esModule', { value: true });
732
733})));
734//# sourceMappingURL=material-form-field-testing.umd.js.map
Note: See TracBrowser for help on using the repository browser.