imbric-theme 0.6.3 → 0.6.5

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,6 +36,8 @@ export const Input = ({
36
36
  colorIcon,
37
37
  backgroundIcon,
38
38
  pattern,
39
+ onClickViewPass,
40
+ viewPass,
39
41
  min,
40
42
  }) => (
41
43
 
@@ -78,26 +80,69 @@ export const Input = ({
78
80
 
79
81
  </div> :
80
82
 
81
- <input
82
- className={getStyles('input', {
83
- 'is-inline': isInline,
84
- 'is-inline-code': isInlineCode,
85
- 'is-input-filter': isInputFilter,
86
- 'is-input-secondary': isInputSecondary,
87
- })}
88
- type={type}
89
- id={id}
90
- value={value}
91
- placeholder={placeholder}
92
- onChange={onChange}
93
- onFocus={onFocus}
94
- onBlur={onBlur}
95
- onClick={onClick}
96
- onKeyDown={onKeyDown}
97
- autoComplete={autoComplete}
98
- disabled={disabled}
99
- min={min}
100
- ></input>
83
+ type === 'password' ?
84
+
85
+
86
+
87
+ <div className={getStyles('box-icon-input')}>
88
+
89
+ <input
90
+ className={getStyles('input', {
91
+ 'is-inline': isInline,
92
+ 'is-inline-code': isInlineCode,
93
+ 'is-input-filter': isInputFilter,
94
+ 'is-input-secondary': isInputSecondary,
95
+ })}
96
+ type={type}
97
+ id={id}
98
+ value={value}
99
+ placeholder={placeholder}
100
+ onChange={onChange}
101
+ onFocus={onFocus}
102
+ onBlur={onBlur}
103
+ onClick={onClick}
104
+ onKeyDown={onKeyDown}
105
+ autoComplete={autoComplete}
106
+ disabled={disabled}
107
+ min={min}
108
+ ></input>
109
+
110
+ <Horizontal size="xs" />
111
+
112
+ <Icon
113
+ background={!viewPass ? "inverted" : "success"}
114
+ color={!viewPass ? "base" : "inverted"}
115
+ isClickable
116
+ name="userView"
117
+ onClick={onClickViewPass}
118
+ size="sm"
119
+ />
120
+
121
+
122
+ </div>
123
+
124
+
125
+
126
+ : <input
127
+ className={getStyles('input', {
128
+ 'is-inline': isInline,
129
+ 'is-inline-code': isInlineCode,
130
+ 'is-input-filter': isInputFilter,
131
+ 'is-input-secondary': isInputSecondary,
132
+ })}
133
+ type={type}
134
+ id={id}
135
+ value={value}
136
+ placeholder={placeholder}
137
+ onChange={onChange}
138
+ onFocus={onFocus}
139
+ onBlur={onBlur}
140
+ onClick={onClick}
141
+ onKeyDown={onKeyDown}
142
+ autoComplete={autoComplete}
143
+ disabled={disabled}
144
+ min={min}
145
+ ></input>
101
146
 
102
147
  }
103
148
 
@@ -128,6 +173,8 @@ Input.propTypes = {
128
173
  autoComplete: PropTypes.string,
129
174
  disabled: PropTypes.bool,
130
175
  min: PropTypes.any,
176
+ onClickViewPass: PropTypes.func,
177
+ viewPass: PropTypes.bool,
131
178
  }
132
179
 
133
180
  Input.defaultProps = {
@@ -152,7 +199,9 @@ Input.defaultProps = {
152
199
  colorIcon: 'highlight',
153
200
  backgroundIcon: 'base',
154
201
  autoComplete: 'on',
155
- disabled: false
202
+ disabled: false,
203
+ onClickViewPass: () => { },
204
+ viewPass: false,
156
205
  }
157
206
 
158
207
  export default withStyles(styles)(Input)
@@ -62,4 +62,5 @@
62
62
 
63
63
  .box-icon-input {
64
64
  display: flex;
65
+ align-items: center;
65
66
  }
@@ -1,5 +1,6 @@
1
1
  import React from 'react'
2
2
  import PropTypes from 'prop-types'
3
+ import Link from 'next/link'
3
4
 
4
5
  import styles from './Picture.module.css'
5
6
  import withStyles from '../../hocs/withStyles'
@@ -11,6 +12,7 @@ export const Picture = ({
11
12
  height,
12
13
  isRounded,
13
14
  withBorder,
15
+ isHref,
14
16
  }) => (
15
17
  <picture
16
18
  className={getStyles('picture', {
@@ -18,7 +20,10 @@ export const Picture = ({
18
20
  'with-border': withBorder,
19
21
  })}
20
22
  >
21
- <img src={src} style={{ height, maxWidth: width }} />
23
+ <Link href={isHref} passHref>
24
+ <img src={src} style={{ height, maxWidth: width }} />
25
+ </Link>
26
+
22
27
  </picture>
23
28
  )
24
29
 
@@ -29,12 +34,14 @@ Picture.propTypes = {
29
34
  height: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
30
35
  isRounded: PropTypes.bool,
31
36
  withBorder: PropTypes.bool,
37
+ isHref: PropTypes.any
32
38
  }
33
39
 
34
40
  Picture.defaultProps = {
35
41
  height: 'auto',
36
42
  withBorder: false,
37
- getStyles: () => {},
43
+ getStyles: () => { },
44
+ isHref: ''
38
45
  }
39
46
 
40
47
  export default withStyles(styles)(Picture)
package/index.js CHANGED
@@ -59,6 +59,8 @@ export { default as DynamicSelect } from './molecules/DynamicSelect'
59
59
  export { default as DatePicker } from './molecules/DynamicSelect'
60
60
  export { default as CardDefault } from './molecules/CardDefault'
61
61
  export { default as Tabs } from './molecules/Tabs'
62
+ export { default as DatePickerTime } from './molecules/DatePickerTime'
63
+
62
64
 
63
65
 
64
66
 
@@ -11,7 +11,7 @@ import Icon from '../../atoms/Icon'
11
11
  import Divider from '../../atoms/Divider'
12
12
  import ItemMenu from '../../molecules/ItemMenu/ItemMenu'
13
13
 
14
- export const Sidebar = ({ getStyles, menuCollapseView, options }) => {
14
+ export const Sidebar = ({ getStyles, menuCollapseView, options, isHrefLogo }) => {
15
15
 
16
16
 
17
17
  return (
@@ -30,7 +30,7 @@ export const Sidebar = ({ getStyles, menuCollapseView, options }) => {
30
30
 
31
31
  <div className={getStyles('logotext')}>
32
32
  {/* small and big change using menuCollapseView state */}
33
- {menuCollapseView ? <Picture src="/static/logotipoS.svg" width={19}></Picture> : <Picture src="/static/logotipo.svg" width={100}></Picture>}
33
+ {menuCollapseView ? <Picture isHref={isHrefLogo} src="./static/logotipoS.svg" width={19}></Picture> : <Picture isHref={isHrefLogo} src="./static/logotipo.svg" width={100}></Picture>}
34
34
  </div>
35
35
  {/* <div className={getStyles('closemenu')}>
36
36
 
@@ -69,7 +69,7 @@ export const Sidebar = ({ getStyles, menuCollapseView, options }) => {
69
69
  >
70
70
  {item.text}
71
71
  </ItemMenu>
72
-
72
+
73
73
  : null
74
74
 
75
75
  ))}
@@ -93,6 +93,7 @@ export const Sidebar = ({ getStyles, menuCollapseView, options }) => {
93
93
 
94
94
  Sidebar.propTypes = {
95
95
  getStyles: PropTypes.func.isRequired,
96
+ isHrefLogo: PropTypes.any
96
97
  // options: PropTypes.arrayOf(
97
98
  // PropTypes.shape({
98
99
  // text: PropTypes.string,
@@ -104,6 +105,7 @@ Sidebar.propTypes = {
104
105
  Sidebar.defaultProps = {
105
106
  getStyles: () => { },
106
107
  menuCollapseView: false,
108
+ isHrefLogo: ''
107
109
  }
108
110
 
109
111
  export default withStyles(styles)(Sidebar)
@@ -1,5 +1,5 @@
1
1
  .column-table {
2
- padding: 12px 15px;
2
+ padding: 12px 12px;
3
3
  text-align: left;
4
4
  color: var(--color-font-base);
5
5
  display: table-cell;
@@ -82,6 +82,7 @@ export const DatePicker = ({ getStyles, isLayoutDate, onChangeRange, sinceDateRa
82
82
  (<Calendar
83
83
  date={new Date()}
84
84
  onChange={handleSelect}
85
+ color={'#3d91ff'}
85
86
  />)
86
87
  : isLayoutDate === 'DateRange' ?
87
88
 
@@ -124,7 +125,7 @@ export const DatePicker = ({ getStyles, isLayoutDate, onChangeRange, sinceDateRa
124
125
  <DateRangePicker
125
126
  locale={locales.es}
126
127
  dateDisplayFormat='d MMMM yyyy'
127
- onChange={ item => {handleSelectRange(item); onChangeRange(item);}}
128
+ onChange={item => { handleSelectRange(item); onChangeRange(item); }}
128
129
  showSelectionPreview={false}
129
130
  moveRangeOnFirstSelection={false}
130
131
  months={2}
@@ -203,7 +204,7 @@ export const DatePicker = ({ getStyles, isLayoutDate, onChangeRange, sinceDateRa
203
204
 
204
205
  <div className={getStyles('btnSave')} onClick={handleClickCloseCalendar}>
205
206
  <Icon
206
- id='iconClosedDatePicker'
207
+ id='iconClosedDatePicker'
207
208
  name="checkCircle"
208
209
  color="inverted"
209
210
  onClick={function noRefCheck() { }}
@@ -0,0 +1,133 @@
1
+ import React, { useState } from 'react'
2
+ import PropTypes from 'prop-types'
3
+
4
+ import styles from './DatePickerTime.module.css'
5
+ import { options } from './constants'
6
+ import withStyles from '../../hocs/withStyles'
7
+ import DatePicker, { CalendarContainer } from 'react-datepicker'
8
+ // import "react-datepicker/dist/react-datepicker.css"
9
+
10
+ import { registerLocale, setDefaultLocale } from "react-datepicker";
11
+ import es from 'date-fns/locale/es'
12
+ import moment from 'moment'
13
+ import Input from '../../atoms/Input/Input'
14
+
15
+
16
+ export const DatePickerTime = ({
17
+ getStyles,
18
+ showIcon,
19
+ selected,
20
+ onChange,
21
+ timeCaption,
22
+ minDate,
23
+ showTimeSelect,
24
+ filterTime,
25
+ dateFormat,
26
+ timeIntervals,
27
+ idPicker,
28
+ }) => {
29
+
30
+ registerLocale('es', es)
31
+ setDefaultLocale('es')
32
+
33
+ // const now = moment().add(15, 'minutes').format('d MMMM yyyy, HH:mm')
34
+
35
+ // const now = new Date()
36
+
37
+ // const nowSelected = new Date()
38
+ // nowSelected.setMinutes(nowSelected.getMinutes() + 15)
39
+
40
+ // const [startDate, setStartDate] = useState(nowSelected)
41
+
42
+ // const filterPassedTime = (time) => {
43
+ // const currentDate = new Date()
44
+ // currentDate.setMinutes(currentDate.getMinutes() + 15)
45
+ // const selectedDate = new Date(time)
46
+ // return currentDate.getTime() < selectedDate.getTime()
47
+ // }
48
+
49
+
50
+ // const MyContainer = ({ className, children }) => {
51
+ // return (
52
+ // // <div style={{ padding: "0px", background: "#216ba5", color: "#fff" }}>
53
+ // <CalendarContainer className={className}>
54
+ // {/* <div style={{ background: "#f0f0f0" }}>
55
+ // ¿Fecha de taxi?
56
+ // </div> */}
57
+ // <div style={{
58
+ // fontFamily: 'Exo, Arial, sans-serif',
59
+ // fontSize: '13px',
60
+ // fontWeight: '300'
61
+ // }}>{children}</div>
62
+ // </CalendarContainer >
63
+ // // </div>
64
+ // )
65
+ // }
66
+
67
+ return (
68
+
69
+ <div className={getStyles('date-picker-time')}>
70
+ <DatePicker
71
+ showIcon={showIcon}
72
+ selected={selected}
73
+ onChange={onChange}
74
+ timeCaption={timeCaption}
75
+ // locale="es"
76
+ // showTimeSelect
77
+ // timeFormat="p"
78
+ // timeIntervals={15}
79
+ // dateFormat="Pp"<
80
+ minDate={minDate}
81
+ showTimeSelect={showTimeSelect}
82
+ filterTime={filterTime}
83
+ dateFormat={dateFormat}
84
+ timeIntervals={timeIntervals}
85
+ id={idPicker}
86
+ customInput={<Input isInputSecondary> </Input>}
87
+ // calendarContainer={MyContainer}
88
+
89
+ // minTime={(new Date(), 0)}
90
+ // maxTime={(new Date(), 30)}
91
+ // maxTime={setHours(setMinutes(new Date(), 30), 20)}
92
+ // includeTimes={[
93
+ // setHours(setMinutes(new Date(), 0), 17),
94
+ // setHours(setMinutes(new Date(), 30), 18),
95
+ // setHours(setMinutes(new Date(), 30), 19),
96
+ // setHours(setMinutes(new Date(), 30), 17),
97
+ // ]}
98
+ // dateFormat="d MMMM yyyy, HH:mm aa"
99
+ />
100
+ </div>
101
+ )
102
+
103
+ }
104
+
105
+ DatePickerTime.propTypes = {
106
+ getStyles: PropTypes.func.isRequired,
107
+ showIcon: PropTypes.bool,
108
+ selected: PropTypes.any,
109
+ onChange: PropTypes.func,
110
+ timeCaption: PropTypes.string,
111
+ minDate: PropTypes.any,
112
+ showTimeSelect: PropTypes.bool,
113
+ filterTime: PropTypes.any,
114
+ dateFormat: PropTypes.string,
115
+ timeIntervals: PropTypes.any,
116
+ idPicker: PropTypes.string,
117
+ }
118
+
119
+ DatePickerTime.defaultProps = {
120
+ getStyles: () => { },
121
+ showIcon: true,
122
+ // selected: { startDate },
123
+ onChange: () => { },
124
+ timeCaption: "Hora",
125
+ // minDate: { now },
126
+ showTimeSelect: true,
127
+ // filterTime: { filterPassedTime },
128
+ dateFormat: "dd-MM-yyyy HH:mm aa",
129
+ timeIntervals: 1,
130
+ idPicker: 'hola'
131
+ }
132
+
133
+ export default withStyles(styles)(DatePickerTime)
@@ -0,0 +1,3 @@
1
+ .date-picker-time {
2
+ display: flex;
3
+ }
@@ -0,0 +1,18 @@
1
+ import { DatePickerTime, styles, options } from '.'
2
+
3
+ import {
4
+ getTemplate,
5
+ getListTemplate,
6
+ getOptionsArgTypes,
7
+ } from '../../helpers/storybook'
8
+
9
+ const Template = getTemplate(DatePickerTime, styles)
10
+ const ListTemplate = getListTemplate(DatePickerTime, styles)
11
+
12
+ export default {
13
+ title: 'Molecules/DatePickerTime',
14
+ component: DatePickerTime,
15
+ args: {},
16
+ }
17
+
18
+ export const Default = Template.bind({})
@@ -0,0 +1 @@
1
+ export const options = { types: [] }
@@ -0,0 +1,3 @@
1
+ export { default, DatePickerTime } from './DatePickerTime'
2
+ export { options } from './constants'
3
+ export { default as styles } from './DatePickerTime.module.css'
@@ -5,7 +5,7 @@ import styles from './DynamicSelect.module.css'
5
5
  import withStyles from '../../hocs/withStyles'
6
6
 
7
7
 
8
- export const DynamicSelect = ({ getStyles, optionsSelect, defaultValue, placeholder, isMulti, isClearable, isDisabled, isLoading, isRtl, isSearchable, isInline, onChange, onFocus, onBlur }) => {
8
+ export const DynamicSelect = ({ getStyles, optionsSelect, defaultValue, placeholder, isMulti, isClearable, isDisabled, isLoading, isRtl, isSearchable, isInline, onChange, onFocus, onBlur, closeMenuOnSelect }) => {
9
9
 
10
10
 
11
11
  const customStyles = {
@@ -83,6 +83,7 @@ export const DynamicSelect = ({ getStyles, optionsSelect, defaultValue, placehol
83
83
  onChange={onChange}
84
84
  onFocus={onFocus}
85
85
  onBlur={onBlur}
86
+ closeMenuOnSelect={closeMenuOnSelect}
86
87
  />
87
88
  </div>
88
89
 
@@ -102,7 +103,8 @@ DynamicSelect.propTypes = {
102
103
  isInline: PropTypes.bool,
103
104
  onChange: PropTypes.func,
104
105
  onFocus: PropTypes.func,
105
- onBlur: PropTypes.func
106
+ onBlur: PropTypes.func,
107
+ closeMenuOnSelect: PropTypes.bool
106
108
  }
107
109
 
108
110
  DynamicSelect.defaultProps = {
@@ -118,6 +120,7 @@ DynamicSelect.defaultProps = {
118
120
  onChange: () => { },
119
121
  onFocus: () => { },
120
122
  onBlur: () => { },
123
+ closeMenuOnSelect: true
121
124
  }
122
125
 
123
126
  export default withStyles(styles)(DynamicSelect)
@@ -728,7 +728,32 @@ export const RowTable = ({
728
728
  ?
729
729
  <td className={getStyles('td')} key={[itemTd.accessor]}>{Number(item[itemTd.accessor]).toFixed(2).toString().replace(/\./g, ',')} {itemTd.characterExtra}</td>
730
730
  :
731
- <td className={getStyles('td')} key={[itemTd.accessor]}>{item[itemTd.accessor]}</td>
731
+
732
+ <>
733
+
734
+ <td
735
+ data-tip
736
+ data-for={'td' + [itemTd.accessor] + index}
737
+ onMouseEnter={handleMouseEnter}
738
+ onMouseLeave={handleMouseLeave}
739
+ className={getStyles('td')}
740
+ key={[itemTd.accessor]}
741
+ >
742
+ {item[itemTd.accessor]}
743
+
744
+
745
+ {isToolTipMounted ? (
746
+ <ReactTooltip id={'td' + [itemTd.accessor] + index} type='info'>
747
+ <span>{item[itemTd.accessor]}</span>
748
+ </ReactTooltip>
749
+ ) : null}
750
+
751
+ </td>
752
+
753
+ </>
754
+
755
+
756
+
732
757
 
733
758
  ) : null
734
759
  ))}
@@ -12,13 +12,16 @@
12
12
  }
13
13
 
14
14
  .td {
15
- padding: 15px;
15
+ padding: 6px 0px 6px 15px;
16
16
  text-align: left;
17
17
  vertical-align: middle;
18
18
  font-weight: 300;
19
19
  font-size: 12px;
20
20
  color: var(--color-font-base);
21
21
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
22
+ overflow: hidden;
23
+ text-overflow: ellipsis;
24
+ /* white-space: nowrap; */
22
25
  }
23
26
 
24
27
  .tdacction {
@@ -29,6 +32,13 @@
29
32
 
30
33
  .tdacctionIcons {
31
34
  text-align: right;
35
+ width: max-content;
36
+ inline-size: max-content;
37
+ height: max-content;
38
+ block-size: max-content;
39
+ display: block;
40
+ float: right;
41
+ min-width: 100%
32
42
  }
33
43
 
34
44
  .tr-content:hover {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "imbric-theme",
3
- "version": "0.6.3",
3
+ "version": "0.6.5",
4
4
  "description": "Components library IMBRIC",
5
5
  "private": false,
6
6
  "main": "index.js",
@@ -55,6 +55,7 @@
55
55
  "moment": "2.29.3",
56
56
  "moment-timezone": "0.5.34",
57
57
  "react-date-range": "1.4.0",
58
+ "react-datepicker": "4.10.0",
58
59
  "react-icons": "4.3.1",
59
60
  "react-moment": "1.1.2",
60
61
  "react-router": "6.3.0",