angular-svg-icon
Advanced tools
Comparing version 4.2.0 to 4.2.5
@@ -76,2 +76,14 @@ (function (global, factory) { | ||
SvgIconComponent.prototype.ngOnInit = function () { | ||
this.init(); | ||
}; | ||
SvgIconComponent.prototype.ngOnDestroy = function () { | ||
this.destroy(); | ||
}; | ||
SvgIconComponent.prototype.ngOnChanges = function (changeRecord) { | ||
if (changeRecord['src']) { | ||
this.destroy(); | ||
this.init(); | ||
} | ||
}; | ||
SvgIconComponent.prototype.init = function () { | ||
var _this = this; | ||
@@ -82,3 +94,3 @@ this.icnSub = this.iconReg.loadSvg(this.src).subscribe(function (svg) { | ||
}; | ||
SvgIconComponent.prototype.ngOnDestroy = function () { | ||
SvgIconComponent.prototype.destroy = function () { | ||
if (this.icnSub) { | ||
@@ -85,0 +97,0 @@ this.icnSub.unsubscribe(); |
{ | ||
"name": "angular-svg-icon", | ||
"description": "Angular 2+ component for inlining SVGs allowing them to be easily styled with CSS.", | ||
"version": "4.2.0", | ||
"version": "4.2.5", | ||
"repository": { | ||
@@ -6,0 +6,0 @@ "type": "git", |
@@ -47,2 +47,29 @@ [![npm version](https://badge.fury.io/js/angular-svg-icon.svg)](https://badge.fury.io/js/angular-svg-icon) | ||
Programatic interaction with the registry is also possible. | ||
Include the ``private iconReg:SvgIconRegistryService`` in the constructor: | ||
```typescript | ||
constructor(private iconReg:SvgIconRegistryService) { } | ||
``` | ||
The registry has two public functions: `loadSvg(string)` and `unloadSvg(string)`. | ||
To preload a svg file into the registry: | ||
```typescript | ||
{ | ||
... | ||
this.iconReg.loadSvg('foo.svg'); | ||
} | ||
``` | ||
To unload a svg from the registry. | ||
```typescript | ||
{ | ||
... | ||
this.iconReg.unloadSvg('foo.svg'); | ||
} | ||
``` | ||
## Background | ||
@@ -71,3 +98,3 @@ | ||
## Author | ||
- David Czeck [@czeckd](https://github/czeckd) | ||
- David Czeck [@czeckd](https://github.com/czeckd) | ||
@@ -1,5 +0,5 @@ | ||
import { ElementRef, OnDestroy, OnInit, Optional, Renderer } from '@angular/core'; | ||
import { ElementRef, OnChanges, OnDestroy, OnInit, Optional, Renderer, SimpleChange } from '@angular/core'; | ||
import { Http } from '@angular/http'; | ||
import { SvgIconRegistryService } from './svg-icon-registry.service'; | ||
export declare class SvgIconComponent implements OnInit, OnDestroy { | ||
export declare class SvgIconComponent implements OnInit, OnDestroy, OnChanges { | ||
private element; | ||
@@ -13,2 +13,7 @@ private renderer; | ||
ngOnDestroy(): void; | ||
ngOnChanges(changeRecord: { | ||
[key: string]: SimpleChange; | ||
}): void; | ||
private init(); | ||
private destroy(); | ||
private setSvg(svg); | ||
@@ -15,0 +20,0 @@ } |
@@ -11,2 +11,14 @@ import { Component, ElementRef, Input, Optional, Renderer, SkipSelf } from '@angular/core'; | ||
SvgIconComponent.prototype.ngOnInit = function () { | ||
this.init(); | ||
}; | ||
SvgIconComponent.prototype.ngOnDestroy = function () { | ||
this.destroy(); | ||
}; | ||
SvgIconComponent.prototype.ngOnChanges = function (changeRecord) { | ||
if (changeRecord['src']) { | ||
this.destroy(); | ||
this.init(); | ||
} | ||
}; | ||
SvgIconComponent.prototype.init = function () { | ||
var _this = this; | ||
@@ -17,3 +29,3 @@ this.icnSub = this.iconReg.loadSvg(this.src).subscribe(function (svg) { | ||
}; | ||
SvgIconComponent.prototype.ngOnDestroy = function () { | ||
SvgIconComponent.prototype.destroy = function () { | ||
if (this.icnSub) { | ||
@@ -20,0 +32,0 @@ this.icnSub.unsubscribe(); |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{"SvgIconComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"svg-icon","styles":[":host { display:inline-block; }"],"template":"<ng-content></ng-content>"}]}],"members":{"src":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer"},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"setSvg":[{"__symbolic":"method"}]}},"SVG_ICON_REGISTRY_PROVIDER_FACTORY":{"__symbolic":"function","parameters":["parentRegistry","http"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"reference","name":"parentRegistry"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"arguments":[{"__symbolic":"reference","name":"http"}]}}},"SVG_ICON_REGISTRY_PROVIDER":{"provide":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"deps":[[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}],{"__symbolic":"reference","module":"@angular/http","name":"Http"}],"useFactory":{"__symbolic":"reference","name":"SVG_ICON_REGISTRY_PROVIDER_FACTORY"}}}},{"__symbolic":"module","version":1,"metadata":{"SvgIconComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"svg-icon","styles":[":host { display:inline-block; }"],"template":"<ng-content></ng-content>"}]}],"members":{"src":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer"},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"setSvg":[{"__symbolic":"method"}]}},"SVG_ICON_REGISTRY_PROVIDER_FACTORY":{"__symbolic":"function","parameters":["parentRegistry","http"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"reference","name":"parentRegistry"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"arguments":[{"__symbolic":"reference","name":"http"}]}}},"SVG_ICON_REGISTRY_PROVIDER":{"provide":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"deps":[[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}],{"__symbolic":"reference","module":"@angular/http","name":"Http"}],"useFactory":{"__symbolic":"reference","name":"SVG_ICON_REGISTRY_PROVIDER_FACTORY"}}}}] | ||
[{"__symbolic":"module","version":3,"metadata":{"SvgIconComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"svg-icon","styles":[":host { display:inline-block; }"],"template":"<ng-content></ng-content>"}]}],"members":{"src":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer"},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setSvg":[{"__symbolic":"method"}]}},"SVG_ICON_REGISTRY_PROVIDER_FACTORY":{"__symbolic":"function","parameters":["parentRegistry","http"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"reference","name":"parentRegistry"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"arguments":[{"__symbolic":"reference","name":"http"}]}}},"SVG_ICON_REGISTRY_PROVIDER":{"provide":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"deps":[[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}],{"__symbolic":"reference","module":"@angular/http","name":"Http"}],"useFactory":{"__symbolic":"reference","name":"SVG_ICON_REGISTRY_PROVIDER_FACTORY"}}}},{"__symbolic":"module","version":1,"metadata":{"SvgIconComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"svg-icon","styles":[":host { display:inline-block; }"],"template":"<ng-content></ng-content>"}]}],"members":{"src":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer"},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}],"setSvg":[{"__symbolic":"method"}]}},"SVG_ICON_REGISTRY_PROVIDER_FACTORY":{"__symbolic":"function","parameters":["parentRegistry","http"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"reference","name":"parentRegistry"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"arguments":[{"__symbolic":"reference","name":"http"}]}}},"SVG_ICON_REGISTRY_PROVIDER":{"provide":{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"},"deps":[[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional"}},{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf"}},{"__symbolic":"reference","module":"./svg-icon-registry.service","name":"SvgIconRegistryService"}],{"__symbolic":"reference","module":"@angular/http","name":"Http"}],"useFactory":{"__symbolic":"reference","name":"SVG_ICON_REGISTRY_PROVIDER_FACTORY"}}}}] |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
29606
340
99