cozy-client 46.2.0 → 46.4.0
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/CozyClient.js +1 -1
- package/dist/models/contact.js +19 -7
- package/dist/models/contact.spec.js +16 -0
- package/dist/models/document/locales/en.json +4 -0
- package/dist/models/document/locales/fr.json +4 -0
- package/dist/models/paper.js +19 -8
- package/package.json +2 -2
- package/types/models/contact.d.ts +7 -2
package/dist/CozyClient.js
CHANGED
|
@@ -2705,7 +2705,7 @@ var CozyClient = /*#__PURE__*/function () {
|
|
|
2705
2705
|
CozyClient.hooks = CozyClient.hooks || {};
|
|
2706
2706
|
CozyClient.fetchPolicies = _policies.default; //COZY_CLIENT_VERSION_PACKAGE in replaced by babel. See babel config
|
|
2707
2707
|
|
|
2708
|
-
CozyClient.version = "46.
|
|
2708
|
+
CozyClient.version = "46.4.0";
|
|
2709
2709
|
|
|
2710
2710
|
_microee.default.mixin(CozyClient);
|
|
2711
2711
|
|
package/dist/models/contact.js
CHANGED
|
@@ -14,6 +14,10 @@ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
|
|
|
14
14
|
var _logger = _interopRequireDefault(require("../logger"));
|
|
15
15
|
|
|
16
16
|
var CONTACTS_DOCTYPE = 'io.cozy.contacts';
|
|
17
|
+
/**
|
|
18
|
+
* @typedef {'namePrefix'|'givenName'|'additionalName'|'familyName'|'nameSuffix'} FullnameAttributes
|
|
19
|
+
*/
|
|
20
|
+
|
|
17
21
|
exports.CONTACTS_DOCTYPE = CONTACTS_DOCTYPE;
|
|
18
22
|
|
|
19
23
|
var getPrimaryOrFirst = function getPrimaryOrFirst(property) {
|
|
@@ -124,19 +128,26 @@ exports.getPrimaryPhone = getPrimaryPhone;
|
|
|
124
128
|
var getPrimaryAddress = function getPrimaryAddress(contact) {
|
|
125
129
|
return getPrimaryOrFirst('address')(contact).formattedAddress || '';
|
|
126
130
|
};
|
|
131
|
+
/**
|
|
132
|
+
* @type {FullnameAttributes[]}
|
|
133
|
+
*/
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
exports.getPrimaryAddress = getPrimaryAddress;
|
|
137
|
+
var defaultFullnameAttributes = ['namePrefix', 'givenName', 'additionalName', 'familyName', 'nameSuffix'];
|
|
127
138
|
/**
|
|
128
139
|
* Makes fullname from contact name
|
|
129
140
|
*
|
|
130
|
-
* @param {
|
|
141
|
+
* @param {object} contact - A contact
|
|
142
|
+
* @param {{ attributesFullname: FullnameAttributes[] }} [opts] - Options
|
|
131
143
|
* @returns {string} - The contact's fullname
|
|
132
144
|
*/
|
|
133
145
|
|
|
146
|
+
var makeFullname = function makeFullname(contact, opts) {
|
|
147
|
+
var fullnameAttributes = (opts === null || opts === void 0 ? void 0 : opts.attributesFullname) || defaultFullnameAttributes;
|
|
134
148
|
|
|
135
|
-
exports.getPrimaryAddress = getPrimaryAddress;
|
|
136
|
-
|
|
137
|
-
var makeFullname = function makeFullname(contact) {
|
|
138
149
|
if (contact.name) {
|
|
139
|
-
return
|
|
150
|
+
return fullnameAttributes.map(function (part) {
|
|
140
151
|
return contact.name[part];
|
|
141
152
|
}).filter(function (part) {
|
|
142
153
|
return part !== undefined;
|
|
@@ -166,14 +177,15 @@ var getFullname = function getFullname(contact) {
|
|
|
166
177
|
* Makes displayName from contact data
|
|
167
178
|
*
|
|
168
179
|
* @param {*} contact - A contact
|
|
180
|
+
* @param {{ attributesFullname: FullnameAttributes[] }} [opts] - Options
|
|
169
181
|
* @returns {string} - The contact's displayName
|
|
170
182
|
*/
|
|
171
183
|
|
|
172
184
|
|
|
173
185
|
exports.getFullname = getFullname;
|
|
174
186
|
|
|
175
|
-
var makeDisplayName = function makeDisplayName(contact) {
|
|
176
|
-
var fullname = makeFullname(contact);
|
|
187
|
+
var makeDisplayName = function makeDisplayName(contact, opts) {
|
|
188
|
+
var fullname = makeFullname(contact, opts);
|
|
177
189
|
var primaryEmail = getPrimaryEmail(contact);
|
|
178
190
|
var primaryCozyDomain = getPrimaryCozyDomain(contact);
|
|
179
191
|
|
|
@@ -247,6 +247,22 @@ describe('makeFullname', () => {
|
|
|
247
247
|
)
|
|
248
248
|
})
|
|
249
249
|
|
|
250
|
+
it('should combine all name parts passed as options', () => {
|
|
251
|
+
const contact = {
|
|
252
|
+
name: {
|
|
253
|
+
namePrefix: 'The Mother of Dragons',
|
|
254
|
+
givenName: 'Daenerys',
|
|
255
|
+
additionalName: 'The Unburnt',
|
|
256
|
+
familyName: 'Targaryen',
|
|
257
|
+
nameSuffix: 'Breaker of Chains'
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
const result = makeFullname(contact, {
|
|
261
|
+
attributesFullname: ['givenName', 'additionalName', 'familyName']
|
|
262
|
+
})
|
|
263
|
+
expect(result).toEqual('Daenerys The Unburnt Targaryen')
|
|
264
|
+
})
|
|
265
|
+
|
|
250
266
|
it("should return contact's givenName if no familyName", () => {
|
|
251
267
|
const contact = {
|
|
252
268
|
name: {
|
|
@@ -179,6 +179,10 @@
|
|
|
179
179
|
"payment_proof_family_allowance": {
|
|
180
180
|
"number":"CAF file number"
|
|
181
181
|
},
|
|
182
|
+
"vehicle": {
|
|
183
|
+
"licenseNumber": "Vehicle registration number",
|
|
184
|
+
"confidentialNumber": "Confidential code"
|
|
185
|
+
},
|
|
182
186
|
"vehicle_registration": {
|
|
183
187
|
"number": "Vehicle registration number (VIN)"
|
|
184
188
|
},
|
|
@@ -179,6 +179,10 @@
|
|
|
179
179
|
"payment_proof_family_allowance": {
|
|
180
180
|
"number":"Numéro de dossier CAF"
|
|
181
181
|
},
|
|
182
|
+
"vehicle": {
|
|
183
|
+
"licenseNumber": "Plaque d'immatriculation",
|
|
184
|
+
"confidentialNumber": "Code confidentiel"
|
|
185
|
+
},
|
|
182
186
|
"vehicle_registration": {
|
|
183
187
|
"number": "Numéro de la carte grise (VIN)"
|
|
184
188
|
},
|
package/dist/models/paper.js
CHANGED
|
@@ -17,6 +17,8 @@ var _locales = require("./document/locales");
|
|
|
17
17
|
|
|
18
18
|
var _contact = require("./contact");
|
|
19
19
|
|
|
20
|
+
var _get = _interopRequireDefault(require("lodash/get"));
|
|
21
|
+
|
|
20
22
|
/**
|
|
21
23
|
* @typedef {import("../types").IOCozyFile} IOCozyFile
|
|
22
24
|
*/
|
|
@@ -30,7 +32,7 @@ var EXPIRATION_LINK_BY_LABEL = {
|
|
|
30
32
|
};
|
|
31
33
|
var KNOWN_DATE_METADATA_NAMES = ['AObtentionDate', 'BObtentionDate', 'CObtentionDate', 'DObtentionDate', 'obtentionDate', 'expirationDate', 'referencedDate', 'issueDate', 'shootingDate', 'date', 'datetime'];
|
|
32
34
|
exports.KNOWN_DATE_METADATA_NAMES = KNOWN_DATE_METADATA_NAMES;
|
|
33
|
-
var KNOWN_INFORMATION_METADATA_NAMES = ['number', 'bicNumber', 'country', 'refTaxIncome', 'contractType', 'netSocialAmount', 'employerName', 'noticePeriod'];
|
|
35
|
+
var KNOWN_INFORMATION_METADATA_NAMES = ['number', 'bicNumber', 'country', 'refTaxIncome', 'contractType', 'netSocialAmount', 'employerName', 'vehicle.licenseNumber', 'vehicle.confidentialNumber', 'noticePeriod'];
|
|
34
36
|
exports.KNOWN_INFORMATION_METADATA_NAMES = KNOWN_INFORMATION_METADATA_NAMES;
|
|
35
37
|
var KNOWN_OTHER_METADATA_NAMES = ['contact', 'page', 'qualification'];
|
|
36
38
|
/**
|
|
@@ -239,6 +241,14 @@ var isExpiringSoon = function isExpiringSoon(file) {
|
|
|
239
241
|
var isExpiringSoon = expirationDate != null && expirationNoticeDate != null && expirationNoticeDate <= now && now < expirationDate;
|
|
240
242
|
return isExpiringSoon;
|
|
241
243
|
};
|
|
244
|
+
/**
|
|
245
|
+
* @param {Object} params -
|
|
246
|
+
* @param {Object} params.metadata - An io.cozy.files metadata object
|
|
247
|
+
* @param {string} params.knownMetadataName - Name of the metadata
|
|
248
|
+
* @param {string | null} [params.value] - Value of the metadata
|
|
249
|
+
* @returns {{ name: string, value: string | null }} displayable metadata
|
|
250
|
+
*/
|
|
251
|
+
|
|
242
252
|
|
|
243
253
|
exports.isExpiringSoon = isExpiringSoon;
|
|
244
254
|
|
|
@@ -246,12 +256,15 @@ var makeMetadataQualification = function makeMetadataQualification(_ref) {
|
|
|
246
256
|
var metadata = _ref.metadata,
|
|
247
257
|
knownMetadataName = _ref.knownMetadataName,
|
|
248
258
|
value = _ref.value;
|
|
249
|
-
|
|
259
|
+
|
|
260
|
+
var _value = value || (0, _get.default)(metadata, knownMetadataName, null);
|
|
261
|
+
|
|
262
|
+
var shouldReturnThisMetadata = !!_value;
|
|
250
263
|
|
|
251
264
|
if (shouldReturnThisMetadata || knownMetadataName === 'contact') {
|
|
252
265
|
return {
|
|
253
266
|
name: knownMetadataName,
|
|
254
|
-
value:
|
|
267
|
+
value: _value
|
|
255
268
|
};
|
|
256
269
|
}
|
|
257
270
|
|
|
@@ -268,18 +281,16 @@ var formatMetadataQualification = function formatMetadataQualification(metadata)
|
|
|
268
281
|
var dates = KNOWN_DATE_METADATA_NAMES.map(function (dateName) {
|
|
269
282
|
return makeMetadataQualification({
|
|
270
283
|
metadata: metadata,
|
|
271
|
-
knownMetadataName: dateName
|
|
272
|
-
value: metadata[dateName]
|
|
284
|
+
knownMetadataName: dateName
|
|
273
285
|
});
|
|
274
286
|
}).filter(Boolean).filter(function (data, _, arr) {
|
|
275
287
|
if (arr.length > 1) return data.name !== 'datetime';
|
|
276
288
|
return data;
|
|
277
289
|
});
|
|
278
|
-
var informations = KNOWN_INFORMATION_METADATA_NAMES.map(function (
|
|
290
|
+
var informations = KNOWN_INFORMATION_METADATA_NAMES.map(function (infoName) {
|
|
279
291
|
return makeMetadataQualification({
|
|
280
292
|
metadata: metadata,
|
|
281
|
-
knownMetadataName:
|
|
282
|
-
value: metadata[numberName]
|
|
293
|
+
knownMetadataName: infoName
|
|
283
294
|
});
|
|
284
295
|
}).filter(Boolean);
|
|
285
296
|
var others = KNOWN_OTHER_METADATA_NAMES.map(function (otherName) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cozy-client",
|
|
3
|
-
"version": "46.
|
|
3
|
+
"version": "46.4.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.node.js",
|
|
6
6
|
"browser": "dist/index.js",
|
|
@@ -75,5 +75,5 @@
|
|
|
75
75
|
"react-native-ios11-devicecheck": "https://github.com/cozy/react-native-devicecheck#app-attest-v0.1"
|
|
76
76
|
},
|
|
77
77
|
"sideEffects": false,
|
|
78
|
-
"gitHead": "
|
|
78
|
+
"gitHead": "7425c7d2dee49b2c2c54b95695754219bbe5bc0b"
|
|
79
79
|
}
|
|
@@ -6,11 +6,16 @@ export function getPrimaryCozy(contact: object): string;
|
|
|
6
6
|
export function getPrimaryCozyDomain(contact: object): string;
|
|
7
7
|
export function getPrimaryPhone(contact: object): string;
|
|
8
8
|
export function getPrimaryAddress(contact: object): string;
|
|
9
|
-
export function makeFullname(contact:
|
|
9
|
+
export function makeFullname(contact: object, opts?: {
|
|
10
|
+
attributesFullname: FullnameAttributes[];
|
|
11
|
+
}): string;
|
|
10
12
|
export function getFullname(contact: object): string;
|
|
11
|
-
export function makeDisplayName(contact: any
|
|
13
|
+
export function makeDisplayName(contact: any, opts?: {
|
|
14
|
+
attributesFullname: FullnameAttributes[];
|
|
15
|
+
}): string;
|
|
12
16
|
export function getDisplayName(contact: object): string;
|
|
13
17
|
export function makeDefaultSortIndexValue(contact: object): string;
|
|
14
18
|
export function getDefaultSortIndexValue(contact: object): string;
|
|
15
19
|
export function getIndexByFamilyNameGivenNameEmailCozyUrl(contact: object): string;
|
|
16
20
|
export function isContact(doc: object): boolean;
|
|
21
|
+
export type FullnameAttributes = "namePrefix" | "givenName" | "additionalName" | "familyName" | "nameSuffix";
|