From dcaf971ef8c3c7129d19fbd0f6884f6474a1c482 Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Thu, 12 Dec 2024 13:51:36 +0100 Subject: [PATCH 01/10] :boom: [#2177] Changing map data to geoJson geometry For the map interaction changes, we need to save the map data in a different format. This is to allow us to differentiate between point, line or polygon map information. At the moment we only need the geometry information of the geoJson, so thats what we will store. The other geoJson information, `type` and `properties`, are at the moment not used. In addition, the backend registrations (objects API, ZGW APIs and StUF-ZDS) also only need the geometry information. --- src/openforms/api/geojson.py | 45 ++ src/openforms/formio/components/custom.py | 12 +- .../formio/tests/validation/test_map.py | 528 +++++++++++++++++- 3 files changed, 555 insertions(+), 30 deletions(-) create mode 100644 src/openforms/api/geojson.py diff --git a/src/openforms/api/geojson.py b/src/openforms/api/geojson.py new file mode 100644 index 0000000000..39ad2fe11f --- /dev/null +++ b/src/openforms/api/geojson.py @@ -0,0 +1,45 @@ +from django.db import models +from django.utils.translation import gettext_lazy as _ + +from drf_polymorphic.serializers import PolymorphicSerializer +from rest_framework import serializers + + +class GeoJsonGeometryTypes(models.TextChoices): + point = "Point", _("Point") + polygon = "Polygon", _("Polygon") + line_string = "LineString", _("LineString") + + +class GeoJSONCoordinatesField(serializers.ListField): + child = serializers.FloatField(required=True, allow_null=False) + + def __init__(self, *args, **kwargs): + kwargs["min_length"] = 2 + kwargs["max_length"] = 2 + super().__init__(*args, **kwargs) + + +class GeoJSONPointGeometrySerializer(serializers.Serializer): + coordinates = GeoJSONCoordinatesField() + + +class GeoJSONLineStringGeometrySerializer(serializers.Serializer): + coordinates = serializers.ListField(child=GeoJSONCoordinatesField()) + + +class GeoJSONPolygonGeometrySerializer(serializers.Serializer): + coordinates = serializers.ListField( + child=serializers.ListField(child=GeoJSONCoordinatesField()) + ) + + +class GeoJsonGeometryPolymorphicSerializer(PolymorphicSerializer): + type = serializers.ChoiceField(choices=GeoJsonGeometryTypes.choices, required=True) + + discriminator_field = "type" + serializer_mapping = { + GeoJsonGeometryTypes.point: GeoJSONPointGeometrySerializer, + GeoJsonGeometryTypes.line_string: GeoJSONLineStringGeometrySerializer, + GeoJsonGeometryTypes.polygon: GeoJSONPolygonGeometrySerializer, + } diff --git a/src/openforms/formio/components/custom.py b/src/openforms/formio/components/custom.py index e36f585677..288f7a2f64 100644 --- a/src/openforms/formio/components/custom.py +++ b/src/openforms/formio/components/custom.py @@ -13,6 +13,7 @@ from rest_framework import ISO_8601, serializers from rest_framework.request import Request +from openforms.api.geojson import GeoJsonGeometryPolymorphicSerializer from openforms.authentication.service import AuthAttribute from openforms.config.models import GlobalConfiguration, MapTileLayer from openforms.submissions.models import Submission @@ -213,14 +214,15 @@ def rewrite_for_request(component: MapComponent, request: Request): component["initialCenter"]["lat"] = config.form_map_default_latitude component["initialCenter"]["lng"] = config.form_map_default_longitude - def build_serializer_field(self, component: MapComponent) -> serializers.ListField: + def build_serializer_field( + self, component: MapComponent + ) -> GeoJsonGeometryPolymorphicSerializer: validate = component.get("validate", {}) required = validate.get("required", False) - base = serializers.FloatField( - required=required, - allow_null=not required, + + return GeoJsonGeometryPolymorphicSerializer( + required=required, allow_null=not required ) - return serializers.ListField(child=base, min_length=2, max_length=2) @register("postcode") diff --git a/src/openforms/formio/tests/validation/test_map.py b/src/openforms/formio/tests/validation/test_map.py index d37101bc96..f83a54e0aa 100644 --- a/src/openforms/formio/tests/validation/test_map.py +++ b/src/openforms/formio/tests/validation/test_map.py @@ -1,51 +1,529 @@ from django.test import SimpleTestCase -from ...typing import Component +from ...typing import MapComponent from .helpers import extract_error, validate_formio_data class MapValidationTests(SimpleTestCase): def test_map_field_required_validation(self): - component: Component = { + component: MapComponent = { "type": "map", "key": "foo", - "label": "Test", "validate": {"required": True}, } - invalid_values = [ + invalid_values_with_expected_error_code = [ ({}, "required"), - ({"foo": ""}, "not_a_list"), ({"foo": None}, "null"), ] - for data, error_code in invalid_values: - with self.subTest(data=data): - is_valid, errors = validate_formio_data(component, data) + for ( + invalid_value, + expected_error_code, + ) in invalid_values_with_expected_error_code: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) self.assertFalse(is_valid) - self.assertIn(component["key"], errors) - error = extract_error(errors, component["key"]) - self.assertEqual(error.code, error_code) + self.assertIn("foo", errors) - def test_map_field_min_max_length_of_items(self): - component: Component = { + error = extract_error(errors, "foo") + + self.assertEqual(error.code, expected_error_code) + + def test_map_field_unknown_type(self): + component: MapComponent = { "type": "map", "key": "foo", - "label": "Test", } - invalid_values = [ - ({"foo": [34.869343]}, "min_length"), - ({"foo": [34.869343, 24.080053, 24.074657]}, "max_length"), - ] + invalid_value = { + "foo": {"type": "unknown-geometry-type", "coordinates": [1, 1]}, + } - for data, error_code in invalid_values: - with self.subTest(data=data): - is_valid, errors = validate_formio_data(component, data) + is_valid, errors = validate_formio_data(component, invalid_value) - self.assertFalse(is_valid) - self.assertIn(component["key"], errors) - error = extract_error(errors, component["key"]) - self.assertEqual(error.code, error_code) + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("type", errors["foo"]) + + geometry_type_error = extract_error(errors["foo"], "type") + + self.assertEqual(geometry_type_error.code, "invalid_choice") + + def test_map_field_point_geometry_missing_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + invalid_value = { + "foo": {"type": "Point"}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, "required") + + def test_map_field_point_geometry_invalid_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + with self.subTest(case="Using non-array values for coordinates"): + invalid_values_with_expected_error_code = [ + ( + { + "foo": {"type": "Point", "coordinates": None}, + }, + "null", + ), + ( + { + "foo": {"type": "Point", "coordinates": ""}, + }, + "not_a_list", + ), + ( + { + "foo": {"type": "Point", "coordinates": 1}, + }, + "not_a_list", + ), + ] + + for ( + invalid_value, + expected_error_code, + ) in invalid_values_with_expected_error_code: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, expected_error_code) + + with self.subTest(case="Coordinates array value goes a level too deep"): + invalid_value = { + "foo": {"type": "Point", "coordinates": [[1, 2]]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # There is an error inside the coordinates array + self.assertIn(0, errors["foo"]["coordinates"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0].code, "invalid") + + def test_map_field_point_geometry_length_of_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + with self.subTest(case="Less than 2 values in coordinates"): + invalid_values = [ + { + "foo": {"type": "Point", "coordinates": []}, + }, + { + "foo": {"type": "Point", "coordinates": [1]}, + }, + ] + + for invalid_value in invalid_values: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, "min_length") + + with self.subTest(case="More than 2 values in coordinates"): + invalid_value = { + "foo": {"type": "Point", "coordinates": [1, 2, 3]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, "max_length") + + def test_map_field_valid_point_geometry(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + valid_value = { + "foo": {"type": "Point", "coordinates": [1, 1]}, + } + + is_valid, _ = validate_formio_data(component, valid_value) + + self.assertTrue(is_valid) + + def test_map_field_line_string_geometry_missing_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + invalid_value = { + "foo": {"type": "LineString"}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, "required") + + def test_map_field_line_string_geometry_invalid_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + with self.subTest(case="Using non-array values for coordinates"): + invalid_values_with_expected_error_code = [ + ( + { + "foo": {"type": "LineString", "coordinates": None}, + }, + "null", + ), + ( + { + "foo": {"type": "LineString", "coordinates": ""}, + }, + "not_a_list", + ), + ( + { + "foo": {"type": "LineString", "coordinates": 1}, + }, + "not_a_list", + ), + ] + + for ( + invalid_value, + expected_error_code, + ) in invalid_values_with_expected_error_code: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, expected_error_code) + + with self.subTest(case="Using an 1 dimensional array for coordinates"): + invalid_value = { + "foo": {"type": "LineString", "coordinates": [1, 1]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0].code, "not_a_list") + + with self.subTest(case="Using a 3 dimensional array for coordinates"): + invalid_value = { + "foo": {"type": "LineString", "coordinates": [[[1, 2]]]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + self.assertIn(0, errors["foo"]["coordinates"][0]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0][0].code, "invalid") + + def test_map_field_line_string_geometry_length_of_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + with self.subTest(case="Less than 2 values in coordinates"): + invalid_values = [ + { + "foo": {"type": "LineString", "coordinates": [[]]}, + }, + { + "foo": {"type": "LineString", "coordinates": [[1]]}, + }, + ] + + for invalid_value in invalid_values: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0].code, "min_length") + + with self.subTest(case="More than 2 values in coordinates"): + invalid_value = { + "foo": {"type": "LineString", "coordinates": [[1, 2, 3]]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0].code, "max_length") + + def test_map_field_valid_line_string_geometry(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + valid_value = { + "foo": {"type": "LineString", "coordinates": [[1, 1]]}, + } + + is_valid, _ = validate_formio_data(component, valid_value) + + self.assertTrue(is_valid) + + def test_map_field_polygon_geometry_missing_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + invalid_value = { + "foo": {"type": "Polygon"}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, "required") + + def test_map_field_polygon_geometry_invalid_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + with self.subTest(case="Using non-array values for coordinates"): + invalid_values_with_expected_error_code = [ + ( + { + "foo": {"type": "Polygon", "coordinates": None}, + }, + "null", + ), + ( + { + "foo": {"type": "Polygon", "coordinates": ""}, + }, + "not_a_list", + ), + ( + { + "foo": {"type": "Polygon", "coordinates": 1}, + }, + "not_a_list", + ), + ] + + for ( + invalid_value, + expected_error_code, + ) in invalid_values_with_expected_error_code: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error.code, expected_error_code) + + with self.subTest(case="Using an 1 dimensional array for coordinates"): + invalid_value = { + "foo": {"type": "Polygon", "coordinates": [1, 1]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0].code, "not_a_list") + + with self.subTest(case="Using an 2 dimensional array for coordinates"): + invalid_value = { + "foo": {"type": "Polygon", "coordinates": [[1, 1]]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + self.assertIn(0, errors["foo"]["coordinates"][0]) + self.assertIn(1, errors["foo"]["coordinates"][0]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0][0].code, "not_a_list") + self.assertEqual(coordinates_error[1][0].code, "not_a_list") + + with self.subTest(case="Using an 4 dimensional array for coordinates"): + invalid_value = { + "foo": {"type": "Polygon", "coordinates": [[[[1, 2]]]]}, + } + + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + self.assertIn(0, errors["foo"]["coordinates"][0]) + self.assertIn(0, errors["foo"]["coordinates"][0][0]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0][0][0].code, "invalid") + + def test_map_field_polygon_geometry_length_of_coordinates(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + with self.subTest(case="Using less than 2 values for coordinates"): + invalid_values = [ + { + "foo": {"type": "Polygon", "coordinates": [[[]]]}, + }, + { + "foo": {"type": "Polygon", "coordinates": [[[1]]]}, + }, + ] + + for invalid_value in invalid_values: + with self.subTest(data=invalid_value): + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + self.assertIn(0, errors["foo"]["coordinates"][0]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0][0].code, "min_length") + + with self.subTest(case="Using more than 2 values for coordinates"): + invalid_value = { + "foo": {"type": "Polygon", "coordinates": [[[1, 2, 3]]]}, + } + is_valid, errors = validate_formio_data(component, invalid_value) + + self.assertFalse(is_valid) + self.assertIn("foo", errors) + self.assertIn("coordinates", errors["foo"]) + # Error inside coordinates value + self.assertIn(0, errors["foo"]["coordinates"]) + self.assertIn(0, errors["foo"]["coordinates"][0]) + + coordinates_error = extract_error(errors["foo"], "coordinates") + + self.assertEqual(coordinates_error[0][0].code, "max_length") + + def test_map_field_valid_polygon_geometry(self): + component: MapComponent = { + "type": "map", + "key": "foo", + } + + data = { + "foo": {"type": "Polygon", "coordinates": [[[1, 1]]]}, + } + is_valid, _ = validate_formio_data(component, data) + + self.assertTrue(is_valid) From 9d993aba516cad5e744539ec5e67c8693d1c1dbe Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Thu, 12 Dec 2024 17:13:01 +0100 Subject: [PATCH 02/10] :boom: [#2177] Handling geojson in plugins and map formatter The backend registration plugins (Objects API, ZGW APIs and StUF-ZDS) now support point, line and polygon geojson geometries. --- src/openforms/api/geojson.py | 20 ++++++++++++ src/openforms/formio/formatters/custom.py | 12 +++++-- .../contrib/objects_api/handlers/v2.py | 8 +---- .../objects_api/submission_registration.py | 14 ++------ .../registrations/contrib/stuf_zds/plugin.py | 10 +----- .../registrations/contrib/zgw_apis/plugin.py | 16 ++-------- .../templates/stuf_zds/soap/creeerZaak.xml | 32 +++++++++++++++---- 7 files changed, 61 insertions(+), 51 deletions(-) diff --git a/src/openforms/api/geojson.py b/src/openforms/api/geojson.py index 39ad2fe11f..c5767ca609 100644 --- a/src/openforms/api/geojson.py +++ b/src/openforms/api/geojson.py @@ -1,3 +1,5 @@ +from typing import Literal, TypedDict + from django.db import models from django.utils.translation import gettext_lazy as _ @@ -43,3 +45,21 @@ class GeoJsonGeometryPolymorphicSerializer(PolymorphicSerializer): GeoJsonGeometryTypes.line_string: GeoJSONLineStringGeometrySerializer, GeoJsonGeometryTypes.polygon: GeoJSONPolygonGeometrySerializer, } + + +type Coordinates = tuple[float, float] + + +class PointGeometry(TypedDict): + type: Literal["Point"] + coordinates: Coordinates + + +class LineStringGeometry(TypedDict): + type: Literal["LineString"] + coordinates: list[Coordinates] + + +class PolygonGeometry(TypedDict): + type: Literal["Polygon"] + coordinates: list[list[Coordinates]] diff --git a/src/openforms/formio/formatters/custom.py b/src/openforms/formio/formatters/custom.py index 6c87744fc9..e42c3eafb2 100644 --- a/src/openforms/formio/formatters/custom.py +++ b/src/openforms/formio/formatters/custom.py @@ -6,6 +6,8 @@ from django.utils.html import format_html from django.utils.safestring import mark_safe +from openforms.api.geojson import LineStringGeometry, PointGeometry, PolygonGeometry + from ..typing import AddressNLComponent, Component, MapComponent from .base import FormatterBase @@ -21,10 +23,16 @@ def format(self, component: Component, value: str) -> str: return f"{fmt_date(parsed_value)} {fmt_time(parsed_value, 'H:i')}" +type MapValue = PointGeometry | LineStringGeometry | PolygonGeometry + + class MapFormatter(FormatterBase): - def format(self, component: MapComponent, value: list[float]) -> str: + def format(self, component: MapComponent, value: MapValue) -> str: # use a comma here since its a single data element - return ", ".join((str(x) for x in value)) + if coordinates := value.get("coordinates"): + return ", ".join((str(x) for x in coordinates)) + else: + return "" class AddressValue(TypedDict): diff --git a/src/openforms/registrations/contrib/objects_api/handlers/v2.py b/src/openforms/registrations/contrib/objects_api/handlers/v2.py index d03093f320..c1399cbef2 100644 --- a/src/openforms/registrations/contrib/objects_api/handlers/v2.py +++ b/src/openforms/registrations/contrib/objects_api/handlers/v2.py @@ -105,13 +105,7 @@ def process_mapped_variable( value = value[0] if value else "" case {"type": "map"}: - # Currently we only support Point coordinates - assert isinstance(value, list) and len(value) == 2 - value = { - "type": "Point", - # Providing the coordinates as [lng, lat] #4955 - "coordinates": [value[1], value[0]], - } + assert isinstance(value, dict) # not a component or standard behaviour where no transformation is necessary case None | _: diff --git a/src/openforms/registrations/contrib/objects_api/submission_registration.py b/src/openforms/registrations/contrib/objects_api/submission_registration.py index 11ba2024f1..06e3396758 100644 --- a/src/openforms/registrations/contrib/objects_api/submission_registration.py +++ b/src/openforms/registrations/contrib/objects_api/submission_registration.py @@ -37,7 +37,7 @@ from openforms.formio.typing import Component from openforms.registrations.exceptions import RegistrationFailed from openforms.submissions.exports import create_submission_export -from openforms.submissions.mapping import SKIP, FieldConf, apply_data_mapping +from openforms.submissions.mapping import FieldConf, apply_data_mapping from openforms.submissions.models import ( Submission, SubmissionFileAttachment, @@ -69,13 +69,6 @@ logger = logging.getLogger(__name__) -def _point_coordinate(value: Any) -> dict[str, Any] | object: - if not isinstance(value, list) or len(value) != 2: - return SKIP - # Providing the coordinates as [lng, lat] #4955 - return {"type": "Point", "coordinates": [value[1], value[0]]} - - def _resolve_documenttype( field: Literal["submission_report", "submission_csv", "attachment"], options: RegistrationOptions, @@ -428,10 +421,7 @@ def get_record_data( } object_mapping = { - "geometry": FieldConf( - RegistrationAttribute.locatie_coordinaat, - transform=_point_coordinate, - ), + "geometry": FieldConf(RegistrationAttribute.locatie_coordinaat), } data = cast(dict[str, Any], render_to_json(options["content_json"], context)) diff --git a/src/openforms/registrations/contrib/stuf_zds/plugin.py b/src/openforms/registrations/contrib/stuf_zds/plugin.py index 11077daf60..1c809db131 100644 --- a/src/openforms/registrations/contrib/stuf_zds/plugin.py +++ b/src/openforms/registrations/contrib/stuf_zds/plugin.py @@ -111,12 +111,6 @@ def _safe_int(num): ) -def _point_coordinate(value): - if not value or not isinstance(value, list) or len(value) != 2: - return SKIP - return {"lat": value[0], "lng": value[1]} - - def _gender_choices(value): """ Convert value to uppercase, take only the first character and see if it's @@ -196,9 +190,7 @@ class StufZDSRegistration(BasePlugin[RegistrationOptions]): "initiator.bsn": FieldConf(submission_auth_info_attribute="bsn"), "initiator.kvk": FieldConf(submission_auth_info_attribute="kvk"), # Location - "locatie": FieldConf( - RegistrationAttribute.locatie_coordinaat, transform=_point_coordinate - ), + "locatie": FieldConf(RegistrationAttribute.locatie_coordinaat), } def pre_register_submission( diff --git a/src/openforms/registrations/contrib/zgw_apis/plugin.py b/src/openforms/registrations/contrib/zgw_apis/plugin.py index ae95c28405..04d4dba112 100644 --- a/src/openforms/registrations/contrib/zgw_apis/plugin.py +++ b/src/openforms/registrations/contrib/zgw_apis/plugin.py @@ -75,13 +75,6 @@ def get_property_mappings_from_submission( return property_mappings -def _point_coordinate(value): - if not value or not isinstance(value, list) or len(value) != 2: - return SKIP - # Providing the coordinates as [lng, lat] #4955 - return {"type": "Point", "coordinates": [value[1], value[0]]} - - def _gender_choices(value): """ Convert value to lowercase, take only the first character and see if it's @@ -214,9 +207,7 @@ class ZGWRegistration(BasePlugin[RegistrationOptions]): } zaak_mapping = { - "zaakgeometrie": FieldConf( - RegistrationAttribute.locatie_coordinaat, transform=_point_coordinate - ), + "zaakgeometrie": FieldConf(RegistrationAttribute.locatie_coordinaat), } @wrap_api_errors @@ -623,10 +614,7 @@ def register_submission_to_objects_api( assert "content_json" in options object_mapping = { - "geometry": FieldConf( - RegistrationAttribute.locatie_coordinaat, - transform=_point_coordinate, - ), + "geometry": FieldConf(RegistrationAttribute.locatie_coordinaat), } context = { diff --git a/src/stuf/stuf_zds/templates/stuf_zds/soap/creeerZaak.xml b/src/stuf/stuf_zds/templates/stuf_zds/soap/creeerZaak.xml index b3b415e755..74f2701ffa 100644 --- a/src/stuf/stuf_zds/templates/stuf_zds/soap/creeerZaak.xml +++ b/src/stuf/stuf_zds/templates/stuf_zds/soap/creeerZaak.xml @@ -27,14 +27,32 @@ {% endfor %} {% if locatie %} - - {{ locatie.key }} - - - {{ locatie.lat }} {{ locatie.lng }} - + + {{ locatie.key }} + + {% if locatie.type == 'Point' %} + + {{ locatie.coordinates.0 }} {{ locatie.coordinates.1 }} + + {% elif locatie.type == 'Polygon' %} + + + + {% for coordinates in locatie.coordinates.0 %} + {{ coordinates.0 }} {{ coordinates.1 }} + {% endfor %} + + + + {% elif locatie.type == 'LineString' %} + + + {% for coordinates in locatie.coordinates %}{{ coordinates.0 }} {{ coordinates.1 }} {% endfor %} + + + {% endif %} - + {% endif %} {{ datum_vandaag }} {{ datum_vandaag }} From c8e2efc3ff2cfc1cdccb0af632b997c663634f9d Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Thu, 12 Dec 2024 17:13:18 +0100 Subject: [PATCH 03/10] :white_check_mark: [#2177] Fixing and updating formatter and registration plugin tests Changed the map data from coordinates to geoJson geometry values. --- .../tests/files/all_components_data.json | 64 ++-- .../tests/files/kitchensink_data.json | 24 +- .../files/kitchensink_data_with_hidden.json | 170 +++------ .../formatters/tests/test_kitchensink.py | 4 +- .../tests/files/all_components_data.json | 52 +-- .../camunda/tests/test_type_mapping.py | 20 +- ...objects_api_backend_override_defaults.yaml | 78 ++--- .../objects_api/tests/test_backend_v1.py | 10 +- .../objects_api/tests/test_backend_v2.py | 10 +- .../tests/test_update_payment_status_v2.py | 5 +- .../contrib/stuf_zds/tests/test_backend.py | 324 ++++++++++++++++-- .../contrib/zgw_apis/tests/test_backend.py | 38 +- .../tests/test_backend_partial_failure.py | 5 +- .../tests/test_submission_report.py | 5 +- .../tests/e2e/test_input_validation.py | 2 + 15 files changed, 532 insertions(+), 279 deletions(-) diff --git a/src/openforms/formio/formatters/tests/files/all_components_data.json b/src/openforms/formio/formatters/tests/files/all_components_data.json index 8e6a45a192..6e46b32864 100644 --- a/src/openforms/formio/formatters/tests/files/all_components_data.json +++ b/src/openforms/formio/formatters/tests/files/all_components_data.json @@ -1,34 +1,34 @@ { - "bsn": "123456782", - "map": [ - 52.3782943985417, - 4.899629917973432 - ], - "date": "2021-12-24", - "dateTime": "2023-01-18T16:00:00+01:00", - "file": [], - "iban": "RO09 BCYP 0000 0012 3456 7890", - "time": "16:26:00", - "email": "test@example.com", - "radio": "option2", - "number": 42.123, - "select": "option1", - "postcode": "1234 AA", - "textArea": "Textarea test", - "signature": "data:image/png;base64,iVBO[truncated]", - "textField": "Simple text input", - "phoneNumber": "+31633924456", - "selectBoxes": { - "option1": true, - "option2": true - }, - "licenseplate": "1-AAA-BB", - "select2": "2021-12-29", - "select3": "2021-12-29T08:15:00+01:00", - "addressNL": { - "postcode": "1234AA", - "houseNumber": "1", - "houseLetter": "", - "houseNumberAddition": "" - } + "bsn": "123456782", + "map": { + "type": "Point", + "coordinates": [52.3782943985417, 4.899629917973432] + }, + "date": "2021-12-24", + "dateTime": "2023-01-18T16:00:00+01:00", + "file": [], + "iban": "RO09 BCYP 0000 0012 3456 7890", + "time": "16:26:00", + "email": "test@example.com", + "radio": "option2", + "number": 42.123, + "select": "option1", + "postcode": "1234 AA", + "textArea": "Textarea test", + "signature": "data:image/png;base64,iVBO[truncated]", + "textField": "Simple text input", + "phoneNumber": "+31633924456", + "selectBoxes": { + "option1": true, + "option2": true + }, + "licenseplate": "1-AAA-BB", + "select2": "2021-12-29", + "select3": "2021-12-29T08:15:00+01:00", + "addressNL": { + "postcode": "1234AA", + "houseNumber": "1", + "houseLetter": "", + "houseNumberAddition": "" + } } diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_data.json b/src/openforms/formio/formatters/tests/files/kitchensink_data.json index fe13b28360..705fad345c 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_data.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_data.json @@ -132,18 +132,18 @@ null ], "licenseplate": "aa-bb-12", - "map": [ - 52.373087283242505, - 4.8923054658521945 - ], - "mapEmpty": [ - 52.379648, - 4.9020928 - ], - "mapHidden": [ - 52.379648, - 4.9020928 - ], + "map": { + "type": "Point", + "coordinates": [52.373087283242505, 4.8923054658521945] + }, + "mapEmpty": { + "type": "Point", + "coordinates": [52.379648, 4.9020928] + }, + "mapHidden": { + "type": "Point", + "coordinates": [52.379648, 4.9020928] + }, "number": 1234, "numberDecimal": 1234.56, "numberDecimalMulti": [ diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json b/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json index ad31fcca72..31b3b6a83d 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json @@ -2,13 +2,8 @@ "bsn": "111222333", "bsnEmpty": "", "bsnHidden": "111222333", - "bsnMulti": [ - "111222333", - "123456782" - ], - "bsnMultiEmpty": [ - null - ], + "bsnMulti": ["111222333", "123456782"], + "bsnMultiEmpty": [null], "checkbox": true, "checkboxDefault": true, "checkboxEmpty": false, @@ -17,30 +12,14 @@ "currencyHidden": 123, "currencyDecimal": 1234.56, "currencyDecimalHidden": 123.45, - "currencyDecimalMulti": [ - 1234.56, - 1, - 0 - ], - "currencyMulti": [ - 1234.56, - 1, - 0 - ], - "currencyMultiEmpty": [ - null - ], + "currencyDecimalMulti": [1234.56, 1, 0], + "currencyMulti": [1234.56, 1, 0], + "currencyMultiEmpty": [null], "date": "2022-02-14", "dateEmpty": "", "dateHidden": "2022-02-14", - "dateMulti": [ - "2022-02-14", - "2022-02-15", - "2022-02-16" - ], - "dateMultiEmpty": [ - "" - ], + "dateMulti": ["2022-02-14", "2022-02-15", "2022-02-16"], + "dateMultiEmpty": [""], "dateTime": "2023-01-18T16:00:00+01:00", "dateTimeEmpty": "", "dateTimeHidden": "2023-01-18T16:00:00+01:00", @@ -49,23 +28,13 @@ "2023-01-19T17:00:00+01:00", "2023-01-20T18:00:00+01:00" ], - "dateTimeMultipleEmpty": [ - "" - ], + "dateTimeMultipleEmpty": [""], "email": "test@example.com", "emailEmpty": "", "emailHidden": "test@example.com", - "emailMulti": [ - "aaa@aaa.nl", - "bbb@bbb.nl" - ], - "emailMultiDefault": [ - "aaa@aaa.nl", - "bbb@bbb.nl" - ], - "emailMultiEmpty": [ - null - ], + "emailMulti": ["aaa@aaa.nl", "bbb@bbb.nl"], + "emailMultiDefault": ["aaa@aaa.nl", "bbb@bbb.nl"], + "emailMultiEmpty": [null], "file": [ { "data": { @@ -124,75 +93,41 @@ "iban": "NL02ABNA0123456789", "ibanEmpty": "", "ibanHidden": "NL02ABNA0123456789", - "ibanMulti": [ - "NL02ABNA0123456789", - "BE71096123456769" - ], - "ibanMultiEmpty": [ - null - ], + "ibanMulti": ["NL02ABNA0123456789", "BE71096123456769"], + "ibanMultiEmpty": [null], "licensePlateEmpty": "", "licensePlateHidden": "aa-bb-12", - "licensePlateMulti": [ - "aa-bb-12", - "1-aaa-12", - "12-aa-34" - ], - "licensePlateMultiEmpty": [ - null - ], + "licensePlateMulti": ["aa-bb-12", "1-aaa-12", "12-aa-34"], + "licensePlateMultiEmpty": [null], "licenseplate": "aa-bb-12", - "map": [ - 52.373087283242505, - 4.8923054658521945 - ], - "mapEmpty": [ - 52.379648, - 4.9020928 - ], - "mapHidden": [ - 52.379648, - 4.9020928 - ], + "map": { + "type": "Point", + "coordinates": [52.373087283242505, 4.8923054658521945] + }, + "mapEmpty": { + "type": "Point", + "coordinates": [52.379648, 4.9020928] + }, + "mapHidden": { + "type": "Point", + "coordinates": [52.379648, 4.9020928] + }, "number": 1234, "numberHidden": 1234, "numberDecimal": 1234.56, - "numberDecimalMulti": [ - 1234.56, - 100, - 12.3, - 1, - 0 - ], - "numberMulti": [ - 123123123, - 123, - 1, - 0 - ], - "numberMultiEmpty": [ - null - ], + "numberDecimalMulti": [1234.56, 100, 12.3, 1, 0], + "numberMulti": [123123123, 123, 1, 0], + "numberMultiEmpty": [null], "phoneNumber": "0123456789", "phoneNumberEmpty": "", "phoneNumberHidden": "0123456789", - "phoneNumberMulti": [ - "0123456789", - "0123456780" - ], - "phoneNumberMultiEmpty": [ - null - ], + "phoneNumberMulti": ["0123456789", "0123456780"], + "phoneNumberMultiEmpty": [null], "postcode": "1234 ab", "postcodeEmpty": "", "postcodeHidden": "1234 ab", - "postcodeMulti": [ - "1234 ab", - "4321 ba" - ], - "postcodeMultiEmpty": [ - null - ], + "postcodeMulti": ["1234 ab", "4321 ba"], + "postcodeMultiEmpty": [null], "radio": "aaa", "radioEmpty": "", "radioHidden": "aaa", @@ -212,10 +147,7 @@ }, "selectEmpty": "", "selectHidden": "aaa", - "selectMulti": [ - "aaa", - "bbb" - ], + "selectMulti": ["aaa", "bbb"], "selectMultiEmpty": [], "signature": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAApsAAACWCAYAAACRk0OTAAAcKklEQVR4Xu3dDXCV1Z3H8T8otSslYRbsjLzcVOxWeV1HOpQAYVfa3SaUrOg6BQZ8mXabdAvilpHw3nEKpBK7247ALEl1FSbUMNUpLmhwqqhEEu0sdhY0iG9rwsLs+LYkiFsV6N7/cz2XJzcv3Nx7n/u8nO8zk5GX+5zznM95ML+c5zznDDhz5r0/CQcCCCCAAAIIIIAAAh4IDCBseqBKkQgggAACCCCAAAKOAGGTGwEBBBBAAAEEEEDAMwHCpme0FIwAAggggAACCCBA2OQeQAABBBBAAAEEEPBMgLDpGS0FI4AAAggggAACCBA2uQcQQAABBBBAAAEEPBMgbHpGS8EIIIAAAggggAAChE3uAQQQQAABBBBAAAHPBAibntFSMAIIIIAAAggggABhk3sAAQQQQAABBBBAwDMBwqZntBSMAAL5EDh8+IgUFhZKUVEsH9VRBwIIIIBAPwUIm/0E4+MIIOC9wKlTHfLEE43S1nZcDh9+RTo6Opxft7W1d6l84MABcv78n5J/NnRooZSUTJdJkyY4XwUFBfEQOto5d8CAAclyhg4tkFgsFg+pQ+Kfm+h9g6gBAQQQsFiAsGlx59N0BIIioCHymWeelWPH3pADBw46ATNfx+WX/5ncfPNcWbhwnsycOT1f1VIPAgggYI0AYdOarqahCARLwIxe1tc3OAEzCIeOhi5ZUikzZkzjsXwQOoRrQACBSAgQNiPRjTQCgXAJ6DzL+fPv6PZYPLUVJSXTnMfd+ihc52VqGDSH+bP29nY5dapT9L86IqpfTU3NWYOMG3et3HHHrTJnTinBM2tNCkAAAZsFCJs29z5tR8AHgYceqpdVq9bJ6dMfdat97NhrZNasv3LmXeqXzsHM9NCRUw2gJ0/+j1x++eVOMTpX08zR1MB76NB/SkvLS7J375Px+ZydvValLx+Vl5fJd75TxqP2TDuE8xBAwFoBwqa1XU/DEci/QFXVGtm6ta5LxbHYaFmzZvnnL/X497JOff0joo/0LzYq+sUvXiZf+9pfxMPn7M9D8bT8Q1IjAgggECIBwmaIOotLRSCsAjqKWFm5tNuLPwsXzpeamg1ZjWDm2kRfVvrtb/9dWluPXXTE09StLxbpSKy+ZMQSTLnuEcpDAIGwCxA2w96DXD8CARfYuLFGqqvv63aVGjTr6jYH/OrFeXmpqcl8XXwu6Be+MEhGjRoV/xrhjNYm1gAdzUtHge9pLhABBLwSIGx6JUu5CCAgpaU3dnssXVhYILW1m53H0GE7dB5oc/NL8txzz8uePY3xOaHH+9UEM/dTR0BZ37NfdHwYAQRCLEDYDHHncekIBFmgp/mZ+nZ5Q8OOQD02z8ZQH7nrqGcmb8HraOe2bZt54SibDuBcBBAIhQBhMxTdxEUiEC4BnaNZXDyry0Vv2rTBWcMyyod75DPdJZhqa++XRYsWRJmFtiGAgOUChE3LbwCaj4AXAuXlt8j+/c8ni169enn8jfMqL6oKfJkaQM2cz94evRM4A9+NXCACCGQhQNjMAo9TEUCgZ4ErrxwjnZ2nnb8cNGiQvPPO0cg8Os+2zw8ebJFf/GKrNDY+1aWozZt/Lt/73u3ZFs/5CCCAQOAECJuB6xIuCIFwC+jb22Vlc5ONCMtb5/lW13U9dTko98EIZ757gfoQQCAfAoTNfChTBwIWCaQudUSA6r3zewqcjY27eWnIon8vNBUBGwQImzb0Mm1EII8C8+bdFl8MvTFZY0vLfpb56cN/8+Z/lZUrf5L8hG7R2dy8n8Xh83jPUhUCCHgrQNj01pfSEbBOIHVtzTNn3rPOoL8NTh3hZOpBfwX5PAIIBFmAsBnk3uHaEAihAGEzs05LnX7A4/TMHDkLAQSCJ0DYDF6fcEUIhFqgouJO2bmzIdmGEyfe5E30NHt06tQb5MiRV5xPT5kyWZ59dl+aZ/IxBBBAILgChM3g9g1XhkAoBbZsqZUVK9Ymr50RuvS7MfVN/oaG7aHc1jP9FvNJBBCwQYCwaUMv00YE8ihAYMoO+6677pYHHtjuFKJ7qevLQvrSEAcCCCAQVgHCZlh7jutGIMACgwdfkbw6G7apzHVXjB17vbS3H3eKtXn3pVy7Uh4CCPgjQNj0x51aEYi0AGEpu+5NHR1ubT3EUkjZkXI2Agj4KEDY9BGfqhGIqkBp6VxnP3A97rprsVRX3xPVpnrWLvfb6TNnTo9vb7nbs7ooGAEEEPBSgLDppS5lI2CpwNKld8uDDybmHS5btlTWr19nqUR2zXa/nc7oZnaWnI0AAv4JEDb9s6dmBCIr4B6VW7y4QmpqNka2rV42bM+eJ2X+/NudKnD0UpqyEUDASwHCppe6lI2ApQLusDlnTpns2rXDUonsmz1ixNXS0dEZ3/JzgrS0PJt9gZSAAAII5FmAsJlncKpDwAYB94hcSck02bfvcRua7Ukb3XvNs/WnJ8QUigACHgsQNj0GpngEbBRwv02ta0TqLkIcmQm4F8lvadkfH+GcmFlBnIUAAgj4JEDY9AmeahGIuoB7rU1ebsm8t93Bnd2YMnfkTAQQ8E+AsOmfPTUjEGmBoqJr5f33P3DauG7dKlm5clmk2+tV444ceVWmTv1rp/h77lkjy5f/k1dVUS4CCCDgiQBh0xNWCkUAgdmzb5Lnn3/BgeAloczvh1OnOmTkyK86BbCbUOaOnIkAAv4JEDb9s6dmBCItUF//iFRWLnXayLzNzLuasJm5HWcigEAwBAibwegHrgKByAkcPnxEiotnJdvFyy2ZdXFbW7uMGzfZOZm1NjMz5CwEEPBXgLDprz+1IxBpAfce6QsXzpe6us2Rbq8XjXO/IMRjdC+EKRMBBLwWIGx6LUz5CFgsUFFxp+zc2eAIFBQMkaNH/+A8UudIX8C9ZilhM303PokAAsERIGwGpy+4EgQiJ+AOStq4tWurZNWq5ZFrp5cNqqpaI1u31jlVsPSRl9KUjQACXgkQNr2SpVwEEHAErrpqvLz77rvOr9lysf83xdSpN8iRI684J7KDUP/9OAMBBPwXIGz63wdcAQKRFnDvgKMN5UWh9Lvb/XIQy0el78YnEUAgWAKEzWD1B1eDQOQENDAVF98gHR2dTtt4ozr9LnYH9U2bNsiSJZXpn8wnEUAAgYAIEDYD0hFcBgJRFpg37zbZu7fRaaK+IPTqq4d4USiNDne7seVnGmB8BAEEAilA2Axkt3BRCERLIPVFoVtvXSDbtt0frUZ60BqzdFQsNjr+Jv/LHtRAkQgggID3AoRN742pAQEE4gLuF10UpLb2flm0aAE2vQi4dw5ivia3CQIIhFmAsBnm3uPaEQiRgO4oNGPG38i5c+ecq9bH6Y88sl1mzpweolbk71Lr6v5NfvzjFU6FBPP8uVMTAgjkXoCwmXtTSkQAgV4E3Pulm480NGyX8vLZmKUI3HzzAnnqqafl0ksvkba2Y8xx5Q5BAIHQChA2Q9t1XDgC4RRwL1JuWqBvWeti7+wudKFPR4y42nmDv7CwQE6efCucnc1VI4AAAnEBwia3AQII5F3AvY2lqXz06FHym9/Uy8SJ4/N+PUGr0P1CVUnJNNm37/GgXSLXgwACCKQtQNhMm4oPIoBALgU2bqyR6ur7uhVZU7PRWYvT5sMdxtkP3eY7gbYjEA0BwmY0+pFWIBBKAX1pqKJiaXI7RtMIncOpSyPZ+ljdPEJXD3ZcCuWtzUUjgIBLgLDJ7YAAAr4L3Hvvv8j69T/rch0aNDVw2vbykPslKtbX9P3W5AIQQCAHAoTNHCBSBAIIZC+go5zz5t0u7e3HuxQ2ZcpkefjhX0lR0ejsKwlBCe5dg9jaMwQdxiUigMBFBQibFyXiAwggkC8BXci8svLO5NaW7nrXrKmSH/2oItKP1nUf+XHjJiebzSP0fN151IMAAl4KEDa91KVsBBDISEDfxtbQqUv/uI+iophs2rQ+so/Wt2yplRUr1jpN5hF6RrcOJyGAQAAFCJsB7BQuCQEERHSUc9Wqn8iOHb/uxqG7Dul8Tg2fUTpKS2+UpqZmp0mbNm0QXX+UAwEEEAi7AGEz7D3I9SMQcQF9tKyjnCaEmebqC0SrV1dFZpkkbee0abOckK0Hj9AjfmPTPAQsEiBsWtTZNBWBMAv09mh90qQJzihg2PdYdy/kzq5BYb5TuXYEEEgVIGxyTyCAQGgEdNSvurpGtm6t63bNYd/y8vbbfyCPPrrbaRcLuYfmluRCEUAgDQHCZhpIfAQBBIIlcODAQSd0pj5a1zmcOpczjKOcX/5ykZw587EDzXzNYN1vXA0CCGQnQNjMzo+zEUDARwF9e1tDZ+pb64sWLXDeWg/LDkS6xmhx8aykZGvroci9/OTjbULVCCDgswBh0+cOoHoEEMhOoK8XiGpqNsjChfOzqyAPZ7uXPNLqzpx5Lw+1UgUCCCCQHwHCZn6cqQUBBDwW0BdsqqrWdtuBSB+p6yjnpEkTPb6CzIuvqLhTdu5scApgfc3MHTkTAQSCKUDYDGa/cFUIIJChgO4trqEzTI/W3etrlpRMk337Hs+w9ZyGAAIIBE+AsBm8PuGKEEAgBwIaOjduvK/bSGdNzcb4o/V5gZrPOXjwFckWz5lTJrt27ciBAEUggAACwRAgbAajH7gKBBDwSEBDZ319Q5c318eMuUp++MN/CMSC8Kn7obPskUc3AsUigIBvAoRN3+ipGAEE8imgb3xr6HSv0alvqy9aND++LeZy30Y6NQxXVi5NUjQ0bI/U3u8apnfu3CW/+90zcvTo6zJlymTZvPmfeds+nzc/dSHgswBh0+cOoHoEEMi/wMaNNU7wbG8/nqxcl0tavPgHeX+RqKpqTZcAfOLEm74F31z2hIZ7DZnqbLbgNOWPHDlCfv/7A5FoZy7NKAuBqAoQNqPas7QLAQT6FNAA1NR00JnXeeTIK8nP6vaXGjxLSorzEjzHjr0+GXqj8HKQrgqwYsVaaWu7EOR76ghdkqqubjN3KQIIWCBA2LSgk2kiAgj0LaABKTV06hn6mL2kZLrzpSFUw2AuDw28I0d+NVnkLbfMle3bf5XLKvJWlk4H0CkKhw9fCO59Va62OorLgQAC0RcgbEa/j2khAgikKaDzC/Wxb+ojdvfpGjp1zc6iotHOH+sInj4y1pA1aNClMnjwYCeYFhYWdvlvLDaq2zxFfZxfXX1fsviWlv15GU1Nk6PPj+mWoS+80Cwa1F9//Q354x8/6fHzEyfqSPF8GT58mHz/+//Y5TMsXp+LnqAMBIIvQNgMfh9xhQgg4IOAjjru3fukHDjQ7Dxud8/vzPRydDQvEVYTX8uWrZSPPjrjFKeh7MUXn820aE/PM1MONFxqyLzY6KUuTH/TTX8n8+f/fTI863llZXMJm572FIUjEEwBwmYw+4WrQgCBgAmY8Pn008/Ja6+9npznWVhY4ARHDY2vvnpUPv3004yufPbsb8vcuXPioXN8IEY3tb1PPNEov/zlVmltfS2tNukaoTqKWV4+u9vnCZtpEfIhBCIpQNiMZLf23ih93Fdd/XPnA+5HfT094rOMhuYikBMBDWk68tfe3h5/C7sz+eumpua0y3ePgOp8Uf33GYvFPH97W6898Wi80RnVTX2LPLUBOoKp1zdr1kwpLf3bPq8vNWxqSD958q20TfggAgiEV4CwGd6+6/eV6zeO8eMn9/kNpKgo5sxF029s+l8TSHP9YkS/L54TEIiAgM4J1TmeDz74sDz66O5+t8iE0K98pUgmTBjvnK//TnV+qPvQoOt+G7yjo8P5fWdnpxQUFDgf1XP0XP275uYXndHL3uZdmrL1/wPuaQD92W9ef9AtLp6VvMzLLrtMPvzwv/ttwAkIIBA+AcJm+Pos4yvu6TFWfwrTIGq+0ehohj7u029+HAgg0D8B93JHQ4Z8SR577Nfx4PW/ziiozg/VQ3+dur97/2rJ/tM6+jhnzmyZOvXr8s1v3pD1QuzubTn16nhBKPs+ogQEwiBA2AxDL+XoGnVkc9y463P6DUzD58yZiWVhZsyYlvU3oxw1lWIQCKxA6o5BixdXiO7X3tuhI4L6OF4PM2J5/vx5OX36dPJFHR211BFKDacaEBOP3BMjmO7j7NmzMmzYMOezWqZ7fdGBAweKBl/9t6znl5eX5XwnI3fI1utqbNzt/P+DAwEEoi1A2Ix2/3ZrnY5uVlfXdPtGkysG/UalLwck1ibM7ZqEubpGykHAT4HS0hu77NPe2nrImh/S5s27LT4XtDHJzz7wft6J1I1A/gQIm/mzDmRNZg6ZGTHREQ99fJc66pHpxZvg6cWC2JleE+ch4JdA6rxF23bR2bKl1tldyBz69vquXTv86g7qRQCBPAkQNvMEHdZqzJu1ev2JOWQdTlPMvDINpRpU051bpqHTPfdTH70z7zOsdwfX3V+BMC/i3t+29vT51LA9YsSV8sYbh3NRNGUggECABQibAe6csF2ajpKauWAmkJq5Zbowtnt+mLttZt6nPnrXkQ4OBKIqMHHiFHn77f9ymhfkRdy99C8svFJ07qgeV1wxXN5556iX1VE2AggEQICwGYBOsOUSdJRUR0HNjiw6OtrTiCiP3m25I+xqp/4wNm7c5GSjw7wPejY9lzpnlTfSs9HkXATCIUDYDEc/RfYq9bGaCZ/uFwfcDf7Wt2bJN77xdV46iuxdYEfDUt9CD9M+6LnsodSweeLEm0ylySUwZSEQQAHCZgA7xdZLMvsv64jnxR67L1lSyVJLtt4oIW136nxNW0MWYTOkNzCXjUAWAoTNLPA41XsBXarpscd2y0sv/UePcz51vueiRQvicz1LrVk+xnt1avBCwB2ydJvHo0df9qKawJfJY/TAdxEXiEDOBQibOSelQC8F9ux5UurrG5y34VPneyZ2N5oYXyR6mrO7UX+20vPymikbARVwhyxdg3bfvsethElda5M5m1beBjTaMgHCpmUdHqXmavDcs6cxvkj0k70uvaS7kwwaNEjGjr3G2Qta33gvLBziMBBGo3Q3BL8t7t1zbF5f0vbln4J/p3KFCORegLCZe1NK9EFAH7dr6OxrrmdPl6VrfJrt+fTvi4pGO6FU/0wP9n/3oTMjWqV7X3Cbd87Rf6tlZXOTvbxu3SpZuXJZRHudZiGAgAoQNrkPIimg39D00Mftb731tpw583FyUfp0F6B3w2go1Xl2ZgF6HSHVQ4OpCaj6+1hsFHNHI3lHZdeo1MXMN23aIPqSm61HLHaNfPDBh07zR48eJa+99gdbKWg3AlYIEDat6GYa6RboaVektrbjzhqgudqm09SnuyVpGDWHCan6e/3zWCzm/BUhNdr3KI+Ou/Zv6jJQGrw1gHMggEA0BQib0exXWpUDATM6qkWZ7Tl1hyQNpmbbzsQWnp05qC1RhBlB1ZCqo6ZDhxY4gVTDqP5+wIABzqN989mcVUxBngq452vaunNQKvCIEVd3+bdz/fV/Kffeu16mTy/2tC8oHAEE8i9A2My/OTVGWMDskqQjpO5Dw6l7K08TVvUz7vCqgdL9Wffn9O90y8/Zs78tx4+fcH6tbzVrANV6NaDqYR7rm7Cq/9UvPQiq+b/5qqrWyNatdcmKbX+EbiBS526aP9cdxFavvpsX+PJ/q1IjAp4JEDY9o6VgBLwR0GCph46qmiMxwpoItCa8auDVqQG9jbya+afuuajmsb559K8h1YyqmiBr6jTh1ptWhrtU3ZryhReanT7atu2B+F7g55wGFRYWSGvry+yY83n3auCsrLwzfp8e79bhen/ptJOrroo5P2CxekS4/01w9XYLEDbt7n9ab5GAe66qO5gqgXvU1cxdNaOqF/7bGR8ZnZBcXN+E1cTIaUEyQKW+NOV+gcqE10RwTYzERuVQ35/+9GfxdWAfcV5I6+mw+S303vpZg7kGzqam5j5vBb3f5syZzTq6UfkHQzusEiBsWtXdNBaBzAU0FJhgqqOn7pCaGlDN6Goi1PY9p1VDhAmoWqb7sb87qOrfuUdZdfqA/t4cZqqA/l7LNCPA7mkJek5qG4YN+3M5d+6sMyJspjG4y9R5s+bPTbvN37/55lvy8cf/Fz+3vctIc0/K3/3uzfLQQ7WZd0DEz+xrlLOnpmsf68infulSZTqlhAMBBIIpQNgMZr9wVQhESsA9qqoN62n0VB/7m2BoGn8htHYNrProXx+9ukdagwQ2ZMiX5LrrJjmXpGGovLyMx8BpdpAuE6W7hOkUhIuNdqYWqaPliZ3EJsjkydfJtddeE7kR9DQZ+RgCgRIgbAaqO7gYBBDoS0BDqxm1dD/mN0FVz3W/VGXKco9MmhenzDlXXz1G3n//g27naTnuebE9XdfZs2dlzJgxzl/pKKwJOlGbIuDnXanhU/shsVtYY0aXojuJmc0a3Js25HvJMR297ezsdNpjvvSHkdra+zNqFychEBYBwmZYeorrRAABBBCI7xJ20FmKLDHyefCi0zQuRnbJJQPj0yjOJz9m5iK7f1DROck6HUT/m/iBJvHr1M9+9tlnMnz4cOcHF/MDjv6AdOzY6/LJJ5/2eimNjbvjc1ETG0VwIBBFAcJmFHuVNiGAAAKWCJj5siZ85npjhnwwtrYe4nF/PqCpwzcBwqZv9FSMAAIIIOCVgD5+1zm/5nG1jjb2NAd04MCBcv78hZHN/lyPzh3WwywVptMqhg0b1m3TB3cdeo6ZcqFLjel8XqZd9Eedz4ZRgLAZxl7jmhFAAAEEcipgNmTQx9+pqw6YijQkEgxzyk5hlggQNi3paJqJAAIIIIAAAgj4IUDY9EOdOhFAAAEEEEAAAUsECJuWdDTNRAABBBBAAAEE/BAgbPqhTp0IIIAAAggggIAlAoRNSzqaZiKAAAIIIIAAAn4IEDb9UKdOBBBAAAEEEEDAEgHCpiUdTTMRQAABBBBAAAE/BAibfqhTJwIIIIAAAgggYIkAYdOSjqaZCCCAAAIIIICAHwKETT/UqRMBBBBAAAEEELBEgLBpSUfTTAQQQAABBBBAwA8BwqYf6tSJAAIIIIAAAghYIkDYtKSjaSYCCCCAAAIIIOCHAGHTD3XqRAABBBBAAAEELBEgbFrS0TQTAQQQQAABBBDwQ4Cw6Yc6dSKAAAIIIIAAApYIEDYt6WiaiQACCCCAAAII+CFA2PRDnToRQAABBBBAAAFLBAiblnQ0zUQAAQQQQAABBPwQIGz6oU6dCCCAAAIIIICAJQKETUs6mmYigAACCCCAAAJ+CBA2/VCnTgQQQAABBBBAwBIBwqYlHU0zEUAAAQQQQAABPwQIm36oUycCCCCAAAIIIGCJAGHTko6mmQgggAACCCCAgB8ChE0/1KkTAQQQQAABBBCwRICwaUlH00wEEEAAAQQQQMAPAcKmH+rUiQACCCCAAAIIWCJA2LSko2kmAggggAACCCDghwBh0w916kQAAQQQQAABBCwRIGxa0tE0EwEEEEAAAQQQ8EOAsOmHOnUigAACCCCAAAKWCBA2LelomokAAggggAACCPghQNj0Q506EUAAAQQQQAABSwQIm5Z0NM1EAAEEEEAAAQT8ECBs+qFOnQgggAACCCCAgCUChE1LOppmIoAAAggggAACfggQNv1Qp04EEEAAAQQQQMASAcKmJR1NMxFAAAEEEEAAAT8E/h+IciF0b8AdrwAAAABJRU5ErkJggg==", "signatureEmpty": "", @@ -223,35 +155,17 @@ "textArea": "text with newline\ntext with blank line\n\ntext with newline\ntext with double blank line\n\n\ntext with newline\n", "textAreaEmpty": "", "textAreaHidden": "line 1\n\nline 2\n", - "textAreaMulti": [ - "text no newline", - "single line with newline\n" - ], - "textAreaMultiEmpty": [ - "" - ], + "textAreaMulti": ["text no newline", "single line with newline\n"], + "textAreaMultiEmpty": [""], "textField": "lower case text", "textFieldEmpty": "", "textFieldHidden": "lower case text", - "textFieldMulti": [ - "lower case text", - "Upper Case Text" - ], - "textFieldMultiDefault": [ - "aaa", - "bbb" - ], - "textFieldMultiEmpty": [ - null - ], + "textFieldMulti": ["lower case text", "Upper Case Text"], + "textFieldMultiDefault": ["aaa", "bbb"], + "textFieldMultiEmpty": [null], "time": "12:34:00", "timeEmpty": "", "timeHidden": "12:34:00", - "timeMulti": [ - "12:34:00", - "21:43:00" - ], - "timeMultiEmpty": [ - null - ] + "timeMulti": ["12:34:00", "21:43:00"], + "timeMultiEmpty": [null] } diff --git a/src/openforms/formio/formatters/tests/test_kitchensink.py b/src/openforms/formio/formatters/tests/test_kitchensink.py index 02ddf5b90f..7d521768a7 100644 --- a/src/openforms/formio/formatters/tests/test_kitchensink.py +++ b/src/openforms/formio/formatters/tests/test_kitchensink.py @@ -49,8 +49,8 @@ def run_kitchensink_test(self, name_data, name_printable): # empty map should send no coordinates # TODO update data fixture when #1346 is fixed - data["mapEmpty"] = [] - data["mapHidden"] = [] + data["mapEmpty"] = {} + data["mapHidden"] = {} # translated string assert "Signature" in text_printed diff --git a/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json b/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json index a147ee336b..818feed698 100644 --- a/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json +++ b/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json @@ -1,28 +1,28 @@ { - "bsn": "123456782", - "map": [ - 52.3782943985417, - 4.899629917973432 - ], - "date": "2021-12-24", - "file": [], - "iban": "RO09 BCYP 0000 0012 3456 7890", - "time": "16:26:00", - "email": "test@example.com", - "radio": "option2", - "number": 42.123, - "select": "option1", - "password": "secret", - "postcode": "1234 AA", - "textArea": "Textarea test", - "signature": "data:image/png;base64,iVBO[truncated]", - "textField": "Simple text input", - "phoneNumber": "+31633924456", - "selectBoxes": { - "option1": true, - "option2": true - }, - "licenseplate": "1-AAA-BB", - "select2": "2021-12-29", - "select3": "2021-12-29T08:15:00+01:00" + "bsn": "123456782", + "map": { + "type": "Point", + "coordinates": [52.3782943985417, 4.899629917973432] + }, + "date": "2021-12-24", + "file": [], + "iban": "RO09 BCYP 0000 0012 3456 7890", + "time": "16:26:00", + "email": "test@example.com", + "radio": "option2", + "number": 42.123, + "select": "option1", + "password": "secret", + "postcode": "1234 AA", + "textArea": "Textarea test", + "signature": "data:image/png;base64,iVBO[truncated]", + "textField": "Simple text input", + "phoneNumber": "+31633924456", + "selectBoxes": { + "option1": true, + "option2": true + }, + "licenseplate": "1-AAA-BB", + "select2": "2021-12-29", + "select3": "2021-12-29T08:15:00+01:00" } diff --git a/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py b/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py index 148668ce15..e557b414c3 100644 --- a/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py +++ b/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py @@ -152,9 +152,18 @@ def test_kitchensink_types(self): "licensePlateMulti": ["aa-bb-12", "1-aaa-12", "12-aa-34"], "licensePlateMultiEmpty": [None], "licenseplate": "aa-bb-12", - "map": [52.373087283242505, 4.8923054658521945], - "mapEmpty": [52.379648, 4.9020928], - "mapHidden": [52.379648, 4.9020928], + "map": { + "type": "Point", + "coordinates": [52.373087283242505, 4.8923054658521945], + }, + "mapEmpty": { + "type": "Point", + "coordinates": [52.379648, 4.9020928], + }, + "mapHidden": { + "type": "Point", + "coordinates": [52.379648, 4.9020928], + }, "number": 1234, "numberEmpty": None, "numberHidden": 1234, @@ -238,7 +247,10 @@ def test_all_types(self): data = load_json("all_components_data.json") expected = { "bsn": "123456782", - "map": [52.3782943985417, 4.899629917973432], + "map": { + "type": "Point", + "coordinates": [52.3782943985417, 4.899629917973432], + }, "date": date(2021, 12, 24), "file": [], "iban": "RO09 BCYP 0000 0012 3456 7890", diff --git a/src/openforms/registrations/contrib/objects_api/tests/files/vcr_cassettes/ObjectsAPIBackendV1Tests/ObjectsAPIBackendV1Tests.test_submission_with_objects_api_backend_override_defaults.yaml b/src/openforms/registrations/contrib/objects_api/tests/files/vcr_cassettes/ObjectsAPIBackendV1Tests/ObjectsAPIBackendV1Tests.test_submission_with_objects_api_backend_override_defaults.yaml index 4c2dc15fb0..8ae73b414b 100644 --- a/src/openforms/registrations/contrib/objects_api/tests/files/vcr_cassettes/ObjectsAPIBackendV1Tests/ObjectsAPIBackendV1Tests.test_submission_with_objects_api_backend_override_defaults.yaml +++ b/src/openforms/registrations/contrib/objects_api/tests/files/vcr_cassettes/ObjectsAPIBackendV1Tests/ObjectsAPIBackendV1Tests.test_submission_with_objects_api_backend_override_defaults.yaml @@ -1,7 +1,7 @@ interactions: - request: body: '{"informatieobjecttype": "http://localhost:8003/catalogi/api/v1/informatieobjecttypen/f2908f6f-aa07-42ef-8760-74c5234f2d25", - "bronorganisatie": "123456782", "creatiedatum": "2024-12-19", "titel": "Form + "bronorganisatie": "123456782", "creatiedatum": "2025-01-13", "titel": "Form 000", "auteur": "Aanvrager", "taal": "eng", "formaat": "application/pdf", "inhoud": "", "status": "definitief", "bestandsnaam": "open-forms-Form 000.pdf", "ontvangstdatum": null, "beschrijving": "Ingezonden formulier", "indicatieGebruiksrecht": false, @@ -12,7 +12,7 @@ interactions: Accept-Encoding: - gzip, deflate, br Authorization: - - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNDYwMjkxOSwiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.00_dWmh224upScM1cNgx9w91Hlyong-KQOJSRwNwUFw + - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNjc3NTAyMSwiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.H9P4UJ_DhYcb_6fuYKFJ3h3ghBN4beBHY66KuQ9v3g4 Connection: - keep-alive Content-Length: @@ -25,9 +25,9 @@ interactions: uri: http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten response: body: - string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705","identificatie":"DOCUMENT-2024-0000000017","bronorganisatie":"123456782","creatiedatum":"2024-12-19","titel":"Form - 000","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"application/pdf","taal":"eng","versie":1,"beginRegistratie":"2024-12-19T10:08:39.708635Z","bestandsnaam":"open-forms-Form - 000.pdf","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705/download?versie=1","bestandsomvang":0,"link":"","beschrijving":"Ingezonden + string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca","identificatie":"DOCUMENT-2025-0000000001","bronorganisatie":"123456782","creatiedatum":"2025-01-13","titel":"Form + 000","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"application/pdf","taal":"eng","versie":1,"beginRegistratie":"2025-01-13T13:30:22.346768Z","bestandsnaam":"open-forms-Form + 000.pdf","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca/download?versie=1","bestandsomvang":0,"link":"","beschrijving":"Ingezonden formulier","ontvangstdatum":null,"verzenddatum":null,"indicatieGebruiksrecht":false,"verschijningsvorm":"","ondertekening":{"soort":"","datum":null},"integriteit":{"algoritme":"","waarde":"","datum":null},"informatieobjecttype":"http://localhost:8003/catalogi/api/v1/informatieobjecttypen/f2908f6f-aa07-42ef-8760-74c5234f2d25","locked":false,"bestandsdelen":[],"trefwoorden":[],"lock":""}' headers: API-version: @@ -41,7 +41,7 @@ interactions: Cross-Origin-Opener-Policy: - same-origin Location: - - http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705 + - http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca Referrer-Policy: - same-origin Vary: @@ -55,23 +55,23 @@ interactions: message: Created - request: body: '{"informatieobjecttype": "http://localhost:8003/catalogi/api/v1/informatieobjecttypen/d1cfb1d8-8593-4814-919d-72e38e80388f", - "bronorganisatie": "123456782", "creatiedatum": "2024-12-19", "titel": "Form + "bronorganisatie": "123456782", "creatiedatum": "2025-01-13", "titel": "Form 000 (csv)", "auteur": "Aanvrager", "taal": "eng", "formaat": "text/csv", "inhoud": - "Rm9ybXVsaWVybmFhbSxJbnplbmRpbmdkYXR1bSxUYWFsY29kZSx2b29ybmFhbSxhY2h0ZXJuYWFtLHR1c3NlbnZvZWdzZWwsZ2Vib29ydGVkYXR1bSxjb29yZGluYWF0DQpGb3JtIDAwMCwsZW4sRm9vLEJhcixkZSwyMDAwLTEyLTMxLCJbNTIuMzY2NzMzNzg5NjcxMjIsIDQuODkzMTY0Mjc0NDcwMjk5XSINCg==", + "Rm9ybXVsaWVybmFhbSxJbnplbmRpbmdkYXR1bSxUYWFsY29kZSx2b29ybmFhbSxhY2h0ZXJuYWFtLHR1c3NlbnZvZWdzZWwsZ2Vib29ydGVkYXR1bSxjb29yZGluYWF0DQpGb3JtIDAwMCwsZW4sRm9vLEJhcixkZSwyMDAwLTEyLTMxLCJ7J3R5cGUnOiAnUG9pbnQnLCAnY29vcmRpbmF0ZXMnOiBbNC44OTMxNjQyNzQ0NzAyOTksIDUyLjM2NjczMzc4OTY3MTIyXX0iDQo=", "status": "definitief", "bestandsnaam": "open-forms-Form 000 (csv).csv", "ontvangstdatum": null, "beschrijving": "Ingezonden formulierdata", "indicatieGebruiksrecht": - false, "bestandsomvang": 175}' + false, "bestandsomvang": 209}' headers: Accept: - '*/*' Accept-Encoding: - gzip, deflate, br Authorization: - - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNDYwMjkxOSwiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.00_dWmh224upScM1cNgx9w91Hlyong-KQOJSRwNwUFw + - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNjc3NTAyMSwiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.H9P4UJ_DhYcb_6fuYKFJ3h3ghBN4beBHY66KuQ9v3g4 Connection: - keep-alive Content-Length: - - '721' + - '765' Content-Type: - application/json User-Agent: @@ -80,9 +80,9 @@ interactions: uri: http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten response: body: - string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb","identificatie":"DOCUMENT-2024-0000000018","bronorganisatie":"123456782","creatiedatum":"2024-12-19","titel":"Form - 000 (csv)","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"text/csv","taal":"eng","versie":1,"beginRegistratie":"2024-12-19T10:08:39.853537Z","bestandsnaam":"open-forms-Form - 000 (csv).csv","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb/download?versie=1","bestandsomvang":175,"link":"","beschrijving":"Ingezonden + string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca","identificatie":"DOCUMENT-2025-0000000002","bronorganisatie":"123456782","creatiedatum":"2025-01-13","titel":"Form + 000 (csv)","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"text/csv","taal":"eng","versie":1,"beginRegistratie":"2025-01-13T13:30:22.619853Z","bestandsnaam":"open-forms-Form + 000 (csv).csv","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca/download?versie=1","bestandsomvang":209,"link":"","beschrijving":"Ingezonden formulierdata","ontvangstdatum":null,"verzenddatum":null,"indicatieGebruiksrecht":false,"verschijningsvorm":"","ondertekening":{"soort":"","datum":null},"integriteit":{"algoritme":"","waarde":"","datum":null},"informatieobjecttype":"http://localhost:8003/catalogi/api/v1/informatieobjecttypen/d1cfb1d8-8593-4814-919d-72e38e80388f","locked":false,"bestandsdelen":[],"trefwoorden":[],"lock":""}' headers: API-version: @@ -96,7 +96,7 @@ interactions: Cross-Origin-Opener-Policy: - same-origin Location: - - http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb + - http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca Referrer-Policy: - same-origin Vary: @@ -139,7 +139,7 @@ interactions: Cross-Origin-Opener-Policy: - same-origin Date: - - Thu, 19 Dec 2024 10:08:39 GMT + - Mon, 13 Jan 2025 13:30:22 GMT Referrer-Policy: - same-origin Server: @@ -158,12 +158,12 @@ interactions: "record": {"typeVersion": 1, "data": {"bron": {"naam": "Open Formulieren", "kenmerk": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"}, "type": "testproduct", "aanvraaggegevens": {"test-slug": {"voornaam": "Foo", "achternaam": "Bar", "tussenvoegsel": "de", - "geboortedatum": "2000-12-31", "coordinaat": [52.36673378967122, 4.893164274470299]}}, - "taal": "en", "betrokkenen": [{"inpBsn": "", "rolOmschrijvingGeneriek": "initiator"}], - "pdf": "http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705", - "csv": "http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb", + "geboortedatum": "2000-12-31", "coordinaat": {"type": "Point", "coordinates": + [4.893164274470299, 52.36673378967122]}}}, "taal": "en", "betrokkenen": [{"inpBsn": + "", "rolOmschrijvingGeneriek": "initiator"}], "pdf": "http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca", + "csv": "http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca", "bijlagen": [], "payment": {"completed": false, "amount": 0, "public_order_ids": - [], "payment_ids": []}}, "startAt": "2024-12-19", "geometry": {"type": "Point", + [], "payment_ids": []}}, "startAt": "2025-01-13", "geometry": {"type": "Point", "coordinates": [4.893164274470299, 52.36673378967122]}}}' headers: Accept: @@ -177,7 +177,7 @@ interactions: Content-Crs: - EPSG:4326 Content-Length: - - '969' + - '1003' Content-Type: - application/json User-Agent: @@ -186,8 +186,8 @@ interactions: uri: http://localhost:8002/api/v2/objects response: body: - string: '{"url":"http://objects-web:8000/api/v2/objects/fc9304ce-c572-45e4-ba11-f0f7a45c592d","uuid":"fc9304ce-c572-45e4-ba11-f0f7a45c592d","type":"http://objecttypes-web:8000/api/v2/objecttypes/8faed0fa-7864-4409-aa6d-533a37616a9e","record":{"index":1,"typeVersion":1,"data":{"bron":{"naam":"Open - Formulieren","kenmerk":"aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"},"type":"testproduct","aanvraaggegevens":{"test-slug":{"voornaam":"Foo","achternaam":"Bar","tussenvoegsel":"de","geboortedatum":"2000-12-31","coordinaat":[52.36673378967122,4.893164274470299]}},"taal":"en","betrokkenen":[{"inpBsn":"","rolOmschrijvingGeneriek":"initiator"}],"pdf":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705","csv":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb","bijlagen":[],"payment":{"completed":false,"amount":0,"public_order_ids":[],"payment_ids":[]}},"geometry":{"type":"Point","coordinates":[4.893164274470299,52.36673378967122]},"startAt":"2024-12-19","endAt":null,"registrationAt":"2024-12-19","correctionFor":null,"correctedBy":null}}' + string: '{"url":"http://objects-web:8000/api/v2/objects/f321a7fd-7723-47dc-afb1-347686334585","uuid":"f321a7fd-7723-47dc-afb1-347686334585","type":"http://objecttypes-web:8000/api/v2/objecttypes/8faed0fa-7864-4409-aa6d-533a37616a9e","record":{"index":1,"typeVersion":1,"data":{"bron":{"naam":"Open + Formulieren","kenmerk":"aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"},"type":"testproduct","aanvraaggegevens":{"test-slug":{"voornaam":"Foo","achternaam":"Bar","tussenvoegsel":"de","geboortedatum":"2000-12-31","coordinaat":{"type":"Point","coordinates":[4.893164274470299,52.36673378967122]}}},"taal":"en","betrokkenen":[{"inpBsn":"","rolOmschrijvingGeneriek":"initiator"}],"pdf":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca","csv":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca","bijlagen":[],"payment":{"completed":false,"amount":0,"public_order_ids":[],"payment_ids":[]}},"geometry":{"type":"Point","coordinates":[4.893164274470299,52.36673378967122]},"startAt":"2025-01-13","endAt":null,"registrationAt":"2025-01-13","correctionFor":null,"correctedBy":null}}' headers: Allow: - GET, POST, HEAD, OPTIONS @@ -196,15 +196,15 @@ interactions: Content-Crs: - EPSG:4326 Content-Length: - - '1137' + - '1168' Content-Type: - application/json Cross-Origin-Opener-Policy: - same-origin Date: - - Thu, 19 Dec 2024 10:08:40 GMT + - Mon, 13 Jan 2025 13:30:23 GMT Location: - - http://localhost:8002/api/v2/objects/fc9304ce-c572-45e4-ba11-f0f7a45c592d + - http://localhost:8002/api/v2/objects/f321a7fd-7723-47dc-afb1-347686334585 Referrer-Policy: - same-origin Server: @@ -226,18 +226,18 @@ interactions: Accept-Encoding: - gzip, deflate, br Authorization: - - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNDYwMjkyMCwiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.lw4EsPswHow8ne6BS3ZT2oNzNN722iFw3rlvWlqCVao + - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNjc3NTAyMywiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.4U0x8w0C5jLuZRqLKOE9qcn1xazIdVhQtY77wm0DTUo Connection: - keep-alive User-Agent: - python-requests/2.32.2 method: GET - uri: http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb + uri: http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca response: body: - string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb","identificatie":"DOCUMENT-2024-0000000018","bronorganisatie":"123456782","creatiedatum":"2024-12-19","titel":"Form - 000 (csv)","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"text/csv","taal":"eng","versie":1,"beginRegistratie":"2024-12-19T10:08:39.853537Z","bestandsnaam":"open-forms-Form - 000 (csv).csv","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f15953ce-b719-4680-9ee9-f3ae1d183bbb/download?versie=1","bestandsomvang":175,"link":"","beschrijving":"Ingezonden + string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca","identificatie":"DOCUMENT-2025-0000000002","bronorganisatie":"123456782","creatiedatum":"2025-01-13","titel":"Form + 000 (csv)","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"text/csv","taal":"eng","versie":1,"beginRegistratie":"2025-01-13T13:30:22.619853Z","bestandsnaam":"open-forms-Form + 000 (csv).csv","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/d151a7d8-a833-40a3-8ec1-d233bf7e56ca/download?versie=1","bestandsomvang":209,"link":"","beschrijving":"Ingezonden formulierdata","ontvangstdatum":null,"verzenddatum":null,"indicatieGebruiksrecht":false,"verschijningsvorm":"","ondertekening":{"soort":"","datum":null},"integriteit":{"algoritme":"","waarde":"","datum":null},"informatieobjecttype":"http://localhost:8003/catalogi/api/v1/informatieobjecttypen/d1cfb1d8-8593-4814-919d-72e38e80388f","locked":false,"bestandsdelen":[],"trefwoorden":[]}' headers: API-version: @@ -251,7 +251,7 @@ interactions: Cross-Origin-Opener-Policy: - same-origin ETag: - - '"68609009f1bc10a90f57829486c62768"' + - '"1209db1342574504692a7e230f8e9478"' Referrer-Policy: - same-origin Vary: @@ -271,18 +271,18 @@ interactions: Accept-Encoding: - gzip, deflate, br Authorization: - - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNDYwMjkyMCwiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.lw4EsPswHow8ne6BS3ZT2oNzNN722iFw3rlvWlqCVao + - Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJ0ZXN0X2NsaWVudF9pZCIsImlhdCI6MTczNjc3NTAyMywiY2xpZW50X2lkIjoidGVzdF9jbGllbnRfaWQiLCJ1c2VyX2lkIjoiIiwidXNlcl9yZXByZXNlbnRhdGlvbiI6IiJ9.4U0x8w0C5jLuZRqLKOE9qcn1xazIdVhQtY77wm0DTUo Connection: - keep-alive User-Agent: - python-requests/2.32.2 method: GET - uri: http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705 + uri: http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca response: body: - string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705","identificatie":"DOCUMENT-2024-0000000017","bronorganisatie":"123456782","creatiedatum":"2024-12-19","titel":"Form - 000","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"application/pdf","taal":"eng","versie":1,"beginRegistratie":"2024-12-19T10:08:39.708635Z","bestandsnaam":"open-forms-Form - 000.pdf","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/c037d213-d53b-4672-8165-486f7083c705/download?versie=1","bestandsomvang":0,"link":"","beschrijving":"Ingezonden + string: '{"url":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca","identificatie":"DOCUMENT-2025-0000000001","bronorganisatie":"123456782","creatiedatum":"2025-01-13","titel":"Form + 000","vertrouwelijkheidaanduiding":"openbaar","auteur":"Aanvrager","status":"definitief","formaat":"application/pdf","taal":"eng","versie":1,"beginRegistratie":"2025-01-13T13:30:22.346768Z","bestandsnaam":"open-forms-Form + 000.pdf","inhoud":"http://localhost:8003/documenten/api/v1/enkelvoudiginformatieobjecten/f4091022-6af1-4469-941f-403741b946ca/download?versie=1","bestandsomvang":0,"link":"","beschrijving":"Ingezonden formulier","ontvangstdatum":null,"verzenddatum":null,"indicatieGebruiksrecht":false,"verschijningsvorm":"","ondertekening":{"soort":"","datum":null},"integriteit":{"algoritme":"","waarde":"","datum":null},"informatieobjecttype":"http://localhost:8003/catalogi/api/v1/informatieobjecttypen/f2908f6f-aa07-42ef-8760-74c5234f2d25","locked":false,"bestandsdelen":[],"trefwoorden":[]}' headers: API-version: @@ -296,7 +296,7 @@ interactions: Cross-Origin-Opener-Policy: - same-origin ETag: - - '"76efcb1c5a3b54d841c5ee196d1867c9"' + - '"295a26e1e3ebc2f7e03f349ab83b3373"' Referrer-Policy: - same-origin Vary: diff --git a/src/openforms/registrations/contrib/objects_api/tests/test_backend_v1.py b/src/openforms/registrations/contrib/objects_api/tests/test_backend_v1.py index 03f050cadf..830499f02f 100644 --- a/src/openforms/registrations/contrib/objects_api/tests/test_backend_v1.py +++ b/src/openforms/registrations/contrib/objects_api/tests/test_backend_v1.py @@ -130,7 +130,10 @@ def test_submission_with_objects_api_backend_override_defaults(self): "achternaam": "Bar", "tussenvoegsel": "de", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, language_code="en", uuid=FIXED_SUBMISSION_UUID, @@ -186,7 +189,10 @@ def test_submission_with_objects_api_backend_override_defaults(self): "achternaam": "Bar", "tussenvoegsel": "de", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, } }, "taal": "en", diff --git a/src/openforms/registrations/contrib/objects_api/tests/test_backend_v2.py b/src/openforms/registrations/contrib/objects_api/tests/test_backend_v2.py index 36c7728a22..d24accda6b 100644 --- a/src/openforms/registrations/contrib/objects_api/tests/test_backend_v2.py +++ b/src/openforms/registrations/contrib/objects_api/tests/test_backend_v2.py @@ -75,7 +75,10 @@ def test_submission_with_objects_api_v2(self): submitted_data={ "age": 20, "lastname": "My last name", - "location": [52.36673378967122, 4.893164274470299], + "location": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, ) @@ -545,7 +548,10 @@ def test_submission_with_map_component_inside_data(self): ], completed=True, submitted_data={ - "location": [52.36673378967122, 4.893164274470299], + "location": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, ) ObjectsAPIRegistrationData.objects.create(submission=submission) diff --git a/src/openforms/registrations/contrib/objects_api/tests/test_update_payment_status_v2.py b/src/openforms/registrations/contrib/objects_api/tests/test_update_payment_status_v2.py index 6728f597f9..c8fc712b8e 100644 --- a/src/openforms/registrations/contrib/objects_api/tests/test_update_payment_status_v2.py +++ b/src/openforms/registrations/contrib/objects_api/tests/test_update_payment_status_v2.py @@ -89,7 +89,10 @@ def test_update_payment_status(self): submitted_data={ "age": 20, "lastname": "My last name", - "location": [52.36673378967122, 4.893164274470299], + "location": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, registration_result={"url": objects_url}, form__payment_backend="demo", diff --git a/src/openforms/registrations/contrib/stuf_zds/tests/test_backend.py b/src/openforms/registrations/contrib/stuf_zds/tests/test_backend.py index 48ea9c3e93..457c480cf2 100644 --- a/src/openforms/registrations/contrib/stuf_zds/tests/test_backend.py +++ b/src/openforms/registrations/contrib/stuf_zds/tests/test_backend.py @@ -210,7 +210,10 @@ def test_plugin(self, m, mock_task): "achternaam": "Bar", "tussenvoegsel": "de", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "extra": "BuzzBazz", "language_code": "Dothraki", # some form widget defined by form designer }, @@ -291,7 +294,7 @@ def test_plugin(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum": "20001231", "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum/@stuf:indOnvolledigeDatum": "V", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:heeft/zkn:gerelateerde/zkn:code": "123", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "aaabbc", @@ -465,7 +468,10 @@ def test_plugin_natuurlijk_persoon_initiator(self, m, mock_task): "tussenvoegsel": "de", "postcode": "1000 aa", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "voorletters": "J.W.", "geslachtsaanduiding": "mannelijk", }, @@ -548,7 +554,7 @@ def test_plugin_natuurlijk_persoon_initiator(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:voorletters": "J.W.", "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geslachtsaanduiding": "M", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:heeft/zkn:gerelateerde/zkn:code": "123", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "aaabbc", @@ -714,7 +720,10 @@ def test_plugin_natuurlijk_persoon_without_auth(self, m, mock_task): "tussenvoegsel": "de", "postcode": "1000 AA", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "voorletters": "J.W.", "geslachtsaanduiding": "mannelijk", }, @@ -782,7 +791,7 @@ def test_plugin_natuurlijk_persoon_without_auth(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:voorletters": "J.W.", "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geslachtsaanduiding": "M", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", }, ) @@ -950,7 +959,10 @@ def test_plugin_vestiging_initiator(self, m, mock_task): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "vestigingsNummer": "87654321", }, kvk="12345678", @@ -1025,7 +1037,7 @@ def test_plugin_vestiging_initiator(self, m, mock_task): "//zkn:object/zkn:isVan/zkn:gerelateerde/zkn:code": "zt-code", "//zkn:object/zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:heeft/zkn:gerelateerde/zkn:code": "123", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "aaabbc", @@ -1144,7 +1156,10 @@ def test_plugin_vestiging_initiator_kvk_only(self, m, mock_task): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, kvk="12345678", form__name="my-form", @@ -1218,7 +1233,7 @@ def test_plugin_vestiging_initiator_kvk_only(self, m, mock_task): "//zkn:object/zkn:isVan/zkn:gerelateerde/zkn:code": "zt-code", "//zkn:object/zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:heeft/zkn:gerelateerde/zkn:code": "123", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "aaabbc", @@ -1343,7 +1358,10 @@ def test_plugin_vestiging_initiator_kvk_and_vestigingsnummer(self, m, mock_task) submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "vestigingsNummer": "87654321", }, kvk="12345678", @@ -1418,7 +1436,7 @@ def test_plugin_vestiging_initiator_kvk_and_vestigingsnummer(self, m, mock_task) "//zkn:object/zkn:isVan/zkn:gerelateerde/zkn:code": "zt-code", "//zkn:object/zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:heeft/zkn:gerelateerde/zkn:code": "123", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "aaabbc", @@ -1574,7 +1592,10 @@ def test_plugin_medewerker(self, m, mock_task): "tussenvoegsel": "de", "postcode": "1000 AA", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "voorletters": "J.W.", "geslachtsaanduiding": "mannelijk", }, @@ -1653,7 +1674,7 @@ def test_plugin_medewerker(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geslachtsaanduiding": "M", "//zkn:object/zkn:heeftAlsOverigBetrokkene/zkn:gerelateerde/zkn:medewerker/zkn:identificatie": "123456782", # Identificatie of the employee "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:isVan/zkn:gerelateerde/zkn:omschrijving": "zt-omschrijving", "//zkn:heeft/zkn:gerelateerde/zkn:code": "123", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "aaabbc", @@ -2032,7 +2053,10 @@ def test_plugin_optional_fields(self, m, mock_task): "achternaam": "Bar", "tussenvoegsel": "de", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "extra": "BuzzBazz", }, ) @@ -2099,7 +2123,7 @@ def test_plugin_optional_fields(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum": "20001231", "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum/@stuf:indOnvolledigeDatum": "V", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", }, ) self.assertXPathNotExists( @@ -2174,6 +2198,250 @@ def test_plugin_optional_fields(self, m, mock_task): 5, ) + @patch("celery.app.task.Task.request") + def test_plugin_map_with_pointer(self, m, mock_task): + submission = SubmissionFactory.from_components( + [ + { + "key": "coordinaat", + "registration": { + "attribute": RegistrationAttribute.locatie_coordinaat, + }, + }, + ], + form__name="my-form", + bsn="111222333", + public_registration_reference="foo-zaak", + registration_result={"intermediate": {"zaaknummer": "foo-zaak"}}, + submitted_data={ + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, + }, + ) + SubmissionFileAttachmentFactory.create( + submission_step=submission.steps[0], + file_name="my-attachment.doc", + content_type="application/msword", + ) + + m.post( + self.service.soap_service.url, + content=load_mock("creeerZaak.xml"), + additional_matcher=match_text("zakLk01"), + ) + + m.post( + self.service.soap_service.url, + content=load_mock( + "genereerDocumentIdentificatie.xml", + {"document_identificatie": "bar-document"}, + ), + additional_matcher=match_text("genereerDocumentIdentificatie_Di02"), + ) + + m.post( + self.service.soap_service.url, + content=load_mock("voegZaakdocumentToe.xml"), + additional_matcher=match_text("edcLk01"), + ) + mock_task.id = 1 + + form_options = { + "zds_zaaktype_code": "zt-code", + "zds_documenttype_omschrijving_inzending": "aaabbc", + } + + plugin = StufZDSRegistration("stuf") + serializer = plugin.configuration_options(data=form_options) + self.assertTrue(serializer.is_valid()) + + result = plugin.register_submission(submission, serializer.validated_data) + self.assertEqual( + result, + { + "zaak": "foo-zaak", + "document": "bar-document", + }, + ) + + xml_doc = xml_from_request_history(m, 0) + self.assertSoapXMLCommon(xml_doc) + self.assertXPathEqual( + xml_doc, + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos", + "4.893164274470299 52.36673378967122", + ) + + @patch("celery.app.task.Task.request") + def test_plugin_map_with_polygon(self, m, mock_task): + submission = SubmissionFactory.from_components( + [ + { + "key": "coordinaat", + "registration": { + "attribute": RegistrationAttribute.locatie_coordinaat, + }, + }, + ], + form__name="my-form", + bsn="111222333", + public_registration_reference="foo-zaak", + registration_result={"intermediate": {"zaaknummer": "foo-zaak"}}, + submitted_data={ + "coordinaat": { + "type": "Polygon", + "coordinates": [ + [ + [5.275725, 52.134743], + [5.256707, 52.123972], + [5.286552, 52.123035], + [5.275725, 52.134743], + ] + ], + }, + }, + ) + SubmissionFileAttachmentFactory.create( + submission_step=submission.steps[0], + file_name="my-attachment.doc", + content_type="application/msword", + ) + + m.post( + self.service.soap_service.url, + content=load_mock("creeerZaak.xml"), + additional_matcher=match_text("zakLk01"), + ) + + m.post( + self.service.soap_service.url, + content=load_mock( + "genereerDocumentIdentificatie.xml", + {"document_identificatie": "bar-document"}, + ), + additional_matcher=match_text("genereerDocumentIdentificatie_Di02"), + ) + + m.post( + self.service.soap_service.url, + content=load_mock("voegZaakdocumentToe.xml"), + additional_matcher=match_text("edcLk01"), + ) + mock_task.id = 1 + + form_options = { + "zds_zaaktype_code": "zt-code", + "zds_documenttype_omschrijving_inzending": "aaabbc", + } + + plugin = StufZDSRegistration("stuf") + serializer = plugin.configuration_options(data=form_options) + self.assertTrue(serializer.is_valid()) + + result = plugin.register_submission(submission, serializer.validated_data) + self.assertEqual( + result, + { + "zaak": "foo-zaak", + "document": "bar-document", + }, + ) + + xml_doc = xml_from_request_history(m, 0) + self.assertSoapXMLCommon(xml_doc) + self.assertXPathEqualDict( + xml_doc, + { + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Polygon/gml:exterior/gml:LinearRing/gml:pos[1]": "5.275725 52.134743", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Polygon/gml:exterior/gml:LinearRing/gml:pos[2]": "5.256707 52.123972", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Polygon/gml:exterior/gml:LinearRing/gml:pos[3]": "5.286552 52.123035", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Polygon/gml:exterior/gml:LinearRing/gml:pos[4]": "5.275725 52.134743", + }, + ) + + @patch("celery.app.task.Task.request") + def test_plugin_map_with_line_string(self, m, mock_task): + submission = SubmissionFactory.from_components( + [ + { + "key": "coordinaat", + "registration": { + "attribute": RegistrationAttribute.locatie_coordinaat, + }, + }, + ], + form__name="my-form", + bsn="111222333", + public_registration_reference="foo-zaak", + registration_result={"intermediate": {"zaaknummer": "foo-zaak"}}, + submitted_data={ + "coordinaat": { + "type": "LineString", + "coordinates": [ + [5.313637, 52.128128], + [5.28987, 52.132218], + [5.273187, 52.1287], + ], + }, + }, + ) + SubmissionFileAttachmentFactory.create( + submission_step=submission.steps[0], + file_name="my-attachment.doc", + content_type="application/msword", + ) + + m.post( + self.service.soap_service.url, + content=load_mock("creeerZaak.xml"), + additional_matcher=match_text("zakLk01"), + ) + + m.post( + self.service.soap_service.url, + content=load_mock( + "genereerDocumentIdentificatie.xml", + {"document_identificatie": "bar-document"}, + ), + additional_matcher=match_text("genereerDocumentIdentificatie_Di02"), + ) + + m.post( + self.service.soap_service.url, + content=load_mock("voegZaakdocumentToe.xml"), + additional_matcher=match_text("edcLk01"), + ) + mock_task.id = 1 + + form_options = { + "zds_zaaktype_code": "zt-code", + "zds_documenttype_omschrijving_inzending": "aaabbc", + } + + plugin = StufZDSRegistration("stuf") + serializer = plugin.configuration_options(data=form_options) + self.assertTrue(serializer.is_valid()) + + result = plugin.register_submission(submission, serializer.validated_data) + self.assertEqual( + result, + { + "zaak": "foo-zaak", + "document": "bar-document", + }, + ) + + xml_doc = xml_from_request_history(m, 0) + self.assertSoapXMLCommon(xml_doc) + self.assertXPathEqualDict( + xml_doc, + { + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:LineString/gml:posList": "5.313637 52.128128 5.28987 52.132218 5.273187 52.1287", + }, + ) + @patch("celery.app.task.Task.request") def test_plugin_optional_fields_missing_status_description(self, m, mock_task): submission = SubmissionFactory.from_components( @@ -2225,7 +2493,10 @@ def test_plugin_optional_fields_missing_status_description(self, m, mock_task): "achternaam": "Bar", "tussenvoegsel": "de", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "extra": "BuzzBazz", }, ) @@ -2294,7 +2565,7 @@ def test_plugin_optional_fields_missing_status_description(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum": "20001231", "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum/@stuf:indOnvolledigeDatum": "V", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:heeft/zkn:gerelateerde/zkn:code": "zt-code", }, ) @@ -2420,7 +2691,10 @@ def test_plugin_optional_fields_missing_status_code(self, m, mock_task): "achternaam": "Bar", "tussenvoegsel": "de", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "extra": "BuzzBazz", }, ) @@ -2489,7 +2763,7 @@ def test_plugin_optional_fields_missing_status_code(self, m, mock_task): "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum": "20001231", "//zkn:object/zkn:heeftAlsInitiator/zkn:gerelateerde/zkn:natuurlijkPersoon/bg:geboortedatum/@stuf:indOnvolledigeDatum": "V", "//zkn:object/zkn:anderZaakObject/zkn:omschrijving": "coordinaat", - "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "52.36673378967122 4.893164274470299", + "//zkn:object/zkn:anderZaakObject/zkn:lokatie/gml:Point/gml:pos": "4.893164274470299 52.36673378967122", "//zkn:heeft/zkn:gerelateerde/zkn:omschrijving": "zt-status-omschrijving", }, ) @@ -2568,7 +2842,10 @@ def test_pre_registration_goes_wrong_sets_internal_reference(self, m): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, form__registration_backend="stuf-zds-create-zaak", form__registration_backend_options={ @@ -2617,7 +2894,10 @@ def test_retry_pre_registration_task(self, m): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, kvk="12345678", form__registration_backend="stuf-zds-create-zaak", diff --git a/src/openforms/registrations/contrib/zgw_apis/tests/test_backend.py b/src/openforms/registrations/contrib/zgw_apis/tests/test_backend.py index d428218d62..74c3b4968b 100644 --- a/src/openforms/registrations/contrib/zgw_apis/tests/test_backend.py +++ b/src/openforms/registrations/contrib/zgw_apis/tests/test_backend.py @@ -226,7 +226,10 @@ def test_submission_with_zgw_backend_with_natuurlijk_persoon_initiator(self, m): "tussenvoegsel": "de", "postcode": "1000 AA", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "voorletters": "J.W.", "geslachtsaanduiding": "mannelijk", }, @@ -455,7 +458,10 @@ def test_submission_with_zgw_backend_with_vestiging_and_kvk_initiator(self, m): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "vestigingsNummer": "87654321", }, kvk="12345678", @@ -665,7 +671,10 @@ def test_submission_with_zgw_backend_with_kvk_only_initiator(self, m): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, kvk="12345678", form__product__price=Decimal("0"), @@ -750,7 +759,10 @@ def test_submission_with_zgw_backend_with_vestiging_initiator_kvk_only(self, m): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, kvk="12345678", form__product__price=Decimal("0"), @@ -960,7 +972,10 @@ def test_submission_with_registrator(self, m): submitted_data={ "handelsnaam": "ACME", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, }, kvk="12345678", form__product__price=Decimal("0"), @@ -1811,7 +1826,10 @@ def get_create_json_for_zaakobject(req, ctx): "tussenvoegsel": "de", "postcode": "1000 AA", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "voorletters": "J.W.", "geslachtsaanduiding": "mannelijk", }, @@ -1874,7 +1892,13 @@ def get_create_json_for_zaakobject(req, ctx): "geboortedatum": "2000-12-31", "geslachtsaanduiding": "mannelijk", "postcode": "1000 AA", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [ + 4.893164274470299, + 52.36673378967122, + ], + }, } }, "type": "ProductAanvraag", diff --git a/src/openforms/registrations/contrib/zgw_apis/tests/test_backend_partial_failure.py b/src/openforms/registrations/contrib/zgw_apis/tests/test_backend_partial_failure.py index 13377e8224..d464c8ee04 100644 --- a/src/openforms/registrations/contrib/zgw_apis/tests/test_backend_partial_failure.py +++ b/src/openforms/registrations/contrib/zgw_apis/tests/test_backend_partial_failure.py @@ -492,7 +492,10 @@ def test_failure_after_object_creation(self, m, obj_api_config): "tussenvoegsel": "de", "postcode": "1000 AA", "geboortedatum": "2000-12-31", - "coordinaat": [52.36673378967122, 4.893164274470299], + "coordinaat": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122], + }, "voorletters": "J.W.", "geslachtsaanduiding": "mannelijk", }, diff --git a/src/openforms/submissions/tests/test_submission_report.py b/src/openforms/submissions/tests/test_submission_report.py index 6c53b56368..a947e415d6 100644 --- a/src/openforms/submissions/tests/test_submission_report.py +++ b/src/openforms/submissions/tests/test_submission_report.py @@ -373,7 +373,10 @@ def test_report_is_generated_in_same_language_as_submission(self): "filekey": [{"originalName": "download(2).pdf"}], "ibankey": "NL56 INGB 0705 0051 00", "licenseplatekey": "AA-00-13", - "mapkey": [52.193459, 5.279538], + "mapkey": { + "type": "Point", + "coordinates": [52.193459, 5.279538], + }, "numberkey": "1", "passwordkey": "Panda1911!", "phonenumberkey": "+49 1234 567 890", diff --git a/src/openforms/tests/e2e/test_input_validation.py b/src/openforms/tests/e2e/test_input_validation.py index 0deb90fa9a..cfe258f86a 100644 --- a/src/openforms/tests/e2e/test_input_validation.py +++ b/src/openforms/tests/e2e/test_input_validation.py @@ -542,6 +542,8 @@ def test_max_value(self): class SingleMapTests(ValidationsTestCase): + fuzzy_match_invalid_param_names = True + async def apply_ui_input(self, page: Page, label: str, ui_input: str | int | float): await page.wait_for_selector( f".openforms-leaflet-map, [aria-label='{label}']", state="visible" From 3f7ac79cd05932b7f46d7860adcb7e45744718d2 Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Tue, 14 Jan 2025 15:39:21 +0100 Subject: [PATCH 04/10] :label: [#2177] Added interactions to MapComponent type --- src/openforms/formio/typing/custom.py | 3 ++- src/openforms/formio/typing/map.py | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/openforms/formio/typing/custom.py b/src/openforms/formio/typing/custom.py index 76792272da..f4dca82080 100644 --- a/src/openforms/formio/typing/custom.py +++ b/src/openforms/formio/typing/custom.py @@ -2,7 +2,7 @@ from .base import Component from .dates import DatePickerConfig, DatePickerCustomOptions -from .map import MapInitialCenter +from .map import MapInitialCenter, MapInteractions class DateComponent(Component): @@ -19,5 +19,6 @@ class MapComponent(Component): defaultZoom: NotRequired[int] initialCenter: NotRequired[MapInitialCenter] tileLayerIdentifier: NotRequired[str] + interactions: MapInteractions # The tileLayerUrl will be dynamically generated from the tileLayerIdentifier tileLayerUrl: NotRequired[str] diff --git a/src/openforms/formio/typing/map.py b/src/openforms/formio/typing/map.py index cfc712f65d..94a049eb04 100644 --- a/src/openforms/formio/typing/map.py +++ b/src/openforms/formio/typing/map.py @@ -4,3 +4,9 @@ class MapInitialCenter(TypedDict): lat: NotRequired[float] lng: NotRequired[float] + + +class MapInteractions(TypedDict): + marker: bool + polygon: bool + polyline: bool From 8520de613b31764c22d13b282e76c65f533cdcab Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Tue, 14 Jan 2025 15:40:16 +0100 Subject: [PATCH 05/10] :card_file_box: [#2177] Added migration to ensure interactions on map components --- src/openforms/formio/migration_converters.py | 22 +++++++++++- .../formio/tests/test_migration_converters.py | 34 ++++++++++++++++++- ...add_interaction_config_to_map_component.py | 16 +++++++++ 3 files changed, 70 insertions(+), 2 deletions(-) create mode 100644 src/openforms/forms/migrations/0100_add_interaction_config_to_map_component.py diff --git a/src/openforms/formio/migration_converters.py b/src/openforms/formio/migration_converters.py index 536fa8fcfa..9df2686559 100644 --- a/src/openforms/formio/migration_converters.py +++ b/src/openforms/formio/migration_converters.py @@ -15,7 +15,7 @@ from openforms.typing import JSONObject from .datastructures import FormioConfigurationWrapper -from .typing import AddressNLComponent, Component +from .typing import AddressNLComponent, Component, MapComponent logger = logging.getLogger(__name__) @@ -271,6 +271,23 @@ def ensure_addressnl_has_deriveAddress(component: Component) -> bool: return True +def ensure_map_has_interactions(component: Component) -> bool: + component = cast(MapComponent, component) + + if "interactions" in component: + return False + + component.setdefault( + "interactions", + { + "marker": True, + "polygon": False, + "polyline": False, + }, + ) + return True + + def rename_identifier_role_authorizee(component: Component) -> bool: if "prefill" not in component: return False @@ -352,6 +369,9 @@ def fix_empty_default_value(component: Component) -> bool: "fix_empty_validate_lengths": fix_empty_validate_lengths, "fix_empty_default_value": fix_empty_default_value, }, + "map": { + "ensure_map_has_interactions": ensure_map_has_interactions, + }, "number": { "fix_empty_validate_lengths": fix_empty_validate_lengths, }, diff --git a/src/openforms/formio/tests/test_migration_converters.py b/src/openforms/formio/tests/test_migration_converters.py index 9eecea50ec..b5b4551a38 100644 --- a/src/openforms/formio/tests/test_migration_converters.py +++ b/src/openforms/formio/tests/test_migration_converters.py @@ -3,12 +3,13 @@ from ..migration_converters import ( ensure_addressnl_has_deriveAddress, ensure_licensplate_validate_pattern, + ensure_map_has_interactions, ensure_postcode_validate_pattern, fix_empty_default_value, fix_multiple_empty_default_value, prevent_datetime_components_from_emptying_invalid_values, ) -from ..typing import AddressNLComponent, Component +from ..typing import AddressNLComponent, Component, MapComponent class LicensePlateTests(SimpleTestCase): @@ -684,3 +685,34 @@ def test_missing_derive_address(self): self.assertTrue(changed) self.assertFalse(component["deriveAddress"]) + + +class MapTests(SimpleTestCase): + def test_existing_interactions(self): + component: MapComponent = { + "key": "map", + "type": "map", + "label": "Map", + "useConfigDefaultMapSettings": True, + "interactions": {"marker": False, "polygon": True, "polyline": True}, + } + + changed = ensure_map_has_interactions(component) + + self.assertFalse(changed) + + def test_missing_interactions(self): + component: MapComponent = { + "key": "map", + "type": "map", + "label": "Map", + "useConfigDefaultMapSettings": True, + } + + changed = ensure_map_has_interactions(component) + + self.assertTrue(changed) + self.assertEqual( + component["interactions"], + {"marker": True, "polygon": False, "polyline": False}, + ) diff --git a/src/openforms/forms/migrations/0100_add_interaction_config_to_map_component.py b/src/openforms/forms/migrations/0100_add_interaction_config_to_map_component.py new file mode 100644 index 0000000000..fb0279d0d7 --- /dev/null +++ b/src/openforms/forms/migrations/0100_add_interaction_config_to_map_component.py @@ -0,0 +1,16 @@ +# Generated by Django 4.2.17 on 2025-01-14 15:35 + +from django.db import migrations + +from openforms.forms.migration_operations import ConvertComponentsOperation + + +class Migration(migrations.Migration): + + dependencies = [ + ("forms", "0099_formsubmissionstatisticsv2_delete_formstatistics"), + ] + + operations = [ + ConvertComponentsOperation("map", "ensure_map_has_interactions"), + ] From 67f8d4dd49dc786c97263235944c688e9d200b40 Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Tue, 14 Jan 2025 16:36:47 +0100 Subject: [PATCH 06/10] :white_check_mark: [#2177] Added test for importing map components Map component that don't have interactions configuration, will receive the default config when importing using the migration_converters --- .../forms/tests/test_import_export.py | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/src/openforms/forms/tests/test_import_export.py b/src/openforms/forms/tests/test_import_export.py index 4a1157d532..ed8a71ab2d 100644 --- a/src/openforms/forms/tests/test_import_export.py +++ b/src/openforms/forms/tests/test_import_export.py @@ -1199,6 +1199,65 @@ def test_import_form_with_old_simple_conditionals_with_numbers(self): ) self.assertIsInstance(fixed_components[10]["conditional"]["eq"], int) + def test_import_applies_converters_map_component_interactions(self): + form = FormFactory.create( + generate_minimal_setup=True, + formstep__form_definition__configuration={ + "components": [ + { + "key": "mapWithoutInteractions", + "type": "map", + "label": "Map", + "useConfigDefaultMapSettings": True, + }, + { + "key": "mapWithInteractions", + "type": "map", + "label": "Map", + "useConfigDefaultMapSettings": True, + "interactions": { + "marker": False, + "polygon": True, + "polyline": True, + }, + }, + ] + }, + ) + call_command("export", form.pk, self.filepath) + call_command("import", import_file=self.filepath) + + imported_form = Form.objects.exclude(pk=form.pk).get() + fd = imported_form.formstep_set.get().form_definition + + self.assertEqual( + fd.configuration["components"], + [ + { + "key": "mapWithoutInteractions", + "type": "map", + "label": "Map", + "useConfigDefaultMapSettings": True, + "interactions": { + "marker": True, + "polygon": False, + "polyline": False, + }, + }, + { + "key": "mapWithInteractions", + "type": "map", + "label": "Map", + "useConfigDefaultMapSettings": True, + "interactions": { + "marker": False, + "polygon": True, + "polyline": True, + }, + }, + ], + ) + class ImportObjectsAPITests(TempdirMixin, OFVCRMixin, TestCase): """This test case requires the Objects & Objecttypes API and Open Zaak to be running. From 96147f7ece0afa67df2b7478520111413a0a172c Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Wed, 15 Jan 2025 12:08:45 +0100 Subject: [PATCH 07/10] :arrow_up: [#2177] Using formio-builder version 0.35.0 --- package-lock.json | 436 +++++++++++++++++++++++++++++++++++++++++----- package.json | 2 +- 2 files changed, 393 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index b4280f020c..a8ff5f5dda 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@fortawesome/fontawesome-free": "^6.1.1", "@open-formulieren/design-tokens": "^0.53.0", - "@open-formulieren/formio-builder": "^0.34.0", + "@open-formulieren/formio-builder": "^0.35.0", "@open-formulieren/leaflet-tools": "^1.0.0", "@open-formulieren/monaco-json-editor": "^0.2.0", "@tinymce/tinymce-react": "^4.3.2", @@ -4498,9 +4498,10 @@ "integrity": "sha512-3Pv32ULCuFOJZ2GaqcpvB45u6xScr0lmW5ETB9P1Ox9TG5nvMcVSwuwYe/GwxbzmvtZgiMQRMKRFT9lNYLeREQ==" }, "node_modules/@open-formulieren/formio-builder": { - "version": "0.34.0", - "resolved": "https://registry.npmjs.org/@open-formulieren/formio-builder/-/formio-builder-0.34.0.tgz", - "integrity": "sha512-inWjRzAdTCSfkeSQbtF5I9XA1EqfaAx1tLCAzZ+XRnrtfK2+/md0dp+dbKCsRwZUDDzzaojECtn5LGeIkubYRA==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@open-formulieren/formio-builder/-/formio-builder-0.35.0.tgz", + "integrity": "sha512-/qu3BgbqLnIE/YUpP7sjbI/p/xtZbMOLBNyFzUEdZbEM6st4a3vCC0A7xAb8uGFbl67qLOwunUN4Te0D6VsorA==", + "hasInstallScript": true, "license": "EUPL-1.2", "dependencies": { "@ckeditor/ckeditor5-react": "^6.2.0", @@ -4512,9 +4513,12 @@ "clsx": "^1.2.1", "formik": "^2.4.5", "leaflet": "^1.9.4", + "leaflet-draw": "^1.0.4", "lodash": "^4.17.21", + "patch-package": "^8.0.0", "react-intl": "^6.3.2", "react-leaflet": "^4.2.1", + "react-leaflet-draw": "^0.20.4", "react-modal": "^3.16.1", "react-select": "^5.8.0", "react-signature-canvas": "^1.0.6", @@ -6662,6 +6666,12 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "license": "BSD-2-Clause" + }, "node_modules/abab": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", @@ -6943,6 +6953,15 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, "node_modules/atoa": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/atoa/-/atoa-1.0.0.tgz", @@ -8150,7 +8169,6 @@ "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -9656,6 +9674,15 @@ "node": ">=8" } }, + "node_modules/find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", + "license": "Apache-2.0", + "dependencies": { + "micromatch": "^4.0.2" + } + }, "node_modules/flat-cache": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", @@ -9951,6 +9978,21 @@ "node": ">=0.10.0" } }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -10749,7 +10791,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, "bin": { "is-docker": "cli.js" }, @@ -10993,7 +11034,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "dependencies": { "is-docker": "^2.0.0" }, @@ -11009,8 +11049,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "node_modules/ismobilejs": { "version": "1.1.1", @@ -12981,7 +13020,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz", "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==", - "dev": true, "dependencies": { "jsonify": "^0.0.1" }, @@ -13010,7 +13048,6 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, "dependencies": { "universalify": "^2.0.0" }, @@ -13022,7 +13059,6 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", - "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -13055,6 +13091,15 @@ "node": ">=0.10.0" } }, + "node_modules/klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.11" + } + }, "node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -13078,6 +13123,12 @@ "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.4.tgz", "integrity": "sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==" }, + "node_modules/leaflet-draw": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/leaflet-draw/-/leaflet-draw-1.0.4.tgz", + "integrity": "sha512-rsQ6saQO5ST5Aj6XRFylr5zvarWgzWnrg46zQ1MEOEIHsppdC/8hnN8qMoFvACsPvTioAuysya/TVtog15tyAQ==", + "license": "MIT" + }, "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -13448,7 +13499,6 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -14116,6 +14166,15 @@ "node": ">=0.10.0" } }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/outvariant": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", @@ -14296,6 +14355,138 @@ "tslib": "^2.0.3" } }, + "node_modules/patch-package": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz", + "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==", + "license": "MIT", + "dependencies": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^4.1.2", + "ci-info": "^3.7.0", + "cross-spawn": "^7.0.3", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^9.0.0", + "json-stable-stringify": "^1.0.2", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.6", + "open": "^7.4.2", + "rimraf": "^2.6.3", + "semver": "^7.5.3", + "slash": "^2.0.0", + "tmp": "^0.0.33", + "yaml": "^2.2.2" + }, + "bin": { + "patch-package": "index.js" + }, + "engines": { + "node": ">=14", + "npm": ">5" + } + }, + "node_modules/patch-package/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/patch-package/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/patch-package/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/patch-package/node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/patch-package/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/patch-package/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/patch-package/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/patch-package/node_modules/yaml": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", + "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -14322,7 +14513,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -15426,6 +15616,23 @@ "react-dom": "^18.0.0" } }, + "node_modules/react-leaflet-draw": { + "version": "0.20.4", + "resolved": "https://registry.npmjs.org/react-leaflet-draw/-/react-leaflet-draw-0.20.4.tgz", + "integrity": "sha512-u5JHdow2Z9G2AveyUEOTWHXhdhzXdEVQifkNfSaVbEn0gvD+2xW03TQN444zVqovDBvIrBcVWo1VajL4zgl6yg==", + "license": "ISC", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "lodash-es": "^4.17.15" + }, + "peerDependencies": { + "leaflet": "^1.8.0", + "leaflet-draw": "^1.0.4", + "prop-types": "^15.5.2", + "react": "^18.0.0", + "react-leaflet": "^4.0.0" + } + }, "node_modules/react-lifecycles-compat": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", @@ -16153,7 +16360,6 @@ "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, "bin": { "semver": "bin/semver.js" }, @@ -16216,7 +16422,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -16228,7 +16433,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -16978,6 +17182,18 @@ "node": ">=14.0.0" } }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "license": "MIT", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -17212,7 +17428,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true, "engines": { "node": ">= 10.0.0" } @@ -17833,7 +18048,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -21310,9 +21524,9 @@ "integrity": "sha512-3Pv32ULCuFOJZ2GaqcpvB45u6xScr0lmW5ETB9P1Ox9TG5nvMcVSwuwYe/GwxbzmvtZgiMQRMKRFT9lNYLeREQ==" }, "@open-formulieren/formio-builder": { - "version": "0.34.0", - "resolved": "https://registry.npmjs.org/@open-formulieren/formio-builder/-/formio-builder-0.34.0.tgz", - "integrity": "sha512-inWjRzAdTCSfkeSQbtF5I9XA1EqfaAx1tLCAzZ+XRnrtfK2+/md0dp+dbKCsRwZUDDzzaojECtn5LGeIkubYRA==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@open-formulieren/formio-builder/-/formio-builder-0.35.0.tgz", + "integrity": "sha512-/qu3BgbqLnIE/YUpP7sjbI/p/xtZbMOLBNyFzUEdZbEM6st4a3vCC0A7xAb8uGFbl67qLOwunUN4Te0D6VsorA==", "requires": { "@ckeditor/ckeditor5-react": "^6.2.0", "@floating-ui/react": "^0.26.4", @@ -21323,9 +21537,12 @@ "clsx": "^1.2.1", "formik": "^2.4.5", "leaflet": "^1.9.4", + "leaflet-draw": "^1.0.4", "lodash": "^4.17.21", + "patch-package": "^8.0.0", "react-intl": "^6.3.2", "react-leaflet": "^4.2.1", + "react-leaflet-draw": "^0.20.4", "react-modal": "^3.16.1", "react-select": "^5.8.0", "react-signature-canvas": "^1.0.6", @@ -22858,6 +23075,11 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==" + }, "abab": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", @@ -23070,6 +23292,11 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, + "at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" + }, "atoa": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/atoa/-/atoa-1.0.0.tgz", @@ -23987,7 +24214,6 @@ "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -25148,6 +25374,14 @@ "path-exists": "^4.0.0" } }, + "find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", + "requires": { + "micromatch": "^4.0.2" + } + }, "flat-cache": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", @@ -25355,6 +25589,17 @@ "integrity": "sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg==", "dev": true }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, "fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -25910,8 +26155,7 @@ "is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" }, "is-extglob": { "version": "2.1.1", @@ -26068,7 +26312,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "requires": { "is-docker": "^2.0.0" } @@ -26081,8 +26324,7 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "ismobilejs": { "version": "1.1.1", @@ -27520,7 +27762,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.2.tgz", "integrity": "sha512-eunSSaEnxV12z+Z73y/j5N37/In40GK4GmsSy+tEHJMxknvqnA7/djeYtAgW0GsWHUfg+847WJjKaEylk2y09g==", - "dev": true, "requires": { "jsonify": "^0.0.1" } @@ -27540,7 +27781,6 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, "requires": { "graceful-fs": "^4.1.6", "universalify": "^2.0.0" @@ -27549,8 +27789,7 @@ "jsonify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", - "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", - "dev": true + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==" }, "jstimezonedetect": { "version": "1.0.7", @@ -27577,6 +27816,14 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, + "klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "requires": { + "graceful-fs": "^4.1.11" + } + }, "kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", @@ -27594,6 +27841,11 @@ "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.9.4.tgz", "integrity": "sha512-nxS1ynzJOmOlHp+iL3FyWqK89GtNL8U8rvlMOsQdTTssxZwCXh8N2NB3GDQOL+YR3XnWyZAxwQixURb+FA74PA==" }, + "leaflet-draw": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/leaflet-draw/-/leaflet-draw-1.0.4.tgz", + "integrity": "sha512-rsQ6saQO5ST5Aj6XRFylr5zvarWgzWnrg46zQ1MEOEIHsppdC/8hnN8qMoFvACsPvTioAuysya/TVtog15tyAQ==" + }, "leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", @@ -27890,8 +28142,7 @@ "minimist": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" }, "minipass": { "version": "3.1.6", @@ -28384,6 +28635,11 @@ "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "dev": true }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==" + }, "outvariant": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", @@ -28520,6 +28776,87 @@ "tslib": "^2.0.3" } }, + "patch-package": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz", + "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==", + "requires": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^4.1.2", + "ci-info": "^3.7.0", + "cross-spawn": "^7.0.3", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^9.0.0", + "json-stable-stringify": "^1.0.2", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.6", + "open": "^7.4.2", + "rimraf": "^2.6.3", + "semver": "^7.5.3", + "slash": "^2.0.0", + "tmp": "^0.0.33", + "yaml": "^2.2.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "yaml": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", + "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==" + } + } + }, "path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -28539,8 +28876,7 @@ "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, "path-parse": { "version": "1.0.7", @@ -29276,6 +29612,15 @@ "@react-leaflet/core": "^2.1.0" } }, + "react-leaflet-draw": { + "version": "0.20.4", + "resolved": "https://registry.npmjs.org/react-leaflet-draw/-/react-leaflet-draw-0.20.4.tgz", + "integrity": "sha512-u5JHdow2Z9G2AveyUEOTWHXhdhzXdEVQifkNfSaVbEn0gvD+2xW03TQN444zVqovDBvIrBcVWo1VajL4zgl6yg==", + "requires": { + "fast-deep-equal": "^3.1.3", + "lodash-es": "^4.17.15" + } + }, "react-lifecycles-compat": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", @@ -29801,8 +30146,7 @@ "semver": { "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==" }, "serialize-javascript": { "version": "5.0.1", @@ -29850,7 +30194,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "requires": { "shebang-regex": "^3.0.0" } @@ -29858,8 +30201,7 @@ "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "side-channel": { "version": "1.0.6", @@ -30425,6 +30767,14 @@ "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==" }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "requires": { + "os-tmpdir": "~1.0.2" + } + }, "tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", @@ -30609,8 +30959,7 @@ "universalify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" }, "unplugin": { "version": "1.16.0", @@ -31064,7 +31413,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "requires": { "isexe": "^2.0.0" } diff --git a/package.json b/package.json index 7cdb6ab7c0..bdd3f5227d 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "dependencies": { "@fortawesome/fontawesome-free": "^6.1.1", "@open-formulieren/design-tokens": "^0.53.0", - "@open-formulieren/formio-builder": "^0.34.0", + "@open-formulieren/formio-builder": "^0.35.0", "@open-formulieren/leaflet-tools": "^1.0.0", "@open-formulieren/monaco-json-editor": "^0.2.0", "@tinymce/tinymce-react": "^4.3.2", From b1392b70ec923dcc903425af3cf89c59117ac0f4 Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Wed, 15 Jan 2025 12:14:53 +0100 Subject: [PATCH 08/10] :globe_with_meridians: [#2177] Translations --- .../conf/locale/nl/LC_MESSAGES/django.po | 2126 +++++++++-------- 1 file changed, 1136 insertions(+), 990 deletions(-) diff --git a/src/openforms/conf/locale/nl/LC_MESSAGES/django.po b/src/openforms/conf/locale/nl/LC_MESSAGES/django.po index 0d39828818..ba1018ef84 100644 --- a/src/openforms/conf/locale/nl/LC_MESSAGES/django.po +++ b/src/openforms/conf/locale/nl/LC_MESSAGES/django.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Open Forms\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-12-31 09:24+0100\n" +"POT-Creation-Date: 2025-01-15 12:11+0100\n" "PO-Revision-Date: 2024-12-31 09:52+0100\n" "Last-Translator: Sergei Maertens \n" "Language-Team: Dutch \n" @@ -28,13 +28,12 @@ msgid "" "omit this header without losing functionality. We recommend favouring the " "nonce mechanism though." msgstr "" -"De waarde van de CSP-nonce gegenereerd door de pagina die de SDK " -"insluit/embed. Als deze meegestuurd wordt, dan worden velden met rich tekst " -"(uit \"WYSIWYG\" editors) verwerkt om inline-styles toe te laten met de " -"gegeven nonce. Indien de insluitende pagina een `style-src` policy heeft die" -" `unsafe-inline` bevat, dan kan je deze header weglaten zonder " -"functionaliteit te verliezen. We raden echter aan om het nonce-mechanisme te" -" gebruiken." +"De waarde van de CSP-nonce gegenereerd door de pagina die de SDK insluit/" +"embed. Als deze meegestuurd wordt, dan worden velden met rich tekst (uit " +"\"WYSIWYG\" editors) verwerkt om inline-styles toe te laten met de gegeven " +"nonce. Indien de insluitende pagina een `style-src` policy heeft die `unsafe-" +"inline` bevat, dan kan je deze header weglaten zonder functionaliteit te " +"verliezen. We raden echter aan om het nonce-mechanisme te gebruiken." #: openforms/accounts/admin.py:39 msgid "Groups" @@ -226,8 +225,8 @@ msgstr "Google Analytics code" msgid "" "Typically looks like 'UA-XXXXX-Y'. Supplying this installs Google Analytics." msgstr "" -"Heeft typisch het formaat 'UA-XXXXX-Y'. Schakelt Google Analytics in als een" -" waarde ingevuld is." +"Heeft typisch het formaat 'UA-XXXXX-Y'. Schakelt Google Analytics in als een " +"waarde ingevuld is." #: openforms/analytics_tools/models.py:123 msgid "enable google analytics" @@ -244,8 +243,7 @@ msgstr "Matomo server-URL" #: openforms/analytics_tools/models.py:134 msgid "The base URL of your Matomo server, e.g. 'https://matomo.example.com'." msgstr "" -"De basis-URL van uw Matomo server, bijvoorbeeld " -"'https://matomo.example.com'." +"De basis-URL van uw Matomo server, bijvoorbeeld 'https://matomo.example.com'." #: openforms/analytics_tools/models.py:138 msgid "Matomo site ID" @@ -294,8 +292,8 @@ msgstr "Piwik PRO server-URL" #: openforms/analytics_tools/models.py:176 msgid "" -"The base URL of your Piwik PRO server, e.g. 'https://your-instance-" -"name.piwik.pro'." +"The base URL of your Piwik PRO server, e.g. 'https://your-instance-name." +"piwik.pro'." msgstr "" "De basis-URL van uw Piwik PRO server, bijvoorbeeld 'https://your-instance-" "name.piwik.pro/'." @@ -306,8 +304,8 @@ msgstr "Piwik PRO site-ID" #: openforms/analytics_tools/models.py:184 msgid "" -"The 'idsite' of the website you're tracking in Piwik PRO. " -"https://help.piwik.pro/support/questions/find-website-id/" +"The 'idsite' of the website you're tracking in Piwik PRO. https://help.piwik." +"pro/support/questions/find-website-id/" msgstr "" "De 'idsite'-waarde van de website die je analyseert met Piwik PRO. Zie ook " "https://help.piwik.pro/support/questions/find-website-id/" @@ -335,12 +333,12 @@ msgstr "SiteImprove ID" #: openforms/analytics_tools/models.py:204 msgid "" "Your SiteImprove ID - you can find this from the embed snippet example, " -"which should contain a URL like " -"'//siteimproveanalytics.com/js/siteanalyze_XXXXX.js'. The XXXXX is your ID." +"which should contain a URL like '//siteimproveanalytics.com/js/" +"siteanalyze_XXXXX.js'. The XXXXX is your ID." msgstr "" "Uw SiteImprove ID - deze waarde kan je terugvinden in het embed-voorbeeld. " -"Deze bevat normaal een URL zoals " -"'//siteimproveanalytics.com/js/siteanalyze_XXXXX.js'. De XXXXX is uw ID." +"Deze bevat normaal een URL zoals '//siteimproveanalytics.com/js/" +"siteanalyze_XXXXX.js'. De XXXXX is uw ID." #: openforms/analytics_tools/models.py:210 msgid "enable siteImprove analytics" @@ -398,8 +396,8 @@ msgstr "GovMetric secure GUID (inzending voltooid)" #: openforms/analytics_tools/models.py:247 msgid "" -"Your GovMetric secure GUID for when a form is finished - This is an optional" -" value. It is created by KLANTINFOCUS when a list of questions is created. " +"Your GovMetric secure GUID for when a form is finished - This is an optional " +"value. It is created by KLANTINFOCUS when a list of questions is created. " "It is a string that is unique per set of questions." msgstr "" "Het GovMetric secure GUID voor voltooide inzendingen. Deze waarde is niet " @@ -428,8 +426,8 @@ msgid "" "The name of your organization as registered in Expoints. This is used to " "construct the URL to communicate with Expoints." msgstr "" -"De naam/het label van de organisatie zoals deze bij Expoints bekend is. Deze" -" waarde wordt gebruikt om de URL op te bouwen om met Expoints te verbinden." +"De naam/het label van de organisatie zoals deze bij Expoints bekend is. Deze " +"waarde wordt gebruikt om de URL op te bouwen om met Expoints te verbinden." #: openforms/analytics_tools/models.py:271 msgid "Expoints configuration identifier" @@ -440,8 +438,8 @@ msgid "" "The UUID used to retrieve the configuration from Expoints to initialize the " "client satisfaction survey." msgstr "" -"Het UUID van de configuratie in Expoints om het tevredenheidsonderzoek op te" -" halen." +"Het UUID van de configuratie in Expoints om het tevredenheidsonderzoek op te " +"halen." #: openforms/analytics_tools/models.py:279 msgid "use Expoints test mode" @@ -449,8 +447,8 @@ msgstr "gebruik Expoints testmode" #: openforms/analytics_tools/models.py:282 msgid "" -"Indicates whether or not the test mode should be enabled. If enabled, filled" -" out surveys won't actually be sent, to avoid cluttering Expoints while " +"Indicates whether or not the test mode should be enabled. If enabled, filled " +"out surveys won't actually be sent, to avoid cluttering Expoints while " "testing." msgstr "" "Indien aangevinkt, dan wordt de testmode van Expoints ingeschakeld. " @@ -501,8 +499,8 @@ msgstr "" #: openforms/analytics_tools/models.py:448 msgid "" -"If you enable GovMetric, you need to provide the source ID for all languages" -" (the same one can be reused)." +"If you enable GovMetric, you need to provide the source ID for all languages " +"(the same one can be reused)." msgstr "" "Wanneer je GovMetric inschakelt, dan moet je een source ID ingegeven voor " "elke taaloptie. Je kan hetzelfde ID hergebruiken voor meerdere talen." @@ -537,8 +535,8 @@ msgid "" "has passed, the session is expired and the user is 'logged out'. Note that " "every subsequent API call resets the expiry." msgstr "" -"Aantal seconden waarna een sessie verloopt. Na het verlopen van de sessie is" -" de gebruiker uitgelogd en kan zijn huidige inzending niet meer afmaken. " +"Aantal seconden waarna een sessie verloopt. Na het verlopen van de sessie is " +"de gebruiker uitgelogd en kan zijn huidige inzending niet meer afmaken. " "Opmerking: Bij elke interactie met de API wordt de sessie verlengd." #: openforms/api/drf_spectacular/hooks.py:29 @@ -550,8 +548,8 @@ msgid "" "If true, the user is allowed to navigate between submission steps even if " "previous submission steps have not been completed yet." msgstr "" -"Indien waar, dan mag de gebruiker vrij binnen de formulierstappen navigeren," -" ook als de vorige stappen nog niet voltooid zijn." +"Indien waar, dan mag de gebruiker vrij binnen de formulierstappen navigeren, " +"ook als de vorige stappen nog niet voltooid zijn." #: openforms/api/drf_spectacular/hooks.py:45 msgid "Language code of the currently activated language." @@ -581,6 +579,20 @@ msgstr "Het verzoek is begrepen en valide, maar kan niet verwerkt worden." msgid "Service is not available." msgstr "Service niet beschikbaar" +#: openforms/api/geojson.py:9 +msgid "Point" +msgstr "Pin/punt" + +#: openforms/api/geojson.py:10 +msgid "Polygon" +msgstr "Veelhoek (polygoon)" + +#: openforms/api/geojson.py:11 +#, fuzzy +#| msgid "String" +msgid "LineString" +msgstr "Lijn" + #: openforms/api/mixins.py:18 #, python-brace-format msgid "The '{param}' query parameter is required." @@ -650,12 +662,12 @@ msgstr "Ping de API" #: openforms/api/views/views.py:64 msgid "" -"Pinging the API extends the user session. Note that you must be a staff user" -" or have active submission(s) in your session." +"Pinging the API extends the user session. Note that you must be a staff user " +"or have active submission(s) in your session." msgstr "" -"Door de API te pingen wordt de sessie van de gebruiker verlengd. Merk op dat" -" je een actieve inzending in je sessie dient te hebben of ingelogd moet zijn" -" in de beheerinterface." +"Door de API te pingen wordt de sessie van de gebruiker verlengd. Merk op dat " +"je een actieve inzending in je sessie dient te hebben of ingelogd moet zijn " +"in de beheerinterface." #: openforms/appointments/admin.py:43 msgid "Please configure the plugin first" @@ -711,7 +723,7 @@ msgstr "Productcode" #: openforms/appointments/api/serializers.py:55 #: openforms/appointments/api/serializers.py:77 -#: openforms/config/models/csp.py:68 openforms/config/models/map.py:7 +#: openforms/config/models/csp.py:68 openforms/config/models/map.py:14 #: openforms/contrib/objects_api/models.py:21 #: openforms/registrations/contrib/zgw_apis/models.py:58 msgid "identifier" @@ -766,7 +778,7 @@ msgid "ID of the location" msgstr "Unieke sleutel van de locatie" #: openforms/appointments/api/serializers.py:79 -#: openforms/contrib/kadaster/api/serializers.py:39 +#: openforms/contrib/kadaster/api/serializers.py:40 msgid "Location name" msgstr "Locatienaam" @@ -904,8 +916,7 @@ msgstr "Het geselecteerde tijdstip is niet (langer) beschikbaar." msgid "ID of the product, repeat for multiple products." msgstr "Product-ID, herhaal deze parameter voor meerdere producten." -#: openforms/appointments/api/views.py:79 -#: openforms/products/api/viewsets.py:12 +#: openforms/appointments/api/views.py:79 openforms/products/api/viewsets.py:12 msgid "List available products" msgstr "Producten weergeven" @@ -983,8 +994,7 @@ msgid "Submission does not contain all the info needed to make an appointment" msgstr "" "Er ontbreken gegevens in de inzending om een afspraak te kunnen registreren." -#: openforms/appointments/constants.py:10 -#: openforms/submissions/constants.py:13 +#: openforms/appointments/constants.py:10 openforms/submissions/constants.py:13 msgid "Failed" msgstr "Mislukt" @@ -1068,9 +1078,9 @@ msgstr "Postcode" #: openforms/appointments/contrib/jcc/constants.py:76 #: openforms/dmn/api/serializers.py:50 openforms/dmn/api/serializers.py:70 #: openforms/plugins/api/serializers.py:9 -#: openforms/prefill/api/serializers.py:67 +#: openforms/prefill/api/serializers.py:69 #: openforms/registrations/api/serializers.py:30 -#: openforms/validations/api/serializers.py:63 +#: openforms/validations/api/serializers.py:64 msgid "ID" msgstr "ID" @@ -1116,13 +1126,13 @@ msgstr "Ongeldig antwoord: {exception}" #: openforms/contrib/kvk/checks.py:46 #: openforms/forms/api/serializers/logic/action_serializers.py:101 #: openforms/payments/contrib/ogone/plugin.py:221 -#: openforms/prefill/contrib/haalcentraal_brp/plugin.py:195 -#: openforms/prefill/contrib/kvk/plugin.py:133 -#: openforms/prefill/contrib/stufbg/plugin.py:243 +#: openforms/prefill/contrib/haalcentraal_brp/plugin.py:196 +#: openforms/prefill/contrib/kvk/plugin.py:134 +#: openforms/prefill/contrib/stufbg/plugin.py:244 #: openforms/prefill/contrib/suwinet/plugin.py:98 #: openforms/registrations/contrib/camunda/plugin.py:158 #: openforms/registrations/contrib/microsoft_graph/plugin.py:120 -#: openforms/registrations/contrib/stuf_zds/plugin.py:405 +#: openforms/registrations/contrib/stuf_zds/plugin.py:404 msgid "Configuration" msgstr "Configuratie" @@ -1401,8 +1411,8 @@ msgstr "ondersteunt betrouwbaarheidsniveau-overschrijven" #: openforms/authentication/api/serializers.py:29 msgid "" -"Does the Identity Provider support overriding the minimum Level of Assurance" -" (LoA) through the authentication request?" +"Does the Identity Provider support overriding the minimum Level of Assurance " +"(LoA) through the authentication request?" msgstr "" "Biedt de identity provider een mechanisme om het minimale " "betrouwbaarheidsniveau te specifiëren binnen een individueel " @@ -1453,8 +1463,7 @@ msgid "..." msgstr "..." #: openforms/authentication/api/serializers.py:67 -#: openforms/dmn/api/serializers.py:17 -#: openforms/payments/api/serializers.py:25 +#: openforms/dmn/api/serializers.py:17 openforms/payments/api/serializers.py:25 msgid "Identifier" msgstr "Unieke identificatie" @@ -1563,7 +1572,7 @@ msgstr "Opaak" #: openforms/authentication/constants.py:39 #: openforms/contrib/kvk/validators.py:117 -#: openforms/contrib/zgw/serializers.py:35 +#: openforms/contrib/zgw/serializers.py:36 msgid "RSIN" msgstr "RSIN" @@ -1594,8 +1603,8 @@ msgid "" "forms, please remove this backend from these forms before disabling this " "authentication backend." msgstr "" -"{plugin_identifier} wordt gebruikt in één of meerdere formulieren. Haal deze" -" plugin eerst uit de inlogopties voor je deze backend uitschakelt." +"{plugin_identifier} wordt gebruikt in één of meerdere formulieren. Haal deze " +"plugin eerst uit de inlogopties voor je deze backend uitschakelt." #: openforms/authentication/contrib/digid_eherkenning_oidc/apps.py:8 msgid "DigiD/eHerkenning via OpenID Connect" @@ -1659,8 +1668,8 @@ msgstr "eIDAS" #: openforms/authentication/contrib/eherkenning/views.py:44 msgid "" -"Login failed due to no KvK number/Pseudo ID being returned by " -"eHerkenning/eIDAS." +"Login failed due to no KvK number/Pseudo ID being returned by eHerkenning/" +"eIDAS." msgstr "" "Inloggen mislukt omdat er geen geldig KvK-nummer/Pseudo-ID terugkwam uit " "eHerkenning." @@ -1760,7 +1769,7 @@ msgstr "Authenticatiedetails" #: openforms/authentication/models.py:134 #: openforms/authentication/models.py:378 openforms/emails/constants.py:16 #: openforms/formio/api/serializers.py:33 -#: openforms/submissions/api/serializers.py:591 +#: openforms/submissions/api/serializers.py:593 msgid "Submission" msgstr "Inzending" @@ -1775,8 +1784,7 @@ msgstr "Betrouwbaarheidsniveau" #: openforms/authentication/models.py:150 msgid "" -"How certain is the identity provider that this identity belongs to this " -"user." +"How certain is the identity provider that this identity belongs to this user." msgstr "" "Indicatie van de mate van zekerheid over de identiteit van de gebruiker, " "afgegeven door de identity provider." @@ -1851,8 +1859,8 @@ msgstr "Mag inzendingen opvoeren voor klanten" msgid "You must be logged in to start this form." msgstr "Je moet ingelogd zijn om dit formulier te starten." -#: openforms/authentication/signals.py:87 -#: openforms/authentication/views.py:184 openforms/authentication/views.py:319 +#: openforms/authentication/signals.py:87 openforms/authentication/views.py:184 +#: openforms/authentication/views.py:319 msgid "Demo plugins require an active admin session." msgstr "Om demo-plugins te gebruiken moet je als beheerder ingelogd zijn." @@ -1922,8 +1930,7 @@ msgid "Authentication context data: branch number" msgstr "Authenticatiecontext: vestigingsnummer" #: openforms/authentication/static_variables/static_variables.py:210 -msgid "" -"Authentication context data: authorizee, acting subject identifier type" +msgid "Authentication context data: authorizee, acting subject identifier type" msgstr "" "Authenticatiecontext: gemachtigde, identificatiesoort van de handelende " "persoon" @@ -1937,21 +1944,21 @@ msgstr "" msgid "You successfully logged out." msgstr "U bent uitgelogd." -#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:15 +#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:8 #, python-format msgid "Logged in as employee %(name)s" msgstr "Ingelogd als medewerker %(name)s" -#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:23 +#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:16 msgid "" "When filling out a form for a client or company please enter additional " "information." msgstr "" -"Wanneer je een formulier invult voor een klant (burger of bedrijf), geef dan" -" extra informatie op." +"Wanneer je een formulier invult voor een klant (burger of bedrijf), geef dan " +"extra informatie op." -#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:43 -#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:53 +#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:36 +#: openforms/authentication/templates/of_authentication/registrator_subject_info.html:46 msgid "Continue" msgstr "Volgende" @@ -1963,7 +1970,8 @@ msgstr "Start het authenticatie proces" msgid "" "This endpoint is the internal redirect target to start external login flow.\n" "\n" -"Note that this is NOT a JSON 'endpoint', but rather the browser should be redirected to this URL and will in turn receive another redirect.\n" +"Note that this is NOT a JSON 'endpoint', but rather the browser should be " +"redirected to this URL and will in turn receive another redirect.\n" "\n" "Various validations are performed:\n" "* the form must be live\n" @@ -1972,9 +1980,11 @@ msgid "" "* the `next` parameter must be present\n" "* the `next` parameter must match the CORS policy" msgstr "" -"Dit endpoint is het doel van de interne redirect om het externe login proces te starten.\n" +"Dit endpoint is het doel van de interne redirect om het externe login proces " +"te starten.\n" "\n" -"Merk op dat dit GEEN typische JSON-endpoint betreft maar een endpoint waarnaar toe geredirect wordt en zelf ook een redirect teruggeeft.\n" +"Merk op dat dit GEEN typische JSON-endpoint betreft maar een endpoint " +"waarnaar toe geredirect wordt en zelf ook een redirect teruggeeft.\n" "\n" "Diverse validaties worden uitgevoerd:\n" "* het formulier is actief\n" @@ -1989,8 +1999,8 @@ msgstr "URL-deel dat het formulier identificeert." #: openforms/authentication/views.py:109 msgid "" -"Identifier of the authentication plugin. Note that this is validated against" -" the configured available plugins for this particular form." +"Identifier of the authentication plugin. Note that this is validated against " +"the configured available plugins for this particular form." msgstr "" "Unieke identificatie van de authenticatieplugin. Merk op dat deze waarde " "gevalideerd wordt met de beschikbare plugins voor dit formulier." @@ -2016,8 +2026,8 @@ msgid "" "URL of the external authentication service where the end-user will be " "redirected to. The value is specific to the selected authentication plugin." msgstr "" -"URL van de externe authenticatie service waar de gebruiker naar toe verwezen" -" wordt. Deze waarde is specifiek voor de geselecteerde authenticatieplugin" +"URL van de externe authenticatie service waar de gebruiker naar toe verwezen " +"wordt. Deze waarde is specifiek voor de geselecteerde authenticatieplugin" #: openforms/authentication/views.py:150 msgid "OK. A login page is rendered." @@ -2038,8 +2048,8 @@ msgid "" "Method not allowed. The authentication plugin requires `POST` or `GET`, and " "the wrong method was used." msgstr "" -"Methode niet toegestaan. De authenticatieplugin moet worden benaderd middels" -" een `POST` of `GET`." +"Methode niet toegestaan. De authenticatieplugin moet worden benaderd middels " +"een `POST` of `GET`." #: openforms/authentication/views.py:235 msgid "Return from external login flow" @@ -2047,9 +2057,12 @@ msgstr "Aanroeppunt van het externe login proces" #: openforms/authentication/views.py:237 msgid "" -"Authentication plugins call this endpoint in the return step of the authentication flow. Depending on the plugin, either `GET` or `POST` is allowed as HTTP method.\n" +"Authentication plugins call this endpoint in the return step of the " +"authentication flow. Depending on the plugin, either `GET` or `POST` is " +"allowed as HTTP method.\n" "\n" -"Typically authentication plugins will redirect again to the URL where the SDK is embedded.\n" +"Typically authentication plugins will redirect again to the URL where the " +"SDK is embedded.\n" "\n" "Various validations are performed:\n" "* the form must be live\n" @@ -2057,7 +2070,9 @@ msgid "" "* logging in is required on the form\n" "* the redirect target must match the CORS policy" msgstr "" -"Authenticatieplugins roepen dit endpoint aan zodra het externe login proces is afgerond. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan als HTTP-methode.\n" +"Authenticatieplugins roepen dit endpoint aan zodra het externe login proces " +"is afgerond. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan " +"als HTTP-methode.\n" "\n" "Authenticatieplugins zullen typisch een redirect uitvoeren naar de SDK.\n" "\n" @@ -2152,55 +2167,55 @@ msgstr "Gegevens schonen" msgid "Search engines" msgstr "Zoekmachines" -#: openforms/config/admin.py:164 +#: openforms/config/admin.py:165 msgid "Plugin configuration" msgstr "Pluginconfiguratie" -#: openforms/config/admin.py:166 openforms/emails/constants.py:10 +#: openforms/config/admin.py:174 openforms/emails/constants.py:10 #: openforms/submissions/admin.py:261 #: openforms/submissions/rendering/constants.py:11 msgid "Registration" msgstr "Registratie" -#: openforms/config/admin.py:176 +#: openforms/config/admin.py:184 msgid "Virus scan" msgstr "Virusscan" -#: openforms/config/admin.py:187 +#: openforms/config/admin.py:195 msgid "Payments" msgstr "Betalingen" -#: openforms/config/admin.py:193 +#: openforms/config/admin.py:201 msgid "Feature flags & fields for testing" msgstr "Feature flags, test- en ontwikkelinstellingen" -#: openforms/config/admin.py:202 +#: openforms/config/admin.py:211 msgid "feature flags" msgstr "feature flags" -#: openforms/config/admin.py:207 +#: openforms/config/admin.py:216 msgid "Manage" msgstr "Beheren" -#: openforms/config/admin.py:268 +#: openforms/config/admin.py:277 msgid "Content type" msgstr "inhoudstype" -#: openforms/config/admin.py:279 +#: openforms/config/admin.py:288 #: openforms/submissions/templates/report/submission_report.html:33 msgid "Logo" msgstr "Logo" -#: openforms/config/admin.py:281 +#: openforms/config/admin.py:290 msgid "Appearance" msgstr "Weergave" -#: openforms/config/admin.py:304 +#: openforms/config/admin.py:313 #: openforms/config/templates/admin/config/theme/preview.html:33 msgid "Preview" msgstr "Voorvertoning" -#: openforms/config/admin.py:307 +#: openforms/config/admin.py:316 msgid "Show preview" msgstr "Toon voorvertoning" @@ -2214,8 +2229,7 @@ msgid "" "to accept before submitting a form." msgstr "" "Eén enkel Form.io selectievakjecomponent voor de verklaring die een " -"gebruiker mogelijks moet accepteren voor het formulier ingestuurd kan " -"worden." +"gebruiker mogelijks moet accepteren voor het formulier ingestuurd kan worden." #: openforms/config/api/constants.py:19 msgid "Component type (checkbox)" @@ -2245,8 +2259,8 @@ msgid "" "The formatted label to use next to the checkbox when asking the user to " "agree to the privacy policy." msgstr "" -"Het opgemaakte label dat naast het selectievakje moet worden getoond wanneer" -" de gebruiker wordt gevraagd akkoord te gaan met het privacybeleid." +"Het opgemaakte label dat naast het selectievakje moet worden getoond wanneer " +"de gebruiker wordt gevraagd akkoord te gaan met het privacybeleid." #: openforms/config/api/views.py:16 msgid "Privacy policy info" @@ -2370,7 +2384,7 @@ msgstr "kleur" msgid "Color in RGB hex format (#RRGGBB)" msgstr "Kleur in RGB hex-formaat (#RRGGBB)" -#: openforms/config/models/color.py:15 openforms/config/models/map.py:23 +#: openforms/config/models/color.py:15 openforms/config/models/map.py:30 #: openforms/contrib/microsoft/models.py:11 #: openforms/contrib/zgw/api/serializers.py:23 #: openforms/dmn/api/serializers.py:53 openforms/dmn/api/serializers.py:73 @@ -2394,11 +2408,11 @@ msgstr "WYSIWYG-editor tekstkleuren" msgid "Example" msgstr "Voorbeeld" -#: openforms/config/models/config.py:54 +#: openforms/config/models/config.py:55 msgid "allowed email domain names" msgstr "toegestane e-maildomeinen" -#: openforms/config/models/config.py:56 +#: openforms/config/models/config.py:57 msgid "" "Provide a list of allowed domains (without 'https://www').Hyperlinks in a " "(confirmation) email are removed, unless the domain is provided here." @@ -2407,11 +2421,11 @@ msgstr "" "Hyperlinks in (bevestigings)e-mails worden verwijderd, tenzij het domein " "hier opgegeven is." -#: openforms/config/models/config.py:66 +#: openforms/config/models/config.py:67 msgid "submission confirmation title" msgstr "Paginatitel inzendingsbevestiging" -#: openforms/config/models/config.py:69 +#: openforms/config/models/config.py:70 msgid "" "The content of the confirmation page title. You can (and should) use the " "'public_reference' variable so the users have a reference in case they need " @@ -2422,44 +2436,43 @@ msgstr "" "zodat gebruikers een referentie hebben als ze de klantenservice moeten " "contacteren." -#: openforms/config/models/config.py:73 +#: openforms/config/models/config.py:74 msgid "Confirmation: {{ public_reference }}" msgstr "Bevestiging: {{ public_reference }}" -#: openforms/config/models/config.py:77 openforms/forms/models/form.py:145 +#: openforms/config/models/config.py:78 openforms/forms/models/form.py:145 msgid "submission confirmation template" msgstr "Bevestigingspagina tekst" -#: openforms/config/models/config.py:79 +#: openforms/config/models/config.py:80 msgid "" "The content of the submission confirmation page. It can contain variables " "that will be templated from the submitted form data." msgstr "" -"De inhoud van bevestigingspagina kan variabelen bevatten die op basis van de" -" ingediende formuliergegevens worden weergegeven. " +"De inhoud van bevestigingspagina kan variabelen bevatten die op basis van de " +"ingediende formuliergegevens worden weergegeven. " -#: openforms/config/models/config.py:82 +#: openforms/config/models/config.py:83 msgid "Thank you for submitting this form." msgstr "Wij hebben uw inzending ontvangen. " -#: openforms/config/models/config.py:86 +#: openforms/config/models/config.py:87 msgid "submission report download link title" msgstr "titel downloadlink inzendings-PDF" -#: openforms/config/models/config.py:88 +#: openforms/config/models/config.py:89 msgid "The title of the link to download the report of a submission." -msgstr "" -"Titel/tekst van de downloadlink om de inzending als PDF te downloaden." +msgstr "Titel/tekst van de downloadlink om de inzending als PDF te downloaden." -#: openforms/config/models/config.py:89 +#: openforms/config/models/config.py:90 msgid "Download PDF" msgstr "Download het document." -#: openforms/config/models/config.py:92 +#: openforms/config/models/config.py:93 msgid "cosign submission confirmation title" msgstr "Titel mede-ondertekenenbevestigingspagina" -#: openforms/config/models/config.py:95 +#: openforms/config/models/config.py:96 msgid "" "The content of the confirmation page title for submissions requiring " "cosigning." @@ -2467,15 +2480,15 @@ msgstr "" "De inhoud van de bevestigingspaginatitel wanneer de inzending mede-" "ondertekend moet worden." -#: openforms/config/models/config.py:98 +#: openforms/config/models/config.py:99 msgid "Request not complete yet" msgstr "Aanvraag niet compleet" -#: openforms/config/models/config.py:102 +#: openforms/config/models/config.py:103 msgid "cosign submission confirmation template" msgstr "Mede-ondertekenenbevestigingspagina tekst" -#: openforms/config/models/config.py:104 +#: openforms/config/models/config.py:105 msgid "" "The content of the submission confirmation page for submissions requiring " "cosigning. The variables 'public_reference' and 'cosigner_email' are " @@ -2488,13 +2501,13 @@ msgstr "" "gebruikers hiernaar kunnen verwijzen als ze de klantenservice moeten " "contacteren." -#: openforms/config/models/config.py:119 openforms/config/models/config.py:145 -#: openforms/config/models/config.py:203 openforms/emails/models.py:28 +#: openforms/config/models/config.py:120 openforms/config/models/config.py:146 +#: openforms/config/models/config.py:204 openforms/emails/models.py:28 #: openforms/registrations/contrib/email/models.py:54 msgid "subject" msgstr "onderwerp" -#: openforms/config/models/config.py:122 +#: openforms/config/models/config.py:123 msgid "" "Subject of the confirmation email message. Can be overridden on the form " "level" @@ -2502,15 +2515,15 @@ msgstr "" "Onderwerp van de bevestigingsmail. Bij het formulier kan een afwijkend " "onderwerp worden opgegeven." -#: openforms/config/models/config.py:128 openforms/config/models/config.py:152 -#: openforms/config/models/config.py:210 openforms/emails/models.py:35 +#: openforms/config/models/config.py:129 openforms/config/models/config.py:153 +#: openforms/config/models/config.py:211 openforms/emails/models.py:35 #: openforms/submissions/models/submission_files.py:58 #: openforms/submissions/models/submission_files.py:174 #: openforms/submissions/models/submission_report.py:21 msgid "content" msgstr "inhoud" -#: openforms/config/models/config.py:130 +#: openforms/config/models/config.py:131 msgid "" "Content of the confirmation email message. Can be overridden on the form " "level" @@ -2518,19 +2531,19 @@ msgstr "" "Inhoud van de bevestigingsmail. Bij het formulier kan een afwijkende inhoud " "worden opgegeven." -#: openforms/config/models/config.py:147 +#: openforms/config/models/config.py:148 msgid "Subject of the save form email message." msgstr "Onderwerp van de \"pauzeer\"-email" -#: openforms/config/models/config.py:153 +#: openforms/config/models/config.py:154 msgid "Content of the save form email message." msgstr "Inhoud van de \"pauzeer\"-email" -#: openforms/config/models/config.py:162 +#: openforms/config/models/config.py:163 msgid "co-sign request template" msgstr "mede-ondertekenenverzoeksjabloon" -#: openforms/config/models/config.py:164 +#: openforms/config/models/config.py:165 msgid "" "Content of the co-sign request email. The available template variables are: " "'form_name', 'submission_date', 'form_url' and 'code'." @@ -2539,23 +2552,23 @@ msgstr "" "sjabloonvariabelen zijn: 'form_name', 'submission_date', 'form_url' en " "'code'." -#: openforms/config/models/config.py:174 openforms/emails/models.py:53 +#: openforms/config/models/config.py:175 openforms/emails/models.py:53 msgid "cosign subject" msgstr "onderwerp bevestigingsmail met mede-ondertekenen" -#: openforms/config/models/config.py:177 +#: openforms/config/models/config.py:178 msgid "" "Subject of the confirmation email message when the form requires cosigning. " "Can be overridden on the form level." msgstr "" -"nderwerp van de bevestigingsmail voor formulieren met mede-ondertekenen. Bij" -" het formulier kan een afwijkend onderwerp worden opgegeven." +"nderwerp van de bevestigingsmail voor formulieren met mede-ondertekenen. Bij " +"het formulier kan een afwijkend onderwerp worden opgegeven." -#: openforms/config/models/config.py:184 openforms/emails/models.py:60 +#: openforms/config/models/config.py:185 openforms/emails/models.py:60 msgid "cosign content" msgstr "inhoud bevestigingsmail met mede-ondertekenen" -#: openforms/config/models/config.py:186 +#: openforms/config/models/config.py:187 msgid "" "Content of the confirmation email message when the form requires cosigning. " "Can be overridden on the form level." @@ -2563,157 +2576,153 @@ msgstr "" "Inhoud van de bevestigingsmail voor formulieren met mede-ondertekenen. Bij " "het formulier kan een afwijkende inhoud worden opgegeven." -#: openforms/config/models/config.py:205 +#: openforms/config/models/config.py:206 msgid "Subject of the email verification email." msgstr "Onderwerp van de \"e-mailverificatie\"-email." -#: openforms/config/models/config.py:211 +#: openforms/config/models/config.py:212 msgid "Content of the email verification email message." msgstr "Inhoud van de \"e-mailverificatie\"-email." -#: openforms/config/models/config.py:220 +#: openforms/config/models/config.py:221 msgid "allow empty initiator" msgstr "Lege initiator toestaan" -#: openforms/config/models/config.py:223 +#: openforms/config/models/config.py:224 msgid "" "When enabled and the submitter is not authenticated, a case is created " "without any initiator. Otherwise, a fake initiator is added with BSN " "111222333." msgstr "" -"Indien aangevinkt en de inzender is niet geauthenticeerd, dan wordt een zaak" -" aangemaakt zonder initiator. Indien uitgevinkt, dan zal een nep-initiator " +"Indien aangevinkt en de inzender is niet geauthenticeerd, dan wordt een zaak " +"aangemaakt zonder initiator. Indien uitgevinkt, dan zal een nep-initiator " "worden toegevoegd met BSN 111222333." -#: openforms/config/models/config.py:230 +#: openforms/config/models/config.py:231 msgid "back to form text" msgstr "\"terug naar formulier\"-tekst" -#: openforms/config/models/config.py:232 openforms/config/models/config.py:269 +#: openforms/config/models/config.py:233 openforms/config/models/config.py:270 msgid "Previous page" msgstr "Vorige stap" -#: openforms/config/models/config.py:234 +#: openforms/config/models/config.py:235 msgid "" "The text that will be displayed in the overview page to go to the previous " "step" msgstr "" "Het label van de knop op de overzichtspagina om naar de vorige stap te gaan." -#: openforms/config/models/config.py:239 openforms/forms/models/form.py:246 +#: openforms/config/models/config.py:240 openforms/forms/models/form.py:246 msgid "change text" msgstr "Stap wijzigen-label" -#: openforms/config/models/config.py:241 +#: openforms/config/models/config.py:242 msgid "Change" msgstr "Wijzigen" -#: openforms/config/models/config.py:243 +#: openforms/config/models/config.py:244 msgid "" -"The text that will be displayed in the overview page to change a certain " -"step" +"The text that will be displayed in the overview page to change a certain step" msgstr "" "Het label de link op de overzichtspagina om een bepaalde stap te wijzigen" -#: openforms/config/models/config.py:248 openforms/forms/models/form.py:256 +#: openforms/config/models/config.py:249 openforms/forms/models/form.py:256 msgid "confirm text" msgstr "Formulier verzenden-label" -#: openforms/config/models/config.py:250 +#: openforms/config/models/config.py:251 msgid "Confirm" msgstr "Verzenden" -#: openforms/config/models/config.py:252 +#: openforms/config/models/config.py:253 msgid "" "The text that will be displayed in the overview page to confirm the form is " "filled in correctly" msgstr "" "Het label van de knop op de overzichtspagina om het formulier in te dienen" -#: openforms/config/models/config.py:257 openforms/forms/models/form.py:226 +#: openforms/config/models/config.py:258 openforms/forms/models/form.py:226 msgid "begin text" msgstr "Formulier starten-label" -#: openforms/config/models/config.py:259 +#: openforms/config/models/config.py:260 msgid "Begin form" msgstr "Formulier starten" -#: openforms/config/models/config.py:261 +#: openforms/config/models/config.py:262 msgid "" "The text that will be displayed at the start of the form to indicate the " "user can begin to fill in the form" msgstr "Het label van de knop om het formulier te starten." -#: openforms/config/models/config.py:267 +#: openforms/config/models/config.py:268 msgid "previous step text" msgstr "\"vorige stap\"-tekst" -#: openforms/config/models/config.py:271 +#: openforms/config/models/config.py:272 msgid "" "The text that will be displayed in the form step to go to the previous step" msgstr "" "Het label van de knop om naar de vorige stap binnen het formulier te gaan" -#: openforms/config/models/config.py:275 -#: openforms/forms/models/form_step.py:48 +#: openforms/config/models/config.py:276 openforms/forms/models/form_step.py:48 msgid "step save text" msgstr "Opslaan-label" -#: openforms/config/models/config.py:277 +#: openforms/config/models/config.py:278 msgid "Save current information" msgstr "Tussentijds opslaan" -#: openforms/config/models/config.py:279 +#: openforms/config/models/config.py:280 msgid "" "The text that will be displayed in the form step to save the current " "information" msgstr "Het label van de knop om het formulier tussentijds op te slaan" -#: openforms/config/models/config.py:283 -#: openforms/forms/models/form_step.py:57 +#: openforms/config/models/config.py:284 openforms/forms/models/form_step.py:57 msgid "step next text" msgstr "Volgende stap-label" -#: openforms/config/models/config.py:285 +#: openforms/config/models/config.py:286 msgid "Next" msgstr "Volgende" -#: openforms/config/models/config.py:287 -msgid "" -"The text that will be displayed in the form step to go to the next step" +#: openforms/config/models/config.py:288 +msgid "The text that will be displayed in the form step to go to the next step" msgstr "" "Het label van de knop om naar de volgende stap binnen het formulier te gaan" -#: openforms/config/models/config.py:291 +#: openforms/config/models/config.py:292 msgid "Mark form fields 'required' by default" msgstr "Formulierenvelden zijn standaard 'verplicht'" -#: openforms/config/models/config.py:294 +#: openforms/config/models/config.py:295 msgid "" "Whether the checkbox 'required' on form fields should be checked by default." msgstr "" "Configureer of formuliervelden standaard 'verplicht' moeten zijn bij het " "ontwerpen van een formulier." -#: openforms/config/models/config.py:298 +#: openforms/config/models/config.py:299 msgid "Mark required fields with asterisks" msgstr "Markeer verplichte velden met een asterisk" -#: openforms/config/models/config.py:301 +#: openforms/config/models/config.py:302 msgid "" "If checked, required fields are marked with an asterisk and optional fields " -"are unmarked. If unchecked, optional fields will be marked with '(optional)'" -" and required fields are unmarked." +"are unmarked. If unchecked, optional fields will be marked with '(optional)' " +"and required fields are unmarked." msgstr "" -"Indien aangevinkt, dan zijn verplichte velden gemarkeerd met een asterisk en" -" optionele velden niet gemarkeerd. Indien uitgevinkt, dan zijn optionele " +"Indien aangevinkt, dan zijn verplichte velden gemarkeerd met een asterisk en " +"optionele velden niet gemarkeerd. Indien uitgevinkt, dan zijn optionele " "velden gemarkeerd met '(niet verplicht)' en verplichte velden ongemarkeerd." -#: openforms/config/models/config.py:308 +#: openforms/config/models/config.py:309 msgid "Default allowed file upload types" msgstr "Standaard-toegestane upload-bestandstypen" -#: openforms/config/models/config.py:310 +#: openforms/config/models/config.py:311 msgid "" "Provide a list of default allowed file upload types. If empty, all " "extensions are allowed." @@ -2721,41 +2730,41 @@ msgstr "" "Geef aan welke bestandstypen standaard toegestaan zijn. Indien deze waarde " "leeg is, dan zijn alle bestandstypen toegelaten." -#: openforms/config/models/config.py:316 +#: openforms/config/models/config.py:317 msgid "Hide non-applicable form steps" msgstr "Verberg formulierstappen die niet van toepassing zijn" -#: openforms/config/models/config.py:319 +#: openforms/config/models/config.py:320 msgid "" "If checked, form steps that become non-applicable as a result of user input " "are hidden from the progress indicator display (by default, they are " "displayed but marked as non-applicable.)" msgstr "" "Indien aangevinkt, dan worden stappen die (via logicaregels) niet van " -"toepassing zijn verborgen. Standaard zijn deze zichtbaar maar gemarkeerd als" -" n.v.t." +"toepassing zijn verborgen. Standaard zijn deze zichtbaar maar gemarkeerd als " +"n.v.t." -#: openforms/config/models/config.py:325 +#: openforms/config/models/config.py:326 msgid "The default zoom level for the leaflet map." msgstr "Standaard zoomniveau voor kaartmateriaal." -#: openforms/config/models/config.py:330 +#: openforms/config/models/config.py:331 msgid "The default latitude for the leaflet map." msgstr "" "Standaard latitude voor kaartmateriaal (in coördinatenstelsel EPSG:4326/WGS " "84)." -#: openforms/config/models/config.py:338 +#: openforms/config/models/config.py:339 msgid "The default longitude for the leaflet map." msgstr "" -"Standaard longitude voor kaartmateriaal (in coördinatenstelsel EPSG:4326/WGS" -" 84)." +"Standaard longitude voor kaartmateriaal (in coördinatenstelsel EPSG:4326/WGS " +"84)." -#: openforms/config/models/config.py:351 +#: openforms/config/models/config.py:352 msgid "default theme" msgstr "Standaardstijl" -#: openforms/config/models/config.py:353 +#: openforms/config/models/config.py:354 msgid "" "If no explicit theme is configured, the configured default theme will be " "used as a fallback." @@ -2763,33 +2772,33 @@ msgstr "" "Indien geen expliciete stijl ingesteld is, dan wordt de standaardstijl " "gebruikt." -#: openforms/config/models/config.py:359 +#: openforms/config/models/config.py:360 msgid "favicon" msgstr "favicon" -#: openforms/config/models/config.py:363 +#: openforms/config/models/config.py:364 msgid "" "Allow the uploading of a favicon, .png .jpg .svg and .ico are compatible." msgstr "" "Upload het favicon voor de applicatie. Enkel .png, .jpg, .svg en .ico " "bestanden zijn toegestaan." -#: openforms/config/models/config.py:367 +#: openforms/config/models/config.py:368 msgid "main website link" msgstr "hoofdsite link" -#: openforms/config/models/config.py:370 +#: openforms/config/models/config.py:371 msgid "" "URL to the main website. Used for the 'back to municipality website' link." msgstr "" -"URL naar de hoofdsite van de organisatie. Wordt gebruikt voor 'terug naar de" -" gemeente website' link." +"URL naar de hoofdsite van de organisatie. Wordt gebruikt voor 'terug naar de " +"gemeente website' link." -#: openforms/config/models/config.py:374 +#: openforms/config/models/config.py:375 msgid "organization name" msgstr "organisatienaam" -#: openforms/config/models/config.py:378 +#: openforms/config/models/config.py:379 msgid "" "The name of your organization that will be used as label for elements like " "the logo." @@ -2797,64 +2806,63 @@ msgstr "" "De naam van de organisatie/gemeente - dit wordt gebruikt in label bij " "elementen zoals het logo en de link terug naar de website." -#: openforms/config/models/config.py:385 +#: openforms/config/models/config.py:386 msgid "organization OIN" msgstr "organisatie-OIN" -#: openforms/config/models/config.py:388 +#: openforms/config/models/config.py:389 msgid "The OIN of the organization." msgstr "Het (door Logius toegekende) organisatie-identificatienummer (OIN)." -#: openforms/config/models/config.py:394 +#: openforms/config/models/config.py:395 msgid "admin session timeout" msgstr "beheersessie time-out" -#: openforms/config/models/config.py:398 +#: openforms/config/models/config.py:399 msgid "" "Amount of time in minutes the admin can be inactive for before being logged " "out" msgstr "Tijd in minuten voordat de sessie van een beheerder verloopt." -#: openforms/config/models/config.py:402 +#: openforms/config/models/config.py:403 msgid "form session timeout" msgstr "formuliersessie time-out" -#: openforms/config/models/config.py:409 +#: openforms/config/models/config.py:410 #, python-format msgid "" "Due to DigiD requirements this value has to be less than or equal to " "%(limit_value)s minutes." msgstr "" -"Om veiligheidsredenen mag de waarde niet groter zijn %(limit_value)s " -"minuten." +"Om veiligheidsredenen mag de waarde niet groter zijn %(limit_value)s minuten." -#: openforms/config/models/config.py:414 +#: openforms/config/models/config.py:415 msgid "" "Amount of time in minutes a user filling in a form can be inactive for " "before being logged out" msgstr "Tijd in minuten voordat de sessie van een gebruiker verloopt." -#: openforms/config/models/config.py:420 +#: openforms/config/models/config.py:421 msgid "Payment Order ID template" msgstr "Betaling: bestellingsnummersjabloon" -#: openforms/config/models/config.py:425 +#: openforms/config/models/config.py:426 #, python-brace-format msgid "" "Template to use when generating payment order IDs. It should be alpha-" -"numerical and can contain the '/._-' characters. You can use the placeholder" -" tokens: {year}, {public_reference}, {uid}." +"numerical and can contain the '/._-' characters. You can use the placeholder " +"tokens: {year}, {public_reference}, {uid}." msgstr "" "Sjabloon voor de generatie van unieke betalingsreferenties. Het sjabloon " "moet alfanumeriek zijn en mag de karakters '/._-' bevatten. De placeholder " "tokens {year}, {public_reference} en {uid} zijn beschikbaar. Het sjabloon " "moet de placeholder {uid} bevatten." -#: openforms/config/models/config.py:433 openforms/forms/models/form.py:205 +#: openforms/config/models/config.py:434 openforms/forms/models/form.py:205 msgid "ask privacy consent" msgstr "vraag toestemming om gegevens te verwerken" -#: openforms/config/models/config.py:436 openforms/forms/models/form.py:210 +#: openforms/config/models/config.py:437 openforms/forms/models/form.py:210 msgid "" "If enabled, the user will have to agree to the privacy policy before " "submitting a form." @@ -2862,19 +2870,19 @@ msgstr "" "Indien ingeschakeld, moet de gebruiker akkoord gaan met het privacybeleid " "voordat hij een formulier indient." -#: openforms/config/models/config.py:440 +#: openforms/config/models/config.py:441 msgid "privacy policy URL" msgstr "Privacybeleid URL" -#: openforms/config/models/config.py:440 +#: openforms/config/models/config.py:441 msgid "URL to the privacy policy" msgstr "URL naar het privacybeleid op uw eigen website" -#: openforms/config/models/config.py:443 +#: openforms/config/models/config.py:444 msgid "privacy policy label" msgstr "Privacybeleid label" -#: openforms/config/models/config.py:446 +#: openforms/config/models/config.py:447 msgid "" "The label of the checkbox that prompts the user to agree to the privacy " "policy." @@ -2882,19 +2890,19 @@ msgstr "" "Het label van het selectievakje dat de gebruiker vraagt om akkoord te gaan " "met het privacybeleid. " -#: openforms/config/models/config.py:450 +#: openforms/config/models/config.py:451 msgid "" "Yes, I have read the {% privacy_policy %} and explicitly agree to the " "processing of my submitted information." msgstr "" -"Ja, ik heb kennis genomen van het {% privacy_policy %} en geef uitdrukkelijk" -" toestemming voor het verwerken van de door mij opgegeven gegevens." +"Ja, ik heb kennis genomen van het {% privacy_policy %} en geef uitdrukkelijk " +"toestemming voor het verwerken van de door mij opgegeven gegevens." -#: openforms/config/models/config.py:466 openforms/forms/models/form.py:214 +#: openforms/config/models/config.py:467 openforms/forms/models/form.py:214 msgid "ask statement of truth" msgstr "vraag waarheidsverklaring" -#: openforms/config/models/config.py:469 openforms/forms/models/form.py:219 +#: openforms/config/models/config.py:470 openforms/forms/models/form.py:219 msgid "" "If enabled, the user will have to agree that they filled out the form " "truthfully before submitting it." @@ -2902,11 +2910,11 @@ msgstr "" "Indien verplicht dient de gebruiker de verklaring naar waarheid te " "accepteren voor die het formulier indient." -#: openforms/config/models/config.py:474 +#: openforms/config/models/config.py:475 msgid "statement of truth label" msgstr "waarheidsverklaringtekst" -#: openforms/config/models/config.py:477 +#: openforms/config/models/config.py:478 msgid "" "The label of the checkbox that prompts the user to agree that they filled " "out the form truthfully. Note that this field does not have templating " @@ -2915,7 +2923,7 @@ msgstr "" "Het label van het selectievakje dat de gebruiker vraagt om akkoord te gaan " "met de waarheidsverklaring. Merk op dat dit veld geen sjablonen ondersteunt." -#: openforms/config/models/config.py:483 +#: openforms/config/models/config.py:484 msgid "" "I declare that I have filled out the form truthfully and have not omitted " "any information." @@ -2923,75 +2931,75 @@ msgstr "" "Ik verklaar dat ik deze aanvraag naar waarheid heb ingevuld en geen " "informatie heb verzwegen." -#: openforms/config/models/config.py:491 openforms/forms/models/form.py:310 +#: openforms/config/models/config.py:492 openforms/forms/models/form.py:310 msgid "successful submission removal limit" msgstr "bewaartermijn voor voltooide inzendingen." -#: openforms/config/models/config.py:495 +#: openforms/config/models/config.py:496 msgid "Amount of days successful submissions will remain before being removed" msgstr "Aantal dagen dat een voltooide inzending bewaard blijft." -#: openforms/config/models/config.py:499 openforms/forms/models/form.py:320 +#: openforms/config/models/config.py:500 openforms/forms/models/form.py:320 msgid "successful submissions removal method" msgstr "opschoonmethode voor voltooide inzendingen" -#: openforms/config/models/config.py:503 +#: openforms/config/models/config.py:504 msgid "How successful submissions will be removed after the limit" msgstr "" "Geeft aan hoe voltooide inzendingen worden opgeschoond na de bewaartermijn." -#: openforms/config/models/config.py:506 openforms/forms/models/form.py:330 +#: openforms/config/models/config.py:507 openforms/forms/models/form.py:330 msgid "incomplete submission removal limit" msgstr "bewaartermijn voor sessies" -#: openforms/config/models/config.py:510 +#: openforms/config/models/config.py:511 msgid "Amount of days incomplete submissions will remain before being removed" msgstr "Aantal dagen dat een sessie bewaard blijft." -#: openforms/config/models/config.py:514 openforms/forms/models/form.py:340 +#: openforms/config/models/config.py:515 openforms/forms/models/form.py:340 msgid "incomplete submissions removal method" msgstr "opschoonmethode voor sessies." -#: openforms/config/models/config.py:518 +#: openforms/config/models/config.py:519 msgid "How incomplete submissions will be removed after the limit" msgstr "Geeft aan hoe sessies worden opgeschoond na de bewaartermijn." -#: openforms/config/models/config.py:521 openforms/forms/models/form.py:350 +#: openforms/config/models/config.py:522 openforms/forms/models/form.py:350 #: openforms/forms/models/form.py:360 msgid "errored submission removal limit" msgstr "bewaartermijn voor niet voltooide inzendingen inzendingen" -#: openforms/config/models/config.py:525 +#: openforms/config/models/config.py:526 msgid "Amount of days errored submissions will remain before being removed" msgstr "" "Aantal dagen dat een niet voltooide inzendingen (door fouten in de " "afhandeling) bewaard blijft." -#: openforms/config/models/config.py:529 +#: openforms/config/models/config.py:530 msgid "errored submissions removal method" msgstr "opschoonmethode voor niet voltooide inzendingen" -#: openforms/config/models/config.py:533 +#: openforms/config/models/config.py:534 msgid "How errored submissions will be removed after the" msgstr "" "Geeft aan hoe niet voltooide inzendingen (door fouten in de afhandeling) " "worden opgeschoond na de bewaartermijn." -#: openforms/config/models/config.py:536 openforms/forms/models/form.py:370 +#: openforms/config/models/config.py:537 openforms/forms/models/form.py:370 msgid "all submissions removal limit" msgstr "bewaartermijn van inzendingen" -#: openforms/config/models/config.py:539 +#: openforms/config/models/config.py:540 msgid "Amount of days when all submissions will be permanently deleted" msgstr "" "Aantal dagen dat een inzending bewaard blijft voordat deze definitief " "verwijderd wordt." -#: openforms/config/models/config.py:543 +#: openforms/config/models/config.py:544 msgid "default registration backend attempt limit" msgstr "limiet aantal registratiepogingen" -#: openforms/config/models/config.py:547 +#: openforms/config/models/config.py:548 msgid "" "How often we attempt to register the submission at the registration backend " "before giving up" @@ -2999,11 +3007,11 @@ msgstr "" "Stel in hoe vaak het systeem een inzending probeert af te leveren bij de " "registratie-backend voor er opgegeven wordt." -#: openforms/config/models/config.py:552 +#: openforms/config/models/config.py:553 msgid "plugin configuration" msgstr "pluginconfiguratie" -#: openforms/config/models/config.py:556 +#: openforms/config/models/config.py:557 msgid "" "Configuration of plugins for authentication, payments, prefill, " "registrations and validation" @@ -3011,11 +3019,22 @@ msgstr "" "Configuratie van plugins voor authenticatie, betaalproviders, prefill, " "registraties en validaties." -#: openforms/config/models/config.py:563 +#: openforms/config/models/config.py:564 +msgid "referentielijsten services" +msgstr "" + +#: openforms/config/models/config.py:566 +msgid "" +"List of services that are instances of the Referentielijsten API. The " +"selected services will be shown as options when configuring select or " +"selectboxes components to be populated from Referentielijsten." +msgstr "" + +#: openforms/config/models/config.py:575 msgid "Allow form page indexing" msgstr "Laat indexeren van formulierpagina's toe" -#: openforms/config/models/config.py:566 +#: openforms/config/models/config.py:578 msgid "" "Whether form detail pages may be indexed and displayed in search engine " "result lists. Disable this to prevent listing." @@ -3023,11 +3042,11 @@ msgstr "" "Geeft aan of formulierpagina's geïndexeerd én getoond mogen worden in de " "resultaten van zoekmachines. Schakel dit uit om weergave te voorkomen." -#: openforms/config/models/config.py:572 +#: openforms/config/models/config.py:584 msgid "Enable virus scan" msgstr "Virusscan inschakelen" -#: openforms/config/models/config.py:575 +#: openforms/config/models/config.py:587 msgid "" "Whether the files uploaded by the users should be scanned by ClamAV virus " "scanner.In case a file is found to be infected, the file is deleted." @@ -3035,35 +3054,35 @@ msgstr "" "Indien aangevinkt, dan worden uploads van eindgebruikers op virussen " "gescand. Geïnfecteerde bestanden worden meteen verwijdered en geblokkeerd." -#: openforms/config/models/config.py:580 +#: openforms/config/models/config.py:592 msgid "ClamAV server hostname" msgstr "ClamAV server hostname" -#: openforms/config/models/config.py:582 +#: openforms/config/models/config.py:594 msgid "Hostname or IP address where ClamAV is running." msgstr "Hostname of IP-adres waarop de ClamAV service bereikbaar is." -#: openforms/config/models/config.py:587 +#: openforms/config/models/config.py:599 msgid "ClamAV port number" msgstr "ClamAV poortnummer" -#: openforms/config/models/config.py:588 +#: openforms/config/models/config.py:600 msgid "The TCP port on which ClamAV is listening." msgstr "Poortnummer (TCP) waarop de ClamAV service luistert." -#: openforms/config/models/config.py:596 +#: openforms/config/models/config.py:608 msgid "ClamAV socket timeout" msgstr "ClamAV-connectie timeout" -#: openforms/config/models/config.py:597 +#: openforms/config/models/config.py:609 msgid "ClamAV socket timeout expressed in seconds (optional)." msgstr "ClamAV socket timeout, in seconden." -#: openforms/config/models/config.py:605 +#: openforms/config/models/config.py:617 msgid "recipients email digest" msgstr "ontvangers (probleem)rapportage" -#: openforms/config/models/config.py:607 +#: openforms/config/models/config.py:619 msgid "" "The email addresses that should receive a daily report of items requiring " "attention." @@ -3071,27 +3090,27 @@ msgstr "" "Geef de e-mailaddressen op van beheerders die een dagelijkse rapportage " "dienen te ontvangen van eventuele problemen die actie vereisen." -#: openforms/config/models/config.py:613 +#: openforms/config/models/config.py:625 msgid "wait for payment to register" msgstr "wacht tot betalingen voltoooid zijn om inzendingen te verwerken" -#: openforms/config/models/config.py:615 +#: openforms/config/models/config.py:627 msgid "" "Should a submission be processed (sent to the registration backend) only " "after payment has been received?" msgstr "Mag een inzending pas verwerkt worden nadat de betaling ontvangen is?" -#: openforms/config/models/config.py:623 +#: openforms/config/models/config.py:635 msgid "General configuration" msgstr "Algemene configuratie" -#: openforms/config/models/config.py:649 +#: openforms/config/models/config.py:661 msgid "ClamAV host and port need to be configured if virus scan is enabled." msgstr "" "De ClamAV host en poortnummer moeten ingesteld zijn om virusscannen in te " "schakelen." -#: openforms/config/models/config.py:660 +#: openforms/config/models/config.py:672 #, python-format msgid "Cannot connect to ClamAV: %(error)s" msgstr "Kon niet verbinden met de antivirus-service: %(error)s" @@ -3124,38 +3143,38 @@ msgstr "content type" msgid "object id" msgstr "object-ID" -#: openforms/config/models/map.py:10 +#: openforms/config/models/map.py:17 msgid "A unique identifier for the tile layer." msgstr "Unieke identificatie voor de achtergrondlaag." -#: openforms/config/models/map.py:13 +#: openforms/config/models/map.py:20 msgid "tile layer url" msgstr "achtergrondlaag-URL" -#: openforms/config/models/map.py:16 +#: openforms/config/models/map.py:23 #, python-brace-format msgid "" -"URL to the tile layer image, used to define the map component background. To" -" ensure correct functionality of the map, EPSG 28992 projection should be " -"used. Example value: " -"https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0/standaard/EPSG:28992/{z}/{x}/{y}.png" +"URL to the tile layer image, used to define the map component background. To " +"ensure correct functionality of the map, EPSG 28992 projection should be " +"used. Example value: https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0/" +"standaard/EPSG:28992/{z}/{x}/{y}.png" msgstr "" -"URL naar de tegels van de achtergrondlaag van de kaart. Om de juiste werking" -" te garanderen moet de laag de EPSG:28992-projectie gebruiken. Bijvoorbeeld:" -" " -"https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0/standaard/EPSG:28992/{z}/{x}/{y}.png" +"URL naar de tegels van de achtergrondlaag van de kaart. Om de juiste werking " +"te garanderen moet de laag de EPSG:28992-projectie gebruiken. Bijvoorbeeld: " +"https://service.pdok.nl/brt/achtergrondkaart/wmts/v2_0/standaard/EPSG:28992/" +"{z}/{x}/{y}.png" -#: openforms/config/models/map.py:26 +#: openforms/config/models/map.py:33 msgid "An easily recognizable name for the tile layer, used to identify it." msgstr "" "Een herkenbare naam voor de achtergrondlaag zodat je deze kan selecteren in " "keuzemenu's." -#: openforms/config/models/map.py:31 +#: openforms/config/models/map.py:40 msgid "map tile layer" msgstr "kaartachtergrondlaag" -#: openforms/config/models/map.py:32 +#: openforms/config/models/map.py:41 msgid "map tile layers" msgstr "kaartachtergrondlagen" @@ -3167,8 +3186,7 @@ msgstr "Een herkenbare naam om deze stijl te identificeren." #: openforms/forms/models/form.py:58 openforms/forms/models/form.py:684 #: openforms/forms/models/form_definition.py:39 #: openforms/forms/models/form_step.py:24 -#: openforms/forms/models/form_version.py:44 -#: openforms/forms/models/logic.py:11 +#: openforms/forms/models/form_version.py:44 openforms/forms/models/logic.py:11 #: openforms/forms/models/pricing_logic.py:22 openforms/payments/models.py:96 #: openforms/products/models/product.py:19 #: openforms/submissions/models/submission.py:111 @@ -3199,8 +3217,8 @@ msgid "" "Upload the email logo, visible to users who receive an email. We advise " "dimensions around 150px by 75px. SVG's are not permitted." msgstr "" -"Upload het logo van de gemeente dat zichtbaar is in e-mails. We adviseren de" -" dimensies van 150 x 75 pixels. SVG-bestanden zijn niet toegestaan." +"Upload het logo van de gemeente dat zichtbaar is in e-mails. We adviseren de " +"dimensies van 150 x 75 pixels. SVG-bestanden zijn niet toegestaan." #: openforms/config/models/theme.py:64 msgid "theme CSS class name" @@ -3209,8 +3227,7 @@ msgstr "Thema CSS class name" #: openforms/config/models/theme.py:66 msgid "If provided, this class name will be set on the element." msgstr "" -"Indien ingevuld, dan wordt deze class name aan het element " -"toegevoegd." +"Indien ingevuld, dan wordt deze class name aan het element toegevoegd." #: openforms/config/models/theme.py:69 msgid "theme stylesheet URL" @@ -3225,14 +3242,14 @@ msgid "" "The URL stylesheet with theme-specific rules for your organization. This " "will be included as final stylesheet, overriding previously defined styles. " "Note that you also have to include the host to the `style-src` CSP " -"directive. Example value: https://unpkg.com/@utrecht/design-" -"tokens@1.0.0-alpha.20/dist/index.css." +"directive. Example value: https://unpkg.com/@utrecht/design-tokens@1.0.0-" +"alpha.20/dist/index.css." msgstr "" -"URL naar de stylesheet met thema-specifieke regels voor uw organisatie. Deze" -" stylesheet wordt als laatste ingeladen, waarbij eerdere stijlregels dus " +"URL naar de stylesheet met thema-specifieke regels voor uw organisatie. Deze " +"stylesheet wordt als laatste ingeladen, waarbij eerdere stijlregels dus " "overschreven worden. Vergeet niet dat u ook de host van deze URL aan de " -"`style-src` CSP configuratie moet toevoegen. Voorbeeldwaarde: " -"https://unpkg.com/@utrecht/design-tokens@1.0.0-alpha.20/dist/index.css." +"`style-src` CSP configuratie moet toevoegen. Voorbeeldwaarde: https://unpkg." +"com/@utrecht/design-tokens@1.0.0-alpha.20/dist/index.css." #: openforms/config/models/theme.py:86 msgid "theme stylesheet" @@ -3258,15 +3275,15 @@ msgstr "design token waarden" msgid "" "Values of various style parameters, such as border radii, background " "colors... Note that this is advanced usage. Any available but un-specified " -"values will use fallback default values. See https://open-" -"forms.readthedocs.io/en/latest/installation/form_hosting.html#run-time-" -"configuration for documentation." +"values will use fallback default values. See https://open-forms.readthedocs." +"io/en/latest/installation/form_hosting.html#run-time-configuration for " +"documentation." msgstr "" -"Waarden met diverse stijl parameters, zoals randen, achtergrondkleuren, etc." -" Dit is voor geavanceerde gebruikers. Attributen die niet zijn opgegeven " -"vallen terug op standaardwaarden. Zie https://open-" -"forms.readthedocs.io/en/latest/installation/form_hosting.html#run-time-" -"configuration voor documentatie." +"Waarden met diverse stijl parameters, zoals randen, achtergrondkleuren, etc. " +"Dit is voor geavanceerde gebruikers. Attributen die niet zijn opgegeven " +"vallen terug op standaardwaarden. Zie https://open-forms.readthedocs.io/en/" +"latest/installation/form_hosting.html#run-time-configuration voor " +"documentatie." #: openforms/config/models/theme.py:127 #: openforms/forms/api/serializers/form.py:156 @@ -3281,7 +3298,7 @@ msgstr "stijlen" #: openforms/config/templates/admin/config/theme/preview.html:13 #: openforms/forms/templates/admin/forms/form/export.html:12 #: openforms/forms/templates/admin/forms/form/import_form.html:13 -#: openforms/forms/templates/admin/forms/formstatistics/export_form.html:19 +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/export_form.html:19 msgid "Home" msgstr "Thuis" @@ -3335,11 +3352,10 @@ msgstr "Medeondertekening nodig" #: openforms/config/templates/config/default_cosign_submission_confirmation.html:8 msgid "" -"You can start the cosigning process immediately by clicking the button " -"below." +"You can start the cosigning process immediately by clicking the button below." msgstr "" -"Je kan het mede-ondertekenen meteen starten door de onderstaande knop aan te" -" klikken." +"Je kan het mede-ondertekenen meteen starten door de onderstaande knop aan te " +"klikken." #: openforms/config/templates/config/default_cosign_submission_confirmation.html:9 #: openforms/submissions/templatetags/cosign.py:17 @@ -3353,14 +3369,14 @@ msgstr "Alternatieve instructies" #: openforms/config/templates/config/default_cosign_submission_confirmation.html:12 #, python-format msgid "" -"We've sent an email with a cosign request to %(tt_openvariable)s cosigner_email " "%(tt_closevariable)s. Once the submission has been cosigned we will " "start processing your request." msgstr "" -"Wij hebben een e-mail gestuurd voor medeondertekening naar %(tt_openvariable)s cosigner_email " "%(tt_closevariable)s. Als deze ondertekend is, nemen wij je aanvraag in " "behandeling." @@ -3466,8 +3482,8 @@ msgstr "standaardwaarde BRP Personen doelbinding-header" #: openforms/contrib/haal_centraal/models.py:50 msgid "" "The default purpose limitation (\"doelbinding\") for queries to the BRP " -"Persoon API. If a more specific value is configured on a form, that value is" -" used instead." +"Persoon API. If a more specific value is configured on a form, that value is " +"used instead." msgstr "" "De standaard \"doelbinding\" voor BRP Personen bevragingen. Mogelijke " "waarden hiervoor zijn afhankelijk van je gateway-leverancier en/of eigen " @@ -3481,13 +3497,12 @@ msgstr "standaardwaarde BRP Personen verwerking-header" #: openforms/contrib/haal_centraal/models.py:60 msgid "" "The default processing (\"verwerking\") for queries to the BRP Persoon API. " -"If a more specific value is configured on a form, that value is used " -"instead." +"If a more specific value is configured on a form, that value is used instead." msgstr "" -"De standaard \"verwerking\" voor BRP Personen bevragingen. Mogelijke waarden" -" hiervoor zijn afhankelijk van je gateway-leverancier. Je kan deze ook op " -"formulierniveau opgeven en dan overschrijft de formulierspecifieke waarde de" -" standaardwaarde." +"De standaard \"verwerking\" voor BRP Personen bevragingen. Mogelijke waarden " +"hiervoor zijn afhankelijk van je gateway-leverancier. Je kan deze ook op " +"formulierniveau opgeven en dan overschrijft de formulierspecifieke waarde de " +"standaardwaarde." #: openforms/contrib/haal_centraal/models.py:80 msgid "Form" @@ -3501,8 +3516,8 @@ msgstr "BRP Personen doelbinding-header" msgid "" "The purpose limitation (\"doelbinding\") for queries to the BRP Persoon API." msgstr "" -"De \"doelbinding\" voor BRP Personen bevragingen. Mogelijke waarden hiervoor" -" zijn afhankelijk van je gateway-leverancier en/of eigen organisatie-" +"De \"doelbinding\" voor BRP Personen bevragingen. Mogelijke waarden hiervoor " +"zijn afhankelijk van je gateway-leverancier en/of eigen organisatie-" "instellingen." #: openforms/contrib/haal_centraal/models.py:93 @@ -3547,7 +3562,7 @@ msgid "House number to use in search" msgstr "Huisnummer om naar te zoeken" #: openforms/contrib/kadaster/api/serializers.py:18 -#: openforms/formio/components/custom.py:411 +#: openforms/formio/components/custom.py:413 msgid "street name" msgstr "straatnaam" @@ -3556,7 +3571,7 @@ msgid "Found street name" msgstr "Gevonden straatnaam" #: openforms/contrib/kadaster/api/serializers.py:20 -#: openforms/formio/components/custom.py:417 +#: openforms/formio/components/custom.py:419 msgid "city" msgstr "stad" @@ -3565,64 +3580,62 @@ msgid "Found city" msgstr "Gevonden stad" #: openforms/contrib/kadaster/api/serializers.py:22 -#: openforms/formio/components/custom.py:423 +#: openforms/formio/components/custom.py:425 msgid "city and street name secret" msgstr "gedeeld geheim straatnaam en stad" #: openforms/contrib/kadaster/api/serializers.py:23 -#: openforms/formio/components/custom.py:424 +#: openforms/formio/components/custom.py:426 msgid "Secret for the combination of city and street name" msgstr "Gedeeld geheim voor de combinatie van stad en straatnaam" -#: openforms/contrib/kadaster/api/serializers.py:29 -#: openforms/contrib/kadaster/api/serializers.py:57 +#: openforms/contrib/kadaster/api/serializers.py:30 +#: openforms/contrib/kadaster/api/serializers.py:58 msgid "Latitude" msgstr "Latitude" -#: openforms/contrib/kadaster/api/serializers.py:30 -#: openforms/contrib/kadaster/api/serializers.py:63 +#: openforms/contrib/kadaster/api/serializers.py:31 +#: openforms/contrib/kadaster/api/serializers.py:64 msgid "Longitude" msgstr "Longitude" -#: openforms/contrib/kadaster/api/serializers.py:34 +#: openforms/contrib/kadaster/api/serializers.py:35 msgid "X" msgstr "X" -#: openforms/contrib/kadaster/api/serializers.py:35 +#: openforms/contrib/kadaster/api/serializers.py:36 msgid "Y" msgstr "Y" -#: openforms/contrib/kadaster/api/serializers.py:41 +#: openforms/contrib/kadaster/api/serializers.py:42 msgid "Latitude/longitude" msgstr "Latitude/longitude" -#: openforms/contrib/kadaster/api/serializers.py:42 +#: openforms/contrib/kadaster/api/serializers.py:43 msgid "Latitude and longitude in the WGS 84 coordinate system." msgstr "Latitude en longitude in het WGS 84 coördinatenstelsel." -#: openforms/contrib/kadaster/api/serializers.py:45 +#: openforms/contrib/kadaster/api/serializers.py:46 msgid "Rijkdsdriehoek coordinates" msgstr "Rijksdriehoekcoördinaten" -#: openforms/contrib/kadaster/api/serializers.py:47 +#: openforms/contrib/kadaster/api/serializers.py:48 msgid "" -"X and Y coordinates in the " -"[Rijkdsdriehoek](https://nl.wikipedia.org/wiki/Rijksdriehoeksco%C3%B6rdinaten)" -" coordinate system." +"X and Y coordinates in the [Rijkdsdriehoek](https://nl.wikipedia.org/wiki/" +"Rijksdriehoeksco%C3%B6rdinaten) coordinate system." msgstr "" -"X- en Y-coördinaten in de " -"[Rijkdsdriehoek](https://nl.wikipedia.org/wiki/Rijksdriehoeksco%C3%B6rdinaten)" -" coordinate system." +"X- en Y-coördinaten in de [Rijkdsdriehoek](https://nl.wikipedia.org/wiki/" +"Rijksdriehoeksco%C3%B6rdinaten) coordinate system." -#: openforms/contrib/kadaster/api/serializers.py:58 +#: openforms/contrib/kadaster/api/serializers.py:59 msgid "Latitude, in decimal degrees." msgstr "Latitude, in decimale graden." -#: openforms/contrib/kadaster/api/serializers.py:64 +#: openforms/contrib/kadaster/api/serializers.py:65 msgid "Longitude, in decimal degrees." msgstr "Longitude, in decimale graden." -#: openforms/contrib/kadaster/api/serializers.py:71 +#: openforms/contrib/kadaster/api/serializers.py:72 msgid "Closest address" msgstr "Dichtstbijzijndste adres" @@ -3648,8 +3661,7 @@ msgid "Get an adress based on coordinates" msgstr "Zoek adres op basis van coördinaten" #: openforms/contrib/kadaster/api/views.py:93 -msgid "" -"Get the closest address name based on the given longitude and latitude." +msgid "Get the closest address name based on the given longitude and latitude." msgstr "" "Haal de omschrijving op van het dichtsbijzijndste adres voor de opgegeven " "longitude en latitude." @@ -3668,13 +3680,18 @@ msgstr "Geef lijst van adressuggesties met coördinaten." #: openforms/contrib/kadaster/api/views.py:146 msgid "" -"Get a list of addresses, ordered by relevance/match score of the input query. Note that only results having latitude/longitude data are returned.\n" +"Get a list of addresses, ordered by relevance/match score of the input " +"query. Note that only results having latitude/longitude data are returned.\n" "\n" -"The results are retrieved from the configured geo search service, defaulting to the Kadaster location server." +"The results are retrieved from the configured geo search service, defaulting " +"to the Kadaster location server." msgstr "" -"Haal een lijst op van adressen, gesorteerd op relevantie/match score van de zoekopdracht. Merk op dat enkel resultaten voorzien van latitude/longitude teruggegeven worden.\n" +"Haal een lijst op van adressen, gesorteerd op relevantie/match score van de " +"zoekopdracht. Merk op dat enkel resultaten voorzien van latitude/longitude " +"teruggegeven worden.\n" "\n" -"Deze resultaten worden opgehaald uit de ingestelde geo-zoekservice. Standaard is dit de Locatieserver van het Kadaster." +"Deze resultaten worden opgehaald uit de ingestelde geo-zoekservice. " +"Standaard is dit de Locatieserver van het Kadaster." #: openforms/contrib/kadaster/api/views.py:157 msgid "" @@ -3734,7 +3751,7 @@ msgid "{api_name} endpoint is not configured." msgstr "{api_name} endpoint is niet geconfigureerd." #: openforms/contrib/kvk/checks.py:39 -#: openforms/prefill/contrib/kvk/plugin.py:127 +#: openforms/prefill/contrib/kvk/plugin.py:128 #, python-brace-format msgid "Did not find kvkNummer='{kvk}' in results" msgstr "Kon KvK-nummer {kvk} niet vinden in de resultaten." @@ -3877,7 +3894,7 @@ msgstr "" "informatieobjecttypen worden uit de Catalogi API van deze groep opgehaald." #: openforms/contrib/objects_api/api/filters.py:23 -#: openforms/contrib/objects_api/models.py:178 +#: openforms/contrib/objects_api/models.py:174 #: openforms/registrations/contrib/objects_api/api/filters.py:23 msgid "Objects API group" msgstr "Objecten API-groep" @@ -3892,11 +3909,11 @@ msgstr "De gewenste Objecten API-groep." #: openforms/contrib/objects_api/api/serializers.py:22 msgid "" -"URL reference to this object. This is the unique identification and location" -" of this object." +"URL reference to this object. This is the unique identification and location " +"of this object." msgstr "" -"URL-referentie naar dit object. Dit is de unieke identificatie en vindplaats" -" van het object." +"URL-referentie naar dit object. Dit is de unieke identificatie en vindplaats " +"van het object." #: openforms/contrib/objects_api/api/serializers.py:25 msgid "Unique identifier (UUID4)." @@ -3948,11 +3965,10 @@ msgstr "" #: openforms/contrib/objects_api/checks.py:36 #, python-brace-format msgid "" -"Missing Objecttypes API credentials for Objects API group " -"{objects_api_group}" +"Missing Objecttypes API credentials for Objects API group {objects_api_group}" msgstr "" -"Ontbrekende Objecttypen API authenticatiegegevens voor de Objecten API-groep" -" {objects_api_group}" +"Ontbrekende Objecttypen API authenticatiegegevens voor de Objecten API-groep " +"{objects_api_group}" #: openforms/contrib/objects_api/checks.py:70 #, python-brace-format @@ -3964,9 +3980,9 @@ msgstr "" "{objects_api_group}." #: openforms/contrib/objects_api/checks.py:75 -#: openforms/prefill/contrib/haalcentraal_brp/plugin.py:189 -#: openforms/prefill/contrib/kvk/plugin.py:119 -#: openforms/prefill/contrib/stufbg/plugin.py:221 +#: openforms/prefill/contrib/haalcentraal_brp/plugin.py:190 +#: openforms/prefill/contrib/kvk/plugin.py:120 +#: openforms/prefill/contrib/stufbg/plugin.py:222 #, python-brace-format msgid "Client error: {exception}" msgstr "Client fout: {exception}" @@ -4011,7 +4027,7 @@ msgid "catalogus RSIN" msgstr "catalogus-RSIN" #: openforms/contrib/objects_api/models.py:87 -#: openforms/contrib/zgw/serializers.py:40 +#: openforms/contrib/zgw/serializers.py:41 #: openforms/registrations/contrib/zgw_apis/models.py:110 msgid "The 'rsin' attribute for the Catalogus resource in the Catalogi API." msgstr "Het 'rsin'-attribuut van de catalogus-entiteit in de Catalogi API." @@ -4027,7 +4043,7 @@ msgid "Default RSIN of organization, which creates the INFORMATIEOBJECT" msgstr "Standaard RSIN van de organisatie, die het INFORMATIEOBJECT aanmaakt" #: openforms/contrib/objects_api/models.py:102 -#: openforms/registrations/contrib/objects_api/config.py:139 +#: openforms/registrations/contrib/objects_api/config.py:140 msgid "submission report document type description" msgstr "omschrijving van het documenttype voor het PDF-document" @@ -4040,11 +4056,11 @@ msgid "" msgstr "" "Omschrijving van het documenttype in de Catalogi API (het " "INFORMATIEOBJECTTYPE.omschrijving attribuut) voor het PDF-document met " -"inzendingsgegevens. De juiste versie wordt automatisch geselecteerd op basis" -" van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." +"inzendingsgegevens. De juiste versie wordt automatisch geselecteerd op basis " +"van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." #: openforms/contrib/objects_api/models.py:116 -#: openforms/registrations/contrib/objects_api/config.py:152 +#: openforms/registrations/contrib/objects_api/config.py:153 msgid "submission report CSV document type description" msgstr "omschrijving van het documenttype voor het CSV-document" @@ -4057,11 +4073,11 @@ msgid "" msgstr "" "Omschrijving van het documenttype in de Catalogi API (het " "INFORMATIEOBJECTTYPE.omschrijving attribuut) voor het CSV-document met " -"inzendingsgegevens. De juiste versie wordt automatisch geselecteerd op basis" -" van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." +"inzendingsgegevens. De juiste versie wordt automatisch geselecteerd op basis " +"van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." #: openforms/contrib/objects_api/models.py:130 -#: openforms/registrations/contrib/objects_api/config.py:165 +#: openforms/registrations/contrib/objects_api/config.py:166 msgid "attachment document type description" msgstr "omschrijving bijlage-documenttype" @@ -4074,8 +4090,8 @@ msgid "" msgstr "" "Omschrijving van het documenttype in de Catalogi API (het " "INFORMATIEOBJECTTYPE.omschrijving attribuut) voor inzendingsbijlagen. De " -"juiste versie wordt automatisch geselecteerd op basis van de inzendingsdatum" -" en geldigheidsdatums van de documenttypeversies." +"juiste versie wordt automatisch geselecteerd op basis van de inzendingsdatum " +"en geldigheidsdatums van de documenttypeversies." #: openforms/contrib/objects_api/models.py:146 msgid "submission report informatieobjecttype" @@ -4090,7 +4106,7 @@ msgstr "" "gebruikt voor het PDF document." #: openforms/contrib/objects_api/models.py:155 -#: openforms/registrations/contrib/objects_api/config.py:189 +#: openforms/registrations/contrib/objects_api/config.py:190 msgid "submission report CSV informatieobjecttype" msgstr "inzendings CSV document informatieobjecttype" @@ -4103,7 +4119,7 @@ msgstr "" "gebruikt voor het CSV document." #: openforms/contrib/objects_api/models.py:164 -#: openforms/registrations/contrib/objects_api/config.py:198 +#: openforms/registrations/contrib/objects_api/config.py:199 msgid "attachment informatieobjecttype" msgstr "bijlage informatieobjecttype" @@ -4115,19 +4131,18 @@ msgstr "" "URL naar het standaard INFORMATIEOBJECTTYPE in een Catalogi API dat wordt " "gebruikt voor de bijlagen." -#: openforms/contrib/objects_api/models.py:179 +#: openforms/contrib/objects_api/models.py:175 msgid "Objects API groups" msgstr "Objecten API-groepen" -#: openforms/contrib/objects_api/models.py:185 +#: openforms/contrib/objects_api/models.py:181 #: openforms/registrations/contrib/zgw_apis/models.py:172 -msgid "" -"You must specify both domain and RSIN to uniquely identify a catalogue." +msgid "You must specify both domain and RSIN to uniquely identify a catalogue." msgstr "" "Je moet het domein én RSIN beide opgeven om een catalogus uniek te " "identificeren." -#: openforms/contrib/objects_api/models.py:196 +#: openforms/contrib/objects_api/models.py:192 msgid "" "You must specify a catalogue when specifying the submission report PDF " "document type." @@ -4135,7 +4150,7 @@ msgstr "" "Je moet een catalogus aanduiden wanneer je het documenttype voor het PDF-" "document opgeeft." -#: openforms/contrib/objects_api/models.py:207 +#: openforms/contrib/objects_api/models.py:203 msgid "" "You must specify a catalogue when specifying the submission report CSV " "document type." @@ -4143,7 +4158,7 @@ msgstr "" "Je moet een catalogus aanduiden wanneer je het documenttype voor het CSV-" "document opgeeft." -#: openforms/contrib/objects_api/models.py:218 +#: openforms/contrib/objects_api/models.py:214 msgid "" "You must specify a catalogue when specifying the submission attachment " "document type." @@ -4153,8 +4168,7 @@ msgstr "" #: openforms/contrib/objects_api/validators.py:60 msgid "The document type URL is not in the specified catalogue." -msgstr "" -"De opgegeven documenttype-URL bestaat niet in de ingestelde catalogus." +msgstr "De opgegeven documenttype-URL bestaat niet in de ingestelde catalogus." #: openforms/contrib/objects_api/validators.py:73 #, python-brace-format @@ -4169,24 +4183,24 @@ msgstr "catalogus-URL" msgid "Filter document types against this catalogue URL." msgstr "Filter documenttypen op basis van deze catalogus-URL." -#: openforms/contrib/zgw/api/filters.py:23 +#: openforms/contrib/zgw/api/filters.py:24 #: openforms/registrations/contrib/zgw_apis/api/filters.py:64 msgid "case type identification" msgstr "Zaaktype-identificatie" -#: openforms/contrib/zgw/api/filters.py:25 +#: openforms/contrib/zgw/api/filters.py:26 msgid "" "Filter document types for a given case type. The identification is unique " "within the catalogue for a case type. Note that multiple versions of the " "same case type with the same identification exist. The filter returns a " "document type if it occurs within any version of the specified case type." msgstr "" -"Filter documenttypen voor een gegeven zaaktype. De zaaktype-identificatie is" -" uniek binnen een catalogus. Merk op dat meerdere versies van hetzelfde " +"Filter documenttypen voor een gegeven zaaktype. De zaaktype-identificatie is " +"uniek binnen een catalogus. Merk op dat meerdere versies van hetzelfde " "zaaktype met dezelfde identificatie kunnen bestaan. De filter geeft een " "documenttype terug zodra deze binnen één versie van een zaaktype voorkomt." -#: openforms/contrib/zgw/api/filters.py:38 +#: openforms/contrib/zgw/api/filters.py:40 msgid "A catalogue URL is required when filtering for a case type." msgstr "Je moet een catalogus-URL opgeven als je filtert binnen een zaaktype." @@ -4320,8 +4334,8 @@ msgid "You must select or set up a catalogi service to use." msgstr "Je moet een Catalogi API service selecteren of instellen." #: openforms/contrib/zgw/validators.py:37 -#: openforms/registrations/contrib/objects_api/config.py:361 -#: openforms/registrations/contrib/zgw_apis/options.py:426 +#: openforms/registrations/contrib/objects_api/config.py:362 +#: openforms/registrations/contrib/zgw_apis/options.py:432 msgid "" "The specified catalogue does not exist. Maybe you made a typo in the domain " "or RSIN?" @@ -4364,9 +4378,9 @@ msgstr "De (unieke) identifier voor een beslisdefinitie" #: openforms/dmn/api/serializers.py:23 openforms/dmn/api/serializers.py:36 #: openforms/payments/contrib/ogone/models.py:10 #: openforms/plugins/api/serializers.py:14 -#: openforms/prefill/api/serializers.py:71 +#: openforms/prefill/api/serializers.py:73 #: openforms/registrations/api/serializers.py:34 -#: openforms/validations/api/serializers.py:68 +#: openforms/validations/api/serializers.py:69 msgid "Label" msgstr "Label" @@ -4380,8 +4394,7 @@ msgstr "Versie-identificatie" #: openforms/dmn/api/serializers.py:32 msgid "" -"The (unique) identifier pointing to a particular decision definition " -"version." +"The (unique) identifier pointing to a particular decision definition version." msgstr "De (unieke) identifier voor een beslisdefinitieversie." #: openforms/dmn/api/serializers.py:37 @@ -4546,8 +4559,7 @@ msgstr "" "Testbericht is succesvol verzonden naar %(recipients)s. Controleer uw inbox." #: openforms/emails/connection_check.py:92 -msgid "" -"If the message doesn't arrive check the Django-yubin queue and cronjob." +msgid "If the message doesn't arrive check the Django-yubin queue and cronjob." msgstr "" "Indien het bericht niet aankomt, controleer de Django-yubin wachtrij en " "periodieke acties." @@ -4612,12 +4624,11 @@ msgstr "" "De inhoud van de e-mail wanneer mede-ondertekenen nodig is. Je moet de " "speciale instructies '{% payment_information %}' en '{% cosign_information " "%}' opnemen. Daarnaast kan je de '{% confirmation_summary %}'-instructie " -"gebruiken en zijn nog een aantal variabelen beschikbaar- zie de documentatie" -" voor meer informatie." +"gebruiken en zijn nog een aantal variabelen beschikbaar- zie de documentatie " +"voor meer informatie." #: openforms/emails/models.py:82 openforms/forms/admin/form_logic.py:27 #: openforms/forms/models/form.py:388 -#: openforms/forms/models/form_statistics.py:10 #: openforms/forms/models/form_variable.py:108 #: openforms/forms/models/form_version.py:46 msgid "form" @@ -4653,8 +4664,8 @@ msgid "" "Use this form to send a test email to the supplied recipient and test the " "email backend configuration." msgstr "" -"Gebruik dit formulier om een testbericht te versturen naar een opgegeven " -"e-mailadres." +"Gebruik dit formulier om een testbericht te versturen naar een opgegeven e-" +"mailadres." #: openforms/emails/templates/admin/emails/connection_check.html:20 msgid "Send test email" @@ -4688,8 +4699,8 @@ msgstr "Registraties" #: openforms/emails/templates/emails/admin_digest.html:26 #, python-format msgid "" -"Form '%(form_name)s' failed %(counter)s time(s) between %(first_failure_at)s" -" and %(last_failure_at)s.
" +"Form '%(form_name)s' failed %(counter)s time(s) between %(first_failure_at)s " +"and %(last_failure_at)s.
" msgstr "" "Formulier '%(form_name)s' faalde %(counter)s keer tussen " "%(first_failure_at)s en %(last_failure_at)s.
" @@ -4798,8 +4809,8 @@ msgid "" "We couldn't process logic rule %(index)s for '%(form_name)s' because it " "appears to be invalid.
" msgstr "" -"Logicaregel %(index)s in formulier '%(form_name)s' lijkt ongeldig te zijn en" -" kon daarom niet gecontroleerd worden.
" +"Logicaregel %(index)s in formulier '%(form_name)s' lijkt ongeldig te zijn en " +"kon daarom niet gecontroleerd worden.
" #: openforms/emails/templates/emails/admin_digest.html:147 #, python-format @@ -4816,20 +4827,25 @@ msgid "" "

Dear reader,

\n" "\n" "

\n" -"Someone submitted the form \"%(tt_openvariable)s form_name %(tt_closevariable)s\"\n" -"via the website on %(tt_openvariable)s submission_date %(tt_closevariable)s. This\n" +"Someone submitted the form \"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\"\n" +"via the website on %(tt_openvariable)s submission_date %(tt_closevariable)s. " +"This\n" "submission is not complete yet without your signature.\n" "

\n" "\n" "

Cosigning required

\n" "\n" "

\n" -"With the link below you can log in and sign the form submission. Then, we will\n" +"With the link below you can log in and sign the form submission. Then, we " +"will\n" "process the request.\n" "

\n" "\n" "

\n" -"%(tt_openvariable)s form_url %(tt_closevariable)s\n" +"%(tt_openvariable)s form_url %(tt_closevariable)s\n" "

\n" "\n" "

Kind regards,

\n" @@ -4840,20 +4856,25 @@ msgstr "" "

Beste lezer,

\n" "\n" "

\n" -"Via de website heeft iemand het formulier \"%(tt_openvariable)s form_name %(tt_closevariable)s\"\n" -"op %(tt_openvariable)s submission_date %(tt_closevariable)s ingediend. Deze is nog\n" +"Via de website heeft iemand het formulier \"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\"\n" +"op %(tt_openvariable)s submission_date %(tt_closevariable)s ingediend. Deze " +"is nog\n" "niet compleet zonder je handtekening.\n" "

\n" "\n" "

Medeondertekening nodig

\n" "\n" "

\n" -"Via deze link kun je inloggen om het formulier te ondertekenen. Daarna nemen wij de aanvraag \n" +"Via deze link kun je inloggen om het formulier te ondertekenen. Daarna nemen " +"wij de aanvraag \n" "in behandeling.\n" "

\n" "\n" "

\n" -"%(tt_openvariable)s form_url %(tt_closevariable)s\n" +"%(tt_openvariable)s form_url %(tt_closevariable)s\n" "

\n" "\n" "

Met vriendelijke groet,

\n" @@ -4866,9 +4887,12 @@ msgid "" "\n" "Dear Sir, Madam,
\n" "
\n" -"You have submitted the form \"%(tt_openvariable)s form_name %(tt_closevariable)s\" on %(tt_openvariable)s submission_date %(tt_closevariable)s.
\n" +"You have submitted the form \"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\" on %(tt_openvariable)s submission_date " +"%(tt_closevariable)s.
\n" "
\n" -"Your reference is: %(tt_openvariable)s public_reference %(tt_closevariable)s
\n" +"Your reference is: %(tt_openvariable)s public_reference " +"%(tt_closevariable)s
\n" "
\n" "\n" "%(tt_openblock)s confirmation_summary %(tt_closeblock)s
\n" @@ -4883,9 +4907,12 @@ msgstr "" "\n" "Geachte heer/mevrouw,
\n" "
\n" -"U heeft via de website het formulier \\\"%(tt_openvariable)s form_name %(tt_closevariable)s\\\" verzonden op %(tt_openvariable)s submission_date %(tt_closevariable)s.
\n" +"U heeft via de website het formulier \\\"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\\\" verzonden op %(tt_openvariable)s submission_date " +"%(tt_closevariable)s.
\n" "
\n" -"Uw referentienummer is: %(tt_openvariable)s public_reference %(tt_closevariable)s
\n" +"Uw referentienummer is: %(tt_openvariable)s public_reference " +"%(tt_closevariable)s
\n" "
\n" "\n" "%(tt_openblock)s confirmation_summary %(tt_closeblock)s
\n" @@ -4903,8 +4930,10 @@ msgid "" "\n" "Dear reader,
\n" "
\n" -"You submitted the form \"%(tt_openvariable)s form_name %(tt_closevariable)s\"\n" -"via the website on %(tt_openvariable)s submission_date %(tt_closevariable)s.
\n" +"You submitted the form \"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\"\n" +"via the website on %(tt_openvariable)s submission_date %(tt_closevariable)s." +"
\n" "
\n" "\n" "%(tt_openblock)s if registration_completed %(tt_closeblock)s
\n" @@ -4919,7 +4948,8 @@ msgid "" " %(tt_openblock)s endif %(tt_closeblock)s
\n" "%(tt_openblock)s endif %(tt_closeblock)s
\n" "\n" -"Your reference is: %(tt_openvariable)s public_reference %(tt_closevariable)s
\n" +"Your reference is: %(tt_openvariable)s public_reference " +"%(tt_closevariable)s
\n" "
\n" "\n" "%(tt_openblock)s confirmation_summary %(tt_closeblock)s
\n" @@ -4933,7 +4963,9 @@ msgstr "" "\n" "Beste lezer,
\n" "
\n" -"U heeft via de website het formulier \"%(tt_openvariable)s form_name %(tt_closevariable)s\" verzonden op %(tt_openvariable)s submission_date %(tt_closevariable)s.
\n" +"U heeft via de website het formulier \"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\" verzonden op %(tt_openvariable)s submission_date " +"%(tt_closevariable)s.
\n" "
\n" "\n" "%(tt_openblock)s if registration_completed %(tt_closeblock)s
\n" @@ -4948,7 +4980,8 @@ msgstr "" "%(tt_openblock)s endif %(tt_closeblock)s
\n" "%(tt_openblock)s endif %(tt_closeblock)s
\n" "\n" -"Uw referentienummer is: %(tt_openvariable)s public_reference %(tt_closevariable)s
\n" +"Uw referentienummer is: %(tt_openvariable)s public_reference " +"%(tt_closevariable)s
\n" "
\n" "\n" "%(tt_openblock)s confirmation_summary %(tt_closeblock)s
\n" @@ -4974,22 +5007,26 @@ msgstr "" #, python-format msgid "" "\n" -"

This email address requires verification for the \"%(tt_openvariable)s form_name %(tt_closevariable)s\" form.

\n" +"

This email address requires verification for the \"%(tt_openvariable)s " +"form_name %(tt_closevariable)s\" form.

\n" "\n" "

Enter the code below to confirm your email address:

\n" "\n" "

%(tt_openvariable)s code %(tt_closevariable)s

\n" "\n" -"

If you did not request this verification, you can safely ignore this email.

\n" +"

If you did not request this verification, you can safely ignore this " +"email.

\n" msgstr "" "\n" -"

Dit e-mailadres moet gecontroleerd worden voor het \"%(tt_openvariable)s form_name %(tt_closevariable)s\"-formulier.

\n" +"

Dit e-mailadres moet gecontroleerd worden voor het \"%(tt_openvariable)s " +"form_name %(tt_closevariable)s\"-formulier.

\n" "\n" "

Voer de code die hieronder staat in om je e-mailadres te bevestigen:

\n" "\n" "

%(tt_openvariable)s code %(tt_closevariable)s

\n" "\n" -"

Als je niet zelf deze controle gestart bent, dan kan je deze e-mail negeren.

\n" +"

Als je niet zelf deze controle gestart bent, dan kan je deze e-mail " +"negeren.

\n" #: openforms/emails/templates/emails/email_verification/subject.txt:1 #, python-format @@ -5007,11 +5044,15 @@ msgid "" "\n" "Dear Sir or Madam,
\n" "
\n" -"You have stored the form \"%(tt_openvariable)s form_name %(tt_closevariable)s\" via the website on %(tt_openvariable)s save_date %(tt_closevariable)s.\n" +"You have stored the form \"%(tt_openvariable)s form_name " +"%(tt_closevariable)s\" via the website on %(tt_openvariable)s save_date " +"%(tt_closevariable)s.\n" "You can resume this form at a later time by clicking the link below.
\n" -"The link is valid up to and including %(tt_openvariable)s expiration_date %(tt_closevariable)s.
\n" +"The link is valid up to and including %(tt_openvariable)s expiration_date " +"%(tt_closevariable)s.
\n" "
\n" -"
Resume form \"%(tt_openvariable)s form_name %(tt_closevariable)s\".
\n" +"Resume " +"form \"%(tt_openvariable)s form_name %(tt_closevariable)s\".
\n" "
\n" "Kind regards,
\n" "
\n" @@ -5019,14 +5060,24 @@ msgid "" "\n" msgstr "" "\n" -"Geachte heer/mevrouw,

U heeft via de website het formulier \"%(tt_openvariable)s form_name %(tt_closevariable)s\" tussentijds opgeslagen op %(tt_openvariable)s save_date %(tt_closevariable)s. U kunt dit formulier op een later moment hervatten door op onderstaande link te klikken.
Onderstaande link is geldig tot en met %(tt_openvariable)s expiration_date %(tt_closevariable)s.

Verder gaan met formulier \"%(tt_openvariable)s form_name %(tt_closevariable)s\".

Met vriendelijke groet,

Open Formulieren\n" +"Geachte heer/mevrouw,

U heeft via de website het formulier " +"\"%(tt_openvariable)s form_name %(tt_closevariable)s\" tussentijds " +"opgeslagen op %(tt_openvariable)s save_date %(tt_closevariable)s. U kunt dit " +"formulier op een later moment hervatten door op onderstaande link te klikken." +"
Onderstaande link is geldig tot en met %(tt_openvariable)s " +"expiration_date %(tt_closevariable)s.

Verder gaan met formulier " +"\"%(tt_openvariable)s form_name %(tt_closevariable)s\".

Met " +"vriendelijke groet,

Open Formulieren\n" #: openforms/emails/templates/emails/save_form/save_form.txt:1 #, python-format msgid "" "Dear Sir or Madam,\n" "\n" -"You have stored the form \"%(form_name)s\" via the website on %(formatted_save_date)s. You can resume this form at a later time by clicking the link below.\n" +"You have stored the form \"%(form_name)s\" via the website on " +"%(formatted_save_date)s. You can resume this form at a later time by " +"clicking the link below.\n" "The link is valid up to and including %(formatted_expiration_date)s.\n" "\n" "Resume form: %(continue_url)s\n" @@ -5037,7 +5088,10 @@ msgid "" msgstr "" "Geachte heer/mevrouw,\n" "\n" -"U heeft via de website het formulier \"%(form_name)s\" tussentijds opgeslagen op %(formatted_save_date)s. U kunt dit formulier op een later moment hervatten door op onderstaande link te klikken.Onderstaande link is geldig tot en met %(formatted_expiration_date)s.\n" +"U heeft via de website het formulier \"%(form_name)s\" tussentijds " +"opgeslagen op %(formatted_save_date)s. U kunt dit formulier op een later " +"moment hervatten door op onderstaande link te klikken.Onderstaande link is " +"geldig tot en met %(formatted_expiration_date)s.\n" "\n" "Verder gaan met formulier: %(continue_url)s\n" "\n" @@ -5060,8 +5114,8 @@ msgid "" "If you wish to change your appointment, please cancel it using the link " "below and create a new one." msgstr "" -"Indien je jouw afspraak wenst te wijzingen, dan kan je deze annuleren en een" -" nieuwe aanmaken." +"Indien je jouw afspraak wenst te wijzingen, dan kan je deze annuleren en een " +"nieuwe aanmaken." #: openforms/emails/templates/emails/templatetags/appointment_information.html:62 #: openforms/emails/templates/emails/templatetags/appointment_information.txt:25 @@ -5146,8 +5200,8 @@ msgid "" "Payment of € %(payment_price)s is required. You can pay using the link " "below." msgstr "" -"Betaling van €%(payment_price)s vereist. U kunt het bedrag betalen door" -" op onderstaande link te klikken." +"Betaling van €%(payment_price)s vereist. U kunt het bedrag betalen door " +"op onderstaande link te klikken." #: openforms/emails/templates/emails/templatetags/payment_information.html:15 #: openforms/emails/templates/emails/templatetags/payment_information.txt:8 @@ -5214,11 +5268,7 @@ msgstr "Bestandsnaam" msgid "File size" msgstr "Bestandsgrootte" -#: openforms/formio/api/validators.py:80 -msgid "The provided file is not a valid file type." -msgstr "Het bestand is geen toegestaan bestandstype." - -#: openforms/formio/api/validators.py:86 +#: openforms/formio/api/validators.py:68 msgid "" "Could not determine the file type. Please make sure the file name has an " "extension." @@ -5226,30 +5276,33 @@ msgstr "" "Het bestandstype kon niet bepaald worden. Controleer of de bestandsnaam met " "een extensie eindigt (bijvoorbeeld '.pdf' of '.png')." -#: openforms/formio/api/validators.py:109 -#: openforms/formio/api/validators.py:137 +#: openforms/formio/api/validators.py:92 +msgid "The provided file is not a valid file type." +msgstr "Het bestand is geen toegestaan bestandstype." + +#: openforms/formio/api/validators.py:113 +#: openforms/formio/api/validators.py:148 #, python-brace-format msgid "The provided file is not a {file_type}." msgstr "Het bestand is geen {file_type}." -#: openforms/formio/api/validators.py:163 -msgid "" -"The virus scan could not be performed at this time. Please retry later." +#: openforms/formio/api/validators.py:174 +msgid "The virus scan could not be performed at this time. Please retry later." msgstr "" "Het is momenteel niet mogelijk om bestanden te scannen op virussen. Probeer " "het later opnieuw." -#: openforms/formio/api/validators.py:172 +#: openforms/formio/api/validators.py:183 #, python-brace-format msgid "" "File did not pass the virus scan. It was found to contain '{virus_name}'." msgstr "Er is een virus gedetecteerd in het bestand: '{virus_name}'." -#: openforms/formio/api/validators.py:178 +#: openforms/formio/api/validators.py:189 msgid "The virus scan on this file returned an error." msgstr "Er deed zich een onbekende fout voor bij het scannen op virussen." -#: openforms/formio/api/validators.py:190 +#: openforms/formio/api/validators.py:201 msgid "The virus scan returned an unexpected status." msgstr "De virusscan resulteerde in een onverwachte status." @@ -5262,52 +5315,62 @@ msgstr "Maak tijdelijk bestand aan" msgid "" "File upload handler for the Form.io file upload \"url\" storage type.\n" "\n" -"The uploads are stored temporarily and have to be claimed by the form submission using the returned JSON data. \n" +"The uploads are stored temporarily and have to be claimed by the form " +"submission using the returned JSON data. \n" "\n" -"Access to this view requires an active form submission. Unclaimed temporary files automatically expire after {expire_days} day(s). \n" +"Access to this view requires an active form submission. Unclaimed temporary " +"files automatically expire after {expire_days} day(s). \n" "\n" -"The maximum upload size for this instance is `{max_upload_size}`. Note that this includes the multipart metadata and boundaries, so the actual maximum file upload size is slightly smaller." +"The maximum upload size for this instance is `{max_upload_size}`. Note that " +"this includes the multipart metadata and boundaries, so the actual maximum " +"file upload size is slightly smaller." msgstr "" "Bestandsuploadhandler voor het Form.io bestandsupload opslagtype 'url'.\n" "\n" -"Bestandsuploads worden tijdelijke opgeslagen en moeten gekoppeld worden aan een inzending.\n" +"Bestandsuploads worden tijdelijke opgeslagen en moeten gekoppeld worden aan " +"een inzending.\n" "\n" -"Toegang tot dit endpoint vereist een actieve formulier inzending. Niet gekoppelde bestanden worden automatisch verwijderd na {expire_days} dag(en).\n" +"Toegang tot dit endpoint vereist een actieve formulier inzending. Niet " +"gekoppelde bestanden worden automatisch verwijderd na {expire_days} " +"dag(en).\n" "\n" -"De maximale toegestane upload-bestandsgrootte is `{max_upload_size}` voor deze instantie. Merk op dat dit inclusief multipart-metadata en boundaries is. De daadwerkelijke maximale bestandsgrootte is dus iets lager dan deze waarde." +"De maximale toegestane upload-bestandsgrootte is `{max_upload_size}` voor " +"deze instantie. Merk op dat dit inclusief multipart-metadata en boundaries " +"is. De daadwerkelijke maximale bestandsgrootte is dus iets lager dan deze " +"waarde." #: openforms/formio/apps.py:7 msgid "Formio integration" msgstr "Form.io-integratie" -#: openforms/formio/components/custom.py:262 -#: openforms/formio/components/custom.py:565 +#: openforms/formio/components/custom.py:264 +#: openforms/formio/components/custom.py:567 #: openforms/formio/components/vanilla.py:118 #: openforms/formio/components/vanilla.py:305 msgid "This value does not match the required pattern." msgstr "De waarde komt niet overeen met het verwachte patroon." -#: openforms/formio/components/custom.py:317 +#: openforms/formio/components/custom.py:319 msgid "Selecting family members is currently not available." msgstr "Het selecteren van gezinsleden is momenteel niet beschikbaar." -#: openforms/formio/components/custom.py:412 +#: openforms/formio/components/custom.py:414 msgid "Derived street name" msgstr "Afgeleide straatnaam" -#: openforms/formio/components/custom.py:418 +#: openforms/formio/components/custom.py:420 msgid "Derived city" msgstr "Afgeleide stad" -#: openforms/formio/components/custom.py:440 +#: openforms/formio/components/custom.py:442 msgid "City does not match the specified pattern." msgstr "De stad komt niet overeen met het verwachtte patroon." -#: openforms/formio/components/custom.py:452 +#: openforms/formio/components/custom.py:454 msgid "Postcode does not match the specified pattern." msgstr "De postcode komt niet overeen met het verwachtte patroon." -#: openforms/formio/components/custom.py:479 +#: openforms/formio/components/custom.py:481 msgid "Invalid secret city - street name combination" msgstr "Ongeldige waarde voor sleutel voor de stad/straat-combinatie." @@ -5348,59 +5411,58 @@ msgstr "De waarde is na de maximale tijd" msgid "Value is not between mininum and maximum time." msgstr "De waarde ligt niet tussen de minimale en maximale tijd." -#: openforms/formio/components/vanilla.py:358 +#: openforms/formio/components/vanilla.py:359 #, python-brace-format -msgid "" -"The value of {root_key} must match the value of {nested_key} in 'data'." +msgid "The value of {root_key} must match the value of {nested_key} in 'data'." msgstr "" -"De waarde van {root_key} moet overeenkomen met de waarde van {nested_key} in" -" 'data'." +"De waarde van {root_key} moet overeenkomen met de waarde van {nested_key} in " +"'data'." -#: openforms/formio/components/vanilla.py:367 -#: openforms/formio/components/vanilla.py:380 +#: openforms/formio/components/vanilla.py:368 +#: openforms/formio/components/vanilla.py:381 msgid "Invalid URL." msgstr "Ongeldige URL." -#: openforms/formio/components/vanilla.py:371 +#: openforms/formio/components/vanilla.py:372 msgid "Size does not match the uploaded file." msgstr "De grootte komt niet overeen met de bestandsgrootte van de upload." -#: openforms/formio/components/vanilla.py:376 +#: openforms/formio/components/vanilla.py:377 msgid "Name does not match the uploaded file." msgstr "De bestandsnaam komt niet overeen met de upload." -#: openforms/formio/components/vanilla.py:501 +#: openforms/formio/components/vanilla.py:502 msgid "Checkbox must be checked." msgstr "Het selectievakje moet aangevinkt zijn." -#: openforms/formio/components/vanilla.py:532 +#: openforms/formio/components/vanilla.py:533 #, python-brace-format msgid "Ensure this field has at least {min_selected_count} checked options." msgstr "" "Zorg dat dit veld {min_selected_count} of meer opties aangevinkt heeft." -#: openforms/formio/components/vanilla.py:535 +#: openforms/formio/components/vanilla.py:536 #, python-brace-format msgid "" "Ensure this field has no more than {max_selected_count} checked options." msgstr "" "Zorg dat dit veld {max_selected_count} of minder opties aangevinkt heeft." -#: openforms/formio/components/vanilla.py:761 +#: openforms/formio/components/vanilla.py:762 #, python-brace-format msgid "Expected a list of items but got type \"{input_type}\"." msgstr "Een lijst van waarden was verwacht, maar kreeg \"{input_type}\"." -#: openforms/formio/components/vanilla.py:762 +#: openforms/formio/components/vanilla.py:763 msgid "This list may not be empty." msgstr "De lijst mag niet leeg zijn." -#: openforms/formio/components/vanilla.py:763 +#: openforms/formio/components/vanilla.py:764 #, python-brace-format msgid "Ensure this field has at least {min_length} elements." msgstr "Zorg dat dit veld {min_length} of meer waarden heeft." -#: openforms/formio/components/vanilla.py:764 +#: openforms/formio/components/vanilla.py:765 #, python-brace-format msgid "Ensure this field has no more than {max_length} elements." msgstr "Zorg dat dit veld {max_length} of minder waarden heeft." @@ -5431,12 +5493,12 @@ msgstr "" "De dynamische keuzelijstopties verkregen met de expressie " "%(items_expression)s bevat niet-primitieven (objecten of arrays)." -#: openforms/formio/formatters/formio.py:86 +#: openforms/formio/formatters/formio.py:91 #, python-format msgid "attachment: %s" msgstr "bijlage: %s" -#: openforms/formio/formatters/formio.py:170 +#: openforms/formio/formatters/formio.py:174 msgid "signature added" msgstr "handtekening toegevoegd" @@ -5565,8 +5627,8 @@ msgid "" "Please configure your email address in your admin profile before requesting " "a bulk export" msgstr "" -"Gelieve eerst uw e-mailadres in te stellen in uw gebruikersaccount voordat u" -" een bulk-export doet." +"Gelieve eerst uw e-mailadres in te stellen in uw gebruikersaccount voordat u " +"een bulk-export doet." #: openforms/forms/admin/form_definition.py:24 #, python-brace-format @@ -5584,6 +5646,12 @@ msgstr "Verwijder geselecteerde %(verbose_name_plural)s" msgid "used in" msgstr "gebruikt in" +#: openforms/forms/admin/form_submission_statistics.py:41 +#, fuzzy +#| msgid "Submitted on" +msgid "submitted between" +msgstr "Ingezonden op" + #: openforms/forms/admin/mixins.py:15 msgid "Red" msgstr "Rood" @@ -5704,14 +5772,14 @@ msgid "" "submit a form. Returns a list of formio component definitions, all of type " "'checkbox'." msgstr "" -"Een lijst van verklaringen die de gebruiker moet accepteren om het formulier" -" te kunnen inzenden. Deze worden teruggegeven als lijst van Form.io-" +"Een lijst van verklaringen die de gebruiker moet accepteren om het formulier " +"te kunnen inzenden. Deze worden teruggegeven als lijst van Form.io-" "componentdefinities, allemaal van het type 'checkbox'." #: openforms/forms/api/serializers/form.py:448 msgid "" -"The `auto_login_authentication_backend` must be one of the selected backends" -" from `authentication_backends`" +"The `auto_login_authentication_backend` must be one of the selected backends " +"from `authentication_backends`" msgstr "" "De `auto_login_authentication_backend` moet één van de backends uit " "`authentication_backends` zijn." @@ -5772,11 +5840,11 @@ msgstr "Form.io configuratie" msgid "The form definition as Form.io JSON schema" msgstr "De formulier definitie als Form.io JSON schema" -#: openforms/forms/api/serializers/form_definition.py:146 +#: openforms/forms/api/serializers/form_definition.py:147 msgid "Used in forms" msgstr "Gebruikt in formulieren" -#: openforms/forms/api/serializers/form_definition.py:148 +#: openforms/forms/api/serializers/form_definition.py:149 msgid "" "The collection of forms making use of this definition. This includes both " "active and inactive forms." @@ -5857,8 +5925,8 @@ msgstr "waarde van het attribuut" #: openforms/forms/api/serializers/logic/action_serializers.py:43 msgid "" -"Valid JSON determining the new value of the specified property. For example:" -" `true` or `false`." +"Valid JSON determining the new value of the specified property. For example: " +"`true` or `false`." msgstr "" "De JSON die de nieuwe waarde van het gespecificeerde attribuut bepaald. " "Bijvoorbeeld: `true` of `false`." @@ -5870,8 +5938,8 @@ msgstr "Waarde" #: openforms/forms/api/serializers/logic/action_serializers.py:60 msgid "" -"A valid JsonLogic expression describing the value. This may refer to (other)" -" Form.io components." +"A valid JsonLogic expression describing the value. This may refer to (other) " +"Form.io components." msgstr "" "Een JSON-logic expressie die de waarde beschrijft. Deze mag naar (andere) " "Form.io componenten verwijzen." @@ -5927,8 +5995,8 @@ msgid "" "Key of the Form.io component that the action applies to. This field is " "required for the action types {action_types} - otherwise it's optional." msgstr "" -"Sleutel van de Form.io-component waarop de actie van toepassing is. Dit veld" -" is verplicht voor de actietypes {action_types} - anders is het optioneel. " +"Sleutel van de Form.io-component waarop de actie van toepassing is. Dit veld " +"is verplicht voor de actietypes {action_types} - anders is het optioneel. " #: openforms/forms/api/serializers/logic/action_serializers.py:155 msgid "Key of the target variable" @@ -5951,8 +6019,8 @@ msgstr "formulierstap" #: openforms/forms/api/serializers/logic/action_serializers.py:173 #, python-format msgid "" -"The UUID of the form step that will be affected by the action. This field is" -" required if the action type is `%(action_type)s`, otherwise optional." +"The UUID of the form step that will be affected by the action. This field is " +"required if the action type is `%(action_type)s`, otherwise optional." msgstr "" "De formulierstap die wordt beïnvloed door de actie. Dit veld is verplicht " "als het actietype `%(action_type)s` is, anders optioneel." @@ -6004,8 +6072,8 @@ msgstr "" #: openforms/forms/api/serializers/logic/form_logic.py:86 msgid "Actions triggered when the trigger expression evaluates to 'truthy'." msgstr "" -"Acties die worden geactiveerd wanneer de trigger-expressie wordt geëvalueerd" -" als 'truthy'." +"Acties die worden geactiveerd wanneer de trigger-expressie wordt geëvalueerd " +"als 'truthy'." #: openforms/forms/api/serializers/logic/form_logic.py:110 msgid "" @@ -6019,7 +6087,8 @@ msgstr "" #: openforms/forms/api/validators.py:29 msgid "The first operand must be a `{\"var\": \"\"}` expression." -msgstr "De eerste operand moet een `{\"var\": \"\"}` expressie zijn." +msgstr "" +"De eerste operand moet een `{\"var\": \"\"}` expressie zijn." #: openforms/forms/api/validators.py:120 msgid "The variable cannot be empty." @@ -6080,27 +6149,40 @@ msgstr "Formulierstap definities weergeven" #: openforms/forms/api/viewsets.py:121 #, python-brace-format msgid "" -"Get a list of existing form definitions, where a single item may be a re-usable or single-use definition. This includes form definitions not currently used in any form(s) at all.\n" +"Get a list of existing form definitions, where a single item may be a re-" +"usable or single-use definition. This includes form definitions not " +"currently used in any form(s) at all.\n" "\n" -"You can filter this list down to only re-usable definitions or definitions used in a particular form.\n" +"You can filter this list down to only re-usable definitions or definitions " +"used in a particular form.\n" "\n" -"**Note**: filtering on both `is_reusable` and `used_in` at the same time is implemented as an OR-filter.\n" +"**Note**: filtering on both `is_reusable` and `used_in` at the same time is " +"implemented as an OR-filter.\n" "\n" "**Warning: the response data depends on user permissions**\n" "\n" -"Non-staff users receive a subset of all the documented fields. The fields reserved for staff users are used for internal form configuration. These are: \n" +"Non-staff users receive a subset of all the documented fields. The fields " +"reserved for staff users are used for internal form configuration. These " +"are: \n" "\n" "{admin_fields}" msgstr "" -"Geef een lijst van bestaande formulierdefinities waarin één enkele definitie herbruikbaar of voor éénmalig gebruik kan zijn. Dit is inclusief definities die in geen enkel formulier gebruikt zijn.\n" +"Geef een lijst van bestaande formulierdefinities waarin één enkele definitie " +"herbruikbaar of voor éénmalig gebruik kan zijn. Dit is inclusief definities " +"die in geen enkel formulier gebruikt zijn.\n" "\n" -"Je kan deze lijst filteren op enkel herbruikbare definities of definities die in een specifiek formulier gebruikt worden.\n" +"Je kan deze lijst filteren op enkel herbruikbare definities of definities " +"die in een specifiek formulier gebruikt worden.\n" "\n" -"**Merk op**: tegelijk filteren op `is_reusable` en `used_in` is geïmplementeerd als een OF-filter - je krijgt dus beide resultaten terug.\n" +"**Merk op**: tegelijk filteren op `is_reusable` en `used_in` is " +"geïmplementeerd als een OF-filter - je krijgt dus beide resultaten terug.\n" "\n" -"**Waarschuwing: de gegevens in het antwoord zijn afhankelijk van je gebruikersrechten**\n" +"**Waarschuwing: de gegevens in het antwoord zijn afhankelijk van je " +"gebruikersrechten**\n" "\n" -"Gebruikers die geen beheerder zijn, ontvangen maar een deel van de gedocumenteerde velden. De velden die enkel voor beheerders beschikbaar zijn, zijn voor interne formulierconfiguratie. Het gaat om de velden:\n" +"Gebruikers die geen beheerder zijn, ontvangen maar een deel van de " +"gedocumenteerde velden. De velden die enkel voor beheerders beschikbaar " +"zijn, zijn voor interne formulierconfiguratie. Het gaat om de velden:\n" "\n" "{admin_fields}" @@ -6131,19 +6213,27 @@ msgstr "Formulier definitie JSON schema weergeven" #: openforms/forms/api/viewsets.py:218 #, python-brace-format msgid "" -"List the active forms, including the pointers to the form steps. Form steps are included in order as they should appear.\n" +"List the active forms, including the pointers to the form steps. Form steps " +"are included in order as they should appear.\n" "\n" "**Warning: the response data depends on user permissions**\n" "\n" -"Non-staff users receive a subset of all the documented fields. The fields reserved for staff users are used for internal form configuration. These are: \n" +"Non-staff users receive a subset of all the documented fields. The fields " +"reserved for staff users are used for internal form configuration. These " +"are: \n" "\n" "{admin_fields}" msgstr "" -"Geef een lijst van actieve formulieren, inclusief verwijzingen naar de formulierstappen. De formulierstappen komen voor in de volgorde waarin ze zichtbaar moeten zijn.\n" +"Geef een lijst van actieve formulieren, inclusief verwijzingen naar de " +"formulierstappen. De formulierstappen komen voor in de volgorde waarin ze " +"zichtbaar moeten zijn.\n" "\n" -"**Waarschuwing: de gegevens in het antwoord zijn afhankelijk van je gebruikersrechten**\n" +"**Waarschuwing: de gegevens in het antwoord zijn afhankelijk van je " +"gebruikersrechten**\n" "\n" -"Gebruikers die geen beheerder zijn, ontvangen maar een deel van de gedocumenteerde velden. De velden die enkel voor beheerders beschikbaar zijn, zijn voor interne formulierconfiguratie. Het gaat om de velden:\n" +"Gebruikers die geen beheerder zijn, ontvangen maar een deel van de " +"gedocumenteerde velden. De velden die enkel voor beheerders beschikbaar " +"zijn, zijn voor interne formulierconfiguratie. Het gaat om de velden:\n" "\n" "{admin_fields}" @@ -6156,27 +6246,45 @@ msgstr "Formulier details weergeven" msgid "" "Retrieve the details/configuration of a particular form. \n" "\n" -"A form is a collection of form steps, where each form step points to a formio.js form definition. Multiple definitions are combined in logical steps to build a multi-step/page form for end-users to fill out. Form definitions can be (and are) re-used among different forms.\n" +"A form is a collection of form steps, where each form step points to a " +"formio.js form definition. Multiple definitions are combined in logical " +"steps to build a multi-step/page form for end-users to fill out. Form " +"definitions can be (and are) re-used among different forms.\n" "\n" "**Warning: the response data depends on user permissions**\n" "\n" -"Non-staff users receive a subset of all the documented fields. The fields reserved for staff users are used for internal form configuration. These are: \n" +"Non-staff users receive a subset of all the documented fields. The fields " +"reserved for staff users are used for internal form configuration. These " +"are: \n" "\n" "{admin_fields}\n" "\n" -"If the form doesn't have translations enabled, its default language is forced by setting a language cookie and reflected in the Content-Language response header. Normal HTTP Content Negotiation rules apply." +"If the form doesn't have translations enabled, its default language is " +"forced by setting a language cookie and reflected in the Content-Language " +"response header. Normal HTTP Content Negotiation rules apply." msgstr "" "Haal de details/configuratie op van een specifiek formulier.\n" "\n" -"Een formulier is een verzameling van één of meerdere formulierstappen waarbij elke stap een verwijzing heeft naar een formio.js formulierdefinitie. Meerdere definities samen vormen een logisch geheel van formulierstappen die de klant doorloopt tijdens het invullen van het formulier. Formulierdefinities kunnen herbruikbaar zijn tussen verschillende formulieren.\n" +"Een formulier is een verzameling van één of meerdere formulierstappen " +"waarbij elke stap een verwijzing heeft naar een formio.js " +"formulierdefinitie. Meerdere definities samen vormen een logisch geheel van " +"formulierstappen die de klant doorloopt tijdens het invullen van het " +"formulier. Formulierdefinities kunnen herbruikbaar zijn tussen verschillende " +"formulieren.\n" "\n" "**Waarschuwing: de response-data is afhankelijk van de gebruikersrechten**\n" "\n" -"Gebruikers die geen beheerder zijn, ontvangen maar een deel van de gedocumenteerde velden. De velden die enkel voor beheerders beschikbaar zijn, zijn voor interne formulierconfiguratie. Het gaat om de velden:\n" +"Gebruikers die geen beheerder zijn, ontvangen maar een deel van de " +"gedocumenteerde velden. De velden die enkel voor beheerders beschikbaar " +"zijn, zijn voor interne formulierconfiguratie. Het gaat om de velden:\n" "\n" "{admin_fields}\n" "\n" -"Wanneer meertaligheid niet ingeschakeld is voor het formulier, dan wordt de standaardtaal (`settings.LANGUAGE_CODE`) geforceerd gezet in een language cookie. De actieve taal wordt gecommuniceerd in de Content-Language response header. De gebruikelijke HTTP Content Negotiation principes zijn van toepassing." +"Wanneer meertaligheid niet ingeschakeld is voor het formulier, dan wordt de " +"standaardtaal (`settings.LANGUAGE_CODE`) geforceerd gezet in een language " +"cookie. De actieve taal wordt gecommuniceerd in de Content-Language response " +"header. De gebruikelijke HTTP Content Negotiation principes zijn van " +"toepassing." #: openforms/forms/api/viewsets.py:244 msgid "Create form" @@ -6221,8 +6329,8 @@ msgstr "Configureer logicaregels in bulk" #: openforms/forms/api/viewsets.py:281 msgid "" -"By sending a list of LogicRules to this endpoint, all the LogicRules related" -" to the form will be replaced with the data sent to the endpoint." +"By sending a list of LogicRules to this endpoint, all the LogicRules related " +"to the form will be replaced with the data sent to the endpoint." msgstr "" "Alle logicaregels van het formulier worden vervangen met de toegestuurde " "regels." @@ -6373,29 +6481,52 @@ msgstr "bestand" msgid "Upload your exported ZIP-file." msgstr "Upload het geëxporteerde ZIP-bestand." -#: openforms/forms/forms/form_statistics.py:33 +#: openforms/forms/forms/form_statistics.py:36 +#, fuzzy +#| msgid "Successfully processed" +msgid "Successfully registered" +msgstr "Successvolle verwerking" + +#: openforms/forms/forms/form_statistics.py:38 +#, fuzzy +#| msgid "completed on" +msgid "Completed" +msgstr "afgerond op" + +#: openforms/forms/forms/form_statistics.py:43 +msgid "Kind" +msgstr "" + +#: openforms/forms/forms/form_statistics.py:47 +msgid "" +"Successfully registered submissions were sent to an external system for " +"further processing. Completed submissions are form submissions finished by " +"the end-user that may or may not be registered." +msgstr "" + +#: openforms/forms/forms/form_statistics.py:53 msgid "From" msgstr "Vanaf" -#: openforms/forms/forms/form_statistics.py:37 +#: openforms/forms/forms/form_statistics.py:57 msgid "Export form submission that were submitted on or after this date." msgstr "Exporteer inzendingen die op of na deze datum ingestuurd zijn." -#: openforms/forms/forms/form_statistics.py:42 +#: openforms/forms/forms/form_statistics.py:62 msgid "Until" msgstr "Tot" -#: openforms/forms/forms/form_statistics.py:46 +#: openforms/forms/forms/form_statistics.py:66 msgid "Export form submission that were submitted before or on this date." msgstr "Exporteer inzendingen die op of voor deze datum ingestuurd zijn." -#: openforms/forms/forms/form_statistics.py:51 +#: openforms/forms/forms/form_statistics.py:71 #: openforms/forms/templates/admin/forms/form/export.html:13 #: openforms/forms/templates/admin/forms/form/import_form.html:14 msgid "Forms" msgstr "Formulieren" -#: openforms/forms/forms/form_statistics.py:55 +#: openforms/forms/forms/form_statistics.py:75 msgid "" "Limit the export to the selected forms, if specified. Leave the field empty " "to export all forms. Hold CTRL (or COMMAND on Mac) to select multiple " @@ -6450,8 +6581,8 @@ msgid "" "The {name} \"{obj}\" was changed successfully. You may add another {name} " "below." msgstr "" -"De {name} \"{obj}\" is met succes gewijzigd. U kunt hieronder nog een {name}" -" bewerken." +"De {name} \"{obj}\" is met succes gewijzigd. U kunt hieronder nog een {name} " +"bewerken." #: openforms/forms/messages.py:70 msgid "You may edit it again below." @@ -6490,8 +6621,8 @@ msgid "" "Apply a specific appearance configuration to the form. If left blank, then " "the globally configured default is applied." msgstr "" -"Pas een specifieke stijl toe op het formulier. Indien geen optie gekozen is," -" dan wordt de globale instelling toegepast." +"Pas een specifieke stijl toe op het formulier. Indien geen optie gekozen is, " +"dan wordt de globale instelling toegepast." #: openforms/forms/models/form.py:87 msgid "translation enabled" @@ -6508,8 +6639,7 @@ msgstr "sleutel prijsvariabele" #: openforms/forms/models/form.py:100 msgid "Key of the variable that contains the calculated submission price." msgstr "" -"Sleutel van de variabele die de (berekende) kostprijs van de inzending " -"bevat." +"Sleutel van de variabele die de (berekende) kostprijs van de inzending bevat." #: openforms/forms/models/form.py:107 openforms/forms/models/form.py:469 msgid "authentication backend(s)" @@ -6541,8 +6671,8 @@ msgstr "maximum aantal inzendingen" #: openforms/forms/models/form.py:132 msgid "" -"Maximum number of allowed submissions per form. Leave this empty if no limit" -" is needed." +"Maximum number of allowed submissions per form. Leave this empty if no limit " +"is needed." msgstr "" "Het maximum aantal inzendingen die toegestaan zijn voor het formulier. Laat " "dit veld leeg als er geen beperking is." @@ -6613,8 +6743,8 @@ msgid "" "Whether to display the short progress summary, indicating the current step " "number and total amount of steps." msgstr "" -"Vink aan om het korte voortgangsoverzicht weer te geven. Dit overzicht toont" -" de huidige stap en het totaal aantal stappen, typisch onder de " +"Vink aan om het korte voortgangsoverzicht weer te geven. Dit overzicht toont " +"de huidige stap en het totaal aantal stappen, typisch onder de " "formuliertitel." #: openforms/forms/models/form.py:186 @@ -6633,8 +6763,8 @@ msgstr "voeg de \"bevestigingspaginatekst\" toe in de bevestigings-PDF" #: openforms/forms/models/form.py:195 msgid "Display the instruction from the confirmation page in the PDF." msgstr "" -"Vink aan om de inhoud van het \"bevestigingspaginatekst\"-veld toe te voegen" -" aan de PDF met gegevens ter bevestiging." +"Vink aan om de inhoud van het \"bevestigingspaginatekst\"-veld toe te voegen " +"aan de PDF met gegevens ter bevestiging." #: openforms/forms/models/form.py:198 msgid "send confirmation email" @@ -6666,8 +6796,8 @@ msgid "" "The text that will be displayed in the overview page to go to the previous " "step. Leave blank to get value from global configuration." msgstr "" -"Het label van de knop op de overzichtspagina om naar de vorige stap te gaan." -" Laat leeg om de waarde van de algemene configuratie te gebruiken." +"Het label van de knop op de overzichtspagina om naar de vorige stap te gaan. " +"Laat leeg om de waarde van de algemene configuratie te gebruiken." #: openforms/forms/models/form.py:250 msgid "" @@ -6706,8 +6836,8 @@ msgid "" "Content that will be shown on the start page of the form, below the title " "and above the log in text." msgstr "" -"Inhoud die op de formulierstartpagina wordt getoond, onder de titel en boven" -" de startknop(pen)." +"Inhoud die op de formulierstartpagina wordt getoond, onder de titel en boven " +"de startknop(pen)." #: openforms/forms/models/form.py:288 msgid "maintenance mode" @@ -6923,60 +7053,14 @@ msgstr "registratiebackends" msgid "{backend} on {form}" msgstr "{backend} van {form}" -#: openforms/forms/models/form_statistics.py:16 -msgid "form name" -msgstr "formuliernaam" - -#: openforms/forms/models/form_statistics.py:19 -msgid "" -"The name of the submitted form. This is saved separately in case of form " -"deletion." -msgstr "" -"De naam van het ingestuurde formulier, apart opgeslagen in het geval dat het" -" formulier zelf verwijderd wordt." - -#: openforms/forms/models/form_statistics.py:23 -msgid "Submission count" -msgstr "Aantal inzendingen" - -#: openforms/forms/models/form_statistics.py:25 -msgid "The number of the submitted forms." -msgstr "Het aantal ingestuurde formulieren." - -#: openforms/forms/models/form_statistics.py:28 -msgid "first submission" -msgstr "eerste inzending" - -#: openforms/forms/models/form_statistics.py:29 -msgid "Date and time of the first submitted form." -msgstr "Datum en tijd waarop het formulier voor het eerst ingezonden is." - -#: openforms/forms/models/form_statistics.py:33 -msgid "last submission" -msgstr "laatste inzending" - -#: openforms/forms/models/form_statistics.py:34 -msgid "Date and time of the last submitted form." -msgstr "Datum en tijd waarop het formulier voor het laatst ingezonden is." - -#: openforms/forms/models/form_statistics.py:38 -#: openforms/forms/models/form_statistics.py:39 -msgid "form statistics" -msgstr "formulierstatistieken" - -#: openforms/forms/models/form_statistics.py:42 -#, python-brace-format -msgid "{form_name} last submitted on {last_submitted}" -msgstr "{form_name}, laatst ingestuurd op {last_submitted}" - #: openforms/forms/models/form_step.py:39 msgid "step previous text" msgstr "Vorige stap-label" #: openforms/forms/models/form_step.py:43 msgid "" -"The text that will be displayed in the form step to go to the previous step." -" Leave blank to get value from global configuration." +"The text that will be displayed in the form step to go to the previous step. " +"Leave blank to get value from global configuration." msgstr "" "Het label van de knop om naar de vorige stap binnen het formulier te gaan. " "Laat leeg om de waarde van de algemene configuratie te gebruiken." @@ -6986,16 +7070,16 @@ msgid "" "The text that will be displayed in the form step to save the current " "information. Leave blank to get value from global configuration." msgstr "" -"Het label van de knop om het formulier tussentijds op te slaan. Laat leeg om" -" de waarde van de algemene configuratie te gebruiken." +"Het label van de knop om het formulier tussentijds op te slaan. Laat leeg om " +"de waarde van de algemene configuratie te gebruiken." #: openforms/forms/models/form_step.py:61 msgid "" "The text that will be displayed in the form step to go to the next step. " "Leave blank to get value from global configuration." msgstr "" -"Het label van de knop om naar de volgende stap binnen het formulier te gaan." -" Laat leeg om de waarde van de algemene configuratie te gebruiken." +"Het label van de knop om naar de volgende stap binnen het formulier te gaan. " +"Laat leeg om de waarde van de algemene configuratie te gebruiken." #: openforms/forms/models/form_step.py:66 msgid "is applicable" @@ -7014,6 +7098,13 @@ msgstr "formulierstappen" msgid "{form_name} step {order}: {definition_name}" msgstr "{form_name} stap {order}: {definition_name}" +#: openforms/forms/models/form_submission_statistics.py:48 +#: openforms/forms/models/form_submission_statistics.py:49 +#, fuzzy +#| msgid "Export submission statistics" +msgid "form submission statistics" +msgstr "Inzendingstatistieken exporteren" + #: openforms/forms/models/form_variable.py:109 msgid "Form to which this variable is related" msgstr "Formulier waarbij deze variabele hoort" @@ -7045,8 +7136,7 @@ msgid "" "Where will the data that will be associated with this variable come from" msgstr "Oorsprong van de gegevens die in deze variabele opgeslagen worden" -#: openforms/forms/models/form_variable.py:140 -#: openforms/variables/models.py:91 +#: openforms/forms/models/form_variable.py:140 openforms/variables/models.py:91 msgid "service fetch configuration" msgstr "Servicebevragingconfiguratie" @@ -7079,8 +7169,8 @@ msgid "" "main identifier be used, or that related to the authorised person?" msgstr "" "Indien meerdere unieke identificaties beschikbaar zijn (bijvoorbeeld bij " -"eHerkenning Bewindvoering en DigiD Machtigen), welke prefill-gegevens moeten" -" dan opgehaald worden? Deze voor de machtiger of de gemachtigde?" +"eHerkenning Bewindvoering en DigiD Machtigen), welke prefill-gegevens moeten " +"dan opgehaald worden? Deze voor de machtiger of de gemachtigde?" #: openforms/forms/models/form_variable.py:171 msgid "prefill options" @@ -7218,8 +7308,7 @@ msgstr "Is geavanceerd" #: openforms/forms/models/logic.py:46 msgid "" -"Is this an advanced rule (the admin user manually wrote the trigger as " -"JSON)?" +"Is this an advanced rule (the admin user manually wrote the trigger as JSON)?" msgstr "" "Is dit een geavanceerde regel (de beheerder heeft de trigger handmatig als " "JSON geschreven)?" @@ -7256,33 +7345,29 @@ msgstr "Formulierlogica-prijsregel" msgid "form price rules" msgstr "Formulierlogica-prijsregels" -#: openforms/forms/statistics.py:39 +#: openforms/forms/statistics.py:40 #: openforms/registrations/contrib/objects_api/registration_variables.py:31 #: openforms/submissions/api/serializers.py:450 msgid "Public reference" msgstr "Publieke referentie" -#: openforms/forms/statistics.py:40 -#| msgid "Form name" +#: openforms/forms/statistics.py:41 msgid "Form name (public)" msgstr "Formuliernaam (publiek)" -#: openforms/forms/statistics.py:41 -#| msgid "Form name" +#: openforms/forms/statistics.py:42 msgid "Form name (internal)" msgstr "Formuliernaam (intern)" -#: openforms/forms/statistics.py:42 -#| msgid "Submit" +#: openforms/forms/statistics.py:43 msgid "Submitted on" msgstr "Ingezonden op" -#: openforms/forms/statistics.py:43 -#| msgid "Registration" +#: openforms/forms/statistics.py:44 msgid "Registered on" msgstr "Geregistreerd op" -#: openforms/forms/statistics.py:45 +#: openforms/forms/statistics.py:46 #, python-brace-format msgid "Successfully registered submissions between {start} and {end}" msgstr "Geslaagde registraties van {start} tot en met {end}" @@ -7311,15 +7396,18 @@ msgstr "Formulieren zonder categorie" #: openforms/forms/templates/admin/forms/form/export.html:24 msgid "" "\n" -" Once your request has been processed, you will be sent an email (at the address configured in your admin\n" -" profile) containing a link where you can download a zip file with all the exported forms.\n" +" Once your request has been processed, you will be sent an email " +"(at the address configured in your admin\n" +" profile) containing a link where you can download a zip file " +"with all the exported forms.\n" " " msgstr "" "\n" -"Zodra uw verzoek verwerkt is, ontvangt u een e-mail met een link naar het ZIP-bestand dat alle geëxporteerde formulieren bevat." +"Zodra uw verzoek verwerkt is, ontvangt u een e-mail met een link naar het " +"ZIP-bestand dat alle geëxporteerde formulieren bevat." #: openforms/forms/templates/admin/forms/form/export.html:41 -#: openforms/forms/templates/admin/forms/formstatistics/export_form.html:62 +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/export_form.html:62 msgid "Export" msgstr "Exporteren" @@ -7339,11 +7427,13 @@ msgstr "Hallo," #, python-format msgid "" "\n" -" Your zip file containing the exported forms is ready and can be downloaded at the following URL:\n" +" Your zip file containing the exported forms is ready and can be " +"downloaded at the following URL:\n" " %(download_url)s\n" msgstr "" "\n" -"Uw ZIP-bestand met formulier-exports is klaar. U kunt deze downloaden op de volgende URL: %(download_url)s.\n" +"Uw ZIP-bestand met formulier-exports is klaar. U kunt deze downloaden op de " +"volgende URL: %(download_url)s.\n" #: openforms/forms/templates/admin/forms/formsexport/email_content.html:13 msgid "Best wishes," @@ -7353,21 +7443,30 @@ msgstr "Met vriendelijke groet," msgid "Open Forms" msgstr "Open Formulieren" -#: openforms/forms/templates/admin/forms/formstatistics/change_list_object_tools.html:7 -#: openforms/forms/templates/admin/forms/formstatistics/export_form.html:15 -#: openforms/forms/templates/admin/forms/formstatistics/export_form.html:21 -#: openforms/forms/templates/admin/forms/formstatistics/export_form.html:26 -#| msgid "Store submission step data" +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/change_list.html:12 +msgid "form name" +msgstr "formuliernaam" + +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/change_list.html:18 +#, fuzzy +#| msgid "Submission count" +msgid "submission count" +msgstr "Aantal inzendingen" + +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/change_list_object_tools.html:7 +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/export_form.html:15 +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/export_form.html:21 +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/export_form.html:26 msgid "Export submission statistics" msgstr "Inzendingstatistieken exporteren" -#: openforms/forms/templates/admin/forms/formstatistics/export_form.html:33 +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/export_form.html:33 msgid "" "

Here you can create an export of successfully registered form " "submissions. The export file contains the following columns: public " "reference, form name, form internal name, the submission datetime and the " -"timestamp of registration.

You can use the filters below to limit the" -" result set in the export.

" +"timestamp of registration.

You can use the filters below to limit the " +"result set in the export.

" msgstr "" "

Je kan hier een export maken van inzendingen die met success " "geregistreerd zijn. Het exportbestand bevat de volgende kolommen: publieke " @@ -7375,6 +7474,16 @@ msgstr "" "en het tijdstip van registratie.

Je kan de onderstaande filters " "gebruiken om de geëxporteerde items te beperken.

" +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/search_form.html:8 +#, fuzzy +#| msgid "Search engines" +msgid "Search" +msgstr "Zoekmachines" + +#: openforms/forms/templates/admin/forms/formsubmissionstatistics/search_form.html:10 +msgid "Show all" +msgstr "" + #: openforms/forms/templates/forms/form_list.html:6 msgid "You are seeing this page because you're a staff user." msgstr "U ziet deze pagina omdat u een ingelogde beheerder bent." @@ -7447,46 +7556,46 @@ msgstr "AVG" msgid "Hijack" msgstr "Kaping" -#: openforms/logging/models.py:37 +#: openforms/logging/models.py:41 msgid "timeline log entry" msgstr "tijdlijn logboekvermelding" -#: openforms/logging/models.py:38 +#: openforms/logging/models.py:42 msgid "timeline log entries" msgstr "tijdlijn logboekvermeldingen " -#: openforms/logging/models.py:65 +#: openforms/logging/models.py:71 #, python-brace-format msgid "Staff user {user}" msgstr "Beheerder {user}" -#: openforms/logging/models.py:69 +#: openforms/logging/models.py:76 #, python-brace-format msgid "Authenticated via plugin {auth}" msgstr "Geauthenticeerd via plugin {auth}" -#: openforms/logging/models.py:70 +#: openforms/logging/models.py:77 msgid "Anonymous user" msgstr "Anonieme gebruiker" -#: openforms/logging/models.py:91 openforms/logging/models.py:119 -#: openforms/logging/models.py:128 +#: openforms/logging/models.py:104 openforms/logging/models.py:133 +#: openforms/logging/models.py:142 msgid "(unknown)" msgstr "(onbekend)" -#: openforms/logging/models.py:154 +#: openforms/logging/models.py:163 msgid "content object" msgstr "object" -#: openforms/logging/models.py:159 +#: openforms/logging/models.py:170 msgid "message" msgstr "bericht" -#: openforms/logging/models.py:185 +#: openforms/logging/models.py:198 msgid "avg timeline log entry" msgstr "AVG logboekvermelding" -#: openforms/logging/models.py:186 +#: openforms/logging/models.py:199 msgid "avg timeline log entries" msgstr "AVG logboekvermeldingen " @@ -7617,8 +7726,8 @@ msgstr "%(lead)s: bulk-export bestand gedownload." #: openforms/logging/templates/logging/events/email_status_change.txt:2 #, python-format msgid "" -"%(lead)s: The status of the email being sent for the event \"%(event)s\" has" -" changed. It is now: \"%(status)s\"" +"%(lead)s: The status of the email being sent for the event \"%(event)s\" has " +"changed. It is now: \"%(status)s\"" msgstr "" "%(lead)s: De e-mailverzendstatus voor het event \"%(event)s\" is gewijzigd " "naar \"%(status)s\"." @@ -7673,17 +7782,17 @@ msgstr "" #: openforms/logging/templates/logging/events/object_ownership_check_failure.txt:2 #, python-format msgid "" -"%(lead)s: Registration plugin %(plugin)s reported: authenticated user is not" -" the owner of referenced object." +"%(lead)s: Registration plugin %(plugin)s reported: authenticated user is not " +"the owner of referenced object." msgstr "" -"%(lead)s: Registratieplugin %(plugin)s meldt: de ingelogde gebruiker is niet" -" de eigenaar van het aangewezen object." +"%(lead)s: Registratieplugin %(plugin)s meldt: de ingelogde gebruiker is niet " +"de eigenaar van het aangewezen object." #: openforms/logging/templates/logging/events/object_ownership_check_success.txt:2 #, python-format msgid "" -"%(lead)s: Registration plugin %(plugin)s reported: authenticated user is the" -" owner of referenced object." +"%(lead)s: Registration plugin %(plugin)s reported: authenticated user is the " +"owner of referenced object." msgstr "" "%(lead)s: Registratieplugin %(plugin)s meldt: de ingelogde gebruiker is de " "eigenaar van het aangewezen object." @@ -7694,8 +7803,8 @@ msgid "" "%(lead)s: User %(user)s viewed outgoing request log %(method)s %(url)s in " "the admin" msgstr "" -"%(lead)s: Gebruiker %(user)s bekeek de log voor uitgaande verzoek %(method)s" -" %(url)s in de admin." +"%(lead)s: Gebruiker %(user)s bekeek de log voor uitgaande verzoek %(method)s " +"%(url)s in de admin." #: openforms/logging/templates/logging/events/payment_flow_failure.txt:2 #, python-format @@ -7783,8 +7892,7 @@ msgstr "%(lead)s: Prefillplugin %(plugin)s gaf lege waarden terug." #: openforms/logging/templates/logging/events/prefill_retrieve_failure.txt:2 #, python-format msgid "" -"%(lead)s: Prefill plugin %(plugin)s reported: Failed to retrieve " -"information." +"%(lead)s: Prefill plugin %(plugin)s reported: Failed to retrieve information." msgstr "" "%(lead)s: Prefillplugin %(plugin)s meldt: Informatie kon niet worden " "opgehaald." @@ -7795,8 +7903,8 @@ msgid "" "%(lead)s: Prefill plugin %(plugin)s reported: Successfully retrieved " "information to prefill fields: %(fields)s" msgstr "" -"%(lead)s: Prefillplugin %(plugin)s meldt: Informatie met succes opgehaald om" -" velden te prefillen: %(fields)s." +"%(lead)s: Prefillplugin %(plugin)s meldt: Informatie met succes opgehaald om " +"velden te prefillen: %(fields)s." #: openforms/logging/templates/logging/events/price_calculation_variable_error.txt:2 #, python-format @@ -7821,8 +7929,7 @@ msgstr "%(lead)s: Registratie debuggegevens: %(data)s" #: openforms/logging/templates/logging/events/registration_failure.txt:2 #, python-format -msgid "" -"%(lead)s: Registration plugin %(plugin)s reported: Registration failed." +msgid "%(lead)s: Registration plugin %(plugin)s reported: Registration failed." msgstr "%(lead)s: Registratieplugin %(plugin)s meldt: Registratie mislukt." #: openforms/logging/templates/logging/events/registration_payment_update_failure.txt:2 @@ -7982,14 +8089,12 @@ msgstr "De naam om weer te geven in de domeinwisselaar" #: openforms/multidomain/models.py:14 msgid "" "The absolute URL to redirect to. Typically this starts the login process on " -"the other domain. For example: https://open-" -"forms.example.com/oidc/authenticate/ or https://open-" -"forms.example.com/admin/login/" +"the other domain. For example: https://open-forms.example.com/oidc/" +"authenticate/ or https://open-forms.example.com/admin/login/" msgstr "" "De volledige URL om naar om te leiden. Deze URL start typisch het login " -"proces op het doeldomein. Bijvoorbeeld: https://open-" -"forms.example.com/oidc/authenticate/ of https://open-" -"forms.example.com/admin/login/" +"proces op het doeldomein. Bijvoorbeeld: https://open-forms.example.com/oidc/" +"authenticate/ of https://open-forms.example.com/admin/login/" #: openforms/multidomain/models.py:20 msgid "current" @@ -7997,11 +8102,11 @@ msgstr "huidige" #: openforms/multidomain/models.py:22 msgid "" -"Select this to show this domain as the current domain. The current domain is" -" selected by default and will not trigger a redirect." +"Select this to show this domain as the current domain. The current domain is " +"selected by default and will not trigger a redirect." msgstr "" -"Selecteer deze optie om dit domein weer te geven als het huidige domein. Het" -" huidige domein is standaard geselecteerd in de domeinwisselaar." +"Selecteer deze optie om dit domein weer te geven als het huidige domein. Het " +"huidige domein is standaard geselecteerd in de domeinwisselaar." #: openforms/multidomain/models.py:29 msgid "domains" @@ -8142,8 +8247,8 @@ msgid "" msgstr "" "Sjabloon voor de titel die op de betaalpagina getoond wordt. Je kan alle " "formuliervariabelen gebruiken (gebruik de variabelesleutel als naam) en de " -"`public_reference` sjabloonvariabele. Indien geen sjabloon opgegeven is, dan" -" wordt een standaardomschrijving gebruikt." +"`public_reference` sjabloonvariabele. Indien geen sjabloon opgegeven is, dan " +"wordt een standaardomschrijving gebruikt." #: openforms/payments/contrib/ogone/plugin.py:61 msgid "COM template" @@ -8155,16 +8260,16 @@ msgid "" "overviews for the backoffice. Use this to link the payment back to a " "particular process or form. You can use all form variables (using their " "keys) and the `public_reference` template variable. If unspecified, a " -"default description is used. Note that the length of the result is capped to" -" 100 characters and only alpha-numeric characters are allowed." +"default description is used. Note that the length of the result is capped to " +"100 characters and only alpha-numeric characters are allowed." msgstr "" "Sjabloon voor de omschrijving van de betaling in de afschriften die je bij " "Ogone kan ophalen. Gebruik dit om betalingen aan processen/afdelingen te " "koppelen. Je kan alle formuliervariabelen gebruiken (gebruik de " "variabelesleutel als naam) en de `public_reference` sjabloonvariabele. " "Indien geen sjabloon opgegeven is, dan wordt een standaardomschrijving " -"gebruikt. Merk op dat het resultaat op 100 karakters afgekapt wordt en enkel" -" alfanumerieke tekens toegestaan zijn." +"gebruikt. Merk op dat het resultaat op 100 karakters afgekapt wordt en enkel " +"alfanumerieke tekens toegestaan zijn." #: openforms/payments/contrib/ogone/plugin.py:82 msgid "Ogone legacy" @@ -8174,8 +8279,7 @@ msgstr "Ogone legacy" #, python-brace-format msgid "" "[Open Forms] {form_name} - submission payment received {public_reference}" -msgstr "" -"[Open Formulieren] {form_name} - betaling ontvangen {public_reference}" +msgstr "[Open Formulieren] {form_name} - betaling ontvangen {public_reference}" #: openforms/payments/models.py:102 msgid "Payment backend" @@ -8197,15 +8301,14 @@ msgstr "Bestelling ID" #: openforms/payments/models.py:115 msgid "" "The order ID to be sent to the payment provider. This ID is built by " -"concatenating an optional global prefix, the submission public reference and" -" a unique incrementing ID." +"concatenating an optional global prefix, the submission public reference and " +"a unique incrementing ID." msgstr "" "Het ordernummer wat naar de betaalprovider gestuurd wordt. Dit nummer wordt " "opgebouwd met een (optionele) globale prefix, publieke " "inzendingsreferentienummer en een uniek nummer." -#: openforms/payments/models.py:121 -#: openforms/submissions/api/serializers.py:99 +#: openforms/payments/models.py:121 openforms/submissions/api/serializers.py:99 msgid "payment amount" msgstr "bedrag" @@ -8268,9 +8371,11 @@ msgstr "Start het betaalproces" #: openforms/payments/views.py:45 msgid "" -"This endpoint provides information to start the payment flow for a submission.\n" +"This endpoint provides information to start the payment flow for a " +"submission.\n" "\n" -"Due to support for legacy platforms this view doesn't redirect but provides information for the frontend to be used client side.\n" +"Due to support for legacy platforms this view doesn't redirect but provides " +"information for the frontend to be used client side.\n" "\n" "Various validations are performed:\n" "* the form and submission must require payment\n" @@ -8279,11 +8384,16 @@ msgid "" "* the `next` parameter must be present\n" "* the `next` parameter must match the CORS policy\n" "\n" -"The HTTP 200 response contains the information to start the flow with the payment provider. Depending on the 'type', send a `GET` or `POST` request with the `data` as 'Form Data' to the given 'url'." +"The HTTP 200 response contains the information to start the flow with the " +"payment provider. Depending on the 'type', send a `GET` or `POST` request " +"with the `data` as 'Form Data' to the given 'url'." msgstr "" -"Dit endpoint geeft informatie om het betaalproces te starten voor een inzending.\n" +"Dit endpoint geeft informatie om het betaalproces te starten voor een " +"inzending.\n" "\n" -"Om legacy platformen te ondersteunen kan dit endpoint niet doorverwijzen maar geeft doorverwijs informatie terug aan de frontend die het verder moet afhandelen.\n" +"Om legacy platformen te ondersteunen kan dit endpoint niet doorverwijzen " +"maar geeft doorverwijs informatie terug aan de frontend die het verder moet " +"afhandelen.\n" "\n" "Diverse validaties worden uitgevoerd:\n" "* het formulier vereist betaling\n" @@ -8291,7 +8401,9 @@ msgstr "" "* de `next` parameter moet aanwezig zijn\n" "* de `next` parameter moet overeenkomen met het CORS-beleid\n" "\n" -"Het HTTP 200 antwoord bevat informatie om het betaalproces te starten bij de betaalprovider. Afhankelijk van het `type`, een `POST` of `GET` is wordt verstuurd met de `data` als 'Form Data' naar de opgegeven 'url'." +"Het HTTP 200 antwoord bevat informatie om het betaalproces te starten bij de " +"betaalprovider. Afhankelijk van het `type`, een `POST` of `GET` is wordt " +"verstuurd met de `data` als 'Form Data' naar de opgegeven 'url'." #: openforms/payments/views.py:63 msgid "UUID identifying the submission." @@ -8319,9 +8431,11 @@ msgstr "Aanroeppunt van het externe betaalprovider proces" #: openforms/payments/views.py:142 msgid "" -"Payment plugins call this endpoint in the return step of the payment flow. Depending on the plugin, either `GET` or `POST` is allowed as HTTP method.\n" +"Payment plugins call this endpoint in the return step of the payment flow. " +"Depending on the plugin, either `GET` or `POST` is allowed as HTTP method.\n" "\n" -"Typically payment plugins will redirect again to the URL where the SDK is embedded.\n" +"Typically payment plugins will redirect again to the URL where the SDK is " +"embedded.\n" "\n" "Various validations are performed:\n" "* the form and submission must require payment\n" @@ -8329,7 +8443,9 @@ msgid "" "* payment is required and configured on the form\n" "* the redirect target must match the CORS policy" msgstr "" -"Betaalproviderplugins roepen dit endpoint aan zodra het externe betaalproces is afgerond. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan als HTTP-methode.\n" +"Betaalproviderplugins roepen dit endpoint aan zodra het externe betaalproces " +"is afgerond. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan " +"als HTTP-methode.\n" "\n" "Betaalproviderplugins zullen typisch een redirect uitvoeren naar de SDK.\n" "\n" @@ -8364,16 +8480,21 @@ msgstr "Webhook-handler voor externe betalingsproces" #: openforms/payments/views.py:278 msgid "" -"This endpoint is used for server-to-server calls. Depending on the plugin, either `GET` or `POST` is allowed as HTTP method.\n" +"This endpoint is used for server-to-server calls. Depending on the plugin, " +"either `GET` or `POST` is allowed as HTTP method.\n" "\n" "Various validations are performed:\n" "* the `plugin_id` is configured on the form\n" "* payment is required and configured on the form" msgstr "" -"Authenticatieplugins roepen dit endpoint aan zodra het externe login proces is afgerond. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan als HTTP-methode.\n" +"Authenticatieplugins roepen dit endpoint aan zodra het externe login proces " +"is afgerond. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan " +"als HTTP-methode.\n" "\n" "\n" -"Dit endpoint wordt gebruikt voor server-naar-server communicatie. Afhankelijk van de plugin, een `POST` of `GET` is toegestaan als HTTP-methode.\n" +"Dit endpoint wordt gebruikt voor server-naar-server communicatie. " +"Afhankelijk van de plugin, een `POST` of `GET` is toegestaan als HTTP-" +"methode.\n" "\n" "Diverse validaties worden uitgevoerd:\n" "* de `plugin_id` moet geconfigureerd zijn op het formulier\n" @@ -8384,12 +8505,12 @@ msgid "Not found. The slug did not point to a live plugin." msgstr "Niet gevonden. Het URL-deel verwees niet naar een actieve plugin." #: openforms/plugins/api/serializers.py:10 -#: openforms/validations/api/serializers.py:64 +#: openforms/validations/api/serializers.py:65 msgid "The unique plugin identifier" msgstr "De unieke plugin identificatie" #: openforms/plugins/api/serializers.py:15 -#: openforms/validations/api/serializers.py:69 +#: openforms/validations/api/serializers.py:70 msgid "The human-readable name for a plugin." msgstr "De eenvoudige naam van de plugin." @@ -8402,42 +8523,41 @@ msgstr "" msgid "Choose a valid plugin" msgstr "Kies een geldige plugin" -#: openforms/prefill/api/serializers.py:16 +#: openforms/prefill/api/serializers.py:17 msgid "Required authentication attribute" msgstr "Verplicht authenticatie attribuut" -#: openforms/prefill/api/serializers.py:18 +#: openforms/prefill/api/serializers.py:19 msgid "" "The authentication attribute required for this plugin to lookup remote data." msgstr "" "Het authenticatie attribuut dat verplicht is voor deze plugin om te zoeken." -#: openforms/prefill/api/serializers.py:23 +#: openforms/prefill/api/serializers.py:24 msgid "Extra configuration context" msgstr "Extra configuratiecontext" -#: openforms/prefill/api/serializers.py:25 +#: openforms/prefill/api/serializers.py:26 msgid "" "Extra information for option configuration that is specific to the plugin " "type" msgstr "Extra informatie voor pluginspecifieke instellingen." -#: openforms/prefill/api/serializers.py:34 +#: openforms/prefill/api/serializers.py:35 #: openforms/validations/api/serializers.py:23 msgid "Form.io component type" msgstr "Form.io componenttype" -#: openforms/prefill/api/serializers.py:35 +#: openforms/prefill/api/serializers.py:36 msgid "Only return plugins applicable for the specified component type." -msgstr "" -"Geef enkel plugins die relevant zijn voor het opgegeven componenttype." +msgstr "Geef enkel plugins die relevant zijn voor het opgegeven componenttype." -#: openforms/prefill/api/serializers.py:68 +#: openforms/prefill/api/serializers.py:70 #: openforms/registrations/api/serializers.py:31 msgid "The unique attribute identifier" msgstr "De unieke attribuut identificatie" -#: openforms/prefill/api/serializers.py:72 +#: openforms/prefill/api/serializers.py:74 #: openforms/registrations/api/serializers.py:35 msgid "The human-readable name for an attribute." msgstr "De eenvoudige naam van het attribuut." @@ -9235,8 +9355,8 @@ msgstr "Overlijden > Datum > Onbekend" msgid "Haal Centraal: BRP Personen Bevragen" msgstr "Haal Centraal: BRP Personen Bevragen" -#: openforms/prefill/contrib/haalcentraal_brp/plugin.py:183 -#: openforms/prefill/contrib/stufbg/plugin.py:218 +#: openforms/prefill/contrib/haalcentraal_brp/plugin.py:184 +#: openforms/prefill/contrib/stufbg/plugin.py:219 msgid "Service not selected" msgstr "Service is niet geselecteerd." @@ -9248,13 +9368,13 @@ msgstr "KvK prefillplugin" msgid "KvK Company by KvK number" msgstr "KvK Bedrijf via KvK-nummer" -#: openforms/prefill/contrib/kvk/plugin.py:115 +#: openforms/prefill/contrib/kvk/plugin.py:116 #: openforms/prefill/contrib/suwinet/plugin.py:85 #, python-brace-format msgid "Configuration error: {exception}" msgstr "Configuratiefout: {exception}" -#: openforms/prefill/contrib/kvk/plugin.py:123 +#: openforms/prefill/contrib/kvk/plugin.py:124 msgid "Response not a dictionary" msgstr "Antwoord is geen object" @@ -9355,7 +9475,7 @@ msgstr "" "gebruiker bij het object hoort waarnaar verwezen wordt." #: openforms/prefill/contrib/objects_api/api/serializers.py:88 -#: openforms/registrations/contrib/objects_api/config.py:244 +#: openforms/registrations/contrib/objects_api/config.py:245 msgid "variables mapping" msgstr "variabelekoppelingen" @@ -9377,7 +9497,7 @@ msgstr "Objecten-API prefill-plugin" #: openforms/prefill/contrib/objects_api/plugin.py:78 #: openforms/registrations/contrib/objects_api/plugin.py:134 -#: openforms/registrations/contrib/zgw_apis/plugin.py:613 +#: openforms/registrations/contrib/zgw_apis/plugin.py:611 msgid "Manage API groups" msgstr "API-groepen beheren" @@ -9389,12 +9509,12 @@ msgstr "StUF-BG prefillplugin" msgid "StUF-BG" msgstr "StUF-BG" -#: openforms/prefill/contrib/stufbg/plugin.py:228 +#: openforms/prefill/contrib/stufbg/plugin.py:229 #, python-brace-format msgid "SyntaxError in response: {exception}" msgstr "Structuurfout in antwoord: {exception}" -#: openforms/prefill/contrib/stufbg/plugin.py:235 +#: openforms/prefill/contrib/stufbg/plugin.py:236 #, python-brace-format msgid "Unexpected response: expected '{message}' SOAP response" msgstr "Onverwacht antwoord: Verwacht '{message}' SOAP antwoord" @@ -9478,8 +9598,7 @@ msgstr "Lijst van beschikbare registratie attributen" #: openforms/registrations/contrib/camunda/api.py:20 msgid "The process definition identifier, used to group different versions." -msgstr "" -"De procesdefinitie-ID, gebruikt om verschillende versies te groeperen." +msgstr "De procesdefinitie-ID, gebruikt om verschillende versies te groeperen." #: openforms/registrations/contrib/camunda/api.py:24 msgid "The human-readable name of the process definition." @@ -9640,8 +9759,8 @@ msgstr "De lijst met geneste variabeledefinities" #: openforms/registrations/contrib/camunda/serializers.py:168 msgid "" -"Name of the variable in the Camunda process instance. For complex variables," -" the name must be supplied." +"Name of the variable in the Camunda process instance. For complex variables, " +"the name must be supplied." msgstr "" "Naam van de variabele in het Camunda proces. Voor complexe variabelen moet " "een naam opgegeven zin." @@ -9657,8 +9776,8 @@ msgstr "De procesdefinitie waarvoor een procesinstantie moet worden gestart." #: openforms/registrations/contrib/camunda/serializers.py:193 msgid "" -"Which version of the process definition to start. The latest version is used" -" if not specified." +"Which version of the process definition to start. The latest version is used " +"if not specified." msgstr "" "Welke versie van de procesdefinitie moet worden gestart. Indien niet " "opgegeven, wordt de nieuwste versie gebruikt." @@ -9674,8 +9793,8 @@ msgstr "Complexe procesvariabelen" #: openforms/registrations/contrib/camunda/serializers.py:240 #, python-brace-format msgid "" -"The variable name(s) '{var_names}' occur(s) multiple times. Hint: check that" -" they are not specified in both the process variables and complex process " +"The variable name(s) '{var_names}' occur(s) multiple times. Hint: check that " +"they are not specified in both the process variables and complex process " "variables." msgstr "" "De variabele naam(en) '{var_names}' komen meerdere keren voor. Tip: " @@ -9716,7 +9835,6 @@ msgid "The email addresses to which the submission details will be sent" msgstr "Het e-mailadres waar de inzendingen naar toe gemaild worden" #: openforms/registrations/contrib/email/config.py:45 -#| msgid "Key of the form variable to take the value from." msgid "Key of the target variable containing the email address" msgstr "Sleutel van de formuliervariabele die het e-mailadres bevat" @@ -9726,10 +9844,10 @@ msgid "" "using this field, the mailing will only be sent to this email address. The " "email addresses field would then be ignored. " msgstr "" -"Sleutel van de variabele waarvan de waarde gebruikt wordt als ontvanger " -"(e-mailadres). Als je dit instelt en de variabele heeft een waarde, dan " -"wordt de e-mail enkel naar dit adres gestuurd - de vaste e-mailaddressen " -"worden genegeerd." +"Sleutel van de variabele waarvan de waarde gebruikt wordt als ontvanger (e-" +"mailadres). Als je dit instelt en de variabele heeft een waarde, dan wordt " +"de e-mail enkel naar dit adres gestuurd - de vaste e-mailaddressen worden " +"genegeerd." #: openforms/registrations/contrib/email/config.py:56 msgid "The format(s) of the attachment(s) containing the submission details" @@ -9758,8 +9876,8 @@ msgid "" msgstr "" "Vink aan om gebruikersbestanden als bijlage aan de registratiemail toe te " "voegen. Als een waarde gezet is, dan heeft deze hogere prioriteit dan de " -"globale configuratie. Formulierbeheerders moeten ervoor zorgen dat de totale" -" maximale bestandsgrootte onder de maximale e-mailbestandsgrootte blijft." +"globale configuratie. Formulierbeheerders moeten ervoor zorgen dat de totale " +"maximale bestandsgrootte onder de maximale e-mailbestandsgrootte blijft." #: openforms/registrations/contrib/email/config.py:78 msgid "email subject" @@ -9875,7 +9993,7 @@ msgstr "E-mailregistratieconfiguratie" msgid "Email registration" msgstr "E-mail registratie" -#: openforms/registrations/contrib/email/plugin.py:256 +#: openforms/registrations/contrib/email/plugin.py:264 msgid "Test" msgstr "Testen" @@ -9944,13 +10062,13 @@ msgstr "maplocatie" #: openforms/registrations/contrib/microsoft_graph/config.py:27 msgid "" -"The path of the folder where folders containing Open-Forms related documents" -" will be created. You can use the expressions {{ year }}, {{ month }} and {{" -" day }}. It should be an absolute path - i.e. it should start with /" +"The path of the folder where folders containing Open-Forms related documents " +"will be created. You can use the expressions {{ year }}, {{ month }} and " +"{{ day }}. It should be an absolute path - i.e. it should start with /" msgstr "" "Het pad naar de map waar mappen voor documenten van Open Formulieren " -"aangemaakt worden. Je kan de expressies {{ year }}, {{ month }} en {{ day }}" -" gebruiken. Dit moet een absoluut pad zijn (dus beginnen met een /)." +"aangemaakt worden. Je kan de expressies {{ year }}, {{ month }} en {{ day }} " +"gebruiken. Dit moet een absoluut pad zijn (dus beginnen met een /)." #: openforms/registrations/contrib/microsoft_graph/config.py:35 msgid "drive ID" @@ -9975,7 +10093,7 @@ msgid "MSGraphService not selected" msgstr "Microsoft Graph service is niet ingesteld." #: openforms/registrations/contrib/microsoft_graph/plugin.py:105 -#: openforms/registrations/contrib/stuf_zds/plugin.py:399 +#: openforms/registrations/contrib/stuf_zds/plugin.py:398 #, python-brace-format msgid "Could not connect: {exception}" msgstr "Kan geen verbinding maken: {exception}" @@ -9991,7 +10109,8 @@ msgstr "verplicht" #: openforms/registrations/contrib/objects_api/api/serializers.py:18 msgid "Wether the path is marked as required in the JSON Schema." -msgstr "Geeft aan of het pad als \"verplicht\" gemarkeerd is in het JSON-schema." +msgstr "" +"Geeft aan of het pad als \"verplicht\" gemarkeerd is in het JSON-schema." #: openforms/registrations/contrib/objects_api/api/serializers.py:28 msgid "objecttype uuid" @@ -10046,8 +10165,8 @@ msgid "" "The schema version of the objects API Options. Not to be confused with the " "objecttype version." msgstr "" -"De versie van de optiesconfiguratie. Niet te verwarren met de versie van het" -" objecttype." +"De versie van de optiesconfiguratie. Niet te verwarren met de versie van het " +"objecttype." #: openforms/registrations/contrib/objects_api/config.py:97 msgid "" @@ -10055,8 +10174,8 @@ msgid "" "objecttype should have the following three attributes: 1) submission_id; 2) " "type (the type of productaanvraag); 3) data (the submitted form data)" msgstr "" -"UUID van het OBJECTTYPE voor de 'ProductAanvraag' in de Objecttypen API. Het" -" objecttype moet de volgende attributen bevatten: 1) submission_id; 2) type " +"UUID van het OBJECTTYPE voor de 'ProductAanvraag' in de Objecttypen API. Het " +"objecttype moet de volgende attributen bevatten: 1) submission_id; 2) type " "(het type van de 'ProductAanvraag'); 3) data (ingezonden formuliergegevens)" #: openforms/registrations/contrib/objects_api/config.py:109 @@ -10077,8 +10196,8 @@ msgstr "CSV bestand inzending uploaden" #: openforms/registrations/contrib/objects_api/config.py:126 msgid "" -"Indicates whether or not the submission CSV should be uploaded as a Document" -" in Documenten API and attached to the ProductAanvraag." +"Indicates whether or not the submission CSV should be uploaded as a Document " +"in Documenten API and attached to the ProductAanvraag." msgstr "" "Geeft aan of de inzendingsgegevens als CSV in de Documenten API moet " "geüpload worden en toegevoegd aan de ProductAanvraag." @@ -10087,7 +10206,7 @@ msgstr "" msgid "RSIN of organization, which creates the INFORMATIEOBJECT." msgstr "RSIN van de organisatie die het INFORMATIEOBJECT aanmaakt." -#: openforms/registrations/contrib/objects_api/config.py:145 +#: openforms/registrations/contrib/objects_api/config.py:146 msgid "" "Description of the document type in the Catalogi API to be used for the " "submission report PDF. The appropriate version will automatically be " @@ -10096,10 +10215,9 @@ msgid "" msgstr "" "Omschrijving van het documenttype in de Catalogi API voor het PDF-document " "met inzendingsgegevens. De juiste versie wordt automatisch geselecteerd op " -"basis van de inzendingsdatum en geldigheidsdatums van de " -"documenttypeversies." +"basis van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." -#: openforms/registrations/contrib/objects_api/config.py:158 +#: openforms/registrations/contrib/objects_api/config.py:159 msgid "" "Description of the document type in the Catalogi API to be used for the " "submission report CSV. The appropriate version will automatically be " @@ -10108,10 +10226,9 @@ msgid "" msgstr "" "Omschrijving van het documenttype in de Catalogi API voor het CSV-document " "met inzendingsgegevens. De juiste versie wordt automatisch geselecteerd op " -"basis van de inzendingsdatum en geldigheidsdatums van de " -"documenttypeversies." +"basis van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." -#: openforms/registrations/contrib/objects_api/config.py:171 +#: openforms/registrations/contrib/objects_api/config.py:172 msgid "" "Description of the document type in the Catalogi API to be used for the " "submission attachments. The appropriate version will automatically be " @@ -10119,14 +10236,14 @@ msgid "" "document type versions." msgstr "" "Omschrijving van het documenttype in de Catalogi API voor " -"inzendingsbijlagen. De juiste versie wordt automatisch geselecteerd op basis" -" van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." +"inzendingsbijlagen. De juiste versie wordt automatisch geselecteerd op basis " +"van de inzendingsdatum en geldigheidsdatums van de documenttypeversies." -#: openforms/registrations/contrib/objects_api/config.py:180 +#: openforms/registrations/contrib/objects_api/config.py:181 msgid "submission report PDF informatieobjecttype" msgstr "inzendings PDF document informatieobjecttype" -#: openforms/registrations/contrib/objects_api/config.py:182 +#: openforms/registrations/contrib/objects_api/config.py:183 msgid "" "URL that points to the INFORMATIEOBJECTTYPE in the Catalogi API to be used " "for the submission report PDF." @@ -10134,7 +10251,7 @@ msgstr "" "URL naar het INFORMATIEOBJECTTYPE in een Catalogi API dat wordt gebruikt " "voor het PDF-document." -#: openforms/registrations/contrib/objects_api/config.py:191 +#: openforms/registrations/contrib/objects_api/config.py:192 msgid "" "URL that points to the INFORMATIEOBJECTTYPE in the Catalogi API to be used " "for the submission report CSV." @@ -10142,7 +10259,7 @@ msgstr "" "URL naar het INFORMATIEOBJECTTYPE in een Catalogi API dat wordt gebruikt " "voor het CSV-document." -#: openforms/registrations/contrib/objects_api/config.py:200 +#: openforms/registrations/contrib/objects_api/config.py:201 msgid "" "URL that points to the INFORMATIEOBJECTTYPE in the Catalogi API to be used " "for the submission attachments." @@ -10150,31 +10267,31 @@ msgstr "" "URL naar het INFORMATIEOBJECTTYPE in een Catalogi API dat wordt gebruikt " "voor de bijlagen." -#: openforms/registrations/contrib/objects_api/config.py:209 +#: openforms/registrations/contrib/objects_api/config.py:210 msgid "productaanvraag type" msgstr "productaanvraag type" -#: openforms/registrations/contrib/objects_api/config.py:210 +#: openforms/registrations/contrib/objects_api/config.py:211 msgid "The type of ProductAanvraag." msgstr "Het type van de ProductAanvraag." -#: openforms/registrations/contrib/objects_api/config.py:215 +#: openforms/registrations/contrib/objects_api/config.py:216 msgid "JSON content field" msgstr "JSON-inhoud sjabloon" -#: openforms/registrations/contrib/objects_api/config.py:217 -#: openforms/registrations/contrib/zgw_apis/options.py:161 +#: openforms/registrations/contrib/objects_api/config.py:218 +#: openforms/registrations/contrib/zgw_apis/options.py:166 msgid "JSON template for the body of the request sent to the Objects API." msgstr "" "JSON-sjabloon voor de inhoud van het verzoek wat naar de Objecten API " "gestuurd wordt." -#: openforms/registrations/contrib/objects_api/config.py:228 +#: openforms/registrations/contrib/objects_api/config.py:229 #: openforms/registrations/contrib/objects_api/models.py:50 msgid "payment status update JSON template" msgstr "JSON-sjabloon voor de betaalstatus-update" -#: openforms/registrations/contrib/objects_api/config.py:230 +#: openforms/registrations/contrib/objects_api/config.py:231 #: openforms/registrations/contrib/objects_api/models.py:59 msgid "" "This template is evaluated with the submission data and the resulting JSON " @@ -10184,39 +10301,39 @@ msgstr "" "resulterende JSON wordt vervolgens naar de Objecten API gestuurd met een " "PATCH call om de betalingsvelden bij te werken." -#: openforms/registrations/contrib/objects_api/config.py:251 +#: openforms/registrations/contrib/objects_api/config.py:252 msgid "geometry variable" msgstr "Geometrievariabele" -#: openforms/registrations/contrib/objects_api/config.py:253 +#: openforms/registrations/contrib/objects_api/config.py:254 msgid "" "The 'dotted' path to a form variable key that should be mapped to the " "`record.geometry` attribute." msgstr "" -"De sleutel van de formuliervariabele die aan het geometrieveld " -"'record.geometry' gekoppeld wordt." +"De sleutel van de formuliervariabele die aan het geometrieveld 'record." +"geometry' gekoppeld wordt." -#: openforms/registrations/contrib/objects_api/config.py:276 +#: openforms/registrations/contrib/objects_api/config.py:277 #, python-brace-format msgid "{field_name} shouldn't be provided when version is 1" msgstr "{field_name} is niet van toepassing in v1" -#: openforms/registrations/contrib/objects_api/config.py:287 +#: openforms/registrations/contrib/objects_api/config.py:288 #, python-brace-format msgid "{field_name} shouldn't be provided when version is 2" msgstr "{field_name} is niet van toepassing in v2" -#: openforms/registrations/contrib/objects_api/config.py:294 +#: openforms/registrations/contrib/objects_api/config.py:295 #, python-brace-format msgid "Unknown version: {version}" msgstr "Onbekende versie: {version}" -#: openforms/registrations/contrib/objects_api/config.py:301 +#: openforms/registrations/contrib/objects_api/config.py:302 msgid "This field is required if \"Update existing object\" is checked" msgstr "" "Dit veld is verplicht wanneer \"Bestaand object bijwerken\" ingeschakeld is." -#: openforms/registrations/contrib/objects_api/config.py:390 +#: openforms/registrations/contrib/objects_api/config.py:391 msgid "" "To look up document types by their description, a catalogue reference is " "required. Either specify one on the API group or in the plugin options." @@ -10225,27 +10342,27 @@ msgstr "" "catalogus ingesteld zijn. Je kan de catalogus instellen in de API-groep of " "in de registratie-opties onder \"Documenttypen\"." -#: openforms/registrations/contrib/objects_api/config.py:403 +#: openforms/registrations/contrib/objects_api/config.py:404 #, python-brace-format msgid "No document type with description '{description}' found." msgstr "Kon documenttype met omschrijving '{description}' niet vinden." -#: openforms/registrations/contrib/objects_api/config.py:426 +#: openforms/registrations/contrib/objects_api/config.py:427 #, python-brace-format msgid "The provided {field} does not exist in the Catalogi API." msgstr "Het opgegeven {field} bestaat niet in de ingestelde Catalogi API." -#: openforms/registrations/contrib/objects_api/config.py:428 +#: openforms/registrations/contrib/objects_api/config.py:429 #, python-brace-format msgid "The provided {field} does not exist in the selected catalogue." msgstr "Het opgegeven {field} bestaat niet in de geselecteerde catalogus." -#: openforms/registrations/contrib/objects_api/config.py:477 +#: openforms/registrations/contrib/objects_api/config.py:478 msgid "The provided objecttype does not exist in the Objecttypes API." msgstr "" "Het opgegeven objecttype is niet gevonden in de ingestelde Objecttypen API." -#: openforms/registrations/contrib/objects_api/config.py:494 +#: openforms/registrations/contrib/objects_api/config.py:495 msgid "The provided objecttype version does not exist in the Objecttypes API." msgstr "" "De opgegeven objecttypeversie is niet gevonden in de ingestelde Objecttypen " @@ -10257,8 +10374,8 @@ msgstr "Productaanvraag type" #: openforms/registrations/contrib/objects_api/models.py:31 msgid "" -"Description of the 'ProductAanvraag' type. This value is saved in the 'type'" -" attribute of the 'ProductAanvraag'." +"Description of the 'ProductAanvraag' type. This value is saved in the 'type' " +"attribute of the 'ProductAanvraag'." msgstr "" "Omschrijving van het type van de 'Productaanvraag'. Deze waarde wordt " "bewaard in het 'type' attribuut van de 'ProductAanvraag'." @@ -10327,8 +10444,7 @@ msgstr "Documenten URL" #: openforms/registrations/contrib/objects_api/models.py:107 msgid "The URL of the submission attachment registered in the Documents API." msgstr "" -"De resource-URL in de Documenten API van de geregistreerde " -"inzendingsbijlage." +"De resource-URL in de Documenten API van de geregistreerde inzendingsbijlage." #: openforms/registrations/contrib/objects_api/plugin.py:41 msgid "Objects API registration" @@ -10418,8 +10534,7 @@ msgstr "Zaaktype status code voor nieuw aangemaakte zaken via StUF-ZDS" #: openforms/registrations/contrib/stuf_zds/options.py:61 msgid "Zaaktype status omschrijving for newly created zaken in StUF-ZDS" -msgstr "" -"Zaaktype status omschrijving voor nieuw aangemaakte zaken via StUF-ZDS" +msgstr "Zaaktype status omschrijving voor nieuw aangemaakte zaken via StUF-ZDS" #: openforms/registrations/contrib/stuf_zds/options.py:67 msgid "Documenttype description for newly created zaken in StUF-ZDS" @@ -10448,14 +10563,14 @@ msgid "" "is sent to StUF-ZDS. Those keys and the values belonging to them in the " "submission data are included in extraElementen." msgstr "" -"Met deze variabelekoppelingen stel je in welke formuliervariabelen als extra" -" elementen in StUF-ZDS meegestuurd worden, en met welke naam." +"Met deze variabelekoppelingen stel je in welke formuliervariabelen als extra " +"elementen in StUF-ZDS meegestuurd worden, en met welke naam." -#: openforms/registrations/contrib/stuf_zds/plugin.py:165 +#: openforms/registrations/contrib/stuf_zds/plugin.py:164 msgid "StUF-ZDS" msgstr "StUF-ZDS" -#: openforms/registrations/contrib/stuf_zds/plugin.py:392 +#: openforms/registrations/contrib/stuf_zds/plugin.py:391 msgid "StufService not selected" msgstr "StUF-service is niet ingesteld" @@ -10589,8 +10704,8 @@ msgid "" "be overridden in the Registration tab of a given form." msgstr "" "Aanduiding van de mate waarin het zaakdossier van de ZAAK voor de " -"openbaarheid bestemd is. Dit kan per formulier in de registratieconfiguratie" -" overschreven worden." +"openbaarheid bestemd is. Dit kan per formulier in de registratieconfiguratie " +"overschreven worden." #: openforms/registrations/contrib/zgw_apis/models.py:133 msgid "vertrouwelijkheidaanduiding document" @@ -10657,37 +10772,37 @@ msgstr "Zaaktype-identificatie" #: openforms/registrations/contrib/zgw_apis/options.py:70 msgid "" -"The case type will be retrieved in the specified catalogue. The version will" -" automatically be selected based on the submission completion timestamp. " -"When you specify this field, you MUST also specify a catalogue." +"The case type will be retrieved in the specified catalogue. The version will " +"automatically be selected based on the submission completion timestamp. When " +"you specify this field, you MUST also specify a catalogue." msgstr "" "Het zaaktype wordt opgehaald binnen de ingestelde catalogus. De juiste " "versie van het zaaktype wordt automatisch bepaald aan de hand van de " "inzendingsdatum. Als je een waarde voor dit veld opgeeft, dan moet ook een " "catalogus ingesteld zijn." -#: openforms/registrations/contrib/zgw_apis/options.py:78 +#: openforms/registrations/contrib/zgw_apis/options.py:79 msgid "Document type description" msgstr "Documenttypeomschrijving" -#: openforms/registrations/contrib/zgw_apis/options.py:80 +#: openforms/registrations/contrib/zgw_apis/options.py:81 msgid "" "The document type will be retrived in the specified catalogue. The version " -"will automatically be selected based on the submission completion timestamp." -" When you specify this field, you MUST also specify the case type via its " +"will automatically be selected based on the submission completion timestamp. " +"When you specify this field, you MUST also specify the case type via its " "identification. Only document types related to the case type are valid." msgstr "" "Het documenttype wordt opgehaald binnen de ingestelde catalogus. De juiste " "versie van het documenttype wordt automatisch bepaald aan de hand van de " "inzendingsdatum. Als je een waarde voor dit veld opgeeft, dan MOET je ook " -"het zaaktype via haar identificatie opgeven. Enkel documenttypen die bij het" -" zaaktype horen zijn geldig." +"het zaaktype via haar identificatie opgeven. Enkel documenttypen die bij het " +"zaaktype horen zijn geldig." -#: openforms/registrations/contrib/zgw_apis/options.py:89 +#: openforms/registrations/contrib/zgw_apis/options.py:91 msgid "Product url" msgstr "Product-URL" -#: openforms/registrations/contrib/zgw_apis/options.py:91 +#: openforms/registrations/contrib/zgw_apis/options.py:93 msgid "" "The product url will be retrieved from the specified case type and the " "version that is active at that moment. " @@ -10695,23 +10810,23 @@ msgstr "" "De product-URL wordt opgehaald uit het opgegeven zaaktype en de versie die " "op dat moment geldig is." -#: openforms/registrations/contrib/zgw_apis/options.py:101 +#: openforms/registrations/contrib/zgw_apis/options.py:103 msgid "URL of the ZAAKTYPE in the Catalogi API" msgstr "URL van het ZAAKTYPE in de Catalogi API" -#: openforms/registrations/contrib/zgw_apis/options.py:107 +#: openforms/registrations/contrib/zgw_apis/options.py:109 msgid "URL of the INFORMATIEOBJECTTYPE in the Catalogi API" msgstr "URL van het INFORMATIEOBJECTTYPE in de Catalogi API" -#: openforms/registrations/contrib/zgw_apis/options.py:115 +#: openforms/registrations/contrib/zgw_apis/options.py:117 msgid "RSIN of organization, which creates the ZAAK" msgstr "RSIN van de organisatie, die de ZAAK aanmaakt" -#: openforms/registrations/contrib/zgw_apis/options.py:118 +#: openforms/registrations/contrib/zgw_apis/options.py:121 msgid "Vertrouwelijkheidaanduiding" msgstr "Vertrouwelijkheidaanduiding" -#: openforms/registrations/contrib/zgw_apis/options.py:122 +#: openforms/registrations/contrib/zgw_apis/options.py:125 msgid "" "Indication of the level to which extend the dossier of the ZAAK is meant to " "be public." @@ -10719,7 +10834,7 @@ msgstr "" "Aanduiding van de mate waarin het zaakdossier van de ZAAK voor de " "openbaarheid bestemd is." -#: openforms/registrations/contrib/zgw_apis/options.py:128 +#: openforms/registrations/contrib/zgw_apis/options.py:131 msgid "" "Description (omschrijving) of the ROLTYPE to use for employees filling in a " "form for a citizen/company." @@ -10727,53 +10842,53 @@ msgstr "" "Omschrijving van het ROLTYPE om de medewerker te registreren die het " "formulier invult voor de klant (burger/bedrijf)." -#: openforms/registrations/contrib/zgw_apis/options.py:137 +#: openforms/registrations/contrib/zgw_apis/options.py:141 msgid "Which Objects API set to use." msgstr "De gewenste Objecten API-groep." -#: openforms/registrations/contrib/zgw_apis/options.py:138 +#: openforms/registrations/contrib/zgw_apis/options.py:142 msgid "Objects API set" msgstr "Objecten API-groep" -#: openforms/registrations/contrib/zgw_apis/options.py:143 +#: openforms/registrations/contrib/zgw_apis/options.py:147 msgid "objects API - objecttype" msgstr "objecten API - objecttype" -#: openforms/registrations/contrib/zgw_apis/options.py:145 +#: openforms/registrations/contrib/zgw_apis/options.py:149 msgid "" "URL that points to the ProductAanvraag objecttype in the Objecttypes API. " -"The objecttype should have the following three attributes: 1) submission_id;" -" 2) type (the type of productaanvraag); 3) data (the submitted form data)" +"The objecttype should have the following three attributes: 1) submission_id; " +"2) type (the type of productaanvraag); 3) data (the submitted form data)" msgstr "" -"URL naar het OBJECTTYPE voor de 'ProductAanvraag' in de Objecttypen API. Het" -" objecttype moet de volgende attributen bevatten: 1) submission_id; 2) type " +"URL naar het OBJECTTYPE voor de 'ProductAanvraag' in de Objecttypen API. Het " +"objecttype moet de volgende attributen bevatten: 1) submission_id; 2) type " "(het type van de 'ProductAanvraag'); 3) data (ingezonden formuliergegevens)" -#: openforms/registrations/contrib/zgw_apis/options.py:154 +#: openforms/registrations/contrib/zgw_apis/options.py:159 msgid "objects API - objecttype version" msgstr "objecten API - objecttypeversie" -#: openforms/registrations/contrib/zgw_apis/options.py:155 +#: openforms/registrations/contrib/zgw_apis/options.py:160 msgid "Version of the objecttype in the Objecttypes API" msgstr "Versie van het objecttype in de Objecttypen API" -#: openforms/registrations/contrib/zgw_apis/options.py:159 +#: openforms/registrations/contrib/zgw_apis/options.py:164 msgid "objects API - JSON content field" msgstr "objecten API - JSON-inhoud veld" -#: openforms/registrations/contrib/zgw_apis/options.py:174 +#: openforms/registrations/contrib/zgw_apis/options.py:180 msgid "Variable-to-property mappings" msgstr "Variabele-naar-eigenschapkoppelingen" -#: openforms/registrations/contrib/zgw_apis/options.py:225 +#: openforms/registrations/contrib/zgw_apis/options.py:231 msgid "You must specify a case type." msgstr "Je moet een zaaktype instellen." -#: openforms/registrations/contrib/zgw_apis/options.py:236 +#: openforms/registrations/contrib/zgw_apis/options.py:242 msgid "You must specify a document type" msgstr "Je moet een documenttype instellen." -#: openforms/registrations/contrib/zgw_apis/options.py:257 +#: openforms/registrations/contrib/zgw_apis/options.py:263 msgid "" "You must create a valid ZGW API Group config (with the necessary services) " "before importing." @@ -10781,24 +10896,24 @@ msgstr "" "Je moet eerst een werkende ZGW API-groep aanmaken voor dit formulier " "geïmporteerd kan worden." -#: openforms/registrations/contrib/zgw_apis/options.py:340 +#: openforms/registrations/contrib/zgw_apis/options.py:346 msgid "Objects API group must be specified if an objecttype is specified." msgstr "" "Je moet een Objecten-API-groep selecteren als je een objecttype opgeeft." -#: openforms/registrations/contrib/zgw_apis/options.py:354 +#: openforms/registrations/contrib/zgw_apis/options.py:360 msgid "" -"The specified objecttype is not present in the selected Objecttypes API (the" -" URL does not start with the API root of the Objecttypes API)." +"The specified objecttype is not present in the selected Objecttypes API (the " +"URL does not start with the API root of the Objecttypes API)." msgstr "" "Het gekozen objecttype bestaat niet binnen de gekozen Objecttypen-API (de " "URL begint niet met de basis-URL van de Objecttypen-API-service)." -#: openforms/registrations/contrib/zgw_apis/options.py:396 +#: openforms/registrations/contrib/zgw_apis/options.py:402 msgid "The provided zaaktype does not exist in the specified Catalogi API." msgstr "Het opgegeven zaaktype bestaat niet in de ingestelde Catalogi API." -#: openforms/registrations/contrib/zgw_apis/options.py:401 +#: openforms/registrations/contrib/zgw_apis/options.py:407 msgid "" "The provided informatieobjecttype does not exist in the selected case type " "or Catalogi API." @@ -10806,30 +10921,29 @@ msgstr "" "Het opgegeven informatieobjecttype bestaat niet in het geselecteerde " "zaaktype of in de ingestelde Catalogi API." -#: openforms/registrations/contrib/zgw_apis/options.py:413 +#: openforms/registrations/contrib/zgw_apis/options.py:419 msgid "You must specify a catalogue when passing a case type identification." msgstr "" -"Je moet een catalogus aanduiden wanneer je het zaaktype via de identificatie" -" opgeeft." +"Je moet een catalogus aanduiden wanneer je het zaaktype via de identificatie " +"opgeeft." -#: openforms/registrations/contrib/zgw_apis/options.py:529 +#: openforms/registrations/contrib/zgw_apis/options.py:535 #, python-brace-format msgid "Could not find a property with the name '{name}' in the case type" msgstr "" "Kon geen eigenschap met de naam '{name}' vinden binnen het ingestelde " "zaaktype." -#: openforms/registrations/contrib/zgw_apis/options.py:573 -msgid "" -"Could not find a roltype with this description related to the zaaktype." +#: openforms/registrations/contrib/zgw_apis/options.py:579 +msgid "Could not find a roltype with this description related to the zaaktype." msgstr "" "Kon geen roltype vinden met deze omschrijving binnen het opgegeven zaaktype." -#: openforms/registrations/contrib/zgw_apis/plugin.py:173 +#: openforms/registrations/contrib/zgw_apis/plugin.py:171 msgid "ZGW API's" msgstr "ZGW API's" -#: openforms/registrations/contrib/zgw_apis/plugin.py:415 +#: openforms/registrations/contrib/zgw_apis/plugin.py:413 msgid "Employee who registered the case on behalf of the customer." msgstr "Medewerker die de zaak registreerde voor de klant." @@ -10839,11 +10953,13 @@ msgstr "Lijst van beschikbare services" #: openforms/services/api/viewsets.py:16 msgid "" -"Return a list of available (JSON) services/registrations configured in the backend.\n" +"Return a list of available (JSON) services/registrations configured in the " +"backend.\n" "\n" "Note that this endpoint is **EXPERIMENTAL**." msgstr "" -"Geef een lijst van beschikbare (JSON) services/registraties die in de backend ingesteld zijn.\n" +"Geef een lijst van beschikbare (JSON) services/registraties die in de " +"backend ingesteld zijn.\n" "\n" "Dit endpoint is **EXPERIMENTEEL**." @@ -10926,8 +11042,7 @@ msgstr "Registratie: e-mailpluginpreview" #: openforms/submissions/admin.py:442 msgid "You can only export the submissions of the same form type." msgstr "" -"Je kan alleen de inzendingen van één enkel formuliertype tegelijk " -"exporteren." +"Je kan alleen de inzendingen van één enkel formuliertype tegelijk exporteren." #: openforms/submissions/admin.py:449 #, python-format @@ -10958,8 +11073,7 @@ msgstr "Probeer %(verbose_name_plural)s opnieuw te verwerken" #, python-brace-format msgid "Retrying processing flow for {count} {verbose_name}" msgid_plural "Retrying processing flow for {count} {verbose_name_plural}" -msgstr[0] "" -"Nieuwe verwerkingspoging voor {count} {verbose_name} wordt gestart." +msgstr[0] "Nieuwe verwerkingspoging voor {count} {verbose_name} wordt gestart." msgstr[1] "" "Nieuwe verwerkingspoging voor {count} {verbose_name_plural} wordt gestart." @@ -11057,8 +11171,8 @@ msgstr "Formuliergegevens" #: openforms/submissions/api/serializers.py:313 msgid "" "The Form.io submission data object. This will be merged with the full form " -"submission data, including data from other steps, to evaluate the configured" -" form logic." +"submission data, including data from other steps, to evaluate the configured " +"form logic." msgstr "" "De Form.io inzendingsgegevens. Dit wordt samengevoegd met de " "inzendingsgegevens, inclusief de gegevens van de andere stappen, om de " @@ -11071,8 +11185,7 @@ msgstr "Contact e-mailadres" #: openforms/submissions/api/serializers.py:326 msgid "The email address where the 'magic' resume link should be sent to" msgstr "" -"Het e-mailadres waar de 'magische' vervolg link naar toe gestuurd moet " -"worden" +"Het e-mailadres waar de 'magische' vervolg link naar toe gestuurd moet worden" #: openforms/submissions/api/serializers.py:419 msgid "background processing status" @@ -11095,8 +11208,8 @@ msgid "" "The result from the background processing. This field only has a value if " "the processing has completed (both successfully or with errors)." msgstr "" -"Het resultaat van de achtergrondverwerking. Dit veld heeft alleen een waarde" -" als de verwerking is voltooid (zowel met succes als met fouten)." +"Het resultaat van de achtergrondverwerking. Dit veld heeft alleen een waarde " +"als de verwerking is voltooid (zowel met succes als met fouten)." #: openforms/submissions/api/serializers.py:440 msgid "Error information" @@ -11123,21 +11236,21 @@ msgstr "Bevestigingspaginatitel" msgid "Title of the confirmation page." msgstr "Titel op de bevestigingspagina" -#: openforms/submissions/api/serializers.py:466 +#: openforms/submissions/api/serializers.py:467 msgid "Confirmation page content" msgstr "Bevestigingspagina tekst" -#: openforms/submissions/api/serializers.py:468 +#: openforms/submissions/api/serializers.py:469 msgid "Body text of the confirmation page. May contain HTML!" msgstr "" "Inhoud van de bevestigingspagina. Hierin mogen HTML-karakers worden " "opgenomen." -#: openforms/submissions/api/serializers.py:471 +#: openforms/submissions/api/serializers.py:473 msgid "Report download URL" msgstr "Document download URL" -#: openforms/submissions/api/serializers.py:475 +#: openforms/submissions/api/serializers.py:477 msgid "" "Download URL for the generated PDF report. Note that this contain a " "timestamped token generated by the backend." @@ -11145,11 +11258,11 @@ msgstr "" "Download-URL voor het gegenereerde PDF document. Let op: Deze URL bevat een " "tijdgebaseerd token dat door de backend wordt gegenereerd." -#: openforms/submissions/api/serializers.py:480 +#: openforms/submissions/api/serializers.py:482 msgid "Payment URL" msgstr "Betaalpagina URL" -#: openforms/submissions/api/serializers.py:484 +#: openforms/submissions/api/serializers.py:486 msgid "" "URL to retrieve the payment information. Note that this (will) contain(s) a " "timestamped token generated by the backend." @@ -11157,69 +11270,69 @@ msgstr "" "URL om de betalingsinformatie op te halen. Let op: Deze URL bevat een " "tijdgebaseerd token dat door de backend wordt gegenereerd." -#: openforms/submissions/api/serializers.py:498 +#: openforms/submissions/api/serializers.py:500 msgid "is co-signed?" msgstr "Is mede-ondertekend?" -#: openforms/submissions/api/serializers.py:499 +#: openforms/submissions/api/serializers.py:501 msgid "Indicator whether the submission has been co-signed or not." msgstr "Geeft aan of de inzending is mede-ondertekend." -#: openforms/submissions/api/serializers.py:502 +#: openforms/submissions/api/serializers.py:504 msgid "Co-signer display" msgstr "Mede-ondertekenaar weergave" -#: openforms/submissions/api/serializers.py:503 +#: openforms/submissions/api/serializers.py:505 msgid "Co-signer representation string for the UI." msgstr "Mede-ondertekenaar weergave in de UI." -#: openforms/submissions/api/serializers.py:520 +#: openforms/submissions/api/serializers.py:522 msgid "Display name of the component." msgstr "Weergavenaam van de component" -#: openforms/submissions/api/serializers.py:524 +#: openforms/submissions/api/serializers.py:526 msgid "Raw value of the component." msgstr "JSON-waarde van de component" -#: openforms/submissions/api/serializers.py:528 +#: openforms/submissions/api/serializers.py:530 msgid "Configuration of the component." msgstr "Componentconfiguratie" -#: openforms/submissions/api/serializers.py:535 +#: openforms/submissions/api/serializers.py:537 msgid "Slug of the form definition used in the form step." msgstr "Slug van de formulierdefinitie horend bij de stap." -#: openforms/submissions/api/serializers.py:539 +#: openforms/submissions/api/serializers.py:541 msgid "Name of the form definition used in the form step." msgstr "Naam van de formulierdefinitie horend bij de stap." -#: openforms/submissions/api/serializers.py:548 +#: openforms/submissions/api/serializers.py:550 #: openforms/submissions/models/submission.py:235 msgid "privacy policy accepted" msgstr "Privacybeleid geaccepteerd" -#: openforms/submissions/api/serializers.py:549 +#: openforms/submissions/api/serializers.py:551 msgid "Whether the co-signer has accepted the privacy policy" msgstr "" "Indicator of de mede-ondertekenaar het privacybeleid geaccepteerd heeft." -#: openforms/submissions/api/serializers.py:552 +#: openforms/submissions/api/serializers.py:554 #: openforms/submissions/models/submission.py:245 msgid "statement of truth accepted" msgstr "verklaring van waarheid geaccepteerd" -#: openforms/submissions/api/serializers.py:554 +#: openforms/submissions/api/serializers.py:556 msgid "" "Whether the co-signer has declared the form to be filled out truthfully." msgstr "" "Indicator of de mede-ondertekenaar het formulier naar waarheid ingevuld " "heeft." -#: openforms/submissions/api/serializers.py:569 +#: openforms/submissions/api/serializers.py:571 msgid "download report url" msgstr "Download-URL PDF" -#: openforms/submissions/api/serializers.py:571 +#: openforms/submissions/api/serializers.py:573 msgid "" "The URL where the submission report can be downloaded. Note that this " "contain a timestamped token generated by the backend." @@ -11227,18 +11340,18 @@ msgstr "" "Download-URL voor het gegenereerde PDF document. Let op: deze URL bevat een " "tijdgebaseerd token dat door de backend wordt gegenereerd." -#: openforms/submissions/api/serializers.py:631 +#: openforms/submissions/api/serializers.py:633 #, python-brace-format msgid "The key '{key}' does not point to an email component in the form." msgstr "" "De sleutel '{key}' hoort niet bij een e-mailcomponent in het formulier." -#: openforms/submissions/api/serializers.py:646 +#: openforms/submissions/api/serializers.py:648 #: openforms/submissions/models/email_verification.py:62 msgid "verification code" msgstr "bevestigingscode" -#: openforms/submissions/api/serializers.py:664 +#: openforms/submissions/api/serializers.py:666 msgid "The verification code does not match." msgstr "De bevestigingscode komt niet overeen." @@ -11278,13 +11391,15 @@ msgid "" "\n" "This is called by the default Form.io file upload widget. \n" "\n" -"Access to this view requires an active form submission. Unclaimed temporary files automatically expire after {expire_days} day(s). " +"Access to this view requires an active form submission. Unclaimed temporary " +"files automatically expire after {expire_days} day(s). " msgstr "" "Haal tijdelijk bestand op.\n" "\n" "Deze aanroep wordt gedaan door het standaard Form.io bestandsupload widget.\n" "\n" -"Toegang tot dit endpoint vereist een actieve formulier inzending. Niet gekoppelde bestanden worden automatisch verwijderd na {expire_days} dag(en)" +"Toegang tot dit endpoint vereist een actieve formulier inzending. Niet " +"gekoppelde bestanden worden automatisch verwijderd na {expire_days} dag(en)" #: openforms/submissions/api/views.py:40 msgid "Delete temporary file upload" @@ -11297,13 +11412,15 @@ msgid "" "\n" "This is called by the default Form.io file upload widget. \n" "\n" -"Access to this view requires an active form submission. Unclaimed temporary files automatically expire after {expire_days} day(s). " +"Access to this view requires an active form submission. Unclaimed temporary " +"files automatically expire after {expire_days} day(s). " msgstr "" "Verwijder tijdelijk bestand.\n" "\n" "Deze aanroep wordt gedaan door het standaard Form.io bestandsupload widget.\n" "\n" -"Toegang tot dit endpoint vereist een actieve formulier inzending. Niet gekoppelde bestanden worden automatisch verwijderd na {expire_days} dag(en)" +"Toegang tot dit endpoint vereist een actieve formulier inzending. Niet " +"gekoppelde bestanden worden automatisch verwijderd na {expire_days} dag(en)" #: openforms/submissions/api/views.py:80 msgid "Start email verification" @@ -11311,13 +11428,19 @@ msgstr "Start de e-mailverificatie" #: openforms/submissions/api/views.py:82 msgid "" -"Create an email verification resource to start the verification process. A verification e-mail will be scheduled and sent to the provided email address, containing the verification code to use during verification.\n" +"Create an email verification resource to start the verification process. A " +"verification e-mail will be scheduled and sent to the provided email " +"address, containing the verification code to use during verification.\n" "\n" -"Validations check that the provided component key is present in the form of the submission and that it actually is an `email` component." +"Validations check that the provided component key is present in the form of " +"the submission and that it actually is an `email` component." msgstr "" -"Maak een e-mailbevestigingverzoek aan om het verificatieproces te beginnen. Hierna wordt een verificatie-e-mail verstuurd naar het opgegeven e-mailadres die de bevestigingscode bevat die in het proces ingevoerd dient te worden.\n" +"Maak een e-mailbevestigingverzoek aan om het verificatieproces te beginnen. " +"Hierna wordt een verificatie-e-mail verstuurd naar het opgegeven e-mailadres " +"die de bevestigingscode bevat die in het proces ingevoerd dient te worden.\n" "\n" -"De validaties controleren dat de componentsleutel bestaat in het formulier, en dat de component daadwerkelijk een e-mailcomponent is." +"De validaties controleren dat de componentsleutel bestaat in het formulier, " +"en dat de component daadwerkelijk een e-mailcomponent is." #: openforms/submissions/api/views.py:105 msgid "Verify email address" @@ -11326,11 +11449,11 @@ msgstr "Verifieer een e-mailadres" #: openforms/submissions/api/views.py:107 msgid "" "Using the code obtained from the verification email, mark the email address " -"as verified. Using an invalid code results in validation errors in the error" -" response." +"as verified. Using an invalid code results in validation errors in the error " +"response." msgstr "" -"Gebruik de bevestigingscode uit de verificatie-e-mail om het e-mailadres als" -" \"geverifieerd\" te markeren. Als geen geldige code gebruikt wordt, dan " +"Gebruik de bevestigingscode uit de verificatie-e-mail om het e-mailadres als " +"\"geverifieerd\" te markeren. Als geen geldige code gebruikt wordt, dan " "bevat het antwoord validatiefouten." #: openforms/submissions/api/viewsets.py:93 @@ -11340,8 +11463,8 @@ msgstr "Actieve inzendingen weergeven" #: openforms/submissions/api/viewsets.py:95 msgid "" "Active submissions are submissions whose ID is in the user session. This " -"endpoint returns user-bound submissions. Note that you get different results" -" on different results because of the differing sessions." +"endpoint returns user-bound submissions. Note that you get different results " +"on different results because of the differing sessions." msgstr "" "Actieve inzendingen zijn inzendingen waarvan het ID zich in de " "gebruikerssessie bevindt. Dit endpoint geeft alle inzendingen terug die " @@ -11354,8 +11477,7 @@ msgstr "Inzending detail weergeven" #: openforms/submissions/api/viewsets.py:102 msgid "Get the state of a single submission in the user session." -msgstr "" -"Haal de status op van een enkele inzending op van de gebruikerssessie." +msgstr "Haal de status op van een enkele inzending op van de gebruikerssessie." #: openforms/submissions/api/viewsets.py:105 msgid "Start a submission" @@ -11704,10 +11826,8 @@ msgstr "registratie backend status" #: openforms/submissions/models/submission.py:181 msgid "" -"Indication whether the registration in the configured backend was " -"successful." -msgstr "" -"Indicatie of de doorzetting naar de registratie backend succesvol was." +"Indication whether the registration in the configured backend was successful." +msgstr "Indicatie of de doorzetting naar de registratie backend succesvol was." #: openforms/submissions/models/submission.py:185 msgid "pre-registration completed" @@ -11723,9 +11843,9 @@ msgstr "publieke referentie" #: openforms/submissions/models/submission.py:196 msgid "" -"The registration reference communicated to the end-user completing the form." -" This reference is intended to be unique and the reference the end-user uses" -" to communicate with the service desk. It should be extracted from the " +"The registration reference communicated to the end-user completing the form. " +"This reference is intended to be unique and the reference the end-user uses " +"to communicate with the service desk. It should be extracted from the " "registration result where possible, and otherwise generated to be unique. " "Note that this reference is displayed to the end-user and used as payment " "reference!" @@ -11835,9 +11955,9 @@ msgid "" msgstr "" "Een identificatie die als query-parameter opgegeven kan worden bij het " "starten van een formulier. Op basis van deze identificatie worden bestaande " -"gegevens opgehaald en gebruikt om formuliervelden voor in te vullen. Bij het" -" registreren kunnen de bestaande gegevens ook weer bijgewerkt worden, indien" -" gewenst, of de gegevens worden als 'nieuw' geregistreerd. Dit kan " +"gegevens opgehaald en gebruikt om formuliervelden voor in te vullen. Bij het " +"registreren kunnen de bestaande gegevens ook weer bijgewerkt worden, indien " +"gewenst, of de gegevens worden als 'nieuw' geregistreerd. Dit kan " "bijvoorbeeld een referentie zijn naar een record in de Objecten API." #: openforms/submissions/models/submission.py:276 @@ -11850,11 +11970,11 @@ msgstr "bij voltooiing taak-ID's" #: openforms/submissions/models/submission.py:284 msgid "" -"Celery task IDs of the on_completion workflow. Use this to inspect the state" -" of the async jobs." +"Celery task IDs of the on_completion workflow. Use this to inspect the state " +"of the async jobs." msgstr "" -"Celery-taak-ID's van de on_completion-workflow. Gebruik dit om de status van" -" de asynchrone taken te inspecteren. " +"Celery-taak-ID's van de on_completion-workflow. Gebruik dit om de status van " +"de asynchrone taken te inspecteren. " #: openforms/submissions/models/submission.py:290 msgid "needs on_completion retry" @@ -12036,8 +12156,8 @@ msgstr "laatst gedownload" #: openforms/submissions/models/submission_report.py:39 msgid "" -"When the submission report was last accessed. This value is updated when the" -" report is downloaded." +"When the submission report was last accessed. This value is updated when the " +"report is downloaded." msgstr "" "Datum waarom het document voor het laatst is opgevraagd. Deze waarde wordt " "bijgewerkt zodra het document wordt gedownload." @@ -12121,8 +12241,7 @@ msgstr "gevuld vanuit prefill-gegevens" #: openforms/submissions/models/submission_value_variable.py:351 msgid "Can this variable be prefilled at the beginning of a submission?" msgstr "" -"Is de waarde bij het starten van de inzending door een prefill-plugin " -"gevuld?" +"Is de waarde bij het starten van de inzending door een prefill-plugin gevuld?" #: openforms/submissions/models/submission_value_variable.py:360 msgid "Submission value variable" @@ -12169,8 +12288,8 @@ msgid "" "This PDF was generated before submission processing has started because it " "needs to be cosigned first. The cosign request email was sent to {email}." msgstr "" -"Deze samenvatting is gemaakt vóór de inzending in behandeling genomen wordt." -" De inzending wordt pas verwerkt als deze mede-ondertekend is. Het verzoek " +"Deze samenvatting is gemaakt vóór de inzending in behandeling genomen wordt. " +"De inzending wordt pas verwerkt als deze mede-ondertekend is. Het verzoek " "hiervoor is verstuurd naar {email}." #: openforms/submissions/tasks/emails.py:136 @@ -12271,8 +12390,8 @@ msgstr "Sorry, u hebt geen toegang tot deze pagina (403)" #: openforms/templates/403.html:15 msgid "" -"You don't appear to have sufficient permissions to view this content. Please" -" contact an administrator if you believe this to be an error." +"You don't appear to have sufficient permissions to view this content. Please " +"contact an administrator if you believe this to be an error." msgstr "" "U lijkt onvoldoende rechten te hebben om deze inhoud te bekijken. Gelieve " "contact op te nemen met uw beheerder indien dit onterecht is." @@ -12421,8 +12540,8 @@ msgstr "RFC5646 taalcode, bijvoorbeeld `en` of `en-us`" #: openforms/translations/api/serializers.py:26 msgid "" -"Language name in its local representation. e.g. \"fy\" = \"frysk\", \"nl\" =" -" \"Nederlands\"" +"Language name in its local representation. e.g. \"fy\" = \"frysk\", \"nl\" = " +"\"Nederlands\"" msgstr "" "Taalnaam in de lokale weergave. Bijvoorbeeld \"fy\" = \"frysk\", \"nl\" = " "\"Nederlands\"" @@ -12765,28 +12884,28 @@ msgstr "" "Geef enkel validatie-plugins die relevant zijn voor het opgegeven " "componenttype." -#: openforms/validations/api/serializers.py:49 +#: openforms/validations/api/serializers.py:50 msgid "Is valid" msgstr "Is geldig" -#: openforms/validations/api/serializers.py:49 +#: openforms/validations/api/serializers.py:50 msgid "Boolean indicating value passed validation." msgstr "Waarde die aangeeft of de validatie geslaagd is." -#: openforms/validations/api/serializers.py:53 #: openforms/validations/api/serializers.py:54 +#: openforms/validations/api/serializers.py:55 msgid "error message" msgstr "foutmelding" -#: openforms/validations/api/serializers.py:56 +#: openforms/validations/api/serializers.py:57 msgid "List of validation error messages for display." msgstr "Lijst van validatiefoutmeldingen om te tonen." -#: openforms/validations/api/serializers.py:72 +#: openforms/validations/api/serializers.py:73 msgid "Components" msgstr "Componenten" -#: openforms/validations/api/serializers.py:73 +#: openforms/validations/api/serializers.py:74 msgid "The components for which the plugin is relevant." msgstr "Componenten waarvoor de plugin relevant is." @@ -12804,11 +12923,11 @@ msgstr "Waarde om te valideren." #: openforms/validations/api/views.py:84 msgid "" -"ID of the validation plugin, see the " -"[`validation_plugin_list`](./#operation/validation_plugin_list) operation" +"ID of the validation plugin, see the [`validation_plugin_list`](./#operation/" +"validation_plugin_list) operation" msgstr "" -"ID van de validatie plugin. Zie de " -"[`validation_plugin_list`](./#operation/validation_plugin_list) operatie" +"ID van de validatie plugin. Zie de [`validation_plugin_list`](./#operation/" +"validation_plugin_list) operatie" #: openforms/validations/registry.py:67 #, python-brace-format @@ -12918,7 +13037,8 @@ msgstr "Geef een lijst van beschikbare servicebevragingconfiguraties" #: openforms/variables/api/viewsets.py:18 msgid "" -"Return a list of available services fetch configurations configured in the backend.\n" +"Return a list of available services fetch configurations configured in the " +"backend.\n" "\n" "Note that this endpoint is **EXPERIMENTAL**." msgstr "" @@ -13055,8 +13175,7 @@ msgstr "{header!s}: waarde '{value!s}' moet een string zijn maar is dat niet." #: openforms/variables/validators.py:83 msgid "" -"{header!s}: value '{value!s}' contains {illegal_chars}, which is not " -"allowed." +"{header!s}: value '{value!s}' contains {illegal_chars}, which is not allowed." msgstr "" "{header!s}: waarde '{value!s}' bevat {illegal_chars}, deze karakters zijn " "niet toegestaan." @@ -13069,15 +13188,13 @@ msgstr "" "{header!s}: waarde '{value!s}' mag niet starten of eindigen met whitespace." #: openforms/variables/validators.py:100 -msgid "" -"{header!s}: value '{value!s}' contains characters that are not allowed." +msgid "{header!s}: value '{value!s}' contains characters that are not allowed." msgstr "" "{header!s}: waarde '{value!s}' bevat karakters die niet toegestaan zijn." #: openforms/variables/validators.py:107 msgid "{header!s}: header '{header!s}' should be a string, but isn't." -msgstr "" -"{header!s}: header '{header!s}' moet een string zijn maar is dat niet." +msgstr "{header!s}: header '{header!s}' moet een string zijn maar is dat niet." #: openforms/variables/validators.py:113 msgid "" @@ -13107,8 +13224,8 @@ msgstr "" msgid "" "{parameter!s}: value '{value!s}' should be a list of strings, but isn't." msgstr "" -"{parameter!s}: de waarde '{value!s}' moet een lijst van strings zijn maar is" -" dat niet." +"{parameter!s}: de waarde '{value!s}' moet een lijst van strings zijn maar is " +"dat niet." #: openforms/variables/validators.py:164 msgid "query parameter key '{parameter!s}' should be a string, but isn't." @@ -13307,11 +13424,11 @@ msgstr "endpoint VrijeBerichten" #: stuf/models.py:85 msgid "" -"Endpoint for synchronous free messages, usually " -"'[...]/VerwerkSynchroonVrijBericht' or '[...]/VrijeBerichten'." +"Endpoint for synchronous free messages, usually '[...]/" +"VerwerkSynchroonVrijBericht' or '[...]/VrijeBerichten'." msgstr "" -"Endpoint voor synchrone vrije berichten, typisch " -"'[...]/VerwerkSynchroonVrijBericht' of '[...]/VrijeBerichten'." +"Endpoint voor synchrone vrije berichten, typisch '[...]/" +"VerwerkSynchroonVrijBericht' of '[...]/VrijeBerichten'." #: stuf/models.py:89 msgid "endpoint OntvangAsynchroon" @@ -13440,11 +13557,11 @@ msgstr "Binding address Bijstandsregelingen" #: suwinet/models.py:33 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/Bijstandsregelingen/v0500}BijstandsregelingenBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/Bijstandsregelingen/" +"v0500}BijstandsregelingenBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/Bijstandsregelingen/v0500}BijstandsregelingenBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/Bijstandsregelingen/" +"v0500}BijstandsregelingenBinding" #: suwinet/models.py:39 msgid "BRPDossierPersoonGSD Binding Address" @@ -13452,11 +13569,11 @@ msgstr "Binding address BRPDossierPersoonGSD" #: suwinet/models.py:41 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/BRPDossierPersoonGSD/v0200}BRPBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/BRPDossierPersoonGSD/" +"v0200}BRPBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/BRPDossierPersoonGSD/v0200}BRPBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/BRPDossierPersoonGSD/" +"v0200}BRPBinding" #: suwinet/models.py:46 msgid "DUODossierPersoonGSD Binding Address" @@ -13464,11 +13581,11 @@ msgstr "Binding address DUODossierPersoonGSD" #: suwinet/models.py:48 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/DUODossierPersoonGSD/v0300}DUOBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/DUODossierPersoonGSD/" +"v0300}DUOBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/DUODossierPersoonGSD/v0300}DUOBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/DUODossierPersoonGSD/" +"v0300}DUOBinding" #: suwinet/models.py:53 msgid "DUODossierStudiefinancieringGSD Binding Address" @@ -13476,11 +13593,11 @@ msgstr "Binding address DUODossierStudiefinancieringGSD" #: suwinet/models.py:55 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/DUODossierStudiefinancieringGSD/v0200}DUOBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"DUODossierStudiefinancieringGSD/v0200}DUOBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/DUODossierStudiefinancieringGSD/v0200}DUOBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"DUODossierStudiefinancieringGSD/v0200}DUOBinding" #: suwinet/models.py:60 msgid "GSDDossierReintegratie Binding Address" @@ -13488,11 +13605,11 @@ msgstr "Binding address GSDDossierReintegratie" #: suwinet/models.py:62 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/GSDDossierReintegratie/v0200}GSDReintegratieBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/GSDDossierReintegratie/" +"v0200}GSDReintegratieBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/GSDDossierReintegratie/v0200}GSDReintegratieBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/GSDDossierReintegratie/" +"v0200}GSDReintegratieBinding" #: suwinet/models.py:67 msgid "IBVerwijsindex Binding Address" @@ -13500,11 +13617,11 @@ msgstr "Binding address IBVerwijsindex" #: suwinet/models.py:69 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/IBVerwijsindex/v0300}IBVerwijsindexBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/IBVerwijsindex/v0300}" +"IBVerwijsindexBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/IBVerwijsindex/v0300}IBVerwijsindexBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/IBVerwijsindex/v0300}" +"IBVerwijsindexBinding" #: suwinet/models.py:74 msgid "KadasterDossierGSD Binding Address" @@ -13512,11 +13629,11 @@ msgstr "Binding address KadasterDossierGSD" #: suwinet/models.py:76 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/KadasterDossierGSD/v0300}KadasterBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/KadasterDossierGSD/v0300}" +"KadasterBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/KadasterDossierGSD/v0300}KadasterBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/KadasterDossierGSD/" +"v0300}KadasterBinding" #: suwinet/models.py:81 msgid "RDWDossierDigitaleDiensten Binding Address" @@ -13524,11 +13641,11 @@ msgstr "Binding address RDWDossierDigitaleDiensten" #: suwinet/models.py:83 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/RDWDossierDigitaleDiensten/v0200}RDWBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"RDWDossierDigitaleDiensten/v0200}RDWBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/RDWDossierDigitaleDiensten/v0200}RDWBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"RDWDossierDigitaleDiensten/v0200}RDWBinding" #: suwinet/models.py:88 msgid "RDWDossierGSD Binding Address" @@ -13536,11 +13653,11 @@ msgstr "Binding address RDWDossierGSD" #: suwinet/models.py:90 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/RDWDossierGSD/v0200}RDWBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/RDWDossierGSD/v0200}" +"RDWBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/RDWDossierGSD/v0200}RDWBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/RDWDossierGSD/v0200}" +"RDWBinding" #: suwinet/models.py:95 msgid "SVBDossierPersoonGSD Binding Address" @@ -13548,11 +13665,11 @@ msgstr "Binding address SVBDossierPersoonGSD" #: suwinet/models.py:97 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/SVBDossierPersoonGSD/v0200}SVBBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/SVBDossierPersoonGSD/" +"v0200}SVBBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/SVBDossierPersoonGSD/v0200}SVBBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/SVBDossierPersoonGSD/" +"v0200}SVBBinding" #: suwinet/models.py:102 msgid "UWVDossierAanvraagUitkeringStatusGSD Binding Address" @@ -13560,11 +13677,11 @@ msgstr "Binding address UWVDossierAanvraagUitkeringStatusGSD" #: suwinet/models.py:104 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierAanvraagUitkeringStatusGSD/v0200}UWVAanvraagUitkeringStatusBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierAanvraagUitkeringStatusGSD/v0200}UWVAanvraagUitkeringStatusBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierAanvraagUitkeringStatusGSD/v0200}UWVAanvraagUitkeringStatusBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierAanvraagUitkeringStatusGSD/v0200}UWVAanvraagUitkeringStatusBinding" #: suwinet/models.py:109 msgid "UWVDossierInkomstenGSDDigitaleDiensten Binding Address" @@ -13572,11 +13689,11 @@ msgstr "Binding address UWVDossierInkomstenGSDDigitaleDiensten" #: suwinet/models.py:111 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierInkomstenGSDDigitaleDiensten/v0200}UWVIkvBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierInkomstenGSDDigitaleDiensten/v0200}UWVIkvBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierInkomstenGSDDigitaleDiensten/v0200}UWVIkvBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierInkomstenGSDDigitaleDiensten/v0200}UWVIkvBinding" #: suwinet/models.py:116 msgid "UWVDossierInkomstenGSD Binding Address" @@ -13584,11 +13701,11 @@ msgstr "Binding address UWVDossierInkomstenGSD" #: suwinet/models.py:118 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierInkomstenGSD/v0200}UWVIkvBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/UWVDossierInkomstenGSD/" +"v0200}UWVIkvBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierInkomstenGSD/v0200}UWVIkvBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/UWVDossierInkomstenGSD/" +"v0200}UWVIkvBinding" #: suwinet/models.py:123 msgid "UWVDossierQuotumArbeidsbeperktenGSD Binding Address" @@ -13596,11 +13713,11 @@ msgstr "Binding address UWVDossierQuotumArbeidsbeperktenGSD" #: suwinet/models.py:125 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierQuotumArbeidsbeperktenGSD/v0300}UWVArbeidsbeperktenBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierQuotumArbeidsbeperktenGSD/v0300}UWVArbeidsbeperktenBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierQuotumArbeidsbeperktenGSD/v0300}UWVArbeidsbeperktenBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierQuotumArbeidsbeperktenGSD/v0300}UWVArbeidsbeperktenBinding" #: suwinet/models.py:130 msgid "UWVDossierWerknemersverzekeringenGSDDigitaleDiensten Binding Address" @@ -13608,11 +13725,11 @@ msgstr "Binding address UWVDossierWerknemersverzekeringenGSDDigitaleDiensten" #: suwinet/models.py:133 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierWerknemersverzekeringenGSDDigitaleDiensten/v0200}UWVBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierWerknemersverzekeringenGSDDigitaleDiensten/v0200}UWVBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierWerknemersverzekeringenGSDDigitaleDiensten/v0200}UWVBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierWerknemersverzekeringenGSDDigitaleDiensten/v0200}UWVBinding" #: suwinet/models.py:138 msgid "UWVDossierWerknemersverzekeringenGSD Binding Address" @@ -13620,11 +13737,11 @@ msgstr "Binding address UWVDossierWerknemersverzekeringenGSD" #: suwinet/models.py:140 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierWerknemersverzekeringenGSD/v0200}UWVBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierWerknemersverzekeringenGSD/v0200}UWVBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVDossierWerknemersverzekeringenGSD/v0200}UWVBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/" +"UWVDossierWerknemersverzekeringenGSD/v0200}UWVBinding" #: suwinet/models.py:145 msgid "UWVWbDossierPersoonGSD Binding Address" @@ -13632,11 +13749,11 @@ msgstr "Binding address UWVWbDossierPersoonGSD" #: suwinet/models.py:147 msgid "" -"Binding address for " -"{http://bkwi.nl/SuwiML/Diensten/UWVWbDossierPersoonGSD/v0200}UwvWbBinding" +"Binding address for {http://bkwi.nl/SuwiML/Diensten/UWVWbDossierPersoonGSD/" +"v0200}UwvWbBinding" msgstr "" -"Binding address voor " -"{http://bkwi.nl/SuwiML/Diensten/UWVWbDossierPersoonGSD/v0200}UwvWbBinding" +"Binding address voor {http://bkwi.nl/SuwiML/Diensten/UWVWbDossierPersoonGSD/" +"v0200}UwvWbBinding" #: suwinet/models.py:154 msgid "Suwinet configuration" @@ -13651,3 +13768,32 @@ msgstr "" msgid "Without any binding addresses, no Suwinet service can be used." msgstr "" "Zonder enig \"binding address\" kan er geen Suwinet service gebruikt worden." + +#~ msgid "" +#~ "The name of the submitted form. This is saved separately in case of form " +#~ "deletion." +#~ msgstr "" +#~ "De naam van het ingestuurde formulier, apart opgeslagen in het geval dat " +#~ "het formulier zelf verwijderd wordt." + +#~ msgid "The number of the submitted forms." +#~ msgstr "Het aantal ingestuurde formulieren." + +#~ msgid "first submission" +#~ msgstr "eerste inzending" + +#~ msgid "Date and time of the first submitted form." +#~ msgstr "Datum en tijd waarop het formulier voor het eerst ingezonden is." + +#~ msgid "last submission" +#~ msgstr "laatste inzending" + +#~ msgid "Date and time of the last submitted form." +#~ msgstr "Datum en tijd waarop het formulier voor het laatst ingezonden is." + +#~ msgid "form statistics" +#~ msgstr "formulierstatistieken" + +#, python-brace-format +#~ msgid "{form_name} last submitted on {last_submitted}" +#~ msgstr "{form_name}, laatst ingestuurd op {last_submitted}" From e7ce20701aecb0ca1431f1670a1112161507e7a7 Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Wed, 15 Jan 2025 12:40:37 +0100 Subject: [PATCH 09/10] ::white_check_mark:: [#2177] Fixed form designer tests The form designer configuration for the map component has changed a bit. So are the map specific settings moved to the 'Map settings' tab. Also, the label for initial lat/lng settings has been changed to 'Initial focus' --- src/openforms/forms/tests/e2e_tests/test_form_designer.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/openforms/forms/tests/e2e_tests/test_form_designer.py b/src/openforms/forms/tests/e2e_tests/test_form_designer.py index 685c5553c6..52f2521b7f 100644 --- a/src/openforms/forms/tests/e2e_tests/test_form_designer.py +++ b/src/openforms/forms/tests/e2e_tests/test_form_designer.py @@ -1544,7 +1544,8 @@ def setUpTestData(): await page.get_by_role("tab", name="Steps and fields").click() await open_component_options_modal(page, "Map 1", exact=True) - await page.get_by_role("button", name="Map configuration").click() + await page.get_by_role("tab", name="Map settings").click() + await page.get_by_role("button", name="Initial focus").click() # both fields are required so we clear one. await page.get_by_label("Latitude").clear() @@ -1595,7 +1596,8 @@ def setUpTestData(): await page.get_by_role("tab", name="Steps and fields").click() await open_component_options_modal(page, "Map 1", exact=True) - await page.get_by_role("button", name="Map configuration").click() + await page.get_by_role("tab", name="Map settings").click() + await page.get_by_role("button", name="Initial focus").click() # both fields are required so we clear one. await page.get_by_label("Longitude").clear() From 308f1c46a11cff2b2c4cc06fdd541f2115a78b87 Mon Sep 17 00:00:00 2001 From: robinvandermolen Date: Mon, 20 Jan 2025 15:10:31 +0100 Subject: [PATCH 10/10] :white_check_mark: [#2177] Added formatter and camunda tests for different map data options The formatter and camunda tests now cover all map data formats: Point, Polygon and LineString --- .../tests/files/all_components.json | 289 ++++++++++ .../tests/files/all_components_data.json | 12 + .../tests/files/kitchensink_components.json | 537 +++++++++++++++++- .../tests/files/kitchensink_data.json | 30 +- .../files/kitchensink_data_with_hidden.json | 30 +- .../files/kitchensink_printable_text.json | 12 +- ...itchensink_printable_text_with_hidden.json | 12 +- .../tests/test_default_formatters.py | 3 + .../formatters/tests/test_kitchensink.py | 8 +- .../camunda/tests/files/all_components.json | 177 +++++- .../tests/files/all_components_data.json | 10 +- .../camunda/tests/test_type_mapping.py | 48 +- 12 files changed, 1142 insertions(+), 26 deletions(-) diff --git a/src/openforms/formio/formatters/tests/files/all_components.json b/src/openforms/formio/formatters/tests/files/all_components.json index 1c2f5b25c9..33361591e7 100644 --- a/src/openforms/formio/formatters/tests/files/all_components.json +++ b/src/openforms/formio/formatters/tests/files/all_components.json @@ -617,6 +617,295 @@ "id": "e8bi7e", "keyModified": true }, + { + "key": "mapPoint", + "type": "map", + "input": true, + "label": "Map point", + "showInPDF": true, + "tableView": true, + "showInEmail": false, + "interactions": { + "marker": true, + "polygon": false, + "polyline": false + }, + "registration": { + "attribute": "" + }, + "initialCenter": {}, + "showInSummary": true, + "isSensitiveData": true, + "translatedErrors": { + "en": { + "required": "" + }, + "nl": { + "required": "" + } + }, + "tileLayerIdentifier": null, + "useConfigDefaultMapSettings": true, + "id": "el7xpks", + "placeholder": "", + "prefix": "", + "customClass": "", + "suffix": "", + "multiple": false, + "defaultValue": null, + "protected": false, + "unique": false, + "persistent": true, + "hidden": false, + "clearOnHide": true, + "refreshOn": "", + "redrawOn": "", + "modalEdit": false, + "dataGridLabel": false, + "labelPosition": "top", + "description": "", + "errorLabel": "", + "tooltip": "", + "hideLabel": false, + "tabindex": "", + "disabled": false, + "autofocus": false, + "dbIndex": false, + "customDefaultValue": "", + "calculateValue": "", + "calculateServer": false, + "widget": { + "type": "input" + }, + "attributes": {}, + "validateOn": "change", + "validate": { + "required": false, + "custom": "", + "customPrivate": false, + "strictDateValidation": false, + "multiple": false, + "unique": false, + "minLength": "", + "maxLength": "", + "pattern": "" + }, + "conditional": { + "show": null, + "when": null, + "eq": "" + }, + "overlay": { + "style": "", + "left": "", + "top": "", + "width": "", + "height": "" + }, + "allowCalculateOverride": false, + "encrypted": false, + "showCharCount": false, + "showWordCount": false, + "properties": {}, + "allowMultipleMasks": false, + "mask": false, + "inputType": "text", + "inputFormat": "plain", + "inputMask": "", + "spellcheck": true + }, + { + "key": "mapLineString", + "type": "map", + "input": true, + "label": "Map line string", + "showInPDF": true, + "tableView": true, + "showInEmail": false, + "interactions": { + "marker": false, + "polygon": false, + "polyline": true + }, + "registration": { + "attribute": "" + }, + "initialCenter": {}, + "showInSummary": true, + "isSensitiveData": true, + "translatedErrors": { + "en": { + "required": "" + }, + "nl": { + "required": "" + } + }, + "useConfigDefaultMapSettings": true, + "id": "eypjh9l", + "placeholder": "", + "prefix": "", + "customClass": "", + "suffix": "", + "multiple": false, + "defaultValue": null, + "protected": false, + "unique": false, + "persistent": true, + "hidden": false, + "clearOnHide": true, + "refreshOn": "", + "redrawOn": "", + "modalEdit": false, + "dataGridLabel": false, + "labelPosition": "top", + "description": "", + "errorLabel": "", + "tooltip": "", + "hideLabel": false, + "tabindex": "", + "disabled": false, + "autofocus": false, + "dbIndex": false, + "customDefaultValue": "", + "calculateValue": "", + "calculateServer": false, + "widget": { + "type": "input" + }, + "attributes": {}, + "validateOn": "change", + "validate": { + "required": false, + "custom": "", + "customPrivate": false, + "strictDateValidation": false, + "multiple": false, + "unique": false, + "minLength": "", + "maxLength": "", + "pattern": "" + }, + "conditional": { + "show": null, + "when": null, + "eq": "" + }, + "overlay": { + "style": "", + "left": "", + "top": "", + "width": "", + "height": "" + }, + "allowCalculateOverride": false, + "encrypted": false, + "showCharCount": false, + "showWordCount": false, + "properties": {}, + "allowMultipleMasks": false, + "mask": false, + "inputType": "text", + "inputFormat": "plain", + "inputMask": "", + "spellcheck": true + }, + { + "key": "mapPolygon", + "type": "map", + "input": true, + "label": "Map polygon", + "showInPDF": true, + "tableView": true, + "showInEmail": false, + "interactions": { + "marker": false, + "polygon": true, + "polyline": false + }, + "registration": { + "attribute": "" + }, + "initialCenter": {}, + "showInSummary": true, + "isSensitiveData": true, + "translatedErrors": { + "en": { + "required": "" + }, + "nl": { + "required": "" + } + }, + "useConfigDefaultMapSettings": true, + "id": "e5y0i2p", + "placeholder": "", + "prefix": "", + "customClass": "", + "suffix": "", + "multiple": false, + "defaultValue": null, + "protected": false, + "unique": false, + "persistent": true, + "hidden": false, + "clearOnHide": true, + "refreshOn": "", + "redrawOn": "", + "modalEdit": false, + "dataGridLabel": false, + "labelPosition": "top", + "description": "", + "errorLabel": "", + "tooltip": "", + "hideLabel": false, + "tabindex": "", + "disabled": false, + "autofocus": false, + "dbIndex": false, + "customDefaultValue": "", + "calculateValue": "", + "calculateServer": false, + "widget": { + "type": "input" + }, + "attributes": {}, + "validateOn": "change", + "validate": { + "required": false, + "custom": "", + "customPrivate": false, + "strictDateValidation": false, + "multiple": false, + "unique": false, + "minLength": "", + "maxLength": "", + "pattern": "" + }, + "conditional": { + "show": null, + "when": null, + "eq": "" + }, + "overlay": { + "style": "", + "left": "", + "top": "", + "width": "", + "height": "" + }, + "allowCalculateOverride": false, + "encrypted": false, + "showCharCount": false, + "showWordCount": false, + "properties": {}, + "allowMultipleMasks": false, + "mask": false, + "inputType": "text", + "inputFormat": "plain", + "inputMask": "", + "spellcheck": true + }, { "id": "e1uq4e", "key": "number", diff --git a/src/openforms/formio/formatters/tests/files/all_components_data.json b/src/openforms/formio/formatters/tests/files/all_components_data.json index 6e46b32864..49e0ed7811 100644 --- a/src/openforms/formio/formatters/tests/files/all_components_data.json +++ b/src/openforms/formio/formatters/tests/files/all_components_data.json @@ -11,6 +11,18 @@ "time": "16:26:00", "email": "test@example.com", "radio": "option2", + "mapPoint": { + "type": "Point", + "coordinates": [4.893164274470299, 52.36673378967122] + }, + "mapLineString": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapPolygon": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, "number": 42.123, "select": "option1", "postcode": "1234 AA", diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_components.json b/src/openforms/formio/formatters/tests/files/kitchensink_components.json index 7672d96b16..51409b91a1 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_components.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_components.json @@ -8570,11 +8570,11 @@ }, { "id": "ejjo8lr", - "key": "map", + "key": "mapPoint", "mask": false, "type": "map", "input": true, - "label": "Map", + "label": "Map point", "hidden": false, "prefix": "", "suffix": "", @@ -8582,6 +8582,11 @@ "widget": { "type": "input" }, + "interactions": { + "marker": true, + "polygon": false, + "polyline": false + }, "dbIndex": false, "overlay": { "top": "", @@ -8650,11 +8655,11 @@ }, { "id": "e9a7jn", - "key": "mapEmpty", + "key": "mapPointEmpty", "mask": false, "type": "map", "input": true, - "label": "Map Empty", + "label": "Map point Empty", "hidden": false, "prefix": "", "suffix": "", @@ -8662,6 +8667,11 @@ "widget": { "type": "input" }, + "interactions": { + "marker": true, + "polygon": false, + "polyline": false + }, "dbIndex": false, "overlay": { "top": "", @@ -8730,11 +8740,266 @@ }, { "id": "epw3hqq", - "key": "mapHidden", + "key": "mapPointHidden", + "mask": false, + "type": "map", + "input": true, + "label": "Map point Hidden", + "hidden": true, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": true, + "polygon": false, + "polyline": false + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": false, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": true, + "defaultValue": "", + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "ejjo8lg", + "key": "mapLineString", + "mask": false, + "type": "map", + "input": true, + "label": "Map LineString", + "hidden": false, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": false, + "polyline": true + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": true, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": true, + "defaultValue": "", + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "e9a7jm", + "key": "mapLineStringEmpty", + "mask": false, + "type": "map", + "input": true, + "label": "Map LineString Empty", + "hidden": false, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": false, + "polyline": true + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": false, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": true, + "defaultValue": "", + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "epw3hqf", + "key": "mapLineStringHidden", "mask": false, "type": "map", "input": true, - "label": "Map Hidden", + "label": "Map LineString Hidden", "hidden": true, "prefix": "", "suffix": "", @@ -8742,6 +9007,266 @@ "widget": { "type": "input" }, + "interactions": { + "marker": false, + "polygon": false, + "polyline": true + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": false, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": true, + "defaultValue": "", + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "ejjo8la", + "key": "mapPolygon", + "mask": false, + "type": "map", + "input": true, + "label": "Map Polygon", + "hidden": false, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": true, + "polyline": false + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": true, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": true, + "defaultValue": "", + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "e9a7jd", + "key": "mapPolygonEmpty", + "mask": false, + "type": "map", + "input": true, + "label": "Map Polygon Empty", + "hidden": false, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": true, + "polyline": false + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": false, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": true, + "defaultValue": "", + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "epw3hqd", + "key": "mapPolygonHidden", + "mask": false, + "type": "map", + "input": true, + "label": "Map Polygon Hidden", + "hidden": true, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": true, + "polyline": false + }, "dbIndex": false, "overlay": { "top": "", diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_data.json b/src/openforms/formio/formatters/tests/files/kitchensink_data.json index 705fad345c..7d2f7103b7 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_data.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_data.json @@ -132,18 +132,42 @@ null ], "licenseplate": "aa-bb-12", - "map": { + "mapPoint": { "type": "Point", "coordinates": [52.373087283242505, 4.8923054658521945] }, - "mapEmpty": { + "mapPointEmpty": { "type": "Point", "coordinates": [52.379648, 4.9020928] }, - "mapHidden": { + "mapPointHidden": { "type": "Point", "coordinates": [52.379648, 4.9020928] }, + "mapLineString": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapLineStringEmpty": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapLineStringHidden": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapPolygon": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, + "mapPolygonEmpty": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, + "mapPolygonHidden": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, "number": 1234, "numberDecimal": 1234.56, "numberDecimalMulti": [ diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json b/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json index 31b3b6a83d..925ace769d 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_data_with_hidden.json @@ -100,18 +100,42 @@ "licensePlateMulti": ["aa-bb-12", "1-aaa-12", "12-aa-34"], "licensePlateMultiEmpty": [null], "licenseplate": "aa-bb-12", - "map": { + "mapPoint": { "type": "Point", "coordinates": [52.373087283242505, 4.8923054658521945] }, - "mapEmpty": { + "mapPointEmpty": { "type": "Point", "coordinates": [52.379648, 4.9020928] }, - "mapHidden": { + "mapPointHidden": { "type": "Point", "coordinates": [52.379648, 4.9020928] }, + "mapLineString": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapLineStringEmpty": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapLineStringHidden": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapPolygon": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, + "mapPolygonEmpty": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, + "mapPolygonHidden": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, "number": 1234, "numberHidden": 1234, "numberDecimal": 1234.56, diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_printable_text.json b/src/openforms/formio/formatters/tests/files/kitchensink_printable_text.json index 3b595659d8..e844a97b34 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_printable_text.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_printable_text.json @@ -94,7 +94,13 @@ "Signature": "", "Signature Hidden": "", "Signature Empty": "", - "Map": "52.373087283242505, 4.8923054658521945", - "Map Empty": "", - "Map Hidden": "" + "Map point": "52.373087283242505, 4.8923054658521945", + "Map point Empty": "", + "Map point Hidden": "", + "Map LineString": "[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]", + "Map LineString Empty": "", + "Map LineString Hidden": "", + "Map Polygon": "[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]", + "Map Polygon Empty": "", + "Map Polygon Hidden": "" } diff --git a/src/openforms/formio/formatters/tests/files/kitchensink_printable_text_with_hidden.json b/src/openforms/formio/formatters/tests/files/kitchensink_printable_text_with_hidden.json index 262ad0a51d..5bfa97214d 100644 --- a/src/openforms/formio/formatters/tests/files/kitchensink_printable_text_with_hidden.json +++ b/src/openforms/formio/formatters/tests/files/kitchensink_printable_text_with_hidden.json @@ -94,7 +94,13 @@ "Signature": "", "Signature Hidden": "", "Signature Empty": "", - "Map": "52.373087283242505, 4.8923054658521945", - "Map Empty": "", - "Map Hidden": "" + "Map point": "52.373087283242505, 4.8923054658521945", + "Map point Empty": "", + "Map point Hidden": "", + "Map LineString": "[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]", + "Map LineString Empty": "", + "Map LineString Hidden": "", + "Map Polygon": "[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]", + "Map Polygon Empty": "", + "Map Polygon Hidden": "" } diff --git a/src/openforms/formio/formatters/tests/test_default_formatters.py b/src/openforms/formio/formatters/tests/test_default_formatters.py index 7e74304b50..5fe4a95dc1 100644 --- a/src/openforms/formio/formatters/tests/test_default_formatters.py +++ b/src/openforms/formio/formatters/tests/test_default_formatters.py @@ -19,6 +19,9 @@ def test_formatters(self): "time": "16:26", "email": "test@example.com", "radio": "Option 2", + "mapPoint": "4.893164274470299, 52.36673378967122", + "mapLineString": "[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]", + "mapPolygon": "[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]", "number": "42,123", "select": "Option 1", "postcode": "1234 AA", diff --git a/src/openforms/formio/formatters/tests/test_kitchensink.py b/src/openforms/formio/formatters/tests/test_kitchensink.py index 7d521768a7..66565705bf 100644 --- a/src/openforms/formio/formatters/tests/test_kitchensink.py +++ b/src/openforms/formio/formatters/tests/test_kitchensink.py @@ -49,8 +49,12 @@ def run_kitchensink_test(self, name_data, name_printable): # empty map should send no coordinates # TODO update data fixture when #1346 is fixed - data["mapEmpty"] = {} - data["mapHidden"] = {} + data["mapPointEmpty"] = {} + data["mapPointHidden"] = {} + data["mapLineStringEmpty"] = {} + data["mapLineStringHidden"] = {} + data["mapPolygonEmpty"] = {} + data["mapPolygonHidden"] = {} # translated string assert "Signature" in text_printed diff --git a/src/openforms/registrations/contrib/camunda/tests/files/all_components.json b/src/openforms/registrations/contrib/camunda/tests/files/all_components.json index 89b6d455d8..e569a6895b 100644 --- a/src/openforms/registrations/contrib/camunda/tests/files/all_components.json +++ b/src/openforms/registrations/contrib/camunda/tests/files/all_components.json @@ -1541,7 +1541,7 @@ }, { "id": "ezy69bg", - "key": "map", + "key": "mapPoint", "mask": false, "type": "map", "input": true, @@ -1553,6 +1553,181 @@ "widget": { "type": "input" }, + "interactions": { + "marker": true, + "polygon": false, + "polyline": false + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": false, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": false, + "defaultValue": null, + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "ezy69bd", + "key": "mapLineString", + "mask": false, + "type": "map", + "input": true, + "label": "Map", + "hidden": false, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": false, + "polyline": true + }, + "dbIndex": false, + "overlay": { + "top": "", + "left": "", + "style": "", + "width": "", + "height": "" + }, + "tooltip": "", + "disabled": false, + "multiple": false, + "redrawOn": "", + "tabindex": "", + "validate": { + "custom": "", + "unique": false, + "pattern": "", + "plugins": [], + "multiple": false, + "required": false, + "maxLength": "", + "minLength": "", + "customPrivate": false, + "strictDateValidation": false + }, + "autofocus": false, + "encrypted": false, + "hideLabel": false, + "inputMask": "", + "inputType": "text", + "modalEdit": false, + "protected": false, + "refreshOn": "", + "tableView": true, + "attributes": {}, + "errorLabel": "", + "persistent": true, + "properties": {}, + "spellcheck": true, + "validateOn": "change", + "clearOnHide": true, + "conditional": { + "eq": "", + "show": null, + "when": null + }, + "customClass": "", + "description": "", + "inputFormat": "plain", + "placeholder": "", + "showInEmail": false, + "defaultValue": null, + "registration": { + "attribute": "" + }, + "dataGridLabel": false, + "labelPosition": "top", + "showCharCount": false, + "showWordCount": false, + "calculateValue": "", + "calculateServer": false, + "isSensitiveData": true, + "allowMultipleMasks": false, + "customDefaultValue": "", + "allowCalculateOverride": false + }, + { + "id": "ezy69be", + "key": "mapPolygon", + "mask": false, + "type": "map", + "input": true, + "label": "Map", + "hidden": false, + "prefix": "", + "suffix": "", + "unique": false, + "widget": { + "type": "input" + }, + "interactions": { + "marker": false, + "polygon": true, + "polyline": false + }, "dbIndex": false, "overlay": { "top": "", diff --git a/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json b/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json index 818feed698..e7706c0e6f 100644 --- a/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json +++ b/src/openforms/registrations/contrib/camunda/tests/files/all_components_data.json @@ -1,9 +1,17 @@ { "bsn": "123456782", - "map": { + "mapPoint": { "type": "Point", "coordinates": [52.3782943985417, 4.899629917973432] }, + "mapLineString": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]] + }, + "mapPolygon": { + "type": "Polygon", + "coordinates": [[[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]]] + }, "date": "2021-12-24", "file": [], "iban": "RO09 BCYP 0000 0012 3456 7890", diff --git a/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py b/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py index e557b414c3..a49452bed6 100644 --- a/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py +++ b/src/openforms/registrations/contrib/camunda/tests/test_type_mapping.py @@ -152,18 +152,48 @@ def test_kitchensink_types(self): "licensePlateMulti": ["aa-bb-12", "1-aaa-12", "12-aa-34"], "licensePlateMultiEmpty": [None], "licenseplate": "aa-bb-12", - "map": { + "mapPoint": { "type": "Point", "coordinates": [52.373087283242505, 4.8923054658521945], }, - "mapEmpty": { + "mapPointEmpty": { "type": "Point", "coordinates": [52.379648, 4.9020928], }, - "mapHidden": { + "mapPointHidden": { "type": "Point", "coordinates": [52.379648, 4.9020928], }, + "mapLineString": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]], + }, + "mapLineStringEmpty": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]], + }, + "mapLineStringHidden": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]], + }, + "mapPolygon": { + "type": "Polygon", + "coordinates": [ + [[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]] + ], + }, + "mapPolygonEmpty": { + "type": "Polygon", + "coordinates": [ + [[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]] + ], + }, + "mapPolygonHidden": { + "type": "Polygon", + "coordinates": [ + [[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]] + ], + }, "number": 1234, "numberEmpty": None, "numberHidden": 1234, @@ -247,10 +277,20 @@ def test_all_types(self): data = load_json("all_components_data.json") expected = { "bsn": "123456782", - "map": { + "mapPoint": { "type": "Point", "coordinates": [52.3782943985417, 4.899629917973432], }, + "mapLineString": { + "type": "LineString", + "coordinates": [[4.893, 52.366], [4.894, 52.367], [4.895, 52.368]], + }, + "mapPolygon": { + "type": "Polygon", + "coordinates": [ + [[4.893, 52.366], [4.893, 52.368], [4.895, 52.368], [4.895, 52.366]] + ], + }, "date": date(2021, 12, 24), "file": [], "iban": "RO09 BCYP 0000 0012 3456 7890",