@coolon/angular-ui-powerups 12.4.0-alpha.10 → 12.4.0-alpha.12

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.
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"exports":[{"from":"./components/types"}],"metadata":{"Builder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"PageElement"}]}],"find":[{"__symbolic":"method"}],"section":[{"__symbolic":"method"}],"contains":[{"__symbolic":"method"}],"button":[{"__symbolic":"method"}],"aupStringInput":[{"__symbolic":"method"}],"aupTextInput":[{"__symbolic":"method"}],"aupPasswordInput":[{"__symbolic":"method"}],"aupNumberInput":[{"__symbolic":"method"}],"aupCommand":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"aupTabbedNavigation":[{"__symbolic":"method"}],"aupSideNavigation":[{"__symbolic":"method"}],"aupTable":[{"__symbolic":"method"}]}},"PageBuilder":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Builder"},"members":{"aupModalActivity":[{"__symbolic":"method"}],"aupModalAlert":[{"__symbolic":"method"}],"aupModelConfirm":[{"__symbolic":"method"}]}},"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"}]}},"Page":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Path"}]}],"element":[{"__symbolic":"method"}],"visit":[{"__symbolic":"method"}],"tryAndVisit":[{"__symbolic":"method"}],"shouldHaveActivityIds":[{"__symbolic":"method"}],"shouldNotHaveActivityIds":[{"__symbolic":"method"}],"shouldHaveTitle":[{"__symbolic":"method"}],"shouldBeActive":[{"__symbolic":"method"}]}},"Path":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Path"},"member":"Segment"}]}]}],"toUrl":[{"__symbolic":"method"}]}},"AupAbstractActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}]}},"AupActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupAbstractActivity"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}]}},"AupAlert":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupAbstractActivity"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"clickClose":[{"__symbolic":"method"}]}},"FaceAccessor":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}],"findIn":[{"__symbolic":"method"}],"shouldNotExist":[{"__symbolic":"method"}]}},"AupCommandFace":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"PageElement"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}]},"statics":{"createAccessor":{"__symbolic":"function","parameters":["face"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"FaceAccessor"},"arguments":[{"__symbolic":"reference","name":"face"}]}}}},"AupCommandGroup":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{}},"AupCommand":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":7,"character":36,"module":"./components/aup-command"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}],"click":[{"__symbolic":"method"}],"getShouldElement":[{"__symbolic":"method"}],"shouldBeDisabled":[{"__symbolic":"method"}],"getButton":[{"__symbolic":"method"}]}},"AupEmptyState":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{}},"AupInput":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"PageElement"},"members":{"label":[{"__symbolic":"method"}],"hint":[{"__symbolic":"method"}],"error":[{"__symbolic":"method"}],"labelShouldBe":[{"__symbolic":"method"}],"hintShouldBe":[{"__symbolic":"method"}],"errorShouldBe":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"setValue":[{"__symbolic":"method"}]}},"AupModalActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupActivity"},"members":{"clickBackdrop":[{"__symbolic":"method"}]}},"AupModalAlert":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupAlert"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"clickBackdrop":[{"__symbolic":"method"}]}},"AupMoreMenu":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{},"statics":{"create":{"__symbolic":"function","parameters":["parent"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"AupMoreMenu"},"arguments":[{"__symbolic":"reference","name":"parent"},"aup-more-menu"]}}}},"AupNavigation":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"click":[{"__symbolic":"method"}],"face":[{"__symbolic":"method"}],"shouldHaveLink":[{"__symbolic":"method"}],"shouldNotHaveLink":[{"__symbolic":"method"}]}},"AupPopupMenu":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":7,"character":51,"module":"./components/aup-popup-menu"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}]},"statics":{"create":{"__symbolic":"function","parameters":["parent","face"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"AupPopupMenu"},"arguments":[{"__symbolic":"reference","name":"parent"},{"__symbolic":"reference","name":"face"}]}}}},"AupTable":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"row":[{"__symbolic":"method"}],"column":[{"__symbolic":"method"}]}},"AupToolBar":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{}},"ButtonMixin":{"__symbolic":"function","parameters":["Base"],"value":{"__symbolic":"class"}},"Button":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":3,"character":28,"module":"./components/button"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"reference","name":"string"}]}]}}},"origins":{"Builder":"./builder","PageBuilder":"./page-builder","PageElement":"./page-element","Page":"./page","Path":"./path","AupAbstractActivity":"./components/aup-abstract-activity","AupActivity":"./components/aup-activity","AupAlert":"./components/aup-alert","FaceAccessor":"./components/aup-command-face","AupCommandFace":"./components/aup-command-face","AupCommandGroup":"./components/aup-command-group","AupCommand":"./components/aup-command","AupEmptyState":"./components/aup-empty-state","AupInput":"./components/aup-input","AupModalActivity":"./components/aup-modal-activity","AupModalAlert":"./components/aup-modal-alert","AupMoreMenu":"./components/aup-more-menu","AupNavigation":"./components/aup-navigation","AupPopupMenu":"./components/aup-popup-menu","AupTable":"./components/aup-table","AupToolBar":"./components/aup-tool-bar","ButtonMixin":"./components/button-mixin","Button":"./components/button","ɵa":"./components/types"},"importAs":"@coolon/angular-ui-powerups/cypress"}
1
+ {"__symbolic":"module","version":4,"exports":[{"from":"./components/types"}],"metadata":{"Builder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"PageElement"}]}],"find":[{"__symbolic":"method"}],"section":[{"__symbolic":"method"}],"contains":[{"__symbolic":"method"}],"button":[{"__symbolic":"method"}],"aupStringInput":[{"__symbolic":"method"}],"aupTextInput":[{"__symbolic":"method"}],"aupPasswordInput":[{"__symbolic":"method"}],"aupNumberInput":[{"__symbolic":"method"}],"aupCommand":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"aupTabbedNavigation":[{"__symbolic":"method"}],"aupSideNavigation":[{"__symbolic":"method"}],"aupTable":[{"__symbolic":"method"}],"aupEmptyState":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"createContainerElement":[{"__symbolic":"method"}]}},"PageBuilder":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Builder"},"members":{"aupModalActivity":[{"__symbolic":"method"}],"aupModalAlert":[{"__symbolic":"method"}],"aupModelConfirm":[{"__symbolic":"method"}]}},"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"}]}},"Page":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Path"}]}],"element":[{"__symbolic":"method"}],"visit":[{"__symbolic":"method"}],"tryAndVisit":[{"__symbolic":"method"}],"shouldHaveActivityIds":[{"__symbolic":"method"}],"shouldNotHaveActivityIds":[{"__symbolic":"method"}],"shouldHaveTitle":[{"__symbolic":"method"}],"shouldBeActive":[{"__symbolic":"method"}]}},"Path":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Path"},"member":"Segment"}]}]}],"toUrl":[{"__symbolic":"method"}]}},"AupAbstractActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}]}},"AupActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupAbstractActivity"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}]}},"AupAlert":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupAbstractActivity"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"clickClose":[{"__symbolic":"method"}]}},"FaceAccessor":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}],"findIn":[{"__symbolic":"method"}],"shouldNotExist":[{"__symbolic":"method"}]}},"AupCommandFace":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"PageElement"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}]},"statics":{"createAccessor":{"__symbolic":"function","parameters":["face"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"FaceAccessor"},"arguments":[{"__symbolic":"reference","name":"face"}]}}}},"AupCommandGroup":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{}},"AupCommand":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":7,"character":36,"module":"./components/aup-command"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}],"click":[{"__symbolic":"method"}],"getShouldElement":[{"__symbolic":"method"}],"shouldBeDisabled":[{"__symbolic":"method"}],"getButton":[{"__symbolic":"method"}]}},"AupEmptyState":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"shouldContainText":[{"__symbolic":"method"}]}},"AupInput":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"PageElement"},"members":{"label":[{"__symbolic":"method"}],"hint":[{"__symbolic":"method"}],"error":[{"__symbolic":"method"}],"labelShouldBe":[{"__symbolic":"method"}],"hintShouldBe":[{"__symbolic":"method"}],"errorShouldBe":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}],"setValue":[{"__symbolic":"method"}]}},"AupModalActivity":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupActivity"},"members":{"clickBackdrop":[{"__symbolic":"method"}]}},"AupModalAlert":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"AupAlert"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"clickBackdrop":[{"__symbolic":"method"}]}},"AupMoreMenu":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{},"statics":{"create":{"__symbolic":"function","parameters":["parent"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"AupMoreMenu"},"arguments":[{"__symbolic":"reference","name":"parent"},"aup-more-menu"]}}}},"AupNavigation":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"click":[{"__symbolic":"method"}],"face":[{"__symbolic":"method"}],"shouldHaveLink":[{"__symbolic":"method"}],"shouldNotHaveLink":[{"__symbolic":"method"}]}},"AupPopupMenu":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":7,"character":51,"module":"./components/aup-popup-menu"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"CommandFace"}]}]},"statics":{"create":{"__symbolic":"function","parameters":["parent","face"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"AupPopupMenu"},"arguments":[{"__symbolic":"reference","name":"parent"},{"__symbolic":"reference","name":"face"}]}}}},"AupTable":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"Accessor"}]}],"row":[{"__symbolic":"method"}],"column":[{"__symbolic":"method"}]}},"AupToolBar":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"PageElement"},"members":{}},"ButtonMixin":{"__symbolic":"function","parameters":["Base"],"value":{"__symbolic":"class"}},"Button":{"__symbolic":"class","extends":{"__symbolic":"error","message":"Symbol reference expected","line":3,"character":28,"module":"./components/button"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"PageElement"},"member":"ParentLocator"},{"__symbolic":"reference","name":"string"}]}]}}},"origins":{"Builder":"./builder","PageBuilder":"./page-builder","PageElement":"./page-element","Page":"./page","Path":"./path","AupAbstractActivity":"./components/aup-abstract-activity","AupActivity":"./components/aup-activity","AupAlert":"./components/aup-alert","FaceAccessor":"./components/aup-command-face","AupCommandFace":"./components/aup-command-face","AupCommandGroup":"./components/aup-command-group","AupCommand":"./components/aup-command","AupEmptyState":"./components/aup-empty-state","AupInput":"./components/aup-input","AupModalActivity":"./components/aup-modal-activity","AupModalAlert":"./components/aup-modal-alert","AupMoreMenu":"./components/aup-more-menu","AupNavigation":"./components/aup-navigation","AupPopupMenu":"./components/aup-popup-menu","AupTable":"./components/aup-table","AupToolBar":"./components/aup-tool-bar","ButtonMixin":"./components/button-mixin","Button":"./components/button","ɵa":"./components/types"},"importAs":"@coolon/angular-ui-powerups/cypress"}
@@ -2,9 +2,7 @@ import { Builder } from './builder';
2
2
  import { AupModalActivity } from './components/aup-modal-activity';
