trepur_components 0.2.13 → 0.2.16

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.
@@ -36,18 +36,22 @@ const Button = _ref => {
36
36
  buttonCenterIcon,
37
37
  buttonBgColor,
38
38
  buttonTextColor,
39
- borderColor,
39
+ buttonBorderColor,
40
40
  hoverButtonBgColor,
41
41
  hoverButtonTextColor,
42
- hoverBorderColor,
42
+ hoverButtonBorderColor,
43
43
  hoverCtaText,
44
44
  url,
45
45
  buttonType,
46
- buttonDesign
46
+ buttonDesign,
47
+ border,
48
+ rounded
47
49
  } = _ref;
48
- let padding = buttonType === 'social' ? 'px-4 py-3 ' : 'px-8 ';
50
+ let padding = buttonType === 'social' ? 'px-1 py-1 ' : 'px-8 ';
49
51
  let externalPadding = buttonType === 'external' ? 'py-3 ' : 'py-2 ';
50
- let standardClasses = ' rounded-lg text-black border-2 border-black border-gray-300 transition-background-color duration-500 transform ';
52
+ let borderClassList = border ? 'border-2 ' : '';
53
+ let roundedClassList = rounded ? 'rounded-full ' : '';
54
+ let standardClasses = ' rounded-lg text-black transition-background-color duration-500 transform ' + borderClassList + roundedClassList;
51
55
  let slideClasses = ' btn px-8 text-white border-2 bg-gray hover:bg-brand-primary hover:text-black ';
52
56
  let classList = padding;
53
57
  classList += externalPadding;
@@ -60,17 +64,21 @@ const Button = _ref => {
60
64
  classList += slideClasses;
61
65
  }
62
66
 
67
+ const iconClassList = buttonType === 'social' ? 'fa-brands' : '';
68
+
63
69
  let iconLeft = buttonLeftIcon && /*#__PURE__*/_react.default.createElement(_Icon.default, {
64
- className: "pr-2",
70
+ classes: "pr-2",
65
71
  type: buttonLeftIcon
66
72
  });
67
73
 
68
74
  let iconRight = buttonRightIcon && /*#__PURE__*/_react.default.createElement(_Icon.default, {
69
- className: "pl-2",
75
+ classes: "pl-2",
70
76
  type: buttonRightIcon
71
77
  });
72
78
 
73
79
  let iconCenter = buttonCenterIcon && /*#__PURE__*/_react.default.createElement(_Icon.default, {
80
+ size: "3",
81
+ classes: iconClassList,
74
82
  type: buttonCenterIcon
75
83
  }); //---------- Styling ---------------
76
84
 
@@ -78,7 +86,7 @@ const Button = _ref => {
78
86
  const [styles, setStyles] = (0, _react.useState)({
79
87
  'backgroundColor': buttonBgColor ? buttonBgColor : 'white',
80
88
  color: buttonTextColor ? buttonTextColor : 'black',
81
- 'borderColor': borderColor ? borderColor : 'black'
89
+ 'borderColor': buttonBorderColor ? buttonBorderColor : 'black'
82
90
  });
83
91
  const [hovering, setHovering] = (0, _react.useState)(false);
84
92
 
@@ -88,14 +96,14 @@ const Button = _ref => {
88
96
  setStyles({
89
97
  'backgroundColor': hoverButtonBgColor ? hoverButtonBgColor : 'black',
90
98
  color: hoverButtonTextColor ? hoverButtonTextColor : 'white',
91
- 'borderColor': hoverBorderColor ? hoverBorderColor : 'black'
99
+ 'borderColor': hoverButtonBorderColor ? hoverButtonBorderColor : 'black'
92
100
  });
93
101
  } else {
94
102
  setHovering(false);
95
103
  setStyles({
96
104
  'backgroundColor': buttonBgColor ? buttonBgColor : 'white',
97
105
  color: buttonTextColor ? buttonTextColor : 'black',
98
- 'borderColor': borderColor ? borderColor : 'black'
106
+ 'borderColor': buttonBorderColor ? buttonBorderColor : 'black'
99
107
  });
100
108
  }
101
109
  }; //-----------------------------------
@@ -139,6 +147,24 @@ const Button = _ref => {
139
147
  onMouseOut: () => setHoverState(false),
140
148
  className: classList
141
149
  }, buttonCenterIcon && iconCenter));
