sveltedfire 0.1.27 → 0.1.28

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.
@@ -6,8 +6,15 @@ export const handleForm = ({ collectionName, docId = null, docIdField = null, on
6
6
  const formData = new FormData(ev.target);
7
7
  let col = collection(db, collectionName);
8
8
  let objData = Object.fromEntries(formData.entries());
9
+ let actualDocId = '';
10
+ if (docId) {
11
+ actualDocId = docId;
12
+ }
13
+ if (docIdField) {
14
+ actualDocId = formData.get(docIdField);
15
+ }
9
16
  if (beforeSubmit) {
10
- objData = await beforeSubmit(objData, ev);
17
+ [objData, actualDocId] = await beforeSubmit(objData, actualDocId, ev);
11
18
  }
12
19
  Object.keys(objData).forEach(k => {
13
20
  if (objData[k] === '_deleteme_') {
@@ -69,23 +76,14 @@ export const handleForm = ({ collectionName, docId = null, docIdField = null, on
69
76
  objData = cleanArrays(objData);
70
77
  console.log('Object data is', objData);
71
78
  let docRefId;
72
- if (docId) {
73
- if (forceNew) {
74
- await setDoc(doc(col, docId), objData);
75
- }
76
- else {
77
- await updateDoc(doc(col, docId), objData);
78
- }
79
- docRefId = docId;
80
- }
81
- else if (docIdField) {
79
+ if (docId || docIdField) {
82
80
  if (forceNew) {
83
- await setDoc(doc(col, formData.get(docIdField)), objData);
81
+ await setDoc(doc(col, actualDocId), objData);
84
82
  }
85
83
  else {
86
- await updateDoc(doc(col, formData.get(docIdField)), objData);
84
+ await updateDoc(doc(col, actualDocId), objData);
87
85
  }
88
- docRefId = formData.get(docIdField);
86
+ docRefId = actualDocId;
89
87
  }
90
88
  else {
91
89
  let docRef = await addDoc(col, objData);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sveltedfire",
3
- "version": "0.1.27",
3
+ "version": "0.1.28",
4
4
  "scripts": {
5
5
  "dev": "vite dev",
6
6
  "build": "vite build && npm run prepack",