3
3
  import { AupModalAlert } from './components/aup-modal-alert';
4
4
  export declare class PageBuilder extends Builder {
5
- private _modalInteractionFactory;
6
- private _modalAlertFactory;
7
- aupModalActivity<T extends object>(selector: string, builder: Builder.Callback<T>): T & AupModalActivity;
8
- aupModalAlert<T extends object>(builder?: Builder.Callback<T>): T & AupModalAlert;
9
- aupModelConfirm<T extends object>(builder?: Builder.Callback<T>): T & AupModalActivity;
5
+ aupModalActivity<T extends object>(selector: string, builder: Builder.Callback<T, AupModalActivity>): T & AupModalActivity;
6
+ aupModalAlert<T extends object>(builder?: Builder.Callback<T, AupModalAlert>): T & AupModalAlert;
7
+ aupModelConfirm<T extends object>(builder?: Builder.Callback<T, AupModalActivity>): T & AupModalActivity;
10
8
  }
package/cypress/page.d.ts CHANGED
@@ -20,6 +20,6 @@ export declare class Page extends PageElement {
20
20
  shouldBeActive(withParameters?: object): void;
21
21
  }
22
22
  export declare namespace Page {
23
- function create<T extends object>(path: string, page: Builder.Callback<T, PageBuilder>): T & Page;
24
- function create<T extends object>(pathBuilder: ((pathBuilder: Path.Builder) => void), page: Builder.Callback<T, PageBuilder>): T & Page;
23
+ function create<T extends object>(path: string, builder: Builder.Callback<T, Page, PageBuilder>): T & Page;
24
+ function create<T extends object>(pathBuilder: ((pathBuilder: Path.Builder) => void), builder: Builder.Callback<T, Page, PageBuilder>): T & Page;
25
25
  }
