ng-blatui 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/ng-blatui.mjs +101 -1
- package/fesm2022/ng-blatui.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ng-blatui.d.ts +36 -1
package/fesm2022/ng-blatui.mjs
CHANGED
|
@@ -3513,6 +3513,106 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImpor
|
|
|
3513
3513
|
}]
|
|
3514
3514
|
}], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
|
|
3515
3515
|
|
|
3516
|
+
/** A bordered group that composes inputs with addons (icons, text, buttons). */
|
|
3517
|
+
class BuiInputGroup {
|
|
3518
|
+
userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
|
|
3519
|
+
computedClass = computed(() => cn('group/input-group relative flex h-9 w-full min-w-0 items-center rounded-md border border-input shadow-xs transition-[color,box-shadow] outline-none has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[>textarea]:h-auto dark:bg-input/30', this.userClass()), /* @ts-ignore */
|
|
3520
|
+
...(ngDevMode ? [{ debugName: "computedClass" }] : /* istanbul ignore next */ []));
|
|
3521
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3522
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.2", type: BuiInputGroup, isStandalone: true, selector: "[buiInputGroup]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "input-group", "role": "group" }, properties: { "class": "computedClass()" } }, ngImport: i0 });
|
|
3523
|
+
}
|
|
3524
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroup, decorators: [{
|
|
3525
|
+
type: Directive,
|
|
3526
|
+
args: [{
|
|
3527
|
+
selector: '[buiInputGroup]',
|
|
3528
|
+
host: { 'data-slot': 'input-group', role: 'group', '[class]': 'computedClass()' },
|
|
3529
|
+
}]
|
|
3530
|
+
}], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
|
|
3531
|
+
const ADDON_ALIGN = {
|
|
3532
|
+
'inline-start': 'order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]',
|
|
3533
|
+
'inline-end': 'order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]',
|
|
3534
|
+
'block-start': 'order-first w-full justify-start px-3 pt-3',
|
|
3535
|
+
'block-end': 'order-last w-full justify-start px-3 pb-3',
|
|
3536
|
+
};
|
|
3537
|
+
class BuiInputGroupAddon {
|
|
3538
|
+
align = input('inline-start', /* @ts-ignore */
|
|
3539
|
+
...(ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []));
|
|
3540
|
+
userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
|
|
3541
|
+
computedClass = computed(() => cn("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4", ADDON_ALIGN[this.align()], this.userClass()), /* @ts-ignore */
|
|
3542
|
+
...(ngDevMode ? [{ debugName: "computedClass" }] : /* istanbul ignore next */ []));
|
|
3543
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupAddon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3544
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.2", type: BuiInputGroupAddon, isStandalone: true, selector: "[buiInputGroupAddon]", inputs: { align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "input-group-addon" }, properties: { "attr.data-align": "align()", "class": "computedClass()" } }, ngImport: i0 });
|
|
3545
|
+
}
|
|
3546
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupAddon, decorators: [{
|
|
3547
|
+
type: Directive,
|
|
3548
|
+
args: [{
|
|
3549
|
+
selector: '[buiInputGroupAddon]',
|
|
3550
|
+
host: {
|
|
3551
|
+
'data-slot': 'input-group-addon',
|
|
3552
|
+
'[attr.data-align]': 'align()',
|
|
3553
|
+
'[class]': 'computedClass()',
|
|
3554
|
+
},
|
|
3555
|
+
}]
|
|
3556
|
+
}], propDecorators: { align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
|
|
3557
|
+
class BuiInputGroupInput {
|
|
3558
|
+
userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
|
|
3559
|
+
computedClass = computed(() => cn('w-full min-w-0 flex-1 rounded-none border-0 bg-transparent px-3 py-1 text-base shadow-none outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50 md:text-sm', this.userClass()), /* @ts-ignore */
|
|
3560
|
+
...(ngDevMode ? [{ debugName: "computedClass" }] : /* istanbul ignore next */ []));
|
|
3561
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupInput, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3562
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.2", type: BuiInputGroupInput, isStandalone: true, selector: "input[buiInputGroupInput], textarea[buiInputGroupInput]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "input-group-control" }, properties: { "class": "computedClass()" } }, ngImport: i0 });
|
|
3563
|
+
}
|
|
3564
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupInput, decorators: [{
|
|
3565
|
+
type: Directive,
|
|
3566
|
+
args: [{
|
|
3567
|
+
selector: 'input[buiInputGroupInput], textarea[buiInputGroupInput]',
|
|
3568
|
+
host: { 'data-slot': 'input-group-control', '[class]': 'computedClass()' },
|
|
3569
|
+
}]
|
|
3570
|
+
}], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
|
|
3571
|
+
class BuiInputGroupText {
|
|
3572
|
+
userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
|
|
3573
|
+
computedClass = computed(() => cn("flex items-center gap-2 text-sm text-muted-foreground [&_svg:not([class*='size-'])]:size-4", this.userClass()), /* @ts-ignore */
|
|
3574
|
+
...(ngDevMode ? [{ debugName: "computedClass" }] : /* istanbul ignore next */ []));
|
|
3575
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupText, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3576
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.2", type: BuiInputGroupText, isStandalone: true, selector: "[buiInputGroupText]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "input-group-text" }, properties: { "class": "computedClass()" } }, ngImport: i0 });
|
|
3577
|
+
}
|
|
3578
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupText, decorators: [{
|
|
3579
|
+
type: Directive,
|
|
3580
|
+
args: [{
|
|
3581
|
+
selector: '[buiInputGroupText]',
|
|
3582
|
+
host: { 'data-slot': 'input-group-text', '[class]': 'computedClass()' },
|
|
3583
|
+
}]
|
|
3584
|
+
}], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
|
|
3585
|
+
const IG_BUTTON_BASE = "inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-ring/50 focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4";
|
|
3586
|
+
const IG_BUTTON_VARIANTS = {
|
|
3587
|
+
ghost: 'hover:bg-accent hover:text-accent-foreground',
|
|
3588
|
+
outline: 'bg-background hover:bg-accent hover:text-accent-foreground border shadow-xs',
|
|
3589
|
+
default: 'bg-primary text-primary-foreground hover:bg-primary/90 shadow-xs',
|
|
3590
|
+
};
|
|
3591
|
+
const IG_BUTTON_SIZES = {
|
|
3592
|
+
xs: 'h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-2 text-xs',
|
|
3593
|
+
sm: 'h-8 gap-1.5 px-2.5',
|
|
3594
|
+
'icon-xs': 'size-6 rounded-[calc(var(--radius)-5px)] p-0',
|
|
3595
|
+
'icon-sm': 'size-8 p-0',
|
|
3596
|
+
};
|
|
3597
|
+
class BuiInputGroupButton {
|
|
3598
|
+
variant = input('ghost', /* @ts-ignore */
|
|
3599
|
+
...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
|
|
3600
|
+
size = input('xs', /* @ts-ignore */
|
|
3601
|
+
...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
|
|
3602
|
+
userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
|
|
3603
|
+
computedClass = computed(() => cn(IG_BUTTON_BASE, IG_BUTTON_VARIANTS[this.variant()], IG_BUTTON_SIZES[this.size()], this.userClass()), /* @ts-ignore */
|
|
3604
|
+
...(ngDevMode ? [{ debugName: "computedClass" }] : /* istanbul ignore next */ []));
|
|
3605
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupButton, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3606
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.2", type: BuiInputGroupButton, isStandalone: true, selector: "button[buiInputGroupButton]", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "type": "button", "data-slot": "input-group-button" }, properties: { "class": "computedClass()" } }, ngImport: i0 });
|
|
3607
|
+
}
|
|
3608
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImport: i0, type: BuiInputGroupButton, decorators: [{
|
|
3609
|
+
type: Directive,
|
|
3610
|
+
args: [{
|
|
3611
|
+
selector: 'button[buiInputGroupButton]',
|
|
3612
|
+
host: { type: 'button', 'data-slot': 'input-group-button', '[class]': 'computedClass()' },
|
|
3613
|
+
}]
|
|
3614
|
+
}], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
|
|
3615
|
+
|
|
3516
3616
|
/*
|
|
3517
3617
|
* Public API Surface of ng-blatui
|
|
3518
3618
|
*/
|
|
@@ -3521,5 +3621,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.2", ngImpor
|
|
|
3521
3621
|
* Generated bundle index. Do not edit.
|
|
3522
3622
|
*/
|
|
3523
3623
|
|
|
3524
|
-
export { BuiAccordion, BuiAccordionContent, BuiAccordionItem, BuiAccordionTrigger, BuiAlert, BuiAlertDescription, BuiAlertTitle, BuiAspectRatio, BuiAvatar, BuiAvatarGroup, BuiBadge, BuiBanner, BuiBreadcrumb, BuiBreadcrumbEllipsis, BuiBreadcrumbItem, BuiBreadcrumbLink, BuiBreadcrumbList, BuiBreadcrumbPage, BuiBreadcrumbSeparator, BuiButton, BuiButtonGroup, BuiButtonGroupText, BuiCard, BuiCardAction, BuiCardContent, BuiCardDescription, BuiCardFooter, BuiCardHeader, BuiCardTitle, BuiCheckbox, BuiCollapsible, BuiCollapsibleContent, BuiCollapsibleTrigger, BuiContainer, BuiCopyButton, BuiDialogContent, BuiDialogDescription, BuiDialogFooter, BuiDialogHeader, BuiDialogTitle, BuiEmpty, BuiEmptyContent, BuiEmptyDescription, BuiEmptyHeader, BuiEmptyMedia, BuiEmptyTitle, BuiField, BuiFieldContent, BuiFieldDescription, BuiFieldError, BuiFieldGroup, BuiFieldLabel, BuiFieldLegend, BuiFieldSeparator, BuiFieldSet, BuiFieldTitle, BuiInput, BuiItem, BuiItemActions, BuiItemContent, BuiItemDescription, BuiItemGroup, BuiItemMedia, BuiItemTitle, BuiKbd, BuiLabel, BuiPagination, BuiPaginationContent, BuiPaginationEllipsis, BuiPaginationItem, BuiPaginationLink, BuiPopover, BuiPopoverContent, BuiProgress, BuiRadioGroup, BuiRadioGroupItem, BuiScrollArea, BuiSeparator, BuiSkeleton, BuiSpinner, BuiSwitch, BuiTabList, BuiTabPanel, BuiTabTrigger, BuiTable, BuiTableBody, BuiTableCaption, BuiTableCell, BuiTableContainer, BuiTableFooter, BuiTableHead, BuiTableHeader, BuiTableRow, BuiTabs, BuiTextarea, BuiThemeCustomizer, BuiToggle, BuiTooltip, BuiTooltipContent, THEME_TOKENS, ThemeStore, buttonVariants, cn, toggleVariants };
|
|
3624
|
+
export { BuiAccordion, BuiAccordionContent, BuiAccordionItem, BuiAccordionTrigger, BuiAlert, BuiAlertDescription, BuiAlertTitle, BuiAspectRatio, BuiAvatar, BuiAvatarGroup, BuiBadge, BuiBanner, BuiBreadcrumb, BuiBreadcrumbEllipsis, BuiBreadcrumbItem, BuiBreadcrumbLink, BuiBreadcrumbList, BuiBreadcrumbPage, BuiBreadcrumbSeparator, BuiButton, BuiButtonGroup, BuiButtonGroupText, BuiCard, BuiCardAction, BuiCardContent, BuiCardDescription, BuiCardFooter, BuiCardHeader, BuiCardTitle, BuiCheckbox, BuiCollapsible, BuiCollapsibleContent, BuiCollapsibleTrigger, BuiContainer, BuiCopyButton, BuiDialogContent, BuiDialogDescription, BuiDialogFooter, BuiDialogHeader, BuiDialogTitle, BuiEmpty, BuiEmptyContent, BuiEmptyDescription, BuiEmptyHeader, BuiEmptyMedia, BuiEmptyTitle, BuiField, BuiFieldContent, BuiFieldDescription, BuiFieldError, BuiFieldGroup, BuiFieldLabel, BuiFieldLegend, BuiFieldSeparator, BuiFieldSet, BuiFieldTitle, BuiInput, BuiInputGroup, BuiInputGroupAddon, BuiInputGroupButton, BuiInputGroupInput, BuiInputGroupText, BuiItem, BuiItemActions, BuiItemContent, BuiItemDescription, BuiItemGroup, BuiItemMedia, BuiItemTitle, BuiKbd, BuiLabel, BuiPagination, BuiPaginationContent, BuiPaginationEllipsis, BuiPaginationItem, BuiPaginationLink, BuiPopover, BuiPopoverContent, BuiProgress, BuiRadioGroup, BuiRadioGroupItem, BuiScrollArea, BuiSeparator, BuiSkeleton, BuiSpinner, BuiSwitch, BuiTabList, BuiTabPanel, BuiTabTrigger, BuiTable, BuiTableBody, BuiTableCaption, BuiTableCell, BuiTableContainer, BuiTableFooter, BuiTableHead, BuiTableHeader, BuiTableRow, BuiTabs, BuiTextarea, BuiThemeCustomizer, BuiToggle, BuiTooltip, BuiTooltipContent, THEME_TOKENS, ThemeStore, buttonVariants, cn, toggleVariants };
|
|
3525
3625
|
//# sourceMappingURL=ng-blatui.mjs.map
|