@sprucelabs/heartwood-view-controllers 124.1.0 → 124.1.1

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.
@@ -34,7 +34,7 @@ export default class MockActiveRecordCard extends ActiveRecordCardViewController
34
34
  assertDoesNotRenderFooter(): void;
35
35
  assertRendersFooter(): void;
36
36
  getSwipeVc(): import("..").SwipeCardViewController;
37
- getCardVc(): Pick<import("..").CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setFooter" | "getHeaderTitle" | "getFooter" | "getHeaderSubtitle" | "render" | "triggerRender" | "setTriggerRenderHandler">;
37
+ getCardVc(): Pick<import("..").CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setTriggerRenderHandler" | "render" | "triggerRender" | "setFooter" | "getHeaderTitle" | "getHeaderSubtitle" | "getFooter">;
38
38
  getListVcs(): import("..").ListViewController[];
39
39
  rebuildSlidesForPaging(): void;
40
40
  assertRebuildSlideCountEquals(expected: number): void;
@@ -1,4 +1,4 @@
1
- import { Button, Card, FormViewController, Navigation, SkillViewController, ViewController } from '../../types/heartwood.types';
1
+ import { Button, Card, Dialog, FormViewController, Navigation, SkillViewController, ViewController } from '../../types/heartwood.types';
2
2
  import BigFormViewController from '../../viewControllers/BigForm.vc';
3
3
  import ButtonBarViewController from '../../viewControllers/ButtonBar.vc';
4
4
  import ButtonGroupViewController from '../../viewControllers/ButtonGroup.vc';
