@forge/csp
6.3.3-next.06.4.0-next.1
out/csp/csp-injection-service.js~
out/csp/csp-injection-service.jsModified+35−19
Index: package/out/csp/csp-injection-service.js
===================================================================
--- package/out/csp/csp-injection-service.js
+++ package/out/csp/csp-injection-service.js
@@ -2,8 +2,9 @@
Object.defineProperty(exports, "__esModule", { value: true });
exports.CSPInjectionService = exports.EXTERNAL_ALLOW_LISTED_IMAGES_HOSTS = exports.getAtlassianImageHost = void 0;
const types_1 = require("../types");
const isICEnvKey = (env) => env === 'ic-prod' || env === 'ic-stg';
+const isGCPEnvKey = (env) => env.endsWith('-gcentral');
const makeICDomain = (env, icLabel) => `${icLabel}.${env === 'ic-prod' ? 'atlassian-isolated.net' : 'oasis-stg.com'}`;
const getICDomain = (env, icOptions) => {
if ('getICDomain' in icOptions) {
return icOptions.getICDomain();
@@ -22,89 +23,100 @@
stg: 'https://api.stg.atlassian.com',
prod: 'https://api.atlassian.com',
'fedramp-stg': 'https://api.stg.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://api.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://api.${getICDomain(env, icOptions)}`)
+ ...makeICHosts((env, icOptions) => `https://api.${getICDomain(env, icOptions)}`),
+ 'stg-gcentral': 'https://api.stg.atlassian.com'
},
ATLASSIAN_MEDIA_GATEWAY_HOST: {
dev: 'https://media.dev.atl-paas.net',
stg: 'https://media.staging.atl-paas.net',
prod: 'https://api.media.atlassian.com',
'fedramp-stg': 'https://api-media.stg.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://api-media.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://media-api.${getICDomain(env, icOptions)}`)
+ ...makeICHosts((env, icOptions) => `https://media-api.${getICDomain(env, icOptions)}`),
+ 'stg-gcentral': ''
},
ATLASSIAN_ASSETS_MEDIA_HOST: {
dev: 'https://assets-media.stg.atlassian.com',
stg: 'https://assets-media.stg.atlassian.com',
prod: 'https://assets-media.atlassian.com',
'fedramp-stg': 'https://assets-media.stg.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://assets-media.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://assets-media.${getICDomain(env, icOptions)}`)
+ ...makeICHosts((env, icOptions) => `https://assets-media.${getICDomain(env, icOptions)}`),
+ 'stg-gcentral': ''
},
ATLASSIAN_ANALYTICS_GATEWAY_HOST: {
dev: 'https://as.dev.atl-paas.net',
stg: 'https://as.staging.atl-paas.net',
prod: 'https://as.atlassian.com',
'fedramp-stg': 'https://as.stg.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://as.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://as.${getICDomain(env, icOptions)}`)
+ ...makeICHosts((env, icOptions) => `https://as.${getICDomain(env, icOptions)}`),
+ 'stg-gcentral': 'https://as.staging.atl-paas.net'
},
ATLASSIAN_AVATAR_HOST: {
dev: 'avatar-management--avatars.us-west-2.staging.public.atl-paas.net',
stg: 'avatar-management--avatars.us-west-2.staging.public.atl-paas.net',
prod: 'avatar-management--avatars.us-west-2.prod.public.atl-paas.net',
'fedramp-stg': 'avatar-management--avatars.us-east-1.staging.cdn.atlassian-us-gov-mod.com',
'fedramp-prod': 'avatar-management--avatars.us-east-1.prod.cdn.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `avatar-management.services.${getICDomain(env, icOptions)}`)
+ ...makeICHosts((env, icOptions) => `avatar-management.services.${getICDomain(env, icOptions)}`),
+ 'stg-gcentral': 'avatar-management--avatars.us-west-2.staging.public.atl-paas.net'
},
ATLASSIAN_TEAM_HEADER_HOST: {
dev: 'https://teams-directory-frontend.stg-east.frontend.public.atl-paas.net/assets/gradients/',
stg: 'https://teams-directory-frontend.stg-east.frontend.public.atl-paas.net/assets/gradients/',
prod: 'https://teams-directory-frontend.prod-east.frontend.public.atl-paas.net/assets/gradients/',
'fedramp-stg': 'https://teams-directory-frontend.frontend.cdn.atlassian-us-gov-mod.com/assets/',
'fedramp-prod': 'https://teams-directory-frontend.frontend.cdn.atlassian-us-gov-mod.com/assets/',
- ...makeICHosts((env, icOptions) => `https://teams-directory-frontend.services.${getICDomain(env, icOptions)}/bfa/`)
+ ...makeICHosts((env, icOptions) => `https://teams-directory-frontend.services.${getICDomain(env, icOptions)}/bfa/`),
+ 'stg-gcentral': 'https://teams-directory-frontend.stg-east.frontend.public.atl-paas.net/assets/'
},
ATLASSIAN_TEAM_AVATAR_HOST: {
dev: 'https://teams-directory-frontend.stg-east.frontend.public.atl-paas.net/assets/',
stg: 'https://teams-directory-frontend.stg-east.frontend.public.atl-paas.net/assets/',
prod: 'https://teams-directory-frontend.prod-east.frontend.public.atl-paas.net/assets/',
'fedramp-stg': 'https://teams-directory-frontend.frontend.cdn.atlassian-us-gov-mod.com/assets/',
'fedramp-prod': 'https://teams-directory-frontend.frontend.cdn.atlassian-us-gov-mod.com/assets/',
- ...makeICHosts((env, icOptions) => `https://teams-directory-frontend.services.${getICDomain(env, icOptions)}/bfa/`)
+ ...makeICHosts((env, icOptions) => `https://teams-directory-frontend.services.${getICDomain(env, icOptions)}/bfa/`),
+ 'stg-gcentral': 'https://teams-directory-frontend.stg-east.frontend.public.atl-paas.net/assets/'
},
ATLASSIAN_EMOJIS_HOST: {
dev: 'https://pf-emoji-service.ddev.frontend.public.atl-paas.net',
stg: 'https://pf-emoji-service.stg-east.frontend.public.atl-paas.net',
prod: 'https://pf-emoji-service.prod-east.frontend.public.atl-paas.net',
'fedramp-stg': 'https://pf-emoji-service.frontend.staging.cdn.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://pf-emoji-service.frontend.cdn.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://pf-emoji-service.${getICDomain(env, icOptions)}/bfa/emoji-service/`)
+ ...makeICHosts((env, icOptions) => `https://pf-emoji-service.${getICDomain(env, icOptions)}/bfa/emoji-service/`),
+ 'stg-gcentral': ''
},
ATLASSIAN_REACTIONS_HOST: {
dev: 'https://pf-reactions-service.ddev.frontend.public.atl-paas.net',
stg: 'https://pf-reactions-service.stg-east.frontend.public.atl-paas.net',
prod: 'https://pf-reactions-service.prod-east.frontend.public.atl-paas.net',
'fedramp-stg': 'https://pf-reactions-service.frontend.staging.cdn.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://pf-reactions-service.frontend.cdn.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://pf-reactions-service.services.${getICDomain(env, icOptions)}/bfa/reactions-service/`)
+ ...makeICHosts((env, icOptions) => `https://pf-reactions-service.services.${getICDomain(env, icOptions)}/bfa/reactions-service/`),
+ 'stg-gcentral': ''
},
ATLASSIAN_FOP_GE_HOST: {
dev: 'https://forge-outbound-proxy.dev.services.atlassian.com',
stg: 'https://forge-outbound-proxy.stg.services.atlassian.com',
prod: 'https://forge-outbound-proxy.services.atlassian.com',
'fedramp-stg': '',
'fedramp-prod': '',
- ...makeICHosts((env, icOptions) => '')
+ ...makeICHosts((env, icOptions) => ''),
+ 'stg-gcentral': ''
},
ATLASSIAN_FOS_HOST: {
dev: 'https://tdp-os.dev.services.atlassian.com',
stg: 'https://tdp-os.stg.services.atlassian.com',
prod: 'https://tdp-os.services.atlassian.com',
'fedramp-stg': 'https://tdp-os.stg.services.atlassian-us-gov-mod.com',
'fedramp-prod': 'https://tdp-os.services.atlassian-us-gov-mod.com',
- ...makeICHosts((env, icOptions) => `https://tdp-os.services.${getICDomain(env, icOptions)}`)
+ ...makeICHosts((env, icOptions) => `https://tdp-os.services.${getICDomain(env, icOptions)}`),
+ 'stg-gcentral': 'https://tdp-os.stg.services.atlassian.com'
}
};
const getAtlassianHost = (hostType, microsEnv, icOptions) => {
const hostMap = ATLASSIAN_HOST[hostType];
@@ -118,10 +130,14 @@
};
const FOS_CDN_STANDARD_HOST = {
dev: 'https://object-store.stg.atlassian.com',
stg: 'https://object-store.stg.atlassian.com',
- prod: 'https://object-store.atlassian.com'
+ prod: 'https://object-store.atlassian.com',
+ 'stg-gcentral': 'https://object-store.stg.atlassian.com'
};
+const GCP_FORGE_CDN_HOST = {
+ 'stg-gcentral': 'https://forge.cdn.stg.atlassian-dev.net'
+};
const FOS_CDN_IC_HOST = makeICHosts((env, icOptions) => `https://object-store.${getICDomain(env, icOptions)}`);
const FOS_CDN_PATH = '/os/ecosystem/installation/';
const getFOSCDNHost = (microsEnv, icOptions) => {
if (isICEnvKey(microsEnv)) {
@@ -130,17 +146,13 @@
return FOS_CDN_STANDARD_HOST[microsEnv];
};
const getFOSHostDownload = (microsEnv, icOptions) => {
const fosHost = getAtlassianHost('ATLASSIAN_FOS_HOST', microsEnv, icOptions);
- return isICEnvKey(microsEnv)
- ? [`${fosHost}/fos/app/download/`, `${fosHost}/fos/cdn/download/`]
- : [`${fosHost}/fos-eap/download/`, `${fosHost}/fos/app/download/`, `${fosHost}/fos/cdn/download/`];
+ return [`${fosHost}/fos/app/download/`, `${fosHost}/fos/cdn/download/`];
};
const getFOSHostUpload = (microsEnv, icOptions) => {
const fosHost = getAtlassianHost('ATLASSIAN_FOS_HOST', microsEnv, icOptions);
- return isICEnvKey(microsEnv)
- ? [`${fosHost}/fos/app/upload/`, `${fosHost}/fos/cdn/upload/`]
- : [`${fosHost}/fos-eap/upload/`, `${fosHost}/fos/app/upload/`, `${fosHost}/fos/cdn/upload/`];
+ return [`${fosHost}/fos/app/upload/`, `${fosHost}/fos/cdn/upload/`];
};
const getFOSCDNUrls = (microsEnv, icOptions) => {
const fosCDNHost = getFOSCDNHost(microsEnv, icOptions);
return fosCDNHost ? [`${fosCDNHost}${FOS_CDN_PATH}`] : [];
@@ -260,16 +272,19 @@
};
}
getCSPReportUri(microsEnv, icOptions) {
const serviceName = isICEnvKey(microsEnv) && icOptions ? icOptions.serviceName : 'forge-cdn';
- if (microsEnv === 'dev' || microsEnv === 'stg')
+ if (microsEnv === 'dev' || microsEnv === 'stg' || microsEnv === 'stg-gcentral')
return `https://web-security-reports.stg.services.atlassian.com/csp-report/${serviceName}`;
return `https://web-security-reports.services.atlassian.com/csp-report/${serviceName}`;
}
getForgeGlobalCSP(microsEnv, isFedRAMP = false, icOptions) {
if (isICEnvKey(microsEnv) && icOptions) {
return `https://forge.forge-cdn.${getICDomain(microsEnv, icOptions)}`;
}
+ if (isGCPEnvKey(microsEnv)) {
+ return GCP_FORGE_CDN_HOST[microsEnv];
+ }
return isFedRAMP
? `https://forge.cdn.${microsEnv.split('-')[1]}.atlassian-dev-us-gov-mod.net`
: `https://forge.cdn.${microsEnv}.atlassian-dev.net`;
}
@@ -308,8 +323,9 @@
const localhostWithPortRegex = /^localhost:\d+$/;
switch (microsEnv) {
case 'dev':
case 'stg':
+ case 'stg-gcentral':
frameAncestors = [
'*.jira-dev.com',
'http://localhost:*',
'http://devbucket.localhost',