mirror of
https://github.com/usetrmnl/byos_laravel.git
synced 2026-01-13 23:18:10 +00:00
feat: trmnlp config add support for field_types: text, code, time
This commit is contained in:
parent
58fad59301
commit
a129c71d79
1 changed files with 41 additions and 3 deletions
|
|
@ -574,7 +574,7 @@ HTML;
|
||||||
$fieldKey = $field['keyname'] ?? $field['key'] ?? $field['name'];
|
$fieldKey = $field['keyname'] ?? $field['key'] ?? $field['name'];
|
||||||
$currentValue = $configuration[$fieldKey] ?? '';
|
$currentValue = $configuration[$fieldKey] ?? '';
|
||||||
@endphp
|
@endphp
|
||||||
<div class="mb-8">
|
<div class="mb-4">
|
||||||
@if($field['field_type'] === 'author_bio')
|
@if($field['field_type'] === 'author_bio')
|
||||||
@continue
|
@continue
|
||||||
@endif
|
@endif
|
||||||
|
|
@ -587,14 +587,35 @@ HTML;
|
||||||
<flux:input
|
<flux:input
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
value="{{ $currentValue }}"
|
value="{{ $currentValue }}"
|
||||||
/>
|
/>
|
||||||
|
@elseif($field['field_type'] === 'text')
|
||||||
|
<flux:textarea
|
||||||
|
label="{{ $field['name'] }}"
|
||||||
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
|
value="{{ $currentValue }}"
|
||||||
|
/>
|
||||||
|
@elseif($field['field_type'] === 'code')
|
||||||
|
<flux:textarea
|
||||||
|
label="{{ $field['name'] }}"
|
||||||
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
|
rows="{{ $field['rows'] ?? 3 }}"
|
||||||
|
placeholder="{{ $field['placeholder'] ?? null }}"
|
||||||
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
|
value="{{ $currentValue }}"
|
||||||
|
class="font-mono"
|
||||||
|
/>
|
||||||
@elseif($field['field_type'] === 'password')
|
@elseif($field['field_type'] === 'password')
|
||||||
<flux:input
|
<flux:input
|
||||||
type="password"
|
type="password"
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
value="{{ $currentValue }}"
|
value="{{ $currentValue }}"
|
||||||
viewable
|
viewable
|
||||||
|
|
@ -603,6 +624,7 @@ HTML;
|
||||||
<flux:input
|
<flux:input
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
value="{{ $field['value'] }}"
|
value="{{ $field['value'] }}"
|
||||||
copyable
|
copyable
|
||||||
/>
|
/>
|
||||||
|
|
@ -611,6 +633,7 @@ HTML;
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
>
|
>
|
||||||
<option value="">Select timezone...</option>
|
<option value="">Select timezone...</option>
|
||||||
@foreach(timezone_identifiers_list() as $timezone)
|
@foreach(timezone_identifiers_list() as $timezone)
|
||||||
|
|
@ -622,6 +645,7 @@ HTML;
|
||||||
type="number"
|
type="number"
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
description="{{ $field['description'] ?? $field['name'] }}"
|
description="{{ $field['description'] ?? $field['name'] }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
value="{{ $currentValue }}"
|
value="{{ $currentValue }}"
|
||||||
/>
|
/>
|
||||||
|
|
@ -629,6 +653,7 @@ HTML;
|
||||||
<flux:checkbox
|
<flux:checkbox
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
description="{{ $field['description'] ?? $field['name'] }}"
|
description="{{ $field['description'] ?? $field['name'] }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
:checked="$currentValue"
|
:checked="$currentValue"
|
||||||
/>
|
/>
|
||||||
|
|
@ -637,6 +662,16 @@ HTML;
|
||||||
type="date"
|
type="date"
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
description="{{ $field['description'] ?? $field['name'] }}"
|
description="{{ $field['description'] ?? $field['name'] }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
|
value="{{ $currentValue }}"
|
||||||
|
/>
|
||||||
|
@elseif($field['field_type'] === 'time')
|
||||||
|
<flux:input
|
||||||
|
type="time"
|
||||||
|
label="{{ $field['name'] }}"
|
||||||
|
description="{{ $field['description'] ?? $field['name'] }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
value="{{ $currentValue }}"
|
value="{{ $currentValue }}"
|
||||||
/>
|
/>
|
||||||
|
|
@ -646,6 +681,7 @@ HTML;
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
>
|
>
|
||||||
@if(isset($field['options']) && is_array($field['options']))
|
@if(isset($field['options']) && is_array($field['options']))
|
||||||
@foreach($field['options'] as $option)
|
@foreach($field['options'] as $option)
|
||||||
|
|
@ -664,6 +700,7 @@ HTML;
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
>
|
>
|
||||||
<option value="">Select {{ $field['name'] }}...</option>
|
<option value="">Select {{ $field['name'] }}...</option>
|
||||||
@if(isset($field['options']) && is_array($field['options']))
|
@if(isset($field['options']) && is_array($field['options']))
|
||||||
|
|
@ -687,6 +724,7 @@ HTML;
|
||||||
label="{{ $field['name'] }}"
|
label="{{ $field['name'] }}"
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
description="{{ $field['description'] ?? '' }}"
|
description="{{ $field['description'] ?? '' }}"
|
||||||
|
descriptionTrailing="{{ $field['help_text'] ?? '' }}"
|
||||||
wire:init="loadXhrSelectOptions('{{ $fieldKey }}', '{{ $field['endpoint'] }}')"
|
wire:init="loadXhrSelectOptions('{{ $fieldKey }}', '{{ $field['endpoint'] }}')"
|
||||||
>
|
>
|
||||||
<option value="">Select {{ $field['name'] }}...</option>
|
<option value="">Select {{ $field['name'] }}...</option>
|
||||||
|
|
@ -722,7 +760,7 @@ HTML;
|
||||||
wire:click="searchXhrSelect('{{ $fieldKey }}', '{{ $field['endpoint'] }}')"
|
wire:click="searchXhrSelect('{{ $fieldKey }}', '{{ $field['endpoint'] }}')"
|
||||||
icon="magnifying-glass"/>
|
icon="magnifying-glass"/>
|
||||||
</flux:input.group>
|
</flux:input.group>
|
||||||
|
<flux:description>{{ $field['help_text'] ?? '' }}</flux:description>
|
||||||
@if((isset($xhrSelectOptions[$fieldKey]) && is_array($xhrSelectOptions[$fieldKey]) && count($xhrSelectOptions[$fieldKey]) > 0) || !empty($currentValue))
|
@if((isset($xhrSelectOptions[$fieldKey]) && is_array($xhrSelectOptions[$fieldKey]) && count($xhrSelectOptions[$fieldKey]) > 0) || !empty($currentValue))
|
||||||
<flux:select
|
<flux:select
|
||||||
wire:model="configuration.{{ $fieldKey }}"
|
wire:model="configuration.{{ $fieldKey }}"
|
||||||
|
|
@ -753,7 +791,7 @@ HTML;
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
@else
|
@else
|
||||||
<p>{{ $field['name'] }}: Field type "{{ $field['field_type'] }}" not yet supported</p>
|
<flux:callout variant="warning">Field type "{{ $field['field_type'] }}" not yet supported</flux:callout>
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue