@docupace/ihub-config 1.1.30 → 1.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +182 -182
  2. package/dist/config-service.d.ts +2 -2
  3. package/dist/config-service.d.ts.map +1 -1
  4. package/dist/config-service.js +7 -5
  5. package/dist/config-service.js.map +1 -1
  6. package/dist/model/graphs/config/common.graphql +7 -7
  7. package/dist/model/graphs/config/fields.graphql +467 -454
  8. package/dist/model/graphs/config/menu.graphql +60 -60
  9. package/dist/model/graphs/config/mutation.graphql +30 -30
  10. package/dist/model/graphs/config/page.graphql +283 -283
  11. package/dist/model/graphs/config/panel.graphql +43 -43
  12. package/dist/model/graphs/config/query.graphql +102 -93
  13. package/dist/model/graphs/config/rules.graphql +116 -116
  14. package/dist/model/graphs/config/selectOptions.graphql +48 -48
  15. package/dist/model/graphs/config/table.graphql +231 -231
  16. package/dist/model/graphs/config/tests.graphql +16 -16
  17. package/dist/model/graphs/config/theme.graphql +41 -41
  18. package/dist/model/graphs/config/ui-components.graphql +11 -11
  19. package/dist/model/graphs/domains/scalars.graphql +3 -3
  20. package/dist/model/graphs/filter.graphql +5 -5
  21. package/dist/model/graphs/schema.graphql +7 -7
  22. package/model/graphs/config/common.graphql +7 -7
  23. package/model/graphs/config/fields.graphql +467 -454
  24. package/model/graphs/config/menu.graphql +60 -60
  25. package/model/graphs/config/mutation.graphql +30 -30
  26. package/model/graphs/config/page.graphql +283 -283
  27. package/model/graphs/config/panel.graphql +43 -43
  28. package/model/graphs/config/query.graphql +102 -93
  29. package/model/graphs/config/rules.graphql +116 -116
  30. package/model/graphs/config/selectOptions.graphql +48 -48
  31. package/model/graphs/config/table.graphql +231 -231
  32. package/model/graphs/config/tests.graphql +16 -16
  33. package/model/graphs/config/theme.graphql +41 -41
  34. package/model/graphs/config/ui-components.graphql +11 -11
  35. package/model/graphs/domains/scalars.graphql +3 -3
  36. package/model/graphs/filter.graphql +5 -5
  37. package/model/graphs/schema.graphql +7 -7
  38. package/package.json +81 -83
