@spytecgps/nova-orm 1.4.194 → 1.4.196
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/entities/retailProduct.js +1 -1
- package/dist/migration/_virtual/_virtual_multi-entry.js +2 -2
- package/dist/novaDataSource.js +1 -1
- package/dist/src/entities/retailProduct.d.ts +3 -0
- package/dist/test/utils/spanSubscriber.integration.test.d.ts +1 -0
- package/dist/test/utils/spanSubscriber.test.d.ts +1 -0
- package/package.json +1 -1
- package/schema.sql +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("../node_modules/tslib/tslib.es6.js"),t=require("typeorm"),a=require("../utils/uuidTransformer.js");exports.RetailProduct=class RetailProduct{id;clientId;upc;sku;name;brand;category;defaultZoneId;price;imageUrl;attributes;createdAt;updatedAt},e.__decorate([t.PrimaryColumn("binary",{name:"id",length:16,transformer:a.UUIDTransformer}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"id",void 0),e.__decorate([t.Column("int",{name:"clientId"}),e.__metadata("design:type",Number)],exports.RetailProduct.prototype,"clientId",void 0),e.__decorate([t.Column("varchar",{name:"upc",length:12}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"upc",void 0),e.__decorate([t.Column("varchar",{name:"sku",length:50}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"sku",void 0),e.__decorate([t.Column("varchar",{name:"name",length:100}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"name",void 0),e.__decorate([t.Column("varchar",{name:"brand",length:50}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"brand",void 0),e.__decorate([t.Column("varchar",{name:"category",length:50}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"category",void 0),e.__decorate([t.Column("binary",{name:"defaultZoneId",length:16,transformer:a.UUIDTransformer,nullable:!0}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"defaultZoneId",void 0),e.__decorate([t.Column("decimal",{name:"price",precision:19,scale:4}),e.__metadata("design:type",Number)],exports.RetailProduct.prototype,"price",void 0),e.__decorate([t.Column("varchar",{name:"imageUrl",length:255,nullable:!0}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"imageUrl",void 0),e.__decorate([t.Column("json",{name:"attributes",nullable:!0}),e.__metadata("design:type",Object)],exports.RetailProduct.prototype,"attributes",void 0),e.__decorate([t.CreateDateColumn({name:"createdAt"}),e.__metadata("design:type",Date)],exports.RetailProduct.prototype,"createdAt",void 0),e.__decorate([t.UpdateDateColumn({name:"updatedAt"}),e.__metadata("design:type",Date)],exports.RetailProduct.prototype,"updatedAt",void 0),exports.RetailProduct=e.__decorate([t.Index("ix_category",["category"],{}),t.Index("ix_clientId_upc",["clientId","upc"],{unique:!0}),t.Index("ix_clientId_brand_category",["clientId","brand","category"],{}),t.Entity("retailProduct",{schema:"nova"})],exports.RetailProduct);
|
|
1
|
+
"use strict";var e=require("../node_modules/tslib/tslib.es6.js"),t=require("typeorm"),a=require("../utils/uuidTransformer.js");exports.RetailProduct=class RetailProduct{id;clientId;upc;sku;name;brand;category;departmentTypeId;defaultZoneId;price;imageUrl;attributes;createdAt;updatedAt;departmentType},e.__decorate([t.PrimaryColumn("binary",{name:"id",length:16,transformer:a.UUIDTransformer}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"id",void 0),e.__decorate([t.Column("int",{name:"clientId"}),e.__metadata("design:type",Number)],exports.RetailProduct.prototype,"clientId",void 0),e.__decorate([t.Column("varchar",{name:"upc",length:12}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"upc",void 0),e.__decorate([t.Column("varchar",{name:"sku",length:50}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"sku",void 0),e.__decorate([t.Column("varchar",{name:"name",length:100}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"name",void 0),e.__decorate([t.Column("varchar",{name:"brand",length:50}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"brand",void 0),e.__decorate([t.Column("varchar",{name:"category",length:50}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"category",void 0),e.__decorate([t.Column("binary",{name:"departmentTypeId",length:16,transformer:a.UUIDTransformer,nullable:!0}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"departmentTypeId",void 0),e.__decorate([t.Column("binary",{name:"defaultZoneId",length:16,transformer:a.UUIDTransformer,nullable:!0}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"defaultZoneId",void 0),e.__decorate([t.Column("decimal",{name:"price",precision:19,scale:4}),e.__metadata("design:type",Number)],exports.RetailProduct.prototype,"price",void 0),e.__decorate([t.Column("varchar",{name:"imageUrl",length:255,nullable:!0}),e.__metadata("design:type",String)],exports.RetailProduct.prototype,"imageUrl",void 0),e.__decorate([t.Column("json",{name:"attributes",nullable:!0}),e.__metadata("design:type",Object)],exports.RetailProduct.prototype,"attributes",void 0),e.__decorate([t.CreateDateColumn({name:"createdAt"}),e.__metadata("design:type",Date)],exports.RetailProduct.prototype,"createdAt",void 0),e.__decorate([t.UpdateDateColumn({name:"updatedAt"}),e.__metadata("design:type",Date)],exports.RetailProduct.prototype,"updatedAt",void 0),exports.RetailProduct=e.__decorate([t.Index("ix_category",["category"],{}),t.Index("ix_clientId_upc",["clientId","upc"],{unique:!0}),t.Index("ix_clientId_brand_category",["clientId","brand","category"],{}),t.Entity("retailProduct",{schema:"nova"})],exports.RetailProduct);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var _1684483704434AddLowerCaseIndex = require('../1684483704434-addLowerCaseIndex.js');
|
|
4
3
|
var _1684483705002UpdateSecurityUserViewsV2 = require('../1684483705002-updateSecurityUserViewsV2.js');
|
|
5
4
|
var _1684483705001UpdateSecurityUserViewsV1 = require('../1684483705001-updateSecurityUserViewsV1.js');
|
|
5
|
+
var _1684483704434AddLowerCaseIndex = require('../1684483704434-addLowerCaseIndex.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
exports.addLowerCaseIndex1684483704434 = _1684483704434AddLowerCaseIndex.addLowerCaseIndex1684483704434;
|
|
10
9
|
exports.updateSecurityUserViewsV21684483705002 = _1684483705002UpdateSecurityUserViewsV2.updateSecurityUserViewsV21684483705002;
|
|
11
10
|
exports.updateSecurityUserViewsV11684483705001 = _1684483705001UpdateSecurityUserViewsV1.updateSecurityUserViewsV11684483705001;
|
|
11
|
+
exports.addLowerCaseIndex1684483704434 = _1684483704434AddLowerCaseIndex.addLowerCaseIndex1684483704434;
|
package/dist/novaDataSource.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("typeorm"),r=require("./entities/index.js"),t=require("./subscribers/index.js"),a=require("./utils/queryLogger.js"),i=require("./utils/spanSubscriber.js");require("fs"),require("mysql2/promise"),require("path"),require("./types/enums.js"),require("./types/logger.js"),require("./entities/retailAlertExternalRecipient.js"),require("./utils/dateTool.js");exports.NovaDataSource=class NovaDataSource{dataSource;logger;constructor(s,o
|
|
1
|
+
"use strict";var e=require("typeorm"),r=require("./entities/index.js"),t=require("./subscribers/index.js"),a=require("./utils/queryLogger.js"),i=require("./utils/spanSubscriber.js");require("fs"),require("mysql2/promise"),require("path"),require("./types/enums.js"),require("./types/logger.js"),require("./entities/retailAlertExternalRecipient.js"),require("./utils/dateTool.js");exports.NovaDataSource=class NovaDataSource{dataSource;logger;constructor(i,s,o){this.logger=s;const c=[];for(const e in r){const t=r[e];c.push(t)}const n=[];for(const e in t){const r=t[e];n.push(r)}const u={host:"aws.connect.psdb.cloud",port:3306,database:"nova",ssl:{rejectUnauthorized:!0}};this.dataSource=new e.DataSource({type:"mysql",connectorPackage:"mysql2",synchronize:!1,logging:!0,logger:new a.QueryLogger(this.logger,i.logging),entities:c,subscribers:n,migrations:["node_modules/@spytecgps/nova-orm/dist/migration/*.js"],supportBigNumbers:!0,bigNumberStrings:!1,extra:{decimalNumbers:!0},...u,...i,replication:{master:{...u,...i},slaves:o?[{...u,...o}]:[{...u,...i}],defaultMode:i.replicationMode??"master"}})}async connect(){if(this.dataSource.isInitialized||await this.dataSource.initialize(),!this.dataSource.subscribers.some((e=>e._spanSubscriber))){const e=i.createSpanSubscriber(this.logger);e._spanSubscriber=!0,this.dataSource.subscribers.push(e)}}async disconnect(){try{this.dataSource.isInitialized&&await this.dataSource.destroy()}catch(e){this.logger.error({error:e},"Failed to close connection to database")}}getRepository(e){return this.dataSource.getRepository(e)}async query(e,r){return this.dataSource.query(e,r,null)}async createQueryBuilder(e,r){return this.dataSource.createQueryBuilder(e,r,null)}createQueryRunner(e){return this.dataSource.createQueryRunner(e)}createQueryRunnerFromParams(e){const r=e?.queryOptions?.forceUseReplica?"slave":"master";return this.logger.trace({replicationMode:r},"Creating query runner with replication mode"),this.dataSource.createQueryRunner(r)}async safeQuery(e,r,t){try{await this.connect();return await e(this,t)}catch(e){throw this.logger.error({error:e},r?r+" ":"Error while executing query"),e}finally{t&&await t.release(),await this.disconnect()}}async safeQuery2(e,r,t){try{this.dataSource.isInitialized||(this.logger.info("nova-orm new connection"),await this.connect());return await e(this,t)}catch(e){throw this.logger.error({error:e},r?r+" ":"Error while executing query"),e}finally{t&&await t.release()}}async safeQuery3(e,r,t,{replicationMode:a,tag:i}={}){return(async()=>{let s;try{await this.connect(),a?(this.logger.trace({replicationMode:a},"Creating query runner with replication mode"),s=this.dataSource.createQueryRunner(a)):this.logger.trace({replicationMode:this.dataSource.defaultReplicationModeForReads},"Creating query builder with default replication mode for reads");const o=this.dataSource.createQueryBuilder(e,r,s);i&&o.comment(i);return await t(o)}catch(e){throw this.logger.error({error:e},i?i+" ":"Error while executing query"),e}finally{s&&await s.release()}})()}async syncSchema(e=!0){this.logger.warn("Initiating schema sync"),await this.connect(),await this.dataSource.synchronize(e),await this.dataSource.runMigrations()}async clearCache(){this.dataSource.queryResultCache?(this.logger.info("Clearing query result cache"),await this.dataSource.queryResultCache.clear()):this.logger.info("No query result cache to clear")}async invalidateCacheKey(e){this.dataSource.queryResultCache&&(this.logger.info("Invalidating cache key",{key:e}),await this.dataSource.queryResultCache.remove([e]))}};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RetailDepartmentType } from './retailDepartmentType';
|
|
1
2
|
export declare class RetailProduct {
|
|
2
3
|
id: string;
|
|
3
4
|
clientId: number;
|
|
@@ -6,10 +7,12 @@ export declare class RetailProduct {
|
|
|
6
7
|
name: string;
|
|
7
8
|
brand: string;
|
|
8
9
|
category: string;
|
|
10
|
+
departmentTypeId?: string | null;
|
|
9
11
|
defaultZoneId?: string | null;
|
|
10
12
|
price: number;
|
|
11
13
|
imageUrl?: string | null;
|
|
12
14
|
attributes?: Record<string, string> | null;
|
|
13
15
|
createdAt: Date;
|
|
14
16
|
updatedAt: Date;
|
|
17
|
+
departmentType?: RetailDepartmentType | null;
|
|
15
18
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
package/schema.sql
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
-- nova-orm-schema-checksum:
|
|
1
|
+
-- nova-orm-schema-checksum: bc5be4471bae92d78c503fcd34e8d0c7
|
|
2
2
|
-- Nova ORM Schema Dump
|
|
3
|
-
-- Generated at: 2026-03-
|
|
3
|
+
-- Generated at: 2026-03-09T06:57:23.727Z
|
|
4
4
|
|
|
5
5
|
SET FOREIGN_KEY_CHECKS = 0;
|
|
6
6
|
|
|
@@ -2689,6 +2689,7 @@ CREATE TABLE `retailProduct` (
|
|
|
2689
2689
|
`name` varchar(100) NOT NULL,
|
|
2690
2690
|
`brand` varchar(50) NOT NULL,
|
|
2691
2691
|
`category` varchar(50) NOT NULL,
|
|
2692
|
+
`departmentTypeId` binary(16) DEFAULT NULL,
|
|
2692
2693
|
`defaultZoneId` binary(16) DEFAULT NULL,
|
|
2693
2694
|
`price` decimal(19,4) NOT NULL,
|
|
2694
2695
|
`imageUrl` varchar(255) DEFAULT NULL,
|