@syncfusion/ej2-querybuilder 24.2.9 → 25.1.35

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 (58) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/ej2-querybuilder.min.js +2 -2
  3. package/dist/ej2-querybuilder.umd.min.js +2 -2
  4. package/dist/ej2-querybuilder.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-querybuilder.es2015.js +1609 -159
  6. package/dist/es6/ej2-querybuilder.es2015.js.map +1 -1
  7. package/dist/es6/ej2-querybuilder.es5.js +1611 -159
  8. package/dist/es6/ej2-querybuilder.es5.js.map +1 -1
  9. package/dist/global/ej2-querybuilder.min.js +2 -2
  10. package/dist/global/ej2-querybuilder.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +12 -12
  13. package/src/global.js +2 -0
  14. package/src/query-builder/index.d.ts +1 -0
  15. package/src/query-builder/index.js +1 -0
  16. package/src/query-builder/query-builder-model.d.ts +69 -1
  17. package/src/query-builder/query-builder.d.ts +189 -4
  18. package/src/query-builder/query-builder.js +895 -130
  19. package/src/query-builder/query-library.d.ts +24 -0
  20. package/src/query-builder/query-library.js +689 -0
  21. package/styles/bootstrap-dark.css +29 -12
  22. package/styles/bootstrap.css +29 -12
  23. package/styles/bootstrap4.css +25 -12
  24. package/styles/bootstrap5-dark.css +35 -11
  25. package/styles/bootstrap5.css +35 -11
  26. package/styles/fabric-dark.css +25 -12
  27. package/styles/fabric.css +25 -12
  28. package/styles/fluent-dark.css +39 -11
  29. package/styles/fluent.css +39 -11
  30. package/styles/highcontrast-light.css +25 -12
  31. package/styles/highcontrast.css +25 -12
  32. package/styles/material-dark.css +25 -12
  33. package/styles/material.css +25 -12
  34. package/styles/material3-dark.css +25 -12
  35. package/styles/material3.css +25 -12
  36. package/styles/query-builder/_bds-definition.scss +107 -0
  37. package/styles/query-builder/_layout.scss +37 -7
  38. package/styles/query-builder/_theme.scss +16 -1
  39. package/styles/query-builder/bootstrap-dark.css +29 -12
  40. package/styles/query-builder/bootstrap.css +29 -12
  41. package/styles/query-builder/bootstrap4.css +25 -12
  42. package/styles/query-builder/bootstrap5-dark.css +35 -11
  43. package/styles/query-builder/bootstrap5.css +35 -11
  44. package/styles/query-builder/fabric-dark.css +25 -12
  45. package/styles/query-builder/fabric.css +25 -12
  46. package/styles/query-builder/fluent-dark.css +39 -11
  47. package/styles/query-builder/fluent.css +39 -11
  48. package/styles/query-builder/highcontrast-light.css +25 -12
  49. package/styles/query-builder/highcontrast.css +25 -12
  50. package/styles/query-builder/icons/_bds.scss +7 -0
  51. package/styles/query-builder/material-dark.css +25 -12
  52. package/styles/query-builder/material.css +25 -12
  53. package/styles/query-builder/material3-dark.css +25 -12
  54. package/styles/query-builder/material3.css +25 -12
  55. package/styles/query-builder/tailwind-dark.css +30 -11
  56. package/styles/query-builder/tailwind.css +30 -11
  57. package/styles/tailwind-dark.css +30 -11
  58. package/styles/tailwind.css +30 -11
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 24.2.9
3
+ * version : 25.1.35
4
4
  * Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-querybuilder@*",
3
- "_id": "@syncfusion/ej2-querybuilder@24.2.8",
3
+ "_id": "@syncfusion/ej2-querybuilder@18.24.1",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-xNwR6dONcXxRCvZ32B9fD6m39auYyQnxbNRF5oPM2sKt5ado9TyQvIc5/9xxiZrDQ+FAlC/qDTsb88Q3ao4f1g==",
5
+ "_integrity": "sha512-ujZuYcmKu3KsFyS06QnLCHFo2iAoP/xGSfn5H5+Bz72cs7gO8fkLxDHEGZ/FAq5d3H5knyxsbczY4M/T4d/A0g==",
6
6
  "_location": "/@syncfusion/ej2-querybuilder",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,21 +23,21 @@
