openai/chatkit-python
Publicmirrored fromhttps://github.com/openai/chatkit-pythonAvailable
tests/assets/widgets/list_view_with_data.widget
121lines · modecode
| 1 | { |
| 2 | "version": "1.0", |
| 3 | "name": "list_view_with_data", |
| 4 | "template": "{\"type\":\"ListView\",\"children\":[{%- set _c -%}{%-for item in items -%},{\"type\":\"ListViewItem\",\"key\":{{ (item.id) | tojson }},\"gap\":5,\"onClickAction\":{\"type\":\"line.select\",\"payload\":{\"id\":{{ (item.id) | tojson }}}},\"children\":[{\"type\":\"Box\",\"background\":{{ (item.color) | tojson }},\"radius\":\"full\",\"size\":25},{\"type\":\"Text\",\"value\":{{ (item.label) | tojson }},\"size\":\"sm\"}]}{%-endfor-%}{%- endset -%}{{- (_c[1:] if _c and _c[0] == ',' else _c) -}}]}", |
| 5 | "jsonSchema": { |
| 6 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
| 7 | "type": "object", |
| 8 | "properties": { |
| 9 | "items": { |
| 10 | "type": "array", |
| 11 | "items": { |
| 12 | "type": "object", |
| 13 | "properties": { |
| 14 | "id": { |
| 15 | "type": "string" |
| 16 | }, |
| 17 | "label": { |
| 18 | "type": "string" |
| 19 | }, |
| 20 | "color": { |
| 21 | "type": "string", |
| 22 | "enum": [ |
| 23 | "blue-500", |
| 24 | "orange-500", |
| 25 | "purple-500" |
| 26 | ] |
| 27 | } |
| 28 | }, |
| 29 | "required": [ |
| 30 | "id", |
| 31 | "label", |
| 32 | "color" |
| 33 | ], |
| 34 | "additionalProperties": false |
| 35 | } |
| 36 | } |
| 37 | }, |
| 38 | "required": [ |
| 39 | "items" |
| 40 | ], |
| 41 | "additionalProperties": false |
| 42 | }, |
| 43 | "outputJsonPreview": { |
| 44 | "type": "ListView", |
| 45 | "children": [ |
| 46 | { |
| 47 | "type": "ListViewItem", |
| 48 | "key": "blue", |
| 49 | "gap": 5, |
| 50 | "onClickAction": { |
| 51 | "type": "line.select", |
| 52 | "payload": { |
| 53 | "id": "blue" |
| 54 | } |
| 55 | }, |
| 56 | "children": [ |
| 57 | { |
| 58 | "type": "Box", |
| 59 | "background": "blue-500", |
| 60 | "radius": "full", |
| 61 | "size": 25 |
| 62 | }, |
| 63 | { |
| 64 | "type": "Text", |
| 65 | "value": "Blue line", |
| 66 | "size": "sm" |
| 67 | } |
| 68 | ] |
| 69 | }, |
| 70 | { |
| 71 | "type": "ListViewItem", |
| 72 | "key": "orange", |
| 73 | "gap": 5, |
| 74 | "onClickAction": { |
| 75 | "type": "line.select", |
| 76 | "payload": { |
| 77 | "id": "orange" |
| 78 | } |
| 79 | }, |
| 80 | "children": [ |
| 81 | { |
| 82 | "type": "Box", |
| 83 | "background": "orange-500", |
| 84 | "radius": "full", |
| 85 | "size": 25 |
| 86 | }, |
| 87 | { |
| 88 | "type": "Text", |
| 89 | "value": "Orange line", |
| 90 | "size": "sm" |
| 91 | } |
| 92 | ] |
| 93 | }, |
| 94 | { |
| 95 | "type": "ListViewItem", |
| 96 | "key": "purple", |
| 97 | "gap": 5, |
| 98 | "onClickAction": { |
| 99 | "type": "line.select", |
| 100 | "payload": { |
| 101 | "id": "purple" |
| 102 | } |
| 103 | }, |
| 104 | "children": [ |
| 105 | { |
| 106 | "type": "Box", |
| 107 | "background": "purple-500", |
| 108 | "radius": "full", |
| 109 | "size": 25 |
| 110 | }, |
| 111 | { |
| 112 | "type": "Text", |
| 113 | "value": "Purple line", |
| 114 | "size": "sm" |
| 115 | } |
| 116 | ] |
| 117 | } |
| 118 | ] |
| 119 | }, |
| 120 | "encodedWidget": "eyJpZCI6ImIyZTVmZTllLWVhOWItNGUyMy1iNjMxLTFmNTRhMDI4Mjg4MCIsIm5hbWUiOiJMaW5lIHNlbGVjdG9yIiwidmlldyI6IjxMaXN0Vmlldz5cbiAge2l0ZW1zLm1hcCgoaXRlbSkgPT4gKFxuICAgIDxMaXN0Vmlld0l0ZW1cbiAgICAgIGtleT17aXRlbS5pZH1cbiAgICAgIGdhcD17NX1cbiAgICAgIG9uQ2xpY2tBY3Rpb249e3sgdHlwZTogXCJsaW5lLnNlbGVjdFwiLCBwYXlsb2FkOiB7IGlkOiBpdGVtLmlkIH0gfX1cbiAgICA-XG4gICAgICA8Qm94IGJhY2tncm91bmQ9e2l0ZW0uY29sb3J9IHJhZGl1cz1cImZ1bGxcIiBzaXplPXsyNX0gLz5cbiAgICAgIDxUZXh0IHZhbHVlPXtpdGVtLmxhYmVsfSBzaXplPVwic21cIiAvPlxuICAgIDwvTGlzdFZpZXdJdGVtPlxuICApKX1cbjwvTGlzdFZpZXc-IiwiZGVmYXVsdFN0YXRlIjp7Iml0ZW1zIjpbeyJpZCI6ImJsdWUiLCJsYWJlbCI6IkJsdWUgbGluZSIsImNvbG9yIjoiYmx1ZS01MDAifSx7ImlkIjoib3JhbmdlIiwibGFiZWwiOiJPcmFuZ2UgbGluZSIsImNvbG9yIjoib3JhbmdlLTUwMCJ9LHsiaWQiOiJwdXJwbGUiLCJsYWJlbCI6IlB1cnBsZSBsaW5lIiwiY29sb3IiOiJwdXJwbGUtNTAwIn1dfSwic3RhdGVzIjpbXSwic2NoZW1hIjoiaW1wb3J0IHsgeiB9IGZyb20gXCJ6b2RcIlxuXG5jb25zdCBMaW5lSXRlbSA9IHouc3RyaWN0T2JqZWN0KHtcbiAgaWQ6IHouc3RyaW5nKCksXG4gIGxhYmVsOiB6LnN0cmluZygpLFxuICBjb2xvcjogei5lbnVtKFtcImJsdWUtNTAwXCIsIFwib3JhbmdlLTUwMFwiLCBcInB1cnBsZS01MDBcIl0pLFxufSlcblxuY29uc3QgV2lkZ2V0U3RhdGUgPSB6LnN0cmljdE9iamVjdCh7XG4gIGl0ZW1zOiB6LmFycmF5KExpbmVJdGVtKSxcbn0pXG5cbmV4cG9ydCBkZWZhdWx0IFdpZGdldFN0YXRlIiwic2NoZW1hTW9kZSI6InpvZCIsImpzb25TY2hlbWEiOnsidHlwZSI6Im9iamVjdCIsInByb3BlcnRpZXMiOnsidGl0bGUiOnsidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsidGl0bGUiXSwiYWRkaXRpb25hbFByb3BlcnRpZXMiOmZhbHNlfSwic2NoZW1hVmFsaWRpdHkiOiJ2YWxpZCIsInZpZXdWYWxpZGl0eSI6InZhbGlkIiwiZGVmYXVsdFN0YXRlVmFsaWRpdHkiOiJ2YWxpZCJ9" |
| 121 | } |