ywana-core8 0.0.909 → 0.0.911
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/dist/index.cjs +202 -19
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +131 -10
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +202 -20
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +202 -19
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/widgets/calendar/Calendar.css +131 -10
- package/src/widgets/calendar/Calendar.js +188 -19
package/dist/index.cjs
CHANGED
@@ -3215,14 +3215,70 @@ var WaitScreen = function WaitScreen() {
|
|
3215
3215
|
|
3216
3216
|
moment__default["default"].locale('es');
|
3217
3217
|
var moment = momentRange.extendMoment(moment__default["default"]);
|
3218
|
+
|
3219
|
+
/**
|
3220
|
+
* Calendar
|
3221
|
+
*/
|
3218
3222
|
var Calendar = function Calendar(props) {
|
3219
3223
|
var _props$events = props.events,
|
3220
3224
|
events = _props$events === void 0 ? [] : _props$events,
|
3221
3225
|
children = props.children,
|
3222
3226
|
onChange = props.onChange;
|
3223
|
-
var _useState = React.useState(),
|
3224
|
-
|
3225
|
-
|
3227
|
+
var _useState = React.useState(props.range || "year"),
|
3228
|
+
range = _useState[0],
|
3229
|
+
setRange = _useState[1];
|
3230
|
+
function onChangeRange(range) {
|
3231
|
+
setRange(range);
|
3232
|
+
}
|
3233
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3234
|
+
className: "calendar"
|
3235
|
+
}, /*#__PURE__*/React__default["default"].createElement(CalendarRangeControl, {
|
3236
|
+
range: range,
|
3237
|
+
onChange: onChangeRange
|
3238
|
+
}), range === "year" && /*#__PURE__*/React__default["default"].createElement(YearCalendar, {
|
3239
|
+
events: events,
|
3240
|
+
onChange: onChange
|
3241
|
+
}, children), range === "month" && /*#__PURE__*/React__default["default"].createElement(MonthCalendar, {
|
3242
|
+
events: events,
|
3243
|
+
onChange: onChange,
|
3244
|
+
onRange: onChangeRange
|
3245
|
+
}, children));
|
3246
|
+
};
|
3247
|
+
|
3248
|
+
/**
|
3249
|
+
* CalendarRangeControl
|
3250
|
+
*/
|
3251
|
+
var CalendarRangeControl = function CalendarRangeControl(props) {
|
3252
|
+
var range = props.range,
|
3253
|
+
onChange = props.onChange;
|
3254
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3255
|
+
className: "calendar-range-control"
|
3256
|
+
}, /*#__PURE__*/React__default["default"].createElement(Button, {
|
3257
|
+
label: "Year",
|
3258
|
+
outlined: range == "year",
|
3259
|
+
action: function action() {
|
3260
|
+
return onChange("year");
|
3261
|
+
}
|
3262
|
+
}), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3263
|
+
label: "Month",
|
3264
|
+
outlined: range == "month",
|
3265
|
+
action: function action() {
|
3266
|
+
return onChange("month");
|
3267
|
+
}
|
3268
|
+
}));
|
3269
|
+
};
|
3270
|
+
|
3271
|
+
/**
|
3272
|
+
* MonthCalendar
|
3273
|
+
*/
|
3274
|
+
var MonthCalendar = function MonthCalendar(props) {
|
3275
|
+
var _props$events2 = props.events,
|
3276
|
+
events = _props$events2 === void 0 ? [] : _props$events2,
|
3277
|
+
children = props.children,
|
3278
|
+
onChange = props.onChange;
|
3279
|
+
var _useState2 = React.useState(),
|
3280
|
+
position = _useState2[0],
|
3281
|
+
setPosition = _useState2[1];
|
3226
3282
|
React.useEffect(function () {
|
3227
3283
|
var today = moment();
|
3228
3284
|
setPosition(today);
|
@@ -3260,44 +3316,43 @@ var Calendar = function Calendar(props) {
|
|
3260
3316
|
var days = Array.from(range.by('days'));
|
3261
3317
|
var cells = days.map(function (day) {
|
3262
3318
|
var eventsOfDay = events.filter(function (event) {
|
3263
|
-
console.log(event.date, day.format("YYYY-MM-DD"));
|
3264
3319
|
var eventDay = moment(event.date);
|
3265
3320
|
return eventDay.isSame(day, 'day');
|
3266
3321
|
});
|
3322
|
+
var sameMonthStyle = day.isSame(moment(position), 'month') ? '' : 'other-month';
|
3267
3323
|
return {
|
3268
3324
|
day: day,
|
3269
|
-
events: eventsOfDay
|
3325
|
+
events: eventsOfDay,
|
3326
|
+
sameMonthStyle: sameMonthStyle
|
3270
3327
|
};
|
3271
3328
|
});
|
3272
3329
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3273
|
-
className: "calendar"
|
3274
|
-
}, /*#__PURE__*/React__default["default"].createElement("nav", null, /*#__PURE__*/React__default["default"].createElement("label", null, " ", monthName, " ", year), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3330
|
+
className: "month-calendar"
|
3331
|
+
}, /*#__PURE__*/React__default["default"].createElement("nav", null, /*#__PURE__*/React__default["default"].createElement("label", null, " ", /*#__PURE__*/React__default["default"].createElement(Text, null, monthName), " ", year), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3275
3332
|
icon: "chevron_left",
|
3276
|
-
raised: true,
|
3277
3333
|
action: prev
|
3278
3334
|
}), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3279
|
-
label: "
|
3335
|
+
label: "Today",
|
3280
3336
|
outlined: true,
|
3281
3337
|
action: today
|
3282
3338
|
}), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3283
3339
|
icon: "chevron_right",
|
3284
|
-
raised: true,
|
3285
3340
|
action: next
|
3286
3341
|
})), /*#__PURE__*/React__default["default"].createElement("header", null, /*#__PURE__*/React__default["default"].createElement("div", {
|
3287
3342
|
className: "week-day-cell"
|
3288
|
-
}, "
|
3343
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Mon")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3289
3344
|
className: "week-day-cell"
|
3290
|
-
}, "
|
3345
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Tue")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3291
3346
|
className: "week-day-cell"
|
3292
|
-
}, "
|
3347
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Wed")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3293
3348
|
className: "week-day-cell"
|
3294
|
-
}, "
|
3349
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Thu")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3295
3350
|
className: "week-day-cell"
|
3296
|
-
}, "
|
3351
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Fri")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3297
3352
|
className: "week-day-cell"
|
3298
|
-
}, "
|
3353
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Sat")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3299
3354
|
className: "week-day-cell"
|
3300
|
-
}, "
|
3355
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Sun"))), /*#__PURE__*/React__default["default"].createElement("main", null, cells.map(function (cell) {
|
3301
3356
|
return /*#__PURE__*/React__default["default"].createElement(DayCell, {
|
3302
3357
|
key: cell.day,
|
3303
3358
|
cell: cell
|
@@ -3309,9 +3364,9 @@ var DayCell = function DayCell(props) {
|
|
3309
3364
|
cell = _props$cell === void 0 ? [] : _props$cell,
|
3310
3365
|
children = props.children;
|
3311
3366
|
var day = cell.day,
|
3312
|
-
events = cell.events
|
3367
|
+
events = cell.events,
|
3368
|
+
sameMonthStyle = cell.sameMonthStyle;
|
3313
3369
|
var todayStyle = day.isSame(moment(), 'day') ? 'today' : '';
|
3314
|
-
var sameMonthStyle = day.isSame(moment(), 'month') ? '' : 'other-month';
|
3315
3370
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3316
3371
|
className: "day-cell " + todayStyle + " " + sameMonthStyle
|
3317
3372
|
}, /*#__PURE__*/React__default["default"].createElement("header", null, day.format("DD")), /*#__PURE__*/React__default["default"].createElement("main", null, events.map(function (event) {
|
@@ -3321,6 +3376,10 @@ var DayCell = function DayCell(props) {
|
|
3321
3376
|
}, children);
|
3322
3377
|
})));
|
3323
3378
|
};
|
3379
|
+
|
3380
|
+
/**
|
3381
|
+
* Event
|
3382
|
+
*/
|
3324
3383
|
var Event = function Event(props) {
|
3325
3384
|
var event = props.event,
|
3326
3385
|
children = props.children;
|
@@ -3338,6 +3397,129 @@ var Event = function Event(props) {
|
|
3338
3397
|
}
|
3339
3398
|
};
|
3340
3399
|
|
3400
|
+
/**
|
3401
|
+
* YearCalendar
|
3402
|
+
*/
|
3403
|
+
var YearCalendar = function YearCalendar(props) {
|
3404
|
+
var _props$events3 = props.events,
|
3405
|
+
events = _props$events3 === void 0 ? [] : _props$events3,
|
3406
|
+
children = props.children,
|
3407
|
+
onChange = props.onChange;
|
3408
|
+
var _useState3 = React.useState(),
|
3409
|
+
position = _useState3[0],
|
3410
|
+
setPosition = _useState3[1];
|
3411
|
+
React.useEffect(function () {
|
3412
|
+
var today = moment();
|
3413
|
+
setPosition(today);
|
3414
|
+
}, []);
|
3415
|
+
React.useEffect(function () {
|
3416
|
+
if (position && onChange) {
|
3417
|
+
var _firstDayOfYear = position.clone().startOf('year');
|
3418
|
+
var firstDayOfRange = _firstDayOfYear.clone().startOf('isoweek');
|
3419
|
+
var _lastDayOfYear = position.clone().endOf('year');
|
3420
|
+
var lastDayOfRange = _lastDayOfYear.clone().endOf('isoweek');
|
3421
|
+
var range = moment.range(firstDayOfRange, lastDayOfRange);
|
3422
|
+
onChange(position, range);
|
3423
|
+
}
|
3424
|
+
}, [position]);
|
3425
|
+
function next() {
|
3426
|
+
var next = position.clone().add(1, 'year');
|
3427
|
+
setPosition(next);
|
3428
|
+
}
|
3429
|
+
function prev() {
|
3430
|
+
var prev = position.clone().subtract(1, 'year');
|
3431
|
+
setPosition(prev);
|
3432
|
+
}
|
3433
|
+
function today() {
|
3434
|
+
var today = moment();
|
3435
|
+
setPosition(today);
|
3436
|
+
}
|
3437
|
+
if (!position) return "...";
|
3438
|
+
var year = position.format("YYYY");
|
3439
|
+
var firstDayOfYear = moment(position).startOf('year');
|
3440
|
+
var lastDayOfYear = moment(position).endOf('year');
|
3441
|
+
var months = [];
|
3442
|
+
for (var currentMonth = moment(firstDayOfYear); currentMonth.isBefore(lastDayOfYear); currentMonth.add(1, 'month')) {
|
3443
|
+
months.push(moment(currentMonth));
|
3444
|
+
}
|
3445
|
+
var cells = months.map(function (month) {
|
3446
|
+
var firstDayOfMonth = month.clone().startOf('month');
|
3447
|
+
var firstDayOfRange = firstDayOfMonth.clone().startOf('isoweek');
|
3448
|
+
var lastDayOfMonth = month.clone().endOf('month');
|
3449
|
+
var lastDayOfRange = lastDayOfMonth.clone().endOf('isoweek');
|
3450
|
+
var range = moment.range(firstDayOfRange, lastDayOfRange);
|
3451
|
+
var days = Array.from(range.by('days'));
|
3452
|
+
var cells = days.map(function (day) {
|
3453
|
+
var eventsOfDay = events.filter(function (event) {
|
3454
|
+
var eventDay = moment(event.date);
|
3455
|
+
return eventDay.isSame(day, 'day');
|
3456
|
+
});
|
3457
|
+
var sameMonthStyle = day.isSame(moment(month), 'month') ? '' : 'other-month';
|
3458
|
+
return {
|
3459
|
+
day: day,
|
3460
|
+
events: eventsOfDay,
|
3461
|
+
sameMonthStyle: sameMonthStyle
|
3462
|
+
};
|
3463
|
+
});
|
3464
|
+
return {
|
3465
|
+
month: month,
|
3466
|
+
cells: cells
|
3467
|
+
};
|
3468
|
+
});
|
3469
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3470
|
+
className: "year-calendar"
|
3471
|
+
}, /*#__PURE__*/React__default["default"].createElement("nav", null, /*#__PURE__*/React__default["default"].createElement("label", null, " ", /*#__PURE__*/React__default["default"].createElement(Text, null, year)), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3472
|
+
icon: "chevron_left",
|
3473
|
+
action: prev
|
3474
|
+
}), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3475
|
+
label: "Today",
|
3476
|
+
outlined: true,
|
3477
|
+
action: today
|
3478
|
+
}), /*#__PURE__*/React__default["default"].createElement(Button, {
|
3479
|
+
icon: "chevron_right",
|
3480
|
+
action: next
|
3481
|
+
})), /*#__PURE__*/React__default["default"].createElement("main", null, cells.map(function (cell) {
|
3482
|
+
return /*#__PURE__*/React__default["default"].createElement(MonthCell, {
|
3483
|
+
key: cell.month,
|
3484
|
+
cell: cell
|
3485
|
+
}, children);
|
3486
|
+
})));
|
3487
|
+
};
|
3488
|
+
|
3489
|
+
/**
|
3490
|
+
* MonthCell
|
3491
|
+
*/
|
3492
|
+
var MonthCell = function MonthCell(props) {
|
3493
|
+
var _props$cell2 = props.cell,
|
3494
|
+
cell = _props$cell2 === void 0 ? [] : _props$cell2,
|
3495
|
+
children = props.children;
|
3496
|
+
var month = cell.month,
|
3497
|
+
cells = cell.cells;
|
3498
|
+
var monthName = month.format("MMMM");
|
3499
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
3500
|
+
className: "month-cell"
|
3501
|
+
}, /*#__PURE__*/React__default["default"].createElement("nav", null, monthName), /*#__PURE__*/React__default["default"].createElement("header", null, /*#__PURE__*/React__default["default"].createElement("div", {
|
3502
|
+
className: "week-day-cell"
|
3503
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Mon")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3504
|
+
className: "week-day-cell"
|
3505
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Tue")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3506
|
+
className: "week-day-cell"
|
3507
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Wed")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3508
|
+
className: "week-day-cell"
|
3509
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Thu")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3510
|
+
className: "week-day-cell"
|
3511
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Fri")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3512
|
+
className: "week-day-cell"
|
3513
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Sat")), /*#__PURE__*/React__default["default"].createElement("div", {
|
3514
|
+
className: "week-day-cell"
|
3515
|
+
}, /*#__PURE__*/React__default["default"].createElement(Text, null, "Sun"))), /*#__PURE__*/React__default["default"].createElement("main", null, cells.map(function (cell) {
|
3516
|
+
return /*#__PURE__*/React__default["default"].createElement(DayCell, {
|
3517
|
+
key: cell.day,
|
3518
|
+
cell: cell
|
3519
|
+
}, children);
|
3520
|
+
})));
|
3521
|
+
};
|
3522
|
+
|
3341
3523
|
var ranges = momentRange.extendMoment(moment__default["default"]);
|
3342
3524
|
var DATE_RANGE = [{
|
3343
3525
|
label: "Week",
|
@@ -11375,6 +11557,7 @@ exports.Menu = Menu;
|
|
11375
11557
|
exports.MenuIcon = MenuIcon;
|
11376
11558
|
exports.MenuItem = MenuItem;
|
11377
11559
|
exports.MenuSeparator = MenuSeparator;
|
11560
|
+
exports.MonthCalendar = MonthCalendar;
|
11378
11561
|
exports.MultiSelector = MultiSelector;
|
11379
11562
|
exports.Page = Page;
|
11380
11563
|
exports.PageContext = PageContext;
|