23
23
  "/@syncfusion/ej2-react-querybuilder",
24
24
  "/@syncfusion/ej2-vue-querybuilder"
25
25
  ],
26
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-querybuilder/-/ej2-querybuilder-24.2.8.tgz",
27
- "_shasum": "63932c8d748d6ddf307fa4a1cbed272d9bf9b6bc",
26
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-release/@syncfusion/ej2-querybuilder/-/ej2-querybuilder-18.24.1.tgz",
27
+ "_shasum": "9c720eb30d9ffdbd3b0fdff5462862a88930b6ed",
28
28
  "_spec": "@syncfusion/ej2-querybuilder@*",
29
- "_where": "/jenkins/workspace/elease-automation_release_24.1.1/packages/included",
29
+ "_where": "/jenkins/workspace/elease-automation_release_25.1.1/packages/included",
30
30
  "author": {
31
31
  "name": "Syncfusion Inc."
32
32
  },
33
33
  "bundleDependencies": false,
34
34
  "dependencies": {
35
- "@syncfusion/ej2-base": "~24.2.7",
36
- "@syncfusion/ej2-buttons": "~24.2.7",
37
- "@syncfusion/ej2-calendars": "~24.2.9",
38
- "@syncfusion/ej2-dropdowns": "~24.2.9",
39
- "@syncfusion/ej2-inputs": "~24.2.9",
40
- "@syncfusion/ej2-splitbuttons": "~24.2.7"
35
+ "@syncfusion/ej2-base": "~25.1.35",
36
+ "@syncfusion/ej2-buttons": "~25.1.35",
37
+ "@syncfusion/ej2-calendars": "~25.1.35",
38
+ "@syncfusion/ej2-dropdowns": "~25.1.35",
39
+ "@syncfusion/ej2-inputs": "~25.1.35",
40
+ "@syncfusion/ej2-splitbuttons": "~25.1.35"
41
41
  },
42
42
  "deprecated": false,
43
43
  "description": "Essential JS 2 QueryBuilder",
@@ -66,7 +66,7 @@
66
66
  "url": "https://github.com/syncfusion/ej2-javascript-ui-controls/tree/master/controls/querybuilder"
67
67
  },
68
68
  "typings": "index.d.ts",
69
- "version": "24.2.9",
69
+ "version": "25.1.35",
70
70
  "sideEffects": false,
71
71
  "homepage": "https://www.syncfusion.com/javascript-ui-controls"
72
72
  }
package/src/global.js CHANGED
@@ -1 +1,3 @@
1
+ import * as index from './index';
2
+ index.QueryBuilder.Inject(index.QueryLibrary);
1
3
  export * from './index';
@@ -3,3 +3,4 @@
3
3
  */
4
4
  export * from './query-builder';
5
5
  export * from './query-builder-model';
6
+ export * from './query-library';
@@ -2,3 +2,4 @@
2
2
  * QueryBuilder modules
3
3
  */
4
4
  export * from './query-builder';