@@ -10,14 +10,12 @@ import { PageElement } from './page-element';
10
10
  export class Builder {
11
11
  constructor(source) {
12
12
  this.source = source;
13
- this._sectionFactory = Builder.createFactoryMethod(this.source, PageElement);
14
- this.aupEmptyState = Builder.createFactoryMethod(this.source, AupEmptyState, 'aup-empty-state');
15
13
  }
16
14
  find(selector) {
17
15
  return new PageElement(this.source, selector);
18
16
  }
19
17
  section(selector, builder) {
20
- return this._sectionFactory(selector, builder);
18
+ return this.createContainerElement(PageElement, selector, builder);
21
19
  }
22
20
  contains(text) {
23
21
  return new PageElement(this.source, {
@@ -52,29 +50,17 @@ export class Builder {
52
50
  aupTable(selector) {
53
51
  return new AupTable(this.source, selector !== null && selector !== void 0 ? selector : 'aup-table');
54
52
  }
55
- }
56
- (function (Builder) {
57
- class Factory {
58
- constructor(parent, klass, defaultSelector) {
59
- this.parent = parent;
60
- this.klass = klass;
61
- this.defaultSelector = defaultSelector;
62
- }
63
- create(selectorOrBuilder, optionalBuilder) {
64
- const selector = _.isFunction(selectorOrBuilder) ? this.defaultSelector : selectorOrBuilder;
65
- if (!selector) {
66
- lang.illegalState('This element requires a selector but none was provided');
67
- }
68
- const callback = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;
69
- const element = new this.klass(this.parent, selector);
70
- return callback ? CreateMixin.createProxy(element, callback(new Builder(this.parent))) : element;
71
- }
53
+ aupEmptyState(selectorOrBuilder, optionalBuilder) {
54
+ return this.createContainerElement(AupEmptyState, selectorOrBuilder, optionalBuilder, 'aup-empty-state');
72
55
  }
73
- Builder.Factory = Factory;
74
- function createFactoryMethod(element, klass, defaultSelector) {
75
- const factory = new Factory(element, klass, defaultSelector);
76
- return factory.create.bind(factory);
56
+ createContainerElement(klass, selectorOrBuilder, optionalBuilder, defaultSelector) {
57
+ const selector = _.isString(selectorOrBuilder) ? selectorOrBuilder : defaultSelector;
58
+ const builder = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;
59
+ if (!selector) {
60
+ lang.illegalState('This element requires a selector but none was provided');
61
+ }
62
+ const element = new klass(this.source, selector);
63
+ return builder ? CreateMixin.createProxy(element, builder.call(element, new Builder(element))) : element;
77
64
  }
78
- Builder.createFactoryMethod = createFactoryMethod;
79
- })(Builder || (Builder = {}));
65
+ }
80
66
  //# sourceMappingURL=builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/builder.ts"],"names":[],"mappings":"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","sourcesContent":["import { Constructable } from '@coolon/pectin';\nimport { lang, Mixin as CreateMixin } from '@coolon/typescript-utilities';\nimport * as _ from 'lodash';\nimport { AupCommand } from './components/aup-command';\nimport { AupEmptyState } from './components/aup-empty-state';\nimport { AupInput } from './components/aup-input';\nimport { AupNavigation } from './components/aup-navigation';\nimport { AupTable } from './components/aup-table';\nimport { Button } from './components/button';\nimport { Types } from './components/types';\nimport { PageElement } from './page-element';\n\nexport class Builder {\n\n private _sectionFactory: Builder.FactoryMethod<PageElement> = Builder.createFactoryMethod(this.source, PageElement);\n\n readonly aupEmptyState: Builder.FactoryMethod<AupEmptyState> = Builder.createFactoryMethod(this.source, AupEmptyState, 'aup-empty-state');\n\n constructor(readonly source: PageElement) {\n }\n\n find(selector: string): PageElement {\n return new PageElement(this.source, selector);\n }\n\n section<T extends object>(selector: string, builder: Builder.Callback<T>): T & PageElement {\n return this._sectionFactory(selector, builder);\n }\n\n contains(text: string): PageElement {\n return new PageElement(this.source, {\n findIn: parent => parent.contains(text),\n shouldNotExist: (parent: Cypress.Chainable<JQuery>) => parent.should('not.contain', text)\n });\n }\n\n button(text: string): Button {\n return new Button(this.source, text);\n }\n\n aupStringInput(selector?: string): AupInput<string> {\n return new AupInput.HtmlInput(this.source, selector ?? 'aup-string-input');\n }\n\n aupTextInput(selector?: string): AupInput<string> {\n return new AupInput.TextAreaInput(this.source, selector ?? 'aup-text-input');\n }\n\n aupPasswordInput(selector?: string): AupInput<string> {\n return new AupInput.HtmlInput(this.source, selector ?? 'aup-password-input');\n }\n\n aupNumberInput(selector?: string): AupInput<number> {\n return new AupInput.HtmlInput(this.source, selector ?? 'aup-number-input');\n }\n\n aupCommand(selector: string): AupCommand\n // tslint:disable-next-line:unified-signatures\n aupCommand(face: Types.CommandFace): AupCommand\n aupCommand(faceOrSelector: string | Types.CommandFace): AupCommand {\n return new AupCommand(this.source, faceOrSelector);\n }\n\n aupTabbedNavigation<T extends object>(): AupNavigation {\n return new AupNavigation(this.source, 'aup-tabbed-place-navigation');\n }\n\n aupSideNavigation<T extends object>(): AupNavigation {\n return new AupNavigation(this.source, 'aup-list-place-nav');\n }\n\n aupTable(selector?: string): AupTable {\n return new AupTable(this.source, selector ?? 'aup-table');\n }\n}\n\n\nexport namespace Builder {\n\n // tslint:disable-next-line:no-shadowed-variable\n export type Callback<T, B extends Builder = Builder> = (section: B) => T;\n\n export interface FactoryMethod<C extends PageElement> {\n <T extends object>(): C & T;\n\n // tslint:disable-next-line:unified-signatures\n <T extends object>(selector: string): C & T;\n\n // tslint:disable-next-line:unified-signatures\n <T extends object>(builder: Builder.Callback<T>): C & T;\n\n // tslint:disable-next-line:unified-signatures\n <T extends object>(selector: string, builder: Builder.Callback<T>): C & T;\n }\n\n export class Factory<E extends PageElement> {\n\n constructor(readonly parent: PageElement, readonly klass: Constructable<E>, readonly defaultSelector?: string) {\n }\n\n create<T extends object>(): E & T;\n // tslint:disable-next-line:unified-signatures\n create<T extends object>(builder: Builder.Callback<T>): E & T;\n // tslint:disable-next-line:unified-signatures\n create<T extends object>(selector: string): E & T;\n // tslint:disable-next-line:unified-signatures\n create<T extends object>(selector: string, builder: Builder.Callback<T>): E & T;\n create<T extends object>(selectorOrBuilder?: string | Builder.Callback<T>, optionalBuilder?: Builder.Callback<T>): E & T {\n\n const selector = _.isFunction(selectorOrBuilder) ? this.defaultSelector : selectorOrBuilder;\n\n if (!selector) {\n lang.illegalState('This element requires a selector but none was provided');\n }\n const callback = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;\n\n const element = new this.klass(this.parent, selector);\n return callback ? CreateMixin.createProxy(element, callback(new Builder(this.parent))) : element as E & T;\n }\n }\n\n export function createFactoryMethod<C extends PageElement>(element: PageElement, klass: Constructable<C>, defaultSelector?: string): FactoryMethod<C> {\n const factory = new Factory<C>(element, klass, defaultSelector);\n return factory.create.bind(factory);\n }\n\n}\n"]}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../libs/angular-ui-powerups/cypress/src/builder.ts"],"names":[],"mappings":"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","sourcesContent":["import { Constructable } from '@coolon/pectin';\nimport { lang, Mixin as CreateMixin } from '@coolon/typescript-utilities';\nimport * as _ from 'lodash';\nimport { AupCommand } from './components/aup-command';\nimport { AupEmptyState } from './components/aup-empty-state';\nimport { AupInput } from './components/aup-input';\nimport { AupNavigation } from './components/aup-navigation';\nimport { AupTable } from './components/aup-table';\nimport { Button } from './components/button';\nimport { Types } from './components/types';\nimport { PageElement } from './page-element';\n\nexport class Builder {\n\n constructor(readonly source: PageElement) {\n }\n\n find(selector: string): PageElement {\n return new PageElement(this.source, selector);\n }\n\n section<T extends object>(selector: string, builder: Builder.Callback<T>): T & PageElement {\n return this.createContainerElement(PageElement, selector, builder);\n }\n\n contains(text: string): PageElement {\n return new PageElement(this.source, {\n findIn: parent => parent.contains(text),\n shouldNotExist: (parent: Cypress.Chainable<JQuery>) => parent.should('not.contain', text)\n });\n }\n\n button(text: string): Button {\n return new Button(this.source, text);\n }\n\n aupStringInput(selector?: string): AupInput<string> {\n return new AupInput.HtmlInput(this.source, selector ?? 'aup-string-input');\n }\n\n aupTextInput(selector?: string): AupInput<string> {\n return new AupInput.TextAreaInput(this.source, selector ?? 'aup-text-input');\n }\n\n aupPasswordInput(selector?: string): AupInput<string> {\n return new AupInput.HtmlInput(this.source, selector ?? 'aup-password-input');\n }\n\n aupNumberInput(selector?: string): AupInput<number> {\n return new AupInput.HtmlInput(this.source, selector ?? 'aup-number-input');\n }\n\n aupCommand(selector: string): AupCommand\n // tslint:disable-next-line:unified-signatures\n aupCommand(face: Types.CommandFace): AupCommand\n aupCommand(faceOrSelector: string | Types.CommandFace): AupCommand {\n return new AupCommand(this.source, faceOrSelector);\n }\n\n aupTabbedNavigation<T extends object>(): AupNavigation {\n return new AupNavigation(this.source, 'aup-tabbed-place-navigation');\n }\n\n aupSideNavigation<T extends object>(): AupNavigation {\n return new AupNavigation(this.source, 'aup-list-place-nav');\n }\n\n aupTable(selector?: string): AupTable {\n return new AupTable(this.source, selector ?? 'aup-table');\n }\n\n aupEmptyState(selector?: string): AupEmptyState\n aupEmptyState<T extends object>(builder: Builder.Callback<T, AupEmptyState>): AupEmptyState & T\n aupEmptyState<T extends object>(selectorOrBuilder?: string | Builder.Callback<T, AupEmptyState>,\n optionalBuilder?: Builder.Callback<T, AupEmptyState>): AupEmptyState & T {\n return this.createContainerElement(AupEmptyState, selectorOrBuilder, optionalBuilder, 'aup-empty-state');\n }\n\n protected createContainerElement<T extends object, E extends PageElement>(klass: Constructable<E>,\n selectorOrBuilder: string | Builder.Callback<T, E>,\n optionalBuilder: Builder.Callback<T, E>,\n defaultSelector?: string): E & T {\n\n const selector = _.isString(selectorOrBuilder) ? selectorOrBuilder : defaultSelector;\n const builder = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;\n\n if (!selector) {\n lang.illegalState('This element requires a selector but none was provided');\n }\n\n const element = new klass(this.source, selector);\n return builder ? CreateMixin.createProxy(element, builder.call(element, new Builder(element))) : element as E & T;\n }\n\n}\n\n\nexport namespace Builder {\n\n // tslint:disable-next-line:no-shadowed-variable\n export type Callback<T, E extends PageElement = PageElement, B extends Builder = Builder> = (this: E, section: B) => T;\n\n // export interface FactoryMethod<C extends PageElement> {\n // <T extends object>(): C & T;\n //\n // // tslint:disable-next-line:unified-signatures\n // <T extends object>(selector: string): C & T;\n //\n // // tslint:disable-next-line:unified-signatures\n // <T extends object>(builder: Builder.Callback<T>): C & T;\n //\n // // tslint:disable-next-line:unified-signatures\n // <T extends object>(selector: string, builder: Builder.Callback<T>): C & T;\n // }\n\n // export class Factory<E extends PageElement> {\n //\n // constructor(readonly parent: PageElement, readonly klass: Constructable<E>, readonly defaultSelector?: string) {\n // }\n //\n // create<T extends object>(): E & T;\n // // tslint:disable-next-line:unified-signatures\n // create<T extends object>(builder: Builder.Callback<T>): E & T;\n // // tslint:disable-next-line:unified-signatures\n // create<T extends object>(selector: string): E & T;\n // // tslint:disable-next-line:unified-signatures\n // create<T extends object>(selector: string, builder: Builder.Callback<T>): E & T;\n // create<T extends object>(selectorOrBuilder?: string | Builder.Callback<T>, optionalBuilder?: Builder.Callback<T>): E & T {\n // console.log({selectorOrBuilder, optionalBuilder})\n //\n // const selector = _.isFunction(selectorOrBuilder) ? this.defaultSelector : selectorOrBuilder;\n //\n // console.log({parent:this.parent, defaultSelector: this.defaultSelector})\n //\n // if (!selector) {\n // debugger;\n // lang.illegalState('This element requires a selector but none was provided');\n // }\n // const callback = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;\n //\n // const element = new this.klass(this.parent, selector);\n // return callback ? CreateMixin.createProxy(element, callback(new Builder(this.parent))) : element as E & T;\n // }\n // }\n\n // export function createFactoryMethod<C extends PageElement>(element: PageElement, klass: Constructable<C>, defaultSelector?: string): FactoryMethod<C> {\n // const factory = new Factory<C>(element, klass, defaultSelector);\n // return factory.create.bind(factory);\n // }\n\n}\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"Builder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./page-element","name":"PageElement","line":18,"character":31}]}],"find":[{"__symbolic":"method"}],"section":[{"__symbolic":"method"}],"contains":[{"__symbolic":"method"}],"button":[{"__symbolic":"method"}],"aupStringInput":[{"__symbolic":"method"}],"aupTextInput":[{"__symbolic":"method"}],"aupPasswordInput":[{"__symbolic":"method"}],"aupNumberInput":[{"__symbolic":"method"}],"aupCommand":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"aupTabbedNavigation":[{"__symbolic":"method"}],"aupSideNavigation":[{"__symbolic":"method"}],"aupTable":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"Builder":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./page-element","name":"PageElement","line":14,"character":31}]}],"find":[{"__symbolic":"method"}],"section":[{"__symbolic":"method"}],"contains":[{"__symbolic":"method"}],"button":[{"__symbolic":"method"}],"aupStringInput":[{"__symbolic":"method"}],"aupTextInput":[{"__symbolic":"method"}],"aupPasswordInput":[{"__symbolic":"method"}],"aupNumberInput":[{"__symbolic":"method"}],"aupCommand":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"aupTabbedNavigation":[{"__symbolic":"method"}],"aupSideNavigation":[{"__symbolic":"method"}],"aupTable":[{"__symbolic":"method"}],"aupEmptyState":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"createContainerElement":[{"__symbolic":"method"}]}}}}]
@@ -1,4 +1,7 @@
1
1
  import { PageElement } from '../page-element';
2
2
  export class AupEmptyState extends PageElement {
3
+ shouldContainText(text) {
4
+ this.element().should("contain.text", text);
5
+ }
3
6
  }
4
7
  //# sourceMappingURL=aup-empty-state.js.map
@@ -1 +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;CAE7C","sourcesContent":["import { PageElement } from '../page-element';\n\nexport class AupEmptyState extends PageElement {\n\n}\n"]}
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"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"AupEmptyState":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../page-element","name":"PageElement","line":2,"character":35}}}}]
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"}]}}}}]
@@ -2,19 +2,14 @@ import { Builder } from './builder';
2
2
  import { AupModalActivity } from './components/aup-modal-activity';
