@licklist/design 0.59.0 → 0.60.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.
@@ -13,5 +13,5 @@ export type CalendarProps = {
13
13
  initialDate?: DateTime;
14
14
  getDateTimeButtonProps: (date: DateTime) => Pick<DateTimeButtonProps, "resources" | "showResources" | "shouldCalculateResources" | "isDisabled">;
15
15
  };
16
- export declare const Calendar: ({ initialDate, ...props }: CalendarProps) => JSX.Element;
16
+ export declare const Calendar: (props: CalendarProps) => JSX.Element;
17
17
  //# sourceMappingURL=Calendar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../src/calendar/Calendar.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAI3D,eAAO,MAAM,eAAe,UAK1B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,QAAQ,CAAC;IACtB,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnD,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,YAAY,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC;IAC3D,SAAS,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB,sBAAsB,EAAE,CACtB,IAAI,EAAE,QAAQ,KACX,IAAI,CACP,mBAAmB,EACnB,WAAW,GAAG,eAAe,GAAG,0BAA0B,GAAG,YAAY,CAC1E,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,QAAQ,8BAGlB,aAAa,gBASf,CAAC"}
1
+ {"version":3,"file":"Calendar.d.ts","sourceRoot":"","sources":["../../src/calendar/Calendar.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAK3D,eAAO,MAAM,eAAe,UAK1B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,QAAQ,CAAC;IACtB,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnD,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1B,YAAY,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC9B,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC;IAC3D,SAAS,CAAC,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB,sBAAsB,EAAE,CACtB,IAAI,EAAE,QAAQ,KACX,IAAI,CACP,mBAAmB,EACnB,WAAW,GAAG,eAAe,GAAG,0BAA0B,GAAG,YAAY,CAC1E,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,QAAQ,UAAW,aAAa,gBAW5C,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,a=require("tslib"),t=require("react"),r=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,n=require("luxon"),s=require("./components/CalendarButtons/CalendarButtons.js"),i=require("./components/CalendarDates/CalendarDates.js"),l=n.DateTime.now().set({millisecond:0,second:0,hour:0,minute:0});exports.Calendar=function(e){var t=e.initialDate,n=void 0===t?l:t,o=a.__rest(e,["initialDate"]);return r.createElement("div",{className:"calendar-wrapper"},r.createElement("div",{className:"calendar"},r.createElement(s.CalendarButtons,a.__assign({initialDate:n},o)),r.createElement(i.CalendarDates,a.__assign({},o))))},exports.defaultStartDay=l;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,a=require("tslib"),t=require("react"),r=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,n=require("../static/loader/LoaderIndicator.js"),i=require("luxon");require("../static/index.js");var s=require("./components/CalendarButtons/CalendarButtons.js"),l=require("./components/CalendarDates/CalendarDates.js"),o=i.DateTime.now().set({millisecond:0,second:0,hour:0,minute:0});exports.Calendar=function(e){var t=e.initialDate,i=void 0===t?o:t,d=e.isLoading;return r.createElement("div",{className:"calendar-wrapper"},r.createElement("div",{className:"calendar"},r.createElement(s.CalendarButtons,a.__assign({initialDate:i},e)),d?r.createElement(n.LoaderIndicator,null):r.createElement(l.CalendarDates,a.__assign({},e))))},exports.defaultStartDay=o;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import { CalendarProps } from "../../Calendar";
3
- export type CalendarDatesProps = Pick<CalendarProps, "isLoading" | "calendarDates" | "selectedDate" | "setSelectedDate" | "fromPrice" | "getDateTimeButtonProps">;
4
- export declare const CalendarDates: ({ isLoading, calendarDates, selectedDate, setSelectedDate, fromPrice, getDateTimeButtonProps, }: CalendarDatesProps) => JSX.Element;
3
+ export type CalendarDatesProps = Pick<CalendarProps, "calendarDates" | "selectedDate" | "setSelectedDate" | "fromPrice" | "getDateTimeButtonProps">;
4
+ export declare const CalendarDates: ({ calendarDates, selectedDate, setSelectedDate, fromPrice, getDateTimeButtonProps, }: CalendarDatesProps) => JSX.Element;
5
5
  //# sourceMappingURL=CalendarDates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarDates.d.ts","sourceRoot":"","sources":["../../../../src/calendar/components/CalendarDates/CalendarDates.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,aAAa,EACX,WAAW,GACX,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,WAAW,GACX,wBAAwB,CAC3B,CAAC;AAEF,eAAO,MAAM,aAAa,oGAOvB,kBAAkB,gBA+CpB,CAAC"}
1
+ {"version":3,"file":"CalendarDates.d.ts","sourceRoot":"","sources":["../../../../src/calendar/components/CalendarDates/CalendarDates.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,aAAa,EACX,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,WAAW,GACX,wBAAwB,CAC3B,CAAC;AAEF,eAAO,MAAM,aAAa,yFAMvB,kBAAkB,gBA4CpB,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,a=require("tslib"),t=require("react"),r=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,n=require("../../../date-time-button/DateTimeButton.js"),d=require("../CalendarWeekdays/CalendarWeekdays.js");exports.CalendarDates=function(e){var i=e.isLoading,l=void 0!==i&&i,s=e.calendarDates,u=e.selectedDate,o=e.setSelectedDate,c=e.fromPrice,m=e.getDateTimeButtonProps,v=t.useMemo((function(){var e,t,r=null!==(t=null===(e=s[0])||void 0===e?void 0:e.weekday)&&void 0!==t?t:0;if(1===r)return s;for(var n=[];r>1;)n.push(null),r-=1;return a.__spreadArray(a.__spreadArray([],a.__read(n),!1),a.__read(s),!1)}),[s]);return r.createElement("div",{className:"calendar-dates-wrapper"},r.createElement(d.CalendarWeekdays,null),r.createElement("div",{className:"calendar-dates"},v.map((function(e){if(null===e)return r.createElement("div",null);var t=m(e),d=l||t.isDisabled;return r.createElement(n.DateTimeButton,a.__assign({key:+e,isDisabled:d,isSelected:u?e.hasSame(u,"day"):void 0,date:e,onSelect:function(){return o(e)},price:c,variant:n.Variant.month},t))}))))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,a=require("tslib"),t=require("react"),r=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,n=require("../../../date-time-button/DateTimeButton.js"),l=require("../CalendarWeekdays/CalendarWeekdays.js");exports.CalendarDates=function(e){var d=e.calendarDates,i=e.selectedDate,u=e.setSelectedDate,s=e.fromPrice,c=e.getDateTimeButtonProps,o=t.useMemo((function(){var e,t,r=null!==(t=null===(e=d[0])||void 0===e?void 0:e.weekday)&&void 0!==t?t:0;if(1===r)return d;for(var n=[];r>1;)n.push(null),r-=1;return a.__spreadArray(a.__spreadArray([],a.__read(n),!1),a.__read(d),!1)}),[d]);return r.createElement("div",{className:"calendar-dates-wrapper"},r.createElement(l.CalendarWeekdays,null),r.createElement("div",{className:"calendar-dates"},o.map((function(e){if(null===e)return r.createElement("div",null);var t=c(e);return r.createElement(n.DateTimeButton,a.__assign({key:+e,isSelected:i?e.hasSame(i,"day"):void 0,date:e,onSelect:function(){return u(e)},price:s,variant:n.Variant.month},t))}))))};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.59.0",
3
+ "version": "0.60.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/artelogicsoft/licklist_design.git"
@@ -38,3 +38,26 @@ Default.args = {
38
38
  isDisabled: false,
39
39
  }),
40
40
  };
41
+
42
+ export const Loading: Story<CalendarProps> = (args) => {
43
+ return (
44
+ <div style={{ backgroundColor: "white" }}>
45
+ <Calendar {...args} />
46
+ </div>
47
+ );
48
+ };
49
+
50
+ Loading.args = {
51
+ isLoading: true,
52
+ fromPrice: "from £10",
53
+ selectedDate: null,
54
+ setSelectedDate: () => null,
55
+ calendarDates: getMonthCalendarDates(now),
56
+ currentDate: now,
57
+ getDateTimeButtonProps: () => ({
58
+ resources: [],
59
+ showResources: false,
60
+ shouldCalculateResources: false,
61
+ isDisabled: false,
62
+ }),
63
+ };
@@ -3,6 +3,7 @@ import { DateTime } from "luxon";
3
3
  import { DateTimeButtonProps } from "src/date-time-button";
4
4
  import { CalendarButtons } from "./components/CalendarButtons";
5
5
  import { CalendarDates } from "./components/CalendarDates";
6
+ import { LoaderIndicator } from "../static";
6
7
 
7
8
  export const defaultStartDay = DateTime.now().set({
8
9
  millisecond: 0,
@@ -28,15 +29,14 @@ export type CalendarProps = {
28
29
  >;
29
30
  };
30
31
 
31
- export const Calendar = ({
32
- initialDate = defaultStartDay,
33
- ...props
34
- }: CalendarProps) => {
32
+ export const Calendar = (props: CalendarProps) => {
33
+ const { initialDate = defaultStartDay, isLoading } = props;
35
34
  return (
36
35
  <div className="calendar-wrapper">
37
36
  <div className="calendar">
38
37
  <CalendarButtons initialDate={initialDate} {...props} />
39
- <CalendarDates {...props} />
38
+
39
+ {isLoading ? <LoaderIndicator /> : <CalendarDates {...props} />}
40
40
  </div>
41
41
  </div>
42
42
  );
@@ -6,7 +6,6 @@ import { CalendarProps } from "../../Calendar";
6
6
 
7
7
  export type CalendarDatesProps = Pick<
8
8
  CalendarProps,
9
- | "isLoading"
10
9
  | "calendarDates"
11
10
  | "selectedDate"
12
11
  | "setSelectedDate"
@@ -15,7 +14,6 @@ export type CalendarDatesProps = Pick<
15
14
  >;
16
15
 
17
16
  export const CalendarDates = ({
18
- isLoading = false,
19
17
  calendarDates,
20
18
  selectedDate,
21
19
  setSelectedDate,
@@ -48,12 +46,9 @@ export const CalendarDates = ({
48
46
 
49
47
  const props = getDateTimeButtonProps(date);
50
48
 
51
- const isDisabled = isLoading || props.isDisabled;
52
-
53
49
  return (
54
50
  <DateTimeButton
55
51
  key={+date}
56
- isDisabled={isDisabled}
57
52
  isSelected={
58
53
  selectedDate ? date.hasSame(selectedDate, "day") : undefined
59
54
  }