@adobe/exc-app 1.0.5 → 1.0.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/RuntimeConfiguration.d.ts +12 -0
- package/appapi.d.ts +3 -3
- package/appapi.js +2 -2
- package/appapi.js.map +1 -1
- package/capabilityapi.d.ts +2 -0
- package/capabilityapi.js +2 -0
- package/capabilityapi.js.map +1 -1
- package/component.d.ts +53 -0
- package/component.js +72 -0
- package/component.js.map +1 -0
- package/docs/enums/appapi.appids.md +7 -7
- package/docs/enums/network.standardvariables.md +24 -0
- package/docs/interfaces/network.datadedupconfig.md +32 -0
- package/docs/interfaces/network.dataprefetchcontract.md +129 -0
- package/docs/interfaces/network.fetchcondition.md +27 -0
- package/docs/interfaces/network.graphqlquery.md +2 -0
- package/docs/interfaces/network.networkapi.md +29 -0
- package/docs/interfaces/network.prefetchoptions.md +34 -0
- package/docs/interfaces/network.querydefinition.md +100 -0
- package/docs/interfaces/root.runtimeconfiguration.md +9 -0
- package/docs/interfaces/shell.shellinfo.md +7 -0
- package/docs/modules/network.md +55 -0
- package/ims/ImsProfile.d.ts +1 -0
- package/jest.config.js +0 -4
- package/network/DataPrefetchContract.d.ts +46 -0
- package/network/DataPrefetchContract.js +7 -1
- package/network/DataPrefetchContract.js.map +1 -1
- package/package.json +3 -4
- package/src/Global.d.ts +2 -0
- package/src/Global.js.map +1 -1
- package/tests/appapi.test.js +0 -4
- package/tests/appapi.test.js.map +1 -1
- package/tests/component.test.d.ts +1 -0
- package/tests/component.test.js +74 -0
- package/tests/component.test.js.map +1 -0
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/coverage/lcov-report/block-navigation.js +0 -79
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sorter.js +0 -170
- package/network/DataContract.d.ts +0 -35
- package/network/DataContract.js +0 -3
- package/network/DataContract.js.map +0 -1
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
**[@adobe/exc-app](../README.md)**
|
|
2
|
+
|
|
3
|
+
> [Globals](../README.md) / [network](../modules/network.md) / QueryDefinition
|
|
4
|
+
|
|
5
|
+
# Interface: QueryDefinition
|
|
6
|
+
|
|
7
|
+
Defines a GraphQL query that will be executed to fetch the data exposed by this contract.
|
|
8
|
+
|
|
9
|
+
## Hierarchy
|
|
10
|
+
|
|
11
|
+
* [GraphQLQuery](network.graphqlquery.md)
|
|
12
|
+
|
|
13
|
+
↳ **QueryDefinition**
|
|
14
|
+
|
|
15
|
+
## Index
|
|
16
|
+
|
|
17
|
+
### Properties
|
|
18
|
+
|
|
19
|
+
* [dataPath](network.querydefinition.md#datapath)
|
|
20
|
+
* [fetchScope](network.querydefinition.md#fetchscope)
|
|
21
|
+
* [ignoreErrorsOnPaths](network.querydefinition.md#ignoreerrorsonpaths)
|
|
22
|
+
* [query](network.querydefinition.md#query)
|
|
23
|
+
* [variables](network.querydefinition.md#variables)
|
|
24
|
+
|
|
25
|
+
## Properties
|
|
26
|
+
|
|
27
|
+
### dataPath
|
|
28
|
+
|
|
29
|
+
• `Optional` **dataPath**: undefined \| string
|
|
30
|
+
|
|
31
|
+
When provided, the data at the certain path will be returned.
|
|
32
|
+
If not provided, the entire GraphQL response will be returned.
|
|
33
|
+
|
|
34
|
+
___
|
|
35
|
+
|
|
36
|
+
### fetchScope
|
|
37
|
+
|
|
38
|
+
• **fetchScope**: [FetchScope](../enums/network.fetchscope.md)
|
|
39
|
+
|
|
40
|
+
Fetch scope. Controls which headers are sent with the query.
|
|
41
|
+
See fetch documentation for more info.
|
|
42
|
+
|
|
43
|
+
___
|
|
44
|
+
|
|
45
|
+
### ignoreErrorsOnPaths
|
|
46
|
+
|
|
47
|
+
• `Optional` **ignoreErrorsOnPaths**: string[]
|
|
48
|
+
|
|
49
|
+
Do not fail (throw) when encountering errors while processing the query if the errors
|
|
50
|
+
happened on certain paths.
|
|
51
|
+
|
|
52
|
+
___
|
|
53
|
+
|
|
54
|
+
### query
|
|
55
|
+
|
|
56
|
+
• **query**: string
|
|
57
|
+
|
|
58
|
+
*Inherited from [GraphQLQuery](network.graphqlquery.md).[query](network.graphqlquery.md#query)*
|
|
59
|
+
|
|
60
|
+
GQL Query.
|
|
61
|
+
|
|
62
|
+
***Example:***
|
|
63
|
+
|
|
64
|
+
```typescript
|
|
65
|
+
{query: `
|
|
66
|
+
query userBehanceQuery($userId: String!, $apiKey: String!) {
|
|
67
|
+
userBehance(userId: $userId, apiKey: $apiKey) {
|
|
68
|
+
images
|
|
69
|
+
}
|
|
70
|
+
}`
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
{query: `
|
|
74
|
+
query userBehanceQuery {
|
|
75
|
+
userBehance(userId: "123@AdobeID", apiKey: "test-app") {
|
|
76
|
+
images
|
|
77
|
+
}
|
|
78
|
+
}`
|
|
79
|
+
};
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
___
|
|
83
|
+
|
|
84
|
+
### variables
|
|
85
|
+
|
|
86
|
+
• `Optional` **variables**: Record<string, any\>
|
|
87
|
+
|
|
88
|
+
*Inherited from [GraphQLQuery](network.graphqlquery.md).[variables](network.graphqlquery.md#variables)*
|
|
89
|
+
|
|
90
|
+
Query specific variables- key value pairs.
|
|
91
|
+
|
|
92
|
+
***Example:***
|
|
93
|
+
|
|
94
|
+
```typescript
|
|
95
|
+
{variables: {
|
|
96
|
+
apiKey: 'test-app',
|
|
97
|
+
userId: '123@AdobeID'
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
```
|
|
@@ -21,6 +21,7 @@ External Runtime Configuration Interface
|
|
|
21
21
|
* [baseFrameUrl](root.runtimeconfiguration.md#baseframeurl)
|
|
22
22
|
* [basePath](root.runtimeconfiguration.md#basepath)
|
|
23
23
|
* [baseUrl](root.runtimeconfiguration.md#baseurl)
|
|
24
|
+
* [cdn](root.runtimeconfiguration.md#cdn)
|
|
24
25
|
* [changedProperties](root.runtimeconfiguration.md#changedproperties)
|
|
25
26
|
* [discovery](root.runtimeconfiguration.md#discovery)
|
|
26
27
|
* [environment](root.runtimeconfiguration.md#environment)
|
|
@@ -117,6 +118,14 @@ Base URL
|
|
|
117
118
|
|
|
118
119
|
___
|
|
119
120
|
|
|
121
|
+
### cdn
|
|
122
|
+
|
|
123
|
+
• **cdn**: string
|
|
124
|
+
|
|
125
|
+
Environment specific CDN string.
|
|
126
|
+
|
|
127
|
+
___
|
|
128
|
+
|
|
120
129
|
### changedProperties
|
|
121
130
|
|
|
122
131
|
• **changedProperties**: keyof [RuntimeConfiguration](root.runtimeconfiguration.md)[]
|
|
@@ -12,12 +12,19 @@
|
|
|
12
12
|
|
|
13
13
|
### Properties
|
|
14
14
|
|
|
15
|
+
* [cdn](shell.shellinfo.md#cdn)
|
|
15
16
|
* [environment](shell.shellinfo.md#environment)
|
|
16
17
|
* [imsEnvironment](shell.shellinfo.md#imsenvironment)
|
|
17
18
|
* [shellInfo](shell.shellinfo.md#shellinfo)
|
|
18
19
|
|
|
19
20
|
## Properties
|
|
20
21
|
|
|
22
|
+
### cdn
|
|
23
|
+
|
|
24
|
+
• **cdn**: string
|
|
25
|
+
|
|
26
|
+
___
|
|
27
|
+
|
|
21
28
|
### environment
|
|
22
29
|
|
|
23
30
|
• **environment**: string
|
package/docs/modules/network.md
CHANGED
|
@@ -50,29 +50,38 @@ const queryResponse = await query({
|
|
|
50
50
|
|
|
51
51
|
* [FetchScope](../enums/network.fetchscope.md)
|
|
52
52
|
* [ROUTING](../enums/network.routing.md)
|
|
53
|
+
* [StandardVariables](../enums/network.standardvariables.md)
|
|
53
54
|
|
|
54
55
|
### Interfaces
|
|
55
56
|
|
|
56
57
|
* [ApolloClientOptions](../interfaces/network.apolloclientoptions.md)
|
|
58
|
+
* [DataDedupConfig](../interfaces/network.datadedupconfig.md)
|
|
59
|
+
* [DataPrefetchContract](../interfaces/network.dataprefetchcontract.md)
|
|
57
60
|
* [DefaultMetaData](../interfaces/network.defaultmetadata.md)
|
|
61
|
+
* [FetchCondition](../interfaces/network.fetchcondition.md)
|
|
58
62
|
* [FetchOptions](../interfaces/network.fetchoptions.md)
|
|
59
63
|
* [GraphQLQuery](../interfaces/network.graphqlquery.md)
|
|
60
64
|
* [NetworkApi](../interfaces/network.networkapi.md)
|
|
65
|
+
* [PrefetchOptions](../interfaces/network.prefetchoptions.md)
|
|
66
|
+
* [QueryDefinition](../interfaces/network.querydefinition.md)
|
|
61
67
|
* [QueryRequest](../interfaces/network.queryrequest.md)
|
|
62
68
|
|
|
63
69
|
### Type aliases
|
|
64
70
|
|
|
65
71
|
* [FetchInit](network.md#fetchinit)
|
|
66
72
|
* [GraphQLRegion](network.md#graphqlregion)
|
|
73
|
+
* [PrefetchResponse](network.md#prefetchresponse)
|
|
67
74
|
|
|
68
75
|
### Variables
|
|
69
76
|
|
|
70
77
|
* [DEFAULT\_STATUS\_CODES\_TO\_RETRY](network.md#default_status_codes_to_retry)
|
|
78
|
+
* [FRESH\_MS](network.md#fresh_ms)
|
|
71
79
|
|
|
72
80
|
### Functions
|
|
73
81
|
|
|
74
82
|
* [fetch](network.md#fetch)
|
|
75
83
|
* [getApolloClient](network.md#getapolloclient)
|
|
84
|
+
* [getPrefetched](network.md#getprefetched)
|
|
76
85
|
* [query](network.md#query)
|
|
77
86
|
|
|
78
87
|
## Type aliases
|
|
@@ -96,6 +105,18 @@ ___
|
|
|
96
105
|
|
|
97
106
|
Ƭ **GraphQLRegion**: \"va7\" \| \"aus5\" \| \"nld2\"
|
|
98
107
|
|
|
108
|
+
___
|
|
109
|
+
|
|
110
|
+
### PrefetchResponse
|
|
111
|
+
|
|
112
|
+
Ƭ **PrefetchResponse**<T\>: [CacheEntry](cache.md#cacheentry)<T\> & { getFresh?: undefined \| () => Promise<[PrefetchResponse](network.md#prefetchresponse)<T\>\> }
|
|
113
|
+
|
|
114
|
+
#### Type parameters:
|
|
115
|
+
|
|
116
|
+
Name |
|
|
117
|
+
------ |
|
|
118
|
+
`T` |
|
|
119
|
+
|
|
99
120
|
## Variables
|
|
100
121
|
|
|
101
122
|
### DEFAULT\_STATUS\_CODES\_TO\_RETRY
|
|
@@ -104,6 +125,12 @@ ___
|
|
|
104
125
|
|
|
105
126
|
Default status codes which imply a transient error and can be retried.
|
|
106
127
|
|
|
128
|
+
___
|
|
129
|
+
|
|
130
|
+
### FRESH\_MS
|
|
131
|
+
|
|
132
|
+
• `Const` **FRESH\_MS**: number = 60 * 1000
|
|
133
|
+
|
|
107
134
|
## Functions
|
|
108
135
|
|
|
109
136
|
### fetch
|
|
@@ -175,6 +202,34 @@ GraphQL query response
|
|
|
175
202
|
|
|
176
203
|
___
|
|
177
204
|
|
|
205
|
+
### getPrefetched
|
|
206
|
+
|
|
207
|
+
▸ **getPrefetched**<T\>(`key`: string, `options?`: [PrefetchOptions](../interfaces/network.prefetchoptions.md)): Promise<[PrefetchResponse](network.md#prefetchresponse)<T\>\>
|
|
208
|
+
|
|
209
|
+
Provides an interface for querying known data.
|
|
210
|
+
Data querying and caching are managed in Unified Shell in advance.
|
|
211
|
+
|
|
212
|
+
This is an experimental feature.
|
|
213
|
+
|
|
214
|
+
#### Type parameters:
|
|
215
|
+
|
|
216
|
+
Name |
|
|
217
|
+
------ |
|
|
218
|
+
`T` |
|
|
219
|
+
|
|
220
|
+
#### Parameters:
|
|
221
|
+
|
|
222
|
+
Name | Type | Description |
|
|
223
|
+
------ | ------ | ------ |
|
|
224
|
+
`key` | string | Data Contract key |
|
|
225
|
+
`options?` | [PrefetchOptions](../interfaces/network.prefetchoptions.md) | Prefetch options |
|
|
226
|
+
|
|
227
|
+
**Returns:** Promise<[PrefetchResponse](network.md#prefetchresponse)<T\>\>
|
|
228
|
+
|
|
229
|
+
Promise for the contract execution response
|
|
230
|
+
|
|
231
|
+
___
|
|
232
|
+
|
|
178
233
|
### query
|
|
179
234
|
|
|
180
235
|
▸ **query**(`input`: [QueryRequest](../interfaces/network.queryrequest.md)): Promise<Response\>
|
package/ims/ImsProfile.d.ts
CHANGED
package/jest.config.js
CHANGED
|
@@ -12,10 +12,6 @@ const base = require('../../jest.config.base');
|
|
|
12
12
|
|
|
13
13
|
module.exports = {
|
|
14
14
|
...base,
|
|
15
|
-
moduleFileExtensions: ['ts', 'js'],
|
|
16
|
-
moduleNameMapper: {
|
|
17
|
-
'\\.(css|scss|png|jpg|styl)$': '<rootDir>/config/jest/styleMock.js'
|
|
18
|
-
},
|
|
19
15
|
preset: 'ts-jest/presets/js-with-babel',
|
|
20
16
|
testMatch: ['**/?(*.)+(test).ts'],
|
|
21
17
|
testURL: 'https://localhost.corp.adobe.com:1234'
|
|
@@ -15,6 +15,11 @@ import { FetchScope, GraphQLQuery } from '../network';
|
|
|
15
15
|
* @module network
|
|
16
16
|
*/
|
|
17
17
|
export declare const FRESH_MS: number;
|
|
18
|
+
export declare enum StandardVariables {
|
|
19
|
+
ACP_FD = "acpFulfillableData",
|
|
20
|
+
CACHED_TS = "cached.createdAt",
|
|
21
|
+
DEDUP_SF = "dedup.sortField"
|
|
22
|
+
}
|
|
18
23
|
/**
|
|
19
24
|
* Defines the conditions when certain data can be fetched.
|
|
20
25
|
* When conditions are not met, default data will be returned but not cached.
|
|
@@ -46,6 +51,29 @@ export interface QueryDefinition extends GraphQLQuery {
|
|
|
46
51
|
*/
|
|
47
52
|
ignoreErrorsOnPaths?: string[];
|
|
48
53
|
}
|
|
54
|
+
export interface DataDedupConfig {
|
|
55
|
+
/**
|
|
56
|
+
* An array of elements that needs to be merged and deduped across fresh and cached data.
|
|
57
|
+
*/
|
|
58
|
+
arrayElement: string;
|
|
59
|
+
/**
|
|
60
|
+
* To avoid overflow when data is refreshed, limit the number of items in the array.
|
|
61
|
+
* 0 = unlimited.
|
|
62
|
+
*/
|
|
63
|
+
arrayLimit: number;
|
|
64
|
+
/**
|
|
65
|
+
* A key that will be used to deduplicate the array element.
|
|
66
|
+
*/
|
|
67
|
+
keyField: string;
|
|
68
|
+
/**
|
|
69
|
+
* Sort direction - True for ascending, false for descending.
|
|
70
|
+
*/
|
|
71
|
+
sortAscending: boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Field to sort the array by - Used to decide which items are old and can be chopped off.
|
|
74
|
+
*/
|
|
75
|
+
sortField: string;
|
|
76
|
+
}
|
|
49
77
|
/**
|
|
50
78
|
* Defines a data contract which will be executed by Unified Shell on behalf ot the requesting application.
|
|
51
79
|
*/
|
|
@@ -79,6 +107,24 @@ export default interface DataPrefetchContract<T> {
|
|
|
79
107
|
* Will be used by the calling application to get access to the data.
|
|
80
108
|
*/
|
|
81
109
|
key: string;
|
|
110
|
+
/**
|
|
111
|
+
* Defines specific behavior for refresh.
|
|
112
|
+
* This is optional, by default refreshing data and fetching new will yield the same results.
|
|
113
|
+
*/
|
|
114
|
+
refreshData?: {
|
|
115
|
+
/**
|
|
116
|
+
* Cached & Fresh Data deduplication and merge configuration.
|
|
117
|
+
*/
|
|
118
|
+
dedup?: DataDedupConfig;
|
|
119
|
+
/**
|
|
120
|
+
* GraphQL query to use for refresh.
|
|
121
|
+
*/
|
|
122
|
+
gql?: QueryDefinition;
|
|
123
|
+
/**
|
|
124
|
+
* An optional array of root level elements that need to be retained from the cached data.
|
|
125
|
+
*/
|
|
126
|
+
keepOriginal?: string[];
|
|
127
|
+
};
|
|
82
128
|
/**
|
|
83
129
|
* When true, data will be fetched even when a cache is available.
|
|
84
130
|
* In this case, the query will return the cached data and at the same time fetch fresh data from the network.
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FRESH_MS = void 0;
|
|
3
|
+
exports.StandardVariables = exports.FRESH_MS = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* @packageDocumentation
|
|
6
6
|
* @module network
|
|
7
7
|
*/
|
|
8
8
|
exports.FRESH_MS = 60 * 1000; // One minute.
|
|
9
|
+
var StandardVariables;
|
|
10
|
+
(function (StandardVariables) {
|
|
11
|
+
StandardVariables["ACP_FD"] = "acpFulfillableData";
|
|
12
|
+
StandardVariables["CACHED_TS"] = "cached.createdAt";
|
|
13
|
+
StandardVariables["DEDUP_SF"] = "dedup.sortField";
|
|
14
|
+
})(StandardVariables = exports.StandardVariables || (exports.StandardVariables = {}));
|
|
9
15
|
//# sourceMappingURL=DataPrefetchContract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataPrefetchContract.js","sourceRoot":"","sources":["DataPrefetchContract.ts"],"names":[],"mappings":";;;AAaA;;;GAGG;AAEU,QAAA,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,cAAc"}
|
|
1
|
+
{"version":3,"file":"DataPrefetchContract.js","sourceRoot":"","sources":["DataPrefetchContract.ts"],"names":[],"mappings":";;;AAaA;;;GAGG;AAEU,QAAA,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,cAAc;AAEjD,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,mDAA8B,CAAA;IAC9B,iDAA4B,CAAA;AAC9B,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adobe/exc-app",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.8",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"source": "index.ts",
|
|
6
6
|
"scripts": {
|
|
@@ -26,15 +26,14 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@apollo/client": "3.5.7",
|
|
29
|
-
"graphql": "
|
|
29
|
+
"graphql": "15.5.3",
|
|
30
30
|
"graphql-tag": "2.12.6"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"cross-env": "7.0.3",
|
|
34
|
-
"enzyme": "3.11.0",
|
|
35
34
|
"eslint": "8.1.0",
|
|
36
35
|
"eslint-plugin-header": "3.1.1",
|
|
37
|
-
"eslint-plugin-jsdoc": "
|
|
36
|
+
"eslint-plugin-jsdoc": "36.1.1",
|
|
38
37
|
"eslint-plugin-prettier": "4.0.0",
|
|
39
38
|
"eslint-plugin-rulesdir": "0.2.1",
|
|
40
39
|
"glob": "7.1.7",
|
package/src/Global.d.ts
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import { AppApi } from '../appapi';
|
|
16
16
|
import { CacheApi } from '../cache';
|
|
17
17
|
import { CapabilityApi } from '../capabilityapi';
|
|
18
|
+
import { ComponentApi } from '../component';
|
|
18
19
|
import { HelpCenterApi } from '../helpcenter';
|
|
19
20
|
import { InternalApi } from '../internal';
|
|
20
21
|
import { MetricsApi } from '../metrics';
|
|
@@ -37,6 +38,7 @@ export interface Modules {
|
|
|
37
38
|
readonly appApi: () => AppApi;
|
|
38
39
|
readonly cache: () => CacheApi;
|
|
39
40
|
readonly capabilityApi: () => CapabilityApi;
|
|
41
|
+
readonly component: () => ComponentApi;
|
|
40
42
|
readonly default: (options?: any) => Runtime;
|
|
41
43
|
readonly helpCenter: HelpCenterApi;
|
|
42
44
|
readonly internal: InternalApi;
|
package/src/Global.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Global.js","sourceRoot":"","sources":["Global.ts"],"names":[],"mappings":";AAAA;;;;;;;;;4EAS4E;;;
|
|
1
|
+
{"version":3,"file":"Global.js","sourceRoot":"","sources":["Global.ts"],"names":[],"mappings":";AAAA;;;;;;;;;4EAS4E;;;AA8D5E;;;;;GAKG;AACH,SAAgB,OAAO,CAA0B,UAAa;IAC5D,MAAM,GAAG,GAAI,MAAiB,CAAC,oBAAoB,CAAC,CAAC;IACrD,IAAI,CAAC,GAAG,EAAE;QACR,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;KACvD;IACD,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC;AACzB,CAAC;AAND,0BAMC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CAA0B,OAAU,EAAE,UAA0C;IACrG,MAAM,GAAG,GAAG,EAAgB,CAAC;IAC7B,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACd,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE;gBACrC,OAAQ,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAS,CAAC,GAAG,IAAI,CAAC,CAAC;YACzD,CAAC,CAAQ,CAAC;SACX;aAAM;YACL,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE;gBACtC,GAAG,EAAE,GAAG,EAAE;oBACR,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC;gBACvC,CAAC;gBACD,GAAG,EAAE,KAAK,CAAC,EAAE;oBACX,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;gBACxC,CAAC;aACF,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AApBD,0BAoBC;AAED,kBAAgB,MAAiB,CAAC"}
|
package/tests/appapi.test.js
CHANGED
|
@@ -58,8 +58,6 @@ describe('appapi', () => {
|
|
|
58
58
|
functionalIconReact: 'DataAnalytics',
|
|
59
59
|
functionalIconUrl: 'https://exc-unifiedcontent.experience-stage.adobe.net/assets/BrandIcons.33cbb3cf.svg#DataAnalytics',
|
|
60
60
|
href: 'https://app-discovery-qe.corp.ethos11-stage-or1.ethos.adobe.net/1.0/loginRedirect?allow_project_redirect=1&IMS=1',
|
|
61
|
-
icon: 'adobeAnalytics',
|
|
62
|
-
iconReact: 'AdobeAnalytics',
|
|
63
61
|
iconUrl: '',
|
|
64
62
|
learnMoreLink: 'http://www.adobe.com/marketing-cloud/web-analytics.html',
|
|
65
63
|
longName: 'Adobe Analytics',
|
|
@@ -77,8 +75,6 @@ describe('appapi', () => {
|
|
|
77
75
|
functionalIconReact: 'ContentProfile',
|
|
78
76
|
functionalIconUrl: 'https://exc-unifiedcontent.experience-stage.adobe.net/assets/BrandIcons.33cbb3cf.svg#ContentProfile',
|
|
79
77
|
href: 'https://experience-stage.adobe.com/#/target',
|
|
80
|
-
icon: 'adobeTarget',
|
|
81
|
-
iconReact: 'AdobeTarget',
|
|
82
78
|
iconUrl: '',
|
|
83
79
|
learnMoreLink: 'https://www.adobe.com/marketing/target.html',
|
|
84
80
|
longName: 'Adobe Target',
|
package/tests/appapi.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appapi.test.js","sourceRoot":"","sources":["appapi.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;4EAS4E;AAC5E,oDAAyC;AACzC,2DAA8C;AAE9C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,UAAU,CAAC,GAAG,EAAE;QACb,gBAAM,CAAC,oBAAoB,CAAa,GAAG;YAC1C,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO;oBACL,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;wBACZ,IAAI,IAAI,KAAK,WAAW,EAAE;4BACxB,OAAO;gCACL,cAAc,EAAE,aAAa;gCAC7B,KAAK,EAAE,WAAW;gCAClB,WAAW,EAAE,uEAAuE;gCACpF,OAAO,EAAE,KAAK;gCACd,mBAAmB,EAAE,eAAe;gCACpC,iBAAiB,EAAE,oGAAoG;gCACvH,IAAI,EAAE,kHAAkH;gCACxH,
|
|
1
|
+
{"version":3,"file":"appapi.test.js","sourceRoot":"","sources":["appapi.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;4EAS4E;AAC5E,oDAAyC;AACzC,2DAA8C;AAE9C,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,UAAU,CAAC,GAAG,EAAE;QACb,gBAAM,CAAC,oBAAoB,CAAa,GAAG;YAC1C,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO;oBACL,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;wBACZ,IAAI,IAAI,KAAK,WAAW,EAAE;4BACxB,OAAO;gCACL,cAAc,EAAE,aAAa;gCAC7B,KAAK,EAAE,WAAW;gCAClB,WAAW,EAAE,uEAAuE;gCACpF,OAAO,EAAE,KAAK;gCACd,mBAAmB,EAAE,eAAe;gCACpC,iBAAiB,EAAE,oGAAoG;gCACvH,IAAI,EAAE,kHAAkH;gCACxH,OAAO,EAAE,EAAE;gCACX,aAAa,EAAE,yDAAyD;gCACxE,QAAQ,EAAE,iBAAiB;gCAC3B,IAAI,EAAE,WAAW;gCACjB,aAAa,EAAE,WAAW;gCAC1B,OAAO,EAAE,KAAK;6BACf,CAAC;yBACH;wBACD,IAAI,IAAI,KAAK,QAAQ,EAAE;4BACrB,OAAO;gCACL,cAAc,EAAE,aAAa;gCAC7B,KAAK,EAAE,QAAQ;gCACf,WAAW,EAAE,0GAA0G;gCACvH,OAAO,EAAE,KAAK;gCACd,mBAAmB,EAAE,gBAAgB;gCACrC,iBAAiB,EAAE,qGAAqG;gCACxH,IAAI,EAAE,6CAA6C;gCACnD,OAAO,EAAE,EAAE;gCACX,aAAa,EAAE,6CAA6C;gCAC5D,QAAQ,EAAE,cAAc;gCACxB,IAAI,EAAE,QAAQ;gCACd,aAAa,EAAE,EAAE;gCACjB,OAAO,EAAE,KAAK;6BACf,CAAC;yBACH;wBACD,OAAO,EAAE,CAAC;oBACZ,CAAC;iBACF,CAAC;YACJ,CAAC;SACS,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,KAAK,EAAE,GAAS,EAAE;QACrB,MAAM,SAAS,GAAG,MAAM,gBAAM,CAAC,GAAG,CAAC,eAAM,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,gBAAM,CAAC,GAAG,CAAC,eAAM,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,oGAAoG,CAAC,CAAC;QAC/I,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,kHAAkH,CAAC,CAAC;QAEhJ,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,qGAAqG,CAAC,CAAC;QAC7I,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC1E,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
22
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
/*************************************************************************
|
|
26
|
+
* Copyright 2022 Adobe
|
|
27
|
+
* All Rights Reserved.
|
|
28
|
+
*
|
|
29
|
+
* NOTICE: Adobe permits you to use, modify, and distribute this file in
|
|
30
|
+
* accordance with the terms of the Adobe license agreement accompanying
|
|
31
|
+
* it. If you have received this file from a source other than Adobe,
|
|
32
|
+
* then your use, modification, or distribution of it requires the prior
|
|
33
|
+
* written permission of Adobe.
|
|
34
|
+
**************************************************************************/
|
|
35
|
+
const component_1 = __importStar(require("../component"));
|
|
36
|
+
const Global_1 = __importDefault(require("../src/Global"));
|
|
37
|
+
describe('component.ts', () => {
|
|
38
|
+
const componentMock = {
|
|
39
|
+
close: (data) => ({ data }),
|
|
40
|
+
isComponent: () => true,
|
|
41
|
+
open: (component, data) => Promise.resolve({ component, data })
|
|
42
|
+
};
|
|
43
|
+
beforeEach(() => {
|
|
44
|
+
Global_1.default['exc-module-runtime'] = {
|
|
45
|
+
component: () => componentMock
|
|
46
|
+
};
|
|
47
|
+
});
|
|
48
|
+
it('can close()', () => {
|
|
49
|
+
const spy = jest.spyOn(componentMock, 'close');
|
|
50
|
+
component_1.default.close();
|
|
51
|
+
expect(spy).toHaveBeenCalled();
|
|
52
|
+
});
|
|
53
|
+
it('can close(data)', () => {
|
|
54
|
+
const spy = jest.spyOn(componentMock, 'close');
|
|
55
|
+
component_1.default.close({ data: 'test' });
|
|
56
|
+
expect(spy).toHaveBeenCalledWith({ data: 'test' });
|
|
57
|
+
});
|
|
58
|
+
it('can isComponent()', () => {
|
|
59
|
+
const spy = jest.spyOn(componentMock, 'isComponent');
|
|
60
|
+
component_1.default.isComponent();
|
|
61
|
+
expect(spy).toHaveBeenCalled();
|
|
62
|
+
});
|
|
63
|
+
it('can open(component)', () => {
|
|
64
|
+
const spy = jest.spyOn(componentMock, 'open');
|
|
65
|
+
component_1.default.open(component_1.COMPONENT.EMAIL_DESIGNER);
|
|
66
|
+
expect(spy).toHaveBeenCalledWith(component_1.COMPONENT.EMAIL_DESIGNER, undefined);
|
|
67
|
+
});
|
|
68
|
+
it('can open(component, data)', () => {
|
|
69
|
+
const spy = jest.spyOn(componentMock, 'open');
|
|
70
|
+
component_1.default.open(component_1.COMPONENT.EMAIL_DESIGNER, { abc: 'def' });
|
|
71
|
+
expect(spy).toHaveBeenCalledWith(component_1.COMPONENT.EMAIL_DESIGNER, { abc: 'def' });
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
//# sourceMappingURL=component.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.test.js","sourceRoot":"","sources":["component.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;4EAS4E;AAC5E,0DAAgE;AAChE,2DAA8C;AAE9C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,aAAa,GAAG;QACpB,KAAK,EAAE,CAAC,IAAU,EAAE,EAAE,CAAC,CAAC,EAAC,IAAI,EAAC,CAAC;QAC/B,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI;QACvB,IAAI,EAAE,CAAC,SAAoB,EAAE,IAA0B,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC;KAC/E,CAAC;IAElB,UAAU,CAAC,GAAG,EAAE;QACb,gBAAM,CAAC,oBAAoB,CAAa,GAAG;YAC1C,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa;SACpB,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC/C,mBAAS,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC/C,mBAAS,CAAC,KAAK,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC;QAChC,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACrD,mBAAS,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC9C,mBAAS,CAAC,IAAI,CAAC,qBAAS,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,qBAAS,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QAC9C,mBAAS,CAAC,IAAI,CAAC,qBAAS,CAAC,cAAc,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;QACvD,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,qBAAS,CAAC,cAAc,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/version.d.ts
CHANGED
|
@@ -8,5 +8,5 @@
|
|
|
8
8
|
* then your use, modification, or distribution of it requires the prior
|
|
9
9
|
* written permission of Adobe.
|
|
10
10
|
**************************************************************************/
|
|
11
|
-
declare const EXC_APP_VERSION = "1.0.
|
|
11
|
+
declare const EXC_APP_VERSION = "1.0.8";
|
|
12
12
|
export default EXC_APP_VERSION;
|
package/version.js
CHANGED
|
@@ -10,6 +10,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
10
10
|
* then your use, modification, or distribution of it requires the prior
|
|
11
11
|
* written permission of Adobe.
|
|
12
12
|
**************************************************************************/
|
|
13
|
-
const EXC_APP_VERSION = '1.0.
|
|
13
|
+
const EXC_APP_VERSION = '1.0.8';
|
|
14
14
|
exports.default = EXC_APP_VERSION;
|
|
15
15
|
//# sourceMappingURL=version.js.map
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
/* eslint-disable */
|
|
2
|
-
var jumpToCode = (function init() {
|
|
3
|
-
// Classes of code we would like to highlight in the file view
|
|
4
|
-
var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no'];
|
|
5
|
-
|
|
6
|
-
// Elements to highlight in the file listing view
|
|
7
|
-
var fileListingElements = ['td.pct.low'];
|
|
8
|
-
|
|
9
|
-
// We don't want to select elements that are direct descendants of another match
|
|
10
|
-
var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > `
|
|
11
|
-
|
|
12
|
-
// Selecter that finds elements on the page to which we can jump
|
|
13
|
-
var selector =
|
|
14
|
-
fileListingElements.join(', ') +
|
|
15
|
-
', ' +
|
|
16
|
-
notSelector +
|
|
17
|
-
missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b`
|
|
18
|
-
|
|
19
|
-
// The NodeList of matching elements
|
|
20
|
-
var missingCoverageElements = document.querySelectorAll(selector);
|
|
21
|
-
|
|
22
|
-
var currentIndex;
|
|
23
|
-
|
|
24
|
-
function toggleClass(index) {
|
|
25
|
-
missingCoverageElements
|
|
26
|
-
.item(currentIndex)
|
|
27
|
-
.classList.remove('highlighted');
|
|
28
|
-
missingCoverageElements.item(index).classList.add('highlighted');
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
function makeCurrent(index) {
|
|
32
|
-
toggleClass(index);
|
|
33
|
-
currentIndex = index;
|
|
34
|
-
missingCoverageElements.item(index).scrollIntoView({
|
|
35
|
-
behavior: 'smooth',
|
|
36
|
-
block: 'center',
|
|
37
|
-
inline: 'center'
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
function goToPrevious() {
|
|
42
|
-
var nextIndex = 0;
|
|
43
|
-
if (typeof currentIndex !== 'number' || currentIndex === 0) {
|
|
44
|
-
nextIndex = missingCoverageElements.length - 1;
|
|
45
|
-
} else if (missingCoverageElements.length > 1) {
|
|
46
|
-
nextIndex = currentIndex - 1;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
makeCurrent(nextIndex);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
function goToNext() {
|
|
53
|
-
var nextIndex = 0;
|
|
54
|
-
|
|
55
|
-
if (
|
|
56
|
-
typeof currentIndex === 'number' &&
|
|
57
|
-
currentIndex < missingCoverageElements.length - 1
|
|
58
|
-
) {
|
|
59
|
-
nextIndex = currentIndex + 1;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
makeCurrent(nextIndex);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return function jump(event) {
|
|
66
|
-
switch (event.which) {
|
|
67
|
-
case 78: // n
|
|
68
|
-
case 74: // j
|
|
69
|
-
goToNext();
|
|
70
|
-
break;
|
|
71
|
-
case 66: // b
|
|
72
|
-
case 75: // k
|
|
73
|
-
case 80: // p
|
|
74
|
-
goToPrevious();
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
})();
|
|
79
|
-
window.addEventListener('keydown', jumpToCode);
|