favesalon-embed 1.0.15 → 1.0.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/custom-elements/index.d.ts +36 -0
  2. package/dist/favesalon-embed/{_commonjsHelpers-a4f66ccd.js → _commonjsHelpers-9bc404fc.js} +1 -1
  3. package/dist/favesalon-embed/activate-form.entry.js +10 -3
  4. package/dist/favesalon-embed/buy-giftcard-form.entry.js +1025 -0
  5. package/dist/favesalon-embed/buy-giftcard-verification.entry.js +3937 -0
  6. package/dist/favesalon-embed/change-password-form.entry.js +10 -3
  7. package/dist/favesalon-embed/chat-box.entry.js +2 -2
  8. package/dist/favesalon-embed/chat-button.entry.js +2 -2
  9. package/dist/favesalon-embed/chat-form.entry.js +2 -2
  10. package/dist/favesalon-embed/chat-messages.entry.js +4 -4
  11. package/dist/favesalon-embed/chat-rooms.entry.js +4 -4
  12. package/dist/favesalon-embed/credit-card-types.entry.js +16 -0
  13. package/dist/favesalon-embed/favesalon-embed.css +20 -0
  14. package/dist/favesalon-embed/favesalon-embed.esm.js +1 -1
  15. package/dist/favesalon-embed/{index-00b83e1c.js → index-ac52896a.js} +1 -1
  16. package/dist/favesalon-embed/{lodash-d5526b38.js → lodash-b4fe554a.js} +1 -1
  17. package/dist/favesalon-embed/login-form.entry.js +2 -2
  18. package/dist/favesalon-embed/powered-by-favesalon.entry.js +16 -0
  19. package/dist/favesalon-embed/register-form.entry.js +10 -4
  20. package/dist/favesalon-embed/{relativeTime-268e64b0.js → relativeTime-15477f02.js} +1 -1
  21. package/dist/favesalon-embed/reset-password-form.entry.js +10 -3
  22. package/dist/favesalon-embed/salon-booking.entry.js +2 -2
  23. package/dist/favesalon-embed/salon-gift-card.entry.js +2 -2
  24. package/dist/favesalon-embed/salon-info.entry.js +2 -2
  25. package/dist/favesalon-embed/salon-latest-reviews.entry.js +3 -3
  26. package/dist/favesalon-embed/salon-latest-styles.entry.js +2 -2
  27. package/dist/favesalon-embed/salon-locations.entry.js +3 -3
  28. package/dist/favesalon-embed/salon-lookbook.entry.js +2 -2
  29. package/dist/favesalon-embed/salon-reviews.entry.js +2 -2
  30. package/dist/favesalon-embed/salon-schedules.entry.js +2 -2
  31. package/dist/favesalon-embed/salon-services.entry.js +2 -2
  32. package/dist/favesalon-embed/salon-stylists.entry.js +2 -2
  33. package/dist/favesalon-embed/services-09264f42.js +24132 -0
  34. package/dist/favesalon-embed/services-1406013d.js +24132 -0
  35. package/dist/favesalon-embed/services-82948efc.js +24123 -0
  36. package/dist/favesalon-embed/{services-ece4767f.js → services-9a686ade.js} +318 -125
  37. package/dist/favesalon-embed/services-c2c81c88.js +24131 -0
  38. package/dist/favesalon-embed/services-ef32efdc.js +24132 -0
  39. package/dist/favesalon-embed/style-detail.entry.js +3 -3
  40. package/dist/favesalon-embed/utils-00e4ed17.js +33 -0
  41. package/dist/favesalon-embed/utils-359c37f7.js +33 -0
  42. package/dist/favesalon-embed/utils-daaa9ecc.js +34 -0
  43. package/dist/favesalon-embed/utils-e6e3f132.js +33 -0
  44. package/dist/favesalon-embed/wizard-existing-user.entry.js +146 -0
  45. package/dist/favesalon-embed/wizard-new-user.entry.js +178 -0
  46. package/dist/types/components/buy-giftcard-form/buy-giftcard-form.d.ts +57 -0
  47. package/dist/types/components/buy-giftcard-verification/buy-giftcard-verification.d.ts +23 -0
  48. package/dist/types/components/credit-card-types/credit-card-types.d.ts +4 -0
  49. package/dist/types/components/powered-by-favesalon/powered-by-favesalon.d.ts +4 -0
  50. package/dist/types/components/wizard-existing-user/wizard-existing-user.d.ts +19 -0
  51. package/dist/types/components/wizard-new-user/wizard-new-user.d.ts +23 -0
  52. package/dist/types/components.d.ts +108 -0
  53. package/dist/types/services/services.d.ts +55 -0
  54. package/dist/types/types/giftcard.d.ts +13 -0
  55. package/dist/types/types/salon.d.ts +1 -0
  56. package/package.json +4 -1
@@ -1,6 +1,10 @@
1
- import { c as commonjsGlobal, a as createCommonjsModule } from './_commonjsHelpers-a4f66ccd.js';
1
+ import { c as createCommonjsModule, a as commonjsGlobal } from './_commonjsHelpers-9bc404fc.js';
2
2
  import { C as Colors } from './colors-ea36347a.js';
3
3
 
