@omnitend/dashboard-for-laravel 0.4.9 → 0.4.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omnitend/dashboard-for-laravel",
3
- "version": "0.4.9",
3
+ "version": "0.4.10",
4
4
  "description": "Vue 3 dashboard components for Laravel with Bootstrap Vue Next",
5
5
  "type": "module",
6
6
  "main": "./dist/dashboard-for-laravel.umd.cjs",
@@ -520,13 +520,21 @@
520
520
  v-model="editForm.data[fieldKey]"
521
521
  :required="getField(fieldKey).required"
522
522
  :rows="getField(fieldKey).rows || 3"
523
+ :state="editForm.getState(fieldKey)"
524
+ @input="editForm.clearError(fieldKey)"
523
525
  />
524
526
  <DFormInput
525
527
  v-else
526
528
  v-model="editForm.data[fieldKey]"
527
529
  :type="getField(fieldKey).type || 'text'"
528
530
  :required="getField(fieldKey).required"
531
+ :state="editForm.getState(fieldKey)"
532
+ @input="editForm.clearError(fieldKey)"
529
533
  />
534
+ <!-- Validation error -->
535
+ <DFormInvalidFeedback v-if="editForm.hasError(fieldKey)">
536
+ {{ editForm.getError(fieldKey) }}
537
+ </DFormInvalidFeedback>
530
538
  </DFormGroup>
531
539
  </template>
532
540
 
@@ -598,6 +606,7 @@ import DTab from "../base/DTab.vue";
598
606
  import DFormGroup from "../base/DFormGroup.vue";
599
607
  import DFormTextarea from "../base/DFormTextarea.vue";
600
608
  import DFormCheckbox from "../base/DFormCheckbox.vue";
609
+ import DFormInvalidFeedback from "../base/DFormInvalidFeedback.vue";
601
610
  import DXBasicForm from "./DXBasicForm.vue";
602
611
  export type FilterType = 'text' | 'select' | 'number' | 'date' | false;
603
612
 
@@ -1517,10 +1526,19 @@ const handleEditSave = async () => {
1517
1526
  refresh();
1518
1527
  },
1519
1528
  onError: (errors: any) => {
1520
- // Show error toast
1529
+ // Extract first error message for toast
1530
+ let errorMessage = 'Failed to update. Please check the form for errors.';
1531
+ if (errors && typeof errors === 'object') {
1532
+ const firstError = Object.values(errors).flat()[0];
1533
+ if (typeof firstError === 'string') {
1534
+ errorMessage = firstError;
1535
+ }
1536
+ }
1537
+
1538
+ // Show error toast with specific message
1521
1539
  createToast?.({
1522
1540
  title: 'Error',
1523
- body: 'Failed to update. Please check the form for errors.',
1541
+ body: errorMessage,
1524
1542
  variant: 'danger',
1525
1543
  modelValue: 5000, // Auto-dismiss after 5 seconds
1526
1544
  });