diff --git a/dist/lib/make_entity.js b/dist/lib/make_entity.js index e7a680e..0d9ac37 100644 --- a/dist/lib/make_entity.js +++ b/dist/lib/make_entity.js @@ -501,7 +501,7 @@ function emptyQuery(q) { // Query values can be a scalar id, array of scalar ids, or a query object. function normalize_query(qin, ent, flags) { let q = qin; - let inject_id = flags ? false === flags.inject_id ? false : true : true; + let inject_id = flags ? (false === flags.inject_id ? false : true) : true; if (inject_id) { if ((null == qin || 'function' === typeof qin) && ent.id != null) { q = { id: ent.id }; diff --git a/dist/lib/make_entity.js.map b/dist/lib/make_entity.js.map index 85c52c1..9531b3a 100644 --- a/dist/lib/make_entity.js.map +++ b/dist/lib/make_entity.js.map @@ -1 +1 @@ -{"version":3,"file":"make_entity.js","sourceRoot":"","sources":["../../src/lib/make_entity.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"make_entity.js","sourceRoot":"","sources":["../../src/lib/make_entity.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index bb4cfd5..16a341d 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "seneca-entity", "main": "dist/entity.js", - "version": "23.0.1", + "version": "24.0.0", "type": "commonjs", "types": "dist/entity.d.ts", "description": "Entity plugin for seneca", diff --git a/src/lib/make_entity.ts b/src/lib/make_entity.ts index f77cce4..ff10793 100644 --- a/src/lib/make_entity.ts +++ b/src/lib/make_entity.ts @@ -51,7 +51,7 @@ class Entity implements Record { constructor(canon: any, seneca: any, options: any) { const private$: any = this.private$ - private$.get_instance = function() { + private$.get_instance = function () { return seneca } private$.canon = canon @@ -157,18 +157,18 @@ class Entity implements Record { for (const p in props) { if (Object.prototype.hasOwnProperty.call(props, p)) { if (!~p.indexOf('$')) { - ; (entity as any)[p] = props[p] + ;(entity as any)[p] = props[p] } else if (p.length > 2 && p.slice(-2) === '_$') { - ; (entity as any)[p.slice(0, -2)] = props[p] + ;(entity as any)[p.slice(0, -2)] = props[p] } } } if (Object.prototype.hasOwnProperty.call(props, 'id$')) { - ; (entity as any).id$ = props.id$ + ;(entity as any).id$ = props.id$ } - ; (self as any).log$ && + ;(self as any).log$ && (self as any).log$('make', entity.canon$({ string: true }), entity) return entity @@ -400,7 +400,7 @@ class Entity implements Record { const promise = self.private$.promise && !done$ - ; (self as any).log$ && (self as any).log$('close') + ;(self as any).log$ && (self as any).log$('close') return promise ? si.post(entmsg) : (si.act(entmsg, done$), self) } @@ -465,21 +465,21 @@ class Entity implements Record { return null == opt || opt.string || opt.string$ ? // ? [ - // (opt && opt.string$ ? '$' : '') + - // (null == canon.zone ? '-' : canon.zone), - // null == canon.base ? '-' : canon.base, - // null == canon.name ? '-' : canon.name, - // ].join('/') // TODO: make joiner an option - (opt && opt.string$ ? '$' : '') + canonstr(canon) + // (opt && opt.string$ ? '$' : '') + + // (null == canon.zone ? '-' : canon.zone), + // null == canon.base ? '-' : canon.base, + // null == canon.name ? '-' : canon.name, + // ].join('/') // TODO: make joiner an option + (opt && opt.string$ ? '$' : '') + canonstr(canon) : opt.array - ? [canon.zone, canon.base, canon.name] - : opt.array$ - ? [canon.zone, canon.base, canon.name] - : opt.object - ? { zone: canon.zone, base: canon.base, name: canon.name } - : opt.object$ - ? { zone$: canon.zone, base$: canon.base, name$: canon.name } - : [canon.zone, canon.base, canon.name] + ? [canon.zone, canon.base, canon.name] + : opt.array$ + ? [canon.zone, canon.base, canon.name] + : opt.object + ? { zone: canon.zone, base: canon.base, name: canon.name } + : opt.object$ + ? { zone$: canon.zone, base$: canon.base, name$: canon.name } + : [canon.zone, canon.base, canon.name] } // data = object, or true|undef = include $, false = exclude $ @@ -579,14 +579,14 @@ function entityPromise(si: any, entmsg: any) { err ? rej((attachMeta ? (err.meta$ = meta) : null, err)) : res( - (attachMeta - ? ((out?.entity$ - ? proto(out) - : out || (out = { entity$: null }) - ).meta$ = meta) - : null, + (attachMeta + ? ((out?.entity$ + ? proto(out) + : out || (out = { entity$: null }) + ).meta$ = meta) + : null, out) - ) + ) }) }) } @@ -613,7 +613,7 @@ function emptyQuery(q: any): boolean { function normalize_query(qin: any, ent: any, flags?: { inject_id: boolean }) { let q = qin - let inject_id = flags ? false === flags.inject_id ? false : true : true + let inject_id = flags ? (false === flags.inject_id ? false : true) : true if (inject_id) { if ((null == qin || 'function' === typeof qin) && ent.id != null) { @@ -709,12 +709,12 @@ function handle_options(entopts: any, seneca: any): any { if (false === entopts.meta?.provide) { // Drop meta argument from callback - ; (Entity.prototype as any).done$ = (done: any) => { + ;(Entity.prototype as any).done$ = (done: any) => { return null == done ? undefined - : function(this: any, err: any, out: any) { - done.call(this, err, out) - } + : function (this: any, err: any, out: any) { + done.call(this, err, out) + } } } @@ -741,7 +741,7 @@ function make_toString( hidden_fields.push('id') - return function(this: any) { + return function (this: any) { return [ '$', canon_str || this.canon$({ string: true }), @@ -777,7 +777,7 @@ function MakeEntity(canon: any, seneca: any, opts: any): Entity { )) ).bind(ent) - let custom$ = function(this: any, props: any) { + let custom$ = function (this: any, props: any) { if ( null != props && ('object' === typeof props || 'function' === typeof props) diff --git a/test/entity.test.js b/test/entity.test.js index 2be5ba9..a4c4c50 100644 --- a/test/entity.test.js +++ b/test/entity.test.js @@ -1,9 +1,7 @@ /* Copyright (c) 2010-2022 Richard Rodger and other contributors, MIT License */ - // TODO: test for role:entity translates! - const Util = require('util') const Seneca = require('seneca') @@ -1253,63 +1251,61 @@ describe('entity', function () { }) }) - test('translation-role-entity', async function () { const si = Seneca({ legacy: false }).use('promisify').use('..').test() - let f0 = await si.entity('foo').save$({f:0}) + let f0 = await si.entity('foo').save$({ f: 0 }) let list = await si.post('role:entity,cmd:list,name:foo') - expect(list).toMatchObject([{f:0}]) + expect(list).toMatchObject([{ f: 0 }]) - si.message('role:entity,cmd:save', async function(msg) { + si.message('role:entity,cmd:save', async function (msg) { msg.ent.r0 = 2 return this.prior(msg) }) - let f1 = await si.entity('foo').save$({f:1}) - expect(f1).toMatchObject({f:1,r0:2}) - - si.message('role:entity,cmd:save', async function(msg) { + let f1 = await si.entity('foo').save$({ f: 1 }) + expect(f1).toMatchObject({ f: 1, r0: 2 }) + + si.message('role:entity,cmd:save', async function (msg) { msg.ent.r1 = 3 return this.prior(msg) }) - let f2 = await si.entity('foo').save$({f:2}) - expect(f2).toMatchObject({f:2,r0:2,r1:3}) + let f2 = await si.entity('foo').save$({ f: 2 }) + expect(f2).toMatchObject({ f: 2, r0: 2, r1: 3 }) - si.message('sys:entity,cmd:save', async function(msg) { + si.message('sys:entity,cmd:save', async function (msg) { msg.ent.s0 = 4 return this.prior(msg) }) - let f3 = await si.entity('foo').save$({f:3}) - expect(f3).toMatchObject({f:3,r0:2,r1:3,s0:4}) + let f3 = await si.entity('foo').save$({ f: 3 }) + expect(f3).toMatchObject({ f: 3, r0: 2, r1: 3, s0: 4 }) - si.message('sys:entity,cmd:save', async function(msg) { + si.message('sys:entity,cmd:save', async function (msg) { msg.ent.s1 = 5 return this.prior(msg) }) - let f4 = await si.entity('foo').save$({f:4}) - expect(f4).toMatchObject({f:4,r0:2,r1:3,s0:4,s1:5}) + let f4 = await si.entity('foo').save$({ f: 4 }) + expect(f4).toMatchObject({ f: 4, r0: 2, r1: 3, s0: 4, s1: 5 }) - si.message('role:entity,cmd:save', async function(msg) { + si.message('role:entity,cmd:save', async function (msg) { msg.ent.r2 = 6 return this.prior(msg) }) - let f5 = await si.entity('foo').save$({f:5}) - expect(f5).toMatchObject({f:5,r0:2,r1:3,s0:4,s1:5,r2:6}) + let f5 = await si.entity('foo').save$({ f: 5 }) + expect(f5).toMatchObject({ f: 5, r0: 2, r1: 3, s0: 4, s1: 5, r2: 6 }) - si.message('sys:entity,cmd:save', async function(msg) { + si.message('sys:entity,cmd:save', async function (msg) { msg.ent.s2 = 7 return this.prior(msg) }) - let f6 = await si.entity('foo').save$({f:6}) - expect(f6).toMatchObject({f:6,r0:2,r1:3,s0:4,s1:5,r2:6,s2:7}) + let f6 = await si.entity('foo').save$({ f: 6 }) + expect(f6).toMatchObject({ f: 6, r0: 2, r1: 3, s0: 4, s1: 5, r2: 6, s2: 7 }) }) - }) function jj(x) {