ngx-com 0.0.6 → 0.0.7
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.
|
@@ -172,7 +172,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
172
172
|
* ```
|
|
173
173
|
*/
|
|
174
174
|
function provideComIcons(icons) {
|
|
175
|
-
return { provide: LUCIDE_ICONS,
|
|
175
|
+
return { provide: LUCIDE_ICONS, useValue: new LucideIconProvider(icons) };
|
|
176
176
|
}
|
|
177
177
|
|
|
178
178
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-com-components-icon.mjs","sources":["../../../projects/com/components/icon/icon.variants.ts","../../../projects/com/components/icon/icon.component.ts","../../../projects/com/components/icon/icon.providers.ts","../../../projects/com/components/icon/ngx-com-components-icon.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nexport type IconColor = 'current' | 'primary' | 'accent' | 'warn' | 'success' | 'muted' | 'disabled';\nexport type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n\nexport const iconVariants: (props?: { color?: IconColor; size?: IconSize }) => string = cva(\n 'inline-flex items-center justify-center shrink-0 align-middle',\n {\n variants: {\n color: {\n current: '',\n primary: 'text-primary',\n accent: 'text-accent',\n warn: 'text-warn',\n success: 'text-success',\n muted: 'text-muted-foreground',\n disabled: 'text-disabled-foreground',\n },\n size: {\n xs: 'size-icon-xs',\n sm: 'size-icon-sm',\n md: 'size-icon-md',\n lg: 'size-icon-lg',\n xl: 'size-icon-xl',\n '2xl': 'size-icon-2xl',\n },\n },\n defaultVariants: {\n color: 'current',\n size: 'lg',\n },\n }\n);\n\n/** Pixel values matching the CSS tokens — passed to Lucide's numeric [size] prop */\nexport const ICON_SIZE_PX: Record<IconSize, number> = {\n xs: 12,\n sm: 16,\n md: 20,\n lg: 24,\n xl: 32,\n '2xl': 40,\n};\n\nexport type IconVariants = VariantProps<typeof iconVariants>;\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport type { InputSignal, Signal } from '@angular/core';\nimport { LucideAngularModule } from 'lucide-angular';\nimport type { LucideIconData } from 'lucide-angular';\nimport { iconVariants, ICON_SIZE_PX, type IconColor, type IconSize } from './icon.variants';\n\n/**\n * Icon component — renders Lucide icons with CVA-powered color and size variants.\n *\n * Icons inherit `currentColor` by default, making them automatically match\n * surrounding text. Use the `color` input for semantic color variants that\n * respond to theme changes.\n *\n * @tokens `--color-primary`, `--color-accent`, `--color-warn`, `--color-success`,\n * `--color-muted-foreground`, `--color-disabled-foreground`,\n * `--size-icon-xs`, `--size-icon-sm`, `--size-icon-md`,\n * `--size-icon-lg`, `--size-icon-xl`, `--size-icon-2xl`\n *\n * @example Basic usage (requires icon registration via provideComIcons)\n * ```html\n * <com-icon name=\"star\" />\n * <com-icon name=\"check\" color=\"success\" size=\"sm\" />\n * <com-icon name=\"alert-triangle\" color=\"warn\" />\n * ```\n *\n * @example Direct icon reference (no provider needed)\n * ```html\n * <com-icon [img]=\"StarIcon\" color=\"accent\" size=\"2xl\" />\n * ```\n *\n * @example Accessible icon (not decorative)\n * ```html\n * <com-icon name=\"check\" color=\"success\" ariaLabel=\"Task completed\" />\n * ```\n *\n * @example Inline with text (inherits parent color)\n * ```html\n * <span class=\"text-primary\">\n * <com-icon name=\"star\" size=\"sm\" /> Favorite\n * </span>\n * ```\n */\n@Component({\n selector: 'com-icon',\n template: `\n @if (img(); as imgData) {\n <lucide-icon\n [img]=\"imgData\"\n [size]=\"sizeInPx()\"\n [strokeWidth]=\"strokeWidth()\"\n [absoluteStrokeWidth]=\"absoluteStrokeWidth()\"\n color=\"currentColor\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-hidden]=\"ariaLabel() ? null : 'true'\"\n />\n } @else if (name(); as iconName) {\n <lucide-icon\n [name]=\"iconName\"\n [size]=\"sizeInPx()\"\n [strokeWidth]=\"strokeWidth()\"\n [absoluteStrokeWidth]=\"absoluteStrokeWidth()\"\n color=\"currentColor\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-hidden]=\"ariaLabel() ? null : 'true'\"\n />\n }\n `,\n host: {\n '[class]': 'hostClasses()',\n },\n imports: [LucideAngularModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ComIcon {\n /** Icon name in kebab-case (e.g. 'chevron-right'). Requires provideComIcons registration. */\n readonly name: InputSignal<string | undefined> = input<string>();\n\n /** Direct Lucide icon reference. Takes precedence over `name`. */\n readonly img: InputSignal<LucideIconData | undefined> = input<LucideIconData>();\n\n /** Semantic color variant. Defaults to 'current' (inherits from parent). */\n readonly color: InputSignal<IconColor> = input<IconColor>('current');\n\n /** Size variant. Defaults to 'lg' (24px). */\n readonly size: InputSignal<IconSize> = input<IconSize>('lg');\n\n /** Stroke width. Defaults to 2. */\n readonly strokeWidth: InputSignal<number> = input<number>(2);\n\n /** When true, stroke width doesn't scale with icon size. */\n readonly absoluteStrokeWidth: InputSignal<boolean> = input<boolean>(false);\n\n /** Applies aria-label and removes aria-hidden. Use for meaningful icons. */\n readonly ariaLabel: InputSignal<string | undefined> = input<string>();\n\n protected readonly sizeInPx: Signal<number> = computed(() => ICON_SIZE_PX[this.size()]);\n protected readonly hostClasses: Signal<string> = computed(() =>\n iconVariants({ color: this.color(), size: this.size() })\n );\n}\n","import type { Provider } from '@angular/core';\nimport { LUCIDE_ICONS, LucideIconProvider } from 'lucide-angular';\nimport type { LucideIcons } from 'lucide-angular';\n\n/**\n * Provides Lucide icons for use with `com-icon`.\n *\n * Register icons in your application config to use them by name:\n *\n * @example\n * ```ts\n * // app.config.ts\n * import { provideComIcons } from 'ngx-com/components/icon';\n * import { ChevronRight, Star, Check, AlertTriangle } from 'lucide-angular';\n *\n * export const appConfig = {\n * providers: [\n * provideComIcons({ ChevronRight, Star, Check, AlertTriangle })\n * ]\n * };\n * ```\n */\nexport function provideComIcons(icons: LucideIcons): Provider {\n return { provide: LUCIDE_ICONS, multi: true, useValue: new LucideIconProvider(icons) };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAKO,MAAM,YAAY,GAA+D,GAAG,CACzF,+DAA+D,EAC/D;AACE,IAAA,QAAQ,EAAE;AACR,QAAA,KAAK,EAAE;AACL,YAAA,OAAO,EAAE,EAAE;AACX,YAAA,OAAO,EAAE,cAAc;AACvB,YAAA,MAAM,EAAE,aAAa;AACrB,YAAA,IAAI,EAAE,WAAW;AACjB,YAAA,OAAO,EAAE,cAAc;AACvB,YAAA,KAAK,EAAE,uBAAuB;AAC9B,YAAA,QAAQ,EAAE,0BAA0B;AACrC,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,EAAE,EAAE,cAAc;AAClB,YAAA,KAAK,EAAE,eAAe;AACvB,SAAA;AACF,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,IAAI,EAAE,IAAI;AACX,KAAA;AACF,CAAA;AAGH;AACO,MAAM,YAAY,GAA6B;AACpD,IAAA,EAAE,EAAE,EAAE;AACN,IAAA,EAAE,EAAE,EAAE;AACN,IAAA,EAAE,EAAE,EAAE;AACN,IAAA,EAAE,EAAE,EAAE;AACN,IAAA,EAAE,EAAE,EAAE;AACN,IAAA,KAAK,EAAE,EAAE;;;AC7BX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCG;MAiCU,OAAO,CAAA;;IAET,IAAI,GAAoC,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;;IAGvD,GAAG,GAA4C,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,KAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAkB;;AAGtE,IAAA,KAAK,GAA2B,KAAK,CAAY,SAAS,iDAAC;;AAG3D,IAAA,IAAI,GAA0B,KAAK,CAAW,IAAI,gDAAC;;AAGnD,IAAA,WAAW,GAAwB,KAAK,CAAS,CAAC,uDAAC;;AAGnD,IAAA,mBAAmB,GAAyB,KAAK,CAAU,KAAK,+DAAC;;IAGjE,SAAS,GAAoC,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;AAElD,IAAA,QAAQ,GAAmB,QAAQ,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,oDAAC;IACpE,WAAW,GAAmB,QAAQ,CAAC,MACxD,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CACzD;uGAzBU,OAAO,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAP,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,OAAO,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA9BR;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAIS,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,oDAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAIlB,OAAO,EAAA,UAAA,EAAA,CAAA;kBAhCnB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE,eAAe;AAC3B,qBAAA;oBACD,OAAO,EAAE,CAAC,mBAAmB,CAAC;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACtC,iBAAA;;;AC3ED;;;;;;;;;;;;;;;;;AAiBG;AACG,SAAU,eAAe,CAAC,KAAkB,EAAA;AAChD,IAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE;AACxF;;ACxBA;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"ngx-com-components-icon.mjs","sources":["../../../projects/com/components/icon/icon.variants.ts","../../../projects/com/components/icon/icon.component.ts","../../../projects/com/components/icon/icon.providers.ts","../../../projects/com/components/icon/ngx-com-components-icon.ts"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority';\n\nexport type IconColor = 'current' | 'primary' | 'accent' | 'warn' | 'success' | 'muted' | 'disabled';\nexport type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';\n\nexport const iconVariants: (props?: { color?: IconColor; size?: IconSize }) => string = cva(\n 'inline-flex items-center justify-center shrink-0 align-middle',\n {\n variants: {\n color: {\n current: '',\n primary: 'text-primary',\n accent: 'text-accent',\n warn: 'text-warn',\n success: 'text-success',\n muted: 'text-muted-foreground',\n disabled: 'text-disabled-foreground',\n },\n size: {\n xs: 'size-icon-xs',\n sm: 'size-icon-sm',\n md: 'size-icon-md',\n lg: 'size-icon-lg',\n xl: 'size-icon-xl',\n '2xl': 'size-icon-2xl',\n },\n },\n defaultVariants: {\n color: 'current',\n size: 'lg',\n },\n }\n);\n\n/** Pixel values matching the CSS tokens — passed to Lucide's numeric [size] prop */\nexport const ICON_SIZE_PX: Record<IconSize, number> = {\n xs: 12,\n sm: 16,\n md: 20,\n lg: 24,\n xl: 32,\n '2xl': 40,\n};\n\nexport type IconVariants = VariantProps<typeof iconVariants>;\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport type { InputSignal, Signal } from '@angular/core';\nimport { LucideAngularModule } from 'lucide-angular';\nimport type { LucideIconData } from 'lucide-angular';\nimport { iconVariants, ICON_SIZE_PX, type IconColor, type IconSize } from './icon.variants';\n\n/**\n * Icon component — renders Lucide icons with CVA-powered color and size variants.\n *\n * Icons inherit `currentColor` by default, making them automatically match\n * surrounding text. Use the `color` input for semantic color variants that\n * respond to theme changes.\n *\n * @tokens `--color-primary`, `--color-accent`, `--color-warn`, `--color-success`,\n * `--color-muted-foreground`, `--color-disabled-foreground`,\n * `--size-icon-xs`, `--size-icon-sm`, `--size-icon-md`,\n * `--size-icon-lg`, `--size-icon-xl`, `--size-icon-2xl`\n *\n * @example Basic usage (requires icon registration via provideComIcons)\n * ```html\n * <com-icon name=\"star\" />\n * <com-icon name=\"check\" color=\"success\" size=\"sm\" />\n * <com-icon name=\"alert-triangle\" color=\"warn\" />\n * ```\n *\n * @example Direct icon reference (no provider needed)\n * ```html\n * <com-icon [img]=\"StarIcon\" color=\"accent\" size=\"2xl\" />\n * ```\n *\n * @example Accessible icon (not decorative)\n * ```html\n * <com-icon name=\"check\" color=\"success\" ariaLabel=\"Task completed\" />\n * ```\n *\n * @example Inline with text (inherits parent color)\n * ```html\n * <span class=\"text-primary\">\n * <com-icon name=\"star\" size=\"sm\" /> Favorite\n * </span>\n * ```\n */\n@Component({\n selector: 'com-icon',\n template: `\n @if (img(); as imgData) {\n <lucide-icon\n [img]=\"imgData\"\n [size]=\"sizeInPx()\"\n [strokeWidth]=\"strokeWidth()\"\n [absoluteStrokeWidth]=\"absoluteStrokeWidth()\"\n color=\"currentColor\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-hidden]=\"ariaLabel() ? null : 'true'\"\n />\n } @else if (name(); as iconName) {\n <lucide-icon\n [name]=\"iconName\"\n [size]=\"sizeInPx()\"\n [strokeWidth]=\"strokeWidth()\"\n [absoluteStrokeWidth]=\"absoluteStrokeWidth()\"\n color=\"currentColor\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-hidden]=\"ariaLabel() ? null : 'true'\"\n />\n }\n `,\n host: {\n '[class]': 'hostClasses()',\n },\n imports: [LucideAngularModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ComIcon {\n /** Icon name in kebab-case (e.g. 'chevron-right'). Requires provideComIcons registration. */\n readonly name: InputSignal<string | undefined> = input<string>();\n\n /** Direct Lucide icon reference. Takes precedence over `name`. */\n readonly img: InputSignal<LucideIconData | undefined> = input<LucideIconData>();\n\n /** Semantic color variant. Defaults to 'current' (inherits from parent). */\n readonly color: InputSignal<IconColor> = input<IconColor>('current');\n\n /** Size variant. Defaults to 'lg' (24px). */\n readonly size: InputSignal<IconSize> = input<IconSize>('lg');\n\n /** Stroke width. Defaults to 2. */\n readonly strokeWidth: InputSignal<number> = input<number>(2);\n\n /** When true, stroke width doesn't scale with icon size. */\n readonly absoluteStrokeWidth: InputSignal<boolean> = input<boolean>(false);\n\n /** Applies aria-label and removes aria-hidden. Use for meaningful icons. */\n readonly ariaLabel: InputSignal<string | undefined> = input<string>();\n\n protected readonly sizeInPx: Signal<number> = computed(() => ICON_SIZE_PX[this.size()]);\n protected readonly hostClasses: Signal<string> = computed(() =>\n iconVariants({ color: this.color(), size: this.size() })\n );\n}\n","import type { Provider } from '@angular/core';\nimport { LUCIDE_ICONS, LucideIconProvider } from 'lucide-angular';\nimport type { LucideIcons } from 'lucide-angular';\n\n/**\n * Provides Lucide icons for use with `com-icon`.\n *\n * Register icons in your application config to use them by name:\n *\n * @example\n * ```ts\n * // app.config.ts\n * import { provideComIcons } from 'ngx-com/components/icon';\n * import { ChevronRight, Star, Check, AlertTriangle } from 'lucide-angular';\n *\n * export const appConfig = {\n * providers: [\n * provideComIcons({ ChevronRight, Star, Check, AlertTriangle })\n * ]\n * };\n * ```\n */\nexport function provideComIcons(icons: LucideIcons): Provider {\n return { provide: LUCIDE_ICONS, useValue: new LucideIconProvider(icons) };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|