@coreui/icons-angular 4.7.17 → 4.7.19
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/LICENSE +1 -1
- package/README.md +3 -3
- package/esm2022/lib/icon/icon.component.mjs +74 -59
- package/esm2022/lib/icon/icon.directive.mjs +78 -59
- package/esm2022/lib/icon/icon.module.mjs +4 -4
- package/esm2022/lib/icon/icon.utils.mjs +6 -3
- package/esm2022/lib/icon-set/icon-set.module.mjs +4 -4
- package/esm2022/lib/icon-set/icon-set.service.mjs +3 -3
- package/esm2022/lib/shared/html-attr.directive.mjs +3 -3
- package/fesm2022/coreui-icons-angular.mjs +167 -130
- package/fesm2022/coreui-icons-angular.mjs.map +1 -1
- package/lib/icon/icon.component.d.ts +14 -19
- package/lib/icon/icon.directive.d.ts +14 -18
- package/lib/icon/icon.utils.d.ts +2 -1
- package/package.json +3 -4
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, NgModule, Optional, SkipSelf, afterNextRender, AfterRenderPhase, Directive, Input, HostBinding,
|
|
3
|
-
import
|
|
4
|
-
import { NgClass
|
|
5
|
-
|
|
6
|
-
function toCamelCase(str) {
|
|
7
|
-
return str.replace(/([-_][a-z0-9])/ig, ($1) => {
|
|
8
|
-
return $1.toUpperCase().replace('-', '');
|
|
9
|
-
});
|
|
10
|
-
}
|
|
2
|
+
import { Injectable, NgModule, Optional, SkipSelf, inject, ElementRef, signal, computed, afterNextRender, AfterRenderPhase, Directive, Input, HostBinding, Renderer2, Component, ViewChild } from '@angular/core';
|
|
3
|
+
import { DomSanitizer } from '@angular/platform-browser';
|
|
4
|
+
import { NgClass } from '@angular/common';
|
|
11
5
|
|
|
12
6
|
class IconSetService {
|
|
13
7
|
constructor() {
|
|
@@ -33,10 +27,10 @@ class IconSetService {
|
|
|
33
27
|
}
|
|
34
28
|
return this.icons[name];
|
|
35
29
|
}
|
|
36
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
37
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconSetService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
31
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconSetService, providedIn: 'root' }); }
|
|
38
32
|
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconSetService, decorators: [{
|
|
40
34
|
type: Injectable,
|
|
41
35
|
args: [{
|
|
42
36
|
providedIn: 'root'
|
|
@@ -57,11 +51,11 @@ class IconSetModule {
|
|
|
57
51
|
]
|
|
58
52
|
};
|
|
59
53
|
}
|
|
60
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
61
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.
|
|
62
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.
|
|
54
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconSetModule, deps: [{ token: IconSetModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
55
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: IconSetModule }); }
|
|
56
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconSetModule, providers: [IconSetService] }); }
|
|
63
57
|
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconSetModule, decorators: [{
|
|
65
59
|
type: NgModule,
|
|
66
60
|
args: [{
|
|
67
61
|
providers: [IconSetService]
|
|
@@ -72,59 +66,84 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
72
66
|
type: SkipSelf
|
|
73
67
|
}] }] });
|
|
74
68
|
|
|
69
|
+
function toCamelCase(value) {
|
|
70
|
+
return value.replace(/([-_][a-z0-9])/ig, ($1) => {
|
|
71
|
+
return $1.toUpperCase().replace('-', '');
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
function transformName(value) {
|
|
75
|
+
return value && value.includes('-') ? toCamelCase(value) : value;
|
|
76
|
+
}
|
|
77
|
+
|
|
75
78
|
class IconDirective {
|
|
79
|
+
#elementRef;
|
|
80
|
+
#sanitizer;
|
|
81
|
+
#iconSet;
|
|
82
|
+
constructor() {
|
|
83
|
+
this.#elementRef = inject(ElementRef);
|
|
84
|
+
this.#sanitizer = inject(DomSanitizer);
|
|
85
|
+
this.#iconSet = inject(IconSetService);
|
|
86
|
+
this.#content = signal('');
|
|
87
|
+
this.size = '';
|
|
88
|
+
this.#name = signal('');
|
|
89
|
+
this.ariaHidden = true;
|
|
90
|
+
this.xmlns = 'http://www.w3.org/2000/svg';
|
|
91
|
+
this.pointerEvents = 'none';
|
|
92
|
+
this.role = 'img';
|
|
93
|
+
this.innerHtml = computed(() => {
|
|
94
|
+
const code = Array.isArray(this.code()) ? (this.code()[1] ?? this.code()[0] ?? '') : this.code() || '';
|
|
95
|
+
// todo proper sanitize
|
|
96
|
+
// const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
|
|
97
|
+
return this.#sanitizer.bypassSecurityTrustHtml((this.titleCode + code) || '');
|
|
98
|
+
});
|
|
99
|
+
this.code = computed(() => {
|
|
100
|
+
if (this.#content()) {
|
|
101
|
+
return this.#content();
|
|
102
|
+
}
|
|
103
|
+
if (this.#iconSet && this.#name()) {
|
|
104
|
+
return this.#iconSet.getIcon(this.#name());
|
|
105
|
+
}
|
|
106
|
+
if (this.#name() && !this.#iconSet?.icons[this.#name()]) {
|
|
107
|
+
console.warn(`c-icon component: icon name '${this.#name()}' does not exist for IconSet service. ` +
|
|
108
|
+
`To use icon by 'name' prop you need to add it to IconSet service. \n`, this.#name());
|
|
109
|
+
}
|
|
110
|
+
return '';
|
|
111
|
+
});
|
|
112
|
+
this.scale = computed(() => {
|
|
113
|
+
return Array.isArray(this.code()) && this.code().length > 1 ? `0 0 ${this.code()[0]}` : '0 0 64 64';
|
|
114
|
+
});
|
|
115
|
+
afterNextRender(() => {
|
|
116
|
+
this.#elementRef.nativeElement.innerHTML = this.innerHtml();
|
|
117
|
+
}, { phase: AfterRenderPhase.Write });
|
|
118
|
+
}
|
|
119
|
+
set content(value) {
|
|
120
|
+
this.#content.set(value);
|
|
121
|
+
}
|
|
122
|
+
;
|
|
123
|
+
#content;
|
|
124
|
+
set name(value) {
|
|
125
|
+
this.#name.set(value);
|
|
126
|
+
}
|
|
127
|
+
;
|
|
128
|
+
get name() {
|
|
129
|
+
return this.#name();
|
|
130
|
+
}
|
|
131
|
+
#name;
|
|
76
132
|
set viewBox(viewBox) {
|
|
77
133
|
this._viewBox = viewBox;
|
|
78
134
|
}
|
|
79
135
|
get viewBox() {
|
|
80
|
-
return this._viewBox ?? this.scale;
|
|
136
|
+
return this._viewBox ?? this.scale();
|
|
81
137
|
}
|
|
82
138
|
get hostClasses() {
|
|
83
|
-
|
|
84
|
-
icon: true,
|
|
85
|
-
[`icon-${this.computedSize}`]: !!this.computedSize
|
|
86
|
-
};
|
|
87
|
-
return this.customClasses ?? classes;
|
|
88
|
-
}
|
|
89
|
-
// @HostBinding('innerHtml')
|
|
90
|
-
get innerHtml() {
|
|
91
|
-
const code = Array.isArray(this.code) ? this.code[1] || this.code[0] : this.code ?? '';
|
|
92
|
-
// todo proper sanitize
|
|
93
|
-
// const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
|
|
94
|
-
return this.sanitizer.bypassSecurityTrustHtml((this.titleCode + code) ?? '');
|
|
139
|
+
return this.computedClasses;
|
|
95
140
|
}
|
|
96
|
-
|
|
97
|
-
this.
|
|
98
|
-
this.elementRef = elementRef;
|
|
99
|
-
this.sanitizer = sanitizer;
|
|
100
|
-
this.iconSet = iconSet;
|
|
101
|
-
this.size = '';
|
|
102
|
-
this.xmlns = 'http://www.w3.org/2000/svg';
|
|
103
|
-
this.pointerEvents = 'none';
|
|
104
|
-
this.role = 'img';
|
|
105
|
-
afterNextRender(() => {
|
|
106
|
-
this.elementRef.nativeElement.innerHTML = this.innerHtml;
|
|
107
|
-
}, { phase: AfterRenderPhase.Write });
|
|
141
|
+
get bindInnerHtml() {
|
|
142
|
+
return this.innerHtml();
|
|
108
143
|
}
|
|
109
144
|
get titleCode() {
|
|
110
145
|
return this.title ? `<title>${this.title}</title>` : '';
|
|
111
146
|
}
|
|
112
|
-
get code() {
|
|
113
|
-
if (this.content) {
|
|
114
|
-
return this.content;
|
|
115
|
-
}
|
|
116
|
-
if (this.iconSet && this.name) {
|
|
117
|
-
return this.iconSet.getIcon(this.name);
|
|
118
|
-
}
|
|
119
|
-
if (this.name && !this.iconSet?.icons[this.name]) {
|
|
120
|
-
console.warn(`c-icon component: icon name '${this.name}' does not exist for IconSet service. ` +
|
|
121
|
-
`To use icon by 'name' prop you need to add it to IconSet service. \n`, this.name);
|
|
122
|
-
}
|
|
123
|
-
return undefined;
|
|
124
|
-
}
|
|
125
|
-
get scale() {
|
|
126
|
-
return Array.isArray(this.code) && this.code.length > 1 ? `0 0 ${this.code[0]}` : '0 0 64 64';
|
|
127
|
-
}
|
|
128
147
|
get computedSize() {
|
|
129
148
|
const addCustom = !this.size && (this.width || this.height);
|
|
130
149
|
return this.size === 'custom' || addCustom ? 'custom-size' : this.size;
|
|
@@ -134,42 +153,42 @@ class IconDirective {
|
|
|
134
153
|
icon: true,
|
|
135
154
|
[`icon-${this.computedSize}`]: !!this.computedSize
|
|
136
155
|
};
|
|
137
|
-
return
|
|
138
|
-
}
|
|
139
|
-
toCamelCase(str) {
|
|
140
|
-
return toCamelCase(str);
|
|
156
|
+
return this.customClasses ?? classes;
|
|
141
157
|
}
|
|
142
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
143
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.3.
|
|
158
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
159
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.3.4", type: IconDirective, isStandalone: true, selector: "svg[cIcon]", inputs: { content: ["cIcon", "content"], customClasses: "customClasses", size: "size", title: "title", height: "height", width: "width", name: ["name", "name", transformName], viewBox: "viewBox", xmlns: "xmlns", pointerEvents: ["pointer-events", "pointerEvents"], role: "role" }, host: { properties: { "attr.viewBox": "this.viewBox", "attr.aria-hidden": "this.ariaHidden", "attr.xmlns": "this.xmlns", "attr.pointer-events": "this.pointerEvents", "attr.role": "this.role", "class": "this.hostClasses", "innerHtml": "this.bindInnerHtml" } }, exportAs: ["cIcon"], ngImport: i0 }); }
|
|
144
160
|
}
|
|
145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
161
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconDirective, decorators: [{
|
|
146
162
|
type: Directive,
|
|
147
163
|
args: [{
|
|
148
|
-
selector: 'svg[cIcon]',
|
|
149
164
|
exportAs: 'cIcon',
|
|
165
|
+
selector: 'svg[cIcon]',
|
|
150
166
|
standalone: true
|
|
151
167
|
}]
|
|
152
|
-
}], ctorParameters: () => [
|
|
168
|
+
}], ctorParameters: () => [], propDecorators: { content: [{
|
|
153
169
|
type: Input,
|
|
154
170
|
args: ['cIcon']
|
|
171
|
+
}], customClasses: [{
|
|
172
|
+
type: Input
|
|
155
173
|
}], size: [{
|
|
156
174
|
type: Input
|
|
157
175
|
}], title: [{
|
|
158
176
|
type: Input
|
|
159
|
-
}],
|
|
177
|
+
}], height: [{
|
|
160
178
|
type: Input
|
|
161
179
|
}], width: [{
|
|
162
180
|
type: Input
|
|
163
|
-
}], height: [{
|
|
164
|
-
type: Input
|
|
165
181
|
}], name: [{
|
|
166
182
|
type: Input,
|
|
167
|
-
args: [{ transform:
|
|
183
|
+
args: [{ transform: transformName }]
|
|
168
184
|
}], viewBox: [{
|
|
169
185
|
type: HostBinding,
|
|
170
186
|
args: ['attr.viewBox']
|
|
171
187
|
}, {
|
|
172
188
|
type: Input
|
|
189
|
+
}], ariaHidden: [{
|
|
190
|
+
type: HostBinding,
|
|
191
|
+
args: ['attr.aria-hidden']
|
|
173
192
|
}], xmlns: [{
|
|
174
193
|
type: HostBinding,
|
|
175
194
|
args: ['attr.xmlns']
|
|
@@ -189,6 +208,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
189
208
|
}], hostClasses: [{
|
|
190
209
|
type: HostBinding,
|
|
191
210
|
args: ['class']
|
|
211
|
+
}], bindInnerHtml: [{
|
|
212
|
+
type: HostBinding,
|
|
213
|
+
args: ['innerHtml']
|
|
192
214
|
}] } });
|
|
193
215
|
|
|
194
216
|
class HtmlAttributesDirective {
|
|
@@ -228,10 +250,10 @@ class HtmlAttributesDirective {
|
|
|
228
250
|
this.renderer.setAttribute(this.el.nativeElement, key, value) :
|
|
229
251
|
this.renderer.removeAttribute(this.el.nativeElement, key);
|
|
230
252
|
}
|
|
231
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
232
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
253
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HtmlAttributesDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
254
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.4", type: HtmlAttributesDirective, isStandalone: true, selector: "[cHtmlAttr]", inputs: { cHtmlAttr: "cHtmlAttr" }, exportAs: ["cHtmlAttr"], ngImport: i0 }); }
|
|
233
255
|
}
|
|
234
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
256
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: HtmlAttributesDirective, decorators: [{
|
|
235
257
|
type: Directive,
|
|
236
258
|
args: [{
|
|
237
259
|
selector: '[cHtmlAttr]',
|
|
@@ -243,57 +265,75 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
243
265
|
}] } });
|
|
244
266
|
|
|
245
267
|
class IconComponent {
|
|
268
|
+
#renderer;
|
|
269
|
+
#elementRef;
|
|
270
|
+
#sanitizer;
|
|
271
|
+
#iconSet;
|
|
272
|
+
constructor() {
|
|
273
|
+
this.#renderer = inject(Renderer2);
|
|
274
|
+
this.#elementRef = inject(ElementRef);
|
|
275
|
+
this.#sanitizer = inject(DomSanitizer);
|
|
276
|
+
this.#iconSet = inject(IconSetService);
|
|
277
|
+
this.#content = signal('');
|
|
278
|
+
this.attributes = { role: 'img' };
|
|
279
|
+
this.size = '';
|
|
280
|
+
this.use = '';
|
|
281
|
+
this.#name = signal('');
|
|
282
|
+
this.innerHtml = computed(() => {
|
|
283
|
+
const code = Array.isArray(this.code()) ? (this.code()[1] ?? this.code()[0] ?? '') : this.code() || '';
|
|
284
|
+
// todo proper sanitize
|
|
285
|
+
// const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
|
|
286
|
+
return this.#sanitizer.bypassSecurityTrustHtml((this.titleCode + code) || '');
|
|
287
|
+
});
|
|
288
|
+
this.code = computed(() => {
|
|
289
|
+
if (this.#content()) {
|
|
290
|
+
return this.#content();
|
|
291
|
+
}
|
|
292
|
+
if (this.#iconSet && this.#name()) {
|
|
293
|
+
return this.#iconSet.getIcon(this.#name());
|
|
294
|
+
}
|
|
295
|
+
if (this.#name() && !this.#iconSet?.icons[this.#name()]) {
|
|
296
|
+
console.warn(`c-icon component: icon name '${this.#name()}' does not exist for IconSet service. ` +
|
|
297
|
+
`To use icon by 'name' prop you need to add it to IconSet service. \n`, this.#name());
|
|
298
|
+
}
|
|
299
|
+
return '';
|
|
300
|
+
});
|
|
301
|
+
this.scale = computed(() => {
|
|
302
|
+
return Array.isArray(this.code()) && this.code().length > 1 ? `0 0 ${this.code()[0]}` : '0 0 64 64';
|
|
303
|
+
});
|
|
304
|
+
this.#renderer.setStyle(this.#elementRef.nativeElement, 'display', 'none');
|
|
305
|
+
}
|
|
306
|
+
set content(value) {
|
|
307
|
+
this.#content.set(value);
|
|
308
|
+
}
|
|
309
|
+
;
|
|
310
|
+
#content;
|
|
311
|
+
set name(value) {
|
|
312
|
+
this.#name.set(value);
|
|
313
|
+
}
|
|
314
|
+
;
|
|
315
|
+
get name() {
|
|
316
|
+
return this.#name();
|
|
317
|
+
}
|
|
318
|
+
#name;
|
|
246
319
|
set viewBox(viewBox) {
|
|
247
320
|
this._viewBox = viewBox;
|
|
248
321
|
}
|
|
249
322
|
get viewBox() {
|
|
250
|
-
return this._viewBox ?? this.scale;
|
|
251
|
-
}
|
|
252
|
-
get innerHtml() {
|
|
253
|
-
const code = Array.isArray(this.code) ? this.code[1] || this.code[0] : this.code ?? '';
|
|
254
|
-
// todo proper sanitize
|
|
255
|
-
// const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);
|
|
256
|
-
return this.sanitizer.bypassSecurityTrustHtml((this.titleCode + code) ?? '');
|
|
257
|
-
}
|
|
258
|
-
constructor(renderer, elementRef, sanitizer, iconSet) {
|
|
259
|
-
this.renderer = renderer;
|
|
260
|
-
this.elementRef = elementRef;
|
|
261
|
-
this.sanitizer = sanitizer;
|
|
262
|
-
this.iconSet = iconSet;
|
|
263
|
-
this.attributes = { role: 'img' };
|
|
264
|
-
this.size = '';
|
|
265
|
-
this.use = '';
|
|
266
|
-
this.customClasses = '';
|
|
267
|
-
this.renderer.setStyle(this.elementRef.nativeElement, 'display', 'none');
|
|
323
|
+
return this._viewBox ?? this.scale();
|
|
268
324
|
}
|
|
269
325
|
ngAfterViewInit() {
|
|
270
|
-
this
|
|
271
|
-
this
|
|
326
|
+
this.#elementRef.nativeElement.classList.forEach((item) => {
|
|
327
|
+
this.#renderer.addClass(this.svgElementRef.nativeElement, item);
|
|
272
328
|
});
|
|
273
|
-
const parentElement = this
|
|
329
|
+
const parentElement = this.#renderer.parentNode(this.#elementRef.nativeElement);
|
|
274
330
|
const svgElement = this.svgElementRef.nativeElement;
|
|
275
|
-
this
|
|
276
|
-
this
|
|
331
|
+
this.#renderer.insertBefore(parentElement, svgElement, this.#elementRef.nativeElement);
|
|
332
|
+
this.#renderer.removeChild(parentElement, this.#elementRef.nativeElement);
|
|
277
333
|
}
|
|
278
334
|
get titleCode() {
|
|
279
335
|
return this.title ? `<title>${this.title}</title>` : '';
|
|
280
336
|
}
|
|
281
|
-
get code() {
|
|
282
|
-
if (this.content) {
|
|
283
|
-
return this.content;
|
|
284
|
-
}
|
|
285
|
-
if (this.iconSet && this.name) {
|
|
286
|
-
return this.iconSet.getIcon(this.name);
|
|
287
|
-
}
|
|
288
|
-
if (this.name && !this.iconSet?.icons[this.name]) {
|
|
289
|
-
console.warn(`c-icon component: icon name '${this.name}' does not exist for IconSet service. ` +
|
|
290
|
-
`To use icon by 'name' prop you need to add it to IconSet service. \n`, this.name);
|
|
291
|
-
}
|
|
292
|
-
return undefined;
|
|
293
|
-
}
|
|
294
|
-
get scale() {
|
|
295
|
-
return Array.isArray(this.code) && this.code.length > 1 ? `0 0 ${this.code[0]}` : '0 0 64 64';
|
|
296
|
-
}
|
|
297
337
|
get computedSize() {
|
|
298
338
|
const addCustom = !this.size && (this.width || this.height);
|
|
299
339
|
return this.size === 'custom' || addCustom ? 'custom-size' : this.size;
|
|
@@ -303,20 +343,19 @@ class IconComponent {
|
|
|
303
343
|
icon: true,
|
|
304
344
|
[`icon-${this.computedSize}`]: !!this.computedSize
|
|
305
345
|
};
|
|
306
|
-
return
|
|
307
|
-
}
|
|
308
|
-
toCamelCase(str) {
|
|
309
|
-
return toCamelCase(str);
|
|
346
|
+
return this.customClasses ?? classes;
|
|
310
347
|
}
|
|
311
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
312
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
348
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
349
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.4", type: IconComponent, isStandalone: true, selector: "c-icon", inputs: { content: "content", attributes: "attributes", customClasses: "customClasses", size: "size", title: "title", use: "use", height: "height", width: "width", name: ["name", "name", transformName], viewBox: "viewBox" }, host: { attributes: { "ngSkipHydration": "true" } }, viewQueries: [{ propertyName: "svgElementRef", first: true, predicate: ["svgElement"], descendants: true, read: ElementRef }], 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\"\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"] }] }); }
|
|
313
350
|
}
|
|
314
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
351
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconComponent, decorators: [{
|
|
315
352
|
type: Component,
|
|
316
|
-
args: [{
|
|
317
|
-
}], ctorParameters: () => [
|
|
353
|
+
args: [{ exportAs: 'cIconComponent', imports: [NgClass, HtmlAttributesDirective], selector: 'c-icon', standalone: true, host: { ngSkipHydration: 'true' }, 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\"\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"] }]
|
|
354
|
+
}], ctorParameters: () => [], propDecorators: { content: [{
|
|
318
355
|
type: Input
|
|
319
|
-
}],
|
|
356
|
+
}], attributes: [{
|
|
357
|
+
type: Input
|
|
358
|
+
}], customClasses: [{
|
|
320
359
|
type: Input
|
|
321
360
|
}], size: [{
|
|
322
361
|
type: Input
|
|
@@ -324,15 +363,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
324
363
|
type: Input
|
|
325
364
|
}], use: [{
|
|
326
365
|
type: Input
|
|
327
|
-
}],
|
|
366
|
+
}], height: [{
|
|
328
367
|
type: Input
|
|
329
368
|
}], width: [{
|
|
330
369
|
type: Input
|
|
331
|
-
}], height: [{
|
|
332
|
-
type: Input
|
|
333
370
|
}], name: [{
|
|
334
371
|
type: Input,
|
|
335
|
-
args: [{ transform:
|
|
372
|
+
args: [{ transform: transformName }]
|
|
336
373
|
}], viewBox: [{
|
|
337
374
|
type: Input
|
|
338
375
|
}], svgElementRef: [{
|
|
@@ -341,13 +378,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
341
378
|
}] } });
|
|
342
379
|
|
|
343
380
|
class IconModule {
|
|
344
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
345
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.
|
|
381
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
382
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.4", ngImport: i0, type: IconModule, imports: [IconComponent,
|
|
346
383
|
IconDirective], exports: [IconComponent,
|
|
347
384
|
IconDirective] }); }
|
|
348
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.
|
|
385
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconModule }); }
|
|
349
386
|
}
|
|
350
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
387
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.4", ngImport: i0, type: IconModule, decorators: [{
|
|
351
388
|
type: NgModule,
|
|
352
389
|
args: [{
|
|
353
390
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreui-icons-angular.mjs","sources":["../../../projects/coreui-icons-angular/src/lib/icon/icon.utils.ts","../../../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.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":["export function toCamelCase(str: string) {\n return str.replace(/([-_][a-z0-9])/ig, ($1: string) => {\n return $1.toUpperCase().replace('-', '');\n });\n}\n","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\n constructor() {}\n\n public get iconNames() {\n return this._iconNames;\n }\n\n private _iconNames: { [key: string]: string } = {};\n\n get icons(): IIconSet {\n return this._icons;\n }\n set icons(iconSet) {\n for (const iconsKey in iconSet) {\n this._iconNames[iconsKey] = iconsKey;\n }\n this._icons = iconSet;\n }\n private _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, Optional, SkipSelf } from '@angular/core';\n\nimport { IconSetService } from './icon-set.service';\n\n@NgModule({\n providers: [IconSetService]\n})\nexport class IconSetModule {\n constructor(@Optional() @SkipSelf() parentModule?: IconSetModule) {\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","import { afterNextRender, AfterRenderPhase, Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon } from './icon.interface';\nimport { toCamelCase } from './icon.utils';\n\n@Directive({\n selector: 'svg[cIcon]',\n exportAs: 'cIcon',\n standalone: true\n})\nexport class IconDirective implements IIcon {\n\n @Input('cIcon') content?: string | string[] | any[];\n @Input() size: IconSize = '';\n @Input() title?: string;\n @Input() customClasses?: string | string[] | Set<string> | { [klass: string]: any };\n @Input() width?: string;\n @Input() height?: string;\n\n @Input({ transform: (value: string) => value && value.includes('-') ? toCamelCase(value) : value }) name!: string;\n\n @HostBinding('attr.viewBox')\n @Input()\n set viewBox(viewBox: string) {\n this._viewBox = viewBox;\n }\n\n get viewBox(): string {\n return this._viewBox ?? this.scale;\n }\n\n private _viewBox!: string;\n\n @HostBinding('attr.xmlns')\n @Input() xmlns = 'http://www.w3.org/2000/svg';\n\n @HostBinding('attr.pointer-events')\n @Input('pointer-events') pointerEvents = 'none';\n\n @HostBinding('attr.role')\n @Input() role = 'img';\n\n @HostBinding('class')\n get hostClasses() {\n const classes = {\n icon: true,\n [`icon-${this.computedSize}`]: !!this.computedSize\n };\n return this.customClasses ?? classes;\n }\n\n // @HostBinding('innerHtml')\n get innerHtml() {\n const code = Array.isArray(this.code) ? this.code[1] || this.code[0] : this.code ?? '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.sanitizer.bypassSecurityTrustHtml((this.titleCode + code) ?? '');\n }\n\n constructor(\n private renderer: Renderer2,\n private elementRef: ElementRef,\n private sanitizer: DomSanitizer,\n private iconSet: IconSetService\n ) {\n afterNextRender(() => {\n this.elementRef.nativeElement.innerHTML = this.innerHtml;\n }, { phase: AfterRenderPhase.Write });\n }\n\n get titleCode(): string {\n return this.title ? `<title>${this.title}</title>` : '';\n }\n\n get code(): string | string[] | undefined {\n if (this.content) {\n return this.content;\n }\n if (this.iconSet && this.name) {\n return this.iconSet.getIcon(this.name);\n }\n if (this.name && !this.iconSet?.icons[this.name]) {\n console.warn(`c-icon component: icon name '${this.name}' does not exist for IconSet service. ` +\n `To use icon by 'name' prop you need to add it to IconSet service. \\n`,\n this.name\n );\n }\n return undefined;\n }\n\n get scale(): string {\n return Array.isArray(this.code) && this.code.length > 1 ? `0 0 ${this.code[0]}` : '0 0 64 64';\n }\n\n get computedSize(): Exclude<IconSize, 'custom'> | undefined {\n const addCustom = !this.size && (this.width || this.height);\n return this.size === 'custom' || addCustom ? 'custom-size' : this.size;\n }\n\n get computedClasses() {\n const classes = {\n icon: true,\n [`icon-${this.computedSize}`]: !!this.computedSize\n };\n return !this.customClasses ? classes : this.customClasses;\n }\n\n toCamelCase(str: string): string {\n return toCamelCase(str);\n }\n}\n","import { Directive, ElementRef, Input, OnInit, Renderer2 } from '@angular/core';\n\n@Directive({\n selector: '[cHtmlAttr]',\n exportAs: 'cHtmlAttr',\n standalone: true\n})\nexport class HtmlAttributesDirective implements OnInit {\n\n @Input() cHtmlAttr?: { [key: string]: any };\n\n constructor(\n private renderer: Renderer2,\n private el: ElementRef\n ) {}\n\n ngOnInit(): void {\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: { [x: string]: any; }): void {\n for (const style in styles) {\n if (style) {\n this.renderer.setStyle(this.el.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.filter((element) => element.length > 0).forEach(element => {\n this.renderer.addClass(this.el.nativeElement, element);\n });\n }\n\n private setAttrib(key: string, value: string | null): void {\n value !== null ?\n this.renderer.setAttribute(this.el.nativeElement, key, value) :\n this.renderer.removeAttribute(this.el.nativeElement, key);\n }\n}\n","import { NgClass, NgIf } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, Input, Renderer2, ViewChild } from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\nimport { HtmlAttributesDirective } from '../shared/html-attr.directive';\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon } from './icon.interface';\nimport { toCamelCase } from './icon.utils';\n\n@Component({\n selector: 'c-icon',\n templateUrl: './icon.component.svg',\n styleUrls: ['./icon.component.scss'],\n standalone: true,\n imports: [NgClass, NgIf, HtmlAttributesDirective],\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { ngSkipHydration: 'true' }\n})\nexport class IconComponent implements IIcon, AfterViewInit {\n\n @Input() attributes: any = { role: 'img' };\n @Input() content?: string | string[] | any[];\n @Input() size: IconSize = '';\n @Input() title?: string;\n @Input() use = '';\n @Input() customClasses?: string | string[] | Set<string> | { [klass: string]: any } = '';\n @Input() width?: string;\n @Input() height?: string;\n\n @Input({ transform: (value: string) => value && value.includes('-') ? toCamelCase(value) : value }) name!: string;\n\n @Input()\n set viewBox(viewBox: string) {\n this._viewBox = viewBox;\n }\n\n get viewBox(): string {\n return this._viewBox ?? this.scale;\n }\n\n private _viewBox!: string;\n\n @ViewChild('svgElement', { read: ElementRef }) svgElementRef!: ElementRef;\n\n get innerHtml(): SafeHtml {\n const code = Array.isArray(this.code) ? this.code[1] || this.code[0] : this.code ?? '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.sanitizer.bypassSecurityTrustHtml((this.titleCode + code) ?? '');\n }\n\n constructor(\n private renderer: Renderer2,\n private elementRef: ElementRef,\n private sanitizer: DomSanitizer,\n private iconSet: IconSetService\n ) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'display', 'none');\n }\n\n ngAfterViewInit(): void {\n this.elementRef.nativeElement.classList.forEach((item: string) => {\n this.renderer.addClass(this.svgElementRef.nativeElement, item);\n });\n const parentElement = this.renderer.parentNode(this.elementRef.nativeElement);\n const svgElement = this.svgElementRef.nativeElement;\n this.renderer.insertBefore(parentElement, svgElement, this.elementRef.nativeElement);\n this.renderer.removeChild(parentElement, this.elementRef.nativeElement);\n }\n\n get titleCode(): string {\n return this.title ? `<title>${this.title}</title>` : '';\n }\n\n get code(): string | string[] | undefined {\n if (this.content) {\n return this.content;\n }\n if (this.iconSet && this.name) {\n return this.iconSet.getIcon(this.name);\n }\n if (this.name && !this.iconSet?.icons[this.name]) {\n console.warn(`c-icon component: icon name '${this.name}' does not exist for IconSet service. ` +\n `To use icon by 'name' prop you need to add it to IconSet service. \\n`,\n this.name\n );\n }\n return undefined;\n }\n\n get scale(): string {\n return Array.isArray(this.code) && this.code.length > 1 ? `0 0 ${this.code[0]}` : '0 0 64 64';\n }\n\n get computedSize(): Exclude<IconSize, 'custom'> | undefined {\n const addCustom = !this.size && (this.width || this.height);\n return this.size === 'custom' || addCustom ? 'custom-size' : this.size;\n }\n\n get computedClasses() {\n const classes = {\n icon: true,\n [`icon-${this.computedSize}`]: !!this.computedSize\n };\n return !this.customClasses ? classes : this.customClasses;\n }\n\n toCamelCase(str: string): string {\n return toCamelCase(str);\n }\n}\n","<svg *ngIf=\"(!use) && (!!code)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width\"\n [attr.height]=\"height || width\"\n [attr.viewBox]=\"viewBox\"\n [innerHtml]=\"innerHtml\"\n [ngClass]=\"computedClasses\"\n [cHtmlAttr]=\"attributes\"\n role=\"img\"\n pointer-events=\"none\"\n #svgElement\n>\n</svg>\n\n<svg *ngIf=\"use\"\n xmlns=\"http://www.w3.org/2000/svg\"\n [attr.width]=\"width\"\n [attr.height]=\"height || width\"\n [ngClass]=\"computedClasses\"\n [cHtmlAttr]=\"attributes\"\n role=\"img\"\n pointer-events=\"none\"\n>\n <use [attr.href]=\"use\"></use>\n</svg>\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, 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":["i2.IconSetService"],"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\n constructor() {}\n\n public get iconNames() {\n return this._iconNames;\n }\n\n private _iconNames: { [key: string]: string } = {};\n\n get icons(): IIconSet {\n return this._icons;\n }\n set icons(iconSet) {\n for (const iconsKey in iconSet) {\n this._iconNames[iconsKey] = iconsKey;\n }\n this._icons = iconSet;\n }\n private _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, Optional, SkipSelf } from '@angular/core';\n\nimport { IconSetService } from './icon-set.service';\n\n@NgModule({\n providers: [IconSetService]\n})\nexport class IconSetModule {\n constructor(@Optional() @SkipSelf() parentModule?: IconSetModule) {\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 {\n afterNextRender,\n AfterRenderPhase,\n computed,\n Directive,\n ElementRef,\n HostBinding,\n inject,\n Input,\n signal\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { IconSetService } from '../icon-set';\nimport { IconSize, IIcon } from './icon.interface';\nimport { transformName } from './icon.utils';\n\n@Directive({\n exportAs: 'cIcon',\n selector: 'svg[cIcon]',\n standalone: true\n})\nexport class IconDirective implements IIcon {\n\n readonly #elementRef = inject(ElementRef);\n readonly #sanitizer = inject(DomSanitizer);\n readonly #iconSet = inject(IconSetService);\n\n constructor() {\n afterNextRender(() => {\n this.#elementRef.nativeElement.innerHTML = this.innerHtml();\n }, { phase: AfterRenderPhase.Write });\n }\n\n @Input('cIcon')\n set content(value: string | string[] | any[]) {\n this.#content.set(value);\n };\n\n readonly #content = signal<string | string[] | any[]>('');\n\n @Input() customClasses?: string | string[] | Set<string> | { [klass: string]: any };\n @Input() size: IconSize = '';\n @Input() title?: string;\n @Input() height?: string;\n @Input() width?: string;\n\n @Input({ transform: transformName })\n set name(value: string) {\n this.#name.set(value);\n };\n\n get name() {\n return this.#name();\n }\n\n readonly #name = signal('');\n\n @HostBinding('attr.viewBox')\n @Input()\n set viewBox(viewBox: string) {\n this._viewBox = viewBox;\n }\n\n get viewBox(): string {\n return this._viewBox ?? this.scale();\n }\n\n private _viewBox!: string;\n\n @HostBinding('attr.aria-hidden') ariaHidden = true;\n\n @HostBinding('attr.xmlns')\n @Input() xmlns = 'http://www.w3.org/2000/svg';\n\n @HostBinding('attr.pointer-events')\n @Input('pointer-events') pointerEvents = 'none';\n\n @HostBinding('attr.role')\n @Input() role = 'img';\n\n @HostBinding('class')\n get hostClasses() {\n return this.computedClasses;\n }\n\n @HostBinding('innerHtml')\n get bindInnerHtml() {\n return this.innerHtml();\n }\n\n readonly innerHtml = computed(() => {\n const code = Array.isArray(this.code()) ? (this.code()[1] ?? this.code()[0] ?? '') : this.code() || '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.#sanitizer.bypassSecurityTrustHtml((this.titleCode + code) || '');\n });\n\n get titleCode(): string {\n return this.title ? `<title>${this.title}</title>` : '';\n }\n\n readonly code = computed(() => {\n if (this.#content()) {\n return this.#content();\n }\n if (this.#iconSet && this.#name()) {\n return this.#iconSet.getIcon(this.#name());\n }\n if (this.#name() && !this.#iconSet?.icons[this.#name()]) {\n console.warn(`c-icon component: icon name '${this.#name()}' does not exist for IconSet service. ` +\n `To use icon by 'name' prop you need to add it to IconSet service. \\n`,\n this.#name()\n );\n }\n return '';\n });\n\n readonly scale = computed(() => {\n return Array.isArray(this.code()) && this.code().length > 1 ? `0 0 ${this.code()[0]}` : '0 0 64 64';\n });\n\n get computedSize(): Exclude<IconSize, 'custom'> | undefined {\n const addCustom = !this.size && (this.width || this.height);\n return this.size === 'custom' || addCustom ? 'custom-size' : this.size;\n }\n\n get computedClasses() {\n const classes = {\n icon: true,\n [`icon-${this.computedSize}`]: !!this.computedSize\n };\n return this.customClasses ?? classes;\n }\n\n}\n","import { Directive, ElementRef, Input, OnInit, Renderer2 } from '@angular/core';\n\n@Directive({\n selector: '[cHtmlAttr]',\n exportAs: 'cHtmlAttr',\n standalone: true\n})\nexport class HtmlAttributesDirective implements OnInit {\n\n @Input() cHtmlAttr?: { [key: string]: any };\n\n constructor(\n private renderer: Renderer2,\n private el: ElementRef\n ) {}\n\n ngOnInit(): void {\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: { [x: string]: any; }): void {\n for (const style in styles) {\n if (style) {\n this.renderer.setStyle(this.el.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.filter((element) => element.length > 0).forEach(element => {\n this.renderer.addClass(this.el.nativeElement, element);\n });\n }\n\n private setAttrib(key: string, value: string | null): void {\n value !== null ?\n this.renderer.setAttribute(this.el.nativeElement, key, value) :\n this.renderer.removeAttribute(this.el.nativeElement, key);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n AfterViewInit,\n Component,\n computed,\n ElementRef,\n inject,\n Input,\n Renderer2,\n signal,\n ViewChild\n} 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 } from './icon.interface';\nimport { transformName } from './icon.utils';\n\n@Component({\n exportAs: 'cIconComponent',\n imports: [NgClass, HtmlAttributesDirective],\n selector: 'c-icon',\n standalone: true,\n styleUrls: ['./icon.component.scss'],\n templateUrl: './icon.component.svg',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { ngSkipHydration: 'true' }\n})\nexport class IconComponent implements IIcon, AfterViewInit {\n\n readonly #renderer = inject(Renderer2);\n readonly #elementRef = inject(ElementRef);\n readonly #sanitizer = inject(DomSanitizer);\n readonly #iconSet = inject(IconSetService);\n\n constructor() {\n this.#renderer.setStyle(this.#elementRef.nativeElement, 'display', 'none');\n }\n\n @Input()\n set content(value: string | string[] | any[]) {\n this.#content.set(value);\n };\n\n readonly #content = signal<string | string[] | any[]>('');\n\n @Input() attributes: any = { role: 'img' };\n @Input() customClasses?: string | string[] | Set<string> | { [klass: string]: any };\n @Input() size: IconSize = '';\n @Input() title?: string;\n @Input() use = '';\n @Input() height?: string;\n @Input() width?: string;\n\n @Input({ transform: transformName })\n set name(value: string) {\n this.#name.set(value);\n };\n\n get name() {\n return this.#name();\n }\n\n readonly #name = signal('');\n\n @Input()\n set viewBox(viewBox: string) {\n this._viewBox = viewBox;\n }\n\n get viewBox(): string {\n return this._viewBox ?? this.scale();\n }\n\n private _viewBox!: string;\n\n @ViewChild('svgElement', { read: ElementRef }) svgElementRef!: ElementRef;\n\n ngAfterViewInit(): void {\n this.#elementRef.nativeElement.classList.forEach((item: string) => {\n this.#renderer.addClass(this.svgElementRef.nativeElement, item);\n });\n const parentElement = this.#renderer.parentNode(this.#elementRef.nativeElement);\n const svgElement = this.svgElementRef.nativeElement;\n this.#renderer.insertBefore(parentElement, svgElement, this.#elementRef.nativeElement);\n this.#renderer.removeChild(parentElement, this.#elementRef.nativeElement);\n }\n\n readonly innerHtml = computed(() => {\n const code = Array.isArray(this.code()) ? (this.code()[1] ?? this.code()[0] ?? '') : this.code() || '';\n // todo proper sanitize\n // const sanitized = this.sanitizer.sanitize(SecurityContext.HTML, code);\n return this.#sanitizer.bypassSecurityTrustHtml((this.titleCode + code) || '');\n });\n\n get titleCode(): string {\n return this.title ? `<title>${this.title}</title>` : '';\n }\n\n readonly code = computed(() => {\n if (this.#content()) {\n return this.#content();\n }\n if (this.#iconSet && this.#name()) {\n return this.#iconSet.getIcon(this.#name());\n }\n if (this.#name() && !this.#iconSet?.icons[this.#name()]) {\n console.warn(`c-icon component: icon name '${this.#name()}' does not exist for IconSet service. ` +\n `To use icon by 'name' prop you need to add it to IconSet service. \\n`,\n this.#name()\n );\n }\n return '';\n });\n\n readonly scale = computed(() => {\n return Array.isArray(this.code()) && this.code().length > 1 ? `0 0 ${this.code()[0]}` : '0 0 64 64';\n });\n\n get computedSize(): Exclude<IconSize, 'custom'> | undefined {\n const addCustom = !this.size && (this.width || this.height);\n return this.size === 'custom' || addCustom ? 'custom-size' : this.size;\n }\n\n get computedClasses() {\n const classes = {\n icon: true,\n [`icon-${this.computedSize}`]: !!this.computedSize\n };\n return this.customClasses ?? classes;\n }\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\"\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, 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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"}
|