@stubber/form-fields 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +303 -0
  2. package/dist/Field.svelte +36 -0
  3. package/dist/Field.svelte.d.ts +31 -0
  4. package/dist/Form.svelte +34 -0
  5. package/dist/Form.svelte.d.ts +29 -0
  6. package/dist/NullFieldWrapper.svelte +6 -0
  7. package/dist/NullFieldWrapper.svelte.d.ts +25 -0
  8. package/dist/fields/component_parts/arraybuilder/FieldWrapper.svelte +69 -0
  9. package/dist/fields/component_parts/arraybuilder/FieldWrapper.svelte.d.ts +29 -0
  10. package/dist/fields/component_parts/fieldbuilder/FieldWrapper.svelte +8 -0
  11. package/dist/fields/component_parts/fieldbuilder/FieldWrapper.svelte.d.ts +25 -0
  12. package/dist/fields/components/AgGrid.svelte +53 -0
  13. package/dist/fields/components/AgGrid.svelte.d.ts +18 -0
  14. package/dist/fields/components/Arraybuilder.svelte +101 -0
  15. package/dist/fields/components/Arraybuilder.svelte.d.ts +25 -0
  16. package/dist/fields/components/Checkbox.svelte +100 -0
  17. package/dist/fields/components/Checkbox.svelte.d.ts +23 -0
  18. package/dist/fields/components/CheckboxAutocomplete.svelte +92 -0
  19. package/dist/fields/components/CheckboxAutocomplete.svelte.d.ts +23 -0
  20. package/dist/fields/components/Contactselector.svelte +348 -0
  21. package/dist/fields/components/Contactselector.svelte.d.ts +25 -0
  22. package/dist/fields/components/Currency.svelte +258 -0
  23. package/dist/fields/components/Currency.svelte.d.ts +23 -0
  24. package/dist/fields/components/Dataindication.svelte +35 -0
  25. package/dist/fields/components/Dataindication.svelte.d.ts +23 -0
  26. package/dist/fields/components/Date.svelte +94 -0
  27. package/dist/fields/components/Date.svelte.d.ts +23 -0
  28. package/dist/fields/components/Datetime.svelte +94 -0
  29. package/dist/fields/components/Datetime.svelte.d.ts +23 -0
  30. package/dist/fields/components/Email.svelte +124 -0
  31. package/dist/fields/components/Email.svelte.d.ts +23 -0
  32. package/dist/fields/components/Fieldbuilder.svelte +340 -0
  33. package/dist/fields/components/Fieldbuilder.svelte.d.ts +25 -0
  34. package/dist/fields/components/Fieldsbuilder.svelte +122 -0
  35. package/dist/fields/components/Fieldsbuilder.svelte.d.ts +25 -0
  36. package/dist/fields/components/File.svelte +230 -0
  37. package/dist/fields/components/File.svelte.d.ts +25 -0
  38. package/dist/fields/components/Heading.svelte +17 -0
  39. package/dist/fields/components/Heading.svelte.d.ts +23 -0
  40. package/dist/fields/components/Hidden.svelte +7 -0
  41. package/dist/fields/components/Hidden.svelte.d.ts +23 -0
  42. package/dist/fields/components/Hiddenlocation.svelte +28 -0
  43. package/dist/fields/components/Hiddenlocation.svelte.d.ts +23 -0
  44. package/dist/fields/components/Html.svelte +13 -0
  45. package/dist/fields/components/Html.svelte.d.ts +23 -0
  46. package/dist/fields/components/Jsoneditor.svelte +94 -0
  47. package/dist/fields/components/Jsoneditor.svelte.d.ts +23 -0
  48. package/dist/fields/components/Map.svelte +192 -0
  49. package/dist/fields/components/Map.svelte.d.ts +25 -0
  50. package/dist/fields/components/Multicheckbox.svelte +119 -0
  51. package/dist/fields/components/Multicheckbox.svelte.d.ts +23 -0
  52. package/dist/fields/components/Multistep.svelte +86 -0
  53. package/dist/fields/components/Multistep.svelte.d.ts +25 -0
  54. package/dist/fields/components/Note.svelte +92 -0
  55. package/dist/fields/components/Note.svelte.d.ts +23 -0
  56. package/dist/fields/components/Number.svelte +118 -0
  57. package/dist/fields/components/Number.svelte.d.ts +23 -0
  58. package/dist/fields/components/Objectbuilder.svelte +152 -0
  59. package/dist/fields/components/Objectbuilder.svelte.d.ts +25 -0
  60. package/dist/fields/components/Qrcodescanner.svelte +198 -0
  61. package/dist/fields/components/Qrcodescanner.svelte.d.ts +23 -0
  62. package/dist/fields/components/Radio.svelte +116 -0
  63. package/dist/fields/components/Radio.svelte.d.ts +23 -0
  64. package/dist/fields/components/Renderfield.svelte +58 -0
  65. package/dist/fields/components/Renderfield.svelte.d.ts +25 -0
  66. package/dist/fields/components/Screenrecorder.svelte +277 -0
  67. package/dist/fields/components/Screenrecorder.svelte.d.ts +25 -0
  68. package/dist/fields/components/Screenshot.svelte +270 -0
  69. package/dist/fields/components/Screenshot.svelte.d.ts +25 -0
  70. package/dist/fields/components/Scrollandreaddisplay.svelte +122 -0
  71. package/dist/fields/components/Scrollandreaddisplay.svelte.d.ts +23 -0
  72. package/dist/fields/components/Section.svelte +64 -0
  73. package/dist/fields/components/Section.svelte.d.ts +25 -0
  74. package/dist/fields/components/Select.svelte +229 -0
  75. package/dist/fields/components/Select.svelte.d.ts +23 -0
  76. package/dist/fields/components/Selectresource.svelte +291 -0
  77. package/dist/fields/components/Selectresource.svelte.d.ts +25 -0
  78. package/dist/fields/components/Signature.svelte +153 -0
  79. package/dist/fields/components/Signature.svelte.d.ts +25 -0
  80. package/dist/fields/components/Slider.svelte +101 -0
  81. package/dist/fields/components/Slider.svelte.d.ts +23 -0
  82. package/dist/fields/components/SmartText.svelte +330 -0
  83. package/dist/fields/components/SmartText.svelte.d.ts +23 -0
  84. package/dist/fields/components/Telephone.svelte +153 -0
  85. package/dist/fields/components/Telephone.svelte.d.ts +23 -0
  86. package/dist/fields/components/Text.svelte +106 -0
  87. package/dist/fields/components/Text.svelte.d.ts +23 -0
  88. package/dist/fields/components/Voicenote.svelte +268 -0
  89. package/dist/fields/components/Voicenote.svelte.d.ts +25 -0
  90. package/dist/fields/components/index.d.ts +81 -0
  91. package/dist/fields/components/index.js +82 -0
  92. package/dist/fields/definitions/_all.json +38 -0
  93. package/dist/fields/definitions/_valid_fieldtype.json +220 -0
  94. package/dist/fields/definitions/arraybuilder.json +39 -0
  95. package/dist/fields/definitions/checkbox.json +44 -0
  96. package/dist/fields/definitions/contactselector.json +15 -0
  97. package/dist/fields/definitions/currency.json +42 -0
  98. package/dist/fields/definitions/dataindication.json +16 -0
  99. package/dist/fields/definitions/date.json +16 -0
  100. package/dist/fields/definitions/datetime.json +15 -0
  101. package/dist/fields/definitions/email.json +16 -0
  102. package/dist/fields/definitions/fieldbuilder.json +64 -0
  103. package/dist/fields/definitions/fieldsbuilder.json +38 -0
  104. package/dist/fields/definitions/file.json +42 -0
  105. package/dist/fields/definitions/grid.json +47 -0
  106. package/dist/fields/definitions/heading.json +38 -0
  107. package/dist/fields/definitions/hidden.json +89 -0
  108. package/dist/fields/definitions/hiddenlocation.json +15 -0
  109. package/dist/fields/definitions/html.json +34 -0
  110. package/dist/fields/definitions/index.d.ts +86 -0
  111. package/dist/fields/definitions/index.js +96 -0
  112. package/dist/fields/definitions/jsoneditor.json +33 -0
  113. package/dist/fields/definitions/map.json +36 -0
  114. package/dist/fields/definitions/multicheckbox.json +47 -0
  115. package/dist/fields/definitions/multistep.json +35 -0
  116. package/dist/fields/definitions/note.json +16 -0
  117. package/dist/fields/definitions/number.json +42 -0
  118. package/dist/fields/definitions/objectbuilder.json +39 -0
  119. package/dist/fields/definitions/qrcodescanner.json +16 -0
  120. package/dist/fields/definitions/radio.json +47 -0
  121. package/dist/fields/definitions/renderfield.json +36 -0
  122. package/dist/fields/definitions/richtext.json +16 -0
  123. package/dist/fields/definitions/screenrecorder.json +42 -0
  124. package/dist/fields/definitions/screenshot.json +42 -0
  125. package/dist/fields/definitions/scrollandreaddisplay.json +49 -0
  126. package/dist/fields/definitions/section.json +50 -0
  127. package/dist/fields/definitions/select.json +47 -0
  128. package/dist/fields/definitions/selectresource.json +48 -0
  129. package/dist/fields/definitions/signature.json +16 -0
  130. package/dist/fields/definitions/slider.json +78 -0
  131. package/dist/fields/definitions/smart_text.json +101 -0
  132. package/dist/fields/definitions/telephone.json +16 -0
  133. package/dist/fields/definitions/text.json +35 -0
  134. package/dist/fields/definitions/voicenote.json +43 -0
  135. package/dist/index.d.ts +2 -0
  136. package/dist/index.js +3 -0
  137. package/dist/thirdparty/mapbox/GeoCoder.svelte +10 -0
  138. package/dist/thirdparty/mapbox/GeoCoder.svelte.d.ts +25 -0
  139. package/dist/thirdparty/mapbox/Map.svelte +30 -0
  140. package/dist/thirdparty/mapbox/Map.svelte.d.ts +20 -0
  141. package/dist/thirdparty/mapbox/MapMarker.svelte +13 -0
  142. package/dist/thirdparty/mapbox/MapMarker.svelte.d.ts +31 -0
  143. package/dist/utils/createField.d.ts +6 -0
  144. package/dist/utils/createField.js +33 -0
  145. package/dist/utils/createForm.d.ts +1 -0
  146. package/dist/utils/createForm.js +501 -0
  147. package/dist/utils/index.d.ts +18 -0
  148. package/dist/utils/index.js +126 -0
  149. package/dist/utils/syncing.d.ts +11 -0
  150. package/dist/utils/syncing.js +134 -0
  151. package/package.json +78 -0
