@mw-kit/mw-ui 1.1.1 → 1.2.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,4 @@
1
+ /// <reference types="react" />
2
+ import { ZoomProps } from './interfaces';
3
+ declare const Zoom: (props: ZoomProps) => JSX.Element;
4
+ export default Zoom;
@@ -0,0 +1,9 @@
1
+ import { ModalProps } from '../Modal/interfaces';
2
+ export interface StyledZoomProps {
3
+ width?: number | string;
4
+ height?: number | string;
5
+ }
6
+ export interface ZoomProps extends StyledZoomProps {
7
+ src: string;
8
+ defaultClickOptions?: Partial<ModalProps>;
9
+ }
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { StyledZoomProps } from './interfaces';
3
+ export declare const Image: import("styled-components").StyledComponent<"img", import("styled-components").DefaultTheme, {}, never>;
4
+ export declare const Container: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, StyledZoomProps, never>;
5
+ export declare const Dimmer: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
6
+ export declare const Button: import("styled-components").StyledComponent<(props: import("../Button/interfaces").ButtonProps) => JSX.Element, import("styled-components").DefaultTheme, {}, never>;
7
+ export declare const ModalContent: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
@@ -15,4 +15,5 @@ export { default as MwToast } from './Toast';
15
15
  export { default as MwDatePicker } from './Calendar';
16
16
  export { default as MwCalendarInterval } from './CalendarInterval';
17
17
  export { default as MwPlaceholder } from './Placeholder';
18
+ export { default as MwZoom } from './Zoom';
18
19
  export { default as MwEllipsisContainer } from './EllipsisContainer';
package/dist/index.js CHANGED
@@ -15590,6 +15590,79 @@ var Placeholder = function Placeholder(props) {
15590
15590
  }
15591
15591
  };
15592
15592
 
