@coreui/icons-angular 5.4.14 → 5.5.0

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/README.md CHANGED
@@ -39,7 +39,7 @@ Featured CoreUI for Angular libraries:
39
39
  # CoreUI Icons Angular
40
40
 
41
41
  ![angular][angular-badge]
42
- [![npm-coreui-angular-v5-ng19][npm-coreui-icons-angular-v5-ng19]][coreui-angular-icons-npm]
42
+ [![npm-coreui-angular-v5-ng20][npm-coreui-icons-angular-v5-ng20]][coreui-angular-icons-npm]
43
43
  [![npm-coreui-angular-latest][npm-coreui-icons-angular-latest]][coreui-angular-icons-npm]
44
44
  [![npm-coreui-angular-next][npm-coreui-icons-angular-next]][coreui-angular-icons-npm]
45
45
  [![License](https://img.shields.io/npm/l/@coreui/angular?style=flat-square)][coreui]
@@ -48,10 +48,10 @@ Featured CoreUI for Angular libraries:
48
48
 
49
49
  [coreui]: https://coreui.io/icons
50
50
  [coreui-angular-icons-npm]: https://www.npmjs.com/package/@coreui/icons-angular
51
- [npm-coreui-icons-angular-v5-ng19]: https://img.shields.io/npm/v/@coreui/icons-angular/v5-ng19?style=flat-square&color=brightgreen
51
+ [npm-coreui-icons-angular-v5-ng20]: https://img.shields.io/npm/v/@coreui/icons-angular/v5-ng20?style=flat-square&color=brightgreen
52
52
  [npm-coreui-icons-angular-latest]: https://img.shields.io/npm/v/@coreui/icons-angular/latest?style=flat-square&color=brightgreen
53
53
  [npm-coreui-icons-angular-next]: https://img.shields.io/npm/v/@coreui/icons-angular/next?style=flat-square&color=red
54
- [angular-badge]: https://img.shields.io/badge/angular-^19.2.0-lightgrey.svg?style=flat-square&logo=angular
54
+ [angular-badge]: https://img.shields.io/badge/angular-^20.0.0-lightgrey.svg?style=flat-square&logo=angular
55
55
 
56
56
  ## `cIcon` directive
57
57
 
@@ -72,7 +72,7 @@ For directive description visit [https://coreui.io/angular/docs/](https://coreui
72
72
 
73
73
  ```shell
74
74
  npm install @coreui/icons@3
75
- npm install @coreui/icons-angular@~5.4
75
+ npm install @coreui/icons-angular@~5.5
76
76
  ```
77
77
 
78
78
  ### Usage
@@ -25,10 +25,10 @@ class IconSetService {
25
25
  }
26
26
  return this.icons[name];
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconSetService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconSetService, providedIn: 'root' }); }
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconSetService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
29
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconSetService, providedIn: 'root' });
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconSetService, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconSetService, decorators: [{
32
32
  type: Injectable,
33
33
  args: [{
34
34
  providedIn: 'root'
@@ -50,11 +50,11 @@ class IconSetModule {
50
50
  ]
51
51
  };
52
52
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconSetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
54
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: IconSetModule }); }
55
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconSetModule, providers: [IconSetService] }); }
53
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconSetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
54
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.3", ngImport: i0, type: IconSetModule });
55
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconSetModule, providers: [IconSetService] });
56
56
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconSetModule, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconSetModule, decorators: [{
58
58
  type: NgModule,
59
59
  args: [{
60
60
  providers: [IconSetService]
@@ -71,70 +71,65 @@ function transformName(value) {
71
71
  }
72
72
 
73
73
  class IconDirective {
74
- constructor() {
75
- this.#sanitizer = inject(DomSanitizer);
76
- this.#iconSet = inject(IconSetService);
77
- this.content = input(undefined, { alias: 'cIcon' });
78
- this.customClasses = input();
79
- this.size = input('');
80
- this.title = input();
81
- this.height = input();
82
- this.width = input();
83
- this.name = input('', { transform: transformName });
84
- this.viewBoxInput = input(undefined, { alias: 'viewBox' });
85
- this.xmlns = input('http://www.w3.org/2000/svg');
86
- this.pointerEvents = input('none', { alias: 'pointer-events' });
87
- this.role = input('img');
88
- this.hostClasses = computed(() => {
89
- const computedSize = this.computedSize();
90
- const classes = {
91
- icon: true,
92
- [`icon-${computedSize}`]: !!computedSize
93
- };
94
- return this.customClasses() ?? classes;
95
- });
96
- this.viewBox = computed(() => {
97
- return this.viewBoxInput() ?? this.scale();
98
- });
99
- this.innerHtml = computed(() => {
100
- const codeVal = this.code();
101
- const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';
102
- // todo proper sanitize
103
- // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
104
- return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');
105
- });
106
- this.#titleCode = computed(() => {
107
- return this.title() ? `<title>${this.title()}</title>` : '';
108
- });
109
- this.code = computed(() => {
110
- const content = this.content();
111
- if (content) {
112
- return content;
113
- }
114
- const name = this.name();
115
- if (this.#iconSet && name) {
116
- return this.#iconSet.getIcon(name);
117
- }
118
- if (name && !this.#iconSet?.icons[name]) {
119
- console.warn(`cIcon directive: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \n`, name);
120
- }
121
- return '';
122
- });
123
- this.scale = computed(() => {
124
- return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';
125
- });
126
- this.computedSize = computed(() => {
127
- const addCustom = !this.size() && (this.width() || this.height());
128
- return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();
129
- });
130
- }
131
- #sanitizer;
132
- #iconSet;
133
- #titleCode;
134
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
135
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.14", type: IconDirective, isStandalone: true, selector: "svg[cIcon]", inputs: { content: { classPropertyName: "content", publicName: "cIcon", isSignal: true, isRequired: false, transformFunction: null }, customClasses: { classPropertyName: "customClasses", publicName: "customClasses", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, viewBoxInput: { classPropertyName: "viewBoxInput", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, xmlns: { classPropertyName: "xmlns", publicName: "xmlns", isSignal: true, isRequired: false, transformFunction: null }, pointerEvents: { classPropertyName: "pointerEvents", publicName: "pointer-events", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "innerHtml": "innerHtml()", "class": "hostClasses()", "attr.viewBox": "viewBox()", "attr.xmlns": "xmlns()", "attr.pointer-events": "pointerEvents()", "attr.role": "role()", "attr.aria-hidden": "true" } }, exportAs: ["cIcon"], ngImport: i0 }); }
74
+ #sanitizer = inject(DomSanitizer);
75
+ #iconSet = inject(IconSetService);
76
+ content = input(undefined, { alias: 'cIcon' });
77
+ customClasses = input();
78
+ size = input('');
79
+ title = input();
80
+ height = input();
81
+ width = input();
82
+ name = input('', { transform: transformName });
83
+ viewBoxInput = input(undefined, { alias: 'viewBox' });
84
+ xmlns = input('http://www.w3.org/2000/svg');
85
+ pointerEvents = input('none', { alias: 'pointer-events' });
86
+ role = input('img');
87
+ hostClasses = computed(() => {
88
+ const computedSize = this.computedSize();
89
+ const classes = {
90
+ icon: true,
91
+ [`icon-${computedSize}`]: !!computedSize
92
+ };
93
+ return this.customClasses() ?? classes;
94
+ });
95
+ viewBox = computed(() => {
96
+ return this.viewBoxInput() ?? this.scale();
97
+ });
98
+ innerHtml = computed(() => {
99
+ const codeVal = this.code();
100
+ const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';
101
+ // todo proper sanitize
102
+ // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
103
+ return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');
104
+ });
105
+ #titleCode = computed(() => {
106
+ return this.title() ? `<title>${this.title()}</title>` : '';
107
+ });
108
+ code = computed(() => {
109
+ const content = this.content();
110
+ if (content) {
111
+ return content;
112
+ }
113
+ const name = this.name();
114
+ if (this.#iconSet && name) {
115
+ return this.#iconSet.getIcon(name);
116
+ }
117
+ if (name && !this.#iconSet?.icons[name]) {
118
+ console.warn(`cIcon directive: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \n`, name);
119
+ }
120
+ return '';
121
+ });
122
+ scale = computed(() => {
123
+ return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';
124
+ });
125
+ computedSize = computed(() => {
126
+ const addCustom = !this.size() && (this.width() || this.height());
127
+ return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();
128
+ });
129
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
130
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.3", type: IconDirective, isStandalone: true, selector: "svg[cIcon]", inputs: { content: { classPropertyName: "content", publicName: "cIcon", isSignal: true, isRequired: false, transformFunction: null }, customClasses: { classPropertyName: "customClasses", publicName: "customClasses", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, viewBoxInput: { classPropertyName: "viewBoxInput", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null }, xmlns: { classPropertyName: "xmlns", publicName: "xmlns", isSignal: true, isRequired: false, transformFunction: null }, pointerEvents: { classPropertyName: "pointerEvents", publicName: "pointer-events", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "innerHtml": "innerHtml()", "class": "hostClasses()", "attr.viewBox": "viewBox()", "attr.xmlns": "xmlns()", "attr.pointer-events": "pointerEvents()", "attr.role": "role()", "attr.aria-hidden": "true" } }, exportAs: ["cIcon"], ngImport: i0 });
136
131
  }
