@webitel/ui-datalist 1.1.79 → 1.1.80
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/Readme.md +2 -0
- package/package.json +1 -1
- package/src/modules/card/composables/useCardAnyFieldEditedWatcher.ts +18 -0
- package/src/modules/card/index.ts +1 -0
- package/types/.tsbuildinfo +1 -1
- package/types/modules/card/composables/useCardAnyFieldEditedWatcher.d.ts +18 -0
- package/types/modules/card/index.d.ts +1 -0
package/Readme.md
CHANGED
|
@@ -79,6 +79,8 @@ aka "page"/"entity page"/"item card"/"item form" - form card of a single item fr
|
|
|
79
79
|
import {
|
|
80
80
|
createCardStore, // pinia store factory
|
|
81
81
|
useCardComponent, // all-in-one composable for card component wrapper (opened-*entity*.vue)
|
|
82
|
+
useNestedCardComponent, // popup / nested-route card with its own store
|
|
83
|
+
useCardAnyFieldEditedWatcher, // dirty flag for a local draft ref (no card store)
|
|
82
84
|
} from '@webitel/ui-datalist/card';
|
|
83
85
|
```
|
|
84
86
|
|
package/package.json
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
import { type Ref, ref, watch } from 'vue';
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* Dirty flag for a local draft `ref`.
|
|
5
|
+
*
|
|
6
|
+
* Replacing `value` with a new object resets dirty. Mutating fields
|
|
7
|
+
* in place sets `isAnyFieldEdited` to `true`.
|
|
8
|
+
*
|
|
9
|
+
* Used by `useCardComponent`. Also usable on nested popups that keep
|
|
10
|
+
* a local draft instead of a card store.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const draft = ref({ name: '' });
|
|
15
|
+
* const { isAnyFieldEdited } = useCardAnyFieldEditedWatcher({ value: draft });
|
|
16
|
+
*
|
|
17
|
+
* draft.value = { name: 'Holiday' }; // reset
|
|
18
|
+
* draft.value.name = 'NY'; // dirty
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
3
21
|
export const useCardAnyFieldEditedWatcher = ({
|
|
4
22
|
value,
|
|
5
23
|
}: {
|