5
+ export * from './query-library';
@@ -1,4 +1,4 @@
1
- import { Component, INotifyPropertyChanged, NotifyPropertyChanges, getComponent, MouseEventArgs, Browser, compile, append } from '@syncfusion/ej2-base';import { Property, ChildProperty, Complex, L10n, closest, extend, isNullOrUndefined, Collection, cldrData } from '@syncfusion/ej2-base';import { getInstance, addClass, removeClass, rippleEffect, detach, classList } from '@syncfusion/ej2-base';import { Internationalization, DateFormatOptions, KeyboardEventArgs, getUniqueID, select } from '@syncfusion/ej2-base';import { Button, CheckBox, RadioButton, ChangeEventArgs as ButtonChangeEventArgs, RadioButtonModel } from '@syncfusion/ej2-buttons';import { DropDownList, ChangeEventArgs as DropDownChangeEventArgs, FieldSettingsModel, CheckBoxSelection, DropDownTreeModel, DropDownTree } from '@syncfusion/ej2-dropdowns';import { MultiSelect, MultiSelectChangeEventArgs, PopupEventArgs, MultiSelectModel, DropDownListModel } from '@syncfusion/ej2-dropdowns';import { EmitType, Event, EventHandler, getValue, Animation, BaseEventArgs } from '@syncfusion/ej2-base';import { Query, Predicate, DataManager, Deferred } from '@syncfusion/ej2-data';import { TextBox, NumericTextBox, InputEventArgs, ChangeEventArgs as InputChangeEventArgs } from '@syncfusion/ej2-inputs';import { TextBoxModel, NumericTextBoxModel } from '@syncfusion/ej2-inputs';import { DatePicker, ChangeEventArgs as CalendarChangeEventArgs, DatePickerModel } from '@syncfusion/ej2-calendars';import { DropDownButton, ItemModel, MenuEventArgs } from '@syncfusion/ej2-splitbuttons';import { Tooltip, createSpinner, showSpinner, hideSpinner, TooltipEventArgs } from '@syncfusion/ej2-popups';import { compile as templateCompiler } from '@syncfusion/ej2-base';
1
+ import { Component, INotifyPropertyChanged, NotifyPropertyChanges, getComponent, MouseEventArgs, Browser, compile, append, ModuleDeclaration, getDefaultDateObject } from '@syncfusion/ej2-base';import { Property, ChildProperty, Complex, L10n, closest, extend, isNullOrUndefined, Collection, cldrData } from '@syncfusion/ej2-base';import { getInstance, addClass, removeClass, rippleEffect, detach, classList } from '@syncfusion/ej2-base';import { Internationalization, DateFormatOptions, KeyboardEventArgs, getUniqueID, select } from '@syncfusion/ej2-base';import { Button, CheckBox, RadioButton, ChangeEventArgs as ButtonChangeEventArgs, RadioButtonModel } from '@syncfusion/ej2-buttons';import { DropDownList, ChangeEventArgs as DropDownChangeEventArgs, FieldSettingsModel, CheckBoxSelection, DropDownTreeModel, DropDownTree } from '@syncfusion/ej2-dropdowns';import { MultiSelect, MultiSelectChangeEventArgs, PopupEventArgs, MultiSelectModel, DropDownListModel } from '@syncfusion/ej2-dropdowns';import { EmitType, Event, EventHandler, getValue, Animation, BaseEventArgs } from '@syncfusion/ej2-base';import { Query, Predicate, DataManager, Deferred } from '@syncfusion/ej2-data';import { TextBox, NumericTextBox, InputEventArgs, ChangeEventArgs as InputChangeEventArgs } from '@syncfusion/ej2-inputs';import { TextBoxModel, NumericTextBoxModel } from '@syncfusion/ej2-inputs';import { DatePicker, ChangeEventArgs as CalendarChangeEventArgs, DatePickerModel } from '@syncfusion/ej2-calendars';import { DropDownButton, ItemModel, MenuEventArgs } from '@syncfusion/ej2-splitbuttons';import { Tooltip, createSpinner, showSpinner, hideSpinner, TooltipEventArgs } from '@syncfusion/ej2-popups';import { compile as templateCompiler } from '@syncfusion/ej2-base';
2
2
  import {TemplateColumn,Validation,FormatObject,ActionEventArgs,ChangeEventArgs,RuleChangeEventArgs,FieldMode,DisplayMode,SortDirection} from "./query-builder";
3
3
  import {ComponentModel} from '@syncfusion/ej2-base';
4
4
 
@@ -165,6 +165,13 @@ export interface RuleModel {
165
165
  */
166
166
  not?: boolean;
167
167
 
168
+ /**
169
+ * Specifies whether rule is locked or not.
170
+ *
171
+ * @default false
172
+ */
173
+ isLocked?: boolean;
174
+
168
175
  }
169
176
 
170
177
  /**
@@ -214,6 +221,34 @@ export interface ValueModel {
214
221
  */
