@props([ 'name' => '', 'id' => null, 'lookupUrl' => '', // Full URL to the AJAX lookup endpoint 'lookupType' => 'scheme_name', // scheme_name | adp | uid 'selectedValue' => null, 'selectedText' => null, 'placeholder' => 'Search...', 'required' => false, 'disabled' => false, 'allowClear' => true, 'multiple' => false, 'extraParams' => [], // Additional query params forwarded with every AJAX call 'syncOnly' => false, // When true, this select syncs but does NOT post its own name 'mergeFormParams'=> true, // When false, do not merge parent form fields into AJAX (use for large forms) 'inputClass' => '', ]) @php $fieldId = $id; if ($fieldId === null || $fieldId === '') { $fieldId = ($name !== null && $name !== '') ? $name : null; } if ($fieldId === null || $fieldId === '') { $fieldId = 'pms-s2-'.preg_replace('/[^a-z0-9_-]+/i', '-', (string) $lookupType).'-'.substr(sha1((string) $lookupUrl.'|'.(string) $lookupType.'|'.(string) $placeholder), 0, 8); } @endphp @once @push('scripts') @endpush @endonce