137
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconDirective, decorators: [{
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconDirective, decorators: [{
138
133
  type: Directive,
139
134
  args: [{
140
135
  exportAs: 'cIcon',
@@ -152,27 +147,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
152
147
  }] });
153
148
 
154
149
  class HtmlAttributesDirective {
155
- constructor() {
156
- this.cHtmlAttr = input();
157
- this.#renderer = inject(Renderer2);
158
- this.#elementRef = inject(ElementRef);
159
- this.attrEffect = effect(() => {
160
- const attribs = this.cHtmlAttr();
161
- for (const attr in attribs) {
162
- if (attr === 'style' && typeof attribs[attr] === 'object') {
163
- this.setStyle(attribs[attr]);
164
- }
165
- else if (attr === 'class') {
166
- this.addClass(attribs[attr]);
167
- }
168
- else {
169
- this.setAttrib(attr, attribs[attr]);
170
- }
150
+ cHtmlAttr = input();
151
+ #renderer = inject(Renderer2);
152
+ #elementRef = inject(ElementRef);
153
+ attrEffect = effect(() => {
154
+ const attribs = this.cHtmlAttr();
155
+ for (const attr in attribs) {
156
+ if (attr === 'style' && typeof attribs[attr] === 'object') {
157
+ this.setStyle(attribs[attr]);
171
158
  }
172
- });
173
- }
174
- #renderer;
175
- #elementRef;
159
+ else if (attr === 'class') {
160
+ this.addClass(attribs[attr]);
161
+ }
162
+ else {
163
+ this.setAttrib(attr, attribs[attr]);
164
+ }
165
+ }
166
+ });
176
167
  setStyle(styles) {
177
168
  for (const style in styles) {
178
169
  if (style) {
@@ -193,10 +184,10 @@ class HtmlAttributesDirective {
193
184
  ? this.#renderer.setAttribute(this.#elementRef.nativeElement, key, value)
194
185
  : this.#renderer.removeAttribute(this.#elementRef.nativeElement, key);
195
186
  }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: HtmlAttributesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
197
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.14", type: HtmlAttributesDirective, isStandalone: true, selector: "[cHtmlAttr]", inputs: { cHtmlAttr: { classPropertyName: "cHtmlAttr", publicName: "cHtmlAttr", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["cHtmlAttr"], ngImport: i0 }); }
187
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: HtmlAttributesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
188
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.3", type: HtmlAttributesDirective, isStandalone: true, selector: "[cHtmlAttr]", inputs: { cHtmlAttr: { classPropertyName: "cHtmlAttr", publicName: "cHtmlAttr", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["cHtmlAttr"], ngImport: i0 });
198
189
  }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: HtmlAttributesDirective, decorators: [{
190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: HtmlAttributesDirective, decorators: [{
200
191
  type: Directive,
201
192
  args: [{
202
193
  selector: '[cHtmlAttr]',
@@ -205,99 +196,91 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
205
196
  }] });
206
197
 
207
198
  class IconComponent {
208
- constructor() {
209
- this.#renderer = inject(Renderer2);
210
- this.#elementRef = inject(ElementRef);
211
- this.#sanitizer = inject(DomSanitizer);
212
- this.#iconSet = inject(IconSetService);
213
- this.content = input();
214
- this.attributes = input({ role: 'img' });
215
- this.customClasses = input();
216
- this.size = input('');
217
- this.title = input();
218
- this.use = input('');
219
- this.height = input();
220
- this.width = input();
221
- this.name = input('', { transform: transformName });
222
- this.viewBoxInput = input(undefined, { alias: 'viewBox' });
223
- this.svgElementRef = viewChild('svgElement');
224
- this.#svgElementEffect = effect(() => {
225
- const svgElementRef = this.svgElementRef();
226
- const hostElement = this.#elementRef.nativeElement;
227
- if (svgElementRef && hostElement) {
228
- const svgElement = svgElementRef.nativeElement;
229
- hostElement.classList?.forEach((item) => {
230
- this.#renderer.addClass(svgElement, item);
231
- });
232
- const parentElement = this.#renderer.parentNode(hostElement);
233
- this.#renderer.insertBefore(parentElement, svgElement, hostElement);
234
- this.#renderer.removeChild(parentElement, hostElement);
235
- }
236
- });
237
- this.viewBox = computed(() => {
238
- return this.viewBoxInput() ?? this.scale();
239
- });
240
- this.innerHtml = computed(() => {
241
- const codeVal = this.code();
242
- const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';
243
- // todo proper sanitize
244
- // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
245
- return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');
246
- });
247
- this.#titleCode = computed(() => {
248
- return this.title() ? `<title>${this.title()}</title>` : '';
249
- });
250
- this.code = computed(() => {
251
- const content = this.content();
252
- if (content) {
253
- return content;
254
- }
255
- const name = this.name();
256
- if (this.#iconSet && name) {
257
- return this.#iconSet.getIcon(name);
258
- }
259
- if (name && !this.#iconSet?.icons[name]) {
260
- console.warn(`c-icon component: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \n`, name);
261
- }
262
- return '';
263
- });
264
- this.scale = computed(() => {
265
- return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';
266
- });
267
- this.computedSize = computed(() => {
268
- const addCustom = !this.size() && (this.width() || this.height());
269
- return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();
270
- });
271
- this.computedClasses = computed(() => {
272
- const classes = {
273
- icon: true,
274
- [`icon-${this.computedSize()}`]: !!this.computedSize()
275
- };
276
- return this.customClasses() ?? classes;
277
- });
278
- }
279
- #renderer;
280
- #elementRef;
281
- #sanitizer;
282
- #iconSet;
283
- #svgElementEffect;
284
- #titleCode;
285
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
286
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: IconComponent, isStandalone: true, selector: "c-icon", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, attributes: { classPropertyName: "attributes", publicName: "attributes", isSignal: true, isRequired: false, transformFunction: null }, customClasses: { classPropertyName: "customClasses", publicName: "customClasses", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, use: { classPropertyName: "use", publicName: "use", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, viewBoxInput: { classPropertyName: "viewBoxInput", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "ngSkipHydration": "true" }, styleAttribute: "display: none" }, viewQueries: [{ propertyName: "svgElementRef", first: true, predicate: ["svgElement"], descendants: true, isSignal: true }], exportAs: ["cIconComponent"], ngImport: i0, template: "@if (!use() && !!code()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [attr.viewBox]=\"viewBox() ?? scale()\"\n [innerHtml]=\"innerHtml()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n </svg>\n} @else if (use()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n <use [attr.href]=\"use()\"></use>\n </svg>\n}\n", styles: [".icon{display:inline-block;color:inherit;text-align:center;vertical-align:-.125rem;fill:currentColor}.icon:not(.icon-c-s):not(.icon-custom-size){width:1rem;height:1rem;font-size:1rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-xxl{width:2rem;height:2rem;font-size:2rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-xl{width:1.5rem;height:1.5rem;font-size:1.5rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-lg{width:1.25rem;height:1.25rem;font-size:1.25rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-sm{width:.875rem;height:.875rem;font-size:.875rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-3xl{width:3rem;height:3rem;font-size:3rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-4xl{width:4rem;height:4rem;font-size:4rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-5xl{width:5rem;height:5rem;font-size:5rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-6xl{width:6rem;height:6rem;font-size:6rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-7xl{width:7rem;height:7rem;font-size:7rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-8xl{width:8rem;height:8rem;font-size:8rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-9xl{width:9rem;height:9rem;font-size:9rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }] }); }
199
+ #renderer = inject(Renderer2);
200
+ #elementRef = inject(ElementRef);
201
+ #sanitizer = inject(DomSanitizer);
202
+ #iconSet = inject(IconSetService);
203
+ content = input();
204
+ attributes = input({ role: 'img' });
205
+ customClasses = input();
206
+ size = input('');
207
+ title = input();
208
+ use = input('');
209
+ height = input();
210
+ width = input();
211
+ name = input('', { transform: transformName });
212
+ viewBoxInput = input(undefined, { alias: 'viewBox' });
213
+ svgElementRef = viewChild('svgElement');
214
+ #svgElementEffect = effect(() => {
215
+ const svgElementRef = this.svgElementRef();
216
+ const hostElement = this.#elementRef.nativeElement;
217
+ if (svgElementRef && hostElement) {
218
+ const svgElement = svgElementRef.nativeElement;
219
+ hostElement.classList?.forEach((item) => {
220
+ this.#renderer.addClass(svgElement, item);
221
+ });
222
+ const parentElement = this.#renderer.parentNode(hostElement);
223
+ this.#renderer.insertBefore(parentElement, svgElement, hostElement);
224
+ this.#renderer.removeChild(parentElement, hostElement);
225
+ }
226
+ });
227
+ viewBox = computed(() => {
228
+ return this.viewBoxInput() ?? this.scale();
229
+ });
230
+ innerHtml = computed(() => {
231
+ const codeVal = this.code();
232
+ const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';
233
+ // todo proper sanitize
234
+ // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
235
+ return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');
236
+ });
237
+ #titleCode = computed(() => {
238
+ return this.title() ? `<title>${this.title()}</title>` : '';
239
+ });
240
+ code = computed(() => {
241
+ const content = this.content();
242
+ if (content) {
243
+ return content;
244
+ }
245
+ const name = this.name();
246
+ if (this.#iconSet && name) {
247
+ return this.#iconSet.getIcon(name);
248
+ }
249
+ if (name && !this.#iconSet?.icons[name]) {
250
+ console.warn(`c-icon component: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \n`, name);
251
+ }
252
+ return '';
253
+ });
254
+ scale = computed(() => {
255
+ return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';
256
+ });
257
+ computedSize = computed(() => {
258
+ const addCustom = !this.size() && (this.width() || this.height());
259
+ return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();
260
+ });
261
+ computedClasses = computed(() => {
262
+ const classes = {
263
+ icon: true,
264
+ [`icon-${this.computedSize()}`]: !!this.computedSize()
265
+ };
266
+ return this.customClasses() ?? classes;
267
+ });
268
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
269
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.3", type: IconComponent, isStandalone: true, selector: "c-icon", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, attributes: { classPropertyName: "attributes", publicName: "attributes", isSignal: true, isRequired: false, transformFunction: null }, customClasses: { classPropertyName: "customClasses", publicName: "customClasses", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, use: { classPropertyName: "use", publicName: "use", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, viewBoxInput: { classPropertyName: "viewBoxInput", publicName: "viewBox", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "ngSkipHydration": "true" }, styleAttribute: "display: none" }, viewQueries: [{ propertyName: "svgElementRef", first: true, predicate: ["svgElement"], descendants: true, isSignal: true }], exportAs: ["cIconComponent"], ngImport: i0, template: "@if (!use() && !!code()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [attr.viewBox]=\"viewBox() ?? scale()\"\n [innerHtml]=\"innerHtml()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n </svg>\n} @else if (use()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n <use [attr.href]=\"use()\"></use>\n </svg>\n}\n", styles: [".icon{display:inline-block;color:inherit;text-align:center;vertical-align:-.125rem;fill:currentColor}.icon:not(.icon-c-s):not(.icon-custom-size){width:1rem;height:1rem;font-size:1rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-xxl{width:2rem;height:2rem;font-size:2rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-xl{width:1.5rem;height:1.5rem;font-size:1.5rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-lg{width:1.25rem;height:1.25rem;font-size:1.25rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-sm{width:.875rem;height:.875rem;font-size:.875rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-3xl{width:3rem;height:3rem;font-size:3rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-4xl{width:4rem;height:4rem;font-size:4rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-5xl{width:5rem;height:5rem;font-size:5rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-6xl{width:6rem;height:6rem;font-size:6rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-7xl{width:7rem;height:7rem;font-size:7rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-8xl{width:8rem;height:8rem;font-size:8rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-9xl{width:9rem;height:9rem;font-size:9rem}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }] });
287
270
  }
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconComponent, decorators: [{
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconComponent, decorators: [{
289
272
  type: Component,
290
273
  args: [{ exportAs: 'cIconComponent', imports: [NgClass, HtmlAttributesDirective], selector: 'c-icon', host: { ngSkipHydration: 'true', style: 'display: none' }, template: "@if (!use() && !!code()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [attr.viewBox]=\"viewBox() ?? scale()\"\n [innerHtml]=\"innerHtml()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n </svg>\n} @else if (use()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n <use [attr.href]=\"use()\"></use>\n </svg>\n}\n", styles: [".icon{display:inline-block;color:inherit;text-align:center;vertical-align:-.125rem;fill:currentColor}.icon:not(.icon-c-s):not(.icon-custom-size){width:1rem;height:1rem;font-size:1rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-xxl{width:2rem;height:2rem;font-size:2rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-xl{width:1.5rem;height:1.5rem;font-size:1.5rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-lg{width:1.25rem;height:1.25rem;font-size:1.25rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-sm{width:.875rem;height:.875rem;font-size:.875rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-3xl{width:3rem;height:3rem;font-size:3rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-4xl{width:4rem;height:4rem;font-size:4rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-5xl{width:5rem;height:5rem;font-size:5rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-6xl{width:6rem;height:6rem;font-size:6rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-7xl{width:7rem;height:7rem;font-size:7rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-8xl{width:8rem;height:8rem;font-size:8rem}.icon:not(.icon-c-s):not(.icon-custom-size).icon-9xl{width:9rem;height:9rem;font-size:9rem}\n"] }]
291
274
  }] });
292
275
 
293
276
  class IconModule {
294
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
295
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.14", ngImport: i0, type: IconModule, imports: [IconComponent,
277
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
278
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.3", ngImport: i0, type: IconModule, imports: [IconComponent,
296
279
  IconDirective], exports: [IconComponent,
297
- IconDirective] }); }
298
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconModule }); }
280
+ IconDirective] });
281
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconModule });
299
282
  }
