WIP: Implement even more stuff
This commit is contained in:
@@ -98,14 +98,9 @@
|
||||
|
||||
{%- block choice_widget_expanded -%}
|
||||
<fieldset>
|
||||
{% if form.vars.label %}
|
||||
<legend class="text-base font-bold leading-6 text-gray-900">
|
||||
{{ form.vars.label }}
|
||||
</legend>
|
||||
{% endif %}
|
||||
<div class="mt-4 divide-y divide-gray-200 border-b border-t border-gray-200">
|
||||
<div class="divide-y divide-gray-200">
|
||||
{%- for child in form %}
|
||||
<div class="relative flex items-start py-4">
|
||||
<div class="relative flex items-start py-4 first:pt-0">
|
||||
<div class="min-w-0 flex-1 text-sm leading-6">
|
||||
<label for="{{ child.vars.id }}" class="select-none font-medium text-gray-900">
|
||||
{{ child.vars.label }}
|
||||
@@ -166,7 +161,7 @@
|
||||
{%- if disabled is defined and disabled == true -%}
|
||||
{%- set attr = attr|merge({'class': attr.class|default('') ~ ' cursor-not-allowed' }) -%}
|
||||
{%- endif -%}
|
||||
<div {{ stimulus_controller('datepicker', { 'minDate': minDate, 'maxDate': maxDate, 'disableWeekends': form.vars.disable_weekends }) }}>
|
||||
<div {{ stimulus_controller('datepicker', { 'minDate': minDate, 'maxDate': maxDate, 'disableWeekends': form.vars.disable_weekends, 'mode': form.vars.mode }) }}>
|
||||
<input type="text" name="{{ form.vars.full_name }}" value="{{ value }}" {{ block('widget_attributes') }}
|
||||
{{ stimulus_target('datepicker', 'field') }} />
|
||||
</div>
|
||||
@@ -174,3 +169,41 @@
|
||||
<input type="hidden" name="{{ form.vars.full_name }}" value="{{ form.vars.value }}">
|
||||
{%- endif -%}
|
||||
{%- endblock datepicker_widget %}
|
||||
|
||||
{%- block autocomplete_widget -%}
|
||||
{%- set attr = attr|merge({'class': (attr.class|default('') ~ ' autocomplete-input block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 focus:ring-2 focus:ring-inset sm:text-sm sm:leading-6')|trim }) -%}
|
||||
{%- if errors|length -%}
|
||||
{%- set attr = attr|merge({'class': attr.class|default('') ~ ' ring-red-500 placeholder-red-500 focus:ring-red-500' }) -%}
|
||||
{% else %}
|
||||
{%- set attr = attr|merge({'class': attr.class|default('') ~ ' placeholder:text-gray-400 focus:ring-primary' }) -%}
|
||||
{%- endif -%}
|
||||
{%- if disabled is defined and disabled == true -%}
|
||||
{%- set attr = attr|merge({'class': attr.class|default('') ~ ' cursor-not-allowed' }) -%}
|
||||
{%- endif -%}
|
||||
<div class="autocomplete"
|
||||
data-controller="autocomplete"
|
||||
{% if form.vars.action %}data-action="{{ form.vars.action }}"{% endif %}
|
||||
{% if form.vars.endpoint_url is defined %}data-autocomplete-url-value="{{ form.vars.endpoint_url }}"{% endif %}
|
||||
{% if form.vars.choices is defined %}data-autocomplete-choices-value='{{ form.vars.choices | json_encode | raw }}'{% endif %}
|
||||
>
|
||||
<input type="text"
|
||||
class="{{ attr.class }}"
|
||||
value="{{ form.vars.initial_label }}"
|
||||
{{ stimulus_target('autocomplete', 'input') }}>
|
||||
<ul class="autocomplete-result-list"></ul>
|
||||
<input type="hidden"
|
||||
name="{{ form.vars.full_name }}"
|
||||
{{ stimulus_target('autocomplete', 'field') }}
|
||||
value="{{ form.vars.initial_value }}">
|
||||
<button type="button"
|
||||
class="autocomplete-icon hidden"
|
||||
{{ stimulus_action('autocomplete', 'reset') }}
|
||||
{{ stimulus_target('autocomplete', 'resetButton') }}>
|
||||
{{ icon('close', 'w-4 h-4 text-gray-700') }}
|
||||
</button>
|
||||
<div class="autocomplete-icon"
|
||||
{{ stimulus_target('autocomplete', 'searchIcon') }}>
|
||||
{{ icon('search', 'w-4 h-4 text-gray-700') }}
|
||||
</div>
|
||||
</div>
|
||||
{%- endblock autocomplete_widget %}
|
||||
|
||||
Reference in New Issue
Block a user