favesalon-embed 1.0.4 → 1.0.5

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 (177) hide show
  1. package/dist/custom-elements/index.d.ts +6 -0
  2. package/dist/{cjs/_commonjsHelpers-5cfcba41.js → favesalon-embed/_commonjsHelpers-a4f66ccd.js} +14 -6
  3. package/dist/favesalon-embed/app-globals-74127f4b.js +7 -0
  4. package/dist/favesalon-embed/chat-box.entry.js +55 -0
  5. package/dist/{esm → favesalon-embed}/chat-button.entry.js +4 -4
  6. package/dist/favesalon-embed/chat-form.entry.js +39 -0
  7. package/dist/favesalon-embed/chat-messages.entry.js +71 -0
  8. package/dist/favesalon-embed/chat-rooms.entry.js +111 -0
  9. package/dist/favesalon-embed/css-shim-b7d3d95f.js +4 -0
  10. package/dist/favesalon-embed/dom-64053c71.js +73 -0
  11. package/dist/favesalon-embed/favesalon-embed.css +114 -1
  12. package/dist/favesalon-embed/favesalon-embed.esm.js +148 -1
  13. package/dist/{esm → favesalon-embed}/google-map.entry.js +1 -1
  14. package/dist/{esm/index-a1c7583c.js → favesalon-embed/index-00b83e1c.js} +425 -15
  15. package/dist/favesalon-embed/index-888e99e3.js +3371 -0
  16. package/dist/favesalon-embed/index.esm.js +1 -0
  17. package/dist/{esm/chat-box_5.entry.js → favesalon-embed/lodash-d5526b38.js} +27 -243
  18. package/dist/{cjs/chat-button.cjs.entry.js → favesalon-embed/notify-sounds.entry.js} +20 -44
  19. package/dist/favesalon-embed/relativeTime-268e64b0.js +7 -0
  20. package/dist/{esm → favesalon-embed}/salon-booking-modal.entry.js +1 -1
  21. package/dist/{esm → favesalon-embed}/salon-booking.entry.js +3 -3
  22. package/dist/{esm → favesalon-embed}/salon-gift-card-modal.entry.js +1 -1
  23. package/dist/{esm → favesalon-embed}/salon-gift-card.entry.js +3 -3
  24. package/dist/{esm → favesalon-embed}/salon-info.entry.js +3 -3
  25. package/dist/{esm → favesalon-embed}/salon-latest-reviews.entry.js +4 -4
  26. package/dist/{collection/components/salon-latest-styles/index.js → favesalon-embed/salon-latest-styles.entry.js} +14 -99
  27. package/dist/{collection/components/salon-locations/index.js → favesalon-embed/salon-locations.entry.js} +15 -95
  28. package/dist/{esm → favesalon-embed}/salon-lookbook.entry.js +3 -3
  29. package/dist/{esm → favesalon-embed}/salon-ranking.entry.js +1 -1
  30. package/dist/{esm → favesalon-embed}/salon-reviews.entry.js +3 -3
  31. package/dist/{collection/components/salon-schedules/index.js → favesalon-embed/salon-schedules.entry.js} +14 -95
  32. package/dist/{esm → favesalon-embed}/salon-services.entry.js +3 -3
  33. package/dist/{esm → favesalon-embed}/salon-stylists.entry.js +3 -3
  34. package/dist/favesalon-embed/services-122dcf73.js +23886 -0
  35. package/dist/{cjs/services-d1bdf299.js → favesalon-embed/services-23eda072.js} +2487 -104
  36. package/dist/favesalon-embed/services-243eef47.js +23880 -0
  37. package/dist/favesalon-embed/services-260ea6eb.js +23883 -0
  38. package/dist/favesalon-embed/services-27607998.js +23886 -0
  39. package/dist/{esm/services-257442e2.js → favesalon-embed/services-46b2f0aa.js} +2482 -101
  40. package/dist/favesalon-embed/services-65a8cf4a.js +23887 -0
  41. package/dist/favesalon-embed/services-8f52210f.js +23880 -0
  42. package/dist/favesalon-embed/services-de32365e.js +23880 -0
  43. package/dist/favesalon-embed/services-e9cfcd2b.js +23885 -0
  44. package/dist/favesalon-embed/services-f7278483.js +23880 -0
  45. package/dist/favesalon-embed/services-f9872bea.js +23880 -0
  46. package/dist/favesalon-embed/shadow-css-98135883.js +387 -0
  47. package/dist/{esm → favesalon-embed}/style-detail.entry.js +4 -4
  48. package/dist/favesalon-embed/user-avatar.entry.js +50 -0
  49. package/dist/{esm/utils-e97485e0.js → favesalon-embed/utils-2c19db45.js} +6 -0
  50. package/dist/{collection/utils/utils.js → favesalon-embed/utils-89c2cff2.js} +14 -5
  51. package/dist/{cjs/utils-c5a33b3c.js → favesalon-embed/utils-e226fa04.js} +14 -5
  52. package/dist/favesalon-embed/utils-fd30fb29.js +32 -0
  53. package/dist/types/components/chat-box/index.d.ts +1 -0
  54. package/dist/types/components/chat-button/notify-sounds.d.ts +5 -0
  55. package/dist/types/components/chat-rooms/index.d.ts +6 -0
  56. package/dist/types/components.d.ts +21 -0
  57. package/dist/types/services/services.d.ts +1 -0
  58. package/dist/types/types/chat.d.ts +1 -0
  59. package/dist/types/types/user.d.ts +10 -0
  60. package/dist/types/utils/utils.d.ts +1 -0
  61. package/package.json +1 -1
  62. package/dist/cjs/chat-box_5.cjs.entry.js +0 -17439
  63. package/dist/cjs/colors-38421769.js +0 -69
  64. package/dist/cjs/favesalon-embed.cjs.js +0 -23
  65. package/dist/cjs/google-map.cjs.entry.js +0 -52
  66. package/dist/cjs/index-7f190886.js +0 -4396
  67. package/dist/cjs/index-dd8176c4.js +0 -1531
  68. package/dist/cjs/index.cjs.js +0 -2
  69. package/dist/cjs/loader.cjs.js +0 -22
  70. package/dist/cjs/relativeTime-3721080d.js +0 -9
  71. package/dist/cjs/salon-booking-modal.cjs.entry.js +0 -30
  72. package/dist/cjs/salon-booking.cjs.entry.js +0 -51
  73. package/dist/cjs/salon-gift-card-modal.cjs.entry.js +0 -29
  74. package/dist/cjs/salon-gift-card.cjs.entry.js +0 -51
  75. package/dist/cjs/salon-info.cjs.entry.js +0 -33
  76. package/dist/cjs/salon-latest-reviews.cjs.entry.js +0 -97
  77. package/dist/cjs/salon-latest-styles_3.cjs.entry.js +0 -241
  78. package/dist/cjs/salon-lookbook.cjs.entry.js +0 -222
  79. package/dist/cjs/salon-ranking.cjs.entry.js +0 -60
  80. package/dist/cjs/salon-reviews.cjs.entry.js +0 -193
  81. package/dist/cjs/salon-services.cjs.entry.js +0 -81
  82. package/dist/cjs/salon-stylists.cjs.entry.js +0 -118
  83. package/dist/cjs/style-detail.cjs.entry.js +0 -312
  84. package/dist/collection/collection-manifest.json +0 -33
  85. package/dist/collection/components/chat-box/index.css +0 -105
  86. package/dist/collection/components/chat-box/index.js +0 -138
  87. package/dist/collection/components/chat-button/index.css +0 -101
  88. package/dist/collection/components/chat-button/index.js +0 -155
  89. package/dist/collection/components/chat-form/index.css +0 -40
  90. package/dist/collection/components/chat-form/index.js +0 -79
  91. package/dist/collection/components/chat-messages/index.css +0 -48
  92. package/dist/collection/components/chat-messages/index.js +0 -142
  93. package/dist/collection/components/chat-rooms/index.css +0 -102
  94. package/dist/collection/components/chat-rooms/index.js +0 -157
  95. package/dist/collection/components/google-map/assets/map--placeholder.jpeg +0 -0
  96. package/dist/collection/components/google-map/index.css +0 -5
  97. package/dist/collection/components/google-map/index.js +0 -90
  98. package/dist/collection/components/salon-booking/index.css +0 -30
  99. package/dist/collection/components/salon-booking/index.js +0 -126
  100. package/dist/collection/components/salon-booking/salon-booking-modal.js +0 -92
  101. package/dist/collection/components/salon-gift-card/index.css +0 -30
  102. package/dist/collection/components/salon-gift-card/index.js +0 -126
  103. package/dist/collection/components/salon-gift-card/salon-gift-card-modal.js +0 -73
  104. package/dist/collection/components/salon-info/index.css +0 -1
  105. package/dist/collection/components/salon-info/index.js +0 -77
  106. package/dist/collection/components/salon-latest-reviews/index.css +0 -11
  107. package/dist/collection/components/salon-latest-reviews/index.js +0 -163
  108. package/dist/collection/components/salon-latest-styles/index.css +0 -12
  109. package/dist/collection/components/salon-locations/index.css +0 -24
  110. package/dist/collection/components/salon-lookbook/index.css +0 -15
  111. package/dist/collection/components/salon-lookbook/index.js +0 -368
  112. package/dist/collection/components/salon-ranking/index.css +0 -3
  113. package/dist/collection/components/salon-ranking/index.js +0 -117
  114. package/dist/collection/components/salon-reviews/index.css +0 -18
  115. package/dist/collection/components/salon-reviews/index.js +0 -249
  116. package/dist/collection/components/salon-schedules/index.css +0 -18
  117. package/dist/collection/components/salon-services/index.css +0 -1
  118. package/dist/collection/components/salon-services/index.js +0 -146
  119. package/dist/collection/components/salon-stylists/index.css +0 -43
  120. package/dist/collection/components/salon-stylists/index.js +0 -184
  121. package/dist/collection/components/style-detail/index.css +0 -76
  122. package/dist/collection/components/style-detail/index.js +0 -386
  123. package/dist/collection/components/user-avatar/index.css +0 -0
  124. package/dist/collection/components/user-avatar/index.js +0 -159
  125. package/dist/collection/constants/colors.js +0 -65
  126. package/dist/collection/global/global.js +0 -0
  127. package/dist/collection/index.js +0 -1
  128. package/dist/collection/mocks/users.js +0 -10
  129. package/dist/collection/services/services.js +0 -295
  130. package/dist/collection/types/chat.js +0 -23
  131. package/dist/collection/types/common.js +0 -11
  132. package/dist/collection/types/review.js +0 -39
  133. package/dist/collection/types/salon.js +0 -58
  134. package/dist/collection/types/service.js +0 -24
  135. package/dist/collection/types/style.js +0 -128
  136. package/dist/collection/types/stylist.js +0 -30
  137. package/dist/collection/types/user.js +0 -10
  138. package/dist/custom-elements/index.js +0 -44974
  139. package/dist/esm/_commonjsHelpers-66ac50f5.js +0 -32
  140. package/dist/esm/favesalon-embed.js +0 -18
  141. package/dist/esm/index-0494771f.js +0 -1504
  142. package/dist/esm/index.js +0 -1
  143. package/dist/esm/loader.js +0 -18
  144. package/dist/esm/polyfills/core-js.js +0 -11
  145. package/dist/esm/polyfills/css-shim.js +0 -1
  146. package/dist/esm/polyfills/dom.js +0 -79
  147. package/dist/esm/polyfills/es5-html-element.js +0 -1
  148. package/dist/esm/polyfills/index.js +0 -34
  149. package/dist/esm/polyfills/system.js +0 -6
  150. package/dist/esm/relativeTime-baa50aa2.js +0 -7
  151. package/dist/esm/salon-latest-styles_3.entry.js +0 -235
  152. package/dist/favesalon-embed/p-05a1c88a.entry.js +0 -1
  153. package/dist/favesalon-embed/p-0acf0447.entry.js +0 -1
  154. package/dist/favesalon-embed/p-0bc4f624.js +0 -1
  155. package/dist/favesalon-embed/p-1af1515f.entry.js +0 -1
  156. package/dist/favesalon-embed/p-1cba5fc9.entry.js +0 -1
  157. package/dist/favesalon-embed/p-39a4ef15.entry.js +0 -1
  158. package/dist/favesalon-embed/p-3e2cb05b.entry.js +0 -1
  159. package/dist/favesalon-embed/p-47e646f8.js +0 -1
  160. package/dist/favesalon-embed/p-487b311f.entry.js +0 -1
  161. package/dist/favesalon-embed/p-55387c2f.entry.js +0 -1
  162. package/dist/favesalon-embed/p-566f05b4.entry.js +0 -1
  163. package/dist/favesalon-embed/p-862a0de0.entry.js +0 -1
  164. package/dist/favesalon-embed/p-9fe0cbeb.js +0 -2
  165. package/dist/favesalon-embed/p-a33331cc.js +0 -1
  166. package/dist/favesalon-embed/p-aeeb7b5f.entry.js +0 -1
  167. package/dist/favesalon-embed/p-b08e5b54.js +0 -6
  168. package/dist/favesalon-embed/p-b5cca5fc.entry.js +0 -1
  169. package/dist/favesalon-embed/p-c7fb7af5.js +0 -1580
  170. package/dist/favesalon-embed/p-ccab56d8.js +0 -1
  171. package/dist/favesalon-embed/p-d6e13053.entry.js +0 -1
  172. package/dist/favesalon-embed/p-dee42d34.entry.js +0 -1
  173. package/dist/favesalon-embed/p-e661ca1d.entry.js +0 -1
  174. package/dist/favesalon-embed/p-eeceab9c.entry.js +0 -1
  175. package/dist/index.cjs.js +0 -1
  176. package/dist/index.js +0 -1
  177. /package/dist/{esm → favesalon-embed}/colors-ea36347a.js +0 -0
