vector-shared 1.16.5 → 1.16.7
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/constants/commercial-address.constants.d.ts +43 -0
- package/dist/constants/commercial-address.constants.js +131 -0
- package/dist/constants/commercial-address.constants.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/snapshot/customer-property.snapshot.d.ts +2 -1
- package/dist/utils/commercial-address.util.d.ts +8 -0
- package/dist/utils/commercial-address.util.js +48 -0
- package/dist/utils/commercial-address.util.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Currency, LanguageEnum, MultiLanguage } from '../common';
|
|
2
2
|
import { DealTypeEnum } from '../attributes';
|
|
3
|
-
import { NearestInfrastructureItem } from '../core/customer-property.type';
|
|
3
|
+
import { CustomerPropertyPriceChangeEntry, NearestInfrastructureItem } from '../core/customer-property.type';
|
|
4
4
|
import { RealtySubtypeEnum, RealtyTypeEnum, PropertyExclusiveStatusEnum, CustomerPropertyDuplicateStatusEnum, CustomerPropertyCadastralNumberDto } from '../customer-property';
|
|
5
5
|
import { CustomerPropertyOwner } from '../customer/customer-property-owner.type';
|
|
6
6
|
import { BaseSnapshot } from './base.snapshot';
|
|
@@ -81,6 +81,7 @@ export type CustomerPropertySnapshot = BaseSnapshot & {
|
|
|
81
81
|
cadastralNumber: CustomerPropertyCadastralNumberDto | null;
|
|
82
82
|
corps: string | null;
|
|
83
83
|
attributes: PropertyAttributeValue[];
|
|
84
|
+
priceChangeHistory?: CustomerPropertyPriceChangeEntry[] | null;
|
|
84
85
|
description: MultiLanguage;
|
|
85
86
|
seo: PropertySeo | null;
|
|
86
87
|
lng: number | null;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RealtyTypeEnum } from '../types';
|
|
2
|
+
import { CommercialAddressField, CommercialAddressGroup } from '../constants/commercial-address.constants';
|
|
3
|
+
export type CommercialAddressValues = Partial<Record<CommercialAddressField, unknown>>;
|
|
4
|
+
export declare const isAddressValueFilled: (value: unknown) => boolean;
|
|
5
|
+
export declare const getCommercialAddressGroup: (realtyType: RealtyTypeEnum | null | undefined, commercialObject: unknown) => CommercialAddressGroup | null;
|
|
6
|
+
export declare const isCommercialAddressFieldFilled: (field: CommercialAddressField, values: CommercialAddressValues) => boolean;
|
|
7
|
+
export declare const isCommercialAddressRequirementMet: (group: CommercialAddressGroup, values: CommercialAddressValues) => boolean;
|
|
8
|
+
export declare const getCommercialDuplicateFields: (group: CommercialAddressGroup, values: CommercialAddressValues) => CommercialAddressField[];
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCommercialDuplicateFields = exports.isCommercialAddressRequirementMet = exports.isCommercialAddressFieldFilled = exports.getCommercialAddressGroup = exports.isAddressValueFilled = void 0;
|
|
4
|
+
const types_1 = require("../types");
|
|
5
|
+
const commercial_address_constants_1 = require("../constants/commercial-address.constants");
|
|
6
|
+
const CADASTRAL_PARTS = ['koatuu', 'nkz', 'nkk', 'nzu'];
|
|
7
|
+
const getCadastralParts = (values) => {
|
|
8
|
+
const cadastralNumber = values[commercial_address_constants_1.CommercialAddressField.Cadastral];
|
|
9
|
+
return CADASTRAL_PARTS.map(part => cadastralNumber === null || cadastralNumber === void 0 ? void 0 : cadastralNumber[part]);
|
|
10
|
+
};
|
|
11
|
+
const isAddressValueFilled = (value) => {
|
|
12
|
+
if (typeof value === 'string')
|
|
13
|
+
return !['', '0'].includes(value.trim());
|
|
14
|
+
return value !== null && value !== undefined && value !== 0;
|
|
15
|
+
};
|
|
16
|
+
exports.isAddressValueFilled = isAddressValueFilled;
|
|
17
|
+
const getCommercialAddressGroup = (realtyType, commercialObject) => {
|
|
18
|
+
var _a;
|
|
19
|
+
if (realtyType === types_1.RealtyTypeEnum.Garage)
|
|
20
|
+
return commercial_address_constants_1.COMMERCIAL_ADDRESS_DEFAULT_GROUP;
|
|
21
|
+
if (realtyType !== types_1.RealtyTypeEnum.Commercial)
|
|
22
|
+
return null;
|
|
23
|
+
return ((_a = commercial_address_constants_1.COMMERCIAL_OBJECT_TO_ADDRESS_GROUP[Number(commercialObject)]) !== null && _a !== void 0 ? _a : commercial_address_constants_1.COMMERCIAL_ADDRESS_DEFAULT_GROUP);
|
|
24
|
+
};
|
|
25
|
+
exports.getCommercialAddressGroup = getCommercialAddressGroup;
|
|
26
|
+
const isCommercialAddressFieldFilled = (field, values) => {
|
|
27
|
+
if (field === commercial_address_constants_1.CommercialAddressField.Cadastral)
|
|
28
|
+
return getCadastralParts(values).every(exports.isAddressValueFilled);
|
|
29
|
+
return (0, exports.isAddressValueFilled)(values[field]);
|
|
30
|
+
};
|
|
31
|
+
exports.isCommercialAddressFieldFilled = isCommercialAddressFieldFilled;
|
|
32
|
+
const isCommercialAddressRequirementMet = (group, values) => group.requiredCombinations.some(combination => combination.every(field => (0, exports.isCommercialAddressFieldFilled)(field, values)));
|
|
33
|
+
exports.isCommercialAddressRequirementMet = isCommercialAddressRequirementMet;
|
|
34
|
+
const isCommercialAddressFieldTouched = (field, values) => {
|
|
35
|
+
if (field === commercial_address_constants_1.CommercialAddressField.Cadastral)
|
|
36
|
+
return getCadastralParts(values).some(exports.isAddressValueFilled);
|
|
37
|
+
return (0, exports.isAddressValueFilled)(values[field]);
|
|
38
|
+
};
|
|
39
|
+
const getCommercialDuplicateFields = (group, values) => {
|
|
40
|
+
var _a;
|
|
41
|
+
const fields = new Set();
|
|
42
|
+
((_a = group.duplicateFieldSets) !== null && _a !== void 0 ? _a : [])
|
|
43
|
+
.filter(fieldSet => fieldSet.some(field => isCommercialAddressFieldTouched(field, values)))
|
|
44
|
+
.forEach(fieldSet => fieldSet.forEach(field => fields.add(field)));
|
|
45
|
+
return Array.from(fields);
|
|
46
|
+
};
|
|
47
|
+
exports.getCommercialDuplicateFields = getCommercialDuplicateFields;
|
|
48
|
+
//# sourceMappingURL=commercial-address.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commercial-address.util.js","sourceRoot":"","sources":["../../utils/commercial-address.util.ts"],"names":[],"mappings":";;;AAAA,oCAA0C;AAC1C,4FAKmD;AAQnD,MAAM,eAAe,GAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAEzE,MAAM,iBAAiB,GAAG,CAAC,MAA+B,EAAa,EAAE;IACvE,MAAM,eAAe,GAAG,MAAM,CAAC,qDAAsB,CAAC,SAAS,CAGlD,CAAC;IAEd,OAAO,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAG,IAAI,CAAC,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEK,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAW,EAAE;IAC9D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAExE,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,CAAC,CAAC;AAC9D,CAAC,CAAC;AAJW,QAAA,oBAAoB,wBAI/B;AAEK,MAAM,yBAAyB,GAAG,CACvC,UAA6C,EAC7C,gBAAyB,EACM,EAAE;;IACjC,IAAI,UAAU,KAAK,sBAAc,CAAC,MAAM;QACtC,OAAO,+DAAgC,CAAC;IAE1C,IAAI,UAAU,KAAK,sBAAc,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAE1D,OAAO,CACL,MAAA,iEAAkC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,mCAC5D,+DAAgC,CACjC,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,yBAAyB,6BAapC;AAEK,MAAM,8BAA8B,GAAG,CAC5C,KAA6B,EAC7B,MAA+B,EACtB,EAAE;IACX,IAAI,KAAK,KAAK,qDAAsB,CAAC,SAAS;QAC5C,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC,CAAC;IAE/D,OAAO,IAAA,4BAAoB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC;AARW,QAAA,8BAA8B,kCAQzC;AAEK,MAAM,iCAAiC,GAAG,CAC/C,KAA6B,EAC7B,MAA+B,EACtB,EAAE,CACX,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAC5C,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAA,sCAA8B,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAC1E,CAAC;AANS,QAAA,iCAAiC,qCAM1C;AAEJ,MAAM,+BAA+B,GAAG,CACtC,KAA6B,EAC7B,MAA+B,EACtB,EAAE;IACX,IAAI,KAAK,KAAK,qDAAsB,CAAC,SAAS;QAC5C,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,4BAAoB,CAAC,CAAC;IAE9D,OAAO,IAAA,4BAAoB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEK,MAAM,4BAA4B,GAAG,CAC1C,KAA6B,EAC7B,MAA+B,EACL,EAAE;;IAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEjD,CAAC,MAAA,KAAK,CAAC,kBAAkB,mCAAI,EAAE,CAAC;SAC7B,MAAM,CAAC,QAAQ,CAAC,EAAE,CACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,+BAA+B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CACvE;SACA,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAErE,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC,CAAC;AAbW,QAAA,4BAA4B,gCAavC"}
|
package/dist/utils/index.d.ts
CHANGED
package/dist/utils/index.js
CHANGED
|
@@ -22,4 +22,5 @@ __exportStar(require("./permissions"), exports);
|
|
|
22
22
|
__exportStar(require("./permission-checker"), exports);
|
|
23
23
|
__exportStar(require("./user.utils"), exports);
|
|
24
24
|
__exportStar(require("./format-property-code.util"), exports);
|
|
25
|
+
__exportStar(require("./commercial-address.util"), exports);
|
|
25
26
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,6EAA2D;AAC3D,sDAAoC;AACpC,+CAA6B;AAC7B,gDAA8B;AAC9B,uDAAqC;AACrC,+CAA6B;AAC7B,8DAA4C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,6EAA2D;AAC3D,sDAAoC;AACpC,+CAA6B;AAC7B,gDAA8B;AAC9B,uDAAqC;AACrC,+CAA6B;AAC7B,8DAA4C;AAC5C,4DAA0C"}
|