insite-config 2.3.3 → 2.3.5

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.js CHANGED
@@ -1,2 +1,2 @@
1
- function y(){}var O=new WeakMap,b=class o extends Promise{constructor(n,t){let i,c;if(super((s,a)=>{i=s,c=a}),O.set(this,{resolve:i,reject:c}),t?.signal)if(t.signal.aborted)this.reject(new DOMException("Aborted","AbortError"));else{let s=()=>this.reject(new DOMException("Aborted","AbortError"));t.signal.addEventListener("abort",s),this.finally(()=>t.signal?.removeEventListener("abort",s))}if(typeof t?.timeout=="number"&&Number.isFinite(t.timeout)){let s=setTimeout(()=>this.reject(new DOMException("Timeout exceeded","TimeoutError")),t.timeout);this.finally(()=>clearTimeout(s))}n?.(this.resolve,this.reject)}isPending=!0;isFulfilled=!1;isRejected=!1;state="pending";result;resolve=n=>{if(this.isPending){this.isPending=!1,this.isFulfilled=!0,this.state="fulfilled",this.result=n;let t=O.get(this);t&&(t.resolve.call(this,n),O.delete(this))}};reject=n=>{if(this.isPending){this.isPending=!1,this.isRejected=!0,this.state="rejected",this.result=n;let t=O.get(this);t&&(t.reject.call(this,n),O.delete(this))}};static resolved(n){return new o(t=>t(n))}static rejected(n){return new o((t,i)=>i(n))}};function A(o,n=0,t={}){let{leading:i=!1,trailing:c=!0}=t,{maxWait:s=1/0}=t,a,d,j,e,l,f,r,u,p=async()=>{let h=Date.now();h>=j?(a=void 0,j=void 0,clearTimeout(d),d=void 0,typeof r=="function"&&await r(),m.resolve(u),f=i):(clearTimeout(a),a=setTimeout(p,j-h))},x=Number.isFinite(s)?()=>{r===w&&(r=!1),w(),d=setTimeout(x,s)}:null;async function w(){try{return u=await o.apply(e,l),u}catch(h){throw m.reject(h),h}}i&&typeof i=="boolean"&&(i=w),f=i,c&&typeof c=="boolean"&&(c=w),r=c;let m=Object.assign(function(...h){return l=h,e=this,j=Date.now()+n,r=c,m.promise.isPending||(m.promise=new b((T,D)=>{m.resolve=T,m.reject=D,typeof f=="function"&&(f(),f=!1,r===w&&(r=!1)),a||(a=setTimeout(p,n),x&&(d=setTimeout(x,s)))})),m.promise},{callback:o,promise:b.resolved(void 0),resolve:y,reject:y,run:w,clear:async h=>{clearTimeout(a),a=void 0,clearTimeout(d),d=void 0,m.resolve(h?await w():u)}});return m}A.noop=Object.assign(()=>{},{callback:y,promise:b.resolved(void 0),resolve:y,reject:y,run:y,clear:y});function E(o){for(let n in o)return!1;return!0}function k(o,n,t,i,c=!0){return Array.isArray(o)&&(o=o.length),typeof i!="string"&&(c=i??!0,i=t),(c?`${o}\xA0`:"")+k.raw(o,n,t,i)}k.raw=(o,n,t,i=t)=>{o=Math.abs(o);let c=o%10,s=o%100;return c===1&&s!==11?n:c>=2&&c<=4&&!(s>=12&&s<=15)?t:i};function v(o,n){let t={};for(let i of n)i in o&&(t[i]=o[i]);return t}function C(o){return Object.entries(o)}function M(o){return Object.fromEntries(o)}var g="_u",I=Symbol("updatedAt");var S=class extends Error{constructor(n){super(`Unknown Config item "${n}"`)}name="UnknownConfigItemError"},$;async function vr(o,n,t){if(!$){let i=new Map,c=await o.ensure("config",t),s={addListener(e,l,f){let r=this[e];if(r)f&&l.call(r,r,{...r}),i.get(r)?.add(l)??i.set(r,new Set([l]));else throw new S(e)},removeListener(e,l){let f=this[e];if(f)i.get(f)?.delete(l);else throw new S(e)},async update(e,{[I]:l,...f}){let r=this[e];if(g in f&&delete f[g],r){if(!E(f)&&(!l||r[g]<l)){let u={};for(let[p,x]of Object.entries(f))p in r&&r[p]!==x&&(u[p]=x);if(!E(u)){l||(Object.assign(u,{[g]:Date.now()}),c.updateOne({_id:e},{$set:u}));let p=v(r,Object.keys(u));Object.assign(r,u);for(let x of i.get(r)??[])await x.call(r,u,p)}}return r}throw new S(e)}};s.on=s.addListener,s.off=s.removeListener,$=s;let a=new Map((await c.find().toArray()).map(({_id:e,...l})=>[e,l])),d=new Map,j=Date.now();for(let[e,l]of Object.entries(n)){let f=a.get(e),r={...M(C(l).map(([u,p])=>[u,f?.[u]??p])),[g]:f?.[g]??j};s[e]=r,d.set(e,r)}await c.bulkWrite([...[...d].map(([e,l])=>({replaceOne:{filter:{_id:e},replacement:{_id:e,...l},upsert:!0}})),...[...a.keys()].filter(e=>!n[e]).map(e=>({deleteOne:{filter:{_id:e}}}))]),c.onChange(e=>{switch(e.operationType){case"update":case"replace":{let{_id:l,[g]:f=Date.now(),...r}=e.operationType==="replace"?e.fullDocument:e.updateDescription.updatedFields;s.update(e.documentKey._id,{...r,[I]:f})}}})}return $}export{S as UnknownConfigItemError,vr as init};
1
+ function y(){}var O=new WeakMap,b=class o extends Promise{constructor(n,t){let i,c;if(super((s,a)=>{i=s,c=a}),O.set(this,{resolve:i,reject:c}),t?.signal)if(t.signal.aborted)this.reject(new DOMException("Aborted","AbortError"));else{let s=()=>this.reject(new DOMException("Aborted","AbortError"));t.signal.addEventListener("abort",s),this.finally(()=>t.signal?.removeEventListener("abort",s))}if(typeof t?.timeout=="number"&&Number.isFinite(t.timeout)){let s=setTimeout(()=>this.reject(new DOMException("Timeout exceeded","TimeoutError")),t.timeout);this.finally(()=>clearTimeout(s))}n?.(this.resolve,this.reject)}isPending=!0;isFulfilled=!1;isRejected=!1;state="pending";result;resolve=n=>{if(this.isPending){this.isPending=!1,this.isFulfilled=!0,this.state="fulfilled",this.result=n;let t=O.get(this);t&&(t.resolve.call(this,n),O.delete(this))}};reject=n=>{if(this.isPending){this.isPending=!1,this.isRejected=!0,this.state="rejected",this.result=n;let t=O.get(this);t&&(t.reject.call(this,n),O.delete(this))}};static resolved(n){return new o(t=>t(n))}static rejected(n){return new o((t,i)=>i(n))}};function A(o,n=0,t={}){let{leading:i=!1,trailing:c=!0}=t,{maxWait:s=1/0}=t,a,d,j,e,l,f,r,u,p=async()=>{let h=Date.now();h>=j?(a=void 0,j=void 0,clearTimeout(d),d=void 0,typeof r=="function"&&await r(),m.resolve(u),f=i):(clearTimeout(a),a=setTimeout(p,j-h))},x=Number.isFinite(s)?()=>{r===g&&(r=!1),g(),d=setTimeout(x,s)}:null;async function g(){try{return u=await o.apply(e,l),u}catch(h){throw m.reject(h),h}}i&&typeof i=="boolean"&&(i=g),f=i,c&&typeof c=="boolean"&&(c=g),r=c;let m=Object.assign(function(...h){return l=h,e=this,j=Date.now()+n,r=c,m.promise.isPending||(m.promise=new b((T,D)=>{m.resolve=T,m.reject=D,typeof f=="function"&&(f(),f=!1,r===g&&(r=!1)),a||(a=setTimeout(p,n),x&&(d=setTimeout(x,s)))})),m.promise},{callback:o,promise:b.resolved(void 0),resolve:y,reject:y,run:g,clear:async h=>{clearTimeout(a),a=void 0,clearTimeout(d),d=void 0,m.resolve(h?await g():u)}});return m}A.noop=Object.assign(()=>{},{callback:y,promise:b.resolved(void 0),resolve:y,reject:y,run:y,clear:y});function E(o){for(let n in o)return!1;return!0}function k(o,n,t,i,c=!0){return Array.isArray(o)&&(o=o.length),typeof i!="string"&&(c=i??!0,i=t),(c?`${o}\xA0`:"")+k.raw(o,n,t,i)}k.raw=(o,n,t,i=t)=>{o=Math.abs(o);let c=o%10,s=o%100;return c===1&&s!==11?n:c>=2&&c<=4&&!(s>=12&&s<=15)?t:i};function v(o,n){let t={};for(let i of n)i in o&&(t[i]=o[i]);return t}function C(o){return Object.entries(o)}function M(o){return Object.fromEntries(o)}var I=Symbol("updatedAt");var S=class extends Error{constructor(n){super(`Unknown Config item "${n}"`)}name="UnknownConfigItemError"},$;async function vr(o,n,t){if(!$){let i=new Map,c=await o.ensure("config",t),s={addListener(e,l,f){let r=this[e];if(r)f&&l.call(r,r,{...r}),i.get(r)?.add(l)??i.set(r,new Set([l]));else throw new S(e)},removeListener(e,l){let f=this[e];if(f)i.get(f)?.delete(l);else throw new S(e)},async update(e,{[I]:l,...f}){let r=this[e];if("_u"in f&&delete f["_u"],r){if(!E(f)&&(!l||r["_u"]<l)){let u={};for(let[p,x]of Object.entries(f))p in r&&r[p]!==x&&(u[p]=x);if(!E(u)){l||(Object.assign(u,{_u:Date.now()}),c.updateOne({_id:e},{$set:u}));let p=v(r,Object.keys(u));Object.assign(r,u);for(let x of i.get(r)??[])await x.call(r,u,p)}}return r}throw new S(e)}};s.on=s.addListener,s.off=s.removeListener,$=s;let a=new Map((await c.find().toArray()).map(({_id:e,...l})=>[e,l])),d=new Map,j=Date.now();for(let[e,l]of Object.entries(n)){let f=a.get(e),r={...M(C(l).map(([u,p])=>[u,f?.[u]??p])),_u:f?.["_u"]??j};s[e]=r,d.set(e,r)}await c.bulkWrite([...[...d].map(([e,l])=>({replaceOne:{filter:{_id:e},replacement:{_id:e,...l},upsert:!0}})),...[...a.keys()].filter(e=>!n[e]).map(e=>({deleteOne:{filter:{_id:e}}}))]),c.onChange(e=>{switch(e.operationType){case"update":case"replace":{let{_id:l,["_u"]:f=Date.now(),...r}=e.operationType==="replace"?e.fullDocument:e.updateDescription.updatedFields;s.update(e.documentKey._id,{...r,[I]:f})}}})}return $}export{S as UnknownConfigItemError,vr as init};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../@nesvet/npm/n/src/noop.ts", "../../../../@nesvet/npm/n/src/StatefulPromise.ts", "../../../../@nesvet/npm/n/src/debounce.ts", "../../../../@nesvet/npm/n/src/isEmpty.ts", "../../../../@nesvet/npm/n/src/howmuch.ts", "../../../../@nesvet/npm/n/src/pick.ts", "../../../../@nesvet/npm/n/src/typeSafeObjectEntries.ts", "../../../../@nesvet/npm/n/src/typeSafeObjectFromEntries.ts", "../src/symbols.ts", "../src/init.ts"],
4
4
  "sourcesContent": ["export function noop() { /**/ }\n", "/* eslint-disable @typescript-eslint/no-explicit-any */\n\ntype Value<T> = PromiseLike<T> | T;\ntype Resolve<T> = (value: Value<T>) => void;\ntype Reject = (reason?: any) => void;\n\ntype Options = {\n\tsignal?: AbortSignal;\n\ttimeout?: number;\n};\n\nconst nativesMap = new WeakMap<StatefulPromise<any>, { resolve: Resolve<any>; reject: Reject }>();\n\n\nexport class StatefulPromise<T> extends Promise<T> {\n\tconstructor(\n\t\texecutor?: (resolve: Resolve<T>, reject: Reject) => void,\n\t\toptions?: Options\n\t) {\n\t\tlet nativeResolve: Resolve<T>;\n\t\tlet nativeReject: Reject;\n\t\t\n\t\tsuper((resolve, reject) => {\n\t\t\tnativeResolve = resolve;\n\t\t\tnativeReject = reject;\n\t\t\t\n\t\t});\n\t\t\n\t\tnativesMap.set(this, { resolve: nativeResolve!, reject: nativeReject! });\n\t\t\n\t\tif (options?.signal)\n\t\t\tif (options.signal.aborted)\n\t\t\t\tthis.reject(new DOMException(\"Aborted\", \"AbortError\"));\n\t\t\telse {\n\t\t\t\tconst abortListener = () => this.reject(new DOMException(\"Aborted\", \"AbortError\"));\n\t\t\t\t\n\t\t\t\toptions.signal.addEventListener(\"abort\", abortListener);\n\t\t\t\t\n\t\t\t\tthis.finally(() => options.signal?.removeEventListener(\"abort\", abortListener));\n\t\t\t}\n\t\t\n\t\tif (typeof options?.timeout === \"number\" && Number.isFinite(options.timeout)) {\n\t\t\tconst timeout = setTimeout(() => this.reject(new DOMException(\"Timeout exceeded\", \"TimeoutError\")), options.timeout);\n\t\t\t\n\t\t\tthis.finally(() => clearTimeout(timeout));\n\t\t}\n\t\t\n\t\texecutor?.(this.resolve, this.reject);\n\t\t\n\t}\n\t\n\tisPending = true;\n\tisFulfilled = false;\n\tisRejected = false;\n\t\n\tstate: \"fulfilled\" | \"pending\" | \"rejected\" = \"pending\";\n\t\n\tresult?: T | unknown;\n\t\n\treadonly resolve = (value: Value<T>) => {\n\t\t\n\t\tif (this.isPending) {\n\t\t\tthis.isPending = false;\n\t\t\tthis.isFulfilled = true;\n\t\t\tthis.state = \"fulfilled\";\n\t\t\tthis.result = value;\n\t\t\t\n\t\t\tconst native = nativesMap.get(this);\n\t\t\t\n\t\t\tif (native) {\n\t\t\t\tnative.resolve.call(this, value);\n\t\t\t\tnativesMap.delete(this);\n\t\t\t}\n\t\t}\n\t\t\n\t};\n\t\n\treadonly reject = (reason?: any) => {\n\t\t\n\t\tif (this.isPending) {\n\t\t\tthis.isPending = false;\n\t\t\tthis.isRejected = true;\n\t\t\tthis.state = \"rejected\";\n\t\t\tthis.result = reason;\n\t\t\t\n\t\t\tconst native = nativesMap.get(this);\n\t\t\t\n\t\t\tif (native) {\n\t\t\t\tnative.reject.call(this, reason);\n\t\t\t\tnativesMap.delete(this);\n\t\t\t}\n\t\t}\n\t\t\n\t};\n\t\n\t\n\tstatic resolved<U>(value: U): StatefulPromise<U> {\n\t\treturn new StatefulPromise<U>(resolve => resolve(value));\n\t}\n\t\n\tstatic rejected(reason: unknown): StatefulPromise<never> {\n\t\treturn new StatefulPromise((_, reject) => reject(reason));\n\t}\n\t\n}\n", "import { noop } from \"./noop.js\";\nimport { StatefulPromise } from \"./StatefulPromise.js\";\n\n\ntype Callback = (...args: any[]) => unknown;// eslint-disable-line @typescript-eslint/no-explicit-any\ntype FunctionOrBoolean = (() => unknown) | boolean;\ntype Options = { leading?: FunctionOrBoolean; maxWait?: number; trailing?: FunctionOrBoolean };\n\ntype DebouncedFunction<C extends Callback> = {\n\t(this: ThisParameterType<C>, ...args: Parameters<C>): Promise<Awaited<ReturnType<C>>>;\n};\n\nexport type Debounced<C extends Callback, R extends ReturnType<C>> = DebouncedFunction<C> & {\n\tcallback: C;\n\tpromise: StatefulPromise<R>;\n\tresolve: (value: R) => void;\n\treject: (reason?: unknown) => void;\n\trun(): Promise<R>;\n\tclear(shouldRun?: boolean): Promise<void>;\n};\n\n\nexport function debounce<C extends Callback, R extends ReturnType<C>>(callback: C, limit = 0, options: Options = {}) {\n\tlet { leading = false, trailing = true } = options;\n\tconst { maxWait = Infinity } = options;\n\t\n\tlet timeout: ReturnType<typeof setTimeout> | undefined;\n\tlet maxWaitTimeout: ReturnType<typeof setTimeout> | undefined;\n\tlet end: number | undefined;\n\tlet context: ThisParameterType<C>;\n\tlet args: unknown[];\n\tlet initial: FunctionOrBoolean;\n\tlet final: FunctionOrBoolean;\n\tlet result: R;\n\t\n\tconst expired = async () => {\n\t\t\n\t\tconst n = Date.now();\n\t\t\n\t\tif (n >= end!) {\n\t\t\ttimeout = undefined;\n\t\t\tend = undefined;\n\t\t\t\n\t\t\tclearTimeout(maxWaitTimeout);\n\t\t\tmaxWaitTimeout = undefined;\n\t\t\t\n\t\t\tif (typeof final == \"function\")\n\t\t\t\tawait final();\n\t\t\t\n\t\t\tdebounced.resolve(result);\n\t\t\t\n\t\t\tinitial = leading;\n\t\t} else {\n\t\t\tclearTimeout(timeout);\n\t\t\ttimeout = setTimeout(expired, end! - n);\n\t\t}\n\t\t\n\t};\n\t\n\tconst maxWaitExpired = Number.isFinite(maxWait) ? () => {\n\t\t\n\t\tif (final === run)\n\t\t\tfinal = false;\n\t\t\n\t\trun();\n\t\t\n\t\tmaxWaitTimeout = setTimeout(maxWaitExpired as TimerHandler, maxWait);\n\t\t\n\t} : null;\n\t\n\tasync function run() {\n\t\ttry {\n\t\t\tresult = await callback.apply(context, args) as R;\n\t\t\t\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tdebounced.reject(error);\n\t\t\t\n\t\t\tthrow error;\n\t\t}\n\t}\n\t\n\tif (leading && typeof leading == \"boolean\")\n\t\tleading = run;\n\tinitial = leading;\n\t\n\tif (trailing && typeof trailing == \"boolean\")\n\t\ttrailing = run;\n\tfinal = trailing;\n\t\n\tconst debounced: Debounced<C, R> = Object.assign(function (..._args) {\n\t\targs = _args;\n\t\tcontext = this;// eslint-disable-line no-invalid-this\n\t\t\n\t\tend = Date.now() + limit;\n\t\tfinal = trailing;\n\t\t\n\t\tif (!debounced.promise.isPending)\n\t\t\tdebounced.promise = new StatefulPromise<R>((resolve, reject) => {\n\t\t\t\tdebounced.resolve = resolve;\n\t\t\t\tdebounced.reject = reject;\n\t\t\t\t\n\t\t\t\tif (typeof initial == \"function\") {\n\t\t\t\t\tinitial();\n\t\t\t\t\t\n\t\t\t\t\tinitial = false;\n\t\t\t\t\t\n\t\t\t\t\tif (final === run)\n\t\t\t\t\t\tfinal = false;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (!timeout) {\n\t\t\t\t\ttimeout = setTimeout(expired, limit);\n\t\t\t\t\t\n\t\t\t\t\tif (maxWaitExpired)\n\t\t\t\t\t\tmaxWaitTimeout = setTimeout(maxWaitExpired, maxWait);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t});\n\t\t\n\t\treturn debounced.promise;\n\t} as DebouncedFunction<C>, {\n\t\tcallback,\n\t\tpromise: StatefulPromise.resolved(undefined as unknown as R),\n\t\tresolve: noop,\n\t\treject: noop,\n\t\trun,\n\t\tclear: async (shouldRun?: boolean) => {\n\t\t\t\n\t\t\tclearTimeout(timeout);\n\t\t\ttimeout = undefined;\n\t\t\t\n\t\t\tclearTimeout(maxWaitTimeout);\n\t\t\tmaxWaitTimeout = undefined;\n\t\t\t\n\t\t\tdebounced.resolve(shouldRun ? await run() : result);\n\t\t\t\n\t\t}\n\t});\n\t\n\treturn debounced;\n}\n\n\ndebounce.noop = Object.assign(() => { /**/ }, {\n\tcallback: noop,\n\tpromise: StatefulPromise.resolved(undefined), // eslint-disable-line unicorn/no-useless-undefined\n\tresolve: noop,\n\treject: noop,\n\trun: noop,\n\tclear: noop\n}) as Debounced<() => void, void>;\n\n\nexport function throttle(callback: Callback, limit?: number, options?: Options) {\n\treturn debounce(callback, limit, {\n\t\tmaxWait: limit,\n\t\tleading: true,\n\t\ttrailing: true,\n\t\t...options\n\t});\n}\n", "export function isEmpty(object: object) {\n\tfor (const _ in object)// eslint-disable-line guard-for-in, no-unreachable-loop\n\t\treturn false;\n\t\n\treturn true;\n}\n", "export function howmuch(number: [] | number, one: string, two: string, five: boolean | string, shouldPrintNumber = true) {\n\tif (Array.isArray(number))\n\t\tnumber = number.length;\n\t\n\tif (typeof five != \"string\") {\n\t\tshouldPrintNumber = five ?? true;\n\t\tfive = two;\n\t}\n\t\n\t\n\treturn (shouldPrintNumber ? `${number}\u00A0` : \"\") + howmuch.raw(number, one, two, five);\n}\n\nhowmuch.raw = (number: number, one: string, two: string, five = two) => {\n\tnumber = Math.abs(number);\n\tconst u = number % 10;\n\tconst d = number % 100;\n\t\n\treturn (\n\t\t(u === 1 && d !== 11) ?\n\t\t\tone :\n\t\t\t((u >= 2 && u <= 4) && !(d >= 12 && d <= 15)) ?\n\t\t\t\ttwo :\n\t\t\t\tfive\n\t);\n};\n", "export function pick<O extends object, K extends keyof O>(object: O, keys: K[]) {\n\t\n\tconst picked: Partial<Pick<O, K>> = {};\n\t\n\tfor (const key of keys)\n\t\tif (key in object)\n\t\t\tpicked[key] = object[key];\n\t\n\treturn picked as Pick<O, K>;\n}\n", "export function typeSafeObjectEntries<T extends Record<PropertyKey, unknown>>(obj: T) {\n\treturn Object.entries(obj) as { [K in keyof T]: [K, T[K]] }[keyof T][];\n}\n", "export function typeSafeObjectFromEntries<const T extends ReadonlyArray<readonly [PropertyKey, unknown]>>(entries: T) {\n\treturn Object.fromEntries(entries) as { [K in T[number] as K[0]]: K[1] };\n}\n", "export const updatedAtKey = \"_u\";\nexport const updatedAtSymbol = Symbol(\"updatedAt\");\n", "import {\n\tisEmpty,\n\tpick,\n\ttypeSafeObjectEntries,\n\ttypeSafeObjectFromEntries\n} from \"@nesvet/n\";\nimport type { Collections } from \"insite-db\";\nimport { updatedAtKey, updatedAtSymbol } from \"./symbols\";\nimport type {\n\tCollectionOptions,\n\tConfig,\n\tConfigItemID,\n\tListener,\n\tSchema,\n\tUpdates\n} from \"./types\";\n\n\nexport class UnknownConfigItemError extends Error {\n\tconstructor(_id: string) {\n\t\tsuper(`Unknown Config item \"${_id}\"`);\n\t\t\n\t}\n\t\n\tname = \"UnknownConfigItemError\";\n\t\n}\n\n\nlet initedConfig: Config<Schema>;\n\nexport async function init<S extends Schema>(collections: Collections, schema: S, collectionOptions?: CollectionOptions) {\n\t\n\tif (!initedConfig) {\n\t\ttype ID = ConfigItemID<S>;\n\t\ttype CI = Config<S>[ID];\n\t\t\n\t\tconst updateListeners = new Map<CI, Set<Listener<CI>>>();\n\t\t\n\t\ttype CIDoc = CI & { _id: ID };\n\t\tconst collection = await collections.ensure<CIDoc>(\"config\", collectionOptions);\n\t\t\n\t\tconst config: Config<S> = {\n\t\t\t\n\t\t\taddListener(_id, listener: Listener<CI>, immediately) {\n\t\t\t\tconst item = this[_id];\n\t\t\t\t\n\t\t\t\tif (item) {\n\t\t\t\t\tif (immediately)\n\t\t\t\t\t\tvoid listener.call(item, item, { ...item });\n\t\t\t\t\t\n\t\t\t\t\tupdateListeners.get(item)?.add(listener) ??\n\t\t\t\t\tupdateListeners.set(item, new Set([ listener ]));\n\t\t\t\t} else\n\t\t\t\t\tthrow new UnknownConfigItemError(_id);\n\t\t\t},\n\t\t\t\n\t\t\tremoveListener(_id, listener: Listener<CI>) {\n\t\t\t\tconst item = this[_id];\n\t\t\t\t\n\t\t\t\tif (item)\n\t\t\t\t\tupdateListeners.get(item)?.delete(listener);\n\t\t\t\telse\n\t\t\t\t\tthrow new UnknownConfigItemError(_id);\n\t\t\t},\n\t\t\t\n\t\t\tasync update(_id, { [updatedAtSymbol]: updatedAt, ...updates }) {\n\t\t\t\tconst item = this[_id] as CI;\n\t\t\t\t\n\t\t\t\tif (updatedAtKey in updates)\n\t\t\t\t\tdelete updates[updatedAtKey];\n\t\t\t\t\n\t\t\t\tif (item) {\n\t\t\t\t\tif (!isEmpty(updates) && (!updatedAt || item[updatedAtKey] < updatedAt)) {\n\t\t\t\t\t\tconst updatedFields: Partial<CI> = {};\n\t\t\t\t\t\t\n\t\t\t\t\t\tfor (const [ key, value ] of Object.entries(updates) as [ keyof CI, CI[keyof CI] ][])\n\t\t\t\t\t\t\tif (key in item && item[key] !== value)\n\t\t\t\t\t\t\t\tupdatedFields[key] = value;\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (!isEmpty(updatedFields)) {\n\t\t\t\t\t\t\tif (!updatedAt) {\n\t\t\t\t\t\t\t\tObject.assign(updatedFields, { [updatedAtKey]: Date.now() });\n\t\t\t\t\t\t\t\tvoid collection.updateOne({ _id }, { $set: updatedFields as Partial<CIDoc> });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tconst prevFields = pick(item, Object.keys(updatedFields)) as Partial<CI>;\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tObject.assign(item, updatedFields);\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tfor (const listener of updateListeners.get(item) ?? [])\n\t\t\t\t\t\t\t\tawait listener.call(item, updatedFields, prevFields);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\treturn item;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tthrow new UnknownConfigItemError(_id);\n\t\t\t}\n\t\t\t\n\t\t} as Config<S>;\n\t\t\n\t\tconfig.on = config.addListener;\n\t\tconfig.off = config.removeListener;\n\t\t\n\t\tinitedConfig = config;// eslint-disable-line require-atomic-updates\n\t\t\n\t\t\n\t\tconst collectionMap = new Map((await collection.find().toArray()).map(({ _id, ...props }) => [ _id as ID, props as CI ]));\n\t\t\n\t\tconst itemsMap = new Map<ID, CI>();\n\t\t\n\t\tconst initialUpdatedAt = Date.now();\n\t\t\n\t\tfor (const [ _id, props ] of Object.entries(schema) as [ID, S[keyof S]][]) {\n\t\t\tconst collectionItem = collectionMap.get(_id);\n\t\t\t\n\t\t\tconst item = {\n\t\t\t\t...typeSafeObjectFromEntries(\n\t\t\t\t\ttypeSafeObjectEntries(props).map(([ key, value ]) =>\n\t\t\t\t\t\t[ key, collectionItem?.[key] ?? value ]\n\t\t\t\t\t)\n\t\t\t\t),\n\t\t\t\t[updatedAtKey]: collectionItem?.[updatedAtKey] ?? initialUpdatedAt\n\t\t\t} as CI;\n\t\t\t\n\t\t\tconfig[_id] = item;\n\t\t\t\n\t\t\titemsMap.set(_id, item);\n\t\t}\n\t\t\n\t\t\n\t\tawait collection.bulkWrite([\n\t\t\t...[ ...itemsMap ].map(([ _id, item ]) => ({ replaceOne: { filter: { _id }, replacement: { _id, ...item }, upsert: true } })),\n\t\t\t...[ ...collectionMap.keys() ].filter(_id => !schema[_id]).map(_id => ({ deleteOne: { filter: { _id } } }))\n\t\t]);\n\t\t\n\t\tcollection.onChange(next => {\n\t\t\tswitch (next.operationType) {\n\t\t\t\tcase \"update\":\n\t\t\t\tcase \"replace\": {\n\t\t\t\t\tconst {\n\t\t\t\t\t\t_id: _,\n\t\t\t\t\t\t[updatedAtKey]: updatedAt = Date.now(),\n\t\t\t\t\t\t...restProps\n\t\t\t\t\t} = next.operationType === \"replace\" ? next.fullDocument : next.updateDescription.updatedFields!;\n\t\t\t\t\t\n\t\t\t\t\tvoid config.update(next.documentKey._id as unknown as ID, {\n\t\t\t\t\t\t...restProps,\n\t\t\t\t\t\t[updatedAtSymbol]: updatedAt\n\t\t\t\t\t} as Updates<CI>);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t});\n\t\t\n\t}\n\t\n\treturn initedConfig as Config<S>;\n}\n"],
