@hug/ngx-time-picker 1.1.16 → 1.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/esm2020/testing/hug-ngx-time-picker-testing.mjs +5 -0
- package/esm2020/testing/index.mjs +3 -0
- package/esm2020/testing/time-picker-harness-filters.mjs +2 -0
- package/esm2020/testing/time-picker-harness.mjs +62 -0
- package/fesm2015/hug-ngx-time-picker-testing.mjs +86 -0
- package/fesm2015/hug-ngx-time-picker-testing.mjs.map +1 -0
- package/fesm2020/hug-ngx-time-picker-testing.mjs +69 -0
- package/fesm2020/hug-ngx-time-picker-testing.mjs.map +1 -0
- package/package.json +10 -2
- package/testing/index.d.ts +2 -0
- package/testing/time-picker-harness-filters.d.ts +4 -0
- package/testing/time-picker-harness.d.ts +17 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
## 1.1.18 (2025-05-02)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### 🌱 Dependencies
|
|
5
|
+
|
|
6
|
+
- **@hug/ngx-numeric-stepper:** upgrade to v1.1.13 ([23277e4](https://github.com/DSI-HUG/ngx-components/commit/23277e4))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### ❤️ Thank You
|
|
10
|
+
|
|
11
|
+
- dsi-hug-bot @dsi-hug-bot
|
|
12
|
+
|
|
13
|
+
## 1.1.17 (2025-03-11)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### 🌱 Dependencies
|
|
17
|
+
|
|
18
|
+
- **@hug/ngx-numeric-stepper:** upgrade to v1.1.12 ([91140c1](https://github.com/DSI-HUG/ngx-components/commit/91140c1))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### ❤️ Thank You
|
|
22
|
+
|
|
23
|
+
- dsi-hug-bot @dsi-hug-bot
|
|
24
|
+
|
|
1
25
|
## 1.1.16 (2025-03-07)
|
|
2
26
|
|
|
3
27
|
This was a version bump only for @hug/ngx-time-picker to align it with other projects, there were no code changes.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVnLW5neC10aW1lLXBpY2tlci10ZXN0aW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdGltZS1waWNrZXIvdGVzdGluZy9odWctbmd4LXRpbWUtcGlja2VyLXRlc3RpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './time-picker-harness';
|
|
2
|
+
export * from './time-picker-harness-filters';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90aW1lLXBpY2tlci90ZXN0aW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGltZS1waWNrZXItaGFybmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL3RpbWUtcGlja2VyLWhhcm5lc3MtZmlsdGVycyc7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXItaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdGltZS1waWNrZXIvdGVzdGluZy90aW1lLXBpY2tlci1oYXJuZXNzLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcblxuZXhwb3J0IGludGVyZmFjZSBOZ3hUaW1lUGlja2VySGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICAgIHZhbHVlPzogc3RyaW5nIHwgUmVnRXhwO1xufVxuIl19
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { HarnessPredicate } from '@angular/cdk/testing';
|
|
2
|
+
import { MatFormFieldControlHarness } from '@angular/material/form-field/testing/control';
|
|
3
|
+
import { MatInputHarness } from '@angular/material/input/testing';
|
|
4
|
+
/** Harness for interacting with a ngx time picker in tests. */
|
|
5
|
+
export class NgxTimePickerHarness extends MatFormFieldControlHarness {
|
|
6
|
+
static with(options = {}) {
|
|
7
|
+
return new HarnessPredicate(NgxTimePickerHarness, options).addOption('value', options.value, (harness, value) => HarnessPredicate.stringMatches(harness.getValue(), value));
|
|
8
|
+
}
|
|
9
|
+
async getHoursInput() {
|
|
10
|
+
return (await this.locatorFactory.harnessLoaderFor('.hours')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));
|
|
11
|
+
}
|
|
12
|
+
async getMinutesInput() {
|
|
13
|
+
return (await this.locatorFactory.harnessLoaderFor('.minutes')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));
|
|
14
|
+
}
|
|
15
|
+
async setValue(value) {
|
|
16
|
+
const hoursMinutes = value.split(':');
|
|
17
|
+
if (hoursMinutes[0].length) {
|
|
18
|
+
await this.getHoursInput().then(async (hoursInput) => {
|
|
19
|
+
await hoursInput.host().then(async (hoursElement) => {
|
|
20
|
+
await hoursElement.clear();
|
|
21
|
+
await hoursInput.setValue(hoursMinutes[0]);
|
|
22
|
+
await hoursInput.blur();
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
if (hoursMinutes[1].length) {
|
|
27
|
+
await this.getMinutesInput().then(async (minutesInput) => {
|
|
28
|
+
await minutesInput.host().then(async (minutesElement) => {
|
|
29
|
+
await minutesElement.clear();
|
|
30
|
+
await minutesInput.setValue(hoursMinutes[1]);
|
|
31
|
+
await minutesElement.blur();
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
async getValue() {
|
|
37
|
+
return this.getHoursValue().then(hoursValue => this.getMinutesValue().then(minutesValue => `${hoursValue}:${minutesValue}`));
|
|
38
|
+
}
|
|
39
|
+
async getHoursValue() {
|
|
40
|
+
return this.getHoursInput().then(hoursInput => hoursInput.getValue());
|
|
41
|
+
}
|
|
42
|
+
async getMinutesValue() {
|
|
43
|
+
return this.getMinutesInput().then(minutesInput => minutesInput.getValue());
|
|
44
|
+
}
|
|
45
|
+
async sendKeysToHoursInput(...keys) {
|
|
46
|
+
return this.getHoursInput().then(async (hoursInput) => {
|
|
47
|
+
await hoursInput.host().then(async (hoursElement) => {
|
|
48
|
+
await hoursElement.sendKeys(...keys);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
async sendKeysToMinutesInput(...keys) {
|
|
53
|
+
return this.getMinutesInput().then(async (minutesInput) => {
|
|
54
|
+
await minutesInput.host().then(async (minutesElement) => {
|
|
55
|
+
await minutesElement.sendKeys(...keys);
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
61
|
+
NgxTimePickerHarness.hostSelector = 'ngx-time-picker';
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1waWNrZXItaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RpbWUtcGlja2VyL3Rlc3RpbmcvdGltZS1waWNrZXItaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQVcsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFJbEUsK0RBQStEO0FBQy9ELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSwwQkFBMEI7SUFLaEUsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUF1QyxFQUFFO1FBQ2pELE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDaEwsQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhO1FBQ3RCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxlQUFlO1FBQ3hCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxZ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Q0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztZQUMzQyxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7QUFqRUQsZ0VBQWdFO0FBQ2xELGlDQUFZLEdBQUcsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlLCBUZXN0S2V5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQ29udHJvbEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkL3Rlc3RpbmcvY29udHJvbCc7XG5pbXBvcnQgeyBNYXRJbnB1dEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dC90ZXN0aW5nJztcblxuaW1wb3J0IHsgTmd4VGltZVBpY2tlckhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi90aW1lLXBpY2tlci1oYXJuZXNzLWZpbHRlcnMnO1xuXG4vKiogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhIG5neCB0aW1lIHBpY2tlciBpbiB0ZXN0cy4gKi9cbmV4cG9ydCBjbGFzcyBOZ3hUaW1lUGlja2VySGFybmVzcyBleHRlbmRzIE1hdEZvcm1GaWVsZENvbnRyb2xIYXJuZXNzIHtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICduZ3gtdGltZS1waWNrZXInO1xuXG4gICAgc3RhdGljIHdpdGgob3B0aW9uczogTmd4VGltZVBpY2tlckhhcm5lc3NGaWx0ZXJzID0ge30pOiBIYXJuZXNzUHJlZGljYXRlPE5neFRpbWVQaWNrZXJIYXJuZXNzPiB7XG4gICAgICAgIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZShOZ3hUaW1lUGlja2VySGFybmVzcywgb3B0aW9ucykuYWRkT3B0aW9uKCd2YWx1ZScsIG9wdGlvbnMudmFsdWUsIChoYXJuZXNzLCB2YWx1ZSkgPT4gSGFybmVzc1ByZWRpY2F0ZS5zdHJpbmdNYXRjaGVzKGhhcm5lc3MuZ2V0VmFsdWUoKSwgdmFsdWUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0SG91cnNJbnB1dCgpOiBQcm9taXNlPE1hdElucHV0SGFybmVzcz4ge1xuICAgICAgICByZXR1cm4gKGF3YWl0IHRoaXMubG9jYXRvckZhY3RvcnkuaGFybmVzc0xvYWRlckZvcignLmhvdXJzJykpLmdldEhhcm5lc3MoTWF0SW5wdXRIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJ1ttYXRJbnB1dF0nIH0pKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZ2V0TWludXRlc0lucHV0KCk6IFByb21pc2U8TWF0SW5wdXRIYXJuZXNzPiB7XG4gICAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5sb2NhdG9yRmFjdG9yeS5oYXJuZXNzTG9hZGVyRm9yKCcubWludXRlcycpKS5nZXRIYXJuZXNzKE1hdElucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbbWF0SW5wdXRdJyB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldFZhbHVlKHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgaG91cnNNaW51dGVzID0gdmFsdWUuc3BsaXQoJzonKTtcblxuICAgICAgICBpZiAoaG91cnNNaW51dGVzWzBdLmxlbmd0aCkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5nZXRIb3Vyc0lucHV0KCkudGhlbihhc3luYyBob3Vyc0lucHV0ID0+IHtcbiAgICAgICAgICAgICAgICBhd2FpdCBob3Vyc0lucHV0Lmhvc3QoKS50aGVuKGFzeW5jIGhvdXJzRWxlbWVudCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGhvdXJzRWxlbWVudC5jbGVhcigpO1xuICAgICAgICAgICAgICAgICAgICBhd2FpdCBob3Vyc0lucHV0LnNldFZhbHVlKGhvdXJzTWludXRlc1swXSk7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGhvdXJzSW5wdXQuYmx1cigpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaG91cnNNaW51dGVzWzFdLmxlbmd0aCkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5nZXRNaW51dGVzSW5wdXQoKS50aGVuKGFzeW5jIG1pbnV0ZXNJbnB1dCA9PiB7XG4gICAgICAgICAgICAgICAgYXdhaXQgbWludXRlc0lucHV0Lmhvc3QoKS50aGVuKGFzeW5jIG1pbnV0ZXNFbGVtZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgbWludXRlc0VsZW1lbnQuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgbWludXRlc0lucHV0LnNldFZhbHVlKGhvdXJzTWludXRlc1sxXSk7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IG1pbnV0ZXNFbGVtZW50LmJsdXIoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldFZhbHVlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEhvdXJzVmFsdWUoKS50aGVuKGhvdXJzVmFsdWUgPT4gdGhpcy5nZXRNaW51dGVzVmFsdWUoKS50aGVuKG1pbnV0ZXNWYWx1ZSA9PiBgJHtob3Vyc1ZhbHVlfToke21pbnV0ZXNWYWx1ZX1gKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGdldEhvdXJzVmFsdWUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0SG91cnNJbnB1dCgpLnRoZW4oaG91cnNJbnB1dCA9PiBob3Vyc0lucHV0LmdldFZhbHVlKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBnZXRNaW51dGVzVmFsdWUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TWludXRlc0lucHV0KCkudGhlbihtaW51dGVzSW5wdXQgPT4gbWludXRlc0lucHV0LmdldFZhbHVlKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZW5kS2V5c1RvSG91cnNJbnB1dCguLi5rZXlzOiByZWFkb25seSBUZXN0S2V5W10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0SG91cnNJbnB1dCgpLnRoZW4oYXN5bmMgaG91cnNJbnB1dCA9PiB7XG4gICAgICAgICAgICBhd2FpdCBob3Vyc0lucHV0Lmhvc3QoKS50aGVuKGFzeW5jIGhvdXJzRWxlbWVudCA9PiB7XG4gICAgICAgICAgICAgICAgYXdhaXQgaG91cnNFbGVtZW50LnNlbmRLZXlzKC4uLmtleXMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZW5kS2V5c1RvTWludXRlc0lucHV0KC4uLmtleXM6IHJlYWRvbmx5IFRlc3RLZXlbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRNaW51dGVzSW5wdXQoKS50aGVuKGFzeW5jIG1pbnV0ZXNJbnB1dCA9PiB7XG4gICAgICAgICAgICBhd2FpdCBtaW51dGVzSW5wdXQuaG9zdCgpLnRoZW4oYXN5bmMgbWludXRlc0VsZW1lbnQgPT4ge1xuICAgICAgICAgICAgICAgIGF3YWl0IG1pbnV0ZXNFbGVtZW50LnNlbmRLZXlzKC4uLmtleXMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { __awaiter } from 'tslib';
|
|
2
|
+
import { HarnessPredicate } from '@angular/cdk/testing';
|
|
3
|
+
import { MatFormFieldControlHarness } from '@angular/material/form-field/testing/control';
|
|
4
|
+
import { MatInputHarness } from '@angular/material/input/testing';
|
|
5
|
+
|
|
6
|
+
/** Harness for interacting with a ngx time picker in tests. */
|
|
7
|
+
class NgxTimePickerHarness extends MatFormFieldControlHarness {
|
|
8
|
+
static with(options = {}) {
|
|
9
|
+
return new HarnessPredicate(NgxTimePickerHarness, options).addOption('value', options.value, (harness, value) => HarnessPredicate.stringMatches(harness.getValue(), value));
|
|
10
|
+
}
|
|
11
|
+
getHoursInput() {
|
|
12
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
13
|
+
return (yield this.locatorFactory.harnessLoaderFor('.hours')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
getMinutesInput() {
|
|
17
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
18
|
+
return (yield this.locatorFactory.harnessLoaderFor('.minutes')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
setValue(value) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const hoursMinutes = value.split(':');
|
|
24
|
+
if (hoursMinutes[0].length) {
|
|
25
|
+
yield this.getHoursInput().then((hoursInput) => __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
yield hoursInput.host().then((hoursElement) => __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
yield hoursElement.clear();
|
|
28
|
+
yield hoursInput.setValue(hoursMinutes[0]);
|
|
29
|
+
yield hoursInput.blur();
|
|
30
|
+
}));
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
if (hoursMinutes[1].length) {
|
|
34
|
+
yield this.getMinutesInput().then((minutesInput) => __awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
yield minutesInput.host().then((minutesElement) => __awaiter(this, void 0, void 0, function* () {
|
|
36
|
+
yield minutesElement.clear();
|
|
37
|
+
yield minutesInput.setValue(hoursMinutes[1]);
|
|
38
|
+
yield minutesElement.blur();
|
|
39
|
+
}));
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
getValue() {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
return this.getHoursValue().then(hoursValue => this.getMinutesValue().then(minutesValue => `${hoursValue}:${minutesValue}`));
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
getHoursValue() {
|
|
50
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
return this.getHoursInput().then(hoursInput => hoursInput.getValue());
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
getMinutesValue() {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
return this.getMinutesInput().then(minutesInput => minutesInput.getValue());
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
sendKeysToHoursInput(...keys) {
|
|
60
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
61
|
+
return this.getHoursInput().then((hoursInput) => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
yield hoursInput.host().then((hoursElement) => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
yield hoursElement.sendKeys(...keys);
|
|
64
|
+
}));
|
|
65
|
+
}));
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
sendKeysToMinutesInput(...keys) {
|
|
69
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
return this.getMinutesInput().then((minutesInput) => __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
yield minutesInput.host().then((minutesElement) => __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
yield minutesElement.sendKeys(...keys);
|
|
73
|
+
}));
|
|
74
|
+
}));
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
79
|
+
NgxTimePickerHarness.hostSelector = 'ngx-time-picker';
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Generated bundle index. Do not edit.
|
|
83
|
+
*/
|
|
84
|
+
|
|
85
|
+
export { NgxTimePickerHarness };
|
|
86
|
+
//# sourceMappingURL=hug-ngx-time-picker-testing.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hug-ngx-time-picker-testing.mjs","sources":["../../../projects/time-picker/testing/time-picker-harness.ts","../../../projects/time-picker/testing/hug-ngx-time-picker-testing.ts"],"sourcesContent":["import { HarnessPredicate, TestKey } from '@angular/cdk/testing';\nimport { MatFormFieldControlHarness } from '@angular/material/form-field/testing/control';\nimport { MatInputHarness } from '@angular/material/input/testing';\n\nimport { NgxTimePickerHarnessFilters } from './time-picker-harness-filters';\n\n/** Harness for interacting with a ngx time picker in tests. */\nexport class NgxTimePickerHarness extends MatFormFieldControlHarness {\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public static hostSelector = 'ngx-time-picker';\n\n static with(options: NgxTimePickerHarnessFilters = {}): HarnessPredicate<NgxTimePickerHarness> {\n return new HarnessPredicate(NgxTimePickerHarness, options).addOption('value', options.value, (harness, value) => HarnessPredicate.stringMatches(harness.getValue(), value));\n }\n\n public async getHoursInput(): Promise<MatInputHarness> {\n return (await this.locatorFactory.harnessLoaderFor('.hours')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));\n }\n\n public async getMinutesInput(): Promise<MatInputHarness> {\n return (await this.locatorFactory.harnessLoaderFor('.minutes')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));\n }\n\n public async setValue(value: string): Promise<void> {\n const hoursMinutes = value.split(':');\n\n if (hoursMinutes[0].length) {\n await this.getHoursInput().then(async hoursInput => {\n await hoursInput.host().then(async hoursElement => {\n await hoursElement.clear();\n await hoursInput.setValue(hoursMinutes[0]);\n await hoursInput.blur();\n });\n });\n }\n\n if (hoursMinutes[1].length) {\n await this.getMinutesInput().then(async minutesInput => {\n await minutesInput.host().then(async minutesElement => {\n await minutesElement.clear();\n await minutesInput.setValue(hoursMinutes[1]);\n await minutesElement.blur();\n });\n });\n }\n }\n\n public async getValue(): Promise<string> {\n return this.getHoursValue().then(hoursValue => this.getMinutesValue().then(minutesValue => `${hoursValue}:${minutesValue}`));\n }\n\n public async getHoursValue(): Promise<string> {\n return this.getHoursInput().then(hoursInput => hoursInput.getValue());\n }\n\n public async getMinutesValue(): Promise<string> {\n return this.getMinutesInput().then(minutesInput => minutesInput.getValue());\n }\n\n public async sendKeysToHoursInput(...keys: readonly TestKey[]): Promise<void> {\n return this.getHoursInput().then(async hoursInput => {\n await hoursInput.host().then(async hoursElement => {\n await hoursElement.sendKeys(...keys);\n });\n });\n }\n\n public async sendKeysToMinutesInput(...keys: readonly TestKey[]): Promise<void> {\n return this.getMinutesInput().then(async minutesInput => {\n await minutesInput.host().then(async minutesElement => {\n await minutesElement.sendKeys(...keys);\n });\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { HarnessPredicate } from '@angular/cdk/testing';
|
|
2
|
+
import { MatFormFieldControlHarness } from '@angular/material/form-field/testing/control';
|
|
3
|
+
import { MatInputHarness } from '@angular/material/input/testing';
|
|
4
|
+
|
|
5
|
+
/** Harness for interacting with a ngx time picker in tests. */
|
|
6
|
+
class NgxTimePickerHarness extends MatFormFieldControlHarness {
|
|
7
|
+
static with(options = {}) {
|
|
8
|
+
return new HarnessPredicate(NgxTimePickerHarness, options).addOption('value', options.value, (harness, value) => HarnessPredicate.stringMatches(harness.getValue(), value));
|
|
9
|
+
}
|
|
10
|
+
async getHoursInput() {
|
|
11
|
+
return (await this.locatorFactory.harnessLoaderFor('.hours')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));
|
|
12
|
+
}
|
|
13
|
+
async getMinutesInput() {
|
|
14
|
+
return (await this.locatorFactory.harnessLoaderFor('.minutes')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));
|
|
15
|
+
}
|
|
16
|
+
async setValue(value) {
|
|
17
|
+
const hoursMinutes = value.split(':');
|
|
18
|
+
if (hoursMinutes[0].length) {
|
|
19
|
+
await this.getHoursInput().then(async (hoursInput) => {
|
|
20
|
+
await hoursInput.host().then(async (hoursElement) => {
|
|
21
|
+
await hoursElement.clear();
|
|
22
|
+
await hoursInput.setValue(hoursMinutes[0]);
|
|
23
|
+
await hoursInput.blur();
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
if (hoursMinutes[1].length) {
|
|
28
|
+
await this.getMinutesInput().then(async (minutesInput) => {
|
|
29
|
+
await minutesInput.host().then(async (minutesElement) => {
|
|
30
|
+
await minutesElement.clear();
|
|
31
|
+
await minutesInput.setValue(hoursMinutes[1]);
|
|
32
|
+
await minutesElement.blur();
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async getValue() {
|
|
38
|
+
return this.getHoursValue().then(hoursValue => this.getMinutesValue().then(minutesValue => `${hoursValue}:${minutesValue}`));
|
|
39
|
+
}
|
|
40
|
+
async getHoursValue() {
|
|
41
|
+
return this.getHoursInput().then(hoursInput => hoursInput.getValue());
|
|
42
|
+
}
|
|
43
|
+
async getMinutesValue() {
|
|
44
|
+
return this.getMinutesInput().then(minutesInput => minutesInput.getValue());
|
|
45
|
+
}
|
|
46
|
+
async sendKeysToHoursInput(...keys) {
|
|
47
|
+
return this.getHoursInput().then(async (hoursInput) => {
|
|
48
|
+
await hoursInput.host().then(async (hoursElement) => {
|
|
49
|
+
await hoursElement.sendKeys(...keys);
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async sendKeysToMinutesInput(...keys) {
|
|
54
|
+
return this.getMinutesInput().then(async (minutesInput) => {
|
|
55
|
+
await minutesInput.host().then(async (minutesElement) => {
|
|
56
|
+
await minutesElement.sendKeys(...keys);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
62
|
+
NgxTimePickerHarness.hostSelector = 'ngx-time-picker';
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Generated bundle index. Do not edit.
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
export { NgxTimePickerHarness };
|
|
69
|
+
//# sourceMappingURL=hug-ngx-time-picker-testing.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hug-ngx-time-picker-testing.mjs","sources":["../../../projects/time-picker/testing/time-picker-harness.ts","../../../projects/time-picker/testing/hug-ngx-time-picker-testing.ts"],"sourcesContent":["import { HarnessPredicate, TestKey } from '@angular/cdk/testing';\nimport { MatFormFieldControlHarness } from '@angular/material/form-field/testing/control';\nimport { MatInputHarness } from '@angular/material/input/testing';\n\nimport { NgxTimePickerHarnessFilters } from './time-picker-harness-filters';\n\n/** Harness for interacting with a ngx time picker in tests. */\nexport class NgxTimePickerHarness extends MatFormFieldControlHarness {\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public static hostSelector = 'ngx-time-picker';\n\n static with(options: NgxTimePickerHarnessFilters = {}): HarnessPredicate<NgxTimePickerHarness> {\n return new HarnessPredicate(NgxTimePickerHarness, options).addOption('value', options.value, (harness, value) => HarnessPredicate.stringMatches(harness.getValue(), value));\n }\n\n public async getHoursInput(): Promise<MatInputHarness> {\n return (await this.locatorFactory.harnessLoaderFor('.hours')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));\n }\n\n public async getMinutesInput(): Promise<MatInputHarness> {\n return (await this.locatorFactory.harnessLoaderFor('.minutes')).getHarness(MatInputHarness.with({ selector: '[matInput]' }));\n }\n\n public async setValue(value: string): Promise<void> {\n const hoursMinutes = value.split(':');\n\n if (hoursMinutes[0].length) {\n await this.getHoursInput().then(async hoursInput => {\n await hoursInput.host().then(async hoursElement => {\n await hoursElement.clear();\n await hoursInput.setValue(hoursMinutes[0]);\n await hoursInput.blur();\n });\n });\n }\n\n if (hoursMinutes[1].length) {\n await this.getMinutesInput().then(async minutesInput => {\n await minutesInput.host().then(async minutesElement => {\n await minutesElement.clear();\n await minutesInput.setValue(hoursMinutes[1]);\n await minutesElement.blur();\n });\n });\n }\n }\n\n public async getValue(): Promise<string> {\n return this.getHoursValue().then(hoursValue => this.getMinutesValue().then(minutesValue => `${hoursValue}:${minutesValue}`));\n }\n\n public async getHoursValue(): Promise<string> {\n return this.getHoursInput().then(hoursInput => hoursInput.getValue());\n }\n\n public async getMinutesValue(): Promise<string> {\n return this.getMinutesInput().then(minutesInput => minutesInput.getValue());\n }\n\n public async sendKeysToHoursInput(...keys: readonly TestKey[]): Promise<void> {\n return this.getHoursInput().then(async hoursInput => {\n await hoursInput.host().then(async hoursElement => {\n await hoursElement.sendKeys(...keys);\n });\n });\n }\n\n public async sendKeysToMinutesInput(...keys: readonly TestKey[]): Promise<void> {\n return this.getMinutesInput().then(async minutesInput => {\n await minutesInput.host().then(async minutesElement => {\n await minutesElement.sendKeys(...keys);\n });\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hug/ngx-time-picker",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.18",
|
|
4
4
|
"description": "HUG Angular - time picker component",
|
|
5
5
|
"homepage": "https://github.com/dsi-hug/ngx-components",
|
|
6
6
|
"license": "GPL-3.0-only",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"rxjs": ">= 7.0.0",
|
|
30
30
|
"date-fns": "^2.30.0",
|
|
31
31
|
"@hug/ngx-core": "^1.1.14",
|
|
32
|
-
"@hug/ngx-numeric-stepper": "^1.1.
|
|
32
|
+
"@hug/ngx-numeric-stepper": "^1.1.13"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"tslib": "^2.6.3"
|
|
@@ -54,6 +54,14 @@
|
|
|
54
54
|
"es2015": "./fesm2015/hug-ngx-time-picker.mjs",
|
|
55
55
|
"node": "./fesm2015/hug-ngx-time-picker.mjs",
|
|
56
56
|
"default": "./fesm2020/hug-ngx-time-picker.mjs"
|
|
57
|
+
},
|
|
58
|
+
"./testing": {
|
|
59
|
+
"types": "./testing/index.d.ts",
|
|
60
|
+
"esm2020": "./esm2020/testing/hug-ngx-time-picker-testing.mjs",
|
|
61
|
+
"es2020": "./fesm2020/hug-ngx-time-picker-testing.mjs",
|
|
62
|
+
"es2015": "./fesm2015/hug-ngx-time-picker-testing.mjs",
|
|
63
|
+
"node": "./fesm2015/hug-ngx-time-picker-testing.mjs",
|
|
64
|
+
"default": "./fesm2020/hug-ngx-time-picker-testing.mjs"
|
|
57
65
|
}
|
|
58
66
|
}
|
|
59
67
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { HarnessPredicate, TestKey } from '@angular/cdk/testing';
|
|
2
|
+
import { MatFormFieldControlHarness } from '@angular/material/form-field/testing/control';
|
|
3
|
+
import { MatInputHarness } from '@angular/material/input/testing';
|
|
4
|
+
import { NgxTimePickerHarnessFilters } from './time-picker-harness-filters';
|
|
5
|
+
/** Harness for interacting with a ngx time picker in tests. */
|
|
6
|
+
export declare class NgxTimePickerHarness extends MatFormFieldControlHarness {
|
|
7
|
+
static hostSelector: string;
|
|
8
|
+
static with(options?: NgxTimePickerHarnessFilters): HarnessPredicate<NgxTimePickerHarness>;
|
|
9
|
+
getHoursInput(): Promise<MatInputHarness>;
|
|
10
|
+
getMinutesInput(): Promise<MatInputHarness>;
|
|
11
|
+
setValue(value: string): Promise<void>;
|
|
12
|
+
getValue(): Promise<string>;
|
|
13
|
+
getHoursValue(): Promise<string>;
|
|
14
|
+
getMinutesValue(): Promise<string>;
|
|
15
|
+
sendKeysToHoursInput(...keys: readonly TestKey[]): Promise<void>;
|
|
16
|
+
sendKeysToMinutesInput(...keys: readonly TestKey[]): Promise<void>;
|
|
17
|
+
}
|