django-viewflow 2.2.10__tar.gz → 2.2.12__tar.gz
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.
- {django_viewflow-2.2.10/django_viewflow.egg-info → django_viewflow-2.2.12}/PKG-INFO +8 -122
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/README.md +8 -122
- {django_viewflow-2.2.10 → django_viewflow-2.2.12/django_viewflow.egg-info}/PKG-INFO +8 -122
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/setup.py +1 -1
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/process_data.html +2 -2
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/utils.py +5 -5
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/base.py +1 -1
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/start.py +15 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/LICENSE +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/LICENSE_EXCEPTION +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/MANIFEST.in +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/django_viewflow.egg-info/SOURCES.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/django_viewflow.egg-info/dependency_links.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/django_viewflow.egg-info/not-zip-safe +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/django_viewflow.egg-info/requires.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/django_viewflow.egg-info/top_level.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/setup.cfg +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/tests/test_middleware.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/tests/test_templates.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/tests/test_templatetags__viewflow.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/tests/test_this_object.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/tests/test_urls__base.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/tests/test_utils__package.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/apps.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/conf.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/admin/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/admin/apps.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/auth.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/plotly/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/plotly/material.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/plotly/views.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/contrib/plotly/viewset.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fields.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/forms/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/forms/renderers.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/admin.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/base.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/chart.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/typing.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/views.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/fsm/viewset.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/jsonstore.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/de/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/de/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/es/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/es/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/fr/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/fr/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/it/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/it/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/ja/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/ja/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/kk/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/kk/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/ko/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/ko/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/pt/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/pt/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/ru/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/ru/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/sr/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/sr/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/locale/zh_Hans/LC_MESSAGES/django.po +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/management/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/management/commands/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/management/commands/flowexport.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/middleware.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/css/perfect-scrollbar.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/css/trix.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/css/viewflow.min.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/css/vis-network.min.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-outlined.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-outlined.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-round.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-round.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-sharp.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-sharp.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-two-tone.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons-two-tone.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/material-icons/material-icons.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Black.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Black.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-BlackItalic.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-BlackItalic.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Bold.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Bold.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-BoldItalic.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-BoldItalic.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Light.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Light.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-LightItalic.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-LightItalic.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Medium.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Medium.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-MediumItalic.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-MediumItalic.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Regular.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Regular.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-RegularItalic.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-RegularItalic.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Thin.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-Thin.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-ThinItalic.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/Roboto-ThinItalic.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/roboto/roboto-fontface.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/SimpleIcons.eot +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/SimpleIcons.otf +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/SimpleIcons.ttf +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/SimpleIcons.woff +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/SimpleIcons.woff2 +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/simple-icons.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/fonts/simple-icons/simple-icons.min.css +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/img/favicon.png +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/img/user.png +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash-renderer/build/dash_renderer.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-export.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-export.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-export.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-highlight.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-highlight.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-table.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-table.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/async-table.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/bundle.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dash_table/bundle.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-datepicker.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-datepicker.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-dropdown.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-dropdown.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-dropdown.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-graph.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-graph.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-graph.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-highlight.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-highlight.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-markdown.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-markdown.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-markdown.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-plotlyjs.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-plotlyjs.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-slider.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-slider.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-slider.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-upload.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/async-upload.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/dash_core_components-shared.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/dash_core_components-shared.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/dash_core_components-shared.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/dash_core_components.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/dash_core_components.js.LICENSE.txt +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/dash_core_components.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/dcc/plotly.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/deps/polyfill@7.12.1.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/deps/prop-types@15.7.2.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/deps/prop-types@15.8.1.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/deps/react-dom@16.14.0.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/deps/react@16.14.0.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/html/dash_html_components.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/contrib/dash/html/dash_html_components.min.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/perfect-scrollbar.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/perfect-scrollbar.min.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/smartcrop.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/trix.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/turbo.es2017-umd.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/viewflow.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/viewflow.min.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/vis-network.min.js +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/static/viewflow/js/vis-network.min.js.map +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/400.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/403.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/404.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/500.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/admin/fsm_change_form.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/admin/fsm_change_form_object_tools.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/admin/fsm_change_list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/admin/fsm_transition_form.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/formtools/wizard/wizard_form.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/logged_out.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/login.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/password_change_done.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/password_change_form.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/password_reset_complete.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/password_reset_confirm.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/password_reset_done.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/password_reset_form.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/profile.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/registration/provider_list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/base.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/base_lockscreen.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/base_page.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/contrib/import_export/export_action.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/contrib/import_export/import_action.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/contrib/plotly.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/contrib/swagger.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/app_menu.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/list_bulk_actions.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/list_filter.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/list_pagination.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/object_detail_card.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/site_menu.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/snackbar.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/view_action_menu.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/viewflow_css.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/includes/viewflow_js.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/material/circular_progress.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/views/confirm_delete.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/views/delete_action.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/views/detail.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/views/form.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/views/list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/views/transition.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/assign.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/base_page.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/celery_task_detail.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/flow_menu.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/graph.bpmn +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/graph.svg +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/process_cancel.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/process_dashboard.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/process_detail.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/process_list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/process_tasks_list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/start.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_assign.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_base.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_cancel.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_data.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_detail.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_revive.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_unassign.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/task_undo.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/tasks_assign.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/tasks_unassign.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/workflow_menu.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templates/viewflow/workflow/workflow_tasks_list.html +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templatetags/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templatetags/fsm.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templatetags/viewflow.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/templatetags/workflow.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/this_object.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/urls/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/urls/base.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/urls/model.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/urls/sites.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/actions.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/create.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/delete.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/detail.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/filters.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/list.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/search.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/views/update.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/activation.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/admin.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/apps.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/base.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/chart.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/context.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/exceptions.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/fields.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/mixins.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/nodes.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/utils.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/actions.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/chart.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/create.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/dashboard.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/detail.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/filters.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/list.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/mixins.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/views/update.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/flow/viewset.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/lock.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/managers.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0001_initial.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0002_fsmchange.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0003_task_owner_permission_change.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0004_extend_fields_length.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0004_subprocess.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0005_merge.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0005_rename_flowcls.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0006_i18n.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0006_merge.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0007_owner_permission_obj.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0007_task_assigned.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0008_jsonfield_and_artifact.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0008_merge.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0009_merge.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0010_viewflow20.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0011_alter_task_created_and_more.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0012_alter_process_data_alter_task_data.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0013_process_seed_content_type_process_seed_object_id_and_more.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/0014_alter_process_parent_task.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/migrations/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/models.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/__init__.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/end.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/func.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/handle.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/if_gate.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/job.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/join.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/mixins.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/obsolete.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/split.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/switch.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/nodes/view.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/signals.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/status.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/token.py +0 -0
- {django_viewflow-2.2.10 → django_viewflow-2.2.12}/viewflow/workflow/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-viewflow
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.12
|
|
4
4
|
Summary: Reusable library to build business applications fast
|
|
5
5
|
Author: Mikhail Podgurskiy
|
|
6
6
|
Author-email: kmmbvnr@gmail.com
|
|
@@ -229,128 +229,14 @@ modifications of Viewflow. You can find the commercial license terms in
|
|
|
229
229
|
|
|
230
230
|
## Changelog
|
|
231
231
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
-
|
|
235
|
-
|
|
232
|
+
# 2.2.12 2025-07-25
|
|
233
|
+
|
|
234
|
+
- Allow to extend and override process_data template
|
|
235
|
+
|
|
236
|
+
## 2.2.11 2025-05-14
|
|
237
|
+
|
|
238
|
+
- Return .Avaialble(..) for the start node
|
|
236
239
|
|
|
237
|
-
### 2.2.9 2025-01-08
|
|
238
|
-
|
|
239
|
-
- Enhanced validation for flow_refs and task_refs to ensure accuracy and consistency.
|
|
240
|
-
- Resolved an issue with canceling processes containing revived tasks.
|
|
241
|
-
- Corrected the password reset confirmation email template for better functionality.
|
|
242
|
-
- Fixed multipart form type detection for forms with file fields in formsets.
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
### 2.2.8 2024-10-04
|
|
246
|
-
|
|
247
|
-
- Prevent exceptions from being raised by Process/Task models when a flow class
|
|
248
|
-
is deleted but still referenced in the database.
|
|
249
|
-
- Fix serialization issue with jsonstore.DecimalField.
|
|
250
|
-
- Add missing 'index' view for celery.Task node.
|
|
251
|
-
- Enable recovery of flow.Subprocess and flow.NSubprocess nodes from error state.
|
|
252
|
-
- Correct invalid typing for FSM conditions.
|
|
253
|
-
- Allow setting permission=None in the FSM @transition decorator to explicitly bypass permission checks.
|
|
254
|
-
- Add support for MultiValueField and django-money fields form rendering
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
### 2.2.7 2024-08-16
|
|
258
|
-
|
|
259
|
-
- Added compatibility fix for Python 3.8.
|
|
260
|
-
- Extend documentation with data management explanation - https://docs.viewflow.io/workflow/data_flow.html
|
|
261
|
-
- Expanded documentation to cover permission management - https://docs.viewflow.io/workflow/permissions.html
|
|
262
|
-
- Introduced an experimental JSONEditorWidget.
|
|
263
|
-
- Fixed issue with saving the state of revived tasks.
|
|
264
|
-
- Enabled the option to cancel If tasks.
|
|
265
|
-
- Updated default FSM state change in FlowViewsMixin to now use transaction.atomic.
|
|
266
|
-
- Added support for using DependentModelSelect in formsets.
|
|
267
|
-
- Enabled AjaxModelSelect to function as a dependency for DependentModelSelect
|
|
268
|
-
- Corrected typo in the deletion success message.
|
|
269
|
-
- Test under django 5.1
|
|
270
|
-
|
|
271
|
-
### 2.2.6 2024-08-04
|
|
272
|
-
|
|
273
|
-
- Resolved the flow.If condition's this reference during class construction.
|
|
274
|
-
- Improved error handling when a Celery task finishes.
|
|
275
|
-
- Fixed an issue where errors occurring in a task after a successful celery.Job
|
|
276
|
-
task incorrectly prevented the job task from being marked as completed, with
|
|
277
|
-
the errored task correctly put into an error state.
|
|
278
|
-
- Redirect to the next process task now will take into account tasks in the ERROR state
|
|
279
|
-
- Add ability to revive flow.Function and flow.SplitFirst
|
|
280
|
-
- Fixed an error that occurred when a deleted process.artifact was referenced in
|
|
281
|
-
the process field data listing within templates.
|
|
282
|
-
- Allow to cancel Subprocess tasks
|
|
283
|
-
- Allow to cancel Function tasks
|
|
284
|
-
- Allow custom task models inherited from AbstactTask have no .seed and .data fields
|
|
285
|
-
|
|
286
|
-
### 2.2.5 2024-07-17
|
|
287
|
-
|
|
288
|
-
- The 'pattern' widget attribute is now passed to the underlying form input.
|
|
289
|
-
- Fixed issue with flow image reload.
|
|
290
|
-
- Fixed dashboard max height on pages with long sidebars.
|
|
291
|
-
- Added .get_success_url(request) shortcut method to StartViewActivation and
|
|
292
|
-
ViewActivation for convenient use in function-based views.
|
|
293
|
-
- Fixed duplicated task_finished signal on flow.View completion.
|
|
294
|
-
- Enabled callable defaults on jsonstore fields.
|
|
295
|
-
- Improved SVG and BPMN export shapes for SplitFirst and Timer Tasks.
|
|
296
|
-
- Created cookbook demo for common workflow patterns
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
### 2.2.4 2024-07-12
|
|
300
|
-
|
|
301
|
-
- Clone data, seed, and artifacts from canceled tasks to revived tasks.
|
|
302
|
-
- Enhance error handling for celery.Job.
|
|
303
|
-
- Improve the process cancellation template.
|
|
304
|
-
- Redirect to the task detail page after canceling or undoing actions, instead
|
|
305
|
-
of redirecting to the process detail page.
|
|
306
|
-
- Added links to parent subprocess and parent task on the subprocess process and
|
|
307
|
-
task details pages.
|
|
308
|
-
- Updated the Process.parent_task field to use related_name='subprocess',
|
|
309
|
-
allowing access to subprocesses via task.subprocess
|
|
310
|
-
- Enhanced CreateProcessView and UpdateProcessView to set process_seed and
|
|
311
|
-
artifact_generic_foreign_key fields based on form.cleaned_data, as Django
|
|
312
|
-
model forms do not handle this automatically.
|
|
313
|
-
- Added tasks with an ERROR status to the process dashboard for better visibility and tracking.
|
|
314
|
-
- Added tooltip hover titles to nodes without text labels in the SVG workflow graph.
|
|
315
|
-
- Marked StartHandler nodes as BPMN Start Message events on the SVG graph.
|
|
316
|
-
- Fixed rendering of hidden field errors in forms.
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
### 2.2.3 2024-07-09
|
|
320
|
-
|
|
321
|
-
- Fixed issue with Split/Join operations when an immediate split to join
|
|
322
|
-
connection occurs.
|
|
323
|
-
- Improved redirect functionality for "Execute and Continue." Now redirects to
|
|
324
|
-
the process details if the process has finished.
|
|
325
|
-
- Enabled the Undo action for End() nodes.
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
### 2.2.2 2024-07-05
|
|
329
|
-
|
|
330
|
-
- Introduced new parameters for .If().Then(.., task_data=, task_seed) and
|
|
331
|
-
.Else(...)
|
|
332
|
-
- Include {{ form.media }} into default workflow/task.html template
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
### 2.2.1 2024-07-03
|
|
336
|
-
|
|
337
|
-
- Introduced a new parameter for .Next(..., task_seed=) that allows the
|
|
338
|
-
instantiation of new tasks with additional initialized .seed generic foreign key
|
|
339
|
-
- Introduced a new parameter for .Split(..., task_seed_source=) same as task_data_source,
|
|
340
|
-
prodices outgoing tasks with initializaed .seed value
|
|
341
|
-
- Introduced a new parameter for flow.Subprocess(process_data=, process_seed=,
|
|
342
|
-
task_data=, task_seed=) allows to provide data nad seed for newly created
|
|
343
|
-
process and/or start task
|
|
344
|
-
|
|
345
|
-
### 2.2.0 2024-06-28
|
|
346
|
-
|
|
347
|
-
- Introduced a new parameter for .Next(..., task_data=) that allows the
|
|
348
|
-
instantiation of new tasks with additional initialized .data, enabling data to
|
|
349
|
-
be passed from task to task.
|
|
350
|
-
- Added process.seed and task.seed generic foreign keys to the default workflow
|
|
351
|
-
models. Along with process.artifact and task.artifact, these additions enable
|
|
352
|
-
tracking of business process results from start to finish.
|
|
353
|
-
- Renamed Split.Next(data_source=) to task_data_source=.
|
|
354
240
|
|
|
355
241
|
|
|
356
242
|
[build]: https://img.shields.io/github/actions/workflow/status/viewflow/viewflow/django.yml?branch=main
|
|
@@ -187,128 +187,14 @@ modifications of Viewflow. You can find the commercial license terms in
|
|
|
187
187
|
|
|
188
188
|
## Changelog
|
|
189
189
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
- Resolved an issue with canceling processes containing revived tasks.
|
|
199
|
-
- Corrected the password reset confirmation email template for better functionality.
|
|
200
|
-
- Fixed multipart form type detection for forms with file fields in formsets.
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
### 2.2.8 2024-10-04
|
|
204
|
-
|
|
205
|
-
- Prevent exceptions from being raised by Process/Task models when a flow class
|
|
206
|
-
is deleted but still referenced in the database.
|
|
207
|
-
- Fix serialization issue with jsonstore.DecimalField.
|
|
208
|
-
- Add missing 'index' view for celery.Task node.
|
|
209
|
-
- Enable recovery of flow.Subprocess and flow.NSubprocess nodes from error state.
|
|
210
|
-
- Correct invalid typing for FSM conditions.
|
|
211
|
-
- Allow setting permission=None in the FSM @transition decorator to explicitly bypass permission checks.
|
|
212
|
-
- Add support for MultiValueField and django-money fields form rendering
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
### 2.2.7 2024-08-16
|
|
216
|
-
|
|
217
|
-
- Added compatibility fix for Python 3.8.
|
|
218
|
-
- Extend documentation with data management explanation - https://docs.viewflow.io/workflow/data_flow.html
|
|
219
|
-
- Expanded documentation to cover permission management - https://docs.viewflow.io/workflow/permissions.html
|
|
220
|
-
- Introduced an experimental JSONEditorWidget.
|
|
221
|
-
- Fixed issue with saving the state of revived tasks.
|
|
222
|
-
- Enabled the option to cancel If tasks.
|
|
223
|
-
- Updated default FSM state change in FlowViewsMixin to now use transaction.atomic.
|
|
224
|
-
- Added support for using DependentModelSelect in formsets.
|
|
225
|
-
- Enabled AjaxModelSelect to function as a dependency for DependentModelSelect
|
|
226
|
-
- Corrected typo in the deletion success message.
|
|
227
|
-
- Test under django 5.1
|
|
228
|
-
|
|
229
|
-
### 2.2.6 2024-08-04
|
|
230
|
-
|
|
231
|
-
- Resolved the flow.If condition's this reference during class construction.
|
|
232
|
-
- Improved error handling when a Celery task finishes.
|
|
233
|
-
- Fixed an issue where errors occurring in a task after a successful celery.Job
|
|
234
|
-
task incorrectly prevented the job task from being marked as completed, with
|
|
235
|
-
the errored task correctly put into an error state.
|
|
236
|
-
- Redirect to the next process task now will take into account tasks in the ERROR state
|
|
237
|
-
- Add ability to revive flow.Function and flow.SplitFirst
|
|
238
|
-
- Fixed an error that occurred when a deleted process.artifact was referenced in
|
|
239
|
-
the process field data listing within templates.
|
|
240
|
-
- Allow to cancel Subprocess tasks
|
|
241
|
-
- Allow to cancel Function tasks
|
|
242
|
-
- Allow custom task models inherited from AbstactTask have no .seed and .data fields
|
|
243
|
-
|
|
244
|
-
### 2.2.5 2024-07-17
|
|
245
|
-
|
|
246
|
-
- The 'pattern' widget attribute is now passed to the underlying form input.
|
|
247
|
-
- Fixed issue with flow image reload.
|
|
248
|
-
- Fixed dashboard max height on pages with long sidebars.
|
|
249
|
-
- Added .get_success_url(request) shortcut method to StartViewActivation and
|
|
250
|
-
ViewActivation for convenient use in function-based views.
|
|
251
|
-
- Fixed duplicated task_finished signal on flow.View completion.
|
|
252
|
-
- Enabled callable defaults on jsonstore fields.
|
|
253
|
-
- Improved SVG and BPMN export shapes for SplitFirst and Timer Tasks.
|
|
254
|
-
- Created cookbook demo for common workflow patterns
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
### 2.2.4 2024-07-12
|
|
258
|
-
|
|
259
|
-
- Clone data, seed, and artifacts from canceled tasks to revived tasks.
|
|
260
|
-
- Enhance error handling for celery.Job.
|
|
261
|
-
- Improve the process cancellation template.
|
|
262
|
-
- Redirect to the task detail page after canceling or undoing actions, instead
|
|
263
|
-
of redirecting to the process detail page.
|
|
264
|
-
- Added links to parent subprocess and parent task on the subprocess process and
|
|
265
|
-
task details pages.
|
|
266
|
-
- Updated the Process.parent_task field to use related_name='subprocess',
|
|
267
|
-
allowing access to subprocesses via task.subprocess
|
|
268
|
-
- Enhanced CreateProcessView and UpdateProcessView to set process_seed and
|
|
269
|
-
artifact_generic_foreign_key fields based on form.cleaned_data, as Django
|
|
270
|
-
model forms do not handle this automatically.
|
|
271
|
-
- Added tasks with an ERROR status to the process dashboard for better visibility and tracking.
|
|
272
|
-
- Added tooltip hover titles to nodes without text labels in the SVG workflow graph.
|
|
273
|
-
- Marked StartHandler nodes as BPMN Start Message events on the SVG graph.
|
|
274
|
-
- Fixed rendering of hidden field errors in forms.
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
### 2.2.3 2024-07-09
|
|
278
|
-
|
|
279
|
-
- Fixed issue with Split/Join operations when an immediate split to join
|
|
280
|
-
connection occurs.
|
|
281
|
-
- Improved redirect functionality for "Execute and Continue." Now redirects to
|
|
282
|
-
the process details if the process has finished.
|
|
283
|
-
- Enabled the Undo action for End() nodes.
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
### 2.2.2 2024-07-05
|
|
287
|
-
|
|
288
|
-
- Introduced new parameters for .If().Then(.., task_data=, task_seed) and
|
|
289
|
-
.Else(...)
|
|
290
|
-
- Include {{ form.media }} into default workflow/task.html template
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
### 2.2.1 2024-07-03
|
|
294
|
-
|
|
295
|
-
- Introduced a new parameter for .Next(..., task_seed=) that allows the
|
|
296
|
-
instantiation of new tasks with additional initialized .seed generic foreign key
|
|
297
|
-
- Introduced a new parameter for .Split(..., task_seed_source=) same as task_data_source,
|
|
298
|
-
prodices outgoing tasks with initializaed .seed value
|
|
299
|
-
- Introduced a new parameter for flow.Subprocess(process_data=, process_seed=,
|
|
300
|
-
task_data=, task_seed=) allows to provide data nad seed for newly created
|
|
301
|
-
process and/or start task
|
|
302
|
-
|
|
303
|
-
### 2.2.0 2024-06-28
|
|
304
|
-
|
|
305
|
-
- Introduced a new parameter for .Next(..., task_data=) that allows the
|
|
306
|
-
instantiation of new tasks with additional initialized .data, enabling data to
|
|
307
|
-
be passed from task to task.
|
|
308
|
-
- Added process.seed and task.seed generic foreign keys to the default workflow
|
|
309
|
-
models. Along with process.artifact and task.artifact, these additions enable
|
|
310
|
-
tracking of business process results from start to finish.
|
|
311
|
-
- Renamed Split.Next(data_source=) to task_data_source=.
|
|
190
|
+
# 2.2.12 2025-07-25
|
|
191
|
+
|
|
192
|
+
- Allow to extend and override process_data template
|
|
193
|
+
|
|
194
|
+
## 2.2.11 2025-05-14
|
|
195
|
+
|
|
196
|
+
- Return .Avaialble(..) for the start node
|
|
197
|
+
|
|
312
198
|
|
|
313
199
|
|
|
314
200
|
[build]: https://img.shields.io/github/actions/workflow/status/viewflow/viewflow/django.yml?branch=main
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: django-viewflow
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.12
|
|
4
4
|
Summary: Reusable library to build business applications fast
|
|
5
5
|
Author: Mikhail Podgurskiy
|
|
6
6
|
Author-email: kmmbvnr@gmail.com
|
|
@@ -229,128 +229,14 @@ modifications of Viewflow. You can find the commercial license terms in
|
|
|
229
229
|
|
|
230
230
|
## Changelog
|
|
231
231
|
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
-
|
|
235
|
-
|
|
232
|
+
# 2.2.12 2025-07-25
|
|
233
|
+
|
|
234
|
+
- Allow to extend and override process_data template
|
|
235
|
+
|
|
236
|
+
## 2.2.11 2025-05-14
|
|
237
|
+
|
|
238
|
+
- Return .Avaialble(..) for the start node
|
|
236
239
|
|
|
237
|
-
### 2.2.9 2025-01-08
|
|
238
|
-
|
|
239
|
-
- Enhanced validation for flow_refs and task_refs to ensure accuracy and consistency.
|
|
240
|
-
- Resolved an issue with canceling processes containing revived tasks.
|
|
241
|
-
- Corrected the password reset confirmation email template for better functionality.
|
|
242
|
-
- Fixed multipart form type detection for forms with file fields in formsets.
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
### 2.2.8 2024-10-04
|
|
246
|
-
|
|
247
|
-
- Prevent exceptions from being raised by Process/Task models when a flow class
|
|
248
|
-
is deleted but still referenced in the database.
|
|
249
|
-
- Fix serialization issue with jsonstore.DecimalField.
|
|
250
|
-
- Add missing 'index' view for celery.Task node.
|
|
251
|
-
- Enable recovery of flow.Subprocess and flow.NSubprocess nodes from error state.
|
|
252
|
-
- Correct invalid typing for FSM conditions.
|
|
253
|
-
- Allow setting permission=None in the FSM @transition decorator to explicitly bypass permission checks.
|
|
254
|
-
- Add support for MultiValueField and django-money fields form rendering
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
### 2.2.7 2024-08-16
|
|
258
|
-
|
|
259
|
-
- Added compatibility fix for Python 3.8.
|
|
260
|
-
- Extend documentation with data management explanation - https://docs.viewflow.io/workflow/data_flow.html
|
|
261
|
-
- Expanded documentation to cover permission management - https://docs.viewflow.io/workflow/permissions.html
|
|
262
|
-
- Introduced an experimental JSONEditorWidget.
|
|
263
|
-
- Fixed issue with saving the state of revived tasks.
|
|
264
|
-
- Enabled the option to cancel If tasks.
|
|
265
|
-
- Updated default FSM state change in FlowViewsMixin to now use transaction.atomic.
|
|
266
|
-
- Added support for using DependentModelSelect in formsets.
|
|
267
|
-
- Enabled AjaxModelSelect to function as a dependency for DependentModelSelect
|
|
268
|
-
- Corrected typo in the deletion success message.
|
|
269
|
-
- Test under django 5.1
|
|
270
|
-
|
|
271
|
-
### 2.2.6 2024-08-04
|
|
272
|
-
|
|
273
|
-
- Resolved the flow.If condition's this reference during class construction.
|
|
274
|
-
- Improved error handling when a Celery task finishes.
|
|
275
|
-
- Fixed an issue where errors occurring in a task after a successful celery.Job
|
|
276
|
-
task incorrectly prevented the job task from being marked as completed, with
|
|
277
|
-
the errored task correctly put into an error state.
|
|
278
|
-
- Redirect to the next process task now will take into account tasks in the ERROR state
|
|
279
|
-
- Add ability to revive flow.Function and flow.SplitFirst
|
|
280
|
-
- Fixed an error that occurred when a deleted process.artifact was referenced in
|
|
281
|
-
the process field data listing within templates.
|
|
282
|
-
- Allow to cancel Subprocess tasks
|
|
283
|
-
- Allow to cancel Function tasks
|
|
284
|
-
- Allow custom task models inherited from AbstactTask have no .seed and .data fields
|
|
285
|
-
|
|
286
|
-
### 2.2.5 2024-07-17
|
|
287
|
-
|
|
288
|
-
- The 'pattern' widget attribute is now passed to the underlying form input.
|
|
289
|
-
- Fixed issue with flow image reload.
|
|
290
|
-
- Fixed dashboard max height on pages with long sidebars.
|
|
291
|
-
- Added .get_success_url(request) shortcut method to StartViewActivation and
|
|
292
|
-
ViewActivation for convenient use in function-based views.
|
|
293
|
-
- Fixed duplicated task_finished signal on flow.View completion.
|
|
294
|
-
- Enabled callable defaults on jsonstore fields.
|
|
295
|
-
- Improved SVG and BPMN export shapes for SplitFirst and Timer Tasks.
|
|
296
|
-
- Created cookbook demo for common workflow patterns
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
### 2.2.4 2024-07-12
|
|
300
|
-
|
|
301
|
-
- Clone data, seed, and artifacts from canceled tasks to revived tasks.
|
|
302
|
-
- Enhance error handling for celery.Job.
|
|
303
|
-
- Improve the process cancellation template.
|
|
304
|
-
- Redirect to the task detail page after canceling or undoing actions, instead
|
|
305
|
-
of redirecting to the process detail page.
|
|
306
|
-
- Added links to parent subprocess and parent task on the subprocess process and
|
|
307
|
-
task details pages.
|
|
308
|
-
- Updated the Process.parent_task field to use related_name='subprocess',
|
|
309
|
-
allowing access to subprocesses via task.subprocess
|
|
310
|
-
- Enhanced CreateProcessView and UpdateProcessView to set process_seed and
|
|
311
|
-
artifact_generic_foreign_key fields based on form.cleaned_data, as Django
|
|
312
|
-
model forms do not handle this automatically.
|
|
313
|
-
- Added tasks with an ERROR status to the process dashboard for better visibility and tracking.
|
|
314
|
-
- Added tooltip hover titles to nodes without text labels in the SVG workflow graph.
|
|
315
|
-
- Marked StartHandler nodes as BPMN Start Message events on the SVG graph.
|
|
316
|
-
- Fixed rendering of hidden field errors in forms.
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
### 2.2.3 2024-07-09
|
|
320
|
-
|
|
321
|
-
- Fixed issue with Split/Join operations when an immediate split to join
|
|
322
|
-
connection occurs.
|
|
323
|
-
- Improved redirect functionality for "Execute and Continue." Now redirects to
|
|
324
|
-
the process details if the process has finished.
|
|
325
|
-
- Enabled the Undo action for End() nodes.
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
### 2.2.2 2024-07-05
|
|
329
|
-
|
|
330
|
-
- Introduced new parameters for .If().Then(.., task_data=, task_seed) and
|
|
331
|
-
.Else(...)
|
|
332
|
-
- Include {{ form.media }} into default workflow/task.html template
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
### 2.2.1 2024-07-03
|
|
336
|
-
|
|
337
|
-
- Introduced a new parameter for .Next(..., task_seed=) that allows the
|
|
338
|
-
instantiation of new tasks with additional initialized .seed generic foreign key
|
|
339
|
-
- Introduced a new parameter for .Split(..., task_seed_source=) same as task_data_source,
|
|
340
|
-
prodices outgoing tasks with initializaed .seed value
|
|
341
|
-
- Introduced a new parameter for flow.Subprocess(process_data=, process_seed=,
|
|
342
|
-
task_data=, task_seed=) allows to provide data nad seed for newly created
|
|
343
|
-
process and/or start task
|
|
344
|
-
|
|
345
|
-
### 2.2.0 2024-06-28
|
|
346
|
-
|
|
347
|
-
- Introduced a new parameter for .Next(..., task_data=) that allows the
|
|
348
|
-
instantiation of new tasks with additional initialized .data, enabling data to
|
|
349
|
-
be passed from task to task.
|
|
350
|
-
- Added process.seed and task.seed generic foreign keys to the default workflow
|
|
351
|
-
models. Along with process.artifact and task.artifact, these additions enable
|
|
352
|
-
tracking of business process results from start to finish.
|
|
353
|
-
- Renamed Split.Next(data_source=) to task_data_source=.
|
|
354
240
|
|
|
355
241
|
|
|
356
242
|
[build]: https://img.shields.io/github/actions/workflow/status/viewflow/viewflow/django.yml?branch=main
|
|
@@ -4,7 +4,7 @@ README = open("README.md", "r", encoding="utf-8").read()
|
|
|
4
4
|
|
|
5
5
|
setuptools.setup(
|
|
6
6
|
name="django-viewflow",
|
|
7
|
-
version="2.2.
|
|
7
|
+
version="2.2.12",
|
|
8
8
|
author_email="kmmbvnr@gmail.com",
|
|
9
9
|
author="Mikhail Podgurskiy",
|
|
10
10
|
description="Reusable library to build business applications fast",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{% load viewflow i18n %}
|
|
2
|
-
<div class="mdc-card vf-card">
|
|
2
|
+
{% block content %}<div class="mdc-card vf-card">
|
|
3
3
|
<section class="vf-card__header">
|
|
4
4
|
<h1 class="vf-card__title">{{ process }}</h1>
|
|
5
5
|
</section>
|
|
@@ -50,4 +50,4 @@
|
|
|
50
50
|
</tbody>
|
|
51
51
|
</table>
|
|
52
52
|
</section>
|
|
53
|
-
</div>
|
|
53
|
+
</div>{% endblock %}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
# which is part of this source code package.
|
|
7
7
|
|
|
8
8
|
import re
|
|
9
|
-
from typing import Any, Callable, Iterator, List, Optional, Tuple, Type, TypeVar
|
|
9
|
+
from typing import Any, Callable, Iterator, List, Optional, Tuple, Type, TypeVar, Generic
|
|
10
10
|
|
|
11
11
|
from django.apps import apps
|
|
12
12
|
from django.conf import settings
|
|
@@ -159,7 +159,7 @@ class viewprop:
|
|
|
159
159
|
return "<view_property func={}>".format(self.fget)
|
|
160
160
|
|
|
161
161
|
|
|
162
|
-
class LazySingletonDescriptor:
|
|
162
|
+
class LazySingletonDescriptor(Generic[T]):
|
|
163
163
|
"""
|
|
164
164
|
Descriptor class that creates a lazy singleton instance.
|
|
165
165
|
|
|
@@ -169,12 +169,12 @@ class LazySingletonDescriptor:
|
|
|
169
169
|
"""
|
|
170
170
|
|
|
171
171
|
def __init__(self) -> None: # noqa D102
|
|
172
|
-
self.instance:
|
|
172
|
+
self.instance: T | None = None
|
|
173
173
|
|
|
174
174
|
def __get__(
|
|
175
175
|
self,
|
|
176
|
-
instance:
|
|
177
|
-
owner:
|
|
176
|
+
instance: Any | None = None,
|
|
177
|
+
owner: type[T] | None = None,
|
|
178
178
|
) -> T:
|
|
179
179
|
if self.instance is None:
|
|
180
180
|
if owner is None:
|
|
@@ -34,7 +34,7 @@ class FormLayoutMixin(object):
|
|
|
34
34
|
|
|
35
35
|
@viewprop
|
|
36
36
|
def layout(self):
|
|
37
|
-
if self.form_class is None and hasattr(self.form_class, "layout"):
|
|
37
|
+
if self.form_class is not None and hasattr(self.form_class, "layout"):
|
|
38
38
|
return self.form_class.layout
|
|
39
39
|
|
|
40
40
|
@viewprop
|
|
@@ -121,6 +121,21 @@ class Start(
|
|
|
121
121
|
self._start_view = view
|
|
122
122
|
self._undo_func = undo_func
|
|
123
123
|
|
|
124
|
+
def Available(self, owner=None, **owner_kwargs):
|
|
125
|
+
"""
|
|
126
|
+
Make process start action available for the User.
|
|
127
|
+
|
|
128
|
+
Accepts user lookup kwargs or callable predicate :: User -> bool::
|
|
129
|
+
|
|
130
|
+
.Available(username='employee')
|
|
131
|
+
.Available(lambda user: user.is_super_user)
|
|
132
|
+
"""
|
|
133
|
+
if owner:
|
|
134
|
+
self._owner = owner
|
|
135
|
+
else:
|
|
136
|
+
self._owner = owner_kwargs
|
|
137
|
+
return self
|
|
138
|
+
|
|
124
139
|
def can_execute(self, user, task=None):
|
|
125
140
|
"""
|
|
126
141
|
Check whether the user is authorized to start a flow.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{django_viewflow-2.2.10 → django_viewflow-2.2.12}/django_viewflow.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|