@ragestudio/scylla-odm 0.18.0 → 0.19.0

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.js CHANGED
@@ -1 +1 @@
1
- var e=`0.18.0`,t=`An ODM for ScyllaDB/Cassandra`;export{t as description,e as version};
1
+ var e=`0.19.0`,t=`An ODM for ScyllaDB/Cassandra`;export{t as description,e as version};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ragestudio/scylla-odm",
3
- "version": "0.18.0",
3
+ "version": "0.19.0",
4
4
  "description": "An ODM for ScyllaDB/Cassandra",
5
5
  "license": "MIT",
6
6
  "author": "RageStudio",
@@ -0,0 +1,4 @@
1
+ //#region src/utils/isPlainObject.d.ts
2
+ declare const _default: (value: any) => boolean;
3
+ //#endregion
4
+ export { _default as default };
@@ -0,0 +1 @@
1
+ var e=e=>{if(typeof e!=`object`||!e||Object.prototype.toString.call(e)!==`[object Object]`)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype};export{e as default};
@@ -1 +1 @@
1
- import e from"../driver/index.js";const{q:t}=e.mapping,n=1e3,r=new Set([`$eq`,`$ne`,`$gt`,`$gte`,`$lt`,`$lte`,`$in`]);function i(e,t){if(e==null)throw Error(`${t} operator cannot compare with null or undefined`)}function a(e,a){if(!r.has(e))throw Error(`Invalid operator: ${e}`);switch(e){case`$eq`:return a;case`$ne`:return i(a,`$ne`),t.notEq(a);case`$in`:if(!Array.isArray(a))throw Error(`$in operator requires an array`);if(a.length>n)throw Error(`$in operator exceeds maximum of ${n} elements`);for(let e=0;e<a.length;e++)if(a[e]===null||a[e]===void 0)throw Error(`$in array element at index ${e} cannot be null or undefined`);return t.in_(a);case`$gt`:return i(a,`$gt`),t.gt(a);case`$gte`:return i(a,`$gte`),t.gte(a);case`$lt`:return i(a,`$lt`),t.lt(a);case`$lte`:return i(a,`$lte`),t.lte(a)}}function o(e,t,n=0){if(n>3)throw Error(`Query depth exceeds maximum of 3`);if(!t||typeof t!=`object`)return t;let r={},i=e.schema.fields;for(let a of Object.keys(t)){let o=t[a];if(a===`$and`){s(e,o,r,n);continue}if(a===`$or`)throw Error(`ScyllaDB does not support OR queries across different columns. Use $in for a single column.`);if(!l(i,a))throw Error(`Invalid field name: [${a}] or it does not exist in schema`);r[a]=c(o)}return r}function s(e,t,n,r){if(!Array.isArray(t))throw Error(`$and operator requires an array`);if(t.length>10)throw Error(`$and operator exceeds maximum of 10 conditions`);for(let i=0;i<t.length;i++){let a=t[i];if(!a||typeof a!=`object`)throw Error(`$and condition at index ${i} must be an object`);let s=o(e,a,r+1);for(let e of Object.keys(s))if(e in n)throw Error(`$and conflict: field "${e}" appears in multiple conditions`);Object.assign(n,s)}}function c(e){if(typeof e!=`object`||!e||Array.isArray(e)||e instanceof Date){if(Array.isArray(e))throw Error(`Array values require explicit operator (e.g., $in)`);return e}let n=Object.keys(e).map(t=>a(t,e[t]));return n.length===1?n[0]:t.and(...n)}function l(e,t){for(let e of[/^[0-9]/,/[^a-zA-Z0-9_]/,/^(select|insert|update|delete|drop|create|alter|truncate)$/i])if(e.test(t))return!1;return t in e}function u(e){return r.has(e)}export{o as default,l as isValidFieldName,u as isValidOperator};
1
+ import e from"../driver/index.js";import t from"./isPlainObject.js";const{q:n}=e.mapping,r=1e3,i=new Set([`$eq`,`$ne`,`$gt`,`$gte`,`$lt`,`$lte`,`$in`]);function a(e,t){if(e==null)throw Error(`${t} operator cannot compare with null or undefined`)}function o(e,t){if(!i.has(e))throw Error(`Invalid operator: ${e}`);switch(e){case`$eq`:return t;case`$ne`:return a(t,`$ne`),n.notEq(t);case`$in`:if(!Array.isArray(t))throw Error(`$in operator requires an array`);if(t.length>r)throw Error(`$in operator exceeds maximum of ${r} elements`);for(let e=0;e<t.length;e++)if(t[e]===null||t[e]===void 0)throw Error(`$in array element at index ${e} cannot be null or undefined`);return n.in_(t);case`$gt`:return a(t,`$gt`),n.gt(t);case`$gte`:return a(t,`$gte`),n.gte(t);case`$lt`:return a(t,`$lt`),n.lt(t);case`$lte`:return a(t,`$lte`),n.lte(t)}}function s(e,n,r=0){if(r>3)throw Error(`Query depth exceeds maximum of 3`);if(!n||typeof n!=`object`)return n;let i={};for(let r of Object.keys(n)){let a=n[r];if(!l(e.schema.fields,r))throw Error(`Invalid field name: [${r}] or it does not exist in schema`);t(a)?i[r]=c(a):i[r]=a}return i}function c(e){let t=Object.keys(e).map(t=>o(t,e[t]));return t.length===1?t[0]:n.and(...t)}function l(e,t){for(let e of[/^[0-9]/,/[^a-zA-Z0-9_]/,/^(select|insert|update|delete|drop|create|alter|truncate)$/i])if(e.test(t))return!1;return t in e}function u(e){return i.has(e)}export{s as default,l as isValidFieldName,u as isValidOperator};