beesoft-components 0.2.10 → 0.2.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -23,6 +23,7 @@ This is the main component in the library currently; it has the ability to selec
23
23
  | **label** | `string` | Sets the label for the component. |
24
24
  | **useDefaultDateValue** | `boolean` | If set to true then the current date will be populated in the selection box. |
25
25
  | **locale** | `string` | Allows the locale settings to be overridden, if this is not set then the users locale settings will be used. |
26
+ | **className** | `string` | Allows css modifications to be made to the default input box of the component. |
26
27
  | **dateSelection** | `DateSelectionType` | Allows the component to be set in 4 modes DateTime, Date Only, Time Only and Date Range (`default Date/Time`). |
27
28
  | **dateFormat** | `DateFormatType` | Allows for the date to be formatted in short, medium or long formats. |
28
29
  | **timeConstraints** | `TimeConstraints` | Allows the time selection component to determine how the increment/decrement the values (currently only minute works). |
@@ -2717,6 +2717,62 @@ FontAwesomeIcon.defaultProps = {
2717
2717
  };
2718
2718
  var convertCurry = convert.bind(null, React__default['default'].createElement);
2719
2719
 
2720
+ /*!
2721
+ Copyright (c) 2018 Jed Watson.
2722
+ Licensed under the MIT License (MIT), see
2723
+ http://jedwatson.github.io/classnames
2724
+ */
2725
+
2726
+ var classnames = createCommonjsModule(function (module) {
2727
+ /* global define */
2728
+
2729
+ (function () {
2730
+
2731
+ var hasOwn = {}.hasOwnProperty;
2732
+
2733
+ function classNames() {
2734
+ var classes = [];
2735
+
2736
+ for (var i = 0; i < arguments.length; i++) {
2737
+ var arg = arguments[i];
2738
+ if (!arg) continue;
2739
+
2740
+ var argType = typeof arg;
2741
+
2742
+ if (argType === 'string' || argType === 'number') {
2743
+ classes.push(arg);
2744
+ } else if (Array.isArray(arg)) {
2745
+ if (arg.length) {
2746
+ var inner = classNames.apply(null, arg);
2747
+ if (inner) {
2748
+ classes.push(inner);
2749
+ }
2750
+ }
2751
+ } else if (argType === 'object') {
2752
+ if (arg.toString === Object.prototype.toString) {
2753
+ for (var key in arg) {
2754
+ if (hasOwn.call(arg, key) && arg[key]) {
2755
+ classes.push(key);
2756
+ }
2757
+ }
2758
+ } else {
2759
+ classes.push(arg.toString());
2760
+ }
2761
+ }
2762
+ }
2763
+
2764
+ return classes.join(' ');
2765
+ }
2766
+
2767
+ if (module.exports) {
2768
+ classNames.default = classNames;
2769
+ module.exports = classNames;
2770
+ } else {
2771
+ window.classNames = classNames;
2772
+ }
2773
+ }());
2774
+ });
2775
+
2720
2776
  function toInteger(dirtyNumber) {
2721
2777
  if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
2722
2778
  return NaN;
@@ -3033,6 +3089,38 @@ function isSameDay(dirtyDateLeft, dirtyDateRight) {
3033
3089
  return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime();
3034
3090
  }
3035
3091
 
3092
+ /**
3093
+ * @name endOfMonth
3094
+ * @category Month Helpers
3095
+ * @summary Return the end of a month for the given date.
3096
+ *
3097
+ * @description
3098
+ * Return the end of a month for the given date.
3099
+ * The result will be in the local timezone.
3100
+ *
3101
+ * ### v2.0.0 breaking changes:
3102
+ *
3103
+ * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
3104
+ *
3105
+ * @param {Date|Number} date - the original date
3106
+ * @returns {Date} the end of a month
3107
+ * @throws {TypeError} 1 argument required
3108
+ *
3109
+ * @example
3110
+ * // The end of a month for 2 September 2014 11:55:00:
3111
+ * const result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0))
3112
+ * //=> Tue Sep 30 2014 23:59:59.999
3113
+ */
3114
+
3115
+ function endOfMonth(dirtyDate) {
3116
+ requiredArgs(1, arguments);
3117
+ var date = toDate(dirtyDate);
3118
+ var month = date.getMonth();
3119
+ date.setFullYear(date.getFullYear(), month + 1, 0);
3120
+ date.setHours(23, 59, 59, 999);
3121
+ return date;
3122
+ }
3123
+
3036
3124
  /**
3037
3125
  * @name eachDayOfInterval
3038
3126
  * @category Interval Helpers
@@ -4164,6 +4252,36 @@ function subMonths(dirtyDate, dirtyAmount) {
4164
4252
  return addMonths(dirtyDate, -amount);
4165
4253
  }
4166
4254
 
4255
+ /**
4256
+ * @name isBefore
4257
+ * @category Common Helpers
4258
+ * @summary Is the first date before the second one?
4259
+ *
4260
+ * @description
4261
+ * Is the first date before the second one?
4262
+ *
4263
+ * ### v2.0.0 breaking changes:
4264
+ *
4265
+ * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
4266
+ *
4267
+ * @param {Date|Number} date - the date that should be before the other one to return true
4268
+ * @param {Date|Number} dateToCompare - the date to compare with
4269
+ * @returns {Boolean} the first date is before the second date
4270
+ * @throws {TypeError} 2 arguments required
4271
+ *
4272
+ * @example
4273
+ * // Is 10 July 1989 before 11 February 1987?
4274
+ * var result = isBefore(new Date(1989, 6, 10), new Date(1987, 1, 11))
4275
+ * //=> false
4276
+ */
4277
+
4278
+ function isBefore(dirtyDate, dirtyDateToCompare) {
4279
+ requiredArgs(2, arguments);
4280
+ var date = toDate(dirtyDate);
4281
+ var dateToCompare = toDate(dirtyDateToCompare);
4282
+ return date.getTime() < dateToCompare.getTime();
4283
+ }
4284
+
4167
4285
  // See issue: https://github.com/date-fns/date-fns/issues/376
4168
4286
 
4169
4287
  function setUTCDay(dirtyDate, dirtyDay, dirtyOptions) {
@@ -7650,62 +7768,6 @@ function OverlayPanel(_a) {
7650
7768
  return ReactDOM__default['default'].createPortal(createElement(), appendTo);
7651
7769
  }
7652
7770
 
7653
- /*!
7654
- Copyright (c) 2018 Jed Watson.
7655
- Licensed under the MIT License (MIT), see
7656
- http://jedwatson.github.io/classnames
7657
- */
7658
-
7659
- var classnames = createCommonjsModule(function (module) {
7660
- /* global define */
7661
-
7662
- (function () {
7663
-
7664
- var hasOwn = {}.hasOwnProperty;
7665
-
7666
- function classNames() {
7667
- var classes = [];
7668
-
7669
- for (var i = 0; i < arguments.length; i++) {
7670
- var arg = arguments[i];
7671
- if (!arg) continue;
7672
-
7673
- var argType = typeof arg;
7674
-
7675
- if (argType === 'string' || argType === 'number') {
7676
- classes.push(arg);
7677
- } else if (Array.isArray(arg)) {
7678
- if (arg.length) {
7679
- var inner = classNames.apply(null, arg);
7680
- if (inner) {
7681
- classes.push(inner);
7682
- }
7683
- }
7684
- } else if (argType === 'object') {
7685
- if (arg.toString === Object.prototype.toString) {
7686
- for (var key in arg) {
7687
- if (hasOwn.call(arg, key) && arg[key]) {
7688
- classes.push(key);
7689
- }
7690
- }
7691
- } else {
7692
- classes.push(arg.toString());
7693
- }
7694
- }
7695
- }
7696
-
7697
- return classes.join(' ');
7698
- }
7699
-
7700
- if (module.exports) {
7701
- classNames.default = classNames;
7702
- module.exports = classNames;
7703
- } else {
7704
- window.classNames = classNames;
7705
- }
7706
- }());
7707
- });
7708
-
7709
7771
  /**
7710
7772
  * Checks if `value` is the
7711
7773
  * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
@@ -8217,7 +8279,7 @@ function debounce(func, wait, options) {
8217
8279
  var debounce_1 = debounce;
8218
8280
 
8219
8281
  function ContentEditableInput(props, ref) {
8220
- var value = props.value, _a = props.readOnly, readOnly = _a === void 0 ? false : _a, _b = props.debounceTime, debounceTime = _b === void 0 ? 500 : _b, _c = props.fillContainer, fillContainer = _c === void 0 ? true : _c, leftElement = props.leftElement, rightElement = props.rightElement, className = props.className, leftElementClassName = props.leftElementClassName, rightElementClassName = props.rightElementClassName, onFocus = props.onFocus, onInput = props.onInput, onElementCreate = props.onElementCreate, onLeftElementClick = props.onLeftElementClick, onRightElementClick = props.onRightElementClick;
8282
+ var value = props.value, _a = props.readOnly, readOnly = _a === void 0 ? false : _a, _b = props.debounceTime, debounceTime = _b === void 0 ? 500 : _b, _c = props.fillContainer, fillContainer = _c === void 0 ? true : _c, leftElement = props.leftElement, rightElement = props.rightElement, className = props.className, leftElementClassName = props.leftElementClassName, rightElementClassName = props.rightElementClassName, _d = props.isSingleLine, isSingleLine = _d === void 0 ? false : _d, _e = props.allowSingleLineScroll, allowSingleLineScroll = _e === void 0 ? false : _e, onFocus = props.onFocus, onInput = props.onInput, onElementCreate = props.onElementCreate, onLeftElementClick = props.onLeftElementClick, onRightElementClick = props.onRightElementClick;
8221
8283
  var inputRef = React.useRef(null);
8222
8284
  var onLeftElementClicked = function (event) {
8223
8285
  if (onLeftElementClick) {
@@ -8240,8 +8302,13 @@ function ContentEditableInput(props, ref) {
8240
8302
  }
8241
8303
  }, debounceTime);
8242
8304
  var onElementCreated = function (element) {
8243
- if (element && onElementCreate) {
8244
- onElementCreate(element);
8305
+ if (element) {
8306
+ if (onElementCreate) {
8307
+ onElementCreate(element);
8308
+ }
8309
+ if (element.offsetWidth < element.scrollWidth && value) {
8310
+ element.setAttribute('title', value);
8311
+ }
8245
8312
  }
8246
8313
  };
8247
8314
  var focus = function () {
@@ -8251,7 +8318,10 @@ function ContentEditableInput(props, ref) {
8251
8318
  React.useImperativeHandle(ref, function () { return ({
8252
8319
  focus: focus,
8253
8320
  }); });
8254
- var classNames = classnames({ 'bsc-w-full ': fillContainer }, 'bsc-flex bsc-flex-row bsc-shadow-sm bsc-border bsc-border-solid bsc-border-gray-300 dark:bsc-border-white dark:bsc-bg-gray-900 dark:bsc-text-white bsc-rounded-md bsc-p-2', className);
8321
+ var classNames = classnames({ 'bsc-w-full ': fillContainer }, 'bsc-flex bsc-flex-row bsc-shadow-sm bsc-border bsc-border-solid bsc-border-gray-300 dark:bsc-border-white dark:bsc-bg-gray-900 dark:bsc-text-white bsc-rounded-md bsc-p-2', {
8322
+ 'bsc-overflow-x-auto bsc-overflow-y-hidden bsc-whitespace-pre': isSingleLine && allowSingleLineScroll,
8323
+ 'bsc-overflow-hidden bsc-whitespace-pre': isSingleLine && !allowSingleLineScroll,
8324
+ }, className);
8255
8325
  var leftElementClasses = classnames('bsc-flex-shrink', { 'bsc-mr-2': leftElement }, leftElementClassName);
8256
8326
  var rightElementClasses = classnames('bsc-flex-shrink', { 'bsc-ml-2': rightElement }, rightElementClassName);
8257
8327
  return (jsxRuntime.jsxs("div", __assign({ className: classNames, ref: function (element) { return onElementCreated(element); } }, { children: [jsxRuntime.jsx("div", __assign({ className: leftElementClasses, onClick: onLeftElementClicked }, { children: leftElement }), void 0),
@@ -8415,6 +8485,9 @@ function getDefaultTime(locale) {
8415
8485
  tempDate.setHours(0, 0, 0, 0);
8416
8486
  return tempDate.toLocaleTimeString(locale.code);
8417
8487
  }
8488
+ function isDateBetween(checkDate, startComparisonDate, endComparisonDate) {
8489
+ return checkDate.getTime() >= startComparisonDate.getTime() && checkDate.getTime() <= endComparisonDate.getTime();
8490
+ }
8418
8491
  function loadLocale(localeToLoad) {
8419
8492
  return new Promise(function (resolve, reject) {
8420
8493
  Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require("date-fns/locale/" + localeToLoad)); })
@@ -8474,15 +8547,19 @@ var DateTimeActionType;
8474
8547
  DateTimeActionType[DateTimeActionType["MonthSelector"] = 1] = "MonthSelector";
8475
8548
  DateTimeActionType[DateTimeActionType["YearSelector"] = 2] = "YearSelector";
8476
8549
  DateTimeActionType[DateTimeActionType["TimeSelector"] = 3] = "TimeSelector";
8477
- DateTimeActionType[DateTimeActionType["SetViewDate"] = 4] = "SetViewDate";
8478
- DateTimeActionType[DateTimeActionType["SetSelectedDate"] = 5] = "SetSelectedDate";
8479
- DateTimeActionType[DateTimeActionType["SetSelectedDateRange"] = 6] = "SetSelectedDateRange";
8480
- DateTimeActionType[DateTimeActionType["ResetSelectedDateChanged"] = 7] = "ResetSelectedDateChanged";
8481
- DateTimeActionType[DateTimeActionType["ResetSelectedDateRangeChanged"] = 8] = "ResetSelectedDateRangeChanged";
8482
- DateTimeActionType[DateTimeActionType["InitializeDates"] = 9] = "InitializeDates";
8550
+ DateTimeActionType[DateTimeActionType["DateRangeSelector"] = 4] = "DateRangeSelector";
8551
+ DateTimeActionType[DateTimeActionType["SetViewDate"] = 5] = "SetViewDate";
8552
+ DateTimeActionType[DateTimeActionType["SetSelectedDate"] = 6] = "SetSelectedDate";
8553
+ DateTimeActionType[DateTimeActionType["SetSelectedDateRange"] = 7] = "SetSelectedDateRange";
8554
+ DateTimeActionType[DateTimeActionType["SetSelectedStartDate"] = 8] = "SetSelectedStartDate";
8555
+ DateTimeActionType[DateTimeActionType["SetSelectedEndDate"] = 9] = "SetSelectedEndDate";
8556
+ DateTimeActionType[DateTimeActionType["ResetSelectedDateChanged"] = 10] = "ResetSelectedDateChanged";
8557
+ DateTimeActionType[DateTimeActionType["ResetSelectedDateRangeChanged"] = 11] = "ResetSelectedDateRangeChanged";
8558
+ DateTimeActionType[DateTimeActionType["ClearDates"] = 12] = "ClearDates";
8559
+ DateTimeActionType[DateTimeActionType["InitializeDates"] = 13] = "InitializeDates";
8483
8560
  })(DateTimeActionType || (DateTimeActionType = {}));
8484
8561
  var reducer = function (state, action) {
8485
- var _a, _b, _c, _d, _e, _f;
8562
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
8486
8563
  switch (action.type) {
8487
8564
  case DateTimeActionType.DaySelector:
8488
8565
  return __assign(__assign({}, state), { currentSelector: DateTimeActionType.DaySelector, currentViewDate: action.viewDate || state.currentViewDate });
@@ -8492,17 +8569,36 @@ var reducer = function (state, action) {
8492
8569
  return __assign(__assign({}, state), { currentSelector: DateTimeActionType.YearSelector });
8493
8570
  case DateTimeActionType.TimeSelector:
8494
8571
  return __assign(__assign({}, state), { currentSelector: DateTimeActionType.TimeSelector });
8572
+ case DateTimeActionType.DateRangeSelector:
8573
+ return __assign(__assign({}, state), { currentSelector: DateTimeActionType.DateRangeSelector, currentViewDate: action.viewDate || state.currentViewDate });
8495
8574
  case DateTimeActionType.SetViewDate:
8496
8575
  return __assign(__assign({}, state), { currentViewDate: action.viewDate || new Date(), dateInitialized: true });
8497
8576
  case DateTimeActionType.SetSelectedDate:
8498
- return __assign(__assign({}, state), { selectedDate: action.selectedDate || state.selectedDate, selectedDateChanged: ((_a = state.originalSetDate) === null || _a === void 0 ? void 0 : _a.getTime()) !== ((_b = action.selectedDate) === null || _b === void 0 ? void 0 : _b.getTime()) });
8577
+ return __assign(__assign({}, state), { selectedDate: action.selectedDate || state.selectedDate, selectedDateChanged: !state.selectedDateChanged
8578
+ ? ((_a = state.originalSetDate) === null || _a === void 0 ? void 0 : _a.getTime()) !== ((_b = action.selectedDate) === null || _b === void 0 ? void 0 : _b.getTime())
8579
+ : true });
8499
8580
  case DateTimeActionType.SetSelectedDateRange:
8500
8581
  return __assign(__assign({}, state), { selectedStartDate: action.selectedStartDate || state.selectedStartDate, selectedEndDate: action.selectedEndDate || state.selectedEndDate, selectedDateChanged: ((_c = state.originalSetStartDate) === null || _c === void 0 ? void 0 : _c.getTime()) !== ((_d = action.selectedStartDate) === null || _d === void 0 ? void 0 : _d.getTime()) ||
8501
8582
  ((_e = state.originalSetEndDate) === null || _e === void 0 ? void 0 : _e.getTime()) !== ((_f = action.selectedEndDate) === null || _f === void 0 ? void 0 : _f.getTime()) });
8583
+ case DateTimeActionType.SetSelectedStartDate:
8584
+ return __assign(__assign({}, state), { selectedStartDate: action.selectedStartDate, selectedEndDate: undefined, selectedDateChanged: !state.selectedDateChanged
8585
+ ? ((_g = state.originalSetStartDate) === null || _g === void 0 ? void 0 : _g.getTime()) !== ((_h = action.selectedStartDate) === null || _h === void 0 ? void 0 : _h.getTime())
8586
+ : true });
8587
+ case DateTimeActionType.SetSelectedEndDate:
8588
+ return __assign(__assign({}, state), { selectedEndDate: action.selectedEndDate, selectedDateChanged: !state.selectedDateChanged
8589
+ ? ((_j = state.originalSetEndDate) === null || _j === void 0 ? void 0 : _j.getTime()) !== ((_k = action.selectedEndDate) === null || _k === void 0 ? void 0 : _k.getTime())
8590
+ : true });
8502
8591
  case DateTimeActionType.ResetSelectedDateChanged:
8503
8592
  return __assign(__assign({}, state), { originalSetDate: action.selectedDate || state.selectedDate, selectedDateChanged: false });
8504
8593
  case DateTimeActionType.ResetSelectedDateRangeChanged:
8505
8594
  return __assign(__assign({}, state), { originalSetStartDate: action.selectedStartDate || state.selectedStartDate, originalSetEndDate: action.selectedEndDate || state.selectedEndDate, selectedDateChanged: false });
8595
+ case DateTimeActionType.ClearDates:
8596
+ return {
8597
+ currentSelector: state.currentSelector,
8598
+ currentViewDate: state.currentViewDate,
8599
+ selectedDateChanged: false,
8600
+ dateInitialized: true,
8601
+ };
8506
8602
  case DateTimeActionType.InitializeDates:
8507
8603
  var baseState = __assign(__assign({}, state), { currentViewDate: getInitialDate(action.initialDate), dateInitialized: true });
8508
8604
  if (!Array.isArray(action.initialDate)) {
@@ -8527,10 +8623,10 @@ function DateTimeCalendar(_a) {
8527
8623
  var _e = React.useState(false), isLocaleLoaded = _e[0], setIsLocaleLoaded = _e[1];
8528
8624
  var loadedLocale = React.useRef();
8529
8625
  var weekDaysRef = React.useRef();
8530
- var selectedDateRef = React.useRef();
8531
- var _f = React.useState(), selectedStartComparison = _f[0], setSelectedStartComparison = _f[1];
8532
- var _g = React.useState(), selectedEndComparison = _g[0], setSelectedEndComparison = _g[1];
8533
- var isShiftDown = useKeyDown(['Meta', 'Control']);
8626
+ var _f = React.useState(), currentSelectedDate = _f[0], setCurrentSelectedDate = _f[1];
8627
+ var _g = React.useState(), selectedStartComparison = _g[0], setSelectedStartComparison = _g[1];
8628
+ var _h = React.useState(), selectedEndComparison = _h[0], setSelectedEndComparison = _h[1];
8629
+ useKeyDown(['Meta', 'Control']);
8534
8630
  var context = React.useContext(DateTimeContext);
8535
8631
  var viewTemplate = context.calendarTemplate;
8536
8632
  var loadLocaleObject = function () { return __awaiter(_this, void 0, void 0, function () {
@@ -8564,14 +8660,25 @@ function DateTimeCalendar(_a) {
8564
8660
  }, [viewDate, isLocaleLoaded]);
8565
8661
  React.useEffect(function () {
8566
8662
  if (selectedDate) {
8567
- selectedDateRef.current = new Date(selectedDate.getFullYear(), selectedDate.getMonth(), selectedDate.getDate());
8663
+ setCurrentSelectedDate(new Date(selectedDate.getFullYear(), selectedDate.getMonth(), selectedDate.getDate()));
8664
+ }
8665
+ else {
8666
+ setCurrentSelectedDate(undefined);
8568
8667
  }
8569
8668
  }, [selectedDate]);
8570
8669
  React.useEffect(function () {
8571
- if (selectedStartDate && selectedEndDate) {
8572
- setSelectedStartComparison(new Date(selectedStartDate.getFullYear(), selectedStartDate.getMonth(), selectedStartDate.getDate()).getTime());
8670
+ if (selectedStartDate) {
8671
+ setSelectedStartComparison(new Date(selectedStartDate.getFullYear(), selectedStartDate.getMonth(), selectedStartDate.getDate(), 0, 0, 0).getTime());
8672
+ }
8673
+ else {
8674
+ setSelectedStartComparison(undefined);
8675
+ }
8676
+ if (selectedEndDate) {
8573
8677
  setSelectedEndComparison(new Date(selectedEndDate.getFullYear(), selectedEndDate.getMonth(), selectedEndDate.getDate(), 23, 59, 59).getTime());
8574
8678
  }
8679
+ else {
8680
+ setSelectedEndComparison(undefined);
8681
+ }
8575
8682
  }, [selectedStartDate, selectedEndDate]);
8576
8683
  React.useEffect(function () {
8577
8684
  if (loadedLocale.current && locale) {
@@ -8598,17 +8705,19 @@ function DateTimeCalendar(_a) {
8598
8705
  else {
8599
8706
  if (!onDateSelected)
8600
8707
  throw new Error('Range selection mode requires onDateSelected to be set');
8601
- if (!selectedStartDate || (selectedStartDate && !isShiftDown)) {
8708
+ if (!selectedStartDate || isBefore(date, selectedStartDate)) {
8602
8709
  onDateSelected(date);
8603
8710
  }
8604
- else if (selectedStartDate && isShiftDown) {
8711
+ else if (selectedStartDate && !selectedEndDate) {
8605
8712
  onDateSelected(date, { setEndDate: true });
8606
8713
  }
8714
+ else if (selectedStartDate && selectedEndDate) {
8715
+ onDateSelected(date);
8716
+ }
8607
8717
  }
8608
8718
  };
8609
8719
  var isSelectedDate = function (currentDate) {
8610
- var _a;
8611
- return ((_a = selectedDateRef.current) === null || _a === void 0 ? void 0 : _a.toLocaleDateString()) === currentDate.toLocaleDateString();
8720
+ return (currentSelectedDate === null || currentSelectedDate === void 0 ? void 0 : currentSelectedDate.toLocaleDateString()) === currentDate.toLocaleDateString();
8612
8721
  };
8613
8722
  var isInSelectedDateRange = function (currentDate) {
8614
8723
  if (selectedStartComparison && selectedEndComparison) {
@@ -8645,7 +8754,10 @@ function DateTimeCalendar(_a) {
8645
8754
  },
8646
8755
  _a[(context.colors.selectedDateColor || 'bsc-bg-blue-100') + " dark:bsc-bg-white dark:bsc-text-black bsc-rounded-full"] = column &&
8647
8756
  column.dayValue &&
8648
- ((selectedDateRef.current && isSelectedDate(column.dayValue)) ||
8757
+ ((currentSelectedDate && isSelectedDate(column.dayValue)) ||
8758
+ (selectedStartComparison &&
8759
+ !selectedEndComparison &&
8760
+ isSameDay(selectedStartComparison, column.dayValue)) ||
8649
8761
  (selectedStartComparison && selectedEndComparison && isInSelectedDateRange(column.dayValue))),
8650
8762
  _a['bsc-cursor-pointer'] = isSelectable,
8651
8763
  _a['bsc-text-red-300 bsc-cursor-not-allowed'] = !isSelectable,
@@ -8767,14 +8879,13 @@ function DateTimeRangeSelector(_a) {
8767
8879
  var onDateSelected = function (date, options) {
8768
8880
  if (!options || !options.setEndDate) {
8769
8881
  dispatcher({
8770
- type: DateTimeActionType.SetSelectedDateRange,
8882
+ type: DateTimeActionType.SetSelectedStartDate,
8771
8883
  selectedStartDate: date,
8772
- selectedEndDate: date,
8773
8884
  });
8774
8885
  }
8775
8886
  else {
8776
8887
  dispatcher({
8777
- type: DateTimeActionType.SetSelectedDateRange,
8888
+ type: DateTimeActionType.SetSelectedEndDate,
8778
8889
  selectedEndDate: date,
8779
8890
  });
8780
8891
  }
@@ -8916,9 +9027,10 @@ function DateTimeYearSelector(_a) {
8916
9027
  }
8917
9028
 
8918
9029
  function DateTime(_a) {
8919
- var value = _a.value, _b = _a.readOnly, readOnly = _b === void 0 ? false : _b, label = _a.label, _c = _a.useDefaultDateValue, useDefaultDateValue = _c === void 0 ? false : _c, locale = _a.locale, _d = _a.dateSelection, dateSelection = _d === void 0 ? DateSelectionType.DateTime : _d, dateFormat = _a.dateFormat, timeConstraints = _a.timeConstraints, icon = _a.icon, _e = _a.iconPosition, iconPosition = _e === void 0 ? CalendarIconPosition.Right : _e, inputElement = _a.inputElement, _f = _a.colors, colors = _f === void 0 ? createDefaultColors() : _f, selectableDate = _a.selectableDate, isValidDate = _a.isValidDate, onChange = _a.onChange, calendarTemplate = _a.calendarTemplate, dateScrollerTemplate = _a.dateScrollerTemplate, inputTemplate = _a.inputTemplate;
8920
- var _g = React.useState(false), selectorOpen = _g[0], setSelectorOpen = _g[1];
8921
- var _h = React.useState(), dropDownTarget = _h[0], setDropDownTarget = _h[1];
9030
+ var _b;
9031
+ var value = _a.value, _c = _a.readOnly, readOnly = _c === void 0 ? false : _c, label = _a.label, _d = _a.useDefaultDateValue, useDefaultDateValue = _d === void 0 ? false : _d, locale = _a.locale, className = _a.className, _e = _a.dateSelection, dateSelection = _e === void 0 ? DateSelectionType.DateTime : _e, dateFormat = _a.dateFormat, timeConstraints = _a.timeConstraints, icon = _a.icon, _f = _a.iconPosition, iconPosition = _f === void 0 ? CalendarIconPosition.Right : _f, inputElement = _a.inputElement, _g = _a.colors, colors = _g === void 0 ? createDefaultColors() : _g, selectableDate = _a.selectableDate, isValidDate = _a.isValidDate, onChange = _a.onChange, calendarTemplate = _a.calendarTemplate, dateScrollerTemplate = _a.dateScrollerTemplate, inputTemplate = _a.inputTemplate;
9032
+ var _h = React.useState(false), selectorOpen = _h[0], setSelectorOpen = _h[1];
9033
+ var _j = React.useState(), dropDownTarget = _j[0], setDropDownTarget = _j[1];
8922
9034
  var language = React.useRef(locale || getBrowserLanguage());
8923
9035
  var loadedLocale = React.useRef();
8924
9036
  var inputElementRef = React.useRef();
@@ -9019,21 +9131,42 @@ function DateTime(_a) {
9019
9131
  selectedDateChanged: false,
9020
9132
  dateInitialized: false,
9021
9133
  };
9022
- var _j = React.useReducer(reducer, initialState), state = _j[0], dispatcher = _j[1];
9134
+ var _k = React.useReducer(reducer, initialState), state = _k[0], dispatcher = _k[1];
9023
9135
  var onFocus = function (event) {
9024
9136
  setDropDownElement();
9025
9137
  setSelectorOpen(true);
9026
9138
  };
9027
9139
  var onInput = function (event) {
9028
- var inputDate = parseDate(event.target.innerText);
9140
+ var dateString = event.target.innerText;
9141
+ var inputDate = dateSelection !== DateSelectionType.DateRange ? parseDate(dateString) : parseDateRange(dateString);
9029
9142
  if (inputDate) {
9143
+ if (!Array.isArray(inputDate)) {
9144
+ dispatcher({
9145
+ type: DateTimeActionType.SetViewDate,
9146
+ viewDate: inputDate,
9147
+ });
9148
+ dispatcher({
9149
+ type: DateTimeActionType.SetSelectedDate,
9150
+ selectedDate: inputDate,
9151
+ });
9152
+ }
9153
+ else {
9154
+ if (!isDateBetween(inputDate[0], startOfMonth(state.currentViewDate), endOfMonth(addMonths(state.currentViewDate, 1)))) {
9155
+ dispatcher({
9156
+ type: DateTimeActionType.SetViewDate,
9157
+ viewDate: inputDate[0],
9158
+ });
9159
+ }
9160
+ dispatcher({
9161
+ type: DateTimeActionType.SetSelectedDateRange,
9162
+ selectedStartDate: inputDate[0],
9163
+ selectedEndDate: inputDate[1],
9164
+ });
9165
+ }
9166
+ }
9167
+ else if (dateString === '') {
9030
9168
  dispatcher({
9031
- type: DateTimeActionType.SetViewDate,
9032
- viewDate: inputDate,
9033
- });
9034
- dispatcher({
9035
- type: DateTimeActionType.SetSelectedDate,
9036
- selectedDate: inputDate,
9169
+ type: DateTimeActionType.ClearDates,
9037
9170
  });
9038
9171
  }
9039
9172
  };
@@ -9160,8 +9293,12 @@ function DateTime(_a) {
9160
9293
  };
9161
9294
  var defaultTemplate = function (props, children) { return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: children }, void 0)); };
9162
9295
  var template = inputTemplate || defaultTemplate;
9296
+ var inputStyles = classnames('bsc-text-left', (_b = {},
9297
+ _b["" + ((colors === null || colors === void 0 ? void 0 : colors.readOnlyInputBgColor) || 'bsc-bg-gray-200')] = readOnly,
9298
+ _b["" + ((colors === null || colors === void 0 ? void 0 : colors.inputBgColor) || 'bsc-bg-white')] = !readOnly,
9299
+ _b), "dark:bsc-bg-black " + (colors === null || colors === void 0 ? void 0 : colors.inputBorderColor) + " bc-dt-input", className);
9163
9300
  return (jsxRuntime.jsx(DateTimeContext.Provider, __assign({ value: contextProps }, { children: jsxRuntime.jsxs("div", __assign({ className: "bc-date-time" }, { children: [jsxRuntime.jsxs(TemplateOutlet, __assign({ props: inputTemplateProps, template: template }, { children: [label && jsxRuntime.jsx("label", __assign({ className: "dark:bsc-text-white bc-dt-label" }, { children: label }), void 0),
9164
- jsxRuntime.jsx(ContentEditableInput$1, __assign({ value: getValue(), readOnly: readOnly, className: "bsc-text-left " + (readOnly ? (colors === null || colors === void 0 ? void 0 : colors.readOnlyInputBgColor) || 'bsc-bg-gray-200' : (colors === null || colors === void 0 ? void 0 : colors.inputBgColor) || 'bsc-bg-white') + " dark:bsc-bg-black " + (colors === null || colors === void 0 ? void 0 : colors.inputBorderColor) + " bc-dt-input", onFocus: onFocus, onInput: onInput, onElementCreate: onInputElementCreated }, inputProps), void 0)] }), void 0),
9301
+ jsxRuntime.jsx(ContentEditableInput$1, __assign({ value: getValue(), readOnly: readOnly, className: inputStyles, onFocus: onFocus, onInput: onInput, onElementCreate: onInputElementCreated }, inputProps), void 0)] }), void 0),
9165
9302
  jsxRuntime.jsx(OverlayPanel, __assign({ visible: selectorOpen, target: dropDownTarget, shouldTargetCloseOverlay: false, shouldScrollCloseOverlay: true, hidden: onDateTimeHidden }, { children: jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [state.currentSelector === DateTimeActionType.DaySelector &&
9166
9303
  canShowDateSelectors &&
9167
9304
  state.dateInitialized &&
@@ -9208,7 +9345,7 @@ function styleInject(css, ref) {
9208
9345
  }
9209
9346
  }
9210
9347
 
9211
- var css_248z = "/*! tailwindcss v2.1.2 | MIT License | https://tailwindcss.com */\n\n/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\nhtml {\n -moz-tab-size: 4;\n tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'] {\n -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nbutton {\n background-color: transparent;\n background-image: none;\n}\n\n/**\n * Work around a Firefox/IE bug where the transparent `button` background\n * results in a loss of the default `button` focus styles.\n */\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nol,\nul {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n * sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n * to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 1 */\n line-height: 1.5; /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n font-family: inherit;\n line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n * We used to set this in the html element and inherit from\n * the parent element for everything else. This caused issues\n * in shadow-dom-enhanced elements like <details> where the content\n * is wrapped by a div with box-sizing set to `content-box`.\n *\n * https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n * By default, the way the browser specifies that an element should have no\n * border is by setting it's border-style to `none` in the user-agent\n * stylesheet.\n *\n * In order to easily add borders to elements by just setting the `border-width`\n * property, we change the default border-style for all elements to `solid`, and\n * use border-width to hide them instead. This way our `border` utilities only\n * need to set the `border-width` property instead of the entire `border`\n * shorthand, making our border utilities much more straightforward to compose.\n *\n * https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n border-style: solid;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::-webkit-input-placeholder, textarea::-webkit-input-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton {\n cursor: pointer;\n}\n\ntable {\n border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n padding: 0;\n line-height: inherit;\n color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * Make replaced elements `display: block` by default as that's\n * the behavior you want almost all of the time. Inspired by\n * CSS Remedy, with `svg` added as well.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their intrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n.bsc-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bsc-bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.bsc-bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgba(17, 24, 39, var(--tw-bg-opacity));\n}\n\n.bsc-bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgba(239, 68, 68, var(--tw-bg-opacity));\n}\n\n.bsc-bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgba(209, 250, 229, var(--tw-bg-opacity));\n}\n\n.bsc-bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgba(219, 234, 254, var(--tw-bg-opacity));\n}\n\n.bsc-bg-blue-200 {\n --tw-bg-opacity: 1;\n background-color: rgba(191, 219, 254, var(--tw-bg-opacity));\n}\n\n.hover\\:bsc-bg-gray-300:hover {\n --tw-bg-opacity: 1;\n background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:bsc-bg-black {\n --tw-bg-opacity: 1;\n background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:bsc-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:bsc-bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgba(17, 24, 39, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:hover\\:bsc-bg-white:hover {\n --tw-bg-opacity: 1;\n background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bsc-border-black {\n --tw-border-opacity: 1;\n border-color: rgba(0, 0, 0, var(--tw-border-opacity));\n}\n\n.bsc-border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n}\n\n.bsc-border-gray-400 {\n --tw-border-opacity: 1;\n border-color: rgba(156, 163, 175, var(--tw-border-opacity));\n}\n\n.bsc-border-gray-500 {\n --tw-border-opacity: 1;\n border-color: rgba(107, 114, 128, var(--tw-border-opacity));\n}\n\n.bsc-dark .dark\\:bsc-border-white {\n --tw-border-opacity: 1;\n border-color: rgba(255, 255, 255, var(--tw-border-opacity));\n}\n\n.bsc-rounded-md {\n border-radius: 0.375rem;\n}\n\n.bsc-rounded-full {\n border-radius: 9999px;\n}\n\n.bsc-border-solid {\n border-style: solid;\n}\n\n.bsc-border-none {\n border-style: none;\n}\n\n.bsc-border {\n border-width: 1px;\n}\n\n.bsc-border-r {\n border-right-width: 1px;\n}\n\n.bsc-cursor-pointer {\n cursor: pointer;\n}\n\n.bsc-cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.bsc-flex {\n display: -webkit-flex;\n display: flex;\n}\n\n.bsc-grid {\n display: grid;\n}\n\n.bsc-flex-row {\n -webkit-flex-direction: row;\n flex-direction: row;\n}\n\n.bsc-flex-col {\n -webkit-flex-direction: column;\n flex-direction: column;\n}\n\n.bsc-justify-center {\n -webkit-justify-content: center;\n justify-content: center;\n}\n\n.bsc-flex-grow {\n -webkit-flex-grow: 1;\n flex-grow: 1;\n}\n\n.bsc-flex-shrink {\n -webkit-flex-shrink: 1;\n flex-shrink: 1;\n}\n\n.bsc-font-bold {\n font-weight: 700;\n}\n\n.bsc-mr-2 {\n margin-right: 0.5rem;\n}\n\n.bsc-ml-2 {\n margin-left: 0.5rem;\n}\n\n.focus\\:bsc-outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.bsc-overflow-scroll {\n overflow: scroll;\n}\n\n.bsc-p-2 {\n padding: 0.5rem;\n}\n\n.bsc-p-4 {\n padding: 1rem;\n}\n\n.bsc-py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n.bsc-px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n.bsc-pr-4 {\n padding-right: 1rem;\n}\n\n.bsc-pl-4 {\n padding-left: 1rem;\n}\n\n.bsc-pb-8 {\n padding-bottom: 2rem;\n}\n\n.bsc-absolute {\n position: absolute;\n}\n\n* {\n --tw-shadow: 0 0 #0000;\n}\n\n.bsc-shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.bsc-shadow {\n --tw-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n* {\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgba(59, 130, 246, 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n}\n\n.bsc-text-left {\n text-align: left;\n}\n\n.bsc-text-center {\n text-align: center;\n}\n\n.bsc-text-gray-400 {\n --tw-text-opacity: 1;\n color: rgba(156, 163, 175, var(--tw-text-opacity));\n}\n\n.bsc-text-red-300 {\n --tw-text-opacity: 1;\n color: rgba(252, 165, 165, var(--tw-text-opacity));\n}\n\n.bsc-dark .dark\\:bsc-text-black {\n --tw-text-opacity: 1;\n color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.bsc-dark .dark\\:bsc-text-white {\n --tw-text-opacity: 1;\n color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.bsc-dark .dark\\:hover\\:bsc-text-black:hover {\n --tw-text-opacity: 1;\n color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.bsc-w-full {\n width: 100%;\n}\n\n.bsc-gap-3 {\n gap: 0.75rem;\n}\n\n.bsc-gap-4 {\n gap: 1rem;\n}\n\n.bsc-grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.bsc-grid-cols-7 {\n grid-template-columns: repeat(7, minmax(0, 1fr));\n}\n\n.bsc-col-span-4 {\n grid-column: span 4 / span 4;\n}\n\n@-webkit-keyframes bsc-spin {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes bsc-spin {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@-webkit-keyframes bsc-ping {\n 75%, 100% {\n -webkit-transform: scale(2);\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@keyframes bsc-ping {\n 75%, 100% {\n -webkit-transform: scale(2);\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@-webkit-keyframes bsc-pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@keyframes bsc-pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@-webkit-keyframes bsc-bounce {\n 0%, 100% {\n -webkit-transform: translateY(-25%);\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n -webkit-transform: none;\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\n@keyframes bsc-bounce {\n 0%, 100% {\n -webkit-transform: translateY(-25%);\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n -webkit-transform: none;\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n\n@media (min-width: 640px) {\n}\n\n@media (min-width: 768px) {\n}\n\n@media (min-width: 1024px) {\n}\n\n@media (min-width: 1280px) {\n}\n\n@media (min-width: 1536px) {\n}\n";
9348
+ var css_248z = "/*! tailwindcss v2.1.2 | MIT License | https://tailwindcss.com */\n\n/*! modern-normalize v1.1.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n::before,\n::after {\n box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\nhtml {\n -moz-tab-size: 4;\n tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n font-family:\n\t\tsystem-ui,\n\t\t-apple-system, /* Firefox supports this but not yet `system-ui` */\n\t\t'Segoe UI',\n\t\tRoboto,\n\t\tHelvetica,\n\t\tArial,\n\t\tsans-serif,\n\t\t'Apple Color Emoji',\n\t\t'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family:\n\t\tui-monospace,\n\t\tSFMono-Regular,\n\t\tConsolas,\n\t\t'Liberation Mono',\n\t\tMenlo,\n\t\tmonospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'] {\n -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n\n/**\n * Manually forked from SUIT CSS Base: https://github.com/suitcss/base\n * A thin layer on top of normalize.css that provides a starting point more\n * suitable for web applications.\n */\n\n/**\n * Removes the default spacing and border for appropriate elements.\n */\n\nblockquote,\ndl,\ndd,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\nhr,\nfigure,\np,\npre {\n margin: 0;\n}\n\nbutton {\n background-color: transparent;\n background-image: none;\n}\n\n/**\n * Work around a Firefox/IE bug where the transparent `button` background\n * results in a loss of the default `button` focus styles.\n */\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n}\n\nol,\nul {\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n/**\n * Tailwind custom reset styles\n */\n\n/**\n * 1. Use the user's configured `sans` font-family (with Tailwind's default\n * sans-serif font stack as a fallback) as a sane default.\n * 2. Use Tailwind's default \"normal\" line-height so the user isn't forced\n * to override it to ensure consistency even when using the default theme.\n */\n\nhtml {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"; /* 1 */\n line-height: 1.5; /* 2 */\n}\n\n/**\n * Inherit font-family and line-height from `html` so users can set them as\n * a class directly on the `html` element.\n */\n\nbody {\n font-family: inherit;\n line-height: inherit;\n}\n\n/**\n * 1. Prevent padding and border from affecting element width.\n *\n * We used to set this in the html element and inherit from\n * the parent element for everything else. This caused issues\n * in shadow-dom-enhanced elements like <details> where the content\n * is wrapped by a div with box-sizing set to `content-box`.\n *\n * https://github.com/mozdevs/cssremedy/issues/4\n *\n *\n * 2. Allow adding a border to an element by just adding a border-width.\n *\n * By default, the way the browser specifies that an element should have no\n * border is by setting it's border-style to `none` in the user-agent\n * stylesheet.\n *\n * In order to easily add borders to elements by just setting the `border-width`\n * property, we change the default border-style for all elements to `solid`, and\n * use border-width to hide them instead. This way our `border` utilities only\n * need to set the `border-width` property instead of the entire `border`\n * shorthand, making our border utilities much more straightforward to compose.\n *\n * https://github.com/tailwindcss/tailwindcss/pull/116\n */\n\n*,\n::before,\n::after {\n box-sizing: border-box; /* 1 */\n border-width: 0; /* 2 */\n border-style: solid; /* 2 */\n border-color: #e5e7eb; /* 2 */\n}\n\n/*\n * Ensure horizontal rules are visible by default\n */\n\nhr {\n border-top-width: 1px;\n}\n\n/**\n * Undo the `border-style: none` reset that Normalize applies to images so that\n * our `border-{width}` utilities have the expected effect.\n *\n * The Normalize reset is unnecessary for us since we default the border-width\n * to 0 on all elements.\n *\n * https://github.com/tailwindcss/tailwindcss/issues/362\n */\n\nimg {\n border-style: solid;\n}\n\ntextarea {\n resize: vertical;\n}\n\ninput::-webkit-input-placeholder, textarea::-webkit-input-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\ninput:-ms-input-placeholder, textarea:-ms-input-placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n color: #9ca3af;\n}\n\nbutton {\n cursor: pointer;\n}\n\ntable {\n border-collapse: collapse;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n font-size: inherit;\n font-weight: inherit;\n}\n\n/**\n * Reset links to optimize for opt-in styling instead of\n * opt-out.\n */\n\na {\n color: inherit;\n text-decoration: inherit;\n}\n\n/**\n * Reset form element properties that are easy to forget to\n * style explicitly so you don't inadvertently introduce\n * styles that deviate from your design system. These styles\n * supplement a partial reset that is already applied by\n * normalize.css.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n padding: 0;\n line-height: inherit;\n color: inherit;\n}\n\n/**\n * Use the configured 'mono' font family for elements that\n * are expected to be rendered with a monospace font, falling\n * back to the system monospace stack if there is no configured\n * 'mono' font family.\n */\n\npre,\ncode,\nkbd,\nsamp {\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n/**\n * Make replaced elements `display: block` by default as that's\n * the behavior you want almost all of the time. Inspired by\n * CSS Remedy, with `svg` added as well.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nsvg,\nvideo,\ncanvas,\naudio,\niframe,\nembed,\nobject {\n display: block;\n vertical-align: middle;\n}\n\n/**\n * Constrain images and videos to the parent width and preserve\n * their intrinsic aspect ratio.\n *\n * https://github.com/mozdevs/cssremedy/issues/14\n */\n\nimg,\nvideo {\n max-width: 100%;\n height: auto;\n}\n\n.bsc-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bsc-bg-gray-200 {\n --tw-bg-opacity: 1;\n background-color: rgba(229, 231, 235, var(--tw-bg-opacity));\n}\n\n.bsc-bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgba(17, 24, 39, var(--tw-bg-opacity));\n}\n\n.bsc-bg-red-500 {\n --tw-bg-opacity: 1;\n background-color: rgba(239, 68, 68, var(--tw-bg-opacity));\n}\n\n.bsc-bg-green-100 {\n --tw-bg-opacity: 1;\n background-color: rgba(209, 250, 229, var(--tw-bg-opacity));\n}\n\n.bsc-bg-blue-100 {\n --tw-bg-opacity: 1;\n background-color: rgba(219, 234, 254, var(--tw-bg-opacity));\n}\n\n.bsc-bg-blue-200 {\n --tw-bg-opacity: 1;\n background-color: rgba(191, 219, 254, var(--tw-bg-opacity));\n}\n\n.hover\\:bsc-bg-gray-300:hover {\n --tw-bg-opacity: 1;\n background-color: rgba(209, 213, 219, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:bsc-bg-black {\n --tw-bg-opacity: 1;\n background-color: rgba(0, 0, 0, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:bsc-bg-white {\n --tw-bg-opacity: 1;\n background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:bsc-bg-gray-900 {\n --tw-bg-opacity: 1;\n background-color: rgba(17, 24, 39, var(--tw-bg-opacity));\n}\n\n.bsc-dark .dark\\:hover\\:bsc-bg-white:hover {\n --tw-bg-opacity: 1;\n background-color: rgba(255, 255, 255, var(--tw-bg-opacity));\n}\n\n.bsc-border-transparent {\n border-color: transparent;\n}\n\n.bsc-border-black {\n --tw-border-opacity: 1;\n border-color: rgba(0, 0, 0, var(--tw-border-opacity));\n}\n\n.bsc-border-gray-300 {\n --tw-border-opacity: 1;\n border-color: rgba(209, 213, 219, var(--tw-border-opacity));\n}\n\n.bsc-border-gray-400 {\n --tw-border-opacity: 1;\n border-color: rgba(156, 163, 175, var(--tw-border-opacity));\n}\n\n.bsc-border-gray-500 {\n --tw-border-opacity: 1;\n border-color: rgba(107, 114, 128, var(--tw-border-opacity));\n}\n\n.bsc-dark .dark\\:bsc-border-white {\n --tw-border-opacity: 1;\n border-color: rgba(255, 255, 255, var(--tw-border-opacity));\n}\n\n.bsc-rounded-md {\n border-radius: 0.375rem;\n}\n\n.bsc-rounded-full {\n border-radius: 9999px;\n}\n\n.bsc-border-solid {\n border-style: solid;\n}\n\n.bsc-border-none {\n border-style: none;\n}\n\n.bsc-border {\n border-width: 1px;\n}\n\n.bsc-border-r {\n border-right-width: 1px;\n}\n\n.bsc-cursor-pointer {\n cursor: pointer;\n}\n\n.bsc-cursor-not-allowed {\n cursor: not-allowed;\n}\n\n.bsc-flex {\n display: flex;\n}\n\n.bsc-grid {\n display: grid;\n}\n\n.bsc-flex-row {\n flex-direction: row;\n}\n\n.bsc-flex-col {\n flex-direction: column;\n}\n\n.bsc-justify-center {\n justify-content: center;\n}\n\n.bsc-flex-grow {\n flex-grow: 1;\n}\n\n.bsc-flex-shrink {\n flex-shrink: 1;\n}\n\n.bsc-font-bold {\n font-weight: 700;\n}\n\n.bsc-text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n}\n\n.bsc-mr-2 {\n margin-right: 0.5rem;\n}\n\n.bsc-ml-2 {\n margin-left: 0.5rem;\n}\n\n.focus\\:bsc-outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px;\n}\n\n.bsc-overflow-hidden {\n overflow: hidden;\n}\n\n.bsc-overflow-scroll {\n overflow: scroll;\n}\n\n.bsc-overflow-x-auto {\n overflow-x: auto;\n}\n\n.bsc-overflow-y-hidden {\n overflow-y: hidden;\n}\n\n.bsc-p-2 {\n padding: 0.5rem;\n}\n\n.bsc-p-4 {\n padding: 1rem;\n}\n\n.bsc-py-1 {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n}\n\n.bsc-px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n}\n\n.bsc-pr-4 {\n padding-right: 1rem;\n}\n\n.bsc-pl-4 {\n padding-left: 1rem;\n}\n\n.bsc-pb-8 {\n padding-bottom: 2rem;\n}\n\n.bsc-absolute {\n position: absolute;\n}\n\n* {\n --tw-shadow: 0 0 #0000;\n}\n\n.bsc-shadow-sm {\n --tw-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n.bsc-shadow {\n --tw-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);\n}\n\n* {\n --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgba(59, 130, 246, 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n}\n\n.bsc-text-left {\n text-align: left;\n}\n\n.bsc-text-center {\n text-align: center;\n}\n\n.bsc-text-gray-400 {\n --tw-text-opacity: 1;\n color: rgba(156, 163, 175, var(--tw-text-opacity));\n}\n\n.bsc-text-red-300 {\n --tw-text-opacity: 1;\n color: rgba(252, 165, 165, var(--tw-text-opacity));\n}\n\n.bsc-dark .dark\\:bsc-text-black {\n --tw-text-opacity: 1;\n color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.bsc-dark .dark\\:bsc-text-white {\n --tw-text-opacity: 1;\n color: rgba(255, 255, 255, var(--tw-text-opacity));\n}\n\n.bsc-dark .dark\\:hover\\:bsc-text-black:hover {\n --tw-text-opacity: 1;\n color: rgba(0, 0, 0, var(--tw-text-opacity));\n}\n\n.bsc-whitespace-pre {\n white-space: pre;\n}\n\n.bsc-w-24 {\n width: 6rem;\n}\n\n.bsc-w-full {\n width: 100%;\n}\n\n.bsc-gap-3 {\n gap: 0.75rem;\n}\n\n.bsc-gap-4 {\n gap: 1rem;\n}\n\n.bsc-grid-cols-4 {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n}\n\n.bsc-grid-cols-7 {\n grid-template-columns: repeat(7, minmax(0, 1fr));\n}\n\n.bsc-col-span-4 {\n grid-column: span 4 / span 4;\n}\n\n@-webkit-keyframes bsc-spin {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes bsc-spin {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@-webkit-keyframes bsc-ping {\n 75%, 100% {\n -webkit-transform: scale(2);\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@keyframes bsc-ping {\n 75%, 100% {\n -webkit-transform: scale(2);\n transform: scale(2);\n opacity: 0;\n }\n}\n\n@-webkit-keyframes bsc-pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@keyframes bsc-pulse {\n 50% {\n opacity: .5;\n }\n}\n\n@-webkit-keyframes bsc-bounce {\n 0%, 100% {\n -webkit-transform: translateY(-25%);\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n -webkit-transform: none;\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\n@keyframes bsc-bounce {\n 0%, 100% {\n -webkit-transform: translateY(-25%);\n transform: translateY(-25%);\n -webkit-animation-timing-function: cubic-bezier(0.8,0,1,1);\n animation-timing-function: cubic-bezier(0.8,0,1,1);\n }\n\n 50% {\n -webkit-transform: none;\n transform: none;\n -webkit-animation-timing-function: cubic-bezier(0,0,0.2,1);\n animation-timing-function: cubic-bezier(0,0,0.2,1);\n }\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n\n@media (min-width: 640px) {\n}\n\n@media (min-width: 768px) {\n}\n\n@media (min-width: 1024px) {\n}\n\n@media (min-width: 1280px) {\n}\n\n@media (min-width: 1536px) {\n}\n";
9212
9349
  styleInject(css_248z);
9213
9350
 
9214
9351
  /*!