@etsoo/shared 1.1.46 → 1.1.47
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/README.md +1 -0
- package/__tests__/DataTypes.ts +2 -2
- package/lib/cjs/DataTypes.d.ts +9 -2
- package/lib/cjs/DataTypes.js +24 -11
- package/lib/mjs/DataTypes.d.ts +9 -2
- package/lib/mjs/DataTypes.js +24 -11
- package/package.json +1 -1
- package/src/DataTypes.ts +27 -12
package/README.md
CHANGED
|
@@ -121,6 +121,7 @@ Data type definitions and type safe functions
|
|
|
121
121
|
|getEnumKey|Get enum string literal type value|
|
|
122
122
|
|getEnumKeys|Get Enum keys|
|
|
123
123
|
|getIdValue|Get object id field value|
|
|
124
|
+
|getIdValue1|Get object id field value 1|
|
|
124
125
|
|getResult|Get input function or value result|
|
|
125
126
|
|getStringValue|Get object string field value|
|
|
126
127
|
|getValue|Get object field value|
|
package/__tests__/DataTypes.ts
CHANGED
|
@@ -109,8 +109,8 @@ test('Tests for IdLabelItem', () => {
|
|
|
109
109
|
test('Tests for getValue', () => {
|
|
110
110
|
const data = { id: 1, flag: true };
|
|
111
111
|
expect(DataTypes.getValue(data, 'id')).toBe(1);
|
|
112
|
-
expect(DataTypes.getValue(data, 'flag')).
|
|
113
|
-
expect(DataTypes.getValue(data, 'unknown')).
|
|
112
|
+
expect(DataTypes.getValue(data, 'flag')).toBeTruthy();
|
|
113
|
+
expect(DataTypes.getValue(data, 'unknown')).toBeUndefined();
|
|
114
114
|
});
|
|
115
115
|
|
|
116
116
|
test('Tests for getIdValue', () => {
|
package/lib/cjs/DataTypes.d.ts
CHANGED
|
@@ -278,7 +278,7 @@ export declare namespace DataTypes {
|
|
|
278
278
|
* @param key Property name
|
|
279
279
|
* @returns Value
|
|
280
280
|
*/
|
|
281
|
-
function getValue<T extends {}>(data: T | undefined | null, key: keyof T
|
|
281
|
+
function getValue<T extends {}, K extends keyof T | string>(data: T | undefined | null, key: K): K extends keyof T ? T[K] : undefined;
|
|
282
282
|
/**
|
|
283
283
|
* Get object id field value
|
|
284
284
|
* @param data Data
|
|
@@ -286,13 +286,20 @@ export declare namespace DataTypes {
|
|
|
286
286
|
* @returns Id value
|
|
287
287
|
*/
|
|
288
288
|
function getIdValue<T extends {}, K extends Keys<T, string | number>>(data: T, key: K): T[K];
|
|
289
|
+
/**
|
|
290
|
+
* Get object id field value 1
|
|
291
|
+
* @param data Data
|
|
292
|
+
* @param key Property name
|
|
293
|
+
* @returns Id value
|
|
294
|
+
*/
|
|
295
|
+
function getIdValue1<T extends {}, K extends keyof T | string>(data: T | undefined | null, key: K): K extends keyof T ? (T[K] extends number ? number : string) : undefined;
|
|
289
296
|
/**
|
|
290
297
|
* Get object string field value
|
|
291
298
|
* @param data Data
|
|
292
299
|
* @param key Property name
|
|
293
300
|
* @returns String value
|
|
294
301
|
*/
|
|
295
|
-
function getStringValue<T extends {}>(data: T | undefined | null, key: keyof T | string): string | undefined
|
|
302
|
+
function getStringValue<T extends {}>(data: T | undefined | null, key: keyof T | string): string | undefined;
|
|
296
303
|
/**
|
|
297
304
|
* Check the type is a basic type or not (type guard)
|
|
298
305
|
* @param name Type name
|
package/lib/cjs/DataTypes.js
CHANGED
|
@@ -290,14 +290,10 @@ var DataTypes;
|
|
|
290
290
|
* @returns Value
|
|
291
291
|
*/
|
|
292
292
|
function getValue(data, key) {
|
|
293
|
-
if (data
|
|
294
|
-
return
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
return null;
|
|
298
|
-
if (typeof value === 'number')
|
|
299
|
-
return value;
|
|
300
|
-
return convert(value, 'string');
|
|
293
|
+
if (data != null && typeof key === 'string' && key in data) {
|
|
294
|
+
return Reflect.get(data, key);
|
|
295
|
+
}
|
|
296
|
+
return undefined;
|
|
301
297
|
}
|
|
302
298
|
DataTypes.getValue = getValue;
|
|
303
299
|
/**
|
|
@@ -310,6 +306,21 @@ var DataTypes;
|
|
|
310
306
|
return data[key];
|
|
311
307
|
}
|
|
312
308
|
DataTypes.getIdValue = getIdValue;
|
|
309
|
+
/**
|
|
310
|
+
* Get object id field value 1
|
|
311
|
+
* @param data Data
|
|
312
|
+
* @param key Property name
|
|
313
|
+
* @returns Id value
|
|
314
|
+
*/
|
|
315
|
+
function getIdValue1(data, key) {
|
|
316
|
+
const value = getValue(data, key);
|
|
317
|
+
if (value == null)
|
|
318
|
+
return undefined;
|
|
319
|
+
if (typeof value === 'number')
|
|
320
|
+
return value;
|
|
321
|
+
return `${value}`;
|
|
322
|
+
}
|
|
323
|
+
DataTypes.getIdValue1 = getIdValue1;
|
|
313
324
|
/**
|
|
314
325
|
* Get object string field value
|
|
315
326
|
* @param data Data
|
|
@@ -318,9 +329,11 @@ var DataTypes;
|
|
|
318
329
|
*/
|
|
319
330
|
function getStringValue(data, key) {
|
|
320
331
|
const value = getValue(data, key);
|
|
321
|
-
if (
|
|
322
|
-
return
|
|
323
|
-
|
|
332
|
+
if (value == null)
|
|
333
|
+
return undefined;
|
|
334
|
+
if (typeof value === 'string')
|
|
335
|
+
return value;
|
|
336
|
+
return `${value}`;
|
|
324
337
|
}
|
|
325
338
|
DataTypes.getStringValue = getStringValue;
|
|
326
339
|
/**
|
package/lib/mjs/DataTypes.d.ts
CHANGED
|
@@ -278,7 +278,7 @@ export declare namespace DataTypes {
|
|
|
278
278
|
* @param key Property name
|
|
279
279
|
* @returns Value
|
|
280
280
|
*/
|
|
281
|
-
function getValue<T extends {}>(data: T | undefined | null, key: keyof T
|
|
281
|
+
function getValue<T extends {}, K extends keyof T | string>(data: T | undefined | null, key: K): K extends keyof T ? T[K] : undefined;
|
|
282
282
|
/**
|
|
283
283
|
* Get object id field value
|
|
284
284
|
* @param data Data
|
|
@@ -286,13 +286,20 @@ export declare namespace DataTypes {
|
|
|
286
286
|
* @returns Id value
|
|
287
287
|
*/
|
|
288
288
|
function getIdValue<T extends {}, K extends Keys<T, string | number>>(data: T, key: K): T[K];
|
|
289
|
+
/**
|
|
290
|
+
* Get object id field value 1
|
|
291
|
+
* @param data Data
|
|
292
|
+
* @param key Property name
|
|
293
|
+
* @returns Id value
|
|
294
|
+
*/
|
|
295
|
+
function getIdValue1<T extends {}, K extends keyof T | string>(data: T | undefined | null, key: K): K extends keyof T ? (T[K] extends number ? number : string) : undefined;
|
|
289
296
|
/**
|
|
290
297
|
* Get object string field value
|
|
291
298
|
* @param data Data
|
|
292
299
|
* @param key Property name
|
|
293
300
|
* @returns String value
|
|
294
301
|
*/
|
|
295
|
-
function getStringValue<T extends {}>(data: T | undefined | null, key: keyof T | string): string | undefined
|
|
302
|
+
function getStringValue<T extends {}>(data: T | undefined | null, key: keyof T | string): string | undefined;
|
|
296
303
|
/**
|
|
297
304
|
* Check the type is a basic type or not (type guard)
|
|
298
305
|
* @param name Type name
|
package/lib/mjs/DataTypes.js
CHANGED
|
@@ -287,14 +287,10 @@ export var DataTypes;
|
|
|
287
287
|
* @returns Value
|
|
288
288
|
*/
|
|
289
289
|
function getValue(data, key) {
|
|
290
|
-
if (data
|
|
291
|
-
return
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
return null;
|
|
295
|
-
if (typeof value === 'number')
|
|
296
|
-
return value;
|
|
297
|
-
return convert(value, 'string');
|
|
290
|
+
if (data != null && typeof key === 'string' && key in data) {
|
|
291
|
+
return Reflect.get(data, key);
|
|
292
|
+
}
|
|
293
|
+
return undefined;
|
|
298
294
|
}
|
|
299
295
|
DataTypes.getValue = getValue;
|
|
300
296
|
/**
|
|
@@ -307,6 +303,21 @@ export var DataTypes;
|
|
|
307
303
|
return data[key];
|
|
308
304
|
}
|
|
309
305
|
DataTypes.getIdValue = getIdValue;
|
|
306
|
+
/**
|
|
307
|
+
* Get object id field value 1
|
|
308
|
+
* @param data Data
|
|
309
|
+
* @param key Property name
|
|
310
|
+
* @returns Id value
|
|
311
|
+
*/
|
|
312
|
+
function getIdValue1(data, key) {
|
|
313
|
+
const value = getValue(data, key);
|
|
314
|
+
if (value == null)
|
|
315
|
+
return undefined;
|
|
316
|
+
if (typeof value === 'number')
|
|
317
|
+
return value;
|
|
318
|
+
return `${value}`;
|
|
319
|
+
}
|
|
320
|
+
DataTypes.getIdValue1 = getIdValue1;
|
|
310
321
|
/**
|
|
311
322
|
* Get object string field value
|
|
312
323
|
* @param data Data
|
|
@@ -315,9 +326,11 @@ export var DataTypes;
|
|
|
315
326
|
*/
|
|
316
327
|
function getStringValue(data, key) {
|
|
317
328
|
const value = getValue(data, key);
|
|
318
|
-
if (
|
|
319
|
-
return
|
|
320
|
-
|
|
329
|
+
if (value == null)
|
|
330
|
+
return undefined;
|
|
331
|
+
if (typeof value === 'string')
|
|
332
|
+
return value;
|
|
333
|
+
return `${value}`;
|
|
321
334
|
}
|
|
322
335
|
DataTypes.getStringValue = getStringValue;
|
|
323
336
|
/**
|
package/package.json
CHANGED
package/src/DataTypes.ts
CHANGED
|
@@ -523,16 +523,14 @@ export namespace DataTypes {
|
|
|
523
523
|
* @param key Property name
|
|
524
524
|
* @returns Value
|
|
525
525
|
*/
|
|
526
|
-
export function getValue<T extends {}>(
|
|
526
|
+
export function getValue<T extends {}, K extends keyof T | string>(
|
|
527
527
|
data: T | undefined | null,
|
|
528
|
-
key:
|
|
529
|
-
):
|
|
530
|
-
if (data
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
if (typeof value === 'number') return value;
|
|
535
|
-
return convert(value, 'string');
|
|
528
|
+
key: K
|
|
529
|
+
): K extends keyof T ? T[K] : undefined {
|
|
530
|
+
if (data != null && typeof key === 'string' && key in data) {
|
|
531
|
+
return Reflect.get(data, key);
|
|
532
|
+
}
|
|
533
|
+
return undefined as any;
|
|
536
534
|
}
|
|
537
535
|
|
|
538
536
|
/**
|
|
@@ -548,6 +546,22 @@ export namespace DataTypes {
|
|
|
548
546
|
return data[key];
|
|
549
547
|
}
|
|
550
548
|
|
|
549
|
+
/**
|
|
550
|
+
* Get object id field value 1
|
|
551
|
+
* @param data Data
|
|
552
|
+
* @param key Property name
|
|
553
|
+
* @returns Id value
|
|
554
|
+
*/
|
|
555
|
+
export function getIdValue1<T extends {}, K extends keyof T | string>(
|
|
556
|
+
data: T | undefined | null,
|
|
557
|
+
key: K
|
|
558
|
+
): K extends keyof T ? (T[K] extends number ? number : string) : undefined {
|
|
559
|
+
const value = getValue(data, key);
|
|
560
|
+
if (value == null) return undefined as any;
|
|
561
|
+
if (typeof value === 'number') return value as any;
|
|
562
|
+
return `${value}` as any;
|
|
563
|
+
}
|
|
564
|
+
|
|
551
565
|
/**
|
|
552
566
|
* Get object string field value
|
|
553
567
|
* @param data Data
|
|
@@ -557,10 +571,11 @@ export namespace DataTypes {
|
|
|
557
571
|
export function getStringValue<T extends {}>(
|
|
558
572
|
data: T | undefined | null,
|
|
559
573
|
key: keyof T | string
|
|
560
|
-
): string | undefined
|
|
574
|
+
): string | undefined {
|
|
561
575
|
const value = getValue(data, key);
|
|
562
|
-
if (
|
|
563
|
-
return value;
|
|
576
|
+
if (value == null) return undefined;
|
|
577
|
+
if (typeof value === 'string') return value;
|
|
578
|
+
return `${value}`;
|
|
564
579
|
}
|
|
565
580
|
|
|
566
581
|
/**
|