215
222
  export interface ShowButtonsModel {
216
223
 
224
+ /**
225
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
226
+ *
227
+ * @default false
228
+ */
229
+ cloneRule?: boolean;
230
+
231
+ /**
232
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
233
+ *
234
+ * @default false
235
+ */
236
+ cloneGroup?: boolean;
237
+
238
+ /**
239
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
240
+ *
241
+ * @default false
242
+ */
243
+ lockRule?: boolean;
244
+
245
+ /**
246
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
247
+ *
248
+ * @default false
249
+ */
250
+ lockGroup?: boolean;
251
+
217
252
  /**
218
253
  * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
219
254
  *
@@ -443,6 +478,39 @@ export interface QueryBuilderModel extends ComponentModel{
443
478
  */
444
479
  readonly?: boolean;
445
480
 
481
+ /**
482
+ * Specifies a boolean value whether enable / disable the new rule adding while adding new groups.
483
+ *
484
+ * @remarks
485
+ * If this property is true, the empty rule is inserted while inserting new group.
486
+ * If set to false, the group is inserted without any rule.
487
+ *
488
+ * @default true
489
+ */
490
+ addRuleToNewGroups?: boolean;
491
+
492
+ /**
493
+ * Specifies a boolean value whether enable / disable the auto selection with the first value for the field.
494
+ *
495
+ * @remarks
496
+ * If this property is true, the field dropdown list will render with the first value of the dropdown list.
497
+ * If set to false, the dropdown list render with placeholder.
498
+ *
499
+ * @default false
500
+ */
501
+ autoSelectField?: boolean;
502
+
503
+ /**
504
+ * Specifies a boolean value whether enable / disable the auto selection with the first value for the operator.
505
+ *
506
+ * @remarks
507
+ * If this property is true, the operator dropdown list will render with the first value of the dropdown list.
508
+ * If set to false, the dropdown list render with placeholder.
509
+ *
510
+ * @default true
511
+ */
512
+ autoSelectOperator?: boolean;
513
+
446
514
  /**
447
515
  * Specifies the separator string for column.
448
516
  *
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Query Builder Source
3
3
  */
4
- import { Component, INotifyPropertyChanged } from '@syncfusion/ej2-base';
4
+ import { Component, INotifyPropertyChanged, ModuleDeclaration } from '@syncfusion/ej2-base';
5
5
  import { ChildProperty } from '@syncfusion/ej2-base';
6
6
  import { QueryBuilderModel, ShowButtonsModel, ColumnsModel, RuleModel, ValueModel } from './query-builder-model';
7
7
  import { RadioButtonModel } from '@syncfusion/ej2-buttons';
@@ -152,6 +152,12 @@ export declare class Rule extends ChildProperty<Rule> {
152
152
  * @default false
153
153
  */
154
154
  not: boolean;
155
+ /**
156
+ * Specifies whether rule is locked or not.
157
+ *
158
+ * @default false
159
+ */
160
+ isLocked: boolean;
155
161
  }
156
162
  /**
157
163
  * Defines the property for value.
@@ -192,6 +198,30 @@ export declare class Value extends ChildProperty<Value> {
192
198
  * Defines the ruleDelete, groupInsert, and groupDelete options of Query Builder.
193
199
  */
194
200
  export declare class ShowButtons extends ChildProperty<ShowButtons> {
201
+ /**
202
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
203
+ *
204
+ * @default false
205
+ */
206
+ cloneRule: boolean;
207
+ /**
208
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
209
+ *
210
+ * @default false
211
+ */
212
+ cloneGroup: boolean;
213
+ /**
214
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
215
+ *
216
+ * @default false
217
+ */
218
+ lockRule: boolean;
219
+ /**
220
+ * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
221
+ *
222
+ * @default false
223
+ */
224
+ lockGroup: boolean;
195
225
  /**
196
226
  * Specifies the boolean value in ruleDelete that the enable/disable the buttons in rule.
197
227
  *
@@ -303,6 +333,14 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
303
333
  private isGetNestedData;
304
334
  private isCustomOprCols;
305
335
  private dummyDropdownTreeDs;
336
+ private groupCounter;
337
+ private lockItems;
338
+ private groupIndex;
339
+ private ruleIndex;
340
+ private isLastGroup;
341
+ private cloneGrpBtnClick;
342
+ private isMiddleGroup;
343
+ private cloneRuleBtnClick;
306
344
  /**
307
345
  * Triggers when the component is created.
308
346
  *
@@ -477,6 +515,36 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
477
515
  * @default false
478
516
  */
479
517
  readonly: boolean;
518
+ /**
519
+ * Specifies a boolean value whether enable / disable the new rule adding while adding new groups.
520
+ *
521
+ * @remarks
522
+ * If this property is true, the empty rule is inserted while inserting new group.
523
+ * If set to false, the group is inserted without any rule.
524
+ *
525
+ * @default true
526
+ */
527
+ addRuleToNewGroups: boolean;
528
+ /**
529
+ * Specifies a boolean value whether enable / disable the auto selection with the first value for the field.
530
+ *
531
+ * @remarks
532
+ * If this property is true, the field dropdown list will render with the first value of the dropdown list.
533
+ * If set to false, the dropdown list render with placeholder.
534
+ *
535
+ * @default false
536
+ */
537
+ autoSelectField: boolean;
538
+ /**
539
+ * Specifies a boolean value whether enable / disable the auto selection with the first value for the operator.
540
+ *
541
+ * @remarks
542
+ * If this property is true, the operator dropdown list will render with the first value of the dropdown list.
543
+ * If set to false, the dropdown list render with placeholder.
544
+ *
545
+ * @default true
546
+ */
547
+ autoSelectOperator: boolean;
480
548
  /**
481
549
  * Specifies the separator string for column.
482
550
  *
@@ -500,6 +568,7 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
500
568
  reset(): void;
501
569
  private getWrapper;
502
570
  protected getModuleName(): string;
571
+ requiredModules(): ModuleDeclaration[];
503
572
  private GetRootColumnName;
504
573
  private initialize;
505
574
  private updateSubFieldsFromColumns;
@@ -742,7 +811,7 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
742
811
  * Sets the rules from the sql query.
743
812
  *
744
813
  * @param {string} sqlString - 'sql String' to be passed to set the rule.
745
- * @param {boolean} sqlLocale - Set `true` if Localization for Sql query.
814
+ * @param {boolean} sqlLocale - Optional. Set `true` if Localization for Sql query.
746
815
  * @returns {void}
747
816
  */
748
817
  setRulesFromSql(sqlString: string, sqlLocale?: boolean): void;
@@ -759,10 +828,85 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
759
828
  *
760
829
  * @param {RuleModel} rule - 'rule' to be passed to get the sql.
761
830
  * @param {boolean} allowEscape - Set `true` if it exclude the escape character.
762
- * @param {boolean} sqlLocale - Set `true` if Localization for Sql query.
763
- * @returns {object} - Sql query from rules.
831
+ * @param {boolean} sqlLocale - Set `true` if Localization for Sql query.
832
+ * @returns {string} - Sql query from rules.
764
833
  */
765
834
  getSqlFromRules(rule?: RuleModel, allowEscape?: boolean, sqlLocale?: boolean): string;
835
+ /**
836
+ * Gets the parameter SQL query from rules.
837
+ *
838
+ * @param {RuleModel} rule – Specify the rule to be passed to get the parameter sql string.
839
+ * @returns {ParameterizedSql} – Parameterized SQL query from rules.
840
+ */
841
+ getParameterizedSql(rule?: RuleModel): ParameterizedSql;
842
+ /**
843
+ * Sets the rules from the parameter sql query.
844
+ *
845
+ * @param { ParameterizedSql} sqlQuery – Specifies the parameter SQL to be passed to set the rule and load it to the query builder.
846
+ * @returns {void}
847
+ */
848
+ setParameterizedSql(sqlQuery: ParameterizedSql): void;
849
+ /**
850
+ * Gets the named parameter SQL query from rules.
851
+ *
852
+ * @param {RuleModel} rule – Specify the rule to be passed to get the named parameter SQL string.
853
+ * @returns {ParameterizedNamedSql} – Parameterized Named SQL query from rules.
854
+ */
855
+ getParameterizedNamedSql(rule?: RuleModel): ParameterizedNamedSql;
856
+ /**
857
+ * Sets the rules from the named parameter SQL query.
858
+ *
859
+ * @param { ParameterizedNamedSql } sqlQuery – Specifies the named parameter SQL to be passed to set the rule and load it to the query builder.
860
+ * @returns {void}
861
+ */
862
+ setParameterizedNamedSql(sqlQuery: ParameterizedNamedSql): void;
863
+ /**
864
+ * Set the rules from Mongo query.
865
+ *
866
+ * @param {string} mongoQuery - 'sql String' to be passed to get the rule.
867
+ * @param {boolean} mongoLocale - Set `true` if Localization for Mongo query.
868
+ * @returns {void}
869
+ */
870
+ setMongoQuery(mongoQuery: string, mongoLocale?: boolean): void;
871
+ /**
872
+ * Gets the Mongo query from rules.
873
+ *
874
+ * @param {RuleModel} rule - 'rule' to be passed to get the sql.
875
+ * @returns {object} - Sql query from rules.
876
+ */
877
+ getMongoQuery(rule?: RuleModel): string;
878
+ /**
879
+ * Clones the rule based on the rule ID to the specific group.
880
+ *
881
+ * @param {string} ruleID - Specifies the ruleID that needs to be cloned.
882
+ * @param {string} groupID - Specifies the groupID in which the rule to be cloned.
883
+ * @param {number} index - Specifies the index to insert the cloned rule inside the group.
884
+ * @returns {void}
885
+ */
886
+ cloneRule(ruleID: string, groupID: string, index: number): void;
887
+ /**
888
+ * Clones the group based on the group ID to the specific group.
889
+ *
890
+ * @param {string} groupID - Specifies the groupID that needs to be cloned.
891
+ * @param {string} parentGroupID - Specifies the parentGroupID in which the group to be cloned.
892
+ * @param {number} index - Specifies the index to insert the cloned group inside the parent group.
893
+ * @returns {void}
894
+ */
895
+ cloneGroup(groupID: string, parentGroupID: string, index: number): void;
896
+ /**
897
+ * Locks the rule based on the rule ID.
898
+ *
899
+ * @param {string} ruleID - Specifies the ruleID that needs to be locked.
900
+ * @returns {void}
901
+ */
902
+ lockRule(ruleID: string): void;
903
+ /**
904
+ * Locks the group based on the group ID
905
+ *
906
+ * @param {string} groupID - Specifies the groupID that needs to be locked.
907
+ * @returns {void}
908
+ */
909
+ lockGroup(groupID: string): void;
766
910
  private sqlParser;
767
911
  private parseSqlStrings;
768
912
  private checkLiteral;
@@ -772,6 +916,19 @@ export declare class QueryBuilder extends Component<HTMLDivElement> implements I
772
916
  private getLabelFromColumn;
773
917
  private getLabelFromField;
774
918
  private processParser;
919
+ /**
920
+ * Clone the Group
921
+ *
922
+ * @param {Element | string} target - 'target' to be passed to clone the group.
923
+ * @returns {void}
924
+ */
925
+ private groupClone;
926
+ private ruleClone;
927
+ private ruleLock;
928
+ private groupLock;
929
+ private updateLockItems;
930
+ private disableHeaderControls;
931
+ private disableRuleControls;
775
932
  }
776
933
  export interface Level {
777
934
  [key: string]: number[];
@@ -865,3 +1022,31 @@ export interface ActionEventArgs extends BaseEventArgs {
865
1022
  renderTemplate?: boolean;
866
1023
  groupID?: string;
867
1024
  }
1025
+ /**
1026
+ * Interface to define the parameter SQL query.
1027
+ *
1028
+ */
1029
+ export interface ParameterizedSql {
1030
+ /**
1031
+ * Specifies the SQL `WHERE` clause with `?` placeholders for each value.
1032
+ */
1033
+ sql: string;
1034
+ /**
1035
+ * Specifies the parameter values in the same order their respective placeholders appear in the `sql` string.
1036
+ */
1037
+ params: object[];
1038
+ }
1039
+ /**
1040
+ * Interface to define the parameterized named SQL query.
1041
+ *
1042
+ */
1043
+ export interface ParameterizedNamedSql {
1044
+ /**
1045
+ * Specifies the SQL `WHERE` clause with bind variable placeholders for each value.
1046
+ */
1047
+ sql: string;
1048
+ /**
1049
+ * Specifies the bind variable names from the `sql` string to the associated values.
1050
+ */
1051
+ params: Record<string, object>;
1052
+ }