@contrail/flexplm 1.3.0 → 1.3.1-alpha.3507ab6
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/lib/cli/commands/compile.d.ts +1 -0
- package/lib/cli/commands/compile.js +71 -0
- package/lib/cli/commands/compile.spec.d.ts +1 -0
- package/lib/cli/commands/compile.spec.js +80 -0
- package/lib/cli/commands/create.d.ts +1 -0
- package/lib/cli/commands/create.js +75 -0
- package/lib/cli/commands/create.spec.d.ts +1 -0
- package/lib/cli/commands/create.spec.js +78 -0
- package/lib/cli/commands/upload.d.ts +10 -0
- package/lib/cli/commands/upload.js +228 -0
- package/lib/cli/commands/upload.spec.d.ts +1 -0
- package/lib/cli/commands/upload.spec.js +88 -0
- package/lib/cli/index.d.ts +2 -0
- package/lib/cli/index.js +64 -0
- package/lib/cli/index.spec.d.ts +1 -0
- package/lib/cli/index.spec.js +79 -0
- package/lib/cli/template/mapping-template.ts.template +62 -0
- package/lib/entity-processor/base-entity-processor.d.ts +89 -42
- package/lib/entity-processor/base-entity-processor.js +438 -385
- package/lib/entity-processor/base-entity-processor.spec.d.ts +1 -1
- package/lib/entity-processor/base-entity-processor.spec.js +398 -397
- package/lib/flexplm-request.d.ts +3 -3
- package/lib/flexplm-request.js +34 -34
- package/lib/flexplm-utils.d.ts +5 -5
- package/lib/flexplm-utils.js +33 -33
- package/lib/flexplm-utils.spec.d.ts +1 -1
- package/lib/flexplm-utils.spec.js +26 -26
- package/lib/index.d.ts +23 -22
- package/lib/index.js +39 -38
- package/lib/interfaces/interfaces.d.ts +105 -105
- package/lib/interfaces/interfaces.js +2 -2
- package/lib/interfaces/item-family-changes.d.ts +20 -20
- package/lib/interfaces/item-family-changes.js +56 -56
- package/lib/interfaces/mapping-file.d.ts +460 -0
- package/lib/interfaces/mapping-file.js +2 -0
- package/lib/interfaces/publish-change-data.d.ts +19 -19
- package/lib/interfaces/publish-change-data.js +32 -32
- package/lib/publish/base-process-publish-assortment-callback.d.ts +9 -9
- package/lib/publish/base-process-publish-assortment-callback.js +38 -38
- package/lib/publish/base-process-publish-assortment.d.ts +118 -93
- package/lib/publish/base-process-publish-assortment.js +998 -944
- package/lib/publish/base-process-publish-assortment.spec.d.ts +1 -1
- package/lib/publish/base-process-publish-assortment.spec.js +1688 -1670
- package/lib/publish/mockData.d.ts +1389 -1389
- package/lib/publish/mockData.js +4524 -4519
- package/lib/transform/identifier-conversion-spec-mockData.js +472 -444
- package/lib/transform/identifier-conversion.d.ts +51 -15
- package/lib/transform/identifier-conversion.js +248 -212
- package/lib/transform/identifier-conversion.spec.d.ts +1 -1
- package/lib/transform/identifier-conversion.spec.js +343 -339
- package/lib/util/config-defaults.d.ts +8 -8
- package/lib/util/config-defaults.js +88 -85
- package/lib/util/config-defaults.spec.d.ts +1 -1
- package/lib/util/config-defaults.spec.js +302 -293
- package/lib/util/data-converter-spec-mockData.js +219 -205
- package/lib/util/data-converter.d.ts +136 -39
- package/lib/util/data-converter.js +718 -592
- package/lib/util/data-converter.spec.d.ts +1 -1
- package/lib/util/data-converter.spec.js +906 -904
- package/lib/util/error-response-object.d.ts +9 -4
- package/lib/util/error-response-object.js +54 -47
- package/lib/util/error-response-object.spec.d.ts +1 -1
- package/lib/util/error-response-object.spec.js +99 -99
- package/lib/util/event-short-message-status.d.ts +19 -19
- package/lib/util/event-short-message-status.js +24 -23
- package/lib/util/federation.d.ts +15 -15
- package/lib/util/federation.js +157 -149
- package/lib/util/flexplm-connect.d.ts +29 -22
- package/lib/util/flexplm-connect.js +190 -176
- package/lib/util/flexplm-connect.spec.d.ts +1 -1
- package/lib/util/flexplm-connect.spec.js +88 -88
- package/lib/util/logger-config.d.ts +1 -1
- package/lib/util/logger-config.js +27 -26
- package/lib/util/map-util-spec-mockData.js +219 -205
- package/lib/util/map-utils.d.ts +33 -6
- package/lib/util/map-utils.js +42 -15
- package/lib/util/map-utils.spec.d.ts +1 -1
- package/lib/util/map-utils.spec.js +89 -89
- package/lib/util/mockData.d.ts +80 -80
- package/lib/util/mockData.js +103 -103
- package/lib/util/thumbnail-util.d.ts +55 -34
- package/lib/util/thumbnail-util.js +242 -215
- package/lib/util/thumbnail-util.spec.d.ts +1 -1
- package/lib/util/thumbnail-util.spec.js +440 -434
- package/lib/util/type-conversion-utils-spec-mockData.js +259 -259
- package/lib/util/type-conversion-utils.d.ts +163 -23
- package/lib/util/type-conversion-utils.js +408 -265
- package/lib/util/type-conversion-utils.spec.d.ts +1 -1
- package/lib/util/type-conversion-utils.spec.js +868 -868
- package/lib/util/type-defaults.d.ts +74 -16
- package/lib/util/type-defaults.js +279 -221
- package/lib/util/type-defaults.spec.d.ts +1 -1
- package/lib/util/type-defaults.spec.js +516 -516
- package/lib/util/type-utils.d.ts +34 -13
- package/lib/util/type-utils.js +137 -114
- package/lib/util/type-utils.spec.d.ts +1 -1
- package/lib/util/type-utils.spec.js +192 -190
- package/package.json +21 -6
- package/scripts/copy-template.js +10 -0
- package/.claude/settings.local.json +0 -8
- package/.github/pull_request_template.md +0 -31
- package/.github/workflows/flexplm-lib.yml +0 -27
- package/.github/workflows/publish-to-npm.yml +0 -124
- package/CHANGELOG.md +0 -32
- package/publish.bat +0 -5
- package/publish.sh +0 -5
- package/src/entity-processor/base-entity-processor.spec.ts +0 -460
- package/src/entity-processor/base-entity-processor.ts +0 -515
- package/src/flexplm-request.ts +0 -28
- package/src/flexplm-utils.spec.ts +0 -27
- package/src/flexplm-utils.ts +0 -29
- package/src/index.ts +0 -22
- package/src/interfaces/interfaces.ts +0 -122
- package/src/interfaces/item-family-changes.ts +0 -67
- package/src/interfaces/publish-change-data.ts +0 -43
- package/src/publish/base-process-publish-assortment-callback.ts +0 -50
- package/src/publish/base-process-publish-assortment.spec.ts +0 -1992
- package/src/publish/base-process-publish-assortment.ts +0 -1134
- package/src/publish/mockData.ts +0 -4561
- package/src/transform/identifier-conversion-spec-mockData.ts +0 -496
- package/src/transform/identifier-conversion.spec.ts +0 -354
- package/src/transform/identifier-conversion.ts +0 -282
- package/src/util/config-defaults.spec.ts +0 -350
- package/src/util/config-defaults.ts +0 -93
- package/src/util/data-converter-spec-mockData.ts +0 -231
- package/src/util/data-converter.spec.ts +0 -1041
- package/src/util/data-converter.ts +0 -762
- package/src/util/error-response-object.spec.ts +0 -116
- package/src/util/error-response-object.ts +0 -50
- package/src/util/event-short-message-status.ts +0 -22
- package/src/util/federation.ts +0 -172
- package/src/util/flexplm-connect.spec.ts +0 -132
- package/src/util/flexplm-connect.ts +0 -208
- package/src/util/logger-config.ts +0 -20
- package/src/util/map-util-spec-mockData.ts +0 -231
- package/src/util/map-utils.spec.ts +0 -103
- package/src/util/map-utils.ts +0 -41
- package/src/util/mockData.ts +0 -101
- package/src/util/thumbnail-util.spec.ts +0 -508
- package/src/util/thumbnail-util.ts +0 -272
- package/src/util/type-conversion-utils-spec-mockData.ts +0 -271
- package/src/util/type-conversion-utils.spec.ts +0 -968
- package/src/util/type-conversion-utils.ts +0 -460
- package/src/util/type-defaults.spec.ts +0 -669
- package/src/util/type-defaults.ts +0 -281
- package/src/util/type-utils.spec.ts +0 -227
- package/src/util/type-utils.ts +0 -144
- package/tsconfig.json +0 -29
- package/tslint.json +0 -57
|
@@ -1,89 +1,89 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const maps = require('./map-util-spec-mockData').mapping;
|
|
4
|
-
const mockData = {
|
|
5
|
-
file1: maps
|
|
6
|
-
};
|
|
7
|
-
const mockGetMapFileFunction = jest.fn(async (fileId) => {
|
|
8
|
-
return mockData[fileId];
|
|
9
|
-
});
|
|
10
|
-
const sdk_1 = require("@contrail/sdk");
|
|
11
|
-
const transform_data_1 = require("@contrail/transform-data");
|
|
12
|
-
const map_utils_1 = require("./map-utils");
|
|
13
|
-
describe('getMapKey', () => {
|
|
14
|
-
const transformMapFile = 'file1';
|
|
15
|
-
const mapFileUtil = new transform_data_1.MapFileUtil(new sdk_1.Entities());
|
|
16
|
-
let spy;
|
|
17
|
-
beforeAll(() => {
|
|
18
|
-
spy = jest.spyOn(mapFileUtil, 'getMapFile').mockImplementation(mockGetMapFileFunction);
|
|
19
|
-
});
|
|
20
|
-
beforeEach(() => {
|
|
21
|
-
spy.mockClear();
|
|
22
|
-
});
|
|
23
|
-
afterAll(() => {
|
|
24
|
-
spy.mockRestore();
|
|
25
|
-
});
|
|
26
|
-
it('custom-entity:pack', async () => {
|
|
27
|
-
const entity = {
|
|
28
|
-
typePath: 'custom-entity:pack',
|
|
29
|
-
entityType: 'custom-entity'
|
|
30
|
-
};
|
|
31
|
-
const expectedMapKey = 'packaging';
|
|
32
|
-
const results = await map_utils_1.MapUtil.getMapKey(transformMapFile, mapFileUtil, entity, entity.entityType, 'vibe2flex');
|
|
33
|
-
;
|
|
34
|
-
expect(results).toEqual(expectedMapKey);
|
|
35
|
-
});
|
|
36
|
-
it('custom-entity:prefix', async () => {
|
|
37
|
-
const entity = {
|
|
38
|
-
typePath: 'custom-entity:prefix',
|
|
39
|
-
entityType: 'custom-entity'
|
|
40
|
-
};
|
|
41
|
-
const expectedMapKey = 'prefix';
|
|
42
|
-
const results = await map_utils_1.MapUtil.getMapKey(transformMapFile, mapFileUtil, entity, entity.entityType, 'vibe2flex');
|
|
43
|
-
;
|
|
44
|
-
expect(results).toEqual(expectedMapKey);
|
|
45
|
-
});
|
|
46
|
-
it('color - no mapping exists', async () => {
|
|
47
|
-
const entity = {
|
|
48
|
-
typePath: 'color',
|
|
49
|
-
entityType: 'color'
|
|
50
|
-
};
|
|
51
|
-
const expectedMapKey = undefined;
|
|
52
|
-
const results = await map_utils_1.MapUtil.getMapKey(transformMapFile, mapFileUtil, entity, entity.entityType, 'vibe2flex');
|
|
53
|
-
;
|
|
54
|
-
expect(results).toEqual(expectedMapKey);
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
describe('getFullMapSection', () => {
|
|
58
|
-
const transformMapFile = 'file1';
|
|
59
|
-
const mapFileUtil = new transform_data_1.MapFileUtil(new sdk_1.Entities());
|
|
60
|
-
let spy;
|
|
61
|
-
beforeAll(() => {
|
|
62
|
-
spy = jest.spyOn(mapFileUtil, 'getMapFile').mockImplementation(mockGetMapFileFunction);
|
|
63
|
-
});
|
|
64
|
-
beforeEach(() => {
|
|
65
|
-
spy.mockClear();
|
|
66
|
-
});
|
|
67
|
-
afterAll(() => {
|
|
68
|
-
spy.mockRestore();
|
|
69
|
-
});
|
|
70
|
-
it('custom-entity:pack', async () => {
|
|
71
|
-
const mapKey = 'packaging';
|
|
72
|
-
const mapSection = await map_utils_1.MapUtil.getFullMapSection(transformMapFile, mapFileUtil, mapKey);
|
|
73
|
-
expect(mapSection).toHaveProperty('vibe2flex');
|
|
74
|
-
expect(mapSection).toHaveProperty('flex2vibe');
|
|
75
|
-
});
|
|
76
|
-
it('custom-entity:catName', async () => {
|
|
77
|
-
const mapKey = 'catName';
|
|
78
|
-
const mapSection = await map_utils_1.MapUtil.getFullMapSection(transformMapFile, mapFileUtil, mapKey);
|
|
79
|
-
expect(mapSection).toHaveProperty('vibe2flex');
|
|
80
|
-
expect(mapSection).toHaveProperty('flex2vibe');
|
|
81
|
-
expect(mapSection).toHaveProperty('getIdentifierProperties');
|
|
82
|
-
expect(mapSection).toHaveProperty('getInformationalProperties');
|
|
83
|
-
});
|
|
84
|
-
it('color - no mapping exists', async () => {
|
|
85
|
-
const mapKey = 'color';
|
|
86
|
-
const mapSection = await map_utils_1.MapUtil.getFullMapSection(transformMapFile, mapFileUtil, mapKey);
|
|
87
|
-
expect(mapSection).toBeUndefined();
|
|
88
|
-
});
|
|
89
|
-
});
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const maps = require('./map-util-spec-mockData').mapping;
|
|
4
|
+
const mockData = {
|
|
5
|
+
file1: maps
|
|
6
|
+
};
|
|
7
|
+
const mockGetMapFileFunction = jest.fn(async (fileId) => {
|
|
8
|
+
return mockData[fileId];
|
|
9
|
+
});
|
|
10
|
+
const sdk_1 = require("@contrail/sdk");
|
|
11
|
+
const transform_data_1 = require("@contrail/transform-data");
|
|
12
|
+
const map_utils_1 = require("./map-utils");
|
|
13
|
+
describe('getMapKey', () => {
|
|
14
|
+
const transformMapFile = 'file1';
|
|
15
|
+
const mapFileUtil = new transform_data_1.MapFileUtil(new sdk_1.Entities());
|
|
16
|
+
let spy;
|
|
17
|
+
beforeAll(() => {
|
|
18
|
+
spy = jest.spyOn(mapFileUtil, 'getMapFile').mockImplementation(mockGetMapFileFunction);
|
|
19
|
+
});
|
|
20
|
+
beforeEach(() => {
|
|
21
|
+
spy.mockClear();
|
|
22
|
+
});
|
|
23
|
+
afterAll(() => {
|
|
24
|
+
spy.mockRestore();
|
|
25
|
+
});
|
|
26
|
+
it('custom-entity:pack', async () => {
|
|
27
|
+
const entity = {
|
|
28
|
+
typePath: 'custom-entity:pack',
|
|
29
|
+
entityType: 'custom-entity'
|
|
30
|
+
};
|
|
31
|
+
const expectedMapKey = 'packaging';
|
|
32
|
+
const results = await map_utils_1.MapUtil.getMapKey(transformMapFile, mapFileUtil, entity, entity.entityType, 'vibe2flex');
|
|
33
|
+
;
|
|
34
|
+
expect(results).toEqual(expectedMapKey);
|
|
35
|
+
});
|
|
36
|
+
it('custom-entity:prefix', async () => {
|
|
37
|
+
const entity = {
|
|
38
|
+
typePath: 'custom-entity:prefix',
|
|
39
|
+
entityType: 'custom-entity'
|
|
40
|
+
};
|
|
41
|
+
const expectedMapKey = 'prefix';
|
|
42
|
+
const results = await map_utils_1.MapUtil.getMapKey(transformMapFile, mapFileUtil, entity, entity.entityType, 'vibe2flex');
|
|
43
|
+
;
|
|
44
|
+
expect(results).toEqual(expectedMapKey);
|
|
45
|
+
});
|
|
46
|
+
it('color - no mapping exists', async () => {
|
|
47
|
+
const entity = {
|
|
48
|
+
typePath: 'color',
|
|
49
|
+
entityType: 'color'
|
|
50
|
+
};
|
|
51
|
+
const expectedMapKey = undefined;
|
|
52
|
+
const results = await map_utils_1.MapUtil.getMapKey(transformMapFile, mapFileUtil, entity, entity.entityType, 'vibe2flex');
|
|
53
|
+
;
|
|
54
|
+
expect(results).toEqual(expectedMapKey);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
describe('getFullMapSection', () => {
|
|
58
|
+
const transformMapFile = 'file1';
|
|
59
|
+
const mapFileUtil = new transform_data_1.MapFileUtil(new sdk_1.Entities());
|
|
60
|
+
let spy;
|
|
61
|
+
beforeAll(() => {
|
|
62
|
+
spy = jest.spyOn(mapFileUtil, 'getMapFile').mockImplementation(mockGetMapFileFunction);
|
|
63
|
+
});
|
|
64
|
+
beforeEach(() => {
|
|
65
|
+
spy.mockClear();
|
|
66
|
+
});
|
|
67
|
+
afterAll(() => {
|
|
68
|
+
spy.mockRestore();
|
|
69
|
+
});
|
|
70
|
+
it('custom-entity:pack', async () => {
|
|
71
|
+
const mapKey = 'packaging';
|
|
72
|
+
const mapSection = await map_utils_1.MapUtil.getFullMapSection(transformMapFile, mapFileUtil, mapKey);
|
|
73
|
+
expect(mapSection).toHaveProperty('vibe2flex');
|
|
74
|
+
expect(mapSection).toHaveProperty('flex2vibe');
|
|
75
|
+
});
|
|
76
|
+
it('custom-entity:catName', async () => {
|
|
77
|
+
const mapKey = 'catName';
|
|
78
|
+
const mapSection = await map_utils_1.MapUtil.getFullMapSection(transformMapFile, mapFileUtil, mapKey);
|
|
79
|
+
expect(mapSection).toHaveProperty('vibe2flex');
|
|
80
|
+
expect(mapSection).toHaveProperty('flex2vibe');
|
|
81
|
+
expect(mapSection).toHaveProperty('getIdentifierProperties');
|
|
82
|
+
expect(mapSection).toHaveProperty('getInformationalProperties');
|
|
83
|
+
});
|
|
84
|
+
it('color - no mapping exists', async () => {
|
|
85
|
+
const mapKey = 'color';
|
|
86
|
+
const mapSection = await map_utils_1.MapUtil.getFullMapSection(transformMapFile, mapFileUtil, mapKey);
|
|
87
|
+
expect(mapSection).toBeUndefined();
|
|
88
|
+
});
|
|
89
|
+
});
|
package/lib/util/mockData.d.ts
CHANGED
|
@@ -1,80 +1,80 @@
|
|
|
1
|
-
export declare const empty_custom_sizes: any[];
|
|
2
|
-
export declare const four_custom_sizes: {
|
|
3
|
-
size: number;
|
|
4
|
-
id: string;
|
|
5
|
-
slug: string;
|
|
6
|
-
name: string;
|
|
7
|
-
}[];
|
|
8
|
-
export declare const thumbnail_content_entity: {
|
|
9
|
-
fileName: string;
|
|
10
|
-
primaryFileId: string;
|
|
11
|
-
primaryFileUrl: string;
|
|
12
|
-
primaryFile: {
|
|
13
|
-
fileName: string;
|
|
14
|
-
id: string;
|
|
15
|
-
size: number;
|
|
16
|
-
};
|
|
17
|
-
tinyViewableId: string;
|
|
18
|
-
tinyViewableUrl: string;
|
|
19
|
-
tinyViewable: {
|
|
20
|
-
fileName: string;
|
|
21
|
-
id: string;
|
|
22
|
-
size: number;
|
|
23
|
-
};
|
|
24
|
-
smallViewableId: string;
|
|
25
|
-
smallViewableUrl: string;
|
|
26
|
-
smallViewable: {
|
|
27
|
-
fileName: string;
|
|
28
|
-
id: string;
|
|
29
|
-
size: number;
|
|
30
|
-
};
|
|
31
|
-
mediumViewableId: string;
|
|
32
|
-
mediumViewableUrl: string;
|
|
33
|
-
mediumViewable: {
|
|
34
|
-
fileName: string;
|
|
35
|
-
id: string;
|
|
36
|
-
size: number;
|
|
37
|
-
};
|
|
38
|
-
largeViewableId: string;
|
|
39
|
-
largeViewableUrl: string;
|
|
40
|
-
largeViewable: {
|
|
41
|
-
fileName: string;
|
|
42
|
-
id: string;
|
|
43
|
-
size: number;
|
|
44
|
-
};
|
|
45
|
-
CS_300Id: string;
|
|
46
|
-
CS_300Url: string;
|
|
47
|
-
CS_300: {
|
|
48
|
-
fileName: string;
|
|
49
|
-
id: string;
|
|
50
|
-
size: number;
|
|
51
|
-
};
|
|
52
|
-
CS_500Id: string;
|
|
53
|
-
CS_500Url: string;
|
|
54
|
-
CS_500: {
|
|
55
|
-
fileName: string;
|
|
56
|
-
id: string;
|
|
57
|
-
size: number;
|
|
58
|
-
};
|
|
59
|
-
CS_800Id: string;
|
|
60
|
-
CS_800Url: string;
|
|
61
|
-
CS_800: {
|
|
62
|
-
fileName: string;
|
|
63
|
-
id: string;
|
|
64
|
-
size: number;
|
|
65
|
-
};
|
|
66
|
-
CS_1000Id: string;
|
|
67
|
-
CS_1000Url: string;
|
|
68
|
-
CS_1000: {
|
|
69
|
-
fileName: string;
|
|
70
|
-
id: string;
|
|
71
|
-
size: number;
|
|
72
|
-
};
|
|
73
|
-
createdOn: string;
|
|
74
|
-
orgId: string;
|
|
75
|
-
id: string;
|
|
76
|
-
contentType: string;
|
|
77
|
-
createdById: string;
|
|
78
|
-
updatedById: string;
|
|
79
|
-
fileSize: number;
|
|
80
|
-
};
|
|
1
|
+
export declare const empty_custom_sizes: any[];
|
|
2
|
+
export declare const four_custom_sizes: {
|
|
3
|
+
size: number;
|
|
4
|
+
id: string;
|
|
5
|
+
slug: string;
|
|
6
|
+
name: string;
|
|
7
|
+
}[];
|
|
8
|
+
export declare const thumbnail_content_entity: {
|
|
9
|
+
fileName: string;
|
|
10
|
+
primaryFileId: string;
|
|
11
|
+
primaryFileUrl: string;
|
|
12
|
+
primaryFile: {
|
|
13
|
+
fileName: string;
|
|
14
|
+
id: string;
|
|
15
|
+
size: number;
|
|
16
|
+
};
|
|
17
|
+
tinyViewableId: string;
|
|
18
|
+
tinyViewableUrl: string;
|
|
19
|
+
tinyViewable: {
|
|
20
|
+
fileName: string;
|
|
21
|
+
id: string;
|
|
22
|
+
size: number;
|
|
23
|
+
};
|
|
24
|
+
smallViewableId: string;
|
|
25
|
+
smallViewableUrl: string;
|
|
26
|
+
smallViewable: {
|
|
27
|
+
fileName: string;
|
|
28
|
+
id: string;
|
|
29
|
+
size: number;
|
|
30
|
+
};
|
|
31
|
+
mediumViewableId: string;
|
|
32
|
+
mediumViewableUrl: string;
|
|
33
|
+
mediumViewable: {
|
|
34
|
+
fileName: string;
|
|
35
|
+
id: string;
|
|
36
|
+
size: number;
|
|
37
|
+
};
|
|
38
|
+
largeViewableId: string;
|
|
39
|
+
largeViewableUrl: string;
|
|
40
|
+
largeViewable: {
|
|
41
|
+
fileName: string;
|
|
42
|
+
id: string;
|
|
43
|
+
size: number;
|
|
44
|
+
};
|
|
45
|
+
CS_300Id: string;
|
|
46
|
+
CS_300Url: string;
|
|
47
|
+
CS_300: {
|
|
48
|
+
fileName: string;
|
|
49
|
+
id: string;
|
|
50
|
+
size: number;
|
|
51
|
+
};
|
|
52
|
+
CS_500Id: string;
|
|
53
|
+
CS_500Url: string;
|
|
54
|
+
CS_500: {
|
|
55
|
+
fileName: string;
|
|
56
|
+
id: string;
|
|
57
|
+
size: number;
|
|
58
|
+
};
|
|
59
|
+
CS_800Id: string;
|
|
60
|
+
CS_800Url: string;
|
|
61
|
+
CS_800: {
|
|
62
|
+
fileName: string;
|
|
63
|
+
id: string;
|
|
64
|
+
size: number;
|
|
65
|
+
};
|
|
66
|
+
CS_1000Id: string;
|
|
67
|
+
CS_1000Url: string;
|
|
68
|
+
CS_1000: {
|
|
69
|
+
fileName: string;
|
|
70
|
+
id: string;
|
|
71
|
+
size: number;
|
|
72
|
+
};
|
|
73
|
+
createdOn: string;
|
|
74
|
+
orgId: string;
|
|
75
|
+
id: string;
|
|
76
|
+
contentType: string;
|
|
77
|
+
createdById: string;
|
|
78
|
+
updatedById: string;
|
|
79
|
+
fileSize: number;
|
|
80
|
+
};
|
package/lib/util/mockData.js
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.thumbnail_content_entity = exports.four_custom_sizes = exports.empty_custom_sizes = void 0;
|
|
4
|
-
exports.empty_custom_sizes = [];
|
|
5
|
-
exports.four_custom_sizes = [
|
|
6
|
-
{
|
|
7
|
-
size: 1000,
|
|
8
|
-
id: '-QwFOWnCs0Gb5jkA',
|
|
9
|
-
slug: 'CS_1000',
|
|
10
|
-
name: 'CS_1000'
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
size: 300,
|
|
14
|
-
id: 'AKXOowvhJRnkerG8',
|
|
15
|
-
slug: 'CS_300',
|
|
16
|
-
name: 'CS_300'
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
size: 500,
|
|
20
|
-
id: '9asQ65N188RIYgnh',
|
|
21
|
-
slug: 'CS_500',
|
|
22
|
-
name: 'CS_500'
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
size: 800,
|
|
26
|
-
id: 'xkzhwE4nJ6iRwfvP',
|
|
27
|
-
slug: 'CS_800',
|
|
28
|
-
name: 'CS_800'
|
|
29
|
-
}
|
|
30
|
-
];
|
|
31
|
-
exports.thumbnail_content_entity = {
|
|
32
|
-
fileName: 'JACKET 300_SOLDIER OLIVE.png',
|
|
33
|
-
primaryFileId: 'yn2d5oHD4rXHRzyB',
|
|
34
|
-
primaryFileUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Ff646d3cd-e23a-4689-bd16-0301d2036720.png',
|
|
35
|
-
primaryFile: {
|
|
36
|
-
fileName: 'JACKET 300_SOLDIER OLIVE.png',
|
|
37
|
-
id: 'yn2d5oHD4rXHRzyB',
|
|
38
|
-
size: 1757973
|
|
39
|
-
},
|
|
40
|
-
tinyViewableId: '6HWzJrQ-Jx1iefmj',
|
|
41
|
-
tinyViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fb68f8652-f33f-452f-ae34-25397b4521eb.png',
|
|
42
|
-
tinyViewable: {
|
|
43
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_tiny.png',
|
|
44
|
-
id: '6HWzJrQ-Jx1iefmj',
|
|
45
|
-
size: 1784
|
|
46
|
-
},
|
|
47
|
-
smallViewableId: 'D3WRW4iRmjLzp5VX',
|
|
48
|
-
smallViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F541c53f8-fd85-418e-ae28-ad7410658b90.png',
|
|
49
|
-
smallViewable: {
|
|
50
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_small.png',
|
|
51
|
-
id: 'D3WRW4iRmjLzp5VX',
|
|
52
|
-
size: 8699
|
|
53
|
-
},
|
|
54
|
-
mediumViewableId: 'AsRvJenpeqxksUNW',
|
|
55
|
-
mediumViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fe803c2d3-3e1b-4d9c-9bb9-2c488f1f295b.png',
|
|
56
|
-
mediumViewable: {
|
|
57
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_medium.png',
|
|
58
|
-
id: 'AsRvJenpeqxksUNW',
|
|
59
|
-
size: 77558
|
|
60
|
-
},
|
|
61
|
-
largeViewableId: 'vo4N4mCd-tFrw101',
|
|
62
|
-
largeViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fb1b7a55c-b8ba-4857-be4e-e1c3f11d8e9a.png',
|
|
63
|
-
largeViewable: {
|
|
64
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_large.png',
|
|
65
|
-
id: 'vo4N4mCd-tFrw101',
|
|
66
|
-
size: 1781538
|
|
67
|
-
},
|
|
68
|
-
CS_300Id: '6A5AG33nVu3Z6ogO',
|
|
69
|
-
CS_300Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F3f2ea306-a77f-4cc3-a49a-75fb5d8b113c.png',
|
|
70
|
-
CS_300: {
|
|
71
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_CS_300.png',
|
|
72
|
-
id: '6A5AG33nVu3Z6ogO',
|
|
73
|
-
size: 141153
|
|
74
|
-
},
|
|
75
|
-
CS_500Id: 'rBaHc1J2xdOWdbhI',
|
|
76
|
-
CS_500Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F979c8c65-b63f-4220-aa2e-11520f2f68bf.png',
|
|
77
|
-
CS_500: {
|
|
78
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_CS_500.png',
|
|
79
|
-
id: 'rBaHc1J2xdOWdbhI',
|
|
80
|
-
size: 382057
|
|
81
|
-
},
|
|
82
|
-
CS_800Id: 'ZPAeYI3JiqjQ7unY',
|
|
83
|
-
CS_800Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fc58eeffa-2592-4698-a058-19281cda447c.png',
|
|
84
|
-
CS_800: {
|
|
85
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_CS_800.png',
|
|
86
|
-
id: 'ZPAeYI3JiqjQ7unY',
|
|
87
|
-
size: 1008702
|
|
88
|
-
},
|
|
89
|
-
CS_1000Id: 'Hg_CthwsD4ozopCb',
|
|
90
|
-
CS_1000Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F2c827c7b-361b-4e05-b77d-4280294f9d9c.png',
|
|
91
|
-
CS_1000: {
|
|
92
|
-
fileName: 'JACKET 300_SOLDIER OLIVE_CS_1000.png',
|
|
93
|
-
id: 'Hg_CthwsD4ozopCb',
|
|
94
|
-
size: 1605889
|
|
95
|
-
},
|
|
96
|
-
createdOn: '2023-07-05T15:02:13.950Z',
|
|
97
|
-
orgId: '5LZnKVTNxvwMqufy',
|
|
98
|
-
id: 'cuRficeyoStwTF-f',
|
|
99
|
-
contentType: 'image/png',
|
|
100
|
-
createdById: 'SWIFPZeZzkBvrSLD',
|
|
101
|
-
updatedById: 'SWIFPZeZzkBvrSLD',
|
|
102
|
-
fileSize: 1757973
|
|
103
|
-
};
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.thumbnail_content_entity = exports.four_custom_sizes = exports.empty_custom_sizes = void 0;
|
|
4
|
+
exports.empty_custom_sizes = [];
|
|
5
|
+
exports.four_custom_sizes = [
|
|
6
|
+
{
|
|
7
|
+
size: 1000,
|
|
8
|
+
id: '-QwFOWnCs0Gb5jkA',
|
|
9
|
+
slug: 'CS_1000',
|
|
10
|
+
name: 'CS_1000'
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
size: 300,
|
|
14
|
+
id: 'AKXOowvhJRnkerG8',
|
|
15
|
+
slug: 'CS_300',
|
|
16
|
+
name: 'CS_300'
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
size: 500,
|
|
20
|
+
id: '9asQ65N188RIYgnh',
|
|
21
|
+
slug: 'CS_500',
|
|
22
|
+
name: 'CS_500'
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
size: 800,
|
|
26
|
+
id: 'xkzhwE4nJ6iRwfvP',
|
|
27
|
+
slug: 'CS_800',
|
|
28
|
+
name: 'CS_800'
|
|
29
|
+
}
|
|
30
|
+
];
|
|
31
|
+
exports.thumbnail_content_entity = {
|
|
32
|
+
fileName: 'JACKET 300_SOLDIER OLIVE.png',
|
|
33
|
+
primaryFileId: 'yn2d5oHD4rXHRzyB',
|
|
34
|
+
primaryFileUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Ff646d3cd-e23a-4689-bd16-0301d2036720.png',
|
|
35
|
+
primaryFile: {
|
|
36
|
+
fileName: 'JACKET 300_SOLDIER OLIVE.png',
|
|
37
|
+
id: 'yn2d5oHD4rXHRzyB',
|
|
38
|
+
size: 1757973
|
|
39
|
+
},
|
|
40
|
+
tinyViewableId: '6HWzJrQ-Jx1iefmj',
|
|
41
|
+
tinyViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fb68f8652-f33f-452f-ae34-25397b4521eb.png',
|
|
42
|
+
tinyViewable: {
|
|
43
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_tiny.png',
|
|
44
|
+
id: '6HWzJrQ-Jx1iefmj',
|
|
45
|
+
size: 1784
|
|
46
|
+
},
|
|
47
|
+
smallViewableId: 'D3WRW4iRmjLzp5VX',
|
|
48
|
+
smallViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F541c53f8-fd85-418e-ae28-ad7410658b90.png',
|
|
49
|
+
smallViewable: {
|
|
50
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_small.png',
|
|
51
|
+
id: 'D3WRW4iRmjLzp5VX',
|
|
52
|
+
size: 8699
|
|
53
|
+
},
|
|
54
|
+
mediumViewableId: 'AsRvJenpeqxksUNW',
|
|
55
|
+
mediumViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fe803c2d3-3e1b-4d9c-9bb9-2c488f1f295b.png',
|
|
56
|
+
mediumViewable: {
|
|
57
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_medium.png',
|
|
58
|
+
id: 'AsRvJenpeqxksUNW',
|
|
59
|
+
size: 77558
|
|
60
|
+
},
|
|
61
|
+
largeViewableId: 'vo4N4mCd-tFrw101',
|
|
62
|
+
largeViewableUrl: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fb1b7a55c-b8ba-4857-be4e-e1c3f11d8e9a.png',
|
|
63
|
+
largeViewable: {
|
|
64
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_large.png',
|
|
65
|
+
id: 'vo4N4mCd-tFrw101',
|
|
66
|
+
size: 1781538
|
|
67
|
+
},
|
|
68
|
+
CS_300Id: '6A5AG33nVu3Z6ogO',
|
|
69
|
+
CS_300Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F3f2ea306-a77f-4cc3-a49a-75fb5d8b113c.png',
|
|
70
|
+
CS_300: {
|
|
71
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_CS_300.png',
|
|
72
|
+
id: '6A5AG33nVu3Z6ogO',
|
|
73
|
+
size: 141153
|
|
74
|
+
},
|
|
75
|
+
CS_500Id: 'rBaHc1J2xdOWdbhI',
|
|
76
|
+
CS_500Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F979c8c65-b63f-4220-aa2e-11520f2f68bf.png',
|
|
77
|
+
CS_500: {
|
|
78
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_CS_500.png',
|
|
79
|
+
id: 'rBaHc1J2xdOWdbhI',
|
|
80
|
+
size: 382057
|
|
81
|
+
},
|
|
82
|
+
CS_800Id: 'ZPAeYI3JiqjQ7unY',
|
|
83
|
+
CS_800Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2Fc58eeffa-2592-4698-a058-19281cda447c.png',
|
|
84
|
+
CS_800: {
|
|
85
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_CS_800.png',
|
|
86
|
+
id: 'ZPAeYI3JiqjQ7unY',
|
|
87
|
+
size: 1008702
|
|
88
|
+
},
|
|
89
|
+
CS_1000Id: 'Hg_CthwsD4ozopCb',
|
|
90
|
+
CS_1000Url: 'https://api.vibeiq.com/prod/api/files/downloadUrl/5LZnKVTNxvwMqufy%2Fcontent:cuRficeyoStwTF-f%2F2c827c7b-361b-4e05-b77d-4280294f9d9c.png',
|
|
91
|
+
CS_1000: {
|
|
92
|
+
fileName: 'JACKET 300_SOLDIER OLIVE_CS_1000.png',
|
|
93
|
+
id: 'Hg_CthwsD4ozopCb',
|
|
94
|
+
size: 1605889
|
|
95
|
+
},
|
|
96
|
+
createdOn: '2023-07-05T15:02:13.950Z',
|
|
97
|
+
orgId: '5LZnKVTNxvwMqufy',
|
|
98
|
+
id: 'cuRficeyoStwTF-f',
|
|
99
|
+
contentType: 'image/png',
|
|
100
|
+
createdById: 'SWIFPZeZzkBvrSLD',
|
|
101
|
+
updatedById: 'SWIFPZeZzkBvrSLD',
|
|
102
|
+
fileSize: 1757973
|
|
103
|
+
};
|
|
@@ -1,34 +1,55 @@
|
|
|
1
|
-
import { FCConfig } from '../interfaces/interfaces';
|
|
2
|
-
interface ContentCustomSize {
|
|
3
|
-
id: string;
|
|
4
|
-
slug: string;
|
|
5
|
-
name: string;
|
|
6
|
-
}
|
|
7
|
-
export declare class ThumbnailUtil {
|
|
8
|
-
private config;
|
|
9
|
-
|
|
10
|
-
private
|
|
11
|
-
|
|
12
|
-
static
|
|
13
|
-
static
|
|
14
|
-
static
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
1
|
+
import { FCConfig } from '../interfaces/interfaces';
|
|
2
|
+
interface ContentCustomSize {
|
|
3
|
+
id: string;
|
|
4
|
+
slug: string;
|
|
5
|
+
name: string;
|
|
6
|
+
}
|
|
7
|
+
export declare class ThumbnailUtil {
|
|
8
|
+
private config;
|
|
9
|
+
/** The max_thumbnail_size is for limiting the size of the thumbnail being sent to FlexPLM. It is used when checking the size of the auto generated thumbnails (smallViewable, tinyViewable, etc.). */
|
|
10
|
+
private max_thumbnail_size;
|
|
11
|
+
private entities;
|
|
12
|
+
static NEW_THUMBNAIL_ID: string;
|
|
13
|
+
static EXISTING_THUMBNAIL_ID: string;
|
|
14
|
+
static REMOVE_THUMBNAIL: string;
|
|
15
|
+
static OOB_SIZES: {
|
|
16
|
+
slug: string;
|
|
17
|
+
}[];
|
|
18
|
+
constructor(config: FCConfig);
|
|
19
|
+
setOutboundThumbnail(data: any, event: any): Promise<any>;
|
|
20
|
+
/** Determines if a new image has been generated. If any viewable is new, there might be a better
|
|
21
|
+
* sized image. So send the fileId as new.
|
|
22
|
+
*/
|
|
23
|
+
isThumbnailNew(event: any, customSizes: any[]): boolean;
|
|
24
|
+
getFileId(primaryViewableId: string): Promise<string | undefined>;
|
|
25
|
+
getCustomSizes(): Promise<ContentCustomSize[]>;
|
|
26
|
+
getContentEntity(primaryViewableId: any, sizes: ContentCustomSize[]): Promise<any>;
|
|
27
|
+
/** This outputs the content entity, without the inflated file entities.
|
|
28
|
+
* To help debugging issues with sending the thumbnail info.
|
|
29
|
+
* The inflated entities are removed, because are large and cause
|
|
30
|
+
* problems with log file size limits.
|
|
31
|
+
*
|
|
32
|
+
* @param content: the content with inflated objects
|
|
33
|
+
* @param relations: string[] of the slugs for inflated objects
|
|
34
|
+
*/
|
|
35
|
+
logContentResults(content: any, relations: string[]): void;
|
|
36
|
+
/** Syncs the thumbnail from FlexPLM to VibeIQ. Handles creating, replacing, or removing
|
|
37
|
+
* the primary viewable content and persists the updates directly to the entity.
|
|
38
|
+
*
|
|
39
|
+
* @param entityId - The ID of the entity to update with thumbnail properties.
|
|
40
|
+
* @param primaryViewableId - The existing primary viewable content ID, if any.
|
|
41
|
+
* @param event - The inbound event containing thumbnail data (NEW_THUMBNAIL_ID / EXISTING_THUMBNAIL_ID).
|
|
42
|
+
* @param entityName - The entity type name (e.g. 'item', 'color') used for API calls.
|
|
43
|
+
* @returns The updated entity, or undefined if no thumbnail changes were needed.
|
|
44
|
+
*/
|
|
45
|
+
syncThumbnailToVibeIQ({ entityId, primaryViewableId, event, entityName }: {
|
|
46
|
+
entityId: string;
|
|
47
|
+
primaryViewableId?: string;
|
|
48
|
+
event: any;
|
|
49
|
+
entityName: string;
|
|
50
|
+
}): Promise<any>;
|
|
51
|
+
private createContentFromFlexPLM;
|
|
52
|
+
private getPrimaryViewableUpdates;
|
|
53
|
+
private getClearPrimaryViewableUpdates;
|
|
54
|
+
}
|
|
55
|
+
export {};
|