150
+ } else if (buttonType === 'loading') {
151
+ return /*#__PURE__*/_react.default.createElement("a", _extends({}, id && {
152
+ id: id
153
+ }, {
154
+ href: url,
155
+ target: "_blank",
156
+ rel: "noreferrer"
157
+ }), /*#__PURE__*/_react.default.createElement("button", {
158
+ style: styles,
159
+ onMouseOver: () => setHoverState(true),
160
+ onMouseOut: () => setHoverState(false),
161
+ className: 'flex ' + classList
162
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
163
+ type: "spinner",
164
+ animation: "pulse"
165
+ })), /*#__PURE__*/_react.default.createElement("p", {
166
+ className: "pl-3"
167
+ }, "Loading")));
142
168
  }
143
169
 
144
170
  return /*#__PURE__*/_react.default.createElement("button", _extends({}, id && {
@@ -1,7 +1,34 @@
1
- .slick-next {
2
- border: 2px solid black;
1
+ .slick-prev {
2
+ left: -55px;
3
+ }
4
+ .slick-prev:before {
5
+ height: 50px;
6
+ color: #31a3dd;
7
+ font-family: "slick";
8
+ font-size: 50px;
9
+ line-height: 1;
10
+ opacity: 1;
11
+ z-index: 5;
3
12
  }
4
13
 
5
- .slick-prev {
6
- border: 2px solid black;
14
+ .slick-next:before {
15
+ height: 50px;
16
+ color: #31a3dd;
17
+ font-family: "slick";
18
+ font-size: 50px;
19
+ line-height: 1;
20
+ opacity: 1;
21
+ z-index: 5;
22
+ }
23
+
24
+ .slick-dots li.slick-active button:before {
25
+ color: #31a3dd;
26
+ font-size: 12px;
27
+ opacity: 1;
28
+ }
29
+
30
+ .slick-dots li button:before {
31
+ color: pink;
32
+ font-size: 12px;
33
+ opacity: 1;
7
34
  }
@@ -39,17 +39,20 @@ const Form = _ref => {
39
39
  id: id
40
40
  }, {
41
41
  className: classes
42
- }), /*#__PURE__*/_react.default.createElement("h1", {
43
- className: "text-center"
44
- }, /*#__PURE__*/_react.default.createElement("b", null, title)), components && components.map(component => {
45
- if (component.type === 'Input') {
42
+ }), components && components.map(component => {
43
+ if (component.type === 'Title') {
44
+ return /*#__PURE__*/_react.default.createElement("h1", {
45
+ className: component.classes
46
+ }, component.text);
47
+ } else if (component.type === 'Input') {
46
48
  return /*#__PURE__*/_react.default.createElement(_Input.default, {
47
- classes: "py-4",
49
+ classes: component.classes,
48
50
  label: component.label,
49
51
  placeholder: component.placeholder
50
52
  });
51
53
  } else if (component.type === 'Button') {
52
54
  return /*#__PURE__*/_react.default.createElement(_Button.default, _extends({
55
+ classes: component.classes,
53
56
  ctaText: component.ctaText,
54
57
  bgColor: buttonBgColor,
55
58
  textColor: buttonTextColor,
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.assign.js");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.default = void 0;
7
9
 
8
- require("core-js/modules/es.object.assign.js");
10
+ require("core-js/modules/es.array.reverse.js");
9
11
 
10
12
  var _react = _interopRequireDefault(require("react"));
11
13
 
@@ -21,16 +23,22 @@ const Icon = _ref => {
21
23
  classes,
22
24
  type,
23
25
  size,
24
- onClick
26
+ onClick,
27
+ style,
28
+ animation,
29
+ reverse
25
30
  } = _ref;
26
31
  if (!type) return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
27
- let classList = "fa fa-".concat(type, " fa-x ");
32
+ let classList = "fa fa-".concat(type, " ");
28
33
  classList += size ? "fa-".concat(size, "x ") : '';
34
+ classList += animation ? "fa-".concat(animation, " ") : '';
35
+ classList += reverse ? ' fa-spin-reverse ' : '';
29
36
  classList += classes ? classes : '';
30
37
  return /*#__PURE__*/_react.default.createElement("span", _extends({}, id && {
31
38
  id: id
32
39
  }, {
33
40
  className: classList,
41
+ style: style,
34
42
  role: "img",
35
43
  "aria-hidden": "true",
36
44
  "aria-label": type
@@ -25,15 +25,18 @@ const ImageLink = _ref => {
25
25
  altText,
26
26
  title,
27
27
  ctaText,
28
- ctaLink,
29
- rounded
28
+ link,
29
+ rounded,
30
+ openInNewTab
30
31
  } = _ref;
31
32
  const classList = 'cursor-pointer lg:mx-3 md:mx-1 mx-1 lg:mb-5 md:mb-2 mb-2 hover:opacity-50 overflow-hidden text-center ' + classes;
32
33
  let roundedClass = rounded ? 'rounded-full' : '';
33
34
  return /*#__PURE__*/_react.default.createElement("a", _extends({}, id && {
34
35
  id: id
35
36
  }, {
36
- href: ctaLink
37
+ href: link
38
+ }, openInNewTab && {
39
+ target: 'blank'
37
40
  }), /*#__PURE__*/_react.default.createElement("div", {
38
41
  className: roundedClass + ' ' + classList + ' relative overflow-hidden'
39
42
  }, /*#__PURE__*/_react.default.createElement("img", {
@@ -11,15 +11,19 @@ require("core-js/modules/web.dom-collections.iterator.js");
11
11
 
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
 
14
+ var _Icon = _interopRequireDefault(require("../Icon"));
15
+
14
16
  require("../index.css");
15
17
 
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
16
20
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
21
 
18
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
23
 
20
24
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
25
 
22
- const Icon = _ref => {
26
+ const InformationIcon = _ref => {
23
27
  let {
24
28
  id,
25
29
  classes,
@@ -33,28 +37,62 @@ const Icon = _ref => {
33
37
  bgColor,
34
38
  textColor,
35
39
  hoverTextColor,
36
- hoverBgColor
40
+ hoverBgColor,
41
+ withAnimation
37
42
  } = _ref;
38
- let imageClassList = "fa fa-".concat(type, " fa-x mx-auto ");
39
- imageClassList += size && "fa-".concat(size, "x ");
40
- imageClassList += imageClasses && imageClasses;
41
- let borderClass = bordered && 'border ';
42
- let roundedClass = rounded && 'rounded-2xl ';
43
+ const [isHovering, setIsHovering] = (0, _react.useState)(false);
44
+ let loaded = (0, _react.useRef)(false);
45
+ let imageClassList = 'mx-auto pt-2 ';
46
+ imageClassList += imageClasses ? imageClasses : '';
43
47
  let classList = 'hover:scale-110 transform transition duration-500 flex flex-col w-64 ';
48
+ classList += bordered ? 'border ' : '';
49
+ classList += rounded ? 'rounded-2xl ' : '';
44
50
  classList += classes ? classes : '';
45
- classList += ' ' + borderClass + ' ' + roundedClass;
46
51
  const numberClass = number !== null && 'text-4xl';
47
52
  const numberClasses = 'text-center ' + numberClass;
48
53
  const textClass = number === null && 'text-2xl';
49
- const textClasses = 'text-center px-2 ' + textClass; //---------- Styling ---------------
54
+ const textClasses = 'text-center px-2 ' + textClass;
55
+
56
+ const counterAnimation = (obj, start, end, duration) => {
57
+ let startTimestamp = null;
58
+
59
+ const step = timestamp => {
60
+ if (!startTimestamp) startTimestamp = timestamp;
61
+ const progress = Math.min((timestamp - startTimestamp) / duration, 1);
62
+ obj.innerHTML = Math.floor(progress * (end - start) + start);
63
+
64
+ if (progress < 1) {
65
+ window.requestAnimationFrame(step);
66
+ }
67
+ };
68
+
69
+ window.requestAnimationFrame(step);
70
+ };
71
+
72
+ (0, _react.useEffect)(() => {
73
+ const element = document.getElementById('number');
74
+ let observer = new IntersectionObserver((entries, observer) => {
75
+ entries.forEach(entry => {
76
+ if (entry.intersectionRatio >= 0.1 && loaded.current == false) {
77
+ loaded.current = true;
78
+ counterAnimation(document.getElementById('number'), 0, number, 3000);
79
+ } else {}
80
+ });
81
+ }, {
82
+ threshold: 1
83
+ });
84
+ withAnimation && observer.observe(element);
85
+ }, []); //---------- Styling ---------------
50
86
 
51
87
  const [styles, setStyles] = (0, _react.useState)({
52
88
  'background-color': bgColor ? bgColor : 'white',
53
89
  color: textColor ? textColor : 'black'
54
90
  });
55
91
 
56
- const setHoverState = isHovering => {
57
- if (isHovering) {
92
+ const setHoverState = () => {
93
+ setIsHovering(!isHovering);
94
+
95
+ if (isHovering === true) {
58
96
  setStyles({
59
97
  'background-color': hoverBgColor ? hoverBgColor : 'white',
60
98
  color: hoverTextColor ? hoverTextColor : 'black'
@@ -73,19 +111,19 @@ const Icon = _ref => {
73
111
  }, {
74
112
  style: styles,
75
113
  className: classList,
76
- onMouseOver: () => setHoverState(true),
77
- onMouseOut: () => setHoverState(false)
78
- }), type && /*#__PURE__*/_react.default.createElement("span", {
79
- className: imageClassList,
80
- role: "img",
81
- "aria-hidden": "true",
82
- "aria-label": type
114
+ onMouseOver: () => setHoverState(),
115
+ onMouseOut: () => setHoverState()
116
+ }), type && /*#__PURE__*/_react.default.createElement(_Icon.default, {
117
+ type: type,
118
+ size: 4,
119
+ classes: imageClassList
83
120
  }), number && /*#__PURE__*/_react.default.createElement("p", {
121
+ id: "number",
84
122
  className: numberClasses
85
123
  }, number), /*#__PURE__*/_react.default.createElement("p", {
86
124
  className: textClasses
87
125
  }, text));
88
126
  };
89
127
 
90
- var _default = Icon;
128
+ var _default = InformationIcon;
91
129
  exports.default = _default;
@@ -171,10 +171,10 @@ const Nav = _ref => {
171
171
  }, firstRow && firstRow.map(rowItem => {
172
172
  return /*#__PURE__*/_react.default.createElement(_Column.default, {
173
173
  classes: 'h-16 ' + rowItem.columnClasses,
174
- xs: rowItem.xsColumnWidth,
175
174
  sm: rowItem.smColumnWidth,
176
175
  md: rowItem.columnWidth,
177
- lg: rowItem.lgColumnWidth
176
+ lg: rowItem.lgColumnWidth,
177
+ xl: rowItem.xlColumnWidth
178
178
  }, /*#__PURE__*/_react.default.createElement("div", {
179
179
  className: rowItem.classes
180
180
  }, rowItem.component));
@@ -183,18 +183,20 @@ const Nav = _ref => {
183
183
  }, secondRow && secondRow.map(rowItem => {
184
184
  return /*#__PURE__*/_react.default.createElement(_Column.default, {
185
185
  classes: "h-16 ",
186
- xs: rowItem.xsColumnWidth,
187
186
  sm: rowItem.smColumnWidth,
188
- md: rowItem.columnWidth
187
+ md: rowItem.columnWidth,
188
+ lg: rowItem.lgColumnWidth,
189
+ xl: rowItem.xlColumnWidth
189
190
  }, rowItem.component);
190
191
  })), /*#__PURE__*/_react.default.createElement("div", {
191
192
  className: 'flex ' + thirdRowClasses
192
193
  }, thirdRow && thirdRow.map(rowItem => {
193
194
  return /*#__PURE__*/_react.default.createElement(_Column.default, {
194
195
  classes: "h-16",
195
- xs: rowItem.xsColumnWidth,
196
196
  sm: rowItem.smColumnWidth,
197
- md: rowItem.columnWidth
197
+ md: rowItem.columnWidth,
198
+ lg: rowItem.lgColumnWidth,
199
+ xl: rowItem.xlColumnWidth
198
200
  }, rowItem.component);
199
201
  })))), asSideBar ? /*#__PURE__*/_react.default.createElement("div", {
200
202
  style: sideNavWidth,
@@ -35,38 +35,53 @@ const NavItem = _ref => {
35
35
  hoverBgColor,
36
36
  bordered,
37
37
  rounded,
38
- underlineOnHover
38
+ underlineOnHover,
39
+ isActive,
40
+ activeBorderColor,
41
+ activeTextColor,
42
+ activeBgColor
39
43
  } = _ref;
40
44
  let classList = 'w-auto list-none ';
41
45
  classList += classes ? classes : '';
42
- let linkClassList = linkClasses && linkClasses;
43
- const underline = underlineOnHover && ' hover:underline'; //---------- Styling ---------------
46
+ let linkClassList = 'px-4 mx-2 mb-4 text-center whitespace-nowrap ';
47
+ linkClassList += isActive ? 'active ' : '';
48
+ linkClassList += bordered ? 'border ' : '';
49
+ linkClassList += rounded ? 'rounded-lg ' : '';
50
+ linkClassList += underlineOnHover ? 'hover:underline ' : '';
51
+ linkClassList += linkClasses ? linkClasses : ''; //---------- Styling ---------------
44
52
 
45
53
  const [styles, setStyles] = (0, _react.useState)({
46
54
  'backgroundColor': bgColor ? bgColor : 'white',
47
55
  color: textColor ? textColor : 'black',
48
56
  'borderColor': borderColor ? borderColor : 'black'
49
57
  });
58
+ const [activeStyles, setActiveStyles] = (0, _react.useState)({
59
+ 'backgroundColor': activeBgColor ? activeBgColor : 'white',
60
+ color: activeTextColor ? activeTextColor : 'black',
61
+ 'borderColor': activeBorderColor ? activeBorderColor : 'black'
62
+ });
50
63
 
51
64
  const setHoverState = isHovering => {
52
- if (isHovering) {
53
- setStyles({
54
- 'backgroundColor': hoverBgColor ? hoverBgColor : 'black',
55
- color: hoverTextColor ? hoverTextColor : 'white',
56
- 'borderColor': hoverBorderColor ? hoverBorderColor : 'black'
57
- });
58
- } else {
59
- setStyles({
60
- 'backgroundColor': bgColor ? bgColor : 'white',
61
- color: textColor ? textColor : 'black',
62
- 'borderColor': borderColor ? borderColor : 'black'
63
- });
64
- }
65
+ isHovering ? isActive ? setActiveStyles({
66
+ 'backgroundColor': activeBgColor ? activeBgColor : 'black',
67
+ color: activeTextColor ? activeTextColor : 'white',
68
+ 'borderColor': activeBorderColor ? activeBorderColor : 'black'
69
+ }) : setStyles({
70
+ 'backgroundColor': hoverBgColor ? hoverBgColor : 'black',
71
+ color: hoverTextColor ? hoverTextColor : 'white',
72
+ 'borderColor': hoverBorderColor ? hoverBorderColor : 'black'
73
+ }) : isActive ? setActiveStyles({
74
+ 'backgroundColor': activeBgColor ? activeBgColor : 'white',
75
+ color: activeTextColor ? activeTextColor : 'black',
76
+ 'borderColor': activeBorderColor ? activeBorderColor : 'black'
77
+ }) : setStyles({
78
+ 'backgroundColor': bgColor ? bgColor : 'white',
79
+ color: textColor ? textColor : 'black',
80
+ 'borderColor': borderColor ? borderColor : 'black'
81
+ });
65
82
  }; //-----------------------------------
66
83
 
67
84
 
68
- let borderClass = bordered ? ' border ' : '';
69
- let round = rounded ? ' rounded-lg ' : '';
70
85
  return /*#__PURE__*/_react.default.createElement("div", _extends({}, id && {
71
86
  id: id
72
87
  }, {
@@ -74,11 +89,11 @@ const NavItem = _ref => {
74
89
  }), /*#__PURE__*/_react.default.createElement("a", {
75
90
  href: url
76
91
  }, /*#__PURE__*/_react.default.createElement("li", {
77
- style: styles,
92
+ style: isActive ? activeStyles : styles,
78
93
  onMouseOver: () => setHoverState(true),
79
94
  onMouseOut: () => setHoverState(false),
80
95
  key: name,
81
- className: 'px-4 mx-2 mb-4 text-center ' + linkClassList + borderClass + round + underline,
96
+ className: linkClassList,
82
97
  onClick: onClick
83
98
  }, name)));
84
99
  };
@@ -41,10 +41,10 @@ const NewsCard = _ref => {
41
41
  rounded,
42
42
  boldTitle
43
43
  } = _ref;
44
- const roundedClasses = rounded && 'rounded-lg';
44
+ const roundedClasses = rounded ? 'rounded-lg ' : '';
45
45
  let classList = 'border flex p-2 ';
46
- classList += classes ? classes : '';
47
46
  classList += roundedClasses;
47
+ classList += classes ? classes : '';
48
48
  return /*#__PURE__*/_react.default.createElement("div", _extends({}, id && {
49
49
  id: id
50
50
  }, {
@@ -1,4 +1,4 @@
1
1
  @tailwind base;
2
2
  @tailwind components;
3
3
  @tailwind utilities;
4
- @import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css");
4
+ @import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.0/css/all.min.css");
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "trepur_components",
3
3
  "description": "component lib",
4
4
  "author": "trepur_ttenneb",
5
- "version": "0.2.13",
5
+ "version": "0.2.16",
6
6
  "private": false,
7
7
  "keywords": [
8
8
  "react",