3
3
  import { AupModalAlert } from './components/aup-modal-alert';
4
4
  export class PageBuilder extends Builder {
5
- constructor() {
6
- super(...arguments);
7
- this._modalInteractionFactory = Builder.createFactoryMethod(this.source, AupModalActivity);
8
- this._modalAlertFactory = Builder.createFactoryMethod(this.source, AupModalAlert);
9
- }
10
5
  aupModalActivity(selector, builder) {
11
- return this._modalInteractionFactory(`.dialog-interaction-context ${selector}`, builder);
6
+ return this.createContainerElement(AupModalActivity, `.dialog-interaction-context ${selector}`, builder);
12
7
  }
13
8
  aupModalAlert(builder) {
14
- return this._modalAlertFactory(`.dialog-interaction-context aup-alert-dialog`, builder);
9
+ return this.createContainerElement(AupModalAlert, `.dialog-interaction-context aup-alert-dialog`, builder);
15
10
  }
16
11
  aupModelConfirm(builder) {
17
- return this._modalInteractionFactory(`.dialog-interaction-context aup-confirm-dialog`, builder);
12
+ return this.aupModalActivity(`aup-confirm-dialog`, builder);
18
13
  }
19
14
  }
20
15
  //# sourceMappingURL=page-builder.js.map
@@ -1 +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;IAAxC;;QAEU,6BAAwB,GAA4C,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAC/H,uBAAkB,GAAyC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAe7H,CAAC;IAZC,gBAAgB,CAAmB,QAAgB,EAAE,OAA4B;QAC/E,OAAO,IAAI,CAAC,wBAAwB,CAAC,+BAA+B,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3F,CAAC;IAED,aAAa,CAAmB,OAA6B;QAC3D,OAAO,IAAI,CAAC,kBAAkB,CAAC,8CAA8C,EAAE,OAAO,CAAC,CAAC;IAC1F,CAAC;IAED,eAAe,CAAmB,OAA6B;QAC7D,OAAO,IAAI,CAAC,wBAAwB,CAAC,gDAAgD,EAAE,OAAO,CAAC,CAAC;IAClG,CAAC;CAEF","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 private _modalInteractionFactory: Builder.FactoryMethod<AupModalActivity> = Builder.createFactoryMethod(this.source, AupModalActivity);\n private _modalAlertFactory: Builder.FactoryMethod<AupModalAlert> = Builder.createFactoryMethod(this.source, AupModalAlert);\n\n\n aupModalActivity<T extends object>(selector: string, builder: Builder.Callback<T>): T & AupModalActivity {\n return this._modalInteractionFactory(`.dialog-interaction-context ${selector}`, builder);\n }\n\n aupModalAlert<T extends object>(builder?: Builder.Callback<T>): T & AupModalAlert {\n return this._modalAlertFactory(`.dialog-interaction-context aup-alert-dialog`, builder);\n }\n\n aupModelConfirm<T extends object>(builder?: Builder.Callback<T>): T & AupModalActivity {\n return this._modalInteractionFactory(`.dialog-interaction-context aup-confirm-dialog`, builder);\n }\n\n}\n"]}
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;AAG7D,MAAM,OAAO,WAAY,SAAQ,OAAO;IAGtC,gBAAgB,CAAmB,QAAgB,EAAE,OAA8C;QACjG,OAAO,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,EAAC,+BAA+B,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1G,CAAC;IAED,aAAa,CAAmB,OAA4C;QAC1E,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,8CAA8C,EAAE,OAAO,CAAC,CAAC;IAC7G,CAAC;IAED,eAAe,CAAmB,OAA8C;QAC9E,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';\nimport { Page } from './page';\n\nexport class PageBuilder extends Builder {\n\n\n aupModalActivity<T extends object>(selector: string, builder: Builder.Callback<T, AupModalActivity>): T & AupModalActivity {\n return this.createContainerElement(AupModalActivity,`.dialog-interaction-context ${selector}`, builder);\n }\n\n aupModalAlert<T extends object>(builder?: Builder.Callback<T, AupModalAlert>): 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,AupModalActivity>): T & AupModalActivity {\n return this.aupModalActivity(`aup-confirm-dialog`, builder);\n }\n}\n"]}
@@ -1 +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
+ [{"__symbolic":"module","version":4,"metadata":{"PageBuilder":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"./builder","name":"Builder","line":5,"character":33},"members":{"aupModalActivity":[{"__symbolic":"method"}],"aupModalAlert":[{"__symbolic":"method"}],"aupModelConfirm":[{"__symbolic":"method"}]}}}}]
@@ -50,7 +50,7 @@ export class Page extends PageElement {
50
50
  }
