@docupace/ihub-config 1.1.29 → 1.1.30
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-service.d.ts.map +1 -1
- package/dist/config-service.js +30 -21
- package/dist/config-service.js.map +1 -1
- package/dist/model/graphs/config/common.graphql +7 -7
- package/dist/model/graphs/config/fields.graphql +454 -454
- package/dist/model/graphs/config/menu.graphql +60 -60
- package/dist/model/graphs/config/mutation.graphql +30 -30
- package/dist/model/graphs/config/page.graphql +283 -283
- package/dist/model/graphs/config/panel.graphql +43 -43
- package/dist/model/graphs/config/query.graphql +93 -93
- package/dist/model/graphs/config/rules.graphql +116 -116
- package/dist/model/graphs/config/selectOptions.graphql +48 -48
- package/dist/model/graphs/config/table.graphql +231 -231
- 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 +11 -11
- 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/model/graphs/config/common.graphql +7 -7
- package/model/graphs/config/fields.graphql +454 -454
- package/model/graphs/config/menu.graphql +60 -60
- package/model/graphs/config/mutation.graphql +30 -30
- package/model/graphs/config/page.graphql +283 -283
- package/model/graphs/config/panel.graphql +43 -43
- package/model/graphs/config/query.graphql +93 -93
- package/model/graphs/config/rules.graphql +116 -116
- package/model/graphs/config/selectOptions.graphql +48 -48
- package/model/graphs/config/table.graphql +231 -231
- package/model/graphs/config/tests.graphql +16 -16
- package/model/graphs/config/theme.graphql +41 -41
- package/model/graphs/config/ui-components.graphql +11 -11
- 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 +83 -81
|
@@ -1,231 +1,231 @@
|
|
|
1
|
-
|
|
2
|
-
interface ITable {
|
|
3
|
-
"""
|
|
4
|
-
Identifies the GraphQL data type used to load Core domain metadata for attribute-security checks.
|
|
5
|
-
"""
|
|
6
|
-
dataType: String
|
|
7
|
-
selection: TableSelection
|
|
8
|
-
disableColumnSorting: Boolean
|
|
9
|
-
disableRowClick: Boolean
|
|
10
|
-
queryName: String!
|
|
11
|
-
operationName: String
|
|
12
|
-
variableDefinitions: JSON
|
|
13
|
-
variablesExpressions: JSON
|
|
14
|
-
filter: TableFilter
|
|
15
|
-
search: SimpleSearch
|
|
16
|
-
menuItems: [MenuItem!]
|
|
17
|
-
columns: [Column!]!
|
|
18
|
-
rowMenuItems: [MenuItem!]
|
|
19
|
-
preview: Preview
|
|
20
|
-
cardView: CardView
|
|
21
|
-
groupBy: GroupBy
|
|
22
|
-
orderBy: [OrderBy!]
|
|
23
|
-
flattenDataKey: String
|
|
24
|
-
actionButton: ActionButton
|
|
25
|
-
pagingMode: String
|
|
26
|
-
maxRows: Int
|
|
27
|
-
pageSizeOptions: [Int!]
|
|
28
|
-
defaultPageSize: Int
|
|
29
|
-
deferredLoad: Boolean
|
|
30
|
-
useCardView: Boolean
|
|
31
|
-
whereFilter: WhereFilter
|
|
32
|
-
whereFilterName: String
|
|
33
|
-
emptyStateMessage: String
|
|
34
|
-
unstructuredData: Boolean
|
|
35
|
-
toolbar: Toolbar
|
|
36
|
-
pagination: TablePagination
|
|
37
|
-
expandable: Expandable
|
|
38
|
-
totals: [TotalsItem!]
|
|
39
|
-
config: JSON
|
|
40
|
-
configPath: String
|
|
41
|
-
configurableAttributes: [ConfigurableAttribute!]
|
|
42
|
-
"""Admin-defined columns not present in this table's own base `columns`, available to add via the Configure Columns dialog. Site/tenant-scoped catalog — see `$.predefinedColumns` under `configurableAttributes`."""
|
|
43
|
-
predefinedColumns: [Column!]
|
|
44
|
-
"""Admin-defined filter criteria not present in this table's own base `filter.criteria`, available to add via the Configure Filters dialog. Site/tenant-scoped catalog — see `$.predefinedFilters` under `configurableAttributes`."""
|
|
45
|
-
predefinedFilters: [TableCriteria!]
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
"""One overridable sub-element of a config object identified by `configPath` — see the parent's own `configPath` field for how the two combine (`${configPath}#${configSubPath}`)."""
|
|
49
|
-
type ConfigurableAttribute {
|
|
50
|
-
name: String! # e.g. "columns", "filter" — matches the field name on the parent type
|
|
51
|
-
configPath: String! # copy of the parent object's own configPath, for convenience
|
|
52
|
-
configSubPath: String! # JSONPath relative to the parent object, e.g. "$.columns"
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
type TotalsItem {
|
|
56
|
-
path: String!
|
|
57
|
-
label: String!
|
|
58
|
-
component: String
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
type GroupBy {
|
|
62
|
-
path: String
|
|
63
|
-
pathExpression: String
|
|
64
|
-
orderType: OrderType!
|
|
65
|
-
component: String
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
type OrderBy {
|
|
70
|
-
path: String!
|
|
71
|
-
orderType: OrderType!
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
type TableSelection {
|
|
75
|
-
enabled: Boolean
|
|
76
|
-
"""
|
|
77
|
-
Label for the single selection action. One-button shorthand, superseded by
|
|
78
|
-
actions.
|
|
79
|
-
"""
|
|
80
|
-
label: String @deprecated(reason: "Use actions instead.")
|
|
81
|
-
"""
|
|
82
|
-
Action dispatched by the single selection action. One-button shorthand,
|
|
83
|
-
superseded by actions. Ignored when actions is set.
|
|
84
|
-
"""
|
|
85
|
-
action: String @deprecated(reason: "Use actions instead.")
|
|
86
|
-
"""
|
|
87
|
-
Multiple actions rendered side by side in the selection bar. When set, this
|
|
88
|
-
takes precedence over the label/action pair.
|
|
89
|
-
"""
|
|
90
|
-
actions: [TableSelectionButton!]
|
|
91
|
-
disabledCondition: String
|
|
92
|
-
visibilityCondition: String
|
|
93
|
-
position: TablePinnedPosition
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
type TableSelectionButton {
|
|
97
|
-
label: String!
|
|
98
|
-
action: String!
|
|
99
|
-
visibilityCondition: String
|
|
100
|
-
disabledCondition: String
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
enum TablePinnedPosition {
|
|
104
|
-
RIGHT
|
|
105
|
-
LEFT
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
type Toolbar {
|
|
109
|
-
columns: ToolbarColumns
|
|
110
|
-
configureColumns: ToolbarColumns
|
|
111
|
-
configureFilters: ToolbarColumns
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
type ToolbarColumns {
|
|
115
|
-
enabled: Boolean
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
type TablePagination {
|
|
119
|
-
totalCount: TablePaginationTotalCount
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
type TablePaginationTotalCount {
|
|
123
|
-
enabled: Boolean
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
type Table implements ITable
|
|
127
|
-
|
|
128
|
-
type NamedTable implements ITable {
|
|
129
|
-
name: String
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
type TabbedTable {
|
|
133
|
-
tabs: [TableTab!]!
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
union AnyTable = Table | TabbedTable
|
|
137
|
-
|
|
138
|
-
type TableTab {
|
|
139
|
-
name : String!
|
|
140
|
-
label: String!
|
|
141
|
-
table: Table!
|
|
142
|
-
visibilityCondition: String
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
type TableFilter {
|
|
146
|
-
criteria: [TableCriteria!]!
|
|
147
|
-
variant: TableFilterVariant
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
type DateShortcuts {
|
|
151
|
-
enabled: Boolean
|
|
152
|
-
days: [Int!]
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
type TableCriteriaDate {
|
|
156
|
-
calendars: Int
|
|
157
|
-
disableFuture: Boolean
|
|
158
|
-
format: String
|
|
159
|
-
shortcuts: DateShortcuts
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
type TableCriteria {
|
|
163
|
-
name: String!
|
|
164
|
-
label: String!
|
|
165
|
-
labelProp: String
|
|
166
|
-
path: String!
|
|
167
|
-
component: String
|
|
168
|
-
config: JSON
|
|
169
|
-
dataType: String
|
|
170
|
-
date: TableCriteriaDate
|
|
171
|
-
defaultValue: String
|
|
172
|
-
multiple: Boolean
|
|
173
|
-
exactMatchEnabled: Boolean
|
|
174
|
-
operator: String
|
|
175
|
-
selectOptions: ISelectOptions
|
|
176
|
-
min: Float
|
|
177
|
-
max: Float
|
|
178
|
-
visible: Boolean
|
|
179
|
-
"""Set when this criterion was added by `$ref`-referencing a predefined/base criterion (e.g. `"#$.predefinedFilters[?(@.name=='status')]"`) rather than being copied inline — see the config-path override merge in `config-service.ts`. Clients that re-save this criterion unchanged should keep sending the same `$ref` (as this value) rather than flattening it into a full copy."""
|
|
180
|
-
ref: String
|
|
181
|
-
"""True when this criterion would still show up — present by name *and* not hidden — without the current scope's own override, i.e. from a broader layer (a role/site override, or the table's own base template `filter.criteria`). Drives two things in the Configure Filters editor. Hide-vs-delete: "remove" must hide (`visible: false`) an inherited criterion, since deleting it from the override would just have it reappear from the broader layer on the next read, while a non-inherited one can be deleted outright. And pin-on-add: re-adding a *non*-inherited criterion must write an explicit `visible: true`, or the broader layer's `visible: false` is inherited per-attribute by the name-keyed merge and the criterion stays invisible however it's re-added. Computed fresh on every read in `config-service.ts`'s `applyConfigPathOverride` against the layers below the identity's own scope tier (`ConfigurationOverrideResult.inheritedSubPaths`), never persisted."""
|
|
182
|
-
inherited: Boolean
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
enum TableFilterVariant {
|
|
186
|
-
SIDEBAR
|
|
187
|
-
MODAL
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
type Column {
|
|
191
|
-
name: String!
|
|
192
|
-
label: String!
|
|
193
|
-
visible: Boolean
|
|
194
|
-
paths: [String!]
|
|
195
|
-
expression: String
|
|
196
|
-
"""Which predefined formatter (if any) generated `expression` — e.g. `"commaList"`, `"custom"` — see `EXPRESSION_FORMATTERS`/`CUSTOM_FORMATTER_ID` in docupace-ui-main's `expressionGeneration.ts`. Absent for the raw/no-formatting default, which stores neither this nor `expression` at all. Without this field, a column's `expression` round-trips but the formatter that produced it doesn't, so the Configure Columns editor can't tell "built from a known formatter" apart from "hand-authored custom script" on reload and always falls back to showing the latter."""
|
|
197
|
-
formatterName: String
|
|
198
|
-
component: String
|
|
199
|
-
sortable: Boolean
|
|
200
|
-
flex: Float
|
|
201
|
-
pinned: TablePinnedPosition
|
|
202
|
-
config: JSON
|
|
203
|
-
filter: ColumnFilter
|
|
204
|
-
"""Set when this column was added by `$ref`-referencing a predefined/base column (e.g. `"#$.predefinedColumns[?(@.name=='email')]"`) rather than being copied inline — see the config-path override merge in `config-service.ts`. Clients that re-save this column unchanged should keep sending the same `$ref` (as this value) rather than flattening it into a full copy."""
|
|
205
|
-
ref: String
|
|
206
|
-
"""True when this column would still show up — present by name *and* not hidden — without the current scope's own override, i.e. from a broader layer (a role/site override, or the table's own base template `columns`). Drives hide-vs-delete and pin-on-add in the Configure Columns editor — see `TableCriteria.inherited`'s doc comment for the full reasoning, identical here."""
|
|
207
|
-
inherited: Boolean
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
type ColumnFilter {
|
|
211
|
-
operators: [String]
|
|
212
|
-
path: String
|
|
213
|
-
dataType: String
|
|
214
|
-
selectOptions: ISelectOptions
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
type SimpleSearch {
|
|
218
|
-
filterType: String
|
|
219
|
-
searchBy: String
|
|
220
|
-
placeholder: String
|
|
221
|
-
selectOptions: QuerySelectOptions!
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
type WhereFilter {
|
|
225
|
-
type: String!
|
|
226
|
-
value: JSON!
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
type Expandable {
|
|
230
|
-
component: String
|
|
231
|
-
}
|
|
1
|
+
|
|
2
|
+
interface ITable {
|
|
3
|
+
"""
|
|
4
|
+
Identifies the GraphQL data type used to load Core domain metadata for attribute-security checks.
|
|
5
|
+
"""
|
|
6
|
+
dataType: String
|
|
7
|
+
selection: TableSelection
|
|
8
|
+
disableColumnSorting: Boolean
|
|
9
|
+
disableRowClick: Boolean
|
|
10
|
+
queryName: String!
|
|
11
|
+
operationName: String
|
|
12
|
+
variableDefinitions: JSON
|
|
13
|
+
variablesExpressions: JSON
|
|
14
|
+
filter: TableFilter
|
|
15
|
+
search: SimpleSearch
|
|
16
|
+
menuItems: [MenuItem!]
|
|
17
|
+
columns: [Column!]!
|
|
18
|
+
rowMenuItems: [MenuItem!]
|
|
19
|
+
preview: Preview
|
|
20
|
+
cardView: CardView
|
|
21
|
+
groupBy: GroupBy
|
|
22
|
+
orderBy: [OrderBy!]
|
|
23
|
+
flattenDataKey: String
|
|
24
|
+
actionButton: ActionButton
|
|
25
|
+
pagingMode: String
|
|
26
|
+
maxRows: Int
|
|
27
|
+
pageSizeOptions: [Int!]
|
|
28
|
+
defaultPageSize: Int
|
|
29
|
+
deferredLoad: Boolean
|
|
30
|
+
useCardView: Boolean
|
|
31
|
+
whereFilter: WhereFilter
|
|
32
|
+
whereFilterName: String
|
|
33
|
+
emptyStateMessage: String
|
|
34
|
+
unstructuredData: Boolean
|
|
35
|
+
toolbar: Toolbar
|
|
36
|
+
pagination: TablePagination
|
|
37
|
+
expandable: Expandable
|
|
38
|
+
totals: [TotalsItem!]
|
|
39
|
+
config: JSON
|
|
40
|
+
configPath: String
|
|
41
|
+
configurableAttributes: [ConfigurableAttribute!]
|
|
42
|
+
"""Admin-defined columns not present in this table's own base `columns`, available to add via the Configure Columns dialog. Site/tenant-scoped catalog — see `$.predefinedColumns` under `configurableAttributes`."""
|
|
43
|
+
predefinedColumns: [Column!]
|
|
44
|
+
"""Admin-defined filter criteria not present in this table's own base `filter.criteria`, available to add via the Configure Filters dialog. Site/tenant-scoped catalog — see `$.predefinedFilters` under `configurableAttributes`."""
|
|
45
|
+
predefinedFilters: [TableCriteria!]
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
"""One overridable sub-element of a config object identified by `configPath` — see the parent's own `configPath` field for how the two combine (`${configPath}#${configSubPath}`)."""
|
|
49
|
+
type ConfigurableAttribute {
|
|
50
|
+
name: String! # e.g. "columns", "filter" — matches the field name on the parent type
|
|
51
|
+
configPath: String! # copy of the parent object's own configPath, for convenience
|
|
52
|
+
configSubPath: String! # JSONPath relative to the parent object, e.g. "$.columns"
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
type TotalsItem {
|
|
56
|
+
path: String!
|
|
57
|
+
label: String!
|
|
58
|
+
component: String
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
type GroupBy {
|
|
62
|
+
path: String
|
|
63
|
+
pathExpression: String
|
|
64
|
+
orderType: OrderType!
|
|
65
|
+
component: String
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
type OrderBy {
|
|
70
|
+
path: String!
|
|
71
|
+
orderType: OrderType!
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
type TableSelection {
|
|
75
|
+
enabled: Boolean
|
|
76
|
+
"""
|
|
77
|
+
Label for the single selection action. One-button shorthand, superseded by
|
|
78
|
+
actions.
|
|
79
|
+
"""
|
|
80
|
+
label: String @deprecated(reason: "Use actions instead.")
|
|
81
|
+
"""
|
|
82
|
+
Action dispatched by the single selection action. One-button shorthand,
|
|
83
|
+
superseded by actions. Ignored when actions is set.
|
|
84
|
+
"""
|
|
85
|
+
action: String @deprecated(reason: "Use actions instead.")
|
|
86
|
+
"""
|
|
87
|
+
Multiple actions rendered side by side in the selection bar. When set, this
|
|
88
|
+
takes precedence over the label/action pair.
|
|
89
|
+
"""
|
|
90
|
+
actions: [TableSelectionButton!]
|
|
91
|
+
disabledCondition: String
|
|
92
|
+
visibilityCondition: String
|
|
93
|
+
position: TablePinnedPosition
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
type TableSelectionButton {
|
|
97
|
+
label: String!
|
|
98
|
+
action: String!
|
|
99
|
+
visibilityCondition: String
|
|
100
|
+
disabledCondition: String
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
enum TablePinnedPosition {
|
|
104
|
+
RIGHT
|
|
105
|
+
LEFT
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
type Toolbar {
|
|
109
|
+
columns: ToolbarColumns
|
|
110
|
+
configureColumns: ToolbarColumns
|
|
111
|
+
configureFilters: ToolbarColumns
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
type ToolbarColumns {
|
|
115
|
+
enabled: Boolean
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
type TablePagination {
|
|
119
|
+
totalCount: TablePaginationTotalCount
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
type TablePaginationTotalCount {
|
|
123
|
+
enabled: Boolean
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
type Table implements ITable
|
|
127
|
+
|
|
128
|
+
type NamedTable implements ITable {
|
|
129
|
+
name: String
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
type TabbedTable {
|
|
133
|
+
tabs: [TableTab!]!
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
union AnyTable = Table | TabbedTable
|
|
137
|
+
|
|
138
|
+
type TableTab {
|
|
139
|
+
name : String!
|
|
140
|
+
label: String!
|
|
141
|
+
table: Table!
|
|
142
|
+
visibilityCondition: String
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
type TableFilter {
|
|
146
|
+
criteria: [TableCriteria!]!
|
|
147
|
+
variant: TableFilterVariant
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
type DateShortcuts {
|
|
151
|
+
enabled: Boolean
|
|
152
|
+
days: [Int!]
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
type TableCriteriaDate {
|
|
156
|
+
calendars: Int
|
|
157
|
+
disableFuture: Boolean
|
|
158
|
+
format: String
|
|
159
|
+
shortcuts: DateShortcuts
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
type TableCriteria {
|
|
163
|
+
name: String!
|
|
164
|
+
label: String!
|
|
165
|
+
labelProp: String
|
|
166
|
+
path: String!
|
|
167
|
+
component: String
|
|
168
|
+
config: JSON
|
|
169
|
+
dataType: String
|
|
170
|
+
date: TableCriteriaDate
|
|
171
|
+
defaultValue: String
|
|
172
|
+
multiple: Boolean
|
|
173
|
+
exactMatchEnabled: Boolean
|
|
174
|
+
operator: String
|
|
175
|
+
selectOptions: ISelectOptions
|
|
176
|
+
min: Float
|
|
177
|
+
max: Float
|
|
178
|
+
visible: Boolean
|
|
179
|
+
"""Set when this criterion was added by `$ref`-referencing a predefined/base criterion (e.g. `"#$.predefinedFilters[?(@.name=='status')]"`) rather than being copied inline — see the config-path override merge in `config-service.ts`. Clients that re-save this criterion unchanged should keep sending the same `$ref` (as this value) rather than flattening it into a full copy."""
|
|
180
|
+
ref: String
|
|
181
|
+
"""True when this criterion would still show up — present by name *and* not hidden — without the current scope's own override, i.e. from a broader layer (a role/site override, or the table's own base template `filter.criteria`). Drives two things in the Configure Filters editor. Hide-vs-delete: "remove" must hide (`visible: false`) an inherited criterion, since deleting it from the override would just have it reappear from the broader layer on the next read, while a non-inherited one can be deleted outright. And pin-on-add: re-adding a *non*-inherited criterion must write an explicit `visible: true`, or the broader layer's `visible: false` is inherited per-attribute by the name-keyed merge and the criterion stays invisible however it's re-added. Computed fresh on every read in `config-service.ts`'s `applyConfigPathOverride` against the layers below the identity's own scope tier (`ConfigurationOverrideResult.inheritedSubPaths`), never persisted."""
|
|
182
|
+
inherited: Boolean
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
enum TableFilterVariant {
|
|
186
|
+
SIDEBAR
|
|
187
|
+
MODAL
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
type Column {
|
|
191
|
+
name: String!
|
|
192
|
+
label: String!
|
|
193
|
+
visible: Boolean
|
|
194
|
+
paths: [String!]
|
|
195
|
+
expression: String
|
|
196
|
+
"""Which predefined formatter (if any) generated `expression` — e.g. `"commaList"`, `"custom"` — see `EXPRESSION_FORMATTERS`/`CUSTOM_FORMATTER_ID` in docupace-ui-main's `expressionGeneration.ts`. Absent for the raw/no-formatting default, which stores neither this nor `expression` at all. Without this field, a column's `expression` round-trips but the formatter that produced it doesn't, so the Configure Columns editor can't tell "built from a known formatter" apart from "hand-authored custom script" on reload and always falls back to showing the latter."""
|
|
197
|
+
formatterName: String
|
|
198
|
+
component: String
|
|
199
|
+
sortable: Boolean
|
|
200
|
+
flex: Float
|
|
201
|
+
pinned: TablePinnedPosition
|
|
202
|
+
config: JSON
|
|
203
|
+
filter: ColumnFilter
|
|
204
|
+
"""Set when this column was added by `$ref`-referencing a predefined/base column (e.g. `"#$.predefinedColumns[?(@.name=='email')]"`) rather than being copied inline — see the config-path override merge in `config-service.ts`. Clients that re-save this column unchanged should keep sending the same `$ref` (as this value) rather than flattening it into a full copy."""
|
|
205
|
+
ref: String
|
|
206
|
+
"""True when this column would still show up — present by name *and* not hidden — without the current scope's own override, i.e. from a broader layer (a role/site override, or the table's own base template `columns`). Drives hide-vs-delete and pin-on-add in the Configure Columns editor — see `TableCriteria.inherited`'s doc comment for the full reasoning, identical here."""
|
|
207
|
+
inherited: Boolean
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
type ColumnFilter {
|
|
211
|
+
operators: [String]
|
|
212
|
+
path: String
|
|
213
|
+
dataType: String
|
|
214
|
+
selectOptions: ISelectOptions
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
type SimpleSearch {
|
|
218
|
+
filterType: String
|
|
219
|
+
searchBy: String
|
|
220
|
+
placeholder: String
|
|
221
|
+
selectOptions: QuerySelectOptions!
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
type WhereFilter {
|
|
225
|
+
type: String!
|
|
226
|
+
value: JSON!
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
type Expandable {
|
|
230
|
+
component: String
|
|
231
|
+
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
type Test {
|
|
3
|
-
name : String!
|
|
4
|
-
description: String
|
|
5
|
-
configPath : String!
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
type TestResults {
|
|
9
|
-
items : [Test!]!
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
type TestQuery {
|
|
13
|
-
list(path : String!, search: String) : TestResults
|
|
14
|
-
getConfig(path : String) : JSON!
|
|
15
|
-
}
|
|
16
|
-
|
|
1
|
+
|
|
2
|
+
type Test {
|
|
3
|
+
name : String!
|
|
4
|
+
description: String
|
|
5
|
+
configPath : String!
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
type TestResults {
|
|
9
|
+
items : [Test!]!
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
type TestQuery {
|
|
13
|
+
list(path : String!, search: String) : TestResults
|
|
14
|
+
getConfig(path : String) : JSON!
|
|
15
|
+
}
|
|
16
|
+
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
type Base64Image {
|
|
2
|
-
"Base64 encoded image data"
|
|
3
|
-
data: String!
|
|
4
|
-
"MIME type of the image (e.g. 'image/png', 'image/jpeg')"
|
|
5
|
-
mimeType: String!
|
|
6
|
-
"Unique hash of the image data for caching purposes"
|
|
7
|
-
hash: String!
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
type Theme {
|
|
11
|
-
name: String
|
|
12
|
-
"Base64 encoded logo image data"
|
|
13
|
-
logoImage: Base64Image
|
|
14
|
-
"""
|
|
15
|
-
@deprecated Use logoImage instead
|
|
16
|
-
SVG logo image data in string format
|
|
17
|
-
"""
|
|
18
|
-
logoSvg: String
|
|
19
|
-
"Base64 encoded sidebar logo image data"
|
|
20
|
-
sidebarLogoImage: Base64Image
|
|
21
|
-
"""
|
|
22
|
-
@deprecated Use sidebarLogoImage instead
|
|
23
|
-
SVG sidebar logo image data in string format
|
|
24
|
-
"""
|
|
25
|
-
sidebarLogoSvg: String
|
|
26
|
-
"Base64 encoded login logo image data"
|
|
27
|
-
loginLogoImage: Base64Image
|
|
28
|
-
"""
|
|
29
|
-
@deprecated Use loginLogoImage instead
|
|
30
|
-
SVG login logo image data in string format
|
|
31
|
-
"""
|
|
32
|
-
loginLogoSvg: String
|
|
33
|
-
"Base64 encoded login background image data"
|
|
34
|
-
loginBackgroundImage: Base64Image
|
|
35
|
-
"""
|
|
36
|
-
@deprecated Use loginBackgroundImage instead
|
|
37
|
-
SVG login background image data in string format
|
|
38
|
-
"""
|
|
39
|
-
loginBackgroundSvg: String
|
|
40
|
-
colors: JSON
|
|
41
|
-
}
|
|
1
|
+
type Base64Image {
|
|
2
|
+
"Base64 encoded image data"
|
|
3
|
+
data: String!
|
|
4
|
+
"MIME type of the image (e.g. 'image/png', 'image/jpeg')"
|
|
5
|
+
mimeType: String!
|
|
6
|
+
"Unique hash of the image data for caching purposes"
|
|
7
|
+
hash: String!
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type Theme {
|
|
11
|
+
name: String
|
|
12
|
+
"Base64 encoded logo image data"
|
|
13
|
+
logoImage: Base64Image
|
|
14
|
+
"""
|
|
15
|
+
@deprecated Use logoImage instead
|
|
16
|
+
SVG logo image data in string format
|
|
17
|
+
"""
|
|
18
|
+
logoSvg: String
|
|
19
|
+
"Base64 encoded sidebar logo image data"
|
|
20
|
+
sidebarLogoImage: Base64Image
|
|
21
|
+
"""
|
|
22
|
+
@deprecated Use sidebarLogoImage instead
|
|
23
|
+
SVG sidebar logo image data in string format
|
|
24
|
+
"""
|
|
25
|
+
sidebarLogoSvg: String
|
|
26
|
+
"Base64 encoded login logo image data"
|
|
27
|
+
loginLogoImage: Base64Image
|
|
28
|
+
"""
|
|
29
|
+
@deprecated Use loginLogoImage instead
|
|
30
|
+
SVG login logo image data in string format
|
|
31
|
+
"""
|
|
32
|
+
loginLogoSvg: String
|
|
33
|
+
"Base64 encoded login background image data"
|
|
34
|
+
loginBackgroundImage: Base64Image
|
|
35
|
+
"""
|
|
36
|
+
@deprecated Use loginBackgroundImage instead
|
|
37
|
+
SVG login background image data in string format
|
|
38
|
+
"""
|
|
39
|
+
loginBackgroundSvg: String
|
|
40
|
+
colors: JSON
|
|
41
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
type TextElement implements IRowElement & IElement {
|
|
2
|
-
color: String
|
|
3
|
-
cols: Int
|
|
4
|
-
fontSize: String
|
|
5
|
-
name: String
|
|
6
|
-
sx: JSON
|
|
7
|
-
value: String
|
|
8
|
-
valueExpression: String
|
|
9
|
-
variant: String
|
|
10
|
-
visibilityCondition: String
|
|
11
|
-
custom: Boolean
|
|
1
|
+
type TextElement implements IRowElement & IElement {
|
|
2
|
+
color: String
|
|
3
|
+
cols: Int
|
|
4
|
+
fontSize: String
|
|
5
|
+
name: String
|
|
6
|
+
sx: JSON
|
|
7
|
+
value: String
|
|
8
|
+
valueExpression: String
|
|
9
|
+
variant: String
|
|
10
|
+
visibilityCondition: String
|
|
11
|
+
custom: Boolean
|
|
12
12
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
scalar Number
|
|
2
|
-
|
|
3
|
-
scalar JSON
|
|
1
|
+
scalar Number
|
|
2
|
+
|
|
3
|
+
scalar JSON
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
enum OrderType {
|
|
3
|
-
ASC
|
|
4
|
-
DESC
|
|
5
|
-
}
|
|
1
|
+
|
|
2
|
+
enum OrderType {
|
|
3
|
+
ASC
|
|
4
|
+
DESC
|
|
5
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
type Query {
|
|
2
|
-
config: ConfigQuery
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
type Mutation {
|
|
6
|
-
config: ConfigMutation
|
|
7
|
-
}
|
|
1
|
+
type Query {
|
|
2
|
+
config: ConfigQuery
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
type Mutation {
|
|
6
|
+
config: ConfigMutation
|
|
7
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
interface IElement {
|
|
2
|
-
name: String
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
interface IRowElement implements IElement {
|
|
6
|
-
cols: Int
|
|
7
|
-
name: String
|
|
1
|
+
interface IElement {
|
|
2
|
+
name: String
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
interface IRowElement implements IElement {
|
|
6
|
+
cols: Int
|
|
7
|
+
name: String
|
|
8
8
|
}
|