ecotransac-shared-js 1.1.17 → 1.1.19
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.d.mts +4 -9
- package/dist/index.d.ts +4 -9
- package/dist/index.js +79 -48
- package/dist/index.mjs +79 -47
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -913,7 +913,7 @@ type Field<T> = {
|
|
|
913
913
|
className?: string;
|
|
914
914
|
};
|
|
915
915
|
};
|
|
916
|
-
type FieldType = "text" | "number" | "select" | "textarea" | "radio" | "date" | "country" | "switch" | "propertyType" | "grade" | "year";
|
|
916
|
+
type FieldType = "text" | "number" | "select" | "textarea" | "radio" | "date" | "country" | "switch" | "propertyType" | "grade" | "year" | "exclusivity";
|
|
917
917
|
type State = {
|
|
918
918
|
[key: string]: boolean;
|
|
919
919
|
};
|
|
@@ -924,16 +924,11 @@ type SelectOption = {
|
|
|
924
924
|
};
|
|
925
925
|
|
|
926
926
|
declare const shouldRender: (state: State, condition?: Condition) => boolean;
|
|
927
|
-
declare const getFieldValues: <D>(fields: Field<D>[], propertyState: State, data: Partial<D>) => ({
|
|
928
|
-
label: string;
|
|
929
|
-
value: string;
|
|
930
|
-
isNotDefined: boolean;
|
|
931
|
-
} | null)[];
|
|
932
927
|
type GetValueProps = {
|
|
933
928
|
value: unknown;
|
|
934
929
|
name: string;
|
|
935
|
-
|
|
936
|
-
|
|
930
|
+
options?: SelectOption[];
|
|
931
|
+
suffix?: string;
|
|
937
932
|
};
|
|
938
933
|
declare const getValue: (params: GetValueProps) => string | null;
|
|
939
934
|
|
|
@@ -1025,4 +1020,4 @@ declare const MANDATE_EXCLUSIVITY: {
|
|
|
1025
1020
|
label: string;
|
|
1026
1021
|
}[];
|
|
1027
1022
|
|
|
1028
|
-
export { COMPANY_INFO, CONDITIONS, COUNTRIES, type Condition, ESTATE_CONDITION, EXPOSURES, type Field, GENDER, HEATING_ENERGY, IDENTIFICATION_DOCUMENTS, KITCHEN_TYPE, LEASE_ESTABLISHMENT, LEASE_TRANSFERT_PERMISSIONS, LEGAL_NATURE, MANDATE_EXCLUSIVITY, MARITAL_STATUS, PRENUP_TYPES, SHARING_CONFIGURATION, STANDINGS, type SelectOption, type State, VIEWS, and, featuresFormFields, formatAddress, formatAgentLegalData, formatDate, formatMandateNumber, formatNumber, formatPhone, formatPrice, formatSeconds, getAgencyFees, getFeesPercentage,
|
|
1023
|
+
export { COMPANY_INFO, CONDITIONS, COUNTRIES, type Condition, ESTATE_CONDITION, EXPOSURES, type Field, GENDER, HEATING_ENERGY, IDENTIFICATION_DOCUMENTS, KITCHEN_TYPE, LEASE_ESTABLISHMENT, LEASE_TRANSFERT_PERMISSIONS, LEGAL_NATURE, MANDATE_EXCLUSIVITY, MARITAL_STATUS, PRENUP_TYPES, SHARING_CONFIGURATION, STANDINGS, type SelectOption, type State, VIEWS, and, featuresFormFields, formatAddress, formatAgentLegalData, formatDate, formatMandateNumber, formatNumber, formatPhone, formatPrice, formatSeconds, getAgencyFees, getFeesPercentage, getLabel, getLowThreshold, getNetPrice, getPropertyState, getPropertyTitle, getValue, mandateFormFields, not, only, or, propertyFields, shouldRender, surfacesFormFields, technicalFormFields };
|
package/dist/index.d.ts
CHANGED
|
@@ -913,7 +913,7 @@ type Field<T> = {
|
|
|
913
913
|
className?: string;
|
|
914
914
|
};
|
|
915
915
|
};
|
|
916
|
-
type FieldType = "text" | "number" | "select" | "textarea" | "radio" | "date" | "country" | "switch" | "propertyType" | "grade" | "year";
|
|
916
|
+
type FieldType = "text" | "number" | "select" | "textarea" | "radio" | "date" | "country" | "switch" | "propertyType" | "grade" | "year" | "exclusivity";
|
|
917
917
|
type State = {
|
|
918
918
|
[key: string]: boolean;
|
|
919
919
|
};
|
|
@@ -924,16 +924,11 @@ type SelectOption = {
|
|
|
924
924
|
};
|
|
925
925
|
|
|
926
926
|
declare const shouldRender: (state: State, condition?: Condition) => boolean;
|
|
927
|
-
declare const getFieldValues: <D>(fields: Field<D>[], propertyState: State, data: Partial<D>) => ({
|
|
928
|
-
label: string;
|
|
929
|
-
value: string;
|
|
930
|
-
isNotDefined: boolean;
|
|
931
|
-
} | null)[];
|
|
932
927
|
type GetValueProps = {
|
|
933
928
|
value: unknown;
|
|
934
929
|
name: string;
|
|
935
|
-
|
|
936
|
-
|
|
930
|
+
options?: SelectOption[];
|
|
931
|
+
suffix?: string;
|
|
937
932
|
};
|
|
938
933
|
declare const getValue: (params: GetValueProps) => string | null;
|
|
939
934
|
|
|
@@ -1025,4 +1020,4 @@ declare const MANDATE_EXCLUSIVITY: {
|
|
|
1025
1020
|
label: string;
|
|
1026
1021
|
}[];
|
|
1027
1022
|
|
|
1028
|
-
export { COMPANY_INFO, CONDITIONS, COUNTRIES, type Condition, ESTATE_CONDITION, EXPOSURES, type Field, GENDER, HEATING_ENERGY, IDENTIFICATION_DOCUMENTS, KITCHEN_TYPE, LEASE_ESTABLISHMENT, LEASE_TRANSFERT_PERMISSIONS, LEGAL_NATURE, MANDATE_EXCLUSIVITY, MARITAL_STATUS, PRENUP_TYPES, SHARING_CONFIGURATION, STANDINGS, type SelectOption, type State, VIEWS, and, featuresFormFields, formatAddress, formatAgentLegalData, formatDate, formatMandateNumber, formatNumber, formatPhone, formatPrice, formatSeconds, getAgencyFees, getFeesPercentage,
|
|
1023
|
+
export { COMPANY_INFO, CONDITIONS, COUNTRIES, type Condition, ESTATE_CONDITION, EXPOSURES, type Field, GENDER, HEATING_ENERGY, IDENTIFICATION_DOCUMENTS, KITCHEN_TYPE, LEASE_ESTABLISHMENT, LEASE_TRANSFERT_PERMISSIONS, LEGAL_NATURE, MANDATE_EXCLUSIVITY, MARITAL_STATUS, PRENUP_TYPES, SHARING_CONFIGURATION, STANDINGS, type SelectOption, type State, VIEWS, and, featuresFormFields, formatAddress, formatAgentLegalData, formatDate, formatMandateNumber, formatNumber, formatPhone, formatPrice, formatSeconds, getAgencyFees, getFeesPercentage, getLabel, getLowThreshold, getNetPrice, getPropertyState, getPropertyTitle, getValue, mandateFormFields, not, only, or, propertyFields, shouldRender, surfacesFormFields, technicalFormFields };
|
package/dist/index.js
CHANGED
|
@@ -60,7 +60,6 @@ __export(src_exports, {
|
|
|
60
60
|
formatSeconds: () => formatSeconds,
|
|
61
61
|
getAgencyFees: () => getAgencyFees,
|
|
62
62
|
getFeesPercentage: () => getFeesPercentage,
|
|
63
|
-
getFieldValues: () => getFieldValues,
|
|
64
63
|
getLabel: () => getLabel,
|
|
65
64
|
getLowThreshold: () => getLowThreshold,
|
|
66
65
|
getNetPrice: () => getNetPrice,
|
|
@@ -455,29 +454,9 @@ var shouldRender = (state, condition) => {
|
|
|
455
454
|
if (!condition) return true;
|
|
456
455
|
return condition(state);
|
|
457
456
|
};
|
|
458
|
-
var getFieldValues = (fields, propertyState, data) => fields.map((field) => {
|
|
459
|
-
var _a;
|
|
460
|
-
const shouldDisplay = shouldRender(propertyState, field.condition);
|
|
461
|
-
if (!shouldDisplay) return null;
|
|
462
|
-
const { label, props } = field;
|
|
463
|
-
const name = field.name;
|
|
464
|
-
const isCurrency = ((_a = props == null ? void 0 : props.suffix) == null ? void 0 : _a.startsWith("\u20AC")) || false;
|
|
465
|
-
const dataValue = getValue({
|
|
466
|
-
value: data[name],
|
|
467
|
-
name,
|
|
468
|
-
isCurrency,
|
|
469
|
-
options: props == null ? void 0 : props.options
|
|
470
|
-
});
|
|
471
|
-
const suffix = isCurrency ? "" : (props == null ? void 0 : props.suffix) || "";
|
|
472
|
-
return {
|
|
473
|
-
label,
|
|
474
|
-
value: dataValue ? `${String(dataValue)} ${suffix}` : "N/A",
|
|
475
|
-
isNotDefined: dataValue === null
|
|
476
|
-
};
|
|
477
|
-
});
|
|
478
457
|
var getValue = (params) => {
|
|
479
458
|
var _a, _b;
|
|
480
|
-
const { value, name,
|
|
459
|
+
const { value, name, suffix, options } = params;
|
|
481
460
|
if ((name == null ? void 0 : name.endsWith("Year")) && value instanceof Date)
|
|
482
461
|
return value.getFullYear().toString();
|
|
483
462
|
if (value instanceof Date) return formatDate(value);
|
|
@@ -489,8 +468,10 @@ var getValue = (params) => {
|
|
|
489
468
|
value
|
|
490
469
|
);
|
|
491
470
|
if (options) return ((_b = options.find((o) => o.value === value)) == null ? void 0 : _b.label) || null;
|
|
471
|
+
const isCurrency = (suffix == null ? void 0 : suffix.startsWith("\u20AC")) || false;
|
|
492
472
|
if (isCurrency) return formatPrice(value);
|
|
493
|
-
|
|
473
|
+
if (value && suffix) return `${String(value)} ${suffix}`;
|
|
474
|
+
return String(value) || null;
|
|
494
475
|
};
|
|
495
476
|
var isAddress = (value) => typeof value === "object" && value !== null && "address" in value && "postalCode" in value && "locality" in value;
|
|
496
477
|
|
|
@@ -929,7 +910,14 @@ var technicalFormFields = [
|
|
|
929
910
|
name: "isDpeCompleted",
|
|
930
911
|
fieldType: "radio",
|
|
931
912
|
label: "DPE r\xE9alis\xE9",
|
|
932
|
-
condition: and(not("isParking"), not("isLand")),
|
|
913
|
+
condition: and(not("isParking"), not("isLand"), not("isBuilding")),
|
|
914
|
+
requiredFor: ["DIFFUSION" /* Diffusion */]
|
|
915
|
+
},
|
|
916
|
+
{
|
|
917
|
+
name: "isDpeCompleted",
|
|
918
|
+
fieldType: "radio",
|
|
919
|
+
label: "DPE collectif r\xE9alis\xE9",
|
|
920
|
+
condition: only("isBuilding"),
|
|
933
921
|
requiredFor: ["DIFFUSION" /* Diffusion */]
|
|
934
922
|
},
|
|
935
923
|
{
|
|
@@ -1084,11 +1072,20 @@ var surfacesFormFields = [
|
|
|
1084
1072
|
condition: and(
|
|
1085
1073
|
not("isLand"),
|
|
1086
1074
|
not("isParking"),
|
|
1087
|
-
not("isForProfessionalUse")
|
|
1075
|
+
not("isForProfessionalUse"),
|
|
1076
|
+
not("isBuilding")
|
|
1088
1077
|
),
|
|
1089
1078
|
props: { suffix: "m\xB2" },
|
|
1090
1079
|
requiredFor: ["MANDATE_CREATION" /* MandateCreation */]
|
|
1091
1080
|
},
|
|
1081
|
+
{
|
|
1082
|
+
name: "carrezLawArea",
|
|
1083
|
+
fieldType: "number",
|
|
1084
|
+
label: "Surface loi Carrez totale de l'immeuble",
|
|
1085
|
+
condition: only("isBuilding"),
|
|
1086
|
+
props: { suffix: "m\xB2" },
|
|
1087
|
+
requiredFor: ["MANDATE_CREATION" /* MandateCreation */]
|
|
1088
|
+
},
|
|
1092
1089
|
{
|
|
1093
1090
|
name: "landArea",
|
|
1094
1091
|
fieldType: "number",
|
|
@@ -1101,17 +1098,34 @@ var surfacesFormFields = [
|
|
|
1101
1098
|
name: "roomCount",
|
|
1102
1099
|
fieldType: "number",
|
|
1103
1100
|
label: "Nombre de pi\xE8ce(s)",
|
|
1104
|
-
condition: and(
|
|
1101
|
+
condition: and(
|
|
1102
|
+
not("isLand"),
|
|
1103
|
+
not("isParking"),
|
|
1104
|
+
not("isBuilding"),
|
|
1105
|
+
not("isForProfessionalUse")
|
|
1106
|
+
),
|
|
1105
1107
|
props: {
|
|
1106
1108
|
suffix: "pi\xE8ce(s)",
|
|
1107
1109
|
tooltip: "Inclure seulement : la pi\xE8ce principale + les chambres. Exemple : appartement 3 pi\xE8ces : un s\xE9jour, 2 chambres."
|
|
1108
|
-
// TODO: isForProfessionalUse
|
|
1109
|
-
// Inclure les surfaces utiles.
|
|
1110
|
-
// <br />
|
|
1111
|
-
// Exemple : plateau de 10 bureaux, 1 salle de réunion, une cuisine = 12
|
|
1112
|
-
// pièces.
|
|
1113
1110
|
}
|
|
1114
1111
|
},
|
|
1112
|
+
{
|
|
1113
|
+
name: "roomCount",
|
|
1114
|
+
fieldType: "number",
|
|
1115
|
+
label: "Nombre de pi\xE8ce(s)",
|
|
1116
|
+
condition: only("isForProfessionalUse"),
|
|
1117
|
+
props: {
|
|
1118
|
+
suffix: "pi\xE8ce(s)",
|
|
1119
|
+
tooltip: "Inclure les surfaces utiles. Exemple : plateau de 10 bureaux, 1 salle de r\xE9union, une cuisine = 12 pi\xE8ces."
|
|
1120
|
+
}
|
|
1121
|
+
},
|
|
1122
|
+
{
|
|
1123
|
+
name: "roomCount",
|
|
1124
|
+
fieldType: "number",
|
|
1125
|
+
label: "Nombre de logement(s)",
|
|
1126
|
+
condition: only("isBuilding"),
|
|
1127
|
+
props: { suffix: "logement(s)" }
|
|
1128
|
+
},
|
|
1115
1129
|
{
|
|
1116
1130
|
name: "bathroomsCount",
|
|
1117
1131
|
fieldType: "number",
|
|
@@ -1359,8 +1373,30 @@ var PRENUP_TYPES = [
|
|
|
1359
1373
|
}
|
|
1360
1374
|
];
|
|
1361
1375
|
|
|
1376
|
+
// src/static/mandate-select-options.ts
|
|
1377
|
+
var MANDATE_EXCLUSIVITY = [
|
|
1378
|
+
{
|
|
1379
|
+
value: "EXCLUSIVE" /* Exclusive */,
|
|
1380
|
+
label: "Mandat exclusif"
|
|
1381
|
+
},
|
|
1382
|
+
{
|
|
1383
|
+
value: "SEMI_EXCLUSIVE" /* SemiExclusive */,
|
|
1384
|
+
label: "Mandat semi-exclusif"
|
|
1385
|
+
},
|
|
1386
|
+
{
|
|
1387
|
+
value: "SIMPLE" /* Simple */,
|
|
1388
|
+
label: "Mandat simple"
|
|
1389
|
+
}
|
|
1390
|
+
];
|
|
1391
|
+
|
|
1362
1392
|
// src/static/mandate-fields.ts
|
|
1363
1393
|
var mandateFormFields = [
|
|
1394
|
+
{
|
|
1395
|
+
name: "exclusivity",
|
|
1396
|
+
fieldType: "exclusivity",
|
|
1397
|
+
label: "Exclusivit\xE9",
|
|
1398
|
+
props: { options: MANDATE_EXCLUSIVITY }
|
|
1399
|
+
},
|
|
1364
1400
|
{
|
|
1365
1401
|
name: "businessAssetsPrice",
|
|
1366
1402
|
fieldType: "number",
|
|
@@ -1477,6 +1513,18 @@ var mandateFormFields = [
|
|
|
1477
1513
|
requiredFor: ["MANDATE_CREATION" /* MandateCreation */],
|
|
1478
1514
|
condition: only("isForProfessionalUse")
|
|
1479
1515
|
},
|
|
1516
|
+
{
|
|
1517
|
+
fieldType: "text",
|
|
1518
|
+
name: "notaryNameAndCity",
|
|
1519
|
+
label: "Nom et ville du notaire d\xE9tenteur du titre de propri\xE9t\xE9",
|
|
1520
|
+
condition: not("isForProfessionalUse")
|
|
1521
|
+
},
|
|
1522
|
+
{
|
|
1523
|
+
fieldType: "text",
|
|
1524
|
+
name: "notaryNameAndCity",
|
|
1525
|
+
label: "Coordonn\xE9es du professionnel en charge de la cession",
|
|
1526
|
+
condition: only("isForProfessionalUse")
|
|
1527
|
+
},
|
|
1480
1528
|
{
|
|
1481
1529
|
name: "specialConditions",
|
|
1482
1530
|
fieldType: "textarea",
|
|
@@ -1486,22 +1534,6 @@ var mandateFormFields = [
|
|
|
1486
1534
|
props: { className: "md:col-span-2", placeholder: "Aucune" }
|
|
1487
1535
|
}
|
|
1488
1536
|
];
|
|
1489
|
-
|
|
1490
|
-
// src/static/mandate-select-options.ts
|
|
1491
|
-
var MANDATE_EXCLUSIVITY = [
|
|
1492
|
-
{
|
|
1493
|
-
value: "EXCLUSIVE" /* Exclusive */,
|
|
1494
|
-
label: "Mandat exclusif"
|
|
1495
|
-
},
|
|
1496
|
-
{
|
|
1497
|
-
value: "SEMI_EXCLUSIVE" /* SemiExclusive */,
|
|
1498
|
-
label: "Mandat semi-exclusif"
|
|
1499
|
-
},
|
|
1500
|
-
{
|
|
1501
|
-
value: "SIMPLE" /* Simple */,
|
|
1502
|
-
label: "Mandat simple"
|
|
1503
|
-
}
|
|
1504
|
-
];
|
|
1505
1537
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1506
1538
|
0 && (module.exports = {
|
|
1507
1539
|
COMPANY_INFO,
|
|
@@ -1534,7 +1566,6 @@ var MANDATE_EXCLUSIVITY = [
|
|
|
1534
1566
|
formatSeconds,
|
|
1535
1567
|
getAgencyFees,
|
|
1536
1568
|
getFeesPercentage,
|
|
1537
|
-
getFieldValues,
|
|
1538
1569
|
getLabel,
|
|
1539
1570
|
getLowThreshold,
|
|
1540
1571
|
getNetPrice,
|
package/dist/index.mjs
CHANGED
|
@@ -375,29 +375,9 @@ var shouldRender = (state, condition) => {
|
|
|
375
375
|
if (!condition) return true;
|
|
376
376
|
return condition(state);
|
|
377
377
|
};
|
|
378
|
-
var getFieldValues = (fields, propertyState, data) => fields.map((field) => {
|
|
379
|
-
var _a;
|
|
380
|
-
const shouldDisplay = shouldRender(propertyState, field.condition);
|
|
381
|
-
if (!shouldDisplay) return null;
|
|
382
|
-
const { label, props } = field;
|
|
383
|
-
const name = field.name;
|
|
384
|
-
const isCurrency = ((_a = props == null ? void 0 : props.suffix) == null ? void 0 : _a.startsWith("\u20AC")) || false;
|
|
385
|
-
const dataValue = getValue({
|
|
386
|
-
value: data[name],
|
|
387
|
-
name,
|
|
388
|
-
isCurrency,
|
|
389
|
-
options: props == null ? void 0 : props.options
|
|
390
|
-
});
|
|
391
|
-
const suffix = isCurrency ? "" : (props == null ? void 0 : props.suffix) || "";
|
|
392
|
-
return {
|
|
393
|
-
label,
|
|
394
|
-
value: dataValue ? `${String(dataValue)} ${suffix}` : "N/A",
|
|
395
|
-
isNotDefined: dataValue === null
|
|
396
|
-
};
|
|
397
|
-
});
|
|
398
378
|
var getValue = (params) => {
|
|
399
379
|
var _a, _b;
|
|
400
|
-
const { value, name,
|
|
380
|
+
const { value, name, suffix, options } = params;
|
|
401
381
|
if ((name == null ? void 0 : name.endsWith("Year")) && value instanceof Date)
|
|
402
382
|
return value.getFullYear().toString();
|
|
403
383
|
if (value instanceof Date) return formatDate(value);
|
|
@@ -409,8 +389,10 @@ var getValue = (params) => {
|
|
|
409
389
|
value
|
|
410
390
|
);
|
|
411
391
|
if (options) return ((_b = options.find((o) => o.value === value)) == null ? void 0 : _b.label) || null;
|
|
392
|
+
const isCurrency = (suffix == null ? void 0 : suffix.startsWith("\u20AC")) || false;
|
|
412
393
|
if (isCurrency) return formatPrice(value);
|
|
413
|
-
|
|
394
|
+
if (value && suffix) return `${String(value)} ${suffix}`;
|
|
395
|
+
return String(value) || null;
|
|
414
396
|
};
|
|
415
397
|
var isAddress = (value) => typeof value === "object" && value !== null && "address" in value && "postalCode" in value && "locality" in value;
|
|
416
398
|
|
|
@@ -849,7 +831,14 @@ var technicalFormFields = [
|
|
|
849
831
|
name: "isDpeCompleted",
|
|
850
832
|
fieldType: "radio",
|
|
851
833
|
label: "DPE r\xE9alis\xE9",
|
|
852
|
-
condition: and(not("isParking"), not("isLand")),
|
|
834
|
+
condition: and(not("isParking"), not("isLand"), not("isBuilding")),
|
|
835
|
+
requiredFor: ["DIFFUSION" /* Diffusion */]
|
|
836
|
+
},
|
|
837
|
+
{
|
|
838
|
+
name: "isDpeCompleted",
|
|
839
|
+
fieldType: "radio",
|
|
840
|
+
label: "DPE collectif r\xE9alis\xE9",
|
|
841
|
+
condition: only("isBuilding"),
|
|
853
842
|
requiredFor: ["DIFFUSION" /* Diffusion */]
|
|
854
843
|
},
|
|
855
844
|
{
|
|
@@ -1004,11 +993,20 @@ var surfacesFormFields = [
|
|
|
1004
993
|
condition: and(
|
|
1005
994
|
not("isLand"),
|
|
1006
995
|
not("isParking"),
|
|
1007
|
-
not("isForProfessionalUse")
|
|
996
|
+
not("isForProfessionalUse"),
|
|
997
|
+
not("isBuilding")
|
|
1008
998
|
),
|
|
1009
999
|
props: { suffix: "m\xB2" },
|
|
1010
1000
|
requiredFor: ["MANDATE_CREATION" /* MandateCreation */]
|
|
1011
1001
|
},
|
|
1002
|
+
{
|
|
1003
|
+
name: "carrezLawArea",
|
|
1004
|
+
fieldType: "number",
|
|
1005
|
+
label: "Surface loi Carrez totale de l'immeuble",
|
|
1006
|
+
condition: only("isBuilding"),
|
|
1007
|
+
props: { suffix: "m\xB2" },
|
|
1008
|
+
requiredFor: ["MANDATE_CREATION" /* MandateCreation */]
|
|
1009
|
+
},
|
|
1012
1010
|
{
|
|
1013
1011
|
name: "landArea",
|
|
1014
1012
|
fieldType: "number",
|
|
@@ -1021,17 +1019,34 @@ var surfacesFormFields = [
|
|
|
1021
1019
|
name: "roomCount",
|
|
1022
1020
|
fieldType: "number",
|
|
1023
1021
|
label: "Nombre de pi\xE8ce(s)",
|
|
1024
|
-
condition: and(
|
|
1022
|
+
condition: and(
|
|
1023
|
+
not("isLand"),
|
|
1024
|
+
not("isParking"),
|
|
1025
|
+
not("isBuilding"),
|
|
1026
|
+
not("isForProfessionalUse")
|
|
1027
|
+
),
|
|
1025
1028
|
props: {
|
|
1026
1029
|
suffix: "pi\xE8ce(s)",
|
|
1027
1030
|
tooltip: "Inclure seulement : la pi\xE8ce principale + les chambres. Exemple : appartement 3 pi\xE8ces : un s\xE9jour, 2 chambres."
|
|
1028
|
-
// TODO: isForProfessionalUse
|
|
1029
|
-
// Inclure les surfaces utiles.
|
|
1030
|
-
// <br />
|
|
1031
|
-
// Exemple : plateau de 10 bureaux, 1 salle de réunion, une cuisine = 12
|
|
1032
|
-
// pièces.
|
|
1033
1031
|
}
|
|
1034
1032
|
},
|
|
1033
|
+
{
|
|
1034
|
+
name: "roomCount",
|
|
1035
|
+
fieldType: "number",
|
|
1036
|
+
label: "Nombre de pi\xE8ce(s)",
|
|
1037
|
+
condition: only("isForProfessionalUse"),
|
|
1038
|
+
props: {
|
|
1039
|
+
suffix: "pi\xE8ce(s)",
|
|
1040
|
+
tooltip: "Inclure les surfaces utiles. Exemple : plateau de 10 bureaux, 1 salle de r\xE9union, une cuisine = 12 pi\xE8ces."
|
|
1041
|
+
}
|
|
1042
|
+
},
|
|
1043
|
+
{
|
|
1044
|
+
name: "roomCount",
|
|
1045
|
+
fieldType: "number",
|
|
1046
|
+
label: "Nombre de logement(s)",
|
|
1047
|
+
condition: only("isBuilding"),
|
|
1048
|
+
props: { suffix: "logement(s)" }
|
|
1049
|
+
},
|
|
1035
1050
|
{
|
|
1036
1051
|
name: "bathroomsCount",
|
|
1037
1052
|
fieldType: "number",
|
|
@@ -1279,8 +1294,30 @@ var PRENUP_TYPES = [
|
|
|
1279
1294
|
}
|
|
1280
1295
|
];
|
|
1281
1296
|
|
|
1297
|
+
// src/static/mandate-select-options.ts
|
|
1298
|
+
var MANDATE_EXCLUSIVITY = [
|
|
1299
|
+
{
|
|
1300
|
+
value: "EXCLUSIVE" /* Exclusive */,
|
|
1301
|
+
label: "Mandat exclusif"
|
|
1302
|
+
},
|
|
1303
|
+
{
|
|
1304
|
+
value: "SEMI_EXCLUSIVE" /* SemiExclusive */,
|
|
1305
|
+
label: "Mandat semi-exclusif"
|
|
1306
|
+
},
|
|
1307
|
+
{
|
|
1308
|
+
value: "SIMPLE" /* Simple */,
|
|
1309
|
+
label: "Mandat simple"
|
|
1310
|
+
}
|
|
1311
|
+
];
|
|
1312
|
+
|
|
1282
1313
|
// src/static/mandate-fields.ts
|
|
1283
1314
|
var mandateFormFields = [
|
|
1315
|
+
{
|
|
1316
|
+
name: "exclusivity",
|
|
1317
|
+
fieldType: "exclusivity",
|
|
1318
|
+
label: "Exclusivit\xE9",
|
|
1319
|
+
props: { options: MANDATE_EXCLUSIVITY }
|
|
1320
|
+
},
|
|
1284
1321
|
{
|
|
1285
1322
|
name: "businessAssetsPrice",
|
|
1286
1323
|
fieldType: "number",
|
|
@@ -1397,6 +1434,18 @@ var mandateFormFields = [
|
|
|
1397
1434
|
requiredFor: ["MANDATE_CREATION" /* MandateCreation */],
|
|
1398
1435
|
condition: only("isForProfessionalUse")
|
|
1399
1436
|
},
|
|
1437
|
+
{
|
|
1438
|
+
fieldType: "text",
|
|
1439
|
+
name: "notaryNameAndCity",
|
|
1440
|
+
label: "Nom et ville du notaire d\xE9tenteur du titre de propri\xE9t\xE9",
|
|
1441
|
+
condition: not("isForProfessionalUse")
|
|
1442
|
+
},
|
|
1443
|
+
{
|
|
1444
|
+
fieldType: "text",
|
|
1445
|
+
name: "notaryNameAndCity",
|
|
1446
|
+
label: "Coordonn\xE9es du professionnel en charge de la cession",
|
|
1447
|
+
condition: only("isForProfessionalUse")
|
|
1448
|
+
},
|
|
1400
1449
|
{
|
|
1401
1450
|
name: "specialConditions",
|
|
1402
1451
|
fieldType: "textarea",
|
|
@@ -1406,22 +1455,6 @@ var mandateFormFields = [
|
|
|
1406
1455
|
props: { className: "md:col-span-2", placeholder: "Aucune" }
|
|
1407
1456
|
}
|
|
1408
1457
|
];
|
|
1409
|
-
|
|
1410
|
-
// src/static/mandate-select-options.ts
|
|
1411
|
-
var MANDATE_EXCLUSIVITY = [
|
|
1412
|
-
{
|
|
1413
|
-
value: "EXCLUSIVE" /* Exclusive */,
|
|
1414
|
-
label: "Mandat exclusif"
|
|
1415
|
-
},
|
|
1416
|
-
{
|
|
1417
|
-
value: "SEMI_EXCLUSIVE" /* SemiExclusive */,
|
|
1418
|
-
label: "Mandat semi-exclusif"
|
|
1419
|
-
},
|
|
1420
|
-
{
|
|
1421
|
-
value: "SIMPLE" /* Simple */,
|
|
1422
|
-
label: "Mandat simple"
|
|
1423
|
-
}
|
|
1424
|
-
];
|
|
1425
1458
|
export {
|
|
1426
1459
|
COMPANY_INFO,
|
|
1427
1460
|
CONDITIONS,
|
|
@@ -1453,7 +1486,6 @@ export {
|
|
|
1453
1486
|
formatSeconds,
|
|
1454
1487
|
getAgencyFees,
|
|
1455
1488
|
getFeesPercentage,
|
|
1456
|
-
getFieldValues,
|
|
1457
1489
|
getLabel,
|
|
1458
1490
|
getLowThreshold,
|
|
1459
1491
|
getNetPrice,
|