@tslite/operators 0.2.1 → 0.3.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/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';var parser=require('@tslite/parser');var l=n=>{let e=parser.parse(n),t={};for(let r of e.body)r.type==="TSTypeAliasDeclaration"&&r.id?.name&&r.typeAnnotation&&(t[r.id.name]=r.typeAnnotation);return t};var T=`
1
+ 'use strict';var parser=require('@tslite/parser');var l=n=>{let e=parser.parse(n),t={};for(let r of e.body)r.type==="TSTypeAliasDeclaration"&&r.id?.name&&r.typeAnnotation&&(t[r.id.name]=h(r.typeAnnotation,r.typeParameters));return t};function h(n,e){return e?.length?n.t==="fn"?{...n,typeParams:e}:n.t==="overload"?{...n,signatures:n.signatures.map(t=>({...t,typeParams:e}))}:n:n}var T=`
2
2
  type identity<T> = (x: T) => T;
3
3
  type always<T> = (value: T) => () => T;
4
4
  type tap<T> = {
@@ -67,6 +67,10 @@ type filter<T> = {
67
67
  (pred: (item: T) => boolean): (list: T[]) => T[];
68
68
  (pred: (item: T) => boolean, list: T[]): T[];
69
69
  };
70
+ type reject<T> = {
71
+ (pred: (item: T) => boolean): (list: T[]) => T[];
72
+ (pred: (item: T) => boolean, list: T[]): T[];
73
+ };
70
74
  type find<T> = {
71
75
  (pred: (item: T) => boolean): (list: T[]) => T | undefined;
72
76
  (pred: (item: T) => boolean, list: T[]): T | undefined;
@@ -162,4 +166,4 @@ type toBoolean = (value: unknown) => boolean;
162
166
  type parse = (text: string) => unknown;
163
167
  type stringify = (value: unknown) => string;
164
168
  `;var m=[T,u,c,f,d,g].join(`
165
- `),h=l(m);var o=(n,e)=>{let t=r=>r.length>=n?e(...r.slice(0,n)):(...a)=>t([...r,...a]);return (...r)=>t(r)},p=(n,e)=>{if(n===e)return true;if(n===null||e===null||typeof n!="object"||typeof e!="object")return n===e;if(Array.isArray(n)!==Array.isArray(e))return false;let r=Object.keys(n),a=Object.keys(e);return r.length!==a.length?false:r.every(y=>p(n[y],e[y]))},s=n=>n==null,x={identity:n=>n,always:n=>()=>n,tap:o(2,(n,e)=>(n(e),e)),prop:o(2,(n,e)=>s(e)?void 0:e[n]),path:o(2,(n,e)=>n.reduce((t,r)=>s(t)?void 0:t[r],e)),propOr:o(3,(n,e,t)=>{let r=s(t)?void 0:t[e];return s(r)?n:r}),pathOr:o(3,(n,e,t)=>{let r=e.reduce((a,y)=>s(a)?void 0:a[y],t);return s(r)?n:r}),pick:o(2,(n,e)=>{let t={};if(!s(e))for(let r of n)r in e&&(t[r]=e[r]);return t}),omit:o(2,(n,e)=>{let t=new Set(n),r={};for(let a in e)t.has(a)||(r[a]=e[a]);return r}),assoc:o(3,(n,e,t)=>({...t,[n]:e})),merge:o(2,(n,e)=>({...n,...e})),keys:n=>Object.keys(n??{}),values:n=>Object.values(n??{}),entries:n=>Object.entries(n??{}),fromEntries:n=>Object.fromEntries(n),has:o(2,(n,e)=>!s(e)&&Object.prototype.hasOwnProperty.call(e,n)),applySpec:o(2,(n,e)=>{let t={};for(let r in n)t[r]=n[r](e);return t}),evolve:o(2,(n,e)=>{let t={...e};for(let r in n)r in t&&(t[r]=n[r](t[r]));return t}),map:o(2,(n,e)=>e.map(t=>n(t))),filter:o(2,(n,e)=>e.filter(t=>n(t))),find:o(2,(n,e)=>e.find(t=>n(t))),reduce:o(3,(n,e,t)=>t.reduce((r,a)=>n(r,a),e)),pluck:o(2,(n,e)=>e.map(t=>s(t)?void 0:t[n])),indexBy:o(2,(n,e)=>{let t={};for(let r of e)t[n(r)]=r;return t}),groupBy:o(2,(n,e)=>{var r;let t={};for(let a of e)(t[r=n(a)]??(t[r]=[])).push(a);return t}),uniqBy:o(2,(n,e)=>{let t=new Set,r=[];for(let a of e){let y=n(a);t.has(y)||(t.add(y),r.push(a));}return r}),sortBy:o(2,(n,e)=>[...e].sort((t,r)=>{let a=n(t),y=n(r);return a<y?-1:a>y?1:0})),flatten:n=>n.reduce((e,t)=>e.concat(t),[]),includes:o(2,(n,e)=>e.some(t=>p(t,n))),some:o(2,(n,e)=>e.some(t=>n(t))),length:n=>n.length,sum:n=>n.reduce((e,t)=>e+t,0),equals:o(2,(n,e)=>p(n,e)),propEq:o(3,(n,e,t)=>!s(t)&&p(t[n],e)),whereEq:o(2,(n,e)=>{for(let t in n)if(s(e)||!p(e[t],n[t]))return false;return true}),ifElse:o(4,(n,e,t,r)=>n(r)?e(r):t(r)),when:o(3,(n,e,t)=>n(t)?e(t):t),cond:n=>e=>{for(let[t,r]of n)if(t(e))return r(e)},defaultTo:o(2,(n,e)=>s(e)||typeof e=="number"&&Number.isNaN(e)?n:e),isNil:n=>s(n),isEmpty:n=>s(n)?true:typeof n=="string"||Array.isArray(n)?n.length===0:typeof n=="object"?Object.keys(n).length===0:false,toUpper:n=>n.toUpperCase(),toLower:n=>n.toLowerCase(),trim:n=>n.trim(),split:o(2,(n,e)=>e.split(n)),join:o(2,(n,e)=>e.join(n)),template:o(2,(n,e)=>n.replace(/\{(\w+)\}/g,(t,r)=>{let a=s(e)?void 0:e[r];return s(a)?"":String(a)})),toNumber:n=>Number(n),asString:n=>String(n),toBoolean:n=>!!n,parse:n=>JSON.parse(n),stringify:n=>JSON.stringify(n)};var i=(n,e,t)=>({operator:n,on:e,call:t}),k={length:i("length","value",n=>`length(${n})`),map:i("map","array",(n,e)=>`map(${e[0]??"fn"}, ${n})`),filter:i("filter","array",(n,e)=>`filter(${e[0]??"fn"}, ${n})`),find:i("find","array",(n,e)=>`find(${e[0]??"fn"}, ${n})`),reduce:i("reduce","array",(n,e)=>`reduce(${e[0]??"fn"}, ${e[1]??"init"}, ${n})`),some:i("some","array",(n,e)=>`some(${e[0]??"fn"}, ${n})`),includes:i("includes","value",(n,e)=>`includes(${e[0]??"x"}, ${n})`),flat:i("flatten","array",n=>`flatten(${n})`),join:i("join","array",(n,e)=>`join(${e[0]??'", "'}, ${n})`),trim:i("trim","string",n=>`trim(${n})`),toUpperCase:i("toUpper","string",n=>`toUpper(${n})`),toLowerCase:i("toLower","string",n=>`toLower(${n})`),split:i("split","string",(n,e)=>`split(${e[0]??'","'}, ${n})`),toString:i("asString","value",n=>`asString(${n})`)},b=new Set(["push","pop","shift","unshift","splice","sort","reverse","slice","concat","indexOf","lastIndexOf","forEach","every","flatMap","fill","charAt","charCodeAt","substring","substr","replace","replaceAll","padStart","padEnd","startsWith","endsWith","repeat","at","keys","values","entries","hasOwnProperty","valueOf"]),j=n=>n in k||b.has(n);exports.isKnownProtoMember=j;exports.jsMethodReplacements=k;exports.knownProtoMembersWithoutOperator=b;exports.loadOperators=l;exports.vanilla=h;exports.vanillaRuntime=x;exports.vanillaSource=m;
169
+ `),x=l(m);var o=(n,e)=>{let t=r=>r.length>=n?e(...r.slice(0,n)):(...a)=>t([...r,...a]);return (...r)=>t(r)},p=(n,e)=>{if(n===e)return true;if(n===null||e===null||typeof n!="object"||typeof e!="object")return n===e;if(Array.isArray(n)!==Array.isArray(e))return false;let r=Object.keys(n),a=Object.keys(e);return r.length!==a.length?false:r.every(y=>p(n[y],e[y]))},s=n=>n==null,j={identity:n=>n,always:n=>()=>n,tap:o(2,(n,e)=>(n(e),e)),prop:o(2,(n,e)=>s(e)?void 0:e[n]),path:o(2,(n,e)=>n.reduce((t,r)=>s(t)?void 0:t[r],e)),propOr:o(3,(n,e,t)=>{let r=s(t)?void 0:t[e];return s(r)?n:r}),pathOr:o(3,(n,e,t)=>{let r=e.reduce((a,y)=>s(a)?void 0:a[y],t);return s(r)?n:r}),pick:o(2,(n,e)=>{let t={};if(!s(e))for(let r of n)r in e&&(t[r]=e[r]);return t}),omit:o(2,(n,e)=>{let t=new Set(n),r={};for(let a in e)t.has(a)||(r[a]=e[a]);return r}),assoc:o(3,(n,e,t)=>({...t,[n]:e})),merge:o(2,(n,e)=>({...n,...e})),keys:n=>Object.keys(n??{}),values:n=>Object.values(n??{}),entries:n=>Object.entries(n??{}),fromEntries:n=>Object.fromEntries(n),has:o(2,(n,e)=>!s(e)&&Object.prototype.hasOwnProperty.call(e,n)),applySpec:o(2,(n,e)=>{let t={};for(let r in n)t[r]=n[r](e);return t}),evolve:o(2,(n,e)=>{let t={...e};for(let r in n)r in t&&(t[r]=n[r](t[r]));return t}),map:o(2,(n,e)=>e.map(t=>n(t))),filter:o(2,(n,e)=>e.filter(t=>n(t))),reject:o(2,(n,e)=>e.filter(t=>!n(t))),find:o(2,(n,e)=>e.find(t=>n(t))),reduce:o(3,(n,e,t)=>t.reduce((r,a)=>n(r,a),e)),pluck:o(2,(n,e)=>e.map(t=>s(t)?void 0:t[n])),indexBy:o(2,(n,e)=>{let t={};for(let r of e)t[n(r)]=r;return t}),groupBy:o(2,(n,e)=>{var r;let t={};for(let a of e)(t[r=n(a)]??(t[r]=[])).push(a);return t}),uniqBy:o(2,(n,e)=>{let t=new Set,r=[];for(let a of e){let y=n(a);t.has(y)||(t.add(y),r.push(a));}return r}),sortBy:o(2,(n,e)=>[...e].sort((t,r)=>{let a=n(t),y=n(r);return a<y?-1:a>y?1:0})),flatten:n=>n.reduce((e,t)=>e.concat(t),[]),includes:o(2,(n,e)=>e.some(t=>p(t,n))),some:o(2,(n,e)=>e.some(t=>n(t))),length:n=>n.length,sum:n=>n.reduce((e,t)=>e+t,0),equals:o(2,(n,e)=>p(n,e)),propEq:o(3,(n,e,t)=>!s(t)&&p(t[n],e)),whereEq:o(2,(n,e)=>{for(let t in n)if(s(e)||!p(e[t],n[t]))return false;return true}),ifElse:o(4,(n,e,t,r)=>n(r)?e(r):t(r)),when:o(3,(n,e,t)=>n(t)?e(t):t),cond:n=>e=>{for(let[t,r]of n)if(t(e))return r(e)},defaultTo:o(2,(n,e)=>s(e)||typeof e=="number"&&Number.isNaN(e)?n:e),isNil:n=>s(n),isEmpty:n=>s(n)?true:typeof n=="string"||Array.isArray(n)?n.length===0:typeof n=="object"?Object.keys(n).length===0:false,toUpper:n=>n.toUpperCase(),toLower:n=>n.toLowerCase(),trim:n=>n.trim(),split:o(2,(n,e)=>e.split(n)),join:o(2,(n,e)=>e.join(n)),template:o(2,(n,e)=>n.replace(/\{(\w+)\}/g,(t,r)=>{let a=s(e)?void 0:e[r];return s(a)?"":String(a)})),toNumber:n=>Number(n),asString:n=>String(n),toBoolean:n=>!!n,parse:n=>JSON.parse(n),stringify:n=>JSON.stringify(n)};var i=(n,e,t)=>({operator:n,on:e,call:t}),k={length:i("length","value",n=>`length(${n})`),map:i("map","array",(n,e)=>`map(${e[0]??"fn"}, ${n})`),filter:i("filter","array",(n,e)=>`filter(${e[0]??"fn"}, ${n})`),find:i("find","array",(n,e)=>`find(${e[0]??"fn"}, ${n})`),reduce:i("reduce","array",(n,e)=>`reduce(${e[0]??"fn"}, ${e[1]??"init"}, ${n})`),some:i("some","array",(n,e)=>`some(${e[0]??"fn"}, ${n})`),includes:i("includes","value",(n,e)=>`includes(${e[0]??"x"}, ${n})`),flat:i("flatten","array",n=>`flatten(${n})`),join:i("join","array",(n,e)=>`join(${e[0]??'", "'}, ${n})`),trim:i("trim","string",n=>`trim(${n})`),toUpperCase:i("toUpper","string",n=>`toUpper(${n})`),toLowerCase:i("toLower","string",n=>`toLower(${n})`),split:i("split","string",(n,e)=>`split(${e[0]??'","'}, ${n})`),toString:i("asString","value",n=>`asString(${n})`)},b=new Set(["push","pop","shift","unshift","splice","sort","reverse","slice","concat","indexOf","lastIndexOf","forEach","every","flatMap","fill","charAt","charCodeAt","substring","substr","replace","replaceAll","padStart","padEnd","startsWith","endsWith","repeat","at","keys","values","entries","hasOwnProperty","valueOf"]),v=n=>n in k||b.has(n);exports.isKnownProtoMember=v;exports.jsMethodReplacements=k;exports.knownProtoMembersWithoutOperator=b;exports.loadOperators=l;exports.vanilla=x;exports.vanillaRuntime=j;exports.vanillaSource=m;
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import {parse}from'@tslite/parser';var l=n=>{let e=parse(n),t={};for(let r of e.body)r.type==="TSTypeAliasDeclaration"&&r.id?.name&&r.typeAnnotation&&(t[r.id.name]=r.typeAnnotation);return t};var T=`
1
+ import {parse}from'@tslite/parser';var l=n=>{let e=parse(n),t={};for(let r of e.body)r.type==="TSTypeAliasDeclaration"&&r.id?.name&&r.typeAnnotation&&(t[r.id.name]=h(r.typeAnnotation,r.typeParameters));return t};function h(n,e){return e?.length?n.t==="fn"?{...n,typeParams:e}:n.t==="overload"?{...n,signatures:n.signatures.map(t=>({...t,typeParams:e}))}:n:n}var T=`
2
2
  type identity<T> = (x: T) => T;
3
3
  type always<T> = (value: T) => () => T;
4
4
  type tap<T> = {
@@ -67,6 +67,10 @@ type filter<T> = {
67
67
  (pred: (item: T) => boolean): (list: T[]) => T[];
68
68
  (pred: (item: T) => boolean, list: T[]): T[];
69
69
  };
70
+ type reject<T> = {
71
+ (pred: (item: T) => boolean): (list: T[]) => T[];
72
+ (pred: (item: T) => boolean, list: T[]): T[];
73
+ };
70
74
  type find<T> = {
71
75
  (pred: (item: T) => boolean): (list: T[]) => T | undefined;
72
76
  (pred: (item: T) => boolean, list: T[]): T | undefined;
@@ -162,4 +166,4 @@ type toBoolean = (value: unknown) => boolean;
162
166
  type parse = (text: string) => unknown;
163
167
  type stringify = (value: unknown) => string;
164
168
  `;var m=[T,u,c,f,d,g].join(`
165
- `),h=l(m);var o=(n,e)=>{let t=r=>r.length>=n?e(...r.slice(0,n)):(...a)=>t([...r,...a]);return (...r)=>t(r)},p=(n,e)=>{if(n===e)return true;if(n===null||e===null||typeof n!="object"||typeof e!="object")return n===e;if(Array.isArray(n)!==Array.isArray(e))return false;let r=Object.keys(n),a=Object.keys(e);return r.length!==a.length?false:r.every(y=>p(n[y],e[y]))},s=n=>n==null,x={identity:n=>n,always:n=>()=>n,tap:o(2,(n,e)=>(n(e),e)),prop:o(2,(n,e)=>s(e)?void 0:e[n]),path:o(2,(n,e)=>n.reduce((t,r)=>s(t)?void 0:t[r],e)),propOr:o(3,(n,e,t)=>{let r=s(t)?void 0:t[e];return s(r)?n:r}),pathOr:o(3,(n,e,t)=>{let r=e.reduce((a,y)=>s(a)?void 0:a[y],t);return s(r)?n:r}),pick:o(2,(n,e)=>{let t={};if(!s(e))for(let r of n)r in e&&(t[r]=e[r]);return t}),omit:o(2,(n,e)=>{let t=new Set(n),r={};for(let a in e)t.has(a)||(r[a]=e[a]);return r}),assoc:o(3,(n,e,t)=>({...t,[n]:e})),merge:o(2,(n,e)=>({...n,...e})),keys:n=>Object.keys(n??{}),values:n=>Object.values(n??{}),entries:n=>Object.entries(n??{}),fromEntries:n=>Object.fromEntries(n),has:o(2,(n,e)=>!s(e)&&Object.prototype.hasOwnProperty.call(e,n)),applySpec:o(2,(n,e)=>{let t={};for(let r in n)t[r]=n[r](e);return t}),evolve:o(2,(n,e)=>{let t={...e};for(let r in n)r in t&&(t[r]=n[r](t[r]));return t}),map:o(2,(n,e)=>e.map(t=>n(t))),filter:o(2,(n,e)=>e.filter(t=>n(t))),find:o(2,(n,e)=>e.find(t=>n(t))),reduce:o(3,(n,e,t)=>t.reduce((r,a)=>n(r,a),e)),pluck:o(2,(n,e)=>e.map(t=>s(t)?void 0:t[n])),indexBy:o(2,(n,e)=>{let t={};for(let r of e)t[n(r)]=r;return t}),groupBy:o(2,(n,e)=>{var r;let t={};for(let a of e)(t[r=n(a)]??(t[r]=[])).push(a);return t}),uniqBy:o(2,(n,e)=>{let t=new Set,r=[];for(let a of e){let y=n(a);t.has(y)||(t.add(y),r.push(a));}return r}),sortBy:o(2,(n,e)=>[...e].sort((t,r)=>{let a=n(t),y=n(r);return a<y?-1:a>y?1:0})),flatten:n=>n.reduce((e,t)=>e.concat(t),[]),includes:o(2,(n,e)=>e.some(t=>p(t,n))),some:o(2,(n,e)=>e.some(t=>n(t))),length:n=>n.length,sum:n=>n.reduce((e,t)=>e+t,0),equals:o(2,(n,e)=>p(n,e)),propEq:o(3,(n,e,t)=>!s(t)&&p(t[n],e)),whereEq:o(2,(n,e)=>{for(let t in n)if(s(e)||!p(e[t],n[t]))return false;return true}),ifElse:o(4,(n,e,t,r)=>n(r)?e(r):t(r)),when:o(3,(n,e,t)=>n(t)?e(t):t),cond:n=>e=>{for(let[t,r]of n)if(t(e))return r(e)},defaultTo:o(2,(n,e)=>s(e)||typeof e=="number"&&Number.isNaN(e)?n:e),isNil:n=>s(n),isEmpty:n=>s(n)?true:typeof n=="string"||Array.isArray(n)?n.length===0:typeof n=="object"?Object.keys(n).length===0:false,toUpper:n=>n.toUpperCase(),toLower:n=>n.toLowerCase(),trim:n=>n.trim(),split:o(2,(n,e)=>e.split(n)),join:o(2,(n,e)=>e.join(n)),template:o(2,(n,e)=>n.replace(/\{(\w+)\}/g,(t,r)=>{let a=s(e)?void 0:e[r];return s(a)?"":String(a)})),toNumber:n=>Number(n),asString:n=>String(n),toBoolean:n=>!!n,parse:n=>JSON.parse(n),stringify:n=>JSON.stringify(n)};var i=(n,e,t)=>({operator:n,on:e,call:t}),k={length:i("length","value",n=>`length(${n})`),map:i("map","array",(n,e)=>`map(${e[0]??"fn"}, ${n})`),filter:i("filter","array",(n,e)=>`filter(${e[0]??"fn"}, ${n})`),find:i("find","array",(n,e)=>`find(${e[0]??"fn"}, ${n})`),reduce:i("reduce","array",(n,e)=>`reduce(${e[0]??"fn"}, ${e[1]??"init"}, ${n})`),some:i("some","array",(n,e)=>`some(${e[0]??"fn"}, ${n})`),includes:i("includes","value",(n,e)=>`includes(${e[0]??"x"}, ${n})`),flat:i("flatten","array",n=>`flatten(${n})`),join:i("join","array",(n,e)=>`join(${e[0]??'", "'}, ${n})`),trim:i("trim","string",n=>`trim(${n})`),toUpperCase:i("toUpper","string",n=>`toUpper(${n})`),toLowerCase:i("toLower","string",n=>`toLower(${n})`),split:i("split","string",(n,e)=>`split(${e[0]??'","'}, ${n})`),toString:i("asString","value",n=>`asString(${n})`)},b=new Set(["push","pop","shift","unshift","splice","sort","reverse","slice","concat","indexOf","lastIndexOf","forEach","every","flatMap","fill","charAt","charCodeAt","substring","substr","replace","replaceAll","padStart","padEnd","startsWith","endsWith","repeat","at","keys","values","entries","hasOwnProperty","valueOf"]),j=n=>n in k||b.has(n);export{j as isKnownProtoMember,k as jsMethodReplacements,b as knownProtoMembersWithoutOperator,l as loadOperators,h as vanilla,x as vanillaRuntime,m as vanillaSource};
169
+ `),x=l(m);var o=(n,e)=>{let t=r=>r.length>=n?e(...r.slice(0,n)):(...a)=>t([...r,...a]);return (...r)=>t(r)},p=(n,e)=>{if(n===e)return true;if(n===null||e===null||typeof n!="object"||typeof e!="object")return n===e;if(Array.isArray(n)!==Array.isArray(e))return false;let r=Object.keys(n),a=Object.keys(e);return r.length!==a.length?false:r.every(y=>p(n[y],e[y]))},s=n=>n==null,j={identity:n=>n,always:n=>()=>n,tap:o(2,(n,e)=>(n(e),e)),prop:o(2,(n,e)=>s(e)?void 0:e[n]),path:o(2,(n,e)=>n.reduce((t,r)=>s(t)?void 0:t[r],e)),propOr:o(3,(n,e,t)=>{let r=s(t)?void 0:t[e];return s(r)?n:r}),pathOr:o(3,(n,e,t)=>{let r=e.reduce((a,y)=>s(a)?void 0:a[y],t);return s(r)?n:r}),pick:o(2,(n,e)=>{let t={};if(!s(e))for(let r of n)r in e&&(t[r]=e[r]);return t}),omit:o(2,(n,e)=>{let t=new Set(n),r={};for(let a in e)t.has(a)||(r[a]=e[a]);return r}),assoc:o(3,(n,e,t)=>({...t,[n]:e})),merge:o(2,(n,e)=>({...n,...e})),keys:n=>Object.keys(n??{}),values:n=>Object.values(n??{}),entries:n=>Object.entries(n??{}),fromEntries:n=>Object.fromEntries(n),has:o(2,(n,e)=>!s(e)&&Object.prototype.hasOwnProperty.call(e,n)),applySpec:o(2,(n,e)=>{let t={};for(let r in n)t[r]=n[r](e);return t}),evolve:o(2,(n,e)=>{let t={...e};for(let r in n)r in t&&(t[r]=n[r](t[r]));return t}),map:o(2,(n,e)=>e.map(t=>n(t))),filter:o(2,(n,e)=>e.filter(t=>n(t))),reject:o(2,(n,e)=>e.filter(t=>!n(t))),find:o(2,(n,e)=>e.find(t=>n(t))),reduce:o(3,(n,e,t)=>t.reduce((r,a)=>n(r,a),e)),pluck:o(2,(n,e)=>e.map(t=>s(t)?void 0:t[n])),indexBy:o(2,(n,e)=>{let t={};for(let r of e)t[n(r)]=r;return t}),groupBy:o(2,(n,e)=>{var r;let t={};for(let a of e)(t[r=n(a)]??(t[r]=[])).push(a);return t}),uniqBy:o(2,(n,e)=>{let t=new Set,r=[];for(let a of e){let y=n(a);t.has(y)||(t.add(y),r.push(a));}return r}),sortBy:o(2,(n,e)=>[...e].sort((t,r)=>{let a=n(t),y=n(r);return a<y?-1:a>y?1:0})),flatten:n=>n.reduce((e,t)=>e.concat(t),[]),includes:o(2,(n,e)=>e.some(t=>p(t,n))),some:o(2,(n,e)=>e.some(t=>n(t))),length:n=>n.length,sum:n=>n.reduce((e,t)=>e+t,0),equals:o(2,(n,e)=>p(n,e)),propEq:o(3,(n,e,t)=>!s(t)&&p(t[n],e)),whereEq:o(2,(n,e)=>{for(let t in n)if(s(e)||!p(e[t],n[t]))return false;return true}),ifElse:o(4,(n,e,t,r)=>n(r)?e(r):t(r)),when:o(3,(n,e,t)=>n(t)?e(t):t),cond:n=>e=>{for(let[t,r]of n)if(t(e))return r(e)},defaultTo:o(2,(n,e)=>s(e)||typeof e=="number"&&Number.isNaN(e)?n:e),isNil:n=>s(n),isEmpty:n=>s(n)?true:typeof n=="string"||Array.isArray(n)?n.length===0:typeof n=="object"?Object.keys(n).length===0:false,toUpper:n=>n.toUpperCase(),toLower:n=>n.toLowerCase(),trim:n=>n.trim(),split:o(2,(n,e)=>e.split(n)),join:o(2,(n,e)=>e.join(n)),template:o(2,(n,e)=>n.replace(/\{(\w+)\}/g,(t,r)=>{let a=s(e)?void 0:e[r];return s(a)?"":String(a)})),toNumber:n=>Number(n),asString:n=>String(n),toBoolean:n=>!!n,parse:n=>JSON.parse(n),stringify:n=>JSON.stringify(n)};var i=(n,e,t)=>({operator:n,on:e,call:t}),k={length:i("length","value",n=>`length(${n})`),map:i("map","array",(n,e)=>`map(${e[0]??"fn"}, ${n})`),filter:i("filter","array",(n,e)=>`filter(${e[0]??"fn"}, ${n})`),find:i("find","array",(n,e)=>`find(${e[0]??"fn"}, ${n})`),reduce:i("reduce","array",(n,e)=>`reduce(${e[0]??"fn"}, ${e[1]??"init"}, ${n})`),some:i("some","array",(n,e)=>`some(${e[0]??"fn"}, ${n})`),includes:i("includes","value",(n,e)=>`includes(${e[0]??"x"}, ${n})`),flat:i("flatten","array",n=>`flatten(${n})`),join:i("join","array",(n,e)=>`join(${e[0]??'", "'}, ${n})`),trim:i("trim","string",n=>`trim(${n})`),toUpperCase:i("toUpper","string",n=>`toUpper(${n})`),toLowerCase:i("toLower","string",n=>`toLower(${n})`),split:i("split","string",(n,e)=>`split(${e[0]??'","'}, ${n})`),toString:i("asString","value",n=>`asString(${n})`)},b=new Set(["push","pop","shift","unshift","splice","sort","reverse","slice","concat","indexOf","lastIndexOf","forEach","every","flatMap","fill","charAt","charCodeAt","substring","substr","replace","replaceAll","padStart","padEnd","startsWith","endsWith","repeat","at","keys","values","entries","hasOwnProperty","valueOf"]),v=n=>n in k||b.has(n);export{v as isKnownProtoMember,k as jsMethodReplacements,b as knownProtoMembersWithoutOperator,l as loadOperators,x as vanilla,j as vanillaRuntime,m as vanillaSource};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tslite/operators",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "TSLite operators — functional operator signatures as native TSL types, injectable into the checker Env (FP, no OO). The typed stdlib for JSON mappers.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -40,12 +40,12 @@
40
40
  "access": "public"
41
41
  },
42
42
  "dependencies": {
43
- "@tslite/parser": "0.2.0",
44
- "@tslite/type-core": "0.2.0"
43
+ "@tslite/parser": "0.3.0",
44
+ "@tslite/type-core": "0.3.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@tslite/interpret": "0.2.0",
48
- "@tslite/checker": "0.2.1"
48
+ "@tslite/checker": "0.3.0"
49
49
  },
50
50
  "scripts": {
51
51
  "build": "tsup",