@@ -1,283 +1,283 @@
1
- interface Page {
2
- title: String
3
- description: String
4
- config: JSON
5
- }
6
-
7
- type OverviewPage implements Page {
8
- title: String
9
- description: String
10
- domain: String
11
- cards: [Card]
12
- menuItems: [MenuItem]
13
- config: JSON
14
- tables: [Table]
15
- breadcrumbs: [Breadcrumb!]
16
- }
17
-
18
- type TablePage implements Page {
19
- title: String
20
- component: String
21
- description: String
22
- actionButton: ActionButton
23
- table: AnyTable!
24
- panel: Panel
25
- config: JSON
26
- breadcrumbs: [Breadcrumb!]
27
- }
28
-
29
- type ComponentPage implements Page {
30
- title: String
31
- description: String
32
- component: String
33
- panel: Panel
34
- config: JSON
35
- mutations: JSON
36
- breadcrumbs: [Breadcrumb!]
37
- }
38
-
39
- type TabbedPage implements Page {
40
- title: String
41
- description: String
42
- tabs: [Tab!]!
43
- config: JSON
44
- gqlQuery: GQLQuery
45
- # TODO: Replace `mutations` (currently a JSON object used as { [mutationName: String]: GQLQuery }) with a properly typed map.
46
- mutations: JSON
47
- breadcrumbs: [Breadcrumb!]
48
- }
49
-
50
- """
51
- The write operation used when applying Core data type attribute security.
52
- """
53
- enum DataTypeSecurityMode {
54
- CREATE
55
- UPDATE
56
- }
57
-
58
- type DetailsPage implements Page {
59
- title: String
60
- description: String
61
- panel: Panel
62
- """
63
- Selects the Core write permission applied when processing this page's panel.
64
-
65
- This belongs to DetailsPage because CREATE or UPDATE describes how the page uses
66
- the panel. Panel.dataType remains on Panel because it identifies the panel's record
67
- type. A panel may be reused by create and update pages with different security modes.
68
-
69
- CREATE checks insert permission and UPDATE checks update permission. Both modes
70
- check select permission. When omitted, the application uses UPDATE.
71
- """
72
- dataTypeSecurityMode: DataTypeSecurityMode
73
- config: JSON
74
- breadcrumbs: [Breadcrumb!]
75
- }
76
-
77
- type DomainRecordTemplate implements Page {
78
- title: String
79
- description: String
80
- sideMenu: SideMenu
81
- viewer: Viewer
82
- config: JSON
83
- }
84
-
85
- type PageLayout implements Page {
86
- title: String
87
- description: String
88
- sideMenu: SideMenu
89
- widgets: [ExternalWidget]
90
- config: JSON
91
- }
92
-
93
- type DashboardPage implements Page {
94
- panel: DashboardPanel
95
- title: String
96
- description: String
97
- config: JSON
98
- }
99
-
100
- type ReportPage implements Page {
101
- title: String
102
- description: String
103
- controlPanel: Panel
104
- dashboardPanel: DashboardPanel
105
- breadcrumbs: [Breadcrumb!]
106
- config: JSON
107
- }
108
-
109
- type AnyPage implements Page {
110
- title: String
111
- description: String
112
- tables: [NamedTable!]
113
- panels: [Panel!]
114
- tabbedPages: [TabbedPage!]
115
- config: JSON
116
- breadcrumbs: [Breadcrumb!]
117
- }
118
-
119
- type WizardPage implements Page {
120
- description: String
121
- title : String
122
- dataSource: String
123
- steps: [Step!]!
124
- loadWizardByCustodian: [LoadWizardByCustodian]
125
- defaultWizard: String
126
- # TODO: Replace `mutations` (currently a JSON object used as { [mutationName: String]: GQLQuery }) with a properly typed map.
127
- mutations: JSON
128
- config: JSON
129
- breadcrumbs: [Breadcrumb!]
130
- workItemsQueryParams: BaseWorkItemQueryParams
131
- }
132
-
133
- type BaseWorkItemQueryParams {
134
- docIds: [Int!]
135
- excludeFields: [String!]
136
- excludeInitialData: Boolean
137
- format: String
138
- includeFields: [String!]
139
- oldNames: Boolean
140
- onlyInitialData: Boolean
141
- sorted: Boolean
142
- performMapping: String
143
- }
144
-
145
- type LoadWizardByCustodian {
146
- custodian: String
147
- wizard: String
148
- }
149
-
150
- type Step {
151
- id : String!
152
- label : String!
153
- icon: String
154
- page : Page
155
- visibilityCondition: String
156
- pathUrl: String
157
- }
158
-
159
- type SideMenu {
160
- headerCard: Card
161
- menuItems: [MenuItem!]
162
- dataCard: Card
163
- }
164
-
165
- type CardView {
166
- queryName: String
167
- card: Card!
168
- groups: CardGroups
169
- }
170
-
171
- type CardGroups {
172
- queryName: String!
173
- titlePath: String!
174
- configKeyPath: String!
175
- dataKeyPath: String!
176
- }
177
-
178
- type Tab {
179
- name: String!
180
- label: String!
181
- page: Page!
182
- visibilityCondition: String
183
- config: JSON
184
- }
185
-
186
- type DashboardPanel implements IPanel {
187
- name: String
188
- rows: [DashboardPanelRow!]
189
- }
190
-
191
- type DashboardPanelRow implements IPanelRow {
192
- name: String!
193
- title: String
194
- titleVariant: String
195
- layout: Number
196
- hidden: Boolean
197
- visibilityCondition: String
198
- elements: [Widget!]
199
- }
200
-
201
- type Preview {
202
- headerCard: Card
203
- panel: Panel
204
- }
205
-
206
- interface ICard implements IElement {
207
- name: String
208
- component: String
209
- config: JSON
210
- }
211
-
212
- interface QuickApp {
213
- url: String
214
- appPreference: String
215
- target: Boolean
216
- }
217
-
218
- type CardRow {
219
- name: String
220
- paths: [String!]
221
- expression: String
222
- icon: String
223
- component: String
224
- }
225
-
226
- type Card implements ICard & IRowElement & IElement {
227
- name: String
228
- component: String!
229
- config: JSON
230
- cols: Int
231
- title: String
232
- rows: [CardRow]
233
- }
234
-
235
- type Widget implements ICard & IRowElement & IElement & QuickApp {
236
- id: String!
237
- name: String
238
- title: String
239
- description: String
240
- component: String
241
- config: JSON
242
- cols: Int
243
- table: AnyTable
244
- }
245
-
246
- type ExternalWidget {
247
- id: String
248
- name: String
249
- description: String
250
- visibilityCondition: String
251
- config: JSON
252
- }
253
-
254
- type ViewerOptions {
255
- thumbnails: Boolean
256
- pageNavigation: Boolean
257
- lazyLoading: Boolean
258
- }
259
-
260
- type ViewerToolbar {
261
- menuItems: [MenuItem!]!
262
- actionButton: ActionButton
263
- }
264
-
265
- type Viewer {
266
- documentActions: [MenuItem!]
267
- options: ViewerOptions
268
- toolbar: ViewerToolbar
269
- }
270
-
271
- type Breadcrumb {
272
- label: String
273
- path: String
274
- isLabelExpression: Boolean
275
- isPathExpression: Boolean
276
- """
277
- Dot-notation paths (e.g. "name", "folder.title") to try, in order, against
278
- the already-fetched page record to compute the breadcrumb label. Used only
279
- when `isLabelExpression` is not set. If none of the paths resolve to a
280
- non-empty value, the client falls back to the record's `id`.
281
- """
282
- valuePaths: [String!]
283
- }
1
+ interface Page {
2
+ title: String
3
+ description: String
4
+ config: JSON
5
+ }
6
+
7
+ type OverviewPage implements Page {
8
+ title: String
9
+ description: String
10
+ domain: String
11
+ cards: [Card]
12
+ menuItems: [MenuItem]
13
+ config: JSON
14
+ tables: [Table]
15
+ breadcrumbs: [Breadcrumb!]
16
+ }
17
+
18
+ type TablePage implements Page {
19
+ title: String
20
+ component: String
21
+ description: String
22
+ actionButton: ActionButton
23
+ table: AnyTable!
24
+ panel: Panel
25
+ config: JSON
26
+ breadcrumbs: [Breadcrumb!]
27
+ }
28
+
29
+ type ComponentPage implements Page {
30
+ title: String
31
+ description: String
32
+ component: String
33
+ panel: Panel
34
+ config: JSON
35
+ mutations: JSON
36
+ breadcrumbs: [Breadcrumb!]
37
+ }
38
+
39
+ type TabbedPage implements Page {
40
+ title: String
41
+ description: String
42
+ tabs: [Tab!]!
43
+ config: JSON
44
+ gqlQuery: GQLQuery
45
+ # TODO: Replace `mutations` (currently a JSON object used as { [mutationName: String]: GQLQuery }) with a properly typed map.
46
+ mutations: JSON
47
+ breadcrumbs: [Breadcrumb!]
48
+ }
49
+
50
+ """
51
+ The write operation used when applying Core data type attribute security.
52
+ """
53
+ enum DataTypeSecurityMode {
54
+ CREATE
55
+ UPDATE
56
+ }
57
+
58
+ type DetailsPage implements Page {
59
+ title: String
60
+ description: String
61
+ panel: Panel
62
+ """
63
+ Selects the Core write permission applied when processing this page's panel.
64
+
65
+ This belongs to DetailsPage because CREATE or UPDATE describes how the page uses
66
+ the panel. Panel.dataType remains on Panel because it identifies the panel's record
67
+ type. A panel may be reused by create and update pages with different security modes.
68
+
69
+ CREATE checks insert permission and UPDATE checks update permission. Both modes
70
+ check select permission. When omitted, the application uses UPDATE.
71
+ """
72
+ dataTypeSecurityMode: DataTypeSecurityMode
73
+ config: JSON
74
+ breadcrumbs: [Breadcrumb!]
75
+ }
76
+
77
+ type DomainRecordTemplate implements Page {
78
+ title: String
79
+ description: String
80
+ sideMenu: SideMenu
81
+ viewer: Viewer
82
+ config: JSON
83
+ }
84
+
85
+ type PageLayout implements Page {
86
+ title: String
87
+ description: String
88
+ sideMenu: SideMenu
89
+ widgets: [ExternalWidget]
90
+ config: JSON
91
+ }
92
+
93
+ type DashboardPage implements Page {
94
+ panel: DashboardPanel
95
+ title: String
96
+ description: String
97
+ config: JSON
98
+ }
99
+
100
+ type ReportPage implements Page {
101
+ title: String
102
+ description: String
103
+ controlPanel: Panel
104
+ dashboardPanel: DashboardPanel
105
+ breadcrumbs: [Breadcrumb!]
106
+ config: JSON
107
+ }
108
+
109
+ type AnyPage implements Page {
110
+ title: String
111
+ description: String
112
+ tables: [NamedTable!]
113
+ panels: [Panel!]
114
+ tabbedPages: [TabbedPage!]
115
+ config: JSON
116
+ breadcrumbs: [Breadcrumb!]
117
+ }
118
+
119
+ type WizardPage implements Page {
120
+ description: String
121
+ title : String
122
+ dataSource: String
123
+ steps: [Step!]!
124
+ loadWizardByCustodian: [LoadWizardByCustodian]
125
+ defaultWizard: String
126
+ # TODO: Replace `mutations` (currently a JSON object used as { [mutationName: String]: GQLQuery }) with a properly typed map.
127
+ mutations: JSON
128
+ config: JSON
129
+ breadcrumbs: [Breadcrumb!]
130
+ workItemsQueryParams: BaseWorkItemQueryParams
131
+ }
132
+
133
+ type BaseWorkItemQueryParams {
134
+ docIds: [Int!]
135
+ excludeFields: [String!]
136
+ excludeInitialData: Boolean
137
+ format: String
138
+ includeFields: [String!]
139
+ oldNames: Boolean
140
+ onlyInitialData: Boolean
141
+ sorted: Boolean
142
+ performMapping: String
143
+ }
144
+
145
+ type LoadWizardByCustodian {
146
+ custodian: String
147
+ wizard: String
148
+ }
149
+
150
+ type Step {
151
+ id : String!
152
+ label : String!
153
+ icon: String
154
+ page : Page
155
+ visibilityCondition: String
156
+ pathUrl: String
157
+ }
158
+
159
+ type SideMenu {
160
+ headerCard: Card
161
+ menuItems: [MenuItem!]
162
+ dataCard: Card
163
+ }
164
+
165
+ type CardView {
166
+ queryName: String
167
+ card: Card!
168
+ groups: CardGroups
169
+ }
170
+
171
+ type CardGroups {
172
+ queryName: String!
173
+ titlePath: String!
174
+ configKeyPath: String!
175
+ dataKeyPath: String!
176
+ }
177
+
178
+ type Tab {
179
+ name: String!
180
+ label: String!
181
+ page: Page!
182
+ visibilityCondition: String
183
+ config: JSON
184
+ }
185
+
186
+ type DashboardPanel implements IPanel {
187
+ name: String
188
+ rows: [DashboardPanelRow!]
189
+ }
190
+
191
+ type DashboardPanelRow implements IPanelRow {
192
+ name: String!
193
+ title: String
194
+ titleVariant: String
195
+ layout: Number
196
+ hidden: Boolean
197
+ visibilityCondition: String
198
+ elements: [Widget!]
199
+ }
200
+
201
+ type Preview {
202
+ headerCard: Card
203
+ panel: Panel
204
+ }
205
+
206
+ interface ICard implements IElement {
207
+ name: String
208
+ component: String
209
+ config: JSON
210
+ }
211
+
212
+ interface QuickApp {
213
+ url: String
214
+ appPreference: String
215
+ target: Boolean
216
+ }
217
+
218
+ type CardRow {
219
+ name: String
220
+ paths: [String!]
221
+ expression: String
222
+ icon: String
223
+ component: String
224
+ }
225
+
226
+ type Card implements ICard & IRowElement & IElement {
227
+ name: String
228
+ component: String!
229
+ config: JSON
230
+ cols: Int
231
+ title: String
232
+ rows: [CardRow]
233
+ }
234
+
235
+ type Widget implements ICard & IRowElement & IElement & QuickApp {
236
+ id: String!
237
+ name: String
238
+ title: String
239
+ description: String
240
+ component: String
241
+ config: JSON
242
+ cols: Int
243
+ table: AnyTable
244
+ }
245
+
246
+ type ExternalWidget {
247
+ id: String
248
+ name: String
249
+ description: String
250
+ visibilityCondition: String
251
+ config: JSON
252
+ }
253
+
254
+ type ViewerOptions {
255
+ thumbnails: Boolean
256
+ pageNavigation: Boolean
257
+ lazyLoading: Boolean
258
+ }
259
+
260
+ type ViewerToolbar {
261
+ menuItems: [MenuItem!]!
262
+ actionButton: ActionButton
263
+ }
264
+
265
+ type Viewer {
266
+ documentActions: [MenuItem!]
267
+ options: ViewerOptions
268
+ toolbar: ViewerToolbar
269
+ }
270
+
271
+ type Breadcrumb {
272
+ label: String
273
+ path: String
274
+ isLabelExpression: Boolean
275
+ isPathExpression: Boolean
276
+ """
277
+ Dot-notation paths (e.g. "name", "folder.title") to try, in order, against
278
+ the already-fetched page record to compute the breadcrumb label. Used only
279
+ when `isLabelExpression` is not set. If none of the paths resolve to a
280
+ non-empty value, the client falls back to the record's `id`.
281
+ """
282
+ valuePaths: [String!]
283
+ }
@@ -1,43 +1,43 @@
1
- interface IPanel {
2
- name: String
3
- rows: [IPanelRow!]
4
- """
5
- Identifies the GraphQL data type used to load Core domain metadata for attribute-security checks.
6
- """
7
- dataType: String
8
- }
9
-
10
- interface IPanelRow {
11
- elements: [IRowElement!]
12
- name: String
13
- title: String
14
- titleVariant: String
15
- visibilityCondition: String
16
- }
17
-
18
- type Panel implements IPanel {
19
- columns: Int
20
- isGrouped: Boolean
21
- name: String
22
- rows: [PanelRow!]!
23
- """
24
- Identifies the GraphQL data type used to load Core domain metadata for attribute-security checks.
25
- """
26
- dataType: String
27
- }
28
-
29
- type PanelRow implements IPanelRow {
30
- elements: [IRowElement!]
31
- hasDivider: Boolean
32
- name: String
33
- title: String
34
- titleVariant: String
35
- visibilityCondition: String
36
- """
37
- Screen Designer: true when this group exists only via the screen layout patch — no
38
- counterpart in the raw base config — vs. `false`/absent for a real group (whether or
39
- not the patch also overrides some of its properties). See `Tab.custom` for the full
40
- reasoning; stamped the same way, one level down the tree.
41
- """
42
- custom: Boolean
43
- }
1
+ interface IPanel {
2
+ name: String
3
+ rows: [IPanelRow!]
4
+ """
5
+ Identifies the GraphQL data type used to load Core domain metadata for attribute-security checks.
6
+ """
7
+ dataType: String
8
+ }
9
+
10
+ interface IPanelRow {
11
+ elements: [IRowElement!]
12
+ name: String
13
+ title: String
14
+ titleVariant: String
15
+ visibilityCondition: String
16
+ }
17
+
18
+ type Panel implements IPanel {
19
+ columns: Int
20
+ isGrouped: Boolean
21
+ name: String
22
+ rows: [PanelRow!]!
23
+ """
24
+ Identifies the GraphQL data type used to load Core domain metadata for attribute-security checks.
25
+ """
26
+ dataType: String
27
+ }
28
+
29
+ type PanelRow implements IPanelRow {
30
+ elements: [IRowElement!]
31
+ hasDivider: Boolean
32
+ name: String
33
+ title: String
34
+ titleVariant: String
35
+ visibilityCondition: String
36
+ """
37
+ Screen Designer: true when this group exists only via the screen layout patch — no
38
+ counterpart in the raw base config — vs. `false`/absent for a real group (whether or
39
+ not the patch also overrides some of its properties). See `Tab.custom` for the full
40
+ reasoning; stamped the same way, one level down the tree.
41
+ """
42
+ custom: Boolean
43
+ }