add nova
This commit is contained in:
50
nova/resources/js/mixins/FieldValue.js
Normal file
50
nova/resources/js/mixins/FieldValue.js
Normal file
@@ -0,0 +1,50 @@
|
||||
import filled from '../util/filled'
|
||||
import isArray from 'lodash/isArray'
|
||||
|
||||
export default {
|
||||
props: ['field'],
|
||||
|
||||
methods: {
|
||||
isEqualsToValue(value) {
|
||||
if (isArray(this.field.value) && filled(value)) {
|
||||
return Boolean(
|
||||
this.field.value.includes(value) ||
|
||||
this.field.value.includes(value.toString())
|
||||
)
|
||||
}
|
||||
|
||||
return Boolean(
|
||||
this.field.value === value ||
|
||||
this.field.value?.toString() === value ||
|
||||
this.field.value === value?.toString() ||
|
||||
this.field.value?.toString() === value?.toString()
|
||||
)
|
||||
},
|
||||
},
|
||||
|
||||
computed: {
|
||||
fieldAttribute() {
|
||||
return this.field.attribute
|
||||
},
|
||||
|
||||
fieldHasValue() {
|
||||
return filled(this.field.value)
|
||||
},
|
||||
|
||||
usesCustomizedDisplay() {
|
||||
return this.field.usesCustomizedDisplay && filled(this.field.displayedAs)
|
||||
},
|
||||
|
||||
fieldValue() {
|
||||
if (!this.usesCustomizedDisplay && !this.fieldHasValue) {
|
||||
return null
|
||||
}
|
||||
|
||||
return String(this.field.displayedAs ?? this.field.value)
|
||||
},
|
||||
|
||||
shouldDisplayAsHtml() {
|
||||
return this.field.asHtml
|
||||
},
|
||||
},
|
||||
}
|
||||
Reference in New Issue
Block a user