react-asc 23.3.2 → 23.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { COLOR } from '../component.enums';
3
+ export interface IButtonContext {
4
+ color: COLOR;
5
+ }
6
+ export declare const ButtonContext: import("react").Context<IButtonContext>;
7
+ export declare const useButtonContext: () => IButtonContext;
@@ -1 +1,2 @@
1
1
  export * from './Button';
2
+ export * from './ButtonContext';
@@ -1,2 +1,6 @@
1
1
  import React from 'react';
2
- export declare const ButtonGroup: (props: React.ComponentProps<'div'>) => JSX.Element;
2
+ import { COLOR } from '../component.enums';
3
+ export interface IButtonGroupProps extends React.ComponentProps<'div'> {
4
+ color?: COLOR;
5
+ }
6
+ export declare const ButtonGroup: (props: IButtonGroupProps) => JSX.Element;
package/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import React, { useRef, useEffect, useState, Fragment, Component, createRef, cloneElement, createContext, useContext } from 'react';
1
+ import React, { useRef, useEffect, useState, createContext, useContext, Fragment, Component, createRef, cloneElement } from 'react';
2
2
  import { createPortal, render, unmountComponentAtNode } from 'react-dom';
3
3
  import { createPopper } from '@popperjs/core';
4
4
 
@@ -291,7 +291,7 @@ function useMobileDetect() {
291
291
  const windowSize = useWindowSize();
292
292
  const checkIsMobile = (height, width) => {
293
293
  if (height > 0 && width > 0) {
294
- setIsMobile(!(width >= 1024));
294
+ setIsMobile(!(width >= 640));
295
295
  }
296
296
  };
297
297
  useEffect(() => {
@@ -527,22 +527,29 @@ var css_248z$O = ".Button-module_button__qeIer {\n text-transform: uppercase;\n
527
527
  var styles$O = {"button":"Button-module_button__qeIer","shadow":"Button-module_shadow__6N2nE","block":"Button-module_block__JIazf","btnContained":"Button-module_btnContained__16y5l","primary":"Button-module_primary__EUyOu","accent":"Button-module_accent__opVgQ","secondary":"Button-module_secondary__zKoGk","light":"Button-module_light__LXeZy","dark":"Button-module_dark__5oFOT","btnText":"Button-module_btnText__N5Gys","btnOutline":"Button-module_btnOutline__CCFPI","startIcon":"Button-module_startIcon__Eylwr","endIcon":"Button-module_endIcon__pCffL"};
528
528
  styleInject(css_248z$O);
529
529
 
530
+ const ButtonContext = createContext({
531
+ color: COLOR.primary
532
+ });
533
+ const useButtonContext = () => useContext(ButtonContext);
534
+
530
535
  const Button = (props) => {
531
536
  const { children, variant = VARIANT.contained, color = COLOR.primary, isRounded, isActive, className, startIcon, endIcon, shadow = true, block } = props, rest = __rest(props, ["children", "variant", "color", "isRounded", "isActive", "className", "startIcon", "endIcon", "shadow", "block"]);
537
+ const buttonContext = useButtonContext();
532
538
  const getCssClasses = () => {
533
539
  const cssClasses = [];
534
540
  cssClasses.push(styles$O.button);
541
+ const buttonColor = buttonContext.color || color;
535
542
  if (variant !== 'outline' && variant !== 'text') {
536
543
  cssClasses.push(styles$O.btnContained);
537
- cssClasses.push(styles$O[color]);
544
+ cssClasses.push(styles$O[buttonColor]);
538
545
  }
539
546
  if (variant === 'outline') {
540
547
  cssClasses.push(styles$O.btnOutline);
541
- cssClasses.push(styles$O[color]);
548
+ cssClasses.push(styles$O[buttonColor]);
542
549
  }
543
550
  if (variant === 'text') {
544
551
  cssClasses.push(styles$O.btnText);
545
- cssClasses.push(styles$O[color]);
552
+ cssClasses.push(styles$O[buttonColor]);
546
553
  }
547
554
  if (isRounded && variant !== 'text') {
548
555
  cssClasses.push(`rounded-pill`);
@@ -569,14 +576,15 @@ var styles$N = {"buttonGroup":"ButtonGroup-module_buttonGroup__w6iB-"};
569
576
  styleInject(css_248z$N);
570
577
 
571
578
  const ButtonGroup = (props) => {
572
- const { children, className } = props, rest = __rest(props, ["children", "className"]);
579
+ const { children, className, color } = props, rest = __rest(props, ["children", "className", "color"]);
573
580
  const getCssClasses = () => {
574
581
  const cssClasses = [];
575
582
  cssClasses.push(styles$N.buttonGroup);
576
583
  className && cssClasses.push(className);
577
584
  return cssClasses.filter(css => css).join(' ');
578
585
  };
579
- return (React.createElement("div", Object.assign({ className: getCssClasses(), role: "group" }, rest), children));
586
+ return (React.createElement(ButtonContext.Provider, { value: { color: color || COLOR.primary } },
587
+ React.createElement("div", Object.assign({ className: getCssClasses(), role: "group" }, rest), children)));
580
588
  };
581
589
 
582
590
  var css_248z$M = ".Breadcrumb-module_breadcrumb__-pvAn {\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n margin: 0;\n}";
@@ -1513,7 +1521,7 @@ const DateSelect = (props) => {
1513
1521
  // return Math.ceil((((d - yearStart) / 86400000) + 1) / 7)
1514
1522
  // };
1515
1523
 
1516
- var css_248z$u = ".Drawer-module_drawer__kdQCk {\n height: 100%;\n z-index: 1101;\n bottom: 0;\n position: fixed;\n background: white;\n min-width: 320px;\n overflow-y: auto;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_permanent__c-y8y {\n position: inherit;\n z-index: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_left__loQVO {\n order: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_right__sJ3mZ {\n order: 2;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_shadow__Myo3n {\n box-shadow: var(--shadow);\n}\n\n.Drawer-module_drawerOpen__07ptP {\n overflow: hidden;\n}";
1524
+ var css_248z$u = ".Drawer-module_drawer__kdQCk {\n height: 100%;\n z-index: 1101;\n bottom: 0;\n position: fixed;\n background: white;\n min-width: 320px;\n overflow-y: auto;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_permanent__c-y8y {\n position: inherit;\n z-index: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_left__loQVO {\n order: 0;\n left: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_right__sJ3mZ {\n order: 2;\n right: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_shadow__Myo3n {\n box-shadow: var(--shadow);\n}\n\n.Drawer-module_drawerOpen__07ptP {\n overflow: hidden;\n}";
1517
1525
  var styles$u = {"drawer":"Drawer-module_drawer__kdQCk","permanent":"Drawer-module_permanent__c-y8y","left":"Drawer-module_left__loQVO","right":"Drawer-module_right__sJ3mZ","shadow":"Drawer-module_shadow__Myo3n","drawerOpen":"Drawer-module_drawerOpen__07ptP"};
1518
1526
  styleInject(css_248z$u);
1519
1527
 
@@ -2440,7 +2448,7 @@ var styles$5 = {"tabIndicator":"TabIndicator-module_tabIndicator__jSJhH","primar
2440
2448
  styleInject(css_248z$5);
2441
2449
 
2442
2450
  const TabIndicator = (props) => {
2443
- const { color = COLOR.accent, width, amount, index } = props;
2451
+ const { color = COLOR.primary, width, amount, index } = props;
2444
2452
  const getCssClasses = () => {
2445
2453
  const cssClasses = [];
2446
2454
  cssClasses.push(styles$5.tabIndicator);
@@ -2458,7 +2466,7 @@ var styles$4 = {"tabs":"Tabs-module_tabs__YyRTZ"};
2458
2466
  styleInject(css_248z$4);
2459
2467
 
2460
2468
  const Tabs = (props) => {
2461
- const { children, className, fixed, indicatorColor, onChange, value } = props;
2469
+ const { children, className, fixed, color, indicatorColor, onChange, value } = props;
2462
2470
  const [selectedValue, setSelectedValue] = useState(value);
2463
2471
  const [selectedIndex, setSelectedIndex] = useState();
2464
2472
  useEffect(() => {
@@ -2487,7 +2495,7 @@ const Tabs = (props) => {
2487
2495
  onClick: (e) => handleClickTab(e.event, e.value, index),
2488
2496
  });
2489
2497
  };
2490
- return (React.createElement(React.Fragment, null,
2498
+ return (React.createElement(ButtonContext.Provider, { value: { color: color || COLOR.light } },
2491
2499
  React.createElement("div", { className: getCssClasses() },
2492
2500
  children && React.Children.toArray(children).map((child, index) => renderTabs(child, index)),
2493
2501
  children &&
@@ -2751,4 +2759,4 @@ const TreeItem = (props) => {
2751
2759
  children && _isExpanded ? React.createElement("ul", null, children) : null));
2752
2760
  };
2753
2761
 
2754
- export { Alert, AppBar, AppBarTitle, AutoComplete, Backdrop, Badge, Breadcrumb, BreadcrumbItem, Button, ButtonGroup, COLOR, Card, CardBody, CardFooter, CardImage, CardSubtitle, CardText, CardTitle, CaretDownSolidIcon, CheckSolidIcon, CheckSquareRegularIcon, Checkbox, ChevronDownSolidIcon, ChevronLeftSolidIcon, ChevronRightSolidIcon, ChevronUpSolidIcon, Chip, CircleSolidIcon, Column, ConditionalWrapper, CssTransition, DATEMODE, DateSelect, DaySelect, Drawer, EmailValidator, ExpansionPanel, ExpansionPanelContent, ExpansionPanelHeader, FileInput, FloatingActionButton, Form, FormControl, FormError, FormGroup, FormHint, FormInput, FormLabel, GlobalModal, HomeSolidIcon, HourSelect, Icon, IconButton, IsEmptyValidator, IsEqualValidator, Link, List, ListItem, ListItemAction, ListItemAvatar, ListItemIcon, ListItemText, LoadingIndicator, LoadingIndicatorContainer, MODALBUTTONTYPE, MODALTYPE, Menu, MenuBody, MenuDivider, MenuItem, MenuToggle, MilliSecondSelect, MinuteSelect, Modal, ModalBody, ModalFooter, ModalHeader, MonthSelect, NumberSelect, POSITION, PlusSolidIcon, Row, SIZE, STATUS, SecondSelect, Select, Sidebar, Snackbar, SpeedDial, SpeedDialAction, SpeedDialIcon, SpinnerSolidIcon, SquareRegularIcon, Step, Stepper, StepperActions, TIMEMODE, Tab, TabPanel, Table, TableBody, TableCell, TableHead, TableRow, Tabs, Textarea, TimeSelect, TimesCircleSolidIcon, TimesSolidIcon, Tooltip, TreeItem, TreeView, Typography, VARIANT, YearSelect, loadingIndicatorService, modalService, snackbarService, useConstructor, useCssClasses, useDebounce, useHover, useMobileDetect, useOnDestroy, useWindowSize };
2762
+ export { Alert, AppBar, AppBarTitle, AutoComplete, Backdrop, Badge, Breadcrumb, BreadcrumbItem, Button, ButtonContext, ButtonGroup, COLOR, Card, CardBody, CardFooter, CardImage, CardSubtitle, CardText, CardTitle, CaretDownSolidIcon, CheckSolidIcon, CheckSquareRegularIcon, Checkbox, ChevronDownSolidIcon, ChevronLeftSolidIcon, ChevronRightSolidIcon, ChevronUpSolidIcon, Chip, CircleSolidIcon, Column, ConditionalWrapper, CssTransition, DATEMODE, DateSelect, DaySelect, Drawer, EmailValidator, ExpansionPanel, ExpansionPanelContent, ExpansionPanelHeader, FileInput, FloatingActionButton, Form, FormControl, FormError, FormGroup, FormHint, FormInput, FormLabel, GlobalModal, HomeSolidIcon, HourSelect, Icon, IconButton, IsEmptyValidator, IsEqualValidator, Link, List, ListItem, ListItemAction, ListItemAvatar, ListItemIcon, ListItemText, LoadingIndicator, LoadingIndicatorContainer, MODALBUTTONTYPE, MODALTYPE, Menu, MenuBody, MenuDivider, MenuItem, MenuToggle, MilliSecondSelect, MinuteSelect, Modal, ModalBody, ModalFooter, ModalHeader, MonthSelect, NumberSelect, POSITION, PlusSolidIcon, Row, SIZE, STATUS, SecondSelect, Select, Sidebar, Snackbar, SpeedDial, SpeedDialAction, SpeedDialIcon, SpinnerSolidIcon, SquareRegularIcon, Step, Stepper, StepperActions, TIMEMODE, Tab, TabPanel, Table, TableBody, TableCell, TableHead, TableRow, Tabs, Textarea, TimeSelect, TimesCircleSolidIcon, TimesSolidIcon, Tooltip, TreeItem, TreeView, Typography, VARIANT, YearSelect, loadingIndicatorService, modalService, snackbarService, useButtonContext, useConstructor, useCssClasses, useDebounce, useHover, useMobileDetect, useOnDestroy, useWindowSize };
package/index.js CHANGED
@@ -299,7 +299,7 @@ function useMobileDetect() {
299
299
  const windowSize = useWindowSize();
300
300
  const checkIsMobile = (height, width) => {
301
301
  if (height > 0 && width > 0) {
302
- setIsMobile(!(width >= 1024));
302
+ setIsMobile(!(width >= 640));
303
303
  }
304
304
  };
305
305
  React.useEffect(() => {
@@ -535,22 +535,29 @@ var css_248z$O = ".Button-module_button__qeIer {\n text-transform: uppercase;\n
535
535
  var styles$O = {"button":"Button-module_button__qeIer","shadow":"Button-module_shadow__6N2nE","block":"Button-module_block__JIazf","btnContained":"Button-module_btnContained__16y5l","primary":"Button-module_primary__EUyOu","accent":"Button-module_accent__opVgQ","secondary":"Button-module_secondary__zKoGk","light":"Button-module_light__LXeZy","dark":"Button-module_dark__5oFOT","btnText":"Button-module_btnText__N5Gys","btnOutline":"Button-module_btnOutline__CCFPI","startIcon":"Button-module_startIcon__Eylwr","endIcon":"Button-module_endIcon__pCffL"};
536
536
  styleInject(css_248z$O);
537
537
 
538
+ const ButtonContext = React.createContext({
539
+ color: exports.COLOR.primary
540
+ });
541
+ const useButtonContext = () => React.useContext(ButtonContext);
542
+
538
543
  const Button = (props) => {
539
544
  const { children, variant = exports.VARIANT.contained, color = exports.COLOR.primary, isRounded, isActive, className, startIcon, endIcon, shadow = true, block } = props, rest = __rest(props, ["children", "variant", "color", "isRounded", "isActive", "className", "startIcon", "endIcon", "shadow", "block"]);
545
+ const buttonContext = useButtonContext();
540
546
  const getCssClasses = () => {
541
547
  const cssClasses = [];
542
548
  cssClasses.push(styles$O.button);
549
+ const buttonColor = buttonContext.color || color;
543
550
  if (variant !== 'outline' && variant !== 'text') {
544
551
  cssClasses.push(styles$O.btnContained);
545
- cssClasses.push(styles$O[color]);
552
+ cssClasses.push(styles$O[buttonColor]);
546
553
  }
547
554
  if (variant === 'outline') {
548
555
  cssClasses.push(styles$O.btnOutline);
549
- cssClasses.push(styles$O[color]);
556
+ cssClasses.push(styles$O[buttonColor]);
550
557
  }
551
558
  if (variant === 'text') {
552
559
  cssClasses.push(styles$O.btnText);
553
- cssClasses.push(styles$O[color]);
560
+ cssClasses.push(styles$O[buttonColor]);
554
561
  }
555
562
  if (isRounded && variant !== 'text') {
556
563
  cssClasses.push(`rounded-pill`);
@@ -577,14 +584,15 @@ var styles$N = {"buttonGroup":"ButtonGroup-module_buttonGroup__w6iB-"};
577
584
  styleInject(css_248z$N);
578
585
 
579
586
  const ButtonGroup = (props) => {
580
- const { children, className } = props, rest = __rest(props, ["children", "className"]);
587
+ const { children, className, color } = props, rest = __rest(props, ["children", "className", "color"]);
581
588
  const getCssClasses = () => {
582
589
  const cssClasses = [];
583
590
  cssClasses.push(styles$N.buttonGroup);
584
591
  className && cssClasses.push(className);
585
592
  return cssClasses.filter(css => css).join(' ');
586
593
  };
587
- return (React__default["default"].createElement("div", Object.assign({ className: getCssClasses(), role: "group" }, rest), children));
594
+ return (React__default["default"].createElement(ButtonContext.Provider, { value: { color: color || exports.COLOR.primary } },
595
+ React__default["default"].createElement("div", Object.assign({ className: getCssClasses(), role: "group" }, rest), children)));
588
596
  };
589
597
 
590
598
  var css_248z$M = ".Breadcrumb-module_breadcrumb__-pvAn {\n display: flex;\n flex-wrap: wrap;\n padding: 0;\n list-style: none;\n margin: 0;\n}";
@@ -1521,7 +1529,7 @@ const DateSelect = (props) => {
1521
1529
  // return Math.ceil((((d - yearStart) / 86400000) + 1) / 7)
1522
1530
  // };
1523
1531
 
1524
- var css_248z$u = ".Drawer-module_drawer__kdQCk {\n height: 100%;\n z-index: 1101;\n bottom: 0;\n position: fixed;\n background: white;\n min-width: 320px;\n overflow-y: auto;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_permanent__c-y8y {\n position: inherit;\n z-index: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_left__loQVO {\n order: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_right__sJ3mZ {\n order: 2;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_shadow__Myo3n {\n box-shadow: var(--shadow);\n}\n\n.Drawer-module_drawerOpen__07ptP {\n overflow: hidden;\n}";
1532
+ var css_248z$u = ".Drawer-module_drawer__kdQCk {\n height: 100%;\n z-index: 1101;\n bottom: 0;\n position: fixed;\n background: white;\n min-width: 320px;\n overflow-y: auto;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_permanent__c-y8y {\n position: inherit;\n z-index: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_left__loQVO {\n order: 0;\n left: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_right__sJ3mZ {\n order: 2;\n right: 0;\n}\n.Drawer-module_drawer__kdQCk.Drawer-module_shadow__Myo3n {\n box-shadow: var(--shadow);\n}\n\n.Drawer-module_drawerOpen__07ptP {\n overflow: hidden;\n}";
1525
1533
  var styles$u = {"drawer":"Drawer-module_drawer__kdQCk","permanent":"Drawer-module_permanent__c-y8y","left":"Drawer-module_left__loQVO","right":"Drawer-module_right__sJ3mZ","shadow":"Drawer-module_shadow__Myo3n","drawerOpen":"Drawer-module_drawerOpen__07ptP"};
1526
1534
  styleInject(css_248z$u);
1527
1535
 
@@ -2448,7 +2456,7 @@ var styles$5 = {"tabIndicator":"TabIndicator-module_tabIndicator__jSJhH","primar
2448
2456
  styleInject(css_248z$5);
2449
2457
 
2450
2458
  const TabIndicator = (props) => {
2451
- const { color = exports.COLOR.accent, width, amount, index } = props;
2459
+ const { color = exports.COLOR.primary, width, amount, index } = props;
2452
2460
  const getCssClasses = () => {
2453
2461
  const cssClasses = [];
2454
2462
  cssClasses.push(styles$5.tabIndicator);
@@ -2466,7 +2474,7 @@ var styles$4 = {"tabs":"Tabs-module_tabs__YyRTZ"};
2466
2474
  styleInject(css_248z$4);
2467
2475
 
2468
2476
  const Tabs = (props) => {
2469
- const { children, className, fixed, indicatorColor, onChange, value } = props;
2477
+ const { children, className, fixed, color, indicatorColor, onChange, value } = props;
2470
2478
  const [selectedValue, setSelectedValue] = React.useState(value);
2471
2479
  const [selectedIndex, setSelectedIndex] = React.useState();
2472
2480
  React.useEffect(() => {
@@ -2495,7 +2503,7 @@ const Tabs = (props) => {
2495
2503
  onClick: (e) => handleClickTab(e.event, e.value, index),
2496
2504
  });
2497
2505
  };
2498
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
2506
+ return (React__default["default"].createElement(ButtonContext.Provider, { value: { color: color || exports.COLOR.light } },
2499
2507
  React__default["default"].createElement("div", { className: getCssClasses() },
2500
2508
  children && React__default["default"].Children.toArray(children).map((child, index) => renderTabs(child, index)),
2501
2509
  children &&
@@ -2768,6 +2776,7 @@ exports.Badge = Badge;
2768
2776
  exports.Breadcrumb = Breadcrumb;
2769
2777
  exports.BreadcrumbItem = BreadcrumbItem;
2770
2778
  exports.Button = Button;
2779
+ exports.ButtonContext = ButtonContext;
2771
2780
  exports.ButtonGroup = ButtonGroup;
2772
2781
  exports.Card = Card;
2773
2782
  exports.CardBody = CardBody;
@@ -2869,6 +2878,7 @@ exports.YearSelect = YearSelect;
2869
2878
  exports.loadingIndicatorService = loadingIndicatorService;
2870
2879
  exports.modalService = modalService;
2871
2880
  exports.snackbarService = snackbarService;
2881
+ exports.useButtonContext = useButtonContext;
2872
2882
  exports.useConstructor = useConstructor;
2873
2883
  exports.useCssClasses = useCssClasses;
2874
2884
  exports.useDebounce = useDebounce;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-asc",
3
- "version": "23.3.2",
3
+ "version": "23.4.0",
4
4
  "description": "handcrafted react components",
5
5
  "main": "index.js",
6
6
  "module": "index.es.js",