Plugin Directory


Ignore:
Timestamp:
11/07/2026 08:16:35 AM (7 hours ago)
Author:
subtleforms
Message:

SubtleForms 2.8.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • subtleforms/trunk/src/Frontend/FrontendAssets.php

    r3782922 r3789172  
    387387                                $groups['flags'] = true;
    388388                        }
     389                        // Input mask (2.8.0): one more lazy group, only for a field that asks.
     390                        // A Phone field with the country picker handles the phone mask itself.
     391                        $mask = self::flatOrConfig( $node, $config, 'inputMask' );
     392                        if ( in_array( $type, array( 'text', 'number', 'phone', 'tel' ), true ) && is_string( $mask ) && '' !== $mask && ! $phonePicker ) {
     393                                $groups['mask'] = true;
     394                        }
    389395                        if ( $phonePicker ) {
    390396                                $groups['geo'] = true;
    … …  
    401407                sort( $names );
    402408                return $names;
     409        }
     410
     411        /**
     412         * A setting from the config when it holds one, else from the node.
     413         *
     414         * @param array<string, mixed> $node   Field node.
     415         * @param array<string, mixed> $config Its config.
     416         * @param string               $name   Setting name.
     417         * @return mixed
     418         */
     419        private static function flatOrConfig( array $node, array $config, string $name ) {
     420                $value = $config[ $name ] ?? null;
     421                return ( null === $value || '' === $value ) ? ( $node[ $name ] ?? null ) : $value;
    403422        }
    404423
    … …  
    435454                'flags'          => 'feature-flags',
    436455                'geo'            => 'field-phone-country',
     456                'mask'           => 'field-mask',
    437457                'repeater'       => 'field-repeater',
    438458                'richText'       => 'field-rich-text',
Note: See TracChangeset for help on using the changeset viewer.