@uniorganization/uni-lib 4.0.13 → 4.0.14
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/index.d.ts +1 -0
- package/dist/entities/index.js +1 -0
- package/dist/entities/service-center-distance-cache.entity.d.ts +17 -0
- package/dist/entities/service-center-distance-cache.entity.js +76 -0
- package/dist/modules/google-maps/google-maps.module.d.ts +2 -0
- package/dist/modules/google-maps/google-maps.module.js +24 -0
- package/dist/modules/google-maps/google-maps.service.d.ts +7 -0
- package/dist/modules/google-maps/google-maps.service.js +62 -0
- package/dist/modules/index.d.ts +2 -0
- package/dist/modules/index.js +2 -0
- package/package.json +4 -2
package/dist/entities/index.d.ts
CHANGED
package/dist/entities/index.js
CHANGED
|
@@ -98,3 +98,4 @@ __exportStar(require("./service-center.entity"), exports);
|
|
|
98
98
|
__exportStar(require("./service-center-interaction.entity"), exports);
|
|
99
99
|
__exportStar(require("./service-center-review.entity"), exports);
|
|
100
100
|
__exportStar(require("./service-center-phone.entity"), exports);
|
|
101
|
+
__exportStar(require("./service-center-distance-cache.entity"), exports);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ServiceCenterEntity } from './service-center.entity';
|
|
2
|
+
import { Users } from './usr.entity';
|
|
3
|
+
export declare class ServiceCenterDistanceCacheEntity {
|
|
4
|
+
id: number;
|
|
5
|
+
serviceCenterId: number;
|
|
6
|
+
serviceCenter: ServiceCenterEntity;
|
|
7
|
+
fullOriginalAddress: string;
|
|
8
|
+
street: string;
|
|
9
|
+
city: string;
|
|
10
|
+
state: string;
|
|
11
|
+
zipCode: string;
|
|
12
|
+
responseJson: Record<string, any>;
|
|
13
|
+
createdById: number;
|
|
14
|
+
createdBy: Users;
|
|
15
|
+
createdAt: Date;
|
|
16
|
+
updatedAt: Date;
|
|
17
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ServiceCenterDistanceCacheEntity = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const service_center_entity_1 = require("./service-center.entity");
|
|
15
|
+
const usr_entity_1 = require("./usr.entity");
|
|
16
|
+
let ServiceCenterDistanceCacheEntity = class ServiceCenterDistanceCacheEntity {
|
|
17
|
+
};
|
|
18
|
+
exports.ServiceCenterDistanceCacheEntity = ServiceCenterDistanceCacheEntity;
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, typeorm_1.PrimaryGeneratedColumn)(),
|
|
21
|
+
__metadata("design:type", Number)
|
|
22
|
+
], ServiceCenterDistanceCacheEntity.prototype, "id", void 0);
|
|
23
|
+
__decorate([
|
|
24
|
+
(0, typeorm_1.Column)({ name: 'service_center_id', type: 'integer', nullable: false }),
|
|
25
|
+
__metadata("design:type", Number)
|
|
26
|
+
], ServiceCenterDistanceCacheEntity.prototype, "serviceCenterId", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, typeorm_1.ManyToOne)(() => service_center_entity_1.ServiceCenterEntity),
|
|
29
|
+
(0, typeorm_1.JoinColumn)({ name: 'service_center_id' }),
|
|
30
|
+
__metadata("design:type", service_center_entity_1.ServiceCenterEntity)
|
|
31
|
+
], ServiceCenterDistanceCacheEntity.prototype, "serviceCenter", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
(0, typeorm_1.Column)({ name: 'full_original_address', type: 'text', nullable: false }),
|
|
34
|
+
__metadata("design:type", String)
|
|
35
|
+
], ServiceCenterDistanceCacheEntity.prototype, "fullOriginalAddress", void 0);
|
|
36
|
+
__decorate([
|
|
37
|
+
(0, typeorm_1.Column)({ name: 'street', type: 'varchar', length: 255, nullable: true }),
|
|
38
|
+
__metadata("design:type", String)
|
|
39
|
+
], ServiceCenterDistanceCacheEntity.prototype, "street", void 0);
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, typeorm_1.Column)({ name: 'city', type: 'varchar', length: 100, nullable: true }),
|
|
42
|
+
__metadata("design:type", String)
|
|
43
|
+
], ServiceCenterDistanceCacheEntity.prototype, "city", void 0);
|
|
44
|
+
__decorate([
|
|
45
|
+
(0, typeorm_1.Column)({ name: 'state', type: 'varchar', length: 100, nullable: true }),
|
|
46
|
+
__metadata("design:type", String)
|
|
47
|
+
], ServiceCenterDistanceCacheEntity.prototype, "state", void 0);
|
|
48
|
+
__decorate([
|
|
49
|
+
(0, typeorm_1.Column)({ name: 'zip_code', type: 'varchar', length: 20, nullable: true }),
|
|
50
|
+
__metadata("design:type", String)
|
|
51
|
+
], ServiceCenterDistanceCacheEntity.prototype, "zipCode", void 0);
|
|
52
|
+
__decorate([
|
|
53
|
+
(0, typeorm_1.Column)({ name: 'response_json', type: 'jsonb', nullable: false }),
|
|
54
|
+
__metadata("design:type", Object)
|
|
55
|
+
], ServiceCenterDistanceCacheEntity.prototype, "responseJson", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
(0, typeorm_1.Column)({ name: 'created_by_id', type: 'integer', nullable: true }),
|
|
58
|
+
__metadata("design:type", Number)
|
|
59
|
+
], ServiceCenterDistanceCacheEntity.prototype, "createdById", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, typeorm_1.ManyToOne)(() => usr_entity_1.Users),
|
|
62
|
+
(0, typeorm_1.JoinColumn)({ name: 'created_by_id' }),
|
|
63
|
+
__metadata("design:type", usr_entity_1.Users)
|
|
64
|
+
], ServiceCenterDistanceCacheEntity.prototype, "createdBy", void 0);
|
|
65
|
+
__decorate([
|
|
66
|
+
(0, typeorm_1.CreateDateColumn)({ name: 'created_at', type: 'timestamptz' }),
|
|
67
|
+
__metadata("design:type", Date)
|
|
68
|
+
], ServiceCenterDistanceCacheEntity.prototype, "createdAt", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, typeorm_1.UpdateDateColumn)({ name: 'updated_at', type: 'timestamptz' }),
|
|
71
|
+
__metadata("design:type", Date)
|
|
72
|
+
], ServiceCenterDistanceCacheEntity.prototype, "updatedAt", void 0);
|
|
73
|
+
exports.ServiceCenterDistanceCacheEntity = ServiceCenterDistanceCacheEntity = __decorate([
|
|
74
|
+
(0, typeorm_1.Entity)('service_center_distance_cache', { schema: 'enr' }),
|
|
75
|
+
(0, typeorm_1.Index)(['serviceCenterId', 'fullOriginalAddress'])
|
|
76
|
+
], ServiceCenterDistanceCacheEntity);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.GoogleMapsModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const google_maps_service_1 = require("./google-maps.service");
|
|
12
|
+
const axios_1 = require("@nestjs/axios");
|
|
13
|
+
let GoogleMapsModule = class GoogleMapsModule {
|
|
14
|
+
};
|
|
15
|
+
exports.GoogleMapsModule = GoogleMapsModule;
|
|
16
|
+
exports.GoogleMapsModule = GoogleMapsModule = __decorate([
|
|
17
|
+
(0, common_1.Module)({
|
|
18
|
+
imports: [
|
|
19
|
+
axios_1.HttpModule,
|
|
20
|
+
],
|
|
21
|
+
providers: [google_maps_service_1.GoogleMapsService],
|
|
22
|
+
exports: [google_maps_service_1.GoogleMapsService],
|
|
23
|
+
})
|
|
24
|
+
], GoogleMapsModule);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DistanceMatrixResponseData } from '@googlemaps/google-maps-services-js';
|
|
2
|
+
export declare class GoogleMapsService {
|
|
3
|
+
private client;
|
|
4
|
+
private readonly logger;
|
|
5
|
+
constructor();
|
|
6
|
+
getDistanceMatrix(origin: string, destination: string): Promise<DistanceMatrixResponseData>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
12
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
13
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
14
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
15
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
16
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
17
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
18
|
+
});
|
|
19
|
+
};
|
|
20
|
+
var GoogleMapsService_1;
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.GoogleMapsService = void 0;
|
|
23
|
+
const common_1 = require("@nestjs/common");
|
|
24
|
+
const google_maps_services_js_1 = require("@googlemaps/google-maps-services-js");
|
|
25
|
+
let GoogleMapsService = GoogleMapsService_1 = class GoogleMapsService {
|
|
26
|
+
constructor() {
|
|
27
|
+
this.logger = new common_1.Logger(GoogleMapsService_1.name);
|
|
28
|
+
this.client = new google_maps_services_js_1.Client({});
|
|
29
|
+
}
|
|
30
|
+
getDistanceMatrix(origin, destination) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const apiKey = process.env.GOOGLE_MAPS_API_KEY;
|
|
33
|
+
if (!apiKey) {
|
|
34
|
+
this.logger.error('GOOGLE_MAPS_API_KEY is not defined');
|
|
35
|
+
throw new Error('Google Maps API configuration missing');
|
|
36
|
+
}
|
|
37
|
+
try {
|
|
38
|
+
const response = yield this.client.distancematrix({
|
|
39
|
+
params: {
|
|
40
|
+
origins: [origin],
|
|
41
|
+
destinations: [destination],
|
|
42
|
+
key: apiKey,
|
|
43
|
+
units: google_maps_services_js_1.UnitSystem.imperial,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
if (response.status !== 200) {
|
|
47
|
+
throw new Error(`Google Maps API returned status ${response.status}: ${response.data.error_message || ''}`);
|
|
48
|
+
}
|
|
49
|
+
return response.data;
|
|
50
|
+
}
|
|
51
|
+
catch (e) {
|
|
52
|
+
this.logger.error(`Google Maps API Error: ${e.message}`, e.stack);
|
|
53
|
+
throw e;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
exports.GoogleMapsService = GoogleMapsService;
|
|
59
|
+
exports.GoogleMapsService = GoogleMapsService = GoogleMapsService_1 = __decorate([
|
|
60
|
+
(0, common_1.Injectable)(),
|
|
61
|
+
__metadata("design:paramtypes", [])
|
|
62
|
+
], GoogleMapsService);
|
package/dist/modules/index.d.ts
CHANGED
package/dist/modules/index.js
CHANGED
|
@@ -16,3 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./common"), exports);
|
|
18
18
|
__exportStar(require("./encryption"), exports);
|
|
19
|
+
__exportStar(require("./google-maps/google-maps.module"), exports);
|
|
20
|
+
__exportStar(require("./google-maps/google-maps.service"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uniorganization/uni-lib",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.14",
|
|
4
4
|
"description": "UNI Library",
|
|
5
5
|
"author": "Jhomiguel",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -21,12 +21,14 @@
|
|
|
21
21
|
"test:e2e": "jest --config ./test/jest-e2e.json"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
+
"@googlemaps/google-maps-services-js": "^3.4.2",
|
|
24
25
|
"@nestjs/axios": "3.0.3",
|
|
25
|
-
"@nestjs/jwt": "^10.2.0",
|
|
26
26
|
"@nestjs/common": "^10.4.1",
|
|
27
27
|
"@nestjs/core": "^10.4.1",
|
|
28
|
+
"@nestjs/jwt": "^10.2.0",
|
|
28
29
|
"@nestjs/passport": "^10.0.3",
|
|
29
30
|
"@nestjs/swagger": "^7.4.0",
|
|
31
|
+
"axios": "^1.13.2",
|
|
30
32
|
"csvtojson": "^2.0.10",
|
|
31
33
|
"passport": "^0.7.0",
|
|
32
34
|
"passport-jwt": "^4.0.1",
|