Initial commit

This commit is contained in:
Julien Nahum
2022-09-20 21:59:52 +02:00
commit f8e6cd4dd6
479 changed files with 77078 additions and 0 deletions

55
resources/js/mixins/forms/input.js vendored Normal file
View File

@@ -0,0 +1,55 @@
import { themes } from '~/config/form-themes'
export default {
props: {
id: { type: String, default: null },
name: { type: String, required: true },
label: { type: String, required: false },
form: { type: Object, required: false },
value: { required: false },
required: { type: Boolean, default: false },
disabled: { type: Boolean, default: false },
placeholder: { type: String, default: null },
uppercaseLabels: { type: Boolean, default: true },
help: { type: String, default: null }, // Show help or bot
theme: { type: Object, default: () => themes.default },
color: { type: String, default: '#3B82F6' },
wrapperClass: { type: String, default: 'relative mb-3' }
},
data () {
return {
content: this.value
}
},
computed: {
inputStyle () {
return {
'--tw-ring-color': this.color
}
},
hasValidation () {
return this.form !== null && this.form !== undefined && this.form.hasOwnProperty('errors')
},
compVal: {
set (val) {
if (this.form) {
this.$set(this.form, this.name, val)
} else {
this.content = val
}
if (this.hasValidation) {
this.form.errors.clear(this.name)
}
this.$emit('input', this.compVal)
},
get () {
if (this.form) {
return this.form[this.name]
}
return this.content
}
}
}
}

View File

@@ -0,0 +1,20 @@
export default {
methods: {
displayFormModificationAlert(responseData) {
if (responseData.form_cleaning && Object.keys(responseData.form_cleaning).length > 0) {
let message = responseData.message + '<br/>'
Object.keys(responseData.form_cleaning).forEach((key) => {
const fieldName = key.charAt(0).toUpperCase() + key.slice(1)
let fieldInfo = "<br/>" + fieldName + "<br/><ul class='list-disc list-inside'>"
responseData.form_cleaning[key].forEach((msg) => {
fieldInfo = fieldInfo + "<li>" + msg +"</li>"
})
message = message + fieldInfo + "<ul/>"
})
this.alertWarning(message)
} else {
this.alertSuccess(responseData.message)
}
}
}
}