dynamicforms 0.76.14__py3-none-any.whl

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 (287) hide show
  1. dynamicforms/__init__.py +8 -0
  2. dynamicforms/action.py +521 -0
  3. dynamicforms/apps.py +5 -0
  4. dynamicforms/fields.py +1570 -0
  5. dynamicforms/filters.py +44 -0
  6. dynamicforms/locale/en/LC_MESSAGES/django.po +67 -0
  7. dynamicforms/locale/en/LC_MESSAGES/djangojs.po +31 -0
  8. dynamicforms/locale/sl/LC_MESSAGES/django.po +71 -0
  9. dynamicforms/locale/sl/LC_MESSAGES/djangojs.po +36 -0
  10. dynamicforms/management/__init__.py +0 -0
  11. dynamicforms/management/commands/__init__.py +0 -0
  12. dynamicforms/management/commands/clean_dfpreuploaded_files.py +26 -0
  13. dynamicforms/migrations/__init__.py +0 -0
  14. dynamicforms/mixins/__init__.py +27 -0
  15. dynamicforms/mixins/action.py +14 -0
  16. dynamicforms/mixins/choice/__init__.py +94 -0
  17. dynamicforms/mixins/choice/allow_tags.py +79 -0
  18. dynamicforms/mixins/choice/null_choice.py +26 -0
  19. dynamicforms/mixins/choice/single_choice.py +21 -0
  20. dynamicforms/mixins/color_field.py +4 -0
  21. dynamicforms/mixins/conditional_visibility.py +193 -0
  22. dynamicforms/mixins/enable_copy.py +4 -0
  23. dynamicforms/mixins/field_render.py +209 -0
  24. dynamicforms/mixins/file_field.py +5 -0
  25. dynamicforms/mixins/help_text.py +46 -0
  26. dynamicforms/mixins/implicit_hidden.py +7 -0
  27. dynamicforms/mixins/implicit_natural_date.py +88 -0
  28. dynamicforms/mixins/null_value.py +15 -0
  29. dynamicforms/mixins/password_field.py +23 -0
  30. dynamicforms/mixins/related_field_ajax.py +142 -0
  31. dynamicforms/mixins/rtf_field.py +58 -0
  32. dynamicforms/models.py +5 -0
  33. dynamicforms/models_utils.py +33 -0
  34. dynamicforms/pagination.py +175 -0
  35. dynamicforms/preupload_files.py +42 -0
  36. dynamicforms/progress.py +71 -0
  37. dynamicforms/renderers.py +1 -0
  38. dynamicforms/routers.py +36 -0
  39. dynamicforms/serializers.py +486 -0
  40. dynamicforms/struct.py +40 -0
  41. dynamicforms/template_render/__init__.py +10 -0
  42. dynamicforms/template_render/layout.py +178 -0
  43. dynamicforms/template_render/mixins/__init__.py +0 -0
  44. dynamicforms/template_render/mixins/base.py +39 -0
  45. dynamicforms/template_render/mixins/field.py +74 -0
  46. dynamicforms/template_render/mixins/listserializer.py +100 -0
  47. dynamicforms/template_render/mixins/render_mode_enum.py +8 -0
  48. dynamicforms/template_render/mixins/serializer.py +301 -0
  49. dynamicforms/template_render/mixins/serializer_filter.py +19 -0
  50. dynamicforms/template_render/mixins/serializer_render_actions.py +21 -0
  51. dynamicforms/template_render/mixins/serializer_render_fields.py +57 -0
  52. dynamicforms/template_render/mixins/util.py +9 -0
  53. dynamicforms/template_render/renderer.py +38 -0
  54. dynamicforms/template_render/responsive_table_layout.py +64 -0
  55. dynamicforms/urls.py +9 -0
  56. dynamicforms/utils.py +32 -0
  57. dynamicforms/views.py +1 -0
  58. dynamicforms/viewsets.py +421 -0
  59. dynamicforms-0.76.14.dist-info/METADATA +129 -0
  60. dynamicforms-0.76.14.dist-info/RECORD +287 -0
  61. dynamicforms-0.76.14.dist-info/WHEEL +4 -0
  62. dynamicforms-0.76.14.dist-info/licenses/LICENSE +21 -0
  63. dynamicforms_legacy/__init__.py +8 -0
  64. dynamicforms_legacy/action.py +561 -0
  65. dynamicforms_legacy/apps.py +5 -0
  66. dynamicforms_legacy/context_processors.py +27 -0
  67. dynamicforms_legacy/dynamicforms_migration_mixin.py +42 -0
  68. dynamicforms_legacy/fields.py +1108 -0
  69. dynamicforms_legacy/filters.py +44 -0
  70. dynamicforms_legacy/migrations/__init__.py +0 -0
  71. dynamicforms_legacy/mixins/__init__.py +16 -0
  72. dynamicforms_legacy/mixins/action.py +14 -0
  73. dynamicforms_legacy/mixins/allow_tags.py +85 -0
  74. dynamicforms_legacy/mixins/enable_copy.py +4 -0
  75. dynamicforms_legacy/mixins/file_field.py +5 -0
  76. dynamicforms_legacy/mixins/help_text.py +38 -0
  77. dynamicforms_legacy/mixins/implicit_hidden.py +7 -0
  78. dynamicforms_legacy/mixins/implicit_natural_date.py +86 -0
  79. dynamicforms_legacy/mixins/null_choice.py +26 -0
  80. dynamicforms_legacy/mixins/null_value.py +15 -0
  81. dynamicforms_legacy/mixins/password_field.py +19 -0
  82. dynamicforms_legacy/mixins/related_field_ajax.py +58 -0
  83. dynamicforms_legacy/mixins/render.py +203 -0
  84. dynamicforms_legacy/mixins/rtf_field.py +52 -0
  85. dynamicforms_legacy/mixins/single_choice.py +21 -0
  86. dynamicforms_legacy/models.py +5 -0
  87. dynamicforms_legacy/pagination.py +168 -0
  88. dynamicforms_legacy/progress.py +71 -0
  89. dynamicforms_legacy/renderers.py +183 -0
  90. dynamicforms_legacy/serializers.py +335 -0
  91. dynamicforms_legacy/settings.py +196 -0
  92. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap-theme.css +587 -0
  93. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap-theme.css.map +1 -0
  94. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css +6 -0
  95. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap-theme.min.css.map +1 -0
  96. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap.css +6834 -0
  97. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap.css.map +1 -0
  98. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap.min.css +6 -0
  99. dynamicforms_legacy/static/bootstrap-3.4.1-dist/css/bootstrap.min.css.map +1 -0
  100. dynamicforms_legacy/static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.eot +0 -0
  101. dynamicforms_legacy/static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.svg +288 -0
  102. dynamicforms_legacy/static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  103. dynamicforms_legacy/static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.woff +0 -0
  104. dynamicforms_legacy/static/bootstrap-3.4.1-dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  105. dynamicforms_legacy/static/bootstrap-3.4.1-dist/js/bootstrap.js +2580 -0
  106. dynamicforms_legacy/static/bootstrap-3.4.1-dist/js/bootstrap.min.js +6 -0
  107. dynamicforms_legacy/static/bootstrap-3.4.1-dist/js/npm.js +13 -0
  108. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-grid.css +3719 -0
  109. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-grid.css.map +1 -0
  110. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-grid.min.css +7 -0
  111. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-grid.min.css.map +1 -0
  112. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-reboot.css +331 -0
  113. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-reboot.css.map +1 -0
  114. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-reboot.min.css +8 -0
  115. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap-reboot.min.css.map +1 -0
  116. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap.css +10038 -0
  117. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap.css.map +1 -0
  118. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap.min.css +7 -0
  119. dynamicforms_legacy/static/bootstrap-4.3.1-dist/css/bootstrap.min.css.map +1 -0
  120. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.bundle.js +7013 -0
  121. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.bundle.js.map +1 -0
  122. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.bundle.min.js +7 -0
  123. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.bundle.min.js.map +1 -0
  124. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.js +4435 -0
  125. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.js.map +1 -0
  126. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.min.js +7 -0
  127. dynamicforms_legacy/static/bootstrap-4.3.1-dist/js/bootstrap.min.js.map +1 -0
  128. dynamicforms_legacy/static/ckeditor-df/ckEditorCustomBuildReadMe.txt +255 -0
  129. dynamicforms_legacy/static/ckeditor-df/ckeditor.js +6 -0
  130. dynamicforms_legacy/static/dynamicforms/dynamicforms.js +1883 -0
  131. dynamicforms_legacy/static/dynamicforms/icons/copy.svg +7 -0
  132. dynamicforms_legacy/static/dynamicforms/icons/eye-off-outline.svg +10 -0
  133. dynamicforms_legacy/static/dynamicforms/icons/eye-outline.svg +7 -0
  134. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  135. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  136. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  137. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  138. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  139. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  140. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  141. dynamicforms_legacy/static/jquery_ui/css/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  142. dynamicforms_legacy/static/jquery_ui/css/images/ui-icons_222222_256x240.png +0 -0
  143. dynamicforms_legacy/static/jquery_ui/css/images/ui-icons_228ef1_256x240.png +0 -0
  144. dynamicforms_legacy/static/jquery_ui/css/images/ui-icons_ef8c08_256x240.png +0 -0
  145. dynamicforms_legacy/static/jquery_ui/css/images/ui-icons_ffd27a_256x240.png +0 -0
  146. dynamicforms_legacy/static/jquery_ui/css/images/ui-icons_ffffff_256x240.png +0 -0
  147. dynamicforms_legacy/static/jquery_ui/css/jquery-ui.min.css +7 -0
  148. dynamicforms_legacy/static/jquery_ui/css/jquery-ui.structure.min.css +5 -0
  149. dynamicforms_legacy/static/jquery_ui/css/jquery-ui.theme.min.css +5 -0
  150. dynamicforms_legacy/static/jquery_ui/js/jquery-3.3.1.min.js +2 -0
  151. dynamicforms_legacy/static/jquery_ui/js/jquery-ui.min.js +13 -0
  152. dynamicforms_legacy/static/select2/css/select2-bootstrap3.min.css +7 -0
  153. dynamicforms_legacy/static/select2/css/select2-bootstrap4.min.css +578 -0
  154. dynamicforms_legacy/static/select2/select2-4.0.5/css/select2.min.css +1 -0
  155. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/af.js +3 -0
  156. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ar.js +3 -0
  157. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/az.js +3 -0
  158. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/bg.js +3 -0
  159. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/bs.js +3 -0
  160. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ca.js +3 -0
  161. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/cs.js +3 -0
  162. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/da.js +3 -0
  163. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/de.js +3 -0
  164. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/dsb.js +3 -0
  165. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/el.js +3 -0
  166. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/en.js +3 -0
  167. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/es.js +3 -0
  168. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/et.js +3 -0
  169. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/eu.js +3 -0
  170. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/fa.js +3 -0
  171. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/fi.js +3 -0
  172. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/fr.js +3 -0
  173. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/gl.js +3 -0
  174. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/he.js +3 -0
  175. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/hi.js +3 -0
  176. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/hr.js +3 -0
  177. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/hsb.js +3 -0
  178. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/hu.js +3 -0
  179. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/hy.js +3 -0
  180. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/id.js +3 -0
  181. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/is.js +3 -0
  182. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/it.js +3 -0
  183. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ja.js +3 -0
  184. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/km.js +3 -0
  185. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ko.js +3 -0
  186. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/lt.js +3 -0
  187. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/lv.js +3 -0
  188. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/mk.js +3 -0
  189. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ms.js +3 -0
  190. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/nb.js +3 -0
  191. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/nl.js +3 -0
  192. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/pl.js +3 -0
  193. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ps.js +3 -0
  194. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/pt-BR.js +3 -0
  195. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/pt.js +3 -0
  196. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ro.js +3 -0
  197. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/ru.js +3 -0
  198. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/sk.js +3 -0
  199. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/sl.js +3 -0
  200. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/sr-Cyrl.js +3 -0
  201. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/sr.js +3 -0
  202. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/sv.js +3 -0
  203. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/th.js +3 -0
  204. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/tr.js +3 -0
  205. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/uk.js +3 -0
  206. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/vi.js +3 -0
  207. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/zh-CN.js +3 -0
  208. dynamicforms_legacy/static/select2/select2-4.0.5/js/i18n/zh-TW.js +3 -0
  209. dynamicforms_legacy/static/select2/select2-4.0.5/js/select2.full.js +6457 -0
  210. dynamicforms_legacy/static/select2/select2-4.0.5/js/select2.full.min.js +1 -0
  211. dynamicforms_legacy/static/select2/select2-4.0.5/js/select2.js +5746 -0
  212. dynamicforms_legacy/static/select2/select2-4.0.5/js/select2.min.js +1 -0
  213. dynamicforms_legacy/struct.py +40 -0
  214. dynamicforms_legacy/templates/dynamicforms/base.html +12 -0
  215. dynamicforms_legacy/templates/dynamicforms/base_form.html +44 -0
  216. dynamicforms_legacy/templates/dynamicforms/base_includes.html +51 -0
  217. dynamicforms_legacy/templates/dynamicforms/base_includes_select2.html +6 -0
  218. dynamicforms_legacy/templates/dynamicforms/base_list.html +47 -0
  219. dynamicforms_legacy/templates/dynamicforms/base_table_body.html +46 -0
  220. dynamicforms_legacy/templates/dynamicforms/base_table_filter.html +44 -0
  221. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_form.html +10 -0
  222. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_includes.html +46 -0
  223. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_includes_v3.html +90 -0
  224. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_includes_v4.html +77 -0
  225. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_list.html +9 -0
  226. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_table_body.html +4 -0
  227. dynamicforms_legacy/templates/dynamicforms/bootstrap/base_table_filter.html +5 -0
  228. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/base_field.html +41 -0
  229. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/base_field_v3.html +11 -0
  230. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/base_field_v4.html +11 -0
  231. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/checkbox.html +7 -0
  232. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/checkbox_multiple.html +7 -0
  233. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/fieldset.html +21 -0
  234. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/form.html +4 -0
  235. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/input.html +31 -0
  236. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/list_fieldset.html +18 -0
  237. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/radio.html +8 -0
  238. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/rtf_field.html +4 -0
  239. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/select.html +46 -0
  240. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/select_multiple.html +17 -0
  241. dynamicforms_legacy/templates/dynamicforms/bootstrap/field/textarea.html +4 -0
  242. dynamicforms_legacy/templates/dynamicforms/bootstrap/modal_dialog.html +13 -0
  243. dynamicforms_legacy/templates/dynamicforms/bootstrap/modal_dialog_rest.html +23 -0
  244. dynamicforms_legacy/templates/dynamicforms/bootstrap/page.html +11 -0
  245. dynamicforms_legacy/templates/dynamicforms/field/base_field.html +55 -0
  246. dynamicforms_legacy/templates/dynamicforms/field/checkbox.html +28 -0
  247. dynamicforms_legacy/templates/dynamicforms/field/checkbox_multiple.html +16 -0
  248. dynamicforms_legacy/templates/dynamicforms/field/dict_field.html +4 -0
  249. dynamicforms_legacy/templates/dynamicforms/field/fieldset.html +4 -0
  250. dynamicforms_legacy/templates/dynamicforms/field/form.html +18 -0
  251. dynamicforms_legacy/templates/dynamicforms/field/input.html +31 -0
  252. dynamicforms_legacy/templates/dynamicforms/field/list_field.html +4 -0
  253. dynamicforms_legacy/templates/dynamicforms/field/list_fieldset.html +4 -0
  254. dynamicforms_legacy/templates/dynamicforms/field/radio.html +24 -0
  255. dynamicforms_legacy/templates/dynamicforms/field/rtf_field.html +14 -0
  256. dynamicforms_legacy/templates/dynamicforms/field/select.html +97 -0
  257. dynamicforms_legacy/templates/dynamicforms/field/select_multiple.html +67 -0
  258. dynamicforms_legacy/templates/dynamicforms/field/textarea.html +13 -0
  259. dynamicforms_legacy/templates/dynamicforms/jquery_ui/base_form.html +13 -0
  260. dynamicforms_legacy/templates/dynamicforms/jquery_ui/base_includes.html +225 -0
  261. dynamicforms_legacy/templates/dynamicforms/jquery_ui/base_list.html +9 -0
  262. dynamicforms_legacy/templates/dynamicforms/jquery_ui/base_table_body.html +4 -0
  263. dynamicforms_legacy/templates/dynamicforms/jquery_ui/base_table_filter.html +5 -0
  264. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/base_field.html +16 -0
  265. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/checkbox.html +7 -0
  266. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/checkbox_multiple.html +9 -0
  267. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/fieldset.html +11 -0
  268. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/form.html +4 -0
  269. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/input.html +17 -0
  270. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/list_fieldset.html +6 -0
  271. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/radio.html +8 -0
  272. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/rtf_field.html +4 -0
  273. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/select.html +37 -0
  274. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/select_multiple.html +18 -0
  275. dynamicforms_legacy/templates/dynamicforms/jquery_ui/field/textarea.html +4 -0
  276. dynamicforms_legacy/templates/dynamicforms/jquery_ui/modal_dialog.html +2 -0
  277. dynamicforms_legacy/templates/dynamicforms/jquery_ui/modal_dialog_rest.html +27 -0
  278. dynamicforms_legacy/templates/dynamicforms/jquery_ui/page.html +20 -0
  279. dynamicforms_legacy/templates/dynamicforms/modal_dialog.html +4 -0
  280. dynamicforms_legacy/templates/dynamicforms/modal_dialog_rest.html +18 -0
  281. dynamicforms_legacy/templates/dynamicforms/page.html +25 -0
  282. dynamicforms_legacy/templates/dynamicforms/rtf_field_style.html +41 -0
  283. dynamicforms_legacy/templatetags/__init__.py +0 -0
  284. dynamicforms_legacy/templatetags/dynamicforms.py +475 -0
  285. dynamicforms_legacy/urls.py +8 -0
  286. dynamicforms_legacy/views.py +1 -0
  287. dynamicforms_legacy/viewsets.py +366 -0