@@ -10,7 +10,7 @@ declare const buttonAssert: {
10
10
  cardRendersButtonGroup(cardVc: ViewController<Card>): ButtonGroupViewController;
11
11
  buttonGroupIsMultiSelect(buttonGroupVc: ButtonGroupViewController): void;
12
12
  cardSectionRendersButton(vc: ViewController<Card>, sectionIdOrIdx: string | number, buttonId?: string): void;
13
- footerRendersButtonWithType(vc: ViewController<Card>, type?: Button["type"]): void;
13
+ footerRendersButtonWithType(vc: ViewController<Card | Dialog>, type?: Button["type"]): void;
14
14
  cardDoesNotRenderButtons(vc: ViewController<Card>, ids: string[]): void;
15
15
  cardDoesNotRenderButton(vc: ViewController<Card>, id: string): void;
16
16
  cardRendersButtons(vc: ViewController<Card>, ids: string[]): ButtonViewController[];
@@ -1,6 +1,5 @@
1
1
  import { FieldDefinitions } from '@sprucelabs/schema';
2
- import { BigFormViewController, Card, FormBuilderCardViewController, FormInputViewController, FormViewController, RenderAsInputComponent, SimpleViewControllerFactory, SkillViewController, ViewController } from '../../types/heartwood.types';
3
- import DialogViewController from '../../viewControllers/Dialog.vc';
2
+ import { BigFormViewController, Card, Dialog, FormBuilderCardViewController, FormInputViewController, FormViewController, RenderAsInputComponent, SimpleViewControllerFactory, SkillViewController, ViewController } from '../../types/heartwood.types';
4
3
  declare const formAssert: {
5
4
  views: SimpleViewControllerFactory;
6
5
  _setVcFactory(views: SimpleViewControllerFactory): void;
@@ -14,7 +13,7 @@ declare const formAssert: {
14
13
  formIsEnabled(vc: FormVc): void;
15
14
  formIsBusy(vc: FormVc): void;
16
15
  formIsNotBusy(vc: FormVc): void;
17
- cardRendersForm(vc: ViewController<Card> | DialogViewController, id?: string, errorMessage?: string): FormViewController<any> | BigFormViewController<any>;
16
+ cardRendersForm(vc: ViewController<Card | Dialog>, id?: string, errorMessage?: string): FormViewController<any> | BigFormViewController<any>;
18
17
  cardRendersForms(vc: ViewController<Card>, count: number): FormViewController<any>[] | BigFormViewController<any>[];
19
18
  cardDoesNotRenderForm(vc: ViewController<Card>, id: string): void;
20
19
  formFieldRendersUsingInputVc(vc: FormVc, fieldName: string, inputVc: FormInputViewController): void;
@@ -10,10 +10,10 @@ declare const interactionUtil: {
10
10
  clickButtonInGroup(buttonGroupVc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button[]>, buttonIdOrIdx: string | number): Promise<void>;
11
11
  clickButtonHint(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>), buttonId: string): Promise<any>;
12
12
  clickButtonInButtonBar(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.ButtonBar>, buttonId: string): Promise<void>;
13
- clickInFooterWithType(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>), type: import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
13
+ clickInFooterWithType(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>) | import("../..").DialogViewController, type: import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
14
14
  clickPrimaryInFooter(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
15
15
  clickSecondaryInFooter(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
16
- clickDestructiveInFooter(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
16
+ clickDestructiveInFooter(vc: import("../..").DialogViewController | import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
17
17
  clickInputButton(vc: import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>, fieldName: string, id: string): Promise<void>;
18
18
  clickDestructiveInRow(listVc: import("../..").ListViewController | import("../..").ActiveRecordListViewController, rowIdxOrId: number | string): Promise<void>;
19
19
  cancelForm(vc: import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>): Promise<void>;
@@ -2,6 +2,7 @@ import { SpruceSchemas } from '@sprucelabs/mercury-types';
2
2
  import { ClickCalendarViewOptions, DropEventOptions, KeyboardKey, List, Navigation, Pager, SkillViewController, ViewController } from '../../types/heartwood.types';
3
3
  import ActiveRecordListViewController from '../../viewControllers/activeRecord/ActiveRecordList.vc';
4
4
  import BigFormViewController from '../../viewControllers/BigForm.vc';
5
+ import DialogViewController from '../../viewControllers/Dialog.vc';
5
6
  import FormViewController from '../../viewControllers/form/Form.vc';
6
7
  import ListViewController from '../../viewControllers/list/List.vc';
7
8
  import ListRowViewController from '../../viewControllers/list/ListRow.vc';
@@ -16,10 +17,10 @@ declare const interactor: {
16
17
  clickButtonInGroup(buttonGroupVc: ButtonGroupVc, buttonIdOrIdx: string | number): Promise<void>;
17
18
  clickButtonHint(vc: CardVc | FormVc, buttonId: string): Promise<any>;
18
19
  clickButtonInButtonBar(vc: ButtonBarVc, buttonId: string): Promise<void>;
19
- clickInFooterWithType(vc: CardVc | FormVc, type: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
20
+ clickInFooterWithType(vc: CardVc | FormVc | DialogViewController, type: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
20
21
  clickPrimaryInFooter(vc: CardVc | FormVc): Promise<void>;
21
22
  clickSecondaryInFooter(vc: CardVc | FormVc): Promise<void>;
22
- clickDestructiveInFooter(vc: CardVc | FormVc): Promise<void>;
23
+ clickDestructiveInFooter(vc: VcWithFooter): Promise<void>;
23
24
  clickInputButton(vc: FormVc, fieldName: string, id: string): Promise<void>;
24
25
  clickDestructiveInRow(listVc: ListVc, rowIdxOrId: number | string): Promise<void>;
25
26
  cancelForm(vc: FormVc): Promise<void>;
@@ -81,3 +82,4 @@ type FormVc = FormViewController<any> | BigFormViewController<any>;
81
82
  type NavVc = ViewController<Navigation>;
82
83
  export type PagerButton = 'previous' | 'next' | number;
83
84
  type ListVc = ListViewController | ActiveRecordListViewController;
85
+ type VcWithFooter = CardVc | FormVc | DialogViewController;
@@ -1,4 +1,4 @@
1
- import { LineIcon, SkillViewController, ViewController, CardViewController, ScopedBy, Card, StickyToolPosition, ScopeFlag, Button, List, RowStyle, AlertOptions, SimpleViewControllerFactory } from '../../types/heartwood.types';
1
+ import { LineIcon, SkillViewController, ViewController, CardViewController, ScopedBy, Card, StickyToolPosition, ScopeFlag, Button, List, RowStyle, AlertOptions, SimpleViewControllerFactory, Dialog } from '../../types/heartwood.types';
2
2
  import ButtonBarViewController from '../../viewControllers/ButtonBar.vc';
3
3
  import CalendarViewController from '../../viewControllers/Calendar.vc';
4
4
  import DialogViewController from '../../viewControllers/Dialog.vc';
@@ -120,7 +120,7 @@ declare const vcAssert: {
120
120
  /**
121
121
  * @deprecated vcAssert.assertFooterRendersButtonWithType(...) -> buttonAssert.footerRendersButtonWithType(...)
122
122
  */
123
- assertFooterRendersButtonWithType(vc: ViewController<Card>, type?: Button["type"]): void;
123
+ assertFooterRendersButtonWithType(vc: ViewController<Card | Dialog>, type?: Button["type"]): void;
124
124
  /**
125
125
  *
126
126
  * @deprecated vcAssert.assertCardDoesNotRenderButtons(...) -> buttonAssert.cardDoesNotRenderButtons(...)
@@ -52,7 +52,7 @@ declare const vcAssertUtil: {
52
52
  assertSkillViewDoesNotRenderViewController(vc: import("../..").SkillViewController, VcClass: any): void;
53
53
  assertSkillViewRendersViewController(vc: import("../..").SkillViewController, VcClass: any): any;
54
54
  assertRowRendersButtonWithIcon(vc: import("../..").ListRowViewController, icon: import("../..").LineIcon): void;
55
- assertFooterRendersButtonWithType(vc: import("../..").ViewController<import("../..").Card>, type?: import("../..").Button["type"]): void;
55
+ assertFooterRendersButtonWithType(vc: import("../..").ViewController<import("../..").Card | import("../..").Dialog>, type?: import("../..").Button["type"]): void;
56
56
  assertCardDoesNotRenderButtons(vc: import("../..").ViewController<import("../..").Card>, ids: string[]): void;
57
57
  assertCardDoesNotRenderButton(vc: import("../..").ViewController<import("../..").Card>, id: string): void;
58
58
  assertCardRendersButtons(vc: import("../..").ViewController<import("../..").Card>, ids: string[]): import("./assertSupport").ButtonViewController[];
@@ -241,6 +241,7 @@ export type FormBuilder<S extends Schema = Schema> = SpruceSchemas.HeartwoodView
241
241
  export type FormBuilderPage = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.FormBuilderImportExportPage;
242
242
  export type Navigation = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Navigation;
243
243
  export type NavigationButton = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.NavigationButton;
244
+ export type LayoutWidth = NonNullable<SkillView['width']>;
244
245
  export type NavigationItem = NavigationButton | NavigationSpacer | NavigationImage;
245
246
  export interface NavigationSpacer {
246
247
  isSpacer: true;
@@ -9,7 +9,8 @@ export default class DialogViewController extends AbstractViewController<Dialog>
9
9
  private isVisible;
10
10
  private cardVc;
11
11
  private shouldShowCloseButton;
12
- constructor(options: ViewControllerOptions & Omit<Dialog, 'closeHandler'>);
12
+ private width?;
13
+ constructor(options: ViewControllerOptions & Omit<DialogOptions, 'closeHandler'>);
13
14
  protected handleClose(): Promise<void>;
14
15
  show(): void;
15
16
  getIsVisible(): boolean;
@@ -21,6 +22,6 @@ export default class DialogViewController extends AbstractViewController<Dialog>
21
22
  render(): Dialog;
22
23
  }
23
24
  export type DialogOptions = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card & SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Dialog;
24
- type Dialog = DialogOptions;
25
+ type Dialog = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Dialog;
25
26
  export type DialogViewControllerOptions = Omit<Dialog, 'closeHandler'>;
26
27
  export {};
@@ -13,6 +13,7 @@ export default class DialogViewController extends AbstractViewController {
13
13
  var _a;
14
14
  super(options);
15
15
  this.isVisible = false;
16
+ this.width = options.width;
16
17
  this.shouldShowCloseButton = options.shouldShowCloseButton !== false;
17
18
  this.cardVc = (_a = options.controller) !== null && _a !== void 0 ? _a : this.Controller('card', options);
18
19
  this.onCloseHandler = options.onClose;
@@ -74,9 +75,7 @@ export default class DialogViewController extends AbstractViewController {
74
75
  });
75
76
  }
76
77
  render() {
77
- return Object.assign(Object.assign({}, this.cardVc.render()), {
78
- //@ts-ignore
79
- controller: this, cardController: this.cardVc, isVisible: this.isVisible, shouldShowCloseButton: this.shouldShowCloseButton, closeHandler: this.shouldShowCloseButton !== false
78
+ return Object.assign(Object.assign({}, this.cardVc.render()), { width: this.width, controller: this, cardController: this.cardVc, isVisible: this.isVisible, shouldShowCloseButton: this.shouldShowCloseButton, closeHandler: this.shouldShowCloseButton !== false
80
79
  ? this.handleClose.bind(this)
81
80
  : undefined });
82
81
  }
@@ -76,7 +76,7 @@ export default class ActiveRecordCardViewController extends AbstractViewControll
76
76
  enableFooter(): void;
77
77
  getListVc(): ListViewController;
78
78
  doesRowExist(id: string): boolean;
79
- getCardVc(): Pick<CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setFooter" | "getHeaderTitle" | "getFooter" | "getHeaderSubtitle" | "render" | "triggerRender" | "setTriggerRenderHandler">;
79
+ getCardVc(): Pick<CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setTriggerRenderHandler" | "render" | "triggerRender" | "setFooter" | "getHeaderTitle" | "getHeaderSubtitle" | "getFooter">;
80
80
  render(): Card;
81
81
  }
82
82
  export interface ActiveRecordCardViewControllerOptions extends ActiveRecordListViewControllerOptions {
@@ -34,7 +34,7 @@ export default class MockActiveRecordCard extends ActiveRecordCardViewController
34
34
  assertDoesNotRenderFooter(): void;
35
35
  assertRendersFooter(): void;
36
36
  getSwipeVc(): import("..").SwipeCardViewController;
37
- getCardVc(): Pick<import("..").CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setFooter" | "getHeaderTitle" | "getFooter" | "getHeaderSubtitle" | "render" | "triggerRender" | "setTriggerRenderHandler">;
37
+ getCardVc(): Pick<import("..").CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setTriggerRenderHandler" | "render" | "triggerRender" | "setFooter" | "getHeaderTitle" | "getHeaderSubtitle" | "getFooter">;
38
38
  getListVcs(): import("..").ListViewController[];
39
39
  rebuildSlidesForPaging(): void;
40
40
  assertRebuildSlideCountEquals(expected: number): void;
@@ -1,4 +1,4 @@
1
- import { Button, Card, FormViewController, Navigation, SkillViewController, ViewController } from '../../types/heartwood.types';
1
+ import { Button, Card, Dialog, FormViewController, Navigation, SkillViewController, ViewController } from '../../types/heartwood.types';
2
2
  import BigFormViewController from '../../viewControllers/BigForm.vc';
3
3
  import ButtonBarViewController from '../../viewControllers/ButtonBar.vc';
4
4
  import ButtonGroupViewController from '../../viewControllers/ButtonGroup.vc';
@@ -10,7 +10,7 @@ declare const buttonAssert: {
10
10
  cardRendersButtonGroup(cardVc: ViewController<Card>): ButtonGroupViewController;
11
11
  buttonGroupIsMultiSelect(buttonGroupVc: ButtonGroupViewController): void;
12
12
  cardSectionRendersButton(vc: ViewController<Card>, sectionIdOrIdx: string | number, buttonId?: string): void;
13
- footerRendersButtonWithType(vc: ViewController<Card>, type?: Button["type"]): void;
13
+ footerRendersButtonWithType(vc: ViewController<Card | Dialog>, type?: Button["type"]): void;
14
14
  cardDoesNotRenderButtons(vc: ViewController<Card>, ids: string[]): void;
15
15
  cardDoesNotRenderButton(vc: ViewController<Card>, id: string): void;
16
16
  cardRendersButtons(vc: ViewController<Card>, ids: string[]): ButtonViewController[];
@@ -1,6 +1,5 @@
1
1
  import { FieldDefinitions } from '@sprucelabs/schema';
2
- import { BigFormViewController, Card, FormBuilderCardViewController, FormInputViewController, FormViewController, RenderAsInputComponent, SimpleViewControllerFactory, SkillViewController, ViewController } from '../../types/heartwood.types';
3
- import DialogViewController from '../../viewControllers/Dialog.vc';
2
+ import { BigFormViewController, Card, Dialog, FormBuilderCardViewController, FormInputViewController, FormViewController, RenderAsInputComponent, SimpleViewControllerFactory, SkillViewController, ViewController } from '../../types/heartwood.types';
4
3
  declare const formAssert: {
5
4
  views: SimpleViewControllerFactory;
6
5
  _setVcFactory(views: SimpleViewControllerFactory): void;
@@ -14,7 +13,7 @@ declare const formAssert: {
14
13
  formIsEnabled(vc: FormVc): void;
15
14
  formIsBusy(vc: FormVc): void;
16
15
  formIsNotBusy(vc: FormVc): void;
17
- cardRendersForm(vc: ViewController<Card> | DialogViewController, id?: string, errorMessage?: string): FormViewController<any> | BigFormViewController<any>;
16
+ cardRendersForm(vc: ViewController<Card | Dialog>, id?: string, errorMessage?: string): FormViewController<any> | BigFormViewController<any>;
18
17
  cardRendersForms(vc: ViewController<Card>, count: number): FormViewController<any>[] | BigFormViewController<any>[];
19
18
  cardDoesNotRenderForm(vc: ViewController<Card>, id: string): void;
20
19
  formFieldRendersUsingInputVc(vc: FormVc, fieldName: string, inputVc: FormInputViewController): void;
@@ -10,10 +10,10 @@ declare const interactionUtil: {
10
10
  clickButtonInGroup(buttonGroupVc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button[]>, buttonIdOrIdx: string | number): Promise<void>;
11
11
  clickButtonHint(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>), buttonId: string): Promise<any>;
12
12
  clickButtonInButtonBar(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.ButtonBar>, buttonId: string): Promise<void>;
13
- clickInFooterWithType(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>), type: import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
13
+ clickInFooterWithType(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>) | import("../..").DialogViewController, type: import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
14
14
  clickPrimaryInFooter(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
15
15
  clickSecondaryInFooter(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
16
- clickDestructiveInFooter(vc: import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
16
+ clickDestructiveInFooter(vc: import("../..").DialogViewController | import("../..").ViewController<import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card> | (import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>)): Promise<void>;
17
17
  clickInputButton(vc: import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>, fieldName: string, id: string): Promise<void>;
18
18
  clickDestructiveInRow(listVc: import("../..").ListViewController | import("../..").ActiveRecordListViewController, rowIdxOrId: number | string): Promise<void>;
19
19
  cancelForm(vc: import("../..").FormViewControllerImpl<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Form<any>> | import("../../viewControllers/BigForm.vc").default<any, import("@sprucelabs/mercury-types").SpruceSchemas.HeartwoodViewControllers.v2021_02_11.BigForm<any>>): Promise<void>;
@@ -2,6 +2,7 @@ import { SpruceSchemas } from '@sprucelabs/mercury-types';
2
2
  import { ClickCalendarViewOptions, DropEventOptions, KeyboardKey, List, Navigation, Pager, SkillViewController, ViewController } from '../../types/heartwood.types';
3
3
  import ActiveRecordListViewController from '../../viewControllers/activeRecord/ActiveRecordList.vc';
4
4
  import BigFormViewController from '../../viewControllers/BigForm.vc';
5
+ import DialogViewController from '../../viewControllers/Dialog.vc';
5
6
  import FormViewController from '../../viewControllers/form/Form.vc';
6
7
  import ListViewController from '../../viewControllers/list/List.vc';
7
8
  import ListRowViewController from '../../viewControllers/list/ListRow.vc';
@@ -16,10 +17,10 @@ declare const interactor: {
16
17
  clickButtonInGroup(buttonGroupVc: ButtonGroupVc, buttonIdOrIdx: string | number): Promise<void>;
17
18
  clickButtonHint(vc: CardVc | FormVc, buttonId: string): Promise<any>;
18
19
  clickButtonInButtonBar(vc: ButtonBarVc, buttonId: string): Promise<void>;
19
- clickInFooterWithType(vc: CardVc | FormVc, type: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
20
+ clickInFooterWithType(vc: CardVc | FormVc | DialogViewController, type: SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Button["type"]): Promise<void>;
20
21
  clickPrimaryInFooter(vc: CardVc | FormVc): Promise<void>;
21
22
  clickSecondaryInFooter(vc: CardVc | FormVc): Promise<void>;
22
- clickDestructiveInFooter(vc: CardVc | FormVc): Promise<void>;
23
+ clickDestructiveInFooter(vc: VcWithFooter): Promise<void>;
23
24
  clickInputButton(vc: FormVc, fieldName: string, id: string): Promise<void>;
24
25
  clickDestructiveInRow(listVc: ListVc, rowIdxOrId: number | string): Promise<void>;
25
26
  cancelForm(vc: FormVc): Promise<void>;
@@ -81,3 +82,4 @@ type FormVc = FormViewController<any> | BigFormViewController<any>;
81
82
  type NavVc = ViewController<Navigation>;
82
83
  export type PagerButton = 'previous' | 'next' | number;
83
84
  type ListVc = ListViewController | ActiveRecordListViewController;
85
+ type VcWithFooter = CardVc | FormVc | DialogViewController;
@@ -1,4 +1,4 @@
1
- import { LineIcon, SkillViewController, ViewController, CardViewController, ScopedBy, Card, StickyToolPosition, ScopeFlag, Button, List, RowStyle, AlertOptions, SimpleViewControllerFactory } from '../../types/heartwood.types';
1
+ import { LineIcon, SkillViewController, ViewController, CardViewController, ScopedBy, Card, StickyToolPosition, ScopeFlag, Button, List, RowStyle, AlertOptions, SimpleViewControllerFactory, Dialog } from '../../types/heartwood.types';
2
2
  import ButtonBarViewController from '../../viewControllers/ButtonBar.vc';
3
3
  import CalendarViewController from '../../viewControllers/Calendar.vc';
4
4
  import DialogViewController from '../../viewControllers/Dialog.vc';
@@ -120,7 +120,7 @@ declare const vcAssert: {
120
120
  /**
121
121
  * @deprecated vcAssert.assertFooterRendersButtonWithType(...) -> buttonAssert.footerRendersButtonWithType(...)
122
122
  */
123
- assertFooterRendersButtonWithType(vc: ViewController<Card>, type?: Button["type"]): void;
123
+ assertFooterRendersButtonWithType(vc: ViewController<Card | Dialog>, type?: Button["type"]): void;
124
124
  /**
125
125
  *
126
126
  * @deprecated vcAssert.assertCardDoesNotRenderButtons(...) -> buttonAssert.cardDoesNotRenderButtons(...)
@@ -52,7 +52,7 @@ declare const vcAssertUtil: {
52
52
  assertSkillViewDoesNotRenderViewController(vc: import("../..").SkillViewController, VcClass: any): void;
53
53
  assertSkillViewRendersViewController(vc: import("../..").SkillViewController, VcClass: any): any;
54
54
  assertRowRendersButtonWithIcon(vc: import("../..").ListRowViewController, icon: import("../..").LineIcon): void;
55
- assertFooterRendersButtonWithType(vc: import("../..").ViewController<import("../..").Card>, type?: import("../..").Button["type"]): void;
55
+ assertFooterRendersButtonWithType(vc: import("../..").ViewController<import("../..").Card | import("../..").Dialog>, type?: import("../..").Button["type"]): void;
56
56
  assertCardDoesNotRenderButtons(vc: import("../..").ViewController<import("../..").Card>, ids: string[]): void;
57
57
  assertCardDoesNotRenderButton(vc: import("../..").ViewController<import("../..").Card>, id: string): void;
58
58
  assertCardRendersButtons(vc: import("../..").ViewController<import("../..").Card>, ids: string[]): import("./assertSupport").ButtonViewController[];
@@ -241,6 +241,7 @@ export type FormBuilder<S extends Schema = Schema> = SpruceSchemas.HeartwoodView
241
241
  export type FormBuilderPage = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.FormBuilderImportExportPage;
242
242
  export type Navigation = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Navigation;
243
243
  export type NavigationButton = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.NavigationButton;
244
+ export type LayoutWidth = NonNullable<SkillView['width']>;
244
245
  export type NavigationItem = NavigationButton | NavigationSpacer | NavigationImage;
245
246
  export interface NavigationSpacer {
246
247
  isSpacer: true;
@@ -9,7 +9,8 @@ export default class DialogViewController extends AbstractViewController<Dialog>
9
9
  private isVisible;
10
10
  private cardVc;
11
11
  private shouldShowCloseButton;
12
- constructor(options: ViewControllerOptions & Omit<Dialog, 'closeHandler'>);
12
+ private width?;
13
+ constructor(options: ViewControllerOptions & Omit<DialogOptions, 'closeHandler'>);
13
14
  protected handleClose(): Promise<void>;
14
15
  show(): void;
15
16
  getIsVisible(): boolean;
@@ -21,6 +22,6 @@ export default class DialogViewController extends AbstractViewController<Dialog>
21
22
  render(): Dialog;
22
23
  }
23
24
  export type DialogOptions = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Card & SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Dialog;
24
- type Dialog = DialogOptions;
25
+ type Dialog = SpruceSchemas.HeartwoodViewControllers.v2021_02_11.Dialog;
25
26
  export type DialogViewControllerOptions = Omit<Dialog, 'closeHandler'>;
26
27
  export {};
@@ -8,6 +8,7 @@ class DialogViewController extends Abstract_vc_1.default {
8
8
  constructor(options) {
9
9
  super(options);
10
10
  this.isVisible = false;
11
+ this.width = options.width;
11
12
  this.shouldShowCloseButton = options.shouldShowCloseButton !== false;
12
13
  this.cardVc = options.controller ?? this.Controller('card', options);
13
14
  this.onCloseHandler = options.onClose;
@@ -63,7 +64,7 @@ class DialogViewController extends Abstract_vc_1.default {
63
64
  render() {
64
65
  return {
65
66
  ...this.cardVc.render(),
66
- //@ts-ignore
67
+ width: this.width,
67
68
  controller: this,
68
69
  cardController: this.cardVc,
69
70
  isVisible: this.isVisible,
@@ -76,7 +76,7 @@ export default class ActiveRecordCardViewController extends AbstractViewControll
76
76
  enableFooter(): void;
77
77
  getListVc(): ListViewController;
78
78
  doesRowExist(id: string): boolean;
79
- getCardVc(): Pick<CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setFooter" | "getHeaderTitle" | "getFooter" | "getHeaderSubtitle" | "render" | "triggerRender" | "setTriggerRenderHandler">;
79
+ getCardVc(): Pick<CardViewController, "isBusy" | "setCriticalError" | "getHasCriticalError" | "clearCriticalError" | "setIsBusy" | "setHeaderTitle" | "setHeaderSubtitle" | "enableFooter" | "disableFooter" | "setTriggerRenderHandler" | "render" | "triggerRender" | "setFooter" | "getHeaderTitle" | "getHeaderSubtitle" | "getFooter">;
80
80
  render(): Card;
81
81
  }
82
82
  export interface ActiveRecordCardViewControllerOptions extends ActiveRecordListViewControllerOptions {
package/package.json CHANGED
@@ -13,7 +13,7 @@
13
13
  "sideEffects": false,
14
14
  "license": "MIT",
15
15
  "description": "All the power of Heartwood in one, convenient package.",
16
- "version": "124.1.0",
16
+ "version": "124.1.1",
17
17
  "skill": {
18
18
  "namespace": "HeartwoodViewControllers",
19
19
  "commandOverrides": {