feat: Dynamic Link field support

(cherry picked from commit c7a03922a0b3dd8c702f2f196c1e9e8eb339adb5)
This commit is contained in:
Shariq Ansari 2025-04-07 13:16:52 +05:30 committed by Mergify
parent f9e7035585
commit 6260850023
4 changed files with 24 additions and 6 deletions

View File

@ -100,10 +100,16 @@
:disabled="true" :disabled="true"
/> />
<Link <Link
v-else-if="field.fieldtype === 'Link'" v-else-if="
['Link', 'Dynamic Link'].includes(field.fieldtype)
"
class="text-sm text-ink-gray-8" class="text-sm text-ink-gray-8"
v-model="row[field.fieldname]" v-model="row[field.fieldname]"
:doctype="field.options" :doctype="
field.fieldtype == 'Link'
? field.options
: row[field.options]
"
:filters="field.filters" :filters="field.filters"
/> />
<Link <Link

View File

@ -159,6 +159,7 @@ const options = createResource({
}) })
function reload(val) { function reload(val) {
if (!props.doctype) return
if ( if (
options.data?.length && options.data?.length &&
val === options.params?.txt && val === options.params?.txt &&

View File

@ -59,11 +59,16 @@
<span class="text-ink-red-3" v-if="field.mandatory">*</span> <span class="text-ink-red-3" v-if="field.mandatory">*</span>
</label> </label>
</div> </div>
<div class="flex gap-1" v-else-if="field.fieldtype === 'Link'"> <div
class="flex gap-1"
v-else-if="['Link', 'Dynamic Link'].includes(field.fieldtype)"
>
<Link <Link
class="form-control flex-1 truncate" class="form-control flex-1 truncate"
:value="data[field.fieldname]" :value="data[field.fieldname]"
:doctype="field.options" :doctype="
field.fieldtype == 'Link' ? field.options : data[field.options]
"
:filters="field.filters" :filters="field.filters"
@change="(v) => (data[field.fieldname] = v)" @change="(v) => (data[field.fieldname] = v)"
:placeholder="getPlaceholder(field)" :placeholder="getPlaceholder(field)"

View File

@ -215,10 +215,16 @@
</template> </template>
</Link> </Link>
<Link <Link
v-else-if="field.fieldtype === 'Link'" v-else-if="
['Link', 'Dynamic Link'].includes(field.fieldtype)
"
class="form-control select-text" class="form-control select-text"
:value="data[field.fieldname]" :value="data[field.fieldname]"
:doctype="field.options" :doctype="
field.fieldtype == 'Link'
? field.options
: data[field.options]
"
:filters="field.filters" :filters="field.filters"
:placeholder="field.placeholder" :placeholder="field.placeholder"
@change=" @change="