funda-ui 1.0.272

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.
Files changed (246) hide show
  1. package/BackToTop/index.css +34 -0
  2. package/BackToTop/index.d.ts +11 -0
  3. package/BackToTop/index.js +458 -0
  4. package/CascadingSelect/index.css +159 -0
  5. package/CascadingSelect/index.d.ts +56 -0
  6. package/CascadingSelect/index.js +958 -0
  7. package/CascadingSelectE2E/index.css +159 -0
  8. package/CascadingSelectE2E/index.d.ts +60 -0
  9. package/CascadingSelectE2E/index.js +1126 -0
  10. package/Checkbox/index.d.ts +30 -0
  11. package/Checkbox/index.js +226 -0
  12. package/ColorPicker/index.css +38 -0
  13. package/ColorPicker/index.d.ts +27 -0
  14. package/ColorPicker/index.js +246 -0
  15. package/DigitalClock/index.d.ts +7 -0
  16. package/DigitalClock/index.js +208 -0
  17. package/DropdownMenu/index.css +127 -0
  18. package/DropdownMenu/index.d.ts +37 -0
  19. package/DropdownMenu/index.js +237 -0
  20. package/DynamicFields/index.d.ts +26 -0
  21. package/DynamicFields/index.js +412 -0
  22. package/File/index.d.ts +36 -0
  23. package/File/index.js +473 -0
  24. package/Input/index.d.ts +42 -0
  25. package/Input/index.js +286 -0
  26. package/LiveSearch/index.d.ts +37 -0
  27. package/LiveSearch/index.js +1195 -0
  28. package/ModalDialog/index.d.ts +60 -0
  29. package/ModalDialog/index.js +725 -0
  30. package/ModeSwitch/index.d.ts +17 -0
  31. package/ModeSwitch/index.js +202 -0
  32. package/MultiFuncSelect/index.css +178 -0
  33. package/MultiFuncSelect/index.d.ts +67 -0
  34. package/MultiFuncSelect/index.js +1826 -0
  35. package/MultilevelDropdownMenu/index.css +35 -0
  36. package/MultilevelDropdownMenu/index.d.ts +25 -0
  37. package/MultilevelDropdownMenu/index.js +464 -0
  38. package/Pagination/index.d.ts +49 -0
  39. package/Pagination/index.js +341 -0
  40. package/README.md +108 -0
  41. package/Radio/index.d.ts +31 -0
  42. package/Radio/index.js +246 -0
  43. package/RangeSlider/index.css +149 -0
  44. package/RangeSlider/index.d.ts +21 -0
  45. package/RangeSlider/index.js +730 -0
  46. package/ScrollReveal/index.css +23 -0
  47. package/ScrollReveal/index.d.ts +21 -0
  48. package/ScrollReveal/index.js +216 -0
  49. package/Scrollbar/index.css +168 -0
  50. package/Scrollbar/index.d.ts +15 -0
  51. package/Scrollbar/index.js +605 -0
  52. package/SearchBar/index.d.ts +32 -0
  53. package/SearchBar/index.js +246 -0
  54. package/Select/index.d.ts +34 -0
  55. package/Select/index.js +331 -0
  56. package/ShowMoreLess/index.css +23 -0
  57. package/ShowMoreLess/index.d.ts +30 -0
  58. package/ShowMoreLess/index.js +202 -0
  59. package/Switch/index.d.ts +29 -0
  60. package/Switch/index.js +211 -0
  61. package/Table/index.css +533 -0
  62. package/Table/index.d.ts +25 -0
  63. package/Table/index.js +2113 -0
  64. package/Tabs/index.d.ts +3 -0
  65. package/Tabs/index.js +323 -0
  66. package/TagInput/index.css +90 -0
  67. package/TagInput/index.d.ts +28 -0
  68. package/TagInput/index.js +370 -0
  69. package/Textarea/index.d.ts +30 -0
  70. package/Textarea/index.js +242 -0
  71. package/Toast/index.css +95 -0
  72. package/Toast/index.d.ts +35 -0
  73. package/Toast/index.js +340 -0
  74. package/Tooltip/index.css +240 -0
  75. package/Tooltip/index.d.ts +19 -0
  76. package/Tooltip/index.js +200 -0
  77. package/Tree/index.css +225 -0
  78. package/Tree/index.d.ts +37 -0
  79. package/Tree/index.js +1406 -0
  80. package/all.d.ts +33 -0
  81. package/all.js +35 -0
  82. package/lib/cjs/BackToTop/index.d.ts +11 -0
  83. package/lib/cjs/BackToTop/index.js +458 -0
  84. package/lib/cjs/CascadingSelect/index.d.ts +56 -0
  85. package/lib/cjs/CascadingSelect/index.js +958 -0
  86. package/lib/cjs/CascadingSelectE2E/index.d.ts +60 -0
  87. package/lib/cjs/CascadingSelectE2E/index.js +1126 -0
  88. package/lib/cjs/Checkbox/index.d.ts +30 -0
  89. package/lib/cjs/Checkbox/index.js +226 -0
  90. package/lib/cjs/ColorPicker/index.d.ts +27 -0
  91. package/lib/cjs/ColorPicker/index.js +246 -0
  92. package/lib/cjs/DigitalClock/index.d.ts +7 -0
  93. package/lib/cjs/DigitalClock/index.js +208 -0
  94. package/lib/cjs/DropdownMenu/index.d.ts +37 -0
  95. package/lib/cjs/DropdownMenu/index.js +237 -0
  96. package/lib/cjs/DynamicFields/index.d.ts +26 -0
  97. package/lib/cjs/DynamicFields/index.js +412 -0
  98. package/lib/cjs/File/index.d.ts +36 -0
  99. package/lib/cjs/File/index.js +473 -0
  100. package/lib/cjs/Input/index.d.ts +42 -0
  101. package/lib/cjs/Input/index.js +286 -0
  102. package/lib/cjs/LiveSearch/index.d.ts +37 -0
  103. package/lib/cjs/LiveSearch/index.js +1195 -0
  104. package/lib/cjs/ModalDialog/index.d.ts +60 -0
  105. package/lib/cjs/ModalDialog/index.js +725 -0
  106. package/lib/cjs/ModeSwitch/index.d.ts +17 -0
  107. package/lib/cjs/ModeSwitch/index.js +202 -0
  108. package/lib/cjs/MultiFuncSelect/index.d.ts +67 -0
  109. package/lib/cjs/MultiFuncSelect/index.js +1826 -0
  110. package/lib/cjs/MultilevelDropdownMenu/index.d.ts +25 -0
  111. package/lib/cjs/MultilevelDropdownMenu/index.js +464 -0
  112. package/lib/cjs/Pagination/index.d.ts +49 -0
  113. package/lib/cjs/Pagination/index.js +341 -0
  114. package/lib/cjs/Radio/index.d.ts +31 -0
  115. package/lib/cjs/Radio/index.js +246 -0
  116. package/lib/cjs/RangeSlider/index.d.ts +21 -0
  117. package/lib/cjs/RangeSlider/index.js +730 -0
  118. package/lib/cjs/ScrollReveal/index.d.ts +21 -0
  119. package/lib/cjs/ScrollReveal/index.js +216 -0
  120. package/lib/cjs/Scrollbar/index.d.ts +15 -0
  121. package/lib/cjs/Scrollbar/index.js +605 -0
  122. package/lib/cjs/SearchBar/index.d.ts +32 -0
  123. package/lib/cjs/SearchBar/index.js +246 -0
  124. package/lib/cjs/Select/index.d.ts +34 -0
  125. package/lib/cjs/Select/index.js +331 -0
  126. package/lib/cjs/ShowMoreLess/index.d.ts +30 -0
  127. package/lib/cjs/ShowMoreLess/index.js +202 -0
  128. package/lib/cjs/Switch/index.d.ts +29 -0
  129. package/lib/cjs/Switch/index.js +211 -0
  130. package/lib/cjs/Table/index.d.ts +25 -0
  131. package/lib/cjs/Table/index.js +2113 -0
  132. package/lib/cjs/Tabs/index.d.ts +3 -0
  133. package/lib/cjs/Tabs/index.js +323 -0
  134. package/lib/cjs/TagInput/index.d.ts +28 -0
  135. package/lib/cjs/TagInput/index.js +370 -0
  136. package/lib/cjs/Textarea/index.d.ts +30 -0
  137. package/lib/cjs/Textarea/index.js +242 -0
  138. package/lib/cjs/Toast/index.d.ts +35 -0
  139. package/lib/cjs/Toast/index.js +340 -0
  140. package/lib/cjs/Tooltip/index.d.ts +19 -0
  141. package/lib/cjs/Tooltip/index.js +200 -0
  142. package/lib/cjs/Tree/index.d.ts +37 -0
  143. package/lib/cjs/Tree/index.js +1406 -0
  144. package/lib/cjs/index.d.ts +33 -0
  145. package/lib/cjs/index.js +35 -0
  146. package/lib/css/BackToTop/index.css +34 -0
  147. package/lib/css/CascadingSelect/index.css +159 -0
  148. package/lib/css/CascadingSelectE2E/index.css +159 -0
  149. package/lib/css/ColorPicker/index.css +38 -0
  150. package/lib/css/DropdownMenu/index.css +127 -0
  151. package/lib/css/MultiFuncSelect/index.css +178 -0
  152. package/lib/css/MultilevelDropdownMenu/index.css +35 -0
  153. package/lib/css/RangeSlider/index.css +149 -0
  154. package/lib/css/ScrollReveal/index.css +23 -0
  155. package/lib/css/Scrollbar/index.css +168 -0
  156. package/lib/css/ShowMoreLess/index.css +23 -0
  157. package/lib/css/Table/index.css +533 -0
  158. package/lib/css/TagInput/index.css +90 -0
  159. package/lib/css/Toast/index.css +95 -0
  160. package/lib/css/Tooltip/index.css +240 -0
  161. package/lib/css/Tree/index.css +225 -0
  162. package/lib/esm/BackToTop/index.scss +47 -0
  163. package/lib/esm/BackToTop/index.tsx +182 -0
  164. package/lib/esm/BackToTop/utils/easing.js +200 -0
  165. package/lib/esm/BackToTop/utils/performance.js +52 -0
  166. package/lib/esm/CascadingSelect/Group.tsx +39 -0
  167. package/lib/esm/CascadingSelect/index.scss +214 -0
  168. package/lib/esm/CascadingSelect/index.tsx +922 -0
  169. package/lib/esm/CascadingSelect/utils/performance.js +52 -0
  170. package/lib/esm/CascadingSelectE2E/Group.tsx +39 -0
  171. package/lib/esm/CascadingSelectE2E/index.scss +214 -0
  172. package/lib/esm/CascadingSelectE2E/index.tsx +1091 -0
  173. package/lib/esm/CascadingSelectE2E/utils/performance.js +52 -0
  174. package/lib/esm/Checkbox/index.tsx +160 -0
  175. package/lib/esm/ColorPicker/index.scss +48 -0
  176. package/lib/esm/ColorPicker/index.tsx +187 -0
  177. package/lib/esm/DigitalClock/index.tsx +72 -0
  178. package/lib/esm/DigitalClock/utils/useInterval.js +43 -0
  179. package/lib/esm/DropdownMenu/Option.tsx +27 -0
  180. package/lib/esm/DropdownMenu/index.scss +180 -0
  181. package/lib/esm/DropdownMenu/index.tsx +148 -0
  182. package/lib/esm/DynamicFields/index.tsx +386 -0
  183. package/lib/esm/File/index.tsx +302 -0
  184. package/lib/esm/Input/index.tsx +233 -0
  185. package/lib/esm/LiveSearch/index.tsx +582 -0
  186. package/lib/esm/LiveSearch/utils/performance.js +52 -0
  187. package/lib/esm/LiveSearch/utils/useThrottle.js +36 -0
  188. package/lib/esm/ModalDialog/index.tsx +479 -0
  189. package/lib/esm/ModalDialog/plugins/BSL/bodyScrollLock.es6.js +262 -0
  190. package/lib/esm/ModalDialog/plugins/BSL/index.ts +2 -0
  191. package/lib/esm/ModeSwitch/index.tsx +82 -0
  192. package/lib/esm/MultiFuncSelect/index.scss +269 -0
  193. package/lib/esm/MultiFuncSelect/index.tsx +1597 -0
  194. package/lib/esm/MultiFuncSelect/utils/performance.js +52 -0
  195. package/lib/esm/MultiFuncSelect/utils/tree.js +103 -0
  196. package/lib/esm/MultiFuncSelect/utils/useThrottle.js +36 -0
  197. package/lib/esm/MultilevelDropdownMenu/MenuList.tsx +230 -0
  198. package/lib/esm/MultilevelDropdownMenu/index.scss +75 -0
  199. package/lib/esm/MultilevelDropdownMenu/index.tsx +71 -0
  200. package/lib/esm/MultilevelDropdownMenu/utils/dom.js +81 -0
  201. package/lib/esm/Pagination/index.tsx +230 -0
  202. package/lib/esm/Pagination/pagination-navigators.tsx +60 -0
  203. package/lib/esm/Radio/index.tsx +201 -0
  204. package/lib/esm/RangeSlider/index.scss +184 -0
  205. package/lib/esm/RangeSlider/index.tsx +223 -0
  206. package/lib/esm/ScrollReveal/index.scss +27 -0
  207. package/lib/esm/ScrollReveal/index.tsx +146 -0
  208. package/lib/esm/Scrollbar/index.scss +217 -0
  209. package/lib/esm/Scrollbar/index.tsx +497 -0
  210. package/lib/esm/Scrollbar/utils/performance.js +52 -0
  211. package/lib/esm/SearchBar/index.tsx +181 -0
  212. package/lib/esm/Select/index.tsx +276 -0
  213. package/lib/esm/ShowMoreLess/index.scss +27 -0
  214. package/lib/esm/ShowMoreLess/index.tsx +144 -0
  215. package/lib/esm/Switch/index.tsx +143 -0
  216. package/lib/esm/Table/TableColgroup.tsx +29 -0
  217. package/lib/esm/Table/TableField.tsx +40 -0
  218. package/lib/esm/Table/TableFieldRow.tsx +212 -0
  219. package/lib/esm/Table/TableHeaders.tsx +146 -0
  220. package/lib/esm/Table/TableRow.tsx +127 -0
  221. package/lib/esm/Table/TableSummaries.tsx +36 -0
  222. package/lib/esm/Table/index.scss +364 -0
  223. package/lib/esm/Table/index.tsx +576 -0
  224. package/lib/esm/Table/table-utils.ts +65 -0
  225. package/lib/esm/Table/utils/dom.js +81 -0
  226. package/lib/esm/Table/utils/performance.js +52 -0
  227. package/lib/esm/Tabs/TabList.tsx +42 -0
  228. package/lib/esm/Tabs/TabPanel.tsx +34 -0
  229. package/lib/esm/Tabs/Tabs.tsx +232 -0
  230. package/lib/esm/Tabs/index.tsx +3 -0
  231. package/lib/esm/TagInput/index.scss +125 -0
  232. package/lib/esm/TagInput/index.tsx +314 -0
  233. package/lib/esm/Textarea/index.tsx +178 -0
  234. package/lib/esm/Toast/Item.tsx +75 -0
  235. package/lib/esm/Toast/index.scss +120 -0
  236. package/lib/esm/Toast/index.tsx +249 -0
  237. package/lib/esm/Tooltip/index.scss +327 -0
  238. package/lib/esm/Tooltip/index.tsx +142 -0
  239. package/lib/esm/Tree/TreeList.tsx +503 -0
  240. package/lib/esm/Tree/index.scss +375 -0
  241. package/lib/esm/Tree/index.tsx +301 -0
  242. package/lib/esm/Tree/init-height.tsx +27 -0
  243. package/lib/esm/Tree/utils/convert-tree.js +29 -0
  244. package/lib/esm/Tree/utils/dom.js +81 -0
  245. package/lib/esm/index.js +31 -0
  246. package/package.json +40 -0
package/Radio/index.js ADDED
@@ -0,0 +1,246 @@
1
+ (function webpackUniversalModuleDefinition(root, factory) {
2
+ if(typeof exports === 'object' && typeof module === 'object')
3
+ module.exports = factory(require("react"));
4
+ else if(typeof define === 'function' && define.amd)
5
+ define(["react"], factory);
6
+ else if(typeof exports === 'object')
7
+ exports["RPB"] = factory(require("react"));
8
+ else
9
+ root["RPB"] = factory(root["React"]);
10
+ })(this, (__WEBPACK_EXTERNAL_MODULE__787__) => {
11
+ return /******/ (() => { // webpackBootstrap
12
+ /******/ "use strict";
13
+ /******/ var __webpack_modules__ = ({
14
+
15
+ /***/ 787:
16
+ /***/ ((module) => {
17
+
18
+ module.exports = __WEBPACK_EXTERNAL_MODULE__787__;
19
+
20
+ /***/ })
21
+
22
+ /******/ });
23
+ /************************************************************************/
24
+ /******/ // The module cache
25
+ /******/ var __webpack_module_cache__ = {};
26
+ /******/
27
+ /******/ // The require function
28
+ /******/ function __webpack_require__(moduleId) {
29
+ /******/ // Check if module is in cache
30
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
31
+ /******/ if (cachedModule !== undefined) {
32
+ /******/ return cachedModule.exports;
33
+ /******/ }
34
+ /******/ // Create a new module (and put it into the cache)
35
+ /******/ var module = __webpack_module_cache__[moduleId] = {
36
+ /******/ // no module.id needed
37
+ /******/ // no module.loaded needed
38
+ /******/ exports: {}
39
+ /******/ };
40
+ /******/
41
+ /******/ // Execute the module function
42
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
43
+ /******/
44
+ /******/ // Return the exports of the module
45
+ /******/ return module.exports;
46
+ /******/ }
47
+ /******/
48
+ /************************************************************************/
49
+ /******/ /* webpack/runtime/compat get default export */
50
+ /******/ (() => {
51
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
52
+ /******/ __webpack_require__.n = (module) => {
53
+ /******/ var getter = module && module.__esModule ?
54
+ /******/ () => (module['default']) :
55
+ /******/ () => (module);
56
+ /******/ __webpack_require__.d(getter, { a: getter });
57
+ /******/ return getter;
58
+ /******/ };
59
+ /******/ })();
60
+ /******/
61
+ /******/ /* webpack/runtime/define property getters */
62
+ /******/ (() => {
63
+ /******/ // define getter functions for harmony exports
64
+ /******/ __webpack_require__.d = (exports, definition) => {
65
+ /******/ for(var key in definition) {
66
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
67
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
68
+ /******/ }
69
+ /******/ }
70
+ /******/ };
71
+ /******/ })();
72
+ /******/
73
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
74
+ /******/ (() => {
75
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
76
+ /******/ })();
77
+ /******/
78
+ /******/ /* webpack/runtime/make namespace object */
79
+ /******/ (() => {
80
+ /******/ // define __esModule on exports
81
+ /******/ __webpack_require__.r = (exports) => {
82
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
83
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
84
+ /******/ }
85
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
86
+ /******/ };
87
+ /******/ })();
88
+ /******/
89
+ /************************************************************************/
90
+ var __webpack_exports__ = {};
91
+ // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
92
+ (() => {
93
+ __webpack_require__.r(__webpack_exports__);
94
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
95
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
96
+ /* harmony export */ });
97
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(787);
98
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
99
+ var _excluded = ["wrapperClassName", "disabled", "required", "value", "label", "name", "id", "options", "inline", "style", "tabIndex", "onClick", "onChange", "onBlur", "onFocus"];
100
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
101
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
102
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
103
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
104
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
105
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
106
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
107
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
108
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
109
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
110
+
111
+ var Radio = function Radio(props) {
112
+ var wrapperClassName = props.wrapperClassName,
113
+ disabled = props.disabled,
114
+ required = props.required,
115
+ value = props.value,
116
+ label = props.label,
117
+ name = props.name,
118
+ id = props.id,
119
+ options = props.options,
120
+ inline = props.inline,
121
+ style = props.style,
122
+ tabIndex = props.tabIndex,
123
+ onClick = props.onClick,
124
+ onChange = props.onChange,
125
+ onBlur = props.onBlur,
126
+ onFocus = props.onFocus,
127
+ attributes = _objectWithoutProperties(props, _excluded);
128
+ var uniqueID = (0,react__WEBPACK_IMPORTED_MODULE_0__.useId)();
129
+ var idRes = id || uniqueID;
130
+ var rootRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
131
+ var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
132
+ _useState2 = _slicedToArray(_useState, 2),
133
+ val = _useState2[0],
134
+ setVal = _useState2[1];
135
+
136
+ // Determine whether it is in JSON format
137
+ function isJSON(str) {
138
+ if (typeof str === 'string' && str.length > 0) {
139
+ if (str.replace(/\"\"/g, '').replace(/\,/g, '') == '[{}]') {
140
+ return false;
141
+ } else {
142
+ if (/^[\],:{}\s]*$/.test(str.replace(/\\["\\\/bfnrtu]/g, '@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']').replace(/(?:^|:|,)(?:\s*\[)+/g, ''))) {
143
+ return true;
144
+ } else {
145
+ return false;
146
+ }
147
+ }
148
+ } else {
149
+ if (_typeof(str) === 'object' && Object.prototype.toString.call(str) === '[object Object]' && !str.length) {
150
+ return true;
151
+ } else {
152
+ return false;
153
+ }
154
+ }
155
+ }
156
+ function handleFocus(event) {
157
+ event.target.parentElement.classList.add('focus');
158
+
159
+ //
160
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(event);
161
+ }
162
+ function handleChange(event) {
163
+ var _val = event.target.value;
164
+ setVal(_val);
165
+
166
+ //----
167
+ //remove focus style
168
+ [].slice.call(rootRef.current.querySelectorAll('.form-check-input')).forEach(function (el) {
169
+ var _el$parentElement;
170
+ (_el$parentElement = el.parentElement) === null || _el$parentElement === void 0 ? void 0 : _el$parentElement.classList.remove('focus');
171
+ });
172
+
173
+ //
174
+ if (typeof onChange === 'function') {
175
+ onChange(event, _val);
176
+ }
177
+ if (typeof onClick === 'function') {
178
+ onClick(event, _val);
179
+ }
180
+ }
181
+ function handleBlur(event) {
182
+ //----
183
+ //remove focus style
184
+ event.target.parentElement.classList.remove('focus');
185
+
186
+ //
187
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(event);
188
+ }
189
+
190
+ // Get all options from option prop
191
+ var selectOptions = isJSON(options) ? JSON.parse(options) : null;
192
+ var optionKeys = selectOptions === null ? [] : Object.keys(selectOptions);
193
+ var optionValues = selectOptions === null ? [] : Object.values(selectOptions).map(function (item) {
194
+ return item.toString();
195
+ });
196
+ var radioOptionsList = optionKeys.map(function (radioOption, index) {
197
+ var requiredVal = index === 0 ? required || null : null;
198
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
199
+ key: index,
200
+ className: inline ? "form-check form-check-inline" : "form-check"
201
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", _extends({
202
+ tabIndex: tabIndex || 0,
203
+ type: "radio",
204
+ className: "form-check-input",
205
+ id: "field-".concat(uniqueID, "-").concat(index),
206
+ name: name,
207
+ value: optionValues[index],
208
+ required: requiredVal,
209
+ disabled: disabled || null,
210
+ onChange: handleChange,
211
+ onClick: typeof onClick === 'function' ? handleChange : function () {
212
+ return void 0;
213
+ },
214
+ onFocus: handleFocus,
215
+ onBlur: handleBlur,
216
+ checked: val == optionValues[index] // component status will not change if defaultChecked is used
217
+ ,
218
+ style: style
219
+ }, attributes)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
220
+ className: "form-check-label",
221
+ htmlFor: "field-".concat(uniqueID, "-").concat(index),
222
+ dangerouslySetInnerHTML: {
223
+ __html: radioOption
224
+ }
225
+ }));
226
+ });
227
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
228
+ setVal(value);
229
+ }, [value, options]);
230
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
231
+ className: wrapperClassName || wrapperClassName === '' ? wrapperClassName : "mb-3 position-relative",
232
+ ref: rootRef
233
+ }, label ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", {
234
+ htmlFor: idRes,
235
+ className: "form-label"
236
+ }, label)) : null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
237
+ id: idRes
238
+ }, radioOptionsList)));
239
+ };
240
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Radio);
241
+ })();
242
+
243
+ /******/ return __webpack_exports__;
244
+ /******/ })()
245
+ ;
246
+ });
@@ -0,0 +1,149 @@
1
+ /* ======================================================
2
+ <!-- Range Slider -->
3
+ /* ====================================================== */
4
+ .range-slider__wrapper {
5
+ --range-slider-grab: #0b5ed7;
6
+ --range-slider-active-grab-box-shadow: 0 0 0 0.25rem rgba(13,110,253,.25);
7
+ --range-slider-active-grab-border-color: #86b7fe;
8
+ --range-slider-rail: #e9ecef;
9
+ --range-slider-inner-rail: #0d6efd;
10
+ }
11
+ .range-slider__wrapper > div:not(.range-slider__control-wrapper) {
12
+ width: 49% !important;
13
+ display: inline-block !important;
14
+ margin-left: 0 !important;
15
+ margin-right: 0 !important;
16
+ margin-block-start: 0 !important;
17
+ margin-block-end: 0 !important;
18
+ padding-left: 0 !important;
19
+ padding-right: 0 !important;
20
+ padding-block-start: 0 !important;
21
+ padding-block-end: 0 !important;
22
+ opacity: 0;
23
+ pointer-events: none;
24
+ }
25
+ .range-slider__wrapper .range-slider__control-wrapper {
26
+ width: calc(100% - 16px);
27
+ }
28
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input {
29
+ width: calc(100% + 16px);
30
+ margin: 0 calc(16px / -2);
31
+ position: absolute;
32
+ height: 16px;
33
+ }
34
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range] {
35
+ position: absolute;
36
+ width: 100%;
37
+ pointer-events: none;
38
+ appearance: none;
39
+ height: 100%;
40
+ opacity: 0;
41
+ z-index: 3;
42
+ padding: 0;
43
+ }
44
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]:disabled {
45
+ display: none;
46
+ }
47
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-ms-track {
48
+ appearance: none;
49
+ background: transparent;
50
+ border: transparent;
51
+ }
52
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-moz-range-track {
53
+ appearance: none;
54
+ background: transparent;
55
+ border: transparent;
56
+ }
57
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]:focus::-webkit-slider-runnable-track {
58
+ appearance: none;
59
+ background: transparent;
60
+ border: transparent;
61
+ }
62
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-ms-thumb {
63
+ appearance: none;
64
+ pointer-events: all;
65
+ width: 16px;
66
+ height: 16px;
67
+ border-radius: 0px;
68
+ border: 0 none;
69
+ cursor: grab;
70
+ }
71
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-ms-thumb:active {
72
+ cursor: grabbing;
73
+ }
74
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-moz-range-thumb {
75
+ appearance: none;
76
+ pointer-events: all;
77
+ width: 16px;
78
+ height: 16px;
79
+ border-radius: 0px;
80
+ border: 0 none;
81
+ cursor: grab;
82
+ }
83
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-moz-range-thumb:active {
84
+ cursor: grabbing;
85
+ }
86
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-webkit-slider-thumb {
87
+ appearance: none;
88
+ pointer-events: all;
89
+ width: 16px;
90
+ height: 16px;
91
+ border-radius: 0px;
92
+ border: 0 none;
93
+ cursor: grab;
94
+ }
95
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input [type=range]::-webkit-slider-thumb:active {
96
+ cursor: grabbing;
97
+ }
98
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder {
99
+ width: 100%;
100
+ position: absolute;
101
+ height: 16px;
102
+ }
103
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-grab {
104
+ width: 16px;
105
+ height: 16px;
106
+ border-radius: 50%;
107
+ position: absolute;
108
+ background: var(--range-slider-grab);
109
+ top: 50%;
110
+ margin-left: calc(16px / -2);
111
+ transform: translate3d(0, -50%, 0);
112
+ z-index: 2;
113
+ transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
114
+ }
115
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-grab.active {
116
+ box-shadow: var(--range-slider-active-grab-box-shadow);
117
+ border-color: var(--range-slider-active-grab-border-color);
118
+ }
119
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-grab.inactive {
120
+ display: none;
121
+ }
122
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-rail {
123
+ position: absolute;
124
+ width: 100%;
125
+ top: 50%;
126
+ transform: translateY(-50%);
127
+ height: 6px;
128
+ border-radius: 3px;
129
+ background: var(--range-slider-rail);
130
+ }
131
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-rail .range-slider__placeholder-inner-rail {
132
+ position: absolute;
133
+ height: 100%;
134
+ background: var(--range-slider-inner-rail);
135
+ opacity: 0.5;
136
+ }
137
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__input,
138
+ .range-slider__wrapper .range-slider__control-wrapper .range-slider__placeholder {
139
+ top: 0.75rem;
140
+ }
141
+ .range-slider__wrapper .range-slider__control-wrapper.disabled .range-slider__placeholder {
142
+ filter: grayscale(1);
143
+ }
144
+ .range-slider__wrapper.only-one .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-rail {
145
+ background: var(--range-slider-rail);
146
+ }
147
+ .range-slider__wrapper.only-one .range-slider__control-wrapper .range-slider__placeholder .range-slider__placeholder-rail .range-slider__placeholder-inner-rail {
148
+ background: var(--range-slider-rail);
149
+ }
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ declare type RangeSliderProps = {
3
+ wrapperClassName?: string;
4
+ controlClassName?: string;
5
+ value?: any;
6
+ label?: React.ReactNode | string;
7
+ minName?: string;
8
+ maxName?: string;
9
+ onlyOne?: boolean;
10
+ step: number;
11
+ min: number;
12
+ max: number;
13
+ disabled?: any;
14
+ required?: any;
15
+ /** -- */
16
+ id?: string;
17
+ tabIndex?: number;
18
+ onChange?: (e: any, param: any) => void;
19
+ };
20
+ declare const RangeSlider: (props: RangeSliderProps) => JSX.Element;
21
+ export default RangeSlider;