@mirai/ui 1.0.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 +349 -0
- package/build/components/Button/Button.js +44 -0
- package/build/components/Button/Button.js.map +1 -0
- package/build/components/Button/Button.module.css +79 -0
- package/build/components/Button/__tests__/__snapshots__/Button.test.js.snap +113 -0
- package/build/components/Button/index.js +19 -0
- package/build/components/Button/index.js.map +1 -0
- package/build/components/Calendar/Calendar.Month.js +101 -0
- package/build/components/Calendar/Calendar.Month.js.map +1 -0
- package/build/components/Calendar/Calendar.Week.js +144 -0
- package/build/components/Calendar/Calendar.Week.js.map +1 -0
- package/build/components/Calendar/Calendar.constants.js +11 -0
- package/build/components/Calendar/Calendar.constants.js.map +1 -0
- package/build/components/Calendar/Calendar.js +146 -0
- package/build/components/Calendar/Calendar.js.map +1 -0
- package/build/components/Calendar/Calendar.module.css +96 -0
- package/build/components/Calendar/__tests__/__snapshots__/Calendar.test.jsx.snap +17853 -0
- package/build/components/Calendar/helpers/getFirstDateOfMonth.js +16 -0
- package/build/components/Calendar/helpers/getFirstDateOfMonth.js.map +1 -0
- package/build/components/Calendar/helpers/getFirstDateOfWeek.js +20 -0
- package/build/components/Calendar/helpers/getFirstDateOfWeek.js.map +1 -0
- package/build/components/Calendar/helpers/getHeader.js +23 -0
- package/build/components/Calendar/helpers/getHeader.js.map +1 -0
- package/build/components/Calendar/helpers/getToday.js +15 -0
- package/build/components/Calendar/helpers/getToday.js.map +1 -0
- package/build/components/Calendar/helpers/getWeekNumber.js +17 -0
- package/build/components/Calendar/helpers/getWeekNumber.js.map +1 -0
- package/build/components/Calendar/helpers/getWeekdays.js +27 -0
- package/build/components/Calendar/helpers/getWeekdays.js.map +1 -0
- package/build/components/Calendar/helpers/index.js +97 -0
- package/build/components/Calendar/helpers/index.js.map +1 -0
- package/build/components/Calendar/helpers/isJest.js +9 -0
- package/build/components/Calendar/helpers/isJest.js.map +1 -0
- package/build/components/Calendar/index.js +19 -0
- package/build/components/Calendar/index.js.map +1 -0
- package/build/components/Form/Form.js +184 -0
- package/build/components/Form/Form.js.map +1 -0
- package/build/components/Form/__tests__/__snapshots__/Form.test.jsx.snap +47 -0
- package/build/components/Form/helpers/getChildrenErrors.js +47 -0
- package/build/components/Form/helpers/getChildrenErrors.js.map +1 -0
- package/build/components/Form/helpers/getChildrenValues.js +46 -0
- package/build/components/Form/helpers/getChildrenValues.js.map +1 -0
- package/build/components/Form/helpers/getField.js +17 -0
- package/build/components/Form/helpers/getField.js.map +1 -0
- package/build/components/Form/helpers/groupState.js +29 -0
- package/build/components/Form/helpers/groupState.js.map +1 -0
- package/build/components/Form/helpers/index.js +58 -0
- package/build/components/Form/helpers/index.js.map +1 -0
- package/build/components/Form/index.js +19 -0
- package/build/components/Form/index.js.map +1 -0
- package/build/components/InputNumber/InputNumber.js +71 -0
- package/build/components/InputNumber/InputNumber.js.map +1 -0
- package/build/components/InputNumber/InputNumber.module.css +13 -0
- package/build/components/InputNumber/__tests__/__snapshots__/InputNumber.test.js.snap +616 -0
- package/build/components/InputNumber/index.js +19 -0
- package/build/components/InputNumber/index.js.map +1 -0
- package/build/components/InputText/InputText.js +100 -0
- package/build/components/InputText/InputText.js.map +1 -0
- package/build/components/InputText/InputText.module.css +68 -0
- package/build/components/InputText/__tests__/__snapshots__/InputText.test.js.snap +212 -0
- package/build/components/InputText/index.js +19 -0
- package/build/components/InputText/index.js.map +1 -0
- package/build/components/Modal/Modal.js +50 -0
- package/build/components/Modal/Modal.js.map +1 -0
- package/build/components/Modal/Modal.module.css +70 -0
- package/build/components/Modal/__tests__/__snapshots__/Modal.test.js.snap +150 -0
- package/build/components/Modal/index.js +19 -0
- package/build/components/Modal/index.js.map +1 -0
- package/build/components/index.js +84 -0
- package/build/components/index.js.map +1 -0
- package/build/helpers/getInputErrors.js +45 -0
- package/build/helpers/getInputErrors.js.map +1 -0
- package/build/helpers/index.js +32 -0
- package/build/helpers/index.js.map +1 -0
- package/build/helpers/isValidDate.js +58 -0
- package/build/helpers/isValidDate.js.map +1 -0
- package/build/helpers/isValidEmail.js +15 -0
- package/build/helpers/isValidEmail.js.map +1 -0
- package/build/helpers/isValidPhone.js +25 -0
- package/build/helpers/isValidPhone.js.map +1 -0
- package/build/helpers/styles.js +21 -0
- package/build/helpers/styles.js.map +1 -0
- package/build/hooks/helpers/getNavigator.js +33 -0
- package/build/hooks/helpers/getNavigator.js.map +1 -0
- package/build/hooks/helpers/getResolution.js +22 -0
- package/build/hooks/helpers/getResolution.js.map +1 -0
- package/build/hooks/helpers/index.js +32 -0
- package/build/hooks/helpers/index.js.map +1 -0
- package/build/hooks/index.js +19 -0
- package/build/hooks/index.js.map +1 -0
- package/build/hooks/useDevice.js +48 -0
- package/build/hooks/useDevice.js.map +1 -0
- package/build/index.js +71 -0
- package/build/index.js.map +1 -0
- package/build/primitives/Icon/Icon.constants.js +27 -0
- package/build/primitives/Icon/Icon.constants.js.map +1 -0
- package/build/primitives/Icon/Icon.js +34 -0
- package/build/primitives/Icon/Icon.js.map +1 -0
- package/build/primitives/Icon/Icon.module.css +11 -0
- package/build/primitives/Icon/__tests__/__snapshots__/Icon.test.js.snap +133 -0
- package/build/primitives/Icon/index.js +31 -0
- package/build/primitives/Icon/index.js.map +1 -0
- package/build/primitives/Input/Input.js +66 -0
- package/build/primitives/Input/Input.js.map +1 -0
- package/build/primitives/Input/Input.module.css +25 -0
- package/build/primitives/Input/__tests__/__snapshots__/Input.test.js.snap +74 -0
- package/build/primitives/Input/helpers/index.js +19 -0
- package/build/primitives/Input/helpers/index.js.map +1 -0
- package/build/primitives/Input/helpers/parseValue.js +17 -0
- package/build/primitives/Input/helpers/parseValue.js.map +1 -0
- package/build/primitives/Input/index.js +19 -0
- package/build/primitives/Input/index.js.map +1 -0
- package/build/primitives/Pressable/Pressable.constants.js +9 -0
- package/build/primitives/Pressable/Pressable.constants.js.map +1 -0
- package/build/primitives/Pressable/Pressable.js +50 -0
- package/build/primitives/Pressable/Pressable.js.map +1 -0
- package/build/primitives/Pressable/Pressable.module.css +18 -0
- package/build/primitives/Pressable/__tests__/__snapshots__/Pressable.test.js.snap +53 -0
- package/build/primitives/Pressable/index.js +19 -0
- package/build/primitives/Pressable/index.js.map +1 -0
- package/build/primitives/ScrollView/ScrollView.js +89 -0
- package/build/primitives/ScrollView/ScrollView.js.map +1 -0
- package/build/primitives/ScrollView/ScrollView.module.css +35 -0
- package/build/primitives/ScrollView/__tests__/__snapshots__/ScrollView.test.js.snap +535 -0
- package/build/primitives/ScrollView/index.js +19 -0
- package/build/primitives/ScrollView/index.js.map +1 -0
- package/build/primitives/Text/Text.js +40 -0
- package/build/primitives/Text/Text.js.map +1 -0
- package/build/primitives/Text/Text.module.css +36 -0
- package/build/primitives/Text/__tests__/__snapshots__/Text.test.js.snap +102 -0
- package/build/primitives/Text/index.js +19 -0
- package/build/primitives/Text/index.js.map +1 -0
- package/build/primitives/View/View.js +36 -0
- package/build/primitives/View/View.js.map +1 -0
- package/build/primitives/View/View.module.css +16 -0
- package/build/primitives/View/__tests__/__snapshots__/View.test.js.snap +62 -0
- package/build/primitives/View/index.js +19 -0
- package/build/primitives/View/index.js.map +1 -0
- package/build/primitives/index.js +84 -0
- package/build/primitives/index.js.map +1 -0
- package/build/theme/default.theme.css +37 -0
- package/build/theme/helpers/camelcase.js +16 -0
- package/build/theme/helpers/camelcase.js.map +1 -0
- package/build/theme/helpers/index.js +19 -0
- package/build/theme/helpers/index.js.map +1 -0
- package/build/theme/index.js +19 -0
- package/build/theme/index.js.map +1 -0
- package/build/theme/theme.js +43 -0
- package/build/theme/theme.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getFirstDateOfMonth = void 0;
|
|
7
|
+
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
|
|
10
|
+
var getFirstDateOfMonth = function getFirstDateOfMonth() {
|
|
11
|
+
var date = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Date();
|
|
12
|
+
return (0, _locale.UTC)(new Date(date.getFullYear(), date.getMonth(), 1));
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
exports.getFirstDateOfMonth = getFirstDateOfMonth;
|
|
16
|
+
//# sourceMappingURL=getFirstDateOfMonth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/getFirstDateOfMonth.js"],"names":["getFirstDateOfMonth","date","Date","getFullYear","getMonth"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,mBAAmB,GAAG,SAAtBA,mBAAsB;AAAA,MAACC,IAAD,uEAAQ,IAAIC,IAAJ,EAAR;AAAA,SAAuB,iBAAI,IAAIA,IAAJ,CAASD,IAAI,CAACE,WAAL,EAAT,EAA6BF,IAAI,CAACG,QAAL,EAA7B,EAA8C,CAA9C,CAAJ,CAAvB;AAAA,CAA5B","sourcesContent":["import { UTC } from '@mirai/locale';\n\nexport const getFirstDateOfMonth = (date = new Date()) => UTC(new Date(date.getFullYear(), date.getMonth(), 1));\n"],"file":"getFirstDateOfMonth.js"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getFirstDateOfWeek = void 0;
|
|
7
|
+
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
|
|
10
|
+
var DAY_MS = 24 * 60 * 60 * 1000;
|
|
11
|
+
var WEEK_MS = 7 * DAY_MS;
|
|
12
|
+
|
|
13
|
+
var getFirstDateOfWeek = function getFirstDateOfWeek(week, year) {
|
|
14
|
+
var date = (0, _locale.UTC)(new Date(year, 0, 1, 0));
|
|
15
|
+
var offsetTimeStart = DAY_MS * (date.getDay() - 1);
|
|
16
|
+
return (0, _locale.UTC)(new Date(date.getTime() + WEEK_MS * (week - 1) - offsetTimeStart));
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
exports.getFirstDateOfWeek = getFirstDateOfWeek;
|
|
20
|
+
//# sourceMappingURL=getFirstDateOfWeek.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/getFirstDateOfWeek.js"],"names":["DAY_MS","WEEK_MS","getFirstDateOfWeek","week","year","date","Date","offsetTimeStart","getDay","getTime"],"mappings":";;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,KAAK,EAAL,GAAU,EAAV,GAAe,IAA9B;AACA,IAAMC,OAAO,GAAG,IAAID,MAApB;;AAEO,IAAME,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,IAAD,EAAOC,IAAP,EAAgB;AAChD,MAAMC,IAAI,GAAG,iBAAI,IAAIC,IAAJ,CAASF,IAAT,EAAe,CAAf,EAAkB,CAAlB,EAAqB,CAArB,CAAJ,CAAb;AACA,MAAMG,eAAe,GAAGP,MAAM,IAAIK,IAAI,CAACG,MAAL,KAAgB,CAApB,CAA9B;AAEA,SAAO,iBAAI,IAAIF,IAAJ,CAASD,IAAI,CAACI,OAAL,KAAiBR,OAAO,IAAIE,IAAI,GAAG,CAAX,CAAxB,GAAwCI,eAAjD,CAAJ,CAAP;AACD,CALM","sourcesContent":["import { UTC } from '@mirai/locale';\n\nconst DAY_MS = 24 * 60 * 60 * 1000;\nconst WEEK_MS = 7 * DAY_MS;\n\nexport const getFirstDateOfWeek = (week, year) => {\n const date = UTC(new Date(year, 0, 1, 0));\n const offsetTimeStart = DAY_MS * (date.getDay() - 1);\n\n return UTC(new Date(date.getTime() + WEEK_MS * (week - 1) - offsetTimeStart));\n};\n"],"file":"getFirstDateOfWeek.js"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getHeader = void 0;
|
|
7
|
+
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
|
|
10
|
+
var getHeader = function getHeader(date, locale) {
|
|
11
|
+
var month = (0, _locale.dateFormat)(date, {
|
|
12
|
+
locale: locale,
|
|
13
|
+
month: 'long'
|
|
14
|
+
});
|
|
15
|
+
var year = (0, _locale.dateFormat)(date, {
|
|
16
|
+
locale: locale,
|
|
17
|
+
year: 'numeric'
|
|
18
|
+
});
|
|
19
|
+
return "".concat(month, " ").concat(year);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
exports.getHeader = getHeader;
|
|
23
|
+
//# sourceMappingURL=getHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/getHeader.js"],"names":["getHeader","date","locale","month","year"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,IAAD,EAAOC,MAAP,EAAkB;AACzC,MAAMC,KAAK,GAAG,wBAAWF,IAAX,EAAiB;AAAEC,IAAAA,MAAM,EAANA,MAAF;AAAUC,IAAAA,KAAK,EAAE;AAAjB,GAAjB,CAAd;AACA,MAAMC,IAAI,GAAG,wBAAWH,IAAX,EAAiB;AAAEC,IAAAA,MAAM,EAANA,MAAF;AAAUE,IAAAA,IAAI,EAAE;AAAhB,GAAjB,CAAb;AAEA,mBAAUD,KAAV,cAAmBC,IAAnB;AACD,CALM","sourcesContent":["import { dateFormat } from '@mirai/locale';\n\nexport const getHeader = (date, locale) => {\n const month = dateFormat(date, { locale, month: 'long' });\n const year = dateFormat(date, { locale, year: 'numeric' });\n\n return `${month} ${year}`;\n};\n"],"file":"getHeader.js"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getToday = void 0;
|
|
7
|
+
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
|
|
10
|
+
var getToday = function getToday() {
|
|
11
|
+
return (0, _locale.UTC)(new Date());
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.getToday = getToday;
|
|
15
|
+
//# sourceMappingURL=getToday.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/getToday.js"],"names":["getToday","Date"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAM,iBAAI,IAAIC,IAAJ,EAAJ,CAAN;AAAA,CAAjB","sourcesContent":["import { UTC } from '@mirai/locale';\n\nexport const getToday = () => UTC(new Date());\n"],"file":"getToday.js"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getWeekNumber = void 0;
|
|
7
|
+
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
|
|
10
|
+
var getWeekNumber = function getWeekNumber(date) {
|
|
11
|
+
var firstDayOfYear = (0, _locale.UTC)(new Date(date.getFullYear(), 0, 1));
|
|
12
|
+
var pastDaysOfYear = (Number(date) - Number(firstDayOfYear)) / 86400000;
|
|
13
|
+
return Math.ceil((pastDaysOfYear + firstDayOfYear.getDay()) / 7);
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
exports.getWeekNumber = getWeekNumber;
|
|
17
|
+
//# sourceMappingURL=getWeekNumber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/getWeekNumber.js"],"names":["getWeekNumber","date","firstDayOfYear","Date","getFullYear","pastDaysOfYear","Number","Math","ceil","getDay"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,IAAD,EAAU;AACrC,MAAMC,cAAc,GAAG,iBAAI,IAAIC,IAAJ,CAASF,IAAI,CAACG,WAAL,EAAT,EAA6B,CAA7B,EAAgC,CAAhC,CAAJ,CAAvB;AACA,MAAMC,cAAc,GAAG,CAACC,MAAM,CAACL,IAAD,CAAN,GAAeK,MAAM,CAACJ,cAAD,CAAtB,IAA0C,QAAjE;AAEA,SAAOK,IAAI,CAACC,IAAL,CAAU,CAACH,cAAc,GAAGH,cAAc,CAACO,MAAf,EAAlB,IAA6C,CAAvD,CAAP;AACD,CALM","sourcesContent":["import { UTC } from '@mirai/locale';\n\nexport const getWeekNumber = (date) => {\n const firstDayOfYear = UTC(new Date(date.getFullYear(), 0, 1));\n const pastDaysOfYear = (Number(date) - Number(firstDayOfYear)) / 86400000;\n\n return Math.ceil((pastDaysOfYear + firstDayOfYear.getDay()) / 7);\n};\n"],"file":"getWeekNumber.js"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getWeekDays = void 0;
|
|
7
|
+
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
|
|
10
|
+
var _getToday = require("./getToday");
|
|
11
|
+
|
|
12
|
+
var getWeekDays = function getWeekDays(locale) {
|
|
13
|
+
var today = (0, _getToday.getToday)();
|
|
14
|
+
var weekdays = [];
|
|
15
|
+
var date = (0, _locale.UTC)(new Date(today.setDate(today.getDate() - today.getDay() + (today.getDay() === 0 ? -6 : 1))));
|
|
16
|
+
Array.from(Array(7).keys()).forEach(function () {
|
|
17
|
+
weekdays.push((0, _locale.dateFormat)(date, {
|
|
18
|
+
locale: locale,
|
|
19
|
+
weekday: 'short'
|
|
20
|
+
}));
|
|
21
|
+
date.setDate(date.getDate() + 1);
|
|
22
|
+
});
|
|
23
|
+
return weekdays;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
exports.getWeekDays = getWeekDays;
|
|
27
|
+
//# sourceMappingURL=getWeekdays.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/getWeekdays.js"],"names":["getWeekDays","locale","today","weekdays","date","Date","setDate","getDate","getDay","Array","from","keys","forEach","push","weekday"],"mappings":";;;;;;;AAAA;;AAEA;;AAEO,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,MAAD,EAAY;AACrC,MAAMC,KAAK,GAAG,yBAAd;AACA,MAAMC,QAAQ,GAAG,EAAjB;AAEA,MAAMC,IAAI,GAAG,iBAAI,IAAIC,IAAJ,CAASH,KAAK,CAACI,OAAN,CAAcJ,KAAK,CAACK,OAAN,KAAkBL,KAAK,CAACM,MAAN,EAAlB,IAAoCN,KAAK,CAACM,MAAN,OAAmB,CAAnB,GAAuB,CAAC,CAAxB,GAA4B,CAAhE,CAAd,CAAT,CAAJ,CAAb;AACAC,EAAAA,KAAK,CAACC,IAAN,CAAWD,KAAK,CAAC,CAAD,CAAL,CAASE,IAAT,EAAX,EAA4BC,OAA5B,CAAoC,YAAM;AACxCT,IAAAA,QAAQ,CAACU,IAAT,CAAc,wBAAWT,IAAX,EAAiB;AAAEH,MAAAA,MAAM,EAANA,MAAF;AAAUa,MAAAA,OAAO,EAAE;AAAnB,KAAjB,CAAd;AACAV,IAAAA,IAAI,CAACE,OAAL,CAAaF,IAAI,CAACG,OAAL,KAAiB,CAA9B;AACD,GAHD;AAKA,SAAOJ,QAAP;AACD,CAXM","sourcesContent":["import { dateFormat, UTC } from '@mirai/locale';\n\nimport { getToday } from './getToday';\n\nexport const getWeekDays = (locale) => {\n const today = getToday();\n const weekdays = [];\n\n const date = UTC(new Date(today.setDate(today.getDate() - today.getDay() + (today.getDay() === 0 ? -6 : 1))));\n Array.from(Array(7).keys()).forEach(() => {\n weekdays.push(dateFormat(date, { locale, weekday: 'short' }));\n date.setDate(date.getDate() + 1);\n });\n\n return weekdays;\n};\n"],"file":"getWeekdays.js"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _getFirstDateOfMonth = require("./getFirstDateOfMonth");
|
|
8
|
+
|
|
9
|
+
Object.keys(_getFirstDateOfMonth).forEach(function (key) {
|
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
|
11
|
+
if (key in exports && exports[key] === _getFirstDateOfMonth[key]) return;
|
|
12
|
+
Object.defineProperty(exports, key, {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _getFirstDateOfMonth[key];
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
var _getFirstDateOfWeek = require("./getFirstDateOfWeek");
|
|
21
|
+
|
|
22
|
+
Object.keys(_getFirstDateOfWeek).forEach(function (key) {
|
|
23
|
+
if (key === "default" || key === "__esModule") return;
|
|
24
|
+
if (key in exports && exports[key] === _getFirstDateOfWeek[key]) return;
|
|
25
|
+
Object.defineProperty(exports, key, {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function get() {
|
|
28
|
+
return _getFirstDateOfWeek[key];
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
var _getHeader = require("./getHeader");
|
|
34
|
+
|
|
35
|
+
Object.keys(_getHeader).forEach(function (key) {
|
|
36
|
+
if (key === "default" || key === "__esModule") return;
|
|
37
|
+
if (key in exports && exports[key] === _getHeader[key]) return;
|
|
38
|
+
Object.defineProperty(exports, key, {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
get: function get() {
|
|
41
|
+
return _getHeader[key];
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
var _getToday = require("./getToday");
|
|
47
|
+
|
|
48
|
+
Object.keys(_getToday).forEach(function (key) {
|
|
49
|
+
if (key === "default" || key === "__esModule") return;
|
|
50
|
+
if (key in exports && exports[key] === _getToday[key]) return;
|
|
51
|
+
Object.defineProperty(exports, key, {
|
|
52
|
+
enumerable: true,
|
|
53
|
+
get: function get() {
|
|
54
|
+
return _getToday[key];
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
var _getWeekdays = require("./getWeekdays");
|
|
60
|
+
|
|
61
|
+
Object.keys(_getWeekdays).forEach(function (key) {
|
|
62
|
+
if (key === "default" || key === "__esModule") return;
|
|
63
|
+
if (key in exports && exports[key] === _getWeekdays[key]) return;
|
|
64
|
+
Object.defineProperty(exports, key, {
|
|
65
|
+
enumerable: true,
|
|
66
|
+
get: function get() {
|
|
67
|
+
return _getWeekdays[key];
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
var _getWeekNumber = require("./getWeekNumber");
|
|
73
|
+
|
|
74
|
+
Object.keys(_getWeekNumber).forEach(function (key) {
|
|
75
|
+
if (key === "default" || key === "__esModule") return;
|
|
76
|
+
if (key in exports && exports[key] === _getWeekNumber[key]) return;
|
|
77
|
+
Object.defineProperty(exports, key, {
|
|
78
|
+
enumerable: true,
|
|
79
|
+
get: function get() {
|
|
80
|
+
return _getWeekNumber[key];
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
var _isJest = require("./isJest");
|
|
86
|
+
|
|
87
|
+
Object.keys(_isJest).forEach(function (key) {
|
|
88
|
+
if (key === "default" || key === "__esModule") return;
|
|
89
|
+
if (key in exports && exports[key] === _isJest[key]) return;
|
|
90
|
+
Object.defineProperty(exports, key, {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function get() {
|
|
93
|
+
return _isJest[key];
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/index.js"],"names":[],"mappings":";;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './getFirstDateOfMonth';\nexport * from './getFirstDateOfWeek';\nexport * from './getHeader';\nexport * from './getToday';\nexport * from './getWeekdays';\nexport * from './getWeekNumber';\nexport * from './isJest';\n"],"file":"index.js"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.IS_JEST = void 0;
|
|
7
|
+
var IS_JEST = !window && (process && process).env ? process.env.JEST_WORKER_ID !== undefined : false;
|
|
8
|
+
exports.IS_JEST = IS_JEST;
|
|
9
|
+
//# sourceMappingURL=isJest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Calendar/helpers/isJest.js"],"names":["IS_JEST","window","process","env","JEST_WORKER_ID","undefined"],"mappings":";;;;;;AAAO,IAAMA,OAAO,GAAG,CAACC,MAAD,IAAW,CAACC,OAAO,IAAIA,OAAZ,EAAqBC,GAAhC,GAAsCD,OAAO,CAACC,GAAR,CAAYC,cAAZ,KAA+BC,SAArE,GAAiF,KAAjG","sourcesContent":["export const IS_JEST = !window && (process && process).env ? process.env.JEST_WORKER_ID !== undefined : false;\n"],"file":"isJest.js"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _Calendar = require("./Calendar");
|
|
8
|
+
|
|
9
|
+
Object.keys(_Calendar).forEach(function (key) {
|
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
|
11
|
+
if (key in exports && exports[key] === _Calendar[key]) return;
|
|
12
|
+
Object.defineProperty(exports, key, {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _Calendar[key];
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Calendar/index.js"],"names":[],"mappings":";;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './Calendar';\n"],"file":"index.js"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.Form = void 0;
|
|
11
|
+
|
|
12
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
13
|
+
|
|
14
|
+
var _objectSpread4 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
15
|
+
|
|
16
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
17
|
+
|
|
18
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
19
|
+
|
|
20
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
+
|
|
22
|
+
var _helpers = require("./helpers");
|
|
23
|
+
|
|
24
|
+
var _excluded = ["children", "debounce", "schema", "showErrors", "validateOnMount", "onBlur", "onChange", "onError", "onFocus", "onSubmit"];
|
|
25
|
+
|
|
26
|
+
var Form = function Form(_ref) {
|
|
27
|
+
var children = _ref.children,
|
|
28
|
+
_ref$debounce = _ref.debounce,
|
|
29
|
+
debounce = _ref$debounce === void 0 ? 0 : _ref$debounce,
|
|
30
|
+
_ref$schema = _ref.schema,
|
|
31
|
+
schema = _ref$schema === void 0 ? {} : _ref$schema,
|
|
32
|
+
showErrors = _ref.showErrors,
|
|
33
|
+
_ref$validateOnMount = _ref.validateOnMount,
|
|
34
|
+
validateOnMount = _ref$validateOnMount === void 0 ? false : _ref$validateOnMount,
|
|
35
|
+
onBlur = _ref.onBlur,
|
|
36
|
+
onChange = _ref.onChange,
|
|
37
|
+
onError = _ref.onError,
|
|
38
|
+
onFocus = _ref.onFocus,
|
|
39
|
+
onSubmit = _ref.onSubmit,
|
|
40
|
+
others = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
41
|
+
|
|
42
|
+
var _useState = (0, _react.useState)({}),
|
|
43
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
44
|
+
error = _useState2[0],
|
|
45
|
+
setError = _useState2[1];
|
|
46
|
+
|
|
47
|
+
var _useState3 = (0, _react.useState)({}),
|
|
48
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
49
|
+
initialValue = _useState4[0],
|
|
50
|
+
setInitialValue = _useState4[1];
|
|
51
|
+
|
|
52
|
+
var _useState5 = (0, _react.useState)({}),
|
|
53
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
54
|
+
touched = _useState6[0],
|
|
55
|
+
setTouched = _useState6[1];
|
|
56
|
+
|
|
57
|
+
var _useState7 = (0, _react.useState)({}),
|
|
58
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
59
|
+
values = _useState8[0],
|
|
60
|
+
setValues = _useState8[1];
|
|
61
|
+
|
|
62
|
+
(0, _react.useEffect)(function () {
|
|
63
|
+
var nextValues = (0, _helpers.getChildrenValues)(children);
|
|
64
|
+
var nextChildrenKeys = Object.keys(nextValues).sort();
|
|
65
|
+
|
|
66
|
+
if (JSON.stringify(nextChildrenKeys) !== JSON.stringify(Object.keys(initialValue).sort())) {
|
|
67
|
+
setInitialValue(nextValues);
|
|
68
|
+
setValues(nextValues);
|
|
69
|
+
|
|
70
|
+
if (validateOnMount) {
|
|
71
|
+
var nextError = (0, _helpers.getChildrenErrors)({
|
|
72
|
+
children: children,
|
|
73
|
+
schema: schema,
|
|
74
|
+
values: nextValues
|
|
75
|
+
});
|
|
76
|
+
setError(nextError);
|
|
77
|
+
onError && onError(nextError);
|
|
78
|
+
} else {
|
|
79
|
+
setError({});
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
setTouched({});
|
|
83
|
+
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
84
|
+
|
|
85
|
+
}, [children]);
|
|
86
|
+
(0, _react.useEffect)(function () {
|
|
87
|
+
if (!onChange || values === initialValue) return;
|
|
88
|
+
var timer = setTimeout(function () {
|
|
89
|
+
return onChange(values, (0, _helpers.groupState)({
|
|
90
|
+
initialValue: initialValue,
|
|
91
|
+
value: values,
|
|
92
|
+
touched: touched
|
|
93
|
+
}));
|
|
94
|
+
}, debounce);
|
|
95
|
+
return function () {
|
|
96
|
+
return clearTimeout(timer);
|
|
97
|
+
}; // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
98
|
+
}, [values]);
|
|
99
|
+
|
|
100
|
+
var handleChange = function handleChange(field, fieldValue) {
|
|
101
|
+
setValues(function () {
|
|
102
|
+
var nextValues = (0, _objectSpread4.default)((0, _objectSpread4.default)({}, values), {}, (0, _defineProperty2.default)({}, field, fieldValue));
|
|
103
|
+
handleError(nextValues);
|
|
104
|
+
return nextValues;
|
|
105
|
+
});
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
var handleError = function handleError(values) {
|
|
109
|
+
var nextError = (0, _helpers.getChildrenErrors)({
|
|
110
|
+
children: children,
|
|
111
|
+
schema: schema,
|
|
112
|
+
values: values
|
|
113
|
+
});
|
|
114
|
+
var hasError = Object.keys(nextError).length > 0;
|
|
115
|
+
var changed = JSON.stringify(error) !== JSON.stringify(nextError);
|
|
116
|
+
|
|
117
|
+
if (changed) {
|
|
118
|
+
setError(nextError);
|
|
119
|
+
onError && onError(nextError, hasError);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
return {
|
|
123
|
+
changed: changed,
|
|
124
|
+
errors: nextError,
|
|
125
|
+
hasError: hasError
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
var handleFocus = function handleFocus(field, event) {
|
|
130
|
+
setTouched((0, _objectSpread4.default)((0, _objectSpread4.default)({}, touched), {}, (0, _defineProperty2.default)({}, field, true)));
|
|
131
|
+
if (onFocus) onFocus(field, event);
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
var handleSubmit = function handleSubmit(event) {
|
|
135
|
+
var _handleError = handleError(values),
|
|
136
|
+
errors = _handleError.errors,
|
|
137
|
+
hasError = _handleError.hasError;
|
|
138
|
+
|
|
139
|
+
if (hasError && onError) onError(errors, hasError);else if (onSubmit) onSubmit(values, (0, _helpers.groupState)({
|
|
140
|
+
initialValue: initialValue,
|
|
141
|
+
value: values,
|
|
142
|
+
touched: touched
|
|
143
|
+
}), event);
|
|
144
|
+
event.preventDefault();
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
return (0, _react.useMemo)(function () {
|
|
148
|
+
return /*#__PURE__*/_react.default.createElement("form", {
|
|
149
|
+
"data-testid": others['data-testid'],
|
|
150
|
+
style: others.style,
|
|
151
|
+
onSubmit: handleSubmit
|
|
152
|
+
}, _react.default.Children.map(children, function (child, index) {
|
|
153
|
+
if (!child || child === null) return;
|
|
154
|
+
|
|
155
|
+
var _ref2 = child || {},
|
|
156
|
+
_ref2$props = _ref2.props,
|
|
157
|
+
props = _ref2$props === void 0 ? {} : _ref2$props;
|
|
158
|
+
|
|
159
|
+
var type = props.type;
|
|
160
|
+
var field = (0, _helpers.getField)(props);
|
|
161
|
+
return /*#__PURE__*/_react.default.cloneElement(child, (0, _objectSpread4.default)({
|
|
162
|
+
key: index
|
|
163
|
+
}, field ? (0, _objectSpread4.default)((0, _objectSpread4.default)((0, _objectSpread4.default)({}, props), schema[field]), {}, {
|
|
164
|
+
error: props.error ? props.error : showErrors && error[field],
|
|
165
|
+
onBlur: onBlur ? function (event) {
|
|
166
|
+
return onBlur(field, event);
|
|
167
|
+
} : undefined,
|
|
168
|
+
onChange: function onChange(value) {
|
|
169
|
+
return handleChange(field, value);
|
|
170
|
+
},
|
|
171
|
+
onFocus: function onFocus(event) {
|
|
172
|
+
return handleFocus(field, event);
|
|
173
|
+
}
|
|
174
|
+
}) : type === 'submit' ? (0, _objectSpread4.default)((0, _objectSpread4.default)({}, props), {}, {
|
|
175
|
+
onPress: handleSubmit
|
|
176
|
+
}) : undefined));
|
|
177
|
+
}));
|
|
178
|
+
}, // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
179
|
+
[children, error, others, schema]);
|
|
180
|
+
};
|
|
181
|
+
|
|
182
|
+
exports.Form = Form;
|
|
183
|
+
Form.displayName = 'Component:Form';
|
|
184
|
+
//# sourceMappingURL=Form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Form/Form.jsx"],"names":["Form","children","debounce","schema","showErrors","validateOnMount","onBlur","onChange","onError","onFocus","onSubmit","others","error","setError","initialValue","setInitialValue","touched","setTouched","values","setValues","nextValues","nextChildrenKeys","Object","keys","sort","JSON","stringify","nextError","timer","setTimeout","value","clearTimeout","handleChange","field","fieldValue","handleError","hasError","length","changed","errors","handleFocus","event","handleSubmit","preventDefault","style","React","Children","map","child","index","props","type","cloneElement","key","undefined","onPress","displayName"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React, { useEffect, useMemo, useState } from 'react';\n\nimport { getChildrenErrors, getChildrenValues, getField, groupState } from './helpers';\n\nconst Form = ({\n children,\n debounce = 0,\n schema = {},\n showErrors,\n validateOnMount = false,\n onBlur,\n onChange,\n onError,\n onFocus,\n onSubmit,\n ...others\n}) => {\n const [error, setError] = useState({});\n const [initialValue, setInitialValue] = useState({});\n const [touched, setTouched] = useState({});\n const [values, setValues] = useState({});\n\n useEffect(() => {\n const nextValues = getChildrenValues(children);\n const nextChildrenKeys = Object.keys(nextValues).sort();\n\n if (JSON.stringify(nextChildrenKeys) !== JSON.stringify(Object.keys(initialValue).sort())) {\n setInitialValue(nextValues);\n setValues(nextValues);\n\n if (validateOnMount) {\n const nextError = getChildrenErrors({ children, schema, values: nextValues });\n setError(nextError);\n onError && onError(nextError);\n } else {\n setError({});\n }\n setTouched({});\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children]);\n\n useEffect(() => {\n if (!onChange || values === initialValue) return;\n\n const timer = setTimeout(() => onChange(values, groupState({ initialValue, value: values, touched })), debounce);\n return () => clearTimeout(timer);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [values]);\n\n const handleChange = (field, fieldValue) => {\n setValues(() => {\n const nextValues = { ...values, [field]: fieldValue };\n\n handleError(nextValues);\n\n return nextValues;\n });\n };\n\n const handleError = (values) => {\n const nextError = getChildrenErrors({ children, schema, values });\n const hasError = Object.keys(nextError).length > 0;\n const changed = JSON.stringify(error) !== JSON.stringify(nextError);\n\n if (changed) {\n setError(nextError);\n onError && onError(nextError, hasError);\n }\n\n return { changed, errors: nextError, hasError };\n };\n\n const handleFocus = (field, event) => {\n setTouched({ ...touched, [field]: true });\n if (onFocus) onFocus(field, event);\n };\n\n const handleSubmit = (event) => {\n const { errors, hasError } = handleError(values);\n\n if (hasError && onError) onError(errors, hasError);\n else if (onSubmit) onSubmit(values, groupState({ initialValue, value: values, touched }), event);\n event.preventDefault();\n };\n\n return useMemo(\n () => (\n <form data-testid={others['data-testid']} style={others.style} onSubmit={handleSubmit}>\n {React.Children.map(children, (child, index) => {\n if (!child || child === null) return;\n\n const { props = {} } = child || {};\n const { type } = props;\n const field = getField(props);\n\n return React.cloneElement(child, {\n key: index,\n ...(field\n ? {\n ...props,\n ...schema[field],\n error: props.error ? props.error : showErrors && error[field],\n onBlur: onBlur ? (event) => onBlur(field, event) : undefined,\n onChange: (value) => handleChange(field, value),\n onFocus: (event) => handleFocus(field, event),\n }\n : type === 'submit'\n ? { ...props, onPress: handleSubmit }\n : undefined),\n });\n })}\n </form>\n ),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [children, error, others, schema],\n );\n};\n\nForm.displayName = 'Component:Form';\n\nForm.propTypes = {\n children: PropTypes.node,\n debounce: PropTypes.number,\n schema: PropTypes.shape({}),\n showErrors: PropTypes.bool,\n validateOnMount: PropTypes.bool,\n onBlur: PropTypes.func,\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onFocus: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Form };\n"],"file":"Form.js"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
+
|
|
3
|
+
exports[`component:<Form> inherit:className 1`] = `
|
|
4
|
+
<DocumentFragment>
|
|
5
|
+
<form />
|
|
6
|
+
</DocumentFragment>
|
|
7
|
+
`;
|
|
8
|
+
|
|
9
|
+
exports[`component:<Form> prop:children 1`] = `
|
|
10
|
+
<DocumentFragment>
|
|
11
|
+
<form>
|
|
12
|
+
<div
|
|
13
|
+
class="view inputText"
|
|
14
|
+
>
|
|
15
|
+
<span
|
|
16
|
+
class="text paragraph text label"
|
|
17
|
+
>
|
|
18
|
+
label
|
|
19
|
+
</span>
|
|
20
|
+
<div
|
|
21
|
+
class="view content"
|
|
22
|
+
>
|
|
23
|
+
<input
|
|
24
|
+
class="input input"
|
|
25
|
+
name="name"
|
|
26
|
+
type="text"
|
|
27
|
+
value=""
|
|
28
|
+
/>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
</form>
|
|
32
|
+
</DocumentFragment>
|
|
33
|
+
`;
|
|
34
|
+
|
|
35
|
+
exports[`component:<Form> renders 1`] = `
|
|
36
|
+
<DocumentFragment>
|
|
37
|
+
<form />
|
|
38
|
+
</DocumentFragment>
|
|
39
|
+
`;
|
|
40
|
+
|
|
41
|
+
exports[`component:<Form> testID 1`] = `
|
|
42
|
+
<DocumentFragment>
|
|
43
|
+
<form
|
|
44
|
+
data-testid="mirai"
|
|
45
|
+
/>
|
|
46
|
+
</DocumentFragment>
|
|
47
|
+
`;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getChildrenErrors = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _helpers = require("../../../helpers");
|
|
15
|
+
|
|
16
|
+
var _getField = require("./getField");
|
|
17
|
+
|
|
18
|
+
var getChildrenErrors = function getChildrenErrors() {
|
|
19
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
20
|
+
children = _ref.children,
|
|
21
|
+
_ref$schema = _ref.schema,
|
|
22
|
+
schema = _ref$schema === void 0 ? {} : _ref$schema,
|
|
23
|
+
_ref$values = _ref.values,
|
|
24
|
+
values = _ref$values === void 0 ? {} : _ref$values;
|
|
25
|
+
|
|
26
|
+
var errors = {};
|
|
27
|
+
|
|
28
|
+
_react.default.Children.forEach(children, function () {
|
|
29
|
+
var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
30
|
+
_ref2$props = _ref2.props,
|
|
31
|
+
props = _ref2$props === void 0 ? {} : _ref2$props;
|
|
32
|
+
|
|
33
|
+
var field = (0, _getField.getField)(props);
|
|
34
|
+
|
|
35
|
+
if (field) {
|
|
36
|
+
var inputErrors = (0, _helpers.getInputErrors)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), schema[field]), {}, {
|
|
37
|
+
value: values[field]
|
|
38
|
+
}));
|
|
39
|
+
if (inputErrors) errors[field] = inputErrors;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
return errors;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
exports.getChildrenErrors = getChildrenErrors;
|
|
47
|
+
//# sourceMappingURL=getChildrenErrors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Form/helpers/getChildrenErrors.js"],"names":["getChildrenErrors","children","schema","values","errors","React","Children","forEach","props","field","inputErrors","value"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;AACA;;AAEO,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,GAAiD;AAAA,iFAAP,EAAO;AAAA,MAA9CC,QAA8C,QAA9CA,QAA8C;AAAA,yBAApCC,MAAoC;AAAA,MAApCA,MAAoC,4BAA3B,EAA2B;AAAA,yBAAvBC,MAAuB;AAAA,MAAvBA,MAAuB,4BAAd,EAAc;;AAChF,MAAMC,MAAM,GAAG,EAAf;;AAEAC,iBAAMC,QAAN,CAAeC,OAAf,CAAuBN,QAAvB,EAAiC,YAAyB;AAAA,oFAAP,EAAO;AAAA,4BAAtBO,KAAsB;AAAA,QAAtBA,KAAsB,4BAAd,EAAc;;AACxD,QAAMC,KAAK,GAAG,wBAASD,KAAT,CAAd;;AAEA,QAAIC,KAAJ,EAAW;AACT,UAAMC,WAAW,GAAG,qHAAoBF,KAApB,GAA8BN,MAAM,CAACO,KAAD,CAApC;AAA6CE,QAAAA,KAAK,EAAER,MAAM,CAACM,KAAD;AAA1D,SAApB;AACA,UAAIC,WAAJ,EAAiBN,MAAM,CAACK,KAAD,CAAN,GAAgBC,WAAhB;AAClB;AACF,GAPD;;AASA,SAAON,MAAP;AACD,CAbM","sourcesContent":["import React from 'react';\n\nimport { getInputErrors } from '../../../helpers';\nimport { getField } from './getField';\n\nexport const getChildrenErrors = ({ children, schema = {}, values = {} } = {}) => {\n const errors = {};\n\n React.Children.forEach(children, ({ props = {} } = {}) => {\n const field = getField(props);\n\n if (field) {\n const inputErrors = getInputErrors({ ...props, ...schema[field], value: values[field] });\n if (inputErrors) errors[field] = inputErrors;\n }\n });\n\n return errors;\n};\n"],"file":"getChildrenErrors.js"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getChildrenValues = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _getField = require("./getField");
|
|
15
|
+
|
|
16
|
+
var _excluded = ["checked", "defaultChecked", "defaultValue", "type", "value"];
|
|
17
|
+
var BOOLEAN_TYPES = ['checkbox', 'radio'];
|
|
18
|
+
|
|
19
|
+
var getChildrenValues = function getChildrenValues(children) {
|
|
20
|
+
var values = {};
|
|
21
|
+
|
|
22
|
+
_react.default.Children.forEach(children, function () {
|
|
23
|
+
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
24
|
+
_ref$props = _ref.props;
|
|
25
|
+
|
|
26
|
+
_ref$props = _ref$props === void 0 ? {} : _ref$props;
|
|
27
|
+
var _ref$props$checked = _ref$props.checked,
|
|
28
|
+
checked = _ref$props$checked === void 0 ? false : _ref$props$checked,
|
|
29
|
+
_ref$props$defaultChe = _ref$props.defaultChecked,
|
|
30
|
+
defaultChecked = _ref$props$defaultChe === void 0 ? false : _ref$props$defaultChe,
|
|
31
|
+
_ref$props$defaultVal = _ref$props.defaultValue,
|
|
32
|
+
defaultValue = _ref$props$defaultVal === void 0 ? undefined : _ref$props$defaultVal,
|
|
33
|
+
_ref$props$type = _ref$props.type,
|
|
34
|
+
type = _ref$props$type === void 0 ? undefined : _ref$props$type,
|
|
35
|
+
_ref$props$value = _ref$props.value,
|
|
36
|
+
value = _ref$props$value === void 0 ? undefined : _ref$props$value,
|
|
37
|
+
props = (0, _objectWithoutProperties2.default)(_ref$props, _excluded);
|
|
38
|
+
var field = (0, _getField.getField)(props);
|
|
39
|
+
if (field) values[field] = BOOLEAN_TYPES.includes(type) ? checked || defaultChecked : value || defaultValue;
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
return values;
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
exports.getChildrenValues = getChildrenValues;
|
|
46
|
+
//# sourceMappingURL=getChildrenValues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Form/helpers/getChildrenValues.js"],"names":["BOOLEAN_TYPES","getChildrenValues","children","values","React","Children","forEach","props","checked","defaultChecked","defaultValue","undefined","type","value","field","includes"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;;AAEA,IAAMA,aAAa,GAAG,CAAC,UAAD,EAAa,OAAb,CAAtB;;AAEO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,QAAD,EAAc;AAC7C,MAAMC,MAAM,GAAG,EAAf;;AAEAC,iBAAMC,QAAN,CAAeC,OAAf,CACEJ,QADF,EAEE,YASW;AAAA,mFAAP,EAAO;AAAA,0BARTK,KAQS;;AAAA,yCADL,EACK;AAAA,wCAPPC,OAOO;AAAA,QAPPA,OAOO,mCAPG,KAOH;AAAA,2CANPC,cAMO;AAAA,QANPA,cAMO,sCANU,KAMV;AAAA,2CALPC,YAKO;AAAA,QALPA,YAKO,sCALQC,SAKR;AAAA,qCAJPC,IAIO;AAAA,QAJPA,IAIO,gCAJAD,SAIA;AAAA,sCAHPE,KAGO;AAAA,QAHPA,KAGO,iCAHCF,SAGD;AAAA,QAFJJ,KAEI;AACT,QAAMO,KAAK,GAAG,wBAASP,KAAT,CAAd;AACA,QAAIO,KAAJ,EAAWX,MAAM,CAACW,KAAD,CAAN,GAAgBd,aAAa,CAACe,QAAd,CAAuBH,IAAvB,IAA+BJ,OAAO,IAAIC,cAA1C,GAA2DI,KAAK,IAAIH,YAApF;AACZ,GAdH;;AAiBA,SAAOP,MAAP;AACD,CArBM","sourcesContent":["import React from 'react';\n\nimport { getField } from './getField';\n\nconst BOOLEAN_TYPES = ['checkbox', 'radio'];\n\nexport const getChildrenValues = (children) => {\n const values = {};\n\n React.Children.forEach(\n children,\n ({\n props: {\n checked = false,\n defaultChecked = false,\n defaultValue = undefined,\n type = undefined,\n value = undefined,\n ...props\n } = {},\n } = {}) => {\n const field = getField(props);\n if (field) values[field] = BOOLEAN_TYPES.includes(type) ? checked || defaultChecked : value || defaultValue;\n },\n );\n\n return values;\n};\n"],"file":"getChildrenValues.js"}
|