Files
M7XBeastandCursor ff096b51b5 Initial publish of dbt_f2dq (f2dq) package v0.12.1.
Clean package repo for Gitea installs via packages.yml git URL.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-11 17:37:40 +03:00

93 lines
2.5 KiB
SQL

{% macro valid_regex(column_name, to_validate) %}
{% set pattern = f2dq.get_regex_for(to_validate) %}
case when
{{ column_name }} is null then false
else {{ f2dq.regex_match_expression(column_name, pattern) }}
end
{% endmacro %}
{% macro valid_email(column_name) %}
{{ f2dq.valid_regex(column_name, 'email')}}
{% endmacro %}
{% macro valid_date_eu(column_name) %}
{{ f2dq.valid_regex(column_name, 'date_eu')}}
{% endmacro %}
{% macro valid_date_us(column_name) %}
{{ f2dq.valid_regex(column_name, 'date_us')}}
{% endmacro %}
{% macro valid_date_inverse(column_name) %}
{{ f2dq.valid_regex(column_name, 'date_inverse')}}
{% endmacro %}
{% macro valid_date_iso_8601(column_name) %}
{{ f2dq.valid_regex(column_name, 'date_iso_8601')}}
{% endmacro %}
{% macro valid_time_24h(column_name) %}
{{ f2dq.valid_regex(column_name, 'time_24h')}}
{% endmacro %}
{% macro valid_time_12h(column_name) %}
{{ f2dq.valid_regex(column_name, 'time_12h')}}
{% endmacro %}
{% macro valid_time(column_name) %}
{{ f2dq.valid_regex(column_name, 'time')}}
{% endmacro %}
{% macro valid_ip_v4(column_name) %}
{{ f2dq.valid_regex(column_name, 'ipv4_address')}}
{% endmacro %}
{% macro valid_ip_v6(column_name) %}
{{ f2dq.valid_regex(column_name, 'ipv6_address')}}
{% endmacro %}
{% macro valid_ip(column_name) %}
(
{{ f2dq.valid_regex(column_name, 'ipv4_address')}}
or
{{ f2dq.valid_regex(column_name, 'ipv6_address')}}
)
{% endmacro %}
{% macro valid_number(column_name) %}
{{ f2dq.valid_regex(column_name, 'number_whole')}}
{% endmacro %}
{% macro valid_number_decimal_point(column_name) %}
{{ f2dq.valid_regex(column_name, 'number_decimal_point')}}
{% endmacro %}
{% macro valid_number_decimal_comma(column_name) %}
{{ f2dq.valid_regex(column_name, 'number_decimal_comma')}}
{% endmacro %}
{% macro valid_number_percentage(column_name) %}
{{ f2dq.valid_regex(column_name, 'number_percentage')}}
{% endmacro %}
{% macro valid_number_percentage_point(column_name) %}
{{ f2dq.valid_regex(column_name, 'number_percentage_point')}}
{% endmacro %}
{% macro valid_number_percentage_comma(column_name) %}
{{ f2dq.valid_regex(column_name, 'number_percentage_comma')}}
{% endmacro %}
{% macro valid_phone(column_name) %}
{{ f2dq.valid_regex(column_name, 'phone')}}
{% endmacro %}
{% macro valid_uuid(column_name) %}
{{ f2dq.valid_regex(column_name, 'uuid')}}
{% endmacro %}
{% macro valid_credit_card(column_name) %}
{{ f2dq.valid_regex(column_name, 'credit_card_number')}}
{% endmacro %}