51
51
  }
52
52
  (function (Page) {
53
- function create(pathOrPathBuilder, page) {
53
+ function create(pathOrPathBuilder, builder) {
54
54
  const pathBuilder = new Path.Builder();
55
55
  if (_.isString(pathOrPathBuilder)) {
56
56
  pathOrPathBuilder.split('/').filter(p => !_.isEmpty(p)).forEach(p => pathBuilder.segment(p));
@@ -59,7 +59,8 @@ export class Page extends PageElement {
59
59
  pathOrPathBuilder(pathBuilder);
60
60
  }
61
61
  const instance = new Page(pathBuilder.getPath());
62
- return Mixin.createProxy(page(new PageBuilder(instance)), instance);
62
+ const content = builder.call(instance, new PageBuilder(instance));
63
+ return Mixin.createProxy(content, instance);
63
64
  }
64
65
  Page.create = create;
65
66
  })(Page || (Page = {}));
@@ -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;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,MAAM,OAAO,IAAK,SAAQ,WAAW;IAInC,YAAqB,IAAU;QAC7B,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QADT,SAAI,GAAJ,IAAI,CAAM;QAFrB,wBAAmB,GAAG,MAAM,CAAC;IAIvC,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,WAAoB,EAAE,WAAuC;QACjE,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACnC,CAAC;IAED,WAAW,CAAC,MAAe,EAAE,WAAuC;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,WAAW,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,qBAAqB,CAAC,GAAG,GAAa;QACpC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,qBAAqB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,wBAAwB;QACtB,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;IACnE,CAAC;IAED,eAAe,CAAC,KAAa;QAC3B,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,cAAc,CAAC,cAAuB;QACpC,kEAAkE;QAClE,EAAE,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE;YACnB,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,YAAY,EAAE,CAAC;YAChF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,cAAc,EAAE;YAClB,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAClC,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBAC1C,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;oBACvC,aAAa;oBACb,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;IACH,CAAC;CAEF;AAGD,WAAiB,IAAI;IAKnB,SAAgB,MAAM,CAAmB,iBAAiE,EAAE,IAAsC;QAChJ,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACvC,IAAI,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YACjC,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9F;aAAM;YACL,iBAAiB,CAAC,WAAW,CAAC,CAAC;SAChC;QACD,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAa,CAAC;IAClF,CAAC;IATe,WAAM,SASrB,CAAA;AACH,CAAC,EAfgB,IAAI,KAAJ,IAAI,QAepB","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, page: 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), page: Builder.Callback<T, PageBuilder>): T & Page\n export function create<T extends object>(pathOrPathBuilder: string | ((pathBuilder: Path.Builder) => void), page: 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 return Mixin.createProxy(page(new PageBuilder(instance)), instance) as T & Page;\n }\n}\n"]}
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, Page, 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, Page, PageBuilder>): T & Page\n export function create<T extends object>(pathOrPathBuilder: string | ((pathBuilder: Path.Builder) => void), builder: Builder.Callback<T, Page, 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.call(instance, new PageBuilder(instance));\n return Mixin.createProxy(content, instance) as T & Page;\n }\n}\n"]}
@@ -102,6 +102,9 @@ class AupCommand extends PageElement {
102
102
  }
