@docupace/ihub-config 1.1.21 → 1.1.22-admin.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/README.md +182 -182
- package/dist/config-extension.d.ts +23 -0
- package/dist/config-extension.d.ts.map +1 -1
- package/dist/config-extension.js +2 -0
- package/dist/config-extension.js.map +1 -1
- package/dist/config-service.d.ts +12 -3
- package/dist/config-service.d.ts.map +1 -1
- package/dist/config-service.js +128 -21
- package/dist/config-service.js.map +1 -1
- package/dist/mappers/config-mapper.d.ts.map +1 -1
- package/dist/mappers/config-mapper.js +1 -0
- package/dist/mappers/config-mapper.js.map +1 -1
- package/dist/model/graphs/config/common.graphql +7 -7
- package/dist/model/graphs/config/fields.graphql +412 -382
- package/dist/model/graphs/config/menu.graphql +60 -54
- package/dist/model/graphs/config/mutation.graphql +30 -30
- package/dist/model/graphs/config/page.graphql +263 -256
- package/dist/model/graphs/config/panel.graphql +30 -30
- package/dist/model/graphs/config/query.graphql +84 -84
- package/dist/model/graphs/config/rules.graphql +104 -104
- package/dist/model/graphs/config/selectOptions.graphql +48 -47
- package/dist/model/graphs/config/table.graphql +213 -182
- package/dist/model/graphs/config/tests.graphql +16 -16
- package/dist/model/graphs/config/theme.graphql +41 -41
- package/dist/model/graphs/config/ui-components.graphql +10 -10
- package/dist/model/graphs/domains/scalars.graphql +3 -3
- package/dist/model/graphs/filter.graphql +5 -5
- package/dist/model/graphs/schema.graphql +7 -7
- package/dist/types/graphql.d.ts +4 -2
- package/dist/types/graphql.d.ts.map +1 -1
- package/dist/types/graphql.js.map +1 -1
- package/model/graphs/config/common.graphql +7 -7
- package/model/graphs/config/fields.graphql +412 -382
- package/model/graphs/config/menu.graphql +60 -54
- package/model/graphs/config/mutation.graphql +30 -30
- package/model/graphs/config/page.graphql +263 -256
- package/model/graphs/config/panel.graphql +30 -30
- package/model/graphs/config/query.graphql +84 -84
- package/model/graphs/config/rules.graphql +104 -104
- package/model/graphs/config/selectOptions.graphql +48 -47
- package/model/graphs/config/table.graphql +213 -182
- package/model/graphs/config/tests.graphql +16 -16
- package/model/graphs/config/theme.graphql +41 -41
- package/model/graphs/config/ui-components.graphql +10 -10
- package/model/graphs/domains/scalars.graphql +3 -3
- package/model/graphs/filter.graphql +5 -5
- package/model/graphs/schema.graphql +7 -7
- package/package.json +81 -81
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
interface IPanel {
|
|
2
|
-
name: String
|
|
3
|
-
rows: [IPanelRow!]
|
|
4
|
-
dataType: String
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
interface IPanelRow {
|
|
8
|
-
elements: [IRowElement!]
|
|
9
|
-
name: String
|
|
10
|
-
title: String
|
|
11
|
-
titleVariant: String
|
|
12
|
-
visibilityCondition: String
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
type Panel implements IPanel {
|
|
16
|
-
columns: Int
|
|
17
|
-
isGrouped: Boolean
|
|
18
|
-
name: String
|
|
19
|
-
rows: [PanelRow!]!
|
|
20
|
-
dataType: String
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
type PanelRow implements IPanelRow {
|
|
24
|
-
elements: [IRowElement!]
|
|
25
|
-
hasDivider: Boolean
|
|
26
|
-
name: String
|
|
27
|
-
title: String
|
|
28
|
-
titleVariant: String
|
|
29
|
-
visibilityCondition: String
|
|
30
|
-
}
|
|
1
|
+
interface IPanel {
|
|
2
|
+
name: String
|
|
3
|
+
rows: [IPanelRow!]
|
|
4
|
+
dataType: String
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
interface IPanelRow {
|
|
8
|
+
elements: [IRowElement!]
|
|
9
|
+
name: String
|
|
10
|
+
title: String
|
|
11
|
+
titleVariant: String
|
|
12
|
+
visibilityCondition: String
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
type Panel implements IPanel {
|
|
16
|
+
columns: Int
|
|
17
|
+
isGrouped: Boolean
|
|
18
|
+
name: String
|
|
19
|
+
rows: [PanelRow!]!
|
|
20
|
+
dataType: String
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
type PanelRow implements IPanelRow {
|
|
24
|
+
elements: [IRowElement!]
|
|
25
|
+
hasDivider: Boolean
|
|
26
|
+
name: String
|
|
27
|
+
title: String
|
|
28
|
+
titleVariant: String
|
|
29
|
+
visibilityCondition: String
|
|
30
|
+
}
|
|
@@ -1,84 +1,84 @@
|
|
|
1
|
-
|
|
2
|
-
type PageQuery {
|
|
3
|
-
getPageConfig(path: String, context: JSON): Page
|
|
4
|
-
getAIConfig(path: String, context: JSON): JSON
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
type RulesQuery {
|
|
8
|
-
getRuleGroups(context: JSON): [RuleGroup!]!
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
type WidgetQuery {
|
|
12
|
-
list(search: String) : [Widget!]
|
|
13
|
-
get(path : String) : Widget
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
type ThemeQuery {
|
|
17
|
-
get(path: String): Theme
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
"""
|
|
21
|
-
Input for querying dynamic menus
|
|
22
|
-
"""
|
|
23
|
-
input MenuInput {
|
|
24
|
-
"""
|
|
25
|
-
The menu reference/key that identifies which menu to load.
|
|
26
|
-
The resolver can use this key to load menu items from any source:
|
|
27
|
-
database, external API, cache, business logic, YAML config, etc.
|
|
28
|
-
"""
|
|
29
|
-
menuRef: String!
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
"""
|
|
33
|
-
Query for loading dynamic menu items by reference key.
|
|
34
|
-
"""
|
|
35
|
-
type MenuQuery {
|
|
36
|
-
"""
|
|
37
|
-
Get menu items by reference key.
|
|
38
|
-
"""
|
|
39
|
-
get(input: MenuInput!): [MenuItem!]
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
type ConfigQuery {
|
|
43
|
-
pages: PageQuery
|
|
44
|
-
widgets: WidgetQuery
|
|
45
|
-
tests: TestQuery
|
|
46
|
-
themes: ThemeQuery
|
|
47
|
-
data: DataQuery
|
|
48
|
-
rules: RulesQuery
|
|
49
|
-
menus: MenuQuery
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
type DataQuery {
|
|
53
|
-
get(path : String) : [DataResult!]
|
|
54
|
-
list(path : String) : [String]
|
|
55
|
-
getSeedConfig(path: String): SeedConfigResult
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
type DataResult {
|
|
59
|
-
config: DataConfig
|
|
60
|
-
data: JSON!
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
type DataConfig {
|
|
64
|
-
severity: String
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
type SeedConfigResult {
|
|
68
|
-
typeName: String!
|
|
69
|
-
updateMethod: String
|
|
70
|
-
updateInputType: String
|
|
71
|
-
createMethod: String
|
|
72
|
-
createInputType: String
|
|
73
|
-
referenceByIdPaths: [String]
|
|
74
|
-
referencePaths: [String]
|
|
75
|
-
doNotUpdate: Boolean
|
|
76
|
-
doNotDelete: Boolean
|
|
77
|
-
uniqueColumns: [String]
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
type GQLQuery {
|
|
81
|
-
queryName: String
|
|
82
|
-
operationName: String
|
|
83
|
-
variableDefinitions: JSON
|
|
84
|
-
}
|
|
1
|
+
|
|
2
|
+
type PageQuery {
|
|
3
|
+
getPageConfig(path: String, context: JSON): Page
|
|
4
|
+
getAIConfig(path: String, context: JSON): JSON
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
type RulesQuery {
|
|
8
|
+
getRuleGroups(context: JSON): [RuleGroup!]!
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
type WidgetQuery {
|
|
12
|
+
list(search: String) : [Widget!]
|
|
13
|
+
get(path : String) : Widget
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
type ThemeQuery {
|
|
17
|
+
get(path: String): Theme
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
"""
|
|
21
|
+
Input for querying dynamic menus
|
|
22
|
+
"""
|
|
23
|
+
input MenuInput {
|
|
24
|
+
"""
|
|
25
|
+
The menu reference/key that identifies which menu to load.
|
|
26
|
+
The resolver can use this key to load menu items from any source:
|
|
27
|
+
database, external API, cache, business logic, YAML config, etc.
|
|
28
|
+
"""
|
|
29
|
+
menuRef: String!
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
"""
|
|
33
|
+
Query for loading dynamic menu items by reference key.
|
|
34
|
+
"""
|
|
35
|
+
type MenuQuery {
|
|
36
|
+
"""
|
|
37
|
+
Get menu items by reference key.
|
|
38
|
+
"""
|
|
39
|
+
get(input: MenuInput!): [MenuItem!]
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
type ConfigQuery {
|
|
43
|
+
pages: PageQuery
|
|
44
|
+
widgets: WidgetQuery
|
|
45
|
+
tests: TestQuery
|
|
46
|
+
themes: ThemeQuery
|
|
47
|
+
data: DataQuery
|
|
48
|
+
rules: RulesQuery
|
|
49
|
+
menus: MenuQuery
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
type DataQuery {
|
|
53
|
+
get(path : String) : [DataResult!]
|
|
54
|
+
list(path : String) : [String]
|
|
55
|
+
getSeedConfig(path: String): SeedConfigResult
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
type DataResult {
|
|
59
|
+
config: DataConfig
|
|
60
|
+
data: JSON!
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
type DataConfig {
|
|
64
|
+
severity: String
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
type SeedConfigResult {
|
|
68
|
+
typeName: String!
|
|
69
|
+
updateMethod: String
|
|
70
|
+
updateInputType: String
|
|
71
|
+
createMethod: String
|
|
72
|
+
createInputType: String
|
|
73
|
+
referenceByIdPaths: [String]
|
|
74
|
+
referencePaths: [String]
|
|
75
|
+
doNotUpdate: Boolean
|
|
76
|
+
doNotDelete: Boolean
|
|
77
|
+
uniqueColumns: [String]
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
type GQLQuery {
|
|
81
|
+
queryName: String
|
|
82
|
+
operationName: String
|
|
83
|
+
variableDefinitions: JSON
|
|
84
|
+
}
|
|
@@ -1,104 +1,104 @@
|
|
|
1
|
-
type RuleGroup {
|
|
2
|
-
name: String
|
|
3
|
-
description: String
|
|
4
|
-
|
|
5
|
-
"""Type to apply the role group to. For example IContact or BaseWorkItem"""
|
|
6
|
-
type: String
|
|
7
|
-
"""Condition to define which rule groups will be applied. like for example custodian or registrationType"""
|
|
8
|
-
condition: String
|
|
9
|
-
|
|
10
|
-
"""Priority defined when multiple rule groups are matched. Higher value wins."""
|
|
11
|
-
priority: Int
|
|
12
|
-
fieldRules: [IFieldRule!]!
|
|
13
|
-
|
|
14
|
-
"""Custom validators that are not individual field rules (e.g. validation across multiple fields or collections)."""
|
|
15
|
-
validationRules: [ValidationRule!]
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
union ValidationRule = ArrayTotalRule
|
|
19
|
-
|
|
20
|
-
type ArrayTotalRule {
|
|
21
|
-
name: String
|
|
22
|
-
message: String!
|
|
23
|
-
|
|
24
|
-
"""Path to the collection whose elements should be validated."""
|
|
25
|
-
path: String!
|
|
26
|
-
|
|
27
|
-
"""Field from each matching collection element to include in the sum."""
|
|
28
|
-
fieldToSum: String!
|
|
29
|
-
|
|
30
|
-
"""Expected sum of the selected field values."""
|
|
31
|
-
expectedTotal: Int!
|
|
32
|
-
|
|
33
|
-
"""Optional condition used to select collection elements."""
|
|
34
|
-
filterCondition: String
|
|
35
|
-
|
|
36
|
-
"""Determines whether empty data should be considered valid."""
|
|
37
|
-
emptyIsValid: Boolean
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
interface IFieldRule {
|
|
41
|
-
defaultValue: String
|
|
42
|
-
messageLabel: String
|
|
43
|
-
path: String!
|
|
44
|
-
readonly: Boolean
|
|
45
|
-
required: Boolean
|
|
46
|
-
requiredCondition: String
|
|
47
|
-
availabilityCondition: String # maps to visibilityCondition on UI
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
type ListFieldRule implements IFieldRule {
|
|
51
|
-
defaultValue: String
|
|
52
|
-
messageLabel: String
|
|
53
|
-
path: String!
|
|
54
|
-
readonly: Boolean
|
|
55
|
-
required: Boolean
|
|
56
|
-
requiredCondition: String
|
|
57
|
-
availabilityCondition: String # maps to visibilityCondition on UI
|
|
58
|
-
validationRules: [ListFieldValidationRule!]
|
|
59
|
-
validation: FieldValidation
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
type ListFieldValidationRule {
|
|
63
|
-
condition: String
|
|
64
|
-
errorMessage: String
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
type StringFieldRule implements IFieldRule {
|
|
68
|
-
defaultValue: String
|
|
69
|
-
maxLength: Int
|
|
70
|
-
messageLabel: String
|
|
71
|
-
minLength: Int
|
|
72
|
-
path: String!
|
|
73
|
-
readonly: Boolean
|
|
74
|
-
required: Boolean
|
|
75
|
-
requiredCondition: String
|
|
76
|
-
type: FieldValueType
|
|
77
|
-
validation: InputValidation
|
|
78
|
-
availabilityCondition: String
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
type BooleanFieldRule implements IFieldRule {
|
|
82
|
-
defaultValue: String
|
|
83
|
-
messageLabel: String
|
|
84
|
-
path: String!
|
|
85
|
-
readonly: Boolean
|
|
86
|
-
required: Boolean
|
|
87
|
-
requiredCondition: String
|
|
88
|
-
validation: InputValidation
|
|
89
|
-
availabilityCondition: String
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
type DateFieldRule implements IFieldRule {
|
|
94
|
-
defaultValue: String
|
|
95
|
-
messageLabel: String
|
|
96
|
-
path: String!
|
|
97
|
-
readonly: Boolean
|
|
98
|
-
required: Boolean
|
|
99
|
-
requiredCondition: String
|
|
100
|
-
availabilityCondition: String # maps to visibilityCondition on UI
|
|
101
|
-
minDate: String # e.q. "now" or "2025-03-20"
|
|
102
|
-
maxDate: String # e.q. "now" or "2025-03-20"
|
|
103
|
-
validation: FieldValidation
|
|
104
|
-
}
|
|
1
|
+
type RuleGroup {
|
|
2
|
+
name: String
|
|
3
|
+
description: String
|
|
4
|
+
|
|
5
|
+
"""Type to apply the role group to. For example IContact or BaseWorkItem"""
|
|
6
|
+
type: String
|
|
7
|
+
"""Condition to define which rule groups will be applied. like for example custodian or registrationType"""
|
|
8
|
+
condition: String
|
|
9
|
+
|
|
10
|
+
"""Priority defined when multiple rule groups are matched. Higher value wins."""
|
|
11
|
+
priority: Int
|
|
12
|
+
fieldRules: [IFieldRule!]!
|
|
13
|
+
|
|
14
|
+
"""Custom validators that are not individual field rules (e.g. validation across multiple fields or collections)."""
|
|
15
|
+
validationRules: [ValidationRule!]
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
union ValidationRule = ArrayTotalRule
|
|
19
|
+
|
|
20
|
+
type ArrayTotalRule {
|
|
21
|
+
name: String
|
|
22
|
+
message: String!
|
|
23
|
+
|
|
24
|
+
"""Path to the collection whose elements should be validated."""
|
|
25
|
+
path: String!
|
|
26
|
+
|
|
27
|
+
"""Field from each matching collection element to include in the sum."""
|
|
28
|
+
fieldToSum: String!
|
|
29
|
+
|
|
30
|
+
"""Expected sum of the selected field values."""
|
|
31
|
+
expectedTotal: Int!
|
|
32
|
+
|
|
33
|
+
"""Optional condition used to select collection elements."""
|
|
34
|
+
filterCondition: String
|
|
35
|
+
|
|
36
|
+
"""Determines whether empty data should be considered valid."""
|
|
37
|
+
emptyIsValid: Boolean
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
interface IFieldRule {
|
|
41
|
+
defaultValue: String
|
|
42
|
+
messageLabel: String
|
|
43
|
+
path: String!
|
|
44
|
+
readonly: Boolean
|
|
45
|
+
required: Boolean
|
|
46
|
+
requiredCondition: String
|
|
47
|
+
availabilityCondition: String # maps to visibilityCondition on UI
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
type ListFieldRule implements IFieldRule {
|
|
51
|
+
defaultValue: String
|
|
52
|
+
messageLabel: String
|
|
53
|
+
path: String!
|
|
54
|
+
readonly: Boolean
|
|
55
|
+
required: Boolean
|
|
56
|
+
requiredCondition: String
|
|
57
|
+
availabilityCondition: String # maps to visibilityCondition on UI
|
|
58
|
+
validationRules: [ListFieldValidationRule!]
|
|
59
|
+
validation: FieldValidation
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
type ListFieldValidationRule {
|
|
63
|
+
condition: String
|
|
64
|
+
errorMessage: String
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
type StringFieldRule implements IFieldRule {
|
|
68
|
+
defaultValue: String
|
|
69
|
+
maxLength: Int
|
|
70
|
+
messageLabel: String
|
|
71
|
+
minLength: Int
|
|
72
|
+
path: String!
|
|
73
|
+
readonly: Boolean
|
|
74
|
+
required: Boolean
|
|
75
|
+
requiredCondition: String
|
|
76
|
+
type: FieldValueType
|
|
77
|
+
validation: InputValidation
|
|
78
|
+
availabilityCondition: String
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
type BooleanFieldRule implements IFieldRule {
|
|
82
|
+
defaultValue: String
|
|
83
|
+
messageLabel: String
|
|
84
|
+
path: String!
|
|
85
|
+
readonly: Boolean
|
|
86
|
+
required: Boolean
|
|
87
|
+
requiredCondition: String
|
|
88
|
+
validation: InputValidation
|
|
89
|
+
availabilityCondition: String
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
type DateFieldRule implements IFieldRule {
|
|
94
|
+
defaultValue: String
|
|
95
|
+
messageLabel: String
|
|
96
|
+
path: String!
|
|
97
|
+
readonly: Boolean
|
|
98
|
+
required: Boolean
|
|
99
|
+
requiredCondition: String
|
|
100
|
+
availabilityCondition: String # maps to visibilityCondition on UI
|
|
101
|
+
minDate: String # e.q. "now" or "2025-03-20"
|
|
102
|
+
maxDate: String # e.q. "now" or "2025-03-20"
|
|
103
|
+
validation: FieldValidation
|
|
104
|
+
}
|
|
@@ -1,47 +1,48 @@
|
|
|
1
|
-
interface ISelectOptions {
|
|
2
|
-
type: String
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
type SelectOptionsFilter {
|
|
6
|
-
path: String
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
type QuerySelectOptions implements ISelectOptions {
|
|
10
|
-
type: String
|
|
11
|
-
labelProp: String # defaults to "name" in ui
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
1
|
+
interface ISelectOptions {
|
|
2
|
+
type: String
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
type SelectOptionsFilter {
|
|
6
|
+
path: String
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
type QuerySelectOptions implements ISelectOptions {
|
|
10
|
+
type: String
|
|
11
|
+
labelProp: String # defaults to "name" in ui
|
|
12
|
+
labelExpression: String # JS expression evaluated against each option (e.g. "`${option.name} (${option.internalId})`"); takes precedence over labelProp when set
|
|
13
|
+
valueProp: String # defaults to "id" in ui
|
|
14
|
+
queryName: String!
|
|
15
|
+
variableDefinitions: JSON
|
|
16
|
+
variables: JSON
|
|
17
|
+
paths: [String!]!
|
|
18
|
+
operationName: String
|
|
19
|
+
expression: String
|
|
20
|
+
maxRows: Int
|
|
21
|
+
variablesExpressions: JSON
|
|
22
|
+
responsePathPrefix: String
|
|
23
|
+
where: WhereFilterConfig
|
|
24
|
+
filter: SelectOptionsFilter
|
|
25
|
+
excludeId: Boolean
|
|
26
|
+
queryOnTyping: Boolean # if true, query will be triggered on typing
|
|
27
|
+
minLength: Int # minimum length of input to trigger query
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
type ValueSelectOptions implements ISelectOptions {
|
|
31
|
+
type: String
|
|
32
|
+
values: [SelectValue!]!
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
type SelectValue {
|
|
36
|
+
label: String!
|
|
37
|
+
value: JSON!
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
type DropdownSelectOptions implements ISelectOptions {
|
|
41
|
+
type: String
|
|
42
|
+
dropdownName: String!
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
type WhereFilterConfig {
|
|
46
|
+
type: String!
|
|
47
|
+
value: JSON
|
|
48
|
+
}
|