Add regex matching filters to open_filters.json (#722)

* Add regex matching filters to open_filters.json

- Introduce new regex-based filters: matches_regex and does_not_match_regex
- Add support for string-based regex matching in both API and client filter configurations
- Update filter schemas to include new regex filter options with expected string type

* Add barcode comparators and regex filters to open_filters.json and validatePropertiesLogic.js

- Introduce new barcode comparators: equals, does_not_equal, contains, does_not_contain, starts_with, ends_with, is_empty, is_not_empty, matches_regex, does_not_match_regex, content_length_equals, content_length_does_not_equal, content_length_greater_than, content_length_greater_than_or_equal_to, content_length_less_than, content_length_less_than_or_equal_to.
- Add regex matching filters: matches_regex and does_not_match_regex to open_filters.json.
- Remove console log statements from validatePropertiesLogic.js and FormPropertyLogicRule.js for cleaner code.

This update enhances the filtering capabilities and improves the validation logic by removing unnecessary debug outputs.

* Refactor Vue Components for Improved Readability and Consistency

- Update CameraUpload.vue to enhance formatting and maintain consistent indentation for better readability.
- Modify OpenFormField.vue to improve tooltip component formatting, ensuring consistent styling across the application.
- Refactor FormSecurityAccess.vue to enhance the layout of the conditional rendering for captcha providers.
- Adjust RegisterForm.vue to improve the formatting of the terms and conditions section, ensuring consistent indentation and readability.

These changes aim to enhance code maintainability and visual consistency across the components, contributing to a cleaner codebase.

---------

Co-authored-by: Julien Nahum <julien@nahum.net>
This commit is contained in:
Chirag Chhatrala
2025-03-15 11:25:42 +05:30
committed by GitHub
parent e100b32929
commit 37a10cbdfa
9 changed files with 287 additions and 34 deletions

View File

@@ -1,5 +1,8 @@
<template>
<div class="relative overflow-hidden" :class="[theme.fileInput.borderRadius]">
<div
class="relative overflow-hidden"
:class="[theme.fileInput.borderRadius]"
>
<video
id="webcam"
autoplay
@@ -29,19 +32,22 @@
class="absolute inset-0 pointer-events-none"
>
<!-- Semi-transparent overlay -->
<div class="absolute inset-0 bg-black/30"></div>
<div class="absolute inset-0 bg-black/30" />
<!-- Scanning area (transparent window) -->
<div class="absolute inset-0 flex items-center justify-center" style="padding-bottom: 60px;">
<div
class="absolute inset-0 flex items-center justify-center"
style="padding-bottom: 60px;"
>
<div class="relative w-4/5 h-3/5">
<!-- Transparent window -->
<div class="absolute inset-0 bg-transparent border-0"></div>
<div class="absolute inset-0 bg-transparent border-0" />
<!-- Corner indicators -->
<div class="absolute top-0 left-0 w-8 h-8 border-t-2 border-l-2 border-white"></div>
<div class="absolute top-0 right-0 w-8 h-8 border-t-2 border-r-2 border-white"></div>
<div class="absolute bottom-0 left-0 w-8 h-8 border-b-2 border-l-2 border-white"></div>
<div class="absolute bottom-0 right-0 w-8 h-8 border-b-2 border-r-2 border-white"></div>
<div class="absolute top-0 left-0 w-8 h-8 border-t-2 border-l-2 border-white" />
<div class="absolute top-0 right-0 w-8 h-8 border-t-2 border-r-2 border-white" />
<div class="absolute bottom-0 left-0 w-8 h-8 border-b-2 border-l-2 border-white" />
<div class="absolute bottom-0 right-0 w-8 h-8 border-b-2 border-r-2 border-white" />
</div>
</div>
</div>
@@ -257,7 +263,7 @@ export default {
}
// Create constraints based on device capabilities
let constraints = {
const constraints = {
audio: false,
video: {
width: { ideal: 1280 },