103
103
 
104
104
  class AupEmptyState extends PageElement {
105
+ shouldContainText(text) {
106
+ this.element().should("contain.text", text);
107
+ }
105
108
  }
106
109
 
107
110
  class AupInput extends PageElement {
@@ -253,14 +256,12 @@ class Button extends ButtonMixin(PageElement) {
253
256
  class Builder {
254
257
  constructor(source) {
255
258
  this.source = source;
256
- this._sectionFactory = Builder.createFactoryMethod(this.source, PageElement);
257
- this.aupEmptyState = Builder.createFactoryMethod(this.source, AupEmptyState, 'aup-empty-state');
258
259
  }
259
260
  find(selector) {
260
261
  return new PageElement(this.source, selector);
261
262
  }
262
263
  section(selector, builder) {
263
- return this._sectionFactory(selector, builder);
264
+ return this.createContainerElement(PageElement, selector, builder);
264
265
  }
265
266
  contains(text) {
266
267
  return new PageElement(this.source, {
@@ -295,31 +296,19 @@ class Builder {
295
296
  aupTable(selector) {
296
297
  return new AupTable(this.source, selector !== null && selector !== void 0 ? selector : 'aup-table');
297
298
  }
298
- }
299
- (function (Builder) {
300
- class Factory {
301
- constructor(parent, klass, defaultSelector) {
302
- this.parent = parent;
303
- this.klass = klass;
304
- this.defaultSelector = defaultSelector;
305
- }
306
- create(selectorOrBuilder, optionalBuilder) {
307
- const selector = _.isFunction(selectorOrBuilder) ? this.defaultSelector : selectorOrBuilder;
308
- if (!selector) {
309
- lang.illegalState('This element requires a selector but none was provided');
310
- }
311
- const callback = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;
312
- const element = new this.klass(this.parent, selector);
313
- return callback ? Mixin.createProxy(element, callback(new Builder(this.parent))) : element;
314
- }
299
+ aupEmptyState(selectorOrBuilder, optionalBuilder) {
300
+ return this.createContainerElement(AupEmptyState, selectorOrBuilder, optionalBuilder, 'aup-empty-state');
315
301
  }
316
- Builder.Factory = Factory;
317
- function createFactoryMethod(element, klass, defaultSelector) {
318
- const factory = new Factory(element, klass, defaultSelector);
319
- return factory.create.bind(factory);
302
+ createContainerElement(klass, selectorOrBuilder, optionalBuilder, defaultSelector) {
303
+ const selector = _.isString(selectorOrBuilder) ? selectorOrBuilder : defaultSelector;
304
+ const builder = _.isFunction(selectorOrBuilder) ? selectorOrBuilder : optionalBuilder;
305
+ if (!selector) {
306
+ lang.illegalState('This element requires a selector but none was provided');
307
+ }
308
+ const element = new klass(this.source, selector);
309
+ return builder ? Mixin.createProxy(element, builder.call(element, new Builder(element))) : element;
320
310
  }
321
- Builder.createFactoryMethod = createFactoryMethod;
322
- })(Builder || (Builder = {}));
311
+ }
323
312
 
324
313
  class AupAbstractActivity extends PageElement {
325
314
  constructor(parent, selector) {
@@ -372,19 +361,14 @@ class AupModalAlert extends AupAlert {
372
361
  }
373
362
 
374
363
  class PageBuilder extends Builder {
375
- constructor() {
376
- super(...arguments);
377
- this._modalInteractionFactory = Builder.createFactoryMethod(this.source, AupModalActivity);
378
- this._modalAlertFactory = Builder.createFactoryMethod(this.source, AupModalAlert);
379
- }
380
364
  aupModalActivity(selector, builder) {
381
- return this._modalInteractionFactory(`.dialog-interaction-context ${selector}`, builder);
365
+ return this.createContainerElement(AupModalActivity, `.dialog-interaction-context ${selector}`, builder);
382
366
  }
383
367
  aupModalAlert(builder) {
384
- return this._modalAlertFactory(`.dialog-interaction-context aup-alert-dialog`, builder);
368
+ return this.createContainerElement(AupModalAlert, `.dialog-interaction-context aup-alert-dialog`, builder);
385
369
  }
386
370
  aupModelConfirm(builder) {
387
- return this._modalInteractionFactory(`.dialog-interaction-context aup-confirm-dialog`, builder);
371
+ return this.aupModalActivity(`aup-confirm-dialog`, builder);
388
372
  }
389
373
  }
390
374
 
@@ -497,7 +481,7 @@ class Page extends PageElement {
497
481
  }
498
482
  }
499
483
  (function (Page) {
500
- function create(pathOrPathBuilder, page) {
484
+ function create(pathOrPathBuilder, builder) {
501
485
  const pathBuilder = new Path.Builder();
502
486
  if (_.isString(pathOrPathBuilder)) {
503
487
  pathOrPathBuilder.split('/').filter(p => !_.isEmpty(p)).forEach(p => pathBuilder.segment(p));
@@ -506,7 +490,8 @@ class Page extends PageElement {
506
490
  pathOrPathBuilder(pathBuilder);
507
491
  }
508
492
  const instance = new Page(pathBuilder.getPath());
509
- return Mixin.createProxy(page(new PageBuilder(instance)), instance);
493
+ const content = builder.call(instance, new PageBuilder(instance));
494
+ return Mixin.createProxy(content, instance);
510
495
  }
511
496
  Page.create = create;
512
497
  })(Page || (Page = {}));