UNPKG

@yuebai008/cli

Version:

Command line interface for rapid qg-minigame development

1 lines 3.37 kB
import*as i18n from"../../core/i18n/i18n.js";import{Issue,IssueCategory,IssueKind}from"./Issue.js";import{resolveLazyDescription}from"./MarkdownIssueDescription.js";const UIStrings={contentSecurityPolicySource:"Content Security Policy - Source Allowlists",contentSecurityPolicyInlineCode:"Content Security Policy - Inline Code",contentSecurityPolicyEval:"Content Security Policy - Eval",trustedTypesFixViolations:"Trusted Types - Fix violations",trustedTypesPolicyViolation:"Trusted Types - Policy violation"},str_=i18n.i18n.registerUIStrings("models/issues_manager/ContentSecurityPolicyIssue.ts",UIStrings),i18nLazyString=i18n.i18n.getLazilyComputedLocalizedString.bind(void 0,str_);export class ContentSecurityPolicyIssue extends Issue{#i;constructor(i,e,t){super(["ContentSecurityPolicyIssue",i.contentSecurityPolicyViolationType].join("::"),e,t),this.#i=i}getCategory(){return IssueCategory.ContentSecurityPolicy}primaryKey(){return JSON.stringify(this.#i,["blockedURL","contentSecurityPolicyViolationType","violatedDirective","isReportOnly","sourceCodeLocation","url","lineNumber","columnNumber","violatingNodeId"])}getDescription(){const i=issueDescriptions.get(this.#i.contentSecurityPolicyViolationType);return i?resolveLazyDescription(i):null}details(){return this.#i}getKind(){return this.#i.isReportOnly?IssueKind.Improvement:IssueKind.PageError}static fromInspectorIssue(i,e){const t=e.details.contentSecurityPolicyIssueDetails;return t?[new ContentSecurityPolicyIssue(t,i,e.issueId)]:(console.warn("Content security policy issue without details received."),[])}}const cspURLViolation={file:"cspURLViolation.md",links:[{link:"https://developers.google.com/web/fundamentals/security/csp#source_allowlists",linkTitle:i18nLazyString(UIStrings.contentSecurityPolicySource)}]},cspInlineViolation={file:"cspInlineViolation.md",links:[{link:"https://developers.google.com/web/fundamentals/security/csp#inline_code_is_considered_harmful",linkTitle:i18nLazyString(UIStrings.contentSecurityPolicyInlineCode)}]},cspEvalViolation={file:"cspEvalViolation.md",links:[{link:"https://developers.google.com/web/fundamentals/security/csp#eval_too",linkTitle:i18nLazyString(UIStrings.contentSecurityPolicyEval)}]},cspTrustedTypesSinkViolation={file:"cspTrustedTypesSinkViolation.md",links:[{link:"https://web.dev/trusted-types/#fix-the-violations",linkTitle:i18nLazyString(UIStrings.trustedTypesFixViolations)}]},cspTrustedTypesPolicyViolation={file:"cspTrustedTypesPolicyViolation.md",links:[{link:"https://web.dev/trusted-types/",linkTitle:i18nLazyString(UIStrings.trustedTypesPolicyViolation)}]};export const urlViolationCode=["ContentSecurityPolicyIssue","kURLViolation"].join("::");export const inlineViolationCode=["ContentSecurityPolicyIssue","kInlineViolation"].join("::");export const evalViolationCode=["ContentSecurityPolicyIssue","kEvalViolation"].join("::");export const trustedTypesSinkViolationCode=["ContentSecurityPolicyIssue","kTrustedTypesSinkViolation"].join("::");export const trustedTypesPolicyViolationCode=["ContentSecurityPolicyIssue","kTrustedTypesPolicyViolation"].join("::");const issueDescriptions=new Map([["kURLViolation",cspURLViolation],["kInlineViolation",cspInlineViolation],["kEvalViolation",cspEvalViolation],["kTrustedTypesSinkViolation",cspTrustedTypesSinkViolation],["kTrustedTypesPolicyViolation",cspTrustedTypesPolicyViolation]]);