react-validate-component 0.1.4 → 0.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.
package/README.md CHANGED
@@ -109,6 +109,98 @@ export default App;
109
109
  - `vIsAnimate` (boolean): Whether to apply animation when displaying the validation message (currently, only opacity animation is supported).
110
110
  - `props` (object): Other options. Enter values for attributes that can be added to the basic input tag.
111
111
 
112
+ ### VCheckbox Component
113
+
114
+ `VCheckbox` 컴포넌트는 기본적인 체크박스 필드에 유효성 검사 문구를 출력해주는 기능을 제공합니다.
115
+
116
+ The `VCheckbox` component provides functionality to display validation messages for basic checkbox fields.
117
+
118
+ #### 사용 예제, Example
119
+
120
+ ```jsx
121
+ import React from 'react';
122
+ import { VText } from 'react-validate-component';
123
+
124
+ const App = () => {
125
+ const list = ['Tiger', 'Rabbit', 'Elephant', 'Dog', 'Pig', 'Cat', 'Duck'];
126
+ const [checked, setChecked] = React.useState<boolean[]>(
127
+ Array.from(list, () => false)
128
+ );
129
+ const [vState2, setVState2] = React.useState<boolean>(false);
130
+ const [vMessage2, setVMessage2] = React.useState<string>('');
131
+ React.useEffect(() => {
132
+ if (checked.filter(v => v).length > 3) {
133
+ setVState2(true);
134
+ setVMessage2('You can check up to 3 items.');
135
+ } else {
136
+ setVState2(false);
137
+ setVMessage2('');
138
+ }
139
+ }, [checked]);
140
+
141
+ return (
142
+ <section className={styles.layout}>
143
+ <h1>React-Validate-Component</h1>
144
+ <div>
145
+ <h2>VCheckbox</h2>
146
+ <h3>CHECK UP TO 3.</h3>
147
+ <VCheckbox
148
+ vState={vState2}
149
+ vType={'bottom'}
150
+ // vClassName={'test'}
151
+ vLabelClassName={styles.label_class}
152
+ vCheckedClassName={styles.label_check_class}
153
+ vCheckList={list}
154
+ vCheckedList={checked}
155
+ vShowMessage={true}
156
+ vMessage={vMessage2}
157
+ vMessageClass={styles.validation_message}
158
+ vIsAnimate={true}
159
+ props={{
160
+ onChange: (e: { target: { value: string; checked: boolean } }) => {
161
+ const tmp = [...checked];
162
+ const findIndex = list.findIndex(val => val === e.target.value);
163
+ tmp[findIndex] = e.target.checked;
164
+ setChecked(tmp);
165
+ },
166
+ }}
167
+ />
168
+ </div>
169
+ </section>
170
+ );
171
+ };
172
+
173
+ export default App;
174
+ ```
175
+
176
+ #### Props
177
+
178
+ - `vState` (boolean): 유효성 상태 값입니다.
179
+ - `vType` (`top`, `bottom`): 유효성 메시지를 띄우는 타입입니다.
180
+ - `vClassName` (string): 유효성 입힐 class 명입니다.
181
+ - `vLabelClassName` (string): label 태그에 입힐 class 명입니다.
182
+ - `vCheckedClassName` (string): check 상태일 때 입힐 class 명입니다.
183
+ - `vCheckList` (string[]): checkbox를 만들때 사용하는 배열입니다. 해당 배열에 있는 string값으로 체크박스를 만듭니다.
184
+ - `vCheckedList` (boolean[]): 현재 체크되어있는 상태를 나타내는 배열입니다.
185
+ - `vShowMessage` (boolean): 유효성 메시지 출력 여부값입니다.
186
+ - `vMessage` (string): 유효성 검사 실패 시 표시할 에러 메시지입니다.
187
+ - `vMessageClass` (string): 유효성 메시지에 입힐 class 명입니다.
188
+ - `vIsAnimate` (boolean): 유효성 메시지 출력 시 애니메이션 적용할지 여부입니다. (현재는 opacity만 적용되어있습니다.)
189
+ - `props` (object): 기타 옵션입니다. 기본 input 태그에 attribute로 넣을 값들을 입력하시면 됩니다.
190
+
191
+ - `vState` (boolean): The validity status value.
192
+ - `vType` (`top`, `bottom`): The type of validation message display.
193
+ - `vClassName` (string): The class name to apply for validation styling.
194
+ - `vLabelClassName` (string): The class name to apply to the `label` tag.
195
+ - `vCheckedClassName` (string): The class name to apply when checked.
196
+ - `vCheckList` (string[]): An array used to create checkboxes. Checkboxes are created using the string values in this array.
197
+ - `vCheckedList` (boolean[]): An array representing the current checked state.
198
+ - `vShowMessage` (boolean): Whether to display the validation message.
199
+ - `vMessage` (string): The error message to display when validation fails.
200
+ - `vMessageClass` (string): The class name to apply to the validation message.
201
+ - `vIsAnimate` (boolean): Whether to apply animation when displaying the validation message (currently, only opacity animation is supported).
202
+ - `props` (object): Other options. Enter values for attributes that can be added to the basic input tag.
203
+
112
204
  ### 유효성 검사 규칙, Validation Rules
113
205
 
114
206
  - 지금은 사용자가 정규식 혹은 함수를 이용해 작성한 유효성검사 로직을 토대로 element에 출력하고 있습니다.
@@ -119,11 +211,11 @@ export default App;
119
211
 
120
212
  ## 개발중인 기능, Features in Development
121
213
 
122
- - 현재 `VText` 컴포넌트만 구현되어 있으며, 다른 입력 유형에 대한 컴포넌트도 개발할 예정입니다.
214
+ - 현재 `VText`, `VCheckbox` 컴포넌트만 구현되어 있으며, 다른 입력 유형에 대한 컴포넌트도 개발할 예정입니다.
123
215
  - 추가적인 유효성 검사 규칙 및 에러 메시지 처리 기능이 계획되어 있습니다.
124
216
  - 현재 문서에 이미지를 추가한 문서 업데이트도 예정되어있습니다.
125
217
 
126
- - Currently, only the `VText` component is implemented, but components for other input types are planned for development.
218
+ - Currently, only the `VText`, `VCheckbox` component is implemented, but components for other input types are planned for development.
127
219
  - Additional validation rules and error message handling features are also in the pipeline.
128
220
  - Updates to the documentation, including the addition of images, are also planned.
129
221
 
@@ -97,10 +97,72 @@ function VText(_ref) {
97
97
  }
98
98
  }
99
99
 
