@genarou/blazir-icons 1.2.20 → 1.3.3
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 +146 -0
- package/README.md +1206 -0
- package/dist/CustomIcon.svelte +30 -0
- package/dist/CustomIcon.svelte.d.ts +14 -0
- package/dist/Icon.svelte +282 -102
- package/dist/Icon.svelte.d.ts +12 -5
- package/dist/IconBadge.svelte +75 -0
- package/dist/IconBadge.svelte.d.ts +16 -0
- package/dist/IconBase.svelte +89 -57
- package/dist/effects.js +1 -3
- package/dist/icons/Ai.svelte +34 -6
- package/dist/icons/Alternate.svelte +15 -8
- package/dist/icons/Alternate.svelte.d.ts +5 -2
- package/dist/icons/AnimatedArrowLeft.svelte +29 -11
- package/dist/icons/AnimatedArrowLeft.svelte.d.ts +5 -2
- package/dist/icons/Archive.svelte +21 -0
- package/dist/icons/Archive.svelte.d.ts +7 -0
- package/dist/icons/Attachment.svelte +10 -10
- package/dist/icons/Attachment.svelte.d.ts +5 -2
- package/dist/icons/Bank.svelte +16 -8
- package/dist/icons/Bank.svelte.d.ts +5 -2
- package/dist/icons/Bell.svelte +11 -8
- package/dist/icons/Bell.svelte.d.ts +5 -2
- package/dist/icons/Box.svelte +12 -10
- package/dist/icons/Box.svelte.d.ts +5 -2
- package/dist/icons/BoxAdd.svelte +11 -8
- package/dist/icons/BoxAdd.svelte.d.ts +5 -2
- package/dist/icons/Buy.svelte +11 -10
- package/dist/icons/Buy.svelte.d.ts +5 -2
- package/dist/icons/Calendar.svelte +12 -9
- package/dist/icons/Calendar.svelte.d.ts +5 -2
- package/dist/icons/CalendarEdit.svelte +5 -5
- package/dist/icons/CalendarPlus.svelte +11 -9
- package/dist/icons/CalendarPlus.svelte.d.ts +5 -2
- package/dist/icons/Camera.svelte +19 -0
- package/dist/icons/Camera.svelte.d.ts +4 -0
- package/dist/icons/Cards.svelte +19 -0
- package/dist/icons/Cards.svelte.d.ts +4 -0
- package/dist/icons/Cart.svelte +13 -10
- package/dist/icons/CloudAlert.svelte +19 -0
- package/dist/icons/CloudAlert.svelte.d.ts +4 -0
- package/dist/icons/CloudCheck.svelte +19 -0
- package/dist/icons/CloudCheck.svelte.d.ts +4 -0
- package/dist/icons/CloudDownload.svelte +19 -0
- package/dist/icons/CloudDownload.svelte.d.ts +4 -0
- package/dist/icons/Connect.svelte +21 -0
- package/dist/icons/Connect.svelte.d.ts +7 -0
- package/dist/icons/CreditCard.svelte +19 -0
- package/dist/icons/CreditCard.svelte.d.ts +4 -0
- package/dist/icons/Dashboard.svelte +10 -7
- package/dist/icons/Dashboard.svelte.d.ts +5 -2
- package/dist/icons/DashboardOutlined.svelte +14 -12
- package/dist/icons/DashboardOutlined.svelte.d.ts +5 -2
- package/dist/icons/Desktop.svelte +19 -0
- package/dist/icons/Desktop.svelte.d.ts +4 -0
- package/dist/icons/DoughnutChart.svelte +19 -0
- package/dist/icons/DoughnutChart.svelte.d.ts +4 -0
- package/dist/icons/Earth.svelte +19 -0
- package/dist/icons/Earth.svelte.d.ts +4 -0
- package/dist/icons/Eye.svelte +42 -29
- package/dist/icons/Eye.svelte.d.ts +5 -2
- package/dist/icons/EyeOff.svelte +51 -51
- package/dist/icons/EyeOff.svelte.d.ts +5 -2
- package/dist/icons/Filter.svelte +10 -7
- package/dist/icons/Filter.svelte.d.ts +5 -2
- package/dist/icons/FilterOutline.svelte +8 -7
- package/dist/icons/FilterOutline.svelte.d.ts +5 -2
- package/dist/icons/Globe.svelte +19 -0
- package/dist/icons/Globe.svelte.d.ts +4 -0
- package/dist/icons/HardDrive.svelte +21 -0
- package/dist/icons/HardDrive.svelte.d.ts +7 -0
- package/dist/icons/Historic.svelte +21 -0
- package/dist/icons/Historic.svelte.d.ts +7 -0
- package/dist/icons/Home.svelte +11 -7
- package/dist/icons/Home.svelte.d.ts +5 -2
- package/dist/icons/LightHub.svelte +19 -0
- package/dist/icons/LightHub.svelte.d.ts +4 -0
- package/dist/icons/Link.svelte +19 -0
- package/dist/icons/Link.svelte.d.ts +4 -0
- package/dist/icons/MagnifiyingGlass.svelte +12 -8
- package/dist/icons/MagnifiyingGlass.svelte.d.ts +5 -2
- package/dist/icons/Pause.svelte +21 -0
- package/dist/icons/Pause.svelte.d.ts +7 -0
- package/dist/icons/Play.svelte +21 -0
- package/dist/icons/Play.svelte.d.ts +7 -0
- package/dist/icons/Power.svelte +19 -0
- package/dist/icons/Power.svelte.d.ts +4 -0
- package/dist/icons/Process.svelte +21 -0
- package/dist/icons/Process.svelte.d.ts +7 -0
- package/dist/icons/Receipt.svelte +19 -0
- package/dist/icons/Receipt.svelte.d.ts +4 -0
- package/dist/icons/Settings.svelte +16 -8
- package/dist/icons/Settings.svelte.d.ts +5 -2
- package/dist/icons/Sync.svelte +19 -0
- package/dist/icons/Sync.svelte.d.ts +4 -0
- package/dist/icons/SyncPhoto.svelte +21 -0
- package/dist/icons/SyncPhoto.svelte.d.ts +7 -0
- package/dist/icons/Upload.svelte +12 -57
- package/dist/icons/Wifi.svelte +19 -0
- package/dist/icons/Wifi.svelte.d.ts +4 -0
- package/dist/icons/Work.svelte +21 -0
- package/dist/icons/Work.svelte.d.ts +7 -0
- package/dist/icons/lazy-registry.d.ts +21 -0
- package/dist/icons/lazy-registry.js +251 -0
- package/dist/icons/registry.d.ts +211 -135
- package/dist/icons/registry.js +195 -137
- package/dist/icons-api.d.ts +74 -267
- package/dist/icons-api.js +91 -465
- package/dist/index.d.ts +5 -5
- package/dist/index.js +14 -11
- package/dist/plugin/index.d.ts +46 -0
- package/dist/plugin/index.js +327 -0
- package/dist/smart-cache.d.ts +35 -0
- package/dist/smart-cache.js +192 -0
- package/dist/types.d.ts +19 -2
- package/dist/utils/sanitize.d.ts +25 -0
- package/dist/utils/sanitize.js +109 -0
- package/package.json +12 -1
- package/dist/icons/Aws.svelte +0 -19
- package/dist/icons/Aws.svelte.d.ts +0 -4
- package/dist/icons/Facebook.svelte +0 -18
- package/dist/icons/Facebook.svelte.d.ts +0 -4
- package/dist/icons/Golang.svelte +0 -17
- package/dist/icons/Golang.svelte.d.ts +0 -4
- package/dist/icons/Google.svelte +0 -18
- package/dist/icons/Google.svelte.d.ts +0 -4
- package/dist/icons/Paypal.svelte +0 -21
- package/dist/icons/Paypal.svelte.d.ts +0 -4
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconProps } from "../types";
|
|
4
|
+
|
|
5
|
+
const props: IconProps = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Power icon"}
|
|
13
|
+
title={props.title ?? ""}
|
|
14
|
+
>
|
|
15
|
+
<path
|
|
16
|
+
fill="currentColor"
|
|
17
|
+
d="M8.1 21.213q-1.825-.788-3.175-2.138T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22t-3.9-.788m8.15-4.962Q18 14.5 18 12q0-1.275-.475-2.363T16.25 7.75l-1.425 1.425q.55.55.863 1.275T16 12q0 1.65-1.175 2.825T12 16t-2.825-1.175T8 12q0-.825.313-1.55t.862-1.275L7.75 7.75q-.8.8-1.275 1.888T6 12q0 2.5 1.75 4.25T12 18t4.25-1.75M11 12h2V6h-2z"
|
|
18
|
+
/>
|
|
19
|
+
</IconBase>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
4
|
+
|
|
5
|
+
const props: IconProps & { mode?: IconMode } = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Conexiones"}
|
|
13
|
+
title={props.title ?? "Connections"}
|
|
14
|
+
>
|
|
15
|
+
{#snippet children()}
|
|
16
|
+
<path
|
|
17
|
+
fill="currentColor"
|
|
18
|
+
d="M16 20q-.425 0-.712-.288T15 19v-1h-3q-.425 0-.712-.288T11 17v-4H9v1q0 .425-.288.713T8 15H3q-.425 0-.712-.288T2 14v-4q0-.425.288-.712T3 9h5q.425 0 .713.288T9 10v1h2V7q0-.425.288-.712T12 6h3V5q0-.425.288-.712T16 4h5q.425 0 .713.288T22 5v4q0 .425-.288.713T21 10h-5q-.425 0-.712-.288T15 9V8h-2v8h2v-1q0-.425.288-.712T16 14h5q.425 0 .713.288T22 15v4q0 .425-.288.713T21 20z"
|
|
19
|
+
/>
|
|
20
|
+
{/snippet}
|
|
21
|
+
</IconBase>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
2
|
+
type $$ComponentProps = IconProps & {
|
|
3
|
+
mode?: IconMode;
|
|
4
|
+
};
|
|
5
|
+
declare const Process: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
6
|
+
type Process = ReturnType<typeof Process>;
|
|
7
|
+
export default Process;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconProps } from "../types";
|
|
4
|
+
|
|
5
|
+
const props: IconProps = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Receipt icon"}
|
|
13
|
+
title={props.title ?? ""}
|
|
14
|
+
>
|
|
15
|
+
<path
|
|
16
|
+
fill="currentColor"
|
|
17
|
+
d="M6 22q-1.25 0-2.125-.875T3 19v-3h3V2l1.5 1.5L9 2l1.5 1.5L12 2l1.5 1.5L15 2l1.5 1.5L18 2l1.5 1.5L21 2v17q0 1.25-.875 2.125T18 22zm12-2q.425 0 .713-.288T19 19V5H8v11h9v3q0 .425.288.713T18 20M9 9V7h6v2zm0 3v-2h6v2zm8-3q-.425 0-.712-.288T16 8t.288-.712T17 7t.713.288T18 8t-.288.713T17 9m0 3q-.425 0-.712-.288T16 11t.288-.712T17 10t.713.288T18 11t-.288.713T17 12"
|
|
18
|
+
/>
|
|
19
|
+
</IconBase>
|
|
@@ -1,13 +1,21 @@
|
|
|
1
|
-
<!-- src/lib/icons/Settings.svelte -->
|
|
2
1
|
<script lang="ts">
|
|
3
2
|
import IconBase from "../IconBase.svelte";
|
|
4
|
-
import type { IconProps } from "../types";
|
|
5
|
-
|
|
3
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
4
|
+
|
|
5
|
+
const props: IconProps & { mode?: IconMode } = $props();
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
|
-
<IconBase
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Configuración"}
|
|
13
|
+
title={props.title ?? "Settings"}
|
|
14
|
+
>
|
|
15
|
+
{#snippet children()}
|
|
16
|
+
<path
|
|
17
|
+
fill="currentColor"
|
|
18
|
+
d="M19.14 12.94c.04-.3.06-.61.06-.94s-.02-.64-.06-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.49.49 0 0 0-.48-.41h-3.84a.49.49 0 0 0-.48.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.07-.47 0-.59.22L2.65 8.87c-.11.21-.06.47.12.61l2.03 1.58c-.04.3-.06.61-.06.94s.02.64.06.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.27.41.48.41h3.84c.21 0 .43-.17.48-.41l.36-2.54c.59-.24 1.13-.57 1.62-.94l2.39.96c.22.07.47 0 .59-.22l1.92-3.32c.11-.21.06-.47-.12-.61l-2.03-1.58zM12 15.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5s3.5 1.57 3.5 3.5s-1.57 3.5-3.5 3.5z"
|
|
19
|
+
/>
|
|
20
|
+
{/snippet}
|
|
13
21
|
</IconBase>
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import type { IconProps } from "../types";
|
|
2
|
-
|
|
1
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
2
|
+
type $$ComponentProps = IconProps & {
|
|
3
|
+
mode?: IconMode;
|
|
4
|
+
};
|
|
5
|
+
declare const Settings: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
3
6
|
type Settings = ReturnType<typeof Settings>;
|
|
4
7
|
export default Settings;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconProps } from "../types";
|
|
4
|
+
|
|
5
|
+
const props: IconProps = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Sync icon"}
|
|
13
|
+
title={props.title ?? ""}
|
|
14
|
+
>
|
|
15
|
+
<path
|
|
16
|
+
fill="currentColor"
|
|
17
|
+
d="M3 12q0-3.75 2.625-6.375T12 3V2q0-.3.275-.45t.525.05l3.125 2.35q.4.3.4.8t-.4.8L12.8 7.9q-.25.2-.525.05T12 7.5v-1q-2.275 0-3.888 1.613T6.5 12q0 .825.238 1.588T7.4 15q.275.4.225.863T7.2 16.6l-.85.625q-.45.35-1 .275t-.875-.55q-.725-1.075-1.1-2.325T3 12m9 9v1q0 .3-.275.45t-.525-.05l-3.125-2.35q-.4-.3-.4-.8t.4-.8L11.2 16.1q.25-.2.525-.05t.275.45v1q2.275 0 3.888-1.613T17.5 12q0-.825-.238-1.588T16.6 9q-.275-.4-.225-.862T16.8 7.4l.85-.625q.45-.35 1-.263t.875.538q.7 1.075 1.088 2.325T21 12q0 3.75-2.625 6.375T12 21"
|
|
18
|
+
/>
|
|
19
|
+
</IconBase>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
4
|
+
|
|
5
|
+
const props: IconProps & { mode?: IconMode } = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Cámara con sincronización"}
|
|
13
|
+
title={props.title ?? "Camera Sync"}
|
|
14
|
+
>
|
|
15
|
+
{#snippet children()}
|
|
16
|
+
<path
|
|
17
|
+
fill="currentColor"
|
|
18
|
+
d="M8 17q-.825 0-1.412-.587T6 15V9q0-.825.588-1.412T8 7h1l.7-.7q.15-.15.338-.225T10.425 6h3.15q.2 0 .388.075t.337.225l.7.7h1q.825 0 1.412.588T18 9v6q0 .825-.587 1.413T16 17zm4-3q.825 0 1.413-.587T14 12t-.587-1.412T12 10t-1.412.588T10 12t.588 1.413T12 14m0 10q-4.4 0-7.712-2.762T.174 14.275Q.1 13.85.337 13.5T1 13.1t.75.213t.4.687q.65 3.275 3.113 5.475T11.1 21.95l-.85-.85q-.275-.275-.275-.7t.275-.7t.7-.275t.7.275l3.3 3.3q.175.175.113.4t-.288.275q-.675.175-1.362.25T12 24m0-24q4.4 0 7.713 2.75t4.112 6.975q.075.425-.162.775t-.663.4t-.75-.213t-.4-.687q-.65-3.275-3.113-5.475T12.9 2.05l.85.85q.275.275.275.7t-.275.7t-.7.275t-.7-.275L9.05 1Q8.875.825 8.938.6t.287-.275Q9.9.15 10.588.075T12 0"
|
|
19
|
+
/>
|
|
20
|
+
{/snippet}
|
|
21
|
+
</IconBase>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
2
|
+
type $$ComponentProps = IconProps & {
|
|
3
|
+
mode?: IconMode;
|
|
4
|
+
};
|
|
5
|
+
declare const SyncPhoto: import("svelte").Component<$$ComponentProps, {}, "">;
|
|
6
|
+
type SyncPhoto = ReturnType<typeof SyncPhoto>;
|
|
7
|
+
export default SyncPhoto;
|
package/dist/icons/Upload.svelte
CHANGED
|
@@ -1,64 +1,19 @@
|
|
|
1
|
-
<!-- src/lib/icons/Upload.svelte -->
|
|
2
1
|
<script lang="ts">
|
|
3
2
|
import IconBase from "../IconBase.svelte";
|
|
4
3
|
import type { IconProps } from "../types";
|
|
4
|
+
|
|
5
5
|
const props: IconProps = $props();
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
|
-
<IconBase
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
d="M12 21c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9"
|
|
20
|
-
>
|
|
21
|
-
<animate
|
|
22
|
-
attributeName="stroke-dashoffset"
|
|
23
|
-
dur="0.6s"
|
|
24
|
-
repeatCount="indefinite"
|
|
25
|
-
values="6;0"
|
|
26
|
-
/>
|
|
27
|
-
</path>
|
|
28
|
-
<path
|
|
29
|
-
stroke-dasharray="32"
|
|
30
|
-
stroke-dashoffset="32"
|
|
31
|
-
d="M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9"
|
|
32
|
-
>
|
|
33
|
-
<animate
|
|
34
|
-
fill="freeze"
|
|
35
|
-
attributeName="stroke-dashoffset"
|
|
36
|
-
begin="0.1s"
|
|
37
|
-
dur="0.4s"
|
|
38
|
-
values="32;0"
|
|
39
|
-
/>
|
|
40
|
-
</path>
|
|
41
|
-
<path stroke-dasharray="10" stroke-dashoffset="10" d="M12 16v-7.5">
|
|
42
|
-
<animate
|
|
43
|
-
fill="freeze"
|
|
44
|
-
attributeName="stroke-dashoffset"
|
|
45
|
-
begin="0.5s"
|
|
46
|
-
dur="0.2s"
|
|
47
|
-
values="10;0"
|
|
48
|
-
/>
|
|
49
|
-
</path>
|
|
50
|
-
<path
|
|
51
|
-
stroke-dasharray="6"
|
|
52
|
-
stroke-dashoffset="6"
|
|
53
|
-
d="M12 8.5l3.5 3.5M12 8.5l-3.5 3.5"
|
|
54
|
-
>
|
|
55
|
-
<animate
|
|
56
|
-
fill="freeze"
|
|
57
|
-
attributeName="stroke-dashoffset"
|
|
58
|
-
begin="0.7s"
|
|
59
|
-
dur="0.2s"
|
|
60
|
-
values="6;0"
|
|
61
|
-
/>
|
|
62
|
-
</path>
|
|
63
|
-
</g>
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Upload icon"}
|
|
13
|
+
title={props.title ?? ""}
|
|
14
|
+
>
|
|
15
|
+
<path
|
|
16
|
+
fill="currentColor"
|
|
17
|
+
d="M5 20h14q.425 0 .713.288T20 21t-.288.713T19 22H5q-.425 0-.712-.288T4 21t.288-.712T5 20m5-2q-.425 0-.712-.288T9 17v-6H7.05q-.625 0-.9-.562t.1-1.063l4.95-6.35q.15-.2.363-.3t.437-.1t.438.1t.362.3l4.95 6.35q.375.5.1 1.063t-.9.562H15v6q0 .425-.288.713T14 18z"
|
|
18
|
+
/>
|
|
64
19
|
</IconBase>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconProps } from "../types";
|
|
4
|
+
|
|
5
|
+
const props: IconProps = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Signal icon"}
|
|
13
|
+
title={props.title ?? ""}
|
|
14
|
+
>
|
|
15
|
+
<path
|
|
16
|
+
fill="currentColor"
|
|
17
|
+
d="M12 7q-2.2 0-4.288.688T3.875 9.724q-.5.4-1.137.388T1.65 9.65q-.425-.425-.425-1.05t.5-1q2.2-1.75 4.838-2.675T12 4q2.825 0 5.45.925T22.275 7.6q.5.375.5 1t-.425 1.05q-.45.45-1.088.463t-1.137-.388q-1.75-1.35-3.825-2.037T12 7m0 6q-1.025 0-1.987.263t-1.838.787q-.55.35-1.187.325T5.9 13.9q-.425-.425-.413-1.037T6 11.9q1.325-.925 2.85-1.412T12 10t3.15.488T18 11.9q.5.35.513.963T18.1 13.9q-.45.45-1.088.475t-1.187-.325q-.875-.525-1.837-.788T12 13m-1.412 6.413Q10 18.825 10 18t.588-1.412T12 16t1.413.588T14 18t-.587 1.413T12 20t-1.412-.587"
|
|
18
|
+
/>
|
|
19
|
+
</IconBase>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import IconBase from "../IconBase.svelte";
|
|
3
|
+
import type { IconMode, IconProps } from "../types.js";
|
|
4
|
+
|
|
5
|
+
const props: IconProps & { mode?: IconMode } = $props();
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<IconBase
|
|
9
|
+
{...props}
|
|
10
|
+
mode="solid"
|
|
11
|
+
viewBox="0 0 24 24"
|
|
12
|
+
ariaLabel={props.ariaLabel ?? "Archivo con configuración"}
|
|
13
|
+
title={props.title ?? "File Settings"}
|
|
14
|
+
>
|
|
15
|
+
{#snippet children()}
|
|
16
|
+
<path
|
|
17
|
+
fill="currentColor"
|
|
18
|
+
d="M7 11h3q.425 0 .713-.288T11 10t-.288-.712T10 9H7q-.425 0-.712.288T6 10t.288.713T7 11m-3 9q-.825 0-1.412-.587T2 18V6q0-.825.588-1.412T4 4h17.025q.275 0 .45.15t.175.4q0 .275-.187.438t-.438.112q-.2-.05-.462-.075T20 5q-2.075 0-3.537 1.463T15 10q0 .55.1 1.05t.3.95H14q-1.25 0-2.125.875T11 15v1q-.7.5-1.175 1.213t-.675 1.562q-.125.5-.5.863T7.775 20zm10 1q.425 0 .713-.288T15 20t-.288-.712T14 19t-.712.288T13 20t.288.713T14 21m6-10q.425 0 .713-.288T21 10t-.288-.712T20 9t-.712.288T19 10t.288.713T20 11m-8.125 11.125Q11 21.25 11 20q0-.975.563-1.75T13 17.175V15q0-.425.288-.712T14 14h5v-1.175q-.875-.3-1.437-1.075T17 10q0-1.25.875-2.125T20 7t2.125.875T23 10q0 .975-.562 1.75T21 12.825V15q0 .425-.288.713T20 16h-5v1.175q.875.3 1.438 1.075T17 20q0 1.25-.875 2.125T14 23t-2.125-.875M10 15q.425 0 .713-.288T11 14t-.288-.712T10 13H7q-.425 0-.712.288T6 14t.288.713T7 15z"
|
|
19
|
+
/>
|
|
20
|
+
{/snippet}
|
|
21
|
+
</IconBase>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Component } from 'svelte';
|
|
2
|
+
/**
|
|
3
|
+
* Intenta obtener el componente de forma SÍNCRONA (si ya fue cargado antes).
|
|
4
|
+
* Devuelve null si todavía no está en caché.
|
|
5
|
+
*/
|
|
6
|
+
export declare function getLoadedIcon(name: string): Component | null;
|
|
7
|
+
/**
|
|
8
|
+
* Carga un ícono de forma lazy y lo guarda en caché para acceso síncrono posterior.
|
|
9
|
+
* Devuelve el componente cargado, o null si el nombre no existe.
|
|
10
|
+
*
|
|
11
|
+
* El bundler (Vite/Rollup) puede crear un chunk por ícono gracias a los
|
|
12
|
+
* import() con rutas estáticas en _loaders.
|
|
13
|
+
*/
|
|
14
|
+
export declare function loadIcon(name: string): Promise<Component | null>;
|
|
15
|
+
/**
|
|
16
|
+
* Precarga un conjunto de íconos en background (ideal para rutas anticipadas).
|
|
17
|
+
* No bloquea — usa requestIdleCallback cuando está disponible.
|
|
18
|
+
*/
|
|
19
|
+
export declare function preloadIcons(names: string[]): void;
|
|
20
|
+
/** Lista de todos los nombres de íconos disponibles en el lazy registry */
|
|
21
|
+
export declare const lazyIconNames: string[];
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
// src/lib/icons/lazy-registry.ts
|
|
2
|
+
//
|
|
3
|
+
// Registry de carga lazy — cada icono es un dynamic import() independiente.
|
|
4
|
+
// Esto permite que el bundler (Vite/Rollup) cree chunks separados por ícono,
|
|
5
|
+
// reduciendo el bundle inicial cuando solo se usan algunos iconos.
|
|
6
|
+
//
|
|
7
|
+
// IMPORTANTE: Los import() deben tener rutas ESTÁTICAS (literales de string)
|
|
8
|
+
// para que Vite pueda analizarlos en tiempo de build y crear los chunks correctos.
|
|
9
|
+
//
|
|
10
|
+
// Compatibilidad: esta API es ADICIONAL al registry estático. El registry
|
|
11
|
+
// estático (`registry.ts`) sigue exportando `iconRegistry` sin cambios.
|
|
12
|
+
// ============================================================================
|
|
13
|
+
// MAPA DE LOADERS — rutas estáticas para que Vite genere chunks
|
|
14
|
+
// ============================================================================
|
|
15
|
+
const _loaders = {
|
|
16
|
+
// — Navegación y layout —
|
|
17
|
+
home: () => import('./Home.svelte'),
|
|
18
|
+
dashboard: () => import('./Dashboard.svelte'),
|
|
19
|
+
dashboardOutline: () => import('./DashboardOutlined.svelte'),
|
|
20
|
+
settings: () => import('./Settings.svelte'),
|
|
21
|
+
search: () => import('./MagnifiyingGlass.svelte'),
|
|
22
|
+
menu: () => import('./Hamburguer.svelte'),
|
|
23
|
+
close: () => import('./Close.svelte'),
|
|
24
|
+
plus: () => import('./Plus.svelte'),
|
|
25
|
+
copy: () => import('./Copy.svelte'),
|
|
26
|
+
rocket: () => import('./Rocket.svelte'),
|
|
27
|
+
sidebar: () => import('./Sidebar.svelte'),
|
|
28
|
+
more: () => import('./More.svelte'),
|
|
29
|
+
// — Usuarios y autenticación —
|
|
30
|
+
user: () => import('./User.svelte'),
|
|
31
|
+
userTie: () => import('./UserTie.svelte'),
|
|
32
|
+
team: () => import('./Team.svelte'),
|
|
33
|
+
group: () => import('./Group.svelte'),
|
|
34
|
+
supervisor: () => import('./Supervisor.svelte'),
|
|
35
|
+
enterprise: () => import('./Enterprise.svelte'),
|
|
36
|
+
lock: () => import('./Lock.svelte'),
|
|
37
|
+
lockOpen: () => import('./LockOpen.svelte'),
|
|
38
|
+
key: () => import('./Key.svelte'),
|
|
39
|
+
logout: () => import('./Logout.svelte'),
|
|
40
|
+
eye: () => import('./Eye.svelte'),
|
|
41
|
+
eyeOff: () => import('./EyeOff.svelte'),
|
|
42
|
+
shield: () => import('./Shield.svelte'),
|
|
43
|
+
fingerprint: () => import('./Fingerprint.svelte'),
|
|
44
|
+
contact: () => import('./Contact.svelte'),
|
|
45
|
+
security: () => import('./Security.svelte'),
|
|
46
|
+
// — Comunicación —
|
|
47
|
+
email: () => import('./Email.svelte'),
|
|
48
|
+
emailAnimated: () => import('./EmailAnimated.svelte'),
|
|
49
|
+
phone: () => import('./Phone.svelte'),
|
|
50
|
+
bell: () => import('./Bell.svelte'),
|
|
51
|
+
send: () => import('./Send.svelte'),
|
|
52
|
+
share: () => import('./Share.svelte'),
|
|
53
|
+
world: () => import('./World.svelte'),
|
|
54
|
+
chat: () => import('./Chat.svelte'),
|
|
55
|
+
link: () => import('./Link.svelte'),
|
|
56
|
+
// — Negocio y finanzas —
|
|
57
|
+
building: () => import('./Building.svelte'),
|
|
58
|
+
handshake: () => import('./HandShake.svelte'),
|
|
59
|
+
money: () => import('./Money.svelte'),
|
|
60
|
+
wallet: () => import('./Wallet.svelte'),
|
|
61
|
+
profit: () => import('./Profit.svelte'),
|
|
62
|
+
safe: () => import('./SafeSolid.svelte'),
|
|
63
|
+
cost: () => import('./CostIcon.svelte'),
|
|
64
|
+
exchange: () => import('./Exchange.svelte'),
|
|
65
|
+
swap: () => import('./Swap.svelte'),
|
|
66
|
+
bank: () => import('./Bank.svelte'),
|
|
67
|
+
pay: () => import('./Pay.svelte'),
|
|
68
|
+
creditCard: () => import('./CreditCard.svelte'),
|
|
69
|
+
receipt: () => import('./Receipt.svelte'),
|
|
70
|
+
buy: () => import('./Buy.svelte'),
|
|
71
|
+
// — Gráficas y datos —
|
|
72
|
+
chart: () => import('./Chart.svelte'),
|
|
73
|
+
chartDocument: () => import('./ChartDoc.svelte'),
|
|
74
|
+
chartSquare: () => import('./SquareChart.svelte'),
|
|
75
|
+
chartDoughnut: () => import('./DoughnutChart.svelte'),
|
|
76
|
+
table: () => import('./Table.svelte'),
|
|
77
|
+
list: () => import('./List.svelte'),
|
|
78
|
+
listDots: () => import('./ListDots.svelte'),
|
|
79
|
+
listGroup: () => import('./FormatListGroup.svelte'),
|
|
80
|
+
trendingDown: () => import('./Lose.svelte'),
|
|
81
|
+
database: () => import('./Db.svelte'),
|
|
82
|
+
server: () => import('./Server.svelte'),
|
|
83
|
+
// — Archivos y documentos —
|
|
84
|
+
file: () => import('./File.svelte'),
|
|
85
|
+
pdf: () => import('./Pdf.svelte'),
|
|
86
|
+
excel: () => import('./Excel.svelte'),
|
|
87
|
+
excelAnimated: () => import('./ExcelAnimated.svelte'),
|
|
88
|
+
word: () => import('./Word.svelte'),
|
|
89
|
+
powerPoint: () => import('./PowerPoint.svelte'),
|
|
90
|
+
csv: () => import('./Csv.svelte'),
|
|
91
|
+
xml: () => import('./Xml.svelte'),
|
|
92
|
+
zip: () => import('./Zip.svelte'),
|
|
93
|
+
png: () => import('./Png.svelte'),
|
|
94
|
+
notes: () => import('./Notes.svelte'),
|
|
95
|
+
book: () => import('./Book.svelte'),
|
|
96
|
+
image: () => import('./Image.svelte'),
|
|
97
|
+
imageAnimated: () => import('./ImageAnimated.svelte'),
|
|
98
|
+
folder: () => import('./Folder.svelte'),
|
|
99
|
+
folderShared: () => import('./SharedFolder.svelte'),
|
|
100
|
+
attachment: () => import('./Attachment.svelte'),
|
|
101
|
+
save: () => import('./Save.svelte'),
|
|
102
|
+
form: () => import('./Form.svelte'),
|
|
103
|
+
print: () => import('./Print.svelte'),
|
|
104
|
+
// — Calendario y tiempo —
|
|
105
|
+
calendar: () => import('./Calendar.svelte'),
|
|
106
|
+
calendarPlus: () => import('./CalendarPlus.svelte'),
|
|
107
|
+
calendarEdit: () => import('./CalendarEdit.svelte'),
|
|
108
|
+
timer: () => import('./Timer.svelte'),
|
|
109
|
+
// — Flechas y navegación —
|
|
110
|
+
arrowRight: () => import('./RightArrow.svelte'),
|
|
111
|
+
arrowUp: () => import('./UpArrow.svelte'),
|
|
112
|
+
arrowUpDown: () => import('./UpDownArrow.svelte'),
|
|
113
|
+
arrowLeftAnimated: () => import('./AnimatedArrowLeft.svelte'),
|
|
114
|
+
chevronDown: () => import('./ChevronDown.svelte'),
|
|
115
|
+
chevronUpDown: () => import('./ChevronUpDown.svelte'),
|
|
116
|
+
// — Acciones de archivo —
|
|
117
|
+
download: () => import('./Download.svelte'),
|
|
118
|
+
downloadAnimated: () => import('./DownloadAnimated.svelte'),
|
|
119
|
+
upload: () => import('./Upload.svelte'),
|
|
120
|
+
uploadAnimated: () => import('./UploadAnimated.svelte'),
|
|
121
|
+
uploadProgress: () => import('./UploadLoader.svelte'),
|
|
122
|
+
fileUploadAnimated: () => import('./FileUploadAnimated.svelte'),
|
|
123
|
+
refresh: () => import('./Update.svelte'),
|
|
124
|
+
// — Estados y feedback —
|
|
125
|
+
check: () => import('./Check.svelte'),
|
|
126
|
+
checkOutline: () => import('./CheckO.svelte'),
|
|
127
|
+
checkList: () => import('./CheckList.svelte'),
|
|
128
|
+
circleCheck: () => import('./CircleCheck.svelte'),
|
|
129
|
+
error: () => import('./Error.svelte'),
|
|
130
|
+
errorOutline: () => import('./ErrorO.svelte'),
|
|
131
|
+
circleExclamation: () => import('./CircleExclamation.svelte'),
|
|
132
|
+
circleExclamationOutline: () => import('./CircleExclamationOutlined.svelte'),
|
|
133
|
+
warning: () => import('./Warning.svelte'),
|
|
134
|
+
circleInfo: () => import('./CircleInfo.svelte'),
|
|
135
|
+
circleInfoOutline: () => import('./CircleInfoOutlined.svelte'),
|
|
136
|
+
circleQuestion: () => import('./CircleQuestion.svelte'),
|
|
137
|
+
circleQuestionOutline: () => import('./CircleQuestionOutlined.svelte'),
|
|
138
|
+
star: () => import('./Star.svelte'),
|
|
139
|
+
favorites: () => import('./Favorites.svelte'),
|
|
140
|
+
heart: () => import('./Heart.svelte'),
|
|
141
|
+
reset: () => import('./Reset.svelte'),
|
|
142
|
+
height: () => import('./Height.svelte'),
|
|
143
|
+
alternate: () => import('./Alternate.svelte'),
|
|
144
|
+
moon: () => import('./Moon.svelte'),
|
|
145
|
+
sun: () => import('./Sun.svelte'),
|
|
146
|
+
colors: () => import('./Colors.svelte'),
|
|
147
|
+
// — Loading y progreso —
|
|
148
|
+
spinnerDots: () => import('./LoadingDots.svelte'),
|
|
149
|
+
spinner: () => import('./RegularSpinner.svelte'),
|
|
150
|
+
// — Comercio y ventas —
|
|
151
|
+
product: () => import('./Product.svelte'),
|
|
152
|
+
bag: () => import('./Bag.svelte'),
|
|
153
|
+
pos: () => import('./PointSale.svelte'),
|
|
154
|
+
category: () => import('./Category.svelte'),
|
|
155
|
+
categoryAdd: () => import('./CategoryAdd.svelte'),
|
|
156
|
+
categorySearch: () => import('./CategorySearch.svelte'),
|
|
157
|
+
boxAdd: () => import('./BoxAdd.svelte'),
|
|
158
|
+
measure: () => import('./Measure.svelte'),
|
|
159
|
+
box: () => import('./Box.svelte'),
|
|
160
|
+
scan: () => import('./Scan.svelte'),
|
|
161
|
+
cart: () => import('./Cart.svelte'),
|
|
162
|
+
cards: () => import('./Cards.svelte'),
|
|
163
|
+
// — Logística y transporte —
|
|
164
|
+
truck: () => import('./Truck.svelte'),
|
|
165
|
+
truckReturn: () => import('./TruckReturn.svelte'),
|
|
166
|
+
warehouse: () => import('./Warehouse.svelte'),
|
|
167
|
+
location: () => import('./Location.svelte'),
|
|
168
|
+
locationAnimated: () => import('./LocationAnimated.svelte'),
|
|
169
|
+
// — Herramientas y utilidades —
|
|
170
|
+
ai: () => import('./Ai.svelte'),
|
|
171
|
+
edit: () => import('./Edit.svelte'),
|
|
172
|
+
editOutline: () => import('./EditOutline.svelte'),
|
|
173
|
+
trash: () => import('./Trash.svelte'),
|
|
174
|
+
trashOutline: () => import('./TrashOutline.svelte'),
|
|
175
|
+
filter: () => import('./FilterOutline.svelte'),
|
|
176
|
+
filterOutline: () => import('./FilterOutline.svelte'),
|
|
177
|
+
tags: () => import('./Tags.svelte'),
|
|
178
|
+
tools: () => import('./Tools.svelte'),
|
|
179
|
+
objectGroup: () => import('./ObjectGroup.svelte'),
|
|
180
|
+
project: () => import('./Project.svelte'),
|
|
181
|
+
// — Media y dispositivos —
|
|
182
|
+
camera: () => import('./Camera.svelte'),
|
|
183
|
+
desktop: () => import('./Desktop.svelte'),
|
|
184
|
+
wifi: () => import('./Wifi.svelte'),
|
|
185
|
+
power: () => import('./Power.svelte'),
|
|
186
|
+
// — Nube —
|
|
187
|
+
cloudAlert: () => import('./CloudAlert.svelte'),
|
|
188
|
+
cloudCheck: () => import('./CloudCheck.svelte'),
|
|
189
|
+
cloudDownload: () => import('./CloudDownload.svelte'),
|
|
190
|
+
// — Otros —
|
|
191
|
+
blaze: () => import('./Blaze.svelte'),
|
|
192
|
+
earth: () => import('./Earth.svelte'),
|
|
193
|
+
globe: () => import('./Globe.svelte'),
|
|
194
|
+
lightHub: () => import('./LightHub.svelte'),
|
|
195
|
+
sync: () => import('./Sync.svelte'),
|
|
196
|
+
};
|
|
197
|
+
// ============================================================================
|
|
198
|
+
// CACHE DE COMPONENTES YA CARGADOS
|
|
199
|
+
// Una vez que un ícono se carga, se guarda aquí para acceso síncrono inmediato
|
|
200
|
+
// en renders subsiguientes → cero latencia después del primer load.
|
|
201
|
+
// ============================================================================
|
|
202
|
+
const _loaded = new Map();
|
|
203
|
+
/**
|
|
204
|
+
* Intenta obtener el componente de forma SÍNCRONA (si ya fue cargado antes).
|
|
205
|
+
* Devuelve null si todavía no está en caché.
|
|
206
|
+
*/
|
|
207
|
+
export function getLoadedIcon(name) {
|
|
208
|
+
return _loaded.get(name) ?? null;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Carga un ícono de forma lazy y lo guarda en caché para acceso síncrono posterior.
|
|
212
|
+
* Devuelve el componente cargado, o null si el nombre no existe.
|
|
213
|
+
*
|
|
214
|
+
* El bundler (Vite/Rollup) puede crear un chunk por ícono gracias a los
|
|
215
|
+
* import() con rutas estáticas en _loaders.
|
|
216
|
+
*/
|
|
217
|
+
export async function loadIcon(name) {
|
|
218
|
+
// Ya está en caché → retorno síncrono promovido a Promise
|
|
219
|
+
const cached = _loaded.get(name);
|
|
220
|
+
if (cached)
|
|
221
|
+
return cached;
|
|
222
|
+
const loader = _loaders[name];
|
|
223
|
+
if (!loader)
|
|
224
|
+
return null;
|
|
225
|
+
try {
|
|
226
|
+
const mod = await loader();
|
|
227
|
+
_loaded.set(name, mod.default);
|
|
228
|
+
return mod.default;
|
|
229
|
+
}
|
|
230
|
+
catch {
|
|
231
|
+
return null;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Precarga un conjunto de íconos en background (ideal para rutas anticipadas).
|
|
236
|
+
* No bloquea — usa requestIdleCallback cuando está disponible.
|
|
237
|
+
*/
|
|
238
|
+
export function preloadIcons(names) {
|
|
239
|
+
const schedule = typeof requestIdleCallback !== 'undefined'
|
|
240
|
+
? (fn) => requestIdleCallback(fn, { timeout: 2000 })
|
|
241
|
+
: (fn) => setTimeout(fn, 0);
|
|
242
|
+
schedule(() => {
|
|
243
|
+
for (const name of names) {
|
|
244
|
+
if (!_loaded.has(name) && _loaders[name]) {
|
|
245
|
+
loadIcon(name); // fire-and-forget
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
/** Lista de todos los nombres de íconos disponibles en el lazy registry */
|
|
251
|
+
export const lazyIconNames = Object.keys(_loaders);
|