@easyquery/ui 7.2.3-rc03 → 7.2.4-beta03

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.
Files changed (214) hide show
  1. package/dist/browser/eq.community.css.map +1 -1
  2. package/dist/browser/eq.community.js +32587 -34146
  3. package/dist/browser/eq.community.js.map +1 -1
  4. package/dist/browser/eq.community.min.js +1 -9
  5. package/dist/browser/eq.community.min.js.map +1 -1
  6. package/dist/browser/eq.core.css +17 -112
  7. package/dist/browser/eq.core.min.css +3 -10
  8. package/dist/browser/eq.view.css +1 -1
  9. package/dist/browser/eq.view.css.map +1 -1
  10. package/dist/browser/eq.view.min.css +1 -10
  11. package/dist/bundles/easyquery.ui.js +23032 -22870
  12. package/dist/bundles/easyquery.ui.js.map +1 -1
  13. package/dist/bundles/easyquery.ui.min.js +1 -1
  14. package/dist/bundles/easyquery.ui.min.js.map +1 -1
  15. package/dist/lib/dialog/aggr_settings_dialog.d.ts +12 -12
  16. package/dist/lib/dialog/aggr_settings_dialog.js +106 -106
  17. package/dist/lib/dialog/export_dialog.d.ts +7 -7
  18. package/dist/lib/dialog/export_dialog.js +63 -63
  19. package/dist/lib/extensions.d.ts +7 -7
  20. package/dist/lib/extensions.js +13 -13
  21. package/dist/lib/facets/chart_facet.d.ts +21 -21
  22. package/dist/lib/facets/chart_facet.js +240 -238
  23. package/dist/lib/facets/chart_facet.js.map +1 -1
  24. package/dist/lib/facets/datatable_facet.d.ts +15 -15
  25. package/dist/lib/facets/datatable_facet.js +71 -69
  26. package/dist/lib/facets/datatable_facet.js.map +1 -1
  27. package/dist/lib/facets/pivot_table_facet.d.ts +51 -51
  28. package/dist/lib/facets/pivot_table_facet.js +698 -696
  29. package/dist/lib/facets/pivot_table_facet.js.map +1 -1
  30. package/dist/lib/facets/result_facet.d.ts +40 -40
  31. package/dist/lib/facets/result_facet.js +246 -246
  32. package/dist/lib/facets/result_facet.js.map +1 -1
  33. package/dist/lib/i18n/text_resources.d.ts +1 -1
  34. package/dist/lib/i18n/text_resources.js +260 -259
  35. package/dist/lib/i18n/text_resources.js.map +1 -1
  36. package/dist/lib/public_api.d.ts +61 -61
  37. package/dist/lib/public_api.js +92 -90
  38. package/dist/lib/public_api.js.map +1 -1
  39. package/dist/lib/types/facet_type.d.ts +5 -5
  40. package/dist/lib/types/facet_type.js +6 -6
  41. package/dist/lib/types/qp_editable_part.d.ts +15 -15
  42. package/dist/lib/types/qp_editable_part.js +16 -16
  43. package/dist/lib/utils/browser_utils.d.ts +8 -8
  44. package/dist/lib/utils/browser_utils.js +58 -58
  45. package/dist/lib/utils/display_format_parser.d.ts +11 -11
  46. package/dist/lib/utils/display_format_parser.js +61 -61
  47. package/dist/lib/utils/dropdown.d.ts +11 -11
  48. package/dist/lib/utils/dropdown.js +57 -55
  49. package/dist/lib/utils/dropdown.js.map +1 -1
  50. package/dist/lib/utils/popup_menu.d.ts +163 -163
  51. package/dist/lib/utils/popup_menu.js +1259 -1260
  52. package/dist/lib/utils/popup_menu.js.map +1 -1
  53. package/dist/lib/utils/utils.d.ts +9 -9
  54. package/dist/lib/utils/utils.js +46 -46
  55. package/dist/lib/utils/utils.js.map +1 -1
  56. package/dist/lib/views/adv_search_view.d.ts +95 -95
  57. package/dist/lib/views/adv_search_view.js +712 -710
  58. package/dist/lib/views/adv_search_view.js.map +1 -1
  59. package/dist/lib/views/data_filter_view.d.ts +17 -17
  60. package/dist/lib/views/data_filter_view.js +79 -77
  61. package/dist/lib/views/data_filter_view.js.map +1 -1
  62. package/dist/lib/views/html_data_filter_view.d.ts +19 -19
  63. package/dist/lib/views/html_data_filter_view.js +44 -42
  64. package/dist/lib/views/html_data_filter_view.js.map +1 -1
  65. package/dist/lib/views/report_view.d.ts +173 -173
  66. package/dist/lib/views/report_view.js +733 -731
  67. package/dist/lib/views/report_view.js.map +1 -1
  68. package/dist/lib/views/view.d.ts +149 -149
  69. package/dist/lib/views/view.js +538 -538
  70. package/dist/lib/views/view.js.map +1 -1
  71. package/dist/lib/views/view_options.d.ts +113 -113
  72. package/dist/lib/views/view_options.js +1 -0
  73. package/dist/lib/widgets/aggregation_bar.d.ts +30 -30
  74. package/dist/lib/widgets/aggregation_bar.js +145 -143
  75. package/dist/lib/widgets/aggregation_bar.js.map +1 -1
  76. package/dist/lib/widgets/charts/chart_type.d.ts +14 -14
  77. package/dist/lib/widgets/charts/chart_type.js +15 -15
  78. package/dist/lib/widgets/charts/chart_widget.d.ts +92 -92
  79. package/dist/lib/widgets/charts/chart_widget.js +384 -382
  80. package/dist/lib/widgets/charts/chart_widget.js.map +1 -1
  81. package/dist/lib/widgets/charts/chart_widget_chartjs.d.ts +23 -23
  82. package/dist/lib/widgets/charts/chart_widget_chartjs.js +186 -184
  83. package/dist/lib/widgets/charts/chart_widget_chartjs.js.map +1 -1
  84. package/dist/lib/widgets/charts/chart_widget_google.d.ts +23 -23
  85. package/dist/lib/widgets/charts/chart_widget_google.js +165 -163
  86. package/dist/lib/widgets/charts/chart_widget_google.js.map +1 -1
  87. package/dist/lib/widgets/columns_bar.d.ts +64 -64
  88. package/dist/lib/widgets/columns_bar.js +722 -721
  89. package/dist/lib/widgets/columns_bar.js.map +1 -1
  90. package/dist/lib/widgets/columns_panel.d.ts +64 -62
  91. package/dist/lib/widgets/columns_panel.js +739 -721
  92. package/dist/lib/widgets/columns_panel.js.map +1 -1
  93. package/dist/lib/widgets/easy_grid_widget.d.ts +38 -38
  94. package/dist/lib/widgets/easy_grid_widget.js +229 -227
  95. package/dist/lib/widgets/easy_grid_widget.js.map +1 -1
  96. package/dist/lib/widgets/entities_panel.d.ts +49 -49
  97. package/dist/lib/widgets/entities_panel.js +627 -625
  98. package/dist/lib/widgets/entities_panel.js.map +1 -1
  99. package/dist/lib/widgets/eq_result_html_grid.d.ts +32 -32
  100. package/dist/lib/widgets/eq_result_html_grid.js +185 -183
  101. package/dist/lib/widgets/eq_result_html_grid.js.map +1 -1
  102. package/dist/lib/widgets/export_widget.d.ts +10 -10
  103. package/dist/lib/widgets/export_widget.js +57 -55
  104. package/dist/lib/widgets/export_widget.js.map +1 -1
  105. package/dist/lib/widgets/facet_container.d.ts +12 -12
  106. package/dist/lib/widgets/facet_container.js +53 -51
  107. package/dist/lib/widgets/facet_container.js.map +1 -1
  108. package/dist/lib/widgets/filter_bar.d.ts +38 -38
  109. package/dist/lib/widgets/filter_bar.js +259 -257
  110. package/dist/lib/widgets/filter_bar.js.map +1 -1
  111. package/dist/lib/widgets/grid.d.ts +35 -35
  112. package/dist/lib/widgets/grid.js +79 -77
  113. package/dist/lib/widgets/grid.js.map +1 -1
  114. package/dist/lib/widgets/html_content_widget.d.ts +35 -35
  115. package/dist/lib/widgets/html_content_widget.js +71 -69
  116. package/dist/lib/widgets/html_content_widget.js.map +1 -1
  117. package/dist/lib/widgets/locale_widget.d.ts +16 -16
  118. package/dist/lib/widgets/locale_widget.js +79 -77
  119. package/dist/lib/widgets/locale_widget.js.map +1 -1
  120. package/dist/lib/widgets/manage_drilldown_widget.d.ts +18 -18
  121. package/dist/lib/widgets/manage_drilldown_widget.js +154 -152
  122. package/dist/lib/widgets/manage_drilldown_widget.js.map +1 -1
  123. package/dist/lib/widgets/process_widget.d.ts +21 -21
  124. package/dist/lib/widgets/process_widget.js +50 -48
  125. package/dist/lib/widgets/process_widget.js.map +1 -1
  126. package/dist/lib/widgets/query_panel.d.ts +62 -58
  127. package/dist/lib/widgets/query_panel.js +675 -653
  128. package/dist/lib/widgets/query_panel.js.map +1 -1
  129. package/dist/lib/widgets/queryname_widget.d.ts +27 -27
  130. package/dist/lib/widgets/queryname_widget.js +109 -107
  131. package/dist/lib/widgets/queryname_widget.js.map +1 -1
  132. package/dist/lib/widgets/renderers/aggr_settings/aggr_settings_renderer.d.ts +54 -54
  133. package/dist/lib/widgets/renderers/aggr_settings/aggr_settings_renderer.js +429 -429
  134. package/dist/lib/widgets/renderers/aggr_settings/aggr_settings_renderer.js.map +1 -1
  135. package/dist/lib/widgets/renderers/base_element_renderer.d.ts +15 -15
  136. package/dist/lib/widgets/renderers/base_element_renderer.js +63 -63
  137. package/dist/lib/widgets/renderers/columnsbar/aggrfunc_column_renderer.d.ts +11 -11
  138. package/dist/lib/widgets/renderers/columnsbar/aggrfunc_column_renderer.js +62 -60
  139. package/dist/lib/widgets/renderers/columnsbar/aggrfunc_column_renderer.js.map +1 -1
  140. package/dist/lib/widgets/renderers/columnsbar/column_renderer_cb.d.ts +53 -53
  141. package/dist/lib/widgets/renderers/columnsbar/column_renderer_cb.js +550 -550
  142. package/dist/lib/widgets/renderers/columnsbar/column_renderer_cb.js.map +1 -1
  143. package/dist/lib/widgets/renderers/columnsbar/simple_column_renderer.d.ts +9 -9
  144. package/dist/lib/widgets/renderers/columnsbar/simple_column_renderer.js +79 -77
  145. package/dist/lib/widgets/renderers/columnsbar/simple_column_renderer.js.map +1 -1
  146. package/dist/lib/widgets/renderers/columnspanel/aggrfunc_column_renderer.d.ts +17 -17
  147. package/dist/lib/widgets/renderers/columnspanel/aggrfunc_column_renderer.js +180 -178
  148. package/dist/lib/widgets/renderers/columnspanel/aggrfunc_column_renderer.js.map +1 -1
  149. package/dist/lib/widgets/renderers/columnspanel/column_renderer_cp.d.ts +72 -72
  150. package/dist/lib/widgets/renderers/columnspanel/column_renderer_cp.js +819 -817
  151. package/dist/lib/widgets/renderers/columnspanel/column_renderer_cp.js.map +1 -1
  152. package/dist/lib/widgets/renderers/columnspanel/customsql_column_renderer.d.ts +22 -18
  153. package/dist/lib/widgets/renderers/columnspanel/customsql_column_renderer.js +245 -214
  154. package/dist/lib/widgets/renderers/columnspanel/customsql_column_renderer.js.map +1 -1
  155. package/dist/lib/widgets/renderers/columnspanel/simple_column_renderer.d.ts +13 -13
  156. package/dist/lib/widgets/renderers/columnspanel/simple_column_renderer.js +180 -178
  157. package/dist/lib/widgets/renderers/columnspanel/simple_column_renderer.js.map +1 -1
  158. package/dist/lib/widgets/renderers/dropdown_renderer.d.ts +9 -9
  159. package/dist/lib/widgets/renderers/dropdown_renderer.js +42 -40
  160. package/dist/lib/widgets/renderers/dropdown_renderer.js.map +1 -1
  161. package/dist/lib/widgets/renderers/querypanel/addrow_renderer.d.ts +16 -16
  162. package/dist/lib/widgets/renderers/querypanel/addrow_renderer.js +87 -85
  163. package/dist/lib/widgets/renderers/querypanel/addrow_renderer.js.map +1 -1
  164. package/dist/lib/widgets/renderers/querypanel/attribute_expression_renderer.d.ts +14 -14
  165. package/dist/lib/widgets/renderers/querypanel/attribute_expression_renderer.js +71 -69
  166. package/dist/lib/widgets/renderers/querypanel/attribute_expression_renderer.js.map +1 -1
  167. package/dist/lib/widgets/renderers/querypanel/bind_to_parent_column_expression_renderer.d.ts +7 -7
  168. package/dist/lib/widgets/renderers/querypanel/bind_to_parent_column_expression_renderer.js +41 -39
  169. package/dist/lib/widgets/renderers/querypanel/bind_to_parent_column_expression_renderer.js.map +1 -1
  170. package/dist/lib/widgets/renderers/querypanel/condition_group_renderer.d.ts +27 -27
  171. package/dist/lib/widgets/renderers/querypanel/condition_group_renderer.js +231 -229
  172. package/dist/lib/widgets/renderers/querypanel/condition_group_renderer.js.map +1 -1
  173. package/dist/lib/widgets/renderers/querypanel/condition_renderer.d.ts +48 -48
  174. package/dist/lib/widgets/renderers/querypanel/condition_renderer.js +509 -507
  175. package/dist/lib/widgets/renderers/querypanel/condition_renderer.js.map +1 -1
  176. package/dist/lib/widgets/renderers/querypanel/datetime_expression_render.d.ts +13 -13
  177. package/dist/lib/widgets/renderers/querypanel/datetime_expression_render.js +108 -106
  178. package/dist/lib/widgets/renderers/querypanel/datetime_expression_render.js.map +1 -1
  179. package/dist/lib/widgets/renderers/querypanel/expression_renderer.d.ts +28 -28
  180. package/dist/lib/widgets/renderers/querypanel/expression_renderer.js +91 -89
  181. package/dist/lib/widgets/renderers/querypanel/expression_renderer.js.map +1 -1
  182. package/dist/lib/widgets/renderers/querypanel/input_expression_renderer.d.ts +14 -14
  183. package/dist/lib/widgets/renderers/querypanel/input_expression_renderer.js +165 -163
  184. package/dist/lib/widgets/renderers/querypanel/input_expression_renderer.js.map +1 -1
  185. package/dist/lib/widgets/renderers/querypanel/list_expression_renderer.d.ts +35 -35
  186. package/dist/lib/widgets/renderers/querypanel/list_expression_renderer.js +317 -315
  187. package/dist/lib/widgets/renderers/querypanel/list_expression_renderer.js.map +1 -1
  188. package/dist/lib/widgets/renderers/querypanel/operator_renderer.d.ts +19 -19
  189. package/dist/lib/widgets/renderers/querypanel/operator_renderer.js +95 -93
  190. package/dist/lib/widgets/renderers/querypanel/operator_renderer.js.map +1 -1
  191. package/dist/lib/widgets/renderers/querypanel/subquery_expression_renderer.d.ts +27 -27
  192. package/dist/lib/widgets/renderers/querypanel/subquery_expression_renderer.js +237 -235
  193. package/dist/lib/widgets/renderers/querypanel/subquery_expression_renderer.js.map +1 -1
  194. package/dist/lib/widgets/renderers/querypanel/text_renderer.d.ts +11 -11
  195. package/dist/lib/widgets/renderers/querypanel/text_renderer.js +36 -36
  196. package/dist/lib/widgets/renderers/querypanel/text_renderer.js.map +1 -1
  197. package/dist/lib/widgets/renderers/sortingbar/column_renderer_sp.d.ts +26 -26
  198. package/dist/lib/widgets/renderers/sortingbar/column_renderer_sp.js +163 -163
  199. package/dist/lib/widgets/renderers/sortingbar/column_renderer_sp.js.map +1 -1
  200. package/dist/lib/widgets/result_facets_panel.d.ts +64 -64
  201. package/dist/lib/widgets/result_facets_panel.js +503 -501
  202. package/dist/lib/widgets/result_facets_panel.js.map +1 -1
  203. package/dist/lib/widgets/sorting_bar.d.ts +34 -34
  204. package/dist/lib/widgets/sorting_bar.js +330 -328
  205. package/dist/lib/widgets/sorting_bar.js.map +1 -1
  206. package/dist/lib/widgets/statement_panel.d.ts +21 -21
  207. package/dist/lib/widgets/statement_panel.js +60 -58
  208. package/dist/lib/widgets/statement_panel.js.map +1 -1
  209. package/dist/lib/widgets/widget_options.d.ts +433 -429
  210. package/dist/lib/widgets/widget_options.js +1 -0
  211. package/package.json +25 -25
  212. package/webpack.config.js +31 -24
  213. package/dist/browser/eq.community.min.css.map +0 -1
  214. package/dist/browser/eq.view.min.css.map +0 -1