@@ -38,6 +38,12 @@ export const GoogleMap: {
38
38
  new (): GoogleMap;
39
39
  };
40
40
 
41
+ interface NotifySounds extends Components.NotifySounds, HTMLElement {}
42
+ export const NotifySounds: {
43
+ prototype: NotifySounds;
44
+ new (): NotifySounds;
45
+ };
46
+
41
47
  interface SalonBooking extends Components.SalonBooking, HTMLElement {}
42
48
  export const SalonBooking: {
43
49
  prototype: SalonBooking;
@@ -1,17 +1,27 @@
1
- 'use strict';
2
-
3
1
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
4
2
 
3
+ function getDefaultExportFromCjs (x) {
4
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
5
+ }
6
+
5
7
  function createCommonjsModule(fn, basedir, module) {
6
8
  return module = {
7
9
  path: basedir,
8
10
  exports: {},
9
11
  require: function (path, base) {
10
- return commonjsRequire();
12
+ return commonjsRequire(path, (base === undefined || base === null) ? module.path : base);
11
13
  }
12
14
  }, fn(module, module.exports), module.exports;
13
15
  }
14
16
 
17
+ function getDefaultExportFromNamespaceIfPresent (n) {
18
+ return n && Object.prototype.hasOwnProperty.call(n, 'default') ? n['default'] : n;
19
+ }
20
+
21
+ function getDefaultExportFromNamespaceIfNotNamed (n) {
22
+ return n && Object.prototype.hasOwnProperty.call(n, 'default') && Object.keys(n).length === 1 ? n['default'] : n;
23
+ }
24
+
15
25
  function getAugmentedNamespace(n) {
16
26
  if (n.__esModule) return n;
17
27
  var a = Object.defineProperty({}, '__esModule', {value: true});
@@ -31,6 +41,4 @@ function commonjsRequire () {
31
41
  throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');
32
42
  }
33
43
 
34
- exports.commonjsGlobal = commonjsGlobal;
35
- exports.createCommonjsModule = createCommonjsModule;
36
- exports.getAugmentedNamespace = getAugmentedNamespace;
44
+ export { createCommonjsModule as a, getAugmentedNamespace as b, commonjsGlobal as c, getDefaultExportFromCjs as g };
@@ -0,0 +1,7 @@
1
+ import './index-888e99e3.js';
2
+
3
+ const globalFn = () => { };
4
+
5
+ const globalScripts = globalFn;
6
+
7
+ export { globalScripts as g };
@@ -0,0 +1,55 @@
1
+ import { r as registerInstance, h } from './index-888e99e3.js';
2
+ import { C as Colors } from './colors-ea36347a.js';
3
+ import { H as HttpService } from './services-260ea6eb.js';
4
+ import './_commonjsHelpers-a4f66ccd.js';
5
+
6
+ const indexCss = ".chat-widget,.chat-widget--sidebar,.chat-widget--content{display:flex;height:100%;width:100%}.chat-widget{font-size:16px;position:relative;font-family:'Roboto', sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.chat-widget--sidebar,.chat-widget--content{background-color:#fff;border:1px solid #EFEFEF;position:absolute;inset:0;flex-direction:column}.chat-widget .chat-widget--sidebar{z-index:10}.chat-widget .chat-widget--content{z-index:5}.chat-widget.has-chat-room .chat-widget--content{z-index:10}.chat-widget--content-header{background-color:#001529;border-bottom:1px solid #EFEFEF;display:flex;align-items:center;justify-content:space-between;padding:16px}.chat-widget--content-title{font-size:20px;font-weight:600;line-height:1;margin:0}.chat-widget--content-close{border:1px solid #fff;cursor:pointer;display:block;position:absolute;z-index:1000;top:50%;right:0;width:30px;height:30px;transform:translate(0, -50%);-moz-border-radius:30px;-webkit-border-radius:30px;border-radius:30px;background-size:contain;background-repeat:no-repeat;background-position:center center;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAA3hJREFUaAXlm8+K00Acx7MiCIJH/yw+gA9g25O49SL4AO3Bp1jw5NvktC+wF88qevK4BU97EmzxUBCEolK/n5gp3W6TTJPfpNPNF37MNsl85/vN/DaTmU6PknC4K+pniqeKJ3k8UnkvDxXJzzy+q/yaxxeVHxW/FNHjgRSeKt4rFoplzaAuHHDBGR2eS9G54reirsmienDCTRt7xwsp+KAoEmt9nLaGitZxrBbPFNaGfPloGw2t4JVamSt8xYW6Dg1oCYo3Yv+rCGViV160oMkcd8SYKnYV1Nb1aEOjCe6L5ZOiLfF120EjWhuBu3YIZt1NQmujnk5F4MgOpURzLfAwOBSTmzp3fpDxuI/pabxpqOoz2r2HLAb0GMbZKlNV5/Hg9XJypguryA7lPF5KMdTZQzHjqxNPhWhzIuAruOl1eNqKEx1tSh5rfbxdw7mOxCq4qS68ZTjKS1YVvilu559vWvFHhh4rZrdyZ69Vmpgdj8fJbDZLJpNJ0uv1cnr/gjrUhQMuI+ANjyuwftQ0bbL6Erp0mM/ny8Fg4M3LtdRxgMtKl3jwmIHVxYXChFy94/Rmpa/pTbNUhstKV+4Rr8lLQ9KlUvJKLyG8yvQ2s9SBy1Jb7jV5a0yapfF6apaZLjLLcWtd4sNrmJUMHyM+1xibTjH82Zh01TNlhsrOhdKTe00uAzZQmN6+KW+sDa/JD2PSVQ873m29yf+1Q9VDzfEYlHi1G5LKBBWZbtEsHbFwb1oYDwr1ZiF/2bnCSg1OBE/pfr9/bWx26UxJL3ONPISOLKUvQza0LZUxSKyjpdTGa/vDEr25rddbMM0Q3O6Lx3rqFvU+x6UrRKQY7tyrZecmD9FODy8uLizTmilwNj0kraNcAJhOp5aGVwsAGD5VmJBrWWbJSgWT9zrzWepQF47RaGSiKfeGx6Szi3gzmX/HHbihwBser4B9UJYpFBNX4R6vTn3VQnez0SymnrHQMsRYGTr1dSk34ljRqS/EMd2pLQ8YBp3a1PLfcqCpo8gtHkZFHKkTX6fs3MY0blKnth66rKCnU0VRGu37ONrQaA4eZDFtWAu2fXj9zjFkxTBOo8F7t926gTp/83Kyzzcy2kZD6xiqxTYnHLRFm3vHiRSwNSjkz3hoIzo8lCKWUlg/YtGs7tObunDAZfpDLbfEI15zsEIY3U/x/gHHc/G1zltnAgAAAABJRU5ErkJggg==')}@media (min-width: 992px){.chat-widget--sidebar,.chat-widget--content{position:static;width:auto;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}.chat-widget--sidebar{min-width:320px;max-width:320px;margin-right:24px}.chat-widget--content{flex-grow:1;flex-shrink:1}.chat-rooms--search,.chat-widget--content-header{-moz-border-radius:8px 8px 0 0;-webkit-border-radius:8px 8px 0 0;border-radius:8px 8px 0 0}}";
7
+
8
+ const ChatBox = class {
9
+ constructor(hostRef) {
10
+ registerInstance(this, hostRef);
11
+ this.onClickRoom = (chatRoom) => {
12
+ this.activeRoom = chatRoom;
13
+ };
14
+ this.primaryColor = undefined;
15
+ this.accessToken = undefined;
16
+ this.senderId = undefined;
17
+ this.salonId = undefined;
18
+ this.chatRooms = undefined;
19
+ this.activeRoom = undefined;
20
+ }
21
+ componentWillLoad() {
22
+ this.fetchData();
23
+ }
24
+ async fetchData() {
25
+ try {
26
+ this.chatRooms = await HttpService().fetchChatRooms(this.accessToken);
27
+ (this.chatRooms || []).forEach((chatRoom) => {
28
+ HttpService().fetchChatMessages(chatRoom.uid, (messages) => {
29
+ this.chatRooms = [...(this.chatRooms || [])].map((room) => {
30
+ if (chatRoom.uid === room.uid) {
31
+ room.messages = messages;
32
+ }
33
+ return room;
34
+ });
35
+ });
36
+ });
37
+ }
38
+ catch (e) {
39
+ this.chatRooms = [];
40
+ }
41
+ }
42
+ render() {
43
+ const senderInfo = this.activeRoom ? (this.activeRoom.members || []).find(user => user.id === Number(this.senderId)) : null;
44
+ const receiverInfo = this.activeRoom ? (this.activeRoom.members || []).find(user => user.id !== Number(this.senderId)) : null;
45
+ return (h("div", { class: `chat-widget ${this.activeRoom ? 'has-chat-room' : ''}` }, h("div", { class: "chat-widget--sidebar" }, h("chat-rooms", { "access-token": this.accessToken, "salon-id": Number(this.salonId), "sender-id": Number(this.senderId), activeRoom: this.activeRoom, chatRooms: this.chatRooms, onClickRoom: this.onClickRoom })), h("div", { class: "chat-widget--content" }, receiverInfo && (h("div", { class: "chat-widget--content-header" }, h("user-avatar", { size: 40, avatar: receiverInfo.avatar, name: h("div", { class: "chat-room--user-name", style: { color: '#fff' } }, receiverInfo.fullName), shortName: String(receiverInfo.fullName || '').charAt(0) }), h("div", { style: { position: 'relative' } }, h("div", { class: "chat-widget--content-close", onClick: () => this.onClickRoom(null) })))), h("div", { style: {
46
+ flexShrink: '1',
47
+ flexGrow: '1',
48
+ overflowY: 'auto',
49
+ padding: '16px',
50
+ } }, this.activeRoom && (h("chat-messages", { sender: senderInfo, receiver: receiverInfo, messages: this.activeRoom.messages || [], "chat-room-id": this.activeRoom.uid })), !this.activeRoom && (h("div", { style: { paddingTop: '72px', textAlign: 'center' } }, h("div", { class: "chat-widget--content-title" }, "Welcome back!"), h("div", { style: { marginTop: "12px" } }, "Select any user in left hand side to get started.")))), this.activeRoom && (h("div", { style: { borderTop: `1px solid ${Colors.Gray02}` } }, h("chat-form", { "sender-id": Number(senderInfo.id), "chat-room-id": this.activeRoom.uid }))))));
51
+ }
52
+ };
53
+ ChatBox.style = indexCss;
54
+
55
+ export { ChatBox as chat_box };
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, h } from './index-0494771f.js';
1
+ import { r as registerInstance, h } from './index-888e99e3.js';
2
2
  import { C as Colors } from './colors-ea36347a.js';
3
- import { H as HttpService } from './services-257442e2.js';
4
- import './_commonjsHelpers-66ac50f5.js';
3
+ import { H as HttpService } from './services-260ea6eb.js';
4
+ import './_commonjsHelpers-a4f66ccd.js';
5
5
 
6
6
  const indexCss = "@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,500;0,700;1,400;1,500;1,700&display=swap'); chat-button{position:relative}.chat-button--indicator{cursor:pointer;position:absolute;inset:0}.chat-button--counter{background-color:rgb(240, 90, 97);border:1px solid rgb(255, 255, 255);position:absolute;right:6px;top:0px;height:8px;width:8px;-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}.chat-box{font-family:'Roboto', sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;display:flex;flex-direction:column;position:fixed;inset:0px;z-index:20000;font-size:16px;text-align:left;color:#141414}.chat-box--header{display:flex;justify-content:space-between;padding:16px;position:relative}.chat-box--title{color:#fff;font-size:20px;font-weight:600;line-height:1;display:flex;align-items:center;justify-content:space-between;margin:0}.chat-box--close{cursor:pointer;display:block;position:absolute;z-index:1000;top:50%;right:0;width:30px;height:30px;transform:translate(0, -50%);background-size:contain;background-repeat:no-repeat;background-position:center center;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAA3hJREFUaAXlm8+K00Acx7MiCIJH/yw+gA9g25O49SL4AO3Bp1jw5NvktC+wF88qevK4BU97EmzxUBCEolK/n5gp3W6TTJPfpNPNF37MNsl85/vN/DaTmU6PknC4K+pniqeKJ3k8UnkvDxXJzzy+q/yaxxeVHxW/FNHjgRSeKt4rFoplzaAuHHDBGR2eS9G54reirsmienDCTRt7xwsp+KAoEmt9nLaGitZxrBbPFNaGfPloGw2t4JVamSt8xYW6Dg1oCYo3Yv+rCGViV160oMkcd8SYKnYV1Nb1aEOjCe6L5ZOiLfF120EjWhuBu3YIZt1NQmujnk5F4MgOpURzLfAwOBSTmzp3fpDxuI/pabxpqOoz2r2HLAb0GMbZKlNV5/Hg9XJypguryA7lPF5KMdTZQzHjqxNPhWhzIuAruOl1eNqKEx1tSh5rfbxdw7mOxCq4qS68ZTjKS1YVvilu559vWvFHhh4rZrdyZ69Vmpgdj8fJbDZLJpNJ0uv1cnr/gjrUhQMuI+ANjyuwftQ0bbL6Erp0mM/ny8Fg4M3LtdRxgMtKl3jwmIHVxYXChFy94/Rmpa/pTbNUhstKV+4Rr8lLQ9KlUvJKLyG8yvQ2s9SBy1Jb7jV5a0yapfF6apaZLjLLcWtd4sNrmJUMHyM+1xibTjH82Zh01TNlhsrOhdKTe00uAzZQmN6+KW+sDa/JD2PSVQ873m29yf+1Q9VDzfEYlHi1G5LKBBWZbtEsHbFwb1oYDwr1ZiF/2bnCSg1OBE/pfr9/bWx26UxJL3ONPISOLKUvQza0LZUxSKyjpdTGa/vDEr25rddbMM0Q3O6Lx3rqFvU+x6UrRKQY7tyrZecmD9FODy8uLizTmilwNj0kraNcAJhOp5aGVwsAGD5VmJBrWWbJSgWT9zrzWepQF47RaGSiKfeGx6Szi3gzmX/HHbihwBser4B9UJYpFBNX4R6vTn3VQnez0SymnrHQMsRYGTr1dSk34ljRqS/EMd2pLQ8YBp3a1PLfcqCpo8gtHkZFHKkTX6fs3MY0blKnth66rKCnU0VRGu37ONrQaA4eZDFtWAu2fXj9zjFkxTBOo8F7t926gTp/83Kyzzcy2kZD6xiqxTYnHLRFm3vHiRSwNSjkz3hoIzo8lCKWUlg/YtGs7tObunDAZfpDLbfEI15zsEIY3U/x/gHHc/G1zltnAgAAAABJRU5ErkJggg==')}@media (min-width: 768px){.chat-box{border:1px solid #fff;left:unset;top:unset;right:1px;bottom:0px;height:420px;max-height:90vh;width:600px;-moz-border-radius:8px 8px 0px 0px;-webkit-border-radius:8px 8px 0px 0px;border-radius:8px 8px 0px 0px;-moz-box-shadow:rgba(0, 0, 0, 0.1) 0px 0px 24px;-webkit-box-shadow:rgba(0, 0, 0, 0.1) 0px 0px 24px;box-shadow:rgba(0, 0, 0, 0.1) 0px 0px 24px}.chat-box--header{-moz-border-radius:8px 8px 0px 0px;-webkit-border-radius:8px 8px 0px 0px;border-radius:8px 8px 0px 0px}}";
7
7
 
@@ -36,7 +36,7 @@ const ChatButton = class {
36
36
  const unreadMessages = (this.chatMessages || []).filter(message => {
37
37
  return Boolean(message.unRead) && message.senderId !== this.senderInfo.id;
38
38
  });
39
- return (h("div", null, h("div", { class: "chat-button--indicator", onClick: () => this.isChatExpanded = true }, unreadMessages.length > 0 && h("span", { class: "chat-button--counter" })), h("div", { class: "chat-box", style: this.isChatExpanded ? {} : { display: 'none' } }, h("div", { class: "chat-box--header", style: {
39
+ return (h("div", null, unreadMessages.length > 0 && h("notify-sounds", null), h("div", { class: "chat-button--indicator", onClick: () => this.isChatExpanded = true }, unreadMessages.length > 0 && h("span", { class: "chat-button--counter" })), h("div", { class: "chat-box", style: this.isChatExpanded ? {} : { display: 'none' } }, h("div", { class: "chat-box--header", style: {
40
40
  backgroundColor: this.primaryColor || '#f05a61',
41
41
  } }, h("h3", { class: "chat-box--title" }, "Chat"), h("div", { style: { position: 'relative' } }, h("div", { class: "chat-box--close", onClick: () => this.isChatExpanded = false }))), h("div", { style: {
42
42
  flexShrink: '1',
@@ -0,0 +1,39 @@
1
+ import { r as registerInstance, h } from './index-888e99e3.js';
2
+ import { H as HttpService } from './services-260ea6eb.js';
3
+ import './_commonjsHelpers-a4f66ccd.js';
4
+ import './colors-ea36347a.js';
5
+
6
+ const indexCss = ".chat-form{display:flex;height:56px;width:100%}.chat-form #chat-form--input{border:none;outline:none;flex-shrink:1;flex-grow:1;height:100%;font-size:16px;padding-left:16px;padding-right:16px;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px}.chat-form>button{background-color:#001529;border:none;color:#fff;cursor:pointer;font-size:16px;min-width:80px;height:42px;margin:7px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.chat-form>button:hover,.chat-form>button:focus,.chat-form>button:active{background-color:#001529}";
7
+
8
+ const ChatForm = class {
9
+ constructor(hostRef) {
10
+ registerInstance(this, hostRef);
11
+ this.onSubmitMessage = async () => {
12
+ try {
13
+ const elNewMessage = document.getElementById('chat-form--input');
14
+ if (!!elNewMessage.value) {
15
+ await HttpService().sendChatMessage({
16
+ message: elNewMessage.value,
17
+ senderId: this.senderId,
18
+ chatRoomId: this.chatRoomId,
19
+ });
20
+ elNewMessage.value = '';
21
+ }
22
+ }
23
+ catch (error) { }
24
+ };
25
+ this.senderId = undefined;
26
+ this.chatRoomId = undefined;
27
+ }
28
+ render() {
29
+ return (h("div", { class: "chat-form" }, h("input", { id: "chat-form--input", type: "text", placeholder: "Enter a message...", onKeyPress: (evt) => {
30
+ if (evt.key === 'Enter') {
31
+ evt.preventDefault();
32
+ this.onSubmitMessage();
33
+ }
34
+ } }), h("button", { type: "button", onClick: () => this.onSubmitMessage() }, "Send")));
35
+ }
36
+ };
37
+ ChatForm.style = indexCss;
38
+
39
+ export { ChatForm as chat_form };
@@ -0,0 +1,71 @@
1
+ import { r as registerInstance, h } from './index-888e99e3.js';
2
+ import { d as dayjs_min, H as HttpService, t as timeFormatAmPm } from './services-260ea6eb.js';
3
+ import { l as lodash } from './lodash-d5526b38.js';
4
+ import { C as Colors } from './colors-ea36347a.js';
5
+ import { r as relativeTime } from './relativeTime-268e64b0.js';
6
+ import './_commonjsHelpers-a4f66ccd.js';
7
+
8
+ const indexCss = ".chat-message{overflow:hidden;clear:both;min-width:240px}.chat-message+.chat-message{margin-top:6px}.chat-message--meta{display:flex}.chat-message--title{background-color:#F1F1F1;padding:8px 12px;position:relative;float:left;margin-top:6px;-moz-border-radius:0 10px 10px 10px;-webkit-border-radius:0 10px 10px 10px;border-radius:0 10px 10px 10px}.chat-message--time{clear:both;color:#999;font-size:75%;padding-top:2px}.chat-message.is-owner .chat-message--content{margin-left:12px}.chat-message.is-guest .chat-message--meta{flex-direction:row-reverse}.chat-message.is-guest .chat-message--title{background-color:#EFF7FF;float:right;margin-right:12px;text-align:right;-moz-border-radius:10px 0 10px 10px;-webkit-border-radius:10px 0 10px 10px;border-radius:10px 0 10px 10px}";
9
+
10
+ dayjs_min.extend(relativeTime);
11
+ const ChatMessages = class {
12
+ constructor(hostRef) {
13
+ registerInstance(this, hostRef);
14
+ this.markMessagesAsRead = async () => {
15
+ try {
16
+ const unreadMessages = (this.messages || []).filter(message => {
17
+ return Boolean(message.unRead) && message.senderId !== this.sender.id;
18
+ });
19
+ if (unreadMessages.length > 0) {
20
+ await HttpService().markMessagesAsRead(this.chatRoomId, unreadMessages);
21
+ }
22
+ }
23
+ catch (e) { }
24
+ };
25
+ this.scrollToLastMessage = () => {
26
+ const targetElement = document.getElementById('chat--last-message');
27
+ targetElement && targetElement.scrollIntoView();
28
+ };
29
+ this.renderMessage = (chatMessage) => {
30
+ const { message, senderId, timestamp } = chatMessage;
31
+ const isOwner = this.sender.id === senderId;
32
+ return (h("div", { class: `chat-message ${isOwner ? 'is-owner' : 'is-guest'}` }, h("div", { class: "chat-message--meta" }, h("user-avatar", { size: 40, shortName: String(((isOwner ? this.sender : this.receiver) || {}).fullName || '').charAt(0), avatar: ((isOwner ? this.sender : this.receiver) || {}).avatar }), h("div", { class: "chat-message--content" }, h("div", { class: "chat-message--title" }, message), timestamp && (h("div", { class: "chat-message--time" }, dayjs_min(timestamp).format(timeFormatAmPm)))))));
33
+ };
34
+ this.sender = {};
35
+ this.receiver = {};
36
+ this.messages = [];
37
+ this.chatRoomId = undefined;
38
+ }
39
+ componentDidLoad() {
40
+ this.markMessagesAsRead();
41
+ }
42
+ componentDidUpdate() {
43
+ this.scrollToLastMessage();
44
+ }
45
+ render() {
46
+ const isEmpty = (this.messages || []).length === 0;
47
+ const chatMessagesMapping = lodash.groupBy((this.messages || []), m => m.dateName);
48
+ return (h("div", { class: "chat-messages" }, !isEmpty && (h("div", null, lodash.keys(chatMessagesMapping).map(dateName => {
49
+ return (h("div", null, h("div", { style: {
50
+ backgroundColor: Colors.Gray01,
51
+ position: 'relative',
52
+ height: '1px',
53
+ marginTop: '24px',
54
+ marginBottom: '12px',
55
+ } }, h("span", { style: {
56
+ backgroundColor: Colors.White,
57
+ fontSize: '90%',
58
+ position: 'absolute',
59
+ left: '50%',
60
+ top: '50%',
61
+ transform: 'translate(-50%, -50%)',
62
+ paddingLeft: '4px',
63
+ paddingRight: '4px',
64
+ marginTop: '-2px',
65
+ } }, dateName)), h("div", null, (chatMessagesMapping[dateName] || []).map(this.renderMessage))));
66
+ }))), isEmpty && (h("div", { style: { padding: '48px', textAlign: 'center' } }, h("div", { style: { color: Colors.Green04 } }, "No messages yet"))), h("div", { id: "chat--last-message" })));
67
+ }
68
+ };
69
+ ChatMessages.style = indexCss;
70
+
71
+ export { ChatMessages as chat_messages };
@@ -0,0 +1,111 @@
1
+ import { r as registerInstance, h } from './index-888e99e3.js';
2
+ import { l as lodash } from './lodash-d5526b38.js';
3
+ import { C as Colors } from './colors-ea36347a.js';
4
+ import { H as HttpService } from './services-260ea6eb.js';
5
+ import { f as formatPhoneNumber } from './utils-fd30fb29.js';
6
+ import './_commonjsHelpers-a4f66ccd.js';
7
+
8
+ const indexCss = "chat-rooms,.chat-rooms{display:flex;flex-direction:column;height:100%;width:100%}.chat-rooms--search{background-color:#001529;border-bottom:1px solid #EFEFEF;display:flex;padding:16px}.chat-rooms--search>input{background-color:#F5F5F5;border:1px solid #EFEFEF;height:40px;width:100%;font-size:16px;padding-left:16px;padding-right:16px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.chat-rooms--search>input:hover,.chat-rooms--search>input:active{border:1px solid #DBDBDB}.chat-rooms--search>button{background-color:#F5F5F5;border:1px solid #EFEFEF;font-size:16px;min-width:80px;height:40px;margin-left:12px;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}.chat-rooms--list{flex-grow:1;flex-shrink:1;overflow-y:auto}.chat-room{cursor:pointer;display:flex;position:relative;margin-bottom:1px;padding:12px 16px}.chat-room:hover,.chat-room.is-active{background-color:#F5F5F5}.chat-room--user{flex-grow:1;flex-shrink:1;overflow:hidden}.chat-room--user-name{font-size:16px;font-weight:600;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room--latest-message{font-size:12px;line-height:14px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room--user-indicator{background-color:rgb(240, 90, 97);border:1px solid rgb(255, 255, 255);height:8px;width:8px;position:absolute;right:8px;top:50%;transform:translate(0, -50%);-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}";
9
+
10
+ const ChatRooms = class {
11
+ constructor(hostRef) {
12
+ registerInstance(this, hostRef);
13
+ this.clickRoom = (chatRoom) => {
14
+ this.onClickRoom(chatRoom);
15
+ };
16
+ this.onSearchRooms = lodash.debounce(async (keyword) => {
17
+ this.keyword = keyword;
18
+ this.clients = [];
19
+ if (!!keyword) {
20
+ try {
21
+ this.clients = await HttpService().fetchClients(this.salonId, keyword, this.accessToken);
22
+ }
23
+ catch (e) { }
24
+ }
25
+ }, 350);
26
+ this.renderChatRoom = (chatRoom, index) => {
27
+ const { uid, members, messages } = chatRoom;
28
+ const receiverUser = members.find(user => user.id !== this.senderId);
29
+ const isActiveRoom = (this.activeRoom || {}).uid === uid;
30
+ let unreadMessages = 0;
31
+ const lastMessage = lodash.last(messages || []);
32
+ (messages || []).forEach(message => {
33
+ if (Boolean(message.unRead) && message.senderId !== this.senderId) {
34
+ unreadMessages += 1;
35
+ }
36
+ });
37
+ return (h("div", { key: `chat-room--${uid}-${index}`, class: `chat-room ${isActiveRoom ? 'is-active' : ''}`, onClick: () => !isActiveRoom && this.clickRoom(chatRoom) }, h("div", { class: "chat-room--user" }, h("user-avatar", { size: 48, avatar: receiverUser.avatar, name: h("div", { class: "chat-room--user-name" }, receiverUser.fullName), description: lastMessage && (h("div", { class: "chat-room--latest-message" }, lastMessage.senderId === this.senderId ? 'You: ' : '', lastMessage.message)), shortName: String(receiverUser.fullName || '').charAt(0) })), unreadMessages > 0 && (h("div", { class: "chat-room--user-indicator" }))));
38
+ };
39
+ this.initChatRoom = async (user) => {
40
+ let activeChatRoom = (this.chatRooms || []).find(room => {
41
+ return (room.members || []).find(member => member.id === user.id);
42
+ });
43
+ try {
44
+ if (!activeChatRoom && user.id) {
45
+ activeChatRoom = await HttpService().createChatRoom(user.id, this.accessToken);
46
+ this.chatRooms = this.chatRooms.concat([activeChatRoom]);
47
+ }
48
+ }
49
+ catch (e) { }
50
+ this.onClickRoom(activeChatRoom);
51
+ };
52
+ this.renderClient = (user, index) => {
53
+ const { id, avatar, fullName } = user;
54
+ return (h("div", { key: `chat-room--client-${id}-${index}`, class: "chat-room", onClick: () => this.initChatRoom(user) }, h("div", { class: "chat-room--user" }, h("user-avatar", { size: 48, avatar: avatar, name: h("div", { class: "chat-room--user-name" }, fullName), shortName: String(fullName || '').charAt(0) }))));
55
+ };
56
+ this.senderId = undefined;
57
+ this.salonId = undefined;
58
+ this.chatRooms = undefined;
59
+ this.clients = undefined;
60
+ this.activeRoom = undefined;
61
+ this.accessToken = undefined;
62
+ this.onClickRoom = undefined;
63
+ this.keyword = undefined;
64
+ }
65
+ render() {
66
+ const visibleRooms = (this.chatRooms || []).filter(chatRoom => {
67
+ if (this.keyword) {
68
+ const receiverUser = chatRoom.members.find(user => user.id !== this.senderId) || {};
69
+ return String(receiverUser.fullName).toLowerCase().indexOf(String(this.keyword).toLowerCase()) > -1
70
+ || String(formatPhoneNumber(receiverUser.mobilePhone)).toLowerCase().indexOf(formatPhoneNumber(String(this.keyword).toLowerCase())) > -1;
71
+ }
72
+ return true;
73
+ });
74
+ return (h("div", { class: "chat-rooms" }, h("div", { class: "chat-rooms--search" }, h("input", { autoComplete: "off", placeholder: "Enter a name...", onInput: evt => this.onSearchRooms(evt.target.value) })), h("div", { class: "chat-rooms--list" }, !this.chatRooms && [1, 2, 3, 4].map(fakeId => (h("div", { key: `chat-room--${fakeId}`, class: "chat-room" }, h("div", { class: "chat-room--user" }, h("div", { style: { display: "flex", alignItems: "center" } }, h("div", { style: {
75
+ backgroundColor: Colors.Gray02,
76
+ borderRadius: '50%',
77
+ height: `48px`,
78
+ width: `48px`,
79
+ minWidth: `48px`,
80
+ } }), h("div", { style: {
81
+ flexShrink: '1',
82
+ flexGrow: '1',
83
+ marginLeft: '12px',
84
+ } }, h("div", { style: {
85
+ backgroundColor: Colors.Gray02,
86
+ height: '16px',
87
+ width: '30%',
88
+ } }), h("div", { style: {
89
+ backgroundColor: Colors.Gray01,
90
+ marginTop: '12px',
91
+ height: '16px',
92
+ width: '60%',
93
+ } }))))))), this.chatRooms && this.keyword && (h("div", { style: {
94
+ borderBottom: `1px solid ${Colors.Gray01}`,
95
+ color: Colors.Primary,
96
+ fontSize: '12px',
97
+ fontWeight: '700',
98
+ padding: '12px 16px',
99
+ } }, "PEOPLE")), this.chatRooms && visibleRooms.length > 0 && visibleRooms.map(this.renderChatRoom), this.chatRooms && visibleRooms.length === 0 && (h("div", { style: { color: Colors.Gray04, padding: '64px 24px', textAlign: 'center' } }, "No available users")), this.keyword && (this.clients || []).length > 0 && (h("div", null, h("div", { style: {
100
+ borderBottom: `1px solid ${Colors.Gray01}`,
101
+ color: Colors.Primary,
102
+ fontSize: '12px',
103
+ fontWeight: '700',
104
+ padding: '12px 16px',
105
+ marginTop: '24px',
106
+ } }, "YOUR CLIENTS"), this.clients.map(this.renderClient))))));
107
+ }
108
+ };
109
+ ChatRooms.style = indexCss;
110
+
111
+ export { ChatRooms as chat_rooms };
@@ -0,0 +1,4 @@
1
+ /*
2
+ Stencil Client Patch Esm v2.22.3 | MIT Licensed | https://stenciljs.com
3
+ */
4
+ var __assign=undefined&&undefined.__assign||function(){return __assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},__assign.apply(this,arguments)},StyleNode=function(){this.start=0,this.end=0,this.previous=null,this.parent=null,this.rules=null,this.parsedCssText="",this.cssText="",this.atRule=!1,this.type=0,this.keyframesName="",this.selector="",this.parsedSelector="";};function parse(e){return parseCss(lex(e=clean(e)),e)}function clean(e){return e.replace(RX.comments,"").replace(RX.port,"")}function lex(e){var t=new StyleNode;t.start=0,t.end=e.length;for(var r=t,n=0,s=e.length;n<s;n++)if(e[n]===OPEN_BRACE){r.rules||(r.rules=[]);var o=r,a=o.rules[o.rules.length-1]||null;(r=new StyleNode).start=n+1,r.parent=o,r.previous=a,o.rules.push(r);}else e[n]===CLOSE_BRACE&&(r.end=n+1,r=r.parent||t);return t}function parseCss(e,t){var r=t.substring(e.start,e.end-1);if(e.parsedCssText=e.cssText=r.trim(),e.parent){var n=e.previous?e.previous.end:e.parent.start;r=(r=(r=_expandUnicodeEscapes(r=t.substring(n,e.start-1))).replace(RX.multipleSpaces," ")).substring(r.lastIndexOf(";")+1);var s=e.parsedSelector=e.selector=r.trim();e.atRule=0===s.indexOf(AT_START),e.atRule?0===s.indexOf(MEDIA_START)?e.type=types.MEDIA_RULE:s.match(RX.keyframesRule)&&(e.type=types.KEYFRAMES_RULE,e.keyframesName=e.selector.split(RX.multipleSpaces).pop()):0===s.indexOf(VAR_START)?e.type=types.MIXIN_RULE:e.type=types.STYLE_RULE;}var o=e.rules;if(o)for(var a=0,i=o.length,l=void 0;a<i&&(l=o[a]);a++)parseCss(l,t);return e}function _expandUnicodeEscapes(e){return e.replace(/\\([0-9a-f]{1,6})\s/gi,(function(){for(var e=arguments[1],t=6-e.length;t--;)e="0"+e;return "\\"+e}))}var types={STYLE_RULE:1,KEYFRAMES_RULE:7,MEDIA_RULE:4,MIXIN_RULE:1e3},OPEN_BRACE="{",CLOSE_BRACE="}",RX={comments:/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]*keyframes/,multipleSpaces:/\s+/g},VAR_START="--",MEDIA_START="@media",AT_START="@",VAR_USAGE_START=/\bvar\(/,VAR_ASSIGN_START=/\B--[\w-]+\s*:/,COMMENTS=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,TRAILING_LINES=/^[\t ]+\n/gm;function findRegex(e,t,r){e.lastIndex=0;var n=t.substring(r).match(e);if(n){var s=r+n.index;return {start:s,end:s+n[0].length}}return null}function resolveVar(e,t,r){return e[t]?e[t]:r?executeTemplate(r,e):""}function findVarEndIndex(e,t){for(var r=0,n=t;n<e.length;n++){var s=e[n];if("("===s)r++;else if(")"===s&&--r<=0)return n+1}return n}function parseVar(e,t){var r=findRegex(VAR_USAGE_START,e,t);if(!r)return null;var n=findVarEndIndex(e,r.start),s=e.substring(r.end,n-1).split(","),o=s[0],a=s.slice(1);return {start:r.start,end:n,propName:o.trim(),fallback:a.length>0?a.join(",").trim():void 0}}function compileVar(e,t,r){var n=parseVar(e,r);if(!n)return t.push(e.substring(r,e.length)),e.length;var s=n.propName,o=null!=n.fallback?compileTemplate(n.fallback):void 0;return t.push(e.substring(r,n.start),(function(e){return resolveVar(e,s,o)})),n.end}function executeTemplate(e,t){for(var r="",n=0;n<e.length;n++){var s=e[n];r+="string"==typeof s?s:s(t);}return r}function findEndValue(e,t){for(var r=!1,n=!1,s=t;s<e.length;s++){var o=e[s];if(r)n&&'"'===o&&(r=!1),n||"'"!==o||(r=!1);else if('"'===o)r=!0,n=!0;else if("'"===o)r=!0,n=!1;else {if(";"===o)return s+1;if("}"===o)return s}}return s}function removeCustomAssigns(e){for(var t="",r=0;;){var n=findRegex(VAR_ASSIGN_START,e,r),s=n?n.start:e.length;if(t+=e.substring(r,s),!n)break;r=findEndValue(e,s);}return t}function compileTemplate(e){var t=0;e=removeCustomAssigns(e=e.replace(COMMENTS,"")).replace(TRAILING_LINES,"");for(var r=[];t<e.length;)t=compileVar(e,r,t);return r}function resolveValues(e){var t={};e.forEach((function(e){e.declarations.forEach((function(e){t[e.prop]=e.value;}));}));for(var r={},n=Object.entries(t),s=function(e){var t=!1;if(n.forEach((function(e){var n=e[0],s=executeTemplate(e[1],r);s!==r[n]&&(r[n]=s,t=!0);})),!t)return "break"},o=0;o<10;o++){if("break"===s())break}return r}function getSelectors(e,t){if(void 0===t&&(t=0),!e.rules)return [];var r=[];return e.rules.filter((function(e){return e.type===types.STYLE_RULE})).forEach((function(e){var n=getDeclarations(e.cssText);n.length>0&&e.parsedSelector.split(",").forEach((function(e){e=e.trim(),r.push({selector:e,declarations:n,specificity:computeSpecificity(),nu:t});})),t++;})),r}function computeSpecificity(e){return 1}var IMPORTANT="!important",FIND_DECLARATIONS=/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};{])+)|\{([^}]*)\}(?:(?=[;\s}])|$))/gm;function getDeclarations(e){for(var t,r=[];t=FIND_DECLARATIONS.exec(e.trim());){var n=normalizeValue(t[2]),s=n.value,o=n.important;r.push({prop:t[1].trim(),value:compileTemplate(s),important:o});}return r}function normalizeValue(e){var t=(e=e.replace(/\s+/gim," ").trim()).endsWith(IMPORTANT);return t&&(e=e.slice(0,e.length-IMPORTANT.length).trim()),{value:e,important:t}}function getActiveSelectors(e,t,r){var n=[],s=getScopesForElement(t,e);return r.forEach((function(e){return n.push(e)})),s.forEach((function(e){return n.push(e)})),sortSelectors(getSelectorsForScopes(n).filter((function(t){return matches(e,t.selector)})))}function getScopesForElement(e,t){for(var r=[];t;){var n=e.get(t);n&&r.push(n),t=t.parentElement;}return r}function getSelectorsForScopes(e){var t=[];return e.forEach((function(e){t.push.apply(t,e.selectors);})),t}function sortSelectors(e){return e.sort((function(e,t){return e.specificity===t.specificity?e.nu-t.nu:e.specificity-t.specificity})),e}function matches(e,t){return ":root"===t||"html"===t||e.matches(t)}function parseCSS(e){var t=parse(e),r=compileTemplate(e);return {original:e,template:r,selectors:getSelectors(t),usesCssVars:r.length>1}}function addGlobalStyle(e,t){if(e.some((function(e){return e.styleEl===t})))return !1;var r=parseCSS(t.textContent);return r.styleEl=t,e.push(r),!0}function updateGlobalScopes(e){var t=resolveValues(getSelectorsForScopes(e));e.forEach((function(e){e.usesCssVars&&(e.styleEl.textContent=executeTemplate(e.template,t));}));}function reScope(e,t){var r=e.template.map((function(r){return "string"==typeof r?replaceScope(r,e.scopeId,t):r})),n=e.selectors.map((function(r){return __assign(__assign({},r),{selector:replaceScope(r.selector,e.scopeId,t)})}));return __assign(__assign({},e),{template:r,selectors:n,scopeId:t})}function replaceScope(e,t,r){return e=replaceAll(e,"\\.".concat(t),".".concat(r))}function replaceAll(e,t,r){return e.replace(new RegExp(t,"g"),r)}function loadDocument(e,t){return loadDocumentStyles(e,t),loadDocumentLinks(e,t).then((function(){updateGlobalScopes(t);}))}function startWatcher(e,t){"undefined"!=typeof MutationObserver&&new MutationObserver((function(){loadDocumentStyles(e,t)&&updateGlobalScopes(t);})).observe(document.head,{childList:!0});}function loadDocumentLinks(e,t){for(var r=[],n=e.querySelectorAll('link[rel="stylesheet"][href]:not([data-no-shim])'),s=0;s<n.length;s++)r.push(addGlobalLink(e,t,n[s]));return Promise.all(r)}function loadDocumentStyles(e,t){return Array.from(e.querySelectorAll("style:not([data-styles]):not([data-no-shim])")).map((function(e){return addGlobalStyle(t,e)})).some(Boolean)}function addGlobalLink(e,t,r){var n=r.href;return fetch(n).then((function(e){return e.text()})).then((function(s){if(hasCssVariables(s)&&r.parentNode){hasRelativeUrls(s)&&(s=fixRelativeUrls(s,n));var o=e.createElement("style");o.setAttribute("data-styles",""),o.textContent=s,addGlobalStyle(t,o),r.parentNode.insertBefore(o,r),r.remove();}})).catch((function(e){console.error(e);}))}var CSS_VARIABLE_REGEXP=/[\s;{]--[-a-zA-Z0-9]+\s*:/m;function hasCssVariables(e){return e.indexOf("var(")>-1||CSS_VARIABLE_REGEXP.test(e)}var CSS_URL_REGEXP=/url[\s]*\([\s]*['"]?(?!(?:https?|data)\:|\/)([^\'\"\)]*)[\s]*['"]?\)[\s]*/gim;function hasRelativeUrls(e){return CSS_URL_REGEXP.lastIndex=0,CSS_URL_REGEXP.test(e)}function fixRelativeUrls(e,t){var r=t.replace(/[^/]*$/,"");return e.replace(CSS_URL_REGEXP,(function(e,t){var n=r+t;return e.replace(t,n)}))}var CustomStyle=function(){function e(e,t){this.win=e,this.doc=t,this.count=0,this.hostStyleMap=new WeakMap,this.hostScopeMap=new WeakMap,this.globalScopes=[],this.scopesMap=new Map,this.didInit=!1;}return e.prototype.i=function(){var e=this;return this.didInit||!this.win.requestAnimationFrame?Promise.resolve():(this.didInit=!0,new Promise((function(t){e.win.requestAnimationFrame((function(){startWatcher(e.doc,e.globalScopes),loadDocument(e.doc,e.globalScopes).then((function(){return t()}));}));})))},e.prototype.addLink=function(e){var t=this;return addGlobalLink(this.doc,this.globalScopes,e).then((function(){t.updateGlobal();}))},e.prototype.addGlobalStyle=function(e){addGlobalStyle(this.globalScopes,e)&&this.updateGlobal();},e.prototype.createHostStyle=function(e,t,r,n){if(this.hostScopeMap.has(e))throw new Error("host style already created");var s=this.registerHostTemplate(r,t,n),o=this.doc.createElement("style");return o.setAttribute("data-no-shim",""),s.usesCssVars?n?(o["s-sc"]=t="".concat(s.scopeId,"-").concat(this.count),o.textContent="/*needs update*/",this.hostStyleMap.set(e,o),this.hostScopeMap.set(e,reScope(s,t)),this.count++):(s.styleEl=o,s.usesCssVars||(o.textContent=executeTemplate(s.template,{})),this.globalScopes.push(s),this.updateGlobal(),this.hostScopeMap.set(e,s)):o.textContent=r,o},e.prototype.removeHost=function(e){var t=this.hostStyleMap.get(e);t&&t.remove(),this.hostStyleMap.delete(e),this.hostScopeMap.delete(e);},e.prototype.updateHost=function(e){var t=this.hostScopeMap.get(e);if(t&&t.usesCssVars&&t.isScoped){var r=this.hostStyleMap.get(e);if(r){var n=resolveValues(getActiveSelectors(e,this.hostScopeMap,this.globalScopes));r.textContent=executeTemplate(t.template,n);}}},e.prototype.updateGlobal=function(){updateGlobalScopes(this.globalScopes);},e.prototype.registerHostTemplate=function(e,t,r){var n=this.scopesMap.get(t);return n||((n=parseCSS(e)).scopeId=t,n.isScoped=r,this.scopesMap.set(t,n)),n},e}();!function(e){!e||e.__cssshim||e.CSS&&e.CSS.supports&&e.CSS.supports("color","var(--c)")||(e.__cssshim=new CustomStyle(e,e.document));}("undefined"!=typeof window&&window);
@@ -0,0 +1,73 @@
1
+ /*
2
+ Stencil Client Patch Browser v2.22.3 | MIT Licensed | https://stenciljs.com
3
+ */
4
+ (function(){
5
+ var aa=new Set("annotation-xml color-profile font-face font-face-src font-face-uri font-face-format font-face-name missing-glyph".split(" "));function g(a){var b=aa.has(a);a=/^[a-z][.0-9_a-z]*-[\-.0-9_a-z]*$/.test(a);return !b&&a}function l(a){var b=a.isConnected;if(void 0!==b)return b;for(;a&&!(a.__CE_isImportDocument||a instanceof Document);)a=a.parentNode||(window.ShadowRoot&&a instanceof ShadowRoot?a.host:void 0);return !(!a||!(a.__CE_isImportDocument||a instanceof Document))}
6
+ function n(a,b){for(;b&&b!==a&&!b.nextSibling;)b=b.parentNode;return b&&b!==a?b.nextSibling:null}
7
+ function p(a,b,d){d=void 0===d?new Set:d;for(var c=a;c;){if(c.nodeType===Node.ELEMENT_NODE){var e=c;b(e);var f=e.localName;if("link"===f&&"import"===e.getAttribute("rel")){c=e.import;if(c instanceof Node&&!d.has(c))for(d.add(c),c=c.firstChild;c;c=c.nextSibling)p(c,b,d);c=n(a,e);continue}else if("template"===f){c=n(a,e);continue}if(e=e.__CE_shadowRoot)for(e=e.firstChild;e;e=e.nextSibling)p(e,b,d);}c=c.firstChild?c.firstChild:n(a,c);}}function r(a,b,d){a[b]=d;}function u(){this.a=new Map;this.g=new Map;this.c=[];this.f=[];this.b=!1;}function ba(a,b,d){a.a.set(b,d);a.g.set(d.constructorFunction,d);}function ca(a,b){a.b=!0;a.c.push(b);}function da(a,b){a.b=!0;a.f.push(b);}function v(a,b){a.b&&p(b,function(b){return w(a,b)});}function w(a,b){if(a.b&&!b.__CE_patched){b.__CE_patched=!0;for(var d=0;d<a.c.length;d++)a.c[d](b);for(d=0;d<a.f.length;d++)a.f[d](b);}}
8
+ function x(a,b){var d=[];p(b,function(b){return d.push(b)});for(b=0;b<d.length;b++){var c=d[b];1===c.__CE_state?a.connectedCallback(c):y(a,c);}}function z(a,b){var d=[];p(b,function(b){return d.push(b)});for(b=0;b<d.length;b++){var c=d[b];1===c.__CE_state&&a.disconnectedCallback(c);}}
9
+ function A(a,b,d){d=void 0===d?{}:d;var c=d.u||new Set,e=d.i||function(b){return y(a,b)},f=[];p(b,function(b){if("link"===b.localName&&"import"===b.getAttribute("rel")){var d=b.import;d instanceof Node&&(d.__CE_isImportDocument=!0,d.__CE_hasRegistry=!0);d&&"complete"===d.readyState?d.__CE_documentLoadHandled=!0:b.addEventListener("load",function(){var d=b.import;if(!d.__CE_documentLoadHandled){d.__CE_documentLoadHandled=!0;var f=new Set(c);f.delete(d);A(a,d,{u:f,i:e});}});}else f.push(b);},c);if(a.b)for(b=
10
+ 0;b<f.length;b++)w(a,f[b]);for(b=0;b<f.length;b++)e(f[b]);}
11
+ function y(a,b){if(void 0===b.__CE_state){var d=b.ownerDocument;if(d.defaultView||d.__CE_isImportDocument&&d.__CE_hasRegistry)if(d=a.a.get(b.localName)){d.constructionStack.push(b);var c=d.constructorFunction;try{try{if(new c!==b)throw Error("The custom element constructor did not produce the element being upgraded.");}finally{d.constructionStack.pop();}}catch(t){throw b.__CE_state=2,t;}b.__CE_state=1;b.__CE_definition=d;if(d.attributeChangedCallback)for(d=d.observedAttributes,c=0;c<d.length;c++){var e=
12
+ d[c],f=b.getAttribute(e);null!==f&&a.attributeChangedCallback(b,e,null,f,null);}l(b)&&a.connectedCallback(b);}}}u.prototype.connectedCallback=function(a){var b=a.__CE_definition;b.connectedCallback&&b.connectedCallback.call(a);};u.prototype.disconnectedCallback=function(a){var b=a.__CE_definition;b.disconnectedCallback&&b.disconnectedCallback.call(a);};
13
+ u.prototype.attributeChangedCallback=function(a,b,d,c,e){var f=a.__CE_definition;f.attributeChangedCallback&&-1<f.observedAttributes.indexOf(b)&&f.attributeChangedCallback.call(a,b,d,c,e);};function B(a){var b=document;this.c=a;this.a=b;this.b=void 0;A(this.c,this.a);"loading"===this.a.readyState&&(this.b=new MutationObserver(this.f.bind(this)),this.b.observe(this.a,{childList:!0,subtree:!0}));}function C(a){a.b&&a.b.disconnect();}B.prototype.f=function(a){var b=this.a.readyState;"interactive"!==b&&"complete"!==b||C(this);for(b=0;b<a.length;b++)for(var d=a[b].addedNodes,c=0;c<d.length;c++)A(this.c,d[c]);};function ea(){var a=this;this.b=this.a=void 0;this.c=new Promise(function(b){a.b=b;a.a&&b(a.a);});}function D(a){if(a.a)throw Error("Already resolved.");a.a=void 0;a.b&&a.b(void 0);}function E(a){this.c=!1;this.a=a;this.j=new Map;this.f=function(b){return b()};this.b=!1;this.g=[];this.o=new B(a);}
14
+ E.prototype.l=function(a,b){var d=this;if(!(b instanceof Function))throw new TypeError("Custom element constructors must be functions.");if(!g(a))throw new SyntaxError("The element name '"+a+"' is not valid.");if(this.a.a.get(a))throw Error("A custom element with name '"+a+"' has already been defined.");if(this.c)throw Error("A custom element is already being defined.");this.c=!0;try{var c=function(b){var a=e[b];if(void 0!==a&&!(a instanceof Function))throw Error("The '"+b+"' callback must be a function.");
15
+ return a},e=b.prototype;if(!(e instanceof Object))throw new TypeError("The custom element constructor's prototype is not an object.");var f=c("connectedCallback");var t=c("disconnectedCallback");var k=c("adoptedCallback");var h=c("attributeChangedCallback");var m=b.observedAttributes||[];}catch(q){return}finally{this.c=!1;}b={localName:a,constructorFunction:b,connectedCallback:f,disconnectedCallback:t,adoptedCallback:k,attributeChangedCallback:h,observedAttributes:m,constructionStack:[]};ba(this.a,
16
+ a,b);this.g.push(b);this.b||(this.b=!0,this.f(function(){return fa(d)}));};E.prototype.i=function(a){A(this.a,a);};
17
+ function fa(a){if(!1!==a.b){a.b=!1;for(var b=a.g,d=[],c=new Map,e=0;e<b.length;e++)c.set(b[e].localName,[]);A(a.a,document,{i:function(b){if(void 0===b.__CE_state){var e=b.localName,f=c.get(e);f?f.push(b):a.a.a.get(e)&&d.push(b);}}});for(e=0;e<d.length;e++)y(a.a,d[e]);for(;0<b.length;){var f=b.shift();e=f.localName;f=c.get(f.localName);for(var t=0;t<f.length;t++)y(a.a,f[t]);(e=a.j.get(e))&&D(e);}}}E.prototype.get=function(a){if(a=this.a.a.get(a))return a.constructorFunction};
18
+ E.prototype.m=function(a){if(!g(a))return Promise.reject(new SyntaxError("'"+a+"' is not a valid custom element name."));var b=this.j.get(a);if(b)return b.c;b=new ea;this.j.set(a,b);this.a.a.get(a)&&!this.g.some(function(b){return b.localName===a})&&D(b);return b.c};E.prototype.s=function(a){C(this.o);var b=this.f;this.f=function(d){return a(function(){return b(d)})};};window.CustomElementRegistry=E;E.prototype.define=E.prototype.l;E.prototype.upgrade=E.prototype.i;E.prototype.get=E.prototype.get;
19
+ E.prototype.whenDefined=E.prototype.m;E.prototype.polyfillWrapFlushCallback=E.prototype.s;var F=window.Document.prototype.createElement,G=window.Document.prototype.createElementNS,ha=window.Document.prototype.importNode,ia=window.Document.prototype.prepend,ja=window.Document.prototype.append,ka=window.DocumentFragment.prototype.prepend,la=window.DocumentFragment.prototype.append,H=window.Node.prototype.cloneNode,I=window.Node.prototype.appendChild,J=window.Node.prototype.insertBefore,K=window.Node.prototype.removeChild,L=window.Node.prototype.replaceChild,M=Object.getOwnPropertyDescriptor(window.Node.prototype,
20
+ "textContent"),N=window.Element.prototype.attachShadow,O=Object.getOwnPropertyDescriptor(window.Element.prototype,"innerHTML"),P=window.Element.prototype.getAttribute,Q=window.Element.prototype.setAttribute,R=window.Element.prototype.removeAttribute,S=window.Element.prototype.getAttributeNS,T=window.Element.prototype.setAttributeNS,U=window.Element.prototype.removeAttributeNS,ma=window.Element.prototype.insertAdjacentElement,na=window.Element.prototype.insertAdjacentHTML,oa=window.Element.prototype.prepend,
21
+ pa=window.Element.prototype.append,V=window.Element.prototype.before,qa=window.Element.prototype.after,ra=window.Element.prototype.replaceWith,sa=window.Element.prototype.remove,ta=window.HTMLElement,W=Object.getOwnPropertyDescriptor(window.HTMLElement.prototype,"innerHTML"),ua=window.HTMLElement.prototype.insertAdjacentElement,va=window.HTMLElement.prototype.insertAdjacentHTML;var wa=new function(){};function xa(){var a=X;window.HTMLElement=function(){function b(){var b=this.constructor,c=a.g.get(b);if(!c)throw Error("The custom element being constructed was not registered with `customElements`.");var e=c.constructionStack;if(0===e.length)return e=F.call(document,c.localName),Object.setPrototypeOf(e,b.prototype),e.__CE_state=1,e.__CE_definition=c,w(a,e),e;c=e.length-1;var f=e[c];if(f===wa)throw Error("The HTMLElement constructor was either called reentrantly for this constructor or called multiple times.");
22
+ e[c]=wa;Object.setPrototypeOf(f,b.prototype);w(a,f);return f}b.prototype=ta.prototype;Object.defineProperty(b.prototype,"constructor",{writable:!0,configurable:!0,enumerable:!1,value:b});return b}();}function Y(a,b,d){function c(b){return function(d){for(var e=[],c=0;c<arguments.length;++c)e[c]=arguments[c];c=[];for(var f=[],m=0;m<e.length;m++){var q=e[m];q instanceof Element&&l(q)&&f.push(q);if(q instanceof DocumentFragment)for(q=q.firstChild;q;q=q.nextSibling)c.push(q);else c.push(q);}b.apply(this,e);for(e=0;e<f.length;e++)z(a,f[e]);if(l(this))for(e=0;e<c.length;e++)f=c[e],f instanceof Element&&x(a,f);}}void 0!==d.h&&(b.prepend=c(d.h));void 0!==d.append&&(b.append=c(d.append));}function ya(){var a=X;r(Document.prototype,"createElement",function(b){if(this.__CE_hasRegistry){var d=a.a.get(b);if(d)return new d.constructorFunction}b=F.call(this,b);w(a,b);return b});r(Document.prototype,"importNode",function(b,d){b=ha.call(this,b,!!d);this.__CE_hasRegistry?A(a,b):v(a,b);return b});r(Document.prototype,"createElementNS",function(b,d){if(this.__CE_hasRegistry&&(null===b||"http://www.w3.org/1999/xhtml"===b)){var c=a.a.get(d);if(c)return new c.constructorFunction}b=G.call(this,b,
23
+ d);w(a,b);return b});Y(a,Document.prototype,{h:ia,append:ja});}function za(){function a(a,c){Object.defineProperty(a,"textContent",{enumerable:c.enumerable,configurable:!0,get:c.get,set:function(a){if(this.nodeType===Node.TEXT_NODE)c.set.call(this,a);else {var d=void 0;if(this.firstChild){var e=this.childNodes,k=e.length;if(0<k&&l(this)){d=Array(k);for(var h=0;h<k;h++)d[h]=e[h];}}c.set.call(this,a);if(d)for(a=0;a<d.length;a++)z(b,d[a]);}}});}var b=X;r(Node.prototype,"insertBefore",function(a,c){if(a instanceof DocumentFragment){var e=Array.prototype.slice.apply(a.childNodes);
24
+ a=J.call(this,a,c);if(l(this))for(c=0;c<e.length;c++)x(b,e[c]);return a}e=l(a);c=J.call(this,a,c);e&&z(b,a);l(this)&&x(b,a);return c});r(Node.prototype,"appendChild",function(a){if(a instanceof DocumentFragment){var c=Array.prototype.slice.apply(a.childNodes);a=I.call(this,a);if(l(this))for(var e=0;e<c.length;e++)x(b,c[e]);return a}c=l(a);e=I.call(this,a);c&&z(b,a);l(this)&&x(b,a);return e});r(Node.prototype,"cloneNode",function(a){a=H.call(this,!!a);this.ownerDocument.__CE_hasRegistry?A(b,a):v(b,
25
+ a);return a});r(Node.prototype,"removeChild",function(a){var c=l(a),e=K.call(this,a);c&&z(b,a);return e});r(Node.prototype,"replaceChild",function(a,c){if(a instanceof DocumentFragment){var e=Array.prototype.slice.apply(a.childNodes);a=L.call(this,a,c);if(l(this))for(z(b,c),c=0;c<e.length;c++)x(b,e[c]);return a}e=l(a);var f=L.call(this,a,c),d=l(this);d&&z(b,c);e&&z(b,a);d&&x(b,a);return f});M&&M.get?a(Node.prototype,M):ca(b,function(b){a(b,{enumerable:!0,configurable:!0,get:function(){for(var a=[],
26
+ b=0;b<this.childNodes.length;b++){var f=this.childNodes[b];f.nodeType!==Node.COMMENT_NODE&&a.push(f.textContent);}return a.join("")},set:function(a){for(;this.firstChild;)K.call(this,this.firstChild);null!=a&&""!==a&&I.call(this,document.createTextNode(a));}});});}function Aa(a){function b(b){return function(e){for(var c=[],d=0;d<arguments.length;++d)c[d]=arguments[d];d=[];for(var k=[],h=0;h<c.length;h++){var m=c[h];m instanceof Element&&l(m)&&k.push(m);if(m instanceof DocumentFragment)for(m=m.firstChild;m;m=m.nextSibling)d.push(m);else d.push(m);}b.apply(this,c);for(c=0;c<k.length;c++)z(a,k[c]);if(l(this))for(c=0;c<d.length;c++)k=d[c],k instanceof Element&&x(a,k);}}var d=Element.prototype;void 0!==V&&(d.before=b(V));void 0!==V&&(d.after=b(qa));void 0!==ra&&
27
+ r(d,"replaceWith",function(b){for(var e=[],c=0;c<arguments.length;++c)e[c]=arguments[c];c=[];for(var d=[],k=0;k<e.length;k++){var h=e[k];h instanceof Element&&l(h)&&d.push(h);if(h instanceof DocumentFragment)for(h=h.firstChild;h;h=h.nextSibling)c.push(h);else c.push(h);}k=l(this);ra.apply(this,e);for(e=0;e<d.length;e++)z(a,d[e]);if(k)for(z(a,this),e=0;e<c.length;e++)d=c[e],d instanceof Element&&x(a,d);});void 0!==sa&&r(d,"remove",function(){var b=l(this);sa.call(this);b&&z(a,this);});}function Ba(){function a(a,b){Object.defineProperty(a,"innerHTML",{enumerable:b.enumerable,configurable:!0,get:b.get,set:function(a){var e=this,d=void 0;l(this)&&(d=[],p(this,function(a){a!==e&&d.push(a);}));b.set.call(this,a);if(d)for(var f=0;f<d.length;f++){var t=d[f];1===t.__CE_state&&c.disconnectedCallback(t);}this.ownerDocument.__CE_hasRegistry?A(c,this):v(c,this);return a}});}function b(a,b){r(a,"insertAdjacentElement",function(a,e){var d=l(e);a=b.call(this,a,e);d&&z(c,e);l(a)&&x(c,e);return a});}
28
+ function d(a,b){function e(a,b){for(var e=[];a!==b;a=a.nextSibling)e.push(a);for(b=0;b<e.length;b++)A(c,e[b]);}r(a,"insertAdjacentHTML",function(a,c){a=a.toLowerCase();if("beforebegin"===a){var d=this.previousSibling;b.call(this,a,c);e(d||this.parentNode.firstChild,this);}else if("afterbegin"===a)d=this.firstChild,b.call(this,a,c),e(this.firstChild,d);else if("beforeend"===a)d=this.lastChild,b.call(this,a,c),e(d||this.firstChild,null);else if("afterend"===a)d=this.nextSibling,b.call(this,a,c),e(this.nextSibling,
29
+ d);else throw new SyntaxError("The value provided ("+String(a)+") is not one of 'beforebegin', 'afterbegin', 'beforeend', or 'afterend'.");});}var c=X;N&&r(Element.prototype,"attachShadow",function(a){a=N.call(this,a);var b=c;if(b.b&&!a.__CE_patched){a.__CE_patched=!0;for(var e=0;e<b.c.length;e++)b.c[e](a);}return this.__CE_shadowRoot=a});O&&O.get?a(Element.prototype,O):W&&W.get?a(HTMLElement.prototype,W):da(c,function(b){a(b,{enumerable:!0,configurable:!0,get:function(){return H.call(this,!0).innerHTML},
30
+ set:function(a){var b="template"===this.localName,c=b?this.content:this,e=G.call(document,this.namespaceURI,this.localName);for(e.innerHTML=a;0<c.childNodes.length;)K.call(c,c.childNodes[0]);for(a=b?e.content:e;0<a.childNodes.length;)I.call(c,a.childNodes[0]);}});});r(Element.prototype,"setAttribute",function(a,b){if(1!==this.__CE_state)return Q.call(this,a,b);var e=P.call(this,a);Q.call(this,a,b);b=P.call(this,a);c.attributeChangedCallback(this,a,e,b,null);});r(Element.prototype,"setAttributeNS",function(a,
31
+ b,d){if(1!==this.__CE_state)return T.call(this,a,b,d);var e=S.call(this,a,b);T.call(this,a,b,d);d=S.call(this,a,b);c.attributeChangedCallback(this,b,e,d,a);});r(Element.prototype,"removeAttribute",function(a){if(1!==this.__CE_state)return R.call(this,a);var b=P.call(this,a);R.call(this,a);null!==b&&c.attributeChangedCallback(this,a,b,null,null);});r(Element.prototype,"removeAttributeNS",function(a,b){if(1!==this.__CE_state)return U.call(this,a,b);var d=S.call(this,a,b);U.call(this,a,b);var e=S.call(this,
32
+ a,b);d!==e&&c.attributeChangedCallback(this,b,d,e,a);});ua?b(HTMLElement.prototype,ua):ma?b(Element.prototype,ma):console.warn("Custom Elements: `Element#insertAdjacentElement` was not patched.");va?d(HTMLElement.prototype,va):na?d(Element.prototype,na):console.warn("Custom Elements: `Element#insertAdjacentHTML` was not patched.");Y(c,Element.prototype,{h:oa,append:pa});Aa(c);}var Z=window.customElements;if(!Z||Z.forcePolyfill||"function"!=typeof Z.define||"function"!=typeof Z.get){var X=new u;xa();ya();Y(X,DocumentFragment.prototype,{h:ka,append:la});za();Ba();document.__CE_hasRegistry=!0;var customElements=new E(X);Object.defineProperty(window,"customElements",{configurable:!0,enumerable:!0,value:customElements});}}).call(self);
33
+
34
+ // Polyfill document.baseURI
35
+ "string"!==typeof document.baseURI&&Object.defineProperty(Document.prototype,"baseURI",{enumerable:!0,configurable:!0,get:function(){var a=document.querySelector("base");return a&&a.href?a.href:document.URL}});
36
+
37
+ // Polyfill CustomEvent
38
+ "function"!==typeof window.CustomEvent&&(window.CustomEvent=function(c,a){a=a||{bubbles:!1,cancelable:!1,detail:void 0};var b=document.createEvent("CustomEvent");b.initCustomEvent(c,a.bubbles,a.cancelable,a.detail);return b},window.CustomEvent.prototype=window.Event.prototype);
39
+
40
+ // Event.composedPath
41
+ (function(b,c,d){b.composedPath||(b.composedPath=function(){if(this.path)return this.path;var a=this.target;for(this.path=[];null!==a.parentNode;)this.path.push(a),a=a.parentNode;this.path.push(c,d);return this.path});})(Event.prototype,document,window);
42
+
43
+ /*!
44
+ Element.closest and Element.matches
45
+ https://github.com/jonathantneal/closest
46
+ Creative Commons Zero v1.0 Universal
47
+ */
48
+ (function(a){"function"!==typeof a.matches&&(a.matches=a.msMatchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||function(a){a=(this.document||this.ownerDocument).querySelectorAll(a);for(var b=0;a[b]&&a[b]!==this;)++b;return !!a[b]});"function"!==typeof a.closest&&(a.closest=function(a){for(var b=this;b&&1===b.nodeType;){if(b.matches(a))return b;b=b.parentNode;}return null});})(window.Element.prototype);
49
+
50
+ /*!
51
+ Element.getRootNode()
52
+ */
53
+ (function(c){function d(a){a=b(a);return a&&11===a.nodeType?d(a.host):a}function b(a){return a&&a.parentNode?b(a.parentNode):a}"function"!==typeof c.getRootNode&&(c.getRootNode=function(a){return a&&a.composed?d(this):b(this)});})(Element.prototype);
54
+
55
+ /*!
56
+ Element.isConnected()
57
+ */
58
+ (function(a){"isConnected"in a||Object.defineProperty(a,"isConnected",{configurable:!0,enumerable:!0,get:function(){var a=this.getRootNode({composed:!0});return a&&9===a.nodeType}});})(Element.prototype);
59
+
60
+ /*!
61
+ Element.remove()
62
+ */
63
+ (function(b){b.forEach(function(a){a.hasOwnProperty("remove")||Object.defineProperty(a,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){null!==this.parentNode&&this.parentNode.removeChild(this);}});});})([Element.prototype,CharacterData.prototype,DocumentType.prototype]);
64
+
65
+ /*!
66
+ Element.classList
67
+ */
68
+ !function(e){'classList'in e||Object.defineProperty(e,"classList",{get:function(){var e=this,t=(e.getAttribute("class")||"").replace(/^\s+|\s$/g,"").split(/\s+/g);function n(){t.length>0?e.setAttribute("class",t.join(" ")):e.removeAttribute("class");}return ""===t[0]&&t.splice(0,1),t.toggle=function(e,i){void 0!==i?i?t.add(e):t.remove(e):-1!==t.indexOf(e)?t.splice(t.indexOf(e),1):t.push(e),n();},t.add=function(){for(var e=[].slice.call(arguments),i=0,s=e.length;i<s;i++)-1===t.indexOf(e[i])&&t.push(e[i]);n();},t.remove=function(){for(var e=[].slice.call(arguments),i=0,s=e.length;i<s;i++)-1!==t.indexOf(e[i])&&t.splice(t.indexOf(e[i]),1);n();},t.item=function(e){return t[e]},t.contains=function(e){return -1!==t.indexOf(e)},t.replace=function(e,i){-1!==t.indexOf(e)&&t.splice(t.indexOf(e),1,i),n();},t.value=e.getAttribute("class")||"",t}});}(Element.prototype);
69
+
70
+ /*!
71
+ DOMTokenList
72
+ */
73
+ (function(b){try{document.body.classList.add();}catch(e){var c=b.add,d=b.remove;b.add=function(){for(var a=0;a<arguments.length;a++)c.call(this,arguments[a]);};b.remove=function(){for(var a=0;a<arguments.length;a++)d.call(this,arguments[a]);};}})(DOMTokenList.prototype);
@@ -1 +1,114 @@
1
- @import url('https://cdn.jsdelivr.net/npm/remixicon@3.4.0/fonts/remixicon.css');input,textarea{outline:none !important;-moz-box-shadow:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}input:focus,textarea:focus{border-color:#bbb !important}.view{background:#fff;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px}.view .view-content{padding:16px}.salon-modal{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1000;text-align:center}.salon-modal:before{content:"";display:inline-block;height:100%;vertical-align:middle;margin-right:-0.05em}.salon-modal--backdrop{cursor:pointer;position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1001;background-color:rgba(0, 0, 0, 0.75)}.salon-modal--close{cursor:pointer;position:absolute;z-index:1003;top:-12.5px;right:-12.5px;display:block;width:30px;height:30px;text-indent:-9999px;background-size:contain;background-repeat:no-repeat;background-position:center center;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAA3hJREFUaAXlm8+K00Acx7MiCIJH/yw+gA9g25O49SL4AO3Bp1jw5NvktC+wF88qevK4BU97EmzxUBCEolK/n5gp3W6TTJPfpNPNF37MNsl85/vN/DaTmU6PknC4K+pniqeKJ3k8UnkvDxXJzzy+q/yaxxeVHxW/FNHjgRSeKt4rFoplzaAuHHDBGR2eS9G54reirsmienDCTRt7xwsp+KAoEmt9nLaGitZxrBbPFNaGfPloGw2t4JVamSt8xYW6Dg1oCYo3Yv+rCGViV160oMkcd8SYKnYV1Nb1aEOjCe6L5ZOiLfF120EjWhuBu3YIZt1NQmujnk5F4MgOpURzLfAwOBSTmzp3fpDxuI/pabxpqOoz2r2HLAb0GMbZKlNV5/Hg9XJypguryA7lPF5KMdTZQzHjqxNPhWhzIuAruOl1eNqKEx1tSh5rfbxdw7mOxCq4qS68ZTjKS1YVvilu559vWvFHhh4rZrdyZ69Vmpgdj8fJbDZLJpNJ0uv1cnr/gjrUhQMuI+ANjyuwftQ0bbL6Erp0mM/ny8Fg4M3LtdRxgMtKl3jwmIHVxYXChFy94/Rmpa/pTbNUhstKV+4Rr8lLQ9KlUvJKLyG8yvQ2s9SBy1Jb7jV5a0yapfF6apaZLjLLcWtd4sNrmJUMHyM+1xibTjH82Zh01TNlhsrOhdKTe00uAzZQmN6+KW+sDa/JD2PSVQ873m29yf+1Q9VDzfEYlHi1G5LKBBWZbtEsHbFwb1oYDwr1ZiF/2bnCSg1OBE/pfr9/bWx26UxJL3ONPISOLKUvQza0LZUxSKyjpdTGa/vDEr25rddbMM0Q3O6Lx3rqFvU+x6UrRKQY7tyrZecmD9FODy8uLizTmilwNj0kraNcAJhOp5aGVwsAGD5VmJBrWWbJSgWT9zrzWepQF47RaGSiKfeGx6Szi3gzmX/HHbihwBser4B9UJYpFBNX4R6vTn3VQnez0SymnrHQMsRYGTr1dSk34ljRqS/EMd2pLQ8YBp3a1PLfcqCpo8gtHkZFHKkTX6fs3MY0blKnth66rKCnU0VRGu37ONrQaA4eZDFtWAu2fXj9zjFkxTBOo8F7t926gTp/83Kyzzcy2kZD6xiqxTYnHLRFm3vHiRSwNSjkz3hoIzo8lCKWUlg/YtGs7tObunDAZfpDLbfEI15zsEIY3U/x/gHHc/G1zltnAgAAAABJRU5ErkJggg==')}.salon-modal--inner{display:inline-block;vertical-align:middle;overflow:visible !important;position:relative;z-index:1002;max-width:640px;box-sizing:border-box;width:90%;background:#fff;-webkit-border-radius:8px;-moz-border-radius:8px;-o-border-radius:8px;-ms-border-radius:8px;border-radius:8px;-webkit-box-shadow:0 0 10px #000;-moz-box-shadow:0 0 10px #000;-o-box-shadow:0 0 10px #000;-ms-box-shadow:0 0 10px #000;box-shadow:0 0 10px #000;text-align:left}@media (min-width: 768px){.view{-moz-border-radius:8px;-webkit-border-radius:8px;border-radius:8px}}@media (min-width: 1024px){.view .view-content{padding:24px}}
1
+ @import url('https://cdn.jsdelivr.net/npm/remixicon@3.4.0/fonts/remixicon.css');
2
+
3
+
4
+ input,
5
+ textarea {
6
+ outline: none !important;
7
+ -moz-box-shadow: none !important;
8
+ -webkit-box-shadow: none !important;
9
+ box-shadow: none !important;
10
+ }
11
+
12
+ input:focus,
13
+ textarea:focus {
14
+ border-color: #bbb !important;
15
+ }
16
+
17
+ .view {
18
+ background: #fff;
19
+ -moz-border-radius: 6px;
20
+ -webkit-border-radius: 6px;
21
+ border-radius: 6px;
22
+ }
23
+
24
+ .view .view-content {
25
+ padding: 16px;
26
+ }
27
+
28
+ .salon-modal {
29
+ position: fixed;
30
+ top: 0;
31
+ right: 0;
32
+ bottom: 0;
33
+ left: 0;
34
+ width: 100%;
35
+ height: 100%;
36
+ z-index: 1000;
37
+ text-align: center;
38
+ }
39
+
40
+ .salon-modal:before {
41
+ content: "";
42
+ display: inline-block;
43
+ height: 100%;
44
+ vertical-align: middle;
45
+ margin-right: -0.05em;
46
+ }
47
+
48
+ .salon-modal--backdrop {
49
+ cursor: pointer;
50
+ position: fixed;
51
+ top: 0;
52
+ right: 0;
53
+ bottom: 0;
54
+ left: 0;
55
+ width: 100%;
56
+ height: 100%;
57
+ z-index: 1001;
58
+ background-color: rgba(0, 0, 0, 0.75);
59
+ }
60
+
61
+ .salon-modal--close {
62
+ cursor: pointer;
63
+ position: absolute;
64
+ z-index: 1003;
65
+ top: -12.5px;
66
+ right: -12.5px;
67
+ display: block;
68
+ width: 30px;
69
+ height: 30px;
70
+ text-indent: -9999px;
71
+ background-size: contain;
72
+ background-repeat: no-repeat;
73
+ background-position: center center;
74
+ background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAA3hJREFUaAXlm8+K00Acx7MiCIJH/yw+gA9g25O49SL4AO3Bp1jw5NvktC+wF88qevK4BU97EmzxUBCEolK/n5gp3W6TTJPfpNPNF37MNsl85/vN/DaTmU6PknC4K+pniqeKJ3k8UnkvDxXJzzy+q/yaxxeVHxW/FNHjgRSeKt4rFoplzaAuHHDBGR2eS9G54reirsmienDCTRt7xwsp+KAoEmt9nLaGitZxrBbPFNaGfPloGw2t4JVamSt8xYW6Dg1oCYo3Yv+rCGViV160oMkcd8SYKnYV1Nb1aEOjCe6L5ZOiLfF120EjWhuBu3YIZt1NQmujnk5F4MgOpURzLfAwOBSTmzp3fpDxuI/pabxpqOoz2r2HLAb0GMbZKlNV5/Hg9XJypguryA7lPF5KMdTZQzHjqxNPhWhzIuAruOl1eNqKEx1tSh5rfbxdw7mOxCq4qS68ZTjKS1YVvilu559vWvFHhh4rZrdyZ69Vmpgdj8fJbDZLJpNJ0uv1cnr/gjrUhQMuI+ANjyuwftQ0bbL6Erp0mM/ny8Fg4M3LtdRxgMtKl3jwmIHVxYXChFy94/Rmpa/pTbNUhstKV+4Rr8lLQ9KlUvJKLyG8yvQ2s9SBy1Jb7jV5a0yapfF6apaZLjLLcWtd4sNrmJUMHyM+1xibTjH82Zh01TNlhsrOhdKTe00uAzZQmN6+KW+sDa/JD2PSVQ873m29yf+1Q9VDzfEYlHi1G5LKBBWZbtEsHbFwb1oYDwr1ZiF/2bnCSg1OBE/pfr9/bWx26UxJL3ONPISOLKUvQza0LZUxSKyjpdTGa/vDEr25rddbMM0Q3O6Lx3rqFvU+x6UrRKQY7tyrZecmD9FODy8uLizTmilwNj0kraNcAJhOp5aGVwsAGD5VmJBrWWbJSgWT9zrzWepQF47RaGSiKfeGx6Szi3gzmX/HHbihwBser4B9UJYpFBNX4R6vTn3VQnez0SymnrHQMsRYGTr1dSk34ljRqS/EMd2pLQ8YBp3a1PLfcqCpo8gtHkZFHKkTX6fs3MY0blKnth66rKCnU0VRGu37ONrQaA4eZDFtWAu2fXj9zjFkxTBOo8F7t926gTp/83Kyzzcy2kZD6xiqxTYnHLRFm3vHiRSwNSjkz3hoIzo8lCKWUlg/YtGs7tObunDAZfpDLbfEI15zsEIY3U/x/gHHc/G1zltnAgAAAABJRU5ErkJggg==')
75
+ }
76
+
77
+ .salon-modal--inner {
78
+ display: inline-block;
79
+ vertical-align: middle;
80
+ overflow: visible !important;
81
+ position: relative;
82
+ z-index: 1002;
83
+ max-width: 640px;
84
+ box-sizing: border-box;
85
+ width: 90%;
86
+ background: #fff;
87
+ -webkit-border-radius: 8px;
88
+ -moz-border-radius: 8px;
89
+ -o-border-radius: 8px;
90
+ -ms-border-radius: 8px;
91
+ border-radius: 8px;
92
+ -webkit-box-shadow: 0 0 10px #000;
93
+ -moz-box-shadow: 0 0 10px #000;
94
+ -o-box-shadow: 0 0 10px #000;
95
+ -ms-box-shadow: 0 0 10px #000;
96
+ box-shadow: 0 0 10px #000;
97
+ text-align: left;
98
+ }
99
+
100
+
101
+ @media (min-width: 768px) {
102
+ .view {
103
+ -moz-border-radius: 8px;
104
+ -webkit-border-radius: 8px;
105
+ border-radius: 8px;
106
+ }
107
+ }
108
+
109
+
110
+ @media (min-width: 1024px) {
111
+ .view .view-content {
112
+ padding: 24px;
113
+ }
114
+ }