4
+ var dayjs_min = createCommonjsModule(function (module, exports) {
5
+ !function(t,e){"object"=='object'&&"undefined"!='object'?module.exports=e():"function"==typeof undefined&&undefined.amd?undefined(e):(t="undefined"!=typeof globalThis?globalThis:t||self).dayjs=e();}(commonjsGlobal,(function(){"use strict";var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",f="month",h="quarter",c="year",d="date",$="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},g={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return -t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,f),s=n-i<0,u=e.clone().add(r+(s?-1:1),f);return +(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return {M:f,y:c,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:h}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},D="en",v={};v[D]=M;var p=function(t){return t instanceof _},S=function(t,e,n){var r;if(!t)return D;if("string"==typeof t)v[t]&&(r=t),e&&(v[t]=e,r=t);else {var i=t.name;v[i]=t,r=i;}return !n&&r&&(D=r),r||!n&&D},w=function(t,e){if(p(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=g;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t);}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(l);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return O},m.isValid=function(){return !(this.$d.toString()===$)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<w(t)},m.$g=function(t,e,n){return O.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!O.u(e)||e,h=O.p(t),$=function(t,e){var i=O.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},l=function(t,e){return O.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,g="set"+(this.$u?"UTC":"");switch(h){case c:return r?$(1,0):$(31,11);case f:return r?$(1,M):$(0,M+1);case o:var D=this.$locale().weekStart||0,v=(y<D?y+7:y)-D;return $(r?m-v:m+(6-v),M);case a:case d:return l(g+"Hours",0);case u:return l(g+"Minutes",1);case s:return l(g+"Seconds",2);case i:return l(g+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=O.p(t),h="set"+(this.$u?"UTC":""),$=(n={},n[a]=h+"Date",n[d]=h+"Date",n[f]=h+"Month",n[c]=h+"FullYear",n[u]=h+"Hours",n[s]=h+"Minutes",n[i]=h+"Seconds",n[r]=h+"Milliseconds",n)[o],l=o===a?this.$D+(e-this.$W):e;if(o===f||o===c){var y=this.clone().set(d,1);y.$d[$](l),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d;}else $&&this.$d[$](l);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[O.p(t)]()},m.add=function(r,h){var d,$=this;r=Number(r);var l=O.p(h),y=function(t){var e=w($);return O.w(e.date(e.date()+Math.round(t*r)),$)};if(l===f)return this.set(f,this.$M+r);if(l===c)return this.set(c,this.$y+r);if(l===a)return y(1);if(l===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[l]||1,m=this.$d.getTime()+r*M;return O.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||$;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=O.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,f=n.months,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].substr(0,s)},c=function(t){return O.s(s%12||12,t,"0")},d=n.meridiem||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r},l={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:O.s(a+1,2,"0"),MMM:h(n.monthsShort,a,f,3),MMMM:h(f,a),D:this.$D,DD:O.s(this.$D,2,"0"),d:String(this.$W),dd:h(n.weekdaysMin,this.$W,o,2),ddd:h(n.weekdaysShort,this.$W,o,3),dddd:o[this.$W],H:String(s),HH:O.s(s,2,"0"),h:c(1),hh:c(2),a:d(s,u,!0),A:d(s,u,!1),m:String(u),mm:O.s(u,2,"0"),s:String(this.$s),ss:O.s(this.$s,2,"0"),SSS:O.s(this.$ms,3,"0"),Z:i};return r.replace(y,(function(t,e){return e||l[t]||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,$){var l,y=O.p(d),M=w(r),m=(M.utcOffset()-this.utcOffset())*e,g=this-M,D=O.m(this,M);return D=(l={},l[c]=D/12,l[f]=D,l[h]=D/3,l[o]=(g-m)/6048e5,l[a]=(g-m)/864e5,l[u]=g/n,l[s]=g/e,l[i]=g/t,l)[y]||g,$?D:O.a(D)},m.daysInMonth=function(){return this.endOf(f).$D},m.$locale=function(){return v[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=S(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return O.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),b=_.prototype;return w.prototype=b,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",f],["$y",c],["$D",d]].forEach((function(t){b[t[1]]=function(e){return this.$g(e,t[0],t[1])};})),w.extend=function(t,e){return t.$i||(t(e,_,w),t.$i=!0),w},w.locale=S,w.isDayjs=p,w.unix=function(t){return w(1e3*t)},w.en=v[D],w.Ls=v,w.p={},w}));
6
+ });
7
+
4
8
  /**
5
9
  * Checks if `value` is classified as an `Array` object.
6
10
  *
@@ -47,17 +51,17 @@ var Symbol = _root.Symbol;
47
51
  var _Symbol = Symbol;
48
52
 
49
53
  /** Used for built-in method references. */
50
- var objectProto$b = Object.prototype;
54
+ var objectProto$c = Object.prototype;
51
55
 
52
56
  /** Used to check objects for own properties. */
53
- var hasOwnProperty$8 = objectProto$b.hasOwnProperty;
57
+ var hasOwnProperty$9 = objectProto$c.hasOwnProperty;
54
58
 
55
59
  /**
56
60
  * Used to resolve the
57
61
  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
58
62
  * of values.
59
63
  */
60
- var nativeObjectToString$1 = objectProto$b.toString;
64
+ var nativeObjectToString$1 = objectProto$c.toString;
61
65
 
62
66
  /** Built-in value references. */
63
67
  var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
@@ -70,7 +74,7 @@ var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
70
74
  * @returns {string} Returns the raw `toStringTag`.
71
75
  */
72
76
  function getRawTag(value) {
73
- var isOwn = hasOwnProperty$8.call(value, symToStringTag$1),
77
+ var isOwn = hasOwnProperty$9.call(value, symToStringTag$1),
74
78
  tag = value[symToStringTag$1];
75
79
 
76
80
  try {
@@ -92,14 +96,14 @@ function getRawTag(value) {
92
96
  var _getRawTag = getRawTag;
93
97
 
94
98
  /** Used for built-in method references. */
95
- var objectProto$a = Object.prototype;
99
+ var objectProto$b = Object.prototype;
96
100
 
97
101
  /**
98
102
  * Used to resolve the
99
103
  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
100
104
  * of values.
101
105
  */
102
- var nativeObjectToString = objectProto$a.toString;
106
+ var nativeObjectToString = objectProto$b.toString;
103
107
 
104
108
  /**
105
109
  * Converts `value` to a string using `Object.prototype.toString`.
@@ -352,17 +356,17 @@ var reIsHostCtor = /^\[object .+?Constructor\]$/;
352
356
 
353
357
  /** Used for built-in method references. */
354
358
  var funcProto = Function.prototype,
355
- objectProto$9 = Object.prototype;
359
+ objectProto$a = Object.prototype;
356
360
 
357
361
  /** Used to resolve the decompiled source of functions. */
358
362
  var funcToString = funcProto.toString;
359
363
 
360
364
  /** Used to check objects for own properties. */
361
- var hasOwnProperty$7 = objectProto$9.hasOwnProperty;
365
+ var hasOwnProperty$8 = objectProto$a.hasOwnProperty;
362
366
 
363
367
  /** Used to detect if a method is native. */
364
368
  var reIsNative = RegExp('^' +
365
- funcToString.call(hasOwnProperty$7).replace(reRegExpChar, '\\$&')
369
+ funcToString.call(hasOwnProperty$8).replace(reRegExpChar, '\\$&')
366
370
  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
367
371
  );
368
372
 
@@ -454,10 +458,10 @@ var _hashDelete = hashDelete;
454
458
  var HASH_UNDEFINED$2 = '__lodash_hash_undefined__';
455
459
 
456
460
  /** Used for built-in method references. */
457
- var objectProto$8 = Object.prototype;
461
+ var objectProto$9 = Object.prototype;
458
462
 
459
463
  /** Used to check objects for own properties. */
460
- var hasOwnProperty$6 = objectProto$8.hasOwnProperty;
464
+ var hasOwnProperty$7 = objectProto$9.hasOwnProperty;
461
465
 
462
466
  /**
463
467
  * Gets the hash value for `key`.
@@ -474,16 +478,16 @@ function hashGet(key) {
474
478
  var result = data[key];
475
479
  return result === HASH_UNDEFINED$2 ? undefined : result;
476
480
  }
477
- return hasOwnProperty$6.call(data, key) ? data[key] : undefined;
481
+ return hasOwnProperty$7.call(data, key) ? data[key] : undefined;
478
482
  }
479
483
 
480
484
  var _hashGet = hashGet;
481
485
 
482
486
  /** Used for built-in method references. */
483
- var objectProto$7 = Object.prototype;
487
+ var objectProto$8 = Object.prototype;
484
488
 
485
489
  /** Used to check objects for own properties. */
486
- var hasOwnProperty$5 = objectProto$7.hasOwnProperty;
490
+ var hasOwnProperty$6 = objectProto$8.hasOwnProperty;
487
491
 
488
492
  /**
489
493
  * Checks if a hash value for `key` exists.
@@ -496,7 +500,7 @@ var hasOwnProperty$5 = objectProto$7.hasOwnProperty;
496
500
  */
497
501
  function hashHas(key) {
498
502
  var data = this.__data__;
499
- return _nativeCreate ? (data[key] !== undefined) : hasOwnProperty$5.call(data, key);
503
+ return _nativeCreate ? (data[key] !== undefined) : hasOwnProperty$6.call(data, key);
500
504
  }
501
505
 
502
506
  var _hashHas = hashHas;
@@ -1188,6 +1192,86 @@ function get$1(object, path, defaultValue) {
1188
1192
 
1189
1193
  var get_1 = get$1;
1190
1194
 
1195
+ const timeFormat = 'HH:mm:ss';
1196
+ const timeFormatAmPm = 'hh:mm A';
1197
+ const dateName = 'dddd';
1198
+ const dateFormat = 'YYYY-MM-DD';
1199
+ const dateTimeFormat = 'YYYY-MM-DD HH:mm:ss';
1200
+ const dateTimeFormatAmPm = 'YYYY-MM-DD hh:mm A';
1201
+ const shortDateFormat = 'ddd, MMM DD';
1202
+ const shortDateYearFormat = 'ddd, MMM DD YYYY';
1203
+ const apiV1Prefix = 'api';
1204
+ const apiV2Prefix$1 = 'api-ver2';
1205
+ const defaultImage = 'https://res.cloudinary.com/reckon-mini-sites/image/upload/v1636477599/FaveSalon%20Social%20Website/default/default--picture_w3jvfh.png';
1206
+
1207
+ var BusinessHourStatus;
1208
+ (function (BusinessHourStatus) {
1209
+ BusinessHourStatus[BusinessHourStatus["Open"] = 0] = "Open";
1210
+ BusinessHourStatus[BusinessHourStatus["Close"] = 1] = "Close";
1211
+ BusinessHourStatus[BusinessHourStatus["ByAppointment"] = 2] = "ByAppointment";
1212
+ })(BusinessHourStatus || (BusinessHourStatus = {}));
1213
+ function createSalon(blob) {
1214
+ const geoLocations = blob.salon_geolocation || [];
1215
+ let salonImages = [];
1216
+ if (blob.salon_miniwebsite) {
1217
+ const activeSite = Array.isArray(blob.salon_miniwebsite) ? blob.salon_miniwebsite[0] : (blob.salon_miniwebsite || {});
1218
+ salonImages = [
1219
+ activeSite.full_small_slider_img1,
1220
+ activeSite.full_small_slider_img2,
1221
+ activeSite.full_small_slider_img3,
1222
+ ].filter(image => !!image);
1223
+ }
1224
+ return {
1225
+ id: blob.id,
1226
+ about: blob.about,
1227
+ email: blob.email,
1228
+ ownerName: blob.owner_name,
1229
+ fullProfileImage: blob.full_profile_image,
1230
+ fullCoverImage: blob.full_cover_image,
1231
+ subdomain: blob.subdomain,
1232
+ website: blob.website,
1233
+ businessName: blob.business_name,
1234
+ businessPhone: blob.business_phone,
1235
+ businessAddress: blob.business_address,
1236
+ businessLocationLat: geoLocations.length > 0 ? geoLocations[0].location_lat : null,
1237
+ businessLocationLng: geoLocations.length > 0 ? geoLocations[0].location_lng : null,
1238
+ city: blob.city,
1239
+ state: blob.state,
1240
+ zipcode: blob.zipcode ? Number(blob.zipcode) : null,
1241
+ businessHours: (blob.business_hours || blob.salon_working_time || []).map(bh => {
1242
+ return {
1243
+ dayName: bh.day_name,
1244
+ openTime: bh.open_time,
1245
+ closeTime: bh.close_time,
1246
+ status: bh.status,
1247
+ };
1248
+ }),
1249
+ rating: Number(blob.rating_point),
1250
+ primaryColor: blob.primary_color || Colors.Primary,
1251
+ salonImages,
1252
+ };
1253
+ }
1254
+ function getSalonImage({ salonImages, fullProfileImage }) {
1255
+ if (salonImages && salonImages.length > 0) {
1256
+ return salonImages[0];
1257
+ }
1258
+ if (fullProfileImage) {
1259
+ return fullProfileImage;
1260
+ }
1261
+ return defaultImage;
1262
+ }
1263
+ function getSalonAddress(salon) {
1264
+ const { businessAddress, businessCity, businessState, zipcode, } = salon || {};
1265
+ const stateFields = [businessState, zipcode].filter(field => !!field);
1266
+ if (businessAddress) {
1267
+ return [businessAddress, businessCity]
1268
+ .filter(field => !!field)
1269
+ .concat(stateFields.length > 0 ? [stateFields.join(' ')] : [])
1270
+ .join(', ');
1271
+ }
1272
+ return null;
1273
+ }
1274
+
1191
1275
  /**
1192
1276
  * A specialized version of `_.forEach` for arrays without support for
1193
1277
  * iteratee shorthands.
@@ -1290,13 +1374,13 @@ function baseIsArguments(value) {
1290
1374
  var _baseIsArguments = baseIsArguments;
1291
1375
 
1292
1376
  /** Used for built-in method references. */
1293
- var objectProto$6 = Object.prototype;
1377
+ var objectProto$7 = Object.prototype;
1294
1378
 
1295
1379
  /** Used to check objects for own properties. */
1296
- var hasOwnProperty$4 = objectProto$6.hasOwnProperty;
1380
+ var hasOwnProperty$5 = objectProto$7.hasOwnProperty;
1297
1381
 
1298
1382
  /** Built-in value references. */
1299
- var propertyIsEnumerable$1 = objectProto$6.propertyIsEnumerable;
1383
+ var propertyIsEnumerable$1 = objectProto$7.propertyIsEnumerable;
1300
1384
 
1301
1385
  /**
1302
1386
  * Checks if `value` is likely an `arguments` object.
@@ -1317,7 +1401,7 @@ var propertyIsEnumerable$1 = objectProto$6.propertyIsEnumerable;
1317
1401
  * // => false
1318
1402
  */
1319
1403
  var isArguments = _baseIsArguments(function() { return arguments; }()) ? _baseIsArguments : function(value) {
1320
- return isObjectLike_1(value) && hasOwnProperty$4.call(value, 'callee') &&
1404
+ return isObjectLike_1(value) && hasOwnProperty$5.call(value, 'callee') &&
1321
1405
  !propertyIsEnumerable$1.call(value, 'callee');
1322
1406
  };
1323
1407
 
@@ -1449,11 +1533,11 @@ var argsTag$1 = '[object Arguments]',
1449
1533
  dateTag$1 = '[object Date]',
1450
1534
  errorTag$1 = '[object Error]',
1451
1535
  funcTag = '[object Function]',
1452
- mapTag$2 = '[object Map]',
1536
+ mapTag$3 = '[object Map]',
1453
1537
  numberTag$1 = '[object Number]',
1454
1538
  objectTag$2 = '[object Object]',
1455
1539
  regexpTag$1 = '[object RegExp]',
1456
- setTag$2 = '[object Set]',
1540
+ setTag$3 = '[object Set]',
1457
1541
  stringTag$1 = '[object String]',
1458
1542
  weakMapTag$1 = '[object WeakMap]';
1459
1543
 
@@ -1480,9 +1564,9 @@ typedArrayTags[argsTag$1] = typedArrayTags[arrayTag$1] =
1480
1564
  typedArrayTags[arrayBufferTag$1] = typedArrayTags[boolTag$1] =
1481
1565
  typedArrayTags[dataViewTag$2] = typedArrayTags[dateTag$1] =
1482
1566
  typedArrayTags[errorTag$1] = typedArrayTags[funcTag] =
1483
- typedArrayTags[mapTag$2] = typedArrayTags[numberTag$1] =
1567
+ typedArrayTags[mapTag$3] = typedArrayTags[numberTag$1] =
1484
1568
  typedArrayTags[objectTag$2] = typedArrayTags[regexpTag$1] =
1485
- typedArrayTags[setTag$2] = typedArrayTags[stringTag$1] =
1569
+ typedArrayTags[setTag$3] = typedArrayTags[stringTag$1] =
1486
1570
  typedArrayTags[weakMapTag$1] = false;
1487
1571
 
1488
1572
  /**
@@ -1570,10 +1654,10 @@ var isTypedArray = nodeIsTypedArray ? _baseUnary(nodeIsTypedArray) : _baseIsType
1570
1654
  var isTypedArray_1 = isTypedArray;
1571
1655
 
1572
1656
  /** Used for built-in method references. */
1573
- var objectProto$5 = Object.prototype;
1657
+ var objectProto$6 = Object.prototype;
1574
1658
 
1575
1659
  /** Used to check objects for own properties. */
1576
- var hasOwnProperty$3 = objectProto$5.hasOwnProperty;
1660
+ var hasOwnProperty$4 = objectProto$6.hasOwnProperty;
1577
1661
 
1578
1662
  /**
1579
1663
  * Creates an array of the enumerable property names of the array-like `value`.
@@ -1593,7 +1677,7 @@ function arrayLikeKeys(value, inherited) {
1593
1677
  length = result.length;
1594
1678
 
1595
1679
  for (var key in value) {
1596
- if ((inherited || hasOwnProperty$3.call(value, key)) &&
1680
+ if ((inherited || hasOwnProperty$4.call(value, key)) &&
1597
1681
  !(skipIndexes && (
1598
1682
  // Safari 9 has enumerable `arguments.length` in strict mode.
1599
1683
  key == 'length' ||
@@ -1613,7 +1697,7 @@ function arrayLikeKeys(value, inherited) {
1613
1697
  var _arrayLikeKeys = arrayLikeKeys;
1614
1698
 
1615
1699
  /** Used for built-in method references. */
1616
- var objectProto$4 = Object.prototype;
1700
+ var objectProto$5 = Object.prototype;
1617
1701
 
1618
1702
  /**
1619
1703
  * Checks if `value` is likely a prototype object.
@@ -1624,7 +1708,7 @@ var objectProto$4 = Object.prototype;
1624
1708
  */
1625
1709
  function isPrototype(value) {
1626
1710
  var Ctor = value && value.constructor,
1627
- proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$4;
1711
+ proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto$5;
1628
1712
 
1629
1713
  return value === proto;
1630
1714
  }
@@ -1653,10 +1737,10 @@ var nativeKeys = _overArg(Object.keys, Object);
1653
1737
  var _nativeKeys = nativeKeys;
1654
1738
 
1655
1739
  /** Used for built-in method references. */
1656
- var objectProto$3 = Object.prototype;
1740
+ var objectProto$4 = Object.prototype;
1657
1741
 
1658
1742
  /** Used to check objects for own properties. */
1659
- var hasOwnProperty$2 = objectProto$3.hasOwnProperty;
1743
+ var hasOwnProperty$3 = objectProto$4.hasOwnProperty;
1660
1744
 
1661
1745
  /**
1662
1746
  * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
@@ -1671,7 +1755,7 @@ function baseKeys(object) {
1671
1755
  }
1672
1756
  var result = [];
1673
1757
  for (var key in Object(object)) {
1674
- if (hasOwnProperty$2.call(object, key) && key != 'constructor') {
1758
+ if (hasOwnProperty$3.call(object, key) && key != 'constructor') {
1675
1759
  result.push(key);
1676
1760
  }
1677
1761
  }
@@ -2294,10 +2378,10 @@ var COMPARE_PARTIAL_FLAG$4 = 1,
2294
2378
  var boolTag = '[object Boolean]',
2295
2379
  dateTag = '[object Date]',
2296
2380
  errorTag = '[object Error]',
2297
- mapTag$1 = '[object Map]',
2381
+ mapTag$2 = '[object Map]',
2298
2382
  numberTag = '[object Number]',
2299
2383
  regexpTag = '[object RegExp]',
2300
- setTag$1 = '[object Set]',
2384
+ setTag$2 = '[object Set]',
2301
2385
  stringTag = '[object String]',
2302
2386
  symbolTag = '[object Symbol]';
2303
2387
 
@@ -2359,10 +2443,10 @@ function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
2359
2443
  // for more details.
2360
2444
  return object == (other + '');
2361
2445
 
2362
- case mapTag$1:
2446
+ case mapTag$2:
2363
2447
  var convert = _mapToArray;
2364
2448
 
2365
- case setTag$1:
2449
+ case setTag$2:
2366
2450
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG$4;
2367
2451
  convert || (convert = _setToArray);
2368
2452
 
@@ -2461,10 +2545,10 @@ function stubArray() {
2461
2545
  var stubArray_1 = stubArray;
2462
2546
 
2463
2547
  /** Used for built-in method references. */
2464
- var objectProto$2 = Object.prototype;
2548
+ var objectProto$3 = Object.prototype;
2465
2549
 
2466
2550
  /** Built-in value references. */
2467
- var propertyIsEnumerable = objectProto$2.propertyIsEnumerable;
2551
+ var propertyIsEnumerable = objectProto$3.propertyIsEnumerable;
2468
2552
 
2469
2553
  /* Built-in method references for those with the same name as other `lodash` methods. */
2470
2554
  var nativeGetSymbols = Object.getOwnPropertySymbols;
@@ -2505,10 +2589,10 @@ var _getAllKeys = getAllKeys;
2505
2589
  var COMPARE_PARTIAL_FLAG$3 = 1;
2506
2590
 
2507
2591
  /** Used for built-in method references. */
2508
- var objectProto$1 = Object.prototype;
2592
+ var objectProto$2 = Object.prototype;
2509
2593
 
2510
2594
  /** Used to check objects for own properties. */
2511
- var hasOwnProperty$1 = objectProto$1.hasOwnProperty;
2595
+ var hasOwnProperty$2 = objectProto$2.hasOwnProperty;
2512
2596
 
2513
2597
  /**
2514
2598
  * A specialized version of `baseIsEqualDeep` for objects with support for
@@ -2536,7 +2620,7 @@ function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
2536
2620
  var index = objLength;
2537
2621
  while (index--) {
2538
2622
  var key = objProps[index];
2539
- if (!(isPartial ? key in other : hasOwnProperty$1.call(other, key))) {
2623
+ if (!(isPartial ? key in other : hasOwnProperty$2.call(other, key))) {
2540
2624
  return false;
2541
2625
  }
2542
2626
  }
@@ -2611,10 +2695,10 @@ var WeakMap$1 = _getNative(_root, 'WeakMap');
2611
2695
  var _WeakMap = WeakMap$1;
2612
2696
 
2613
2697
  /** `Object#toString` result references. */
2614
- var mapTag = '[object Map]',
2698
+ var mapTag$1 = '[object Map]',
2615
2699
  objectTag$1 = '[object Object]',
2616
2700
  promiseTag = '[object Promise]',
2617
- setTag = '[object Set]',
2701
+ setTag$1 = '[object Set]',
2618
2702
  weakMapTag = '[object WeakMap]';
2619
2703
 
2620
2704
  var dataViewTag = '[object DataView]';
@@ -2637,9 +2721,9 @@ var getTag = _baseGetTag;
2637
2721
 
2638
2722
  // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
2639
2723
  if ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag) ||
2640
- (_Map && getTag(new _Map) != mapTag) ||
2724
+ (_Map && getTag(new _Map) != mapTag$1) ||
2641
2725
  (_Promise && getTag(_Promise.resolve()) != promiseTag) ||
2642
- (_Set && getTag(new _Set) != setTag) ||
2726
+ (_Set && getTag(new _Set) != setTag$1) ||
2643
2727
  (_WeakMap && getTag(new _WeakMap) != weakMapTag)) {
2644
2728
  getTag = function(value) {
2645
2729
  var result = _baseGetTag(value),
@@ -2649,9 +2733,9 @@ if ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag) ||
2649
2733
  if (ctorString) {
2650
2734
  switch (ctorString) {
2651
2735
  case dataViewCtorString: return dataViewTag;
2652
- case mapCtorString: return mapTag;
2736
+ case mapCtorString: return mapTag$1;
2653
2737
  case promiseCtorString: return promiseTag;
2654
- case setCtorString: return setTag;
2738
+ case setCtorString: return setTag$1;
2655
2739
  case weakMapCtorString: return weakMapTag;
2656
2740
  }
2657
2741
  }
@@ -2670,10 +2754,10 @@ var argsTag = '[object Arguments]',
2670
2754
  objectTag = '[object Object]';
2671
2755
 
2672
2756
  /** Used for built-in method references. */
2673
- var objectProto = Object.prototype;
2757
+ var objectProto$1 = Object.prototype;
2674
2758
 
2675
2759
  /** Used to check objects for own properties. */
2676
- var hasOwnProperty = objectProto.hasOwnProperty;
2760
+ var hasOwnProperty$1 = objectProto$1.hasOwnProperty;
2677
2761
 
2678
2762
  /**
2679
2763
  * A specialized version of `baseIsEqual` for arrays and objects which performs
@@ -2716,8 +2800,8 @@ function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
2716
2800
  : _equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
2717
2801
  }
2718
2802
  if (!(bitmask & COMPARE_PARTIAL_FLAG$2)) {
2719
- var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
2720
- othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
2803
+ var objIsWrapped = objIsObj && hasOwnProperty$1.call(object, '__wrapped__'),
2804
+ othIsWrapped = othIsObj && hasOwnProperty$1.call(other, '__wrapped__');
2721
2805
 
2722
2806
  if (objIsWrapped || othIsWrapped) {
2723
2807
  var objUnwrapped = objIsWrapped ? object.value() : object,
@@ -3499,6 +3583,75 @@ var sortBy = _baseRest(function(collection, iteratees) {
3499
3583
 
3500
3584
  var sortBy_1 = sortBy;
3501
3585
 
3586
+ /** `Object#toString` result references. */
3587
+ var mapTag = '[object Map]',
3588
+ setTag = '[object Set]';
3589
+
3590
+ /** Used for built-in method references. */
3591
+ var objectProto = Object.prototype;
3592
+
3593
+ /** Used to check objects for own properties. */
3594
+ var hasOwnProperty = objectProto.hasOwnProperty;
3595
+
3596
+ /**
3597
+ * Checks if `value` is an empty object, collection, map, or set.
3598
+ *
3599
+ * Objects are considered empty if they have no own enumerable string keyed
3600
+ * properties.
3601
+ *
3602
+ * Array-like values such as `arguments` objects, arrays, buffers, strings, or
3603
+ * jQuery-like collections are considered empty if they have a `length` of `0`.
3604
+ * Similarly, maps and sets are considered empty if they have a `size` of `0`.
3605
+ *
3606
+ * @static
3607
+ * @memberOf _
3608
+ * @since 0.1.0
3609
+ * @category Lang
3610
+ * @param {*} value The value to check.
3611
+ * @returns {boolean} Returns `true` if `value` is empty, else `false`.
3612
+ * @example
3613
+ *
3614
+ * _.isEmpty(null);
3615
+ * // => true
3616
+ *
3617
+ * _.isEmpty(true);
3618
+ * // => true
3619
+ *
3620
+ * _.isEmpty(1);
3621
+ * // => true
3622
+ *
3623
+ * _.isEmpty([1, 2, 3]);
3624
+ * // => false
3625
+ *
3626
+ * _.isEmpty({ 'a': 1 });
3627
+ * // => false
3628
+ */
3629
+ function isEmpty$1(value) {
3630
+ if (value == null) {
3631
+ return true;
3632
+ }
3633
+ if (isArrayLike_1(value) &&
3634
+ (isArray_1(value) || typeof value == 'string' || typeof value.splice == 'function' ||
3635
+ isBuffer_1(value) || isTypedArray_1(value) || isArguments_1(value))) {
3636
+ return !value.length;
3637
+ }
3638
+ var tag = _getTag(value);
3639
+ if (tag == mapTag || tag == setTag) {
3640
+ return !value.size;
3641
+ }
3642
+ if (_isPrototype(value)) {
3643
+ return !_baseKeys(value).length;
3644
+ }
3645
+ for (var key in value) {
3646
+ if (hasOwnProperty.call(value, key)) {
3647
+ return false;
3648
+ }
3649
+ }
3650
+ return true;
3651
+ }
3652
+
3653
+ var isEmpty_1 = isEmpty$1;
3654
+
3502
3655
  'use strict';
3503
3656
 
3504
3657
  var bind = function bind(fn, thisArg) {
@@ -5359,75 +5512,6 @@ axios_1.default = _default;
5359
5512
 
5360
5513
  var axios = axios_1;
5361
5514
 
5362
- const timeFormat = 'HH:mm:ss';
5363
- const timeFormatAmPm = 'hh:mm A';
5364
- const dateName = 'dddd';
5365
- const dateFormat = 'YYYY-MM-DD';
5366
- const dateTimeFormat = 'YYYY-MM-DD HH:mm:ss';
5367
- const dateTimeFormatAmPm = 'YYYY-MM-DD hh:mm A';
5368
- const shortDateFormat = 'ddd, MMM DD';
5369
- const shortDateYearFormat = 'ddd, MMM DD YYYY';
5370
- const apiV1Prefix = 'api';
5371
- const apiV2Prefix$1 = 'api-ver2';
5372
- const defaultImage = 'https://res.cloudinary.com/reckon-mini-sites/image/upload/v1636477599/FaveSalon%20Social%20Website/default/default--picture_w3jvfh.png';
5373
-
5374
- var BusinessHourStatus;
5375
- (function (BusinessHourStatus) {
5376
- BusinessHourStatus[BusinessHourStatus["Open"] = 0] = "Open";
5377
- BusinessHourStatus[BusinessHourStatus["Close"] = 1] = "Close";
5378
- BusinessHourStatus[BusinessHourStatus["ByAppointment"] = 2] = "ByAppointment";
5379
- })(BusinessHourStatus || (BusinessHourStatus = {}));
5380
- function createSalon(blob) {
5381
- const geoLocations = blob.salon_geolocation || [];
5382
- let salonImages = [];
5383
- if (blob.salon_miniwebsite) {
5384
- const activeSite = Array.isArray(blob.salon_miniwebsite) ? blob.salon_miniwebsite[0] : (blob.salon_miniwebsite || {});
5385
- salonImages = [
5386
- activeSite.full_small_slider_img1,
5387
- activeSite.full_small_slider_img2,
5388
- activeSite.full_small_slider_img3,
5389
- ].filter(image => !!image);
5390
- }
5391
- return {
5392
- id: blob.id,
5393
- about: blob.about,
5394
- email: blob.email,
5395
- ownerName: blob.owner_name,
5396
- fullProfileImage: blob.full_profile_image,
5397
- fullCoverImage: blob.full_cover_image,
5398
- subdomain: blob.subdomain,
5399
- website: blob.website,
5400
- businessName: blob.business_name,
5401
- businessPhone: blob.business_phone,
5402
- businessAddress: blob.business_address,
5403
- businessLocationLat: geoLocations.length > 0 ? geoLocations[0].location_lat : null,
5404
- businessLocationLng: geoLocations.length > 0 ? geoLocations[0].location_lng : null,
5405
- city: blob.city,
5406
- state: blob.state,
5407
- zipcode: blob.zipcode ? Number(blob.zipcode) : null,
5408
- businessHours: (blob.business_hours || blob.salon_working_time || []).map(bh => {
5409
- return {
5410
- dayName: bh.day_name,
5411
- openTime: bh.open_time,
5412
- closeTime: bh.close_time,
5413
- status: bh.status,
5414
- };
5415
- }),
5416
- rating: Number(blob.rating_point),
5417
- primaryColor: blob.primary_color || Colors.Primary,
5418
- salonImages,
5419
- };
5420
- }
5421
- function getSalonImage({ salonImages, fullProfileImage }) {
5422
- if (salonImages && salonImages.length > 0) {
5423
- return salonImages[0];
5424
- }
5425
- if (fullProfileImage) {
5426
- return fullProfileImage;
5427
- }
5428
- return defaultImage;
5429
- }
5430
-
5431
5515
  /**
5432
5516
  * @license
5433
5517
  * Copyright 2017 Google LLC
@@ -23318,10 +23402,6 @@ const forceRestClient = function (forceRestClient) {
23318
23402
  */
23319
23403
  registerDatabase();
23320
23404
 
23321
- var dayjs_min = createCommonjsModule(function (module, exports) {
23322
- !function(t,e){"object"=='object'&&"undefined"!='object'?module.exports=e():"function"==typeof undefined&&undefined.amd?undefined(e):(t="undefined"!=typeof globalThis?globalThis:t||self).dayjs=e();}(commonjsGlobal,(function(){"use strict";var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",f="month",h="quarter",c="year",d="date",$="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},g={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return -t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,f),s=n-i<0,u=e.clone().add(r+(s?-1:1),f);return +(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return {M:f,y:c,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:h}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},D="en",v={};v[D]=M;var p=function(t){return t instanceof _},S=function(t,e,n){var r;if(!t)return D;if("string"==typeof t)v[t]&&(r=t),e&&(v[t]=e,r=t);else {var i=t.name;v[i]=t,r=i;}return !n&&r&&(D=r),r||!n&&D},w=function(t,e){if(p(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},O=g;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=S(t.locale,null,!0),this.parse(t);}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(l);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.$x=t.x||{},this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return O},m.isValid=function(){return !(this.$d.toString()===$)},m.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return w(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<w(t)},m.$g=function(t,e,n){return O.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!O.u(e)||e,h=O.p(t),$=function(t,e){var i=O.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},l=function(t,e){return O.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,g="set"+(this.$u?"UTC":"");switch(h){case c:return r?$(1,0):$(31,11);case f:return r?$(1,M):$(0,M+1);case o:var D=this.$locale().weekStart||0,v=(y<D?y+7:y)-D;return $(r?m-v:m+(6-v),M);case a:case d:return l(g+"Hours",0);case u:return l(g+"Minutes",1);case s:return l(g+"Seconds",2);case i:return l(g+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=O.p(t),h="set"+(this.$u?"UTC":""),$=(n={},n[a]=h+"Date",n[d]=h+"Date",n[f]=h+"Month",n[c]=h+"FullYear",n[u]=h+"Hours",n[s]=h+"Minutes",n[i]=h+"Seconds",n[r]=h+"Milliseconds",n)[o],l=o===a?this.$D+(e-this.$W):e;if(o===f||o===c){var y=this.clone().set(d,1);y.$d[$](l),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d;}else $&&this.$d[$](l);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[O.p(t)]()},m.add=function(r,h){var d,$=this;r=Number(r);var l=O.p(h),y=function(t){var e=w($);return O.w(e.date(e.date()+Math.round(t*r)),$)};if(l===f)return this.set(f,this.$M+r);if(l===c)return this.set(c,this.$y+r);if(l===a)return y(1);if(l===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[l]||1,m=this.$d.getTime()+r*M;return O.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||$;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=O.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,f=n.months,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].substr(0,s)},c=function(t){return O.s(s%12||12,t,"0")},d=n.meridiem||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r},l={YY:String(this.$y).slice(-2),YYYY:this.$y,M:a+1,MM:O.s(a+1,2,"0"),MMM:h(n.monthsShort,a,f,3),MMMM:h(f,a),D:this.$D,DD:O.s(this.$D,2,"0"),d:String(this.$W),dd:h(n.weekdaysMin,this.$W,o,2),ddd:h(n.weekdaysShort,this.$W,o,3),dddd:o[this.$W],H:String(s),HH:O.s(s,2,"0"),h:c(1),hh:c(2),a:d(s,u,!0),A:d(s,u,!1),m:String(u),mm:O.s(u,2,"0"),s:String(this.$s),ss:O.s(this.$s,2,"0"),SSS:O.s(this.$ms,3,"0"),Z:i};return r.replace(y,(function(t,e){return e||l[t]||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,$){var l,y=O.p(d),M=w(r),m=(M.utcOffset()-this.utcOffset())*e,g=this-M,D=O.m(this,M);return D=(l={},l[c]=D/12,l[f]=D,l[h]=D/3,l[o]=(g-m)/6048e5,l[a]=(g-m)/864e5,l[u]=g/n,l[s]=g/e,l[i]=g/t,l)[y]||g,$?D:O.a(D)},m.daysInMonth=function(){return this.endOf(f).$D},m.$locale=function(){return v[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=S(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return O.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),b=_.prototype;return w.prototype=b,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",f],["$y",c],["$D",d]].forEach((function(t){b[t[1]]=function(e){return this.$g(e,t[0],t[1])};})),w.extend=function(t,e){return t.$i||(t(e,_,w),t.$i=!0),w},w.locale=S,w.isDayjs=p,w.unix=function(t){return w(1e3*t)},w.en=v[D],w.Ls=v,w.p={},w}));
23323
- });
23324
-
23325
23405
  function createService(blob) {
23326
23406
  const photos = (blob.photo_link || []).map(photo => {
23327
23407
  return {
@@ -23588,6 +23668,28 @@ function createChatRoom(blob) {
23588
23668
  });
23589
23669
  }
23590
23670
 
23671
+ class GiftCardStyle {
23672
+ }
23673
+ class GiftCardSettings {
23674
+ }
23675
+ function createGiftCardSettings(blob) {
23676
+ return {
23677
+ isMagensaPayment: false,
23678
+ acceptCustomAmount: Boolean(blob.accept_custom_amount),
23679
+ acceptPaymentOnline: Boolean(blob.accept_payment_online),
23680
+ giftCardTerms: blob.gift_card_terms,
23681
+ giftCardStyles: blob.gift_card_styles.map((style, idx) => {
23682
+ return { id: `${style.id}-${idx + 1}`, imageUrl: style.image_url };
23683
+ }),
23684
+ recommendAmounts: [
23685
+ blob.recommend_amount1,
23686
+ blob.recommend_amount2,
23687
+ blob.recommend_amount3,
23688
+ blob.recommend_amount4,
23689
+ ],
23690
+ };
23691
+ }
23692
+
23591
23693
  const apiV2Prefix = 'api-ver2';
23592
23694
  const firebaseMessagesNode = 'favesalon--messages';
23593
23695
  class HttpService {
@@ -23923,7 +24025,98 @@ class HttpService {
23923
24025
  }
23924
24026
  return Promise.reject();
23925
24027
  }
24028
+ loginByPhoneCode(options) {
24029
+ const url = `${apiV2Prefix}/user/login-by-sms`;
24030
+ return this.http.post(url, options)
24031
+ .then(response => {
24032
+ const status = get_1(response, 'data.status', false);
24033
+ const userBlob = get_1(response, 'data.data', null);
24034
+ if (status && userBlob) {
24035
+ const userEntity = createUser(userBlob);
24036
+ return Promise.resolve(userEntity);
24037
+ }
24038
+ return Promise.reject(response);
24039
+ });
24040
+ }
24041
+ createAccount(options) {
24042
+ const url = `${apiV2Prefix}/user/create`;
24043
+ return this.http.post(url, options)
24044
+ .then(response => {
24045
+ const status = get_1(response, 'data.status', false);
24046
+ const userBlob = get_1(response, 'data.data', {});
24047
+ if (status && !userBlob.errors) {
24048
+ return Promise.resolve(createUser(userBlob));
24049
+ }
24050
+ return Promise.reject(response);
24051
+ });
24052
+ }
24053
+ activateUserAccount({ email, code }) {
24054
+ const url = `${apiV2Prefix}/user/active?email=${email}&code=${code}`;
24055
+ return this.http.get(url)
24056
+ .then(response => {
24057
+ const status = get_1(response, 'data.status', false);
24058
+ const userBlob = get_1(response, 'data.data', {});
24059
+ if (status && userBlob) {
24060
+ const userEntity = createUser(userBlob);
24061
+ return Promise.resolve(userEntity);
24062
+ }
24063
+ return Promise.reject(response);
24064
+ });
24065
+ }
24066
+ sendLoginCode(phone, salonId) {
24067
+ const url = `${apiV2Prefix}/login-verify?phone_number=${phone}&type=login-by-sms${salonId ? `&salon_id=${salonId}` : ''}`;
24068
+ return this.http.get(url);
24069
+ }
24070
+ onBuyGiftCard(salonId, options) {
24071
+ const url = `salon/giftcard/request/buy/${salonId}`;
24072
+ return this.http.post(url, options);
24073
+ }
24074
+ fetchGiftCardSettings(salonId) {
24075
+ const url = `${apiV1Prefix}/salon/giftcard/setting/${salonId}`;
24076
+ return this.http.get(url)
24077
+ .then(response => {
24078
+ const blob = get_1(response, 'data.data', {});
24079
+ return {
24080
+ ...createGiftCardSettings(blob),
24081
+ isMagensaPayment: salonId === 49989,
24082
+ };
24083
+ })
24084
+ .catch(() => (null));
24085
+ }
24086
+ fetchSalonClientInfo(salonId, mobilePhone) {
24087
+ const url = `${apiV2Prefix}/salon/${salonId}/client-info?phone_number=${mobilePhone}`;
24088
+ return this.http.get(url)
24089
+ .then(response => {
24090
+ const status = get_1(response, 'data.status', false);
24091
+ const blob = get_1(response, 'data.data', []);
24092
+ return Promise.resolve(status && !blob.errors && !isEmpty_1(blob) ? createUser(blob) : {});
24093
+ })
24094
+ .catch(() => ({}));
24095
+ }
24096
+ fetchMagensaCredentials(salonId) {
24097
+ return Promise.resolve(salonId ? {
24098
+ processorName: 'TSYS - Pilot',
24099
+ customerCode: 'AI51036407',
24100
+ username: 'MAG234632492',
24101
+ password: `4K0B;a'y7DMTUz`,
24102
+ token: `Tk40OTQ0MzU2Ni9NQUcxMjc3MjQ2NjI6NVBMfisjSDUhcjF6SF4=`,
24103
+ } : {});
24104
+ }
24105
+ magensaProcessToken(options) {
24106
+ const url = `${apiV2Prefix}/magensa/process-token`;
24107
+ return this.http.post(url, options)
24108
+ .then(response => {
24109
+ return Promise.resolve((response.data || [])[0] || {});
24110
+ });
24111
+ }
24112
+ magensaConfirmTransaction(options) {
24113
+ const url = `${apiV2Prefix}/magensa/process-referenceid`;
24114
+ return this.http.post(url, options)
24115
+ .then(response => {
24116
+ return Promise.resolve((response.data || [])[0] || {});
24117
+ });
24118
+ }
23926
24119
  }
23927
24120
  const HttpService$1 = () => new HttpService();
23928
24121
 
23929
- export { BusinessHourStatus as B, HttpService$1 as H, sortBy_1 as a, dayjs_min as d, getSalonImage as g, isVideoMedia as i, shortDateYearFormat as s, timeFormatAmPm as t };
24122
+ export { BusinessHourStatus as B, HttpService$1 as H, _root as _, isObject_1 as a, dateFormat as b, getSalonImage as c, dayjs_min as d, getSalonAddress as e, shortDateYearFormat as f, get_1 as g, sortBy_1 as h, isSymbol_1 as i, isVideoMedia as j, shortDateFormat as s, timeFormatAmPm as t };