Fluent Commerce Logo
Docs
Sign In

ADMIN_CONSOLE_MANIFEST

Setting

Changed on:

24 Oct 2023

Overview

This setting manages the Fluent Admin Console. The setting contains all the labels required to display and customize the Admin Console. To support languages other than English users can enter the labels directly into the configuration of their preferred language. Alternatively, they can create a language key and add the translation in more than one language setting files.


Setting AreaUI component
Supported context levels:ACCOUNT

Overview

This setting manages the Fluent Admin Console. The setting contains all the labels required to display and customize the Admin Console. To support languages other than English users can enter the labels directly into the configuration of their preferred language. Alternatively, they can create a language key and add the translation in more than one language setting files.


Values

Data TypeValues
JSON

Please talk to your Fluent Consultant for more details.

Configuration example

1PUT {{fluentApiHost}}/api/v4.1/settings/account/{{fluentAccountId}}/ADMIN_CONSOLE_MANIFEST
2
3{
4  "setting": {
5    "key": "ADMIN_CONSOLE_MANIFEST",
6    "value": 
7    {
8    "homePath": "orders",
9    "flags": {
10        "ORDER_MUTATION_ON_ORDER_SCREEN": false
11    },
12    "activityTemplates": [
13        {
14            "trigger": {
15                "type": "ORCHESTRATION_AUDIT",
16                "name": "Change State"
17            },
18            "priority": 100,
19            "template": "{{humanify context.entityType}} (ID: {{context.entityId}}) moved to {{attributes.toStatus}} status"
20        },
21        {
22            "trigger": {
23                "type": "ORCHESTRATION",
24                "name": "SendInitiateFullCancel"
25            },
26            "priority": 60,
27            "template": "Full cancellation initiated for {{humanify context.entityType}} {{context.entityRef}}"
28        }
29    ],
30    "modules": [
31        {
32            "menu": "i18n:fc.om.nav",
33            "menuLabel": "i18n:fc.om.nav",
34            "icon": "shopping_cart",
35            "permissions": [
36                "ORDER_VIEW",
37                "CUSTOMER_VIEW",
38                "RETURNORDER_VIEW"
39            ],
40            "routes": [
41                {
42                    "path": "orders",
43                    "component": "shared.components.material.DynamicPage",
44                    "menuLabel": "i18n:fc.om.orders.index.nav",
45                    "menuIcon": "library_books",
46                    "permissions": [
47                        "ORDER_VIEW"
48                    ],
49                    "params": {
50                        "graphql": {
51                            "query": " query($ref: [String], $status: [String], $type:[String!]) { orders(ref: $ref, status:$status, type:$type){ edges{ node{ ...Listing } } } }"
52                        },
53                        "title": "i18n:fc.om.orders.index.title",
54                        "primaryButtons": [
55                            {
56                                "label": "i18n:fc.om.orders.index.userAction.newBlankOrder",
57                                "mutation": "createOrder"
58                            }
59                        ],
60                        "layouts": [
61                            {
62                                "component": "shared.components.material.DynamicFilter",
63                                "params": {
64                                    "label": "i18n:fc.om.orders.index.filter.placeholder",
65                                    "fields": [
66                                        {
67                                            "field": "ref",
68                                            "label": "i18n:fc.om.orders.index.filter.field.orderRef.label"
69                                        },
70                                        {
71                                            "field": "status",
72                                            "label": "i18n:fc.om.orders.index.filter.field.orderStatus.label"
73                                        },
74                                        {
75                                            "field": "type",
76                                            "label": "i18n:fc.om.orders.index.filter.field.type.label"
77                                        }
78                                    ]
79                                }
80                            },
81                            {
82                                "component": "shared.components.material.DynamicList",
83                                "params": {
84                                    "graphql": {
85                                        "fragment": "fragment Listing on Order{ id ref retailer{id tradingName}  type status retailer{id} workflowRef workflowVersion totalPrice totalTaxPrice createdOn customer{id firstName lastName }  attributes{ name type value } } "
86                                    },
87                                    "defaultPageSize": 20,
88                                    "dataSource": "orders",
89                                    "attributes": [
90                                        {
91                                            "label": "i18n:fc.om.orders.index.list.column.orderRef.heading",
92                                            "template": "{{node.ref}}",
93                                            "link_template": "#/orders/{{node.id}}"
94                                        },
95                                        {
96                                            "label": "with Ref",
97                                            "template": "{{node.ref}}",
98                                            "link_template": "#/orders/{{node.id}}/{{node.ref}}"
99                                        },
100                                        {
101                                            "label": "Created Date:",
102                                            "template": "{{formatDate node.createdOn day='numeric' month='numeric' year='numeric' hour='numeric' minute='numeric'}}"
103                                        },
104                                        {
105                                            "label": "i18n:fc.om.orders.index.list.column.customer.heading",
106                                            "template": "{{node.customer.firstName}} {{node.customer.lastName}}"
107                                        },
108                                        {
109                                            "label": "i18n:fc.om.orders.index.list.column.status.heading",
110                                            "template": "{{node.status}}"
111                                        },
112                                        {
113                                            "label": "i18n:fc.om.orders.index.list.column.orderType.heading",
114                                            "template": "{{i18n 'fc.om.order.type.'node.type _fallback=node.type}}"
115                                        },
116                                        {
117                                            "label": "i18n:fc.om.orders.index.list.column.orderValue.heading",
118                                            "template": "{{node.totalPrice}}"
119                                        },
120                                        {
121                                            "label": "i18n:fc.om.orders.index.list.column.retailerName.heading",
122                                            "template": "{{node.retailer.tradingName}}"
123                                        }
124                                    ]
125                                }
126                            }
127                        ]
128                    }
129                },
130                {
131                    "path": "orderslast5days",
132                    "component": "shared.components.material.DynamicPage",
133                    "menuLabel": "Order in Last 5 days",
134                    "menuIcon": "library_books",
135                    "permissions": [
136                        "ORDER_VIEW"
137                    ],
138                    "params": {
139                        "graphql": {
140                            "query": " query($ref: [String], $status: [String], $type:[String!],$fromDate: DateTime) { orders(ref: $ref, status:$status, type:$type, createdOn:{ from:$fromDate } ){ edges{ node{ ...Listing } } } }",
141                            "variables": {
142                                "fromDate": "{{dateStringFormatter (dateAdd day=-5) 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'}}"
143                            }
144                        },
145                        "title": "Order created in last 5 days",
146                        "primaryButtons": [
147                            {
148                                "label": "i18n:fc.om.orders.index.userAction.newBlankOrder",
149                                "mutation": "createOrder"
150                            },
151                            {
152                                "label": "i18n:fc.om.orders.index.userAction.newBlankOrder",
153                                "mutation": "createOrder"
154                            }
155                        ],
156                        "layouts": [
157                            {
158                                "component": "shared.components.material.DynamicFilter",
159                                "params": {
160                                    "label": "i18n:fc.om.orders.index.filter.placeholder",
161                                    "fields": [
162                                        {
163                                            "field": "ref",
164                                            "label": "i18n:fc.om.orders.index.filter.field.orderRef.label"
165                                        },
166                                        {
167                                            "field": "status",
168                                            "label": "i18n:fc.om.orders.index.filter.field.orderStatus.label"
169                                        },
170                                        {
171                                            "field": "type",
172                                            "label": "i18n:fc.om.orders.index.filter.field.type.label"
173                                        }
174                                    ]
175                                }
176                            },
177                            {
178                                "component": "shared.components.material.DynamicList",
179                                "params": {
180                                    "graphql": {
181                                        "fragment": "fragment Listing on Order{ id ref retailer{id tradingName}  type status retailer{id} workflowRef workflowVersion totalPrice totalTaxPrice createdOn customer{id firstName lastName }} "
182                                    },
183                                    "defaultPageSize": 20,
184                                    "dataSource": "orders",
185                                    "attributes": [
186                                        {
187                                            "label": "i18n:fc.om.orders.index.list.column.orderRef.heading",
188                                            "template": "{{node.ref}}",
189                                            "link_template": "#/orders/{{node.id}}"
190                                        },
191                                        {
192                                            "label": "Created Date: {{formatDate node.createdOn day='numeric' month='numeric' year='numeric' hour='numeric' minute='numeric'}}",
193                                            "template": "{{formatDate node.createdOn day='numeric' month='numeric' year='numeric' hour='numeric' minute='numeric'}}"
194                                        },
195                                        {
196                                            "label": "Created Date: {{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'}}",
197                                            "template": "{{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'}}"
198                                        },
199                                        {
200                                            "label": "Created Date: {{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' false}}",
201                                            "template": "{{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' false}}"
202                                        },
203                                        {
204                                            "label": "Created Date: {{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' true}}",
205                                            "template": "{{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' true}}"
206                                        },
207                                        {
208                                            "label": "Created On: {{node.createdOn}}",
209                                            "template": "{{node.createdOn}}"
210                                        },
211                                        {
212                                            "label": "Created Date (wrong): {{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' utc=true}}",
213                                            "template": "{{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' utc=true}}"
214                                        },
215                                        {
216                                            "label": "Created Date (wrong): {{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' 'true'}}",
217                                            "template": "{{dateStringFormatter node.createdOn 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' 'true'}}"
218                                        },
219                                        {
220                                            "label": "i18n:fc.om.orders.index.list.column.customer.heading",
221                                            "template": "{{node.customer.firstName}} {{node.customer.lastName}}"
222                                        },
223                                        {
224                                            "label": "i18n:fc.om.orders.index.list.column.status.heading",
225                                            "template": "{{node.status}}"
226                                        },
227                                        {
228                                            "label": "i18n:fc.om.orders.index.list.column.orderType.heading",
229                                            "template": "{{i18n 'fc.om.order.type.'node.type _fallback=node.type}}"
230                                        },
231                                        {
232                                            "label": "i18n:fc.om.orders.index.list.column.orderValue.heading",
233                                            "template": "{{node.totalPrice}}"
234                                        },
235                                        {
236                                            "label": "i18n:fc.om.orders.index.list.column.retailerName.heading",
237                                            "template": "{{node.retailer.tradingName}}"
238                                        }
239                                    ]
240                                }
241                            }
242                        ]
243                    }
244                },
245                {
246                    "path": "orders/:id/:ord_ref",
247                    "component": "shared.components.material.DynamicPage",
248                    "menuIcon": "shopping_cart",
249                    "permissions": [
250                        "ORDER_VIEW"
251                    ],
252                    "params": {
253                        "title": "{{orderById.ref}} - {{orderById.status}}",
254                        "showUserActions": true,
255                        "backButtons": [
256                            {
257                                "path": "orders",
258                                "menuLabel": "i18n:fc.om.orders.detail.breadcrumb.backToOrders"
259                            },
260                            {
261                                "path": "{{params.ref}}",
262                                "menuLabel": "i18n:fc.om.orders.detail.breadcrumb.backToOrders"
263                            },
264                            {
265                                "path": "customers/{{orderById.customer.id}}",
266                                "menuLabel": "i18n:fc.om.orders.detail.breadcrumb.viewCustomer"
267                            }
268                        ],
269                        "graphql": {
270                            "query": "query ($id: ID!) { orderById(id: $id) { id ref status type createdOn retailer{id tradingName} ...Customer ...Items  ...fulfilments ...fulfilmentChoice ...financialTransactions ...attributes } comments(entityId: [$id], entityType: \"ORDER\"){ edges {node {id text entityId entityType, text, createdOn, updatedOn }}} } ",
271                            "variables": {
272                                "id": "{{params.id}}"
273                            }
274                        },
275                        "primaryButtons": [
276                            {
277                                "label": "Edit Order",
278                                "mutation": "updateOrder",
279                                "arguments": {
280                                    "id": "{{id}}"
281                                },
282                                "dropdownSource": {
283                                    "status": {
284                                        "source": "settings",
285                                        "name": "ORDER_STATUS.OPTIONS"
286                                    },
287                                    "items.status": {
288                                        "source": "settings",
289                                        "name": "ITEM_STATUS.OPTIONS"
290                                    }
291                                }
292                            }
293                        ],
294                        "secondaryButtons": [
295                            {
296                                "label": "i18n:fc.om.orders.detail.userAction.addFulfilment",
297                                "mutation": "createFulfilment"
298                            },
299                            {
300                                "label": "i18n:fc.om.orders.detail.userAction.addComment",
301                                "mutation": "createComment",
302                                "defaultValues": {
303                                    "entityId": "{{orderById.id}}",
304                                    "entityType": "ORDER"
305                                }
306                            }
307                        ],
308                        "layouts": [
309                            {
310                                "component": "shared.components.material.MaterialTabsSet",
311                                "params": {
312                                    "layouts": [
313                                        {
314                                            "component": "shared.components.material.SubLayoutContent",
315                                            "label": "i18n:fc.om.orders.detail.tab.details.label",
316                                            "params": {
317                                                "layouts": [
318                                                    {
319                                                        "component": "shared.components.material.DynamicCard",
320                                                        "params": {
321                                                            "title": "i18n:fc.om.orders.detail.card.summary.title",
322                                                            "half": true,
323                                                            "dataSource": "orderById",
324                                                            "attributes": [
325                                                                {
326                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.orderType.label",
327                                                                    "template": "{{type}}"
328                                                                },
329                                                                {
330                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.orderStatus.label",
331                                                                    "template": "{{status}}"
332                                                                },
333                                                                {
334                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.creationDate.label",
335                                                                    "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
336                                                                },
337                                                                {
338                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.returns.label",
339                                                                    "template": "Search for Returns",
340                                                                    "link_template": "#/returns?ref[]={{ref}}-"
341                                                                }
342                                                            ]
343                                                        }
344                                                    },
345                                                    {
346                                                        "component": "shared.components.material.DynamicCard",
347                                                        "params": {
348                                                            "title": "i18n:fc.om.orders.detail.card.retailerInfo.title",
349                                                            "half": true,
350                                                            "dataSource": "orderById",
351                                                            "attributes": [
352                                                                {
353                                                                    "label": "i18n:fc.om.orders.detail.card.retailerInfo.attribute.retailerID.label",
354                                                                    "template": "{{retailer.id}}"
355                                                                },
356                                                                {
357                                                                    "label": "i18n:fc.om.orders.detail.card.retailerInfo.attribute.retailer.label",
358                                                                    "template": "{{retailer.tradingName}}"
359                                                                }
360                                                            ]
361                                                        }
362                                                    },
363                                                    {
364                                                        "component": "shared.components.material.DynamicCard",
365                                                        "params": {
366                                                            "graphql": {
367                                                                "fragment": "fragment Customer on Order{ customer { id firstName lastName primaryEmail primaryPhone   } } "
368                                                            },
369                                                            "title": "i18n:fc.om.orders.detail.card.customer.title",
370                                                            "half": true,
371                                                            "dataSource": "orderById.customer",
372                                                            "attributes": [
373                                                                {
374                                                                    "label": "i18n:fc.om.orders.detail.card.customer.attribute.customerName.label",
375                                                                    "template": "{{firstName}} {{lastName}}",
376                                                                    "link_template": "#/customers/{{id}}"
377                                                                },
378                                                                {
379                                                                    "label": "i18n:fc.om.orders.detail.card.customer.attribute.phoneNo..label",
380                                                                    "template": "{{primaryPhone}}"
381                                                                },
382                                                                {
383                                                                    "label": "i18n:fc.om.orders.detail.card.customer.attribute.email.label",
384                                                                    "template": "{{primaryEmail}}"
385                                                                }
386                                                            ]
387                                                        }
388                                                    },
389                                                    {
390                                                        "component": "shared.components.material.DynamicCard",
391                                                        "params": {
392                                                            "graphql": {
393                                                                "fragment": "fragment fulfilmentChoice on Order{ fulfilmentChoice { id pickupLocationRef deliveryAddress {id name street city state postcode country} deliveryInstruction deliveryType  fulfilmentPrice fulfilmentTaxPrice} } "
394                                                            },
395                                                            "title": "i18n:fc.om.orders.detail.card.deliveryInfo.title",
396                                                            "half": true,
397                                                            "dataSource": "orderById.fulfilmentChoice",
398                                                            "attributes": [
399                                                                {
400                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.pickupLocationRef.label",
401                                                                    "template": "{{pickupLocationRef}}"
402                                                                },
403                                                                {
404                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.customerName.label",
405                                                                    "template": "{{deliveryAddress.name}}"
406                                                                },
407                                                                {
408                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.street.label",
409                                                                    "template": "{{deliveryAddress.street}}"
410                                                                },
411                                                                {
412                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.city.label",
413                                                                    "template": "{{deliveryAddress.city}}"
414                                                                },
415                                                                {
416                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.state.label",
417                                                                    "template": "{{deliveryAddress.state}}"
418                                                                },
419                                                                {
420                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.postcode.label",
421                                                                    "template": "{{deliveryAddress.postcode}}"
422                                                                },
423                                                                {
424                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.country.label",
425                                                                    "template": "{{deliveryAddress.country}}"
426                                                                },
427                                                                {
428                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.deliveryType.label",
429                                                                    "template": "{{deliveryType}}"
430                                                                },
431                                                                {
432                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.deliveryInstructions.label",
433                                                                    "template": "{{deliveryInstruction}}"
434                                                                },
435                                                                {
436                                                                    "label": "fulfilmentPrice",
437                                                                    "template": "{{fulfilmentPrice}}"
438                                                                },
439                                                                {
440                                                                    "label": "fulfilmentTaxPrice",
441                                                                    "template": "{{fulfilmentTaxPrice}}"
442                                                                }
443                                                            ]
444                                                        }
445                                                    },
446                                                    {
447                                                        "component": "shared.components.material.DynamicList",
448                                                        "params": {
449                                                            "title": "i18n:fc.om.orders.detail.list.orderItems.title",
450                                                            "graphql": {
451                                                                "fragment": "fragment Items on Order{ items{ edges { node { id ref price quantity product {name} } } } } "
452                                                            },
453                                                            "defaultPageSize": 10,
454                                                            "dataSource": "orderById.items",
455                                                            "attributes": [
456                                                                {
457                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.ref.heading",
458                                                                    "template": "{{node.ref}}",
459                                                                    "link_template": "#/orderitems/{{node.id}}"
460                                                                },
461                                                                {
462                                                                    "label": "with ref",
463                                                                    "template": "{{node.ref}}",
464                                                                    "link_template": "#/orderitems/{{node.id}}/{{node.ref}}"
465                                                                },
466                                                                {
467                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.productName.heading",
468                                                                    "template": "{{node.product.name}}"
469                                                                },
470                                                                {
471                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.quantity.heading",
472                                                                    "template": "{{node.quantity}}"
473                                                                },
474                                                                {
475                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.price.heading",
476                                                                    "template": "{{node.price}}"
477                                                                }
478                                                            ]
479                                                        }
480                                                    }
481                                                ]
482                                            }
483                                        },
484                                        {
485                                            "component": "shared.components.material.SubLayoutContent",
486                                            "label": "i18n:fc.om.orders.detail.tab.fulfilments.label",
487                                            "params": {
488                                                "layouts": [
489                                                    {
490                                                        "component": "shared.components.material.DynamicList",
491                                                        "params": {
492                                                            "graphql": {
493                                                                "fragment": "fragment fulfilments on Order{ fulfilments { edges { node { id deliveryType status eta fromAddress { ref } toAddress { ref } }} } } "
494                                                            },
495                                                            "title": "i18n:fc.om.orders.detail.list.fulfilments.title",
496                                                            "dataSource": "orderById.fulfilments",
497                                                            "attributes": [
498                                                                {
499                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.id.heading",
500                                                                    "template": "{{node.id}}",
501                                                                    "link_template": "#/fulfilment/{{node.id}}"
502                                                                },
503                                                                {
504                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.status.heading",
505                                                                    "template": "{{node.status}}"
506                                                                },
507                                                                {
508                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.deliveryType.heading",
509                                                                    "template": "{{node.deliveryType}}"
510                                                                },
511                                                                {
512                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.fulfilmentLocation.heading",
513                                                                    "template": "{{node.fromAddress.ref}}"
514                                                                },
515                                                                {
516                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.destination.heading",
517                                                                    "template": "{{node.toAddress.ref}}"
518                                                                },
519                                                                {
520                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.eTA.heading",
521                                                                    "template": "{{node.eta}}"
522                                                                }
523                                                            ]
524                                                        }
525                                                    }
526                                                ]
527                                            }
528                                        },
529                                        {
530                                            "component": "shared.components.material.SubLayoutContent",
531                                            "label": "i18n:fc.om.orders.detail.tab.transactions.label",
532                                            "params": {
533                                                "layouts": [
534                                                    {
535                                                        "component": "shared.components.material.DynamicList",
536                                                        "params": {
537                                                            "graphql": {
538                                                                "fragment": "fragment financialTransactions on Order{ financialTransactions { edges { node {ref createdOn status type cardType paymentMethod total }} } } "
539                                                            },
540                                                            "title": "i18n:fc.om.orders.detail.list.transactions.title",
541                                                            "dataSource": "orderById.financialTransactions",
542                                                            "attributes": [
543                                                                {
544                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.ref.heading",
545                                                                    "template": "{{node.ref}}"
546                                                                },
547                                                                {
548                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.createdOn.heading",
549                                                                    "template": "{{formatDate node.createdOn day='numeric' month='numeric' year='numeric'}}"
550                                                                },
551                                                                {
552                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.status.heading",
553                                                                    "template": "{{node.status}}"
554                                                                },
555                                                                {
556                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.type.heading",
557                                                                    "template": "{{node.type}}"
558                                                                },
559                                                                {
560                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.cardType.heading",
561                                                                    "template": "{{node.cardType}}"
562                                                                },
563                                                                {
564                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.paymentMethod.heading",
565                                                                    "template": "{{node.paymentMethod}}"
566                                                                },
567                                                                {
568                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.amount.heading",
569                                                                    "template": "{{node.total}}"
570                                                                }
571                                                            ]
572                                                        }
573                                                    }
574                                                ]
575                                            }
576                                        },
577                                        {
578                                            "component": "shared.components.material.SubLayoutContent",
579                                            "label": "i18n:fc.om.orders.detail.tab.attributes.label",
580                                            "params": {
581                                                "layouts": [
582                                                    {
583                                                        "component": "shared.components.material.DynamicList",
584                                                        "params": {
585                                                            "graphql": {
586                                                                "fragment": "fragment attributes on Order{ attributes { name type value } } "
587                                                            },
588                                                            "title": "i18n:fc.om.orders.detail.list.attributes.title",
589                                                            "dataSource": "orderById.attributes",
590                                                            "attributes": [
591                                                                {
592                                                                    "label": "i18n:fc.om.orders.detail.list.attributes.column.name.heading",
593                                                                    "template": "{{name}}"
594                                                                },
595                                                                {
596                                                                    "label": "i18n:fc.om.orders.detail.list.attributes.column.type.heading",
597                                                                    "template": "{{type}}"
598                                                                },
599                                                                {
600                                                                    "label": "i18n:fc.om.orders.detail.list.attributes.column.value.heading",
601                                                                    "template": "{{value}}"
602                                                                }
603                                                            ]
604                                                        }
605                                                    }
606                                                ]
607                                            }
608                                        },
609                                        {
610                                            "component": "shared.components.material.SubLayoutContent",
611                                            "label": "i18n:fc.om.orders.detail.tab.comments.label",
612                                            "params": {
613                                                "layouts": [
614                                                    {
615                                                        "component": "shared.components.material.DynamicList",
616                                                        "params": {
617                                                            "graphql": {
618                                                                "fragment": "fragment financialTransactions on Order{ financialTransactions { edges { node {ref createdOn status type cardType paymentMethod total }} } } "
619                                                            },
620                                                            "title": "i18n:fc.om.orders.detail.list.comments.title",
621                                                            "dataSource": "comments",
622                                                            "attributes": [
623                                                                {
624                                                                    "label": "i18n:fc.om.orders.detail.list.comments.column.comment.heading",
625                                                                    "template": "{{node.text}}"
626                                                                },
627                                                                {
628                                                                    "label": "i18n:fc.om.orders.detail.list.comments.column.createdOn.heading",
629                                                                    "template": "{{formatDate node.createdOn day='numeric' month='numeric' year='numeric'}}"
630                                                                },
631                                                                {
632                                                                    "label": "i18n:fc.om.orders.detail.list.comments.column.updatedOn.heading",
633                                                                    "template": "{{formatDate node.updatedOn day='numeric' month='numeric' year='numeric'}}"
634                                                                }
635                                                            ]
636                                                        }
637                                                    }
638                                                ]
639                                            }
640                                        },
641                                        {
642                                            "component": "shared.components.material.SubLayoutContent",
643                                            "label": "i18n:fc.om.orders.detail.tab.activity.label",
644                                            "params": {
645                                                "layouts": [
646                                                    {
647                                                        "component": "shared.components.EntityActivity",
648                                                        "params": {
649                                                            "showChildEntities": true
650                                                        }
651                                                    }
652                                                ]
653                                            }
654                                        }
655                                    ]
656                                }
657                            }
658                        ]
659                    }
660                },
661                {
662                    "path": "orders/:id",
663                    "component": "shared.components.material.DynamicPage",
664                    "menuIcon": "shopping_cart",
665                    "permissions": [
666                        "ORDER_VIEW"
667                    ],
668                    "params": {
669                        "title": "{{orderById.ref}} - {{orderById.status}}",
670                        "showUserActions": true,
671                        "backButtons": [
672                            {
673                                "path": "orders",
674                                "menuLabel": "i18n:fc.om.orders.detail.breadcrumb.backToOrders"
675                            },
676                            {
677                                "path": "{{params.ref}}",
678                                "menuLabel": "i18n:fc.om.orders.detail.breadcrumb.backToOrders"
679                            },
680                            {
681                                "path": "customers/{{orderById.customer.id}}",
682                                "menuLabel": "i18n:fc.om.orders.detail.breadcrumb.viewCustomer"
683                            }
684                        ],
685                        "graphql": {
686                            "query": "query ($id: ID!) { orderById(id: $id) { id ref status type createdOn retailer{id tradingName} ...Customer ...Items  ...fulfilments ...fulfilmentChoice ...financialTransactions ...attributes } comments(entityId: [$id], entityType: \"ORDER\"){ edges {node {id text entityId entityType, text, createdOn, updatedOn }}} } ",
687                            "variables": {
688                                "id": "{{params.id}}"
689                            }
690                        },
691                        "primaryButtons": [
692                            {
693                                "label": "Edit Order",
694                                "mutation": "updateOrder",
695                                "arguments": {
696                                    "id": "{{id}}"
697                                },
698                                "dropdownSource": {
699                                    "status": {
700                                        "source": "settings",
701                                        "name": "ORDER_STATUS.OPTIONS"
702                                    },
703                                    "items.status": {
704                                        "source": "settings",
705                                        "name": "ITEM_STATUS.OPTIONS"
706                                    }
707                                }
708                            }
709                        ],
710                        "secondaryButtons": [
711                            {
712                                "label": "i18n:fc.om.orders.detail.userAction.addFulfilment",
713                                "mutation": "createFulfilment"
714                            },
715                            {
716                                "label": "i18n:fc.om.orders.detail.userAction.addComment",
717                                "mutation": "createComment",
718                                "defaultValues": {
719                                    "entityId": "{{orderById.id}}",
720                                    "entityType": "ORDER"
721                                }
722                            }
723                        ],
724                        "layouts": [
725                            {
726                                "component": "shared.components.material.MaterialTabsSet",
727                                "params": {
728                                    "layouts": [
729                                        {
730                                            "component": "shared.components.material.SubLayoutContent",
731                                            "label": "i18n:fc.om.orders.detail.tab.details.label",
732                                            "params": {
733                                                "layouts": [
734                                                    {
735                                                        "component": "shared.components.material.DynamicCard",
736                                                        "params": {
737                                                            "title": "i18n:fc.om.orders.detail.card.summary.title",
738                                                            "half": true,
739                                                            "dataSource": "orderById",
740                                                            "attributes": [
741                                                                {
742                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.orderType.label",
743                                                                    "template": "{{type}}"
744                                                                },
745                                                                {
746                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.orderStatus.label",
747                                                                    "template": "{{status}}"
748                                                                },
749                                                                {
750                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.creationDate.label",
751                                                                    "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
752                                                                },
753                                                                {
754                                                                    "label": "i18n:fc.om.orders.detail.card.summary.attribute.returns.label",
755                                                                    "template": "Search for Returns",
756                                                                    "link_template": "#/returns?ref[]={{ref}}-"
757                                                                }
758                                                            ]
759                                                        }
760                                                    },
761                                                    {
762                                                        "component": "shared.components.material.DynamicCard",
763                                                        "params": {
764                                                            "title": "i18n:fc.om.orders.detail.card.retailerInfo.title",
765                                                            "half": true,
766                                                            "dataSource": "orderById",
767                                                            "attributes": [
768                                                                {
769                                                                    "label": "i18n:fc.om.orders.detail.card.retailerInfo.attribute.retailerID.label",
770                                                                    "template": "{{retailer.id}}"
771                                                                },
772                                                                {
773                                                                    "label": "i18n:fc.om.orders.detail.card.retailerInfo.attribute.retailer.label",
774                                                                    "template": "{{retailer.tradingName}}"
775                                                                }
776                                                            ]
777                                                        }
778                                                    },
779                                                    {
780                                                        "component": "shared.components.material.DynamicCard",
781                                                        "params": {
782                                                            "graphql": {
783                                                                "fragment": "fragment Customer on Order{ customer { id firstName lastName primaryEmail primaryPhone   } } "
784                                                            },
785                                                            "title": "i18n:fc.om.orders.detail.card.customer.title",
786                                                            "half": true,
787                                                            "dataSource": "orderById.customer",
788                                                            "attributes": [
789                                                                {
790                                                                    "label": "i18n:fc.om.orders.detail.card.customer.attribute.customerName.label",
791                                                                    "template": "{{firstName}} {{lastName}}",
792                                                                    "link_template": "#/customers/{{id}}"
793                                                                },
794                                                                {
795                                                                    "label": "i18n:fc.om.orders.detail.card.customer.attribute.phoneNo..label",
796                                                                    "template": "{{primaryPhone}}"
797                                                                },
798                                                                {
799                                                                    "label": "i18n:fc.om.orders.detail.card.customer.attribute.email.label",
800                                                                    "template": "{{primaryEmail}}"
801                                                                }
802                                                            ]
803                                                        }
804                                                    },
805                                                    {
806                                                        "component": "shared.components.material.DynamicCard",
807                                                        "params": {
808                                                            "graphql": {
809                                                                "fragment": "fragment fulfilmentChoice on Order{ fulfilmentChoice { id pickupLocationRef deliveryAddress {id name street city state postcode country} deliveryInstruction deliveryType fulfilmentPrice fulfilmentTaxPrice} } "
810                                                            },
811                                                            "title": "i18n:fc.om.orders.detail.card.deliveryInfo.title",
812                                                            "half": true,
813                                                            "dataSource": "orderById.fulfilmentChoice",
814                                                            "attributes": [
815                                                                {
816                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.pickupLocationRef.label",
817                                                                    "template": "{{pickupLocationRef}}"
818                                                                },
819                                                                {
820                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.customerName.label",
821                                                                    "template": "{{deliveryAddress.name}}"
822                                                                },
823                                                                {
824                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.street.label",
825                                                                    "template": "{{deliveryAddress.street}}"
826                                                                },
827                                                                {
828                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.city.label",
829                                                                    "template": "{{deliveryAddress.city}}"
830                                                                },
831                                                                {
832                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.state.label",
833                                                                    "template": "{{deliveryAddress.state}}"
834                                                                },
835                                                                {
836                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.postcode.label",
837                                                                    "template": "{{deliveryAddress.postcode}}"
838                                                                },
839                                                                {
840                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.country.label",
841                                                                    "template": "{{deliveryAddress.country}}"
842                                                                },
843                                                                {
844                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.deliveryType.label",
845                                                                    "template": "{{deliveryType}}"
846                                                                },
847                                                                {
848                                                                    "label": "i18n:fc.om.orders.detail.card.deliveryInfo.attribute.deliveryInstructions.label",
849                                                                    "template": "{{deliveryInstruction}}"
850                                                                },
851                                                                {
852                                                                    "label": "fulfilmentPrice",
853                                                                    "template": "{{fulfilmentPrice}}"
854                                                                },
855                                                                {
856                                                                    "label": "fulfilmentTaxPrice",
857                                                                    "template": "{{3 + 6}}"
858                                                                }
859                                                            ]
860                                                        }
861                                                    },
862                                                    {
863                                                        "component": "shared.components.material.DynamicList",
864                                                        "params": {
865                                                            "title": "i18n:fc.om.orders.detail.list.orderItems.title",
866                                                            "graphql": {
867                                                                "fragment": "fragment Items on Order{ items{ edges { node { id ref price quantity product {name} } } } } "
868                                                            },
869                                                            "defaultPageSize": 10,
870                                                            "dataSource": "orderById.items",
871                                                            "attributes": [
872                                                                {
873                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.ref.heading",
874                                                                    "template": "{{node.ref}}",
875                                                                    "link_template": "#/orderitems/{{node.id}}"
876                                                                },
877                                                                {
878                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.productName.heading",
879                                                                    "template": "{{node.product.name}}"
880                                                                },
881                                                                {
882                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.quantity.heading",
883                                                                    "template": "{{node.quantity}}"
884                                                                },
885                                                                {
886                                                                    "label": "i18n:fc.om.orders.detail.list.orderItems.column.price.heading",
887                                                                    "template": "{{node.price}}"
888                                                                }
889                                                            ]
890                                                        }
891                                                    }
892                                                ]
893                                            }
894                                        },
895                                        {
896                                            "component": "shared.components.material.SubLayoutContent",
897                                            "label": "i18n:fc.om.orders.detail.tab.fulfilments.label",
898                                            "params": {
899                                                "layouts": [
900                                                    {
901                                                        "component": "shared.components.material.DynamicList",
902                                                        "params": {
903                                                            "graphql": {
904                                                                "fragment": "fragment fulfilments on Order{ fulfilments { edges { node { id deliveryType status eta fromAddress { ref } toAddress { ref } }} } } "
905                                                            },
906                                                            "title": "i18n:fc.om.orders.detail.list.fulfilments.title",
907                                                            "dataSource": "orderById.fulfilments",
908                                                            "attributes": [
909                                                                {
910                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.id.heading",
911                                                                    "template": "{{node.id}}",
912                                                                    "link_template": "#/fulfilment/{{node.id}}"
913                                                                },
914                                                                {
915                                                                    "label": "with Ord ID",
916                                                                    "template": "{{node.id}}",
917                                                                    "link_template": "#/order/{{node.id}}/fulfilment/{{node.id}}"
918                                                                },
919                                                                {
920                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.status.heading",
921                                                                    "template": "{{node.status}}"
922                                                                },
923                                                                {
924                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.deliveryType.heading",
925                                                                    "template": "{{node.deliveryType}}"
926                                                                },
927                                                                {
928                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.fulfilmentLocation.heading",
929                                                                    "template": "{{node.fromAddress.ref}}"
930                                                                },
931                                                                {
932                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.destination.heading",
933                                                                    "template": "{{node.toAddress.ref}}"
934                                                                },
935                                                                {
936                                                                    "label": "i18n:fc.om.orders.detail.list.fulfilments.column.eTA.heading",
937                                                                    "template": "{{node.eta}}"
938                                                                }
939                                                            ]
940                                                        }
941                                                    }
942                                                ]
943                                            }
944                                        },
945                                        {
946                                            "component": "shared.components.material.SubLayoutContent",
947                                            "label": "i18n:fc.om.orders.detail.tab.transactions.label",
948                                            "params": {
949                                                "layouts": [
950                                                    {
951                                                        "component": "shared.components.material.DynamicList",
952                                                        "params": {
953                                                            "graphql": {
954                                                                "fragment": "fragment financialTransactions on Order{ financialTransactions { edges { node {ref createdOn status type cardType paymentMethod total }} } } "
955                                                            },
956                                                            "title": "i18n:fc.om.orders.detail.list.transactions.title",
957                                                            "dataSource": "orderById.financialTransactions",
958                                                            "attributes": [
959                                                                {
960                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.ref.heading",
961                                                                    "template": "{{node.ref}}"
962                                                                },
963                                                                {
964                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.createdOn.heading",
965                                                                    "template": "{{formatDate node.createdOn day='numeric' month='numeric' year='numeric'}}"
966                                                                },
967                                                                {
968                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.status.heading",
969                                                                    "template": "{{node.status}}"
970                                                                },
971                                                                {
972                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.type.heading",
973                                                                    "template": "{{node.type}}"
974                                                                },
975                                                                {
976                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.cardType.heading",
977                                                                    "template": "{{node.cardType}}"
978                                                                },
979                                                                {
980                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.paymentMethod.heading",
981                                                                    "template": "{{node.paymentMethod}}"
982                                                                },
983                                                                {
984                                                                    "label": "i18n:fc.om.orders.detail.list.transactions.column.amount.heading",
985                                                                    "template": "{{node.total}}"
986                                                                }
987                                                            ]
988                                                        }
989                                                    }
990                                                ]
991                                            }
992                                        },
993                                        {
994                                            "component": "shared.components.material.SubLayoutContent",
995                                            "label": "i18n:fc.om.orders.detail.tab.attributes.label",
996                                            "params": {
997                                                "layouts": [
998                                                    {
999                                                        "component": "shared.components.material.DynamicList",
1000                                                        "params": {
1001                                                            "graphql": {
1002                                                                "fragment": "fragment attributes on Order{ attributes { name type value } } "
1003                                                            },
1004                                                            "title": "i18n:fc.om.orders.detail.list.attributes.title",
1005                                                            "dataSource": "orderById.attributes",
1006                                                            "attributes": [
1007                                                                {
1008                                                                    "label": "i18n:fc.om.orders.detail.list.attributes.column.name.heading",
1009                                                                    "template": "{{name}}"
1010                                                                },
1011                                                                {
1012                                                                    "label": "i18n:fc.om.orders.detail.list.attributes.column.type.heading",
1013                                                                    "template": "{{type}}"
1014                                                                },
1015                                                                {
1016                                                                    "label": "i18n:fc.om.orders.detail.list.attributes.column.value.heading",
1017                                                                    "template": "{{value}}"
1018                                                                }
1019                                                            ]
1020                                                        }
1021                                                    }
1022                                                ]
1023                                            }
1024                                        },
1025                                        {
1026                                            "component": "shared.components.material.SubLayoutContent",
1027                                            "label": "i18n:fc.om.orders.detail.tab.comments.label",
1028                                            "params": {
1029                                                "layouts": [
1030                                                    {
1031                                                        "component": "shared.components.material.DynamicList",
1032                                                        "params": {
1033                                                            "graphql": {
1034                                                                "fragment": "fragment financialTransactions on Order{ financialTransactions { edges { node {ref createdOn status type cardType paymentMethod total }} } } "
1035                                                            },
1036                                                            "title": "i18n:fc.om.orders.detail.list.comments.title",
1037                                                            "dataSource": "comments",
1038                                                            "attributes": [
1039                                                                {
1040                                                                    "label": "i18n:fc.om.orders.detail.list.comments.column.comment.heading",
1041                                                                    "template": "{{node.text}}"
1042                                                                },
1043                                                                {
1044                                                                    "label": "i18n:fc.om.orders.detail.list.comments.column.createdOn.heading",
1045                                                                    "template": "{{formatDate node.createdOn day='numeric' month='numeric' year='numeric'}}"
1046                                                                },
1047                                                                {
1048                                                                    "label": "i18n:fc.om.orders.detail.list.comments.column.updatedOn.heading",
1049                                                                    "template": "{{formatDate node.updatedOn day='numeric' month='numeric' year='numeric'}}"
1050                                                                }
1051                                                            ]
1052                                                        }
1053                                                    }
1054                                                ]
1055                                            }
1056                                        },
1057                                        {
1058                                            "component": "shared.components.material.SubLayoutContent",
1059                                            "label": "i18n:fc.om.orders.detail.tab.activity.label",
1060                                            "params": {
1061                                                "layouts": [
1062                                                    {
1063                                                        "component": "shared.components.EntityActivity",
1064                                                        "params": {
1065                                                            "showChildEntities": true
1066                                                        }
1067                                                    }
1068                                                ]
1069                                            }
1070                                        }
1071                                    ]
1072                                }
1073                            }
1074                        ]
1075                    }
1076                },
1077                {
1078                    "path": "orderitems/:id",
1079                    "component": "shared.components.material.DynamicPage",
1080                    "permissions": [
1081                        "ORDERITEM_VIEW"
1082                    ],
1083                    "params": {
1084                        "title": "i18n:fc.om.orderitems.detail.title",
1085                        "showUserActions": true,
1086                        "backButtons": [
1087                            {
1088                                "path": "orders/{{orderItemById.order.id}}",
1089                                "menuLabel": "i18n:fc.om.orderitems.detail.breadcrumb.backToOrder"
1090                            }
1091                        ],
1092                        "graphql": {
1093                            "query": "query ($id: ID!) { orderItemById(id: $id) { id ref price status quantity createdOn order { id ref } product { name ...vProduct } } } ",
1094                            "variables": {
1095                                "id": "{{params.id}}"
1096                            }
1097                        },
1098                        "layouts": [
1099                            {
1100                                "component": "shared.components.material.DynamicCard",
1101                                "params": {
1102                                    "title": "i18n:fc.om.orderitems.detail.card.summary.title",
1103                                    "half": true,
1104                                    "dataSource": "orderItemById",
1105                                    "attributes": [
1106                                        {
1107                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.ref.label",
1108                                            "template": "{{ref}}"
1109                                        },
1110                                        {
1111                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.status.label",
1112                                            "template": "{{status}}"
1113                                        },
1114                                        {
1115                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.quantity.label",
1116                                            "template": "{{quantity}}"
1117                                        },
1118                                        {
1119                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.creationDate.label",
1120                                            "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
1121                                        }
1122                                    ],
1123                                    "graphql": {
1124                                        "fragment": "fragment vProduct on VariantProduct { ref attributes { name type value } } "
1125                                    }
1126                                }
1127                            },
1128                            {
1129                                "component": "shared.components.material.DynamicCard",
1130                                "params": {
1131                                    "title": "i18n:fc.om.orderitems.detail.card.product.title",
1132                                    "half": true,
1133                                    "dataSource": "orderItemById.product",
1134                                    "attributes": [
1135                                        {
1136                                            "label": "i18n:fc.om.orderitems.detail.card.product.attribute.name.label",
1137                                            "template": "{{name}}"
1138                                        },
1139                                        {
1140                                            "label": "i18n:fc.om.orderitems.detail.card.product.attribute.ref.label",
1141                                            "template": "{{ref}}"
1142                                        }
1143                                    ]
1144                                }
1145                            },
1146                            {
1147                                "component": "shared.components.material.DynamicList",
1148                                "params": {
1149                                    "title": "i18n:fc.om.orderitems.detail.list.attributes.title",
1150                                    "dataSource": "orderItemById.product.attributes",
1151                                    "attributes": [
1152                                        {
1153                                            "label": "i18n:fc.om.orderitems.detail.list.attributes.column.name.heading",
1154                                            "template": "{{name}}"
1155                                        },
1156                                        {
1157                                            "label": "i18n:fc.om.orderitems.detail.list.attributes.column.type.heading",
1158                                            "template": "{{type}}"
1159                                        },
1160                                        {
1161                                            "label": "i18n:fc.om.orderitems.detail.list.attributes.column.value.heading",
1162                                            "template": "{{value}}"
1163                                        }
1164                                    ]
1165                                }
1166                            }
1167                        ]
1168                    }
1169                },
1170                {
1171                    "path": "orderitems/:id/:ord_ref",
1172                    "component": "shared.components.material.DynamicPage",
1173                    "permissions": [
1174                        "ORDERITEM_VIEW"
1175                    ],
1176                    "params": {
1177                        "title": "i18n:fc.om.orderitems.detail.title",
1178                        "showUserActions": true,
1179                        "backButtons": [
1180                            {
1181                                "path": "orders/{{orderItemById.order.id}}",
1182                                "menuLabel": "i18n:fc.om.orderitems.detail.breadcrumb.backToOrder"
1183                            }
1184                        ],
1185                        "graphql": {
1186                            "query": "query ($id: ID!) { orderItemById(id: $id) { id ref price status quantity createdOn order { id ref } product { name ...vProduct } } } ",
1187                            "variables": {
1188                                "id": "{{params.id}}"
1189                            }
1190                        },
1191                        "layouts": [
1192                            {
1193                                "component": "shared.components.material.DynamicCard",
1194                                "params": {
1195                                    "title": "i18n:fc.om.orderitems.detail.card.summary.title",
1196                                    "half": true,
1197                                    "dataSource": "orderItemById",
1198                                    "attributes": [
1199                                        {
1200                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.ref.label",
1201                                            "template": "{{ref}}"
1202                                        },
1203                                        {
1204                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.status.label",
1205                                            "template": "{{status}}"
1206                                        },
1207                                        {
1208                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.quantity.label",
1209                                            "template": "{{quantity}}"
1210                                        },
1211                                        {
1212                                            "label": "i18n:fc.om.orderitems.detail.card.summary.attribute.creationDate.label",
1213                                            "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
1214                                        }
1215                                    ],
1216                                    "graphql": {
1217                                        "fragment": "fragment vProduct on VariantProduct { ref attributes { name type value } } "
1218                                    }
1219                                }
1220                            },
1221                            {
1222                                "component": "shared.components.material.DynamicCard",
1223                                "params": {
1224                                    "title": "i18n:fc.om.orderitems.detail.card.product.title",
1225                                    "half": true,
1226                                    "dataSource": "orderItemById.product",
1227                                    "attributes": [
1228                                        {
1229                                            "label": "i18n:fc.om.orderitems.detail.card.product.attribute.name.label",
1230                                            "template": "{{name}}"
1231                                        },
1232                                        {
1233                                            "label": "i18n:fc.om.orderitems.detail.card.product.attribute.ref.label",
1234                                            "template": "{{ref}}"
1235                                        }
1236                                    ]
1237                                }
1238                            },
1239                            {
1240                                "component": "shared.components.material.DynamicList",
1241                                "params": {
1242                                    "title": "i18n:fc.om.orderitems.detail.list.attributes.title",
1243                                    "dataSource": "orderItemById.product.attributes",
1244                                    "attributes": [
1245                                        {
1246                                            "label": "i18n:fc.om.orderitems.detail.list.attributes.column.name.heading",
1247                                            "template": "{{name}}"
1248                                        },
1249                                        {
1250                                            "label": "i18n:fc.om.orderitems.detail.list.attributes.column.type.heading",
1251                                            "template": "{{type}}"
1252                                        },
1253                                        {
1254                                            "label": "i18n:fc.om.orderitems.detail.list.attributes.column.value.heading",
1255                                            "template": "{{value}}"
1256                                        }
1257                                    ]
1258                                }
1259                            }
1260                        ]
1261                    }
1262                },
1263                {
1264                    "path": "fulfilment/:id",
1265                    "component": "shared.components.material.DynamicPage",
1266                    "menuIcon": "shopping_cart",
1267                    "permissions": [
1268                        "FULFILMENT_VIEW"
1269                    ],
1270                    "params": {
1271                        "title": "i18n:fc.om.fulfilment.detail.title",
1272                        "showUserActions": true,
1273                        "backButtons": [
1274                            {
1275                                "path": "orders/{{fulfilmentById.order.id}}",
1276                                "menuLabel": "i18n:fc.om.fulfilment.detail.breadcrumb.backToOrderPage"
1277                            }
1278                        ],
1279                        "graphql": {
1280                            "query": "query ($id: ID!){fulfilmentById(id: $id){id status ref eta createdOn deliveryType order{id} fromLocation{ref}  fromAddress { ref companyName name street city state postcode country } toAddress { ref companyName name street city state postcode country } ...article ...fulfilmentItems ...attributes}}",
1281                            "variables": {
1282                                "id": "{{params.id}}"
1283                            }
1284                        },
1285                        "primaryButtons": [
1286                            {
1287                                "label": "i18n:fc.om.fulfilment.detail.userAction.edit",
1288                                "mutation": "updateFulfilment",
1289                                "arguments": {
1290                                    "id": "{{id}}"
1291                                }
1292                            }
1293                        ],
1294                        "secondaryButtons": [
1295                            {
1296                                "label": "i18n:fc.om.fulfilment.detail.userAction.createArticle",
1297                                "mutation": "updateArticle"
1298                            }
1299                        ],
1300                        "layouts": [
1301                            {
1302                                "component": "shared.components.material.DynamicCard",
1303                                "params": {
1304                                    "title": "i18n:fc.om.fulfilment.detail.card.overview.title",
1305                                    "dataSource": "fulfilmentById",
1306                                    "attributes": [
1307                                        {
1308                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.iD.label",
1309                                            "template": "{{id}}"
1310                                        },
1311                                        {
1312                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.ref.label",
1313                                            "template": "{{ref}}"
1314                                        },
1315                                        {
1316                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.status.label",
1317                                            "template": "{{status}}"
1318                                        },
1319                                        {
1320                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.deliveryType.label",
1321                                            "template": "{{deliveryType}}"
1322                                        },
1323                                        {
1324                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.eTA.label",
1325                                            "template": "{{eta}} hours"
1326                                        },
1327                                        {
1328                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.creationDate.label",
1329                                            "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
1330                                        }
1331                                    ]
1332                                }
1333                            },
1334                            {
1335                                "component": "shared.components.material.DynamicCard",
1336                                "params": {
1337                                    "title": "i18n:fc.om.fulfilment.detail.card.fromLocation.title",
1338                                    "half": true,
1339                                    "dataSource": "fulfilmentById.fromAddress",
1340                                    "attributes": [
1341                                        {
1342                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.from.label",
1343                                            "template": "{{ref}} {{companyName}}"
1344                                        },
1345                                        {
1346                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.name.label",
1347                                            "template": "{{name}} hellow world"
1348                                        },
1349                                        {
1350                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.street.label",
1351                                            "template": "{{street}}"
1352                                        },
1353                                        {
1354                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.city.label",
1355                                            "template": "{{city}}"
1356                                        },
1357                                        {
1358                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.state.label",
1359                                            "template": "{{state}}"
1360                                        },
1361                                        {
1362                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.postcode.label",
1363                                            "template": "{{postcode}}"
1364                                        },
1365                                        {
1366                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.country.label",
1367                                            "template": "{{country}}"
1368                                        }
1369                                    ]
1370                                }
1371                            },
1372                            {
1373                                "component": "shared.components.material.DynamicCard",
1374                                "params": {
1375                                    "title": "i18n:fc.om.fulfilment.detail.card.toLocation.title",
1376                                    "half": true,
1377                                    "dataSource": "fulfilmentById.toAddress",
1378                                    "attributes": [
1379                                        {
1380                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.from.label",
1381                                            "template": "{{ref}} {{companyName}}"
1382                                        },
1383                                        {
1384                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.name.label",
1385                                            "template": "{{name}}"
1386                                        },
1387                                        {
1388                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.street.label",
1389                                            "template": "{{street}}"
1390                                        },
1391                                        {
1392                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.city.label",
1393                                            "template": "{{city}}"
1394                                        },
1395                                        {
1396                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.state.label",
1397                                            "template": "{{state}}"
1398                                        },
1399                                        {
1400                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.postcode.label",
1401                                            "template": "{{postcode}}"
1402                                        },
1403                                        {
1404                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.country.label",
1405                                            "template": "{{country}}"
1406                                        }
1407                                    ]
1408                                }
1409                            },
1410                            {
1411                                "component": "shared.components.material.DynamicList",
1412                                "params": {
1413                                    "graphql": {
1414                                        "fragment": "fragment fulfilmentItems on Fulfilment { items { edges { node { orderItem { ref product { name } } requestedQuantity filledQuantity rejectedQuantity } } } } "
1415                                    },
1416                                    "title": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.title",
1417                                    "dataSource": "fulfilmentById.items",
1418                                    "attributes": [
1419                                        {
1420                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.productName.heading",
1421                                            "template": "{{node.orderItem.product.name}}"
1422                                        },
1423                                        {
1424                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.sKURef.heading",
1425                                            "template": "{{node.orderItem.ref}}"
1426                                        },
1427                                        {
1428                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.requestedQuantity.heading",
1429                                            "template": "{{node.requestedQuantity}}"
1430                                        },
1431                                        {
1432                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.filledQuantity.heading",
1433                                            "template": "{{node.filledQuantity}}"
1434                                        },
1435                                        {
1436                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.rejectedQuantity.heading",
1437                                            "template": "{{node.rejectedQuantity}}"
1438                                        }
1439                                    ]
1440                                }
1441                            },
1442                            {
1443                                "component": "shared.components.material.DynamicList",
1444                                "params": {
1445                                    "graphql": {
1446                                        "fragment": "fragment article on Fulfilment { articles { edges { node { id ref status } } } } "
1447                                    },
1448                                    "title": "i18n:fc.om.fulfilment.detail.list.articles.title",
1449                                    "dataSource": "fulfilmentById.articles",
1450                                    "attributes": [
1451                                        {
1452                                            "label": "i18n:fc.om.fulfilment.detail.list.articles.column.articleRef.heading",
1453                                            "template": "{{node.ref}}",
1454                                            "link_template": "#/article/{{node.id}}"
1455                                        },
1456                                        {
1457                                            "label": "i18n:fc.om.fulfilment.detail.list.articles.column.status.heading",
1458                                            "template": "{{node.status}}"
1459                                        }
1460                                    ]
1461                                }
1462                            },
1463                            {
1464                                "component": "shared.components.material.DynamicList",
1465                                "params": {
1466                                    "graphql": {
1467                                        "fragment": "fragment attributes on Fulfilment { attributes { name type value } } "
1468                                    },
1469                                    "title": "i18n:fc.om.fulfilment.detail.list.attributes.title",
1470                                    "dataSource": "fulfilmentById.attributes",
1471                                    "attributes": [
1472                                        {
1473                                            "label": "i18n:fc.om.fulfilment.detail.list.attributes.column.name.heading",
1474                                            "template": "{{name}}"
1475                                        },
1476                                        {
1477                                            "label": "i18n:fc.om.fulfilment.detail.list.attributes.column.type.heading",
1478                                            "template": "{{type}}"
1479                                        },
1480                                        {
1481                                            "label": "i18n:fc.om.fulfilment.detail.list.attributes.column.value.heading",
1482                                            "template": "{{value}}"
1483                                        }
1484                                    ]
1485                                }
1486                            }
1487                        ]
1488                    }
1489                },
1490                {
1491                    "path": "order/:ord_id/fulfilment/:id",
1492                    "component": "shared.components.material.DynamicPage",
1493                    "menuIcon": "shopping_cart",
1494                    "permissions": [
1495                        "FULFILMENT_VIEW"
1496                    ],
1497                    "params": {
1498                        "title": "i18n:fc.om.fulfilment.detail.title",
1499                        "showUserActions": true,
1500                        "backButtons": [
1501                            {
1502                                "path": "orders/{{fulfilmentById.order.id}}",
1503                                "menuLabel": "i18n:fc.om.fulfilment.detail.breadcrumb.backToOrderPage"
1504                            }
1505                        ],
1506                        "graphql": {
1507                            "query": "query ($id: ID!){fulfilmentById(id: $id){id status ref eta createdOn deliveryType order{id} fromLocation{ref}  fromAddress { ref companyName name street city state postcode country } toAddress { ref companyName name street city state postcode country } ...article ...fulfilmentItems ...attributes}}",
1508                            "variables": {
1509                                "id": "{{params.id}}"
1510                            }
1511                        },
1512                        "primaryButtons": [
1513                            {
1514                                "label": "i18n:fc.om.fulfilment.detail.userAction.edit",
1515                                "mutation": "updateFulfilment",
1516                                "arguments": {
1517                                    "id": "{{id}}"
1518                                }
1519                            }
1520                        ],
1521                        "secondaryButtons": [
1522                            {
1523                                "label": "i18n:fc.om.fulfilment.detail.userAction.createArticle",
1524                                "mutation": "updateArticle"
1525                            }
1526                        ],
1527                        "layouts": [
1528                            {
1529                                "component": "shared.components.material.DynamicCard",
1530                                "params": {
1531                                    "title": "i18n:fc.om.fulfilment.detail.card.overview.title",
1532                                    "dataSource": "fulfilmentById",
1533                                    "attributes": [
1534                                        {
1535                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.iD.label",
1536                                            "template": "{{id}}"
1537                                        },
1538                                        {
1539                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.ref.label",
1540                                            "template": "{{ref}}"
1541                                        },
1542                                        {
1543                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.status.label",
1544                                            "template": "{{status}}"
1545                                        },
1546                                        {
1547                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.deliveryType.label",
1548                                            "template": "{{deliveryType}}"
1549                                        },
1550                                        {
1551                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.eTA.label",
1552                                            "template": "{{eta}} hours"
1553                                        },
1554                                        {
1555                                            "label": "i18n:fc.om.fulfilment.detail.card.overview.attribute.creationDate.label",
1556                                            "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
1557                                        }
1558                                    ]
1559                                }
1560                            },
1561                            {
1562                                "component": "shared.components.material.DynamicCard",
1563                                "params": {
1564                                    "title": "i18n:fc.om.fulfilment.detail.card.fromLocation.title",
1565                                    "half": true,
1566                                    "dataSource": "fulfilmentById.fromAddress",
1567                                    "attributes": [
1568                                        {
1569                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.from.label",
1570                                            "template": "{{ref}} {{companyName}}"
1571                                        },
1572                                        {
1573                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.name.label",
1574                                            "template": "{{name}} hellow world"
1575                                        },
1576                                        {
1577                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.street.label",
1578                                            "template": "{{street}}"
1579                                        },
1580                                        {
1581                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.city.label",
1582                                            "template": "{{city}}"
1583                                        },
1584                                        {
1585                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.state.label",
1586                                            "template": "{{state}}"
1587                                        },
1588                                        {
1589                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.postcode.label",
1590                                            "template": "{{postcode}}"
1591                                        },
1592                                        {
1593                                            "label": "i18n:fc.om.fulfilment.detail.card.fromLocation.attribute.country.label",
1594                                            "template": "{{country}}"
1595                                        }
1596                                    ]
1597                                }
1598                            },
1599                            {
1600                                "component": "shared.components.material.DynamicCard",
1601                                "params": {
1602                                    "title": "i18n:fc.om.fulfilment.detail.card.toLocation.title",
1603                                    "half": true,
1604                                    "dataSource": "fulfilmentById.toAddress",
1605                                    "attributes": [
1606                                        {
1607                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.from.label",
1608                                            "template": "{{ref}} {{companyName}}"
1609                                        },
1610                                        {
1611                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.name.label",
1612                                            "template": "{{name}}"
1613                                        },
1614                                        {
1615                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.street.label",
1616                                            "template": "{{street}}"
1617                                        },
1618                                        {
1619                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.city.label",
1620                                            "template": "{{city}}"
1621                                        },
1622                                        {
1623                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.state.label",
1624                                            "template": "{{state}}"
1625                                        },
1626                                        {
1627                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.postcode.label",
1628                                            "template": "{{postcode}}"
1629                                        },
1630                                        {
1631                                            "label": "i18n:fc.om.fulfilment.detail.card.toLocation.attribute.country.label",
1632                                            "template": "{{country}}"
1633                                        }
1634                                    ]
1635                                }
1636                            },
1637                            {
1638                                "component": "shared.components.material.DynamicList",
1639                                "params": {
1640                                    "graphql": {
1641                                        "fragment": "fragment fulfilmentItems on Fulfilment { items { edges { node { orderItem { ref product { name } } requestedQuantity filledQuantity rejectedQuantity } } } } "
1642                                    },
1643                                    "title": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.title",
1644                                    "dataSource": "fulfilmentById.items",
1645                                    "attributes": [
1646                                        {
1647                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.productName.heading",
1648                                            "template": "{{node.orderItem.product.name}}"
1649                                        },
1650                                        {
1651                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.sKURef.heading",
1652                                            "template": "{{node.orderItem.ref}}"
1653                                        },
1654                                        {
1655                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.requestedQuantity.heading",
1656                                            "template": "{{node.requestedQuantity}}"
1657                                        },
1658                                        {
1659                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.filledQuantity.heading",
1660                                            "template": "{{node.filledQuantity}}"
1661                                        },
1662                                        {
1663                                            "label": "i18n:fc.om.fulfilment.detail.list.fulfilmentItems.column.rejectedQuantity.heading",
1664                                            "template": "{{node.rejectedQuantity}}"
1665                                        }
1666                                    ]
1667                                }
1668                            },
1669                            {
1670                                "component": "shared.components.material.DynamicList",
1671                                "params": {
1672                                    "graphql": {
1673                                        "fragment": "fragment article on Fulfilment { articles { edges { node { id ref status } } } } "
1674                                    },
1675                                    "title": "i18n:fc.om.fulfilment.detail.list.articles.title",
1676                                    "dataSource": "fulfilmentById.articles",
1677                                    "attributes": [
1678                                        {
1679                                            "label": "i18n:fc.om.fulfilment.detail.list.articles.column.articleRef.heading",
1680                                            "template": "{{node.ref}}",
1681                                            "link_template": "#/article/{{node.id}}"
1682                                        },
1683                                        {
1684                                            "label": "i18n:fc.om.fulfilment.detail.list.articles.column.status.heading",
1685                                            "template": "{{node.status}}"
1686                                        }
1687                                    ]
1688                                }
1689                            },
1690                            {
1691                                "component": "shared.components.material.DynamicList",
1692                                "params": {
1693                                    "graphql": {
1694                                        "fragment": "fragment attributes on Fulfilment { attributes { name type value } } "
1695                                    },
1696                                    "title": "i18n:fc.om.fulfilment.detail.list.attributes.title",
1697                                    "dataSource": "fulfilmentById.attributes",
1698                                    "attributes": [
1699                                        {
1700                                            "label": "i18n:fc.om.fulfilment.detail.list.attributes.column.name.heading",
1701                                            "template": "{{name}}"
1702                                        },
1703                                        {
1704                                            "label": "i18n:fc.om.fulfilment.detail.list.attributes.column.type.heading",
1705                                            "template": "{{type}}"
1706                                        },
1707                                        {
1708                                            "label": "i18n:fc.om.fulfilment.detail.list.attributes.column.value.heading",
1709                                            "template": "{{value}}"
1710                                        }
1711                                    ]
1712                                }
1713                            }
1714                        ]
1715                    }
1716                },
1717                {
1718                    "path": "article/:id",
1719                    "component": "shared.components.material.DynamicPage",
1720                    "menuIcon": "next_week",
1721                    "permissions": [
1722                        "ARTICLE_VIEW"
1723                    ],
1724                    "params": {
1725                        "title": "i18n:fc.om.article.detail.title",
1726                        "showUserActions": true,
1727                        "graphql": {
1728                            "query": "query ($id: ID!) { articleById(id: $id) { id ref status ...items ...fulfilments ...consignmentArticles} } ",
1729                            "variables": {
1730                                "id": "{{params.id}}"
1731                            }
1732                        },
1733                        "layouts": [
1734                            {
1735                                "component": "shared.components.material.DynamicCard",
1736                                "params": {
1737                                    "title": "i18n:fc.om.article.detail.card.summary.title",
1738                                    "half": true,
1739                                    "dataSource": "articleById",
1740                                    "attributes": [
1741                                        {
1742                                            "label": "i18n:fc.om.article.detail.card.summary.attribute.id.label",
1743                                            "template": "{{id}}"
1744                                        },
1745                                        {
1746                                            "label": "i18n:fc.om.article.detail.card.summary.attribute.ref.label",
1747                                            "template": "{{ref}}"
1748                                        },
1749                                        {
1750                                            "label": "i18n:fc.om.article.detail.card.summary.attribute.status.label",
1751                                            "template": "{{status}}"
1752                                        }
1753                                    ]
1754                                }
1755                            },
1756                            {
1757                                "component": "shared.components.material.DynamicList",
1758                                "params": {
1759                                    "graphql": {
1760                                        "fragment": "fragment items on Article{ items{edges{node{ id quantity }}}} "
1761                                    },
1762                                    "title": "i18n:fc.om.article.detail.list.articleItems.title",
1763                                    "dataSource": "articleById.items",
1764                                    "attributes": [
1765                                        {
1766                                            "label": "i18n:fc.om.article.detail.list.articleItems.column.articleItemId.heading",
1767                                            "template": "{{node.id}}"
1768                                        },
1769                                        {
1770                                            "label": "i18n:fc.om.article.detail.list.articleItems.column.quantity.heading",
1771                                            "template": "{{node.quantity}}"
1772                                        }
1773                                    ]
1774                                }
1775                            },
1776                            {
1777                                "component": "shared.components.material.DynamicList",
1778                                "params": {
1779                                    "graphql": {
1780                                        "fragment": "fragment fulfilments on Article{ fulfilments{ edges { node { ref id status } } } } "
1781                                    },
1782                                    "title": "i18n:fc.om.article.detail.list.fulfilments.title",
1783                                    "defaultPageSize": 10,
1784                                    "dataSource": "articleById.fulfilments",
1785                                    "attributes": [
1786                                        {
1787                                            "label": "i18n:fc.om.article.detail.list.fulfilments.column.fulfilmentId.heading",
1788                                            "template": "{{node.id}}",
1789                                            "link_template": "#/fulfilment/{{node.id}}"
1790                                        },
1791                                        {
1792                                            "label": "i18n:fc.om.article.detail.list.fulfilments.column.ref.heading",
1793                                            "template": "{{node.ref}}"
1794                                        },
1795                                        {
1796                                            "label": "i18n:fc.om.article.detail.list.fulfilments.column.status.heading",
1797                                            "template": "{{node.status}}"
1798                                        },
1799                                        {
1800                                            "label": "Packing Slip",
1801                                            "template": "Download",
1802                                            "link_template": "apiv4://fulfilment/inpack/{{node.id}}/inpack-{{node.id}}-{date}.pdf"
1803                                        }
1804                                    ]
1805                                }
1806                            },
1807                            {
1808                                "component": "shared.components.material.DynamicList",
1809                                "params": {
1810                                    "graphql": {
1811                                        "fragment": "fragment consignmentArticles on Article{ consignmentArticles{ edges { node{ consignment {id ref status labelUrl carrier { name } } article{ ref id status } } } }} "
1812                                    },
1813                                    "title": "i18n:fc.om.article.detail.list.consignments.title",
1814                                    "defaultPageSize": 10,
1815                                    "dataSource": "articleById.consignmentArticles",
1816                                    "attributes": [
1817                                        {
1818                                            "label": "i18n:fc.om.article.detail.list.consignments.column.consignmentRef.heading",
1819                                            "template": "{{node.consignment.ref}}"
1820                                        },
1821                                        {
1822                                            "label": "i18n:fc.om.article.detail.list.consignments.column.carrier.heading",
1823                                            "template": "{{node.consignment.carrier.name}}"
1824                                        },
1825                                        {
1826                                            "label": "i18n:fc.om.article.detail.list.consignments.column.status.heading",
1827                                            "template": "{{node.consignment.status}}"
1828                                        },
1829                                        {
1830                                            "label": "i18n:fc.om.article.detail.list.consignments.column.label.heading",
1831                                            "template": "{{node.consignment.labelUrl}}",
1832                                            "link_template": "https://sandbox.api.fluentretail.com/api/v4/consignment/{{node.consignment.id}}/labelStream"
1833                                        },
1834                                        {
1835                                            "label": "Label",
1836                                            "template": "Download Label",
1837                                            "link_template": "apiv4://consignment/{{node.consignment.id}}/labelStream/{{node.consignment.labelUrl}}"
1838                                        }
1839                                    ]
1840                                }
1841                            }
1842                        ]
1843                    }
1844                },
1845                {
1846                    "path": "customers",
1847                    "component": "shared.components.material.DynamicPage",
1848                    "menuLabel": "i18n:fc.om.customers.index.nav",
1849                    "menuIcon": "face",
1850                    "permissions": [
1851                        "CUSTOMER_VIEW"
1852                    ],
1853                    "params": {
1854                        "graphql": {
1855                            "query": " query($ref:[String]) { customers(firstName:$ref){ edges{ node{ ...Listing } } } }"
1856                        },
1857                        "title": "i18n:fc.om.customers.index.title",
1858                        "primaryButtons": [
1859                            {
1860                                "label": "i18n:fc.om.customers.index.userAction.createCustomer",
1861                                "mutation": "createCustomer"
1862                            }
1863                        ],
1864                        "layouts": [
1865                            {
1866                                "component": "shared.components.material.DynamicFilter",
1867                                "params": {
1868                                    "label": "i18n:fc.om.customers.index.filter.placeholder",
1869                                    "fields": [
1870                                        {
1871                                            "field": "ref",
1872                                            "label": "i18n:fc.om.customers.index.filter.field..label"
1873                                        }
1874                                    ]
1875                                }
1876                            },
1877                            {
1878                                "component": "shared.components.material.DynamicList",
1879                                "params": {
1880                                    "graphql": {
1881                                        "fragment": "fragment Listing on Customer{ id, ref firstName lastName primaryEmail primaryPhone}"
1882                                    },
1883                                    "defaultPageSize": 5,
1884                                    "dataSource": "customers.edges",
1885                                    "attributes": [
1886                                        {
1887                                            "label": "i18n:fc.om.customers.index.list.column.id.heading",
1888                                            "template": "{{node.id}}",
1889                                            "link_template": "#/customers/{{node.id}}"
1890                                        },
1891                                        {
1892                                            "label": "i18n:fc.om.customers.index.list.column.name.heading",
1893                                            "template": "{{node.firstName}} - {{node.lastName}}"
1894                                        },
1895                                        {
1896                                            "label": "i18n:fc.om.customers.index.list.column.email.heading",
1897                                            "template": "{{node.primaryEmail}}"
1898                                        },
1899                                        {
1900                                            "label": "i18n:fc.om.customers.index.list.column.phone.heading",
1901                                            "template": "{{node.primaryPhone}}"
1902                                        }
1903                                    ]
1904                                }
1905                            }
1906                        ]
1907                    }
1908                },
1909                {
1910                    "path": "customers/:id",
1911                    "component": "shared.components.material.DynamicPage",
1912                    "menuIcon": "shopping_cart",
1913                    "permissions": [
1914                        "CUSTOMER_VIEW"
1915                    ],
1916                    "params": {
1917                        "title": "i18n:fc.om.customers.detail.title",
1918                        "backButtons": [
1919                            {
1920                                "path": "customers",
1921                                "menuLabel": "i18n:fc.om.customers.detail.breadcrumb.backToCustomers"
1922                            }
1923                        ],
1924                        "graphql": {
1925                            "query": "query ($id: ID!) { customerById(id: $id) {id ref firstName lastName username  primaryEmail primaryPhone status retailer {id tradingName} country department createdOn updatedOn} } ",
1926                            "variables": {
1927                                "id": "{{params.id}}"
1928                            }
1929                        },
1930                        "layouts": [
1931                            {
1932                                "component": "shared.components.material.DynamicCard",
1933                                "params": {
1934                                    "title": "i18n:fc.om.customers.detail.card.personalInformation.title",
1935                                    "half": true,
1936                                    "dataSource": "customerById",
1937                                    "attributes": [
1938                                        {
1939                                            "label": "i18n:fc.om.customers.detail.card.personalInformation.attribute.name.label",
1940                                            "template": "{{firstName}} {{lastName}}"
1941                                        },
1942                                        {
1943                                            "label": "i18n:fc.om.customers.detail.card.personalInformation.attribute.primaryPhone.label",
1944                                            "template": "{{primaryPhone}}"
1945                                        },
1946                                        {
1947                                            "label": "i18n:fc.om.customers.detail.card.personalInformation.attribute.primaryEmail.label",
1948                                            "template": "{{primaryEmail}}"
1949                                        },
1950                                        {
1951                                            "label": "i18n:fc.om.customers.detail.card.personalInformation.attribute.country.label",
1952                                            "template": "{{country}}"
1953                                        }
1954                                    ]
1955                                }
1956                            },
1957                            {
1958                                "component": "shared.components.material.DynamicCard",
1959                                "params": {
1960                                    "title": "i18n:fc.om.customers.detail.card.accountDetails.title",
1961                                    "half": true,
1962                                    "dataSource": "customerById",
1963                                    "attributes": [
1964                                        {
1965                                            "label": "i18n:fc.om.customers.detail.card.accountDetails.attribute.id.label",
1966                                            "template": "{{id}}"
1967                                        },
1968                                        {
1969                                            "label": "i18n:fc.om.customers.detail.card.accountDetails.attribute.createdOn.label",
1970                                            "template": "{{formatDate createdOn day='numeric' month='numeric' year='numeric'}}"
1971                                        },
1972                                        {
1973                                            "label": "i18n:fc.om.customers.detail.card.accountDetails.attribute.updatedOn.label",
1974                                            "template": "{{formatDate updateddOn day='numeric' month='numeric' year='numeric'}}"
1975                                        }
1976                                    ]
1977                                }
1978                            },
1979                            {
1980                                "component": "shared.components.material.DynamicCard",
1981                                "params": {
1982                                    "title": "i18n:fc.om.customers.detail.card.retailerInformation.title",
1983                                    "half": true,
1984                                    "dataSource": "customerById",
1985                                    "attributes": [
1986                                        {
1987                                            "label": "i18n:fc.om.customers.detail.card.retailerInformation.attribute.department.label",
1988                                            "template": "{{department}}"
1989                                        },
1990                                        {
1991                                            "label": "i18n:fc.om.customers.detail.card.retailerInformation.attribute.retailer.label",
1992                                            "template": "{{retailer.tradingName}}"
1993                                        },
1994                                        {
1995                                            "label": "i18n:fc.om.customers.detail.card.retailerInformation.attribute.retailerID.label",
1996                                            "template": "{{retailer.id}}"
1997                                        }
1998                                    ]
1999                                }
2000                            }
2001                        ]
2002                    }
2003                }
2004            ]
2005        }
2006    ]
2007}
2008      ,
2009    "type": "JSON",
2010    "level": "ACCOUNT"
2011  }
2012}
2013
2014

Language: json

Copyright © 2024 Fluent Retail Pty Ltd (trading as Fluent Commerce). All rights reserved. No materials on this docs.fluentcommerce.com site may be used in any way and/or for any purpose without prior written authorisation from Fluent Commerce. Current customers and partners shall use these materials strictly in accordance with the terms and conditions of their written agreements with Fluent Commerce or its affiliates.

Fluent Logo