@allxsmith/bestax-bulma 2.3.2 → 2.4.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/dist/index.cjs.js +128 -64
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +128 -64
- package/dist/index.esm.js.map +1 -1
- package/dist/types/components/Card.d.ts +1 -1
- package/dist/types/components/Modal.d.ts +46 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -568,11 +568,11 @@ const Breadcrumb = ({ className, alignment, separator, size, children, ...props
|
|
|
568
568
|
return (jsx("nav", { className: breadcrumbClasses, "aria-label": "breadcrumbs", ...rest, children: jsx("ul", { children: children }) }));
|
|
569
569
|
};
|
|
570
570
|
|
|
571
|
-
const renderFooter = (footer) => {
|
|
571
|
+
const renderFooter = (footer, classPrefix) => {
|
|
572
572
|
if (!footer)
|
|
573
573
|
return null;
|
|
574
574
|
const items = Array.isArray(footer) ? footer : [footer];
|
|
575
|
-
return items.map((item, idx) => (jsx("span", { className:
|
|
575
|
+
return items.map((item, idx) => (jsx("span", { className: prefixedClassNames(classPrefix, 'card-footer-item'), children: item }, idx)));
|
|
576
576
|
};
|
|
577
577
|
const hasCompoundComponents = (children) => {
|
|
578
578
|
return React.Children.toArray(children).some(child => {
|
|
@@ -587,6 +587,7 @@ const hasCompoundComponents = (children) => {
|
|
|
587
587
|
});
|
|
588
588
|
};
|
|
589
589
|
const CardComponent = ({ className, children, textColor, bgColor, hasShadow = true, header, headerCentered, headerIcon, footer, image, imageAlt, ...props }) => {
|
|
590
|
+
const { classPrefix } = useConfig();
|
|
590
591
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
591
592
|
color: textColor,
|
|
592
593
|
backgroundColor: bgColor,
|
|
@@ -596,36 +597,42 @@ const CardComponent = ({ className, children, textColor, bgColor, hasShadow = tr
|
|
|
596
597
|
'is-shadowless': !hasShadow,
|
|
597
598
|
});
|
|
598
599
|
const cardClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
|
|
599
|
-
const renderHeader = (header, headerIcon, headerCentered) => {
|
|
600
|
+
const renderHeader = (header, headerIcon, headerCentered, classPrefix) => {
|
|
600
601
|
if (!header && !headerIcon)
|
|
601
602
|
return null;
|
|
602
|
-
return (jsxs("header", { className:
|
|
603
|
+
return (jsxs("header", { className: prefixedClassNames(classPrefix, 'card-header'), children: [header && (jsx("div", { className: prefixedClassNames(classPrefix, 'card-header-title', {
|
|
603
604
|
'is-centered': headerCentered,
|
|
604
605
|
}), children: header })), headerIcon] }));
|
|
605
606
|
};
|
|
606
|
-
return (jsxs("div", { className: cardClasses, ...rest, children: [renderHeader(header, headerIcon, headerCentered), image && (jsx("div", { className:
|
|
607
|
+
return (jsxs("div", { className: cardClasses, ...rest, children: [renderHeader(header, headerIcon, headerCentered, classPrefix), image && (jsx("div", { className: prefixedClassNames(classPrefix, 'card-image'), children: typeof image === 'string' ? (jsx("figure", { className: prefixedClassNames(classPrefix, 'image'), children: jsx("img", { src: image, alt: imageAlt !== null && imageAlt !== void 0 ? imageAlt : 'Card image' }) })) : (image) })), typeof children !== 'undefined' &&
|
|
607
608
|
children !== null &&
|
|
608
609
|
children !== '' &&
|
|
609
|
-
!hasCompoundComponents(children) && (jsx("div", { className:
|
|
610
|
+
!hasCompoundComponents(children) && (jsx("div", { className: prefixedClassNames(classPrefix, 'card-content'), children: children })), typeof children !== 'undefined' &&
|
|
610
611
|
children !== null &&
|
|
611
612
|
children !== '' &&
|
|
612
613
|
hasCompoundComponents(children) &&
|
|
613
|
-
children, footer && (jsx("footer", { className:
|
|
614
|
+
children, footer && (jsx("footer", { className: prefixedClassNames(classPrefix, 'card-footer'), children: Array.isArray(footer)
|
|
615
|
+
? footer.map((item, idx) => (jsx("span", { className: prefixedClassNames(classPrefix, 'card-footer-item'), children: item }, idx)))
|
|
616
|
+
: footer && (jsx("span", { className: prefixedClassNames(classPrefix, 'card-footer-item'), children: footer })) }))] }));
|
|
614
617
|
};
|
|
615
618
|
const CardHeader = ({ className, children, centered, ...props }) => {
|
|
619
|
+
const { classPrefix } = useConfig();
|
|
616
620
|
const hasHeaderTitle = React.Children.toArray(children).some(child => React.isValidElement(child) &&
|
|
617
621
|
typeof child.type === 'function' &&
|
|
618
622
|
child.type === CardHeaderTitle);
|
|
619
|
-
|
|
623
|
+
const headerClasses = usePrefixedClassNames('card-header');
|
|
624
|
+
return (jsx("header", { className: classNames(headerClasses, className), ...props, children: hasHeaderTitle ? (children) : (jsx("div", { className: classNames(prefixedClassNames(classPrefix, 'card-header-title', {
|
|
620
625
|
'is-centered': centered,
|
|
621
|
-
}), children: children })) }));
|
|
622
|
-
};
|
|
623
|
-
const CardHeaderTitle = ({ className, children, centered, ...props }) => (jsx("div", { className: classNames('card-header-title', {
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
const
|
|
627
|
-
const
|
|
628
|
-
const
|
|
626
|
+
}), className), children: children })) }));
|
|
627
|
+
};
|
|
628
|
+
const CardHeaderTitle = ({ className, children, centered, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('card-header-title', {
|
|
629
|
+
'is-centered': centered,
|
|
630
|
+
}), className), ...props, children: children }));
|
|
631
|
+
const CardHeaderIcon = ({ className, children, ...props }) => (jsx("button", { className: classNames(usePrefixedClassNames('card-header-icon'), className), "aria-label": props['aria-label'] || 'more options', ...props, children: children }));
|
|
632
|
+
const CardImage = ({ className, children, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('card-image'), className), ...props, children: children }));
|
|
633
|
+
const CardContent = ({ className, children, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('card-content'), className), ...props, children: children }));
|
|
634
|
+
const CardFooter = ({ className, children, ...props }) => (jsx("footer", { className: classNames(usePrefixedClassNames('card-footer'), className), ...props, children: children }));
|
|
635
|
+
const CardFooterItem = ({ className, children, ...props }) => (jsx("span", { className: classNames(usePrefixedClassNames('card-footer-item'), className), ...props, children: children }));
|
|
629
636
|
const CardWithSubComponents = CardComponent;
|
|
630
637
|
const CardHeaderWithTitle = CardHeader;
|
|
631
638
|
CardHeaderWithTitle.Title = CardHeaderTitle;
|
|
@@ -683,13 +690,15 @@ const DropdownComponent = ({ label, children, className, menuClassName, active:
|
|
|
683
690
|
}
|
|
684
691
|
};
|
|
685
692
|
const dropdownClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
|
|
686
|
-
return (jsxs("div", { className: dropdownClasses, ref: dropdownRef, id: id, "data-testid": "dropdown-root", ...rest, children: [jsx("div", { className:
|
|
693
|
+
return (jsxs("div", { className: dropdownClasses, ref: dropdownRef, id: id, "data-testid": "dropdown-root", ...rest, children: [jsx("div", { className: usePrefixedClassNames('dropdown-trigger'), children: jsxs("button", { className: buttonClass, "aria-haspopup": "true", "aria-controls": id ? `${id}-menu` : undefined, "aria-expanded": active, onClick: handleToggle, disabled: disabled, type: "button", children: [jsx("span", { children: label }), jsx("span", { className: usePrefixedClassNames('icon', 'is-small'), "aria-hidden": "true", children: jsx("i", { className: "fas fa-angle-down" }) })] }) }), jsx("div", { className: classNames(usePrefixedClassNames('dropdown-menu'), menuClassName), id: id ? `${id}-menu` : undefined, role: "menu", "data-testid": "dropdown-menu", children: jsx("div", { className: usePrefixedClassNames('dropdown-content'), onClick: handleMenuClick, tabIndex: -1, children: children }) })] }));
|
|
687
694
|
};
|
|
688
695
|
const DropdownItem = ({ children, active, className, as: Component = 'a', ...props }) => {
|
|
689
696
|
const { bulmaHelperClasses, rest } = useBulmaClasses(props);
|
|
690
|
-
return (jsx(Component, { className: classNames('dropdown-item',
|
|
697
|
+
return (jsx(Component, { className: classNames(usePrefixedClassNames('dropdown-item', {
|
|
698
|
+
'is-active': active,
|
|
699
|
+
}), bulmaHelperClasses, className), tabIndex: 0, role: "menuitem", "data-testid": "dropdown-item", ...rest, children: children }));
|
|
691
700
|
};
|
|
692
|
-
const DropdownDivider = () => (jsx("hr", { className:
|
|
701
|
+
const DropdownDivider = () => (jsx("hr", { className: usePrefixedClassNames('dropdown-divider') }));
|
|
693
702
|
const Dropdown = Object.assign(DropdownComponent, {
|
|
694
703
|
Item: DropdownItem,
|
|
695
704
|
Divider: DropdownDivider,
|
|
@@ -703,19 +712,19 @@ const MenuComponent = ({ className, children, ...props }) => {
|
|
|
703
712
|
};
|
|
704
713
|
const MenuLabel = ({ className, children, ...props }) => {
|
|
705
714
|
const { bulmaHelperClasses, rest } = useBulmaClasses(props);
|
|
706
|
-
return (jsx("p", { className: classNames('menu-label', className, bulmaHelperClasses), ...rest, children: children }));
|
|
715
|
+
return (jsx("p", { className: classNames(usePrefixedClassNames('menu-label'), className, bulmaHelperClasses), ...rest, children: children }));
|
|
707
716
|
};
|
|
708
717
|
const MenuList = ({ className, children, ...props }) => {
|
|
709
718
|
const level = useContext(MenuListLevelContext);
|
|
710
719
|
const { bulmaHelperClasses, rest } = useBulmaClasses(props);
|
|
711
720
|
const ulClass = classNames(className, bulmaHelperClasses, {
|
|
712
|
-
'menu-list': level === 0,
|
|
721
|
+
[usePrefixedClassNames('menu-list')]: level === 0,
|
|
713
722
|
});
|
|
714
723
|
return (jsx(MenuListLevelContext.Provider, { value: level + 1, children: jsx("ul", { className: ulClass, ...rest, children: children }) }));
|
|
715
724
|
};
|
|
716
725
|
const MenuItem = ({ className, children, active, href, as: Component = 'a', 'data-testid': testId, ...rest }) => {
|
|
717
726
|
const { bulmaHelperClasses, rest: bulmaRest } = useBulmaClasses(rest);
|
|
718
|
-
const itemClass = classNames({ 'is-active': active }, bulmaHelperClasses);
|
|
727
|
+
const itemClass = classNames({ [usePrefixedClassNames('is-active')]: active }, bulmaHelperClasses);
|
|
719
728
|
const { style, id, title, role, tabIndex, ...linkProps } = bulmaRest;
|
|
720
729
|
const labelChildren = [];
|
|
721
730
|
const nestedMenuLists = [];
|
|
@@ -742,6 +751,7 @@ const Menu = Object.assign(MenuComponent, {
|
|
|
742
751
|
});
|
|
743
752
|
|
|
744
753
|
const MessageComponent = ({ className, title, textColor, color, bgColor, onClose, children, ...props }) => {
|
|
754
|
+
const { classPrefix } = useConfig();
|
|
745
755
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
746
756
|
color: textColor,
|
|
747
757
|
backgroundColor: bgColor,
|
|
@@ -752,20 +762,72 @@ const MessageComponent = ({ className, title, textColor, color, bgColor, onClose
|
|
|
752
762
|
});
|
|
753
763
|
const deleteClass = usePrefixedClassNames('delete');
|
|
754
764
|
const messageClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
|
|
755
|
-
return (jsxs("article", { className: messageClasses, ...rest, "data-testid": "message", children: [(title || onClose) && (jsxs("div", { className:
|
|
765
|
+
return (jsxs("article", { className: messageClasses, ...rest, "data-testid": "message", children: [(title || onClose) && (jsxs("div", { className: prefixedClassNames(classPrefix, 'message-header'), children: [title && jsx("span", { children: title }), onClose && (jsx("button", { className: deleteClass, "aria-label": "delete", onClick: onClose, type: "button", "data-testid": "message-close" }))] })), children && (jsx("div", { className: prefixedClassNames(classPrefix, 'message-body'), "data-testid": "message-body", children: children }))] }));
|
|
756
766
|
};
|
|
757
|
-
const MessageHeader = ({ className, children, ...props }) => (jsx("div", { className: classNames('message-header', className), ...props, children: children }));
|
|
758
|
-
const MessageBody = ({ className, children, ...props }) => (jsx("div", { className: classNames('message-body', className), ...props, children: children }));
|
|
767
|
+
const MessageHeader = ({ className, children, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('message-header'), className), ...props, children: children }));
|
|
768
|
+
const MessageBody = ({ className, children, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('message-body'), className), ...props, children: children }));
|
|
759
769
|
const MessageWithSubComponents = MessageComponent;
|
|
760
770
|
MessageWithSubComponents.Header = MessageHeader;
|
|
761
771
|
MessageWithSubComponents.Body = MessageBody;
|
|
762
772
|
|
|
763
|
-
const
|
|
773
|
+
const ModalBackground = ({ className, ...props }) => {
|
|
774
|
+
const classes = classNames(usePrefixedClassNames('modal-background'), className);
|
|
775
|
+
return jsx("div", { className: classes, ...props });
|
|
776
|
+
};
|
|
777
|
+
const ModalContent = ({ className, ...props }) => {
|
|
778
|
+
const classes = classNames(usePrefixedClassNames('modal-content'), className);
|
|
779
|
+
return jsx("div", { className: classes, ...props });
|
|
780
|
+
};
|
|
781
|
+
const ModalCardHead = ({ className, ...props }) => {
|
|
782
|
+
const classes = classNames(usePrefixedClassNames('modal-card-head'), className);
|
|
783
|
+
return jsx("header", { className: classes, ...props });
|
|
784
|
+
};
|
|
785
|
+
const ModalCardTitle = ({ className, ...props }) => {
|
|
786
|
+
const classes = classNames(usePrefixedClassNames('modal-card-title'), className);
|
|
787
|
+
return jsx("p", { className: classes, ...props });
|
|
788
|
+
};
|
|
789
|
+
const ModalCardBody = ({ className, ...props }) => {
|
|
790
|
+
const classes = classNames(usePrefixedClassNames('modal-card-body'), className);
|
|
791
|
+
return jsx("section", { className: classes, ...props });
|
|
792
|
+
};
|
|
793
|
+
const ModalCardFoot = ({ className, ...props }) => {
|
|
794
|
+
const classes = classNames(usePrefixedClassNames('modal-card-foot'), className);
|
|
795
|
+
return jsx("footer", { className: classes, ...props });
|
|
796
|
+
};
|
|
797
|
+
const ModalCard = ({ className, ...props }) => {
|
|
798
|
+
const classes = classNames(usePrefixedClassNames('modal-card'), className);
|
|
799
|
+
return jsx("div", { className: classes, ...props });
|
|
800
|
+
};
|
|
801
|
+
ModalCard.Head = ModalCardHead;
|
|
802
|
+
ModalCard.Title = ModalCardTitle;
|
|
803
|
+
ModalCard.Body = ModalCardBody;
|
|
804
|
+
ModalCard.Foot = ModalCardFoot;
|
|
805
|
+
const ModalClose = ({ className, size = 'large', variant = 'delete', ...props }) => {
|
|
806
|
+
const classes = classNames(usePrefixedClassNames(variant === 'delete' ? 'delete' : 'modal-close', variant === 'floating' && size && { [`is-${size}`]: true }), className);
|
|
807
|
+
return (jsx("button", { className: classes, "aria-label": "close", type: "button", ...props }));
|
|
808
|
+
};
|
|
809
|
+
const ModalRoot = ({ active, isActive, onClose, className, textColor, bgColor, modalCardTitle, modalCardFoot, type, children, ...props }) => {
|
|
810
|
+
var _a;
|
|
811
|
+
const { classPrefix } = useConfig();
|
|
764
812
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
765
813
|
color: textColor,
|
|
766
814
|
backgroundColor: bgColor,
|
|
767
815
|
...props,
|
|
768
816
|
});
|
|
817
|
+
const isModalActive = (_a = active !== null && active !== void 0 ? active : isActive) !== null && _a !== void 0 ? _a : false;
|
|
818
|
+
const hasCompoundComponents = React.Children.toArray(children).some(child => React.isValidElement(child) &&
|
|
819
|
+
(child.type === ModalBackground ||
|
|
820
|
+
child.type === ModalContent ||
|
|
821
|
+
child.type === ModalCard ||
|
|
822
|
+
child.type === ModalClose));
|
|
823
|
+
const bulmaClasses = usePrefixedClassNames('modal', {
|
|
824
|
+
'is-active': isModalActive,
|
|
825
|
+
});
|
|
826
|
+
const deleteClass = usePrefixedClassNames('delete');
|
|
827
|
+
const modalClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
|
|
828
|
+
if (hasCompoundComponents) {
|
|
829
|
+
return (jsx("div", { className: modalClasses, ...rest, "data-testid": "modal", children: children }));
|
|
830
|
+
}
|
|
769
831
|
let isModalCard;
|
|
770
832
|
if (type === 'card')
|
|
771
833
|
isModalCard = true;
|
|
@@ -773,13 +835,13 @@ const Modal = ({ active = false, onClose, className, textColor, bgColor, modalCa
|
|
|
773
835
|
isModalCard = false;
|
|
774
836
|
else
|
|
775
837
|
isModalCard = !!modalCardTitle || !!modalCardFoot;
|
|
776
|
-
|
|
777
|
-
'is-active': active,
|
|
778
|
-
});
|
|
779
|
-
const deleteClass = usePrefixedClassNames('delete');
|
|
780
|
-
const modalClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
|
|
781
|
-
return (jsxs("div", { className: modalClasses, ...rest, "data-testid": "modal", children: [jsx("div", { className: "modal-background", onClick: onClose, "data-testid": "modal-background" }), isModalCard ? (jsxs("div", { className: "modal-card", children: [modalCardTitle && (jsxs("header", { className: "modal-card-head", children: [jsx("p", { className: "modal-card-title", children: modalCardTitle }), onClose && (jsx("button", { className: deleteClass, "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close" }))] })), jsx("section", { className: "modal-card-body", "data-testid": "modal-body", children: children }), modalCardFoot && (jsx("footer", { className: "modal-card-foot", children: modalCardFoot }))] })) : (jsx("div", { className: "modal-content", "data-testid": "modal-content", children: children })), (!isModalCard || (!modalCardTitle && onClose)) && onClose && (jsx("button", { className: "modal-close is-large", "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close-float" }))] }));
|
|
838
|
+
return (jsxs("div", { className: modalClasses, ...rest, "data-testid": "modal", children: [jsx("div", { className: prefixedClassNames(classPrefix, 'modal-background'), onClick: onClose, "data-testid": "modal-background" }), isModalCard ? (jsxs("div", { className: prefixedClassNames(classPrefix, 'modal-card'), children: [modalCardTitle && (jsxs("header", { className: prefixedClassNames(classPrefix, 'modal-card-head'), children: [jsx("p", { className: prefixedClassNames(classPrefix, 'modal-card-title'), children: modalCardTitle }), onClose && (jsx("button", { className: deleteClass, "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close" }))] })), jsx("section", { className: prefixedClassNames(classPrefix, 'modal-card-body'), "data-testid": "modal-body", children: children }), modalCardFoot && (jsx("footer", { className: prefixedClassNames(classPrefix, 'modal-card-foot'), children: modalCardFoot }))] })) : (jsx("div", { className: prefixedClassNames(classPrefix, 'modal-content'), "data-testid": "modal-content", children: children })), (!isModalCard || (!modalCardTitle && onClose)) && onClose && (jsx("button", { className: prefixedClassNames(classPrefix, 'modal-close', 'is-large'), "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close-float" }))] }));
|
|
782
839
|
};
|
|
840
|
+
ModalRoot.Background = ModalBackground;
|
|
841
|
+
ModalRoot.Content = ModalContent;
|
|
842
|
+
ModalRoot.Card = ModalCard;
|
|
843
|
+
ModalRoot.Close = ModalClose;
|
|
844
|
+
const Modal = ModalRoot;
|
|
783
845
|
|
|
784
846
|
const Navbar = ({ className, textColor, bgColor, color, transparent, fixed, children, ...props }) => {
|
|
785
847
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
@@ -800,7 +862,7 @@ const NavbarBrand = ({ className, children, textColor, ...props }) => {
|
|
|
800
862
|
color: textColor,
|
|
801
863
|
...props,
|
|
802
864
|
});
|
|
803
|
-
return (jsx("div", { className: classNames('navbar-brand', bulmaHelperClasses, className), ...rest, children: children }));
|
|
865
|
+
return (jsx("div", { className: classNames(usePrefixedClassNames('navbar-brand'), bulmaHelperClasses, className), ...rest, children: children }));
|
|
804
866
|
};
|
|
805
867
|
const NavbarItem = ({ className, as: Component = 'a', active, textColor, bgColor, children, ...props }) => {
|
|
806
868
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
@@ -808,50 +870,50 @@ const NavbarItem = ({ className, as: Component = 'a', active, textColor, bgColor
|
|
|
808
870
|
backgroundColor: bgColor,
|
|
809
871
|
...props,
|
|
810
872
|
});
|
|
811
|
-
return (jsx(Component, { className: classNames('navbar-item',
|
|
873
|
+
return (jsx(Component, { className: classNames(usePrefixedClassNames('navbar-item', {
|
|
812
874
|
'is-active': active,
|
|
813
|
-
}), ...rest, children: children }));
|
|
875
|
+
}), bulmaHelperClasses, className), ...rest, children: children }));
|
|
814
876
|
};
|
|
815
877
|
const NavbarBurger = ({ className, active, children, ...props }) => {
|
|
816
878
|
var _a;
|
|
817
879
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
818
880
|
...props,
|
|
819
881
|
});
|
|
820
|
-
return (jsxs("button", { type: "button", className: classNames('navbar-burger',
|
|
882
|
+
return (jsxs("button", { type: "button", className: classNames(usePrefixedClassNames('navbar-burger', {
|
|
821
883
|
'is-active': active,
|
|
822
|
-
}), "aria-label": props['aria-label'] || 'menu', "aria-expanded": (_a = props['aria-expanded']) !== null && _a !== void 0 ? _a : !!active, ...rest, children: [jsx("span", { "aria-hidden": "true" }), jsx("span", { "aria-hidden": "true" }), jsx("span", { "aria-hidden": "true" }), children] }));
|
|
884
|
+
}), bulmaHelperClasses, className), "aria-label": props['aria-label'] || 'menu', "aria-expanded": (_a = props['aria-expanded']) !== null && _a !== void 0 ? _a : !!active, ...rest, children: [jsx("span", { "aria-hidden": "true" }), jsx("span", { "aria-hidden": "true" }), jsx("span", { "aria-hidden": "true" }), children] }));
|
|
823
885
|
};
|
|
824
886
|
const NavbarMenu = ({ className, active, children, ...props }) => {
|
|
825
887
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
826
888
|
...props,
|
|
827
889
|
});
|
|
828
|
-
return (jsx("div", { className: classNames('navbar-menu',
|
|
890
|
+
return (jsx("div", { className: classNames(usePrefixedClassNames('navbar-menu', {
|
|
829
891
|
'is-active': active,
|
|
830
|
-
}), ...rest, children: children }));
|
|
892
|
+
}), bulmaHelperClasses, className), ...rest, children: children }));
|
|
831
893
|
};
|
|
832
894
|
const NavbarStart = ({ className, children, ...props }) => {
|
|
833
895
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
834
896
|
...props,
|
|
835
897
|
});
|
|
836
|
-
return (jsx("div", { className: classNames('navbar-start', bulmaHelperClasses, className), ...rest, children: children }));
|
|
898
|
+
return (jsx("div", { className: classNames(usePrefixedClassNames('navbar-start'), bulmaHelperClasses, className), ...rest, children: children }));
|
|
837
899
|
};
|
|
838
900
|
const NavbarEnd = ({ className, children, ...props }) => {
|
|
839
901
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
840
902
|
...props,
|
|
841
903
|
});
|
|
842
|
-
return (jsx("div", { className: classNames('navbar-end', bulmaHelperClasses, className), ...rest, children: children }));
|
|
904
|
+
return (jsx("div", { className: classNames(usePrefixedClassNames('navbar-end'), bulmaHelperClasses, className), ...rest, children: children }));
|
|
843
905
|
};
|
|
844
|
-
const NavbarDropdown = ({ className, right, up, hoverable, active, children, ...props }) => (jsx("div", { className: classNames('navbar-item', 'has-dropdown', {
|
|
906
|
+
const NavbarDropdown = ({ className, right, up, hoverable, active, children, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('navbar-item', 'has-dropdown', {
|
|
845
907
|
'is-right': right,
|
|
846
908
|
'is-up': up,
|
|
847
909
|
'is-hoverable': hoverable,
|
|
848
910
|
'is-active': active,
|
|
849
|
-
}, className), ...props, children: children }));
|
|
850
|
-
const NavbarDropdownMenu = ({ className, right, up, children, ...props }) => (jsx("div", { className: classNames('navbar-dropdown', {
|
|
911
|
+
}), className), ...props, children: children }));
|
|
912
|
+
const NavbarDropdownMenu = ({ className, right, up, children, ...props }) => (jsx("div", { className: classNames(usePrefixedClassNames('navbar-dropdown', {
|
|
851
913
|
'is-right': right,
|
|
852
914
|
'is-up': up,
|
|
853
|
-
}, className), ...props, children: children }));
|
|
854
|
-
const NavbarDivider = props => jsx("hr", { className:
|
|
915
|
+
}), className), ...props, children: children }));
|
|
916
|
+
const NavbarDivider = props => (jsx("hr", { className: usePrefixedClassNames('navbar-divider'), ...props }));
|
|
855
917
|
Navbar.Brand = NavbarBrand;
|
|
856
918
|
Navbar.Item = NavbarItem;
|
|
857
919
|
Navbar.Burger = NavbarBurger;
|
|
@@ -862,7 +924,7 @@ Navbar.Dropdown = NavbarDropdown;
|
|
|
862
924
|
Navbar.DropdownMenu = NavbarDropdownMenu;
|
|
863
925
|
Navbar.Divider = NavbarDivider;
|
|
864
926
|
|
|
865
|
-
const PaginationPrevious = ({ className, disabled, children, ...props }) => (jsx("a", { className: classNames('pagination-previous', className, {
|
|
927
|
+
const PaginationPrevious = ({ className, disabled, children, ...props }) => (jsx("a", { className: classNames(usePrefixedClassNames('pagination-previous'), className, {
|
|
866
928
|
'is-disabled': disabled,
|
|
867
929
|
}), "aria-disabled": disabled, tabIndex: disabled ? -1 : 0, ...props, onClick: disabled
|
|
868
930
|
? e => {
|
|
@@ -870,7 +932,7 @@ const PaginationPrevious = ({ className, disabled, children, ...props }) => (jsx
|
|
|
870
932
|
e.stopPropagation();
|
|
871
933
|
}
|
|
872
934
|
: props.onClick, children: children }));
|
|
873
|
-
const PaginationNext = ({ className, disabled, children, ...props }) => (jsx("a", { className: classNames('pagination-next', className, {
|
|
935
|
+
const PaginationNext = ({ className, disabled, children, ...props }) => (jsx("a", { className: classNames(usePrefixedClassNames('pagination-next'), className, {
|
|
874
936
|
'is-disabled': disabled,
|
|
875
937
|
}), "aria-disabled": disabled, tabIndex: disabled ? -1 : 0, ...props, onClick: disabled
|
|
876
938
|
? e => {
|
|
@@ -899,7 +961,7 @@ const PaginationList = ({ className, textColor, bgColor, children, ...props }) =
|
|
|
899
961
|
backgroundColor: bgColor,
|
|
900
962
|
...props,
|
|
901
963
|
});
|
|
902
|
-
return (jsx("ul", { className: classNames('pagination-list', bulmaHelperClasses, className), ...rest, children: children }));
|
|
964
|
+
return (jsx("ul", { className: classNames(usePrefixedClassNames('pagination-list'), bulmaHelperClasses, className), ...rest, children: children }));
|
|
903
965
|
};
|
|
904
966
|
const PaginationLink = ({ className, textColor, bgColor, active, disabled, onClick, children, ...props }) => {
|
|
905
967
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
@@ -917,12 +979,12 @@ const PaginationLink = ({ className, textColor, bgColor, active, disabled, onCli
|
|
|
917
979
|
onClick(e);
|
|
918
980
|
}
|
|
919
981
|
};
|
|
920
|
-
return (jsx("li", { children: jsx("a", { className: classNames('pagination-link', bulmaHelperClasses, className, {
|
|
982
|
+
return (jsx("li", { children: jsx("a", { className: classNames(usePrefixedClassNames('pagination-link'), bulmaHelperClasses, className, {
|
|
921
983
|
'is-current': active,
|
|
922
984
|
'is-disabled': disabled,
|
|
923
985
|
}), "aria-current": active ? 'page' : undefined, "aria-disabled": disabled, tabIndex: disabled ? -1 : 0, onClick: handleClick, ...rest, children: children }) }));
|
|
924
986
|
};
|
|
925
|
-
const PaginationEllipsis = props => (jsx("li", { children: jsx("span", { className:
|
|
987
|
+
const PaginationEllipsis = props => (jsx("li", { children: jsx("span", { className: usePrefixedClassNames('pagination-ellipsis'), ...props, children: "\u2026" }) }));
|
|
926
988
|
Pagination.Link = PaginationLink;
|
|
927
989
|
Pagination.List = PaginationList;
|
|
928
990
|
Pagination.Ellipsis = PaginationEllipsis;
|
|
@@ -940,16 +1002,16 @@ const Panel = ({ color, className, children, ...props }) => {
|
|
|
940
1002
|
const panelClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
|
|
941
1003
|
return (jsx("nav", { className: panelClasses, ...rest, children: children }));
|
|
942
1004
|
};
|
|
943
|
-
const PanelHeading = ({ className, children, ...props }) => (jsx("p", { className: classNames('panel-heading', className), ...props, children: children }));
|
|
944
|
-
const PanelTabs = ({ className, children, ...props }) => (jsx("p", { className: classNames('panel-tabs', className), ...props, children: children }));
|
|
945
|
-
const PanelBlock = ({ className, active, children, ...props }) => (jsx("a", { className: classNames('panel-block',
|
|
946
|
-
const PanelIcon = ({ className, children, ...props }) => (jsx("span", { className: classNames('panel-icon', className), ...props, children: children }));
|
|
1005
|
+
const PanelHeading = ({ className, children, ...props }) => (jsx("p", { className: classNames(usePrefixedClassNames('panel-heading'), className), ...props, children: children }));
|
|
1006
|
+
const PanelTabs = ({ className, children, ...props }) => (jsx("p", { className: classNames(usePrefixedClassNames('panel-tabs'), className), ...props, children: children }));
|
|
1007
|
+
const PanelBlock = ({ className, active, children, ...props }) => (jsx("a", { className: classNames(usePrefixedClassNames('panel-block', { 'is-active': active }), className), ...props, children: children }));
|
|
1008
|
+
const PanelIcon = ({ className, children, ...props }) => (jsx("span", { className: classNames(usePrefixedClassNames('panel-icon'), className), ...props, children: children }));
|
|
947
1009
|
const PanelInputBlock = ({ value, onChange, placeholder, iconClassName = 'fas fa-search', ...props }) => {
|
|
948
1010
|
const inputClass = usePrefixedClassNames('input');
|
|
949
|
-
return (jsx("div", { className:
|
|
1011
|
+
return (jsx("div", { className: usePrefixedClassNames('panel-block'), ...props, children: jsxs("p", { className: usePrefixedClassNames('control', 'has-icons-left'), children: [jsx("input", { className: inputClass, type: "text", placeholder: placeholder, value: value, onChange: onChange }), jsx("span", { className: usePrefixedClassNames('icon', 'is-left'), children: jsx("i", { className: iconClassName, "aria-hidden": "true" }) })] }) }));
|
|
950
1012
|
};
|
|
951
|
-
const PanelCheckboxBlock = ({ checked, onChange, children, ...props }) => (jsxs("label", { className:
|
|
952
|
-
const PanelButtonBlock = ({ children, className, ...props }) => (jsx("div", { className:
|
|
1013
|
+
const PanelCheckboxBlock = ({ checked, onChange, children, ...props }) => (jsxs("label", { className: usePrefixedClassNames('panel-block'), ...props, children: [jsx("input", { type: "checkbox", checked: checked, onChange: onChange }), children] }));
|
|
1014
|
+
const PanelButtonBlock = ({ children, className, ...props }) => (jsx("div", { className: usePrefixedClassNames('panel-block'), children: jsx("button", { className: classNames(usePrefixedClassNames('button', 'is-link', 'is-outlined', 'is-fullwidth'), className), ...props, children: children }) }));
|
|
953
1015
|
Panel.Heading = PanelHeading;
|
|
954
1016
|
Panel.Tabs = PanelTabs;
|
|
955
1017
|
Panel.Block = PanelBlock;
|
|
@@ -975,7 +1037,7 @@ const Tabs = ({ align, size, fullwidth, boxed, toggle, rounded, color, className
|
|
|
975
1037
|
return (jsx("div", { className: tabsClass, ...rest, children: children }));
|
|
976
1038
|
};
|
|
977
1039
|
const TabList = ({ className, children, ...props }) => (jsx("ul", { className: classNames(className), ...props, children: children }));
|
|
978
|
-
const TabItem = ({ active, className, children, onClick, ...props }) => (jsx("li", { className: classNames({ 'is-active': active }, className), onClick: onClick, ...props, children: children }));
|
|
1040
|
+
const TabItem = ({ active, className, children, onClick, ...props }) => (jsx("li", { className: classNames({ [usePrefixedClassNames('is-active')]: active }, className), onClick: onClick, ...props, children: children }));
|
|
979
1041
|
Tabs.List = TabList;
|
|
980
1042
|
Tabs.Item = TabItem;
|
|
981
1043
|
|
|
@@ -1483,6 +1545,7 @@ const Checkboxes = ({ children, className, ...props }) => {
|
|
|
1483
1545
|
const allowedColors = [...validColors, 'inherit', 'current'];
|
|
1484
1546
|
const Control = React.forwardRef(({ as = 'div', hasIconsLeft, hasIconsRight, isLoading, isExpanded, size, textColor, bgColor, iconLeft, iconRight, iconLeftName, iconLeftSize, iconRightName, iconRightSize, className, children, ...props }, ref) => {
|
|
1485
1547
|
const Component = (as === 'p' ? 'p' : 'div');
|
|
1548
|
+
const { classPrefix } = useConfig();
|
|
1486
1549
|
const { textColor: _ignoredTextColor, bgColor: _ignoredBgColor, ...restProps } = props;
|
|
1487
1550
|
const safeTextColor = allowedColors.includes(textColor)
|
|
1488
1551
|
? textColor
|
|
@@ -1517,7 +1580,7 @@ const Control = React.forwardRef(({ as = 'div', hasIconsLeft, hasIconsRight, isL
|
|
|
1517
1580
|
[`is-${size}`]: !!size,
|
|
1518
1581
|
});
|
|
1519
1582
|
const controlClass = classNames(mainClass, bulmaHelperClasses, className);
|
|
1520
|
-
return (jsxs(Component, { className: controlClass, ref: ref, ...restProps, ...rest, children: [children, leftIconProps && leftIconProps.name && (jsx(Icon, { ...leftIconProps, className:
|
|
1583
|
+
return (jsxs(Component, { className: controlClass, ref: ref, ...restProps, ...rest, children: [children, leftIconProps && leftIconProps.name && (jsx(Icon, { ...leftIconProps, className: prefixedClassNames(classPrefix, 'is-left') })), rightIconProps && rightIconProps.name && (jsx(Icon, { ...rightIconProps, className: prefixedClassNames(classPrefix, 'is-right') }))] }));
|
|
1521
1584
|
});
|
|
1522
1585
|
Control.displayName = 'Control';
|
|
1523
1586
|
|
|
@@ -1590,19 +1653,20 @@ Field.Label = FieldLabel;
|
|
|
1590
1653
|
Field.Body = FieldBody;
|
|
1591
1654
|
|
|
1592
1655
|
const File = forwardRef(({ color, size, isBoxed, isFullwidth, isRight, isCentered, hasName, label, iconLeft, iconRight, className, inputClassName, fileName, ...props }, ref) => {
|
|
1656
|
+
const { classPrefix } = useConfig();
|
|
1593
1657
|
const { bulmaHelperClasses, rest } = useBulmaClasses({
|
|
1594
1658
|
color,
|
|
1595
1659
|
...props,
|
|
1596
1660
|
});
|
|
1597
1661
|
let alignmentClass;
|
|
1598
1662
|
if (isRight && isCentered) {
|
|
1599
|
-
alignmentClass = 'is-right';
|
|
1663
|
+
alignmentClass = prefixedClassNames(classPrefix, 'is-right');
|
|
1600
1664
|
}
|
|
1601
1665
|
else if (isRight) {
|
|
1602
|
-
alignmentClass = 'is-right';
|
|
1666
|
+
alignmentClass = prefixedClassNames(classPrefix, 'is-right');
|
|
1603
1667
|
}
|
|
1604
1668
|
else if (isCentered) {
|
|
1605
|
-
alignmentClass = 'is-centered';
|
|
1669
|
+
alignmentClass = prefixedClassNames(classPrefix, 'is-centered');
|
|
1606
1670
|
}
|
|
1607
1671
|
const mainClass = usePrefixedClassNames('file', {
|
|
1608
1672
|
[`is-${color}`]: !!color,
|
|
@@ -1612,7 +1676,7 @@ const File = forwardRef(({ color, size, isBoxed, isFullwidth, isRight, isCentere
|
|
|
1612
1676
|
'has-name': hasName,
|
|
1613
1677
|
});
|
|
1614
1678
|
const fileClass = classNames(mainClass, bulmaHelperClasses, alignmentClass, className);
|
|
1615
|
-
return (jsx("div", { className: fileClass, children: jsxs("label", { className:
|
|
1679
|
+
return (jsx("div", { className: fileClass, children: jsxs("label", { className: usePrefixedClassNames('file-label'), children: [jsx("input", { ref: ref, className: classNames(usePrefixedClassNames('file-input'), inputClassName), type: "file", ...rest }), jsxs("span", { className: usePrefixedClassNames('file-cta'), children: [iconLeft && (jsx("span", { className: prefixedClassNames(classPrefix, 'file-icon'), children: iconLeft })), jsx("span", { className: usePrefixedClassNames('file-label'), children: label || 'Choose a file…' }), iconRight && (jsx("span", { className: prefixedClassNames(classPrefix, 'file-icon'), children: iconRight }))] }), hasName && fileName && (jsx("span", { className: prefixedClassNames(classPrefix, 'file-name'), children: fileName }))] }) }));
|
|
1616
1680
|
});
|
|
1617
1681
|
File.displayName = 'File';
|
|
1618
1682
|
|