fix: public api surface fixes + stability markers
- ts-api-guardian will now error if a new public symbol is added with a stability marker (`@stable`, `@experimental`, `@deprecated`) - DomEventsPlugin and KeyEventsPlugin were removed from public api surface - these classes is an implementation detail - deprecated BROWSER_PROVIDERS was removed completely - `@angular/compiler` was removed from the ts-api-guardian check since this package shouldn't contain anything that users need to directly import - the rest of the api surface was conservatively marked as stable or experimental BREAKING CHANGES: DomEventsPlugin and KeyEventsPlugin previously exported from core are no longer public - these classes are implementation detail. Previously deprecated BROWSER_PROVIDERS was completely removed from platform-browser. Closes #9236 Closes #9235 Ref #9234
This commit is contained in:
@ -19,17 +19,44 @@ export {SecurityContext};
|
||||
|
||||
/**
|
||||
* Marker interface for a value that's safe to use in a particular context.
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export interface SafeValue {}
|
||||
/** Marker interface for a value that's safe to use as HTML. */
|
||||
|
||||
/**
|
||||
* Marker interface for a value that's safe to use as HTML.
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export interface SafeHtml extends SafeValue {}
|
||||
/** Marker interface for a value that's safe to use as style (CSS). */
|
||||
|
||||
/**
|
||||
* Marker interface for a value that's safe to use as style (CSS).
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export interface SafeStyle extends SafeValue {}
|
||||
/** Marker interface for a value that's safe to use as JavaScript. */
|
||||
|
||||
/**
|
||||
* Marker interface for a value that's safe to use as JavaScript.
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export interface SafeScript extends SafeValue {}
|
||||
/** Marker interface for a value that's safe to use as a URL linking to a document. */
|
||||
|
||||
/**
|
||||
* Marker interface for a value that's safe to use as a URL linking to a document.
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export interface SafeUrl extends SafeValue {}
|
||||
/** Marker interface for a value that's safe to use as a URL to load executable code from. */
|
||||
|
||||
/**
|
||||
* Marker interface for a value that's safe to use as a URL to load executable code from.
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export interface SafeResourceUrl extends SafeValue {}
|
||||
|
||||
/**
|
||||
@ -55,6 +82,8 @@ export interface SafeResourceUrl extends SafeValue {}
|
||||
* It is not required (and not recommended) to bypass security if the value is safe, e.g. a URL that
|
||||
* does not start with a suspicious protocol, or an HTML snippet that does not contain dangerous
|
||||
* code. The sanitizer leaves safe values intact.
|
||||
*
|
||||
* @stable
|
||||
*/
|
||||
export abstract class DomSanitizationService implements SanitizationService {
|
||||
/**
|
||||
|
Reference in New Issue
Block a user