@shopgate/pwa-core 7.30.0-alpha.6 → 7.30.0-alpha.8
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/classes/AppCommand/index.js +115 -11
- package/classes/AppCommand/spec.js +260 -6
- package/classes/AppCommandRequest/index.js +129 -20
- package/classes/AppPermissionsRequest/AppPermissionsRequest.js +45 -7
- package/classes/AppPermissionsRequest/GetAppPermissionsRequest.js +48 -9
- package/classes/AppPermissionsRequest/RequestAppPermissionsRequest.js +54 -9
- package/classes/Bridge/index.js +34 -4
- package/classes/Bridge/spec.js +24 -1
- package/classes/BrightnessRequest/index.js +59 -10
- package/classes/BrightnessRequest/spec.js +111 -6
- package/classes/BrowserConnector/index.js +180 -26
- package/classes/Conditioner/index.js +74 -8
- package/classes/Conditioner/spec.js +75 -1
- package/classes/DataRequest/index.js +116 -13
- package/classes/DevServerBridge/index.js +86 -9
- package/classes/DevServerBridge/spec.js +231 -14
- package/classes/ErrorManager/index.js +144 -20
- package/classes/ErrorManager/spec.js +244 -2
- package/classes/Event/index.js +101 -15
- package/classes/HttpRequest/index.js +182 -21
- package/classes/PipelineDependencies/index.js +42 -6
- package/classes/PipelineDependencies/spec.js +46 -3
- package/classes/PipelineManager/index.js +517 -71
- package/classes/PipelineManager/spec.js +733 -15
- package/classes/PipelineRequest/index.js +167 -19
- package/classes/PipelineRequest/mock.js +118 -21
- package/classes/PipelineRequest/spec.js +333 -2
- package/classes/PipelineSequence/index.js +34 -6
- package/classes/Request/index.js +61 -13
- package/classes/RequestBuffer/index.js +43 -6
- package/classes/RequestManager/index.js +216 -33
- package/classes/RequestManager/spec.js +188 -1
- package/classes/Scanner/index.js +246 -67
- package/classes/ScannerEvent/index.js +23 -9
- package/classes/ScannerEventHandler/index.js +39 -16
- package/classes/ScannerEventListener/index.js +84 -24
- package/classes/ScannerManager/ScanProcessingError.js +11 -3
- package/classes/ScannerManager/index.js +133 -21
- package/classes/WebStorageRequest/index.js +76 -9
- package/commands/analyticsSetCustomValues.js +8 -2
- package/commands/appPermissions.js +10 -3
- package/commands/brightness.js +33 -5
- package/commands/broadcastEvent.js +8 -2
- package/commands/cleanTab.js +11 -3
- package/commands/closeInAppBrowser.js +22 -2
- package/commands/flushTab.js +8 -2
- package/commands/getWebStorageEntry.js +11 -2
- package/commands/hideMenuBar.js +8 -2
- package/commands/hideNavigationBar.js +8 -2
- package/commands/hideSplashScreen.js +8 -2
- package/commands/onload.js +13 -3
- package/commands/openAppSettings.js +8 -2
- package/commands/openPage.js +8 -2
- package/commands/openPageExtern.js +8 -2
- package/commands/performCommandsAfterDelay.js +11 -3
- package/commands/plotProjects.js +65 -7
- package/commands/popTabToRoot.js +11 -3
- package/commands/registerEvents.js +10 -2
- package/commands/scanner.js +76 -7
- package/commands/setCookie.js +8 -2
- package/commands/setDebugLoggingEnabled.js +8 -2
- package/commands/setScrollingEnabled.js +7 -2
- package/commands/setWebStorageEntry.js +8 -2
- package/commands/shareItem.js +18 -2
- package/commands/showNavigationBar.js +8 -2
- package/commands/showTab.js +13 -2
- package/commands/unifiedTracking.js +128 -30
- package/constants/AppCommands.js +6 -1
- package/constants/AppEvents.js +9 -1
- package/constants/AppPermissions.js +57 -13
- package/constants/Command.js +1 -1
- package/constants/ErrorHandleTypes.js +2 -1
- package/constants/ErrorManager.js +15 -1
- package/constants/Pipeline.js +52 -17
- package/constants/ProcessTypes.js +3 -1
- package/constants/RequestManagerModes.js +19 -7
- package/constants/RequestTypes.js +2 -1
- package/constants/Scanner.js +39 -10
- package/constants/Trilean.js +6 -1
- package/emitters/ui.js +2 -1
- package/helpers/index.js +66 -8
- package/helpers/logGroup.js +56 -8
- package/helpers/version.js +216 -22
- package/index.js +60 -5
- package/package.json +1 -1
|
@@ -1,17 +1,53 @@
|
|
|
1
|
-
|
|
1
|
+
import logGroup from "../../helpers/logGroup";
|
|
2
|
+
|
|
3
|
+
/**
|
|
2
4
|
* Holds the pipeline dependencies.
|
|
3
|
-
*/
|
|
5
|
+
*/
|
|
6
|
+
class PipelineDependencies {
|
|
7
|
+
/**
|
|
4
8
|
* Constructor.
|
|
5
|
-
*/
|
|
9
|
+
*/
|
|
10
|
+
constructor() {
|
|
11
|
+
this.dependencies = {};
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/**
|
|
6
15
|
* Sets new dependencies for a pipeline request.
|
|
7
16
|
* @param {string} pipelineName The name of the pipeline request.
|
|
8
17
|
* @param {Array|string} dependencies Pipeline names to set as a dependency.
|
|
9
|
-
*/
|
|
18
|
+
*/
|
|
19
|
+
set(pipelineName, dependencies = []) {
|
|
20
|
+
const newDependencies = [].concat(dependencies);
|
|
21
|
+
if (!dependencies || !dependencies.length) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (!this.has(pipelineName)) {
|
|
25
|
+
this.dependencies[pipelineName] = new Set(newDependencies);
|
|
26
|
+
} else {
|
|
27
|
+
newDependencies.forEach(dep => this.dependencies[pipelineName].add(dep));
|
|
28
|
+
}
|
|
29
|
+
logGroup(`PipelineDependencies %c${pipelineName}`, this.dependencies, '#FFCD34');
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
10
33
|
* Returns a list of pipeline names that are a dependency of a pipeline request.
|
|
11
34
|
* @param {string} pipelineName The name of the pipeline request.
|
|
12
35
|
* @return {Set}
|
|
13
|
-
*/
|
|
36
|
+
*/
|
|
37
|
+
get(pipelineName) {
|
|
38
|
+
if (!pipelineName || !this.has(pipelineName)) {
|
|
39
|
+
return new Set();
|
|
40
|
+
}
|
|
41
|
+
return this.dependencies[pipelineName];
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
14
45
|
* Checks if a pipeline has dependencies registered
|
|
15
46
|
* @param {string} pipelineName The pipeline name
|
|
16
47
|
* @return {boolean}
|
|
17
|
-
*/
|
|
48
|
+
*/
|
|
49
|
+
has(pipelineName) {
|
|
50
|
+
return this.dependencies.hasOwnProperty(pipelineName);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export default new PipelineDependencies();
|
|
@@ -1,5 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
const pipelineName = 'TestPipeline';
|
|
2
|
+
const dependecies1 = ['TestPipeline1', 'TestPipeline2'];
|
|
3
|
+
const dependecies2 = ['TestPipeline3', 'TestPipeline4'];
|
|
4
|
+
const defaultResult = new Set();
|
|
5
|
+
const mockLogGroup = jest.fn();
|
|
6
|
+
jest.mock("../../helpers/logGroup", () => (...args) => mockLogGroup(args));
|
|
7
|
+
|
|
8
|
+
/**
|
|
2
9
|
* Creates a fresh instance
|
|
3
10
|
* @return {PipelineDependencies}
|
|
4
|
-
*/
|
|
5
|
-
|
|
11
|
+
*/
|
|
12
|
+
const getInstance = () => {
|
|
13
|
+
const instance = require.requireActual("./index").default;
|
|
14
|
+
return instance;
|
|
15
|
+
};
|
|
16
|
+
describe('PipelineDependencies', () => {
|
|
17
|
+
beforeEach(() => {
|
|
18
|
+
jest.resetModules();
|
|
19
|
+
jest.clearAllMocks();
|
|
20
|
+
});
|
|
21
|
+
it('should get default', () => {
|
|
22
|
+
const pipelineDependencies = getInstance();
|
|
23
|
+
let result = pipelineDependencies.get(pipelineName);
|
|
24
|
+
expect(result).toEqual(defaultResult);
|
|
25
|
+
result = pipelineDependencies.get();
|
|
26
|
+
expect(result).toEqual(defaultResult);
|
|
27
|
+
expect(mockLogGroup).toHaveBeenCalledTimes(0);
|
|
28
|
+
});
|
|
29
|
+
it('should set default', () => {
|
|
30
|
+
const pipelineDependencies = getInstance();
|
|
31
|
+
pipelineDependencies.set(pipelineName);
|
|
32
|
+
const result = pipelineDependencies.get(pipelineName);
|
|
33
|
+
expect(result).toEqual(defaultResult);
|
|
34
|
+
expect(mockLogGroup).toHaveBeenCalledTimes(0);
|
|
35
|
+
});
|
|
36
|
+
it('should set dependencies', () => {
|
|
37
|
+
const pipelineDependencies = getInstance();
|
|
38
|
+
pipelineDependencies.set(pipelineName, dependecies1);
|
|
39
|
+
let result = new Set(dependecies1);
|
|
40
|
+
expect(pipelineDependencies.get(pipelineName)).toEqual(result);
|
|
41
|
+
|
|
42
|
+
// Add more
|
|
43
|
+
pipelineDependencies.set(pipelineName, dependecies2);
|
|
44
|
+
result = new Set([...dependecies1, ...dependecies2]);
|
|
45
|
+
expect(pipelineDependencies.get(pipelineName)).toEqual(result);
|
|
46
|
+
expect(mockLogGroup).toHaveBeenCalledTimes(2);
|
|
47
|
+
});
|
|
48
|
+
});
|