@@ -0,0 +1,1108 @@
1
+ import warnings
2
+
3
+ from typing import Optional
4
+ from uuid import UUID
5
+
6
+ from rest_framework import fields, relations
7
+
8
+ from .action import Actions
9
+ from .mixins import (
10
+ ActionMixin,
11
+ AllowTagsMixin,
12
+ DateFieldMixin,
13
+ DateTimeFieldMixin,
14
+ DisplayMode,
15
+ EnableCopyMixin,
16
+ FieldHelpTextMixin,
17
+ FileFieldMixin,
18
+ HiddenFieldMixin,
19
+ NullChoiceMixin,
20
+ NullValueMixin,
21
+ PasswordFieldMixin,
22
+ RelatedFieldAJAXMixin,
23
+ RenderMixin,
24
+ RTFFieldMixin,
25
+ SingleChoiceMixin,
26
+ TimeFieldMixin,
27
+ )
28
+
29
+
30
+ class BooleanField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.BooleanField):
31
+ def __init__(
32
+ self,
33
+ read_only=False,
34
+ write_only=False,
35
+ required=None,
36
+ default=fields.empty,
37
+ initial=fields.empty,
38
+ source=None,
39
+ label=None,
40
+ help_text=None,
41
+ style=None,
42
+ error_messages=None,
43
+ validators=None,
44
+ actions: Actions = None,
45
+ uuid: UUID = None,
46
+ display: DisplayMode = None,
47
+ display_table: DisplayMode = None,
48
+ display_form: DisplayMode = None,
49
+ table_classes: str = "",
50
+ **kw,
51
+ ):
52
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
53
+ kwargs.update(kw)
54
+ super().__init__(**kwargs)
55
+
56
+
57
+ class CharField(PasswordFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.CharField):
58
+ def __init__(
59
+ self,
60
+ read_only=False,
61
+ write_only=False,
62
+ required=None,
63
+ default=fields.empty,
64
+ initial=fields.empty,
65
+ source=None,
66
+ label=None,
67
+ help_text=None,
68
+ style=None,
69
+ error_messages=None,
70
+ validators=None,
71
+ allow_null=False,
72
+ password_field=False,
73
+ actions: Actions = None,
74
+ uuid: UUID = None,
75
+ display: DisplayMode = None,
76
+ display_table: DisplayMode = None,
77
+ display_form: DisplayMode = None,
78
+ table_classes: str = "",
79
+ **kw,
80
+ ):
81
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
82
+ kwargs.update(kw)
83
+ super().__init__(**kwargs)
84
+
85
+
86
+ class EmailField(PasswordFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.EmailField):
87
+ def __init__(
88
+ self,
89
+ read_only=False,
90
+ write_only=False,
91
+ required=None,
92
+ default=fields.empty,
93
+ initial=fields.empty,
94
+ source=None,
95
+ label=None,
96
+ help_text=None,
97
+ style=None,
98
+ error_messages=None,
99
+ validators=None,
100
+ allow_null=False,
101
+ password_field=False,
102
+ actions: Actions = None,
103
+ uuid: UUID = None,
104
+ display: DisplayMode = None,
105
+ display_table: DisplayMode = None,
106
+ display_form: DisplayMode = None,
107
+ table_classes: str = "",
108
+ **kw,
109
+ ):
110
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
111
+ kwargs.update(kw)
112
+ super().__init__(**kwargs)
113
+
114
+
115
+ class RegexField(PasswordFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.RegexField):
116
+ def __init__(
117
+ self,
118
+ regex,
119
+ read_only=False,
120
+ write_only=False,
121
+ required=None,
122
+ default=fields.empty,
123
+ initial=fields.empty,
124
+ source=None,
125
+ label=None,
126
+ help_text=None,
127
+ style=None,
128
+ error_messages=None,
129
+ validators=None,
130
+ allow_null=False,
131
+ password_field=False,
132
+ actions: Actions = None,
133
+ uuid: UUID = None,
134
+ display: DisplayMode = None,
135
+ display_table: DisplayMode = None,
136
+ display_form: DisplayMode = None,
137
+ table_classes: str = "",
138
+ **kw,
139
+ ):
140
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
141
+ kwargs.update(kw)
142
+ super().__init__(**kwargs)
143
+
144
+
145
+ class SlugField(PasswordFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.SlugField):
146
+ def __init__(
147
+ self,
148
+ allow_unicode=False,
149
+ read_only=False,
150
+ write_only=False,
151
+ required=None,
152
+ default=fields.empty,
153
+ initial=fields.empty,
154
+ source=None,
155
+ label=None,
156
+ help_text=None,
157
+ style=None,
158
+ error_messages=None,
159
+ validators=None,
160
+ allow_null=False,
161
+ password_field=False,
162
+ actions: Actions = None,
163
+ uuid: UUID = None,
164
+ display: DisplayMode = None,
165
+ display_table: DisplayMode = None,
166
+ display_form: DisplayMode = None,
167
+ table_classes: str = "",
168
+ **kw,
169
+ ):
170
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
171
+ kwargs.update(kw)
172
+ super().__init__(**kwargs)
173
+
174
+
175
+ class URLField(PasswordFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.URLField):
176
+ def __init__(
177
+ self,
178
+ read_only=False,
179
+ write_only=False,
180
+ required=None,
181
+ default=fields.empty,
182
+ initial=fields.empty,
183
+ source=None,
184
+ label=None,
185
+ help_text=None,
186
+ style=None,
187
+ error_messages=None,
188
+ validators=None,
189
+ allow_null=False,
190
+ password_field=False,
191
+ actions: Actions = None,
192
+ uuid: UUID = None,
193
+ display: DisplayMode = None,
194
+ display_table: DisplayMode = None,
195
+ display_form: DisplayMode = None,
196
+ table_classes: str = "",
197
+ **kw,
198
+ ):
199
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
200
+ kwargs.update(kw)
201
+ super().__init__(**kwargs)
202
+
203
+
204
+ class UUIDField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.UUIDField):
205
+ def __init__(
206
+ self,
207
+ read_only=False,
208
+ write_only=False,
209
+ required=None,
210
+ default=fields.empty,
211
+ initial=fields.empty,
212
+ source=None,
213
+ label=None,
214
+ help_text=None,
215
+ style=None,
216
+ error_messages=None,
217
+ validators=None,
218
+ allow_null=False,
219
+ actions: Actions = None,
220
+ uuid: UUID = None,
221
+ display: DisplayMode = None,
222
+ display_table: DisplayMode = None,
223
+ display_form: DisplayMode = None,
224
+ table_classes: str = "",
225
+ **kw,
226
+ ):
227
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
228
+ kwargs.update(kw)
229
+ super().__init__(**kwargs)
230
+
231
+
232
+ class IPAddressField(PasswordFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.IPAddressField):
233
+ def __init__(
234
+ self,
235
+ protocol="both",
236
+ read_only=False,
237
+ write_only=False,
238
+ required=None,
239
+ default=fields.empty,
240
+ initial=fields.empty,
241
+ source=None,
242
+ label=None,
243
+ help_text=None,
244
+ style=None,
245
+ error_messages=None,
246
+ validators=None,
247
+ allow_null=False,
248
+ password_field=False,
249
+ actions: Actions = None,
250
+ uuid: UUID = None,
251
+ display: DisplayMode = None,
252
+ display_table: DisplayMode = None,
253
+ display_form: DisplayMode = None,
254
+ table_classes: str = "",
255
+ **kw,
256
+ ):
257
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
258
+ kwargs.update(kw)
259
+ super().__init__(**kwargs)
260
+
261
+
262
+ class IntegerField(NullValueMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.IntegerField):
263
+ def __init__(
264
+ self,
265
+ read_only=False,
266
+ write_only=False,
267
+ required=None,
268
+ default=fields.empty,
269
+ initial=fields.empty,
270
+ source=None,
271
+ label=None,
272
+ help_text=None,
273
+ style=None,
274
+ error_messages=None,
275
+ validators=None,
276
+ allow_null=False,
277
+ actions: Actions = None,
278
+ uuid: UUID = None,
279
+ display: DisplayMode = None,
280
+ display_table: DisplayMode = None,
281
+ display_form: DisplayMode = None,
282
+ table_classes: str = "",
283
+ **kw,
284
+ ):
285
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
286
+ kwargs.update(kw)
287
+ super().__init__(**kwargs)
288
+
289
+
290
+ class FloatField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.FloatField):
291
+ def __init__(
292
+ self,
293
+ read_only=False,
294
+ write_only=False,
295
+ required=None,
296
+ default=fields.empty,
297
+ initial=fields.empty,
298
+ source=None,
299
+ label=None,
300
+ help_text=None,
301
+ style=None,
302
+ error_messages=None,
303
+ validators=None,
304
+ allow_null=False,
305
+ actions: Actions = None,
306
+ uuid: UUID = None,
307
+ display: DisplayMode = None,
308
+ display_table: DisplayMode = None,
309
+ display_form: DisplayMode = None,
310
+ table_classes: str = "",
311
+ **kw,
312
+ ):
313
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
314
+ kwargs.update(kw)
315
+ super().__init__(**kwargs)
316
+
317
+
318
+ class DecimalField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.DecimalField):
319
+ def __init__(
320
+ self,
321
+ max_digits,
322
+ decimal_places,
323
+ coerce_to_string=None,
324
+ max_value=None,
325
+ min_value=None,
326
+ localize=False,
327
+ rounding=None,
328
+ read_only=False,
329
+ write_only=False,
330
+ required=None,
331
+ default=fields.empty,
332
+ initial=fields.empty,
333
+ source=None,
334
+ label=None,
335
+ help_text=None,
336
+ style=None,
337
+ error_messages=None,
338
+ validators=None,
339
+ allow_null=False,
340
+ actions: Actions = None,
341
+ uuid: UUID = None,
342
+ display: DisplayMode = None,
343
+ display_table: DisplayMode = None,
344
+ display_form: DisplayMode = None,
345
+ table_classes: str = "",
346
+ **kw,
347
+ ):
348
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
349
+ kwargs.update(kw)
350
+ super().__init__(**kwargs)
351
+
352
+
353
+ # noinspection PyShadowingBuiltins
354
+ class DateTimeField(
355
+ DateTimeFieldMixin, NullValueMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.DateTimeField
356
+ ):
357
+ def __init__(
358
+ self,
359
+ format=fields.empty,
360
+ input_formats=None,
361
+ default_timezone=None,
362
+ read_only=False,
363
+ write_only=False,
364
+ required=None,
365
+ default=fields.empty,
366
+ initial=fields.empty,
367
+ source=None,
368
+ label=None,
369
+ help_text=None,
370
+ style=None,
371
+ error_messages=None,
372
+ validators=None,
373
+ allow_null=False,
374
+ actions: Actions = None,
375
+ uuid: UUID = None,
376
+ display: DisplayMode = None,
377
+ display_table: DisplayMode = None,
378
+ display_form: DisplayMode = None,
379
+ table_classes: str = "",
380
+ **kw,
381
+ ):
382
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
383
+ kwargs.update(kw)
384
+ super().__init__(**kwargs)
385
+
386
+
387
+ # noinspection PyShadowingBuiltins
388
+ class DateField(DateFieldMixin, NullValueMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.DateField):
389
+ def __init__(
390
+ self,
391
+ format=fields.empty,
392
+ input_formats=None,
393
+ read_only=False,
394
+ write_only=False,
395
+ required=None,
396
+ default=fields.empty,
397
+ initial=fields.empty,
398
+ source=None,
399
+ label=None,
400
+ help_text=None,
401
+ style=None,
402
+ error_messages=None,
403
+ validators=None,
404
+ allow_null=False,
405
+ actions: Actions = None,
406
+ uuid: UUID = None,
407
+ display: DisplayMode = None,
408
+ display_table: DisplayMode = None,
409
+ display_form: DisplayMode = None,
410
+ table_classes: str = "",
411
+ **kw,
412
+ ):
413
+ self.time_step = kw.pop("time_step", None)
414
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
415
+ kwargs.update(kw)
416
+ super().__init__(**kwargs)
417
+
418
+
419
+ # noinspection PyShadowingBuiltins
420
+ class TimeField(TimeFieldMixin, NullValueMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.TimeField):
421
+ def __init__(
422
+ self,
423
+ format=fields.empty,
424
+ input_formats=None,
425
+ read_only=False,
426
+ write_only=False,
427
+ required=None,
428
+ default=fields.empty,
429
+ initial=fields.empty,
430
+ source=None,
431
+ label=None,
432
+ help_text=None,
433
+ style=None,
434
+ error_messages=None,
435
+ validators=None,
436
+ allow_null=False,
437
+ actions: Actions = None,
438
+ uuid: UUID = None,
439
+ display: DisplayMode = None,
440
+ display_table: DisplayMode = None,
441
+ display_form: DisplayMode = None,
442
+ table_classes: str = "",
443
+ **kw,
444
+ ):
445
+ self.time_step = kw.pop("time_step", None)
446
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
447
+ kwargs.update(kw)
448
+ super().__init__(**kwargs)
449
+
450
+
451
+ class DurationField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.DurationField):
452
+ def __init__(
453
+ self,
454
+ read_only=False,
455
+ write_only=False,
456
+ required=None,
457
+ default=fields.empty,
458
+ initial=fields.empty,
459
+ source=None,
460
+ label=None,
461
+ help_text=None,
462
+ style=None,
463
+ error_messages=None,
464
+ validators=None,
465
+ allow_null=False,
466
+ actions: Actions = None,
467
+ uuid: UUID = None,
468
+ display: DisplayMode = None,
469
+ display_table: DisplayMode = None,
470
+ display_form: DisplayMode = None,
471
+ table_classes: str = "",
472
+ **kw,
473
+ ):
474
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
475
+ kwargs.update(kw)
476
+ super().__init__(**kwargs)
477
+
478
+
479
+ class ChoiceField(
480
+ AllowTagsMixin,
481
+ NullChoiceMixin,
482
+ EnableCopyMixin,
483
+ SingleChoiceMixin,
484
+ RenderMixin,
485
+ ActionMixin,
486
+ FieldHelpTextMixin,
487
+ fields.ChoiceField,
488
+ ):
489
+ def __init__(
490
+ self,
491
+ choices,
492
+ read_only=False,
493
+ write_only=False,
494
+ required=None,
495
+ default=fields.empty,
496
+ initial=fields.empty,
497
+ source=None,
498
+ label=None,
499
+ help_text=None,
500
+ style=None,
501
+ error_messages=None,
502
+ validators=None,
503
+ allow_null=False,
504
+ allow_tags=False,
505
+ actions: Actions = None,
506
+ uuid: UUID = None,
507
+ display: DisplayMode = None,
508
+ display_table: DisplayMode = None,
509
+ display_form: DisplayMode = None,
510
+ table_classes: str = "",
511
+ **kw,
512
+ ):
513
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
514
+ kwargs.update(kw)
515
+ super().__init__(**kwargs)
516
+
517
+
518
+ class MultipleChoiceField(
519
+ AllowTagsMixin,
520
+ NullChoiceMixin,
521
+ EnableCopyMixin,
522
+ SingleChoiceMixin,
523
+ RenderMixin,
524
+ ActionMixin,
525
+ FieldHelpTextMixin,
526
+ fields.MultipleChoiceField,
527
+ ):
528
+ def __init__(
529
+ self,
530
+ choices,
531
+ read_only=False,
532
+ write_only=False,
533
+ required=None,
534
+ default=fields.empty,
535
+ initial=fields.empty,
536
+ source=None,
537
+ label=None,
538
+ help_text=None,
539
+ style=None,
540
+ error_messages=None,
541
+ validators=None,
542
+ allow_null=False,
543
+ allow_tags=False,
544
+ actions: Actions = None,
545
+ uuid: UUID = None,
546
+ display: DisplayMode = None,
547
+ display_table: DisplayMode = None,
548
+ display_form: DisplayMode = None,
549
+ table_classes: str = "",
550
+ **kw,
551
+ ):
552
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
553
+ kwargs.update(kw)
554
+ super().__init__(**kwargs)
555
+
556
+
557
+ class FilePathField(
558
+ AllowTagsMixin,
559
+ NullChoiceMixin,
560
+ EnableCopyMixin,
561
+ SingleChoiceMixin,
562
+ RenderMixin,
563
+ ActionMixin,
564
+ FieldHelpTextMixin,
565
+ fields.FilePathField,
566
+ ):
567
+ def __init__(
568
+ self,
569
+ path,
570
+ match=None,
571
+ recursive=False,
572
+ allow_files=True,
573
+ allow_folders=False,
574
+ required=None,
575
+ read_only=False,
576
+ write_only=False,
577
+ default=fields.empty,
578
+ initial=fields.empty,
579
+ source=None,
580
+ label=None,
581
+ help_text=None,
582
+ style=None,
583
+ error_messages=None,
584
+ validators=None,
585
+ allow_null=False,
586
+ allow_tags=False,
587
+ actions: Actions = None,
588
+ uuid: UUID = None,
589
+ display: DisplayMode = None,
590
+ display_table: DisplayMode = None,
591
+ display_form: DisplayMode = None,
592
+ table_classes: str = "",
593
+ **kw,
594
+ ):
595
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
596
+ kwargs.update(kw)
597
+ super().__init__(**kwargs)
598
+
599
+
600
+ class FileField(FileFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.FileField):
601
+ def __init__(
602
+ self,
603
+ read_only=False,
604
+ write_only=False,
605
+ required=None,
606
+ default=fields.empty,
607
+ initial=fields.empty,
608
+ source=None,
609
+ label=None,
610
+ help_text=None,
611
+ style=None,
612
+ error_messages=None,
613
+ validators=None,
614
+ allow_null=False,
615
+ actions: Actions = None,
616
+ uuid: UUID = None,
617
+ display: DisplayMode = None,
618
+ display_table: DisplayMode = None,
619
+ display_form: DisplayMode = None,
620
+ table_classes: str = "",
621
+ **kw,
622
+ ):
623
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
624
+ kwargs.update(kw)
625
+ super().__init__(**kwargs)
626
+
627
+
628
+ class ImageField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.ImageField):
629
+ def __init__(
630
+ self,
631
+ read_only=False,
632
+ write_only=False,
633
+ required=None,
634
+ default=fields.empty,
635
+ initial=fields.empty,
636
+ source=None,
637
+ label=None,
638
+ help_text=None,
639
+ style=None,
640
+ error_messages=None,
641
+ validators=None,
642
+ allow_null=False,
643
+ actions: Actions = None,
644
+ uuid: UUID = None,
645
+ display: DisplayMode = None,
646
+ display_table: DisplayMode = None,
647
+ display_form: DisplayMode = None,
648
+ table_classes: str = "",
649
+ **kw,
650
+ ):
651
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
652
+ kwargs.update(kw)
653
+ super().__init__(**kwargs)
654
+
655
+
656
+ class ListField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.ListField):
657
+ def __init__(
658
+ self,
659
+ read_only=False,
660
+ write_only=False,
661
+ required=None,
662
+ default=fields.empty,
663
+ initial=fields.empty,
664
+ source=None,
665
+ label=None,
666
+ help_text=None,
667
+ style=None,
668
+ error_messages=None,
669
+ validators=None,
670
+ allow_null=False,
671
+ actions: Actions = None,
672
+ uuid: UUID = None,
673
+ display: DisplayMode = None,
674
+ display_table: DisplayMode = None,
675
+ display_form: DisplayMode = None,
676
+ table_classes: str = "",
677
+ **kw,
678
+ ):
679
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
680
+ kwargs.update(kw)
681
+ super().__init__(**kwargs)
682
+
683
+
684
+ class DictField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.DictField):
685
+ def __init__(
686
+ self,
687
+ read_only=False,
688
+ write_only=False,
689
+ required=None,
690
+ default=fields.empty,
691
+ initial=fields.empty,
692
+ source=None,
693
+ label=None,
694
+ help_text=None,
695
+ style=None,
696
+ error_messages=None,
697
+ validators=None,
698
+ allow_null=False,
699
+ actions: Actions = None,
700
+ uuid: UUID = None,
701
+ display: DisplayMode = None,
702
+ display_table: DisplayMode = None,
703
+ display_form: DisplayMode = None,
704
+ table_classes: str = "",
705
+ **kw,
706
+ ):
707
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
708
+ kwargs.update(kw)
709
+ super().__init__(**kwargs)
710
+
711
+
712
+ if hasattr(fields, "HStoreField"):
713
+
714
+ class HStoreField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.HStoreField):
715
+ def __init__(
716
+ self,
717
+ read_only=False,
718
+ write_only=False,
719
+ required=None,
720
+ default=fields.empty,
721
+ initial=fields.empty,
722
+ source=None,
723
+ label=None,
724
+ help_text=None,
725
+ style=None,
726
+ error_messages=None,
727
+ validators=None,
728
+ allow_null=False,
729
+ actions: Actions = None,
730
+ uuid: UUID = None,
731
+ display: DisplayMode = None,
732
+ display_table: DisplayMode = None,
733
+ display_form: DisplayMode = None,
734
+ table_classes: str = "",
735
+ **kw,
736
+ ):
737
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
738
+ kwargs.update(kw)
739
+ super().__init__(**kwargs)
740
+
741
+
742
+ class JSONField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.JSONField):
743
+ def __init__(
744
+ self,
745
+ read_only=False,
746
+ write_only=False,
747
+ required=None,
748
+ default=fields.empty,
749
+ initial=fields.empty,
750
+ source=None,
751
+ label=None,
752
+ help_text=None,
753
+ style=None,
754
+ error_messages=None,
755
+ validators=None,
756
+ allow_null=False,
757
+ actions: Actions = None,
758
+ uuid: UUID = None,
759
+ display: DisplayMode = None,
760
+ display_table: DisplayMode = None,
761
+ display_form: DisplayMode = None,
762
+ table_classes: str = "",
763
+ **kw,
764
+ ):
765
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
766
+ kwargs.update(kw)
767
+ super().__init__(**kwargs)
768
+
769
+
770
+ # noinspection PyAbstractClass
771
+ class ReadOnlyField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.ReadOnlyField):
772
+ def __init__(
773
+ self,
774
+ read_only=False,
775
+ write_only=False,
776
+ required=None,
777
+ default=fields.empty,
778
+ initial=fields.empty,
779
+ source=None,
780
+ label=None,
781
+ help_text=None,
782
+ style=None,
783
+ error_messages=None,
784
+ validators=None,
785
+ allow_null=False,
786
+ actions: Actions = None,
787
+ uuid: UUID = None,
788
+ display: DisplayMode = None,
789
+ display_table: DisplayMode = None,
790
+ display_form: DisplayMode = None,
791
+ table_classes: str = "",
792
+ **kw,
793
+ ):
794
+ warnings.warn("deprecated - wrong approach! Use read_only attribute instead.", DeprecationWarning, stacklevel=2)
795
+ read_only = True # NOQA
796
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
797
+ kwargs.update(kw)
798
+ super().__init__(**kwargs)
799
+
800
+
801
+ # noinspection PyAbstractClass
802
+ class HiddenField(HiddenFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.HiddenField):
803
+ def __init__(
804
+ self,
805
+ read_only=False,
806
+ write_only=False,
807
+ required=None,
808
+ default=fields.empty,
809
+ initial=fields.empty,
810
+ source=None,
811
+ label=None,
812
+ help_text=None,
813
+ style=None,
814
+ error_messages=None,
815
+ validators=None,
816
+ allow_null=False,
817
+ actions: Actions = None,
818
+ uuid: UUID = None,
819
+ display: DisplayMode = None,
820
+ display_table: DisplayMode = None,
821
+ display_form: DisplayMode = None,
822
+ table_classes: str = "",
823
+ **kw,
824
+ ):
825
+ warnings.warn(
826
+ "deprecated - wrong approach! Use display(|_table|_form) attributes instead.",
827
+ DeprecationWarning,
828
+ stacklevel=2,
829
+ )
830
+ display = DisplayMode.HIDDEN # NOQA
831
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
832
+ kwargs.update(kw)
833
+ super().__init__(**kwargs)
834
+
835
+
836
+ # noinspection PyAbstractClass
837
+ class SerializerMethodField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.SerializerMethodField):
838
+ def __init__(
839
+ self,
840
+ method_name=None,
841
+ read_only=False,
842
+ write_only=False,
843
+ required=None,
844
+ default=fields.empty,
845
+ initial=fields.empty,
846
+ source=None,
847
+ label=None,
848
+ help_text=None,
849
+ style=None,
850
+ error_messages=None,
851
+ validators=None,
852
+ allow_null=False,
853
+ actions: Actions = None,
854
+ uuid: UUID = None,
855
+ display: DisplayMode = None,
856
+ display_table: DisplayMode = None,
857
+ display_form: DisplayMode = None,
858
+ table_classes: str = "",
859
+ **kw,
860
+ ):
861
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
862
+ kwargs.update(kw)
863
+ super().__init__(**kwargs)
864
+
865
+
866
+ class ModelField(RenderMixin, ActionMixin, FieldHelpTextMixin, fields.ModelField):
867
+ def __init__(
868
+ self,
869
+ model_field,
870
+ read_only=False,
871
+ write_only=False,
872
+ required=None,
873
+ default=fields.empty,
874
+ initial=fields.empty,
875
+ source=None,
876
+ label=None,
877
+ help_text=None,
878
+ style=None,
879
+ error_messages=None,
880
+ validators=None,
881
+ allow_null=False,
882
+ actions: Actions = None,
883
+ uuid: UUID = None,
884
+ display: DisplayMode = None,
885
+ display_table: DisplayMode = None,
886
+ display_form: DisplayMode = None,
887
+ table_classes: str = "",
888
+ **kw,
889
+ ):
890
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
891
+ kwargs.update(kw)
892
+ super().__init__(**kwargs)
893
+
894
+
895
+ class StringRelatedField(
896
+ RelatedFieldAJAXMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, relations.StringRelatedField
897
+ ):
898
+ def __init__(
899
+ self,
900
+ read_only=False,
901
+ write_only=False,
902
+ required=None,
903
+ default=fields.empty,
904
+ initial=fields.empty,
905
+ source=None,
906
+ label=None,
907
+ help_text=None,
908
+ style=None,
909
+ error_messages=None,
910
+ validators=None,
911
+ allow_null=False,
912
+ url_reverse: Optional[str] = None,
913
+ placeholder: Optional[str] = None,
914
+ additional_parameters: Optional[dict] = None,
915
+ query_field: str = "query",
916
+ actions: Actions = None,
917
+ uuid: UUID = None,
918
+ display: DisplayMode = None,
919
+ display_table: DisplayMode = None,
920
+ display_form: DisplayMode = None,
921
+ table_classes: str = "",
922
+ **kw,
923
+ ):
924
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
925
+ kwargs.update(kw)
926
+ super().__init__(**kwargs)
927
+
928
+
929
+ class PrimaryKeyRelatedField(
930
+ RelatedFieldAJAXMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, relations.PrimaryKeyRelatedField
931
+ ):
932
+ def __init__(
933
+ self,
934
+ read_only=False,
935
+ write_only=False,
936
+ required=None,
937
+ default=fields.empty,
938
+ initial=fields.empty,
939
+ source=None,
940
+ label=None,
941
+ help_text=None,
942
+ style=None,
943
+ error_messages=None,
944
+ validators=None,
945
+ allow_null=False,
946
+ url_reverse: Optional[str] = None,
947
+ placeholder: Optional[str] = None,
948
+ additional_parameters: Optional[dict] = None,
949
+ query_field: str = "query",
950
+ actions: Actions = None,
951
+ uuid: UUID = None,
952
+ display: DisplayMode = None,
953
+ display_table: DisplayMode = None,
954
+ display_form: DisplayMode = None,
955
+ table_classes: str = "",
956
+ **kw,
957
+ ):
958
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
959
+ kwargs.update(kw)
960
+ super().__init__(**kwargs)
961
+
962
+
963
+ class HyperlinkedRelatedField(
964
+ RelatedFieldAJAXMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, relations.HyperlinkedRelatedField
965
+ ):
966
+ def __init__(
967
+ self,
968
+ view_name=None,
969
+ read_only=False,
970
+ write_only=False,
971
+ required=None,
972
+ default=fields.empty,
973
+ initial=fields.empty,
974
+ source=None,
975
+ label=None,
976
+ help_text=None,
977
+ style=None,
978
+ error_messages=None,
979
+ validators=None,
980
+ allow_null=False,
981
+ url_reverse: Optional[str] = None,
982
+ placeholder: Optional[str] = None,
983
+ additional_parameters: Optional[dict] = None,
984
+ query_field: str = "query",
985
+ actions: Actions = None,
986
+ uuid: UUID = None,
987
+ display: DisplayMode = None,
988
+ display_table: DisplayMode = None,
989
+ display_form: DisplayMode = None,
990
+ table_classes: str = "",
991
+ **kw,
992
+ ):
993
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
994
+ kwargs.update(kw)
995
+ super().__init__(**kwargs)
996
+
997
+
998
+ class HyperlinkedIdentityField(
999
+ RelatedFieldAJAXMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, relations.HyperlinkedIdentityField
1000
+ ):
1001
+ def __init__(
1002
+ self,
1003
+ view_name=None,
1004
+ read_only=False,
1005
+ write_only=False,
1006
+ required=None,
1007
+ default=fields.empty,
1008
+ initial=fields.empty,
1009
+ source=None,
1010
+ label=None,
1011
+ help_text=None,
1012
+ style=None,
1013
+ error_messages=None,
1014
+ validators=None,
1015
+ allow_null=False,
1016
+ url_reverse: Optional[str] = None,
1017
+ placeholder: Optional[str] = None,
1018
+ additional_parameters: Optional[dict] = None,
1019
+ query_field: str = "query",
1020
+ actions: Actions = None,
1021
+ uuid: UUID = None,
1022
+ display: DisplayMode = None,
1023
+ display_table: DisplayMode = None,
1024
+ display_form: DisplayMode = None,
1025
+ table_classes: str = "",
1026
+ **kw,
1027
+ ):
1028
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
1029
+ kwargs.update(kw)
1030
+ super().__init__(**kwargs)
1031
+
1032
+
1033
+ class SlugRelatedField(RelatedFieldAJAXMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, relations.SlugRelatedField):
1034
+ def __init__(
1035
+ self,
1036
+ slug_field=None,
1037
+ read_only=False,
1038
+ write_only=False,
1039
+ required=None,
1040
+ default=fields.empty,
1041
+ initial=fields.empty,
1042
+ source=None,
1043
+ label=None,
1044
+ help_text=None,
1045
+ style=None,
1046
+ error_messages=None,
1047
+ validators=None,
1048
+ allow_null=False,
1049
+ url_reverse: Optional[str] = None,
1050
+ placeholder: Optional[str] = None,
1051
+ additional_parameters: Optional[dict] = None,
1052
+ query_field: str = "query",
1053
+ actions: Actions = None,
1054
+ uuid: UUID = None,
1055
+ display: DisplayMode = None,
1056
+ display_table: DisplayMode = None,
1057
+ display_form: DisplayMode = None,
1058
+ table_classes: str = "",
1059
+ **kw,
1060
+ ):
1061
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
1062
+ kwargs.update(kw)
1063
+ super().__init__(**kwargs)
1064
+
1065
+
1066
+ class ManyRelatedField(RelatedFieldAJAXMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, relations.ManyRelatedField):
1067
+ def __init__(
1068
+ self,
1069
+ child_relation=None,
1070
+ read_only=False,
1071
+ write_only=False,
1072
+ required=None,
1073
+ default=fields.empty,
1074
+ initial=fields.empty,
1075
+ source=None,
1076
+ label=None,
1077
+ help_text=None,
1078
+ style=None,
1079
+ error_messages=None,
1080
+ validators=None,
1081
+ allow_null=True,
1082
+ actions: Actions = None,
1083
+ uuid: UUID = None,
1084
+ display: DisplayMode = None,
1085
+ display_table: DisplayMode = None,
1086
+ display_form: DisplayMode = None,
1087
+ table_classes: str = "",
1088
+ **kw,
1089
+ ):
1090
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
1091
+ kwargs.update(kw)
1092
+ super().__init__(**kwargs)
1093
+
1094
+
1095
+ class RTFField(RTFFieldMixin, RenderMixin, ActionMixin, FieldHelpTextMixin, fields.CharField):
1096
+ def __init__(
1097
+ self,
1098
+ actions: Actions = None,
1099
+ uuid: UUID = None,
1100
+ display: DisplayMode = None,
1101
+ display_table: DisplayMode = None,
1102
+ display_form: DisplayMode = None,
1103
+ table_classes: str = "",
1104
+ **kw,
1105
+ ):
1106
+ kwargs = {k: v for k, v in locals().items() if not k.startswith(("__", "self", "kw"))}
1107
+ kwargs.update(kw)
1108
+ super().__init__(**kwargs)