@coolon/angular-ui-powerups 12.4.0-alpha.1 → 12.4.0-alpha.11
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/assets/empty-state.scss +11 -0
- package/assets/styles.scss +1 -0
- package/bundles/coolon-angular-ui-powerups-cypress.umd.js +363 -259
- package/bundles/coolon-angular-ui-powerups-cypress.umd.js.map +1 -1
- package/bundles/coolon-angular-ui-powerups.umd.js +2 -7
- package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
- package/coolon-angular-ui-powerups.metadata.json +1 -1
- package/cypress/builder.d.ts +32 -0
- package/cypress/components/aup-abstract-activity.d.ts +8 -0
- package/cypress/components/aup-activity.d.ts +8 -0
- package/cypress/components/aup-alert.d.ts +8 -0
- package/cypress/components/aup-command-face.d.ts +7 -0
- package/cypress/components/aup-command.d.ts +6 -18
- package/cypress/components/aup-empty-state.d.ts +4 -0
- package/cypress/components/aup-input.d.ts +8 -8
- package/cypress/components/aup-modal-activity.d.ts +4 -0
- package/cypress/components/aup-modal-alert.d.ts +6 -0
- package/cypress/components/aup-table.d.ts +1 -2
- package/cypress/components/button-mixin.d.ts +3 -1
- package/cypress/components/button.d.ts +4 -2
- package/cypress/coolon-angular-ui-powerups-cypress.metadata.json +1 -1
- package/cypress/exports.d.ts +8 -1
- package/cypress/page-builder.d.ts +8 -0
- package/cypress/page-element.d.ts +5 -2
- package/cypress/page.d.ts +4 -30
- package/esm2015/cypress/builder.js +66 -0
- package/esm2015/cypress/builder.js.map +1 -0
- package/esm2015/cypress/builder.metadata.json +1 -0
- package/esm2015/cypress/components/aup-abstract-activity.js +11 -0
- package/esm2015/cypress/components/aup-abstract-activity.js.map +1 -0
- package/esm2015/cypress/components/aup-abstract-activity.metadata.json +1 -0
- package/esm2015/cypress/components/aup-activity.js +13 -0
- package/esm2015/cypress/components/aup-activity.js.map +1 -0
- package/esm2015/cypress/components/aup-activity.metadata.json +1 -0
- package/esm2015/cypress/components/aup-alert.js +13 -0
- package/esm2015/cypress/components/aup-alert.js.map +1 -0
- package/esm2015/cypress/components/aup-alert.metadata.json +1 -0
- package/esm2015/cypress/components/aup-command-face.js +20 -18
- package/esm2015/cypress/components/aup-command-face.js.map +1 -1
- package/esm2015/cypress/components/aup-command-face.metadata.json +1 -1
- package/esm2015/cypress/components/aup-command.js +25 -9
- package/esm2015/cypress/components/aup-command.js.map +1 -1
- package/esm2015/cypress/components/aup-command.metadata.json +1 -1
- package/esm2015/cypress/components/aup-empty-state.js +7 -0
- package/esm2015/cypress/components/aup-empty-state.js.map +1 -0
- package/esm2015/cypress/components/aup-empty-state.metadata.json +1 -0
- package/esm2015/cypress/components/aup-input.js +7 -7
- package/esm2015/cypress/components/aup-input.js.map +1 -1
- package/esm2015/cypress/components/aup-modal-activity.js +7 -0
- package/esm2015/cypress/components/aup-modal-activity.js.map +1 -0
- package/esm2015/cypress/components/aup-modal-activity.metadata.json +1 -0
- package/esm2015/cypress/components/aup-modal-alert.js +12 -0
- package/esm2015/cypress/components/aup-modal-alert.js.map +1 -0
- package/esm2015/cypress/components/aup-modal-alert.metadata.json +1 -0
- package/esm2015/cypress/components/aup-table.js.map +1 -1
- package/esm2015/cypress/components/aup-table.metadata.json +1 -1
- package/esm2015/cypress/components/button.js.map +1 -1
- package/esm2015/cypress/components/button.metadata.json +1 -1
- package/esm2015/cypress/exports.js +8 -1
- package/esm2015/cypress/exports.js.map +1 -1
- package/esm2015/cypress/exports.metadata.json +1 -1
- package/esm2015/cypress/page-builder.js +15 -0
- package/esm2015/cypress/page-builder.js.map +1 -0
- package/esm2015/cypress/page-builder.metadata.json +1 -0
- package/esm2015/cypress/page-element.js +9 -3
- package/esm2015/cypress/page-element.js.map +1 -1
- package/esm2015/cypress/page-element.metadata.json +1 -1
- package/esm2015/cypress/page.js +8 -10
- package/esm2015/cypress/page.js.map +1 -1
- package/esm2015/cypress/page.metadata.json +1 -1
- package/esm2015/cypress/path.js +3 -1
- package/esm2015/cypress/path.js.map +1 -1
- package/esm2015/lib/components/empty-state/empty-state.component.js +1 -1
- package/esm2015/lib/components/empty-state/empty-state.component.metadata.json +1 -1
- package/esm2015/lib/place/url-snapshot.js +1 -7
- package/esm2015/lib/place/url-snapshot.js.map +1 -1
- package/esm2015/lib/place/url-snapshot.metadata.json +1 -1
- package/fesm2015/coolon-angular-ui-powerups-cypress.js +264 -166
- package/fesm2015/coolon-angular-ui-powerups-cypress.js.map +1 -1
- package/fesm2015/coolon-angular-ui-powerups.js +2 -7
- package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
- package/package.json +1 -1
- package/cypress/section.d.ts +0 -49
- package/esm2015/cypress/section.js +0 -58
- package/esm2015/cypress/section.js.map +0 -1
- package/esm2015/cypress/section.metadata.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"AupCommandFace":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"FaceAccessor":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"./types","name":"Types","line":4,"character":29},"member":"CommandFace"}]}],"findIn":[{"__symbolic":"method"}],"shouldNotExist":[{"__symbolic":"method"}]}},"AupCommandFace":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":22,"character":36},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":24,"character":29},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"./types","name":"Types","line":24,"character":48},"member":"CommandFace"}]}]},"statics":{"createAccessor":{"__symbolic":"function","parameters":["face"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"FaceAccessor"},"arguments":[{"__symbolic":"reference","name":"face"}]}}}}}}]
|
|
@@ -1,17 +1,33 @@
|
|
|
1
1
|
import { PageElement } from '../page-element';
|
|
2
2
|
import { AupCommandFace } from './aup-command-face';
|
|
3
|
-
import
|
|
4
|
-
export class AupCommand extends
|
|
5
|
-
constructor(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
import * as _ from 'lodash';
|
|
4
|
+
export class AupCommand extends PageElement {
|
|
5
|
+
constructor(parent, faceOrSelector) {
|
|
6
|
+
super(parent, {
|
|
7
|
+
findIn(parentElement) {
|
|
8
|
+
if (_.isString(faceOrSelector)) {
|
|
9
|
+
return parentElement.find(faceOrSelector);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
return AupCommandFace.createAccessor(faceOrSelector).findIn(parentElement).closest('aup-command');
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
shouldNotExist(parentElement) {
|
|
16
|
+
this.findIn(parentElement).should("not.exist");
|
|
10
17
|
}
|
|
11
18
|
});
|
|
12
19
|
}
|
|
13
|
-
|
|
14
|
-
|
|
20
|
+
click() {
|
|
21
|
+
this.getButton().click();
|
|
22
|
+
}
|
|
23
|
+
getShouldElement() {
|
|
24
|
+
return this.getButton();
|
|
25
|
+
}
|
|
26
|
+
shouldBeDisabled() {
|
|
27
|
+
this.getButton().should('be.disabled');
|
|
28
|
+
}
|
|
29
|
+
getButton() {
|
|
30
|
+
return this.element().find('button');
|
|
15
31
|
}
|
|
16
32
|
}
|
|
17
33
|
//# sourceMappingURL=aup-command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aup-command.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aup-command.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,OAAO,UAAW,SAAQ,WAAW;IAEzC,YAAY,MAAuD,EAAE,cAA0C;QAC7G,KAAK,CAAC,MAAM,EAAE;YACZ,MAAM,CAAC,aAAwC;gBAC7C,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;oBAC9B,OAAO,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBAC3C;qBAAM;oBACL,OAAO,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;iBACnG;YACH,CAAC;YACD,cAAc,CAAC,aAAwC;gBACrD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACjD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK;QACH,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACzC,CAAC;IAEO,SAAS;QACf,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;CAEF","sourcesContent":["import { PageElement } from '../page-element';\nimport { AupCommandFace } from './aup-command-face';\nimport { Types } from './types';\nimport * as _ from 'lodash';\n\nexport class AupCommand extends PageElement {\n\n constructor(parent: PageElement | (() => Cypress.Chainable<JQuery>), faceOrSelector: string | Types.CommandFace) {\n super(parent, {\n findIn(parentElement: Cypress.Chainable<JQuery>): Cypress.Chainable<JQuery> {\n if (_.isString(faceOrSelector)) {\n return parentElement.find(faceOrSelector);\n } else {\n return AupCommandFace.createAccessor(faceOrSelector).findIn(parentElement).closest('aup-command');\n }\n },\n shouldNotExist(parentElement: Cypress.Chainable<JQuery>) {\n this.findIn(parentElement).should(\"not.exist\");\n }\n });\n }\n\n click() {\n this.getButton().click();\n }\n\n getShouldElement(): Cypress.Chainable<JQuery> {\n return this.getButton();\n }\n\n shouldBeDisabled() {\n this.getButton().should('be.disabled');\n }\n\n private getButton() {\n return this.element().find('button');\n }\n\n}\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"AupCommand":{"__symbolic":"class","extends":{"__symbolic":"
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"AupCommand":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":5,"character":32},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":7,"character":36},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"./types","name":"Types","line":7,"character":96},"member":"CommandFace"}]}],"click":[{"__symbolic":"method"}],"getShouldElement":[{"__symbolic":"method"}],"shouldBeDisabled":[{"__symbolic":"method"}],"getButton":[{"__symbolic":"method"}]}}}}]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aup-empty-state.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-empty-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,OAAO,aAAc,SAAQ,WAAW;IAE5C,iBAAiB,CAAC,IAAW;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;IAC7C,CAAC;CACF","sourcesContent":["import { PageElement } from '../page-element';\n\nexport class AupEmptyState extends PageElement {\n\n shouldContainText(text:string) {\n this.element().should(\"contain.text\", text)\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"AupEmptyState":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":2,"character":35},"members":{"shouldContainText":[{"__symbolic":"method"}]}}}}]
|
|
@@ -10,13 +10,13 @@ export class AupInput extends PageElement {
|
|
|
10
10
|
return this.element().find('mat-error');
|
|
11
11
|
}
|
|
12
12
|
get labelShould() {
|
|
13
|
-
return this.label()
|
|
13
|
+
return this.getShoulder(this.label());
|
|
14
14
|
}
|
|
15
15
|
get hintShould() {
|
|
16
|
-
return this.hint()
|
|
16
|
+
return this.getShoulder(this.hint());
|
|
17
17
|
}
|
|
18
18
|
get errorShould() {
|
|
19
|
-
return this.error()
|
|
19
|
+
return this.getShoulder(this.error());
|
|
20
20
|
}
|
|
21
21
|
labelShouldBe(text) {
|
|
22
22
|
return this.labelShould("have.text", text);
|
|
@@ -42,14 +42,14 @@ export class AupInput extends PageElement {
|
|
|
42
42
|
input.type(`${value}`);
|
|
43
43
|
this.input().should('have.value', `${value}`);
|
|
44
44
|
}
|
|
45
|
-
|
|
46
|
-
return this.input()
|
|
45
|
+
getShouldElement() {
|
|
46
|
+
return this.input();
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
AupInput.HtmlInput = HtmlInput;
|
|
50
50
|
class TextAreaInput extends AupInput {
|
|
51
|
-
|
|
52
|
-
return this.input()
|
|
51
|
+
getShouldElement() {
|
|
52
|
+
return this.input();
|
|
53
53
|
}
|
|
54
54
|
input() {
|
|
55
55
|
return this.element().find('textarea');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aup-input.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,OAAgB,QAAY,SAAQ,WAAW;IAEnD,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,WAAW;QACb,OAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"aup-input.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,OAAgB,QAAY,SAAQ,WAAW;IAEnD,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,WAAW;QACb,OAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,UAAU;QACZ,OAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,WAAW;QACb,OAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,OAAQ,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;CAMF;AAED,WAAiB,QAAQ;IACvB,MAAa,SAAa,SAAQ,QAAW;QAC3C,KAAK;YACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QAED,KAAK;YACH,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;QAED,QAAQ,CAAC,KAAQ;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,gBAAgB;YACd,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;KAEF;IApBY,kBAAS,YAoBrB,CAAA;IAED,MAAa,aAAiB,SAAQ,QAAW;QAE/C,gBAAgB;YACd,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QAED,KAAK;YACH,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;QAED,KAAK;YACH,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;QAED,QAAQ,CAAC,KAAQ;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;KACF;IApBY,sBAAa,gBAoBzB,CAAA;AAEH,CAAC,EA7CgB,QAAQ,KAAR,QAAQ,QA6CxB","sourcesContent":["import { PageElement } from '../page-element';\n\nexport abstract class AupInput<T> extends PageElement {\n\n label() {\n return this.element().find('label');\n }\n\n hint() {\n return this.element().find('mat-hint');\n }\n\n error() {\n return this.element().find('mat-error');\n }\n\n get labelShould() {\n return this.getShoulder(this.label())\n }\n\n get hintShould() {\n return this.getShoulder(this.hint());\n }\n\n get errorShould() {\n return this.getShoulder(this.error());\n }\n\n labelShouldBe(text: string) {\n return this.labelShould(\"have.text\", text);\n }\n\n hintShouldBe(text: string) {\n return this.hintShould(\"have.text\", text);\n }\n\n errorShouldBe(text: string) {\n return this.errorShould(\"have.text\", text);\n }\n\n abstract clear();\n\n abstract setValue(value: T);\n\n}\n\nexport namespace AupInput {\n export class HtmlInput<T> extends AupInput<T> {\n input() {\n return this.element().find('input');\n }\n\n clear() {\n this.input().clear();\n }\n\n setValue(value: T) {\n const input = this.input();\n input.clear();\n input.type(`${value}`);\n this.input().should('have.value', `${value}`);\n }\n\n getShouldElement(): Cypress.Chainable<JQuery> {\n return this.input();\n }\n\n }\n\n export class TextAreaInput<T> extends AupInput<T> {\n\n getShouldElement(): Cypress.Chainable<JQuery> {\n return this.input();\n }\n\n input() {\n return this.element().find('textarea');\n }\n\n clear() {\n this.input().clear();\n }\n\n setValue(value: T) {\n const input = this.input();\n input.clear();\n input.type(`${value}`);\n this.input().should('have.value', value);\n }\n }\n\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aup-modal-activity.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-modal-activity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAE/C,aAAa;QACX,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;CAEF","sourcesContent":["import { AupActivity } from './aup-activity';\n\nexport class AupModalActivity extends AupActivity {\n\n clickBackdrop() {\n this.element().closest(`.cdk-overlay-backdrop`).click(-50, -50, { force: true });\n }\n\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"AupModalActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"./aup-activity","name":"AupActivity","line":2,"character":38},"members":{"clickBackdrop":[{"__symbolic":"method"}]}}}}]
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AupAlert } from './aup-alert';
|
|
2
|
+
export class AupModalAlert extends AupAlert {
|
|
3
|
+
constructor(parent, selector) {
|
|
4
|
+
super(parent, selector);
|
|
5
|
+
}
|
|
6
|
+
clickBackdrop() {
|
|
7
|
+
this.element()
|
|
8
|
+
.closest(`.cdk-overlay-container`)
|
|
9
|
+
.find(`.cdk-overlay-backdrop`).click(-50, -50, { force: true });
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=aup-modal-alert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aup-modal-alert.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-modal-alert.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,OAAO,aAAc,SAAQ,QAAQ;IAEzC,YAAY,MAAiC,EAAE,QAAuC;QACpF,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAED,aAAa;QACX,IAAI,CAAC,OAAO,EAAE;aACX,OAAO,CAAC,wBAAwB,CAAC;aACjC,IAAI,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;CAEF","sourcesContent":["import { PageElement } from '../page-element';\nimport { AupAlert } from './aup-alert';\n\nexport class AupModalAlert extends AupAlert {\n\n constructor(parent: PageElement.ParentLocator, selector: string | PageElement.Accessor) {\n super(parent, selector);\n }\n\n clickBackdrop() {\n this.element()\n .closest(`.cdk-overlay-container`)\n .find(`.cdk-overlay-backdrop`).click(-50, -50, { force: true });\n }\n\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"AupModalAlert":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"./aup-alert","name":"AupAlert","line":3,"character":35},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":5,"character":22},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":5,"character":68},"member":"Accessor"}]}],"clickBackdrop":[{"__symbolic":"method"}]}}}}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aup-table.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,MAAM,OAAO,QAAS,SAAQ,WAAW;IAEvC,YAAY,
|
|
1
|
+
{"version":3,"file":"aup-table.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/aup-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,MAAM,OAAO,QAAS,SAAQ,WAAW;IAEvC,YAAY,qBAAgD,EAAE,QAAuC;QACnG,KAAK,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,GAAG,CAAC,KAAU;QACZ,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,mBAAmB,KAAK,GAAG,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,QAAgB;QACrB,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;CAEF;AAED,WAAiB,QAAQ;IACvB,MAAa,GAAI,SAAQ,WAAW;KAEnC;IAFY,YAAG,MAEf,CAAA;IAED,MAAa,MAAM;QACjB,YAAqB,KAAe,EAAW,QAAgB;YAA1C,UAAK,GAAL,KAAK,CAAU;YAAW,aAAQ,GAAR,QAAQ,CAAQ;QAC/D,CAAC;QAED,IAAI,CAAC,OAAe;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC;YAClB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBAC1B,MAAM,CAAC,MAAiC;oBACtC,OAAO,MAAM,CAAC,QAAQ,CAAC,qCAAqC,IAAI,CAAC,QAAQ,GAAG,EAAE,OAAO,CAAC,CAAC;gBACzF,CAAC;aACF,CAAC,CAAC;QACL,CAAC;KACF;IAZY,eAAM,SAYlB,CAAA;IAED,MAAa,IAAK,SAAQ,WAAW;KACpC;IADY,aAAI,OAChB,CAAA;AACH,CAAC,EArBgB,QAAQ,KAAR,QAAQ,QAqBxB","sourcesContent":["import { PageElement } from '../page-element';\nimport { Builder } from '../builder';\n\nexport class AupTable extends PageElement {\n\n constructor(parentElementAccessor: PageElement.ParentLocator, selector: string | PageElement.Accessor) {\n super(parentElementAccessor, selector);\n }\n\n row(rowId: any): AupTable.Row {\n return new AupTable.Row(() => this.element(), `tr[aup-table-id=${rowId}]`);\n }\n\n column(columnId: string): AupTable.Column {\n return new AupTable.Column(this, columnId);\n }\n\n}\n\nexport namespace AupTable {\n export class Row extends PageElement {\n\n }\n\n export class Column {\n constructor(readonly table: AupTable, readonly columnId: string) {\n }\n\n cell(content: string): Cell {\n const self = this;\n return new Cell(this.table, {\n findIn(parent: Cypress.Chainable<JQuery>): Cypress.Chainable<JQuery> {\n return parent.contains(`aup-table-cell-renderer[column-id=${self.columnId}]`, content);\n }\n });\n }\n }\n\n export class Cell extends PageElement {\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"AupTable":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":3,"character":30},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"AupTable":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":3,"character":30},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":5,"character":37},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":5,"character":83},"member":"Accessor"}]}],"row":[{"__symbolic":"method"}],"column":[{"__symbolic":"method"}]}}}}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,MAAO,SAAQ,WAAW,CAAC,WAAW,CAAC;IAElD,YAAY,
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/cypress/src/components/button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,OAAO,MAAO,SAAQ,WAAW,CAAC,WAAW,CAAC;IAElD,YAAY,qBAAgD,EAAE,UAAkB;QAC9E,KAAK,CAAC,qBAAqB,EAAE;YAC3B,MAAM,CAAC,MAAiC;gBACtC,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC/C,CAAC;YACD,cAAc,CAAC,MAAiC;gBAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAClD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CAEF","sourcesContent":["import { PageElement } from '../page-element';\nimport { ButtonMixin } from './button-mixin';\n\nexport class Button extends ButtonMixin(PageElement) {\n\n constructor(parentElementAccessor: PageElement.ParentLocator, buttonText: string) {\n super(parentElementAccessor, {\n findIn(parent: Cypress.Chainable<JQuery>): Cypress.Chainable<JQuery> {\n return parent.contains('button', buttonText);\n },\n shouldNotExist(parent: Cypress.Chainable<JQuery>) {\n return parent.should('not.contain', buttonText);\n }\n });\n }\n\n}\n\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"Button":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":3,"character":28},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"Button":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":3,"character":28},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":5,"character":37},"member":"ParentLocator"},{"__symbolic":"reference","name":"string"}]}]}}}}]
|
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @file Automatically generated by barrelsby.
|
|
3
3
|
*/
|
|
4
|
+
export * from "./builder";
|
|
5
|
+
export * from "./page-builder";
|
|
4
6
|
export * from "./page-element";
|
|
5
7
|
export * from "./page";
|
|
6
8
|
export * from "./path";
|
|
7
|
-
export * from "./
|
|
9
|
+
export * from "./components/aup-abstract-activity";
|
|
10
|
+
export * from "./components/aup-activity";
|
|
11
|
+
export * from "./components/aup-alert";
|
|
8
12
|
export * from "./components/aup-command-face";
|
|
9
13
|
export * from "./components/aup-command-group";
|
|
10
14
|
export * from "./components/aup-command";
|
|
15
|
+
export * from "./components/aup-empty-state";
|
|
11
16
|
export * from "./components/aup-input";
|
|
17
|
+
export * from "./components/aup-modal-activity";
|
|
18
|
+
export * from "./components/aup-modal-alert";
|
|
12
19
|
export * from "./components/aup-more-menu";
|
|
13
20
|
export * from "./components/aup-navigation";
|
|
14
21
|
export * from "./components/aup-popup-menu";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/exports.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,
|
|
1
|
+
{"version":3,"file":"exports.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/exports.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,oCAAoC,CAAC;AACnD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC","sourcesContent":["/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./builder\";\nexport * from \"./page-builder\";\nexport * from \"./page-element\";\nexport * from \"./page\";\nexport * from \"./path\";\nexport * from \"./components/aup-abstract-activity\";\nexport * from \"./components/aup-activity\";\nexport * from \"./components/aup-alert\";\nexport * from \"./components/aup-command-face\";\nexport * from \"./components/aup-command-group\";\nexport * from \"./components/aup-command\";\nexport * from \"./components/aup-empty-state\";\nexport * from \"./components/aup-input\";\nexport * from \"./components/aup-modal-activity\";\nexport * from \"./components/aup-modal-alert\";\nexport * from \"./components/aup-more-menu\";\nexport * from \"./components/aup-navigation\";\nexport * from \"./components/aup-popup-menu\";\nexport * from \"./components/aup-table\";\nexport * from \"./components/aup-tool-bar\";\nexport * from \"./components/button-mixin\";\nexport * from \"./components/button\";\nexport * from \"./components/types\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./page-element"},{"from":"./page"},{"from":"./path"},{"from":"./
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./builder"},{"from":"./page-builder"},{"from":"./page-element"},{"from":"./page"},{"from":"./path"},{"from":"./components/aup-abstract-activity"},{"from":"./components/aup-activity"},{"from":"./components/aup-alert"},{"from":"./components/aup-command-face"},{"from":"./components/aup-command-group"},{"from":"./components/aup-command"},{"from":"./components/aup-empty-state"},{"from":"./components/aup-input"},{"from":"./components/aup-modal-activity"},{"from":"./components/aup-modal-alert"},{"from":"./components/aup-more-menu"},{"from":"./components/aup-navigation"},{"from":"./components/aup-popup-menu"},{"from":"./components/aup-table"},{"from":"./components/aup-tool-bar"},{"from":"./components/button-mixin"},{"from":"./components/button"},{"from":"./components/types"}]}]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Builder } from './builder';
|
|
2
|
+
import { AupModalActivity } from './components/aup-modal-activity';
|
|
3
|
+
import { AupModalAlert } from './components/aup-modal-alert';
|
|
4
|
+
export class PageBuilder extends Builder {
|
|
5
|
+
aupModalActivity(selector, builder) {
|
|
6
|
+
return this.createContainerElement(AupModalActivity, `.dialog-interaction-context ${selector}`, builder);
|
|
7
|
+
}
|
|
8
|
+
aupModalAlert(builder) {
|
|
9
|
+
return this.createContainerElement(AupModalAlert, `.dialog-interaction-context aup-alert-dialog`, builder);
|
|
10
|
+
}
|
|
11
|
+
aupModelConfirm(builder) {
|
|
12
|
+
return this.aupModalActivity(`aup-confirm-dialog`, builder);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=page-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page-builder.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/page-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,OAAO,WAAY,SAAQ,OAAO;IAGtC,gBAAgB,CAAmB,QAAgB,EAAE,OAA4B;QAC/E,OAAO,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,EAAC,+BAA+B,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1G,CAAC;IAED,aAAa,CAAmB,OAA6B;QAC3D,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,8CAA8C,EAAE,OAAO,CAAC,CAAC;IAC7G,CAAC;IAED,eAAe,CAAmB,OAA6B;QAC7D,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;CACF","sourcesContent":["import { Builder } from './builder';\nimport { AupModalActivity } from './components/aup-modal-activity';\nimport { AupModalAlert } from './components/aup-modal-alert';\n\nexport class PageBuilder extends Builder {\n\n\n aupModalActivity<T extends object>(selector: string, builder: Builder.Callback<T>): T & AupModalActivity {\n return this.createContainerElement(AupModalActivity,`.dialog-interaction-context ${selector}`, builder);\n }\n\n aupModalAlert<T extends object>(builder?: Builder.Callback<T>): T & AupModalAlert {\n return this.createContainerElement(AupModalAlert, `.dialog-interaction-context aup-alert-dialog`, builder);\n }\n\n aupModelConfirm<T extends object>(builder?: Builder.Callback<T>): T & AupModalActivity {\n return this.aupModalActivity(`aup-confirm-dialog`, builder);\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"PageBuilder":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"./builder","name":"Builder","line":4,"character":33},"members":{"aupModalActivity":[{"__symbolic":"method"}],"aupModalAlert":[{"__symbolic":"method"}],"aupModelConfirm":[{"__symbolic":"method"}]}}}}]
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as _ from 'lodash';
|
|
2
1
|
import { lang } from '@coolon/typescript-utilities';
|
|
2
|
+
import * as _ from 'lodash';
|
|
3
3
|
export class PageElement {
|
|
4
4
|
constructor(parent, selector) {
|
|
5
5
|
this.parentElementAccessor = parent instanceof PageElement ? () => parent.element() : parent;
|
|
6
6
|
this.elementAccessStrategy = _.isString(selector) ? {
|
|
7
7
|
findIn: p => p.find(selector),
|
|
8
|
-
shouldNotExist: (p) => p.should('not.
|
|
8
|
+
shouldNotExist: (p) => p.find(selector).should('not.exist')
|
|
9
9
|
} : selector;
|
|
10
10
|
}
|
|
11
11
|
element() {
|
|
@@ -22,7 +22,13 @@ export class PageElement {
|
|
|
22
22
|
text ? this.element().contains(text).click() : this.element().click();
|
|
23
23
|
}
|
|
24
24
|
get should() {
|
|
25
|
-
return this.
|
|
25
|
+
return this.getShoulder(this.getShouldElement());
|
|
26
|
+
}
|
|
27
|
+
getShoulder(element) {
|
|
28
|
+
return element.should.bind(element);
|
|
29
|
+
}
|
|
30
|
+
getShouldElement() {
|
|
31
|
+
return this.element();
|
|
26
32
|
}
|
|
27
33
|
shouldBeVisible() {
|
|
28
34
|
this.should('be.visible');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-element.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/page-element.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"page-element.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/page-element.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,OAAO,WAAW;IAKtB,YAAY,MAAiC,EAAE,QAAuC;QAEpF,IAAI,CAAC,qBAAqB,GAAG,MAAM,YAAY,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7F,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC7B,cAAc,EAAE,CAAC,CAA4B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;SACvF,CAAC,CAAC,CAAC,QAAQ,CAAC;IACf,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,CAAC;IAED,IAAI,CAAC,QAAgB;QACnB,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,IAAa;QACjB,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC;IACxE,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,WAAW,CAAC,OAA0B;QACpC,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5B,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE;YAC9C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SACvC;QACD,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrE,CAAC;CACF","sourcesContent":["import Chainable = Cypress.Chainable;\nimport { lang } from '@coolon/typescript-utilities';\nimport * as _ from 'lodash';\n\nexport class PageElement {\n\n readonly elementAccessStrategy: PageElement.Accessor;\n readonly parentElementAccessor: () => Cypress.Chainable<JQuery>;\n\n constructor(parent: PageElement.ParentLocator, selector: string | PageElement.Accessor) {\n\n this.parentElementAccessor = parent instanceof PageElement ? () => parent.element() : parent;\n this.elementAccessStrategy = _.isString(selector) ? {\n findIn: p => p.find(selector),\n shouldNotExist: (p: Cypress.Chainable<JQuery>) => p.find(selector).should('not.exist')\n } : selector;\n }\n\n element(): Chainable<JQuery> {\n const parent = this.getParentElement();\n return parent ? this.elementAccessStrategy.findIn(parent) : undefined;\n }\n\n getParentElement(): Cypress.Chainable<JQuery> {\n return this.parentElementAccessor ? this.parentElementAccessor() : undefined;\n }\n\n find(selector: string): PageElement {\n return new PageElement(() => this.element(), selector);\n }\n\n click(text?: string) {\n text ? this.element().contains(text).click() : this.element().click();\n }\n\n get should() {\n return this.getShoulder(this.getShouldElement());\n }\n\n getShoulder(element: Chainable<JQuery>) {\n return element.should.bind(element);\n }\n\n getShouldElement(): Chainable<JQuery> {\n return this.element();\n }\n\n shouldBeVisible() {\n this.should('be.visible');\n }\n\n shouldNotBeVisible() {\n if (!this.elementAccessStrategy.shouldNotExist) {\n lang.abstractMethod(this.constructor);\n }\n this.elementAccessStrategy.shouldNotExist(this.getParentElement());\n }\n}\n\nexport namespace PageElement {\n\n export type ParentLocator = PageElement | (() => Cypress.Chainable<JQuery>);\n\n export interface Accessor {\n findIn(parent: Cypress.Chainable<JQuery>): Cypress.Chainable<JQuery>;\n\n shouldNotExist?(parent: Cypress.Chainable<JQuery>);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"PageElement":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"PageElement":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"element":[{"__symbolic":"method"}],"getParentElement":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"click":[{"__symbolic":"method"}],"getShoulder":[{"__symbolic":"method"}],"getShouldElement":[{"__symbolic":"method"}],"shouldBeVisible":[{"__symbolic":"method"}],"shouldNotBeVisible":[{"__symbolic":"method"}]}}}}]
|
package/esm2015/cypress/page.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Mixin } from '@coolon/typescript-utilities';
|
|
2
2
|
import * as _ from 'lodash';
|
|
3
|
+
import { PageBuilder } from './page-builder';
|
|
3
4
|
import { PageElement } from './page-element';
|
|
4
5
|
import { Path } from './path';
|
|
5
|
-
import { Section } from './section';
|
|
6
6
|
export class Page extends PageElement {
|
|
7
7
|
constructor(path) {
|
|
8
8
|
super(undefined, undefined);
|
|
@@ -32,8 +32,8 @@ export class Page extends PageElement {
|
|
|
32
32
|
}
|
|
33
33
|
shouldBeActive(withParameters) {
|
|
34
34
|
// Note: cy.window() doesn't return a promise... it's a chainable.
|
|
35
|
-
cy
|
|
36
|
-
cy
|
|
35
|
+
cy['waitUntil'](() => {
|
|
36
|
+
return cy.window().then(window => {
|
|
37
37
|
return window['aup.PlaceRouter'] && !window['aup.PlaceRouter'].isNavigating();
|
|
38
38
|
});
|
|
39
39
|
});
|
|
@@ -50,20 +50,18 @@ export class Page extends PageElement {
|
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
(function (Page) {
|
|
53
|
-
function create(pathOrPathBuilder,
|
|
53
|
+
function create(pathOrPathBuilder, builder) {
|
|
54
54
|
const pathBuilder = new Path.Builder();
|
|
55
55
|
if (_.isString(pathOrPathBuilder)) {
|
|
56
|
-
pathOrPathBuilder.split(
|
|
56
|
+
pathOrPathBuilder.split('/').filter(p => !_.isEmpty(p)).forEach(p => pathBuilder.segment(p));
|
|
57
57
|
}
|
|
58
58
|
else {
|
|
59
59
|
pathOrPathBuilder(pathBuilder);
|
|
60
60
|
}
|
|
61
|
-
const
|
|
62
|
-
|
|
61
|
+
const instance = new Page(pathBuilder.getPath());
|
|
62
|
+
const content = builder(new PageBuilder(instance));
|
|
63
|
+
return Mixin.createProxy(content, instance);
|
|
63
64
|
}
|
|
64
65
|
Page.create = create;
|
|
65
|
-
class PageBuilder extends Section.Mixin(Page) {
|
|
66
|
-
}
|
|
67
|
-
Page.PageBuilder = PageBuilder;
|
|
68
66
|
})(Page || (Page = {}));
|
|
69
67
|
//# sourceMappingURL=page.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/page.ts"],"names":[],"mappings":"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","sourcesContent":["import { Mixin } from '@coolon/typescript-utilities';\nimport * as _ from 'lodash';\nimport { Builder } from './builder';\nimport { PageBuilder } from './page-builder';\nimport { PageElement } from './page-element';\nimport { Path } from './path';\n\nexport class Page extends PageElement {\n\n protected rootElementSelector = 'body';\n\n constructor(readonly path: Path) {\n super(undefined, undefined);\n }\n\n element(): Cypress.Chainable<JQuery<HTMLElement>> {\n return cy.get(this.rootElementSelector);\n }\n\n visit(visitParams?: object, queryParams?: { [key: string]: string }) {\n this.tryAndVisit(visitParams, queryParams);\n this.shouldBeActive(visitParams);\n }\n\n tryAndVisit(params?: object, queryParams?: { [key: string]: string }) {\n const path = this.path.toUrl(params ?? {});\n const queryString = queryParams ? `?${new URLSearchParams(queryParams).toString()}` : '';\n cy.visit(`/${path}${queryString}`);\n }\n\n shouldHaveActivityIds(...ids: string[]) {\n cy.location('search').should('contain', `?aup-interactions=${ids.join('--')}`);\n }\n\n shouldNotHaveActivityIds() {\n cy.location('search').should('not.contain', `?aup-interactions`);\n }\n\n shouldHaveTitle(title: string) {\n cy.title().should('eq', title);\n }\n\n shouldBeActive(withParameters?: object) {\n // Note: cy.window() doesn't return a promise... it's a chainable.\n cy['waitUntil'](() => {\n return cy.window().then(window => {\n return window['aup.PlaceRouter'] && !window['aup.PlaceRouter'].isNavigating();\n });\n });\n\n if (withParameters) {\n cy.location('pathname').then(path => {\n const urlParams = Path.extractVisitParameters(path);\n Object.keys(withParameters).forEach(param => {\n const expected = withParameters[param];\n // @ts-ignore\n expect(urlParams[param]).to.equal(expected);\n });\n });\n }\n }\n\n}\n\n\nexport namespace Page {\n\n export function create<T extends object>(path: string, builder: Builder.Callback<T, PageBuilder>): T & Page\n // tslint:disable-next-line:unified-signatures\n export function create<T extends object>(pathBuilder: ((pathBuilder: Path.Builder) => void), builder: Builder.Callback<T, PageBuilder>): T & Page\n export function create<T extends object>(pathOrPathBuilder: string | ((pathBuilder: Path.Builder) => void), builder: Builder.Callback<T, PageBuilder>): T & Page {\n const pathBuilder = new Path.Builder();\n if (_.isString(pathOrPathBuilder)) {\n pathOrPathBuilder.split('/').filter(p => !_.isEmpty(p)).forEach(p => pathBuilder.segment(p));\n } else {\n pathOrPathBuilder(pathBuilder);\n }\n const instance = new Page(pathBuilder.getPath());\n const content = builder(new PageBuilder(instance));\n return Mixin.createProxy(content, instance) as T & Page;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"Page":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"./page-element","name":"PageElement","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"Page":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"./page-element","name":"PageElement","line":7,"character":26},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./path","name":"Path","line":11,"character":29}]}],"element":[{"__symbolic":"method"}],"visit":[{"__symbolic":"method"}],"tryAndVisit":[{"__symbolic":"method"}],"shouldHaveActivityIds":[{"__symbolic":"method"}],"shouldNotHaveActivityIds":[{"__symbolic":"method"}],"shouldHaveTitle":[{"__symbolic":"method"}],"shouldBeActive":[{"__symbolic":"method"}]}}}}]
|
package/esm2015/cypress/path.js
CHANGED
|
@@ -5,9 +5,11 @@ export class Path {
|
|
|
5
5
|
this.segments = segments;
|
|
6
6
|
}
|
|
7
7
|
static extractVisitParameters(url) {
|
|
8
|
+
var _a, _b;
|
|
8
9
|
let result = {};
|
|
9
10
|
const urlTree = urlSerialiser.parse(url);
|
|
10
|
-
urlTree.root.children.primary.segments
|
|
11
|
+
const urlSegments = (_b = (_a = urlTree.root.children.primary) === null || _a === void 0 ? void 0 : _a.segments) !== null && _b !== void 0 ? _b : [];
|
|
12
|
+
urlSegments === null || urlSegments === void 0 ? void 0 : urlSegments.forEach(s => {
|
|
11
13
|
result = Object.assign(Object.assign({}, result), s.parameters);
|
|
12
14
|
});
|
|
13
15
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAiB,MAAM,iBAAiB,CAAC;AAEtE,IAAI,aAAa,GAAkB,IAAI,oBAAoB,EAAE,CAAC;AAE9D,MAAM,OAAO,IAAI;IAEf,YAAqB,QAAwB;QAAxB,aAAQ,GAAR,QAAQ,CAAgB;IAC7C,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAC,GAAW
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAiB,MAAM,iBAAiB,CAAC;AAEtE,IAAI,aAAa,GAAkB,IAAI,oBAAoB,EAAE,CAAC;AAE9D,MAAM,OAAO,IAAI;IAEf,YAAqB,QAAwB;QAAxB,aAAQ,GAAR,QAAQ,CAAgB;IAC7C,CAAC;IAED,MAAM,CAAC,sBAAsB,CAAC,GAAW;;QACvC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,WAAW,GAAG,MAAA,MAAA,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,0CAAE,QAAQ,mCAAI,EAAE,CAAC;QAClE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,mCAAQ,MAAM,GAAK,CAAC,CAAC,UAAU,CAAE,CAAA;QACzC,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,YAAoB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrE,CAAC;CAEF;AAED,WAAiB,IAAI;IAEnB,SAAgB,gBAAgB,CAAC,UAAyB;QACxD,aAAa,GAAG,UAAU,CAAC;IAC7B,CAAC;IAFe,qBAAgB,mBAE/B,CAAA;IAED,MAAa,OAAO;QAKlB,YAAqB,IAAY,EAAE,SAAwB,EAAE;;YAAxC,SAAI,GAAJ,IAAI,CAAQ;YAC/B,IAAI,CAAC,OAAO,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,mCAAI,EAAE,CAAC;QAC/C,CAAC;QAED,SAAS,CAAC,MAAc;YACtB,IAAI,IAAI,GAAW,IAAI,CAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,KAAK,EAAE;oBACT,IAAI,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;iBAChC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBACxC,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC1C;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KAEF;IAxBY,YAAO,UAwBnB,CAAA;IAED,MAAa,OAAO;QAApB;YAEU,aAAQ,GAAc,EAAE,CAAC;QAWnC,CAAC;QATC,OAAO,CAAC,IAAY,EAAE,MAAsB;YAC1C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;KACF;IAbY,YAAO,UAanB,CAAA;AAMH,CAAC,EAnDgB,IAAI,KAAJ,IAAI,QAmDpB","sourcesContent":["import { DefaultUrlSerializer, UrlSerializer } from '@angular/router';\n\nlet urlSerialiser: UrlSerializer = new DefaultUrlSerializer();\n\nexport class Path {\n\n constructor(readonly segments: Path.Segment[]) {\n }\n\n static extractVisitParameters(url: string): object {\n let result = {};\n const urlTree = urlSerialiser.parse(url);\n const urlSegments = urlTree.root.children.primary?.segments ?? [];\n urlSegments?.forEach(s => {\n result = { ...result, ...s.parameters }\n });\n return result;\n }\n\n toUrl(matrixParams: object): string {\n return this.segments.map(s => s.toUrlPart(matrixParams)).join('/');\n }\n\n}\n\nexport namespace Path {\n\n export function setUrlSerialiser(serialiser: UrlSerializer) {\n urlSerialiser = serialiser;\n }\n\n export class Segment {\n\n private routeId: string | undefined;\n private visitParams: string[];\n\n constructor(readonly path: string, params: SegmentParams = {}) {\n this.routeId = params?.routeId;\n this.visitParams = params?.visitParams ?? [];\n }\n\n toUrlPart(params: object) {\n let path: string = this.path;\n this.visitParams.forEach(p => {\n const value = params[p];\n if (value) {\n path = `${path};${p}=${value}`;\n }\n });\n if (this.routeId && params[this.routeId]) {\n path = path + '/' + params[this.routeId];\n }\n return path;\n }\n\n }\n\n export class Builder {\n\n private segments: Segment[] = [];\n\n segment(name: string, params?: SegmentParams): this {\n const builder = new Segment(name, params);\n this.segments.push(builder);\n return this;\n }\n\n getPath(): Path {\n return new Path(this.segments);\n }\n }\n\n export interface SegmentParams {\n routeId?: string;\n visitParams?: string[]\n }\n}\n"]}
|
|
@@ -13,7 +13,7 @@ EmptyStateComponent.decorators = [
|
|
|
13
13
|
<ng-content></ng-content>
|
|
14
14
|
</div>
|
|
15
15
|
`,
|
|
16
|
-
styles: [":host{display:flex;flex-direction:column;justify-content:center;align-items:center}.container{padding:var(--aup-default-padding);border:2px dashed rgba(0,0,0,.2);border-radius:5px;font-size:14px;font-weight:300}"]
|
|
16
|
+
styles: [":host{display:flex;flex-direction:column;justify-content:center;align-items:center}.container{display:flex;flex-direction:column;align-items:stretch;padding:var(--aup-default-padding);border:2px dashed rgba(0,0,0,.2);border-radius:5px;font-size:14px;font-weight:300}"]
|
|
17
17
|
},] }
|
|
18
18
|
];
|
|
19
19
|
EmptyStateComponent.ctorParameters = () => [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"EmptyStateComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-empty-state","template":"\n <div class=\"container\">\n <ng-content></ng-content>\n </div>\n ","styles":[":host{display:flex;flex-direction:column;justify-content:center;align-items:center}.container{padding:var(--aup-default-padding);border:2px dashed rgba(0,0,0,.2);border-radius:5px;font-size:14px;font-weight:300}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}}}}]
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"EmptyStateComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"aup-empty-state","template":"\n <div class=\"container\">\n <ng-content></ng-content>\n </div>\n ","styles":[":host{display:flex;flex-direction:column;justify-content:center;align-items:center}.container{display:flex;flex-direction:column;align-items:stretch;padding:var(--aup-default-padding);border:2px dashed rgba(0,0,0,.2);border-radius:5px;font-size:14px;font-weight:300}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}}}}]
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { __decorate, __metadata } from "tslib";
|
|
2
2
|
import { UrlSegment } from '@angular/router';
|
|
3
|
-
import { Trace } from '@coolon/pectin';
|
|
4
3
|
import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
|
|
5
4
|
import _ from 'lodash';
|
|
6
5
|
import { ConsolidatedParameterMap } from './guards/consolidated-param-map';
|
|
@@ -15,6 +14,7 @@ export class UrlSnapshot {
|
|
|
15
14
|
this.url = url;
|
|
16
15
|
this.urlTree = urlSerializer.parse(url);
|
|
17
16
|
}
|
|
17
|
+
// @Trace()
|
|
18
18
|
updateVisitSegments(visit) {
|
|
19
19
|
const newUrlTree = this.urlSerializer.parse(this.url);
|
|
20
20
|
// Ugly, but it works for now.
|
|
@@ -91,12 +91,6 @@ export class UrlSnapshot {
|
|
|
91
91
|
return `UrlSnapshot(${this.url})`;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
__decorate([
|
|
95
|
-
Trace(),
|
|
96
|
-
__metadata("design:type", Function),
|
|
97
|
-
__metadata("design:paramtypes", [Visit]),
|
|
98
|
-
__metadata("design:returntype", UrlSnapshot)
|
|
99
|
-
], UrlSnapshot.prototype, "updateVisitSegments", null);
|
|
100
94
|
__decorate([
|
|
101
95
|
Memoize(),
|
|
102
96
|
__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url-snapshot.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/place/url-snapshot.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAA0B,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"url-snapshot.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/place/url-snapshot.ts"],"names":[],"mappings":"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","sourcesContent":["import { UrlSegment, UrlSerializer, UrlTree } from '@angular/router';\nimport { Trace } from '@coolon/pectin';\nimport { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';\nimport _ from 'lodash';\nimport { ConsolidatedParameterMap } from './guards/consolidated-param-map';\nimport { PlaceDefinition } from './place-definition';\nimport { Visit } from './visit';\n\nfunction extractPrimarySegments(urlTree: UrlTree): UrlSegment[] {\n return urlTree.root.children.primary.segments;\n}\n\nexport class UrlSnapshot {\n\n readonly urlTree: UrlTree;\n\n // TODO: Update this accept a url Parser so it can be immutable and generate new trees on mutation using toString() are parseUrl.\n constructor(readonly urlSerializer: UrlSerializer, readonly url: string) {\n this.urlTree = urlSerializer.parse(url);\n }\n\n // @Trace()\n public updateVisitSegments(visit: Visit): UrlSnapshot {\n const newUrlTree = this.urlSerializer.parse(this.url);\n // Ugly, but it works for now.\n const segments = [...extractPrimarySegments(newUrlTree)];\n const visitSegments = this.getSegmentsFor(visit);\n const replaceAt = segments.findIndex(segment => segment.path === visitSegments[0].path);\n // do not use the return value, it's the items that were removed!\n segments.splice(replaceAt, visitSegments.length, ...visitSegments);\n newUrlTree.root.children.primary.segments = segments;\n return new UrlSnapshot(this.urlSerializer, newUrlTree.toString());\n }\n\n @Memoize()\n private getPrimarySegments(): UrlSegment[] {\n return extractPrimarySegments(this.urlTree);\n }\n\n /**\n * Converts the visit into segments. Please not that these segments are not e\n * @param visit\n */\n protected getSegmentsFor(visit: Visit): UrlSegment[] {\n return visit.placeDefinition.hasRouteId() ?\n [\n // NOTE:\n // It's important to attach the params to the root path and not the id. If we attach them\n // to an empty id then the angular router won't match the pattern.\n new UrlSegment(visit.placeDefinition.path, visit.placeDefinition.getFormattedRouteParameters(visit)),\n new UrlSegment(visit.placeDefinition.getFormattedRouteId(visit), {})]\n :\n [\n new UrlSegment(visit.placeDefinition.path, visit.placeDefinition.getFormattedRouteParameters(visit))\n ];\n }\n\n includesPathOf(placeDef: PlaceDefinition) {\n return this.getPrimarySegments().find(s => s.path === placeDef.path);\n }\n\n createVisitFor(placeDef: PlaceDefinition) {\n return new Visit(placeDef, new ConsolidatedParameterMap(this.getPrimarySegments()));\n }\n\n getInteractionIds() {\n const queryParam = this.urlTree.queryParams[UrlSnapshot.INTERACTION_QUERY_PARAM];\n if (queryParam) {\n return UrlSnapshot.parseInteractionIds(queryParam);\n } else {\n return [];\n }\n }\n\n hasInteractions() {\n return this.getInteractionIds().length > 0;\n }\n\n hasInteractionIds(ids: string[]): boolean {\n return _.isEqual(this.getInteractionIds(), ids);\n }\n\n // @Trace()\n updateInteractionIds(ids: string[]): UrlSnapshot {\n if (ids.length === 0) {\n return this.removeInteractionIds();\n } else {\n const urlTree = this.urlSerializer.parse(this.url);\n urlTree.queryParams[UrlSnapshot.INTERACTION_QUERY_PARAM] = UrlSnapshot.createPathIdFor(ids);\n return new UrlSnapshot(this.urlSerializer, urlTree.toString());\n }\n }\n\n // @Trace()\n removeInteractionIds(): UrlSnapshot {\n const urlTree = this.urlSerializer.parse(this.url);\n if (urlTree.queryParams && urlTree.queryParams[UrlSnapshot.INTERACTION_QUERY_PARAM]) {\n urlTree.queryParams = {};//[UrlSnapshot.INTERACTION_ROUTER_OUTLET]\n }\n return new UrlSnapshot(this.urlSerializer, urlTree.toString());\n }\n\n toString(): string {\n return `UrlSnapshot(${this.url})`;\n }\n\n // withOptions(options: NavigationExtras) {\n // return new UrlSnapshot(this.urlSerializer, this.url, options);\n // }\n //\n // @Trace()\n // getNavigationExtras(): NavigationExtras {\n // return this.options;\n // }\n\n}\n\nexport namespace UrlSnapshot {\n\n export const INTERACTION_QUERY_PARAM = 'aup-interactions';\n export const INTERACTION_ID_SEPARATOR = '--';\n\n export function parseInteractionIds(path: string) {\n return path.split(INTERACTION_ID_SEPARATOR);\n }\n\n export function createPathIdFor(interactionIds: string[]) {\n return interactionIds.join(INTERACTION_ID_SEPARATOR);\n }\n\n export interface NavigationOptions {\n replaceUrl?: boolean;\n }\n}\n"]}
|