@hasna/cloud 0.1.19 → 0.1.20
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/dist/cli/index.js +14 -1
- package/dist/dialect.d.ts.map +1 -1
- package/dist/index.js +14 -1
- package/dist/mcp/index.js +14 -1
- package/dist/scheduled-sync.js +14 -1
- package/package.json +1 -1
package/dist/cli/index.js
CHANGED
|
@@ -10967,8 +10967,21 @@ function sqliteToPostgres(sql) {
|
|
|
10967
10967
|
out = out.replace(/\bAUTOINCREMENT\b/gi, "GENERATED ALWAYS AS IDENTITY");
|
|
10968
10968
|
out = out.replace(/(?<![I])LIKE/gi, "ILIKE");
|
|
10969
10969
|
out = out.replace(/\bIFNULL\s*\(/gi, "COALESCE(");
|
|
10970
|
+
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO\s+"?(\w+)"?\s*\(([^)]+)\)\s*VALUES/gi, (_match, table, colList) => {
|
|
10971
|
+
const cols = colList.split(",").map((c) => c.trim().replace(/"/g, ""));
|
|
10972
|
+
const pk = cols[0];
|
|
10973
|
+
const updateCols = cols.slice(1);
|
|
10974
|
+
const setClauses = updateCols.map((c) => `"${c}" = EXCLUDED."${c}"`).join(", ");
|
|
10975
|
+
if (updateCols.length > 0) {
|
|
10976
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
10977
|
+
}
|
|
10978
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
10979
|
+
});
|
|
10970
10980
|
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO/gi, "INSERT INTO");
|
|
10971
|
-
|
|
10981
|
+
if (/INSERT\s+OR\s+IGNORE\s+INTO/i.test(out)) {
|
|
10982
|
+
out = out.replace(/INSERT\s+OR\s+IGNORE\s+INTO/gi, "INSERT INTO");
|
|
10983
|
+
out = out.replace(/;?\s*$/, " ON CONFLICT DO NOTHING");
|
|
10984
|
+
}
|
|
10972
10985
|
return out;
|
|
10973
10986
|
}
|
|
10974
10987
|
|
package/dist/dialect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../src/dialect.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAGlE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,CAKpD;
|
|
1
|
+
{"version":3,"file":"dialect.d.ts","sourceRoot":"","sources":["../src/dialect.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,IAAI,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAGlE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,EAAE,CAKpD;AA8GD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CA6BlE"}
|
package/dist/index.js
CHANGED
|
@@ -4965,8 +4965,21 @@ function sqliteToPostgres(sql) {
|
|
|
4965
4965
|
out = out.replace(/\bAUTOINCREMENT\b/gi, "GENERATED ALWAYS AS IDENTITY");
|
|
4966
4966
|
out = out.replace(/(?<![I])LIKE/gi, "ILIKE");
|
|
4967
4967
|
out = out.replace(/\bIFNULL\s*\(/gi, "COALESCE(");
|
|
4968
|
+
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO\s+"?(\w+)"?\s*\(([^)]+)\)\s*VALUES/gi, (_match, table, colList) => {
|
|
4969
|
+
const cols = colList.split(",").map((c) => c.trim().replace(/"/g, ""));
|
|
4970
|
+
const pk = cols[0];
|
|
4971
|
+
const updateCols = cols.slice(1);
|
|
4972
|
+
const setClauses = updateCols.map((c) => `"${c}" = EXCLUDED."${c}"`).join(", ");
|
|
4973
|
+
if (updateCols.length > 0) {
|
|
4974
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
4975
|
+
}
|
|
4976
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
4977
|
+
});
|
|
4968
4978
|
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO/gi, "INSERT INTO");
|
|
4969
|
-
|
|
4979
|
+
if (/INSERT\s+OR\s+IGNORE\s+INTO/i.test(out)) {
|
|
4980
|
+
out = out.replace(/INSERT\s+OR\s+IGNORE\s+INTO/gi, "INSERT INTO");
|
|
4981
|
+
out = out.replace(/;?\s*$/, " ON CONFLICT DO NOTHING");
|
|
4982
|
+
}
|
|
4970
4983
|
return out;
|
|
4971
4984
|
}
|
|
4972
4985
|
function translateDdl(ddl, dialect) {
|
package/dist/mcp/index.js
CHANGED
|
@@ -24398,8 +24398,21 @@ function sqliteToPostgres(sql) {
|
|
|
24398
24398
|
out = out.replace(/\bAUTOINCREMENT\b/gi, "GENERATED ALWAYS AS IDENTITY");
|
|
24399
24399
|
out = out.replace(/(?<![I])LIKE/gi, "ILIKE");
|
|
24400
24400
|
out = out.replace(/\bIFNULL\s*\(/gi, "COALESCE(");
|
|
24401
|
+
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO\s+"?(\w+)"?\s*\(([^)]+)\)\s*VALUES/gi, (_match, table, colList) => {
|
|
24402
|
+
const cols = colList.split(",").map((c) => c.trim().replace(/"/g, ""));
|
|
24403
|
+
const pk = cols[0];
|
|
24404
|
+
const updateCols = cols.slice(1);
|
|
24405
|
+
const setClauses = updateCols.map((c) => `"${c}" = EXCLUDED."${c}"`).join(", ");
|
|
24406
|
+
if (updateCols.length > 0) {
|
|
24407
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
24408
|
+
}
|
|
24409
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
24410
|
+
});
|
|
24401
24411
|
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO/gi, "INSERT INTO");
|
|
24402
|
-
|
|
24412
|
+
if (/INSERT\s+OR\s+IGNORE\s+INTO/i.test(out)) {
|
|
24413
|
+
out = out.replace(/INSERT\s+OR\s+IGNORE\s+INTO/gi, "INSERT INTO");
|
|
24414
|
+
out = out.replace(/;?\s*$/, " ON CONFLICT DO NOTHING");
|
|
24415
|
+
}
|
|
24403
24416
|
return out;
|
|
24404
24417
|
}
|
|
24405
24418
|
|
package/dist/scheduled-sync.js
CHANGED
|
@@ -8946,8 +8946,21 @@ function sqliteToPostgres(sql) {
|
|
|
8946
8946
|
out = out.replace(/\bAUTOINCREMENT\b/gi, "GENERATED ALWAYS AS IDENTITY");
|
|
8947
8947
|
out = out.replace(/(?<![I])LIKE/gi, "ILIKE");
|
|
8948
8948
|
out = out.replace(/\bIFNULL\s*\(/gi, "COALESCE(");
|
|
8949
|
+
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO\s+"?(\w+)"?\s*\(([^)]+)\)\s*VALUES/gi, (_match, table, colList) => {
|
|
8950
|
+
const cols = colList.split(",").map((c) => c.trim().replace(/"/g, ""));
|
|
8951
|
+
const pk = cols[0];
|
|
8952
|
+
const updateCols = cols.slice(1);
|
|
8953
|
+
const setClauses = updateCols.map((c) => `"${c}" = EXCLUDED."${c}"`).join(", ");
|
|
8954
|
+
if (updateCols.length > 0) {
|
|
8955
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
8956
|
+
}
|
|
8957
|
+
return `INSERT INTO "${table}" (${colList}) VALUES`;
|
|
8958
|
+
});
|
|
8949
8959
|
out = out.replace(/INSERT\s+OR\s+REPLACE\s+INTO/gi, "INSERT INTO");
|
|
8950
|
-
|
|
8960
|
+
if (/INSERT\s+OR\s+IGNORE\s+INTO/i.test(out)) {
|
|
8961
|
+
out = out.replace(/INSERT\s+OR\s+IGNORE\s+INTO/gi, "INSERT INTO");
|
|
8962
|
+
out = out.replace(/;?\s*$/, " ON CONFLICT DO NOTHING");
|
|
8963
|
+
}
|
|
8951
8964
|
return out;
|
|
8952
8965
|
}
|
|
8953
8966
|
|
package/package.json
CHANGED