300
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconModule, decorators: [{
283
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: IconModule, decorators: [{
301
284
  type: NgModule,
302
285
  args: [{
303
286
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"coreui-icons-angular.mjs","sources":["../../../projects/coreui-icons-angular/src/lib/icon-set/icon-set.service.ts","../../../projects/coreui-icons-angular/src/lib/icon-set/icon-set.module.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.utils.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.directive.ts","../../../projects/coreui-icons-angular/src/lib/shared/html-attr.directive.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.component.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.component.svg","../../../projects/coreui-icons-angular/src/lib/icon/icon.module.ts","../../../projects/coreui-icons-angular/src/public-api.ts","../../../projects/coreui-icons-angular/src/coreui-icons-angular.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nexport interface IIconSet {\n [iconName: string]: string[];\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class IconSetService {\n public get iconNames() {\n return this.#iconNames;\n }\n\n #iconNames: Record<string, string> = {};\n\n get icons(): IIconSet {\n return this.#icons;\n }\n\n set icons(iconSet) {\n for (const iconsKey in iconSet) {\n this.#iconNames[iconsKey] = iconsKey;\n }\n this.#icons = iconSet;\n }\n\n #icons: IIconSet = {};\n\n public getIcon(name: string): string[] {\n const icon = this.icons[name];\n if (!icon) {\n console.warn(`CoreUI WARN: Icon ${name} is not registered in IconService`);\n }\n return this.icons[name];\n }\n}\n","import { ModuleWithProviders, NgModule, inject } from '@angular/core';\n\nimport { IconSetService } from './icon-set.service';\n\n@NgModule({\n providers: [IconSetService]\n})\nexport class IconSetModule {\n constructor() {\n const parentModule = inject(IconSetModule, { optional: true, skipSelf: true });\n\n if (parentModule) {\n throw new Error(\n 'CoreUI IconSetModule is already loaded. Import it in the AppModule only');\n }\n }\n\n static forRoot(): ModuleWithProviders<IconSetModule> {\n return {\n ngModule: IconSetModule,\n providers: [\n { provide: IconSetService }\n ]\n };\n }\n}\n","export function toCamelCase(value: string) {\n return value.replace(/([-_][a-z0-9])/ig, ($1: string) => {\n return $1.toUpperCase().replace('-', '');\n });\n}\n\nexport function transformName(value: string) {\n return value && value.includes('-') ? toCamelCase(value) : value;\n}\n","import { computed, Directive, inject, input } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon, IPointerEvents, NgCssClass } from './icon.interface';\nimport { transformName } from './icon.utils';\n\n@Directive({\n exportAs: 'cIcon',\n selector: 'svg[cIcon]',\n host: {\n '[innerHtml]': 'innerHtml()',\n '[class]': 'hostClasses()',\n '[attr.viewBox]': 'viewBox()',\n '[attr.xmlns]': 'xmlns()',\n '[attr.pointer-events]': 'pointerEvents()',\n '[attr.role]': 'role()',\n '[attr.aria-hidden]': 'true'\n }\n})\nexport class IconDirective implements IIcon {\n readonly #sanitizer = inject(DomSanitizer);\n readonly #iconSet = inject(IconSetService);\n\n readonly content = input<string | string[] | any[] | undefined>(undefined, { alias: 'cIcon' });\n\n readonly customClasses = input<NgCssClass>();\n readonly size = input<IconSize>('');\n readonly title = input<string>();\n readonly height = input<string>();\n readonly width = input<string>();\n readonly name = input('', { transform: transformName });\n readonly viewBoxInput = input<string | undefined>(undefined, { alias: 'viewBox' });\n readonly xmlns = input('http://www.w3.org/2000/svg');\n readonly pointerEvents = input<IPointerEvents>('none', { alias: 'pointer-events' });\n readonly role = input('img');\n\n readonly hostClasses = computed<NgCssClass>(() => {\n const computedSize = this.computedSize();\n const classes = {\n icon: true,\n [`icon-${computedSize}`]: !!computedSize\n };\n return this.customClasses() ?? classes;\n });\n\n readonly viewBox = computed(() => {\n return this.viewBoxInput() ?? this.scale();\n });\n\n readonly innerHtml = computed(() => {\n const codeVal = this.code();\n const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');\n });\n\n readonly #titleCode = computed(() => {\n return this.title() ? `<title>${this.title()}</title>` : '';\n });\n\n readonly code = computed(() => {\n const content = this.content();\n if (content) {\n return content;\n }\n const name = this.name();\n if (this.#iconSet && name) {\n return this.#iconSet.getIcon(name);\n }\n if (name && !this.#iconSet?.icons[name]) {\n console.warn(\n `cIcon directive: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \\n`,\n name\n );\n }\n return '';\n });\n\n readonly scale = computed(() => {\n return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';\n });\n\n readonly computedSize = computed(() => {\n const addCustom = !this.size() && (this.width() || this.height());\n return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();\n });\n}\n","import { Directive, effect, ElementRef, inject, input, Renderer2 } from '@angular/core';\n\n@Directive({\n selector: '[cHtmlAttr]',\n exportAs: 'cHtmlAttr'\n})\nexport class HtmlAttributesDirective {\n readonly cHtmlAttr = input<Record<string, any>>();\n\n readonly #renderer = inject(Renderer2);\n readonly #elementRef = inject(ElementRef);\n\n readonly attrEffect = effect(() => {\n const attribs = this.cHtmlAttr();\n for (const attr in attribs) {\n if (attr === 'style' && typeof attribs[attr] === 'object') {\n this.setStyle(attribs[attr]);\n } else if (attr === 'class') {\n this.addClass(attribs[attr]);\n } else {\n this.setAttrib(attr, attribs[attr]);\n }\n }\n });\n\n private setStyle(styles: Record<string, any>): void {\n for (const style in styles) {\n if (style) {\n this.#renderer.setStyle(this.#elementRef.nativeElement, style, styles[style]);\n }\n }\n }\n\n private addClass(classes: string | string[]): void {\n const classArray = Array.isArray(classes) ? classes : classes.split(' ');\n classArray\n .filter((element) => element.length > 0)\n .forEach((element) => {\n this.#renderer.addClass(this.#elementRef.nativeElement, element);\n });\n }\n\n private setAttrib(key: string, value: string | null): void {\n value !== null\n ? this.#renderer.setAttribute(this.#elementRef.nativeElement, key, value)\n : this.#renderer.removeAttribute(this.#elementRef.nativeElement, key);\n }\n}\n","import { NgClass } from '@angular/common';\nimport { Component, computed, effect, ElementRef, inject, input, Renderer2, viewChild } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { HtmlAttributesDirective } from '../shared/html-attr.directive';\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon, NgCssClass } from './icon.interface';\nimport { transformName } from './icon.utils';\n\n@Component({\n exportAs: 'cIconComponent',\n imports: [NgClass, HtmlAttributesDirective],\n selector: 'c-icon',\n styleUrls: ['./icon.component.scss'],\n templateUrl: './icon.component.svg',\n host: { ngSkipHydration: 'true', style: 'display: none' }\n})\nexport class IconComponent implements IIcon {\n readonly #renderer = inject(Renderer2);\n readonly #elementRef = inject(ElementRef);\n readonly #sanitizer = inject(DomSanitizer);\n readonly #iconSet = inject(IconSetService);\n\n readonly content = input<string | string[] | any[]>();\n\n readonly attributes = input<Record<string, any>>({ role: 'img' });\n readonly customClasses = input<NgCssClass>();\n readonly size = input<IconSize>('');\n readonly title = input<string>();\n readonly use = input<string>('');\n readonly height = input<string>();\n readonly width = input<string>();\n readonly name = input('', { transform: transformName });\n readonly viewBoxInput = input<string | undefined>(undefined, { alias: 'viewBox' });\n\n readonly svgElementRef = viewChild<ElementRef>('svgElement');\n\n readonly #svgElementEffect = effect(() => {\n const svgElementRef = this.svgElementRef();\n const hostElement: Element = this.#elementRef.nativeElement;\n if (svgElementRef && hostElement) {\n const svgElement = svgElementRef.nativeElement;\n hostElement.classList?.forEach((item: string) => {\n this.#renderer.addClass(svgElement, item);\n });\n const parentElement = this.#renderer.parentNode(hostElement);\n this.#renderer.insertBefore(parentElement, svgElement, hostElement);\n this.#renderer.removeChild(parentElement, hostElement);\n }\n });\n\n readonly viewBox = computed(() => {\n return this.viewBoxInput() ?? this.scale();\n });\n\n readonly innerHtml = computed(() => {\n const codeVal = this.code();\n const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');\n });\n\n readonly #titleCode = computed(() => {\n return this.title() ? `<title>${this.title()}</title>` : '';\n });\n\n readonly code = computed(() => {\n const content = this.content();\n if (content) {\n return content;\n }\n const name = this.name();\n if (this.#iconSet && name) {\n return this.#iconSet.getIcon(name);\n }\n if (name && !this.#iconSet?.icons[name]) {\n console.warn(\n `c-icon component: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \\n`,\n name\n );\n }\n return '';\n });\n\n readonly scale = computed(() => {\n return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';\n });\n\n readonly computedSize = computed(() => {\n const addCustom = !this.size() && (this.width() || this.height());\n return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();\n });\n\n readonly computedClasses = computed(() => {\n const classes = {\n icon: true,\n [`icon-${this.computedSize()}`]: !!this.computedSize()\n };\n return this.customClasses() ?? classes;\n });\n}\n","@if (!use() && !!code()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [attr.viewBox]=\"viewBox() ?? scale()\"\n [innerHtml]=\"innerHtml()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n </svg>\n} @else if (use()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n <use [attr.href]=\"use()\"></use>\n </svg>\n}\n","import { NgModule } from '@angular/core';\nimport { IconComponent } from './icon.component';\nimport { IconDirective } from './icon.directive';\n\n@NgModule({\n imports: [\n IconComponent,\n IconDirective\n ],\n exports: [\n IconComponent,\n IconDirective\n ]\n})\nexport class IconModule {}\n","/*\n * Public API Surface of @coreui/icons-angular\n */\nexport { IconDirective } from './lib/icon/icon.directive';\nexport { IconComponent } from './lib/icon/icon.component';\nexport { IconModule } from './lib/icon/icon.module';\nexport { IconSetService, type IIconSet } from './lib/icon-set/icon-set.service';\nexport { IconSetModule } from './lib/icon-set/icon-set.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coreui-icons-angular.mjs","sources":["../../../projects/coreui-icons-angular/src/lib/icon-set/icon-set.service.ts","../../../projects/coreui-icons-angular/src/lib/icon-set/icon-set.module.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.utils.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.directive.ts","../../../projects/coreui-icons-angular/src/lib/shared/html-attr.directive.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.component.ts","../../../projects/coreui-icons-angular/src/lib/icon/icon.component.svg","../../../projects/coreui-icons-angular/src/lib/icon/icon.module.ts","../../../projects/coreui-icons-angular/src/public-api.ts","../../../projects/coreui-icons-angular/src/coreui-icons-angular.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nexport interface IIconSet {\n [iconName: string]: string[];\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class IconSetService {\n public get iconNames() {\n return this.#iconNames;\n }\n\n #iconNames: Record<string, string> = {};\n\n get icons(): IIconSet {\n return this.#icons;\n }\n\n set icons(iconSet) {\n for (const iconsKey in iconSet) {\n this.#iconNames[iconsKey] = iconsKey;\n }\n this.#icons = iconSet;\n }\n\n #icons: IIconSet = {};\n\n public getIcon(name: string): string[] {\n const icon = this.icons[name];\n if (!icon) {\n console.warn(`CoreUI WARN: Icon ${name} is not registered in IconService`);\n }\n return this.icons[name];\n }\n}\n","import { ModuleWithProviders, NgModule, inject } from '@angular/core';\n\nimport { IconSetService } from './icon-set.service';\n\n@NgModule({\n providers: [IconSetService]\n})\nexport class IconSetModule {\n constructor() {\n const parentModule = inject(IconSetModule, { optional: true, skipSelf: true });\n\n if (parentModule) {\n throw new Error(\n 'CoreUI IconSetModule is already loaded. Import it in the AppModule only');\n }\n }\n\n static forRoot(): ModuleWithProviders<IconSetModule> {\n return {\n ngModule: IconSetModule,\n providers: [\n { provide: IconSetService }\n ]\n };\n }\n}\n","export function toCamelCase(value: string) {\n return value.replace(/([-_][a-z0-9])/ig, ($1: string) => {\n return $1.toUpperCase().replace('-', '');\n });\n}\n\nexport function transformName(value: string) {\n return value && value.includes('-') ? toCamelCase(value) : value;\n}\n","import { computed, Directive, inject, input } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon, IPointerEvents, NgCssClass } from './icon.interface';\nimport { transformName } from './icon.utils';\n\n@Directive({\n exportAs: 'cIcon',\n selector: 'svg[cIcon]',\n host: {\n '[innerHtml]': 'innerHtml()',\n '[class]': 'hostClasses()',\n '[attr.viewBox]': 'viewBox()',\n '[attr.xmlns]': 'xmlns()',\n '[attr.pointer-events]': 'pointerEvents()',\n '[attr.role]': 'role()',\n '[attr.aria-hidden]': 'true'\n }\n})\nexport class IconDirective implements IIcon {\n readonly #sanitizer = inject(DomSanitizer);\n readonly #iconSet = inject(IconSetService);\n\n readonly content = input<string | string[] | any[] | undefined>(undefined, { alias: 'cIcon' });\n\n readonly customClasses = input<NgCssClass>();\n readonly size = input<IconSize>('');\n readonly title = input<string>();\n readonly height = input<string>();\n readonly width = input<string>();\n readonly name = input('', { transform: transformName });\n readonly viewBoxInput = input<string | undefined>(undefined, { alias: 'viewBox' });\n readonly xmlns = input('http://www.w3.org/2000/svg');\n readonly pointerEvents = input<IPointerEvents>('none', { alias: 'pointer-events' });\n readonly role = input('img');\n\n readonly hostClasses = computed<NgCssClass>(() => {\n const computedSize = this.computedSize();\n const classes = {\n icon: true,\n [`icon-${computedSize}`]: !!computedSize\n };\n return this.customClasses() ?? classes;\n });\n\n readonly viewBox = computed(() => {\n return this.viewBoxInput() ?? this.scale();\n });\n\n readonly innerHtml = computed(() => {\n const codeVal = this.code();\n const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');\n });\n\n readonly #titleCode = computed(() => {\n return this.title() ? `<title>${this.title()}</title>` : '';\n });\n\n readonly code = computed(() => {\n const content = this.content();\n if (content) {\n return content;\n }\n const name = this.name();\n if (this.#iconSet && name) {\n return this.#iconSet.getIcon(name);\n }\n if (name && !this.#iconSet?.icons[name]) {\n console.warn(\n `cIcon directive: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \\n`,\n name\n );\n }\n return '';\n });\n\n readonly scale = computed(() => {\n return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';\n });\n\n readonly computedSize = computed(() => {\n const addCustom = !this.size() && (this.width() || this.height());\n return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();\n });\n}\n","import { Directive, effect, ElementRef, inject, input, Renderer2 } from '@angular/core';\n\n@Directive({\n selector: '[cHtmlAttr]',\n exportAs: 'cHtmlAttr'\n})\nexport class HtmlAttributesDirective {\n readonly cHtmlAttr = input<Record<string, any>>();\n\n readonly #renderer = inject(Renderer2);\n readonly #elementRef = inject(ElementRef);\n\n readonly attrEffect = effect(() => {\n const attribs = this.cHtmlAttr();\n for (const attr in attribs) {\n if (attr === 'style' && typeof attribs[attr] === 'object') {\n this.setStyle(attribs[attr]);\n } else if (attr === 'class') {\n this.addClass(attribs[attr]);\n } else {\n this.setAttrib(attr, attribs[attr]);\n }\n }\n });\n\n private setStyle(styles: Record<string, any>): void {\n for (const style in styles) {\n if (style) {\n this.#renderer.setStyle(this.#elementRef.nativeElement, style, styles[style]);\n }\n }\n }\n\n private addClass(classes: string | string[]): void {\n const classArray = Array.isArray(classes) ? classes : classes.split(' ');\n classArray\n .filter((element) => element.length > 0)\n .forEach((element) => {\n this.#renderer.addClass(this.#elementRef.nativeElement, element);\n });\n }\n\n private setAttrib(key: string, value: string | null): void {\n value !== null\n ? this.#renderer.setAttribute(this.#elementRef.nativeElement, key, value)\n : this.#renderer.removeAttribute(this.#elementRef.nativeElement, key);\n }\n}\n","import { NgClass } from '@angular/common';\nimport { Component, computed, effect, ElementRef, inject, input, Renderer2, viewChild } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { HtmlAttributesDirective } from '../shared/html-attr.directive';\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon, NgCssClass } from './icon.interface';\nimport { transformName } from './icon.utils';\n\n@Component({\n exportAs: 'cIconComponent',\n imports: [NgClass, HtmlAttributesDirective],\n selector: 'c-icon',\n styleUrls: ['./icon.component.scss'],\n templateUrl: './icon.component.svg',\n host: { ngSkipHydration: 'true', style: 'display: none' }\n})\nexport class IconComponent implements IIcon {\n readonly #renderer = inject(Renderer2);\n readonly #elementRef = inject(ElementRef);\n readonly #sanitizer = inject(DomSanitizer);\n readonly #iconSet = inject(IconSetService);\n\n readonly content = input<string | string[] | any[]>();\n\n readonly attributes = input<Record<string, any>>({ role: 'img' });\n readonly customClasses = input<NgCssClass>();\n readonly size = input<IconSize>('');\n readonly title = input<string>();\n readonly use = input<string>('');\n readonly height = input<string>();\n readonly width = input<string>();\n readonly name = input('', { transform: transformName });\n readonly viewBoxInput = input<string | undefined>(undefined, { alias: 'viewBox' });\n\n readonly svgElementRef = viewChild<ElementRef>('svgElement');\n\n readonly #svgElementEffect = effect(() => {\n const svgElementRef = this.svgElementRef();\n const hostElement: Element = this.#elementRef.nativeElement;\n if (svgElementRef && hostElement) {\n const svgElement = svgElementRef.nativeElement;\n hostElement.classList?.forEach((item: string) => {\n this.#renderer.addClass(svgElement, item);\n });\n const parentElement = this.#renderer.parentNode(hostElement);\n this.#renderer.insertBefore(parentElement, svgElement, hostElement);\n this.#renderer.removeChild(parentElement, hostElement);\n }\n });\n\n readonly viewBox = computed(() => {\n return this.viewBoxInput() ?? this.scale();\n });\n\n readonly innerHtml = computed(() => {\n const codeVal = this.code();\n const code = Array.isArray(codeVal) ? (codeVal?.[1] ?? codeVal?.[0] ?? '') : codeVal || '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.#sanitizer.bypassSecurityTrustHtml(this.#titleCode() + code || '');\n });\n\n readonly #titleCode = computed(() => {\n return this.title() ? `<title>${this.title()}</title>` : '';\n });\n\n readonly code = computed(() => {\n const content = this.content();\n if (content) {\n return content;\n }\n const name = this.name();\n if (this.#iconSet && name) {\n return this.#iconSet.getIcon(name);\n }\n if (name && !this.#iconSet?.icons[name]) {\n console.warn(\n `c-icon component: The '${name}' icon not found. Add it to the IconSet service for use with the 'name' property. \\n`,\n name\n );\n }\n return '';\n });\n\n readonly scale = computed(() => {\n return Array.isArray(this.code()) && (this.code()?.length ?? 0) > 1 ? `0 0 ${this.code()?.[0]}` : '0 0 64 64';\n });\n\n readonly computedSize = computed(() => {\n const addCustom = !this.size() && (this.width() || this.height());\n return this.size() === 'custom' || addCustom ? 'custom-size' : this.size();\n });\n\n readonly computedClasses = computed(() => {\n const classes = {\n icon: true,\n [`icon-${this.computedSize()}`]: !!this.computedSize()\n };\n return this.customClasses() ?? classes;\n });\n}\n","@if (!use() && !!code()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [attr.viewBox]=\"viewBox() ?? scale()\"\n [innerHtml]=\"innerHtml()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n </svg>\n} @else if (use()) {\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width()\"\n [attr.height]=\"height() || width()\"\n [ngClass]=\"computedClasses()\"\n [cHtmlAttr]=\"attributes()\"\n aria-hidden=\"true\"\n pointer-events=\"none\"\n role=\"img\"\n #svgElement\n >\n <use [attr.href]=\"use()\"></use>\n </svg>\n}\n","import { NgModule } from '@angular/core';\nimport { IconComponent } from './icon.component';\nimport { IconDirective } from './icon.directive';\n\n@NgModule({\n imports: [\n IconComponent,\n IconDirective\n ],\n exports: [\n IconComponent,\n IconDirective\n ]\n})\nexport class IconModule {}\n","/*\n * Public API Surface of @coreui/icons-angular\n */\nexport { IconDirective } from './lib/icon/icon.directive';\nexport { IconComponent } from './lib/icon/icon.component';\nexport { IconModule } from './lib/icon/icon.module';\nexport { IconSetService, type IIconSet } from './lib/icon-set/icon-set.service';\nexport { IconSetModule } from './lib/icon-set/icon-set.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,5 +1,97 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@coreui/icons-angular" />
5
- export * from './public-api';
1
+ import * as _angular_platform_browser from '@angular/platform-browser';
2
+ import * as _angular_core from '@angular/core';
3
+ import { InputSignal, InputSignalWithTransform, ElementRef, ModuleWithProviders } from '@angular/core';
4
+
5
+ interface IIcon {
6
+ content?: InputSignal<string | string[] | any[] | undefined>;
7
+ customClasses?: InputSignal<NgCssClass | undefined>;
8
+ height?: InputSignal<string | undefined>;
9
+ name?: InputSignalWithTransform<string, string>;
10
+ pointerEvents?: InputSignal<IPointerEvents>;
11
+ size?: InputSignal<IconSize>;
12
+ title?: InputSignal<string | undefined>;
13
+ viewBoxInput?: InputSignal<string | undefined>;
14
+ width: InputSignal<string | undefined>;
15
+ xmlns?: InputSignal<string>;
16
+ }
17
+ type IconSize = 'custom' | 'custom-size' | 'sm' | 'lg' | 'xl' | 'xxl' | '3xl' | '4xl' | '5xl' | '6xl' | '7xl' | '8xl' | '9xl' | string;
18
+ type IPointerEvents = 'auto' | 'bounding-box' | 'visiblePainted' | 'visibleFill' | 'visibleStroke' | 'visible' | 'painted' | 'fill' | 'stroke' | 'all' | 'none';
19
+ type NgCssClass = string | string[] | Set<string> | {
20
+ [klass: string]: any;
21
+ };
22
+
23
+ declare class IconDirective implements IIcon {
24
+ #private;
25
+ readonly content: _angular_core.InputSignal<string | any[] | string[] | undefined>;
26
+ readonly customClasses: _angular_core.InputSignal<NgCssClass | undefined>;
27
+ readonly size: _angular_core.InputSignal<string>;
28
+ readonly title: _angular_core.InputSignal<string | undefined>;
29
+ readonly height: _angular_core.InputSignal<string | undefined>;
30
+ readonly width: _angular_core.InputSignal<string | undefined>;
31
+ readonly name: _angular_core.InputSignalWithTransform<string, string>;
32
+ readonly viewBoxInput: _angular_core.InputSignal<string | undefined>;
33
+ readonly xmlns: _angular_core.InputSignal<string>;
34
+ readonly pointerEvents: _angular_core.InputSignal<IPointerEvents>;
35
+ readonly role: _angular_core.InputSignal<string>;
36
+ readonly hostClasses: _angular_core.Signal<NgCssClass>;
37
+ readonly viewBox: _angular_core.Signal<string>;
38
+ readonly innerHtml: _angular_core.Signal<_angular_platform_browser.SafeHtml>;
39
+ readonly code: _angular_core.Signal<string | any[]>;
40
+ readonly scale: _angular_core.Signal<string>;
41
+ readonly computedSize: _angular_core.Signal<string>;
42
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconDirective, never>;
43
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IconDirective, "svg[cIcon]", ["cIcon"], { "content": { "alias": "cIcon"; "required": false; "isSignal": true; }; "customClasses": { "alias": "customClasses"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "viewBoxInput": { "alias": "viewBox"; "required": false; "isSignal": true; }; "xmlns": { "alias": "xmlns"; "required": false; "isSignal": true; }; "pointerEvents": { "alias": "pointer-events"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
44
+ }
45
+
46
+ declare class IconComponent implements IIcon {
47
+ #private;
48
+ readonly content: _angular_core.InputSignal<string | any[] | string[] | undefined>;
49
+ readonly attributes: _angular_core.InputSignal<Record<string, any>>;
50
+ readonly customClasses: _angular_core.InputSignal<NgCssClass | undefined>;
51
+ readonly size: _angular_core.InputSignal<string>;
52
+ readonly title: _angular_core.InputSignal<string | undefined>;
53
+ readonly use: _angular_core.InputSignal<string>;
54
+ readonly height: _angular_core.InputSignal<string | undefined>;
55
+ readonly width: _angular_core.InputSignal<string | undefined>;
56
+ readonly name: _angular_core.InputSignalWithTransform<string, string>;
57
+ readonly viewBoxInput: _angular_core.InputSignal<string | undefined>;
58
+ readonly svgElementRef: _angular_core.Signal<ElementRef<any> | undefined>;
59
+ readonly viewBox: _angular_core.Signal<string>;
60
+ readonly innerHtml: _angular_core.Signal<_angular_platform_browser.SafeHtml>;
61
+ readonly code: _angular_core.Signal<string | any[]>;
62
+ readonly scale: _angular_core.Signal<string>;
63
+ readonly computedSize: _angular_core.Signal<string>;
64
+ readonly computedClasses: _angular_core.Signal<NgCssClass>;
65
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconComponent, never>;
66
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<IconComponent, "c-icon", ["cIconComponent"], { "content": { "alias": "content"; "required": false; "isSignal": true; }; "attributes": { "alias": "attributes"; "required": false; "isSignal": true; }; "customClasses": { "alias": "customClasses"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "use": { "alias": "use"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "viewBoxInput": { "alias": "viewBox"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
67
+ }
68
+
69
+ declare class IconModule {
70
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconModule, never>;
71
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<IconModule, never, [typeof IconComponent, typeof IconDirective], [typeof IconComponent, typeof IconDirective]>;
72
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<IconModule>;
73
+ }
74
+
75
+ interface IIconSet {
76
+ [iconName: string]: string[];
77
+ }
78
+ declare class IconSetService {
79
+ #private;
80
+ get iconNames(): Record<string, string>;
81
+ get icons(): IIconSet;
82
+ set icons(iconSet: IIconSet);
83
+ getIcon(name: string): string[];
84
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconSetService, never>;
85
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<IconSetService>;
86
+ }
87
+
88
+ declare class IconSetModule {
89
+ constructor();
90
+ static forRoot(): ModuleWithProviders<IconSetModule>;
91
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconSetModule, never>;
92
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<IconSetModule, never, never, never>;
93
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<IconSetModule>;
94
+ }
95
+
96
+ export { IconComponent, IconDirective, IconModule, IconSetModule, IconSetService };
97
+ export type { IIconSet };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coreui/icons-angular",
3
- "version": "5.4.14",
3
+ "version": "5.5.0",
4
4
  "description": "CoreUI Icons Angular component and service",
5
5
  "copyright": "Copyright 2025 creativeLabs Łukasz Holeczek",
6
6
  "license": "MIT",
@@ -25,9 +25,9 @@
25
25
  "url": "https://github.com/coreui/coreui-angular/issues"
26
26
  },
27
27
  "peerDependencies": {
28
- "@angular/common": "^19.2.0",
29
- "@angular/core": "^19.2.0",
30
- "@angular/platform-browser": "^19.2.0"
28
+ "@angular/common": "^20.0.3",
29
+ "@angular/core": "^20.0.3",
30
+ "@angular/platform-browser": "^20.0.3"
31
31
  },
32
32
  "dependencies": {
33
33
  "tslib": "^2.3.0"
@@ -1,25 +0,0 @@
1
- import { ElementRef } from '@angular/core';
2
- import { IIcon, NgCssClass } from './icon.interface';
3
- import * as i0 from "@angular/core";
4
- export declare class IconComponent implements IIcon {
5
- #private;
6
- readonly content: import("@angular/core").InputSignal<string | any[] | string[] | undefined>;
7
- readonly attributes: import("@angular/core").InputSignal<Record<string, any>>;
8
- readonly customClasses: import("@angular/core").InputSignal<NgCssClass | undefined>;
9
- readonly size: import("@angular/core").InputSignal<string>;
10
- readonly title: import("@angular/core").InputSignal<string | undefined>;
11
- readonly use: import("@angular/core").InputSignal<string>;
12
- readonly height: import("@angular/core").InputSignal<string | undefined>;
13
- readonly width: import("@angular/core").InputSignal<string | undefined>;
14
- readonly name: import("@angular/core").InputSignalWithTransform<string, string>;
15
- readonly viewBoxInput: import("@angular/core").InputSignal<string | undefined>;
16
- readonly svgElementRef: import("@angular/core").Signal<ElementRef<any> | undefined>;
17
- readonly viewBox: import("@angular/core").Signal<string>;
18
- readonly innerHtml: import("@angular/core").Signal<import("@angular/platform-browser").SafeHtml>;
19
- readonly code: import("@angular/core").Signal<string | any[]>;
20
- readonly scale: import("@angular/core").Signal<string>;
21
- readonly computedSize: import("@angular/core").Signal<string>;
22
- readonly computedClasses: import("@angular/core").Signal<NgCssClass>;
23
- static ɵfac: i0.ɵɵFactoryDeclaration<IconComponent, never>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<IconComponent, "c-icon", ["cIconComponent"], { "content": { "alias": "content"; "required": false; "isSignal": true; }; "attributes": { "alias": "attributes"; "required": false; "isSignal": true; }; "customClasses": { "alias": "customClasses"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "use": { "alias": "use"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "viewBoxInput": { "alias": "viewBox"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
25
- }
@@ -1,24 +0,0 @@
1
- import { IIcon, IPointerEvents, NgCssClass } from './icon.interface';
2
- import * as i0 from "@angular/core";
3
- export declare class IconDirective implements IIcon {
4
- #private;
5
- readonly content: import("@angular/core").InputSignal<string | any[] | string[] | undefined>;
6
- readonly customClasses: import("@angular/core").InputSignal<NgCssClass | undefined>;
7
- readonly size: import("@angular/core").InputSignal<string>;
8
- readonly title: import("@angular/core").InputSignal<string | undefined>;
9
- readonly height: import("@angular/core").InputSignal<string | undefined>;
10
- readonly width: import("@angular/core").InputSignal<string | undefined>;
11
- readonly name: import("@angular/core").InputSignalWithTransform<string, string>;
12
- readonly viewBoxInput: import("@angular/core").InputSignal<string | undefined>;
13
- readonly xmlns: import("@angular/core").InputSignal<string>;
14
- readonly pointerEvents: import("@angular/core").InputSignal<IPointerEvents>;
15
- readonly role: import("@angular/core").InputSignal<string>;
16
- readonly hostClasses: import("@angular/core").Signal<NgCssClass>;
17
- readonly viewBox: import("@angular/core").Signal<string>;
18
- readonly innerHtml: import("@angular/core").Signal<import("@angular/platform-browser").SafeHtml>;
19
- readonly code: import("@angular/core").Signal<string | any[]>;
20
- readonly scale: import("@angular/core").Signal<string>;
21
- readonly computedSize: import("@angular/core").Signal<string>;
22
- static ɵfac: i0.ɵɵFactoryDeclaration<IconDirective, never>;
23
- static ɵdir: i0.ɵɵDirectiveDeclaration<IconDirective, "svg[cIcon]", ["cIcon"], { "content": { "alias": "cIcon"; "required": false; "isSignal": true; }; "customClasses": { "alias": "customClasses"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "viewBoxInput": { "alias": "viewBox"; "required": false; "isSignal": true; }; "xmlns": { "alias": "xmlns"; "required": false; "isSignal": true; }; "pointerEvents": { "alias": "pointer-events"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
24
- }
@@ -1,18 +0,0 @@
1
- import { InputSignal, InputSignalWithTransform } from '@angular/core';
2
- export interface IIcon {
3
- content?: InputSignal<string | string[] | any[] | undefined>;
4
- customClasses?: InputSignal<NgCssClass | undefined>;
5
- height?: InputSignal<string | undefined>;
6
- name?: InputSignalWithTransform<string, string>;
7
- pointerEvents?: InputSignal<IPointerEvents>;
8
- size?: InputSignal<IconSize>;
9
- title?: InputSignal<string | undefined>;
10
- viewBoxInput?: InputSignal<string | undefined>;
11
- width: InputSignal<string | undefined>;
12
- xmlns?: InputSignal<string>;
13
- }
14
- export type IconSize = 'custom' | 'custom-size' | 'sm' | 'lg' | 'xl' | 'xxl' | '3xl' | '4xl' | '5xl' | '6xl' | '7xl' | '8xl' | '9xl' | string;
15
- export type IPointerEvents = 'auto' | 'bounding-box' | 'visiblePainted' | 'visibleFill' | 'visibleStroke' | 'visible' | 'painted' | 'fill' | 'stroke' | 'all' | 'none';
16
- export type NgCssClass = string | string[] | Set<string> | {
17
- [klass: string]: any;
18
- };
@@ -1,8 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./icon.component";
3
- import * as i2 from "./icon.directive";
4
- export declare class IconModule {
5
- static ɵfac: i0.ɵɵFactoryDeclaration<IconModule, never>;
6
- static ɵmod: i0.ɵɵNgModuleDeclaration<IconModule, never, [typeof i1.IconComponent, typeof i2.IconDirective], [typeof i1.IconComponent, typeof i2.IconDirective]>;
7
- static ɵinj: i0.ɵɵInjectorDeclaration<IconModule>;
8
- }
@@ -1,2 +0,0 @@
1
- export declare function toCamelCase(value: string): string;
2
- export declare function transformName(value: string): string;
@@ -1,9 +0,0 @@
1
- import { ModuleWithProviders } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export declare class IconSetModule {
4
- constructor();
5
- static forRoot(): ModuleWithProviders<IconSetModule>;
6
- static ɵfac: i0.ɵɵFactoryDeclaration<IconSetModule, never>;
7
- static ɵmod: i0.ɵɵNgModuleDeclaration<IconSetModule, never, never, never>;
8
- static ɵinj: i0.ɵɵInjectorDeclaration<IconSetModule>;
9
- }
@@ -1,13 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- export interface IIconSet {
3
- [iconName: string]: string[];
4
- }
5
- export declare class IconSetService {
6
- #private;
7
- get iconNames(): Record<string, string>;
8
- get icons(): IIconSet;
9
- set icons(iconSet: IIconSet);
10
- getIcon(name: string): string[];
11
- static ɵfac: i0.ɵɵFactoryDeclaration<IconSetService, never>;
12
- static ɵprov: i0.ɵɵInjectableDeclaration<IconSetService>;
13
- }
@@ -1 +0,0 @@
1
- export * from './public_api';
@@ -1,2 +0,0 @@
1
- export { IconSetService, type IIconSet } from './icon-set.service';
2
- export { IconSetModule } from './icon-set.module';
@@ -1,11 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- export declare class HtmlAttributesDirective {
3
- #private;
4
- readonly cHtmlAttr: import("@angular/core").InputSignal<Record<string, any> | undefined>;
5
- readonly attrEffect: import("@angular/core").EffectRef;
6
- private setStyle;
7
- private addClass;
8
- private setAttrib;
9
- static ɵfac: i0.ɵɵFactoryDeclaration<HtmlAttributesDirective, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<HtmlAttributesDirective, "[cHtmlAttr]", ["cHtmlAttr"], { "cHtmlAttr": { "alias": "cHtmlAttr"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
11
- }
package/public-api.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export { IconDirective } from './lib/icon/icon.directive';
2
- export { IconComponent } from './lib/icon/icon.component';
3
- export { IconModule } from './lib/icon/icon.module';
4
- export { IconSetService, type IIconSet } from './lib/icon-set/icon-set.service';
5
- export { IconSetModule } from './lib/icon-set/icon-set.module';