15593
+ var _templateObject$E, _templateObject2$x, _templateObject3$w, _templateObject4$t, _templateObject5$r;
15594
+ var Image = styled__default.img(_templateObject$E || (_templateObject$E = _taggedTemplateLiteralLoose(["\n max-width: 100%;\n max-height: 100%;\n"])));
15595
+ var Container$n = styled__default.div(_templateObject2$x || (_templateObject2$x = _taggedTemplateLiteralLoose(["\n position: relative;\n display: inline-flex;\n\n &,\n ", " {\n width: ", ";\n\n height: ", ";\n }\n"])), Image, function (_ref) {
15596
+ var width = _ref.width;
15597
+
15598
+ switch (typeof width) {
15599
+ case 'string':
15600
+ return width;
15601
+
15602
+ case 'number':
15603
+ return width + "px";
15604
+
15605
+ default:
15606
+ return 'auto';
15607
+ }
15608
+ }, function (_ref2) {
15609
+ var height = _ref2.height;
15610
+
15611
+ switch (typeof height) {
15612
+ case 'string':
15613
+ return height;
15614
+
15615
+ case 'number':
15616
+ return height + "px";
15617
+
15618
+ default:
15619
+ return 'auto';
15620
+ }
15621
+ });
15622
+ var Dimmer = styled__default.div(_templateObject3$w || (_templateObject3$w = _taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: ", ";\n opacity: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: opacity 0.5s;\n cursor: pointer;\n\n :hover {\n opacity: 1;\n }\n"])), function (_ref3) {
15623
+ var theme = _ref3.theme;
15624
+ return theme.getColor('greyishBlue', 50);
15625
+ });
15626
+ var Button$4 = styled__default(Button$1)(_templateObject4$t || (_templateObject4$t = _taggedTemplateLiteralLoose(["\n background-color: ", ";\n"])), function (_ref4) {
15627
+ var theme = _ref4.theme;
15628
+ return theme.getColor('white', 50);
15629
+ });
15630
+ var ModalContent = styled__default.div(_templateObject5$r || (_templateObject5$r = _taggedTemplateLiteralLoose(["\n position: absolute;\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n\n img {\n max-height: 100%;\n max-width: 100%;\n }\n"])));
15631
+
15632
+ var _excluded$3 = ["src", "defaultClickOptions"];
15633
+
15634
+ var Zoom = function Zoom(props) {
15635
+ var src = props.src,
15636
+ imgProps = _objectWithoutPropertiesLoose(props, _excluded$3);
15637
+
15638
+ var _useState = React.useState(false),
15639
+ modalOpened = _useState[0],
15640
+ setModalOpened = _useState[1];
15641
+
15642
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(Container$n, Object.assign({}, imgProps, {
15643
+ onClick: function onClick() {
15644
+ return setModalOpened(true);
15645
+ }
15646
+ }), React__default.createElement(Image, {
15647
+ src: src,
15648
+ alt: 'zoom'
15649
+ }), React__default.createElement(Dimmer, null, React__default.createElement(Button$4, {
15650
+ content: 'Zoom',
15651
+ color: 'white',
15652
+ onClick: function onClick() {
15653
+ return setModalOpened(true);
15654
+ }
15655
+ }))), React__default.createElement(Modal$1, {
15656
+ openState: [modalOpened, setModalOpened],
15657
+ size: 'large',
15658
+ title: 'Zoom',
15659
+ closeOnClickOutside: true
15660
+ }, React__default.createElement(ModalContent, null, React__default.createElement("img", {
15661
+ src: src,
15662
+ alt: 'zoom'
15663
+ }))));
15664
+ };
15665
+
15593
15666
  var theme = {
15594
15667
  sizes: sizes,
15595
15668
  fontSizes: fontSizes
@@ -15599,14 +15672,14 @@ var theme$1 = {
15599
15672
  button: theme
15600
15673
  };
15601
15674
 
15602
- var _templateObject$E;
15603
- var FontStyles = styled.createGlobalStyle(_templateObject$E || (_templateObject$E = _taggedTemplateLiteralLoose(["\n"])));
15675
+ var _templateObject$F;
15676
+ var FontStyles = styled.createGlobalStyle(_templateObject$F || (_templateObject$F = _taggedTemplateLiteralLoose(["\n"])));
15604
15677
 
15605
15678
  var Globals = function Globals() {
15606
15679
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(FontStyles, null));
15607
15680
  };
15608
15681
 
15609
- var _templateObject$F;
15682
+ var _templateObject$G;
15610
15683
 
15611
15684
  var getColor$1 = function getColor(color, opacity) {
15612
15685
  if (opacity === void 0) {
@@ -15621,7 +15694,7 @@ var useTypography = function useTypography(typography) {
15621
15694
  fontFamily = _typographies$typogra.fontFamily,
15622
15695
  fontWeight = _typographies$typogra.fontWeight,
15623
15696
  fontSize = _typographies$typogra.fontSize;
15624
- return styled.css(_templateObject$F || (_templateObject$F = _taggedTemplateLiteralLoose(["\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n "])), fontFamily, fontWeight, fontSize);
15697
+ return styled.css(_templateObject$G || (_templateObject$G = _taggedTemplateLiteralLoose(["\n font-family: ", ";\n font-weight: ", ";\n font-size: ", ";\n "])), fontFamily, fontWeight, fontSize);
15625
15698
  };
15626
15699
 
15627
15700
  var isDarkColor = function isDarkColor(color, ifDark, ifLight) {
@@ -15693,5 +15766,6 @@ exports.MwScrollContainer = ScrollContainer;
15693
15766
  exports.MwTabs = Tabs$1;
15694
15767
  exports.MwTextArea = TextArea;
15695
15768
  exports.MwToast = Toast;
15769
+ exports.MwZoom = Zoom;
15696
15770
  exports.ThemeProvider = ThemeProvider;
15697
15771
  //# sourceMappingURL=index.js.map