@allxsmith/bestax-bulma 1.1.1 → 2.0.1

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 CHANGED
@@ -429,6 +429,20 @@ function requireJsxRuntime () {
429
429
 
430
430
  var jsxRuntimeExports = requireJsxRuntime();
431
431
 
432
+ const ConfigContext = React.createContext({});
433
+ const useConfig = () => React.useContext(ConfigContext);
434
+ const ConfigProvider = ({ classPrefix, children, }) => {
435
+ return (jsxRuntimeExports.jsx(ConfigContext.Provider, { value: { classPrefix }, children: children }));
436
+ };
437
+ const useClassPrefix = () => {
438
+ const { classPrefix } = useConfig();
439
+ return classPrefix || '';
440
+ };
441
+ const usePrefixedClass = () => {
442
+ const { classPrefix } = useConfig();
443
+ return (className) => classPrefix ? `${classPrefix}${className}` : className;
444
+ };
445
+
432
446
  function classNames(...args) {
433
447
  const classSet = new Set();
434
448
  function process(item) {
@@ -461,6 +475,55 @@ function classNames(...args) {
461
475
  }
462
476
  return Array.from(classSet).join(' ');
463
477
  }
478
+ function createPrefixedClassNames(classPrefix) {
479
+ return function prefixedClassNames(...args) {
480
+ const classSet = new Set();
481
+ function process(item) {
482
+ if (item === undefined ||
483
+ item === null ||
484
+ item === false ||
485
+ item === '') {
486
+ return;
487
+ }
488
+ if (typeof item === 'string' || typeof item === 'number') {
489
+ for (const cls of String(item).split(/\s+/)) {
490
+ if (cls) {
491
+ classSet.add(`${classPrefix}${cls}`);
492
+ }
493
+ }
494
+ }
495
+ else if (Array.isArray(item)) {
496
+ for (const sub of item)
497
+ process(sub);
498
+ }
499
+ else if (typeof item === 'object') {
500
+ for (const key in item) {
501
+ if (Object.prototype.hasOwnProperty.call(item, key) && item[key]) {
502
+ for (const cls of key.split(/\s+/)) {
503
+ if (cls) {
504
+ classSet.add(`${classPrefix}${cls}`);
505
+ }
506
+ }
507
+ }
508
+ }
509
+ }
510
+ }
511
+ for (const arg of args) {
512
+ process(arg);
513
+ }
514
+ return Array.from(classSet).join(' ');
515
+ };
516
+ }
517
+ function prefixedClassNames(prefix, ...args) {
518
+ if (!prefix) {
519
+ return classNames(...args);
520
+ }
521
+ return createPrefixedClassNames(prefix)(...args);
522
+ }
523
+ function usePrefixedClassNames(...args) {
524
+ const { classPrefix } = useConfig();
525
+ return prefixedClassNames(classPrefix, ...args);
526
+ }
464
527
 
465
528
  const validColors = [
466
529
  'primary',
@@ -585,7 +648,7 @@ const validAlignSelfs = [
585
648
  'baseline',
586
649
  'stretch',
587
650
  ];
588
- const validFlexGrowShrink = ['0', '1'];
651
+ const validFlexGrowShrink = ['0', '1', '2', '3', '4', '5'];
589
652
  const validViewports = [
590
653
  'mobile',
591
654
  'tablet',
@@ -594,15 +657,19 @@ const validViewports = [
594
657
  'fullhd',
595
658
  ];
596
659
  const useBulmaClasses = (props) => {
597
- const { color, backgroundColor, colorShade, m, mt, mr, mb, ml, mx, my, p, pt, pr, pb, pl, px, py, textSize, textAlign, textTransform, textWeight, fontFamily, display, visibility, flexDirection, flexWrap, justifyContent, alignContent, alignItems, alignSelf, flexGrow, flexShrink, float, overflow, overlay, interaction, radius, shadow, responsive, viewport, skeleton, ...rest } = props;
660
+ const { classPrefix } = useConfig();
661
+ const { color, backgroundColor, colorShade, m, mt, mr, mb, ml, mx, my, p, pt, pr, pb, pl, px, py, textSize, textAlign, textTransform, textWeight, fontFamily, display, visibility, flexDirection, flexWrap, justifyContent, alignContent, alignItems, alignSelf, flexGrow, flexShrink, float, overflow, overlay, interaction, radius, shadow, responsive, viewport, displayMobile, displayTablet, displayDesktop, displayWidescreen, displayFullhd, skeleton, ...rest } = props;
598
662
  const bulmaHelperClasses = React.useMemo(() => {
599
663
  const classes = [];
664
+ const addPrefixedClass = (className) => {
665
+ classes.push(classPrefix ? `${classPrefix}${className}` : className);
666
+ };
600
667
  const addClass = (prefix, value, validValues) => {
601
668
  if (value && (!validValues.length || validValues.includes(value))) {
602
669
  const className = viewport && validViewports.includes(viewport)
603
670
  ? `${prefix}-${value}-${viewport}`
604
671
  : `${prefix}-${value}`;
605
- classes.push(className);
672
+ addPrefixedClass(className);
606
673
  }
607
674
  };
608
675
  const addColorClass = (prefix, value, shade) => {
@@ -612,7 +679,7 @@ const useBulmaClasses = (props) => {
612
679
  const className = prefix === 'has-text' && viewport && validViewports.includes(viewport)
613
680
  ? `${prefix}-${value}-${shade}-${viewport}`
614
681
  : `${prefix}-${value}-${shade}`;
615
- classes.push(className);
682
+ addPrefixedClass(className);
616
683
  }
617
684
  else {
618
685
  addClass(prefix, value, [...validColors, 'inherit', 'current']);
@@ -639,18 +706,62 @@ const useBulmaClasses = (props) => {
639
706
  addClass('is', textTransform, validTextTransforms);
640
707
  addClass('has-text-weight', textWeight, validTextWeights);
641
708
  addClass('is-family', fontFamily, validFontFamilies);
642
- addClass('is', display, validDisplays);
709
+ const addDisplayClass = (displayValue, viewportSuffix) => {
710
+ if (displayValue) {
711
+ if (displayValue === 'none') {
712
+ addPrefixedClass(`is-hidden${viewportSuffix}`);
713
+ }
714
+ else if (validDisplays.includes(displayValue)) {
715
+ addPrefixedClass(`is-${displayValue}${viewportSuffix}`);
716
+ }
717
+ }
718
+ };
719
+ addDisplayClass(displayMobile, '-mobile');
720
+ addDisplayClass(displayTablet, '-tablet');
721
+ addDisplayClass(displayDesktop, '-desktop');
722
+ addDisplayClass(displayWidescreen, '-widescreen');
723
+ addDisplayClass(displayFullhd, '-fullhd');
724
+ const hasViewportSpecificDisplay = !!(displayMobile ||
725
+ displayTablet ||
726
+ displayDesktop ||
727
+ displayWidescreen ||
728
+ displayFullhd);
729
+ if (!hasViewportSpecificDisplay) {
730
+ if (display === 'none') {
731
+ if (viewport && validViewports.includes(viewport)) {
732
+ addPrefixedClass(`is-hidden-${viewport}`);
733
+ }
734
+ else {
735
+ addPrefixedClass('is-hidden');
736
+ }
737
+ }
738
+ else {
739
+ addClass('is', display, [...validDisplays]);
740
+ }
741
+ }
643
742
  if (visibility) {
644
743
  if (visibility === 'hidden' &&
645
744
  viewport &&
646
745
  validViewports.includes(viewport)) {
647
- classes.push(`is-hidden-${viewport}`);
746
+ addPrefixedClass(`is-hidden-${viewport}`);
648
747
  }
649
748
  else if (validVisibilities.includes(visibility)) {
650
- classes.push(`is-${visibility}`);
749
+ addPrefixedClass(`is-${visibility}`);
651
750
  }
652
751
  }
653
- if (display === 'flex' || display === 'inline-flex') {
752
+ const hasFlexDisplay = display === 'flex' ||
753
+ display === 'inline-flex' ||
754
+ displayMobile === 'flex' ||
755
+ displayMobile === 'inline-flex' ||
756
+ displayTablet === 'flex' ||
757
+ displayTablet === 'inline-flex' ||
758
+ displayDesktop === 'flex' ||
759
+ displayDesktop === 'inline-flex' ||
760
+ displayWidescreen === 'flex' ||
761
+ displayWidescreen === 'inline-flex' ||
762
+ displayFullhd === 'flex' ||
763
+ displayFullhd === 'inline-flex';
764
+ if (hasFlexDisplay) {
654
765
  addClass('is-flex-direction', flexDirection, validFlexDirections);
655
766
  addClass('is-flex-wrap', flexWrap, validFlexWraps);
656
767
  addClass('is-justify-content', justifyContent, validJustifyContents);
@@ -667,7 +778,7 @@ const useBulmaClasses = (props) => {
667
778
  addClass('is', overflow, ['clipped']);
668
779
  }
669
780
  if (overlay) {
670
- classes.push('is-overlay');
781
+ addPrefixedClass('is-overlay');
671
782
  }
672
783
  if (interaction) {
673
784
  addClass('is', interaction, ['unselectable', 'clickable']);
@@ -682,10 +793,11 @@ const useBulmaClasses = (props) => {
682
793
  addClass('is', responsive, ['mobile', 'narrow']);
683
794
  }
684
795
  if (skeleton) {
685
- classes.push('is-skeleton');
796
+ addPrefixedClass('is-skeleton');
686
797
  }
687
798
  return classNames(classes);
688
799
  }, [
800
+ classPrefix,
689
801
  color,
690
802
  backgroundColor,
691
803
  colorShade,
@@ -726,134 +838,70 @@ const useBulmaClasses = (props) => {
726
838
  shadow,
727
839
  responsive,
728
840
  viewport,
841
+ displayMobile,
842
+ displayTablet,
843
+ displayDesktop,
844
+ displayWidescreen,
845
+ displayFullhd,
729
846
  skeleton,
730
847
  ]);
731
848
  return { bulmaHelperClasses, rest };
732
849
  };
733
850
 
734
- function getColumnClassNames(props) {
735
- const classList = [];
736
- const sizeProps = [
737
- { prop: 'size', prefix: 'is', suffix: '' },
738
- { prop: 'sizeMobile', prefix: 'is', suffix: 'mobile' },
739
- { prop: 'sizeTablet', prefix: 'is', suffix: 'tablet' },
740
- { prop: 'sizeDesktop', prefix: 'is', suffix: 'desktop' },
741
- { prop: 'sizeWidescreen', prefix: 'is', suffix: 'widescreen' },
742
- { prop: 'sizeFullhd', prefix: 'is', suffix: 'fullhd' },
743
- ];
744
- for (const { prop, prefix, suffix } of sizeProps) {
745
- const val = props[prop];
746
- if (val !== undefined && val !== null) {
747
- let className = `${prefix}-${val}`;
748
- if (suffix)
749
- className += `-${suffix}`;
750
- classList.push(className);
751
- }
752
- }
753
- const offsetProps = [
754
- { prop: 'offset', prefix: 'is-offset', suffix: '' },
755
- { prop: 'offsetMobile', prefix: 'is-offset', suffix: 'mobile' },
756
- { prop: 'offsetTablet', prefix: 'is-offset', suffix: 'tablet' },
757
- { prop: 'offsetDesktop', prefix: 'is-offset', suffix: 'desktop' },
758
- { prop: 'offsetWidescreen', prefix: 'is-offset', suffix: 'widescreen' },
759
- { prop: 'offsetFullhd', prefix: 'is-offset', suffix: 'fullhd' },
760
- ];
761
- for (const { prop, prefix, suffix } of offsetProps) {
762
- const val = props[prop];
763
- if (val !== undefined && val !== null) {
764
- let className = `${prefix}-${val}`;
765
- if (suffix)
766
- className += `-${suffix}`;
767
- classList.push(className);
768
- }
769
- }
770
- if (props.isNarrow)
771
- classList.push('is-narrow');
772
- if (props.isNarrowMobile)
773
- classList.push('is-narrow-mobile');
774
- if (props.isNarrowTablet)
775
- classList.push('is-narrow-tablet');
776
- if (props.isNarrowTouch)
777
- classList.push('is-narrow-touch');
778
- if (props.isNarrowDesktop)
779
- classList.push('is-narrow-desktop');
780
- if (props.isNarrowWidescreen)
781
- classList.push('is-narrow-widescreen');
782
- if (props.isNarrowFullhd)
783
- classList.push('is-narrow-fullhd');
784
- return classList;
785
- }
786
- const Column = ({ className, textColor, bgColor, size, sizeMobile, sizeTablet, sizeDesktop, sizeWidescreen, sizeFullhd, offset, offsetMobile, offsetTablet, offsetDesktop, offsetWidescreen, offsetFullhd, isNarrow, isNarrowMobile, isNarrowTablet, isNarrowTouch, isNarrowDesktop, isNarrowWidescreen, isNarrowFullhd, children, ...props }) => {
851
+ const Column = ({ className, textColor, color: _fieldColor, bgColor, size, sizeMobile, sizeTablet, sizeDesktop, sizeWidescreen, sizeFullhd, offset, offsetMobile, offsetTablet, offsetDesktop, offsetWidescreen, offsetFullhd, isNarrow, isNarrowMobile, isNarrowTablet, isNarrowTouch, isNarrowDesktop, isNarrowWidescreen, isNarrowFullhd, children, ...props }) => {
787
852
  const { bulmaHelperClasses, rest } = useBulmaClasses({
788
853
  color: textColor,
789
854
  backgroundColor: bgColor,
790
855
  ...props,
791
856
  });
792
- const columnClasses = classNames('column', ...getColumnClassNames({
793
- size,
794
- sizeMobile,
795
- sizeTablet,
796
- sizeDesktop,
797
- sizeWidescreen,
798
- sizeFullhd,
799
- offset,
800
- offsetMobile,
801
- offsetTablet,
802
- offsetDesktop,
803
- offsetWidescreen,
804
- offsetFullhd,
805
- isNarrow,
806
- isNarrowMobile,
807
- isNarrowTablet,
808
- isNarrowTouch,
809
- isNarrowDesktop,
810
- isNarrowWidescreen,
811
- isNarrowFullhd,
812
- }), className, bulmaHelperClasses);
857
+ const mainClass = usePrefixedClassNames('column');
858
+ const columnSpecificClasses = usePrefixedClassNames('', {
859
+ [`is-${size}`]: size !== undefined && size !== null,
860
+ [`is-${sizeMobile}-mobile`]: sizeMobile !== undefined && sizeMobile !== null,
861
+ [`is-${sizeTablet}-tablet`]: sizeTablet !== undefined && sizeTablet !== null,
862
+ [`is-${sizeDesktop}-desktop`]: sizeDesktop !== undefined && sizeDesktop !== null,
863
+ [`is-${sizeWidescreen}-widescreen`]: sizeWidescreen !== undefined && sizeWidescreen !== null,
864
+ [`is-${sizeFullhd}-fullhd`]: sizeFullhd !== undefined && sizeFullhd !== null,
865
+ [`is-offset-${offset}`]: offset !== undefined && offset !== null,
866
+ [`is-offset-${offsetMobile}-mobile`]: offsetMobile !== undefined && offsetMobile !== null,
867
+ [`is-offset-${offsetTablet}-tablet`]: offsetTablet !== undefined && offsetTablet !== null,
868
+ [`is-offset-${offsetDesktop}-desktop`]: offsetDesktop !== undefined && offsetDesktop !== null,
869
+ [`is-offset-${offsetWidescreen}-widescreen`]: offsetWidescreen !== undefined && offsetWidescreen !== null,
870
+ [`is-offset-${offsetFullhd}-fullhd`]: offsetFullhd !== undefined && offsetFullhd !== null,
871
+ 'is-narrow': !!isNarrow,
872
+ 'is-narrow-mobile': !!isNarrowMobile,
873
+ 'is-narrow-tablet': !!isNarrowTablet,
874
+ 'is-narrow-touch': !!isNarrowTouch,
875
+ 'is-narrow-desktop': !!isNarrowDesktop,
876
+ 'is-narrow-widescreen': !!isNarrowWidescreen,
877
+ 'is-narrow-fullhd': !!isNarrowFullhd,
878
+ });
879
+ const columnClasses = classNames(mainClass, columnSpecificClasses, className, bulmaHelperClasses);
813
880
  return (jsxRuntimeExports.jsx("div", { className: columnClasses, ...rest, children: children }));
814
881
  };
815
882
 
816
- function getGapClasses(props) {
817
- const gapClassMap = [
818
- { prop: 'gapSize', prefix: 'is' },
819
- { prop: 'gapSizeMobile', prefix: 'is', suffix: 'mobile' },
820
- { prop: 'gapSizeTablet', prefix: 'is', suffix: 'tablet' },
821
- { prop: 'gapSizeDesktop', prefix: 'is', suffix: 'desktop' },
822
- { prop: 'gapSizeWidescreen', prefix: 'is', suffix: 'widescreen' },
823
- { prop: 'gapSizeFullhd', prefix: 'is', suffix: 'fullhd' },
824
- ];
825
- return gapClassMap.flatMap(({ prop, prefix, suffix }) => {
826
- const val = props[prop];
827
- if (val !== undefined && val !== null) {
828
- let className = `${prefix}-${val}`;
829
- if (suffix)
830
- className += `-${suffix}`;
831
- return [className];
832
- }
833
- return [];
834
- });
835
- }
836
- const Columns = ({ className, textColor, bgColor, isCentered, isGapless, isMultiline, isVCentered, isMobile, isDesktop, gapSize, gapSizeMobile, gapSizeTablet, gapSizeDesktop, gapSizeWidescreen, gapSizeFullhd, children, ...props }) => {
883
+ const Columns = ({ className, textColor, color: _fieldColor, bgColor, isCentered, isGapless, isMultiline, isVCentered, isMobile, isDesktop, gapSize, gapSizeMobile, gapSizeTablet, gapSizeDesktop, gapSizeWidescreen, gapSizeFullhd, children, ...props }) => {
837
884
  const { bulmaHelperClasses, rest } = useBulmaClasses({
838
885
  color: textColor,
839
886
  backgroundColor: bgColor,
840
887
  ...props,
841
888
  });
842
- const columnsClasses = classNames('columns', {
843
- 'is-centered': isCentered,
844
- 'is-gapless': isGapless,
845
- 'is-multiline': isMultiline,
846
- 'is-vcentered': isVCentered,
847
- 'is-mobile': isMobile,
848
- 'is-desktop': isDesktop,
849
- }, ...getGapClasses({
850
- gapSize,
851
- gapSizeMobile,
852
- gapSizeTablet,
853
- gapSizeDesktop,
854
- gapSizeWidescreen,
855
- gapSizeFullhd,
856
- }), className, bulmaHelperClasses);
889
+ const mainClass = usePrefixedClassNames('columns');
890
+ const gapClasses = usePrefixedClassNames('', {
891
+ [`is-${gapSize}`]: gapSize !== undefined && gapSize !== null,
892
+ [`is-${gapSizeMobile}-mobile`]: gapSizeMobile !== undefined && gapSizeMobile !== null,
893
+ [`is-${gapSizeTablet}-tablet`]: gapSizeTablet !== undefined && gapSizeTablet !== null,
894
+ [`is-${gapSizeDesktop}-desktop`]: gapSizeDesktop !== undefined && gapSizeDesktop !== null,
895
+ [`is-${gapSizeWidescreen}-widescreen`]: gapSizeWidescreen !== undefined && gapSizeWidescreen !== null,
896
+ [`is-${gapSizeFullhd}-fullhd`]: gapSizeFullhd !== undefined && gapSizeFullhd !== null,
897
+ 'is-centered': !!isCentered,
898
+ 'is-gapless': !!isGapless,
899
+ 'is-multiline': !!isMultiline,
900
+ 'is-vcentered': !!isVCentered,
901
+ 'is-mobile': !!isMobile,
902
+ 'is-desktop': !!isDesktop,
903
+ });
904
+ const columnsClasses = classNames(mainClass, gapClasses, className, bulmaHelperClasses);
857
905
  return (jsxRuntimeExports.jsx("div", { className: columnsClasses, ...rest, children: children }));
858
906
  };
859
907
 
@@ -867,11 +915,12 @@ const validBreadcrumbSeparators = [
867
915
  const validBreadcrumbSizes = ['small', 'medium', 'large'];
868
916
  const Breadcrumb = ({ className, alignment, separator, size, children, ...props }) => {
869
917
  const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
870
- const breadcrumbClasses = classNames('breadcrumb', className, bulmaHelperClasses, {
918
+ const bulmaClasses = usePrefixedClassNames('breadcrumb', {
871
919
  [`is-${alignment}`]: alignment && validBreadcrumbAlignments.includes(alignment),
872
920
  [`has-${separator}-separator`]: separator && validBreadcrumbSeparators.includes(separator),
873
921
  [`is-${size}`]: size && validBreadcrumbSizes.includes(size),
874
922
  });
923
+ const breadcrumbClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
875
924
  return (jsxRuntimeExports.jsx("nav", { className: breadcrumbClasses, "aria-label": "breadcrumbs", ...rest, children: jsxRuntimeExports.jsx("ul", { children: children }) }));
876
925
  };
877
926
 
@@ -887,9 +936,10 @@ const Card = ({ className, children, textColor, bgColor, hasShadow = true, heade
887
936
  backgroundColor: bgColor,
888
937
  ...props,
889
938
  });
890
- const cardClasses = classNames('card', className, bulmaHelperClasses, {
939
+ const bulmaClasses = usePrefixedClassNames('card', {
891
940
  'is-shadowless': !hasShadow,
892
941
  });
942
+ const cardClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
893
943
  const renderHeader = (header, headerIcon, headerCentered) => {
894
944
  if (!header && !headerIcon)
895
945
  return null;
@@ -908,6 +958,14 @@ const DropdownComponent = ({ label, children, className, menuClassName, active:
908
958
  const [active, setActive] = React.useState(!!activeProp);
909
959
  const dropdownRef = React.useRef(null);
910
960
  const { bulmaHelperClasses, rest } = useBulmaClasses(props);
961
+ const bulmaClasses = usePrefixedClassNames('dropdown', {
962
+ 'is-active': active,
963
+ 'is-up': up,
964
+ 'is-right': right,
965
+ 'is-hoverable': hoverable,
966
+ 'is-disabled': disabled,
967
+ });
968
+ const buttonClass = usePrefixedClassNames('button');
911
969
  React.useEffect(() => {
912
970
  if (typeof activeProp === 'boolean')
913
971
  setActive(activeProp);
@@ -940,14 +998,8 @@ const DropdownComponent = ({ label, children, className, menuClassName, active:
940
998
  onActiveChange === null || onActiveChange === void 0 ? void 0 : onActiveChange(false);
941
999
  }
942
1000
  };
943
- const dropdownClasses = classNames('dropdown', bulmaHelperClasses, {
944
- 'is-active': active,
945
- 'is-up': up,
946
- 'is-right': right,
947
- 'is-hoverable': hoverable,
948
- 'is-disabled': disabled,
949
- }, className);
950
- return (jsxRuntimeExports.jsxs("div", { className: dropdownClasses, ref: dropdownRef, id: id, "data-testid": "dropdown-root", ...rest, children: [jsxRuntimeExports.jsx("div", { className: "dropdown-trigger", children: jsxRuntimeExports.jsxs("button", { className: "button", "aria-haspopup": "true", "aria-controls": id ? `${id}-menu` : undefined, "aria-expanded": active, onClick: handleToggle, disabled: disabled, type: "button", children: [jsxRuntimeExports.jsx("span", { children: label }), jsxRuntimeExports.jsx("span", { className: "icon is-small", "aria-hidden": "true", children: jsxRuntimeExports.jsx("i", { className: "fas fa-angle-down" }) })] }) }), jsxRuntimeExports.jsx("div", { className: classNames('dropdown-menu', menuClassName), id: id ? `${id}-menu` : undefined, role: "menu", "data-testid": "dropdown-menu", children: jsxRuntimeExports.jsx("div", { className: "dropdown-content", onClick: handleMenuClick, tabIndex: -1, children: children }) })] }));
1001
+ const dropdownClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1002
+ return (jsxRuntimeExports.jsxs("div", { className: dropdownClasses, ref: dropdownRef, id: id, "data-testid": "dropdown-root", ...rest, children: [jsxRuntimeExports.jsx("div", { className: "dropdown-trigger", children: jsxRuntimeExports.jsxs("button", { className: buttonClass, "aria-haspopup": "true", "aria-controls": id ? `${id}-menu` : undefined, "aria-expanded": active, onClick: handleToggle, disabled: disabled, type: "button", children: [jsxRuntimeExports.jsx("span", { children: label }), jsxRuntimeExports.jsx("span", { className: "icon is-small", "aria-hidden": "true", children: jsxRuntimeExports.jsx("i", { className: "fas fa-angle-down" }) })] }) }), jsxRuntimeExports.jsx("div", { className: classNames('dropdown-menu', menuClassName), id: id ? `${id}-menu` : undefined, role: "menu", "data-testid": "dropdown-menu", children: jsxRuntimeExports.jsx("div", { className: "dropdown-content", onClick: handleMenuClick, tabIndex: -1, children: children }) })] }));
951
1003
  };
952
1004
  const DropdownItem = ({ children, active, className, as: Component = 'a', ...props }) => {
953
1005
  const { bulmaHelperClasses, rest } = useBulmaClasses(props);
@@ -962,7 +1014,8 @@ const Dropdown = Object.assign(DropdownComponent, {
962
1014
  const MenuListLevelContext = React.createContext(0);
963
1015
  const MenuComponent = ({ className, children, ...props }) => {
964
1016
  const { bulmaHelperClasses, rest } = useBulmaClasses(props);
965
- return (jsxRuntimeExports.jsx("aside", { className: classNames('menu', className, bulmaHelperClasses), ...rest, children: children }));
1017
+ const bulmaClasses = usePrefixedClassNames('menu');
1018
+ return (jsxRuntimeExports.jsx("aside", { className: classNames(bulmaClasses, bulmaHelperClasses, className), ...rest, children: children }));
966
1019
  };
967
1020
  const MenuLabel = ({ className, children, ...props }) => {
968
1021
  const { bulmaHelperClasses, rest } = useBulmaClasses(props);
@@ -1010,8 +1063,12 @@ const Message = ({ className, title, textColor, color, bgColor, onClose, childre
1010
1063
  backgroundColor: bgColor,
1011
1064
  ...props,
1012
1065
  });
1013
- const messageClasses = classNames('message', color && `is-${color}`, className, bulmaHelperClasses);
1014
- return (jsxRuntimeExports.jsxs("article", { className: messageClasses, ...rest, "data-testid": "message", children: [(title || onClose) && (jsxRuntimeExports.jsxs("div", { className: "message-header", children: [title && jsxRuntimeExports.jsx("span", { children: title }), onClose && (jsxRuntimeExports.jsx("button", { className: "delete", "aria-label": "delete", onClick: onClose, type: "button", "data-testid": "message-close" }))] })), children && (jsxRuntimeExports.jsx("div", { className: "message-body", "data-testid": "message-body", children: children }))] }));
1066
+ const bulmaClasses = usePrefixedClassNames('message', {
1067
+ [`is-${color}`]: color,
1068
+ });
1069
+ const deleteClass = usePrefixedClassNames('delete');
1070
+ const messageClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1071
+ return (jsxRuntimeExports.jsxs("article", { className: messageClasses, ...rest, "data-testid": "message", children: [(title || onClose) && (jsxRuntimeExports.jsxs("div", { className: "message-header", children: [title && jsxRuntimeExports.jsx("span", { children: title }), onClose && (jsxRuntimeExports.jsx("button", { className: deleteClass, "aria-label": "delete", onClick: onClose, type: "button", "data-testid": "message-close" }))] })), children && (jsxRuntimeExports.jsx("div", { className: "message-body", "data-testid": "message-body", children: children }))] }));
1015
1072
  };
1016
1073
 
1017
1074
  const Modal = ({ active = false, onClose, className, textColor, bgColor, modalCardTitle, modalCardFoot, type, children, ...props }) => {
@@ -1027,8 +1084,12 @@ const Modal = ({ active = false, onClose, className, textColor, bgColor, modalCa
1027
1084
  isModalCard = false;
1028
1085
  else
1029
1086
  isModalCard = !!modalCardTitle || !!modalCardFoot;
1030
- const modalClasses = classNames('modal', { 'is-active': active }, className, bulmaHelperClasses);
1031
- return (jsxRuntimeExports.jsxs("div", { className: modalClasses, ...rest, "data-testid": "modal", children: [jsxRuntimeExports.jsx("div", { className: "modal-background", onClick: onClose, "data-testid": "modal-background" }), isModalCard ? (jsxRuntimeExports.jsxs("div", { className: "modal-card", children: [modalCardTitle && (jsxRuntimeExports.jsxs("header", { className: "modal-card-head", children: [jsxRuntimeExports.jsx("p", { className: "modal-card-title", children: modalCardTitle }), onClose && (jsxRuntimeExports.jsx("button", { className: "delete", "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close" }))] })), jsxRuntimeExports.jsx("section", { className: "modal-card-body", "data-testid": "modal-body", children: children }), modalCardFoot && (jsxRuntimeExports.jsx("footer", { className: "modal-card-foot", children: modalCardFoot }))] })) : (jsxRuntimeExports.jsx("div", { className: "modal-content", "data-testid": "modal-content", children: children })), (!isModalCard || (!modalCardTitle && onClose)) && onClose && (jsxRuntimeExports.jsx("button", { className: "modal-close is-large", "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close-float" }))] }));
1087
+ const bulmaClasses = usePrefixedClassNames('modal', {
1088
+ 'is-active': active,
1089
+ });
1090
+ const deleteClass = usePrefixedClassNames('delete');
1091
+ const modalClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1092
+ return (jsxRuntimeExports.jsxs("div", { className: modalClasses, ...rest, "data-testid": "modal", children: [jsxRuntimeExports.jsx("div", { className: "modal-background", onClick: onClose, "data-testid": "modal-background" }), isModalCard ? (jsxRuntimeExports.jsxs("div", { className: "modal-card", children: [modalCardTitle && (jsxRuntimeExports.jsxs("header", { className: "modal-card-head", children: [jsxRuntimeExports.jsx("p", { className: "modal-card-title", children: modalCardTitle }), onClose && (jsxRuntimeExports.jsx("button", { className: deleteClass, "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close" }))] })), jsxRuntimeExports.jsx("section", { className: "modal-card-body", "data-testid": "modal-body", children: children }), modalCardFoot && (jsxRuntimeExports.jsx("footer", { className: "modal-card-foot", children: modalCardFoot }))] })) : (jsxRuntimeExports.jsx("div", { className: "modal-content", "data-testid": "modal-content", children: children })), (!isModalCard || (!modalCardTitle && onClose)) && onClose && (jsxRuntimeExports.jsx("button", { className: "modal-close is-large", "aria-label": "close", onClick: onClose, type: "button", "data-testid": "modal-close-float" }))] }));
1032
1093
  };
1033
1094
 
1034
1095
  const Navbar = ({ className, textColor, bgColor, color, transparent, fixed, children, ...props }) => {
@@ -1037,11 +1098,12 @@ const Navbar = ({ className, textColor, bgColor, color, transparent, fixed, chil
1037
1098
  backgroundColor: bgColor,
1038
1099
  ...props,
1039
1100
  });
1040
- const navbarClasses = classNames('navbar', bulmaHelperClasses, className, {
1101
+ const bulmaClasses = usePrefixedClassNames('navbar', {
1041
1102
  [`is-${color}`]: color,
1042
1103
  'is-transparent': transparent,
1043
1104
  [`is-fixed-${fixed}`]: fixed,
1044
1105
  });
1106
+ const navbarClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1045
1107
  return (jsxRuntimeExports.jsx("nav", { className: navbarClasses, role: "navigation", "aria-label": "main navigation", ...rest, children: children }));
1046
1108
  };
1047
1109
  const NavbarBrand = ({ className, children, textColor, ...props }) => {
@@ -1133,12 +1195,13 @@ const Pagination = ({ color, textColor, bgColor, size, align, rounded, className
1133
1195
  backgroundColor: bgColor,
1134
1196
  ...props,
1135
1197
  });
1136
- const paginationClasses = classNames('pagination', bulmaHelperClasses, className, {
1198
+ const bulmaClasses = usePrefixedClassNames('pagination', {
1137
1199
  [`is-${color}`]: color,
1138
1200
  [`is-${size}`]: size,
1139
1201
  [`is-${align}`]: align,
1140
1202
  'is-rounded': rounded,
1141
1203
  });
1204
+ const paginationClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1142
1205
  return (jsxRuntimeExports.jsx("nav", { className: paginationClasses, role: "navigation", "aria-label": "pagination", ...rest, children: children }));
1143
1206
  };
1144
1207
  const PaginationList = ({ className, textColor, bgColor, children, ...props }) => {
@@ -1182,16 +1245,20 @@ const Panel = ({ color, className, children, ...props }) => {
1182
1245
  color,
1183
1246
  ...props,
1184
1247
  });
1185
- const panelClasses = classNames('panel', bulmaHelperClasses, className, {
1248
+ const bulmaClasses = usePrefixedClassNames('panel', {
1186
1249
  [`is-${color}`]: color,
1187
1250
  });
1251
+ const panelClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1188
1252
  return (jsxRuntimeExports.jsx("nav", { className: panelClasses, ...rest, children: children }));
1189
1253
  };
1190
1254
  const PanelHeading = ({ className, children, ...props }) => (jsxRuntimeExports.jsx("p", { className: classNames('panel-heading', className), ...props, children: children }));
1191
1255
  const PanelTabs = ({ className, children, ...props }) => (jsxRuntimeExports.jsx("p", { className: classNames('panel-tabs', className), ...props, children: children }));
1192
1256
  const PanelBlock = ({ className, active, children, ...props }) => (jsxRuntimeExports.jsx("a", { className: classNames('panel-block', className, { 'is-active': active }), ...props, children: children }));
1193
1257
  const PanelIcon = ({ className, children, ...props }) => (jsxRuntimeExports.jsx("span", { className: classNames('panel-icon', className), ...props, children: children }));
1194
- const PanelInputBlock = ({ value, onChange, placeholder, iconClassName = 'fas fa-search', ...props }) => (jsxRuntimeExports.jsx("div", { className: "panel-block", ...props, children: jsxRuntimeExports.jsxs("p", { className: "control has-icons-left", children: [jsxRuntimeExports.jsx("input", { className: "input", type: "text", placeholder: placeholder, value: value, onChange: onChange }), jsxRuntimeExports.jsx("span", { className: "icon is-left", children: jsxRuntimeExports.jsx("i", { className: iconClassName, "aria-hidden": "true" }) })] }) }));
1258
+ const PanelInputBlock = ({ value, onChange, placeholder, iconClassName = 'fas fa-search', ...props }) => {
1259
+ const inputClass = usePrefixedClassNames('input');
1260
+ return (jsxRuntimeExports.jsx("div", { className: "panel-block", ...props, children: jsxRuntimeExports.jsxs("p", { className: "control has-icons-left", children: [jsxRuntimeExports.jsx("input", { className: inputClass, type: "text", placeholder: placeholder, value: value, onChange: onChange }), jsxRuntimeExports.jsx("span", { className: "icon is-left", children: jsxRuntimeExports.jsx("i", { className: iconClassName, "aria-hidden": "true" }) })] }) }));
1261
+ };
1195
1262
  const PanelCheckboxBlock = ({ checked, onChange, children, ...props }) => (jsxRuntimeExports.jsxs("label", { className: "panel-block", ...props, children: [jsxRuntimeExports.jsx("input", { type: "checkbox", checked: checked, onChange: onChange }), children] }));
1196
1263
  const PanelButtonBlock = ({ children, className, ...props }) => (jsxRuntimeExports.jsx("div", { className: "panel-block", children: jsxRuntimeExports.jsx("button", { className: classNames('button is-link is-outlined is-fullwidth', className), ...props, children: children }) }));
1197
1264
  Panel.Heading = PanelHeading;
@@ -1204,18 +1271,18 @@ Panel.ButtonBlock = PanelButtonBlock;
1204
1271
 
1205
1272
  const Tabs = ({ align, size, fullwidth, boxed, toggle, rounded, color, className, children, ...props }) => {
1206
1273
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1207
- color,
1208
1274
  ...props,
1209
1275
  });
1210
- const tabsClass = classNames('tabs', bulmaHelperClasses, {
1276
+ const bulmaClasses = usePrefixedClassNames('tabs', {
1211
1277
  [`is-${align}`]: align,
1212
1278
  [`is-${size}`]: size,
1279
+ [`is-${color}`]: color,
1213
1280
  'is-fullwidth': fullwidth,
1214
1281
  'is-boxed': boxed,
1215
1282
  'is-toggle': toggle,
1216
- 'is-toggle-rounded': toggle && rounded,
1217
- [`is-${color}`]: color,
1218
- }, className);
1283
+ 'is-toggle-rounded': rounded,
1284
+ });
1285
+ const tabsClass = classNames(bulmaClasses, bulmaHelperClasses, className);
1219
1286
  return (jsxRuntimeExports.jsx("div", { className: tabsClass, ...rest, children: children }));
1220
1287
  };
1221
1288
  const TabList = ({ className, children, ...props }) => (jsxRuntimeExports.jsx("ul", { className: classNames(className), ...props, children: children }));
@@ -1229,7 +1296,8 @@ const Block = ({ className, textColor, bgColor, children, ...props }) => {
1229
1296
  backgroundColor: bgColor,
1230
1297
  ...props,
1231
1298
  });
1232
- const blockClasses = classNames('block', className, bulmaHelperClasses);
1299
+ const bulmaClasses = usePrefixedClassNames('block');
1300
+ const blockClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1233
1301
  return (jsxRuntimeExports.jsx("div", { className: blockClasses, ...rest, children: children }));
1234
1302
  };
1235
1303
 
@@ -1239,9 +1307,10 @@ const Box = ({ className, textColor, bgColor, hasShadow = true, children, ...pro
1239
1307
  backgroundColor: bgColor,
1240
1308
  ...props,
1241
1309
  });
1242
- const boxClasses = classNames('box', className, bulmaHelperClasses, {
1310
+ const bulmaClasses = usePrefixedClassNames('box', {
1243
1311
  'is-shadowless': !hasShadow,
1244
1312
  });
1313
+ const boxClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1245
1314
  return (jsxRuntimeExports.jsx("div", { className: boxClasses, ...rest, children: children }));
1246
1315
  };
1247
1316
 
@@ -1251,42 +1320,44 @@ const Button = ({ color, size, isLight, isRounded, isLoading, isStatic, isFullWi
1251
1320
  backgroundColor: bgColor,
1252
1321
  ...props,
1253
1322
  });
1254
- const buttonClasses = classNames('button', className, bulmaHelperClasses, {
1255
- [`is-${color}`]: color,
1256
- [`is-${size}`]: size && size !== 'normal',
1323
+ const bulmaClasses = usePrefixedClassNames('button', {
1324
+ [`is-${color}`]: color && validColors.includes(color),
1325
+ [`is-${size}`]: size,
1326
+ 'is-outlined': isOutlined,
1257
1327
  'is-light': isLight,
1258
- 'is-rounded': isRounded,
1259
1328
  'is-loading': isLoading,
1260
1329
  'is-static': isStatic,
1261
- 'is-fullwidth': isFullWidth,
1262
- 'is-outlined': isOutlined,
1263
- 'is-inverted': isInverted,
1330
+ 'is-disabled': isDisabled,
1331
+ 'is-rounded': isRounded,
1332
+ 'is-hovered': isHovered,
1264
1333
  'is-focused': isFocused,
1265
1334
  'is-active': isActive,
1266
- 'is-hovered': isHovered,
1267
- 'is-disabled': isDisabled,
1335
+ 'is-inverted': isInverted,
1336
+ 'is-fullwidth': isFullWidth,
1268
1337
  });
1338
+ const buttonClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1269
1339
  if (as === 'a') {
1270
- const { ...anchorRest } = rest;
1340
+ const { type: _type, disabled: _disabled, form: _form, formAction: _formAction, formEncType: _formEncType, formMethod: _formMethod, formNoValidate: _formNoValidate, formTarget: _formTarget, name: _name, value: _value, autoFocus: _autoFocus, ...anchorRest } = rest;
1271
1341
  return (jsxRuntimeExports.jsx("a", { className: buttonClasses, href: href, target: target, rel: rel, "aria-disabled": isDisabled, tabIndex: isDisabled ? -1 : undefined, onClick: isDisabled
1272
- ? e => e.preventDefault()
1342
+ ? (e) => e.preventDefault()
1273
1343
  : onClick, ...anchorRest, children: children }));
1274
1344
  }
1275
1345
  return (jsxRuntimeExports.jsx("button", { className: buttonClasses, disabled: isDisabled, onClick: onClick, ...rest, children: children }));
1276
1346
  };
1277
1347
 
1278
1348
  const Buttons = ({ className, textColor, bgColor, isCentered, isRight, hasAddons, children, ...props }) => {
1349
+ const buttonsClasses = usePrefixedClassNames('buttons', {
1350
+ 'is-centered': isCentered,
1351
+ 'is-right': isRight,
1352
+ 'has-addons': hasAddons,
1353
+ });
1279
1354
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1280
1355
  color: textColor,
1281
1356
  backgroundColor: bgColor,
1282
1357
  ...props,
1283
1358
  });
1284
- const buttonsClasses = classNames('buttons', className, bulmaHelperClasses, {
1285
- 'is-centered': isCentered,
1286
- 'is-right': isRight,
1287
- 'has-addons': hasAddons,
1288
- });
1289
- return (jsxRuntimeExports.jsx("div", { className: buttonsClasses, ...rest, children: children }));
1359
+ const combinedClasses = classNames(buttonsClasses, className, bulmaHelperClasses);
1360
+ return (jsxRuntimeExports.jsx("div", { className: combinedClasses, ...rest, children: children }));
1290
1361
  };
1291
1362
 
1292
1363
  const validSizes = ['small', 'medium', 'large'];
@@ -1296,9 +1367,10 @@ const Content = ({ className, textColor, bgColor, size, children, ...props }) =>
1296
1367
  backgroundColor: bgColor,
1297
1368
  ...props,
1298
1369
  });
1299
- const contentClasses = classNames('content', className, bulmaHelperClasses, {
1370
+ const bulmaClasses = usePrefixedClassNames('content', {
1300
1371
  [`is-${size}`]: size && size !== 'normal' && validSizes.includes(size),
1301
1372
  });
1373
+ const contentClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1302
1374
  return (jsxRuntimeExports.jsx("div", { className: contentClasses, ...rest, children: children }));
1303
1375
  };
1304
1376
 
@@ -1308,10 +1380,11 @@ const Delete = ({ className, textColor, bgColor, onClick, size, ariaLabel = 'Clo
1308
1380
  backgroundColor: bgColor,
1309
1381
  ...props,
1310
1382
  });
1311
- const classes = classNames('delete', {
1383
+ const bulmaClasses = usePrefixedClassNames('delete', {
1312
1384
  [`is-${size}`]: size,
1313
1385
  'is-disabled': disabled,
1314
- }, bulmaHelperClasses, className);
1386
+ });
1387
+ const classes = classNames(bulmaClasses, bulmaHelperClasses, className);
1315
1388
  return (jsxRuntimeExports.jsx("button", { className: classes, onClick: onClick, "aria-label": ariaLabel, disabled: disabled, type: "button", ...rest }));
1316
1389
  };
1317
1390
 
@@ -1349,9 +1422,10 @@ const Icon = ({ className, textColor, bgColor, name, library = 'fa', libraryFeat
1349
1422
  backgroundColor: bgColor,
1350
1423
  ...props,
1351
1424
  });
1352
- const iconContainerClasses = classNames('icon', {
1425
+ const bulmaClasses = usePrefixedClassNames('icon', {
1353
1426
  [`is-${size}`]: size,
1354
- }, bulmaHelperClasses, className);
1427
+ });
1428
+ const iconContainerClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1355
1429
  const iClasses = getIconClasses(library, name, libraryFeatures);
1356
1430
  return (jsxRuntimeExports.jsx("span", { className: iconContainerClasses, "aria-label": ariaLabel, style: style, ...rest, children: jsxRuntimeExports.jsx("i", { className: iClasses }) }));
1357
1431
  };
@@ -1362,7 +1436,8 @@ const IconText = ({ className, textColor, bgColor, iconProps, children, items, .
1362
1436
  backgroundColor: bgColor,
1363
1437
  ...props,
1364
1438
  });
1365
- const iconTextClasses = classNames('icon-text', bulmaHelperClasses, className);
1439
+ const bulmaClasses = usePrefixedClassNames('icon-text');
1440
+ const iconTextClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1366
1441
  return (jsxRuntimeExports.jsx("span", { className: iconTextClasses, ...rest, children: items ? (items.map((item, index) => (jsxRuntimeExports.jsxs(React.Fragment, { children: [jsxRuntimeExports.jsx(Icon, { ...item.iconProps }), item.text && jsxRuntimeExports.jsx("span", { children: item.text })] }, index)))) : (jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [iconProps && jsxRuntimeExports.jsx(Icon, { ...iconProps }), children && jsxRuntimeExports.jsx("span", { children: children })] })) }));
1367
1442
  };
1368
1443
 
@@ -1372,10 +1447,11 @@ const Image = ({ as, className, textColor, bgColor, size, isRounded, isRetina, s
1372
1447
  backgroundColor: bgColor,
1373
1448
  ...props,
1374
1449
  });
1375
- const imageClasses = classNames('image', className, bulmaHelperClasses, {
1450
+ const bulmaClasses = usePrefixedClassNames('image', {
1376
1451
  [`is-${size}`]: size,
1377
1452
  'has-ratio': size && typeof size === 'string' && size.includes('by'),
1378
1453
  });
1454
+ const imageClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1379
1455
  let Tag;
1380
1456
  if (as) {
1381
1457
  Tag = as;
@@ -1386,7 +1462,8 @@ const Image = ({ as, className, textColor, bgColor, size, isRounded, isRetina, s
1386
1462
  else {
1387
1463
  Tag = 'div';
1388
1464
  }
1389
- const content = children ? (children) : (jsxRuntimeExports.jsx("img", { className: classNames({ 'is-rounded': isRounded }), src: src, alt: alt, ...(isRetina && src ? { srcSet: `${src} 2x` } : {}) }));
1465
+ const roundedClass = usePrefixedClassNames('is-rounded');
1466
+ const content = children ? (children) : (jsxRuntimeExports.jsx("img", { className: classNames({ [roundedClass]: isRounded }), src: src, alt: alt, ...(isRetina && src ? { srcSet: `${src} 2x` } : {}) }));
1390
1467
  return (jsxRuntimeExports.jsx(Tag, { className: imageClasses, ...rest, children: content }));
1391
1468
  };
1392
1469
 
@@ -1394,29 +1471,34 @@ const Notification = ({ className, color, isLight, hasDelete, onDelete, children
1394
1471
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1395
1472
  ...props,
1396
1473
  });
1397
- const notificationClasses = classNames('notification', className, bulmaHelperClasses, {
1474
+ const bulmaClasses = usePrefixedClassNames('notification', {
1398
1475
  [`is-${color}`]: color && validColors.includes(color),
1399
1476
  'is-light': isLight,
1400
1477
  });
1401
- return (jsxRuntimeExports.jsxs("div", { className: notificationClasses, ...rest, children: [hasDelete && (jsxRuntimeExports.jsx("button", { className: "delete", onClick: onDelete, "aria-label": "Close notification" })), children] }));
1478
+ const deleteClasses = usePrefixedClassNames('delete');
1479
+ const notificationClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1480
+ return (jsxRuntimeExports.jsxs("div", { className: notificationClasses, ...rest, children: [hasDelete && (jsxRuntimeExports.jsx("button", { className: deleteClasses, onClick: onDelete, "aria-label": "Close notification" })), children] }));
1402
1481
  };
1403
1482
 
1404
1483
  const Progress = ({ className, color, size, value, max, children, ...props }) => {
1405
1484
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1406
1485
  ...props,
1407
1486
  });
1408
- const progressClasses = classNames('progress', className, bulmaHelperClasses, {
1487
+ const bulmaClasses = usePrefixedClassNames('progress', {
1409
1488
  [`is-${color}`]: color && validColors.includes(color),
1410
1489
  [`is-${size}`]: size,
1411
1490
  });
1491
+ const progressClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1412
1492
  return (jsxRuntimeExports.jsx("progress", { className: progressClasses, value: value, max: max, ...rest, children: children }));
1413
1493
  };
1414
1494
 
1415
1495
  const Skeleton = ({ className, variant = 'block', lines = 3, children, ...props }) => {
1496
+ const linesClass = usePrefixedClassNames('skeleton-lines');
1497
+ const blockClass = usePrefixedClassNames('skeleton-block');
1416
1498
  if (variant === 'lines') {
1417
- return (jsxRuntimeExports.jsx("div", { className: classNames('skeleton-lines', className), ...props, children: Array.from({ length: lines }).map((_, i) => (jsxRuntimeExports.jsx("div", {}, i))) }));
1499
+ return (jsxRuntimeExports.jsx("div", { className: classNames(linesClass, className), ...props, children: Array.from({ length: lines }).map((_, i) => (jsxRuntimeExports.jsx("div", {}, i))) }));
1418
1500
  }
1419
- return (jsxRuntimeExports.jsx("div", { className: classNames('skeleton-block', className), ...props, children: children }));
1501
+ return (jsxRuntimeExports.jsx("div", { className: classNames(blockClass, className), ...props, children: children }));
1420
1502
  };
1421
1503
 
1422
1504
  const validSubTitleSizes = ['1', '2', '3', '4', '5', '6'];
@@ -1433,25 +1515,31 @@ const SubTitle = ({ className, size, as = 'h1', hasSkeleton, children, ...props
1433
1515
  const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1434
1516
  const element = validSubTitleElements.includes(as) ? as : 'h1';
1435
1517
  const validSize = size && validSubTitleSizes.includes(size) ? size : undefined;
1436
- const subTitleClasses = classNames('subtitle', className, bulmaHelperClasses, {
1518
+ const bulmaClasses = usePrefixedClassNames('subtitle', {
1437
1519
  [`is-${validSize}`]: validSize,
1438
1520
  'has-skeleton': hasSkeleton,
1439
1521
  });
1522
+ const subTitleClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1440
1523
  const Tag = element === 'p' ? 'p' : validSize ? `h${validSize}` : element;
1441
1524
  return (jsxRuntimeExports.jsx(Tag, { className: subTitleClasses, ...rest, children: children }));
1442
1525
  };
1443
1526
 
1444
1527
  const Table = ({ className, isBordered, isStriped, isNarrow, isHoverable, isFullwidth, isResponsive, children, ...props }) => {
1445
1528
  const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1446
- const tableClasses = classNames('table', className, bulmaHelperClasses, {
1529
+ const bulmaClasses = usePrefixedClassNames('table', {
1447
1530
  'is-bordered': isBordered,
1448
1531
  'is-striped': isStriped,
1449
1532
  'is-narrow': isNarrow,
1450
1533
  'is-hoverable': isHoverable,
1451
1534
  'is-fullwidth': isFullwidth,
1452
1535
  });
1536
+ const containerClass = usePrefixedClassNames('table-container');
1537
+ const tableClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1453
1538
  const tableElement = (jsxRuntimeExports.jsx("table", { className: tableClasses, ...rest, children: children }));
1454
- return isResponsive ? (jsxRuntimeExports.jsx("div", { className: "table-container", children: tableElement })) : (tableElement);
1539
+ if (isResponsive) {
1540
+ return jsxRuntimeExports.jsx("div", { className: containerClass, children: tableElement });
1541
+ }
1542
+ return tableElement;
1455
1543
  };
1456
1544
 
1457
1545
  const validTagColors = [
@@ -1469,13 +1557,14 @@ const validTagColors = [
1469
1557
  const validTagSizes = ['normal', 'medium', 'large'];
1470
1558
  const Tag = ({ className, color, size, isRounded, isDelete, isHoverable, onDelete, children, ...props }) => {
1471
1559
  const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1472
- const tagClasses = classNames('tag', className, bulmaHelperClasses, {
1560
+ const bulmaClasses = usePrefixedClassNames('tag', {
1473
1561
  [`is-${color}`]: color && validTagColors.includes(color),
1474
1562
  [`is-${size}`]: size && size !== 'normal' && validTagSizes.includes(size),
1475
1563
  'is-rounded': isRounded,
1476
1564
  'is-delete': isDelete,
1477
1565
  'is-hoverable': isHoverable,
1478
1566
  });
1567
+ const tagClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1479
1568
  if (isDelete) {
1480
1569
  return (jsxRuntimeExports.jsx("button", { className: tagClasses, onClick: onDelete, "aria-label": "Delete tag", ...rest }));
1481
1570
  }
@@ -1484,10 +1573,11 @@ const Tag = ({ className, color, size, isRounded, isDelete, isHoverable, onDelet
1484
1573
 
1485
1574
  const Tags = ({ className, hasAddons, isMultiline, children, ...props }) => {
1486
1575
  const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1487
- const tagsClasses = classNames('tags', className, bulmaHelperClasses, {
1576
+ const bulmaClasses = usePrefixedClassNames('tags', {
1488
1577
  'has-addons': hasAddons,
1489
1578
  'are-multiline': isMultiline,
1490
1579
  });
1580
+ const tagsClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1491
1581
  return (jsxRuntimeExports.jsx("div", { className: tagsClasses, ...rest, children: children }));
1492
1582
  };
1493
1583
 
@@ -1510,10 +1600,11 @@ const validTableColors = [
1510
1600
  'white',
1511
1601
  ];
1512
1602
  const Td = ({ className, color, children, ...props }) => {
1513
- const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1514
- const tdClasses = classNames(className, bulmaHelperClasses, {
1603
+ const colorClass = usePrefixedClassNames('', {
1515
1604
  [`is-${color}`]: color && validTableColors.includes(color),
1516
1605
  });
1606
+ const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1607
+ const tdClasses = classNames(colorClass, className, bulmaHelperClasses);
1517
1608
  return (jsxRuntimeExports.jsx("td", { className: tdClasses, ...rest, children: children }));
1518
1609
  };
1519
1610
 
@@ -1525,11 +1616,12 @@ const Tfoot = ({ className, children, ...props }) => {
1525
1616
 
1526
1617
  const validAlignments = ['left', 'right', 'centered'];
1527
1618
  const Th = ({ className, isAligned, width, color, children, ...props }) => {
1528
- const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1529
- const thClasses = classNames(className, bulmaHelperClasses, {
1619
+ const bulmaClasses = usePrefixedClassNames('', {
1530
1620
  [`has-text-${isAligned}`]: isAligned && validAlignments.includes(isAligned),
1531
1621
  [`is-${color}`]: color && validTableColors.includes(color),
1532
1622
  });
1623
+ const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1624
+ const thClasses = classNames(bulmaClasses, className, bulmaHelperClasses);
1533
1625
  return (jsxRuntimeExports.jsx("th", { className: thClasses, style: width
1534
1626
  ? { width: typeof width === 'number' ? `${width}px` : width }
1535
1627
  : undefined, ...rest, children: children }));
@@ -1547,21 +1639,23 @@ const Title = ({ className, size, isSpaced, as = 'h1', hasSkeleton, children, ..
1547
1639
  const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1548
1640
  const element = validTitleElements.includes(as) ? as : 'h1';
1549
1641
  const validSize = size && validTitleSizes.includes(size) ? size : undefined;
1550
- const titleClasses = classNames('title', className, bulmaHelperClasses, {
1642
+ const bulmaClasses = usePrefixedClassNames('title', {
1551
1643
  [`is-${validSize}`]: validSize,
1552
1644
  'is-spaced': isSpaced,
1553
1645
  'has-skeleton': hasSkeleton,
1554
1646
  });
1647
+ const titleClasses = classNames(bulmaClasses, bulmaHelperClasses, className);
1555
1648
  const Tag = element === 'p' ? 'p' : validSize ? `h${validSize}` : element;
1556
1649
  return (jsxRuntimeExports.jsx(Tag, { className: titleClasses, ...rest, children: children }));
1557
1650
  };
1558
1651
 
1559
1652
  const Tr = ({ className, isSelected, color, children, ...props }) => {
1560
- const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1561
- const trClasses = classNames(className, bulmaHelperClasses, {
1653
+ const bulmaClasses = usePrefixedClassNames('', {
1562
1654
  'is-selected': isSelected,
1563
1655
  [`is-${color}`]: color && validTableColors.includes(color),
1564
1656
  });
1657
+ const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
1658
+ const trClasses = classNames(bulmaClasses, className, bulmaHelperClasses);
1565
1659
  return (jsxRuntimeExports.jsx("tr", { className: trClasses, ...rest, children: children }));
1566
1660
  };
1567
1661
 
@@ -1569,7 +1663,8 @@ const Checkbox = React.forwardRef(({ disabled, className, children, ...props },
1569
1663
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1570
1664
  ...props,
1571
1665
  });
1572
- const checkboxClass = classNames('checkbox', bulmaHelperClasses, className);
1666
+ const mainClass = usePrefixedClassNames('checkbox');
1667
+ const checkboxClass = classNames(mainClass, bulmaHelperClasses, className);
1573
1668
  return (jsxRuntimeExports.jsxs("label", { className: checkboxClass, children: [jsxRuntimeExports.jsx("input", { ref: ref, type: "checkbox", disabled: disabled, ...rest }), children] }));
1574
1669
  });
1575
1670
  Checkbox.displayName = 'Checkbox';
@@ -1578,7 +1673,8 @@ const Checkboxes = ({ children, className, ...props }) => {
1578
1673
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1579
1674
  ...props,
1580
1675
  });
1581
- const wrapperClass = classNames('checkboxes', bulmaHelperClasses, className);
1676
+ const mainClass = usePrefixedClassNames('checkboxes');
1677
+ const wrapperClass = classNames(mainClass, bulmaHelperClasses, className);
1582
1678
  return (jsxRuntimeExports.jsx("div", { className: wrapperClass, ...rest, children: children }));
1583
1679
  };
1584
1680
 
@@ -1611,13 +1707,14 @@ const Control = React.forwardRef(({ as = 'div', hasIconsLeft, hasIconsRight, isL
1611
1707
  size: iconRightSize,
1612
1708
  }
1613
1709
  : undefined);
1614
- const controlClass = classNames('control', bulmaHelperClasses, {
1710
+ const mainClass = usePrefixedClassNames('control', {
1615
1711
  'has-icons-left': hasIconsLeft || !!leftIconProps,
1616
1712
  'has-icons-right': hasIconsRight || !!rightIconProps,
1617
1713
  'is-loading': isLoading,
1618
1714
  'is-expanded': isExpanded,
1619
1715
  [`is-${size}`]: !!size,
1620
- }, className);
1716
+ });
1717
+ const controlClass = classNames(mainClass, bulmaHelperClasses, className);
1621
1718
  return (jsxRuntimeExports.jsxs(Component, { className: controlClass, ref: ref, ...restProps, ...rest, children: [children, leftIconProps && leftIconProps.name && (jsxRuntimeExports.jsx(Icon, { ...leftIconProps, className: "is-left" })), rightIconProps && rightIconProps.name && (jsxRuntimeExports.jsx(Icon, { ...rightIconProps, className: "is-right" }))] }));
1622
1719
  });
1623
1720
  Control.displayName = 'Control';
@@ -1628,7 +1725,10 @@ const FieldLabel = ({ size, textColor, bgColor, className, children, ...props })
1628
1725
  backgroundColor: bgColor,
1629
1726
  ...props,
1630
1727
  });
1631
- const fieldLabelClass = classNames('field-label', bulmaHelperClasses, { [`is-${size}`]: size }, className);
1728
+ const mainClass = usePrefixedClassNames('field-label', {
1729
+ [`is-${size}`]: !!size,
1730
+ });
1731
+ const fieldLabelClass = classNames(mainClass, bulmaHelperClasses, className);
1632
1732
  return (jsxRuntimeExports.jsx("div", { className: fieldLabelClass, ...props, ...rest, children: children }));
1633
1733
  };
1634
1734
  const FieldBody = ({ textColor, bgColor, className, children, ...props }) => {
@@ -1637,16 +1737,17 @@ const FieldBody = ({ textColor, bgColor, className, children, ...props }) => {
1637
1737
  backgroundColor: bgColor,
1638
1738
  ...props,
1639
1739
  });
1640
- const fieldBodyClass = classNames('field-body', bulmaHelperClasses, className);
1740
+ const mainClass = usePrefixedClassNames('field-body');
1741
+ const fieldBodyClass = classNames(mainClass, bulmaHelperClasses, className);
1641
1742
  return (jsxRuntimeExports.jsx("div", { className: fieldBodyClass, ...props, ...rest, children: children }));
1642
1743
  };
1643
- const Field = ({ horizontal, grouped, hasAddons, label, labelSize, labelProps, textColor, bgColor, className, children, ...props }) => {
1744
+ const Field = ({ horizontal, grouped, hasAddons, label, labelSize, labelProps, textColor, color: _fieldColor, bgColor, className, children, ...props }) => {
1644
1745
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1645
1746
  color: textColor,
1646
1747
  backgroundColor: bgColor,
1647
1748
  ...props,
1648
1749
  });
1649
- const fieldClass = classNames('field', bulmaHelperClasses, {
1750
+ const mainClass = usePrefixedClassNames('field', {
1650
1751
  'is-horizontal': horizontal,
1651
1752
  'has-addons': !!hasAddons,
1652
1753
  'is-grouped': grouped === true ||
@@ -1656,15 +1757,17 @@ const Field = ({ horizontal, grouped, hasAddons, label, labelSize, labelProps, t
1656
1757
  'is-grouped-centered': grouped === 'centered',
1657
1758
  'is-grouped-right': grouped === 'right',
1658
1759
  'is-grouped-multiline': grouped === 'multiline',
1659
- }, className);
1760
+ });
1761
+ const fieldClass = classNames(mainClass, bulmaHelperClasses, className);
1660
1762
  const mappedLabelSize = labelSize === 'normal' ? undefined : labelSize;
1763
+ const labelClass = usePrefixedClassNames('label');
1661
1764
  let renderedLabel = null;
1662
1765
  if (label) {
1663
1766
  if (horizontal) {
1664
- renderedLabel = (jsxRuntimeExports.jsx(FieldLabel, { size: mappedLabelSize, children: jsxRuntimeExports.jsx("label", { ...labelProps, className: classNames('label', labelProps === null || labelProps === void 0 ? void 0 : labelProps.className), style: labelProps === null || labelProps === void 0 ? void 0 : labelProps.style, children: label }) }));
1767
+ renderedLabel = (jsxRuntimeExports.jsx(FieldLabel, { size: mappedLabelSize, children: jsxRuntimeExports.jsx("label", { ...labelProps, className: classNames(labelClass, labelProps === null || labelProps === void 0 ? void 0 : labelProps.className), style: labelProps === null || labelProps === void 0 ? void 0 : labelProps.style, children: label }) }));
1665
1768
  }
1666
1769
  else {
1667
- renderedLabel = (jsxRuntimeExports.jsx("label", { ...labelProps, className: classNames('label', labelProps === null || labelProps === void 0 ? void 0 : labelProps.className), style: { display: 'block', ...((labelProps === null || labelProps === void 0 ? void 0 : labelProps.style) || {}) }, children: label }));
1770
+ renderedLabel = (jsxRuntimeExports.jsx("label", { ...labelProps, className: classNames(labelClass, labelProps === null || labelProps === void 0 ? void 0 : labelProps.className), style: { display: 'block', ...((labelProps === null || labelProps === void 0 ? void 0 : labelProps.style) || {}) }, children: label }));
1668
1771
  }
1669
1772
  }
1670
1773
  let content = children;
@@ -1699,13 +1802,14 @@ const File = React.forwardRef(({ color, size, isBoxed, isFullwidth, isRight, isC
1699
1802
  else if (isCentered) {
1700
1803
  alignmentClass = 'is-centered';
1701
1804
  }
1702
- const fileClass = classNames('file', bulmaHelperClasses, {
1703
- [`is-${color}`]: color,
1704
- [`is-${size}`]: size,
1805
+ const mainClass = usePrefixedClassNames('file', {
1806
+ [`is-${color}`]: !!color,
1807
+ [`is-${size}`]: !!size,
1705
1808
  'is-boxed': isBoxed,
1706
1809
  'is-fullwidth': isFullwidth,
1707
1810
  'has-name': hasName,
1708
- }, alignmentClass, className);
1811
+ });
1812
+ const fileClass = classNames(mainClass, bulmaHelperClasses, alignmentClass, className);
1709
1813
  return (jsxRuntimeExports.jsx("div", { className: fileClass, children: jsxRuntimeExports.jsxs("label", { className: "file-label", children: [jsxRuntimeExports.jsx("input", { ref: ref, className: classNames('file-input', inputClassName), type: "file", ...rest }), jsxRuntimeExports.jsxs("span", { className: "file-cta", children: [iconLeft && jsxRuntimeExports.jsx("span", { className: "file-icon", children: iconLeft }), jsxRuntimeExports.jsx("span", { className: "file-label", children: label || 'Choose a file…' }), iconRight && jsxRuntimeExports.jsx("span", { className: "file-icon", children: iconRight })] }), hasName && fileName && jsxRuntimeExports.jsx("span", { className: "file-name", children: fileName })] }) }));
1710
1814
  });
1711
1815
  File.displayName = 'File';
@@ -1715,15 +1819,16 @@ const Input = React.forwardRef(({ color, size, isRounded, isStatic, isHovered, i
1715
1819
  color,
1716
1820
  ...props,
1717
1821
  });
1718
- const inputClass = classNames('input', bulmaHelperClasses, {
1719
- [`is-${color}`]: color,
1720
- [`is-${size}`]: size,
1822
+ const mainClass = usePrefixedClassNames('input', {
1823
+ [`is-${color}`]: !!color,
1824
+ [`is-${size}`]: !!size,
1721
1825
  'is-rounded': isRounded,
1722
1826
  'is-static': isStatic,
1723
1827
  'is-hovered': isHovered,
1724
1828
  'is-focused': isFocused,
1725
1829
  'is-loading': isLoading,
1726
- }, className);
1830
+ });
1831
+ const inputClass = classNames(mainClass, bulmaHelperClasses, className);
1727
1832
  return (jsxRuntimeExports.jsx("input", { ref: ref, className: inputClass, disabled: disabled, readOnly: readOnly, ...rest }));
1728
1833
  });
1729
1834
  Input.displayName = 'Input';
@@ -1732,7 +1837,8 @@ const Radio = React.forwardRef(({ disabled, className, children, ...props }, ref
1732
1837
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1733
1838
  ...props,
1734
1839
  });
1735
- const radioClass = classNames('radio', bulmaHelperClasses, className);
1840
+ const mainClass = usePrefixedClassNames('radio');
1841
+ const radioClass = classNames(mainClass, bulmaHelperClasses, className);
1736
1842
  return (jsxRuntimeExports.jsxs("label", { className: radioClass, children: [jsxRuntimeExports.jsx("input", { ref: ref, type: "radio", disabled: disabled, ...rest }), children] }));
1737
1843
  });
1738
1844
  Radio.displayName = 'Radio';
@@ -1741,7 +1847,8 @@ const Radios = ({ children, className, ...props }) => {
1741
1847
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1742
1848
  ...props,
1743
1849
  });
1744
- const wrapperClass = classNames('radios', bulmaHelperClasses, className);
1850
+ const mainClass = usePrefixedClassNames('radios');
1851
+ const wrapperClass = classNames(mainClass, bulmaHelperClasses, className);
1745
1852
  return (jsxRuntimeExports.jsx("div", { className: wrapperClass, ...rest, children: children }));
1746
1853
  };
1747
1854
 
@@ -1750,13 +1857,14 @@ const Select = React.forwardRef(({ color, size, isRounded, isLoading, isActive,
1750
1857
  color,
1751
1858
  ...props,
1752
1859
  });
1753
- const selectClass = classNames('select', bulmaHelperClasses, {
1754
- [`is-${color}`]: color,
1755
- [`is-${size}`]: size,
1860
+ const mainClass = usePrefixedClassNames('select', {
1861
+ [`is-${color}`]: !!color,
1862
+ [`is-${size}`]: !!size,
1756
1863
  'is-rounded': isRounded,
1757
1864
  'is-loading': isLoading,
1758
1865
  'is-active': isActive,
1759
- }, className);
1866
+ });
1867
+ const selectClass = classNames(mainClass, bulmaHelperClasses, className);
1760
1868
  const selectProps = {
1761
1869
  disabled,
1762
1870
  multiple,
@@ -1774,9 +1882,9 @@ const TextArea = React.forwardRef(({ color, size, isRounded, isStatic, isHovered
1774
1882
  color,
1775
1883
  ...props,
1776
1884
  });
1777
- const textareaClass = classNames('textarea', bulmaHelperClasses, {
1778
- [`is-${color}`]: color,
1779
- [`is-${size}`]: size,
1885
+ const mainClass = usePrefixedClassNames('textarea', {
1886
+ [`is-${color}`]: !!color,
1887
+ [`is-${size}`]: !!size,
1780
1888
  'is-rounded': isRounded,
1781
1889
  'is-static': isStatic,
1782
1890
  'is-hovered': isHovered,
@@ -1784,97 +1892,650 @@ const TextArea = React.forwardRef(({ color, size, isRounded, isStatic, isHovered
1784
1892
  'is-loading': isLoading,
1785
1893
  'is-active': isActive,
1786
1894
  'has-fixed-size': hasFixedSize,
1787
- }, className);
1895
+ });
1896
+ const textareaClass = classNames(mainClass, bulmaHelperClasses, className);
1788
1897
  return (jsxRuntimeExports.jsx("textarea", { ref: ref, className: textareaClass, disabled: disabled, readOnly: readOnly, rows: rows, ...rest }));
1789
1898
  });
1790
1899
  TextArea.displayName = 'TextArea';
1791
1900
 
1792
- function getCellGridClasses(props) {
1793
- const classes = [];
1794
- if (props.colStart !== undefined)
1795
- classes.push(`is-col-start-${props.colStart}`);
1796
- if (props.colFromEnd !== undefined)
1797
- classes.push(`is-col-from-end-${props.colFromEnd}`);
1798
- if (props.colSpan !== undefined)
1799
- classes.push(`is-col-span-${props.colSpan}`);
1800
- if (props.rowStart !== undefined)
1801
- classes.push(`is-row-start-${props.rowStart}`);
1802
- if (props.rowFromEnd !== undefined)
1803
- classes.push(`is-row-from-end-${props.rowFromEnd}`);
1804
- if (props.rowSpan !== undefined)
1805
- classes.push(`is-row-span-${props.rowSpan}`);
1806
- return classes;
1807
- }
1808
- const Cell = ({ colStart, colFromEnd, colSpan, rowStart, rowFromEnd, rowSpan, className, textColor, bgColor, children, ...props }) => {
1901
+ const Cell = ({ colStart, colFromEnd, colSpan, rowStart, rowFromEnd, rowSpan, className, textColor, color: _fieldColor, bgColor, children, ...props }) => {
1809
1902
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1810
1903
  color: textColor,
1811
1904
  backgroundColor: bgColor,
1812
1905
  ...props,
1813
1906
  });
1814
- const cellClasses = classNames('cell', ...getCellGridClasses({
1815
- colStart,
1816
- colFromEnd,
1817
- colSpan,
1818
- rowStart,
1819
- rowFromEnd,
1820
- rowSpan,
1821
- }), className, bulmaHelperClasses);
1907
+ const mainClass = usePrefixedClassNames('cell');
1908
+ const cellGridClasses = usePrefixedClassNames('', {
1909
+ [`is-col-start-${colStart}`]: colStart !== undefined && colStart !== null,
1910
+ [`is-col-from-end-${colFromEnd}`]: colFromEnd !== undefined && colFromEnd !== null,
1911
+ [`is-col-span-${colSpan}`]: colSpan !== undefined && colSpan !== null,
1912
+ [`is-row-start-${rowStart}`]: rowStart !== undefined && rowStart !== null,
1913
+ [`is-row-from-end-${rowFromEnd}`]: rowFromEnd !== undefined && rowFromEnd !== null,
1914
+ [`is-row-span-${rowSpan}`]: rowSpan !== undefined && rowSpan !== null,
1915
+ });
1916
+ const cellClasses = classNames(mainClass, cellGridClasses, className, bulmaHelperClasses);
1822
1917
  return (jsxRuntimeExports.jsx("div", { className: cellClasses, ...rest, children: children }));
1823
1918
  };
1824
1919
 
1825
- function getGridInnerClasses({ gap, columnGap, rowGap, minCol, }) {
1826
- const classes = [];
1827
- if (gap !== undefined)
1828
- classes.push(`is-gap-${gap}`);
1829
- if (columnGap !== undefined)
1830
- classes.push(`is-column-gap-${columnGap}`);
1831
- if (rowGap !== undefined)
1832
- classes.push(`is-row-gap-${rowGap}`);
1833
- if (minCol !== undefined)
1834
- classes.push(`is-col-min-${minCol}`);
1835
- return classes;
1836
- }
1837
- function getFixedGridClasses({ fixedCols, fixedColsMobile, fixedColsTablet, fixedColsDesktop, fixedColsWidescreen, fixedColsFullhd, }) {
1838
- const classes = [];
1839
- if (fixedCols === 'auto') {
1840
- classes.push('has-auto-count');
1841
- return classes;
1842
- }
1843
- if (fixedCols !== undefined)
1844
- classes.push(`has-${fixedCols}-cols`);
1845
- if (fixedColsMobile !== undefined)
1846
- classes.push(`has-${fixedColsMobile}-cols-mobile`);
1847
- if (fixedColsTablet !== undefined)
1848
- classes.push(`has-${fixedColsTablet}-cols-tablet`);
1849
- if (fixedColsDesktop !== undefined)
1850
- classes.push(`has-${fixedColsDesktop}-cols-desktop`);
1851
- if (fixedColsWidescreen !== undefined)
1852
- classes.push(`has-${fixedColsWidescreen}-cols-widescreen`);
1853
- if (fixedColsFullhd !== undefined)
1854
- classes.push(`has-${fixedColsFullhd}-cols-fullhd`);
1855
- return classes;
1856
- }
1857
- const Grid = ({ isFixed = false, gap, columnGap, rowGap, minCol, fixedCols, fixedColsMobile, fixedColsTablet, fixedColsDesktop, fixedColsWidescreen, fixedColsFullhd, className, textColor, bgColor, children, ...props }) => {
1920
+ const Grid = ({ isFixed = false, gap, columnGap, rowGap, minCol, fixedCols, fixedColsMobile, fixedColsTablet, fixedColsDesktop, fixedColsWidescreen, fixedColsFullhd, className, textColor, color: _fieldColor, bgColor, children, ...props }) => {
1858
1921
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1859
1922
  color: textColor,
1860
1923
  backgroundColor: bgColor,
1861
1924
  ...props,
1862
1925
  });
1863
- const gridClasses = classNames('grid', ...getGridInnerClasses({ gap, columnGap, rowGap, minCol }), bulmaHelperClasses, className);
1926
+ const mainClass = usePrefixedClassNames('grid');
1927
+ const gridInnerClasses = usePrefixedClassNames('', {
1928
+ [`is-gap-${gap}`]: gap !== undefined && gap !== null,
1929
+ [`is-column-gap-${columnGap}`]: columnGap !== undefined && columnGap !== null,
1930
+ [`is-row-gap-${rowGap}`]: rowGap !== undefined && rowGap !== null,
1931
+ [`is-col-min-${minCol}`]: minCol !== undefined && minCol !== null,
1932
+ });
1933
+ const fixedGridClasses = usePrefixedClassNames('fixed-grid', {
1934
+ 'has-auto-count': fixedCols === 'auto',
1935
+ [`has-${fixedCols}-cols`]: fixedCols !== undefined && fixedCols !== 'auto',
1936
+ [`has-${fixedColsMobile}-cols-mobile`]: fixedColsMobile !== undefined && fixedColsMobile !== null,
1937
+ [`has-${fixedColsTablet}-cols-tablet`]: fixedColsTablet !== undefined && fixedColsTablet !== null,
1938
+ [`has-${fixedColsDesktop}-cols-desktop`]: fixedColsDesktop !== undefined && fixedColsDesktop !== null,
1939
+ [`has-${fixedColsWidescreen}-cols-widescreen`]: fixedColsWidescreen !== undefined && fixedColsWidescreen !== null,
1940
+ [`has-${fixedColsFullhd}-cols-fullhd`]: fixedColsFullhd !== undefined && fixedColsFullhd !== null,
1941
+ });
1942
+ const gridClasses = classNames(mainClass, gridInnerClasses, bulmaHelperClasses, className);
1864
1943
  if (isFixed) {
1865
- const fixedGridClasses = classNames('fixed-grid', ...getFixedGridClasses({
1866
- fixedCols,
1867
- fixedColsMobile,
1868
- fixedColsTablet,
1869
- fixedColsDesktop,
1870
- fixedColsWidescreen,
1871
- fixedColsFullhd,
1872
- }));
1873
1944
  return (jsxRuntimeExports.jsx("div", { className: fixedGridClasses, children: jsxRuntimeExports.jsx("div", { className: gridClasses, ...rest, children: children }) }));
1874
1945
  }
1875
1946
  return (jsxRuntimeExports.jsx("div", { className: gridClasses, ...rest, children: children }));
1876
1947
  };
1877
1948
 
1949
+ const bulmaCssVars = [
1950
+ '--bulma-scheme-h',
1951
+ '--bulma-scheme-s',
1952
+ '--bulma-light-l',
1953
+ '--bulma-light-invert-l',
1954
+ '--bulma-dark-l',
1955
+ '--bulma-dark-invert-l',
1956
+ '--bulma-soft-l',
1957
+ '--bulma-bold-l',
1958
+ '--bulma-soft-invert-l',
1959
+ '--bulma-bold-invert-l',
1960
+ '--bulma-hover-background-l-delta',
1961
+ '--bulma-active-background-l-delta',
1962
+ '--bulma-hover-border-l-delta',
1963
+ '--bulma-active-border-l-delta',
1964
+ '--bulma-hover-color-l-delta',
1965
+ '--bulma-active-color-l-delta',
1966
+ '--bulma-hover-shadow-a-delta',
1967
+ '--bulma-active-shadow-a-delta',
1968
+ '--bulma-primary-h',
1969
+ '--bulma-primary-s',
1970
+ '--bulma-primary-l',
1971
+ '--bulma-link-h',
1972
+ '--bulma-link-s',
1973
+ '--bulma-link-l',
1974
+ '--bulma-info-h',
1975
+ '--bulma-info-s',
1976
+ '--bulma-info-l',
1977
+ '--bulma-success-h',
1978
+ '--bulma-success-s',
1979
+ '--bulma-success-l',
1980
+ '--bulma-warning-h',
1981
+ '--bulma-warning-s',
1982
+ '--bulma-warning-l',
1983
+ '--bulma-danger-h',
1984
+ '--bulma-danger-s',
1985
+ '--bulma-danger-l',
1986
+ '--bulma-family-primary',
1987
+ '--bulma-family-secondary',
1988
+ '--bulma-family-code',
1989
+ '--bulma-size-small',
1990
+ '--bulma-size-normal',
1991
+ '--bulma-size-medium',
1992
+ '--bulma-size-large',
1993
+ '--bulma-weight-light',
1994
+ '--bulma-weight-normal',
1995
+ '--bulma-weight-medium',
1996
+ '--bulma-weight-semibold',
1997
+ '--bulma-weight-bold',
1998
+ '--bulma-weight-extrabold',
1999
+ '--bulma-block-spacing',
2000
+ '--bulma-duration',
2001
+ '--bulma-easing',
2002
+ '--bulma-radius-small',
2003
+ '--bulma-radius',
2004
+ '--bulma-radius-medium',
2005
+ '--bulma-radius-large',
2006
+ '--bulma-radius-rounded',
2007
+ '--bulma-speed',
2008
+ '--bulma-arrow-color',
2009
+ '--bulma-loading-color',
2010
+ '--bulma-burger-h',
2011
+ '--bulma-burger-s',
2012
+ '--bulma-burger-l',
2013
+ '--bulma-burger-border-radius',
2014
+ '--bulma-burger-gap',
2015
+ '--bulma-burger-item-height',
2016
+ '--bulma-burger-item-width',
2017
+ '--bulma-body-background-color',
2018
+ '--bulma-body-size',
2019
+ '--bulma-body-min-width',
2020
+ '--bulma-body-rendering',
2021
+ '--bulma-body-family',
2022
+ '--bulma-body-overflow-x',
2023
+ '--bulma-body-overflow-y',
2024
+ '--bulma-body-color',
2025
+ '--bulma-body-font-size',
2026
+ '--bulma-body-weight',
2027
+ '--bulma-body-line-height',
2028
+ '--bulma-code-family',
2029
+ '--bulma-code-padding',
2030
+ '--bulma-code-weight',
2031
+ '--bulma-code-size',
2032
+ '--bulma-small-font-size',
2033
+ '--bulma-hr-background-color',
2034
+ '--bulma-hr-height',
2035
+ '--bulma-hr-margin',
2036
+ '--bulma-strong-color',
2037
+ '--bulma-strong-weight',
2038
+ '--bulma-pre-font-size',
2039
+ '--bulma-pre-padding',
2040
+ '--bulma-pre-code-font-size',
2041
+ '--bulma-skeleton-background',
2042
+ '--bulma-skeleton-radius',
2043
+ '--bulma-skeleton-block-min-height',
2044
+ '--bulma-skeleton-lines-gap',
2045
+ '--bulma-skeleton-line-height',
2046
+ '--bulma-breadcrumb-item-color',
2047
+ '--bulma-breadcrumb-item-hover-color',
2048
+ '--bulma-breadcrumb-item-active-color',
2049
+ '--bulma-breadcrumb-item-padding-vertical',
2050
+ '--bulma-breadcrumb-item-padding-horizontal',
2051
+ '--bulma-breadcrumb-item-separator-color',
2052
+ '--bulma-card-color',
2053
+ '--bulma-card-background-color',
2054
+ '--bulma-card-shadow',
2055
+ '--bulma-card-radius',
2056
+ '--bulma-card-header-background-color',
2057
+ '--bulma-card-header-color',
2058
+ '--bulma-card-header-padding',
2059
+ '--bulma-card-header-shadow',
2060
+ '--bulma-card-header-weight',
2061
+ '--bulma-card-content-background-color',
2062
+ '--bulma-card-content-padding',
2063
+ '--bulma-card-footer-background-color',
2064
+ '--bulma-card-footer-border-top',
2065
+ '--bulma-card-footer-padding',
2066
+ '--bulma-card-media-margin',
2067
+ '--bulma-dropdown-menu-min-width',
2068
+ '--bulma-dropdown-content-background-color',
2069
+ '--bulma-dropdown-content-offset',
2070
+ '--bulma-dropdown-content-padding-bottom',
2071
+ '--bulma-dropdown-content-padding-top',
2072
+ '--bulma-dropdown-content-radius',
2073
+ '--bulma-dropdown-content-shadow',
2074
+ '--bulma-dropdown-content-z',
2075
+ '--bulma-dropdown-item-h',
2076
+ '--bulma-dropdown-item-s',
2077
+ '--bulma-dropdown-item-l',
2078
+ '--bulma-dropdown-item-background-l',
2079
+ '--bulma-dropdown-item-background-l-delta',
2080
+ '--bulma-dropdown-item-hover-background-l-delta',
2081
+ '--bulma-dropdown-item-active-background-l-delta',
2082
+ '--bulma-dropdown-item-color-l',
2083
+ '--bulma-dropdown-item-selected-h',
2084
+ '--bulma-dropdown-item-selected-s',
2085
+ '--bulma-dropdown-item-selected-l',
2086
+ '--bulma-dropdown-item-selected-background-l',
2087
+ '--bulma-dropdown-item-selected-color-l',
2088
+ '--bulma-dropdown-divider-background-color',
2089
+ '--bulma-menu-item-h',
2090
+ '--bulma-menu-item-s',
2091
+ '--bulma-menu-item-l',
2092
+ '--bulma-menu-item-background-l',
2093
+ '--bulma-menu-item-background-l-delta',
2094
+ '--bulma-menu-item-hover-background-l-delta',
2095
+ '--bulma-menu-item-active-background-l-delta',
2096
+ '--bulma-menu-item-color-l',
2097
+ '--bulma-menu-item-radius',
2098
+ '--bulma-menu-item-selected-h',
2099
+ '--bulma-menu-item-selected-s',
2100
+ '--bulma-menu-item-selected-l',
2101
+ '--bulma-menu-item-selected-background-l',
2102
+ '--bulma-menu-item-selected-color-l',
2103
+ '--bulma-menu-list-border-left',
2104
+ '--bulma-menu-list-line-height',
2105
+ '--bulma-menu-list-link-padding',
2106
+ '--bulma-menu-nested-list-margin',
2107
+ '--bulma-menu-nested-list-padding-left',
2108
+ '--bulma-menu-label-color',
2109
+ '--bulma-menu-label-font-size',
2110
+ '--bulma-menu-label-letter-spacing',
2111
+ '--bulma-menu-label-spacing',
2112
+ '--bulma-message-h',
2113
+ '--bulma-message-s',
2114
+ '--bulma-message-background-l',
2115
+ '--bulma-message-border-l',
2116
+ '--bulma-message-border-l-delta',
2117
+ '--bulma-message-border-style',
2118
+ '--bulma-message-border-width',
2119
+ '--bulma-message-color-l',
2120
+ '--bulma-message-radius',
2121
+ '--bulma-message-header-weight',
2122
+ '--bulma-message-header-padding',
2123
+ '--bulma-message-header-radius',
2124
+ '--bulma-message-header-body-border-width',
2125
+ '--bulma-message-header-background-l',
2126
+ '--bulma-message-header-color-l',
2127
+ '--bulma-message-body-border-width',
2128
+ '--bulma-message-body-color',
2129
+ '--bulma-message-body-padding',
2130
+ '--bulma-message-body-radius',
2131
+ '--bulma-message-body-pre-code-background-color',
2132
+ '--bulma-modal-z',
2133
+ '--bulma-modal-background-background-color',
2134
+ '--bulma-modal-content-width',
2135
+ '--bulma-modal-content-margin-mobile',
2136
+ '--bulma-modal-content-spacing-mobile',
2137
+ '--bulma-modal-content-spacing-tablet',
2138
+ '--bulma-modal-close-dimensions',
2139
+ '--bulma-modal-close-right',
2140
+ '--bulma-modal-close-top',
2141
+ '--bulma-modal-card-spacing',
2142
+ '--bulma-modal-card-head-background-color',
2143
+ '--bulma-modal-card-head-padding',
2144
+ '--bulma-modal-card-head-radius',
2145
+ '--bulma-modal-card-title-color',
2146
+ '--bulma-modal-card-title-line-height',
2147
+ '--bulma-modal-card-title-size',
2148
+ '--bulma-modal-card-foot-background-color',
2149
+ '--bulma-modal-card-foot-radius',
2150
+ '--bulma-modal-card-body-background-color',
2151
+ '--bulma-modal-card-body-padding',
2152
+ '--bulma-navbar-h',
2153
+ '--bulma-navbar-s',
2154
+ '--bulma-navbar-l',
2155
+ '--bulma-navbar-background-color',
2156
+ '--bulma-navbar-box-shadow-size',
2157
+ '--bulma-navbar-box-shadow-color',
2158
+ '--bulma-navbar-padding-vertical',
2159
+ '--bulma-navbar-padding-horizontal',
2160
+ '--bulma-navbar-z',
2161
+ '--bulma-navbar-fixed-z',
2162
+ '--bulma-navbar-item-background-a',
2163
+ '--bulma-navbar-item-background-l',
2164
+ '--bulma-navbar-item-background-l-delta',
2165
+ '--bulma-navbar-item-hover-background-l-delta',
2166
+ '--bulma-navbar-item-active-background-l-delta',
2167
+ '--bulma-navbar-item-color-l',
2168
+ '--bulma-navbar-item-selected-h',
2169
+ '--bulma-navbar-item-selected-s',
2170
+ '--bulma-navbar-item-selected-l',
2171
+ '--bulma-navbar-item-selected-background-l',
2172
+ '--bulma-navbar-item-selected-color-l',
2173
+ '--bulma-navbar-item-img-max-height',
2174
+ '--bulma-navbar-burger-color',
2175
+ '--bulma-navbar-tab-hover-background-color',
2176
+ '--bulma-navbar-tab-hover-border-bottom-color',
2177
+ '--bulma-navbar-tab-active-color',
2178
+ '--bulma-navbar-tab-active-background-color',
2179
+ '--bulma-navbar-tab-active-border-bottom-color',
2180
+ '--bulma-navbar-tab-active-border-bottom-style',
2181
+ '--bulma-navbar-tab-active-border-bottom-width',
2182
+ '--bulma-navbar-dropdown-background-color',
2183
+ '--bulma-navbar-dropdown-border-l',
2184
+ '--bulma-navbar-dropdown-border-color',
2185
+ '--bulma-navbar-dropdown-border-style',
2186
+ '--bulma-navbar-dropdown-border-width',
2187
+ '--bulma-navbar-dropdown-offset',
2188
+ '--bulma-navbar-dropdown-arrow',
2189
+ '--bulma-navbar-dropdown-radius',
2190
+ '--bulma-navbar-dropdown-z',
2191
+ '--bulma-navbar-dropdown-boxed-radius',
2192
+ '--bulma-navbar-dropdown-boxed-shadow',
2193
+ '--bulma-navbar-dropdown-item-h',
2194
+ '--bulma-navbar-dropdown-item-s',
2195
+ '--bulma-navbar-dropdown-item-l',
2196
+ '--bulma-navbar-dropdown-item-background-l',
2197
+ '--bulma-navbar-dropdown-item-color-l',
2198
+ '--bulma-navbar-divider-background-l',
2199
+ '--bulma-navbar-divider-height',
2200
+ '--bulma-navbar-bottom-box-shadow-size',
2201
+ '--bulma-pagination-margin',
2202
+ '--bulma-pagination-min-width',
2203
+ '--bulma-pagination-item-h',
2204
+ '--bulma-pagination-item-s',
2205
+ '--bulma-pagination-item-l',
2206
+ '--bulma-pagination-item-background-l-delta',
2207
+ '--bulma-pagination-item-hover-background-l-delta',
2208
+ '--bulma-pagination-item-active-background-l-delta',
2209
+ '--bulma-pagination-item-border-style',
2210
+ '--bulma-pagination-item-border-width',
2211
+ '--bulma-pagination-item-border-l',
2212
+ '--bulma-pagination-item-border-l-delta',
2213
+ '--bulma-pagination-item-hover-border-l-delta',
2214
+ '--bulma-pagination-item-active-border-l-delta',
2215
+ '--bulma-pagination-item-focus-border-l-delta',
2216
+ '--bulma-pagination-item-color-l',
2217
+ '--bulma-pagination-item-font-size',
2218
+ '--bulma-pagination-item-margin',
2219
+ '--bulma-pagination-item-padding-left',
2220
+ '--bulma-pagination-item-padding-right',
2221
+ '--bulma-pagination-item-outer-shadow-h',
2222
+ '--bulma-pagination-item-outer-shadow-s',
2223
+ '--bulma-pagination-item-outer-shadow-l',
2224
+ '--bulma-pagination-item-outer-shadow-a',
2225
+ '--bulma-pagination-nav-padding-left',
2226
+ '--bulma-pagination-nav-padding-right',
2227
+ '--bulma-pagination-disabled-color',
2228
+ '--bulma-pagination-disabled-background-color',
2229
+ '--bulma-pagination-disabled-border-color',
2230
+ '--bulma-pagination-current-color',
2231
+ '--bulma-pagination-current-background-color',
2232
+ '--bulma-pagination-current-border-color',
2233
+ '--bulma-pagination-ellipsis-color',
2234
+ '--bulma-pagination-shadow-inset',
2235
+ '--bulma-pagination-selected-item-h',
2236
+ '--bulma-pagination-selected-item-s',
2237
+ '--bulma-pagination-selected-item-l',
2238
+ '--bulma-pagination-selected-item-background-l',
2239
+ '--bulma-pagination-selected-item-border-l',
2240
+ '--bulma-pagination-selected-item-color-l',
2241
+ '--bulma-panel-margin',
2242
+ '--bulma-panel-item-border',
2243
+ '--bulma-panel-radius',
2244
+ '--bulma-panel-shadow',
2245
+ '--bulma-panel-heading-line-height',
2246
+ '--bulma-panel-heading-padding',
2247
+ '--bulma-panel-heading-radius',
2248
+ '--bulma-panel-heading-size',
2249
+ '--bulma-panel-heading-weight',
2250
+ '--bulma-panel-tabs-font-size',
2251
+ '--bulma-panel-tab-border-bottom-color',
2252
+ '--bulma-panel-tab-border-bottom-style',
2253
+ '--bulma-panel-tab-border-bottom-width',
2254
+ '--bulma-panel-tab-active-color',
2255
+ '--bulma-panel-list-item-color',
2256
+ '--bulma-panel-list-item-hover-color',
2257
+ '--bulma-panel-block-color',
2258
+ '--bulma-panel-block-hover-background-color',
2259
+ '--bulma-panel-block-active-border-left-color',
2260
+ '--bulma-panel-block-active-color',
2261
+ '--bulma-panel-block-active-icon-color',
2262
+ '--bulma-panel-icon-color',
2263
+ '--bulma-tabs-border-bottom-color',
2264
+ '--bulma-tabs-border-bottom-style',
2265
+ '--bulma-tabs-border-bottom-width',
2266
+ '--bulma-tabs-link-color',
2267
+ '--bulma-tabs-link-hover-border-bottom-color',
2268
+ '--bulma-tabs-link-hover-color',
2269
+ '--bulma-tabs-link-active-border-bottom-color',
2270
+ '--bulma-tabs-link-active-color',
2271
+ '--bulma-tabs-link-padding',
2272
+ '--bulma-tabs-boxed-link-radius',
2273
+ '--bulma-tabs-boxed-link-hover-background-color',
2274
+ '--bulma-tabs-boxed-link-hover-border-bottom-color',
2275
+ '--bulma-tabs-boxed-link-active-background-color',
2276
+ '--bulma-tabs-boxed-link-active-border-color',
2277
+ '--bulma-tabs-boxed-link-active-border-bottom-color',
2278
+ '--bulma-tabs-toggle-link-border-color',
2279
+ '--bulma-tabs-toggle-link-border-style',
2280
+ '--bulma-tabs-toggle-link-border-width',
2281
+ '--bulma-tabs-toggle-link-hover-background-color',
2282
+ '--bulma-tabs-toggle-link-hover-border-color',
2283
+ '--bulma-tabs-toggle-link-radius',
2284
+ '--bulma-tabs-toggle-link-active-background-color',
2285
+ '--bulma-tabs-toggle-link-active-border-color',
2286
+ '--bulma-tabs-toggle-link-active-color',
2287
+ '--bulma-box-background-color',
2288
+ '--bulma-box-color',
2289
+ '--bulma-box-radius',
2290
+ '--bulma-box-shadow',
2291
+ '--bulma-box-padding',
2292
+ '--bulma-box-link-hover-shadow',
2293
+ '--bulma-box-link-active-shadow',
2294
+ '--bulma-content-heading-color',
2295
+ '--bulma-content-heading-weight',
2296
+ '--bulma-content-heading-line-height',
2297
+ '--bulma-content-block-margin-bottom',
2298
+ '--bulma-content-blockquote-background-color',
2299
+ '--bulma-content-blockquote-border-left',
2300
+ '--bulma-content-blockquote-padding',
2301
+ '--bulma-content-pre-padding',
2302
+ '--bulma-content-table-cell-border',
2303
+ '--bulma-content-table-cell-border-width',
2304
+ '--bulma-content-table-cell-padding',
2305
+ '--bulma-content-table-cell-heading-color',
2306
+ '--bulma-content-table-head-cell-border-width',
2307
+ '--bulma-content-table-head-cell-color',
2308
+ '--bulma-content-table-body-last-row-cell-border-bottom-width',
2309
+ '--bulma-content-table-foot-cell-border-width',
2310
+ '--bulma-content-table-foot-cell-color',
2311
+ '--bulma-delete-dimensions',
2312
+ '--bulma-delete-background-l',
2313
+ '--bulma-delete-background-alpha',
2314
+ '--bulma-delete-color',
2315
+ '--bulma-icon-dimensions',
2316
+ '--bulma-icon-dimensions-small',
2317
+ '--bulma-icon-dimensions-medium',
2318
+ '--bulma-icon-dimensions-large',
2319
+ '--bulma-icon-text-spacing',
2320
+ '--bulma-notification-h',
2321
+ '--bulma-notification-s',
2322
+ '--bulma-notification-background-l',
2323
+ '--bulma-notification-color-l',
2324
+ '--bulma-notification-code-background-color',
2325
+ '--bulma-notification-radius',
2326
+ '--bulma-notification-padding',
2327
+ '--bulma-progress-border-radius',
2328
+ '--bulma-progress-bar-background-color',
2329
+ '--bulma-progress-value-background-color',
2330
+ '--bulma-progress-indeterminate-duration',
2331
+ '--bulma-table-color',
2332
+ '--bulma-table-background-color',
2333
+ '--bulma-table-cell-border-color',
2334
+ '--bulma-table-cell-border-style',
2335
+ '--bulma-table-cell-border-width',
2336
+ '--bulma-table-cell-padding',
2337
+ '--bulma-table-cell-heading-color',
2338
+ '--bulma-table-cell-text-align',
2339
+ '--bulma-table-head-cell-border-width',
2340
+ '--bulma-table-head-cell-color',
2341
+ '--bulma-table-foot-cell-border-width',
2342
+ '--bulma-table-foot-cell-color',
2343
+ '--bulma-table-head-background-color',
2344
+ '--bulma-table-body-background-color',
2345
+ '--bulma-table-foot-background-color',
2346
+ '--bulma-table-row-hover-background-color',
2347
+ '--bulma-table-row-active-background-color',
2348
+ '--bulma-table-row-active-color',
2349
+ '--bulma-table-striped-row-even-background-color',
2350
+ '--bulma-table-striped-row-even-hover-background-color',
2351
+ '--bulma-tag-h',
2352
+ '--bulma-tag-s',
2353
+ '--bulma-tag-background-l',
2354
+ '--bulma-tag-background-l-delta',
2355
+ '--bulma-tag-hover-background-l-delta',
2356
+ '--bulma-tag-active-background-l-delta',
2357
+ '--bulma-tag-color-l',
2358
+ '--bulma-tag-radius',
2359
+ '--bulma-tag-delete-margin',
2360
+ '--bulma-title-color',
2361
+ '--bulma-title-family',
2362
+ '--bulma-title-size',
2363
+ '--bulma-title-weight',
2364
+ '--bulma-title-line-height',
2365
+ '--bulma-title-strong-color',
2366
+ '--bulma-title-strong-weight',
2367
+ '--bulma-title-sub-size',
2368
+ '--bulma-title-sup-size',
2369
+ '--bulma-subtitle-color',
2370
+ '--bulma-subtitle-family',
2371
+ '--bulma-subtitle-size',
2372
+ '--bulma-subtitle-weight',
2373
+ '--bulma-subtitle-line-height',
2374
+ '--bulma-subtitle-strong-color',
2375
+ '--bulma-subtitle-strong-weight',
2376
+ '--bulma-control-radius',
2377
+ '--bulma-control-radius-small',
2378
+ '--bulma-control-border-width',
2379
+ '--bulma-control-height',
2380
+ '--bulma-control-line-height',
2381
+ '--bulma-control-padding-vertical',
2382
+ '--bulma-control-padding-horizontal',
2383
+ '--bulma-control-size',
2384
+ '--bulma-control-focus-shadow-l',
2385
+ '--bulma-file-radius',
2386
+ '--bulma-file-name-border-color',
2387
+ '--bulma-file-name-border-style',
2388
+ '--bulma-file-name-border-width',
2389
+ '--bulma-file-name-max-width',
2390
+ '--bulma-file-h',
2391
+ '--bulma-file-s',
2392
+ '--bulma-file-background-l',
2393
+ '--bulma-file-background-l-delta',
2394
+ '--bulma-file-hover-background-l-delta',
2395
+ '--bulma-file-active-background-l-delta',
2396
+ '--bulma-file-border-l',
2397
+ '--bulma-file-border-l-delta',
2398
+ '--bulma-file-hover-border-l-delta',
2399
+ '--bulma-file-active-border-l-delta',
2400
+ '--bulma-file-cta-color-l',
2401
+ '--bulma-file-name-color-l',
2402
+ '--bulma-file-color-l-delta',
2403
+ '--bulma-file-hover-color-l-delta',
2404
+ '--bulma-file-active-color-l-delta',
2405
+ '--bulma-input-h',
2406
+ '--bulma-input-s',
2407
+ '--bulma-input-l',
2408
+ '--bulma-input-border-style',
2409
+ '--bulma-input-border-l',
2410
+ '--bulma-input-border-l-delta',
2411
+ '--bulma-input-hover-border-l-delta',
2412
+ '--bulma-input-active-border-l-delta',
2413
+ '--bulma-input-focus-h',
2414
+ '--bulma-input-focus-s',
2415
+ '--bulma-input-focus-l',
2416
+ '--bulma-input-focus-shadow-size',
2417
+ '--bulma-input-focus-shadow-alpha',
2418
+ '--bulma-input-color-l',
2419
+ '--bulma-input-background-l',
2420
+ '--bulma-input-background-l-delta',
2421
+ '--bulma-input-height',
2422
+ '--bulma-input-shadow',
2423
+ '--bulma-input-placeholder-color',
2424
+ '--bulma-input-disabled-color',
2425
+ '--bulma-input-disabled-background-color',
2426
+ '--bulma-input-disabled-border-color',
2427
+ '--bulma-input-disabled-placeholder-color',
2428
+ '--bulma-input-arrow',
2429
+ '--bulma-input-icon-color',
2430
+ '--bulma-input-icon-hover-color',
2431
+ '--bulma-input-icon-focus-color',
2432
+ '--bulma-input-radius',
2433
+ '--bulma-column-gap',
2434
+ '--bulma-grid-gap',
2435
+ '--bulma-grid-column-count',
2436
+ '--bulma-grid-column-min',
2437
+ '--bulma-grid-cell-column-span',
2438
+ '--bulma-grid-cell-column-start',
2439
+ '--bulma-footer-background-color',
2440
+ '--bulma-footer-color',
2441
+ '--bulma-footer-padding',
2442
+ '--bulma-hero-body-padding',
2443
+ '--bulma-hero-body-padding-tablet',
2444
+ '--bulma-hero-body-padding-small',
2445
+ '--bulma-hero-body-padding-medium',
2446
+ '--bulma-hero-body-padding-large',
2447
+ '--bulma-media-border-color',
2448
+ '--bulma-media-border-size',
2449
+ '--bulma-media-spacing',
2450
+ '--bulma-media-spacing-large',
2451
+ '--bulma-media-content-spacing',
2452
+ '--bulma-media-level-1-spacing',
2453
+ '--bulma-media-level-1-content-spacing',
2454
+ '--bulma-media-level-2-spacing',
2455
+ '--bulma-section-padding',
2456
+ '--bulma-section-padding-desktop',
2457
+ '--bulma-section-padding-medium',
2458
+ '--bulma-section-padding-large',
2459
+ ];
2460
+ function cssVarToProp(varName) {
2461
+ return varName
2462
+ .replace(/^--bulma-/, '')
2463
+ .split('-')
2464
+ .map((part, i) => i === 0 ? part : part.charAt(0).toUpperCase() + part.slice(1))
2465
+ .join('');
2466
+ }
2467
+ const bulmaVarPropMap = Object.fromEntries(bulmaCssVars.map(cssVar => [cssVarToProp(cssVar), cssVar]));
2468
+ const Theme = ({ bulmaVars = {}, children, className, isRoot = false, ...restProps }) => {
2469
+ const { bulmaVarProps, otherProps } = React.useMemo(() => {
2470
+ const varProps = {};
2471
+ const otherPropsObj = {};
2472
+ for (const [key, value] of Object.entries(restProps)) {
2473
+ if (Object.prototype.hasOwnProperty.call(bulmaVarPropMap, key)) {
2474
+ varProps[key] = value;
2475
+ }
2476
+ else {
2477
+ otherPropsObj[key] = value;
2478
+ }
2479
+ }
2480
+ return { bulmaVarProps: varProps, otherProps: otherPropsObj };
2481
+ }, [restProps]);
2482
+ const { bulmaHelperClasses, rest } = useBulmaClasses(otherProps);
2483
+ const mergedVars = React.useMemo(() => {
2484
+ const vars = { ...bulmaVars };
2485
+ for (const [propName, cssVar] of Object.entries(bulmaVarPropMap)) {
2486
+ if (bulmaVarProps[propName] !== undefined) {
2487
+ vars[cssVar] = bulmaVarProps[propName];
2488
+ }
2489
+ }
2490
+ return vars;
2491
+ }, [bulmaVars, bulmaVarProps]);
2492
+ React.useEffect(() => {
2493
+ if (!isRoot) {
2494
+ return;
2495
+ }
2496
+ const validVars = Object.entries(mergedVars).filter(([key, value]) => bulmaCssVars.includes(key) && value);
2497
+ if (validVars.length === 0) {
2498
+ return;
2499
+ }
2500
+ const styleId = 'bestax-bulma-theme-vars';
2501
+ let styleElement = document.getElementById(styleId);
2502
+ if (!styleElement) {
2503
+ styleElement = document.createElement('style');
2504
+ styleElement.id = styleId;
2505
+ document.head.appendChild(styleElement);
2506
+ }
2507
+ const cssRules = validVars
2508
+ .map(([key, value]) => `${key}: ${value};`)
2509
+ .join(' ');
2510
+ styleElement.textContent = `:root { ${cssRules} }`;
2511
+ return () => {
2512
+ const element = document.getElementById(styleId);
2513
+ if (element) {
2514
+ element.remove();
2515
+ }
2516
+ };
2517
+ }, [mergedVars, isRoot]);
2518
+ const style = React.useMemo(() => {
2519
+ if (isRoot) {
2520
+ return {};
2521
+ }
2522
+ const styleObj = {};
2523
+ for (const [key, value] of Object.entries(mergedVars)) {
2524
+ if (bulmaCssVars.includes(key) && value) {
2525
+ styleObj[key] = value;
2526
+ }
2527
+ }
2528
+ return styleObj;
2529
+ }, [mergedVars, isRoot]);
2530
+ const combinedClassName = React.useMemo(() => {
2531
+ if (isRoot) {
2532
+ return '';
2533
+ }
2534
+ return classNames(className, bulmaHelperClasses);
2535
+ }, [className, bulmaHelperClasses, isRoot]);
2536
+ return isRoot ? (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: children })) : (jsxRuntimeExports.jsx("div", { className: combinedClassName || undefined, style: style, ...rest, children: children }));
2537
+ };
2538
+
1878
2539
  const Container = ({ className, textColor, bgColor, fluid, widescreen, fullhd, breakpoint, isMax, children, ...props }) => {
1879
2540
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1880
2541
  color: textColor,
@@ -1895,29 +2556,40 @@ const Container = ({ className, textColor, bgColor, fluid, widescreen, fullhd, b
1895
2556
  breakpointClass = `is-${breakpoint}`;
1896
2557
  }
1897
2558
  }
1898
- const containerClasses = classNames('container', {
2559
+ const mainClass = usePrefixedClassNames('container');
2560
+ const containerModifiers = usePrefixedClassNames('', {
1899
2561
  'is-fluid': fluid,
1900
2562
  'is-widescreen': widescreen,
1901
2563
  'is-fullhd': fullhd,
1902
- }, breakpointClass, className, bulmaHelperClasses);
2564
+ });
2565
+ const prefixedBreakpointClass = usePrefixedClassNames(breakpointClass || '');
2566
+ const containerClasses = classNames(mainClass, containerModifiers, prefixedBreakpointClass, className, bulmaHelperClasses);
1903
2567
  return (jsxRuntimeExports.jsx("div", { className: containerClasses, ...rest, children: children }));
1904
2568
  };
1905
2569
 
1906
- const Footer = ({ as = 'footer', className, children, ...props }) => {
1907
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
2570
+ const Footer = ({ as = 'footer', className, children, color, bgColor, textColor, ...props }) => {
2571
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2572
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2573
+ backgroundColor: bgColor,
2574
+ ...props,
2575
+ });
1908
2576
  const Tag = as;
1909
- return (jsxRuntimeExports.jsx(Tag, { className: classNames('footer', bulmaHelperClasses, className), ...rest, children: children }));
2577
+ const mainClass = usePrefixedClassNames('footer');
2578
+ const footerClasses = classNames(mainClass, bulmaHelperClasses, className);
2579
+ return (jsxRuntimeExports.jsx(Tag, { className: footerClasses, ...rest, children: children }));
1910
2580
  };
1911
2581
 
1912
2582
  const Hero = ({ className, color, size, bgColor, fullheightWithNavbar, children, ...props }) => {
1913
2583
  const { bulmaHelperClasses, rest } = useBulmaClasses({
1914
- color,
1915
2584
  backgroundColor: bgColor,
1916
2585
  ...props,
1917
2586
  });
1918
- const heroClasses = classNames('hero', bulmaHelperClasses, className, color && `is-${color}`, size && size !== 'fullheight-with-navbar' && `is-${size}`, {
2587
+ const mainClass = usePrefixedClassNames('hero', {
2588
+ [`is-${color}`]: color,
2589
+ [`is-${size}`]: size && size !== 'fullheight-with-navbar',
1919
2590
  'is-fullheight-with-navbar': fullheightWithNavbar || size === 'fullheight-with-navbar',
1920
2591
  });
2592
+ const heroClasses = classNames(mainClass, bulmaHelperClasses, className);
1921
2593
  return (jsxRuntimeExports.jsx("section", { className: heroClasses, ...rest, children: children }));
1922
2594
  };
1923
2595
  const HeroHead = ({ className, children, color, bgColor, textColor, ...props }) => {
@@ -1926,7 +2598,9 @@ const HeroHead = ({ className, children, color, bgColor, textColor, ...props })
1926
2598
  backgroundColor: bgColor,
1927
2599
  ...props,
1928
2600
  });
1929
- return (jsxRuntimeExports.jsx("div", { className: classNames('hero-head', bulmaHelperClasses, className), ...rest, children: children }));
2601
+ const mainClass = usePrefixedClassNames('hero-head');
2602
+ const heroHeadClasses = classNames(mainClass, bulmaHelperClasses, className);
2603
+ return (jsxRuntimeExports.jsx("div", { className: heroHeadClasses, ...rest, children: children }));
1930
2604
  };
1931
2605
  const HeroBody = ({ className, children, color, bgColor, textColor, ...props }) => {
1932
2606
  const { bulmaHelperClasses, rest } = useBulmaClasses({
@@ -1934,7 +2608,9 @@ const HeroBody = ({ className, children, color, bgColor, textColor, ...props })
1934
2608
  backgroundColor: bgColor,
1935
2609
  ...props,
1936
2610
  });
1937
- return (jsxRuntimeExports.jsx("div", { className: classNames('hero-body', bulmaHelperClasses, className), ...rest, children: children }));
2611
+ const mainClass = usePrefixedClassNames('hero-body');
2612
+ const heroBodyClasses = classNames(mainClass, bulmaHelperClasses, className);
2613
+ return (jsxRuntimeExports.jsx("div", { className: heroBodyClasses, ...rest, children: children }));
1938
2614
  };
1939
2615
  const HeroFoot = ({ className, children, color, bgColor, textColor, ...props }) => {
1940
2616
  const { bulmaHelperClasses, rest } = useBulmaClasses({
@@ -1942,69 +2618,124 @@ const HeroFoot = ({ className, children, color, bgColor, textColor, ...props })
1942
2618
  backgroundColor: bgColor,
1943
2619
  ...props,
1944
2620
  });
1945
- return (jsxRuntimeExports.jsx("div", { className: classNames('hero-foot', bulmaHelperClasses, className), ...rest, children: children }));
2621
+ const mainClass = usePrefixedClassNames('hero-foot');
2622
+ const heroFootClasses = classNames(mainClass, bulmaHelperClasses, className);
2623
+ return (jsxRuntimeExports.jsx("div", { className: heroFootClasses, ...rest, children: children }));
1946
2624
  };
1947
2625
  Hero.Head = HeroHead;
1948
2626
  Hero.Body = HeroBody;
1949
2627
  Hero.Foot = HeroFoot;
1950
2628
 
1951
- const Level = ({ isMobile, className, children, ...props }) => {
1952
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
1953
- return (jsxRuntimeExports.jsx("nav", { className: classNames('level', bulmaHelperClasses, className, {
1954
- 'is-mobile': isMobile,
1955
- }), ...rest, children: children }));
2629
+ const Level = ({ isMobile, className, children, color, bgColor, textColor, ...props }) => {
2630
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2631
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2632
+ backgroundColor: bgColor,
2633
+ ...props,
2634
+ });
2635
+ const mainClass = usePrefixedClassNames('level', {
2636
+ 'is-mobile': isMobile,
2637
+ });
2638
+ const levelClasses = classNames(mainClass, bulmaHelperClasses, className);
2639
+ return (jsxRuntimeExports.jsx("nav", { className: levelClasses, ...rest, children: children }));
1956
2640
  };
1957
- const LevelLeft = ({ className, children, ...props }) => {
1958
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
1959
- return (jsxRuntimeExports.jsx("div", { className: classNames('level-left', bulmaHelperClasses, className), ...rest, children: children }));
2641
+ const LevelLeft = ({ className, children, color, bgColor, textColor, ...props }) => {
2642
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2643
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2644
+ backgroundColor: bgColor,
2645
+ ...props,
2646
+ });
2647
+ const mainClass = usePrefixedClassNames('level-left');
2648
+ const levelLeftClasses = classNames(mainClass, bulmaHelperClasses, className);
2649
+ return (jsxRuntimeExports.jsx("div", { className: levelLeftClasses, ...rest, children: children }));
1960
2650
  };
1961
- const LevelRight = ({ className, children, ...props }) => {
1962
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
1963
- return (jsxRuntimeExports.jsx("div", { className: classNames('level-right', bulmaHelperClasses, className), ...rest, children: children }));
2651
+ const LevelRight = ({ className, children, color, bgColor, textColor, ...props }) => {
2652
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2653
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2654
+ backgroundColor: bgColor,
2655
+ ...props,
2656
+ });
2657
+ const mainClass = usePrefixedClassNames('level-right');
2658
+ const levelRightClasses = classNames(mainClass, bulmaHelperClasses, className);
2659
+ return (jsxRuntimeExports.jsx("div", { className: levelRightClasses, ...rest, children: children }));
1964
2660
  };
1965
- const LevelItem = ({ as = 'div', hasTextCentered, className, children, href, target, rel, ...props }) => {
1966
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
2661
+ const LevelItem = ({ as = 'div', hasTextCentered, className, children, href, target, rel, color, bgColor, textColor, ...props }) => {
2662
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2663
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2664
+ backgroundColor: bgColor,
2665
+ ...props,
2666
+ });
1967
2667
  const Tag = as;
2668
+ const mainClass = usePrefixedClassNames('level-item', {
2669
+ 'has-text-centered': hasTextCentered,
2670
+ });
2671
+ const levelItemClasses = classNames(mainClass, bulmaHelperClasses, className);
1968
2672
  if (Tag === 'a') {
1969
- return (jsxRuntimeExports.jsx("a", { className: classNames('level-item', bulmaHelperClasses, className, {
1970
- 'has-text-centered': hasTextCentered,
1971
- }), href: href, target: target, rel: rel, ...rest, children: children }));
2673
+ return (jsxRuntimeExports.jsx("a", { className: levelItemClasses, href: href, target: target, rel: rel, ...rest, children: children }));
1972
2674
  }
1973
- return (jsxRuntimeExports.jsx(Tag, { className: classNames('level-item', bulmaHelperClasses, className, {
1974
- 'has-text-centered': hasTextCentered,
1975
- }), ...rest, children: children }));
2675
+ return (jsxRuntimeExports.jsx(Tag, { className: levelItemClasses, ...rest, children: children }));
1976
2676
  };
1977
2677
  Level.Left = LevelLeft;
1978
2678
  Level.Right = LevelRight;
1979
2679
  Level.Item = LevelItem;
1980
2680
 
1981
- const Media = ({ as = 'article', className, children, ...props }) => {
1982
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
2681
+ const Media = ({ as = 'article', className, children, color, bgColor, textColor, ...props }) => {
2682
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2683
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2684
+ backgroundColor: bgColor,
2685
+ ...props,
2686
+ });
1983
2687
  const Tag = as;
1984
- return (jsxRuntimeExports.jsx(Tag, { className: classNames('media', bulmaHelperClasses, className), ...rest, children: children }));
2688
+ const mainClass = usePrefixedClassNames('media');
2689
+ const mediaClasses = classNames(mainClass, bulmaHelperClasses, className);
2690
+ return (jsxRuntimeExports.jsx(Tag, { className: mediaClasses, ...rest, children: children }));
1985
2691
  };
1986
- const MediaLeft = ({ as = 'figure', className, children, ...props }) => {
1987
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
2692
+ const MediaLeft = ({ as = 'figure', className, children, color, bgColor, textColor, ...props }) => {
2693
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2694
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2695
+ backgroundColor: bgColor,
2696
+ ...props,
2697
+ });
1988
2698
  const Tag = as;
1989
- return (jsxRuntimeExports.jsx(Tag, { className: classNames('media-left', bulmaHelperClasses, className), ...rest, children: children }));
2699
+ const mainClass = usePrefixedClassNames('media-left');
2700
+ const mediaLeftClasses = classNames(mainClass, bulmaHelperClasses, className);
2701
+ return (jsxRuntimeExports.jsx(Tag, { className: mediaLeftClasses, ...rest, children: children }));
1990
2702
  };
1991
- const MediaContent = ({ className, children, ...props }) => {
1992
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
1993
- return (jsxRuntimeExports.jsx("div", { className: classNames('media-content', bulmaHelperClasses, className), ...rest, children: children }));
2703
+ const MediaContent = ({ className, children, color, bgColor, textColor, ...props }) => {
2704
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2705
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2706
+ backgroundColor: bgColor,
2707
+ ...props,
2708
+ });
2709
+ const mainClass = usePrefixedClassNames('media-content');
2710
+ const mediaContentClasses = classNames(mainClass, bulmaHelperClasses, className);
2711
+ return (jsxRuntimeExports.jsx("div", { className: mediaContentClasses, ...rest, children: children }));
1994
2712
  };
1995
- const MediaRight = ({ className, children, ...props }) => {
1996
- const { bulmaHelperClasses, rest } = useBulmaClasses(props);
1997
- return (jsxRuntimeExports.jsx("div", { className: classNames('media-right', bulmaHelperClasses, className), ...rest, children: children }));
2713
+ const MediaRight = ({ className, children, color, bgColor, textColor, ...props }) => {
2714
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2715
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2716
+ backgroundColor: bgColor,
2717
+ ...props,
2718
+ });
2719
+ const mainClass = usePrefixedClassNames('media-right');
2720
+ const mediaRightClasses = classNames(mainClass, bulmaHelperClasses, className);
2721
+ return (jsxRuntimeExports.jsx("div", { className: mediaRightClasses, ...rest, children: children }));
1998
2722
  };
1999
- Media.Left = MediaLeft;
2000
- Media.Content = MediaContent;
2001
- Media.Right = MediaRight;
2723
+ const MediaWithSubcomponents = Media;
2724
+ MediaWithSubcomponents.Left = MediaLeft;
2725
+ MediaWithSubcomponents.Content = MediaContent;
2726
+ MediaWithSubcomponents.Right = MediaRight;
2002
2727
 
2003
- const Section = ({ size, className, children, ...props }) => {
2004
- const { bulmaHelperClasses, rest } = useBulmaClasses({ ...props });
2005
- const sectionClasses = classNames('section', className, bulmaHelperClasses, {
2728
+ const Section = ({ size, className, children, color, bgColor, textColor, ...props }) => {
2729
+ const { bulmaHelperClasses, rest } = useBulmaClasses({
2730
+ color: textColor !== null && textColor !== void 0 ? textColor : color,
2731
+ backgroundColor: bgColor,
2732
+ ...props,
2733
+ });
2734
+ const mainClass = usePrefixedClassNames('section');
2735
+ const sectionModifiers = usePrefixedClassNames('', {
2006
2736
  [`is-${size}`]: size,
2007
2737
  });
2738
+ const sectionClasses = classNames(mainClass, sectionModifiers, className, bulmaHelperClasses);
2008
2739
  return (jsxRuntimeExports.jsx("section", { className: sectionClasses, ...rest, children: children }));
2009
2740
  };
2010
2741
 
@@ -2019,6 +2750,7 @@ exports.Checkbox = Checkbox;
2019
2750
  exports.Checkboxes = Checkboxes;
2020
2751
  exports.Column = Column;
2021
2752
  exports.Columns = Columns;
2753
+ exports.ConfigProvider = ConfigProvider;
2022
2754
  exports.Container = Container;
2023
2755
  exports.Content = Content;
2024
2756
  exports.Control = Control;
@@ -2098,12 +2830,19 @@ exports.TextArea = TextArea;
2098
2830
  exports.Tfoot = Tfoot;
2099
2831
  exports.Th = Th;
2100
2832
  exports.Thead = Thead;
2833
+ exports.Theme = Theme;
2101
2834
  exports.Title = Title;
2102
2835
  exports.Tr = Tr;
2103
2836
  exports.__test_exports__ = __test_exports__;
2104
2837
  exports.classNames = classNames;
2838
+ exports.createPrefixedClassNames = createPrefixedClassNames;
2105
2839
  exports.isBrowser = isBrowser;
2840
+ exports.prefixedClassNames = prefixedClassNames;
2106
2841
  exports.useBulmaClasses = useBulmaClasses;
2842
+ exports.useClassPrefix = useClassPrefix;
2843
+ exports.useConfig = useConfig;
2844
+ exports.usePrefixedClass = usePrefixedClass;
2845
+ exports.usePrefixedClassNames = usePrefixedClassNames;
2107
2846
  exports.validAlignContents = validAlignContents;
2108
2847
  exports.validAlignItems = validAlignItems;
2109
2848
  exports.validAlignSelfs = validAlignSelfs;