100
- function VCheckbox() {
101
- return /*#__PURE__*/React.createElement("input", {
102
- type: "checkbox"
103
- });
100
+ var css_248z$1 = ".index-module_invalid__jaxx5 {\r\n border: 2px solid red;\r\n outline: none;\r\n}\r\n.index-module_invalid__jaxx5:focus,\r\n.index-module_invalid__jaxx5:focus-visible,\r\n.index-module_invalid__jaxx5:focus-within {\r\n border: 2px solid red;\r\n}\r\n\r\n.index-module_flex_column__jVY8S {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.index-module_checkbox_layout__CnBGz {\r\n width: 400px;\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 10px;\r\n}\r\n\r\n.index-module_animateMessage__o7xGY {\r\n animation: index-module_fade-in__KDZ5w 1s ease-in-out;\r\n}\r\n\r\n@keyframes index-module_fade-in__KDZ5w {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n";
101
+ var styles$1 = {"invalid":"index-module_invalid__jaxx5","flex_column":"index-module_flex_column__jVY8S","checkbox_layout":"index-module_checkbox_layout__CnBGz","animateMessage":"index-module_animateMessage__o7xGY","fade-in":"index-module_fade-in__KDZ5w"};
102
+ styleInject(css_248z$1);
103
+
104
+ function VCheckbox(_ref) {
105
+ var _ref$vState = _ref.vState,
106
+ vState = _ref$vState === void 0 ? false : _ref$vState,
107
+ _ref$vType = _ref.vType,
108
+ vType = _ref$vType === void 0 ? 'bottom' : _ref$vType,
109
+ _ref$vClassName = _ref.vClassName,
110
+ vClassName = _ref$vClassName === void 0 ? '' : _ref$vClassName,
111
+ _ref$vLabelClassName = _ref.vLabelClassName,
112
+ vLabelClassName = _ref$vLabelClassName === void 0 ? '' : _ref$vLabelClassName,
113
+ _ref$vCheckedClassNam = _ref.vCheckedClassName,
114
+ vCheckedClassName = _ref$vCheckedClassNam === void 0 ? '' : _ref$vCheckedClassNam,
115
+ _ref$vCheckList = _ref.vCheckList,
116
+ vCheckList = _ref$vCheckList === void 0 ? [] : _ref$vCheckList,
117
+ _ref$vCheckedList = _ref.vCheckedList,
118
+ vCheckedList = _ref$vCheckedList === void 0 ? [] : _ref$vCheckedList,
119
+ _ref$vShowMessage = _ref.vShowMessage,
120
+ vShowMessage = _ref$vShowMessage === void 0 ? false : _ref$vShowMessage,
121
+ _ref$vMessage = _ref.vMessage,
122
+ vMessage = _ref$vMessage === void 0 ? '' : _ref$vMessage,
123
+ _ref$vMessageClass = _ref.vMessageClass,
124
+ vMessageClass = _ref$vMessageClass === void 0 ? '' : _ref$vMessageClass,
125
+ _ref$vIsAnimate = _ref.vIsAnimate,
126
+ vIsAnimate = _ref$vIsAnimate === void 0 ? false : _ref$vIsAnimate,
127
+ _ref$props = _ref.props,
128
+ props = _ref$props === void 0 ? {} : _ref$props;
129
+ // 체크박스 리스트 생성 함수
130
+ function makeCheckList() {
131
+ var result = [];
132
+ vCheckList.forEach(function (val, i) {
133
+ result.push( /*#__PURE__*/React.createElement("label", {
134
+ htmlFor: "vCheckbox-" + i,
135
+ className: vLabelClassName + " " + (vCheckedList[i] ? vCheckedClassName : '') + " " + (vState ? styles$1.invalid : ''),
136
+ key: i
137
+ }, /*#__PURE__*/React.createElement("input", Object.assign({
138
+ id: "vCheckbox-" + i,
139
+ type: "checkbox",
140
+ className: vClassName,
141
+ hidden: true,
142
+ value: val,
143
+ checked: vCheckedList[i]
144
+ }, props)), /*#__PURE__*/React.createElement("span", null, val)));
145
+ });
146
+ return /*#__PURE__*/React.createElement("div", {
147
+ className: styles$1.checkbox_layout
148
+ }, result);
149
+ }
150
+ switch (vType) {
151
+ case 'top':
152
+ return /*#__PURE__*/React.createElement("div", {
153
+ className: styles$1.flex_column
154
+ }, vState && vShowMessage ? ( /*#__PURE__*/React.createElement("p", {
155
+ className: vMessageClass + " " + (vIsAnimate ? styles$1.animateMessage : '')
156
+ }, vMessage)) : null, makeCheckList());
157
+ case 'bottom':
158
+ return /*#__PURE__*/React.createElement("div", {
159
+ className: styles$1.flex_column
160
+ }, makeCheckList(), vState && vShowMessage ? ( /*#__PURE__*/React.createElement("p", {
161
+ className: vMessageClass + " " + (vIsAnimate ? styles$1.animateMessage : '')
162
+ }, vMessage)) : null);
163
+ default:
164
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
165
+ }
104
166
  }
105
167
 
106
168
  function vColor() {
@@ -1 +1 @@
1
- {"version":3,"file":"react-validate-component.cjs.development.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/vText/index.tsx","../src/vCheckbox/index.tsx","../src/vColor/index.tsx","../src/vDate/index.tsx","../src/vEmail/index.tsx","../src/vRadio/index.tsx","../src/vRange/index.tsx","../src/vURL/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport styles from './index.module.css';\nimport { VTEXT_PARAMS } from './vText';\n\n// Text\nexport function VText({\n vState = false,\n vType = 'outer',\n vClassName = '',\n vShowMessage = false,\n vMessage = '',\n vLocateMessage = 'bottom',\n vMessageClass = '',\n vIsAnimate = false,\n props = {},\n}: VTEXT_PARAMS) {\n switch (vType) {\n case 'outer':\n return (\n <div\n className={`${styles.vinput} ${styles[`vinput-${vLocateMessage}`]}`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${\n vIsAnimate ? styles.animateMessage : ''\n }`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'inner':\n return (\n <div className={styles.vinput}>\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.innerMessage} ${\n styles[`innerMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'tooltip':\n return (\n <div\n className={`${styles.vinput} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n }`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.tooltipMessage} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n default:\n return <div></div>;\n }\n}\n","import React from 'react';\r\n\r\nexport function VCheckbox() {\r\n return <input type=\"checkbox\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vColor() {\r\n return <input type=\"color\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vDate() {\r\n return <input type=\"date\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vEmail() {\r\n return <input type=\"email\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRadio() {\r\n return <input type=\"radio\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRange() {\r\n return <input type=\"range\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vURL() {\r\n return <input type=\"url\" />;\r\n}\r\n"],"names":["VText","_ref","vState","_ref$vState","_ref$vType","vType","_ref$vClassName","vClassName","_ref$vShowMessage","vShowMessage","_ref$vMessage","vMessage","_ref$vLocateMessage","vLocateMessage","_ref$vMessageClass","vMessageClass","_ref$vIsAnimate","vIsAnimate","_ref$props","props","React","className","styles","vinput","type","defaultValue","_props$defaultValue","invalid","animateMessage","_props$defaultValue2","innerMessage","_props$defaultValue3","tooltipMessage","VCheckbox","vColor","vDate","vEmail","vRadio","vRange","vURL"],"mappings":"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"}
1
+ {"version":3,"file":"react-validate-component.cjs.development.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/vText/index.tsx","../src/vCheckbox/index.tsx","../src/vColor/index.tsx","../src/vDate/index.tsx","../src/vEmail/index.tsx","../src/vRadio/index.tsx","../src/vRange/index.tsx","../src/vURL/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport styles from './index.module.css';\nimport { VTEXT_PARAMS } from './vText';\n\n// Text\nexport function VText({\n vState = false,\n vType = 'outer',\n vClassName = '',\n vShowMessage = false,\n vMessage = '',\n vLocateMessage = 'bottom',\n vMessageClass = '',\n vIsAnimate = false,\n props = {},\n}: VTEXT_PARAMS) {\n switch (vType) {\n case 'outer':\n return (\n <div\n className={`${styles.vinput} ${styles[`vinput-${vLocateMessage}`]}`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${\n vIsAnimate ? styles.animateMessage : ''\n }`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'inner':\n return (\n <div className={styles.vinput}>\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.innerMessage} ${\n styles[`innerMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'tooltip':\n return (\n <div\n className={`${styles.vinput} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n }`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.tooltipMessage} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n default:\n return <div></div>;\n }\n}\n","import React from 'react';\r\nimport styles from './index.module.css';\r\nimport { VCHECKBOX_PARAMS } from './vCheckbox';\r\n\r\nexport function VCheckbox({\r\n vState = false,\r\n vType = 'bottom',\r\n vClassName = '',\r\n vLabelClassName = '',\r\n vCheckedClassName = '',\r\n vCheckList = [],\r\n vCheckedList = [],\r\n vShowMessage = false,\r\n vMessage = '',\r\n vMessageClass = '',\r\n vIsAnimate = false,\r\n props = {},\r\n}: VCHECKBOX_PARAMS) {\r\n // 체크박스 리스트 생성 함수\r\n function makeCheckList() {\r\n const result: React.JSX.Element[] = [];\r\n vCheckList.forEach((val, i) => {\r\n result.push(\r\n <label\r\n htmlFor={`vCheckbox-${i}`}\r\n className={`${vLabelClassName} ${\r\n vCheckedList[i] ? vCheckedClassName : ''\r\n } ${vState ? styles.invalid : ''}`}\r\n key={i}\r\n >\r\n <input\r\n id={`vCheckbox-${i}`}\r\n type=\"checkbox\"\r\n className={vClassName}\r\n hidden\r\n value={val}\r\n checked={vCheckedList[i]}\r\n {...props}\r\n />\r\n <span>{val}</span>\r\n </label>\r\n );\r\n });\r\n return <div className={styles.checkbox_layout}>{result}</div>;\r\n }\r\n\r\n switch (vType) {\r\n case 'top':\r\n return (\r\n <div className={styles.flex_column}>\r\n {vState && vShowMessage ? (\r\n <p\r\n className={`${vMessageClass} ${\r\n vIsAnimate ? styles.animateMessage : ''\r\n }`}\r\n >\r\n {vMessage}\r\n </p>\r\n ) : null}\r\n {makeCheckList()}\r\n </div>\r\n );\r\n case 'bottom':\r\n return (\r\n <div className={styles.flex_column}>\r\n {makeCheckList()}\r\n {vState && vShowMessage ? (\r\n <p\r\n className={`${vMessageClass} ${\r\n vIsAnimate ? styles.animateMessage : ''\r\n }`}\r\n >\r\n {vMessage}\r\n </p>\r\n ) : null}\r\n </div>\r\n );\r\n default:\r\n return <></>;\r\n }\r\n}\r\n","import React from 'react';\r\n\r\nexport function vColor() {\r\n return <input type=\"color\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vDate() {\r\n return <input type=\"date\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vEmail() {\r\n return <input type=\"email\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRadio() {\r\n return <input type=\"radio\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRange() {\r\n return <input type=\"range\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vURL() {\r\n return <input type=\"url\" />;\r\n}\r\n"],"names":["VText","_ref","vState","_ref$vState","_ref$vType","vType","_ref$vClassName","vClassName","_ref$vShowMessage","vShowMessage","_ref$vMessage","vMessage","_ref$vLocateMessage","vLocateMessage","_ref$vMessageClass","vMessageClass","_ref$vIsAnimate","vIsAnimate","_ref$props","props","React","className","styles","vinput","type","defaultValue","_props$defaultValue","invalid","animateMessage","_props$defaultValue2","innerMessage","_props$defaultValue3","tooltipMessage","VCheckbox","_ref$vLabelClassName","vLabelClassName","_ref$vCheckedClassNam","vCheckedClassName","_ref$vCheckList","vCheckList","_ref$vCheckedList","vCheckedList","makeCheckList","result","forEach","val","i","push","htmlFor","key","id","hidden","value","checked","checkbox_layout","flex_column","vColor","vDate","vEmail","vRadio","vRange","vURL"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,n=(e=require("react"))&&"object"==typeof e&&"default"in e?e.default:e,t={invalid:"index-module_invalid__iPosr",vinput:"index-module_vinput__Xz53v","vinput-top-left":"index-module_vinput-top-left__UFNRe","vinput-top":"index-module_vinput-top__Gor3M","vinput-top-right":"index-module_vinput-top-right__wexyT","vinput-center-left":"index-module_vinput-center-left__oTbXC","vinput-center-right":"index-module_vinput-center-right__wz--8","vinput-bottom-left":"index-module_vinput-bottom-left__9gm8q","vinput-bottom":"index-module_vinput-bottom__bxp6x","vinput-bottom-right":"index-module_vinput-bottom-right__ihiB0",innerMessage:"index-module_innerMessage__cnS6N","innerMessage-top-left":"index-module_innerMessage-top-left__3804h","innerMessage-top":"index-module_innerMessage-top__MRmrS","innerMessage-top-right":"index-module_innerMessage-top-right__4ejsZ","innerMessage-center-left":"index-module_innerMessage-center-left__t2SwR","innerMessage-center":"index-module_innerMessage-center__gT4X6","innerMessage-center-right":"index-module_innerMessage-center-right__FzHy2","innerMessage-bottom-left":"index-module_innerMessage-bottom-left__gI2z5","innerMessage-bottom":"index-module_innerMessage-bottom__Zb48i","innerMessage-bottom-right":"index-module_innerMessage-bottom-right__OlaLD",tooltipMessage:"index-module_tooltipMessage__BG3C0","tooltipMessage-top-left":"index-module_tooltipMessage-top-left__EExDe","tooltipMessage-top":"index-module_tooltipMessage-top__L7c5-","tooltipMessage-top-right":"index-module_tooltipMessage-top-right__iVHO9","tooltipMessage-center-right":"index-module_tooltipMessage-center-right__nL7jv","tooltipMessage-center-left":"index-module_tooltipMessage-center-left__C2dwc","tooltipMessage-bottom-left":"index-module_tooltipMessage-bottom-left__G4dRB","tooltipMessage-bottom":"index-module_tooltipMessage-bottom__O5fIQ","tooltipMessage-bottom-right":"index-module_tooltipMessage-bottom-right__ACA9z",animateMessage:"index-module_animateMessage__2Xq3T","fade-in":"index-module_fade-in__Xcu-Q"};!function(e,n){void 0===n&&(n={});var t=n.insertAt;if("undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===t&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}(".index-module_invalid__iPosr {\r\n border: 2px solid red;\r\n outline: none;\r\n}\r\n.index-module_invalid__iPosr:focus,\r\n.index-module_invalid__iPosr:focus-visible,\r\n.index-module_invalid__iPosr:focus-within {\r\n border: 2px solid red;\r\n}\r\n\r\n/* vType === 'outer' */\r\n.index-module_vinput__Xz53v {\r\n display: flex;\r\n}\r\n.index-module_vinput-top-left__UFNRe {\r\n flex-direction: column-reverse;\r\n align-items: flex-start;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-top__Gor3M {\r\n flex-direction: column-reverse;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-top-right__wexyT {\r\n flex-direction: column-reverse;\r\n align-items: flex-end;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-center-left__oTbXC {\r\n flex-direction: row-reverse;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-center-right__wz--8 {\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-bottom-left__9gm8q {\r\n flex-direction: column;\r\n align-items: flex-start;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-bottom__bxp6x {\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-bottom-right__ihiB0 {\r\n flex-direction: column;\r\n align-items: flex-end;\r\n justify-content: center;\r\n}\r\n\r\n/* vType === 'inner' */\r\n.index-module_innerMessage__cnS6N {\r\n position: absolute;\r\n font-size: 12px;\r\n margin: 0;\r\n padding: 2px 5px;\r\n display: flex;\r\n}\r\n.index-module_innerMessage-top-left__3804h {\r\n align-items: flex-start;\r\n justify-content: flex-start;\r\n}\r\n.index-module_innerMessage-top__MRmrS {\r\n align-items: flex-start;\r\n justify-content: center;\r\n}\r\n.index-module_innerMessage-top-right__4ejsZ {\r\n align-items: flex-start;\r\n justify-content: flex-end;\r\n}\r\n.index-module_innerMessage-center-left__t2SwR {\r\n align-items: center;\r\n justify-content: flex-start;\r\n}\r\n.index-module_innerMessage-center__gT4X6 {\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_innerMessage-center-right__FzHy2 {\r\n align-items: center;\r\n justify-content: flex-end;\r\n}\r\n.index-module_innerMessage-bottom-left__gI2z5 {\r\n align-items: flex-end;\r\n justify-content: flex-start;\r\n}\r\n.index-module_innerMessage-bottom__Zb48i {\r\n align-items: flex-end;\r\n justify-content: center;\r\n}\r\n.index-module_innerMessage-bottom-right__OlaLD {\r\n align-items: flex-end;\r\n justify-content: flex-end;\r\n}\r\n\r\n/* vType === 'tooltip' */\r\n.index-module_tooltipMessage__BG3C0 {\r\n position: absolute;\r\n margin: 0;\r\n padding: 10px 20px;\r\n border: 1px solid transparent;\r\n border-radius: 10px;\r\n background-color: black;\r\n}\r\np[class*='tooltipMessage-top'] {\r\n transform: translateY(calc(-100% - 10px));\r\n}\r\np[class*='tooltipMessage-top']::after {\r\n content: '';\r\n position: absolute;\r\n bottom: 0;\r\n border: 10px solid transparent;\r\n border-top-color: black;\r\n border-bottom: 0;\r\n margin-bottom: -11px;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-top-left__EExDe {\r\n justify-content: flex-start;\r\n}\r\np.index-module_tooltipMessage-top-left__EExDe::after {\r\n left: 3%;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-top__L7c5- {\r\n justify-content: center;\r\n}\r\np.index-module_tooltipMessage-top__L7c5-::after {\r\n left: 44%;\r\n}\r\n.index-module_tooltipMessage-top-right__iVHO9 {\r\n justify-content: flex-end;\r\n}\r\np.index-module_tooltipMessage-top-right__iVHO9::after {\r\n left: 87%;\r\n}\r\np[class*='tooltipMessage-center'] {\r\n /* transform: translateY(calc(-100% - 10px)); */\r\n}\r\np[class*='tooltipMessage-center']::after {\r\n content: '';\r\n position: absolute;\r\n border: 10px solid transparent;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-center-right__nL7jv {\r\n justify-content: flex-end;\r\n}\r\np.index-module_tooltipMessage-center-right__nL7jv {\r\n transform: translateX(calc(100% + 10px));\r\n}\r\np.index-module_tooltipMessage-center-right__nL7jv::after {\r\n border-right-color: black;\r\n left: -10%;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-center-left__C2dwc {\r\n justify-content: flex-start;\r\n}\r\np.index-module_tooltipMessage-center-left__C2dwc {\r\n transform: translateX(calc(-100% - 10px));\r\n}\r\np.index-module_tooltipMessage-center-left__C2dwc::after {\r\n border-left-color: black;\r\n left: 100%;\r\n}\r\n\r\np[class*='tooltipMessage-bottom'] {\r\n transform: translateY(calc(120% + 10px));\r\n}\r\np[class*='tooltipMessage-bottom']::after {\r\n content: '';\r\n position: absolute;\r\n top: 0;\r\n border: 10px solid transparent;\r\n border-bottom-color: black;\r\n border-top: 0;\r\n margin-top: -11px;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-bottom-left__G4dRB {\r\n justify-content: flex-start;\r\n}\r\np.index-module_tooltipMessage-bottom-left__G4dRB::after {\r\n left: 3%;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-bottom__O5fIQ {\r\n justify-content: center;\r\n}\r\np.index-module_tooltipMessage-bottom__O5fIQ::after {\r\n left: 44%;\r\n}\r\n.index-module_tooltipMessage-bottom-right__ACA9z {\r\n justify-content: flex-end;\r\n}\r\np.index-module_tooltipMessage-bottom-right__ACA9z::after {\r\n left: 87%;\r\n}\r\n\r\n.index-module_animateMessage__2Xq3T {\r\n animation: index-module_fade-in__Xcu-Q 1s ease-in-out;\r\n}\r\n\r\n@keyframes index-module_fade-in__Xcu-Q {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n"),exports.VCheckbox=function(){return n.createElement("input",{type:"checkbox"})},exports.VText=function(e){var r,o,i,l=e.vState,s=void 0!==l&&l,a=e.vType,d=e.vClassName,_=void 0===d?"":d,u=e.vShowMessage,p=void 0!==u&&u,m=e.vMessage,c=void 0===m?"":m,x=e.vLocateMessage,g=void 0===x?"bottom":x,f=e.vMessageClass,v=void 0===f?"":f,M=e.vIsAnimate,b=void 0!==M&&M,y=e.props,h=void 0===y?{}:y;switch(void 0===a?"outer":a){case"outer":return n.createElement("div",{className:t.vinput+" "+t["vinput-"+g]},n.createElement("input",Object.assign({type:"text"},h,{defaultValue:null!=(r=null==h?void 0:h.defaultValue)?r:"",className:(null==h?void 0:h.className)+" "+(s?_||t.invalid:"")})),s&&p?n.createElement("p",{className:v+" "+(b?t.animateMessage:"")},c):null);case"inner":return n.createElement("div",{className:t.vinput},n.createElement("input",Object.assign({type:"text"},h,{defaultValue:null!=(o=null==h?void 0:h.defaultValue)?o:"",className:(null==h?void 0:h.className)+" "+(s?_||t.invalid:"")})),s&&p?n.createElement("p",{className:v+" "+t.innerMessage+" "+t["innerMessage-"+g]+" "+(b?t.animateMessage:"")},c):null);case"tooltip":return n.createElement("div",{className:t.vinput+" "+t["tooltipMessage-"+g]},n.createElement("input",Object.assign({type:"text"},h,{defaultValue:null!=(i=null==h?void 0:h.defaultValue)?i:"",className:(null==h?void 0:h.className)+" "+(s?_||t.invalid:"")})),s&&p?n.createElement("p",{className:v+" "+t.tooltipMessage+" "+t["tooltipMessage-"+g]+" "+(b?t.animateMessage:"")},c):null);default:return n.createElement("div",null)}},exports.vColor=function(){return n.createElement("input",{type:"color"})},exports.vDate=function(){return n.createElement("input",{type:"date"})},exports.vEmail=function(){return n.createElement("input",{type:"email"})},exports.vRadio=function(){return n.createElement("input",{type:"radio"})},exports.vRange=function(){return n.createElement("input",{type:"range"})},exports.vURL=function(){return n.createElement("input",{type:"url"})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,n=(e=require("react"))&&"object"==typeof e&&"default"in e?e.default:e;function t(e,n){void 0===n&&(n={});var t=n.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===t&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}var r={invalid:"index-module_invalid__iPosr",vinput:"index-module_vinput__Xz53v","vinput-top-left":"index-module_vinput-top-left__UFNRe","vinput-top":"index-module_vinput-top__Gor3M","vinput-top-right":"index-module_vinput-top-right__wexyT","vinput-center-left":"index-module_vinput-center-left__oTbXC","vinput-center-right":"index-module_vinput-center-right__wz--8","vinput-bottom-left":"index-module_vinput-bottom-left__9gm8q","vinput-bottom":"index-module_vinput-bottom__bxp6x","vinput-bottom-right":"index-module_vinput-bottom-right__ihiB0",innerMessage:"index-module_innerMessage__cnS6N","innerMessage-top-left":"index-module_innerMessage-top-left__3804h","innerMessage-top":"index-module_innerMessage-top__MRmrS","innerMessage-top-right":"index-module_innerMessage-top-right__4ejsZ","innerMessage-center-left":"index-module_innerMessage-center-left__t2SwR","innerMessage-center":"index-module_innerMessage-center__gT4X6","innerMessage-center-right":"index-module_innerMessage-center-right__FzHy2","innerMessage-bottom-left":"index-module_innerMessage-bottom-left__gI2z5","innerMessage-bottom":"index-module_innerMessage-bottom__Zb48i","innerMessage-bottom-right":"index-module_innerMessage-bottom-right__OlaLD",tooltipMessage:"index-module_tooltipMessage__BG3C0","tooltipMessage-top-left":"index-module_tooltipMessage-top-left__EExDe","tooltipMessage-top":"index-module_tooltipMessage-top__L7c5-","tooltipMessage-top-right":"index-module_tooltipMessage-top-right__iVHO9","tooltipMessage-center-right":"index-module_tooltipMessage-center-right__nL7jv","tooltipMessage-center-left":"index-module_tooltipMessage-center-left__C2dwc","tooltipMessage-bottom-left":"index-module_tooltipMessage-bottom-left__G4dRB","tooltipMessage-bottom":"index-module_tooltipMessage-bottom__O5fIQ","tooltipMessage-bottom-right":"index-module_tooltipMessage-bottom-right__ACA9z",animateMessage:"index-module_animateMessage__2Xq3T","fade-in":"index-module_fade-in__Xcu-Q"};t(".index-module_invalid__iPosr {\r\n border: 2px solid red;\r\n outline: none;\r\n}\r\n.index-module_invalid__iPosr:focus,\r\n.index-module_invalid__iPosr:focus-visible,\r\n.index-module_invalid__iPosr:focus-within {\r\n border: 2px solid red;\r\n}\r\n\r\n/* vType === 'outer' */\r\n.index-module_vinput__Xz53v {\r\n display: flex;\r\n}\r\n.index-module_vinput-top-left__UFNRe {\r\n flex-direction: column-reverse;\r\n align-items: flex-start;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-top__Gor3M {\r\n flex-direction: column-reverse;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-top-right__wexyT {\r\n flex-direction: column-reverse;\r\n align-items: flex-end;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-center-left__oTbXC {\r\n flex-direction: row-reverse;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-center-right__wz--8 {\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-bottom-left__9gm8q {\r\n flex-direction: column;\r\n align-items: flex-start;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-bottom__bxp6x {\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_vinput-bottom-right__ihiB0 {\r\n flex-direction: column;\r\n align-items: flex-end;\r\n justify-content: center;\r\n}\r\n\r\n/* vType === 'inner' */\r\n.index-module_innerMessage__cnS6N {\r\n position: absolute;\r\n font-size: 12px;\r\n margin: 0;\r\n padding: 2px 5px;\r\n display: flex;\r\n}\r\n.index-module_innerMessage-top-left__3804h {\r\n align-items: flex-start;\r\n justify-content: flex-start;\r\n}\r\n.index-module_innerMessage-top__MRmrS {\r\n align-items: flex-start;\r\n justify-content: center;\r\n}\r\n.index-module_innerMessage-top-right__4ejsZ {\r\n align-items: flex-start;\r\n justify-content: flex-end;\r\n}\r\n.index-module_innerMessage-center-left__t2SwR {\r\n align-items: center;\r\n justify-content: flex-start;\r\n}\r\n.index-module_innerMessage-center__gT4X6 {\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n.index-module_innerMessage-center-right__FzHy2 {\r\n align-items: center;\r\n justify-content: flex-end;\r\n}\r\n.index-module_innerMessage-bottom-left__gI2z5 {\r\n align-items: flex-end;\r\n justify-content: flex-start;\r\n}\r\n.index-module_innerMessage-bottom__Zb48i {\r\n align-items: flex-end;\r\n justify-content: center;\r\n}\r\n.index-module_innerMessage-bottom-right__OlaLD {\r\n align-items: flex-end;\r\n justify-content: flex-end;\r\n}\r\n\r\n/* vType === 'tooltip' */\r\n.index-module_tooltipMessage__BG3C0 {\r\n position: absolute;\r\n margin: 0;\r\n padding: 10px 20px;\r\n border: 1px solid transparent;\r\n border-radius: 10px;\r\n background-color: black;\r\n}\r\np[class*='tooltipMessage-top'] {\r\n transform: translateY(calc(-100% - 10px));\r\n}\r\np[class*='tooltipMessage-top']::after {\r\n content: '';\r\n position: absolute;\r\n bottom: 0;\r\n border: 10px solid transparent;\r\n border-top-color: black;\r\n border-bottom: 0;\r\n margin-bottom: -11px;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-top-left__EExDe {\r\n justify-content: flex-start;\r\n}\r\np.index-module_tooltipMessage-top-left__EExDe::after {\r\n left: 3%;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-top__L7c5- {\r\n justify-content: center;\r\n}\r\np.index-module_tooltipMessage-top__L7c5-::after {\r\n left: 44%;\r\n}\r\n.index-module_tooltipMessage-top-right__iVHO9 {\r\n justify-content: flex-end;\r\n}\r\np.index-module_tooltipMessage-top-right__iVHO9::after {\r\n left: 87%;\r\n}\r\np[class*='tooltipMessage-center'] {\r\n /* transform: translateY(calc(-100% - 10px)); */\r\n}\r\np[class*='tooltipMessage-center']::after {\r\n content: '';\r\n position: absolute;\r\n border: 10px solid transparent;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-center-right__nL7jv {\r\n justify-content: flex-end;\r\n}\r\np.index-module_tooltipMessage-center-right__nL7jv {\r\n transform: translateX(calc(100% + 10px));\r\n}\r\np.index-module_tooltipMessage-center-right__nL7jv::after {\r\n border-right-color: black;\r\n left: -10%;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-center-left__C2dwc {\r\n justify-content: flex-start;\r\n}\r\np.index-module_tooltipMessage-center-left__C2dwc {\r\n transform: translateX(calc(-100% - 10px));\r\n}\r\np.index-module_tooltipMessage-center-left__C2dwc::after {\r\n border-left-color: black;\r\n left: 100%;\r\n}\r\n\r\np[class*='tooltipMessage-bottom'] {\r\n transform: translateY(calc(120% + 10px));\r\n}\r\np[class*='tooltipMessage-bottom']::after {\r\n content: '';\r\n position: absolute;\r\n top: 0;\r\n border: 10px solid transparent;\r\n border-bottom-color: black;\r\n border-top: 0;\r\n margin-top: -11px;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-bottom-left__G4dRB {\r\n justify-content: flex-start;\r\n}\r\np.index-module_tooltipMessage-bottom-left__G4dRB::after {\r\n left: 3%;\r\n}\r\n.index-module_vinput__Xz53v.index-module_tooltipMessage-bottom__O5fIQ {\r\n justify-content: center;\r\n}\r\np.index-module_tooltipMessage-bottom__O5fIQ::after {\r\n left: 44%;\r\n}\r\n.index-module_tooltipMessage-bottom-right__ACA9z {\r\n justify-content: flex-end;\r\n}\r\np.index-module_tooltipMessage-bottom-right__ACA9z::after {\r\n left: 87%;\r\n}\r\n\r\n.index-module_animateMessage__2Xq3T {\r\n animation: index-module_fade-in__Xcu-Q 1s ease-in-out;\r\n}\r\n\r\n@keyframes index-module_fade-in__Xcu-Q {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n"),t(".index-module_invalid__jaxx5 {\r\n border: 2px solid red;\r\n outline: none;\r\n}\r\n.index-module_invalid__jaxx5:focus,\r\n.index-module_invalid__jaxx5:focus-visible,\r\n.index-module_invalid__jaxx5:focus-within {\r\n border: 2px solid red;\r\n}\r\n\r\n.index-module_flex_column__jVY8S {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.index-module_checkbox_layout__CnBGz {\r\n width: 400px;\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 10px;\r\n}\r\n\r\n.index-module_animateMessage__o7xGY {\r\n animation: index-module_fade-in__KDZ5w 1s ease-in-out;\r\n}\r\n\r\n@keyframes index-module_fade-in__KDZ5w {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n"),exports.VCheckbox=function(e){var t=e.vState,r=void 0!==t&&t,o=e.vType,i=e.vClassName,l=void 0===i?"":i,s=e.vLabelClassName,a=void 0===s?"":s,d=e.vCheckedClassName,_=void 0===d?"":d,u=e.vCheckList,m=void 0===u?[]:u,p=e.vCheckedList,c=void 0===p?[]:p,x=e.vShowMessage,f=void 0!==x&&x,g=e.vMessage,v=void 0===g?"":g,M=e.vMessageClass,b=void 0===M?"":M,h=e.vIsAnimate,y=void 0!==h&&h,j=e.props,E=void 0===j?{}:j;function C(){var e=[];return m.forEach((function(t,o){e.push(n.createElement("label",{htmlFor:"vCheckbox-"+o,className:a+" "+(c[o]?_:"")+" "+(r?"index-module_invalid__jaxx5":""),key:o},n.createElement("input",Object.assign({id:"vCheckbox-"+o,type:"checkbox",className:l,hidden:!0,value:t,checked:c[o]},E)),n.createElement("span",null,t)))})),n.createElement("div",{className:"index-module_checkbox_layout__CnBGz"},e)}switch(void 0===o?"bottom":o){case"top":return n.createElement("div",{className:"index-module_flex_column__jVY8S"},r&&f?n.createElement("p",{className:b+" "+(y?"index-module_animateMessage__o7xGY":"")},v):null,C());case"bottom":return n.createElement("div",{className:"index-module_flex_column__jVY8S"},C(),r&&f?n.createElement("p",{className:b+" "+(y?"index-module_animateMessage__o7xGY":"")},v):null);default:return n.createElement(n.Fragment,null)}},exports.VText=function(e){var t,o,i,l=e.vState,s=void 0!==l&&l,a=e.vType,d=e.vClassName,_=void 0===d?"":d,u=e.vShowMessage,m=void 0!==u&&u,p=e.vMessage,c=void 0===p?"":p,x=e.vLocateMessage,f=void 0===x?"bottom":x,g=e.vMessageClass,v=void 0===g?"":g,M=e.vIsAnimate,b=void 0!==M&&M,h=e.props,y=void 0===h?{}:h;switch(void 0===a?"outer":a){case"outer":return n.createElement("div",{className:r.vinput+" "+r["vinput-"+f]},n.createElement("input",Object.assign({type:"text"},y,{defaultValue:null!=(t=null==y?void 0:y.defaultValue)?t:"",className:(null==y?void 0:y.className)+" "+(s?_||r.invalid:"")})),s&&m?n.createElement("p",{className:v+" "+(b?r.animateMessage:"")},c):null);case"inner":return n.createElement("div",{className:r.vinput},n.createElement("input",Object.assign({type:"text"},y,{defaultValue:null!=(o=null==y?void 0:y.defaultValue)?o:"",className:(null==y?void 0:y.className)+" "+(s?_||r.invalid:"")})),s&&m?n.createElement("p",{className:v+" "+r.innerMessage+" "+r["innerMessage-"+f]+" "+(b?r.animateMessage:"")},c):null);case"tooltip":return n.createElement("div",{className:r.vinput+" "+r["tooltipMessage-"+f]},n.createElement("input",Object.assign({type:"text"},y,{defaultValue:null!=(i=null==y?void 0:y.defaultValue)?i:"",className:(null==y?void 0:y.className)+" "+(s?_||r.invalid:"")})),s&&m?n.createElement("p",{className:v+" "+r.tooltipMessage+" "+r["tooltipMessage-"+f]+" "+(b?r.animateMessage:"")},c):null);default:return n.createElement("div",null)}},exports.vColor=function(){return n.createElement("input",{type:"color"})},exports.vDate=function(){return n.createElement("input",{type:"date"})},exports.vEmail=function(){return n.createElement("input",{type:"email"})},exports.vRadio=function(){return n.createElement("input",{type:"radio"})},exports.vRange=function(){return n.createElement("input",{type:"range"})},exports.vURL=function(){return n.createElement("input",{type:"url"})};
2
2
  //# sourceMappingURL=react-validate-component.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-validate-component.cjs.production.min.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/vCheckbox/index.tsx","../src/vText/index.tsx","../src/vColor/index.tsx","../src/vDate/index.tsx","../src/vEmail/index.tsx","../src/vRadio/index.tsx","../src/vRange/index.tsx","../src/vURL/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\r\n\r\nexport function VCheckbox() {\r\n return <input type=\"checkbox\" />;\r\n}\r\n","import React from 'react';\nimport styles from './index.module.css';\nimport { VTEXT_PARAMS } from './vText';\n\n// Text\nexport function VText({\n vState = false,\n vType = 'outer',\n vClassName = '',\n vShowMessage = false,\n vMessage = '',\n vLocateMessage = 'bottom',\n vMessageClass = '',\n vIsAnimate = false,\n props = {},\n}: VTEXT_PARAMS) {\n switch (vType) {\n case 'outer':\n return (\n <div\n className={`${styles.vinput} ${styles[`vinput-${vLocateMessage}`]}`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${\n vIsAnimate ? styles.animateMessage : ''\n }`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'inner':\n return (\n <div className={styles.vinput}>\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.innerMessage} ${\n styles[`innerMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'tooltip':\n return (\n <div\n className={`${styles.vinput} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n }`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.tooltipMessage} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n default:\n return <div></div>;\n }\n}\n","import React from 'react';\r\n\r\nexport function vColor() {\r\n return <input type=\"color\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vDate() {\r\n return <input type=\"date\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vEmail() {\r\n return <input type=\"email\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRadio() {\r\n return <input type=\"radio\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRange() {\r\n return <input type=\"range\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vURL() {\r\n return <input type=\"url\" />;\r\n}\r\n"],"names":["css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","React","_ref","vState","_ref$vState","_ref$vType","vType","_ref$vClassName","vClassName","_ref$vShowMessage","vShowMessage","_ref$vMessage","vMessage","_ref$vLocateMessage","vLocateMessage","_ref$vMessageClass","vMessageClass","_ref$vIsAnimate","vIsAnimate","_ref$props","props","className","styles","vinput","defaultValue","_props$defaultValue","invalid","animateMessage","_props$defaultValue2","innerMessage","_props$defaultValue3","tooltipMessage"],"mappings":"+iEAAA,SAAqBA,EAAKC,QACX,IAARA,IAAiBA,EAAM,IAC5B,IAAIC,EAAWD,EAAIC,SAEnB,GAAgC,oBAAbC,SAAnB,CAEA,IAAIC,EAAOD,SAASC,MAAQD,SAASE,qBAAqB,QAAQ,GAC9DC,EAAQH,SAASI,cAAc,SACnCD,EAAME,KAAO,WAEI,QAAbN,GACEE,EAAKK,WACPL,EAAKM,aAAaJ,EAAOF,EAAKK,YAKhCL,EAAKO,YAAYL,GAGfA,EAAMM,WACRN,EAAMM,WAAWC,QAAUb,EAE3BM,EAAMK,YAAYR,SAASW,eAAed,kpLCpB5C,OAAOe,yBAAOP,KAAK,qCCEAQ,iBACnBC,OAAAA,WAAMC,GAAQA,EAAAC,EAAAH,EACdI,MAAeC,EAAAL,EACfM,WAAAA,WAAUD,EAAG,GAAEA,EAAAE,EAAAP,EACfQ,aAAAA,WAAYD,GAAQA,EAAAE,EAAAT,EACpBU,SAAAA,WAAQD,EAAG,GAAEA,EAAAE,EAAAX,EACbY,eAAAA,WAAcD,EAAG,SAAQA,EAAAE,EAAAb,EACzBc,cAAAA,WAAaD,EAAG,GAAEA,EAAAE,EAAAf,EAClBgB,WAAAA,WAAUD,GAAQA,EAAAE,EAAAjB,EAClBkB,MAAAA,WAAKD,EAAG,GAAEA,EAEV,gBATKd,EAAG,QAAOA,GAUb,IAAK,QACH,OACEJ,uBACEoB,UAAcC,EAAOC,WAAUD,YAAiBR,IAEhDb,uCACEP,KAAK,QACD0B,GACJI,oBAAYC,QAAEL,SAAAA,EAAOI,cAAYC,EAAI,GACrCJ,iBAAcD,SAAAA,EAAOC,gBACnBlB,EAASK,GAAcc,EAAOI,QAAU,OAG3CvB,GAAUO,EACTT,qBACEoB,UAAcL,OACZE,EAAaI,EAAOK,eAAiB,KAGtCf,GAED,MAGV,IAAK,QACH,OACEX,uBAAKoB,UAAWC,EAAOC,QACrBtB,uCACEP,KAAK,QACD0B,GACJI,oBAAYI,QAAER,SAAAA,EAAOI,cAAYI,EAAI,GACrCP,iBAAcD,SAAAA,EAAOC,gBACnBlB,EAASK,GAAcc,EAAOI,QAAU,OAG3CvB,GAAUO,EACTT,qBACEoB,UAAcL,MAAiBM,EAAOO,iBACpCP,kBAAuBR,QACrBI,EAAaI,EAAOK,eAAiB,KAExCf,GAED,MAGV,IAAK,UACH,OACEX,uBACEoB,UAAcC,EAAOC,WACnBD,oBAAyBR,IAG3Bb,uCACEP,KAAK,QACD0B,GACJI,oBAAYM,QAAEV,SAAAA,EAAOI,cAAYM,EAAI,GACrCT,iBAAcD,SAAAA,EAAOC,gBACnBlB,EAASK,GAAcc,EAAOI,QAAU,OAG3CvB,GAAUO,EACTT,qBACEoB,UAAcL,MAAiBM,EAAOS,mBACpCT,oBAAyBR,QACvBI,EAAaI,EAAOK,eAAiB,KAExCf,GAED,MAGV,QACE,OAAOX,wDCvFX,OAAOA,yBAAOP,KAAK,oCCAnB,OAAOO,yBAAOP,KAAK,oCCAnB,OAAOO,yBAAOP,KAAK,qCCAnB,OAAOO,yBAAOP,KAAK,qCCAnB,OAAOO,yBAAOP,KAAK,mCCAnB,OAAOO,yBAAOP,KAAK"}
1
+ {"version":3,"file":"react-validate-component.cjs.production.min.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/vCheckbox/index.tsx","../src/vText/index.tsx","../src/vColor/index.tsx","../src/vDate/index.tsx","../src/vEmail/index.tsx","../src/vRadio/index.tsx","../src/vRange/index.tsx","../src/vURL/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\r\nimport styles from './index.module.css';\r\nimport { VCHECKBOX_PARAMS } from './vCheckbox';\r\n\r\nexport function VCheckbox({\r\n vState = false,\r\n vType = 'bottom',\r\n vClassName = '',\r\n vLabelClassName = '',\r\n vCheckedClassName = '',\r\n vCheckList = [],\r\n vCheckedList = [],\r\n vShowMessage = false,\r\n vMessage = '',\r\n vMessageClass = '',\r\n vIsAnimate = false,\r\n props = {},\r\n}: VCHECKBOX_PARAMS) {\r\n // 체크박스 리스트 생성 함수\r\n function makeCheckList() {\r\n const result: React.JSX.Element[] = [];\r\n vCheckList.forEach((val, i) => {\r\n result.push(\r\n <label\r\n htmlFor={`vCheckbox-${i}`}\r\n className={`${vLabelClassName} ${\r\n vCheckedList[i] ? vCheckedClassName : ''\r\n } ${vState ? styles.invalid : ''}`}\r\n key={i}\r\n >\r\n <input\r\n id={`vCheckbox-${i}`}\r\n type=\"checkbox\"\r\n className={vClassName}\r\n hidden\r\n value={val}\r\n checked={vCheckedList[i]}\r\n {...props}\r\n />\r\n <span>{val}</span>\r\n </label>\r\n );\r\n });\r\n return <div className={styles.checkbox_layout}>{result}</div>;\r\n }\r\n\r\n switch (vType) {\r\n case 'top':\r\n return (\r\n <div className={styles.flex_column}>\r\n {vState && vShowMessage ? (\r\n <p\r\n className={`${vMessageClass} ${\r\n vIsAnimate ? styles.animateMessage : ''\r\n }`}\r\n >\r\n {vMessage}\r\n </p>\r\n ) : null}\r\n {makeCheckList()}\r\n </div>\r\n );\r\n case 'bottom':\r\n return (\r\n <div className={styles.flex_column}>\r\n {makeCheckList()}\r\n {vState && vShowMessage ? (\r\n <p\r\n className={`${vMessageClass} ${\r\n vIsAnimate ? styles.animateMessage : ''\r\n }`}\r\n >\r\n {vMessage}\r\n </p>\r\n ) : null}\r\n </div>\r\n );\r\n default:\r\n return <></>;\r\n }\r\n}\r\n","import React from 'react';\nimport styles from './index.module.css';\nimport { VTEXT_PARAMS } from './vText';\n\n// Text\nexport function VText({\n vState = false,\n vType = 'outer',\n vClassName = '',\n vShowMessage = false,\n vMessage = '',\n vLocateMessage = 'bottom',\n vMessageClass = '',\n vIsAnimate = false,\n props = {},\n}: VTEXT_PARAMS) {\n switch (vType) {\n case 'outer':\n return (\n <div\n className={`${styles.vinput} ${styles[`vinput-${vLocateMessage}`]}`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${\n vIsAnimate ? styles.animateMessage : ''\n }`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'inner':\n return (\n <div className={styles.vinput}>\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.innerMessage} ${\n styles[`innerMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'tooltip':\n return (\n <div\n className={`${styles.vinput} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n }`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.tooltipMessage} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n default:\n return <div></div>;\n }\n}\n","import React from 'react';\r\n\r\nexport function vColor() {\r\n return <input type=\"color\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vDate() {\r\n return <input type=\"date\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vEmail() {\r\n return <input type=\"email\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRadio() {\r\n return <input type=\"radio\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRange() {\r\n return <input type=\"range\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vURL() {\r\n return <input type=\"url\" />;\r\n}\r\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","_ref","vState","_ref$vState","_ref$vType","vType","_ref$vClassName","vClassName","_ref$vLabelClassName","vLabelClassName","_ref$vCheckedClassNam","vCheckedClassName","_ref$vCheckList","vCheckList","_ref$vCheckedList","vCheckedList","_ref$vShowMessage","vShowMessage","_ref$vMessage","vMessage","_ref$vMessageClass","vMessageClass","_ref$vIsAnimate","vIsAnimate","_ref$props","props","makeCheckList","result","forEach","val","i","push","React","htmlFor","className","key","id","hidden","value","checked","_ref$vLocateMessage","vLocateMessage","styles","vinput","defaultValue","_props$defaultValue","invalid","animateMessage","_props$defaultValue2","innerMessage","_props$defaultValue3","tooltipMessage"],"mappings":"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"}
@@ -91,10 +91,72 @@ function VText(_ref) {
91
91
  }
92
92
  }
93
93
 
94
- function VCheckbox() {
95
- return /*#__PURE__*/React.createElement("input", {
96
- type: "checkbox"
97
- });
94
+ var css_248z$1 = ".index-module_invalid__jaxx5 {\r\n border: 2px solid red;\r\n outline: none;\r\n}\r\n.index-module_invalid__jaxx5:focus,\r\n.index-module_invalid__jaxx5:focus-visible,\r\n.index-module_invalid__jaxx5:focus-within {\r\n border: 2px solid red;\r\n}\r\n\r\n.index-module_flex_column__jVY8S {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.index-module_checkbox_layout__CnBGz {\r\n width: 400px;\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 10px;\r\n}\r\n\r\n.index-module_animateMessage__o7xGY {\r\n animation: index-module_fade-in__KDZ5w 1s ease-in-out;\r\n}\r\n\r\n@keyframes index-module_fade-in__KDZ5w {\r\n 0% {\r\n opacity: 0;\r\n }\r\n 100% {\r\n opacity: 1;\r\n }\r\n}\r\n";
95
+ var styles$1 = {"invalid":"index-module_invalid__jaxx5","flex_column":"index-module_flex_column__jVY8S","checkbox_layout":"index-module_checkbox_layout__CnBGz","animateMessage":"index-module_animateMessage__o7xGY","fade-in":"index-module_fade-in__KDZ5w"};
96
+ styleInject(css_248z$1);
97
+
98
+ function VCheckbox(_ref) {
99
+ var _ref$vState = _ref.vState,
100
+ vState = _ref$vState === void 0 ? false : _ref$vState,
101
+ _ref$vType = _ref.vType,
102
+ vType = _ref$vType === void 0 ? 'bottom' : _ref$vType,
103
+ _ref$vClassName = _ref.vClassName,
104
+ vClassName = _ref$vClassName === void 0 ? '' : _ref$vClassName,
105
+ _ref$vLabelClassName = _ref.vLabelClassName,
106
+ vLabelClassName = _ref$vLabelClassName === void 0 ? '' : _ref$vLabelClassName,
107
+ _ref$vCheckedClassNam = _ref.vCheckedClassName,
108
+ vCheckedClassName = _ref$vCheckedClassNam === void 0 ? '' : _ref$vCheckedClassNam,
109
+ _ref$vCheckList = _ref.vCheckList,
110
+ vCheckList = _ref$vCheckList === void 0 ? [] : _ref$vCheckList,
111
+ _ref$vCheckedList = _ref.vCheckedList,
112
+ vCheckedList = _ref$vCheckedList === void 0 ? [] : _ref$vCheckedList,
113
+ _ref$vShowMessage = _ref.vShowMessage,
114
+ vShowMessage = _ref$vShowMessage === void 0 ? false : _ref$vShowMessage,
115
+ _ref$vMessage = _ref.vMessage,
116
+ vMessage = _ref$vMessage === void 0 ? '' : _ref$vMessage,
117
+ _ref$vMessageClass = _ref.vMessageClass,
118
+ vMessageClass = _ref$vMessageClass === void 0 ? '' : _ref$vMessageClass,
119
+ _ref$vIsAnimate = _ref.vIsAnimate,
120
+ vIsAnimate = _ref$vIsAnimate === void 0 ? false : _ref$vIsAnimate,
121
+ _ref$props = _ref.props,
122
+ props = _ref$props === void 0 ? {} : _ref$props;
123
+ // 체크박스 리스트 생성 함수
124
+ function makeCheckList() {
125
+ var result = [];
126
+ vCheckList.forEach(function (val, i) {
127
+ result.push( /*#__PURE__*/React.createElement("label", {
128
+ htmlFor: "vCheckbox-" + i,
129
+ className: vLabelClassName + " " + (vCheckedList[i] ? vCheckedClassName : '') + " " + (vState ? styles$1.invalid : ''),
130
+ key: i
131
+ }, /*#__PURE__*/React.createElement("input", Object.assign({
132
+ id: "vCheckbox-" + i,
133
+ type: "checkbox",
134
+ className: vClassName,
135
+ hidden: true,
136
+ value: val,
137
+ checked: vCheckedList[i]
138
+ }, props)), /*#__PURE__*/React.createElement("span", null, val)));
139
+ });
140
+ return /*#__PURE__*/React.createElement("div", {
141
+ className: styles$1.checkbox_layout
142
+ }, result);
143
+ }
144
+ switch (vType) {
145
+ case 'top':
146
+ return /*#__PURE__*/React.createElement("div", {
147
+ className: styles$1.flex_column
148
+ }, vState && vShowMessage ? ( /*#__PURE__*/React.createElement("p", {
149
+ className: vMessageClass + " " + (vIsAnimate ? styles$1.animateMessage : '')
150
+ }, vMessage)) : null, makeCheckList());
151
+ case 'bottom':
152
+ return /*#__PURE__*/React.createElement("div", {
153
+ className: styles$1.flex_column
154
+ }, makeCheckList(), vState && vShowMessage ? ( /*#__PURE__*/React.createElement("p", {
155
+ className: vMessageClass + " " + (vIsAnimate ? styles$1.animateMessage : '')
156
+ }, vMessage)) : null);
157
+ default:
158
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
159
+ }
98
160
  }
99
161
 
100
162
  function vColor() {
@@ -1 +1 @@
1
- {"version":3,"file":"react-validate-component.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/vText/index.tsx","../src/vCheckbox/index.tsx","../src/vColor/index.tsx","../src/vDate/index.tsx","../src/vEmail/index.tsx","../src/vRadio/index.tsx","../src/vRange/index.tsx","../src/vURL/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport styles from './index.module.css';\nimport { VTEXT_PARAMS } from './vText';\n\n// Text\nexport function VText({\n vState = false,\n vType = 'outer',\n vClassName = '',\n vShowMessage = false,\n vMessage = '',\n vLocateMessage = 'bottom',\n vMessageClass = '',\n vIsAnimate = false,\n props = {},\n}: VTEXT_PARAMS) {\n switch (vType) {\n case 'outer':\n return (\n <div\n className={`${styles.vinput} ${styles[`vinput-${vLocateMessage}`]}`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${\n vIsAnimate ? styles.animateMessage : ''\n }`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'inner':\n return (\n <div className={styles.vinput}>\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.innerMessage} ${\n styles[`innerMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'tooltip':\n return (\n <div\n className={`${styles.vinput} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n }`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.tooltipMessage} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n default:\n return <div></div>;\n }\n}\n","import React from 'react';\r\n\r\nexport function VCheckbox() {\r\n return <input type=\"checkbox\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vColor() {\r\n return <input type=\"color\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vDate() {\r\n return <input type=\"date\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vEmail() {\r\n return <input type=\"email\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRadio() {\r\n return <input type=\"radio\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRange() {\r\n return <input type=\"range\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vURL() {\r\n return <input type=\"url\" />;\r\n}\r\n"],"names":["VText","_ref","vState","_ref$vState","_ref$vType","vType","_ref$vClassName","vClassName","_ref$vShowMessage","vShowMessage","_ref$vMessage","vMessage","_ref$vLocateMessage","vLocateMessage","_ref$vMessageClass","vMessageClass","_ref$vIsAnimate","vIsAnimate","_ref$props","props","React","className","styles","vinput","type","defaultValue","_props$defaultValue","invalid","animateMessage","_props$defaultValue2","innerMessage","_props$defaultValue3","tooltipMessage","VCheckbox","vColor","vDate","vEmail","vRadio","vRange","vURL"],"mappings":"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"}
1
+ {"version":3,"file":"react-validate-component.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../src/vText/index.tsx","../src/vCheckbox/index.tsx","../src/vColor/index.tsx","../src/vDate/index.tsx","../src/vEmail/index.tsx","../src/vRadio/index.tsx","../src/vRange/index.tsx","../src/vURL/index.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import React from 'react';\nimport styles from './index.module.css';\nimport { VTEXT_PARAMS } from './vText';\n\n// Text\nexport function VText({\n vState = false,\n vType = 'outer',\n vClassName = '',\n vShowMessage = false,\n vMessage = '',\n vLocateMessage = 'bottom',\n vMessageClass = '',\n vIsAnimate = false,\n props = {},\n}: VTEXT_PARAMS) {\n switch (vType) {\n case 'outer':\n return (\n <div\n className={`${styles.vinput} ${styles[`vinput-${vLocateMessage}`]}`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${\n vIsAnimate ? styles.animateMessage : ''\n }`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'inner':\n return (\n <div className={styles.vinput}>\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.innerMessage} ${\n styles[`innerMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n case 'tooltip':\n return (\n <div\n className={`${styles.vinput} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n }`}\n >\n <input\n type=\"text\"\n {...props}\n defaultValue={props?.defaultValue ?? ''}\n className={`${props?.className} ${\n vState ? vClassName || styles.invalid : ''\n }`}\n ></input>\n {vState && vShowMessage ? (\n <p\n className={`${vMessageClass} ${styles.tooltipMessage} ${\n styles[`tooltipMessage-${vLocateMessage}`]\n } ${vIsAnimate ? styles.animateMessage : ''}`}\n >\n {vMessage}\n </p>\n ) : null}\n </div>\n );\n default:\n return <div></div>;\n }\n}\n","import React from 'react';\r\nimport styles from './index.module.css';\r\nimport { VCHECKBOX_PARAMS } from './vCheckbox';\r\n\r\nexport function VCheckbox({\r\n vState = false,\r\n vType = 'bottom',\r\n vClassName = '',\r\n vLabelClassName = '',\r\n vCheckedClassName = '',\r\n vCheckList = [],\r\n vCheckedList = [],\r\n vShowMessage = false,\r\n vMessage = '',\r\n vMessageClass = '',\r\n vIsAnimate = false,\r\n props = {},\r\n}: VCHECKBOX_PARAMS) {\r\n // 체크박스 리스트 생성 함수\r\n function makeCheckList() {\r\n const result: React.JSX.Element[] = [];\r\n vCheckList.forEach((val, i) => {\r\n result.push(\r\n <label\r\n htmlFor={`vCheckbox-${i}`}\r\n className={`${vLabelClassName} ${\r\n vCheckedList[i] ? vCheckedClassName : ''\r\n } ${vState ? styles.invalid : ''}`}\r\n key={i}\r\n >\r\n <input\r\n id={`vCheckbox-${i}`}\r\n type=\"checkbox\"\r\n className={vClassName}\r\n hidden\r\n value={val}\r\n checked={vCheckedList[i]}\r\n {...props}\r\n />\r\n <span>{val}</span>\r\n </label>\r\n );\r\n });\r\n return <div className={styles.checkbox_layout}>{result}</div>;\r\n }\r\n\r\n switch (vType) {\r\n case 'top':\r\n return (\r\n <div className={styles.flex_column}>\r\n {vState && vShowMessage ? (\r\n <p\r\n className={`${vMessageClass} ${\r\n vIsAnimate ? styles.animateMessage : ''\r\n }`}\r\n >\r\n {vMessage}\r\n </p>\r\n ) : null}\r\n {makeCheckList()}\r\n </div>\r\n );\r\n case 'bottom':\r\n return (\r\n <div className={styles.flex_column}>\r\n {makeCheckList()}\r\n {vState && vShowMessage ? (\r\n <p\r\n className={`${vMessageClass} ${\r\n vIsAnimate ? styles.animateMessage : ''\r\n }`}\r\n >\r\n {vMessage}\r\n </p>\r\n ) : null}\r\n </div>\r\n );\r\n default:\r\n return <></>;\r\n }\r\n}\r\n","import React from 'react';\r\n\r\nexport function vColor() {\r\n return <input type=\"color\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vDate() {\r\n return <input type=\"date\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vEmail() {\r\n return <input type=\"email\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRadio() {\r\n return <input type=\"radio\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vRange() {\r\n return <input type=\"range\" />;\r\n}\r\n","import React from 'react';\r\n\r\nexport function vURL() {\r\n return <input type=\"url\" />;\r\n}\r\n"],"names":["VText","_ref","vState","_ref$vState","_ref$vType","vType","_ref$vClassName","vClassName","_ref$vShowMessage","vShowMessage","_ref$vMessage","vMessage","_ref$vLocateMessage","vLocateMessage","_ref$vMessageClass","vMessageClass","_ref$vIsAnimate","vIsAnimate","_ref$props","props","React","className","styles","vinput","type","defaultValue","_props$defaultValue","invalid","animateMessage","_props$defaultValue2","innerMessage","_props$defaultValue3","tooltipMessage","VCheckbox","_ref$vLabelClassName","vLabelClassName","_ref$vCheckedClassNam","vCheckedClassName","_ref$vCheckList","vCheckList","_ref$vCheckedList","vCheckedList","makeCheckList","result","forEach","val","i","push","htmlFor","key","id","hidden","value","checked","checkbox_layout","flex_column","vColor","vDate","vEmail","vRadio","vRange","vURL"],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  import React from 'react';
2
- export declare function VCheckbox(): React.JSX.Element;
2
+ import { VCHECKBOX_PARAMS } from './vCheckbox';
3
+ export declare function VCheckbox({ vState, vType, vClassName, vLabelClassName, vCheckedClassName, vCheckList, vCheckedList, vShowMessage, vMessage, vMessageClass, vIsAnimate, props, }: VCHECKBOX_PARAMS): React.JSX.Element;
@@ -0,0 +1,16 @@
1
+ import propsType from '../types/vprops';
2
+ export interface VCHECKBOX_PARAMS {
3
+ readonly vState: boolean;
4
+ readonly vType: // 유효성 메시지를 출력할 타입
5
+ 'top' | 'bottom';
6
+ vClassName?: string;
7
+ vLabelClassName?: string;
8
+ vCheckedClassName?: string;
9
+ vCheckList: string[];
10
+ vCheckedList: boolean[];
11
+ readonly vShowMessage: boolean;
12
+ vMessage?: string;
13
+ vMessageClass?: string;
14
+ vIsAnimate?: boolean;
15
+ props?: propsType;
16
+ }
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.1.4",
2
+ "version": "0.2.0",
3
3
  "license": "MIT",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
@@ -0,0 +1,34 @@
1
+ .invalid {
2
+ border: 2px solid red;
3
+ outline: none;
4
+ }
5
+ .invalid:focus,
6
+ .invalid:focus-visible,
7
+ .invalid:focus-within {
8
+ border: 2px solid red;
9
+ }
10
+
11
+ .flex_column {
12
+ display: flex;
13
+ flex-direction: column;
14
+ }
15
+
16
+ .checkbox_layout {
17
+ width: 400px;
18
+ display: flex;
19
+ flex-wrap: wrap;
20
+ gap: 10px;
21
+ }
22
+
23
+ .animateMessage {
24
+ animation: fade-in 1s ease-in-out;
25
+ }
26
+
27
+ @keyframes fade-in {
28
+ 0% {
29
+ opacity: 0;
30
+ }
31
+ 100% {
32
+ opacity: 1;
33
+ }
34
+ }
@@ -1,5 +1,81 @@
1
1
  import React from 'react';
2
+ import styles from './index.module.css';
3
+ import { VCHECKBOX_PARAMS } from './vCheckbox';
2
4
 
3
- export function VCheckbox() {
4
- return <input type="checkbox" />;
5
+ export function VCheckbox({
6
+ vState = false,
7
+ vType = 'bottom',
8
+ vClassName = '',
9
+ vLabelClassName = '',
10
+ vCheckedClassName = '',
11
+ vCheckList = [],
12
+ vCheckedList = [],
13
+ vShowMessage = false,
14
+ vMessage = '',
15
+ vMessageClass = '',
16
+ vIsAnimate = false,
17
+ props = {},
18
+ }: VCHECKBOX_PARAMS) {
19
+ // 체크박스 리스트 생성 함수
20
+ function makeCheckList() {
21
+ const result: React.JSX.Element[] = [];
22
+ vCheckList.forEach((val, i) => {
23
+ result.push(
24
+ <label
25
+ htmlFor={`vCheckbox-${i}`}
26
+ className={`${vLabelClassName} ${
27
+ vCheckedList[i] ? vCheckedClassName : ''
28
+ } ${vState ? styles.invalid : ''}`}
29
+ key={i}
30
+ >
31
+ <input
32
+ id={`vCheckbox-${i}`}
33
+ type="checkbox"
34
+ className={vClassName}
35
+ hidden
36
+ value={val}
37
+ checked={vCheckedList[i]}
38
+ {...props}
39
+ />
40
+ <span>{val}</span>
41
+ </label>
42
+ );
43
+ });
44
+ return <div className={styles.checkbox_layout}>{result}</div>;
45
+ }
46
+
47
+ switch (vType) {
48
+ case 'top':
49
+ return (
50
+ <div className={styles.flex_column}>
51
+ {vState && vShowMessage ? (
52
+ <p
53
+ className={`${vMessageClass} ${
54
+ vIsAnimate ? styles.animateMessage : ''
55
+ }`}
56
+ >
57
+ {vMessage}
58
+ </p>
59
+ ) : null}
60
+ {makeCheckList()}
61
+ </div>
62
+ );
63
+ case 'bottom':
64
+ return (
65
+ <div className={styles.flex_column}>
66
+ {makeCheckList()}
67
+ {vState && vShowMessage ? (
68
+ <p
69
+ className={`${vMessageClass} ${
70
+ vIsAnimate ? styles.animateMessage : ''
71
+ }`}
72
+ >
73
+ {vMessage}
74
+ </p>
75
+ ) : null}
76
+ </div>
77
+ );
78
+ default:
79
+ return <></>;
80
+ }
5
81
  }
@@ -0,0 +1,18 @@
1
+ import propsType from '../types/vprops';
2
+
3
+ // VCheclbox 파라미터
4
+ export interface VCHECKBOX_PARAMS {
5
+ readonly vState: boolean; // 유효성 상태 값
6
+ readonly vType: // 유효성 메시지를 출력할 타입
7
+ 'top' | 'bottom';
8
+ vClassName?: string; // 유효성 입힐 class 명
9
+ vLabelClassName?: string; // label class 명
10
+ vCheckedClassName?: string; // checked 되었을 때 class 명
11
+ vCheckList: string[]; // checkbox 리스트
12
+ vCheckedList: boolean[]; // 현재 체크되어있는 리스트 (vCheckList와 길이가 같아야하며 같은 인덱스마자 매핑)
13
+ readonly vShowMessage: boolean; // 유효성 메시지 출력할지
14
+ vMessage?: string; // 유효성 메시지
15
+ vMessageClass?: string; // 유효성 메시지에 입힐 class 명
16
+ vIsAnimate?: boolean; // 유효성 메시지 출력 시 애니메이션 적용할지
17
+ props?: propsType; // 기타 옵션
18
+ }