@@ -1,429 +1,433 @@
1
- import { Query, Condition, Expression, Widget, EqValueEditor } from '@easyquery/core';
2
- import { EasyDataTable } from '@easydata/core';
3
- import { DateTimePicker, DateTimePickerOptions } from '@easydata/ui';
4
- import { ConditionRenderer } from './renderers/querypanel/condition_renderer';
5
- import { ExpressionRenderer } from './renderers/querypanel/expression_renderer';
6
- import { BaseElementRenderer } from './renderers/base_element_renderer';
7
- import { QueryPanel } from './query_panel';
8
- import { QPEditablePart } from '../types/qp_editable_part';
9
- import { PopupMenuOptions } from '../utils/popup_menu';
10
- import { FacetType } from '../types/facet_type';
11
- import { ChartType } from './charts/chart_type';
12
- /** Used in options.*/
13
- export interface UseInOptions {
14
- useInConditions: boolean;
15
- useInResult: boolean;
16
- useInSorting: boolean;
17
- }
18
- /** EntitiesPanel options */
19
- export interface EntitiesPanelOptions {
20
- showToolbar?: boolean;
21
- showSelectAllButton?: boolean;
22
- showClearSelectionButton?: boolean;
23
- showAddColumnButton?: boolean;
24
- showAddConditionButton?: boolean;
25
- showCheckboxes?: boolean;
26
- showTooltips?: boolean;
27
- /**
28
- * Gets or sets column caption format that will be used on adding selected attributes as columns
29
- */
30
- columnTitleFormat?: string;
31
- draggableAttributes?: boolean;
32
- /**
33
- * Gets or sets the value that defines which attributes from the model should be shown in the tree.
34
- * Each attribute in the model has `Use in conditions`, `Use in columns`, `Use in sorting` properties.
35
- * This option filtering of all the attributes by these properties.
36
- */
37
- showAttributes?: UseInOptions;
38
- showFilterBox?: boolean;
39
- /**
40
- * Gets or sets the value that defines how the search is performed in EntitiesPanel. Values:
41
- * `0` - checks if node name contains the filter text. Default behaviour.
42
- * `1` - checks if node name starts with the filter text.
43
- */
44
- filterBoxMode?: number;
45
- /** Gets or sets a value indicating whether a progress indicator should appear while th emodel is loading */
46
- showIndicatorOnLoad?: boolean;
47
- /**
48
- * Defines where to display attributes in the tree:
49
- * `0` - attributes are displayed after entities
50
- * `1` - attributes are displayed before entities
51
- * `2` - attributes and entities are mixed, and displayed in alphabetical order. In this case the `sortEntities` option value dosn't matter.
52
- */
53
- attrPlacement?: number;
54
- /** Defines whether entities and attributes should be sorted alphabetically. If false, they are displayed as listed in the model. */
55
- sortEntities?: boolean;
56
- /** Defines whether all selections will be cleared automatically after `add columns` or `add conditions` operation. */
57
- autoClearSelection?: boolean;
58
- /**
59
- * The callback that is called when the entity node has been rendered. It allows you to make any changes you need to the markup of the node.
60
- * Parameters:
61
- * `entNode` - jQuery object that represents the node div
62
- * @example
63
- * entityRenderedCallbackHandler: function (entNode) {
64
- * entNode.addClass("some-cool-class");
65
- * }
66
- */
67
- entityRenderedCallback?: (entNode: HTMLElement) => void;
68
- /**
69
- * The callback that is called when the attribute node has been rendered. It allows you to make any changes you need to the markup of the node.
70
- * Parameters:
71
- * `attrNode` - jQuery object that represents the node div
72
- * @example
73
- * attributeRenderedCallbackHandler: function (attrNode) {
74
- * attrNode.addClass("some-cool-class");
75
- * }
76
- */
77
- attributeRenderedCallback?: (attrNode: HTMLElement) => void;
78
- syncWithColumns?: boolean;
79
- [name: string]: any;
80
- }
81
- /**Columns panel options */
82
- export interface ColumnsPanelOptions {
83
- isSubQuery?: boolean;
84
- activeColumn?: any;
85
- /** Gets or sets a value indicating whether columns panel must show a special `add column` link at the bottom */
86
- showAddRow?: boolean;
87
- /** Gets or sets a value indicating whether columns panel must show a header at the top */
88
- showHeader?: boolean;
89
- /** Gets or sets a value indicating whether columns panel must show an editable caption for each column (i.e. `SELECT ColumnName AS ColumnCaption...`) */
90
- showColumnTitles?: boolean;
91
- /** Gets or sets a value indicating whether columns panel must show button to change display */
92
- allowDisplayFormatChange?: boolean;
93
- /** Gets or sets a value indicating whether columns panel allows user to use aggregated columns */
94
- allowAggrColumns?: boolean;
95
- /** Gets or sets a value indicating whether it's allowed to add exactly the same column more than once */
96
- allowDuplicates?: boolean;
97
- /** Gets or sets a value indicating whether it's allowed to use a custom expression for the column definition instead of some entity attribute.
98
- If it's turned on - a new menu item appears in the menu dropped on clicking on [f] button. */
99
- allowCustomExpressions?: boolean;
100
- /** Gets or sets a value indicating whether columns panel allows user to set columns sorting */
101
- allowSorting?: boolean;
102
- /** Gets or sets the format of the attribute display name. `{entity}` is replaced with entity name, `{attr}` is replaced with attribute name */
103
- attrElementFormat?: string;
104
- /**
105
- * Gets or sets the format of column's title display name. `{entity}` is replaced with entity name, `{attr}` is replaced with attribute name.
106
- * Default value is null which means that columns panel will use the same format as it's set to attrElementFormat option
107
- */
108
- titleElementFormat?: string;
109
- /**
110
- * Defines which buttons should be shown in the column when the mouse is over.
111
- * Possible values are:
112
- * - `"enable"` - the button that allows to enable or disable certain column.
113
- * - `"delete"` - the button that allows to delete certain column.
114
- * - `"type"` - the button that allows to select a column type (simple, aggregate, etc.).
115
- * - `"sorting"` - the button that allows to set column sorting and move columns.
116
- * - `"menu"` - the button that shows menu with all available actions for the column, including the actions that are not available using other buttons.
117
- * By default the option is not set, it actually means
118
- * ``` ["enable", "delete", "function", "sorting"]```
119
- *
120
- */
121
- buttons?: string[];
122
- /** Gets or sets a value indicating whether the service buttons are permanently displayed in all columns (`true`), or just in active column and the column user moves the cursor over (`false`) */
123
- alwaysShowButtons?: boolean;
124
- /** Gets or sets a value indicating whether the active column should be backlighted and permanently display the service buttons */
125
- accentActiveColumn?: boolean;
126
- /** */
127
- adjustEntitiesMenuHeight?: boolean;
128
- /** Gets or sets a value indicating whether the columns may be dragged and dropped */
129
- allowDragDrop?: boolean;
130
- domWriteItemsId?: boolean;
131
- /** Get or sets a value indication wether checkboxes must be shown */
132
- showCheckboxes?: boolean;
133
- /**
134
- * Contains different options for popup menu that appears for selecting attributes in columns.
135
- *
136
- */
137
- menuOptions?: PopupMenuOptions;
138
- /**
139
- * Defines where to display attributes in the tree:
140
- * `0` - attributes are displayed after entities
141
- * `1` - attributes are displayed before entities
142
- * `2` - attributes and entities are mixed, and displayed in alphabetical order. In this case the "sortEntities" option value dosn't matter.
143
- */
144
- attrPlacement?: number;
145
- /**
146
- * Defines whether entities and attributes should be sorted alphabetically. If false, they are displayed as listed in the model.
147
- */
148
- sortEntities?: boolean;
149
- /**
150
- * The callback that is called when the column's row has been rendered. It allows you to make any changes you need to the markup of the row.
151
- * Parameters:
152
- * `columnDiv` - jQuery object that represents the column's row div
153
- * @example
154
- * columnRenderedCallbackHandler: function (columnDiv) {
155
- * columnDiv.addClass("some-cool-class");
156
- * }
157
- */
158
- columnRenderedCallback?: (columnDiv: HTMLDivElement) => void;
159
- /**
160
- * Gets or sets a value which defines what text should be used for custom expressions' links. Possible values are:
161
- * `0` - show the SQL expression itself. Default behaviour.
162
- * `1` - show special [Custom SQL] text.
163
- * `2` - show column's title.
164
- */
165
- customExpressionText?: number;
166
- allowHiddenColumns?: boolean;
167
- allowInvisible?: boolean;
168
- showAddAllForEntity?: boolean;
169
- [name: string]: any;
170
- }
171
- /** Columns bar options */
172
- export interface ColumnsBarOptions extends ColumnsPanelOptions {
173
- showColumnCaptions?: boolean;
174
- }
175
- /** Query panel options */
176
- export interface QueryPanelOptions {
177
- /**
178
- * Gets or sets a value indicating current edit mode for QueryPanel
179
- */
180
- editableParts?: QPEditablePart;
181
- isSubQuery?: boolean;
182
- activeCondition?: null;
183
- entitiesPopupHandler?: any;
184
- entitiesListFilter?: any;
185
- menuContainer?: HTMLElement;
186
- /**
187
- * Gets or sets a value indicating whether query panel must show a root row which represents the main group of conditions
188
- */
189
- showRootRow?: boolean;
190
- /**
191
- * Gets or sets a value indicating whether query panel must show a special [add condition] link at the bottom
192
- */
193
- showAddRow?: boolean;
194
- /**
195
- * Gets or sets a value indicating whether query panel must show a checkbox at the beginning of each condition row.
196
- * User will be able to use these checkboxes to enable/disable corresponding query conditions
197
- */
198
- showCheckboxes?: boolean;
199
- /**
200
- * Gets or sets a value indicating whether query panel shows "toggle parameterization" button which aloows to mark each condition as parameterized.
201
- */
202
- allowParameterization?: boolean;
203
- /**
204
- * Gets or sets a value indicating whether query panel allows to place some conditions in to `JOIN` clause instead of `WHERE`.
205
- */
206
- allowInJoinConditions?: boolean;
207
- /** Allows to turn off "Powered by EasyQuery" link shown in the bottom right cornder of query panel. Works only in the full version of the script. */
208
- showPoweredBy?: boolean;
209
- /**
210
- * Defines which buttons should be shown in the condition/predicate when the mouse is over.
211
- * Possible values are:
212
- * - `"addCondition"` - the button that allows to add new condition. Is shown in predicates only.
213
- * - `"addPredicate"` - the button that allows to add new predicate. Is shown in predicates only.
214
- * - `"enable"` - the button that allows to enable or disable certain condition.
215
- * - `"delete"` - the button that allows to delete certain condition.
216
- * - `"menu"` - the button that shows menu with all available actions for the condition/predicate, including the actions that are not available using other buttons.
217
- * The default value for this option is:
218
- * ```
219
- * {
220
- condition: ["enable", "delete"]
221
- predicate: ["addCondition", "addPredicate", "enable", "delete"]
222
- }
223
- * ```
224
- *
225
- */
226
- buttons?: {
227
- condition?: string[];
228
- group?: string[];
229
- };
230
- /**
231
- * If true QueryPanel widget will always show button in predicate (group) rows.
232
- * Instead of default behaviour when they are shown only on mouse over.
233
- */
234
- alwaysShowButtonsInGroups?: boolean;
235
- /**
236
- * If true QueryPanel widget will always show button in condition rows.
237
- * Instead of default behaviour when they are shown only on mouse over.
238
- */
239
- alwaysShowButtonsInConditions?: boolean;
240
- /**
241
- * If true QueryPanel widget will show conjunction elements (`and` or `or`) at the beginning of each condition.
242
- */
243
- showConjunctions?: boolean;
244
- /**
245
- * If true the active condition (the one user clicked on previously) will have accent background color.
246
- */
247
- accentActiveCondition?: boolean;
248
- /**
249
- * If `true` root predicate row become active at the beginning.
250
- */
251
- activateRootOnStart?: boolean;
252
- /**
253
- * A string that represents the format of date values used in date/time picker widget.
254
- */
255
- dateFormatValue?: string;
256
- /**
257
- * The format of date values used in condition rows.
258
- */
259
- dateFormatDisplay?: string;
260
- /**
261
- * The range of years displayed in the year drop-down: either relative to today's year ("-nn:+nn"), relative to the currently selected year ("c-nn:c+nn"), absolute ("nnnn:nnnn"), or combinations of these formats ("nnnn:-nn").
262
- */
263
- yearRange?: string;
264
- /**
265
- * If `true` and no timepicker is displayed, calendar will be closed after click on some date. Default is `true`
266
- */
267
- oneClickDateSelection?: boolean;
268
- /**
269
- * If `true`, calendar will display an input box with date string. Default is `false`
270
- */
271
- showDateTimeInput?: boolean;
272
- /**
273
- * The format of entity attributes used in query panel conditions.
274
- * You can set it to `{attr}` to shown only attribute part (without entity name)
275
- */
276
- attrElementFormat?: string;
277
- /**
278
- * Contains different options for popup menu that appears for selecting attributes, operators or values in condition.
279
- */
280
- menuOptions?: PopupMenuOptions;
281
- /**
282
- * Gets or sets a value indicating whether it's possible to drag attributes from EntitiesPanel and drop them into QueryPanel to create new conditions.
283
- */
284
- allowDragDrop?: boolean;
285
- /**
286
- * Defines where to display attributes in the tree:
287
- * `0` - attributes are displayed after entities
288
- * `1` - attributes are displayed before entities
289
- * `2` - attributes and entities are mixed, and displayed in alphabetical order. In this case the `sortEntities` option value dosn't matter.
290
- */
291
- attrPlacement?: number;
292
- /** Defines whether entities and attributes should be sorted alphabetically. If false, they are displayed as listed in the model. */
293
- sortEntities?: boolean;
294
- /**Sets or gets the width of sub-query dialog */
295
- subQueryDialogWidth?: number | string;
296
- /**
297
- * Sets or gets the height of sub-query dialog
298
- */
299
- subQueryDialogHeight?: number | string;
300
- /**
301
- * Sets or gets the ZIndex property of the different dialogs used in QueryPanel (including the sub-query dialog)
302
- */
303
- dialogZIndex?: number;
304
- /**
305
- * Sets or gets the symbol which is used as decimal separator
306
- */
307
- numberDecimalSeparatorDisplay?: string;
308
- /**
309
- * Sets or gets the symbols which are recognized as list items separators
310
- * (for example when user is supposed to enter a list of values in a text box).
311
- */
312
- numberListSeparators?: string[];
313
- /**
314
- * If `true` the QueryPanel will automaticall show value editor for any new (just added) condition
315
- */
316
- autoEditNewCondition?: boolean;
317
- /** If `true` the drop-down menues with available values will show item IDs together with their texts */
318
- showIdsForListItems?: boolean;
319
- onGetConditionRenderer?: (condition: Condition, slot?: HTMLDivElement) => ConditionRenderer | null;
320
- /**
321
- * The callback that is called when the condition's row has been rendered. It allows you to make any changes you need to the markup of the row.
322
- * Parameters:
323
- * condition - Condition object
324
- * slot - HTMLDivElement object that represents the condition's div
325
- * @example
326
- * conditionRenderedHandler: function (condition, slot) {
327
- * slot.addClass("some-cool-class");
328
- * }
329
- */
330
- onConditionRendered?: (condition: Condition, slot: HTMLDivElement) => void;
331
- onGetExpressionRenderer?: (queryPanel: QueryPanel, expression: Expression, editor: EqValueEditor, slot?: HTMLDivElement) => ExpressionRenderer | null;
332
- onExpressionRendered?: (expression: Expression, slot: HTMLDivElement) => void;
333
- onGetOperatorRenderer?: (condition: Condition, text: string, slot?: HTMLDivElement) => BaseElementRenderer | null;
334
- onOperatorRendered?: (condition: Condition, text: string, slot: HTMLDivElement) => void;
335
- onGetAddRowRenderer?: (slot?: HTMLDivElement) => BaseElementRenderer | null;
336
- defaultQuery?: Query;
337
- emptyTextValue?: string;
338
- emptyTextList?: string;
339
- emptyTextAttribute?: string;
340
- emptyTextOperator?: string;
341
- adjustEntitiesMenuHeight?: boolean;
342
- domWriteItemsId?: boolean;
343
- dateTimePickerResolver?: (options: DateTimePickerOptions) => DateTimePicker;
344
- }
345
- /**
346
- * Grid options type.
347
- */
348
- export interface GridOptions {
349
- /** Function called before rendering */
350
- beforeTableRendering?: (dataTable: EasyDataTable) => void;
351
- /** Function thart formats column header */
352
- formatColumnHeader?: (dataTable: EasyDataTable, index: number, colLabel: string) => string;
353
- /** A callback function that allows users to format value in a particular cell */
354
- formatGridCell?: (dataTable: EasyDataTable, rowIndex: number, colIndex: number, text: string) => string;
355
- /** pageItem css class */
356
- pageItemCssClass?: string;
357
- /** Max count of buttons */
358
- maxButtonCount?: number;
359
- /** table class */
360
- tableClass?: string;
361
- allowDragDrop?: boolean;
362
- [name: string]: any;
363
- }
364
- export interface ChartWidgetOptions {
365
- /**Chart type: 3 - Column, 4 - Histogram, 5 - Bar, 6 - Combo, 7 - Area, 9 - Line, 10 - Pie, 12 - Donut, 17 - Gauge, 18 - Candlestick*/
366
- chartType?: ChartType;
367
- supportedChartTypes?: ChartType[];
368
- showOnPaging?: boolean;
369
- legend?: {
370
- show?: boolean;
371
- position?: string;
372
- };
373
- hideSettings?: boolean;
374
- /** The chart provider. */
375
- chartWidgetResolver?: (slot: HTMLDivElement) => Widget;
376
- }
377
- export interface FilterBarOptions {
378
- applyOnClose?: boolean;
379
- showApplyButton?: boolean;
380
- showClearButton?: boolean;
381
- applyFilterCallback?: () => void;
382
- queryPanel?: QueryPanelOptions;
383
- [name: string]: any;
384
- }
385
- export interface SortingBarOptions {
386
- /**
387
- * Gets or sets a value indicating whether query panel must show a special [add condition] link at the bottom
388
- */
389
- showAddRow?: boolean;
390
- /**
391
- * The format of entity attributes used in query panel conditions.
392
- * You can set it to `{attr}` to shown only attribute part (without entity name)
393
- */
394
- attrElementFormat?: string;
395
- /**
396
- * Gets or sets the format of column's title display name. `{entity}` is replaced with entity name, `{attr}` is replaced with attribute name.
397
- * Default value is null which means that columns panel will use the same format as it's set to attrElementFormat option
398
- */
399
- titleElementFormat?: string;
400
- adjustEntitiesMenuHeight?: boolean;
401
- /**
402
- * Contains different options for popup menu that appears for selecting attributes in columns.
403
- *
404
- */
405
- menuOptions?: PopupMenuOptions;
406
- domWriteItemsId?: boolean;
407
- /**
408
- * The callback that is called when the column's row has been rendered. It allows you to make any changes you need to the markup of the row.
409
- * Parameters:
410
- * `columnDiv` - jQuery object that represents the column's row div
411
- * @example
412
- * columnRenderedCallbackHandler: function (columnDiv) {
413
- * columnDiv.addClass("some-cool-class");
414
- * }
415
- */
416
- columnRenderedCallback?: (columnDiv: HTMLDivElement) => void;
417
- [name: string]: any;
418
- }
419
- export interface ResultFacetsPanelOptions {
420
- gridResolver?: (slot: HTMLElement, facetType: FacetType) => Widget | null | undefined;
421
- facetTypes?: FacetType[];
422
- supportedChartTypes?: ChartType[];
423
- showExportButton?: boolean;
424
- showRefreshButton?: boolean;
425
- showMaximizeButton?: boolean;
426
- maximize2Window?: boolean;
427
- showProcessIndicator?: boolean;
428
- [facetType: string]: any;
429
- }
1
+ import { Query, Condition, Expression, Widget, EqValueEditor } from '@easyquery/core';
2
+ import { EasyDataTable } from '@easydata/core';
3
+ import { DateTimePicker, DateTimePickerOptions } from '@easydata/ui';
4
+ import { ConditionRenderer } from './renderers/querypanel/condition_renderer';
5
+ import { ExpressionRenderer } from './renderers/querypanel/expression_renderer';
6
+ import { BaseElementRenderer } from './renderers/base_element_renderer';
7
+ import { QueryPanel } from './query_panel';
8
+ import { QPEditablePart } from '../types/qp_editable_part';
9
+ import { PopupMenuOptions } from '../utils/popup_menu';
10
+ import { FacetType } from '../types/facet_type';
11
+ import { ChartType } from './charts/chart_type';
12
+ /** Used in options.*/
13
+ export interface UseInOptions {
14
+ useInConditions: boolean;
15
+ useInResult: boolean;
16
+ useInSorting: boolean;
17
+ }
18
+ /** EntitiesPanel options */
19
+ export interface EntitiesPanelOptions {
20
+ showToolbar?: boolean;
21
+ showSelectAllButton?: boolean;
22
+ showClearSelectionButton?: boolean;
23
+ showAddColumnButton?: boolean;
24
+ showAddConditionButton?: boolean;
25
+ showCheckboxes?: boolean;
26
+ showTooltips?: boolean;
27
+ /**
28
+ * Gets or sets column caption format that will be used on adding selected attributes as columns
29
+ */
30
+ columnTitleFormat?: string;
31
+ draggableAttributes?: boolean;
32
+ /**
33
+ * Gets or sets the value that defines which attributes from the model should be shown in the tree.
34
+ * Each attribute in the model has `Use in conditions`, `Use in columns`, `Use in sorting` properties.
35
+ * This option filtering of all the attributes by these properties.
36
+ */
37
+ showAttributes?: UseInOptions;
38
+ showFilterBox?: boolean;
39
+ /**
40
+ * Gets or sets the value that defines how the search is performed in EntitiesPanel. Values:
41
+ * `0` - checks if node name contains the filter text. Default behaviour.
42
+ * `1` - checks if node name starts with the filter text.
43
+ */
44
+ filterBoxMode?: number;
45
+ /** Gets or sets a value indicating whether a progress indicator should appear while the model is loading */
46
+ showIndicatorOnLoad?: boolean;
47
+ /**
48
+ * Defines where to display attributes in the tree:
49
+ * `0` - attributes are displayed after entities
50
+ * `1` - attributes are displayed before entities
51
+ * `2` - attributes and entities are mixed, and displayed in alphabetical order. In this case the `sortEntities` option value dosn't matter.
52
+ */
53
+ attrPlacement?: number;
54
+ /** Defines whether entities and attributes should be sorted alphabetically. If false, they are displayed as listed in the model. */
55
+ sortEntities?: boolean;
56
+ /** Defines whether all selections will be cleared automatically after `add columns` or `add conditions` operation. */
57
+ autoClearSelection?: boolean;
58
+ /**
59
+ * The callback that is called when the entity node has been rendered. It allows you to make any changes you need to the markup of the node.
60
+ * Parameters:
61
+ * `entNode` - jQuery object that represents the node div
62
+ * @example
63
+ * entityRenderedCallbackHandler: function (entNode) {
64
+ * entNode.addClass("some-cool-class");
65
+ * }
66
+ */
67
+ entityRenderedCallback?: (entNode: HTMLElement) => void;
68
+ /**
69
+ * The callback that is called when the attribute node has been rendered. It allows you to make any changes you need to the markup of the node.
70
+ * Parameters:
71
+ * `attrNode` - jQuery object that represents the node div
72
+ * @example
73
+ * attributeRenderedCallbackHandler: function (attrNode) {
74
+ * attrNode.addClass("some-cool-class");
75
+ * }
76
+ */
77
+ attributeRenderedCallback?: (attrNode: HTMLElement) => void;
78
+ syncWithColumns?: boolean;
79
+ [name: string]: any;
80
+ }
81
+ /**Columns panel options */
82
+ export interface ColumnsPanelOptions {
83
+ isSubQuery?: boolean;
84
+ activeColumn?: any;
85
+ /** Gets or sets a value indicating whether columns panel must show a special `add column` link at the bottom */
86
+ showAddRow?: boolean;
87
+ /** Gets or sets a value indicating whether columns panel must show a header at the top */
88
+ showHeader?: boolean;
89
+ /** Gets or sets a value indicating whether columns panel must show an editable caption for each column (i.e. `SELECT ColumnName AS ColumnCaption...`) */
90
+ showColumnTitles?: boolean;
91
+ /** Gets or sets a value indicating whether columns panel must show button to change display */
92
+ allowDisplayFormatChange?: boolean;
93
+ /** Gets or sets a value indicating whether columns panel allows user to use aggregated columns */
94
+ allowAggrColumns?: boolean;
95
+ /** Gets or sets a value indicating whether it's allowed to add exactly the same column more than once */
96
+ allowDuplicates?: boolean;
97
+ /** Gets or sets a value indicating whether it's allowed to use a custom expression for the column definition instead of some entity attribute.
98
+ If it's turned on - a new menu item appears in the menu dropped on clicking on [f] button. */
99
+ allowCustomExpressions?: boolean;
100
+ /** Gets or sets a value indicating whether columns panel allows user to set columns sorting */
101
+ allowSorting?: boolean;
102
+ /** Gets or sets the format of the attribute display name. `{entity}` is replaced with entity name, `{attr}` is replaced with attribute name */
103
+ attrElementFormat?: string;
104
+ /**
105
+ * Gets or sets the format of column's title display name. `{entity}` is replaced with entity name, `{attr}` is replaced with attribute name.
106
+ * Default value is null which means that columns panel will use the same format as it's set to attrElementFormat option
107
+ */
108
+ titleElementFormat?: string;
109
+ /**
110
+ * Defines which buttons should be shown in the column when the mouse is over.
111
+ * Possible values are:
112
+ * - `"enable"` - the button that allows to enable or disable certain column.
113
+ * - `"delete"` - the button that allows to delete certain column.
114
+ * - `"type"` - the button that allows to select a column type (simple, aggregate, etc.).
115
+ * - `"sorting"` - the button that allows to set column sorting and move columns.
116
+ * - `"menu"` - the button that shows menu with all available actions for the column, including the actions that are not available using other buttons.
117
+ * By default the option is not set, it actually means
118
+ * ``` ["enable", "delete", "function", "sorting"]```
119
+ *
120
+ */
121
+ buttons?: string[];
122
+ /** Gets or sets a value indicating whether the service buttons are permanently displayed in all columns (`true`), or just in active column and the column user moves the cursor over (`false`) */
123
+ alwaysShowButtons?: boolean;
124
+ /** Gets or sets a value indicating whether the active column should be backlighted and permanently display the service buttons */
125
+ accentActiveColumn?: boolean;
126
+ /** */
127
+ adjustEntitiesMenuHeight?: boolean;
128
+ /** Gets or sets a value indicating whether the columns may be dragged and dropped */
129
+ allowDragDrop?: boolean;
130
+ domWriteItemsId?: boolean;
131
+ /** Get or sets a value indication wether checkboxes must be shown */
132
+ showCheckboxes?: boolean;
133
+ /**
134
+ * Contains different options for popup menu that appears for selecting attributes in columns.
135
+ *
136
+ */
137
+ menuOptions?: PopupMenuOptions;
138
+ /**
139
+ * Defines where to display attributes in the tree:
140
+ * `0` - attributes are displayed after entities
141
+ * `1` - attributes are displayed before entities
142
+ * `2` - attributes and entities are mixed, and displayed in alphabetical order. In this case the "sortEntities" option value dosn't matter.
143
+ */
144
+ attrPlacement?: number;
145
+ /**
146
+ * Defines whether entities and attributes should be sorted alphabetically. If false, they are displayed as listed in the model.
147
+ */
148
+ sortEntities?: boolean;
149
+ /**
150
+ * The callback that is called when the column's row has been rendered. It allows you to make any changes you need to the markup of the row.
151
+ * Parameters:
152
+ * `columnDiv` - jQuery object that represents the column's row div
153
+ * @example
154
+ * columnRenderedCallbackHandler: function (columnDiv) {
155
+ * columnDiv.addClass("some-cool-class");
156
+ * }
157
+ */
158
+ columnRenderedCallback?: (columnDiv: HTMLDivElement) => void;
159
+ /**
160
+ * Gets or sets a value which defines what text should be used for custom expressions' links. Possible values are:
161
+ * `0` - show the SQL expression itself. Default behaviour.
162
+ * `1` - show special [Custom SQL] text.
163
+ * `2` - show column's title.
164
+ */
165
+ customExpressionText?: number;
166
+ allowHiddenColumns?: boolean;
167
+ allowInvisible?: boolean;
168
+ showAddAllForEntity?: boolean;
169
+ /** Gets or sets a value indicating whether a progress indicator should appear while the model is loading */
170
+ showIndicatorOnLoad?: boolean;
171
+ [name: string]: any;
172
+ }
173
+ /** Columns bar options */
174
+ export interface ColumnsBarOptions extends ColumnsPanelOptions {
175
+ showColumnCaptions?: boolean;
176
+ }
177
+ /** Query panel options */
178
+ export interface QueryPanelOptions {
179
+ /**
180
+ * Gets or sets a value indicating current edit mode for QueryPanel
181
+ */
182
+ editableParts?: QPEditablePart;
183
+ isSubQuery?: boolean;
184
+ activeCondition?: null;
185
+ entitiesPopupHandler?: any;
186
+ entitiesListFilter?: any;
187
+ menuContainer?: HTMLElement;
188
+ /**
189
+ * Gets or sets a value indicating whether query panel must show a root row which represents the main group of conditions
190
+ */
191
+ showRootRow?: boolean;
192
+ /**
193
+ * Gets or sets a value indicating whether query panel must show a special [add condition] link at the bottom
194
+ */
195
+ showAddRow?: boolean;
196
+ /**
197
+ * Gets or sets a value indicating whether query panel must show a checkbox at the beginning of each condition row.
198
+ * User will be able to use these checkboxes to enable/disable corresponding query conditions
199
+ */
200
+ showCheckboxes?: boolean;
201
+ /**
202
+ * Gets or sets a value indicating whether query panel shows "toggle parameterization" button which aloows to mark each condition as parameterized.
203
+ */
204
+ allowParameterization?: boolean;
205
+ /**
206
+ * Gets or sets a value indicating whether query panel allows to place some conditions in to `JOIN` clause instead of `WHERE`.
207
+ */
208
+ allowInJoinConditions?: boolean;
209
+ /** Allows to turn off "Powered by EasyQuery" link shown in the bottom right cornder of query panel. Works only in the full version of the script. */
210
+ showPoweredBy?: boolean;
211
+ /**
212
+ * Defines which buttons should be shown in the condition/predicate when the mouse is over.
213
+ * Possible values are:
214
+ * - `"addCondition"` - the button that allows to add new condition. Is shown in predicates only.
215
+ * - `"addPredicate"` - the button that allows to add new predicate. Is shown in predicates only.
216
+ * - `"enable"` - the button that allows to enable or disable certain condition.
217
+ * - `"delete"` - the button that allows to delete certain condition.
218
+ * - `"menu"` - the button that shows menu with all available actions for the condition/predicate, including the actions that are not available using other buttons.
219
+ * The default value for this option is:
220
+ * ```
221
+ * {
222
+ condition: ["enable", "delete"]
223
+ predicate: ["addCondition", "addPredicate", "enable", "delete"]
224
+ }
225
+ * ```
226
+ *
227
+ */
228
+ buttons?: {
229
+ condition?: string[];
230
+ group?: string[];
231
+ };
232
+ /**
233
+ * If true QueryPanel widget will always show button in predicate (group) rows.
234
+ * Instead of default behaviour when they are shown only on mouse over.
235
+ */
236
+ alwaysShowButtonsInGroups?: boolean;
237
+ /**
238
+ * If true QueryPanel widget will always show button in condition rows.
239
+ * Instead of default behaviour when they are shown only on mouse over.
240
+ */
241
+ alwaysShowButtonsInConditions?: boolean;
242
+ /**
243
+ * If true QueryPanel widget will show conjunction elements (`and` or `or`) at the beginning of each condition.
244
+ */
245
+ showConjunctions?: boolean;
246
+ /**
247
+ * If true the active condition (the one user clicked on previously) will have accent background color.
248
+ */
249
+ accentActiveCondition?: boolean;
250
+ /**
251
+ * If `true` root predicate row become active at the beginning.
252
+ */
253
+ activateRootOnStart?: boolean;
254
+ /**
255
+ * A string that represents the format of date values used in date/time picker widget.
256
+ */
257
+ dateFormatValue?: string;
258
+ /**
259
+ * The format of date values used in condition rows.
260
+ */
261
+ dateFormatDisplay?: string;
262
+ /**
263
+ * The range of years displayed in the year drop-down: either relative to today's year ("-nn:+nn"), relative to the currently selected year ("c-nn:c+nn"), absolute ("nnnn:nnnn"), or combinations of these formats ("nnnn:-nn").
264
+ */
265
+ yearRange?: string;
266
+ /**
267
+ * If `true` and no timepicker is displayed, calendar will be closed after click on some date. Default is `true`
268
+ */
269
+ oneClickDateSelection?: boolean;
270
+ /**
271
+ * If `true`, calendar will display an input box with date string. Default is `false`
272
+ */
273
+ showDateTimeInput?: boolean;
274
+ /**
275
+ * The format of entity attributes used in query panel conditions.
276
+ * You can set it to `{attr}` to shown only attribute part (without entity name)
277
+ */
278
+ attrElementFormat?: string;
279
+ /**
280
+ * Contains different options for popup menu that appears for selecting attributes, operators or values in condition.
281
+ */
282
+ menuOptions?: PopupMenuOptions;
283
+ /**
284
+ * Gets or sets a value indicating whether it's possible to drag attributes from EntitiesPanel and drop them into QueryPanel to create new conditions.
285
+ */
286
+ allowDragDrop?: boolean;
287
+ /**
288
+ * Defines where to display attributes in the tree:
289
+ * `0` - attributes are displayed after entities
290
+ * `1` - attributes are displayed before entities
291
+ * `2` - attributes and entities are mixed, and displayed in alphabetical order. In this case the `sortEntities` option value dosn't matter.
292
+ */
293
+ attrPlacement?: number;
294
+ /** Defines whether entities and attributes should be sorted alphabetically. If false, they are displayed as listed in the model. */
295
+ sortEntities?: boolean;
296
+ /**Sets or gets the width of sub-query dialog */
297
+ subQueryDialogWidth?: number | string;
298
+ /**
299
+ * Sets or gets the height of sub-query dialog
300
+ */
301
+ subQueryDialogHeight?: number | string;
302
+ /**
303
+ * Sets or gets the ZIndex property of the different dialogs used in QueryPanel (including the sub-query dialog)
304
+ */
305
+ dialogZIndex?: number;
306
+ /**
307
+ * Sets or gets the symbol which is used as decimal separator
308
+ */
309
+ numberDecimalSeparatorDisplay?: string;
310
+ /**
311
+ * Sets or gets the symbols which are recognized as list items separators
312
+ * (for example when user is supposed to enter a list of values in a text box).
313
+ */
314
+ numberListSeparators?: string[];
315
+ /**
316
+ * If `true` the QueryPanel will automaticall show value editor for any new (just added) condition
317
+ */
318
+ autoEditNewCondition?: boolean;
319
+ /** If `true` the drop-down menues with available values will show item IDs together with their texts */
320
+ showIdsForListItems?: boolean;
321
+ /** Gets or sets a value indicating whether a progress indicator should appear while the model is loading */
322
+ showIndicatorOnLoad?: boolean;
323
+ onGetConditionRenderer?: (condition: Condition, slot?: HTMLDivElement) => ConditionRenderer | null;
324
+ /**
325
+ * The callback that is called when the condition's row has been rendered. It allows you to make any changes you need to the markup of the row.
326
+ * Parameters:
327
+ * condition - Condition object
328
+ * slot - HTMLDivElement object that represents the condition's div
329
+ * @example
330
+ * conditionRenderedHandler: function (condition, slot) {
331
+ * slot.addClass("some-cool-class");
332
+ * }
333
+ */
334
+ onConditionRendered?: (condition: Condition, slot: HTMLDivElement) => void;
335
+ onGetExpressionRenderer?: (queryPanel: QueryPanel, expression: Expression, editor: EqValueEditor, slot?: HTMLDivElement) => ExpressionRenderer | null;
336
+ onExpressionRendered?: (expression: Expression, slot: HTMLDivElement) => void;
337
+ onGetOperatorRenderer?: (condition: Condition, text: string, slot?: HTMLDivElement) => BaseElementRenderer | null;
338
+ onOperatorRendered?: (condition: Condition, text: string, slot: HTMLDivElement) => void;
339
+ onGetAddRowRenderer?: (slot?: HTMLDivElement) => BaseElementRenderer | null;
340
+ defaultQuery?: Query;
341
+ emptyTextValue?: string;
342
+ emptyTextList?: string;
343
+ emptyTextAttribute?: string;
344
+ emptyTextOperator?: string;
345
+ adjustEntitiesMenuHeight?: boolean;
346
+ domWriteItemsId?: boolean;
347
+ dateTimePickerResolver?: (options: DateTimePickerOptions) => DateTimePicker;
348
+ }
349
+ /**
350
+ * Grid options type.
351
+ */
352
+ export interface GridOptions {
353
+ /** Function called before rendering */
354
+ beforeTableRendering?: (dataTable: EasyDataTable) => void;
355
+ /** Function thart formats column header */
356
+ formatColumnHeader?: (dataTable: EasyDataTable, index: number, colLabel: string) => string;
357
+ /** A callback function that allows users to format value in a particular cell */
358
+ formatGridCell?: (dataTable: EasyDataTable, rowIndex: number, colIndex: number, text: string) => string;
359
+ /** pageItem css class */
360
+ pageItemCssClass?: string;
361
+ /** Max count of buttons */
362
+ maxButtonCount?: number;
363
+ /** table class */
364
+ tableClass?: string;
365
+ allowDragDrop?: boolean;
366
+ [name: string]: any;
367
+ }
368
+ export interface ChartWidgetOptions {
369
+ /**Chart type: 3 - Column, 4 - Histogram, 5 - Bar, 6 - Combo, 7 - Area, 9 - Line, 10 - Pie, 12 - Donut, 17 - Gauge, 18 - Candlestick*/
370
+ chartType?: ChartType;
371
+ supportedChartTypes?: ChartType[];
372
+ showOnPaging?: boolean;
373
+ legend?: {
374
+ show?: boolean;
375
+ position?: string;
376
+ };
377
+ hideSettings?: boolean;
378
+ /** The chart provider. */
379
+ chartWidgetResolver?: (slot: HTMLDivElement) => Widget;
380
+ }
381
+ export interface FilterBarOptions {
382
+ applyOnClose?: boolean;
383
+ showApplyButton?: boolean;
384
+ showClearButton?: boolean;
385
+ applyFilterCallback?: () => void;
386
+ queryPanel?: QueryPanelOptions;
387
+ [name: string]: any;
388
+ }
389
+ export interface SortingBarOptions {
390
+ /**
391
+ * Gets or sets a value indicating whether query panel must show a special [add condition] link at the bottom
392
+ */
393
+ showAddRow?: boolean;
394
+ /**
395
+ * The format of entity attributes used in query panel conditions.
396
+ * You can set it to `{attr}` to shown only attribute part (without entity name)
397
+ */
398
+ attrElementFormat?: string;
399
+ /**
400
+ * Gets or sets the format of column's title display name. `{entity}` is replaced with entity name, `{attr}` is replaced with attribute name.
401
+ * Default value is null which means that columns panel will use the same format as it's set to attrElementFormat option
402
+ */
403
+ titleElementFormat?: string;
404
+ adjustEntitiesMenuHeight?: boolean;
405
+ /**
406
+ * Contains different options for popup menu that appears for selecting attributes in columns.
407
+ *
408
+ */
409
+ menuOptions?: PopupMenuOptions;
410
+ domWriteItemsId?: boolean;
411
+ /**
412
+ * The callback that is called when the column's row has been rendered. It allows you to make any changes you need to the markup of the row.
413
+ * Parameters:
414
+ * `columnDiv` - jQuery object that represents the column's row div
415
+ * @example
416
+ * columnRenderedCallbackHandler: function (columnDiv) {
417
+ * columnDiv.addClass("some-cool-class");
418
+ * }
419
+ */
420
+ columnRenderedCallback?: (columnDiv: HTMLDivElement) => void;
421
+ [name: string]: any;
422
+ }
423
+ export interface ResultFacetsPanelOptions {
424
+ gridResolver?: (slot: HTMLElement, facetType: FacetType) => Widget | null | undefined;
425
+ facetTypes?: FacetType[];
426
+ supportedChartTypes?: ChartType[];
427
+ showExportButton?: boolean;
428
+ showRefreshButton?: boolean;
429
+ showMaximizeButton?: boolean;
430
+ maximize2Window?: boolean;
431
+ showProcessIndicator?: boolean;
432
+ [facetType: string]: any;
433
+ }