@pepperi-addons/ngx-lib 0.4.2-beta.99 → 0.4.2-scroll.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/chips/chips.component.d.ts +1 -3
- package/core/common/pipes/common-pipes.d.ts +3 -0
- package/core/customization/customization.model.d.ts +1 -1
- package/esm2020/checkbox/checkbox.component.mjs +3 -3
- package/esm2020/chips/chips.component.mjs +8 -11
- package/esm2020/color/color.component.mjs +3 -3
- package/esm2020/core/common/pipes/common-pipes.mjs +14 -4
- package/esm2020/core/customization/customization.model.mjs +7 -1
- package/esm2020/core/customization/customization.service.mjs +2 -1
- package/esm2020/core/http/services/loader.service.mjs +3 -3
- package/esm2020/draggable-items/draggable-items.component.mjs +3 -3
- package/esm2020/form/field-generator.component.mjs +3 -3
- package/esm2020/form/form.component.mjs +3 -3
- package/esm2020/form/internal-carusel.component.mjs +10 -6
- package/esm2020/form/internal-field-generator.component.mjs +3 -3
- package/esm2020/form/internal-form.component.mjs +3 -3
- package/esm2020/form/internal-menu.component.mjs +4 -6
- package/esm2020/form/internal-page.component.mjs +3 -4
- package/esm2020/image/image.component.mjs +3 -3
- package/esm2020/images-filmstrip/images-filmstrip.component.mjs +3 -3
- package/esm2020/link/link.component.mjs +9 -3
- package/esm2020/list/list-actions.component.mjs +1 -1
- package/esm2020/list/list-chooser.component.mjs +1 -1
- package/esm2020/list/list-sorting.component.mjs +1 -1
- package/esm2020/list/list-views.component.mjs +1 -1
- package/esm2020/list/list.component.mjs +22 -10
- package/esm2020/list/list.model.mjs +1 -1
- package/esm2020/menu/menu-item.component.mjs +3 -3
- package/esm2020/menu/menu.component.mjs +6 -3
- package/esm2020/menu/menu.model.mjs +2 -1
- package/esm2020/profile-data-views-list/profile-data-view/profile-data-view.component.mjs +1 -1
- package/esm2020/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.mjs +25 -9
- package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +58 -26
- package/esm2020/profile-data-views-list/profile-data-views-list.model.mjs +1 -1
- package/esm2020/quantity-selector/quantity-selector.component.mjs +7 -3
- package/esm2020/query-builder/common/model/legacy.mjs +1 -1
- package/esm2020/query-builder/common/model/operator.mjs +72 -62
- package/esm2020/query-builder/common/services/output-query.service.mjs +5 -3
- package/esm2020/query-builder/common/services/query-structure.service.mjs +24 -1
- package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +3 -3
- package/esm2020/query-builder/query-builder-section/query-builder-section.component.mjs +3 -3
- package/esm2020/query-builder/query-builder.module.mjs +14 -3
- package/esm2020/query-builder/query-builder.service.mjs +2 -2
- package/esm2020/remote-loader/remote-loader.service.mjs +16 -16
- package/esm2020/rich-html-textarea/rich-html-textarea.component.mjs +10 -3
- package/esm2020/select/select.component.mjs +3 -3
- package/esm2020/select-panel/select-panel.component.mjs +3 -5
- package/esm2020/signature/signature-dialog.component.mjs +2 -1
- package/esm2020/signature/signature.component.mjs +4 -4
- package/esm2020/skeleton-loader/public-api.mjs +2 -2
- package/esm2020/skeleton-loader/skeleton-loader.component.mjs +3 -3
- package/esm2020/smart-filters/common/model/operator.mjs +11 -4
- package/esm2020/smart-filters/common/model/type.mjs +1 -1
- package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +3 -3
- package/esm2020/smart-filters/text-filter/text-filter.component.mjs +3 -3
- package/esm2020/textbox/textbox.component.mjs +26 -6
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs +7 -10
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs +22 -21
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs +8 -2
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs +25 -13
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +8 -4
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +81 -33
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +7 -2
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +119 -70
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +16 -16
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +9 -2
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs +2 -4
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +5 -3
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs +3 -3
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +14 -7
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +26 -5
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.mjs +547 -532
- package/fesm2015/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs +7 -10
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs +22 -21
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs +8 -2
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs +25 -13
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +8 -4
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs +81 -33
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +6 -2
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +115 -69
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs +15 -15
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs +9 -2
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs +2 -4
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +4 -3
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs +3 -3
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs +14 -7
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +25 -5
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib.mjs +544 -529
- package/fesm2020/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/form/internal-carusel.component.d.ts +1 -0
- package/form/internal-menu.component.d.ts +1 -2
- package/link/link.component.d.ts +3 -1
- package/list/list.component.d.ts +1 -1
- package/list/list.model.d.ts +1 -2
- package/menu/menu.component.d.ts +2 -1
- package/menu/menu.model.d.ts +1 -0
- package/package.json +1 -1
- package/profile-data-views-list/profile-data-view/profile-data-view.component.d.ts +3 -3
- package/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.d.ts +5 -4
- package/profile-data-views-list/profile-data-views-list.component.d.ts +13 -10
- package/profile-data-views-list/profile-data-views-list.model.d.ts +8 -0
- package/query-builder/common/model/legacy.d.ts +2 -0
- package/query-builder/common/model/operator.d.ts +11 -1
- package/query-builder/common/services/query-structure.service.d.ts +1 -0
- package/query-builder/query-builder.module.d.ts +7 -3
- package/remote-loader/remote-loader.service.d.ts +1 -1
- package/rich-html-textarea/rich-html-textarea.component.d.ts +3 -1
- package/rich-html-textarea/rich-html-textarea.component.theme.scss +4 -2
- package/select-panel/select-panel.component.d.ts +1 -2
- package/signature/signature-dialog.component.d.ts +1 -1
- package/skeleton-loader/skeleton-loader.component.d.ts +3 -3
- package/smart-filters/boolean-filter/boolean-filter.component.d.ts +1 -0
- package/smart-filters/common/model/operator.d.ts +1 -0
- package/smart-filters/common/model/type.d.ts +1 -1
- package/smart-filters/date-filter/date-filter.component.d.ts +1 -0
- package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +1 -0
- package/smart-filters/number-filter/number-filter.component.d.ts +1 -0
- package/smart-filters/text-filter/text-filter.component.d.ts +1 -0
- package/src/assets/i18n/de.ngx-lib.json +4 -1
- package/src/assets/i18n/en.ngx-lib.json +7 -1
- package/src/core/style/abstracts/mixins.scss +73 -11
- package/src/core/style/abstracts/variables.scss +1 -1
- package/src/core/style/base/base.scss +5 -3
- package/src/core/style/base/typography.scss +2 -1
- package/src/core/style/components/button.scss +11 -0
- package/src/core/style/components/general.scss +2 -4
- package/textbox/textbox.component.d.ts +2 -0
- package/theming.scss +5 -1
- package/src/assets/images/sail-away.jpg +0 -0
- package/src/core/style/abstracts/AbstractsIntro.stories.mdx +0 -7
|
@@ -1,41 +1,50 @@
|
|
|
1
1
|
import { PepSmartFilterOperators, PepSmartFilterAdditionalOperators, PepSmartFilterVariableOperators } from '@pepperi-addons/ngx-lib/smart-filters';
|
|
2
2
|
const Equals = {
|
|
3
3
|
legacy: 'IsEqual',
|
|
4
|
+
valueType: 'Static',
|
|
4
5
|
smartFilter: PepSmartFilterOperators.Equals,
|
|
5
6
|
type: ['boolean', 'int', 'text', 'real']
|
|
6
7
|
};
|
|
7
8
|
const EqualsVariable = {
|
|
8
|
-
legacy: '
|
|
9
|
+
legacy: 'IsEqual',
|
|
10
|
+
valueType: 'Dynamic',
|
|
9
11
|
smartFilter: PepSmartFilterVariableOperators.EqualsToVariable,
|
|
10
|
-
type: ['boolean', 'int', 'text',
|
|
12
|
+
type: ['boolean', 'int', 'text'],
|
|
13
|
+
fieldType: ['String', 'Bool', 'Integer']
|
|
11
14
|
};
|
|
12
15
|
const NotEqual = {
|
|
13
16
|
legacy: 'IsNotEqual',
|
|
17
|
+
valueType: 'Static',
|
|
14
18
|
smartFilter: PepSmartFilterOperators.NotEqual,
|
|
15
19
|
type: null
|
|
16
20
|
};
|
|
17
21
|
const NotEqualsVariable = {
|
|
18
|
-
legacy: '
|
|
22
|
+
legacy: 'IsNotEqual',
|
|
23
|
+
valueType: 'Dynamic',
|
|
19
24
|
smartFilter: PepSmartFilterVariableOperators.NotEqualsToVariable,
|
|
20
|
-
type: ['boolean'
|
|
25
|
+
type: ['boolean']
|
|
21
26
|
};
|
|
22
27
|
const LessThan = {
|
|
23
28
|
legacy: '<',
|
|
29
|
+
valueType: 'Static',
|
|
24
30
|
smartFilter: PepSmartFilterOperators.LessThan,
|
|
25
31
|
type: null
|
|
26
32
|
};
|
|
27
|
-
const
|
|
28
|
-
legacy: '
|
|
33
|
+
const LessThanVariable = {
|
|
34
|
+
legacy: '<',
|
|
35
|
+
valueType: 'Dynamic',
|
|
29
36
|
smartFilter: PepSmartFilterVariableOperators.LessThanVariable,
|
|
30
37
|
type: null
|
|
31
38
|
};
|
|
32
39
|
const GreaterThan = {
|
|
33
40
|
legacy: '>',
|
|
41
|
+
valueType: 'Static',
|
|
34
42
|
smartFilter: PepSmartFilterOperators.GreaterThan,
|
|
35
43
|
type: null
|
|
36
44
|
};
|
|
37
|
-
const
|
|
38
|
-
legacy: '
|
|
45
|
+
const GreaterThanVariable = {
|
|
46
|
+
legacy: '>',
|
|
47
|
+
valueType: 'Dynamic',
|
|
39
48
|
smartFilter: PepSmartFilterVariableOperators.GreaterThanVariable,
|
|
40
49
|
type: null
|
|
41
50
|
};
|
|
@@ -64,159 +73,142 @@ const LessThanOrEquals: IPepQueryBuilderOperator = {
|
|
|
64
73
|
}; */
|
|
65
74
|
const NumberRange = {
|
|
66
75
|
legacy: 'Between',
|
|
76
|
+
valueType: 'Static',
|
|
67
77
|
smartFilter: PepSmartFilterOperators.NumberRange,
|
|
68
78
|
type: ['int']
|
|
69
79
|
};
|
|
70
80
|
const Contains = {
|
|
71
81
|
legacy: 'Contains',
|
|
82
|
+
valueType: 'Static',
|
|
72
83
|
smartFilter: PepSmartFilterOperators.Contains,
|
|
73
84
|
type: null
|
|
74
85
|
};
|
|
75
86
|
const BeginsWith = {
|
|
76
|
-
legacy: '
|
|
87
|
+
legacy: 'StartWith',
|
|
88
|
+
valueType: 'Static',
|
|
77
89
|
smartFilter: PepSmartFilterOperators.BeginsWith,
|
|
78
90
|
type: null
|
|
79
91
|
};
|
|
80
92
|
const EndsWith = {
|
|
81
|
-
legacy: '
|
|
93
|
+
legacy: 'EndWith',
|
|
94
|
+
valueType: 'Static',
|
|
82
95
|
smartFilter: PepSmartFilterOperators.EndsWith,
|
|
83
96
|
type: null
|
|
84
97
|
};
|
|
85
|
-
/*
|
|
86
|
-
const BeginsWith: IPepQueryBuilderOperator = {
|
|
87
|
-
legacy: {
|
|
88
|
-
operator: 'BeginsWith',
|
|
89
|
-
type: 'String'
|
|
90
|
-
},
|
|
91
|
-
smartFilter: {
|
|
92
|
-
item: PepSmartFilterOperators.BeginsWith,
|
|
93
|
-
type: 'text'
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
const EndsWith: IPepQueryBuilderOperator = {
|
|
98
|
-
legacy: {
|
|
99
|
-
operator: 'EndsWith',
|
|
100
|
-
type: 'String'
|
|
101
|
-
},
|
|
102
|
-
smartFilter: {
|
|
103
|
-
item: PepSmartFilterOperators.EndsWith,
|
|
104
|
-
type: 'text'
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
const Before: IPepQueryBuilderOperator = {
|
|
109
|
-
legacy: {
|
|
110
|
-
operator: 'Before',
|
|
111
|
-
type: 'Date'
|
|
112
|
-
},
|
|
113
|
-
smartFilter: {
|
|
114
|
-
item: PepSmartFilterOperators.Before,
|
|
115
|
-
type: 'date'
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
|
|
119
|
-
const After: IPepQueryBuilderOperator = {
|
|
120
|
-
legacy: {
|
|
121
|
-
operator: 'After',
|
|
122
|
-
type: 'Date'
|
|
123
|
-
},
|
|
124
|
-
smartFilter: {
|
|
125
|
-
item: PepSmartFilterOperators.After,
|
|
126
|
-
type: 'date'
|
|
127
|
-
}
|
|
128
|
-
}; */
|
|
129
98
|
const InTheLast = {
|
|
130
99
|
legacy: 'InTheLast',
|
|
100
|
+
valueType: 'Static',
|
|
131
101
|
smartFilter: PepSmartFilterOperators.InTheLast,
|
|
132
102
|
type: null
|
|
133
103
|
};
|
|
134
104
|
const InTheLastCalendar = {
|
|
135
105
|
legacy: 'InTheLastCalendar',
|
|
106
|
+
valueType: 'Static',
|
|
136
107
|
smartFilter: PepSmartFilterAdditionalOperators.InTheLastCalendar,
|
|
137
108
|
type: null
|
|
138
109
|
};
|
|
139
110
|
/*
|
|
140
111
|
const InTheLastVariable: IPepQueryBuilderOperator = {
|
|
141
|
-
legacy: '
|
|
112
|
+
legacy: 'InTheLast',
|
|
113
|
+
valueType: 'Dynamic',
|
|
142
114
|
smartFilter: PepSmartFilterVariableOperators.InTheLastVariable,
|
|
143
115
|
type: null
|
|
144
116
|
} */
|
|
145
117
|
const NotInTheLast = {
|
|
146
118
|
legacy: 'NotInTheLast',
|
|
119
|
+
valueType: 'Static',
|
|
147
120
|
smartFilter: PepSmartFilterOperators.NotInTheLast,
|
|
148
121
|
type: null
|
|
149
122
|
};
|
|
150
123
|
const NotInTheLastCalendar = {
|
|
151
124
|
legacy: 'NotInTheLastCalendar',
|
|
125
|
+
valueType: 'Static',
|
|
152
126
|
smartFilter: PepSmartFilterAdditionalOperators.NotInTheLastCalendar,
|
|
153
127
|
type: null
|
|
154
128
|
};
|
|
155
129
|
const Today = {
|
|
156
130
|
legacy: 'Today',
|
|
131
|
+
valueType: 'Static',
|
|
157
132
|
smartFilter: PepSmartFilterOperators.Today,
|
|
158
133
|
type: null
|
|
159
134
|
};
|
|
160
135
|
const ThisWeek = {
|
|
161
136
|
legacy: 'ThisWeek',
|
|
137
|
+
valueType: 'Static',
|
|
162
138
|
smartFilter: PepSmartFilterOperators.ThisWeek,
|
|
163
139
|
type: null
|
|
164
140
|
};
|
|
165
141
|
const ThisMonth = {
|
|
166
142
|
legacy: 'ThisMonth',
|
|
143
|
+
valueType: 'Static',
|
|
167
144
|
smartFilter: PepSmartFilterOperators.ThisMonth,
|
|
168
145
|
type: null
|
|
169
146
|
};
|
|
170
147
|
const DateRange = {
|
|
171
148
|
legacy: 'Between',
|
|
149
|
+
valueType: 'Static',
|
|
172
150
|
smartFilter: PepSmartFilterOperators.DateRange,
|
|
173
151
|
type: ['date-time']
|
|
174
152
|
};
|
|
175
153
|
const dateRangeVariable = {
|
|
176
|
-
legacy: '
|
|
154
|
+
legacy: 'Between',
|
|
155
|
+
valueType: 'Dynamic',
|
|
177
156
|
smartFilter: PepSmartFilterVariableOperators.DateRangeVariable,
|
|
178
157
|
type: ['date-time']
|
|
179
158
|
};
|
|
180
159
|
const DueIn = {
|
|
181
160
|
legacy: 'DueIn',
|
|
161
|
+
valueType: 'Static',
|
|
182
162
|
smartFilter: PepSmartFilterOperators.DueIn,
|
|
183
163
|
type: null
|
|
184
164
|
};
|
|
185
165
|
const NotDueIn = {
|
|
186
166
|
legacy: 'NotDueIn',
|
|
167
|
+
valueType: 'Static',
|
|
187
168
|
smartFilter: PepSmartFilterOperators.NotDueIn,
|
|
188
169
|
type: null
|
|
189
170
|
};
|
|
190
171
|
const On = {
|
|
191
172
|
legacy: 'On',
|
|
173
|
+
valueType: 'Static',
|
|
192
174
|
smartFilter: PepSmartFilterOperators.On,
|
|
193
175
|
type: null
|
|
194
176
|
};
|
|
195
177
|
const IsEmpty = {
|
|
196
178
|
legacy: 'IsEmpty',
|
|
179
|
+
valueType: 'Static',
|
|
197
180
|
smartFilter: PepSmartFilterOperators.IsEmpty,
|
|
198
181
|
type: null
|
|
199
182
|
};
|
|
200
183
|
const IsNotEmpty = {
|
|
201
184
|
legacy: 'IsNotEmpty',
|
|
185
|
+
valueType: 'Static',
|
|
202
186
|
smartFilter: PepSmartFilterOperators.IsNotEmpty,
|
|
203
187
|
type: null
|
|
204
188
|
};
|
|
205
189
|
const In = {
|
|
206
190
|
legacy: 'IsEqual',
|
|
191
|
+
valueType: 'Static',
|
|
207
192
|
smartFilter: PepSmartFilterOperators.In,
|
|
208
193
|
type: ['multi-select']
|
|
209
194
|
};
|
|
195
|
+
const InVariable = {
|
|
196
|
+
legacy: 'IsEqual',
|
|
197
|
+
valueType: 'Dynamic',
|
|
198
|
+
smartFilter: PepSmartFilterVariableOperators.InVariable,
|
|
199
|
+
type: ['multi-select', 'text'],
|
|
200
|
+
fieldType: ['MultipleStringValues']
|
|
201
|
+
};
|
|
210
202
|
const PepQueryBuilderOperators = [
|
|
211
203
|
Equals,
|
|
212
204
|
EqualsVariable,
|
|
213
205
|
NotEqual,
|
|
214
206
|
NotEqualsVariable,
|
|
215
207
|
LessThan,
|
|
216
|
-
|
|
208
|
+
LessThanVariable,
|
|
217
209
|
// LessThanOrEquals,
|
|
218
210
|
GreaterThan,
|
|
219
|
-
|
|
211
|
+
GreaterThanVariable,
|
|
220
212
|
// GreaterThanOrEquals,
|
|
221
213
|
NumberRange,
|
|
222
214
|
Contains,
|
|
@@ -239,7 +231,8 @@ const PepQueryBuilderOperators = [
|
|
|
239
231
|
On,
|
|
240
232
|
IsEmpty,
|
|
241
233
|
IsNotEmpty,
|
|
242
|
-
In
|
|
234
|
+
In,
|
|
235
|
+
InVariable
|
|
243
236
|
];
|
|
244
237
|
/**
|
|
245
238
|
* gets a smart filter operator item
|
|
@@ -247,9 +240,15 @@ const PepQueryBuilderOperators = [
|
|
|
247
240
|
* @param type smart filter's type
|
|
248
241
|
* @returns smart filter operator item
|
|
249
242
|
*/
|
|
250
|
-
export function getSmartFilterOperator(operator, type) {
|
|
243
|
+
export function getSmartFilterOperator(operator, type, valueType, fieldType = null) {
|
|
251
244
|
const smartFilterOperator = PepQueryBuilderOperators.find(item => item.legacy === operator &&
|
|
252
|
-
|
|
245
|
+
item.valueType === valueType &&
|
|
246
|
+
(item.type === null || item.type.includes(type)) &&
|
|
247
|
+
(fieldType == null || item.fieldType === undefined || item.fieldType?.includes(fieldType)));
|
|
248
|
+
/*
|
|
249
|
+
FieldType: (current[key].smart.operator.id === 'inv' &&
|
|
250
|
+
current[key].smart.fieldType === 'text') ? 'MultipleStringValues' : current[key].query.fieldType,
|
|
251
|
+
*/
|
|
253
252
|
return smartFilterOperator ? smartFilterOperator.smartFilter : null;
|
|
254
253
|
}
|
|
255
254
|
/**
|
|
@@ -263,4 +262,15 @@ export function getLegacyOperator(operator, type) {
|
|
|
263
262
|
(item.type === null || item.type.includes(type)));
|
|
264
263
|
return legacyOperator ? legacyOperator.legacy : null;
|
|
265
264
|
}
|
|
266
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL21vZGVsL29wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUVsQyxNQUFNLHVDQUF1QyxDQUFDO0FBUy9DLE1BQU0sTUFBTSxHQUE2QjtJQUNyQyxNQUFNLEVBQUUsU0FBUztJQUNqQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtJQUMzQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDM0MsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUE2QjtJQUM3QyxNQUFNLEVBQUUsaUJBQWlCO0lBQ3pCLFdBQVcsRUFBRSwrQkFBK0IsQ0FBQyxnQkFBZ0I7SUFDN0QsSUFBSSxFQUFFLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsY0FBYyxDQUFDO0NBQ25ELENBQUM7QUFFRixNQUFNLFFBQVEsR0FBNkI7SUFDdkMsTUFBTSxFQUFFLFlBQVk7SUFDcEIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFFBQVE7SUFDN0MsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBNkI7SUFDaEQsTUFBTSxFQUFFLG9CQUFvQjtJQUM1QixXQUFXLEVBQUUsK0JBQStCLENBQUMsbUJBQW1CO0lBQ2hFLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUM7Q0FDcEMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUE2QjtJQUN2QyxNQUFNLEVBQUUsR0FBRztJQUNYLFdBQVcsRUFBRSx1QkFBdUIsQ0FBQyxRQUFRO0lBQzdDLElBQUksRUFBRSxJQUFJO0NBQ2IsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUE2QjtJQUM5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QWlCO0lBQ2pCLFlBQVk7SUFDWixvQkFBb0I7SUFDcEIsS0FBSztJQUNMLFFBQVE7SUFDUixTQUFTO0lBQ1QsU0FBUztJQUNULGlCQUFpQjtJQUNqQixLQUFLO0lBQ0wsUUFBUTtJQUNSLEVBQUU7SUFDRixPQUFPO0lBQ1AsVUFBVTtJQUNWLEVBQUU7Q0FDTCxDQUFBO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBZ0IsRUFBRSxJQUF3QjtJQUM3RSxNQUFNLG1CQUFtQixHQUFHLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUM3RCxJQUFJLENBQUMsTUFBTSxLQUFLLFFBQVE7UUFDeEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNuRCxDQUFDO0lBQ0YsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDeEUsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFFBQWlDLEVBQUUsSUFBd0I7SUFDekYsTUFBTSxjQUFjLEdBQUcsd0JBQXdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ3hELElBQUksQ0FBQyxXQUFXLEtBQUssUUFBUTtRQUM3QixDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ25ELENBQUM7SUFDRixPQUFPLGNBQWMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLFxuICAgIFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycyxcbiAgICBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLFxuICAgIElQZXBTbWFydEZpbHRlck9wZXJhdG9yXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xuaW1wb3J0IHsgUGVwU21hcnRGaWx0ZXJUeXBlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvc21hcnQtZmlsdGVycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yIHtcbiAgICBsZWdhY3k6IHN0cmluZywgLy9sZWdhY3kgT3BlcmF0b3IgICAgXG4gICAgc21hcnRGaWx0ZXI6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yLCAvL3NtYXJ0IGZpbHRlciBvcGVyYXRvciAgICBcbiAgICB0eXBlOiBQZXBTbWFydEZpbHRlclR5cGVbXSB8IG51bGwgLy9zbWFydCBmaWx0ZXIgdHlwZVxufVxuXG5jb25zdCBFcXVhbHM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VxdWFsJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRXF1YWxzLFxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdpbnQnLCAndGV4dCcsICdyZWFsJ11cbn07XG5cbmNvbnN0IEVxdWFsc1ZhcmlhYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNFcXVhbFZhcmlhYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5FcXVhbHNUb1ZhcmlhYmxlLFxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdpbnQnLCAndGV4dCcsICdtdWx0aS1zZWxlY3QnXVxufTtcblxuY29uc3QgTm90RXF1YWw6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc05vdEVxdWFsJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RXF1YWwsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgTm90RXF1YWxzVmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc05vdEVxdWFsVmFyaWFibGUnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLk5vdEVxdWFsc1RvVmFyaWFibGUsXG4gICAgdHlwZTogWydib29sZWFuJywgJ211bHRpLXNlbGVjdCddXG59O1xuXG5jb25zdCBMZXNzVGhhbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJzwnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5MZXNzVGhhbixcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBMZXNzVGhhblZhcmlibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdMZXNzVGhhblZhcmlibGUnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLkxlc3NUaGFuVmFyaWFibGUsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgR3JlYXRlclRoYW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICc+JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuR3JlYXRlclRoYW4sXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgR3JlYXRlclRoYW5WYXJpYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnR3JlYXRlclRoYW5WYXJpYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5HcmVhdGVyVGhhblZhcmlhYmxlLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbi8qXG5jb25zdCBHcmVhdGVyVGhhbk9yRXF1YWxzOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiB7XG4gICAgICAgIG9wZXJhdG9yOiAnPj0nLFxuICAgICAgICB0eXBlOiAnSW50ZWdlcidcbiAgICB9LFxuICAgIHNtYXJ0RmlsdGVyOiB7XG4gICAgICAgIGl0ZW06IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkdyZWF0ZXJUaGFuT3JFcXVhbHMsXG4gICAgICAgIHR5cGU6ICdpbnQnXG4gICAgfVxufTtcblxuY29uc3QgTGVzc1RoYW5PckVxdWFsczogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJzw9JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfSxcbiAgICBzbWFydEZpbHRlcjoge1xuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5MZXNzVGhhbk9yRXF1YWxzLFxuICAgICAgICB0eXBlOiAnaW50JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfVxufTsgKi9cblxuY29uc3QgTnVtYmVyUmFuZ2U6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZXR3ZWVuJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTnVtYmVyUmFuZ2UsXG4gICAgdHlwZTogWydpbnQnXVxufTtcblxuY29uc3QgQ29udGFpbnM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdDb250YWlucycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkNvbnRhaW5zLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEJlZ2luc1dpdGg6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZWdpbnNXaXRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQmVnaW5zV2l0aCxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBFbmRzV2l0aDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0VuZHNXaXRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRW5kc1dpdGgsXG4gICAgdHlwZTogbnVsbFxufTtcblxuLypcbmNvbnN0IEJlZ2luc1dpdGg6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6IHtcbiAgICAgICAgb3BlcmF0b3I6ICdCZWdpbnNXaXRoJyxcbiAgICAgICAgdHlwZTogJ1N0cmluZydcbiAgICB9LFxuICAgIHNtYXJ0RmlsdGVyOiB7XG4gICAgICAgIGl0ZW06IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkJlZ2luc1dpdGgsXG4gICAgICAgIHR5cGU6ICd0ZXh0J1xuICAgIH1cbn07XG5cbmNvbnN0IEVuZHNXaXRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiB7XG4gICAgICAgIG9wZXJhdG9yOiAnRW5kc1dpdGgnLFxuICAgICAgICB0eXBlOiAnU3RyaW5nJ1xuICAgIH0sXG4gICAgc21hcnRGaWx0ZXI6IHtcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRW5kc1dpdGgsXG4gICAgICAgIHR5cGU6ICd0ZXh0J1xuICAgIH1cbn07XG5cbmNvbnN0IEJlZm9yZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJ0JlZm9yZScsXG4gICAgICAgIHR5cGU6ICdEYXRlJ1xuICAgIH0sXG4gICAgc21hcnRGaWx0ZXI6IHtcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQmVmb3JlLFxuICAgICAgICB0eXBlOiAnZGF0ZSdcbiAgICB9XG59O1xuXG5jb25zdCBBZnRlcjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJ0FmdGVyJyxcbiAgICAgICAgdHlwZTogJ0RhdGUnXG4gICAgfSxcbiAgICBzbWFydEZpbHRlcjoge1xuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5BZnRlcixcbiAgICAgICAgdHlwZTogJ2RhdGUnXG4gICAgfVxufTsgKi9cblxuY29uc3QgSW5UaGVMYXN0OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSW5UaGVMYXN0JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW5UaGVMYXN0LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEluVGhlTGFzdENhbGVuZGFyOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSW5UaGVMYXN0Q2FsZW5kYXInLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlckFkZGl0aW9uYWxPcGVyYXRvcnMuSW5UaGVMYXN0Q2FsZW5kYXIsXG4gICAgdHlwZTogbnVsbFxufVxuXG4vKlxuY29uc3QgSW5UaGVMYXN0VmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJblRoZUxhc3RWYXJpYWJsZScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuSW5UaGVMYXN0VmFyaWFibGUsXG4gICAgdHlwZTogbnVsbFxufSAqL1xuXG5jb25zdCBOb3RJblRoZUxhc3Q6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdOb3RJblRoZUxhc3QnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ob3RJblRoZUxhc3QsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgTm90SW5UaGVMYXN0Q2FsZW5kYXI6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdOb3RJblRoZUxhc3RDYWxlbmRhcicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycy5Ob3RJblRoZUxhc3RDYWxlbmRhcixcbiAgICB0eXBlOiBudWxsXG59XG5cbmNvbnN0IFRvZGF5OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVG9kYXknLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ub2RheSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBUaGlzV2VlazogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ1RoaXNXZWVrJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuVGhpc1dlZWssXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgVGhpc01vbnRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVGhpc01vbnRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuVGhpc01vbnRoLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IERhdGVSYW5nZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0JldHdlZW4nLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5EYXRlUmFuZ2UsXG4gICAgdHlwZTogWydkYXRlLXRpbWUnXVxufTtcblxuY29uc3QgZGF0ZVJhbmdlVmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZXR3ZWVuVmFyaWFibGUnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLkRhdGVSYW5nZVZhcmlhYmxlLFxuICAgIHR5cGU6IFsnZGF0ZS10aW1lJ11cbn07XG5cbmNvbnN0IER1ZUluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnRHVlSW4nLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5EdWVJbixcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBOb3REdWVJbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ05vdER1ZUluJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RHVlSW4sXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgT246IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdPbicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk9uLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IElzRW1wdHk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VtcHR5JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSXNFbXB0eSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBJc05vdEVtcHR5OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNOb3RFbXB0eScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLklzTm90RW1wdHksXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgSW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VxdWFsJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW4sXG4gICAgdHlwZTogWydtdWx0aS1zZWxlY3QnXVxufTtcblxuXG5jb25zdCBQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvcnMgPSBbXG4gICAgRXF1YWxzLFxuICAgIEVxdWFsc1ZhcmlhYmxlLFxuICAgIE5vdEVxdWFsLFxuICAgIE5vdEVxdWFsc1ZhcmlhYmxlLFxuICAgIExlc3NUaGFuLFxuICAgIExlc3NUaGFuVmFyaWJsZSxcbiAgICAvLyAgIExlc3NUaGFuT3JFcXVhbHMsXG4gICAgR3JlYXRlclRoYW4sXG4gICAgR3JlYXRlclRoYW5WYXJpYmxlLFxuICAgIC8vICAgR3JlYXRlclRoYW5PckVxdWFscyxcbiAgICBOdW1iZXJSYW5nZSxcbiAgICBDb250YWlucyxcbiAgICBCZWdpbnNXaXRoLFxuICAgIEVuZHNXaXRoLFxuICAgIC8vICAgQWZ0ZXIsXG4gICAgLy8gICBCZWZvcmUsXG4gICAgSW5UaGVMYXN0LFxuICAgIC8vIEluVGhlTGFzdFZhcmlhYmxlLFxuICAgIEluVGhlTGFzdENhbGVuZGFyLFxuICAgIE5vdEluVGhlTGFzdCxcbiAgICBOb3RJblRoZUxhc3RDYWxlbmRhcixcbiAgICBUb2RheSxcbiAgICBUaGlzV2VlayxcbiAgICBUaGlzTW9udGgsXG4gICAgRGF0ZVJhbmdlLFxuICAgIGRhdGVSYW5nZVZhcmlhYmxlLFxuICAgIER1ZUluLFxuICAgIE5vdER1ZUluLFxuICAgIE9uLFxuICAgIElzRW1wdHksXG4gICAgSXNOb3RFbXB0eSxcbiAgICBJblxuXVxuXG4vKipcbiAqIGdldHMgYSBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICogQHBhcmFtIG9wZXJhdG9yIGxlZ2FjeSBvcGVyYXRvclxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxuICogQHJldHVybnMgc21hcnQgZmlsdGVyIG9wZXJhdG9yIGl0ZW1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNtYXJ0RmlsdGVyT3BlcmF0b3Iob3BlcmF0b3I6IHN0cmluZywgdHlwZTogUGVwU21hcnRGaWx0ZXJUeXBlKTogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IgfCBudWxsIHtcbiAgICBjb25zdCBzbWFydEZpbHRlck9wZXJhdG9yID0gUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzLmZpbmQoaXRlbSA9PlxuICAgICAgICBpdGVtLmxlZ2FjeSA9PT0gb3BlcmF0b3IgJiZcbiAgICAgICAgKGl0ZW0udHlwZSA9PT0gbnVsbCB8fCBpdGVtLnR5cGUuaW5jbHVkZXModHlwZSkpXG4gICAgKTtcbiAgICByZXR1cm4gc21hcnRGaWx0ZXJPcGVyYXRvciA/IHNtYXJ0RmlsdGVyT3BlcmF0b3Iuc21hcnRGaWx0ZXIgOiBudWxsO1xufVxuXG4vKipcbiAqIGdldHMgYSBsZWdhY3kgb3BlcmF0b3IgdmFsdWVcbiAqIEBwYXJhbSBvcGVyYXRvciBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxuICogQHJldHVybnMgbGVnYWN5IG9wZXJhdG9yIHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRMZWdhY3lPcGVyYXRvcihvcGVyYXRvcjogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsIHR5cGU6IFBlcFNtYXJ0RmlsdGVyVHlwZSk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IGxlZ2FjeU9wZXJhdG9yID0gUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzLmZpbmQoaXRlbSA9PlxuICAgICAgICBpdGVtLnNtYXJ0RmlsdGVyID09PSBvcGVyYXRvciAmJlxuICAgICAgICAoaXRlbS50eXBlID09PSBudWxsIHx8IGl0ZW0udHlwZS5pbmNsdWRlcyh0eXBlKSlcbiAgICApO1xuICAgIHJldHVybiBsZWdhY3lPcGVyYXRvciA/IGxlZ2FjeU9wZXJhdG9yLmxlZ2FjeSA6IG51bGw7XG59XG4iXX0=
|
|
265
|
+
/**
|
|
266
|
+
* gets a value type of the operator value
|
|
267
|
+
* @param operator smart filter operator item
|
|
268
|
+
* @param type smart filter's type
|
|
269
|
+
* @returns value type operator value
|
|
270
|
+
*/
|
|
271
|
+
export function getValueTypeOperator(operator, type) {
|
|
272
|
+
const valueType = PepQueryBuilderOperators.find(item => item.smartFilter === operator &&
|
|
273
|
+
(item.type === null || item.type.includes(type)));
|
|
274
|
+
return valueType ? valueType.valueType : 'Static';
|
|
275
|
+
}
|
|
276
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL21vZGVsL29wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUVsQyxNQUFNLHVDQUF1QyxDQUFDO0FBWS9DLE1BQU0sTUFBTSxHQUE2QjtJQUNyQyxNQUFNLEVBQUUsU0FBUztJQUNqQixTQUFTLEVBQUUsUUFBUTtJQUNuQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtJQUMzQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDM0MsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUE2QjtJQUM3QyxNQUFNLEVBQUUsU0FBUztJQUNqQixTQUFTLEVBQUUsU0FBUztJQUNwQixXQUFXLEVBQUUsK0JBQStCLENBQUMsZ0JBQWdCO0lBQzdELElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDO0lBQ2hDLFNBQVMsRUFBRSxDQUFDLFFBQVEsRUFBQyxNQUFNLEVBQUMsU0FBUyxDQUFDO0NBQ3pDLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBNkI7SUFDdkMsTUFBTSxFQUFFLFlBQVk7SUFDcEIsU0FBUyxFQUFFLFFBQVE7SUFDbkIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFFBQVE7SUFDN0MsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBNkI7SUFDaEQsTUFBTSxFQUFFLFlBQVk7SUFDcEIsU0FBUyxFQUFFLFNBQVM7SUFDcEIsV0FBVyxFQUFFLCtCQUErQixDQUFDLG1CQUFtQjtJQUNoRSxJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUM7Q0FDcEIsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUE2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d0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDbkQsSUFBSSxDQUFDLFdBQVcsS0FBSyxRQUFRO1FBQzdCLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDbkQsQ0FBQztJQUNGLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7QUFDdEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMsXG4gICAgUGVwU21hcnRGaWx0ZXJBZGRpdGlvbmFsT3BlcmF0b3JzLFxuICAgIFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMsXG4gICAgSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3Jcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvc21hcnQtZmlsdGVycyc7XG5pbXBvcnQgeyBQZXBTbWFydEZpbHRlclR5cGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9zbWFydC1maWx0ZXJzJztcblxuZXhwb3J0IHR5cGUgSXBlcFF1ZXJ5QnVpbGRlclZhbHVlVHlwZSA9ICdTdGF0aWMnIHwgJ0R5bmFtaWMnO1xuZXhwb3J0IGludGVyZmFjZSBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3Ige1xuICAgIGxlZ2FjeTogc3RyaW5nLCAvL2xlZ2FjeSBPcGVyYXRvciAgICBcbiAgICB2YWx1ZVR5cGU6IElwZXBRdWVyeUJ1aWxkZXJWYWx1ZVR5cGUsXG4gICAgc21hcnRGaWx0ZXI6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yLCAvL3NtYXJ0IGZpbHRlciBvcGVyYXRvciAgICBcbiAgICB0eXBlOiBQZXBTbWFydEZpbHRlclR5cGVbXSB8IG51bGwsIC8vc21hcnQgZmlsdGVyIHR5cGVcbiAgICBmaWVsZFR5cGU/OiBBcnJheTxzdHJpbmc+IHwgbnVsbFxufVxuXG5jb25zdCBFcXVhbHM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VxdWFsJyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5FcXVhbHMsXG4gICAgdHlwZTogWydib29sZWFuJywgJ2ludCcsICd0ZXh0JywgJ3JlYWwnXVxufTtcblxuY29uc3QgRXF1YWxzVmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VxdWFsJyxcbiAgICB2YWx1ZVR5cGU6ICdEeW5hbWljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5FcXVhbHNUb1ZhcmlhYmxlLFxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdpbnQnLCAndGV4dCddLFxuICAgIGZpZWxkVHlwZTogWydTdHJpbmcnLCdCb29sJywnSW50ZWdlciddXG59O1xuXG5jb25zdCBOb3RFcXVhbDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0lzTm90RXF1YWwnLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk5vdEVxdWFsLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IE5vdEVxdWFsc1ZhcmlhYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNOb3RFcXVhbCcsXG4gICAgdmFsdWVUeXBlOiAnRHluYW1pYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuTm90RXF1YWxzVG9WYXJpYWJsZSxcbiAgICB0eXBlOiBbJ2Jvb2xlYW4nXVxufTtcblxuY29uc3QgTGVzc1RoYW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICc8JyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5MZXNzVGhhbixcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBMZXNzVGhhblZhcmlhYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnPCcsXG4gICAgdmFsdWVUeXBlOiAnRHluYW1pYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuTGVzc1RoYW5WYXJpYWJsZSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBHcmVhdGVyVGhhbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJz4nLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkdyZWF0ZXJUaGFuLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEdyZWF0ZXJUaGFuVmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICc+JyxcbiAgICB2YWx1ZVR5cGU6ICdEeW5hbWljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5HcmVhdGVyVGhhblZhcmlhYmxlLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbi8qXG5jb25zdCBHcmVhdGVyVGhhbk9yRXF1YWxzOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiB7XG4gICAgICAgIG9wZXJhdG9yOiAnPj0nLFxuICAgICAgICB0eXBlOiAnSW50ZWdlcidcbiAgICB9LFxuICAgIHNtYXJ0RmlsdGVyOiB7XG4gICAgICAgIGl0ZW06IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkdyZWF0ZXJUaGFuT3JFcXVhbHMsXG4gICAgICAgIHR5cGU6ICdpbnQnXG4gICAgfVxufTtcblxuY29uc3QgTGVzc1RoYW5PckVxdWFsczogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJzw9JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfSxcbiAgICBzbWFydEZpbHRlcjoge1xuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5MZXNzVGhhbk9yRXF1YWxzLFxuICAgICAgICB0eXBlOiAnaW50JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfVxufTsgKi9cblxuY29uc3QgTnVtYmVyUmFuZ2U6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZXR3ZWVuJyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5OdW1iZXJSYW5nZSxcbiAgICB0eXBlOiBbJ2ludCddXG59O1xuXG5jb25zdCBDb250YWluczogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0NvbnRhaW5zJyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Db250YWlucyxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBCZWdpbnNXaXRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnU3RhcnRXaXRoJyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5CZWdpbnNXaXRoLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEVuZHNXaXRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnRW5kV2l0aCcsXG4gICAgdmFsdWVUeXBlOiAnU3RhdGljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRW5kc1dpdGgsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgSW5UaGVMYXN0OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSW5UaGVMYXN0JyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5JblRoZUxhc3QsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgSW5UaGVMYXN0Q2FsZW5kYXI6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJblRoZUxhc3RDYWxlbmRhcicsXG4gICAgdmFsdWVUeXBlOiAnU3RhdGljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJBZGRpdGlvbmFsT3BlcmF0b3JzLkluVGhlTGFzdENhbGVuZGFyLFxuICAgIHR5cGU6IG51bGxcbn1cblxuLypcbmNvbnN0IEluVGhlTGFzdFZhcmlhYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSW5UaGVMYXN0JyxcbiAgICB2YWx1ZVR5cGU6ICdEeW5hbWljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5JblRoZUxhc3RWYXJpYWJsZSxcbiAgICB0eXBlOiBudWxsXG59ICovXG5cbmNvbnN0IE5vdEluVGhlTGFzdDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ05vdEluVGhlTGFzdCcsXG4gICAgdmFsdWVUeXBlOiAnU3RhdGljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90SW5UaGVMYXN0LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IE5vdEluVGhlTGFzdENhbGVuZGFyOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnTm90SW5UaGVMYXN0Q2FsZW5kYXInLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycy5Ob3RJblRoZUxhc3RDYWxlbmRhcixcbiAgICB0eXBlOiBudWxsXG59XG5cbmNvbnN0IFRvZGF5OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVG9kYXknLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLlRvZGF5LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IFRoaXNXZWVrOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVGhpc1dlZWsnLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLlRoaXNXZWVrLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IFRoaXNNb250aDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ1RoaXNNb250aCcsXG4gICAgdmFsdWVUeXBlOiAnU3RhdGljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuVGhpc01vbnRoLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IERhdGVSYW5nZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0JldHdlZW4nLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkRhdGVSYW5nZSxcbiAgICB0eXBlOiBbJ2RhdGUtdGltZSddXG59O1xuXG5jb25zdCBkYXRlUmFuZ2VWYXJpYWJsZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0JldHdlZW4nLFxuICAgIHZhbHVlVHlwZTogJ0R5bmFtaWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLkRhdGVSYW5nZVZhcmlhYmxlLFxuICAgIHR5cGU6IFsnZGF0ZS10aW1lJ11cbn07XG5cbmNvbnN0IER1ZUluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnRHVlSW4nLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkR1ZUluLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IE5vdER1ZUluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnTm90RHVlSW4nLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk5vdER1ZUluLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IE9uOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnT24nLFxuICAgIHZhbHVlVHlwZTogJ1N0YXRpYycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk9uLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IElzRW1wdHk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VtcHR5JyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Jc0VtcHR5LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IElzTm90RW1wdHk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc05vdEVtcHR5JyxcbiAgICB2YWx1ZVR5cGU6ICdTdGF0aWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Jc05vdEVtcHR5LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNFcXVhbCcsXG4gICAgdmFsdWVUeXBlOiAnU3RhdGljJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW4sXG4gICAgdHlwZTogWydtdWx0aS1zZWxlY3QnXVxufTtcblxuY29uc3QgSW5WYXJpYWJsZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0lzRXF1YWwnLFxuICAgIHZhbHVlVHlwZTogJ0R5bmFtaWMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLkluVmFyaWFibGUsXG4gICAgdHlwZTogWydtdWx0aS1zZWxlY3QnLCAndGV4dCddLFxuICAgIGZpZWxkVHlwZTogWydNdWx0aXBsZVN0cmluZ1ZhbHVlcyddXG59O1xuXG5cbmNvbnN0IFBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9ycyA9IFtcbiAgICBFcXVhbHMsXG4gICAgRXF1YWxzVmFyaWFibGUsXG4gICAgTm90RXF1YWwsXG4gICAgTm90RXF1YWxzVmFyaWFibGUsXG4gICAgTGVzc1RoYW4sXG4gICAgTGVzc1RoYW5WYXJpYWJsZSxcbiAgICAvLyAgIExlc3NUaGFuT3JFcXVhbHMsXG4gICAgR3JlYXRlclRoYW4sXG4gICAgR3JlYXRlclRoYW5WYXJpYWJsZSxcbiAgICAvLyAgIEdyZWF0ZXJUaGFuT3JFcXVhbHMsXG4gICAgTnVtYmVyUmFuZ2UsXG4gICAgQ29udGFpbnMsXG4gICAgQmVnaW5zV2l0aCxcbiAgICBFbmRzV2l0aCxcbiAgICAvLyAgIEFmdGVyLFxuICAgIC8vICAgQmVmb3JlLFxuICAgIEluVGhlTGFzdCxcbiAgICAvLyBJblRoZUxhc3RWYXJpYWJsZSxcbiAgICBJblRoZUxhc3RDYWxlbmRhcixcbiAgICBOb3RJblRoZUxhc3QsXG4gICAgTm90SW5UaGVMYXN0Q2FsZW5kYXIsXG4gICAgVG9kYXksXG4gICAgVGhpc1dlZWssXG4gICAgVGhpc01vbnRoLFxuICAgIERhdGVSYW5nZSxcbiAgICBkYXRlUmFuZ2VWYXJpYWJsZSxcbiAgICBEdWVJbixcbiAgICBOb3REdWVJbixcbiAgICBPbixcbiAgICBJc0VtcHR5LFxuICAgIElzTm90RW1wdHksXG4gICAgSW4sXG4gICAgSW5WYXJpYWJsZVxuXVxuXG4vKipcbiAqIGdldHMgYSBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICogQHBhcmFtIG9wZXJhdG9yIGxlZ2FjeSBvcGVyYXRvclxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxuICogQHJldHVybnMgc21hcnQgZmlsdGVyIG9wZXJhdG9yIGl0ZW1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNtYXJ0RmlsdGVyT3BlcmF0b3Iob3BlcmF0b3I6IHN0cmluZywgdHlwZTogUGVwU21hcnRGaWx0ZXJUeXBlLCB2YWx1ZVR5cGU6IElwZXBRdWVyeUJ1aWxkZXJWYWx1ZVR5cGUsIGZpZWxkVHlwZSA9IG51bGwpOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciB8IG51bGwge1xuICAgIGNvbnN0IHNtYXJ0RmlsdGVyT3BlcmF0b3IgPSBQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvcnMuZmluZChpdGVtID0+XG4gICAgICAgIGl0ZW0ubGVnYWN5ID09PSBvcGVyYXRvciAmJlxuICAgICAgICBpdGVtLnZhbHVlVHlwZSA9PT0gdmFsdWVUeXBlICYmXG4gICAgICAgIChpdGVtLnR5cGUgPT09IG51bGwgfHwgaXRlbS50eXBlLmluY2x1ZGVzKHR5cGUpKSAmJlxuICAgICAgICAoZmllbGRUeXBlID09IG51bGwgfHwgaXRlbS5maWVsZFR5cGUgPT09IHVuZGVmaW5lZCB8fCBpdGVtLmZpZWxkVHlwZT8uaW5jbHVkZXMoZmllbGRUeXBlKSlcbiAgICApO1xuICAgIC8qXG4gICAgIEZpZWxkVHlwZTogKGN1cnJlbnRba2V5XS5zbWFydC5vcGVyYXRvci5pZCA9PT0gJ2ludicgJiYgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRba2V5XS5zbWFydC5maWVsZFR5cGUgPT09ICd0ZXh0JykgPyAnTXVsdGlwbGVTdHJpbmdWYWx1ZXMnIDogY3VycmVudFtrZXldLnF1ZXJ5LmZpZWxkVHlwZSxcbiAgICAgKi9cbiAgICByZXR1cm4gc21hcnRGaWx0ZXJPcGVyYXRvciA/IHNtYXJ0RmlsdGVyT3BlcmF0b3Iuc21hcnRGaWx0ZXIgOiBudWxsO1xufVxuXG4vKipcbiAqIGdldHMgYSBsZWdhY3kgb3BlcmF0b3IgdmFsdWVcbiAqIEBwYXJhbSBvcGVyYXRvciBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxuICogQHJldHVybnMgbGVnYWN5IG9wZXJhdG9yIHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRMZWdhY3lPcGVyYXRvcihvcGVyYXRvcjogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsIHR5cGU6IFBlcFNtYXJ0RmlsdGVyVHlwZSk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IGxlZ2FjeU9wZXJhdG9yID0gUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzLmZpbmQoaXRlbSA9PlxuICAgICAgICBpdGVtLnNtYXJ0RmlsdGVyID09PSBvcGVyYXRvciAmJlxuICAgICAgICAoaXRlbS50eXBlID09PSBudWxsIHx8IGl0ZW0udHlwZS5pbmNsdWRlcyh0eXBlKSlcbiAgICApO1xuICAgIHJldHVybiBsZWdhY3lPcGVyYXRvciA/IGxlZ2FjeU9wZXJhdG9yLmxlZ2FjeSA6IG51bGw7XG59XG5cbi8qKlxuICogZ2V0cyBhIHZhbHVlIHR5cGUgb2YgdGhlIG9wZXJhdG9yIHZhbHVlXG4gKiBAcGFyYW0gb3BlcmF0b3Igc21hcnQgZmlsdGVyIG9wZXJhdG9yIGl0ZW1cbiAqIEBwYXJhbSB0eXBlIHNtYXJ0IGZpbHRlcidzIHR5cGVcbiAqIEByZXR1cm5zIHZhbHVlIHR5cGUgb3BlcmF0b3IgdmFsdWVcbiAqL1xuIGV4cG9ydCBmdW5jdGlvbiBnZXRWYWx1ZVR5cGVPcGVyYXRvcihvcGVyYXRvcjogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsIHR5cGU6IFBlcFNtYXJ0RmlsdGVyVHlwZSk6IElwZXBRdWVyeUJ1aWxkZXJWYWx1ZVR5cGUge1xuICAgIGNvbnN0IHZhbHVlVHlwZSA9IFBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9ycy5maW5kKGl0ZW0gPT5cbiAgICAgICAgaXRlbS5zbWFydEZpbHRlciA9PT0gb3BlcmF0b3IgJiZcbiAgICAgICAgKGl0ZW0udHlwZSA9PT0gbnVsbCB8fCBpdGVtLnR5cGUuaW5jbHVkZXModHlwZSkpXG4gICAgKTtcbiAgICByZXR1cm4gdmFsdWVUeXBlID8gdmFsdWVUeXBlLnZhbHVlVHlwZSA6ICdTdGF0aWMnO1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { getLegacyOperator } from '../model/operator';
|
|
2
|
+
import { getLegacyOperator, getValueTypeOperator } from '../model/operator';
|
|
3
3
|
import { getLegacyOperationUnit } from '../model/operator-unit';
|
|
4
4
|
import { PepSmartFilterOperators, PepSmartFilterAdditionalOperators } from '@pepperi-addons/ngx-lib/smart-filters';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -35,8 +35,10 @@ export class PepOutputQueryService {
|
|
|
35
35
|
section = this.addToSection(section, {
|
|
36
36
|
ExpressionId: (this._expressionIdCounter++).toString(),
|
|
37
37
|
ApiName: current[key].smart.fieldId,
|
|
38
|
-
FieldType: current[key].
|
|
38
|
+
FieldType: (current[key].smart.operator.id === 'inv' &&
|
|
39
|
+
current[key].smart.fieldType === 'text') ? 'MultipleStringValues' : current[key].query.fieldType,
|
|
39
40
|
Operation: getLegacyOperator(current[key].smart.operator, current[key].smart.fieldType),
|
|
41
|
+
ValueType: getValueTypeOperator(current[key].smart.operator, current[key].smart.fieldType),
|
|
40
42
|
Values: this.getItemValues(current[key].smart)
|
|
41
43
|
}, current.operator);
|
|
42
44
|
}
|
|
@@ -111,4 +113,4 @@ PepOutputQueryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0"
|
|
|
111
113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepOutputQueryService, decorators: [{
|
|
112
114
|
type: Injectable
|
|
113
115
|
}], ctorParameters: function () { return []; } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0cHV0LXF1ZXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL291dHB1dC1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQ0FBaUMsRUFDcEMsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFJL0MsTUFBTSxPQUFPLHFCQUFxQjtJQUk5QjtRQUNJLEVBQUU7SUFDTixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxPQUFZO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUVsQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0ssVUFBVTtRQUNkLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFdBQVcsQ0FBQyxPQUFZO1FBQzVCLElBQUksT0FBTyxHQUFxQyxJQUFJLENBQUM7UUFFckQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDL0IsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN0QixPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUU7b0JBQ2pDLFlBQVksRUFBRSxDQUFD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QUFLLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtvQkFDdkIsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN0QzthQUNKO1NBQ0o7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOztrSEFsSFEscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElQZXBRdWVyeVNlY3Rpb24sIElQZXBRdWVyeUl0ZW0gfSBmcm9tICcuLi9tb2RlbC9sZWdhY3knO1xuaW1wb3J0IHsgZ2V0TGVnYWN5T3BlcmF0b3IgfSBmcm9tICcuLi9tb2RlbC9vcGVyYXRvcic7XG5pbXBvcnQgeyBQZXBPcGVyYXRvclR5cGVzIH0gZnJvbSAnLi4vbW9kZWwvdHlwZSc7XG5pbXBvcnQgeyBnZXRMZWdhY3lPcGVyYXRpb25Vbml0IH0gZnJvbSAnLi4vbW9kZWwvb3BlcmF0b3ItdW5pdCc7XG5pbXBvcnQgeyBcbiAgICBQZXBTbWFydEZpbHRlck9wZXJhdG9ycyxcbiAgICBQZXBTbWFydEZpbHRlckFkZGl0aW9uYWxPcGVyYXRvcnNcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvc21hcnQtZmlsdGVycyc7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBlcE91dHB1dFF1ZXJ5U2VydmljZSB7XG4gICAgcHJpdmF0ZSBfY29tcGxleElkQ291bnRlcjogbnVtYmVyO1xuICAgIHByaXZhdGUgX2V4cHJlc3Npb25JZENvdW50ZXI6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICAvL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdlbmVyYXRlcyBhIGxlZ2FjeSBxdWVyeSBzdHJ1Y3R1cmUgXG4gICAgICogQHBhcmFtIGZpbHRlcnMgVUkgc21hcnQgZmlsdGVycyBzdHJ1Y3R1cmUgICAgIFxuICAgICAqIEByZXR1cm5zIGxlZ2FjeSBxdWVyeVxuICAgICAqL1xuICAgIGdlbmVyYXRlUXVlcnkoZmlsdGVyczogYW55KSB7XG4gICAgICAgIHRoaXMuaW5pdFBhcmFtcygpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnNlY3Rpb25XYWxrKGZpbHRlcnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGluaXQgcGFyYW1zXG4gICAgICovXG4gICAgcHJpdmF0ZSBpbml0UGFyYW1zKCkge1xuICAgICAgICB0aGlzLl9jb21wbGV4SWRDb3VudGVyID0gMTtcbiAgICAgICAgdGhpcy5fZXhwcmVzc2lvbklkQ291bnRlciA9IDE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYSByZWN1cnNpdmUgZnVuY3Rpb24gZHluYW1pY2FsbHkgYnVpbGRzIGxlZ2FjeSBxdWVyeSBzdHJ1Y3R1cmVcbiAgICAgKiBAcGFyYW0gY3VycmVudCBVSSBvYmplY3QgcmVwcmVzZW50cyBlaXRoZXIgYSBzZWN0aW9uIG9yIGZpbHRlciBjb21wb25lbnRcbiAgICAgKiBAcmV0dXJucyBzZWN0aW9uIHF1ZXJ5IGRhdGFcbiAgICAgKi9cbiAgICBwcml2YXRlIHNlY3Rpb25XYWxrKGN1cnJlbnQ6IGFueSkge1xuICAgICAgICBsZXQgc2VjdGlvbjogSVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW0gPSBudWxsO1xuXG4gICAgICAgIE9iamVjdC5rZXlzKGN1cnJlbnQpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIGlmIChrZXkuaW5jbHVkZXMoJ2l0ZW0nKSkge1xuICAgICAgICAgICAgICAgIHNlY3Rpb24gPSB0aGlzLmFkZFRvU2VjdGlvbihzZWN0aW9uLCB7XG4gICAgICAgICAgICAgICAgICAgIEV4cHJlc3Npb25JZDogKHRoaXMuX2V4cHJlc3Npb25JZENvdW50ZXIrKykudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICAgICAgQXBpTmFtZTogY3VycmVudFtrZXldLnNtYXJ0LmZpZWxkSWQsXG4gICAgICAgICAgICAgICAgICAgIEZpZWxkVHlwZTogY3VycmVudFtrZXldLnF1ZXJ5LmZpZWxkVHlwZSxcbiAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uOiBnZXRMZWdhY3lPcGVyYXRvcihjdXJyZW50W2tleV0uc21hcnQub3BlcmF0b3IsIGN1cnJlbnRba2V5XS5zbWFydC5maWVsZFR5cGUpLFxuICAgICAgICAgICAgICAgICAgICBWYWx1ZXM6IHRoaXMuZ2V0SXRlbVZhbHVlcyhjdXJyZW50W2tleV0uc21hcnQpXG4gICAgICAgICAgICAgICAgfSBhcyBJUGVwUXVlcnlJdGVtLCBjdXJyZW50Lm9wZXJhdG9yKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2V5LmluY2x1ZGVzKCdzZWN0aW9uJykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZFNlY3Rpb24gPSB0aGlzLnNlY3Rpb25XYWxrKGN1cnJlbnRba2V5XSk7XG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkU2VjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICBzZWN0aW9uID0gdGhpcy5hZGRUb1NlY3Rpb24oc2VjdGlvbiwgY2hpbGRTZWN0aW9uLCBjdXJyZW50Lm9wZXJhdG9yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBzZWN0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFkZHMgYSBsZWdhY3kgZmlsdGVyIG9iamVjdCB0byB0aGUgY3VycmVudCBxdWVyeSBzdHJ1Y3R1cmVcbiAgICAgKiBAcGFyYW0gc2VjdGlvbiBzZWN0aW9uIHF1ZXJ5IGRhdGFcbiAgICAgKiBAcGFyYW0gaXRlbSBmaWx0ZXIgaXRlbVxuICAgICAqIEBwYXJhbSBvcGVyYXRvciBxdWVyeSBvcGVyYXRvclxuICAgICAqIEByZXR1cm5zIFxuICAgICAqL1xuICAgIHByaXZhdGUgYWRkVG9TZWN0aW9uKHNlY3Rpb246IGFueSwgaXRlbTogYW55LCBvcGVyYXRvcjogc3RyaW5nKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHNlY3Rpb24gPyB0aGlzLmNyZWF0ZVNlY3Rpb24oc2VjdGlvbiwgaXRlbSwgb3BlcmF0b3IpIDogaXRlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgbGVnYWN5IGNvbXBsZXggb2JqZWN0XG4gICAgICogQHBhcmFtIGxlZnQgTGVmdE5vZGUgb2JqZWN0XG4gICAgICogQHBhcmFtIHJpZ2h0IFJpZ2h0Tm9kZSBvYmplY3RcbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgcXVlcnkgb3BlcmF0b3JcbiAgICAgKiBAcmV0dXJucyBsZWdhY3kgY29tcGxleCBvYmplY3RcbiAgICAgKi9cbiAgICBwcml2YXRlIGNyZWF0ZVNlY3Rpb24obGVmdDogYW55LCByaWdodDogYW55LCBvcGVyYXRvcjogc3RyaW5nKTogSVBlcFF1ZXJ5U2VjdGlvbiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBDb21wbGV4SWQ6ICh0aGlzLl9jb21wbGV4SWRDb3VudGVyKyspLnRvU3RyaW5nKCksXG4gICAgICAgICAgICBMZWZ0Tm9kZTogbGVmdCxcbiAgICAgICAgICAgIFJpZ2h0Tm9kZTogcmlnaHQsXG4gICAgICAgICAgICBPcGVyYXRpb246IDxQZXBPcGVyYXRvclR5cGVzPm9wZXJhdG9yXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXRzIGxlZ2FjeSBmaWx0ZXIgdmFsdWVzIG9iamVjdFxuICAgICAqIEBwYXJhbSBjdXJyZW50IFVJIGZpbHRlciBvYmplY3QncyB2YWx1ZXNcbiAgICAgKiBAcmV0dXJucyBhbiBhcnJheSByZXByZXNlbnRzIGxlZ2FjeSB2YWx1ZXNcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldEl0ZW1WYWx1ZXMoY3VycmVudDogYW55KSB7XG4gICAgICAgIGxldCB2YWx1ZXM6IGFueVtdID0gW107XG5cbiAgICAgICAgaWYgKGN1cnJlbnQ/LnZhbHVlcz8uZmlyc3QpIHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50Lm9wZXJhdG9yID09PSBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5JbikgeyAvL211bHRpIHNlbGVjdCBcbiAgICAgICAgICAgICAgICB2YWx1ZXMgPSBjdXJyZW50LnZhbHVlcy5maXJzdDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW5UaGVMYXN0IHx8XG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJBZGRpdGlvbmFsT3BlcmF0b3JzLkluVGhlTGFzdENhbGVuZGFyIHx8XG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90SW5UaGVMYXN0IHx8XG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJBZGRpdGlvbmFsT3BlcmF0b3JzLk5vdEluVGhlTGFzdENhbGVuZGFyIHx8XG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRHVlSW4gfHxcbiAgICAgICAgICAgICAgICBjdXJyZW50Lm9wZXJhdG9yID09PSBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ob3REdWVJblxuICAgICAgICAgICAgKSB7IC8vb3BlcmF0aW9uIHVuaXQgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB2YWx1ZXMucHVzaChjdXJyZW50LnZhbHVlcy5maXJzdCk7XG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnQub3BlcmF0b3JVbml0KSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlcy5wdXNoKGdldExlZ2FjeU9wZXJhdGlvblVuaXQoY3VycmVudC5vcGVyYXRvclVuaXQpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHZhbHVlcy5wdXNoKGN1cnJlbnQudmFsdWVzLmZpcnN0KTtcbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudC52YWx1ZXMuc2Vjb25kKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlcy5wdXNoKGN1cnJlbnQudmFsdWVzLnNlY29uZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHZhbHVlcztcbiAgICB9XG5cbn0iXX0=
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0cHV0LXF1ZXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL291dHB1dC1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQ0FBaUMsRUFDcEMsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFJL0MsTUFBTSxPQUFPLHFCQUFxQjtJQUk5QjtRQUNJLEVBQUU7SUFDTixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGFBQWEsQ0FBQyxPQUFZO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUVsQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOztPQUVHO0lBQ0ssVUFBVTtRQUNkLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFdBQVcsQ0FBQyxPQUFZO1FBQzVCLElBQUksT0FBTyxHQUFxQyxJQUFJLENBQUM7UUFFckQsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDL0IsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN0QixPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUU7b0JBQ2pDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO29CQUN0RCxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPO29CQUNuQyxTQUFTLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssS0FBSzt3QkFDeEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVM7b0JBQzVHLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztvQkFDdkYsU0FBUyxFQUFFLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO29CQUMxRixNQUFNLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO2lCQUNoQyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN6QztpQkFBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ2hDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BELElBQUksWUFBWSxFQUFFO29CQUNkLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2lCQUN4RTthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssWUFBWSxDQUFDLE9BQVksRUFBRSxJQUFTLEVBQUUsUUFBZ0I7UUFDMUQsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3hFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxhQUFhLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxRQUFnQjtRQUN6RCxPQUFPO1lBQ0gsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUU7WUFDaEQsUUFBUSxFQUFFLElBQUk7WUFDZCxTQUFTLEVBQUUsS0FBSztZQUNoQixTQUFTLEVBQW9CLFFBQVE7U0FDeEMsQ0FBQTtJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssYUFBYSxDQUFDLE9BQVk7UUFDOUIsSUFBSSxNQUFNLEdBQVUsRUFBRSxDQUFDO1FBRXZCLElBQUksT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7WUFDeEIsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLHVCQUF1QixDQUFDLEVBQUUsRUFBRSxFQUFFLGVBQWU7Z0JBQ2xFLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQzthQUNqQztpQkFBTSxJQUNILE9BQU8sQ0FBQyxRQUFRLEtBQUssdUJBQXVCLENBQUMsU0FBUztnQkFDdEQsT0FBTyxDQUFDLFFBQVEsS0FBSyxpQ0FBaUMsQ0FBQyxpQkFBaUI7Z0JBQ3hFLE9BQU8sQ0FBQyxRQUFRLEtBQUssdUJBQXVCLENBQUMsWUFBWTtnQkFDekQsT0FBTyxDQUFDLFFBQVEsS0FBSyxpQ0FBaUMsQ0FBQyxvQkFBb0I7Z0JBQzNFLE9BQU8sQ0FBQyxRQUFRLEtBQUssdUJBQXVCLENBQUMsS0FBSztnQkFDbEQsT0FBTyxDQUFDLFFBQVEsS0FBSyx1QkFBdUIsQ0FBQyxRQUFRLEVBQ3ZELEVBQUUsNEJBQTRCO2dCQUM1QixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRTtvQkFDdEIsTUFBTSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztpQkFDN0Q7YUFDSjtpQkFBTTtnQkFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2xDLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7b0JBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDdEM7YUFDSjtTQUNKO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs7a0hBcEhRLHFCQUFxQjtzSEFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJUGVwUXVlcnlTZWN0aW9uLCBJUGVwUXVlcnlJdGVtIH0gZnJvbSAnLi4vbW9kZWwvbGVnYWN5JztcbmltcG9ydCB7IGdldExlZ2FjeU9wZXJhdG9yLCBnZXRWYWx1ZVR5cGVPcGVyYXRvciB9IGZyb20gJy4uL21vZGVsL29wZXJhdG9yJztcbmltcG9ydCB7IFBlcE9wZXJhdG9yVHlwZXMgfSBmcm9tICcuLi9tb2RlbC90eXBlJztcbmltcG9ydCB7IGdldExlZ2FjeU9wZXJhdGlvblVuaXQgfSBmcm9tICcuLi9tb2RlbC9vcGVyYXRvci11bml0JztcbmltcG9ydCB7IFxuICAgIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLFxuICAgIFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9yc1xufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9zbWFydC1maWx0ZXJzJztcblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGVwT3V0cHV0UXVlcnlTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9jb21wbGV4SWRDb3VudGVyOiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfZXhwcmVzc2lvbklkQ291bnRlcjogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIC8vXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2VuZXJhdGVzIGEgbGVnYWN5IHF1ZXJ5IHN0cnVjdHVyZSBcbiAgICAgKiBAcGFyYW0gZmlsdGVycyBVSSBzbWFydCBmaWx0ZXJzIHN0cnVjdHVyZSAgICAgXG4gICAgICogQHJldHVybnMgbGVnYWN5IHF1ZXJ5XG4gICAgICovXG4gICAgZ2VuZXJhdGVRdWVyeShmaWx0ZXJzOiBhbnkpIHtcbiAgICAgICAgdGhpcy5pbml0UGFyYW1zKCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc2VjdGlvbldhbGsoZmlsdGVycyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogaW5pdCBwYXJhbXNcbiAgICAgKi9cbiAgICBwcml2YXRlIGluaXRQYXJhbXMoKSB7XG4gICAgICAgIHRoaXMuX2NvbXBsZXhJZENvdW50ZXIgPSAxO1xuICAgICAgICB0aGlzLl9leHByZXNzaW9uSWRDb3VudGVyID0gMTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBhIHJlY3Vyc2l2ZSBmdW5jdGlvbiBkeW5hbWljYWxseSBidWlsZHMgbGVnYWN5IHF1ZXJ5IHN0cnVjdHVyZVxuICAgICAqIEBwYXJhbSBjdXJyZW50IFVJIG9iamVjdCByZXByZXNlbnRzIGVpdGhlciBhIHNlY3Rpb24gb3IgZmlsdGVyIGNvbXBvbmVudFxuICAgICAqIEByZXR1cm5zIHNlY3Rpb24gcXVlcnkgZGF0YVxuICAgICAqL1xuICAgIHByaXZhdGUgc2VjdGlvbldhbGsoY3VycmVudDogYW55KSB7XG4gICAgICAgIGxldCBzZWN0aW9uOiBJUGVwUXVlcnlTZWN0aW9uIHwgSVBlcFF1ZXJ5SXRlbSA9IG51bGw7XG5cbiAgICAgICAgT2JqZWN0LmtleXMoY3VycmVudCkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgaWYgKGtleS5pbmNsdWRlcygnaXRlbScpKSB7XG4gICAgICAgICAgICAgICAgc2VjdGlvbiA9IHRoaXMuYWRkVG9TZWN0aW9uKHNlY3Rpb24sIHtcbiAgICAgICAgICAgICAgICAgICAgRXhwcmVzc2lvbklkOiAodGhpcy5fZXhwcmVzc2lvbklkQ291bnRlcisrKS50b1N0cmluZygpLFxuICAgICAgICAgICAgICAgICAgICBBcGlOYW1lOiBjdXJyZW50W2tleV0uc21hcnQuZmllbGRJZCxcbiAgICAgICAgICAgICAgICAgICAgRmllbGRUeXBlOiAoY3VycmVudFtrZXldLnNtYXJ0Lm9wZXJhdG9yLmlkID09PSAnaW52JyAmJiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFtrZXldLnNtYXJ0LmZpZWxkVHlwZSA9PT0gJ3RleHQnKSA/ICdNdWx0aXBsZVN0cmluZ1ZhbHVlcycgOiBjdXJyZW50W2tleV0ucXVlcnkuZmllbGRUeXBlLFxuICAgICAgICAgICAgICAgICAgICBPcGVyYXRpb246IGdldExlZ2FjeU9wZXJhdG9yKGN1cnJlbnRba2V5XS5zbWFydC5vcGVyYXRvciwgY3VycmVudFtrZXldLnNtYXJ0LmZpZWxkVHlwZSksXG4gICAgICAgICAgICAgICAgICAgIFZhbHVlVHlwZTogZ2V0VmFsdWVUeXBlT3BlcmF0b3IoY3VycmVudFtrZXldLnNtYXJ0Lm9wZXJhdG9yLCBjdXJyZW50W2tleV0uc21hcnQuZmllbGRUeXBlKSxcbiAgICAgICAgICAgICAgICAgICAgVmFsdWVzOiB0aGlzLmdldEl0ZW1WYWx1ZXMoY3VycmVudFtrZXldLnNtYXJ0KVxuICAgICAgICAgICAgICAgIH0gYXMgSVBlcFF1ZXJ5SXRlbSwgY3VycmVudC5vcGVyYXRvcik7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGtleS5pbmNsdWRlcygnc2VjdGlvbicpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY2hpbGRTZWN0aW9uID0gdGhpcy5zZWN0aW9uV2FsayhjdXJyZW50W2tleV0pO1xuICAgICAgICAgICAgICAgIGlmIChjaGlsZFNlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgc2VjdGlvbiA9IHRoaXMuYWRkVG9TZWN0aW9uKHNlY3Rpb24sIGNoaWxkU2VjdGlvbiwgY3VycmVudC5vcGVyYXRvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gc2VjdGlvbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBhZGRzIGEgbGVnYWN5IGZpbHRlciBvYmplY3QgdG8gdGhlIGN1cnJlbnQgcXVlcnkgc3RydWN0dXJlXG4gICAgICogQHBhcmFtIHNlY3Rpb24gc2VjdGlvbiBxdWVyeSBkYXRhXG4gICAgICogQHBhcmFtIGl0ZW0gZmlsdGVyIGl0ZW1cbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgcXVlcnkgb3BlcmF0b3JcbiAgICAgKiBAcmV0dXJucyBcbiAgICAgKi9cbiAgICBwcml2YXRlIGFkZFRvU2VjdGlvbihzZWN0aW9uOiBhbnksIGl0ZW06IGFueSwgb3BlcmF0b3I6IHN0cmluZyk6IGFueSB7XG4gICAgICAgIHJldHVybiBzZWN0aW9uID8gdGhpcy5jcmVhdGVTZWN0aW9uKHNlY3Rpb24sIGl0ZW0sIG9wZXJhdG9yKSA6IGl0ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogY3JlYXRlcyBhIGxlZ2FjeSBjb21wbGV4IG9iamVjdFxuICAgICAqIEBwYXJhbSBsZWZ0IExlZnROb2RlIG9iamVjdFxuICAgICAqIEBwYXJhbSByaWdodCBSaWdodE5vZGUgb2JqZWN0XG4gICAgICogQHBhcmFtIG9wZXJhdG9yIHF1ZXJ5IG9wZXJhdG9yXG4gICAgICogQHJldHVybnMgbGVnYWN5IGNvbXBsZXggb2JqZWN0XG4gICAgICovXG4gICAgcHJpdmF0ZSBjcmVhdGVTZWN0aW9uKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgb3BlcmF0b3I6IHN0cmluZyk6IElQZXBRdWVyeVNlY3Rpb24ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgQ29tcGxleElkOiAodGhpcy5fY29tcGxleElkQ291bnRlcisrKS50b1N0cmluZygpLFxuICAgICAgICAgICAgTGVmdE5vZGU6IGxlZnQsXG4gICAgICAgICAgICBSaWdodE5vZGU6IHJpZ2h0LFxuICAgICAgICAgICAgT3BlcmF0aW9uOiA8UGVwT3BlcmF0b3JUeXBlcz5vcGVyYXRvclxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2V0cyBsZWdhY3kgZmlsdGVyIHZhbHVlcyBvYmplY3RcbiAgICAgKiBAcGFyYW0gY3VycmVudCBVSSBmaWx0ZXIgb2JqZWN0J3MgdmFsdWVzXG4gICAgICogQHJldHVybnMgYW4gYXJyYXkgcmVwcmVzZW50cyBsZWdhY3kgdmFsdWVzXG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRJdGVtVmFsdWVzKGN1cnJlbnQ6IGFueSkge1xuICAgICAgICBsZXQgdmFsdWVzOiBhbnlbXSA9IFtdO1xuXG4gICAgICAgIGlmIChjdXJyZW50Py52YWx1ZXM/LmZpcnN0KSB7XG4gICAgICAgICAgICBpZiAoY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW4pIHsgLy9tdWx0aSBzZWxlY3QgXG4gICAgICAgICAgICAgICAgdmFsdWVzID0gY3VycmVudC52YWx1ZXMuZmlyc3Q7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICAgIGN1cnJlbnQub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkluVGhlTGFzdCB8fFxuICAgICAgICAgICAgICAgIGN1cnJlbnQub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycy5JblRoZUxhc3RDYWxlbmRhciB8fFxuICAgICAgICAgICAgICAgIGN1cnJlbnQub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk5vdEluVGhlTGFzdCB8fFxuICAgICAgICAgICAgICAgIGN1cnJlbnQub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycy5Ob3RJblRoZUxhc3RDYWxlbmRhciB8fFxuICAgICAgICAgICAgICAgIGN1cnJlbnQub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkR1ZUluIHx8XG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RHVlSW5cbiAgICAgICAgICAgICkgeyAvL29wZXJhdGlvbiB1bml0ICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgdmFsdWVzLnB1c2goY3VycmVudC52YWx1ZXMuZmlyc3QpO1xuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50Lm9wZXJhdG9yVW5pdCkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZXMucHVzaChnZXRMZWdhY3lPcGVyYXRpb25Vbml0KGN1cnJlbnQub3BlcmF0b3JVbml0KSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB2YWx1ZXMucHVzaChjdXJyZW50LnZhbHVlcy5maXJzdCk7XG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnQudmFsdWVzLnNlY29uZCkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZXMucHVzaChjdXJyZW50LnZhbHVlcy5zZWNvbmQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB2YWx1ZXM7XG4gICAgfVxuXG59Il19
|
|
@@ -17,6 +17,7 @@ export class PepQueryStructureService {
|
|
|
17
17
|
this._outputQuery$ = new BehaviorSubject(null);
|
|
18
18
|
this._variableFields = {};
|
|
19
19
|
this._maxStructureDepth = MAX_STRUCTURE_DEPTH;
|
|
20
|
+
this._cmpRefMap = new Map();
|
|
20
21
|
this.outputQuery$ = this._outputQuery$.asObservable();
|
|
21
22
|
}
|
|
22
23
|
set maxDepth(value) {
|
|
@@ -58,6 +59,18 @@ export class PepQueryStructureService {
|
|
|
58
59
|
* @param containerRef reference to root element
|
|
59
60
|
*/
|
|
60
61
|
buildQueryStructure(query, containerRef) {
|
|
62
|
+
// Remove all the components from the query builder.
|
|
63
|
+
this._cmpRefMap.forEach((value, key) => {
|
|
64
|
+
// console.log(key, value);
|
|
65
|
+
// value.instance.remove();
|
|
66
|
+
if (value.instance.parentForm) {
|
|
67
|
+
value.instance.parentForm.removeControl(key);
|
|
68
|
+
}
|
|
69
|
+
value.destroy();
|
|
70
|
+
this._cmpRefMap.delete(key);
|
|
71
|
+
});
|
|
72
|
+
// Clear containerRef
|
|
73
|
+
containerRef.clear();
|
|
61
74
|
//update root operator
|
|
62
75
|
if (this.hasProperty(query, 'ComplexId') &&
|
|
63
76
|
query?.Operation &&
|
|
@@ -138,10 +151,15 @@ export class PepQueryStructureService {
|
|
|
138
151
|
parentForm.removeControl(formKey);
|
|
139
152
|
componentRef.destroy();
|
|
140
153
|
this.createOutputQuery();
|
|
154
|
+
if (this._cmpRefMap.has(formKey)) {
|
|
155
|
+
this._cmpRefMap.delete(formKey);
|
|
156
|
+
}
|
|
141
157
|
});
|
|
142
158
|
componentRef.instance.operatorChange.subscribe(() => {
|
|
143
159
|
this.createOutputQuery();
|
|
144
160
|
});
|
|
161
|
+
// Add this to remove all the components when fields changes.
|
|
162
|
+
this._cmpRefMap.set(formKey, componentRef);
|
|
145
163
|
return {
|
|
146
164
|
containerRef: componentRef.instance.sectionContainer,
|
|
147
165
|
parentForm: sectionGroup
|
|
@@ -179,7 +197,12 @@ export class PepQueryStructureService {
|
|
|
179
197
|
parentForm.removeControl(formKey);
|
|
180
198
|
componentRef.destroy();
|
|
181
199
|
this.createOutputQuery();
|
|
200
|
+
if (this._cmpRefMap.has(formKey)) {
|
|
201
|
+
this._cmpRefMap.delete(formKey);
|
|
202
|
+
}
|
|
182
203
|
});
|
|
204
|
+
// Add this to remove all the components when fields changes.
|
|
205
|
+
this._cmpRefMap.set(formKey, componentRef);
|
|
183
206
|
}
|
|
184
207
|
/**
|
|
185
208
|
* get smart filter field
|
|
@@ -223,4 +246,4 @@ PepQueryStructureService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0
|
|
|
223
246
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepQueryStructureService, decorators: [{
|
|
224
247
|
type: Injectable
|
|
225
248
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i1.PepOutputQueryService }, { type: i2.PepQueryBuilderService }]; } });
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc3RydWN0dXJlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL3F1ZXJ5LXN0cnVjdHVyZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQThDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWV2QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVyRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUdyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUUzRCxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQztBQUc5QixNQUFNLE9BQU8sd0JBQXdCO0lBVWpDLFlBQ1ksU0FBbUMsRUFDbkMsbUJBQTBDLEVBQzFDLG9CQUE0QztRQUY1QyxjQUFTLEdBQVQsU0FBUyxDQUEwQjtRQUNuQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXVCO1FBQzFDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBd0I7UUFaaEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBbUMsSUFBSSxDQUFDLENBQUM7UUFHNUUsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFFMUIsdUJBQWtCLEdBQUcsbUJBQW1CLENBQUM7UUFFMUMsaUJBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBT3hELENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxLQUFLO1FBQ2Qs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QUMsQ0FBQztZQUN2RixPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDaEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ2xGO0lBQ0wsQ0FBQztJQUVPLCtCQUErQixDQUFDLElBQVk7UUFDaEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssTUFBTSxDQUFDO1lBQ1osS0FBSyxZQUFZO2dCQUNiLE9BQU8sUUFBUSxDQUFDO1lBQ3BCLEtBQUssV0FBVztnQkFDWixPQUFPLE1BQU0sQ0FBQztZQUNsQjtnQkFDSSxPQUFPLElBQUksQ0FBQztTQUNuQjtJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQjtRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xDO0lBQ0wsQ0FBQzs7cUhBcE9RLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZCwgSVBlcFF1ZXJ5U2VjdGlvbiwgSVBlcFF1ZXJ5SXRlbSB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9sZWdhY3knO1xuaW1wb3J0IHtcbiAgICBJUGVwU21hcnRGaWx0ZXJEYXRhLFxuICAgIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLFxuICAgIElQZXBTbWFydEZpbHRlck9wZXJhdG9yLFxuICAgIFBlcFNtYXJ0RmlsdGVyVHlwZSxcbiAgICBjcmVhdGVTbWFydEZpbHRlcixcbiAgICBjcmVhdGVTbWFydEZpbHRlckZpZWxkLFxuICAgIFBlcFNtYXJ0RmlsdGVyQmFzZUZpZWxkXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xuaW1wb3J0IHsgUGVwUXVlcnlCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3F1ZXJ5LWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBPdXRwdXRRdWVyeVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvb3V0cHV0LXF1ZXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0U21hcnRGaWx0ZXJPcGVyYXRvciB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9vcGVyYXRvcic7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcXVlcnktYnVpbGRlci1zZWN0aW9uL3F1ZXJ5LWJ1aWxkZXItc2VjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwUXVlcnlCdWlsZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3F1ZXJ5LWJ1aWxkZXItaXRlbS9xdWVyeS1idWlsZGVyLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZENvbnRhaW5lciB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9maWVsZCc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJUeXBlTWFwIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3R5cGUtbWFwJztcbmltcG9ydCB7IGdldFNtYXJ0RmlsdGVyT3BlcmF0aW9uVW5pdCB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9vcGVyYXRvci11bml0JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJWYWx1ZXMgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvZmlsdGVyJztcbmltcG9ydCB7IFBlcE9wZXJhdG9yVHlwZXMgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvdHlwZSc7XG5cbmNvbnN0IE1BWF9TVFJVQ1RVUkVfREVQVEggPSAzO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGVwUXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9vdXRwdXRRdWVyeSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtPihudWxsKTtcblxuICAgIHByaXZhdGUgX3NtYXJ0RmlsdGVyRmllbGRzOiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGRDb250YWluZXI+O1xuICAgIHByaXZhdGUgX3ZhcmlhYmxlRmllbGRzOiBhbnkgPSB7fTtcbiAgICBwcml2YXRlIF9mb3JtOiBGb3JtR3JvdXA7XG4gICAgcHJpdmF0ZSBfbWF4U3RydWN0dXJlRGVwdGggPSBNQVhfU1RSVUNUVVJFX0RFUFRIO1xuXG4gICAgcHVibGljIG91dHB1dFF1ZXJ5JCA9IHRoaXMuX291dHB1dFF1ZXJ5JC5hc09ic2VydmFibGUoKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9yZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBwcml2YXRlIF9vdXRwdXRRdWVyeVNlcnZpY2U6IFBlcE91dHB1dFF1ZXJ5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfcXVlcnlCdWlsZGVyU2VydmljZTogUGVwUXVlcnlCdWlsZGVyU2VydmljZSkge1xuXG4gICAgfVxuXG4gICAgc2V0IG1heERlcHRoKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX21heFN0cnVjdHVyZURlcHRoID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IG1heERlcHRoKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF4U3RydWN0dXJlRGVwdGg7XG4gICAgfVxuXG4gICAgc2V0IGZpZWxkcyhsaXN0OiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGQ+KSB7XG4gICAgICAgIHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzID0gdGhpcy5fcXVlcnlCdWlsZGVyU2VydmljZS5jb252ZXJ0VG9TbWFydEZpbHRlckZpZWxkcyhsaXN0KTtcbiAgICB9XG5cbiAgICBnZXQgaGFzRmllbGRzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHM/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgc2V0IHZhcmlhYmxlRmllbGRzKGxpc3Q6IEFycmF5PElQZXBRdWVyeUJ1aWxkZXJGaWVsZD4pIHtcbiAgICAgICAgaWYgKGxpc3Q/Lmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgdHlwZU1hcHBlciA9IG5ldyBQZXBRdWVyeUJ1aWxkZXJUeXBlTWFwKCk7XG4gICAgICAgICAgICBsaXN0LmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpZWxkVHlwZSA9IHRoaXMuY29udmVydFNtYXJ0RmlsdGVyQ29tcG9uZW50VHlwZSh0eXBlTWFwcGVyLmdldFNtYXJ0RmlsdGVyVHlwZShmaWVsZC5GaWVsZFR5cGUpKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oYXNQcm9wZXJ0eSh0aGlzLl92YXJpYWJsZUZpZWxkcywgZmllbGRUeXBlKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl92YXJpYWJsZUZpZWxkc1tmaWVsZFR5cGVdLnB1c2goZmllbGQuRmllbGRJRCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdmFyaWFibGVGaWVsZHNbZmllbGRUeXBlXSA9IFtmaWVsZC5GaWVsZElEXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldCBmb3JtKHZhbHVlOiBGb3JtR3JvdXApIHtcbiAgICAgICAgdGhpcy5fZm9ybSA9IHZhbHVlO1xuICAgIH1cblxuICAgIGdldCBmb3JtKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZm9ybTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBidWlsZHMgYSBkeW5hbWljIFVJIHF1ZXJ5IHN0cnVjdHVyZVxuICAgICAqIG1pZ2h0IGhhcyBhIGRpZmZlcmVudCBzdHJ1Y3R1cmUgdGhhbiB0aGUgcXVlcnkncyBkdWUgdG8gcGFyZW50LWNoaWxkIGVsZW1lbnRzIG1lcmdlXG4gICAgICogQHBhcmFtIHF1ZXJ5IGxlZ2FjeSBxdWVyeSAgICAgXG4gICAgICogQHBhcmFtIGNvbnRhaW5lclJlZiByZWZlcmVuY2UgdG8gcm9vdCBlbGVtZW50XG4gICAgICovXG4gICAgYnVpbGRRdWVyeVN0cnVjdHVyZShcbiAgICAgICAgcXVlcnk6IElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtLFxuICAgICAgICBjb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgICApIHtcbiAgICAgICAgLy91cGRhdGUgcm9vdCBvcGVyYXRvciAgICAgICAgXG4gICAgICAgIGlmICh0aGlzLmhhc1Byb3BlcnR5KHF1ZXJ5LCAnQ29tcGxleElkJykgJiZcbiAgICAgICAgICAgIHF1ZXJ5Py5PcGVyYXRpb24gJiZcbiAgICAgICAgICAgIHF1ZXJ5Lk9wZXJhdGlvbiAhPT0gdGhpcy5fZm9ybS5nZXQoJ29wZXJhdG9yJykudmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnNldFZhbHVlKHF1ZXJ5Lk9wZXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mbGF0dGVuKHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnZhbHVlLCBxdWVyeSwgY29udGFpbmVyUmVmLCB0aGlzLl9mb3JtLCAwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIGNoZWNrcyBpZiB0aGUgb2JqZWN0IGNvbnRhaW5zIHByb3BlcnR5XG4gICAgKiBAcGFyYW0gb2JqIG9iamVjdFxuICAgICogQHBhcmFtIHByb3AgcHJvcGVydHkgbmFtZVxuICAgICogQHJldHVybnMgdHJ1ZSBpZiBjb250YWlucywgZmFsc2Ugb3RoZXJ3aXNlXG4gICAgKi9cbiAgICBwcml2YXRlIGhhc1Byb3BlcnR5KG9iaiwgcHJvcCkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYSByZWN1cnNpdmUgZnVuY3Rpb24gZHluYW1pY2FsbHkgYnVpbGRzIFVJIGZpbHRlcnMgc3RydWN0dXJlXG4gICAgICogQHBhcmFtIHBhcmVudE9wZXJhdG9yIHBhcmVudCBsZWdhY3kgY29tcGxleCBvcGVyYXRvclxuICAgICAqIEBwYXJhbSBjdXJyZW50IGNoaWxkIGxlZ2FjeSBvYmplY3QgKGVpdGhlciBhbm90aGVyIGNvbXBsZXggb3IgZXhwcmVzc2lvbiB0eXBlKVxuICAgICAqIEBwYXJhbSBjb250YWluZXJSZWYgcGFyZW50IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gcGFyZW50Rm9ybSBwYXJlbnQgZm9ybVxuICAgICAqL1xuICAgIHByaXZhdGUgZmxhdHRlbihwYXJlbnRPcGVyYXRvcjogc3RyaW5nLCBjdXJyZW50OiBJUGVwUXVlcnlTZWN0aW9uIHwgSVBlcFF1ZXJ5SXRlbSwgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzUHJvcGVydHkoY3VycmVudCwgJ0NvbXBsZXhJZCcpKSB7XG4gICAgICAgICAgICBjb25zdCBzZWN0aW9uID0gY3VycmVudCBhcyBJUGVwUXVlcnlTZWN0aW9uO1xuICAgICAgICAgICAgaWYgKHBhcmVudE9wZXJhdG9yID09PSBjdXJyZW50Lk9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihjdXJyZW50Lk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKGN1cnJlbnQuT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuY3JlYXRlU2VjdGlvbihzZWN0aW9uLk9wZXJhdGlvbiwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCArIDEpO1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihzZWN0aW9uLk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKHNlY3Rpb24uT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNQcm9wZXJ0eShjdXJyZW50LCAnRXhwcmVzc2lvbklkJykpIHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSXRlbShjdXJyZW50IGFzIElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZiwgcGFyZW50Rm9ybSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBvZiB0d28gb3IgbW9yZSBjaGlsZCBmaWx0ZXIgaXRlbXNcbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgQU5EL09SIG9wZXJhdG9yXG4gICAgICogQHBhcmFtIGNvbnRhaW5lclJlZiBwYXJlbnQgZWxlbWVudFxuICAgICAqIEBwYXJhbSBwYXJlbnRGb3JtIHBhcmVudCBmb3JtXG4gICAgICogQHBhcmFtIGRlcHRoXG4gICAgICogQHJldHVybnMgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgZWxlbWVudCBhbmQgY3VycmVudCBmb3JtXG4gICAgICovXG4gICAgY3JlYXRlU2VjdGlvbihvcGVyYXRvcjogUGVwT3BlcmF0b3JUeXBlcywgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX3Jlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFBlcFF1ZXJ5QnVpbGRlclNlY3Rpb25Db21wb25lbnQpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBjb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuXG4gICAgICAgIC8vIGNvbnN0IHNlY3Rpb25Hcm91cCA9IHRoaXMuX2ZiLmdyb3VwKHtcbiAgICAgICAgLy8gICAgIG9wZXJhdG9yOiB0aGlzLl9mYi5jb250cm9sKG9wZXJhdG9yKVxuICAgICAgICAvLyB9KTtcbiAgICAgICAgY29uc3Qgc2VjdGlvbkdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBvcGVyYXRvcjogbmV3IEZvcm1Db250cm9sKG9wZXJhdG9yKVxuICAgICAgICB9KTtcbiAgICAgICAgbGV0IGNvdW50ZXIgPSAxO1xuICAgICAgICBPYmplY3Qua2V5cyhwYXJlbnRGb3JtLmNvbnRyb2xzKS5mb3JFYWNoKGl0ZW0gPT4geyBpZiAoaXRlbS5pbmNsdWRlcygnc2VjdGlvbicpKSB7IGNvdW50ZXIrKzsgfSB9KTtcbiAgICAgICAgY29uc3QgZm9ybUtleSA9IGBzZWN0aW9uJHtjb3VudGVyfWA7XG4gICAgICAgIHBhcmVudEZvcm0uYWRkQ29udHJvbChmb3JtS2V5LCBzZWN0aW9uR3JvdXApO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5mb3JtID0gc2VjdGlvbkdyb3VwO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZGVwdGggPSB7XG4gICAgICAgICAgICBjdXJyZW50OiBkZXB0aCxcbiAgICAgICAgICAgIG1heDogdGhpcy5fbWF4U3RydWN0dXJlRGVwdGhcbiAgICAgICAgfTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmNyZWF0ZVNlY3Rpb24uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLmNyZWF0ZVNlY3Rpb24oUGVwT3BlcmF0b3JUeXBlcy5BbmQsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXAsIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUl0ZW0obnVsbCwgc2VjdGlvbi5jb250YWluZXJSZWYsIHNlY3Rpb24ucGFyZW50Rm9ybSk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuY3JlYXRlSXRlbS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVJdGVtKG51bGwsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXApO1xuICAgICAgICB9KTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnJlbW92ZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgcGFyZW50Rm9ybS5yZW1vdmVDb250cm9sKGZvcm1LZXkpO1xuICAgICAgICAgICAgY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vcGVyYXRvckNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmOiBjb21wb25lbnRSZWYuaW5zdGFuY2Uuc2VjdGlvbkNvbnRhaW5lcixcbiAgICAgICAgICAgIHBhcmVudEZvcm06IHNlY3Rpb25Hcm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNyZWF0ZXMgYSBjb21wb25lbnQgcmVwcmVzZW50cyBmaWx0ZXIgaXRlbSAobGVhZiBlbGVtZW50IC0gaGFzIG5vIGNoaWxkcylcbiAgICAgKiBAcGFyYW0gY3VycmVudCBmaWx0ZXIgbGVnYWN5IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIHBhcmVudCBlbGVtZW50XG4gICAgICogQHBhcmFtIHBhcmVudEZvcm0gcGFyZW50IGZvcm1cbiAgICAgKi9cbiAgICBjcmVhdGVJdGVtKGN1cnJlbnQ6IElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcGFyZW50Rm9ybTogRm9ybUdyb3VwKSB7XG4gICAgICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLl9yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShQZXBRdWVyeUJ1aWxkZXJJdGVtQ29tcG9uZW50KTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gY29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcblxuICAgICAgICBsZXQgY291bnRlciA9IDE7XG4gICAgICAgIE9iamVjdC5rZXlzKHBhcmVudEZvcm0uY29udHJvbHMpLmZvckVhY2goaXRlbSA9PiB7IGlmIChpdGVtLmluY2x1ZGVzKCdpdGVtJykpIHsgY291bnRlcisrOyB9IH0pO1xuICAgICAgICBjb25zdCBmb3JtS2V5ID0gYGl0ZW0ke2NvdW50ZXJ9YDtcblxuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZm9ybUtleSA9IGZvcm1LZXk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWVsZHMgPSB0aGlzLl9zbWFydEZpbHRlckZpZWxkcztcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnZhcmlhYmxlRmllbGRzID0gdGhpcy5fdmFyaWFibGVGaWVsZHM7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRmllbGQgPSB0aGlzLmdldFNlbGVjdGVkRmllbGQoY3VycmVudCk7XG4gICAgICAgIGlmIChzZWxlY3RlZEZpZWxkKSB7XG4gICAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Uuc2VsZWN0ZWQgPSBzZWxlY3RlZEZpZWxkO1xuICAgICAgICAgICAgaWYgKGN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZmlsdGVyID0gdGhpcy5fcXVlcnlCdWlsZGVyU2VydmljZS5nZXRGaWx0ZXIoY3VycmVudCwgc2VsZWN0ZWRGaWVsZC5zbWFydCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnBhcmVudEZvcm0gPSBwYXJlbnRGb3JtO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZmlsdGVyQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU91dHB1dFF1ZXJ5KCk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UucmVtb3ZlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBwYXJlbnRGb3JtLnJlbW92ZUNvbnRyb2woZm9ybUtleSk7XG4gICAgICAgICAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXQgc21hcnQgZmlsdGVyIGZpZWxkXG4gICAgICogQHBhcmFtIGN1cnJlbnQgZmlsdGVyIGxlZ2FjeSBlbGVtZW50XG4gICAgICogQHJldHVybnMgc21hcnQgZmlsdGVyIGZpZWxkLCBpZiBub3QgZm91bmQgcmV0dXJucyB0aGUgZmlyc3QgZmllbGRcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFNlbGVjdGVkRmllbGQoY3VycmVudDogSVBlcFF1ZXJ5SXRlbSk6IElQZXBRdWVyeUJ1aWxkZXJGaWVsZENvbnRhaW5lciB8IG51bGwge1xuICAgICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzLmZpbmQoZmllbGQgPT4gZmllbGQuc21hcnQuaWQgPT09IGN1cnJlbnQuQXBpTmFtZSk7XG4gICAgICAgICAgICByZXR1cm4gaXRlbSA/IGl0ZW0gOiB0aGlzLl9zbWFydEZpbHRlckZpZWxkcz8ubGVuZ3RoID4gMCA/IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzWzBdIDogbnVsbDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9zbWFydEZpbHRlckZpZWxkcz8ubGVuZ3RoID4gMCA/IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzWzBdIDogbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29udmVydFNtYXJ0RmlsdGVyQ29tcG9uZW50VHlwZSh0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdpbnQnOlxuICAgICAgICAgICAgY2FzZSAnY3VycmVuY3knOlxuICAgICAgICAgICAgY2FzZSAncmVhbCc6XG4gICAgICAgICAgICBjYXNlICdwZXJjZW50YWdlJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ251bWJlcic7XG4gICAgICAgICAgICBjYXNlICdkYXRlLXRpbWUnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnZGF0ZSc7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogY3JlYXRlcyBhIGxlZ2FjeSBvdXRwdXQgcXVlcnkgXG4gICAgICovXG4gICAgY3JlYXRlT3V0cHV0UXVlcnkoKSB7XG4gICAgICAgIGlmICh0aGlzLl9mb3JtLnZhbGlkKSB7XG4gICAgICAgICAgICBjb25zdCBxdWVyeSA9IHRoaXMuX291dHB1dFF1ZXJ5U2VydmljZS5nZW5lcmF0ZVF1ZXJ5KHRoaXMuX2Zvcm0udmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5fb3V0cHV0UXVlcnkkLm5leHQocXVlcnkpO1xuICAgICAgICB9XG4gICAgfVxuXG59Il19
|
|
249
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc3RydWN0dXJlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL3F1ZXJ5LXN0cnVjdHVyZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQTRELE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUt2QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVyRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUUzRCxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQztBQUc5QixNQUFNLE9BQU8sd0JBQXdCO0lBWWpDLFlBQ1ksU0FBbUMsRUFDbkMsbUJBQTBDLEVBQzFDLG9CQUE0QztRQUY1QyxjQUFTLEdBQVQsU0FBUyxDQUEwQjtRQUNuQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXVCO1FBQzFDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBd0I7UUFkaEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBbUMsSUFBSSxDQUFDLENBQUM7UUFHNUUsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFFMUIsdUJBQWtCLEdBQUcsbUJBQW1CLENBQUM7UUFFekMsZUFBVSxHQUFtQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRXhELGlCQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQU94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QUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDaEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ2xGO0lBQ0wsQ0FBQztJQUVPLCtCQUErQixDQUFDLElBQVk7UUFDaEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssTUFBTSxDQUFDO1lBQ1osS0FBSyxZQUFZO2dCQUNiLE9BQU8sUUFBUSxDQUFDO1lBQ3BCLEtBQUssV0FBVztnQkFDWixPQUFPLE1BQU0sQ0FBQztZQUNsQjtnQkFDSSxPQUFPLElBQUksQ0FBQztTQUNuQjtJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQjtRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xDO0lBQ0wsQ0FBQzs7cUhBaFFRLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgSVBlcFF1ZXJ5QnVpbGRlckZpZWxkLCBJUGVwUXVlcnlTZWN0aW9uLCBJUGVwUXVlcnlJdGVtIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL2xlZ2FjeSc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcXVlcnktYnVpbGRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFBlcE91dHB1dFF1ZXJ5U2VydmljZSB9IGZyb20gJy4uLy4uL2NvbW1vbi9zZXJ2aWNlcy9vdXRwdXQtcXVlcnkuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcXVlcnktYnVpbGRlci1zZWN0aW9uL3F1ZXJ5LWJ1aWxkZXItc2VjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwUXVlcnlCdWlsZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3F1ZXJ5LWJ1aWxkZXItaXRlbS9xdWVyeS1idWlsZGVyLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZENvbnRhaW5lciB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9maWVsZCc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJUeXBlTWFwIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3R5cGUtbWFwJztcbmltcG9ydCB7IFBlcE9wZXJhdG9yVHlwZXMgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvdHlwZSc7XG5cbmNvbnN0IE1BWF9TVFJVQ1RVUkVfREVQVEggPSAzO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGVwUXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9vdXRwdXRRdWVyeSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtPihudWxsKTtcblxuICAgIHByaXZhdGUgX3NtYXJ0RmlsdGVyRmllbGRzOiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGRDb250YWluZXI+O1xuICAgIHByaXZhdGUgX3ZhcmlhYmxlRmllbGRzOiBhbnkgPSB7fTtcbiAgICBwcml2YXRlIF9mb3JtOiBGb3JtR3JvdXA7XG4gICAgcHJpdmF0ZSBfbWF4U3RydWN0dXJlRGVwdGggPSBNQVhfU1RSVUNUVVJFX0RFUFRIO1xuXG4gICAgcHJpdmF0ZSBfY21wUmVmTWFwOiBNYXA8c3RyaW5nLCBDb21wb25lbnRSZWY8YW55Pj4gPSBuZXcgTWFwKCk7XG5cbiAgICBwdWJsaWMgb3V0cHV0UXVlcnkkID0gdGhpcy5fb3V0cHV0UXVlcnkkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX3Jlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHByaXZhdGUgX291dHB1dFF1ZXJ5U2VydmljZTogUGVwT3V0cHV0UXVlcnlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9xdWVyeUJ1aWxkZXJTZXJ2aWNlOiBQZXBRdWVyeUJ1aWxkZXJTZXJ2aWNlKSB7XG5cbiAgICB9XG5cbiAgICBzZXQgbWF4RGVwdGgodmFsdWUpIHtcbiAgICAgICAgdGhpcy5fbWF4U3RydWN0dXJlRGVwdGggPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgbWF4RGVwdGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhTdHJ1Y3R1cmVEZXB0aDtcbiAgICB9XG5cbiAgICBzZXQgZmllbGRzKGxpc3Q6IEFycmF5PElQZXBRdWVyeUJ1aWxkZXJGaWVsZD4pIHtcbiAgICAgICAgdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHMgPSB0aGlzLl9xdWVyeUJ1aWxkZXJTZXJ2aWNlLmNvbnZlcnRUb1NtYXJ0RmlsdGVyRmllbGRzKGxpc3QpO1xuICAgIH1cblxuICAgIGdldCBoYXNGaWVsZHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zbWFydEZpbHRlckZpZWxkcz8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBzZXQgdmFyaWFibGVGaWVsZHMobGlzdDogQXJyYXk8SVBlcFF1ZXJ5QnVpbGRlckZpZWxkPikge1xuICAgICAgICBpZiAobGlzdD8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCB0eXBlTWFwcGVyID0gbmV3IFBlcFF1ZXJ5QnVpbGRlclR5cGVNYXAoKTtcbiAgICAgICAgICAgIGxpc3QuZm9yRWFjaChmaWVsZCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRUeXBlID0gdGhpcy5jb252ZXJ0U21hcnRGaWx0ZXJDb21wb25lbnRUeXBlKHR5cGVNYXBwZXIuZ2V0U21hcnRGaWx0ZXJUeXBlKGZpZWxkLkZpZWxkVHlwZSkpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhc1Byb3BlcnR5KHRoaXMuX3ZhcmlhYmxlRmllbGRzLCBmaWVsZFR5cGUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3ZhcmlhYmxlRmllbGRzW2ZpZWxkVHlwZV0ucHVzaChmaWVsZC5GaWVsZElEKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl92YXJpYWJsZUZpZWxkc1tmaWVsZFR5cGVdID0gW2ZpZWxkLkZpZWxkSURdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0IGZvcm0odmFsdWU6IEZvcm1Hcm91cCkge1xuICAgICAgICB0aGlzLl9mb3JtID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb3JtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGJ1aWxkcyBhIGR5bmFtaWMgVUkgcXVlcnkgc3RydWN0dXJlXG4gICAgICogbWlnaHQgaGFzIGEgZGlmZmVyZW50IHN0cnVjdHVyZSB0aGFuIHRoZSBxdWVyeSdzIGR1ZSB0byBwYXJlbnQtY2hpbGQgZWxlbWVudHMgbWVyZ2VcbiAgICAgKiBAcGFyYW0gcXVlcnkgbGVnYWN5IHF1ZXJ5ICAgICBcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIHJlZmVyZW5jZSB0byByb290IGVsZW1lbnRcbiAgICAgKi9cbiAgICBidWlsZFF1ZXJ5U3RydWN0dXJlKFxuICAgICAgICBxdWVyeTogSVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW0sXG4gICAgICAgIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxuICAgICkge1xuICAgICAgICAvLyBSZW1vdmUgYWxsIHRoZSBjb21wb25lbnRzIGZyb20gdGhlIHF1ZXJ5IGJ1aWxkZXIuXG4gICAgICAgIHRoaXMuX2NtcFJlZk1hcC5mb3JFYWNoKCh2YWx1ZTogQ29tcG9uZW50UmVmPGFueT4sIGtleTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIC8vIHZhbHVlLmluc3RhbmNlLnJlbW92ZSgpO1xuICAgICAgICAgICAgaWYgKHZhbHVlLmluc3RhbmNlLnBhcmVudEZvcm0pIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5pbnN0YW5jZS5wYXJlbnRGb3JtLnJlbW92ZUNvbnRyb2woa2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhbHVlLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuX2NtcFJlZk1hcC5kZWxldGUoa2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIFxuICAgICAgICAvLyBDbGVhciBjb250YWluZXJSZWZcbiAgICAgICAgY29udGFpbmVyUmVmLmNsZWFyKCk7XG5cbiAgICAgICAgLy91cGRhdGUgcm9vdCBvcGVyYXRvciAgICAgICAgXG4gICAgICAgIGlmICh0aGlzLmhhc1Byb3BlcnR5KHF1ZXJ5LCAnQ29tcGxleElkJykgJiZcbiAgICAgICAgICAgIHF1ZXJ5Py5PcGVyYXRpb24gJiZcbiAgICAgICAgICAgIHF1ZXJ5Lk9wZXJhdGlvbiAhPT0gdGhpcy5fZm9ybS5nZXQoJ29wZXJhdG9yJykudmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnNldFZhbHVlKHF1ZXJ5Lk9wZXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mbGF0dGVuKHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnZhbHVlLCBxdWVyeSwgY29udGFpbmVyUmVmLCB0aGlzLl9mb3JtLCAwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIGNoZWNrcyBpZiB0aGUgb2JqZWN0IGNvbnRhaW5zIHByb3BlcnR5XG4gICAgKiBAcGFyYW0gb2JqIG9iamVjdFxuICAgICogQHBhcmFtIHByb3AgcHJvcGVydHkgbmFtZVxuICAgICogQHJldHVybnMgdHJ1ZSBpZiBjb250YWlucywgZmFsc2Ugb3RoZXJ3aXNlXG4gICAgKi9cbiAgICBwcml2YXRlIGhhc1Byb3BlcnR5KG9iaiwgcHJvcCkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYSByZWN1cnNpdmUgZnVuY3Rpb24gZHluYW1pY2FsbHkgYnVpbGRzIFVJIGZpbHRlcnMgc3RydWN0dXJlXG4gICAgICogQHBhcmFtIHBhcmVudE9wZXJhdG9yIHBhcmVudCBsZWdhY3kgY29tcGxleCBvcGVyYXRvclxuICAgICAqIEBwYXJhbSBjdXJyZW50IGNoaWxkIGxlZ2FjeSBvYmplY3QgKGVpdGhlciBhbm90aGVyIGNvbXBsZXggb3IgZXhwcmVzc2lvbiB0eXBlKVxuICAgICAqIEBwYXJhbSBjb250YWluZXJSZWYgcGFyZW50IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gcGFyZW50Rm9ybSBwYXJlbnQgZm9ybVxuICAgICAqL1xuICAgIHByaXZhdGUgZmxhdHRlbihwYXJlbnRPcGVyYXRvcjogc3RyaW5nLCBjdXJyZW50OiBJUGVwUXVlcnlTZWN0aW9uIHwgSVBlcFF1ZXJ5SXRlbSwgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzUHJvcGVydHkoY3VycmVudCwgJ0NvbXBsZXhJZCcpKSB7XG4gICAgICAgICAgICBjb25zdCBzZWN0aW9uID0gY3VycmVudCBhcyBJUGVwUXVlcnlTZWN0aW9uO1xuICAgICAgICAgICAgaWYgKHBhcmVudE9wZXJhdG9yID09PSBjdXJyZW50Lk9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihjdXJyZW50Lk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKGN1cnJlbnQuT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuY3JlYXRlU2VjdGlvbihzZWN0aW9uLk9wZXJhdGlvbiwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCArIDEpO1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihzZWN0aW9uLk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKHNlY3Rpb24uT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNQcm9wZXJ0eShjdXJyZW50LCAnRXhwcmVzc2lvbklkJykpIHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSXRlbShjdXJyZW50IGFzIElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZiwgcGFyZW50Rm9ybSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBvZiB0d28gb3IgbW9yZSBjaGlsZCBmaWx0ZXIgaXRlbXNcbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgQU5EL09SIG9wZXJhdG9yXG4gICAgICogQHBhcmFtIGNvbnRhaW5lclJlZiBwYXJlbnQgZWxlbWVudFxuICAgICAqIEBwYXJhbSBwYXJlbnRGb3JtIHBhcmVudCBmb3JtXG4gICAgICogQHBhcmFtIGRlcHRoXG4gICAgICogQHJldHVybnMgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgZWxlbWVudCBhbmQgY3VycmVudCBmb3JtXG4gICAgICovXG4gICAgY3JlYXRlU2VjdGlvbihvcGVyYXRvcjogUGVwT3BlcmF0b3JUeXBlcywgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX3Jlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFBlcFF1ZXJ5QnVpbGRlclNlY3Rpb25Db21wb25lbnQpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBjb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuXG4gICAgICAgIC8vIGNvbnN0IHNlY3Rpb25Hcm91cCA9IHRoaXMuX2ZiLmdyb3VwKHtcbiAgICAgICAgLy8gICAgIG9wZXJhdG9yOiB0aGlzLl9mYi5jb250cm9sKG9wZXJhdG9yKVxuICAgICAgICAvLyB9KTtcbiAgICAgICAgY29uc3Qgc2VjdGlvbkdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBvcGVyYXRvcjogbmV3IEZvcm1Db250cm9sKG9wZXJhdG9yKVxuICAgICAgICB9KTtcbiAgICAgICAgbGV0IGNvdW50ZXIgPSAxO1xuICAgICAgICBPYmplY3Qua2V5cyhwYXJlbnRGb3JtLmNvbnRyb2xzKS5mb3JFYWNoKGl0ZW0gPT4geyBpZiAoaXRlbS5pbmNsdWRlcygnc2VjdGlvbicpKSB7IGNvdW50ZXIrKzsgfSB9KTtcbiAgICAgICAgY29uc3QgZm9ybUtleSA9IGBzZWN0aW9uJHtjb3VudGVyfWA7XG4gICAgICAgIHBhcmVudEZvcm0uYWRkQ29udHJvbChmb3JtS2V5LCBzZWN0aW9uR3JvdXApO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5mb3JtID0gc2VjdGlvbkdyb3VwO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZGVwdGggPSB7XG4gICAgICAgICAgICBjdXJyZW50OiBkZXB0aCxcbiAgICAgICAgICAgIG1heDogdGhpcy5fbWF4U3RydWN0dXJlRGVwdGhcbiAgICAgICAgfTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmNyZWF0ZVNlY3Rpb24uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLmNyZWF0ZVNlY3Rpb24oUGVwT3BlcmF0b3JUeXBlcy5BbmQsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXAsIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUl0ZW0obnVsbCwgc2VjdGlvbi5jb250YWluZXJSZWYsIHNlY3Rpb24ucGFyZW50Rm9ybSk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuY3JlYXRlSXRlbS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVJdGVtKG51bGwsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXApO1xuICAgICAgICB9KTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnJlbW92ZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgcGFyZW50Rm9ybS5yZW1vdmVDb250cm9sKGZvcm1LZXkpO1xuICAgICAgICAgICAgY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9jbXBSZWZNYXAuaGFzKGZvcm1LZXkpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fY21wUmVmTWFwLmRlbGV0ZShmb3JtS2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vcGVyYXRvckNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvLyBBZGQgdGhpcyB0byByZW1vdmUgYWxsIHRoZSBjb21wb25lbnRzIHdoZW4gZmllbGRzIGNoYW5nZXMuXG4gICAgICAgIHRoaXMuX2NtcFJlZk1hcC5zZXQoZm9ybUtleSwgY29tcG9uZW50UmVmKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmOiBjb21wb25lbnRSZWYuaW5zdGFuY2Uuc2VjdGlvbkNvbnRhaW5lcixcbiAgICAgICAgICAgIHBhcmVudEZvcm06IHNlY3Rpb25Hcm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNyZWF0ZXMgYSBjb21wb25lbnQgcmVwcmVzZW50cyBmaWx0ZXIgaXRlbSAobGVhZiBlbGVtZW50IC0gaGFzIG5vIGNoaWxkcylcbiAgICAgKiBAcGFyYW0gY3VycmVudCBmaWx0ZXIgbGVnYWN5IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIHBhcmVudCBlbGVtZW50XG4gICAgICogQHBhcmFtIHBhcmVudEZvcm0gcGFyZW50IGZvcm1cbiAgICAgKi9cbiAgICBjcmVhdGVJdGVtKGN1cnJlbnQ6IElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcGFyZW50Rm9ybTogRm9ybUdyb3VwKSB7XG4gICAgICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLl9yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShQZXBRdWVyeUJ1aWxkZXJJdGVtQ29tcG9uZW50KTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gY29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcbiAgICAgICAgXG4gICAgICAgIGxldCBjb3VudGVyID0gMTtcbiAgICAgICAgT2JqZWN0LmtleXMocGFyZW50Rm9ybS5jb250cm9scykuZm9yRWFjaChpdGVtID0+IHsgaWYgKGl0ZW0uaW5jbHVkZXMoJ2l0ZW0nKSkgeyBjb3VudGVyKys7IH0gfSk7XG4gICAgICAgIGNvbnN0IGZvcm1LZXkgPSBgaXRlbSR7Y291bnRlcn1gO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5mb3JtS2V5ID0gZm9ybUtleTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmZpZWxkcyA9IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UudmFyaWFibGVGaWVsZHMgPSB0aGlzLl92YXJpYWJsZUZpZWxkcztcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRGaWVsZCA9IHRoaXMuZ2V0U2VsZWN0ZWRGaWVsZChjdXJyZW50KTtcbiAgICAgICAgaWYgKHNlbGVjdGVkRmllbGQpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWxlY3RlZCA9IHNlbGVjdGVkRmllbGQ7XG4gICAgICAgICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWx0ZXIgPSB0aGlzLl9xdWVyeUJ1aWxkZXJTZXJ2aWNlLmdldEZpbHRlcihjdXJyZW50LCBzZWxlY3RlZEZpZWxkLnNtYXJ0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UucGFyZW50Rm9ybSA9IHBhcmVudEZvcm07XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWx0ZXJDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5yZW1vdmUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHBhcmVudEZvcm0ucmVtb3ZlQ29udHJvbChmb3JtS2V5KTtcbiAgICAgICAgICAgIGNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU91dHB1dFF1ZXJ5KCk7XG4gICAgICAgICAgICBpZiAodGhpcy5fY21wUmVmTWFwLmhhcyhmb3JtS2V5KSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2NtcFJlZk1hcC5kZWxldGUoZm9ybUtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIEFkZCB0aGlzIHRvIHJlbW92ZSBhbGwgdGhlIGNvbXBvbmVudHMgd2hlbiBmaWVsZHMgY2hhbmdlcy5cbiAgICAgICAgdGhpcy5fY21wUmVmTWFwLnNldChmb3JtS2V5LCBjb21wb25lbnRSZWYpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdldCBzbWFydCBmaWx0ZXIgZmllbGRcbiAgICAgKiBAcGFyYW0gY3VycmVudCBmaWx0ZXIgbGVnYWN5IGVsZW1lbnRcbiAgICAgKiBAcmV0dXJucyBzbWFydCBmaWx0ZXIgZmllbGQsIGlmIG5vdCBmb3VuZCByZXR1cm5zIHRoZSBmaXJzdCBmaWVsZFxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0U2VsZWN0ZWRGaWVsZChjdXJyZW50OiBJUGVwUXVlcnlJdGVtKTogSVBlcFF1ZXJ5QnVpbGRlckZpZWxkQ29udGFpbmVyIHwgbnVsbCB7XG4gICAgICAgIGlmIChjdXJyZW50KSB7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHMuZmluZChmaWVsZCA9PiBmaWVsZC5zbWFydC5pZCA9PT0gY3VycmVudC5BcGlOYW1lKTtcbiAgICAgICAgICAgIHJldHVybiBpdGVtID8gaXRlbSA6IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzPy5sZW5ndGggPiAwID8gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHNbMF0gOiBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzPy5sZW5ndGggPiAwID8gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHNbMF0gOiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0U21hcnRGaWx0ZXJDb21wb25lbnRUeXBlKHR5cGU6IHN0cmluZykge1xuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2ludCc6XG4gICAgICAgICAgICBjYXNlICdjdXJyZW5jeSc6XG4gICAgICAgICAgICBjYXNlICdyZWFsJzpcbiAgICAgICAgICAgIGNhc2UgJ3BlcmNlbnRhZ2UnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnbnVtYmVyJztcbiAgICAgICAgICAgIGNhc2UgJ2RhdGUtdGltZSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdkYXRlJztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHR5cGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgbGVnYWN5IG91dHB1dCBxdWVyeSBcbiAgICAgKi9cbiAgICBjcmVhdGVPdXRwdXRRdWVyeSgpIHtcbiAgICAgICAgaWYgKHRoaXMuX2Zvcm0udmFsaWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5fb3V0cHV0UXVlcnlTZXJ2aWNlLmdlbmVyYXRlUXVlcnkodGhpcy5fZm9ybS52YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLl9vdXRwdXRRdWVyeSQubmV4dChxdWVyeSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn0iXX0=
|