@angular/material
Version:
Angular Material
1 lines • 5.88 kB
Source Map (JSON)
{"version":3,"file":"datepicker-testing.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/datepicker/testing/datepicker-toggle-harness.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/datepicker/testing/datepicker-actions-harness.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.dev/license\n */\n\nimport {HarnessPredicate} from '@angular/cdk/testing';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {DatepickerToggleHarnessFilters} from './datepicker-harness-filters';\nimport {DatepickerTriggerHarnessBase} from './datepicker-trigger-harness-base';\n\n/** Harness for interacting with a standard Material datepicker toggle in tests. */\nexport class MatDatepickerToggleHarness extends DatepickerTriggerHarnessBase {\n static hostSelector = '.mat-datepicker-toggle';\n\n /** The clickable button inside the toggle. */\n private _button = this.locatorFor('button');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDatepickerToggleHarness` that\n * meets certain criteria.\n * @param options Options for filtering which datepicker toggle instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DatepickerToggleHarnessFilters = {},\n ): HarnessPredicate<MatDatepickerToggleHarness> {\n return new HarnessPredicate(MatDatepickerToggleHarness, options);\n }\n\n /** Gets whether the calendar associated with the toggle is open. */\n async isCalendarOpen(): Promise<boolean> {\n return (await this.host()).hasClass('mat-datepicker-toggle-active');\n }\n\n /** Whether the toggle is disabled. */\n async isDisabled(): Promise<boolean> {\n const button = await this._button();\n return coerceBooleanProperty(await button.getAttribute('disabled'));\n }\n\n protected async _openCalendar(): Promise<void> {\n return (await this._button()).click();\n }\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.dev/license\n */\n\nimport {\n ContentContainerComponentHarness,\n HarnessPredicate,\n TestElement,\n} from '@angular/cdk/testing';\nimport {DatepickerActionsHarnessFilters} from './datepicker-harness-filters';\n\n/** Harness for interacting with a standard Material datepicker actions in tests. */\nexport class MatDatepickerActionsHarness extends ContentContainerComponentHarness<string> {\n static hostSelector = '.mat-datepicker-actions';\n\n private _applyLocator = this.locatorForOptional(\n '[matDatepickerApply], [matDateRangePickerApply]',\n );\n private _cancelLocator = this.locatorForOptional(\n '[matDatepickerCancel], [matDateRangePickerCancel]',\n );\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatDatepickerActionsHarness` that\n * meets certain criteria.\n * @param options Options for filtering which datepicker actions instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with(\n options: DatepickerActionsHarnessFilters = {},\n ): HarnessPredicate<MatDatepickerActionsHarness> {\n return new HarnessPredicate(MatDatepickerActionsHarness, options);\n }\n\n /** Applies the current selection. */\n apply(): Promise<void> {\n return this._clickAction('apply', this._applyLocator);\n }\n\n /** Cancels the current selection. */\n cancel(): Promise<void> {\n return this._clickAction('cancel', this._cancelLocator);\n }\n\n private async _clickAction(name: string, locator: () => Promise<TestElement | null>) {\n const button = await locator();\n\n if (!button) {\n throw new Error(`MatDatepickerActions does not have ${name} button`);\n }\n\n await button.click();\n }\n}\n"],"names":["MatDatepickerToggleHarness","DatepickerTriggerHarnessBase","hostSelector","_button","locatorFor","with","options","HarnessPredicate","isCalendarOpen","host","hasClass","isDisabled","button","coerceBooleanProperty","getAttribute","_openCalendar","click","MatDatepickerActionsHarness","ContentContainerComponentHarness","_applyLocator","locatorForOptional","_cancelLocator","apply","_clickAction","cancel","name","locator","Error"],"mappings":";;;;;;AAcM,MAAOA,0BAA2B,SAAQC,4BAA4B,CAAA;EAC1E,OAAOC,YAAY,GAAG,wBAAwB;AAGtCC,EAAAA,OAAO,GAAG,IAAI,CAACC,UAAU,CAAC,QAAQ,CAAC;AAQ3C,EAAA,OAAOC,IAAIA,CACTC,OAAA,GAA0C,EAAE,EAAA;AAE5C,IAAA,OAAO,IAAIC,gBAAgB,CAACP,0BAA0B,EAAEM,OAAO,CAAC;AAClE,EAAA;EAGA,MAAME,cAAcA,GAAA;IAClB,OAAO,CAAC,MAAM,IAAI,CAACC,IAAI,EAAE,EAAEC,QAAQ,CAAC,8BAA8B,CAAC;AACrE,EAAA;EAGA,MAAMC,UAAUA,GAAA;AACd,IAAA,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACT,OAAO,EAAE;IACnC,OAAOU,qBAAqB,CAAC,MAAMD,MAAM,CAACE,YAAY,CAAC,UAAU,CAAC,CAAC;AACrE,EAAA;EAEU,MAAMC,aAAaA,GAAA;IAC3B,OAAO,CAAC,MAAM,IAAI,CAACZ,OAAO,EAAE,EAAEa,KAAK,EAAE;AACvC,EAAA;;;AC7BI,MAAOC,2BAA4B,SAAQC,gCAAwC,CAAA;EACvF,OAAOhB,YAAY,GAAG,yBAAyB;AAEvCiB,EAAAA,aAAa,GAAG,IAAI,CAACC,kBAAkB,CAC7C,iDAAiD,CAClD;AACOC,EAAAA,cAAc,GAAG,IAAI,CAACD,kBAAkB,CAC9C,mDAAmD,CACpD;AAQD,EAAA,OAAOf,IAAIA,CACTC,OAAA,GAA2C,EAAE,EAAA;AAE7C,IAAA,OAAO,IAAIC,gBAAgB,CAACU,2BAA2B,EAAEX,OAAO,CAAC;AACnE,EAAA;AAGAgB,EAAAA,KAAKA,GAAA;IACH,OAAO,IAAI,CAACC,YAAY,CAAC,OAAO,EAAE,IAAI,CAACJ,aAAa,CAAC;AACvD,EAAA;AAGAK,EAAAA,MAAMA,GAAA;IACJ,OAAO,IAAI,CAACD,YAAY,CAAC,QAAQ,EAAE,IAAI,CAACF,cAAc,CAAC;AACzD,EAAA;AAEQ,EAAA,MAAME,YAAYA,CAACE,IAAY,EAAEC,OAA0C,EAAA;AACjF,IAAA,MAAMd,MAAM,GAAG,MAAMc,OAAO,EAAE;IAE9B,IAAI,CAACd,MAAM,EAAE;AACX,MAAA,MAAM,IAAIe,KAAK,CAAC,CAAA,mCAAA,EAAsCF,IAAI,SAAS,CAAC;AACtE,IAAA;AAEA,IAAA,MAAMb,MAAM,CAACI,KAAK,EAAE;AACtB,EAAA;;;;;"}