5
- "mappings": "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",
6
- "names": ["noop", "nativesMap", "StatefulPromise", "_StatefulPromise", "executor", "options", "nativeResolve", "nativeReject", "resolve", "reject", "abortListener", "timeout", "value", "native", "reason", "_", "debounce", "callback", "limit", "options", "leading", "trailing", "maxWait", "timeout", "maxWaitTimeout", "end", "context", "args", "initial", "final", "result", "expired", "n", "debounced", "maxWaitExpired", "run", "error", "_args", "StatefulPromise", "resolve", "reject", "noop", "shouldRun", "isEmpty", "object", "_", "howmuch", "number", "one", "two", "five", "shouldPrintNumber", "u", "d", "pick", "object", "keys", "picked", "key", "typeSafeObjectEntries", "obj", "typeSafeObjectFromEntries", "entries", "updatedAtKey", "updatedAtSymbol", "UnknownConfigItemError", "_id", "initedConfig", "init", "collections", "schema", "collectionOptions", "updateListeners", "collection", "config", "listener", "immediately", "item", "updatedAtSymbol", "updatedAt", "updates", "updatedAtKey", "isEmpty", "updatedFields", "key", "value", "prevFields", "pick", "collectionMap", "props", "itemsMap", "initialUpdatedAt", "collectionItem", "typeSafeObjectFromEntries", "typeSafeObjectEntries", "next", "_", "restProps"]
5
+ "mappings": "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",
6
+ "names": ["noop", "nativesMap", "StatefulPromise", "_StatefulPromise", "executor", "options", "nativeResolve", "nativeReject", "resolve", "reject", "abortListener", "timeout", "value", "native", "reason", "_", "debounce", "callback", "limit", "options", "leading", "trailing", "maxWait", "timeout", "maxWaitTimeout", "end", "context", "args", "initial", "final", "result", "expired", "n", "debounced", "maxWaitExpired", "run", "error", "_args", "StatefulPromise", "resolve", "reject", "noop", "shouldRun", "isEmpty", "object", "_", "howmuch", "number", "one", "two", "five", "shouldPrintNumber", "u", "d", "pick", "object", "keys", "picked", "key", "typeSafeObjectEntries", "obj", "typeSafeObjectFromEntries", "entries", "updatedAtSymbol", "UnknownConfigItemError", "_id", "initedConfig", "init", "collections", "schema", "collectionOptions", "updateListeners", "collection", "config", "listener", "immediately", "item", "updatedAtSymbol", "updatedAt", "updates", "isEmpty", "updatedFields", "key", "value", "prevFields", "pick", "collectionMap", "props", "itemsMap", "initialUpdatedAt", "collectionItem", "typeSafeObjectFromEntries", "typeSafeObjectEntries", "next", "_", "restProps"]
7
7
  }
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "insite-config",
3
- "version": "2.3.3",
3
+ "version": "2.3.5",
4
4
  "description": "inSite config",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",
8
- "packageManager": "bun@1.2.18",
8
+ "packageManager": "bun@1.2.21",
9
9
  "scripts": {
10
10
  "test": "echo \"Error: no test specified\" && exit 1",
11
11
  "build": "bun .conveyer.js",
@@ -23,12 +23,12 @@
23
23
  "license": "MIT",
24
24
  "dependencies": {
25
25
  "@nesvet/n": "^1.2.1",
26
- "insite-db": "^2.3.3"
26
+ "insite-db": "^2.3.5"
27
27
  },
28
28
  "devDependencies": {
29
- "@nesvet/conveyer": "^2.6.1",
30
29
  "@nesvet/eslint-config": "^2.1.2",
31
- "@types/node": "^24.0.13",
32
- "typescript": "^5.8.3"
30
+ "@types/node": "^24.3.1",
31
+ "cnvr": "^2.7.2",
32
+ "typescript": "^5.9.2"
33
33
  }
34
34
  }