@@ -0,0 +1,89 @@
1
+ {
2
+ "fieldtype": "hidden",
3
+ "description": "Hidden Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "hidden_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Set a value in the exported form data.\nThe value can be set in multiple different ways specified in params."
10
+ },
11
+ "__order": 0
12
+ },
13
+ "hidden_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "type": {
27
+ "fieldtype": "select",
28
+ "details": {
29
+ "datapath": "value"
30
+ },
31
+ "without_value_details": true,
32
+ "params": {
33
+ "options": [
34
+ {
35
+ "value": "string",
36
+ "label": "Raw expression"
37
+ },
38
+ {
39
+ "value": "jsonata",
40
+ "label": "JSONata expression"
41
+ },
42
+ {
43
+ "value": "apicall",
44
+ "label": "API call"
45
+ }
46
+ ]
47
+ }
48
+ },
49
+ "expression": {
50
+ "conditions": [
51
+ "$boolean(form.data.spec.params.value.type)",
52
+ "form.data.spec.params.value.type != 'apicall'"
53
+ ],
54
+ "fieldtype": "text",
55
+ "details": {
56
+ "datapath": "value"
57
+ }
58
+ },
59
+ "api_params": {
60
+ "fieldtype": "section",
61
+ "conditions": ["form.data.spec.params.value.type = 'apicall'"],
62
+ "details": {
63
+ "datapath": "value"
64
+ },
65
+ "fields": {
66
+ "method": {},
67
+ "url": {},
68
+ "headers": {
69
+ "fieldtype": "arraybuilder",
70
+ "params": {
71
+ "new_entry_field": {
72
+ "fieldtype": "section",
73
+ "fields": {
74
+ "key": {},
75
+ "value": {}
76
+ }
77
+ }
78
+ }
79
+ },
80
+ "body": {
81
+ "fieldtype": "jsoneditor"
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "fieldtype": "hiddenlocation",
3
+ "description": "Hidden Location Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "hiddenlocation_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture the user location in the background."
10
+ },
11
+ "__order": 0
12
+ }
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "fieldtype": "html",
3
+ "description": "Html Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "html_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Display html content in the form.\nhtml is set in the params"
10
+ },
11
+ "__order": 0
12
+ },
13
+ "html_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "html": {
27
+ "fieldtype": "note",
28
+ "__order": 1
29
+ }
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
@@ -0,0 +1,86 @@
1
+ export namespace definitions {
2
+ export { _all };
3
+ export { _valid_fieldtype };
4
+ export { arraybuilder };
5
+ export { checkbox };
6
+ export { contactselector };
7
+ export { currency };
8
+ export { dataindication };
9
+ export { date };
10
+ export { datetime };
11
+ export { email };
12
+ export { fieldbuilder };
13
+ export { fieldsbuilder };
14
+ export { file };
15
+ export { grid };
16
+ export { heading };
17
+ export { hidden };
18
+ export { hiddenlocation };
19
+ export { html };
20
+ export { jsoneditor };
21
+ export { map };
22
+ export { multicheckbox };
23
+ export { multistep };
24
+ export { note };
25
+ export { number };
26
+ export { objectbuilder };
27
+ export { qrcodescanner };
28
+ export { radio };
29
+ export { renderfield };
30
+ export { screenrecorder };
31
+ export { screenshot };
32
+ export { scrollandreaddisplay };
33
+ export { section };
34
+ export { select };
35
+ export { selectresource };
36
+ export { signature };
37
+ export { slider };
38
+ export { smart_text };
39
+ export { telephone };
40
+ export { text };
41
+ export { voicenote };
42
+ }
43
+ export const selectableFieldtypes: ({
44
+ label: string;
45
+ value: string;
46
+ } | null)[];
47
+ import _all from "./_all.json";
48
+ import _valid_fieldtype from "./_valid_fieldtype.json";
49
+ import arraybuilder from "./arraybuilder.json";
50
+ import checkbox from "./checkbox.json";
51
+ import contactselector from "./contactselector.json";
52
+ import currency from "./currency.json";
53
+ import dataindication from "./dataindication.json";
54
+ import date from "./date.json";
55
+ import datetime from "./datetime.json";
56
+ import email from "./email.json";
57
+ import fieldbuilder from "./fieldbuilder.json";
58
+ import fieldsbuilder from "./fieldsbuilder.json";
59
+ import file from "./file.json";
60
+ import grid from "./grid.json";
61
+ import heading from "./heading.json";
62
+ import hidden from "./hidden.json";
63
+ import hiddenlocation from "./hiddenlocation.json";
64
+ import html from "./html.json";
65
+ import jsoneditor from "./jsoneditor.json";
66
+ import map from "./map.json";
67
+ import multicheckbox from "./multicheckbox.json";
68
+ import multistep from "./multistep.json";
69
+ import note from "./note.json";
70
+ import number from "./number.json";
71
+ import objectbuilder from "./objectbuilder.json";
72
+ import qrcodescanner from "./qrcodescanner.json";
73
+ import radio from "./radio.json";
74
+ import renderfield from "./renderfield.json";
75
+ import screenrecorder from "./screenrecorder.json";
76
+ import screenshot from "./screenshot.json";
77
+ import scrollandreaddisplay from "./scrollandreaddisplay.json";
78
+ import section from "./section.json";
79
+ import select from "./select.json";
80
+ import selectresource from "./selectresource.json";
81
+ import signature from "./signature.json";
82
+ import slider from "./slider.json";
83
+ import smart_text from "./smart_text.json";
84
+ import telephone from "./telephone.json";
85
+ import text from "./text.json";
86
+ import voicenote from "./voicenote.json";
@@ -0,0 +1,96 @@
1
+ // import _ from "lodash-es";
2
+ import _all from "./_all.json";
3
+ import _valid_fieldtype from "./_valid_fieldtype.json";
4
+ import arraybuilder from "./arraybuilder.json";
5
+ import checkbox from "./checkbox.json";
6
+ import contactselector from "./contactselector.json";
7
+ import currency from "./currency.json";
8
+ import dataindication from "./dataindication.json";
9
+ import date from "./date.json";
10
+ import datetime from "./datetime.json";
11
+ import email from "./email.json";
12
+ import fieldbuilder from "./fieldbuilder.json";
13
+ import fieldsbuilder from "./fieldsbuilder.json";
14
+ import file from "./file.json";
15
+ import grid from "./grid.json";
16
+ import heading from "./heading.json";
17
+ import hidden from "./hidden.json";
18
+ import hiddenlocation from "./hiddenlocation.json";
19
+ import html from "./html.json";
20
+ import jsoneditor from "./jsoneditor.json";
21
+ import map from "./map.json";
22
+ import multicheckbox from "./multicheckbox.json";
23
+ import multistep from "./multistep.json";
24
+ import note from "./note.json";
25
+ import number from "./number.json";
26
+ import objectbuilder from "./objectbuilder.json";
27
+ import qrcodescanner from "./qrcodescanner.json";
28
+ import radio from "./radio.json";
29
+ import renderfield from "./renderfield.json";
30
+ // import richtext from "./richtext.json";
31
+ import screenrecorder from "./screenrecorder.json";
32
+ import screenshot from "./screenshot.json";
33
+ import scrollandreaddisplay from "./scrollandreaddisplay.json";
34
+ import section from "./section.json";
35
+ import select from "./select.json";
36
+ import selectresource from "./selectresource.json";
37
+ import signature from "./signature.json";
38
+ import slider from "./slider.json";
39
+ import smart_text from "./smart_text.json";
40
+ import telephone from "./telephone.json";
41
+ import text from "./text.json";
42
+ import voicenote from "./voicenote.json";
43
+
44
+ export const definitions = {
45
+ _all,
46
+ _valid_fieldtype,
47
+ arraybuilder,
48
+ checkbox,
49
+ contactselector,
50
+ currency,
51
+ dataindication,
52
+ date,
53
+ datetime,
54
+ email,
55
+ fieldbuilder,
56
+ fieldsbuilder,
57
+ file,
58
+ grid,
59
+ heading,
60
+ hidden,
61
+ hiddenlocation,
62
+ html,
63
+ jsoneditor,
64
+ map,
65
+ multicheckbox,
66
+ multistep,
67
+ note,
68
+ number,
69
+ objectbuilder,
70
+ qrcodescanner,
71
+ radio,
72
+ renderfield,
73
+ // richtext,
74
+ screenrecorder,
75
+ screenshot,
76
+ scrollandreaddisplay,
77
+ section,
78
+ select,
79
+ selectresource,
80
+ signature,
81
+ slider,
82
+ smart_text,
83
+ telephone,
84
+ text,
85
+ voicenote,
86
+ };
87
+
88
+ export const selectableFieldtypes = Object.entries(definitions)
89
+ .map(([key, value]) => {
90
+ if (key === "_all" || key === "_valid_fieldtype") return null;
91
+ return {
92
+ label: value.description,
93
+ value: value.fieldtype,
94
+ };
95
+ })
96
+ .filter(Boolean);
@@ -0,0 +1,33 @@
1
+ {
2
+ "fieldtype": "jsoneditor",
3
+ "description": "JSON Editor Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "jsoneditor_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture a JSON value using a JSON editor."
10
+ },
11
+ "__order": 0
12
+ },
13
+ "jsoneditor_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "readonly": {
27
+ "fieldtype": "checkbox"
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
33
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "fieldtype": "map",
3
+ "description": "Map Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "map_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture GPS coordinates by clicking on the map."
10
+ },
11
+ "__order": 0
12
+ },
13
+ "map_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "hide_geolocate_button": {
27
+ "fieldtype": "checkbox"
28
+ },
29
+ "auto_set_location": {
30
+ "fieldtype": "checkbox"
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,47 @@
1
+ {
2
+ "fieldtype": "multicheckbox",
3
+ "description": "Multi-Checkbox Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "multicheckbox_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture multiple values from a list of checkboxes."
10
+ },
11
+ "__order": 0
12
+ },
13
+ "multicheckbox_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "keyname": "params",
19
+ "datapath": "spec"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "options": {
27
+ "fieldtype": "arraybuilder",
28
+ "params": {
29
+ "new_entry_field": {
30
+ "fieldtype": "section",
31
+ "fields": {
32
+ "label": {
33
+ "fieldtype": "text",
34
+ "__order": 0
35
+ },
36
+ "key": {
37
+ "fieldtype": "text"
38
+ }
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
44
+ }
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "fieldtype": "multistep",
3
+ "description": "Multi-step Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "multistep_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Render fields in a paginated fashion."
10
+ },
11
+ "__order": 0
12
+ },
13
+ "multistep_params_raw": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "keyname": "spec"
19
+ },
20
+ "params": {
21
+ "collapsible": true,
22
+ "collapsed": true
23
+ },
24
+ "fields": {
25
+ "fields": {
26
+ "fieldtype": "jsoneditor",
27
+ "params": {
28
+ "hide_demo": true
29
+ }
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "fieldtype": "note",
3
+ "description": "Note Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "note_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture longer textual content"
10
+ },
11
+ "__order": 0
12
+ }
13
+ }
14
+ }
15
+ }
16
+
@@ -0,0 +1,42 @@
1
+ {
2
+ "fieldtype": "number",
3
+ "description": "Number Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "number_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture numeric values"
10
+ },
11
+ "__order": 0
12
+ },
13
+ "number_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "max": {
27
+ "fieldtype": "number"
28
+ },
29
+ "min": {
30
+ "fieldtype": "number"
31
+ },
32
+ "step": {
33
+ "fieldtype": "number",
34
+ "params": {
35
+ "min": 0
36
+ }
37
+ }
38
+ }
39
+ }
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "fieldtype": "objectbuilder",
3
+ "description": "Object Builder Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "objectbuilder_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Build a nested object"
10
+ },
11
+ "__order": 0
12
+ },
13
+ "objectbuilder_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "with_order": {
27
+ "fieldtype": "checkbox"
28
+ },
29
+ "key_field_spec": {
30
+ "fieldtype": "jsoneditor"
31
+ },
32
+ "value_field_spec": {
33
+ "fieldtype": "jsoneditor"
34
+ }
35
+ }
36
+ }
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "fieldtype": "qrcodescanner",
3
+ "description": "QRCodescanner Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "qrcodescanner_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture content from a QR code"
10
+ },
11
+ "__order": 0
12
+ }
13
+ }
14
+ }
15
+ }
16
+
@@ -0,0 +1,47 @@
1
+ {
2
+ "fieldtype": "radio",
3
+ "description": "Radio Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "radio_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Capture one value from a list of options.\nOptions are presented in a radio button list."
10
+ },
11
+ "__order": 0
12
+ },
13
+ "radio_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "keyname": "params",
19
+ "datapath": "spec"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "options": {
27
+ "fieldtype": "arraybuilder",
28
+ "params": {
29
+ "new_entry_field": {
30
+ "fieldtype": "section",
31
+ "fields": {
32
+ "label": {
33
+ "fieldtype": "text",
34
+ "__order": 0
35
+ },
36
+ "value": {
37
+ "fieldtype": "jsoneditor"
38
+ }
39
+ }
40
+ }
41
+ }
42
+ }
43
+ }
44
+ }
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "fieldtype": "renderfield",
3
+ "description": "Render Field Field",
4
+ "settings_form": {
5
+ "fields": {
6
+ "renderfield_description": {
7
+ "fieldtype": "heading",
8
+ "params": {
9
+ "subheading_text": "Render a field dynamically.\nSet the dynamic parts of the field spec in params. The string values of the dynamic_fieldspec are evaluated with jsonata so be sure to only use jsonata expressions.\n*Note: 'select' is a jsonata expression that returns the string 'select' whereas select is a jsonata expression that returns the value assigned to the variable 'select'"
10
+ },
11
+ "__order": 0
12
+ },
13
+ "renderfield_params": {
14
+ "fieldtype": "section",
15
+ "__order": 1,
16
+ "title": "Params",
17
+ "details": {
18
+ "datapath": "spec",
19
+ "keyname": "params"
20
+ },
21
+ "params": {
22
+ "collapsible": true,
23
+ "collapsed": true
24
+ },
25
+ "fields": {
26
+ "dynamic_fieldspec": {
27
+ "fieldtype": "jsoneditor",
28
+ "initvalue": {
29
+ "default": {}
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }