@mirai/ui 1.0.155 → 1.0.157

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.
@@ -63,16 +63,20 @@ var Story = function Story(props) {
63
63
  };
64
64
  var _value = _slicedToArray(value, 2),
65
65
  from = _value[0],
66
- _value$ = _value[1],
67
- to = _value$ === void 0 ? focus : _value$;
68
- var _dateDiff = (0, _locale.dateDiff)((0, _locale.parseDate)(from, format), (0, _locale.parseDate)(to, format)),
66
+ to = _value[1];
67
+ var _dateDiff = (0, _locale.dateDiff)((0, _locale.parseDate)(from, format), (0, _locale.parseDate)(to || focus, format)),
69
68
  nights = _dateDiff.days;
70
69
  var tooltips = from ? {} : props.tooltips;
71
70
  if (from) tooltips[from] = {
72
- text: "Min. ".concat(props.rangeMinDays, " nights")
71
+ text: "Min. ".concat(props.rangeMinDays, " nights"),
72
+ pressable: false
73
73
  };
74
- if (nights >= props.rangeMinDays) tooltips[to] = {
75
- text: "".concat(nights, " nights")
74
+ if (to && nights < 5) tooltips[to] = {
75
+ text: 'Need more nights',
76
+ pressable: false
77
+ };else if (!to && from && focus && focus > from) tooltips[focus] = {
78
+ text: "".concat(nights, " nights"),
79
+ pressable: false
76
80
  };
77
81
  return /*#__PURE__*/_react.default.createElement(_Calendar.Calendar, _extends({}, props, {
78
82
  tooltips: tooltips,
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.stories.js","names":["title","format","today","Date","Story","props","useState","focus","setFocus","value","setValue","handleChange","from","to","console","log","dateFormat","undefined","handleFocus","nextFocus","dateDiff","parseDate","nights","days","tooltips","text","rangeMinDays","storyName","args","captions","dateCalc","disabledDates","disabledPast","highlights","locale","months","range","rangeMaxDays","onNavigation","onScroll","argTypes","options","control","type","defaultValue"],"sources":["../../../src/components/Calendar/Calendar.stories.jsx"],"sourcesContent":["import { dateCalc, dateDiff, dateFormat, parseDate } from '@mirai/locale';\nimport React, { useState } from 'react';\n\nimport { Calendar } from './Calendar';\n\nexport default { title: 'Components' };\n\nconst format = 'DD/MM/YYYY';\nconst today = new Date();\n\nexport const Story = (props) => {\n const [focus, setFocus] = useState();\n const [value, setValue] = useState(props.value || []);\n\n const handleChange = ([from, to], ...props) => {\n console.log('<Calendar>::onChange', [from, to], ...props);\n setValue([from ? dateFormat(from, { format }) : undefined, to ? dateFormat(to, { format }) : undefined]);\n };\n\n const handleFocus = (nextFocus, ...props) => {\n console.log('<Calendar>::onFocus', nextFocus, ...props);\n setFocus(nextFocus ? dateFormat(nextFocus, { format }) : undefined);\n };\n\n const [from, to = focus] = value;\n const { days: nights } = dateDiff(parseDate(from, format), parseDate(to, format));\n\n const tooltips = from ? {} : props.tooltips;\n if (from) tooltips[from] = { text: `Min. ${props.rangeMinDays} nights` };\n if (nights >= props.rangeMinDays) tooltips[to] = { text: `${nights} nights` };\n\n return <Calendar {...props} {...{ tooltips, value }} onChange={handleChange} onFocus={handleFocus} />;\n};\n\nStory.storyName = 'Calendar';\n\nStory.args = {\n captions: {\n [dateFormat(dateCalc(today, -2, 'days'), { format })]: '10.95$',\n [dateFormat(dateCalc(today, 6, 'days'), { format })]: '10.95$',\n [dateFormat(dateCalc(today, 8, 'days'), { format })]: '129510.95$',\n [dateFormat(dateCalc(today, 16, 'days'), { format })]: '10.95$',\n [dateFormat(dateCalc(today, 18, 'days'), { format })]: '9.95$',\n },\n disabledDates: [\n dateFormat(dateCalc(today, 20, 'days'), { format }),\n dateFormat(dateCalc(today, 21, 'days'), { format }),\n dateFormat(dateCalc(today, 22, 'days'), { format }),\n dateFormat(dateCalc(today, 23, 'days'), { format }),\n dateFormat(dateCalc(today, 24, 'days'), { format }),\n ],\n disabledPast: true,\n format,\n from: dateFormat(dateCalc(today, 2, 'days')),\n highlights: [\n dateFormat(dateCalc(today, 6, 'days'), { format }),\n dateFormat(dateCalc(today, 10, 'days'), { format }),\n dateFormat(dateCalc(today, 12, 'days'), { format }),\n dateFormat(dateCalc(today, 14, 'days'), { format }),\n dateFormat(dateCalc(today, 16, 'days'), { format }),\n ],\n locale: 'es-ES',\n months: 2,\n range: true,\n rangeMaxDays: 30,\n rangeMinDays: 3,\n to: dateFormat(dateCalc(today, 6, 'months')),\n tooltips: {\n [dateFormat(dateCalc(today, 15, 'days'), { format })]: { text: '10.95$' },\n [dateFormat(dateCalc(today, 30, 'days'), { format })]: { text: '10.95$' },\n [dateFormat(dateCalc(today, 45, 'days'), { format })]: { text: '10.95$' },\n },\n value: [dateFormat(dateCalc(today, 10, 'days')), dateFormat(dateCalc(today, 13, 'days'))],\n onNavigation: (...props) => console.log('<Calendar>::onNavigation', ...props),\n onScroll: (...props) => console.log('<Calendar>::onScroll', ...props),\n // inherited properties\n ['data-testid']: 'test-story',\n style: {},\n};\n\nStory.argTypes = {\n locale: {\n options: ['es-ES', 'en-GB', 'fr-FR', 'it-IT', 'pt-PT', 'fr-BE', 'de-DE', 'ja-JA'],\n control: { type: 'select' },\n defaultValue: 'es-ES',\n },\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.stories.js","names":["title","format","today","Date","Story","props","useState","focus","setFocus","value","setValue","handleChange","from","to","console","log","dateFormat","undefined","handleFocus","nextFocus","dateDiff","parseDate","nights","days","tooltips","text","rangeMinDays","pressable","storyName","args","captions","dateCalc","disabledDates","disabledPast","highlights","locale","months","range","rangeMaxDays","onNavigation","onScroll","argTypes","options","control","type","defaultValue"],"sources":["../../../src/components/Calendar/Calendar.stories.jsx"],"sourcesContent":["import { dateCalc, dateDiff, dateFormat, parseDate } from '@mirai/locale';\nimport React, { useState } from 'react';\n\nimport { Calendar } from './Calendar';\n\nexport default { title: 'Components' };\n\nconst format = 'DD/MM/YYYY';\nconst today = new Date();\n\nexport const Story = (props) => {\n const [focus, setFocus] = useState();\n const [value, setValue] = useState(props.value || []);\n\n const handleChange = ([from, to], ...props) => {\n console.log('<Calendar>::onChange', [from, to], ...props);\n setValue([from ? dateFormat(from, { format }) : undefined, to ? dateFormat(to, { format }) : undefined]);\n };\n\n const handleFocus = (nextFocus, ...props) => {\n console.log('<Calendar>::onFocus', nextFocus, ...props);\n setFocus(nextFocus ? dateFormat(nextFocus, { format }) : undefined);\n };\n\n const [from, to] = value;\n const { days: nights } = dateDiff(parseDate(from, format), parseDate(to || focus, format));\n\n const tooltips = from ? {} : props.tooltips;\n if (from) tooltips[from] = { text: `Min. ${props.rangeMinDays} nights`, pressable: false };\n if (to && nights < 5) tooltips[to] = { text: 'Need more nights', pressable: false };\n else if (!to && from && focus && focus > from) tooltips[focus] = { text: `${nights} nights`, pressable: false };\n\n return <Calendar {...props} {...{ tooltips, value }} onChange={handleChange} onFocus={handleFocus} />;\n};\n\nStory.storyName = 'Calendar';\n\nStory.args = {\n captions: {\n [dateFormat(dateCalc(today, -2, 'days'), { format })]: '10.95$',\n [dateFormat(dateCalc(today, 6, 'days'), { format })]: '10.95$',\n [dateFormat(dateCalc(today, 8, 'days'), { format })]: '129510.95$',\n [dateFormat(dateCalc(today, 16, 'days'), { format })]: '10.95$',\n [dateFormat(dateCalc(today, 18, 'days'), { format })]: '9.95$',\n },\n disabledDates: [\n dateFormat(dateCalc(today, 20, 'days'), { format }),\n dateFormat(dateCalc(today, 21, 'days'), { format }),\n dateFormat(dateCalc(today, 22, 'days'), { format }),\n dateFormat(dateCalc(today, 23, 'days'), { format }),\n dateFormat(dateCalc(today, 24, 'days'), { format }),\n ],\n disabledPast: true,\n format,\n from: dateFormat(dateCalc(today, 2, 'days')),\n highlights: [\n dateFormat(dateCalc(today, 6, 'days'), { format }),\n dateFormat(dateCalc(today, 10, 'days'), { format }),\n dateFormat(dateCalc(today, 12, 'days'), { format }),\n dateFormat(dateCalc(today, 14, 'days'), { format }),\n dateFormat(dateCalc(today, 16, 'days'), { format }),\n ],\n locale: 'es-ES',\n months: 2,\n range: true,\n rangeMaxDays: 30,\n rangeMinDays: 3,\n to: dateFormat(dateCalc(today, 6, 'months')),\n tooltips: {\n [dateFormat(dateCalc(today, 15, 'days'), { format })]: { text: '10.95$' },\n [dateFormat(dateCalc(today, 30, 'days'), { format })]: { text: '10.95$' },\n [dateFormat(dateCalc(today, 45, 'days'), { format })]: { text: '10.95$' },\n },\n value: [dateFormat(dateCalc(today, 10, 'days')), dateFormat(dateCalc(today, 13, 'days'))],\n onNavigation: (...props) => console.log('<Calendar>::onNavigation', ...props),\n onScroll: (...props) => console.log('<Calendar>::onScroll', ...props),\n // inherited properties\n ['data-testid']: 'test-story',\n style: {},\n};\n\nStory.argTypes = {\n locale: {\n options: ['es-ES', 'en-GB', 'fr-FR', 'it-IT', 'pt-PT', 'fr-BE', 'de-DE', 'ja-JA'],\n control: { type: 'select' },\n defaultValue: 'es-ES',\n },\n};\n"],"mappings":"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"}
@@ -110,6 +110,7 @@ var Story = function Story(props) {
110
110
  label: "Email",
111
111
  hint: "Should contains @mirai.com",
112
112
  required: true,
113
+ showRequired: true,
113
114
  type: "email",
114
115
  value: form.email
115
116
  }), /*#__PURE__*/_react.default.createElement(_.InputText, {
@@ -118,6 +119,7 @@ var Story = function Story(props) {
118
119
  hint: "At least 10 chars.",
119
120
  label: "Password",
120
121
  required: true,
122
+ showRequired: true,
121
123
  minLength: 10,
122
124
  type: "password",
123
125
  value: form.password
@@ -135,6 +137,7 @@ var Story = function Story(props) {
135
137
  max: "31/12/2022",
136
138
  min: "10/04/1980",
137
139
  required: true,
140
+ showRequired: true,
138
141
  type: "inputDate",
139
142
  value: form.dateOfBirth
140
143
  }), /*#__PURE__*/_react.default.createElement(_.InputPhone, {
@@ -144,6 +147,7 @@ var Story = function Story(props) {
144
147
  labelPrefix: "Prefix",
145
148
  prefixes: ['+34', '+44', '+001', '+999', '+39', '+56'],
146
149
  required: true,
150
+ showRequired: true,
147
151
  type: "inputPhone",
148
152
  value: form.phone
149
153
  }), /*#__PURE__*/_react.default.createElement(_.InputText, {
@@ -155,14 +159,14 @@ var Story = function Story(props) {
155
159
  name: "children",
156
160
  label: "Children",
157
161
  hint: "Ages 0 - 17",
158
- value: form.children,
159
- required: true
162
+ value: form.children
160
163
  }), /*#__PURE__*/_react.default.createElement(_.InputOption, {
161
164
  type: "checkbox",
162
165
  name: "checkbox",
163
166
  label: "checkbox",
164
167
  checked: form.checkbox,
165
- required: true
168
+ required: true,
169
+ showRequired: true
166
170
  }), /*#__PURE__*/_react.default.createElement(_.InputOption, {
167
171
  type: "switch",
168
172
  name: "switch",
@@ -1 +1 @@
1
- {"version":3,"file":"Form.stories.js","names":["title","Story","props","useState","condition","setCondition","email","checkbox","dateOfBirth","switch","radio","form","setForm","error","setError","useEffect","handleChange","next","others","console","log","handleEnter","handleError","handleLeave","handleSubmit","value","includes","password","emptyOption","gender","phone","bio","children","Array","from","keys","map","index","Object","length","justifyContent","marginTop","marginRight","storyName","args","debounce","schema","showErrors","validateOnMount","argTypes"],"sources":["../../../src/components/Form/Form.stories.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\n\nimport { Button, InputDate, InputNumber, InputOption, InputPhone, InputText, InputSelect, Text, View } from '../../';\nimport { Form } from './Form';\n\nexport default { title: 'Components' };\n\nexport const Story = (props) => {\n const [condition, setCondition] = useState(false);\n const [form, setForm] = useState({\n email: 'javi@mirai.com',\n checkbox: true,\n dateOfBirth: '04/10/1980',\n switch: true,\n radio: 'radio-2',\n });\n const [error, setError] = useState({});\n\n useEffect(\n () =>\n setForm({\n email: 'javi@mirai.com',\n checkbox: true,\n dateOfBirth: '04/10/1980',\n switch: true,\n radio: 'radio-2',\n }),\n [],\n ); // * Simulate a state hydration\n\n const handleChange = (next, ...others) => {\n setForm(next);\n console.log('<Form>::onChange', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<Form>::onEnter', ...others);\n\n const handleError = (next, ...others) => {\n setError(next);\n console.log('<Form>::onError', next, ...others);\n };\n\n const handleLeave = (...others) => console.log('<Form>::onLeave', ...others);\n\n const handleSubmit = (...others) => console.log('<Form>::onSubmit', ...others);\n\n return (\n <>\n <Form\n {...props}\n onLeave={handleLeave}\n onChange={handleChange}\n onError={handleError}\n onEnter={handleEnter}\n onSubmit={handleSubmit}\n >\n <View row>\n <Text headline>Form component</Text>\n </View>\n\n <InputText\n name=\"email\"\n error={!!error.email}\n test={(value) => value.includes('@mirai.com')}\n label=\"Email\"\n hint=\"Should contains @mirai.com\"\n required\n type=\"email\"\n value={form.email}\n />\n <InputText\n name=\"password\"\n error={!!error.password}\n hint=\"At least 10 chars.\"\n label=\"Password\"\n required\n minLength={10}\n type=\"password\"\n value={form.password}\n />\n <InputSelect\n name=\"gender\"\n emptyOption=\"Select...\"\n error={!!error.emptyOption}\n label=\"Your gender\"\n options={['one', 'two', 'three', 'four', 'five']}\n value={form.gender}\n />\n <InputDate\n name=\"dateOfBirth\"\n error={!!error.dateOfBirth}\n label=\"Your birthdate\"\n max=\"31/12/2022\"\n min=\"10/04/1980\"\n required\n type=\"inputDate\"\n value={form.dateOfBirth}\n />\n <InputPhone\n name=\"phone\"\n error={!!error.phone}\n label=\"Phone\"\n labelPrefix=\"Prefix\"\n prefixes={['+34', '+44', '+001', '+999', '+39', '+56']}\n required\n type=\"inputPhone\"\n value={form.phone}\n />\n <InputText name=\"bio\" label=\"Bio\" multiLine value={form.bio} />\n <InputNumber name=\"children\" label=\"Children\" hint=\"Ages 0 - 17\" value={form.children} required />\n <InputOption type=\"checkbox\" name=\"checkbox\" label=\"checkbox\" checked={form.checkbox} required />\n <InputOption type=\"switch\" name=\"switch\" label=\"switch\" checked={form.switch} />\n {Array.from(Array(2).keys()).map((index) => (\n <InputOption\n key={index}\n type=\"radio\"\n name=\"radio\"\n value={`radio-${index}`}\n label={`radio-${index}`}\n checked={form.radio === `radio-${index}`}\n />\n ))}\n {condition && <InputText label=\"condition\" name=\"condition\" />}\n\n <Button disabled={Object.keys(error).length !== 0} type=\"submit\" wide>\n Submit\n </Button>\n </Form>\n\n <View row style={{ justifyContent: 'flex-end', marginTop: 'var(--mirai-ui-space-L)' }}>\n <Button small secondary onPress={() => setForm({})} style={{ marginRight: 'var(--mirai-ui-space-M)' }}>\n Reset\n </Button>\n <Button small secondary onPress={() => setCondition(!condition)}>\n {`${condition ? 'Hide' : 'Show'} dynamic field`}\n </Button>\n </View>\n </>\n );\n};\n\nStory.storyName = 'Form';\n\nStory.args = {\n debounce: 0,\n schema: {},\n showErrors: false,\n validateOnMount: false,\n // inherited properties\n ['data-testid']: 'test-story',\n style: {},\n};\n\nStory.argTypes = {};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Form.stories.js","names":["title","Story","props","useState","condition","setCondition","email","checkbox","dateOfBirth","switch","radio","form","setForm","error","setError","useEffect","handleChange","next","others","console","log","handleEnter","handleError","handleLeave","handleSubmit","value","includes","password","emptyOption","gender","phone","bio","children","Array","from","keys","map","index","Object","length","justifyContent","marginTop","marginRight","storyName","args","debounce","schema","showErrors","validateOnMount","argTypes"],"sources":["../../../src/components/Form/Form.stories.jsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\n\nimport { Button, InputDate, InputNumber, InputOption, InputPhone, InputText, InputSelect, Text, View } from '../../';\nimport { Form } from './Form';\n\nexport default { title: 'Components' };\n\nexport const Story = (props) => {\n const [condition, setCondition] = useState(false);\n const [form, setForm] = useState({\n email: 'javi@mirai.com',\n checkbox: true,\n dateOfBirth: '04/10/1980',\n switch: true,\n radio: 'radio-2',\n });\n const [error, setError] = useState({});\n\n useEffect(\n () =>\n setForm({\n email: 'javi@mirai.com',\n checkbox: true,\n dateOfBirth: '04/10/1980',\n switch: true,\n radio: 'radio-2',\n }),\n [],\n ); // * Simulate a state hydration\n\n const handleChange = (next, ...others) => {\n setForm(next);\n console.log('<Form>::onChange', next, ...others);\n };\n\n const handleEnter = (...others) => console.log('<Form>::onEnter', ...others);\n\n const handleError = (next, ...others) => {\n setError(next);\n console.log('<Form>::onError', next, ...others);\n };\n\n const handleLeave = (...others) => console.log('<Form>::onLeave', ...others);\n\n const handleSubmit = (...others) => console.log('<Form>::onSubmit', ...others);\n\n return (\n <>\n <Form\n {...props}\n onLeave={handleLeave}\n onChange={handleChange}\n onError={handleError}\n onEnter={handleEnter}\n onSubmit={handleSubmit}\n >\n <View row>\n <Text headline>Form component</Text>\n </View>\n\n <InputText\n name=\"email\"\n error={!!error.email}\n test={(value) => value.includes('@mirai.com')}\n label=\"Email\"\n hint=\"Should contains @mirai.com\"\n required\n showRequired\n type=\"email\"\n value={form.email}\n />\n <InputText\n name=\"password\"\n error={!!error.password}\n hint=\"At least 10 chars.\"\n label=\"Password\"\n required\n showRequired\n minLength={10}\n type=\"password\"\n value={form.password}\n />\n <InputSelect\n name=\"gender\"\n emptyOption=\"Select...\"\n error={!!error.emptyOption}\n label=\"Your gender\"\n options={['one', 'two', 'three', 'four', 'five']}\n value={form.gender}\n />\n <InputDate\n name=\"dateOfBirth\"\n error={!!error.dateOfBirth}\n label=\"Your birthdate\"\n max=\"31/12/2022\"\n min=\"10/04/1980\"\n required\n showRequired\n type=\"inputDate\"\n value={form.dateOfBirth}\n />\n <InputPhone\n name=\"phone\"\n error={!!error.phone}\n label=\"Phone\"\n labelPrefix=\"Prefix\"\n prefixes={['+34', '+44', '+001', '+999', '+39', '+56']}\n required\n showRequired\n type=\"inputPhone\"\n value={form.phone}\n />\n <InputText name=\"bio\" label=\"Bio\" multiLine value={form.bio} />\n <InputNumber name=\"children\" label=\"Children\" hint=\"Ages 0 - 17\" value={form.children} />\n <InputOption type=\"checkbox\" name=\"checkbox\" label=\"checkbox\" checked={form.checkbox} required showRequired />\n <InputOption type=\"switch\" name=\"switch\" label=\"switch\" checked={form.switch} />\n {Array.from(Array(2).keys()).map((index) => (\n <InputOption\n key={index}\n type=\"radio\"\n name=\"radio\"\n value={`radio-${index}`}\n label={`radio-${index}`}\n checked={form.radio === `radio-${index}`}\n />\n ))}\n {condition && <InputText label=\"condition\" name=\"condition\" />}\n\n <Button disabled={Object.keys(error).length !== 0} type=\"submit\" wide>\n Submit\n </Button>\n </Form>\n\n <View row style={{ justifyContent: 'flex-end', marginTop: 'var(--mirai-ui-space-L)' }}>\n <Button small secondary onPress={() => setForm({})} style={{ marginRight: 'var(--mirai-ui-space-M)' }}>\n Reset\n </Button>\n <Button small secondary onPress={() => setCondition(!condition)}>\n {`${condition ? 'Hide' : 'Show'} dynamic field`}\n </Button>\n </View>\n </>\n );\n};\n\nStory.storyName = 'Form';\n\nStory.args = {\n debounce: 0,\n schema: {},\n showErrors: false,\n validateOnMount: false,\n // inherited properties\n ['data-testid']: 'test-story',\n style: {},\n};\n\nStory.argTypes = {};\n"],"mappings":"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"}
@@ -33,7 +33,7 @@ var getInputErrors = function getInputErrors() {
33
33
  var errors = {};
34
34
 
35
35
  // Common
36
- if (required && (value === undefined || value.length === 0)) errors.required = true;
36
+ if (required && (value === undefined || value === false || value.length === 0)) errors.required = true;
37
37
  if (minLength > 0 && value.length < minLength) errors.minLength = true;
38
38
  if (regexp && regexp.exec && regexp.exec(value) === null) errors.regexp = true;
39
39
  if (test && !test(value)) errors.test = true;
@@ -1 +1 @@
1
- {"version":3,"file":"getInputErrors.js","names":["getInputErrors","minLength","regexp","required","test","type","value","others","errors","undefined","length","exec","isValidDate","isValidEmail","isValidPhone","format","getInputDateErrors","getInputPhoneErrors","Object","keys"],"sources":["../../src/helpers/getInputErrors.js"],"sourcesContent":["import { getInputDateErrors } from './getInputDateErrors';\nimport { getInputPhoneErrors } from './getInputPhoneErrors';\nimport { isValidDate } from './isValidDate';\nimport { isValidEmail } from './isValidEmail';\nimport { isValidPhone } from './isValidPhone';\n\nexport const getInputErrors = ({\n minLength = 0,\n regexp,\n required,\n test,\n type = 'text',\n value = '',\n ...others\n} = {}) => {\n let errors = {};\n\n // Common\n if (required && (value === undefined || value.length === 0)) errors.required = true;\n if (minLength > 0 && value.length < minLength) errors.minLength = true;\n if (regexp && regexp.exec && regexp.exec(value) === null) errors.regexp = true;\n if (test && !test(value)) errors.test = true;\n // Email, Phone & Date format\n if (\n (type === 'date' && !isValidDate(value, others)) ||\n (type === 'email' && !isValidEmail(value)) ||\n (type === 'tel' && !isValidPhone(value))\n )\n errors.format = true;\n // Custom Inputs\n if (type === 'inputDate') errors = { ...errors, ...getInputDateErrors({ ...others, value }) };\n if (type === 'inputPhone') errors = { ...errors, ...getInputPhoneErrors({ ...others, value }) };\n\n return Object.keys(errors).length > 0 ? errors : undefined;\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEvC,IAAMA,cAAc,GAAG,SAAjBA,cAAc,GAQhB;EAAA,+EAAP,CAAC,CAAC;IAAA,sBAPJC,SAAS;IAATA,SAAS,+BAAG,CAAC;IACbC,MAAM,QAANA,MAAM;IACNC,QAAQ,QAARA,QAAQ;IACRC,IAAI,QAAJA,IAAI;IAAA,iBACJC,IAAI;IAAJA,IAAI,0BAAG,MAAM;IAAA,kBACbC,KAAK;IAALA,KAAK,2BAAG,EAAE;IACPC,MAAM;EAET,IAAIC,MAAM,GAAG,CAAC,CAAC;;EAEf;EACA,IAAIL,QAAQ,KAAKG,KAAK,KAAKG,SAAS,IAAIH,KAAK,CAACI,MAAM,KAAK,CAAC,CAAC,EAAEF,MAAM,CAACL,QAAQ,GAAG,IAAI;EACnF,IAAIF,SAAS,GAAG,CAAC,IAAIK,KAAK,CAACI,MAAM,GAAGT,SAAS,EAAEO,MAAM,CAACP,SAAS,GAAG,IAAI;EACtE,IAAIC,MAAM,IAAIA,MAAM,CAACS,IAAI,IAAIT,MAAM,CAACS,IAAI,CAACL,KAAK,CAAC,KAAK,IAAI,EAAEE,MAAM,CAACN,MAAM,GAAG,IAAI;EAC9E,IAAIE,IAAI,IAAI,CAACA,IAAI,CAACE,KAAK,CAAC,EAAEE,MAAM,CAACJ,IAAI,GAAG,IAAI;EAC5C;EACA,IACGC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAAO,wBAAW,EAACN,KAAK,EAAEC,MAAM,CAAC,IAC9CF,IAAI,KAAK,OAAO,IAAI,CAAC,IAAAQ,0BAAY,EAACP,KAAK,CAAE,IACzCD,IAAI,KAAK,KAAK,IAAI,CAAC,IAAAS,0BAAY,EAACR,KAAK,CAAE,EAExCE,MAAM,CAACO,MAAM,GAAG,IAAI;EACtB;EACA,IAAIV,IAAI,KAAK,WAAW,EAAEG,MAAM,mCAAQA,MAAM,GAAK,IAAAQ,sCAAkB,kCAAMT,MAAM;IAAED,KAAK,EAALA;EAAK,GAAG,CAAE;EAC7F,IAAID,IAAI,KAAK,YAAY,EAAEG,MAAM,mCAAQA,MAAM,GAAK,IAAAS,wCAAmB,kCAAMV,MAAM;IAAED,KAAK,EAALA;EAAK,GAAG,CAAE;EAE/F,OAAOY,MAAM,CAACC,IAAI,CAACX,MAAM,CAAC,CAACE,MAAM,GAAG,CAAC,GAAGF,MAAM,GAAGC,SAAS;AAC5D,CAAC;AAAC"}
1
+ {"version":3,"file":"getInputErrors.js","names":["getInputErrors","minLength","regexp","required","test","type","value","others","errors","undefined","length","exec","isValidDate","isValidEmail","isValidPhone","format","getInputDateErrors","getInputPhoneErrors","Object","keys"],"sources":["../../src/helpers/getInputErrors.js"],"sourcesContent":["import { getInputDateErrors } from './getInputDateErrors';\nimport { getInputPhoneErrors } from './getInputPhoneErrors';\nimport { isValidDate } from './isValidDate';\nimport { isValidEmail } from './isValidEmail';\nimport { isValidPhone } from './isValidPhone';\n\nexport const getInputErrors = ({\n minLength = 0,\n regexp,\n required,\n test,\n type = 'text',\n value = '',\n ...others\n} = {}) => {\n let errors = {};\n\n // Common\n if (required && (value === undefined || value === false || value.length === 0)) errors.required = true;\n if (minLength > 0 && value.length < minLength) errors.minLength = true;\n if (regexp && regexp.exec && regexp.exec(value) === null) errors.regexp = true;\n if (test && !test(value)) errors.test = true;\n // Email, Phone & Date format\n if (\n (type === 'date' && !isValidDate(value, others)) ||\n (type === 'email' && !isValidEmail(value)) ||\n (type === 'tel' && !isValidPhone(value))\n )\n errors.format = true;\n // Custom Inputs\n if (type === 'inputDate') errors = { ...errors, ...getInputDateErrors({ ...others, value }) };\n if (type === 'inputPhone') errors = { ...errors, ...getInputPhoneErrors({ ...others, value }) };\n\n return Object.keys(errors).length > 0 ? errors : undefined;\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AAA8C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEvC,IAAMA,cAAc,GAAG,SAAjBA,cAAc,GAQhB;EAAA,+EAAP,CAAC,CAAC;IAAA,sBAPJC,SAAS;IAATA,SAAS,+BAAG,CAAC;IACbC,MAAM,QAANA,MAAM;IACNC,QAAQ,QAARA,QAAQ;IACRC,IAAI,QAAJA,IAAI;IAAA,iBACJC,IAAI;IAAJA,IAAI,0BAAG,MAAM;IAAA,kBACbC,KAAK;IAALA,KAAK,2BAAG,EAAE;IACPC,MAAM;EAET,IAAIC,MAAM,GAAG,CAAC,CAAC;;EAEf;EACA,IAAIL,QAAQ,KAAKG,KAAK,KAAKG,SAAS,IAAIH,KAAK,KAAK,KAAK,IAAIA,KAAK,CAACI,MAAM,KAAK,CAAC,CAAC,EAAEF,MAAM,CAACL,QAAQ,GAAG,IAAI;EACtG,IAAIF,SAAS,GAAG,CAAC,IAAIK,KAAK,CAACI,MAAM,GAAGT,SAAS,EAAEO,MAAM,CAACP,SAAS,GAAG,IAAI;EACtE,IAAIC,MAAM,IAAIA,MAAM,CAACS,IAAI,IAAIT,MAAM,CAACS,IAAI,CAACL,KAAK,CAAC,KAAK,IAAI,EAAEE,MAAM,CAACN,MAAM,GAAG,IAAI;EAC9E,IAAIE,IAAI,IAAI,CAACA,IAAI,CAACE,KAAK,CAAC,EAAEE,MAAM,CAACJ,IAAI,GAAG,IAAI;EAC5C;EACA,IACGC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAAO,wBAAW,EAACN,KAAK,EAAEC,MAAM,CAAC,IAC9CF,IAAI,KAAK,OAAO,IAAI,CAAC,IAAAQ,0BAAY,EAACP,KAAK,CAAE,IACzCD,IAAI,KAAK,KAAK,IAAI,CAAC,IAAAS,0BAAY,EAACR,KAAK,CAAE,EAExCE,MAAM,CAACO,MAAM,GAAG,IAAI;EACtB;EACA,IAAIV,IAAI,KAAK,WAAW,EAAEG,MAAM,mCAAQA,MAAM,GAAK,IAAAQ,sCAAkB,kCAAMT,MAAM;IAAED,KAAK,EAALA;EAAK,GAAG,CAAE;EAC7F,IAAID,IAAI,KAAK,YAAY,EAAEG,MAAM,mCAAQA,MAAM,GAAK,IAAAS,wCAAmB,kCAAMV,MAAM;IAAED,KAAK,EAALA;EAAK,GAAG,CAAE;EAE/F,OAAOY,MAAM,CAACC,IAAI,CAACX,MAAM,CAAC,CAACE,MAAM,GAAG,CAAC,GAAGF,MAAM,GAAGC,SAAS;AAC5D,CAAC;AAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/ui",
3
- "version": "1.0.155",
3
+ "version": "1.0.157",
4
4
  "repository": "git@gitlab.com:miraicorp/dev/frontend/ui.git",
5
5
  "author": "JΛVI <hello@soyjavi.com>",
6
6
  "license": "MIT",