ids-enterprise-typings 16.2.1-beta.0 → 16.2.1-dev.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.
package/index.d.ts CHANGED
@@ -54,6 +54,7 @@
54
54
  /// <reference path='lib/menu-button/soho-menu-button.d.ts' />
55
55
  /// <reference path='lib/message/soho-message.d.ts' />
56
56
  /// <reference path='lib/modal-dialog/soho-modal-dialog.d.ts' />
57
+ /// <reference path='lib/module-nav/index.d.ts' />
57
58
  /// <reference path='lib/monthview/soho-monthview.d.ts' />
58
59
  /// <reference path='lib/notification/soho-notification.d.ts' />
59
60
  /// <reference path='lib/notification-badge/soho-notification-badge.d.ts' />
@@ -8,10 +8,56 @@
8
8
 
9
9
  type SohoAccordionExpanderType = 'classic' | 'plus-minus' | 'chevron';
10
10
 
11
+ type SohoAccordionDefaultFocusBehaviorCallback = () => void;
12
+
13
+ type SohoAccordionHeaderGroup = any; // JQuery<HTMLElement>
14
+
15
+ type SohoAccordionHeaderExpanderButtonGroup = any; // JQuery<HTMLElement>
16
+
17
+ type SohoAccordionHeaderAnchorGroup = any; // JQuery<HTMLElement>
18
+
19
+ type SohoAccordionHeaderAnyGroup = SohoAccordionHeaderGroup | SohoAccordionHeaderExpanderButtonGroup | SohoAccordionHeaderAnchorGroup;
20
+
21
+ type SohoAccordionNavDirection = 0 | -1 | 1;
22
+
23
+ /**
24
+ * Soho Accordion data representation types
25
+ * These can be used to work with the results of `.toData()`
26
+ */
27
+
28
+ type SohoAccordionData = Array<SohoAccordionSectionData> | Array<SohoAccordionHeaderData>;
29
+
30
+ type SohoAccordionSectionData = {
31
+ index: string,
32
+ type: 'section',
33
+ children?: Array<SohoAccordionHeaderData | SohoAccordionContentData>,
34
+ };
35
+
36
+ type SohoAccordionContentData = {
37
+ index: string,
38
+ type: 'content',
39
+ content?: string,
40
+ contentText?: string
41
+ };
42
+
43
+ type SohoAccordionHeaderData = {
44
+ index: string,
45
+ type: 'header',
46
+ text?: string,
47
+ icon?: string,
48
+ children?: Array<SohoAccordionHeaderData | SohoAccordionContentData>
49
+ };
50
+
11
51
  /**
12
- * Soho Accordion Control Options
13
- */
52
+ * Soho Accordion Control Options
53
+ */
14
54
  interface SohoAccordionOptions {
55
+ /**
56
+ * Provides a mechanism for controlling the behavior of accordion header focus.
57
+ * By default, the built-in behavior is used (ability to focus headers/expanders independently).
58
+ */
59
+ accordionFocusCallback?: (header: JQuery<HTMLElement>, defaultFocusBehaviorCallback?: SohoAccordionDefaultFocusBehaviorCallback) => void;
60
+
15
61
  /**
16
62
  * If set to true, allows only one pane of the Accordion to be open at a time.
17
63
  * If an Accordion pane is open, and that pane contains sub-headers,
@@ -68,22 +114,26 @@ interface SohoAccordionOptions {
68
114
  }
69
115
 
70
116
  /**
71
- * This interface represents the public API exposed by the
72
- * busy indicator.
117
+ * This interface represents the public API exposed by the Soho Accordion
73
118
  */
74
119
  interface SohoAccordionStatic {
75
120
  /** Access to the control's options block. */
76
121
  settings: SohoAccordionOptions;
77
122
 
123
+ /** Calls the `source` method passed via settings */
124
+ callSource(anchor: SohoAccordionHeaderAnchorGroup, animationCallback: () => void): void;
125
+
78
126
  /** Collapses all panels. */
79
127
  collapseAll(): void;
80
128
 
81
129
  /** Expands all panels. */
82
130
  expandAll(): void;
83
131
 
84
- expand(header: any | string): void;
132
+ /** Expands one or a group of panels */
133
+ expand(header: SohoAccordionHeaderGroup | string): void;
85
134
 
86
- collapse(header: any | string): void;
135
+ /** Collapses one or a group of panels */
136
+ collapse(header: SohoAccordionHeaderGroup | string): void;
87
137
 
88
138
  /** Disables the accordion from reacting to events. */
89
139
  disable(): void;
@@ -92,18 +142,69 @@ interface SohoAccordionStatic {
92
142
  enable(): void;
93
143
 
94
144
  /** Checks if a particular header is disabled, or if the entire accordion is disabled. */
95
- isDisabled(jQuery: any): boolean;
145
+ isDisabled(header: SohoAccordionHeaderGroup): boolean;
96
146
 
97
147
  /** Checks if an Accordion Section is currently expanded. */
98
- isExpanded(jQuery: any): boolean;
148
+ isExpanded(header: SohoAccordionHeaderGroup): boolean;
99
149
 
100
150
  /** Toggles the exanded state of the selected header. */
101
- toggle(jQuery: any): void;
151
+ toggle(header: SohoAccordionHeaderGroup): boolean;
152
+
153
+ /**
154
+ * Gets the current contents of this accordion and creates a JSON-like representation of the structure.
155
+ * For full JSON compatibility, don't use the `addElementReference` flag.
156
+ **/
157
+ toData(flatten?: boolean, addElementReference?: boolean): SohoAccordionData;
158
+
159
+ /** Makes an accordion header appear with a "selected" state */
160
+ select(element?: SohoAccordionHeaderAnyGroup): void;
161
+
162
+ /** Makes an accordion header appear with a "deselected" state */
163
+ deselect(element?: SohoAccordionHeaderAnyGroup): void;
164
+
165
+ /** Makes all accordion headers deselected */
166
+ deselectAll(): void;
167
+
168
+ /** Gets a reference to currently-selected accordion headers */
169
+ getSelected(): SohoAccordionHeaderGroup;
170
+
171
+ /** Determines if an Accordion Header is disabled */
172
+ isDisabled(header: SohoAccordionHeaderGroup): boolean;
173
+
174
+ /** "Visually" filters accordion headers (elements are not added/removed but temporarily hidden by CSS if filtered out) */
175
+ filter(headers?: SohoAccordionHeaderGroup): void;
176
+
177
+ /** Resets a previously-applied filter */
178
+ unfilter(headers?: SohoAccordionHeaderGroup): void;
179
+
180
+ /** Determines if an Accordion Header is currently visually filtered out */
181
+ isFiltered(header: SohoAccordionHeaderGroup): boolean;
182
+
183
+ /** Determines if animation is currently happening on accordion panes (controls some behavior internally) */
184
+ isAnimating: boolean;
185
+
186
+ /** Programmatically navigates to the next-available accordion header (down) */
187
+ nextHeader(element: SohoAccordionHeaderAnyGroup, noDescend?: boolean): void;
188
+
189
+ /** Programmatically navigates to the previous-available accordion header (up) */
190
+ prevHeader(element: SohoAccordionHeaderAnyGroup, noDescend?: boolean): void;
191
+
192
+ /** Programmatically navigates to the next-available accordion header (down) */
193
+ ascend(element: SohoAccordionHeaderGroup, direction?: SohoAccordionNavDirection): void;
194
+
195
+ /** Programmatically navigates to the previous-available accordion header (up) */
196
+ descend(element: SohoAccordionHeaderGroup, direction?: SohoAccordionNavDirection): void;
197
+
198
+ /** Programmatically focuses the correct element within an accordion header (based on previously-focused elements) */
199
+ focusOriginalType(header: SohoAccordionHeaderGroup): void;
102
200
 
103
201
  /** Updates the accordion with any new settings. */
104
- updated(headers?: JQuery[], settings?: SohoAccordionOptions): void;
202
+ updated(headers?: SohoAccordionHeaderGroup, settings?: SohoAccordionOptions): void;
203
+
204
+ /** Performs a teardown of the jQuery component API (does not remove the component instance) */
205
+ teardown(): void;
105
206
 
106
- /** Destroys the control on completion. */
207
+ /** Destroys the control on completion. (Tears down and removes the component instance) */
107
208
  destroy(): void;
108
209
  }
109
210
 
@@ -1,3 +1,6 @@
1
+ /// <reference path='../accordion/soho-accordion.d.ts' />
2
+ /// <reference path='../searchfield/soho-searchfield.d.ts' />
3
+
1
4
  /**
2
5
  * Soho Application Menu.
3
6
  *
@@ -63,6 +66,15 @@ interface SohoApplicationMenuStatic {
63
66
  /** Control settings. */
64
67
  settings: SohoApplicationMenuOptions;
65
68
 
69
+ /** Accordion element */
70
+ accordionEl: HTMLElement;
71
+
72
+ /** Searchfield element, if present */
73
+ searchEl?: HTMLElement | null;
74
+
75
+ /** Searchfield API, if present */
76
+ searchAPI?: SohoSearchFieldStatic;
77
+
66
78
  /**
67
79
  * Opens the application menu.
68
80
  *
@@ -10,17 +10,17 @@
10
10
  */
11
11
  interface SohoBusyIndicatorOptions {
12
12
  /** Blocks UI events to the attached components whilst the indictor is active. */
13
- blockUI?: boolean;
13
+ blockUI?: boolean;
14
14
 
15
- /** Text to display, will show 'Loading...' if left undefined. */
16
- text?: string;
15
+ /** Text to display, will show 'Loading...' if left undefined. */
16
+ text?: string;
17
17
 
18
- /** Number of milliseconds to wait befre the indicator is dislayed, if 0 it is displayed immediately. */
19
- displayDelay?: number;
18
+ /** Number of milliseconds to wait befre the indicator is dislayed, if 0 it is displayed immediately. */
19
+ displayDelay?: number;
20
20
 
21
- /** Number of milliseconds before the indicator is removed, if 0 does indefinitely. */
22
- // Is this correct? Should the indicator not close.
23
- timeToComplete?: number;
21
+ /** Number of milliseconds before the indicator is removed, if 0 does indefinitely. */
22
+ // Is this correct? Should the indicator not close.
23
+ timeToComplete?: number;
24
24
 
25
25
  /**
26
26
  * If true, allows the "blockUI" setting to display an overlay that prevents interaction,
@@ -57,7 +57,7 @@ interface SohoBusyIndicatorStatic {
57
57
  close(fromEvent: boolean): void;
58
58
 
59
59
  /** Updates the busy indicator with any new seettings. */
60
- updated(): void;
60
+ updated(settings?: SohoBusyIndicatorOptions): void;
61
61
 
62
62
  /** whether or not the busy indicator is displaying or not */
63
63
  isActive(): boolean | undefined;
@@ -107,7 +107,7 @@ declare class SohoButtonStatic {
107
107
  toggle(): void;
108
108
 
109
109
  /** Update the component with new settings. */
110
- updated(settings: SohoButtonOptions): void;
110
+ updated(settings?: SohoButtonOptions): void;
111
111
  }
112
112
 
113
113
  /**
@@ -644,6 +644,7 @@ interface SohoStatic {
644
644
  Status: SohoDataGridColumnFormatterFunction;
645
645
  TargetedAchievement: SohoDataGridColumnFormatterFunction;
646
646
  Fileupload: SohoDataGridColumnFormatterFunction;
647
+ MultiSelect: SohoDataGridColumnFormatterFunction;
647
648
  };
648
649
  Editors: {
649
650
  // Supports, Text, Numeric, Integer via mask
@@ -660,6 +661,7 @@ interface SohoStatic {
660
661
  Autocomplete: SohoDataGridColumnEditorFunction;
661
662
  Spinbox: SohoDataGridColumnEditorFunction;
662
663
  Favorite: SohoDataGridColumnEditorFunction;
664
+ MultiSelect: SohoDataGridColumnEditorFunction;
663
665
  };
664
666
  }
665
667
 
@@ -724,6 +726,7 @@ declare var Formatters: {
724
726
  Status: SohoDataGridColumnFormatterFunction;
725
727
  TargetedAchievement: SohoDataGridColumnFormatterFunction;
726
728
  Fileupload: SohoDataGridColumnFormatterFunction;
729
+ MultiSelect: SohoDataGridColumnFormatterFunction;
727
730
  };
728
731
 
729
732
  type SohoDataGridColumnHrefFunction = (
@@ -772,8 +775,8 @@ interface SohoDataGridColumnClickData {
772
775
  /** Index of the row clicked. */
773
776
  row: number;
774
777
 
775
- /** Element click. */
776
- cell: HTMLElement;
778
+ /** Cell index. */
779
+ cell: number | null;
777
780
 
778
781
  /** Row data */
779
782
  item: any;
@@ -829,6 +832,9 @@ interface SohoDataGridColumn {
829
832
  /** Tooltip for the column header. */
830
833
  headerTooltip?: string;
831
834
 
835
+ /** Tooltip Options for the columns of the datagrid */
836
+ tooltipOptions?: SohoTooltipOptions;
837
+
832
838
  /** Column formatter function or a string. */
833
839
  formatter?: SohoDataGridColumnFormatterFunction | string;
834
840
 
@@ -963,6 +969,9 @@ interface SohoDataGridColumn {
963
969
  /** Sets the name of the icon to show in the header */
964
970
  headerIcon?: string;
965
971
 
972
+ /** Sets the name of the icon to show in the header */
973
+ headerIconTooltip?: string;
974
+
966
975
  /** Adds an extra class to the header for formatting */
967
976
  headerCssClass?: string;
968
977
 
@@ -996,6 +1005,11 @@ interface SohoDataGridColumn {
996
1005
  */
997
1006
  selectChildren?: boolean;
998
1007
 
1008
+ /**
1009
+ * Disable the filter area
1010
+ */
1011
+ filterDisabled?: boolean;
1012
+
999
1013
  /** Enforce a max length when editing this column */
1000
1014
  maxLength?: number;
1001
1015
 
@@ -1103,6 +1117,9 @@ interface SohoDataGridStatic {
1103
1117
  /** Updates the data displayed in the given row. */
1104
1118
  updateRow(idx: number, rowData: Object): void;
1105
1119
 
1120
+ /** Updates the data displayed in the given cell and runs the formatter. */
1121
+ updateCell(row: number, cell: number, rowCellValue: any): void;
1122
+
1106
1123
  /**
1107
1124
  * Hides the column at the given index.
1108
1125
  * @param id The id of the column to show.
@@ -1329,8 +1346,17 @@ interface SohoDataGridStatic {
1329
1346
  /**
1330
1347
  * Expand Detail Row Or Tree Row
1331
1348
  * @param {number} dataRowIndex The row to toggle
1349
+ * @param {boolean} expandOnly Set the toggle to expand only
1350
+ */
1351
+ toggleRowDetail(dataRowIndex: number, expandOnly?: boolean | undefined): void;
1352
+
1353
+ /**
1354
+ * Function to update the summary row
1355
+ * @private
1356
+ * @param {object} col The column data
1357
+ * @param {number} cell The cell index
1332
1358
  */
1333
- toggleRowDetail(dataRowIndex: number): void;
1359
+ updateSummaryRow(col: object, cell: number): void;
1334
1360
 
1335
1361
  /**
1336
1362
  * Update the component with new settings.
@@ -229,6 +229,28 @@ interface SohoDatePickerMonthRenderedEvent extends JQuery.TriggeredEvent {
229
229
  year: number;
230
230
  }
231
231
 
232
+ /**
233
+ * Interface to set custom data validation for the datepicker.
234
+ */
235
+ interface SohoDatePickerValidator {
236
+ validator: {
237
+ /** Validator ID */
238
+ id: string;
239
+
240
+ /** Function to perform the validation */
241
+ check(value: any, field: any, grid: any): boolean
242
+
243
+ /** Message type */
244
+ type: string;
245
+
246
+ /** Message text */
247
+ message: string;
248
+ };
249
+
250
+ /** The event types that will trigger the validation */
251
+ validatorEvents: string;
252
+ }
253
+
232
254
  /**
233
255
  * JQuery Integration
234
256
  */
@@ -27,6 +27,16 @@ interface SohoDropDownOptions {
27
27
  */
28
28
  cssClass?: string;
29
29
 
30
+ /**
31
+ * Controls the style of the icon representing the Dropdown's "open/close" functionality.
32
+ */
33
+ dropdownIcon?: string;
34
+
35
+ /**
36
+ * If true, adds an extra wrapping element in the Dropdown List (in some situations used for styling/scrolling behavior changes)
37
+ */
38
+ extraListWrapper?: boolean;
39
+
30
40
  /**
31
41
  * Search mode to use between 'contains', 'keyword', 'wordStartsWith', 'phraseStartsWith false will not allow client side filter
32
42
  */
@@ -123,6 +133,11 @@ interface SohoDropDownOptions {
123
133
  */
124
134
  width?: number;
125
135
 
136
+ /**
137
+ * CSS selector representing an element that the Dropdown component can use to define the list's width
138
+ */
139
+ widthTarget?: string;
140
+
126
141
  /**
127
142
  * Show the select all text/option.
128
143
  */
@@ -202,6 +217,15 @@ interface SohoDropDownStatic {
202
217
  */
203
218
  settings: SohoDropDownOptions;
204
219
 
220
+ /** Provides an array of selected values */
221
+ readonly selectedValues: Array<string>
222
+
223
+ /** Provides an array of selected HTMLOptionElements */
224
+ readonly selectedOptions: Array<HTMLOptionElement>
225
+
226
+ /** Provides the true "value" of the Dropdown input (different depending on single vs multiple) */
227
+ readonly value: Array<string> | string
228
+
205
229
  /**
206
230
  * Mark the contro as readonly.
207
231
  */
@@ -217,7 +241,9 @@ interface SohoDropDownStatic {
217
241
  */
218
242
  disable(): void;
219
243
 
220
- /** Enable the control. */
244
+ /**
245
+ * Enable the control.
246
+ */
221
247
  enable(): void;
222
248
 
223
249
  /**
@@ -234,6 +260,11 @@ interface SohoDropDownStatic {
234
260
  * Set the selected option on the dropdown.
235
261
  */
236
262
  selectValue(value: any): void;
263
+
264
+ /**
265
+ * Set the selected option with icon.
266
+ */
267
+ setListIcon(): void;
237
268
  }
238
269
 
239
270
  /**
@@ -32,6 +32,13 @@ interface SohoModalOptions {
32
32
  /** The string used as the title for the dialog - not defaulted. */
33
33
  title?: string;
34
34
 
35
+ /** The icon to add to the the title for the dialog - name without icon- */
36
+ icon?: string;
37
+
38
+ /** The class to add for example `info` for color and placement */
39
+ iconClass?: string;
40
+
41
+
35
42
  // The content, can be 'html' or a selector.
36
43
  content?: JQuery | string;
37
44
 
@@ -0,0 +1,4 @@
1
+ /// <reference path='soho-module-nav-common.d.ts' />
2
+ /// <reference path='soho-module-nav-settings.d.ts' />
3
+ /// <reference path='soho-module-nav-switcher.d.ts' />
4
+ /// <reference path='soho-module-nav.d.ts' />
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Soho Module Nav Common
3
+ *
4
+ * This file provides common types used by all Module Nav wrapper components
5
+ */
6
+
7
+ /**
8
+ * Controls the visible state of the Module Nav component.
9
+ * In some cases this also has affects on child components and event handling
10
+ */
11
+ type SohoModuleNavDisplayMode = false | 'collapsed' | 'expanded';
12
+
@@ -0,0 +1,53 @@
1
+ /// <reference path='./soho-module-nav-common.d.ts' />
2
+ /// <reference path='../accordion/soho-accordion.d.ts' />
3
+ /// <reference path='../popupmenu/soho-popupmenu.d.ts' />
4
+
5
+ /** Defines options present in the Soho Module Nav Settings */
6
+ interface SohoModuleNavSettingsOptions {
7
+ displayMode?: SohoModuleNavDisplayMode;
8
+ }
9
+
10
+ /** Public API for Soho Module Nav Settings JS component */
11
+ interface SohoModuleNavSettingsStatic {
12
+ /** Module Nav Switcher's current settings */
13
+ settings: SohoModuleNavSettingsOptions;
14
+
15
+ /** Reference to jQuery-wrapped HTML Element representing the Soho Accordion */
16
+ accordionEl?: HTMLElement;
17
+
18
+ /** Reference to a Soho Accordion API, if one is available */
19
+ accordionAPI?: SohoAccordionStatic;
20
+
21
+ /** References to specific sections/elements */
22
+ containerEl?: HTMLElement;
23
+
24
+ /** Reference to the element representing the settings button's menu */
25
+ menuEl?: HTMLElement;
26
+
27
+ /** Reference to the settings menu's Soho Popupmenu API, if one is available*/
28
+ menuAPI?: SohoPopupMenuStatic;
29
+
30
+ /** Initializes the jQuery component */
31
+ init(): void;
32
+
33
+ /** Changes the Module Nav Switcher's Display Mode */
34
+ setDisplayMode(val?: SohoModuleNavDisplayMode): void;
35
+
36
+ /** Re-renders jQuery child component APIs */
37
+ renderChildComponents(): void;
38
+
39
+ /** Tear down the markup for the control */
40
+ teardown(): void;
41
+
42
+ /** Updates the Module Nav Settings with any new settings */
43
+ updated(newSettings?: SohoModuleNavSettingsOptions): void;
44
+
45
+ /** Destroys the control on completion. */
46
+ destroy(): void;
47
+ }
48
+
49
+ /** jQuery interface for Module Nav Settings */
50
+ interface JQuery<TElement = HTMLElement> extends Iterable<TElement> {
51
+ modulenavsettings(options?: SohoModuleNavSettingsOptions): JQuery;
52
+ on(events: 'updated', handler: JQuery.EventHandlerBase<any, SohoModuleNavSettingsOptions>): this;
53
+ }
@@ -0,0 +1,94 @@
1
+ /// <reference path='./soho-module-nav-common.d.ts' />
2
+ /// <reference path='../accordion/soho-accordion.d.ts' />
3
+ /// <reference path='../button/soho-button.d.ts' />
4
+ /// <reference path='../dropdown/soho-dropdown.d.ts' />
5
+
6
+
7
+ /** Defines a Module Nav Switcher Role Record
8
+ * (Takes the same arguments as items present in the Soho Dropdown JSON notation)
9
+ */
10
+ type SohoModuleNavSwitcherRoleRecord = Record<string, unknown>;
11
+
12
+ type SohoModuleNavSwitcherIconSetting = string | ((api: SohoModuleNavSwitcherStatic) => string) | undefined | false;
13
+
14
+ /** Defines options present in the Soho Module Nav Switcher */
15
+ interface SohoModuleNavSwitcherOptions {
16
+ displayMode?: SohoModuleNavDisplayMode;
17
+ generate?: boolean;
18
+ icon?: SohoModuleNavSwitcherIconSetting;
19
+ moduleButtonText?: string;
20
+ roleDropdownLabel?: string;
21
+ changeIconOnSelect?: boolean;
22
+ noSearch?: boolean;
23
+ roles?: Array<SohoModuleNavSwitcherRoleRecord>;
24
+ }
25
+
26
+ /** Public API for Soho Module Nav Switcher JS component */
27
+ interface SohoModuleNavSwitcherStatic {
28
+ /** Module Nav Switcher's current settings */
29
+ settings: SohoModuleNavSwitcherOptions;
30
+
31
+ /** Reference to jQuery-wrapped HTML Element representing the Soho Accordion */
32
+ accordionEl?: HTMLElement;
33
+
34
+ /** Reference to a Soho Accordion API, if one is available */
35
+ accordionAPI?: SohoAccordionStatic;
36
+
37
+ /** Reference to container element */
38
+ containerEl?: HTMLElement;
39
+
40
+ /** Reference to the Module Button's Container Element */
41
+ moduleButtonContainerEl?: HTMLElement;
42
+
43
+ /** Reference to the Module Button's Icon Element */
44
+ moduleButtonIconEl?: HTMLElement | SVGElement;
45
+
46
+ /** Reference to the Module Button element */
47
+ moduleButtonEl?: HTMLElement;
48
+
49
+ /** Reference to the Module Button's Soho Button API, if one is available */
50
+ moduleButtonAPI?: SohoButtonStatic;
51
+
52
+ /** Reference to the Role Dropdown's container element */
53
+ roleDropdownContainerEl?: HTMLElement;
54
+
55
+ /** Reference to the Role Dropdown's element */
56
+ roleDropdownEl?: HTMLElement;
57
+
58
+ /** Reference to the Module Button's Soho Button API, if one is available */
59
+ roleDropdownAPI?: SohoDropDownStatic;
60
+
61
+ /** Initializes the jQuery component */
62
+ init(): void;
63
+
64
+ /** Changes the Module Nav Switcher's Display Mode */
65
+ setDisplayMode(val?: SohoModuleNavDisplayMode): void;
66
+
67
+ /** Sets visible */
68
+ setRoles(val?: SohoModuleNavSwitcherRoleRecord[], doUpdate?: boolean): void;
69
+
70
+ /** Selects a role in the dropdown based on its value,
71
+ * keeping all Module Nav Switcher elements synced */
72
+ selectRole(val: string): void;
73
+
74
+ /** Re-renders jQuery child component APIs */
75
+ renderChildComponents(): void;
76
+
77
+ /** Changes the focus of the Module Button */
78
+ toggleModuleButtonFocus(doFocus?: boolean): void;
79
+
80
+ /** Tear down the markup for the control */
81
+ teardown(): void;
82
+
83
+ /** Updates the Module Nav Switcher with any new settings */
84
+ updated(newSettings?: SohoModuleNavSwitcherOptions): void;
85
+
86
+ /** Destroys the control on completion. */
87
+ destroy(): void;
88
+ }
89
+
90
+ /** jQuery interface for Module Nav Switcher */
91
+ interface JQuery<TElement = HTMLElement> extends Iterable<TElement> {
92
+ modulenavswitcher(options?: SohoModuleNavSwitcherOptions): JQuery;
93
+ on(events: 'updated', handler: JQuery.EventHandlerBase<any, SohoModuleNavSwitcherOptions>): this;
94
+ }
@@ -0,0 +1,99 @@
1
+ /// <reference path='./soho-module-nav-common.d.ts' />
2
+ /// <reference path='../accordion/soho-accordion.d.ts' />
3
+
4
+ interface SohoModuleNavDisplayModeChangeEvent {
5
+ e: JQuery.TriggeredEvent,
6
+ val: SohoModuleNavDisplayMode
7
+ }
8
+
9
+ type SohoModuleNavBreakPoint =
10
+ 'phone' |
11
+ 'slim' |
12
+ 'phablet' |
13
+ 'phone-to-tablet' |
14
+ 'wide-tablet' |
15
+ 'tablet-to-desktop' |
16
+ 'desktop-to-extralarge' | undefined;
17
+
18
+ /** Defines options present in the Soho Module Nav */
19
+ interface SohoModuleNavOptions {
20
+ accordionSettings?: SohoAccordionOptions;
21
+ displayMode?: SohoModuleNavDisplayMode;
22
+ filterable?: boolean;
23
+ initChildren?: boolean;
24
+ pinSections?: boolean;
25
+ showDetailView?: boolean;
26
+ mobileBehavior?: boolean;
27
+ breakpoint?: SohoModuleNavBreakPoint,
28
+ showOverlay?: boolean;
29
+ showModuleSwitcher?: boolean;
30
+ showGuestSection?: boolean;
31
+ showSearchBar?: boolean;
32
+ enableOutsideClick?: boolean;
33
+ }
34
+
35
+ /** Public API for Soho Module Nav JS component */
36
+ interface SohoModuleNavStatic {
37
+ /** Module Nav's current settings */
38
+ settings: SohoModuleNavOptions;
39
+
40
+ /** Reference to element representing accordion, if one is available */
41
+ accordionEl?: HTMLElement;
42
+
43
+ /** Reference to a Soho Accordion API, if one is available */
44
+ accordionAPI?: SohoAccordionStatic;
45
+
46
+ /** Reference to element representing searchfield, if one is available */
47
+ searchEl?: HTMLElement;
48
+
49
+ /** Reference to a Soho SearchField API, if one is available */
50
+ searchAPI?: SohoSearchFieldStatic;
51
+
52
+ /** Reference to element representing settings button, if one is available */
53
+ settingsEl?: HTMLElement;
54
+
55
+ /** Reference to a Soho Module Nav Settings API, if one is available */
56
+ settingAPI?: SohoModuleNavSettingsStatic;
57
+
58
+ /** Reference to a Soho Module Nav Switcher container element, if one is available */
59
+ switcherEl?: HTMLElement;
60
+
61
+ /** Reference to a Soho Module Nav Settings API, if one is available */
62
+ switcherAPI?: SohoModuleNavSwitcherStatic;
63
+
64
+ /** Misc. references to specific sections/elements */
65
+ containerEl?: HTMLElement;
66
+ detailViewEl?: HTMLElement;
67
+ itemMenuEl?: HTMLElement;
68
+ footerEl?: HTMLElement;
69
+
70
+ /** Initializes the jQuery component */
71
+ init(): void;
72
+
73
+ /** Changes the Module Nav's Display Mode */
74
+ setDisplayMode(val?: SohoModuleNavDisplayMode): void;
75
+
76
+ /** Enables (true)/Disables (false) optional pinning of header/footer Module Nav regions */
77
+ setPinSections(val?: boolean): void;
78
+
79
+ /** Updates accordion section scroll state based on size changes */
80
+ setScrollable(): void;
81
+
82
+ /** Enables (true)/Disables (false) visibility of detail view pane used for sub modules */
83
+ setShowDetailView(val: boolean): void;
84
+
85
+ /** Tear down the markup for the control */
86
+ teardown(): void;
87
+
88
+ /** Updates the Module Nav with any new settings */
89
+ updated(newSettings?: SohoModuleNavOptions): void;
90
+
91
+ /** Destroys the control on completion. */
92
+ destroy(): void;
93
+ }
94
+
95
+ /** jQuery interface for Module Nav */
96
+ interface JQuery<TElement = HTMLElement> extends Iterable<TElement> {
97
+ modulenav(options?: SohoModuleNavOptions): JQuery;
98
+ on(events: 'updated', handler: JQuery.EventHandlerBase<any, SohoModuleNavOptions>): this;
99
+ }
@@ -46,6 +46,9 @@ interface SohoPieOptions {
46
46
  /** Where to locate the legend. This can be bottom or right at the moment. */
47
47
  legendPlacement?: 'bottom' | 'right' | string;
48
48
 
49
+ /** Force Legend popup below regardless of the quantity of labels. */
50
+ forceLegendPopup?: boolean,
51
+
49
52
  /** A setting that controls the legend values and format. */
50
53
  legend?: SohoPieLegendOptions;
51
54
 
@@ -57,6 +57,9 @@ interface SohoPopupMenuOptions {
57
57
 
58
58
  /** Add extra attributes like id's to the component **/
59
59
  attributes?: Array<Object> | Object;
60
+
61
+ /** Appends an optional css class to `.popupmenu-wrapper/popupmenu` elements */
62
+ cssClass?: string | null;
60
63
  }
61
64
 
62
65
  /**
@@ -75,6 +78,9 @@ interface SohoPopupMenuStatic {
75
78
  /** Configuration options. */
76
79
  settings?: SohoPopupMenuOptions;
77
80
 
81
+ /** Gets the Popupmenu's ID string (can be used to query the DOM for the menu element) */
82
+ idString: string | undefined;
83
+
78
84
  /** Returns the selected html element. */
79
85
  getSelected(): any;
80
86
 
@@ -53,7 +53,7 @@ interface SohoTooltipEvent extends JQuery.TriggeredEvent {
53
53
  interface SohoTooltipStatic {
54
54
  settings: SohoTooltipOptions;
55
55
  destroy(): void;
56
- hide(): void;
56
+ hide(force?: boolean): void;
57
57
  show(): void;
58
58
  updated(): void;
59
59
  }
@@ -5,11 +5,39 @@
5
5
  * interface of the Soho jQuery wizard control.
6
6
  */
7
7
 
8
- /**
9
- * Soho Widget model for a tick
10
- */
11
- interface SohoWizardTick {
8
+ /**
9
+ * Soho ButtonBar button definition
10
+ */
11
+ interface SohoWizardButtonBarButton {
12
+ /** the button's unique element id */
13
+ id: string, // e.g. 'next'
14
+
15
+ /** the button's text */
16
+ text: string, // e.g. "Next"
17
+
18
+ /** the button's icon */
19
+ icon?: string, // the name of the icon to use
20
+
21
+ /** the click callback for the button */
22
+ click: () => void,
23
+
24
+ /** an optional disable callback, return true if the button is disabled */
25
+ disabled?: () => boolean,
26
+
27
+ /** an optional hidden callback, return true if the button is hidden */
28
+ hidden?: () => boolean,
29
+
30
+ /** an optional isDefault flag, true if the button is displayed as the default */
31
+ isDefault?: boolean, // defaults to false
12
32
 
33
+ /** the relative position of the button */
34
+ position?: 'left' | 'middle' | 'right' | undefined
35
+ }
36
+
37
+ /**
38
+ * Soho Widget model for a tick
39
+ */
40
+ interface SohoWizardTick {
13
41
  /**
14
42
  * Sets the ng-click event for AngularJS.
15
43
  *
@@ -35,7 +63,7 @@
35
63
  *
36
64
  */
37
65
  label?: string;
38
- }
66
+ }
39
67
 
40
68
  /**
41
69
  * Wizard options.
@@ -43,9 +71,6 @@
43
71
  interface SohoWizardOptions {
44
72
  /**
45
73
  * Optional model driven list of ticks to display.
46
- *
47
- *
48
- *
49
74
  */
50
75
  ticks?: SohoWizardTick[];
51
76
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ids-enterprise-typings",
3
3
  "slug": "ids-enterprise-typings",
4
- "version": "16.2.1-beta.0",
4
+ "version": "16.2.1-dev.1",
5
5
  "declaration": true,
6
6
  "types": "index.d.ts",
7
7
  "dependencies": {