@sprucelabs/schema 29.0.93 → 29.1.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/build/esm/index.d.ts +1 -0
- package/build/esm/index.js +1 -0
- package/build/esm/utilities/KeyMapper.d.ts +6 -0
- package/build/esm/utilities/KeyMapper.js +34 -0
- package/build/index.d.ts +1 -0
- package/build/index.js +3 -1
- package/build/utilities/KeyMapper.d.ts +6 -0
- package/build/utilities/KeyMapper.js +37 -0
- package/package.json +4 -4
package/build/esm/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export { default as selectAssert } from './tests/selectAssert.utility';
|
|
|
7
7
|
export { default as cloneDeep } from './utilities/cloneDeep';
|
|
8
8
|
export { default as cloneDeepPreservingInstances } from './utilities/cloneDeepPreservingInstances';
|
|
9
9
|
export { default as selectAssertUtil } from './tests/selectAssert.deprecated';
|
|
10
|
+
export { default as KeyMapper } from './utilities/KeyMapper';
|
|
10
11
|
export * from './schemas.static.types';
|
|
11
12
|
export * from './fields';
|
|
12
13
|
export * from './errors/options.types';
|
package/build/esm/index.js
CHANGED
|
@@ -22,6 +22,7 @@ export { default as selectAssert } from './tests/selectAssert.utility.js';
|
|
|
22
22
|
export { default as cloneDeep } from './utilities/cloneDeep.js';
|
|
23
23
|
export { default as cloneDeepPreservingInstances } from './utilities/cloneDeepPreservingInstances.js';
|
|
24
24
|
export { default as selectAssertUtil } from './tests/selectAssert.deprecated.js';
|
|
25
|
+
export { default as KeyMapper } from './utilities/KeyMapper.js';
|
|
25
26
|
export * from './schemas.static.types.js';
|
|
26
27
|
export * from './fields/index.js';
|
|
27
28
|
export * from './errors/options.types.js';
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export default class KeyMapper {
|
|
2
|
+
constructor(map) {
|
|
3
|
+
this.map = map;
|
|
4
|
+
}
|
|
5
|
+
mapTo(values) {
|
|
6
|
+
return keyMapper.mapTo(values, this.map);
|
|
7
|
+
}
|
|
8
|
+
mapFrom(values) {
|
|
9
|
+
return keyMapper.mapFrom(values, this.map);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
const keyMapper = {
|
|
13
|
+
mapTo(values, map) {
|
|
14
|
+
let target = {};
|
|
15
|
+
for (const key in map) {
|
|
16
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
17
|
+
if (values.hasOwnProperty(key)) {
|
|
18
|
+
target[map[key]] = values[key];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return target;
|
|
22
|
+
},
|
|
23
|
+
mapFrom(values, map) {
|
|
24
|
+
let target = {};
|
|
25
|
+
for (const targetKey in map) {
|
|
26
|
+
const sourceKey = map[targetKey];
|
|
27
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
28
|
+
if (values.hasOwnProperty(sourceKey)) {
|
|
29
|
+
target[targetKey] = values[sourceKey];
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return target;
|
|
33
|
+
},
|
|
34
|
+
};
|
package/build/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export { default as selectAssert } from './tests/selectAssert.utility';
|
|
|
7
7
|
export { default as cloneDeep } from './utilities/cloneDeep';
|
|
8
8
|
export { default as cloneDeepPreservingInstances } from './utilities/cloneDeepPreservingInstances';
|
|
9
9
|
export { default as selectAssertUtil } from './tests/selectAssert.deprecated';
|
|
10
|
+
export { default as KeyMapper } from './utilities/KeyMapper';
|
|
10
11
|
export * from './schemas.static.types';
|
|
11
12
|
export * from './fields';
|
|
12
13
|
export * from './errors/options.types';
|
package/build/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.mapFieldErrorsToParameterErrors = exports.assertOptions = exports.fieldRegistrations = exports.SchemaRegistry = exports.SchemaEntityFactory = exports.FieldFactory = exports.normalizeSchemaToIdWithVersion = exports.isIdWithVersion = exports.pickFields = exports.getFields = exports.formatPhoneNumber = exports.areSchemasTheSame = exports.isSchemaValid = exports.validateSchema = exports.dropPrivateFields = exports.dropFields = exports.makeFieldsOptional = exports.areSchemaValuesValid = exports.normalizeSchemaValues = exports.validateSchemaValues = exports.defaultSchemaValues = exports.registerFieldType = exports.buildSchema = exports.buildErrorSchema = exports.SchemaError = exports.selectAssertUtil = exports.cloneDeepPreservingInstances = exports.cloneDeep = exports.selectAssert = exports.validationErrorAssert = void 0;
|
|
20
|
+
exports.mapFieldErrorsToParameterErrors = exports.assertOptions = exports.fieldRegistrations = exports.SchemaRegistry = exports.SchemaEntityFactory = exports.FieldFactory = exports.normalizeSchemaToIdWithVersion = exports.isIdWithVersion = exports.pickFields = exports.getFields = exports.formatPhoneNumber = exports.areSchemasTheSame = exports.isSchemaValid = exports.validateSchema = exports.dropPrivateFields = exports.dropFields = exports.makeFieldsOptional = exports.areSchemaValuesValid = exports.normalizeSchemaValues = exports.validateSchemaValues = exports.defaultSchemaValues = exports.registerFieldType = exports.buildSchema = exports.buildErrorSchema = exports.SchemaError = exports.KeyMapper = exports.selectAssertUtil = exports.cloneDeepPreservingInstances = exports.cloneDeep = exports.selectAssert = exports.validationErrorAssert = void 0;
|
|
21
21
|
__exportStar(require("./StaticSchemaEntityImplementation"), exports);
|
|
22
22
|
const addressField_addon_1 = __importDefault(require("./addons/addressField.addon"));
|
|
23
23
|
const booleanField_addon_1 = __importDefault(require("./addons/booleanField.addon"));
|
|
@@ -47,6 +47,8 @@ var cloneDeepPreservingInstances_1 = require("./utilities/cloneDeepPreservingIns
|
|
|
47
47
|
Object.defineProperty(exports, "cloneDeepPreservingInstances", { enumerable: true, get: function () { return __importDefault(cloneDeepPreservingInstances_1).default; } });
|
|
48
48
|
var selectAssert_deprecated_1 = require("./tests/selectAssert.deprecated");
|
|
49
49
|
Object.defineProperty(exports, "selectAssertUtil", { enumerable: true, get: function () { return __importDefault(selectAssert_deprecated_1).default; } });
|
|
50
|
+
var KeyMapper_1 = require("./utilities/KeyMapper");
|
|
51
|
+
Object.defineProperty(exports, "KeyMapper", { enumerable: true, get: function () { return __importDefault(KeyMapper_1).default; } });
|
|
50
52
|
__exportStar(require("./schemas.static.types"), exports);
|
|
51
53
|
__exportStar(require("./fields"), exports);
|
|
52
54
|
__exportStar(require("./errors/options.types"), exports);
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
class KeyMapper {
|
|
4
|
+
constructor(map) {
|
|
5
|
+
this.map = map;
|
|
6
|
+
}
|
|
7
|
+
mapTo(values) {
|
|
8
|
+
return keyMapper.mapTo(values, this.map);
|
|
9
|
+
}
|
|
10
|
+
mapFrom(values) {
|
|
11
|
+
return keyMapper.mapFrom(values, this.map);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.default = KeyMapper;
|
|
15
|
+
const keyMapper = {
|
|
16
|
+
mapTo(values, map) {
|
|
17
|
+
let target = {};
|
|
18
|
+
for (const key in map) {
|
|
19
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
20
|
+
if (values.hasOwnProperty(key)) {
|
|
21
|
+
target[map[key]] = values[key];
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return target;
|
|
25
|
+
},
|
|
26
|
+
mapFrom(values, map) {
|
|
27
|
+
let target = {};
|
|
28
|
+
for (const targetKey in map) {
|
|
29
|
+
const sourceKey = map[targetKey];
|
|
30
|
+
// eslint-disable-next-line no-prototype-builtins
|
|
31
|
+
if (values.hasOwnProperty(sourceKey)) {
|
|
32
|
+
target[targetKey] = values[sourceKey];
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return target;
|
|
36
|
+
},
|
|
37
|
+
};
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"!build/__tests__",
|
|
9
9
|
"esm"
|
|
10
10
|
],
|
|
11
|
-
"version": "29.0
|
|
11
|
+
"version": "29.1.0",
|
|
12
12
|
"main": "./build/index.js",
|
|
13
13
|
"types": "./build/index.d.ts",
|
|
14
14
|
"module": "./build/esm/index.js",
|
|
@@ -66,8 +66,8 @@
|
|
|
66
66
|
"build.copy-files": "mkdir -p build && rsync -avzq --exclude='*.ts' ./src/ ./build/"
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@sprucelabs/error": "^5.1.
|
|
70
|
-
"@sprucelabs/test-utils": "^4.0.
|
|
69
|
+
"@sprucelabs/error": "^5.1.51",
|
|
70
|
+
"@sprucelabs/test-utils": "^4.0.83",
|
|
71
71
|
"email-validator": "^2.0.4",
|
|
72
72
|
"just-safe-get": "^4.2.0",
|
|
73
73
|
"just-safe-set": "^4.2.1"
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"@sprucelabs/jest-sheets-reporter": "^2.0.20",
|
|
79
79
|
"@sprucelabs/resolve-path-aliases": "^1.1.122",
|
|
80
80
|
"@sprucelabs/semantic-release": "^4.0.8",
|
|
81
|
-
"@sprucelabs/test": "^8.0.
|
|
81
|
+
"@sprucelabs/test": "^8.0.34",
|
|
82
82
|
"chokidar-cli": "^3.0.0",
|
|
83
83
|
"concurrently": "^8.2.2",
|
|
84
84
|
"eslint": "^8.55.0",
|