@dreamtree-org/korm-js 1.0.34 → 1.0.36
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/build.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
const fs=require("fs"),path=require("path"),{execSync:execSync}=require("child_process");function progressBar(e,s,
|
|
2
|
+
const fs=require("fs"),path=require("path"),{execSync:execSync}=require("child_process");function progressBar(e,s,i=30){const o=e/s,t=Math.round(i*o),n=i-t,c="█".repeat(t)+"-".repeat(n);process.stdout.write(`\r[${c}] ${(100*o).toFixed(1)}% (${e}/${s})`),e===s&&process.stdout.write("\n")}function getAllJsFiles(e,s=["node_modules","dist","test"]){let i=[];return fs.readdirSync(e).forEach(o=>{const t=path.join(e,o),n=fs.statSync(t);n&&n.isDirectory()?s.includes(o)||(i=i.concat(getAllJsFiles(t,s))):o.endsWith(".js")&&i.push(t)}),i}function ensureDir(e){fs.existsSync(e)||(fs.mkdirSync(e,{recursive:!0}),console.log(`✅ Created directory: ${e}`))}function minifyFile(e,s){try{return execSync(`npx terser "${e}" -o "${s}" --compress --mangle --comments false`,{stdio:"pipe"}),!0}catch(i){return fs.copyFileSync(e,s),!1}}function copyFile(e,s){fs.copyFileSync(e,s)}function copyDirectory(e,s){if(!fs.existsSync(e))return;ensureDir(s);fs.readdirSync(e,{withFileTypes:!0}).forEach(i=>{const o=path.join(e,i.name),t=path.join(s,i.name);i.isDirectory()?copyDirectory(o,t):copyFile(o,t)})}async function build(){console.log("🚀 KORM Build: Minifying all JS files to dist/ with progress bar\n"),fs.existsSync("dist")&&(fs.rmSync("dist",{recursive:!0,force:!0}),console.log("✅ Cleaned dist/")),ensureDir("dist");const e=getAllJsFiles(".",["node_modules","dist","test"]),s=e.length;let i=0,o=0,t=0;e.forEach((e,n)=>{const c=path.relative(".",e),r=path.join("dist",c);ensureDir(path.dirname(r));const l=fs.statSync(e).size,a=(minifyFile(e,r),fs.statSync(r).size);o+=l,t+=a,i++,progressBar(i,s)}),["README.md","LICENSE"].forEach(e=>{fs.existsSync(e)&&(copyFile(e,path.join("dist",e)),console.log(`✅ Copied: ${e}`))}),fs.existsSync("templates")&&(copyDirectory("templates",path.join("dist","templates")),console.log("✅ Copied templates/ to dist/")),fs.existsSync("node_modules")&&(execSync("cp -r node_modules dist/",{stdio:"pipe"}),console.log("✅ Copied node_modules/ to dist/"));const n=path.join(".","version-manager.js");let c=!1,r=null;if(fs.existsSync(n))try{const e=new(require("./version-manager"));"function"==typeof e.smartAutoIncrement&&(r=await e.smartAutoIncrement(),c=!0,console.log(`✅ Version updated using version-manager.js: ${r}`))}catch(e){console.warn("⚠️ Could not update version using version-manager.js:",e.message)}if(fs.existsSync("package.json")){const e=JSON.parse(fs.readFileSync("package.json","utf8"));e.scripts&&(delete e.scripts.build,delete e.scripts.clean,delete e.scripts.minify,delete e.scripts["minify:js"],delete e.scripts.prepublishOnly),delete e.devDependencies,e.main="index.js",delete e.files,c&&r&&("string"==typeof r?(e.version=r,console.log(`✅ Set version in dist/package.json: ${r}`)):(console.warn(`⚠️ newVersion is not a string: ${typeof r} - ${JSON.stringify(r)}`),e.version=e.version||"1.0.0")),fs.writeFileSync(path.join("dist","package.json"),JSON.stringify(e,null,2)),console.log("✅ Created dist/package.json")}const l=((o-t)/o*100).toFixed(1);console.log("\n📊 Build Statistics:"),console.log(` JS files processed: ${s}`),console.log(` Original size: ${(o/1024).toFixed(1)} KB`),console.log(` Minified size: ${(t/1024).toFixed(1)} KB`),console.log(` Size reduction: ${l}%`),c&&r&&console.log(` New version: ${r}`),console.log("\n🎉 Build completed! Output in dist/")}build().catch(console.error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const QueryBuilder=require("./QueryBuilder");class QueryService{constructor(e,t,r=null){this.db=e,this.utils=t,this.controllerWrapper=r,this.queryBuilder=new QueryBuilder(e,t,r)}async getQuery(e,t){return await this.queryBuilder.getQuery(e,t)}async executeShowQuery(e,t){let r=await this.getQuery(e,{...t,limit:1,offset:0});return r.data.length>0?r.data[0]:null}async executeCountQuery(e,t){let r=await this.db(e.table).count();return Object.values(r[0])[0]}async executeCreateQuery(e,t){return await this.db(e.table).insert(t.data)}async executeUpdateQuery(e,t){return await this.db(e.table).where(t.where).update(t.data)}async executeDeleteQuery(e,t){return await this.db(e.table).where(t.where).delete()}async executeUpsertQuery(e,t){return await this.db(e.table).insert(t.data).onConflict(t.conflict).update(t.data)}async executeReplaceQuery(e,t){return await this.db(e.table).replace(t.data)}}module.exports=QueryService;
|
|
1
|
+
const QueryBuilder=require("./QueryBuilder");class QueryService{constructor(e,t,r=null){this.db=e,this.utils=t,this.controllerWrapper=r,this.queryBuilder=new QueryBuilder(e,t,r)}async getQuery(e,t){return await this.queryBuilder.getQuery(e,t)}async executeShowQuery(e,t){let r=await this.getQuery(e,{...t,limit:1,offset:0});return r.data.length>0?r.data[0]:null}async executeCountQuery(e,t){let r=await this.db(e.table).count();return Object.values(r[0])[0]}async executeCreateQuery(e,t){return await this.db(e.table).insert(t.data).returning("*")}async executeUpdateQuery(e,t){return await this.db(e.table).where(t.where).update(t.data).returning("*")}async executeDeleteQuery(e,t){return await this.db(e.table).where(t.where).delete()}async executeUpsertQuery(e,t){return await this.db(e.table).insert(t.data).onConflict(t.conflict).update(t.data)}async executeReplaceQuery(e,t){return await this.db(e.table).replace(t.data)}}module.exports=QueryService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const QueryBuilder=require("./QueryBuilder");class QueryService{constructor(e,t,r=null){this.db=e,this.utils=t,this.controllerWrapper=r,this.queryBuilder=new QueryBuilder(e,t,r)}async getQuery(e,t){return await this.queryBuilder.getQuery(e,t)}async executeShowQuery(e,t){let r=await this.getQuery(e,{...t,limit:1,offset:0});return r.data.length>0?r.data[0]:null}async executeCountQuery(e,t){let r=await this.db(e.table).count();return Object.values(r[0])[0]}async executeCreateQuery(e,t){return await this.db(e.table).insert(t.data)}async executeUpdateQuery(e,t){return await this.db(e.table).where(t.where).update(t.data)}async executeDeleteQuery(e,t){return await this.db(e.table).where(t.where).delete()}async executeUpsertQuery(e,t){return await this.db(e.table).insert(t.data).onConflict(t.conflict).update(t.data)}async executeReplaceQuery(e,t){return await this.db(e.table).replace(t.data)}}module.exports=QueryService;
|
|
1
|
+
const QueryBuilder=require("./QueryBuilder");class QueryService{constructor(e,t,r=null){this.db=e,this.utils=t,this.controllerWrapper=r,this.queryBuilder=new QueryBuilder(e,t,r)}async getQuery(e,t){return await this.queryBuilder.getQuery(e,t)}async executeShowQuery(e,t){let r=await this.getQuery(e,{...t,limit:1,offset:0});return r.data.length>0?r.data[0]:null}async executeCountQuery(e,t){let r=await this.db(e.table).count();return Object.values(r[0])[0]}async executeCreateQuery(e,t){return await this.db(e.table).insert(t.data).returning("*")}async executeUpdateQuery(e,t){return await this.db(e.table).where(t.where).update(t.data).returning("*")}async executeDeleteQuery(e,t){return await this.db(e.table).where(t.where).delete()}async executeUpsertQuery(e,t){return await this.db(e.table).insert(t.data).onConflict(t.conflict).update(t.data)}async executeReplaceQuery(e,t){return await this.db(e.table).replace(t.data)}}module.exports=QueryService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const QueryBuilder=require("./QueryBuilder");class QueryService{constructor(e,t,r=null){this.db=e,this.utils=t,this.controllerWrapper=r,this.queryBuilder=new QueryBuilder(e,t,r)}async getQuery(e,t){return await this.queryBuilder.getQuery(e,t)}async executeShowQuery(e,t){let r=await this.getQuery(e,{...t,limit:1,offset:0});return r.data.length>0?r.data[0]:null}async executeCountQuery(e,t){let r=await this.db(e.table).count();return Object.values(r[0])[0]}async executeCreateQuery(e,t){return await this.db(e.table).insert(t.data)}async executeUpdateQuery(e,t){return await this.db(e.table).where(t.where).update(t.data)}async executeDeleteQuery(e,t){return await this.db(e.table).where(t.where).delete()}async executeUpsertQuery(e,t){return await this.db(e.table).insert(t.data).onConflict(t.conflict).update(t.data)}async executeReplaceQuery(e,t){return await this.db(e.table).replace(t.data)}}module.exports=QueryService;
|
|
1
|
+
const QueryBuilder=require("./QueryBuilder");class QueryService{constructor(e,t,r=null){this.db=e,this.utils=t,this.controllerWrapper=r,this.queryBuilder=new QueryBuilder(e,t,r)}async getQuery(e,t){return await this.queryBuilder.getQuery(e,t)}async executeShowQuery(e,t){let r=await this.getQuery(e,{...t,limit:1,offset:0});return r.data.length>0?r.data[0]:null}async executeCountQuery(e,t){let r=await this.db(e.table).count();return Object.values(r[0])[0]}async executeCreateQuery(e,t){return await this.db(e.table).insert(t.data).returning("*")}async executeUpdateQuery(e,t){return await this.db(e.table).where(t.where).update(t.data).returning("*")}async executeDeleteQuery(e,t){return await this.db(e.table).where(t.where).delete()}async executeUpsertQuery(e,t){return await this.db(e.table).insert(t.data).onConflict(t.conflict).update(t.data)}async executeReplaceQuery(e,t){return await this.db(e.table).replace(t.data)}}module.exports=QueryService;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dreamtree-org/korm-js",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.36",
|
|
4
4
|
"description": "Knowledge Object-Relational Mapping - A powerful, modular ORM system for Node.js with dynamic database operations, complex queries, relationships, and nested requests",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Partha Preetham Krishna",
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
class {{modelName}} {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.table = '{{tableName}}';
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
validate(data) {
|
|
7
|
+
console.log('validate', data);
|
|
8
|
+
return true;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
onBeforeCreate(data) {
|
|
12
|
+
console.log('onBeforeCreate', data);
|
|
13
|
+
return data;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
onAfterCreate(data) {
|
|
17
|
+
console.log('onAfterCreate', data);
|
|
18
|
+
return data;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
onBeforeUpdate(data) {
|
|
22
|
+
console.log('onBeforeUpdate', data);
|
|
23
|
+
return data;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
onAfterUpdate(data) {
|
|
27
|
+
console.log('onAfterUpdate', data);
|
|
28
|
+
return data;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
onBeforeDelete(data) {
|
|
32
|
+
console.log('onBeforeDelete', data);
|
|
33
|
+
return data;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
onAfterDelete(data) {
|
|
37
|
+
console.log('onAfterDelete', data);
|
|
38
|
+
return data;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
{{action}}Action(data) {
|
|
42
|
+
console.log('{{action}}Action', data);
|
|
43
|
+
return data;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
module.exports = {{modelName}};
|